Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'extraplugins/qompass-designer/tracing/org.eclipse.papyrus.qompass.modellibs.tracing/src/org/eclipse')
-rw-r--r--extraplugins/qompass-designer/tracing/org.eclipse.papyrus.qompass.modellibs.tracing/src/org/eclipse/papyrus/qompass/modellibs/tracing/acceleo/traceCout.emtl512
-rw-r--r--extraplugins/qompass-designer/tracing/org.eclipse.papyrus.qompass.modellibs.tracing/src/org/eclipse/papyrus/qompass/modellibs/tracing/acceleo/traceLTTng.emtl3596
-rw-r--r--extraplugins/qompass-designer/tracing/org.eclipse.papyrus.qompass.modellibs.tracing/src/org/eclipse/papyrus/qompass/modellibs/tracing/acceleo/traceOTF.emtl339
3 files changed, 4447 insertions, 0 deletions
diff --git a/extraplugins/qompass-designer/tracing/org.eclipse.papyrus.qompass.modellibs.tracing/src/org/eclipse/papyrus/qompass/modellibs/tracing/acceleo/traceCout.emtl b/extraplugins/qompass-designer/tracing/org.eclipse.papyrus.qompass.modellibs.tracing/src/org/eclipse/papyrus/qompass/modellibs/tracing/acceleo/traceCout.emtl
new file mode 100644
index 00000000000..8cb3cf6b33e
--- /dev/null
+++ b/extraplugins/qompass-designer/tracing/org.eclipse.papyrus.qompass.modellibs.tracing/src/org/eclipse/papyrus/qompass/modellibs/tracing/acceleo/traceCout.emtl
@@ -0,0 +1,512 @@
+<?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="traceCout" nsURI="org::eclipse::papyrus::qompass::modellibs::tracing::acceleo::traceCout" endHeaderPosition="133">
+ <input>
+ <takesTypesFrom href="http://www.eclipse.org/uml2/4.0.0/UML#/"/>
+ </input>
+ <imports href="platform:/plugin/org.eclipse.papyrus.qompass.designer.core/org/eclipse/papyrus/qompass/designer/core/acceleo/UMLTool.emtl#/0"/>
+ <imports href="platform:/plugin/org.eclipse.papyrus.qompass.designer.core/org/eclipse/papyrus/qompass/designer/core/acceleo/utils_cpp.emtl#/0"/>
+ <ownedModuleElement xsi:type="mtl:Template" name="traceOp" visibility="Public">
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="// declare operation &amp; use directly. Problem: declaration can not be within the scope of an operation&#xA;updateTimestamp ();&#xA;cout &quot;enter operation: &quot; &lt;&lt; "/>
+ <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="operation" referredVariable="/0/traceOp/operation">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Operation"/>
+ </source>
+ <referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/4.0.0/UML#//NamedElement/name"/>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=" &lt;&lt; &quot; at &quot; &lt;&lt; timestamp.ticks() &lt;&lt; &quot; parameters: &quot; &lt;&lt;&#xA; "/>
+ <body xsi:type="mtl:ForBlock">
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=" &quot;"/>
+ <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="parameter" referredVariable="/0/traceOp/%.3/parameter">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Parameter"/>
+ </source>
+ <referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/4.0.0/UML#//NamedElement/name"/>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=" (of type "/>
+ <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/4.0.0/UML#//Type"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="parameter" referredVariable="/0/traceOp/%.3/parameter">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Parameter"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/4.0.0/UML#//TypedElement/type"/>
+ </source>
+ <referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/4.0.0/UML#//NamedElement/name"/>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="): &quot; &lt;&lt; "/>
+ <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="parameter" referredVariable="/0/traceOp/%.3/parameter">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Parameter"/>
+ </source>
+ <referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/4.0.0/UML#//NamedElement/name"/>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=" "/>
+ <loopVariable name="parameter">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Parameter"/>
+ </loopVariable>
+ <iterSet xsi:type="ocl.ecore:PropertyCallExp" eType="/7/OrderedSet(Parameter)">
+ <source xsi:type="ocl.ecore:VariableExp" name="operation" referredVariable="/0/traceOp/operation">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Operation"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/4.0.0/UML#//BehavioralFeature/ownedParameter"/>
+ </iterSet>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=" &lt;&lt; endl;&#xA;)&#xA;"/>
+ <body xsi:type="mtl:IfBlock">
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=" "/>
+ <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="platform:/plugin/org.eclipse.papyrus.qompass.designer.core/org/eclipse/papyrus/qompass/designer/core/acceleo/utils_cpp.emtl#/0/cppType"/>
+ <argument xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Type"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="self" referredVariable="/16">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Operation"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/4.0.0/UML#//Operation/type"/>
+ </argument>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=" ret = "/>
+ <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/4.0.0/UML#//Type"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="self" referredVariable="/15">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Operation"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/4.0.0/UML#//Operation/type"/>
+ </source>
+ <argument xsi:type="ocl.ecore:NullLiteralExp">
+ <eType xsi:type="ocl.ecore:VoidType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclVoid"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny_Class/="/>
+ </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="rconn->"/>
+ <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="platform:/plugin/org.eclipse.papyrus.qompass.designer.core/org/eclipse/papyrus/qompass/designer/core/acceleo/utils_cpp.emtl#/0/cppCall"/>
+ <argument xsi:type="ocl.ecore:VariableExp" name="operation" referredVariable="/0/traceOp/operation">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Operation"/>
+ </argument>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=";&#xA;"/>
+ <body xsi:type="mtl:IfBlock">
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=" return ret; "/>
+ <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/4.0.0/UML#//Type"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="self" referredVariable="/18">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Operation"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/4.0.0/UML#//Operation/type"/>
+ </source>
+ <argument xsi:type="ocl.ecore:NullLiteralExp">
+ <eType xsi:type="ocl.ecore:VoidType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclVoid"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny_Class/="/>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean_Class/not"/>
+ </ifExpr>
+ </body>
+ <parameter name="operation">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Operation"/>
+ </parameter>
+ </ownedModuleElement>
+ </mtl:Module>
+ <ecore:EPackage name="additions">
+ <eClassifiers xsi:type="ecore:EClass" name="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="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="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="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="traceOp">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <contents xsi:type="ocl.ecore:Constraint"/>
+ </eAnnotations>
+ <eAnnotations source="MTL" references="/0/traceOp"/>
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <eParameters name="operation">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Operation"/>
+ </eParameters>
+ </eOperations>
+ <eOperations name="cppCall">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <contents xsi:type="ocl.ecore:Constraint"/>
+ </eAnnotations>
+ <eAnnotations source="MTL">
+ <references href="platform:/plugin/org.eclipse.papyrus.qompass.designer.core/org/eclipse/papyrus/qompass/designer/core/acceleo/utils_cpp.emtl#/0/cppCall"/>
+ </eAnnotations>
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <eParameters name="operation">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Operation"/>
+ </eParameters>
+ </eOperations>
+ <eOperations name="cppType">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <contents xsi:type="ocl.ecore:Constraint"/>
+ </eAnnotations>
+ <eAnnotations source="MTL">
+ <references href="platform:/plugin/org.eclipse.papyrus.qompass.designer.core/org/eclipse/papyrus/qompass/designer/core/acceleo/utils_cpp.emtl#/0/cppType"/>
+ </eAnnotations>
+ <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/4.0.0/UML#//Type"/>
+ </eParameters>
+ </eOperations>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="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>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="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>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="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="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="Operation_Class">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <references href="http://www.eclipse.org/uml2/4.0.0/UML#//Operation"/>
+ </eAnnotations>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="Type_Class">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <references href="http://www.eclipse.org/uml2/4.0.0/UML#//Type"/>
+ </eAnnotations>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="NamedElement_Class">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <references href="http://www.eclipse.org/uml2/4.0.0/UML#//NamedElement"/>
+ </eAnnotations>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="Element_Class">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <references href="http://www.eclipse.org/uml2/4.0.0/UML#//Element"/>
+ </eAnnotations>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="Classifier_Class">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <references href="http://www.eclipse.org/uml2/4.0.0/UML#//Classifier"/>
+ </eAnnotations>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="Parameter_Class">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <references href="http://www.eclipse.org/uml2/4.0.0/UML#//Parameter"/>
+ </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/4.0.0/UML#//Operation"/>
+ </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/4.0.0/UML#//Operation"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Operation"/>
+ </ocl.ecore:Variable>
+ <ecore:EPackage name="collections">
+ <eClassifiers xsi:type="ocl.ecore:OrderedSetType" name="OrderedSet(Parameter)" instanceClassName="java.util.LinkedHashSet">
+ <elementType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Parameter"/>
+ </eClassifiers>
+ </ecore:EPackage>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Operation"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Parameter"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Parameter"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Parameter"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Parameter"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Operation"/>
+ </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/4.0.0/UML#//Operation"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Operation"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Operation"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.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>
+ <ecore:EAnnotation source="positions">
+ <eAnnotations source="positions.0" references="/0/traceOp">
+ <details key="start" value="214"/>
+ <details key="end" value="775"/>
+ <details key="line" value="6"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1" references="/0/traceOp/%">
+ <details key="start" value="262"/>
+ <details key="end" value="412"/>
+ <details key="line" value="7"/>
+ </eAnnotations>
+ <eAnnotations source="positions.2" references="/0/traceOp/%.1">
+ <details key="start" value="413"/>
+ <details key="end" value="427"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.3" references="/0/traceOp/%.1/operation">
+ <details key="start" value="413"/>
+ <details key="end" value="422"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.4" references="/0/traceOp/%.2">
+ <details key="start" value="429"/>
+ <details key="end" value="488"/>
+ <details key="line" value="9"/>
+ </eAnnotations>
+ <eAnnotations source="positions.5" references="/0/traceOp/%.3">
+ <details key="start" value="488"/>
+ <details key="end" value="627"/>
+ <details key="line" value="10"/>
+ </eAnnotations>
+ <eAnnotations source="positions.6" references="/0/traceOp/%.3/%">
+ <details key="start" value="544"/>
+ <details key="end" value="546"/>
+ <details key="line" value="10"/>
+ </eAnnotations>
+ <eAnnotations source="positions.7" references="/0/traceOp/%.3/%.1">
+ <details key="start" value="547"/>
+ <details key="end" value="561"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.8" references="/0/traceOp/%.3/%.1/parameter">
+ <details key="start" value="547"/>
+ <details key="end" value="556"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.9" references="/0/traceOp/%.3/%.2">
+ <details key="start" value="563"/>
+ <details key="end" value="573"/>
+ <details key="line" value="10"/>
+ </eAnnotations>
+ <eAnnotations source="positions.10" references="/0/traceOp/%.3/%.3">
+ <details key="start" value="574"/>
+ <details key="end" value="593"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.11" references="/0/traceOp/%.3/%.3/%">
+ <details key="start" value="574"/>
+ <details key="end" value="588"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.12" references="/0/traceOp/%.3/%.3/%/parameter">
+ <details key="start" value="574"/>
+ <details key="end" value="583"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.13" references="/0/traceOp/%.3/%.4">
+ <details key="start" value="595"/>
+ <details key="end" value="603"/>
+ <details key="line" value="10"/>
+ </eAnnotations>
+ <eAnnotations source="positions.14" references="/0/traceOp/%.3/%.5">
+ <details key="start" value="604"/>
+ <details key="end" value="618"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.15" references="/0/traceOp/%.3/%.5/parameter">
+ <details key="start" value="604"/>
+ <details key="end" value="613"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.16" references="/0/traceOp/%.3/%.6">
+ <details key="start" value="620"/>
+ <details key="end" value="621"/>
+ <details key="line" value="10"/>
+ </eAnnotations>
+ <eAnnotations source="positions.17" references="/0/traceOp/%.3/parameter">
+ <details key="start" value="494"/>
+ <details key="end" value="515"/>
+ <details key="line" value="10"/>
+ </eAnnotations>
+ <eAnnotations source="positions.18" references="/0/traceOp/%.3/%.7">
+ <details key="start" value="518"/>
+ <details key="end" value="542"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.19" references="/0/traceOp/%.3/%.7/operation">
+ <details key="start" value="518"/>
+ <details key="end" value="527"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.20" references="/0/traceOp/%.4">
+ <details key="start" value="627"/>
+ <details key="end" value="639"/>
+ <details key="line" value="10"/>
+ </eAnnotations>
+ <eAnnotations source="positions.21" references="/0/traceOp/%.5">
+ <details key="start" value="639"/>
+ <details key="end" value="692"/>
+ <details key="line" value="12"/>
+ </eAnnotations>
+ <eAnnotations source="positions.22" references="/0/traceOp/%.5/%">
+ <details key="start" value="661"/>
+ <details key="end" value="662"/>
+ <details key="line" value="12"/>
+ </eAnnotations>
+ <eAnnotations source="positions.23" references="/0/traceOp/%.5/%.1">
+ <details key="start" value="663"/>
+ <details key="end" value="677"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.24" references="/0/traceOp/%.5/%.1/%">
+ <details key="start" value="663"/>
+ <details key="end" value="667"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.25" references="/0/traceOp/%.5/%.1/%/self">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.26" references="/0/traceOp/%.5/%.2">
+ <details key="start" value="679"/>
+ <details key="end" value="687"/>
+ <details key="line" value="12"/>
+ </eAnnotations>
+ <eAnnotations source="positions.27" references="/0/traceOp/%.5/%.3">
+ <details key="start" value="643"/>
+ <details key="end" value="660"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.28" references="/0/traceOp/%.5/%.3/%">
+ <details key="start" value="647"/>
+ <details key="end" value="660"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.29" references="/0/traceOp/%.5/%.3/%/%">
+ <details key="start" value="648"/>
+ <details key="end" value="652"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.30" references="/0/traceOp/%.5/%.3/%/%/self">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.31" references="/0/traceOp/%.5/%.3/%/%.1">
+ <details key="start" value="655"/>
+ <details key="end" value="659"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.32" references="/0/traceOp/%.6">
+ <details key="start" value="692"/>
+ <details key="end" value="699"/>
+ <details key="line" value="12"/>
+ </eAnnotations>
+ <eAnnotations source="positions.33" references="/0/traceOp/%.7">
+ <details key="start" value="700"/>
+ <details key="end" value="719"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.34" references="/0/traceOp/%.7/operation">
+ <details key="start" value="700"/>
+ <details key="end" value="709"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.35" references="/0/traceOp/%.8">
+ <details key="start" value="721"/>
+ <details key="end" value="723"/>
+ <details key="line" value="12"/>
+ </eAnnotations>
+ <eAnnotations source="positions.36" references="/0/traceOp/%.9">
+ <details key="start" value="723"/>
+ <details key="end" value="763"/>
+ <details key="line" value="13"/>
+ </eAnnotations>
+ <eAnnotations source="positions.37" references="/0/traceOp/%.9/%">
+ <details key="start" value="745"/>
+ <details key="end" value="758"/>
+ <details key="line" value="13"/>
+ </eAnnotations>
+ <eAnnotations source="positions.38" references="/0/traceOp/%.9/%.1">
+ <details key="start" value="727"/>
+ <details key="end" value="744"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.39" references="/0/traceOp/%.9/%.1/%">
+ <details key="start" value="731"/>
+ <details key="end" value="744"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.40" references="/0/traceOp/%.9/%.1/%/%">
+ <details key="start" value="732"/>
+ <details key="end" value="736"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.41" references="/0/traceOp/%.9/%.1/%/%/self">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.42" references="/0/traceOp/%.9/%.1/%/%.1">
+ <details key="start" value="739"/>
+ <details key="end" value="743"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.43" references="/0/traceOp/operation">
+ <details key="start" value="239"/>
+ <details key="end" value="259"/>
+ <details key="line" value="6"/>
+ </eAnnotations>
+ </ecore:EAnnotation>
+</xmi:XMI>
diff --git a/extraplugins/qompass-designer/tracing/org.eclipse.papyrus.qompass.modellibs.tracing/src/org/eclipse/papyrus/qompass/modellibs/tracing/acceleo/traceLTTng.emtl b/extraplugins/qompass-designer/tracing/org.eclipse.papyrus.qompass.modellibs.tracing/src/org/eclipse/papyrus/qompass/modellibs/tracing/acceleo/traceLTTng.emtl
new file mode 100644
index 00000000000..7e005a8dbb9
--- /dev/null
+++ b/extraplugins/qompass-designer/tracing/org.eclipse.papyrus.qompass.modellibs.tracing/src/org/eclipse/papyrus/qompass/modellibs/tracing/acceleo/traceLTTng.emtl
@@ -0,0 +1,3596 @@
+<?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="traceLTTng" nsURI="org::eclipse::papyrus::qompass::modellibs::tracing::acceleo::traceLTTng" endHeaderPosition="59">
+ <input>
+ <takesTypesFrom href="http://www.eclipse.org/uml2/4.0.0/UML#/"/>
+ </input>
+ <imports href="platform:/plugin/org.eclipse.papyrus.qompass.designer.core/org/eclipse/papyrus/qompass/designer/core/acceleo/UMLTool.emtl#/0"/>
+ <imports href="platform:/plugin/org.eclipse.papyrus.qompass.designer.core/org/eclipse/papyrus/qompass/designer/core/acceleo/TransformationContext.emtl#/0"/>
+ <imports href="platform:/plugin/org.eclipse.papyrus.qompass.designer.core/org/eclipse/papyrus/qompass/designer/core/acceleo/utils_cpp.emtl#/0"/>
+ <ownedModuleElement xsi:type="mtl:Query" name="hasTrace" visibility="Public">
+ <parameter name="element">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Element"/>
+ </parameter>
+ <expression xsi:type="ocl.ecore:OperationCallExp" referredOperation="/1/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="/5">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Element"/>
+ </source>
+ <argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="org.eclipse.papyrus.qompass.modellibs.tracing.acceleo.TraceUtils">
+ <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="hasTrace(org.eclipse.uml2.uml.Element)">
+ <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="/4/Sequence(Element)" kind="Sequence">
+ <part xsi:type="ocl.ecore:CollectionItem">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Element"/>
+ <item xsi:type="ocl.ecore:VariableExp" name="element" referredVariable="/0/hasTrace/element">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Element"/>
+ </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:Template" name="declareTP" visibility="Public">
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="#if !defined(HFILENAME_H) || defined(TRACEPOINT_HEADER_MULTI_READ)&#xA;#define HFILENAME_H&#xA;&#xA;#ifdef __cplusplus&#xA;extern &quot;C&quot; {&#xA;#endif&#xA;&#xA;#include &lt;lttng/tracepoint.h>&#xA;"/>
+ <body xsi:type="mtl:ForBlock">
+ <body xsi:type="mtl:IfBlock">
+ <body xsi:type="mtl:TemplateInvocation" definition="/0/declareTPop">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <argument xsi:type="mtl:TemplateInvocation" definition="/0/tpName1">
+ <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="self" referredVariable="/13">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Operation"/>
+ </argument>
+ </argument>
+ <argument xsi:type="ocl.ecore:VariableExp" name="operation" referredVariable="/0/declareTP/%.1/operation">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Operation"/>
+ </argument>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="&#xA;"/>
+ <ifExpr xsi:type="mtl:QueryInvocation" definition="/0/hasTrace">
+ <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="self" referredVariable="/12">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Operation"/>
+ </argument>
+ </ifExpr>
+ </body>
+ <loopVariable name="operation">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Operation"/>
+ </loopVariable>
+ <iterSet xsi:type="ocl.ecore:OperationCallExp" eType="/4/Set(Operation)">
+ <source xsi:type="ocl.ecore:VariableExp" name="cl" referredVariable="/0/declareTP/cl">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Classifier"/>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/4.0.0/UML#//Classifier/getAllOperations"/>
+ </iterSet>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="&#xA;#undef TRACEPOINT_PROVIDER&#xA;#define TRACEPOINT_PROVIDER "/>
+ <body xsi:type="mtl:TemplateInvocation" definition="/0/tpName1">
+ <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="self" referredVariable="/16">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Classifier"/>
+ </argument>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="&#xA;&#xA;#undef TRACEPOINT_INCLUDE_FILE&#xA;#define TRACEPOINT_INCLUDE_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="mtl:QueryInvocation">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Classifier"/>
+ <definition href="platform:/plugin/org.eclipse.papyrus.qompass.designer.core/org/eclipse/papyrus/qompass/designer/core/acceleo/TransformationContext.emtl#/0/trafoContextClassifier"/>
+ <argument xsi:type="ocl.ecore:VariableExp" name="self" referredVariable="/17">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Classifier"/>
+ </argument>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/4.0.0/UML#//NamedElement/getQualifiedName"/>
+ </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>
+ <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/replaceAll"/>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=".h&#xA;&#xA;#include &lt;lttng/tracepoint-event.h>&#xA;&#xA;#ifdef __cplusplus&#xA;}&#xA;#endif&#xA;&#xA;#endif"/>
+ <parameter name="cl">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Classifier"/>
+ </parameter>
+ </ownedModuleElement>
+ <ownedModuleElement xsi:type="mtl:Template" name="declareTPop" visibility="Public">
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="#include &lt;stdint.h>&#xA;&#xA;// declare trace point&#xA;TRACEPOINT_EVENT("/>
+ <body xsi:type="mtl:TemplateInvocation" definition="/0/tpName1">
+ <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="self" referredVariable="/23">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/Ecore#//EObject"/>
+ </argument>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=", "/>
+ <body xsi:type="mtl:TemplateInvocation" definition="/0/tpName2">
+ <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="operation" referredVariable="/0/declareTPop/operation">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Operation"/>
+ </argument>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=",&#xA;&#x9;TP_ARGS(const char *, instanceName"/>
+ <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">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Integer"/>
+ <source xsi:type="mtl:QueryInvocation" eType="/4/Sequence(Parameter)">
+ <definition href="platform:/plugin/org.eclipse.papyrus.qompass.designer.core/org/eclipse/papyrus/qompass/designer/core/acceleo/UMLTool.emtl#/0/parametersInInout"/>
+ <argument xsi:type="ocl.ecore:VariableExp" name="operation" referredVariable="/0/declareTPop/operation">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Operation"/>
+ </argument>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Sequence(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>
+ <body xsi:type="mtl:ForBlock">
+ <body xsi:type="mtl:TemplateInvocation" definition="/0/flattenParNameAndType">
+ <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="self" referredVariable="/30">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Parameter"/>
+ </argument>
+ </body>
+ <loopVariable name="parameter">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Parameter"/>
+ </loopVariable>
+ <iterSet xsi:type="mtl:QueryInvocation" eType="/4/Sequence(Parameter)">
+ <definition href="platform:/plugin/org.eclipse.papyrus.qompass.designer.core/org/eclipse/papyrus/qompass/designer/core/acceleo/UMLTool.emtl#/0/parametersInInout"/>
+ <argument xsi:type="ocl.ecore:VariableExp" name="operation" referredVariable="/0/declareTPop/operation">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Operation"/>
+ </argument>
+ </iterSet>
+ <each 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"/>
+ </each>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="),&#xA;&#x9;TP_FIELDS(&#xA;&#x9;&#x9;ctf_string(instanceName, instanceName)&#xA;"/>
+ <body xsi:type="mtl:ForBlock">
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="&#x9;&#x9;"/>
+ <body xsi:type="mtl:QueryInvocation">
+ <eType xsi:type="ocl.ecore:VoidType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclVoid"/>
+ <definition href="platform:/plugin/org.eclipse.papyrus.qompass.designer.core/org/eclipse/papyrus/qompass/designer/core/acceleo/UMLTool.emtl#/0/declareDependency"/>
+ <argument xsi:type="mtl:QueryInvocation">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Classifier"/>
+ <definition href="platform:/plugin/org.eclipse.papyrus.qompass.designer.core/org/eclipse/papyrus/qompass/designer/core/acceleo/TransformationContext.emtl#/0/trafoContextClassifier"/>
+ <argument xsi:type="ocl.ecore:VariableExp" name="self" referredVariable="/35">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Parameter"/>
+ </argument>
+ </argument>
+ <argument xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Type"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="parameter" referredVariable="/0/declareTPop/%.8/parameter">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Parameter"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/4.0.0/UML#//TypedElement/type"/>
+ </argument>
+ </body>
+ <body xsi:type="mtl:TemplateInvocation" definition="/0/flattenCtfType">
+ <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/4.0.0/UML#//Type"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="parameter" referredVariable="/0/declareTPop/%.8/parameter">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Parameter"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/4.0.0/UML#//TypedElement/type"/>
+ </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="parameter" referredVariable="/0/declareTPop/%.8/parameter">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Parameter"/>
+ </source>
+ <referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/4.0.0/UML#//NamedElement/name"/>
+ </argument>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="&#xA;"/>
+ <loopVariable name="parameter">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Parameter"/>
+ </loopVariable>
+ <iterSet xsi:type="mtl:QueryInvocation" eType="/4/Sequence(Parameter)">
+ <definition href="platform:/plugin/org.eclipse.papyrus.qompass.designer.core/org/eclipse/papyrus/qompass/designer/core/acceleo/UMLTool.emtl#/0/parametersInInout"/>
+ <argument xsi:type="ocl.ecore:VariableExp" name="operation" referredVariable="/0/declareTPop/operation">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Operation"/>
+ </argument>
+ </iterSet>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="&#x9;)&#xA;)&#xA;TRACEPOINT_MODEL_EMF_URI("/>
+ <body xsi:type="mtl:TemplateInvocation" definition="/0/tpName1">
+ <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="self" referredVariable="/40">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/Ecore#//EObject"/>
+ </argument>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=", "/>
+ <body xsi:type="mtl:TemplateInvocation" definition="/0/tpName2">
+ <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="operation" referredVariable="/0/declareTPop/operation">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Operation"/>
+ </argument>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=", &quot;"/>
+ <body xsi:type="mtl:TemplateInvocation" definition="/0/modelRef">
+ <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="operation" referredVariable="/0/declareTPop/operation">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Operation"/>
+ </argument>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="&quot;)&#xA;"/>
+ <parameter name="tpName">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </parameter>
+ <parameter name="operation">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Operation"/>
+ </parameter>
+ </ownedModuleElement>
+ <ownedModuleElement xsi:type="mtl:Template" name="declareCreateDestroy" visibility="Public">
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="TRACEPOINT_EVENT("/>
+ <body xsi:type="ocl.ecore:VariableExp" name="tpName" referredVariable="/0/declareCreateDestroy/tpName.2">
+ <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=", createClass,&#xA;&#x9;TP_ARGS(const char *, classURI),&#xA;&#x9;TP_FIELDS(&#xA;&#x9;&#x9;ctf_string(classURI, classURI)&#xA;&#x9;)&#xA;)&#xA;TRACEPOINT_EVENT("/>
+ <body xsi:type="ocl.ecore:VariableExp" name="tpName" referredVariable="/0/declareCreateDestroy/tpName.2">
+ <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=", destroyClass,&#xA;&#x9;TP_ARGS(const char *, className),&#xA;&#x9;TP_FIELDS(&#xA;&#x9;&#x9;ctf_string(xmdID, className)&#xA;&#x9;)&#xA;)"/>
+ <parameter name="tpName">
+ <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:Comment">
+ <body startPosition="2166" endPosition="2213" value="&#xA;&#x9;The name that is used for the trace provider&#xA;"/>
+ </ownedModuleElement>
+ <ownedModuleElement xsi:type="mtl:Template" name="tpName1" visibility="Public">
+ <body xsi:type="mtl:QueryInvocation">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <definition href="platform:/plugin/org.eclipse.papyrus.qompass.designer.core/org/eclipse/papyrus/qompass/designer/core/acceleo/UMLTool.emtl#/0/varName.1"/>
+ <argument 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="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Package"/>
+ <source xsi:type="mtl:QueryInvocation">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//TemplateBinding"/>
+ <definition href="platform:/plugin/org.eclipse.papyrus.qompass.designer.core/org/eclipse/papyrus/qompass/designer/core/acceleo/TransformationContext.emtl#/0/templateBinding.1"/>
+ <argument xsi:type="ocl.ecore:VariableExp" name="self" referredVariable="/53">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/Ecore#//EObject"/>
+ </argument>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/4.0.0/UML#//Element/getNearestPackage"/>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/4.0.0/UML#//NamedElement/getQualifiedName"/>
+ </argument>
+ </body>
+ </ownedModuleElement>
+ <ownedModuleElement xsi:type="mtl:Comment">
+ <body startPosition="2336" endPosition="2373" value="&#xA;&#x9;The name that is used for the type&#xA;"/>
+ </ownedModuleElement>
+ <ownedModuleElement xsi:type="mtl:Template" name="tpName2" visibility="Public">
+ <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="operation" referredVariable="/0/tpName2/operation">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Operation"/>
+ </source>
+ <referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/4.0.0/UML#//NamedElement/name"/>
+ </body>
+ <parameter name="operation">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Operation"/>
+ </parameter>
+ </ownedModuleElement>
+ <ownedModuleElement xsi:type="mtl:Comment">
+ <body startPosition="2465" endPosition="2555" value="&#xA;&#x9;Reference either the port (if available in the context) or the operation that is traced&#xA;"/>
+ </ownedModuleElement>
+ <ownedModuleElement xsi:type="mtl:Template" name="modelRef" visibility="Public">
+ <body xsi:type="mtl:IfBlock">
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="&#x9;"/>
+ <body xsi:type="mtl:QueryInvocation">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <definition href="platform:/plugin/org.eclipse.papyrus.qompass.designer.core/org/eclipse/papyrus/qompass/designer/core/acceleo/UMLTool.emtl#/0/getURI"/>
+ <argument xsi:type="mtl:QueryInvocation">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Package"/>
+ <definition href="platform:/plugin/org.eclipse.papyrus.qompass.designer.core/org/eclipse/papyrus/qompass/designer/core/acceleo/TransformationContext.emtl#/0/getSourceRoot"/>
+ <argument xsi:type="ocl.ecore:VariableExp" name="operation" referredVariable="/0/modelRef/operation">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Operation"/>
+ </argument>
+ </argument>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="#"/>
+ <body xsi:type="mtl:QueryInvocation">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <definition href="platform:/plugin/org.eclipse.papyrus.qompass.designer.core/org/eclipse/papyrus/qompass/designer/core/acceleo/UMLTool.emtl#/0/xmlID"/>
+ <argument xsi:type="ocl.ecore:VariableExp" name="operation" referredVariable="/0/modelRef/operation">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Operation"/>
+ </argument>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="&#xA;"/>
+ <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="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Port"/>
+ <definition href="platform:/plugin/org.eclipse.papyrus.qompass.designer.core/org/eclipse/papyrus/qompass/designer/core/acceleo/TransformationContext.emtl#/0/trafoContextPort"/>
+ <argument xsi:type="ocl.ecore:VariableExp" name="self" referredVariable="/63">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Operation"/>
+ </argument>
+ </source>
+ <argument xsi:type="ocl.ecore:NullLiteralExp">
+ <eType xsi:type="ocl.ecore:VoidType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclVoid"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny_Class/="/>
+ </ifExpr>
+ <else>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="&#x9;"/>
+ <body xsi:type="mtl:QueryInvocation">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <definition href="platform:/plugin/org.eclipse.papyrus.qompass.designer.core/org/eclipse/papyrus/qompass/designer/core/acceleo/UMLTool.emtl#/0/getURI"/>
+ <argument xsi:type="mtl:QueryInvocation">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Package"/>
+ <definition href="platform:/plugin/org.eclipse.papyrus.qompass.designer.core/org/eclipse/papyrus/qompass/designer/core/acceleo/TransformationContext.emtl#/0/getSourceRoot"/>
+ <argument xsi:type="ocl.ecore:VariableExp" name="operation" referredVariable="/0/modelRef/operation">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Operation"/>
+ </argument>
+ </argument>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="#"/>
+ <body xsi:type="mtl:QueryInvocation">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <definition href="platform:/plugin/org.eclipse.papyrus.qompass.designer.core/org/eclipse/papyrus/qompass/designer/core/acceleo/UMLTool.emtl#/0/xmlID"/>
+ <argument xsi:type="mtl:QueryInvocation">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Port"/>
+ <definition href="platform:/plugin/org.eclipse.papyrus.qompass.designer.core/org/eclipse/papyrus/qompass/designer/core/acceleo/TransformationContext.emtl#/0/trafoContextPort"/>
+ <argument xsi:type="ocl.ecore:VariableExp" name="self" referredVariable="/67">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Operation"/>
+ </argument>
+ </argument>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="&#x9;&#xA;"/>
+ </else>
+ </body>
+ <parameter name="operation">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Operation"/>
+ </parameter>
+ <post 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="self" referredVariable="/61">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String_Class/trim"/>
+ </post>
+ </ownedModuleElement>
+ <ownedModuleElement xsi:type="mtl:Comment">
+ <body startPosition="2818" endPosition="2819" value="&#xA;"/>
+ </ownedModuleElement>
+ <ownedModuleElement xsi:type="mtl:Template" name="declareTraceOp" visibility="Public">
+ <parameter name="operation">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Operation"/>
+ </parameter>
+ </ownedModuleElement>
+ <ownedModuleElement xsi:type="mtl:Template" name="invokeTP" visibility="Public">
+ <body xsi:type="mtl:IfBlock">
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="// use (call) tracepoint&#xA;tracepoint("/>
+ <body xsi:type="mtl:TemplateInvocation" definition="/0/tpName1">
+ <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="self" referredVariable="/77">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Operation"/>
+ </argument>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=", "/>
+ <body xsi:type="mtl:TemplateInvocation" definition="/0/tpName2">
+ <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="operation" referredVariable="/0/invokeTP/operation">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Operation"/>
+ </argument>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=", instanceName"/>
+ <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">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Integer"/>
+ <source xsi:type="mtl:QueryInvocation" eType="/4/Sequence(Parameter)">
+ <definition href="platform:/plugin/org.eclipse.papyrus.qompass.designer.core/org/eclipse/papyrus/qompass/designer/core/acceleo/UMLTool.emtl#/0/parametersInInout"/>
+ <argument xsi:type="ocl.ecore:VariableExp" name="operation" referredVariable="/0/invokeTP/operation">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Operation"/>
+ </argument>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Sequence(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>
+ <body xsi:type="mtl:ForBlock">
+ <body xsi:type="mtl:TemplateInvocation" definition="/0/flattenParName">
+ <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="self" referredVariable="/83">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Parameter"/>
+ </argument>
+ </body>
+ <loopVariable name="parameter">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Parameter"/>
+ </loopVariable>
+ <iterSet xsi:type="mtl:QueryInvocation" eType="/4/Sequence(Parameter)">
+ <definition href="platform:/plugin/org.eclipse.papyrus.qompass.designer.core/org/eclipse/papyrus/qompass/designer/core/acceleo/UMLTool.emtl#/0/parametersInInout"/>
+ <argument xsi:type="ocl.ecore:VariableExp" name="operation" referredVariable="/0/invokeTP/operation">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Operation"/>
+ </argument>
+ </iterSet>
+ <each 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"/>
+ </each>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=");&#xA;"/>
+ <ifExpr xsi:type="mtl:QueryInvocation" definition="/0/hasTrace">
+ <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="self" referredVariable="/76">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Operation"/>
+ </argument>
+ </ifExpr>
+ </body>
+ <parameter name="operation">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Operation"/>
+ </parameter>
+ </ownedModuleElement>
+ <ownedModuleElement xsi:type="mtl:Template" name="flattenParNameAndType">
+ <body xsi:type="mtl:IfBlock">
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="&#x9;"/>
+ <body xsi:type="mtl:ForBlock">
+ <body xsi:type="mtl:TemplateInvocation" definition="/0/cppTypeWB">
+ <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/4.0.0/UML#//Type"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="attribute" referredVariable="/0/flattenParNameAndType/%/%.1/attribute">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Property"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/4.0.0/UML#//TypedElement/type"/>
+ </argument>
+ </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: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="parameter" referredVariable="/0/flattenParNameAndType/parameter">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Parameter"/>
+ </source>
+ <referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/4.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/+"/>
+ </source>
+ <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="attribute" referredVariable="/0/flattenParNameAndType/%/%.1/attribute">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Property"/>
+ </source>
+ <referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/4.0.0/UML#//NamedElement/name"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String_Class/+"/>
+ </body>
+ <loopVariable name="attribute">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Property"/>
+ </loopVariable>
+ <iterSet xsi:type="ocl.ecore:PropertyCallExp" eType="/4/Set(Property)">
+ <source xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//DataType"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Type"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="self" referredVariable="/93">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Parameter"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/4.0.0/UML#//TypedElement/type"/>
+ </source>
+ <argument xsi:type="ocl.ecore:TypeExp" eType="/91/DataType">
+ <referredType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//DataType"/>
+ </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/4.0.0/UML#//Classifier/attribute"/>
+ </iterSet>
+ <each 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"/>
+ </each>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="&#xA;"/>
+ <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/4.0.0/UML#//Type"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="self" referredVariable="/92">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Parameter"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/4.0.0/UML#//TypedElement/type"/>
+ </source>
+ <argument xsi:type="ocl.ecore:TypeExp" eType="/91/DataType">
+ <referredType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//DataType"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny_Class/oclIsTypeOf"/>
+ </ifExpr>
+ <else>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="&#x9;"/>
+ <body xsi:type="mtl:TemplateInvocation" definition="/0/cppTypeWB">
+ <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/4.0.0/UML#//Type"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="parameter" referredVariable="/0/flattenParNameAndType/parameter">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Parameter"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/4.0.0/UML#//TypedElement/type"/>
+ </argument>
+ </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="parameter" referredVariable="/0/flattenParNameAndType/parameter">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Parameter"/>
+ </source>
+ <referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/4.0.0/UML#//NamedElement/name"/>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="&#xA;"/>
+ </else>
+ </body>
+ <parameter name="parameter">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Parameter"/>
+ </parameter>
+ <post 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="self" referredVariable="/89">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String_Class/trim"/>
+ </post>
+ </ownedModuleElement>
+ <ownedModuleElement xsi:type="mtl:Template" name="flattenParName">
+ <body xsi:type="mtl:IfBlock">
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="&#x9;"/>
+ <body xsi:type="mtl:ForBlock">
+ <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: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="parameter" referredVariable="/0/flattenParName/parameter">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Parameter"/>
+ </source>
+ <referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/4.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/+"/>
+ </source>
+ <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="attribute" referredVariable="/0/flattenParName/%/%.1/attribute">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Property"/>
+ </source>
+ <referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/4.0.0/UML#//NamedElement/name"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String_Class/+"/>
+ </body>
+ <loopVariable name="attribute">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Property"/>
+ </loopVariable>
+ <iterSet xsi:type="ocl.ecore:PropertyCallExp" eType="/4/Set(Property)">
+ <source xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//DataType"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Type"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="self" referredVariable="/108">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Parameter"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/4.0.0/UML#//TypedElement/type"/>
+ </source>
+ <argument xsi:type="ocl.ecore:TypeExp" eType="/91/DataType">
+ <referredType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//DataType"/>
+ </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/4.0.0/UML#//Classifier/attribute"/>
+ </iterSet>
+ <each 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"/>
+ </each>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="&#xA;"/>
+ <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/4.0.0/UML#//Type"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="self" referredVariable="/107">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Parameter"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/4.0.0/UML#//TypedElement/type"/>
+ </source>
+ <argument xsi:type="ocl.ecore:TypeExp" eType="/91/DataType">
+ <referredType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//DataType"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny_Class/oclIsTypeOf"/>
+ </ifExpr>
+ <else>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="&#x9;"/>
+ <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="parameter" referredVariable="/0/flattenParName/parameter">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Parameter"/>
+ </source>
+ <referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/4.0.0/UML#//NamedElement/name"/>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="&#xA;"/>
+ </else>
+ </body>
+ <parameter name="parameter">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Parameter"/>
+ </parameter>
+ <post 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="self" referredVariable="/105">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String_Class/trim"/>
+ </post>
+ </ownedModuleElement>
+ <ownedModuleElement xsi:type="mtl:Template" name="flattenCtfType">
+ <body xsi:type="mtl:IfBlock">
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="&#x9;"/>
+ <body xsi:type="mtl:ForBlock">
+ <body xsi:type="mtl:TemplateInvocation" definition="/0/ctfType">
+ <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/4.0.0/UML#//Type"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="attribute" referredVariable="/0/flattenCtfType/%/%.1/attribute">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Property"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/4.0.0/UML#//TypedElement/type"/>
+ </argument>
+ <argument 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="name" referredVariable="/0/flattenCtfType/name">
+ <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/+"/>
+ </source>
+ <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="attribute" referredVariable="/0/flattenCtfType/%/%.1/attribute">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Property"/>
+ </source>
+ <referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/4.0.0/UML#//NamedElement/name"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String_Class/+"/>
+ </argument>
+ </body>
+ <loopVariable name="attribute">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Property"/>
+ </loopVariable>
+ <iterSet xsi:type="ocl.ecore:PropertyCallExp" eType="/4/Set(Property)">
+ <source xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//DataType"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="type" referredVariable="/0/flattenCtfType/type">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Type"/>
+ </source>
+ <argument xsi:type="ocl.ecore:TypeExp" eType="/91/DataType">
+ <referredType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//DataType"/>
+ </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/4.0.0/UML#//Classifier/attribute"/>
+ </iterSet>
+ <each xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="&#xA;">
+ <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="&#xA;"/>
+ <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="type" referredVariable="/0/flattenCtfType/type">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Type"/>
+ </source>
+ <argument xsi:type="ocl.ecore:TypeExp" eType="/91/DataType">
+ <referredType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//DataType"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny_Class/oclIsTypeOf"/>
+ </ifExpr>
+ <else>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="&#x9;"/>
+ <body xsi:type="mtl:TemplateInvocation" definition="/0/ctfType">
+ <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="type" referredVariable="/0/flattenCtfType/type">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Type"/>
+ </argument>
+ <argument xsi:type="ocl.ecore:VariableExp" name="name" referredVariable="/0/flattenCtfType/name">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="&#xA;"/>
+ </else>
+ </body>
+ <parameter name="type">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Type"/>
+ </parameter>
+ <parameter name="name">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </parameter>
+ <post 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="self" referredVariable="/118">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String_Class/trim"/>
+ </post>
+ </ownedModuleElement>
+ <ownedModuleElement xsi:type="mtl:Template" name="cppTypeWB">
+ <body xsi:type="mtl:IfBlock">
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="&#x9;/* bool */ unsigned char&#xA;"/>
+ <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:VariableExp" name="type" referredVariable="/0/cppTypeWB/type">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Type"/>
+ </source>
+ <referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/4.0.0/UML#//NamedElement/qualifiedName"/>
+ </source>
+ <argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="UMLPrimitiveTypes::Boolean">
+ <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>
+ <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/String"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="type" referredVariable="/0/cppTypeWB/type">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Type"/>
+ </source>
+ <referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/4.0.0/UML#//NamedElement/qualifiedName"/>
+ </source>
+ <argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="PrimitiveTypes::Boolean">
+ <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/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: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="type" referredVariable="/0/cppTypeWB/type">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Type"/>
+ </source>
+ <referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/4.0.0/UML#//NamedElement/qualifiedName"/>
+ </source>
+ <argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="CORBA::Boolean">
+ <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/or"/>
+ </ifExpr>
+ <else>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="&#x9;"/>
+ <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="platform:/plugin/org.eclipse.papyrus.qompass.designer.core/org/eclipse/papyrus/qompass/designer/core/acceleo/utils_cpp.emtl#/0/cppType"/>
+ <argument xsi:type="ocl.ecore:VariableExp" name="self" referredVariable="/134">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Type"/>
+ </argument>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="&#xA;"/>
+ </else>
+ </body>
+ <parameter name="type">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Type"/>
+ </parameter>
+ <post 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="self" referredVariable="/131">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String_Class/trim"/>
+ </post>
+ </ownedModuleElement>
+ <ownedModuleElement xsi:type="mtl:Comment">
+ <body startPosition="4406" endPosition="4556" value="&#xA;&#x9;Calculate the typename, defaulting to ctf_integer&#xA;&#x9;TODO: treat pointer &amp; ref stereotypes (can only evaulate on parameter or attribute, not on Type)&#xA;"/>
+ </ownedModuleElement>
+ <ownedModuleElement xsi:type="mtl:Template" name="ctfType" visibility="Public">
+ <body xsi:type="mtl:IfBlock">
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="&#x9;ctf_string("/>
+ <body xsi:type="ocl.ecore:VariableExp" name="name" referredVariable="/0/ctfType/name">
+ <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=", "/>
+ <body xsi:type="ocl.ecore:VariableExp" name="name" referredVariable="/0/ctfType/name">
+ <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=")&#xA;"/>
+ <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:VariableExp" name="type" referredVariable="/0/ctfType/type">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Type"/>
+ </source>
+ <referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/4.0.0/UML#//NamedElement/qualifiedName"/>
+ </source>
+ <argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="CORBA::String">
+ <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>
+ <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/String"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="type" referredVariable="/0/ctfType/type">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Type"/>
+ </source>
+ <referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/4.0.0/UML#//NamedElement/qualifiedName"/>
+ </source>
+ <argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="PrimitiveTypes::String">
+ <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/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: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="type" referredVariable="/0/ctfType/type">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Type"/>
+ </source>
+ <referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/4.0.0/UML#//NamedElement/qualifiedName"/>
+ </source>
+ <argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="UMLPrimitiveTypes::String">
+ <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/or"/>
+ </ifExpr>
+ <else>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="&#x9;ctf_integer("/>
+ <body xsi:type="mtl:TemplateInvocation" definition="/0/cppTypeWB">
+ <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="type" referredVariable="/0/ctfType/type">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Type"/>
+ </argument>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=", "/>
+ <body xsi:type="ocl.ecore:VariableExp" name="name" referredVariable="/0/ctfType/name">
+ <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=", "/>
+ <body xsi:type="ocl.ecore:VariableExp" name="name" referredVariable="/0/ctfType/name">
+ <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=")&#xA;"/>
+ </else>
+ <elseIf>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="&#x9;ctf_float("/>
+ <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="platform:/plugin/org.eclipse.papyrus.qompass.designer.core/org/eclipse/papyrus/qompass/designer/core/acceleo/utils_cpp.emtl#/0/cppType"/>
+ <argument xsi:type="ocl.ecore:VariableExp" name="type" referredVariable="/0/ctfType/type">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Type"/>
+ </argument>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=", "/>
+ <body xsi:type="ocl.ecore:VariableExp" name="name" referredVariable="/0/ctfType/name">
+ <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=", "/>
+ <body xsi:type="ocl.ecore:VariableExp" name="name" referredVariable="/0/ctfType/name">
+ <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=")&#xA;"/>
+ <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="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="type" referredVariable="/0/ctfType/type">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Type"/>
+ </source>
+ <referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/4.0.0/UML#//NamedElement/qualifiedName"/>
+ </source>
+ <argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="CORBA::Float">
+ <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>
+ <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/String"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="type" referredVariable="/0/ctfType/type">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Type"/>
+ </source>
+ <referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/4.0.0/UML#//NamedElement/qualifiedName"/>
+ </source>
+ <argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="CORBA::Double">
+ <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/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: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="type" referredVariable="/0/ctfType/type">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Type"/>
+ </source>
+ <referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/4.0.0/UML#//NamedElement/qualifiedName"/>
+ </source>
+ <argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="AnsiCLibrary::float">
+ <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/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: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="type" referredVariable="/0/ctfType/type">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Type"/>
+ </source>
+ <referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/4.0.0/UML#//NamedElement/qualifiedName"/>
+ </source>
+ <argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="AnsiCLibrary::double">
+ <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/or"/>
+ </ifExpr>
+ </elseIf>
+ </body>
+ <parameter name="type">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Type"/>
+ </parameter>
+ <parameter name="name">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </parameter>
+ <post 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="self" referredVariable="/138">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String_Class/trim"/>
+ </post>
+ </ownedModuleElement>
+ </mtl:Module>
+ <ecore:EPackage name="additions">
+ <eClassifiers xsi:type="ecore:EClass" name="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="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="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="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="hasTrace">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <contents xsi:type="ocl.ecore:Constraint"/>
+ </eAnnotations>
+ <eAnnotations source="MTL" references="/0/hasTrace"/>
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <eParameters name="element">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Element"/>
+ </eParameters>
+ </eOperations>
+ <eOperations name="declareTP">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <contents xsi:type="ocl.ecore:Constraint"/>
+ </eAnnotations>
+ <eAnnotations source="MTL" references="/0/declareTP"/>
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <eParameters name="cl">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Classifier"/>
+ </eParameters>
+ </eOperations>
+ <eOperations name="declareTPop">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <contents xsi:type="ocl.ecore:Constraint"/>
+ </eAnnotations>
+ <eAnnotations source="MTL" references="/0/declareTPop"/>
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <eParameters name="tpName">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </eParameters>
+ <eParameters name="operation">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Operation"/>
+ </eParameters>
+ </eOperations>
+ <eOperations name="declareCreateDestroy">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <contents xsi:type="ocl.ecore:Constraint"/>
+ </eAnnotations>
+ <eAnnotations source="MTL" references="/0/declareCreateDestroy"/>
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <eParameters name="tpName">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </eParameters>
+ </eOperations>
+ <eOperations name="tpName1">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <contents xsi:type="ocl.ecore:Constraint"/>
+ </eAnnotations>
+ <eAnnotations source="MTL" references="/0/tpName1"/>
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </eOperations>
+ <eOperations name="tpName2">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <contents xsi:type="ocl.ecore:Constraint"/>
+ </eAnnotations>
+ <eAnnotations source="MTL" references="/0/tpName2"/>
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <eParameters name="operation">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Operation"/>
+ </eParameters>
+ </eOperations>
+ <eOperations name="modelRef">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <contents xsi:type="ocl.ecore:Constraint"/>
+ </eAnnotations>
+ <eAnnotations source="MTL" references="/0/modelRef"/>
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <eParameters name="operation">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Operation"/>
+ </eParameters>
+ </eOperations>
+ <eOperations name="declareTraceOp">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <contents xsi:type="ocl.ecore:Constraint"/>
+ </eAnnotations>
+ <eAnnotations source="MTL" references="/0/declareTraceOp"/>
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <eParameters name="operation">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Operation"/>
+ </eParameters>
+ </eOperations>
+ <eOperations name="invokeTP">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <contents xsi:type="ocl.ecore:Constraint"/>
+ </eAnnotations>
+ <eAnnotations source="MTL" references="/0/invokeTP"/>
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <eParameters name="operation">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Operation"/>
+ </eParameters>
+ </eOperations>
+ <eOperations name="flattenParNameAndType">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <contents xsi:type="ocl.ecore:Constraint"/>
+ </eAnnotations>
+ <eAnnotations source="MTL" references="/0/flattenParNameAndType"/>
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <eParameters name="parameter">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Parameter"/>
+ </eParameters>
+ </eOperations>
+ <eOperations name="flattenParName">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <contents xsi:type="ocl.ecore:Constraint"/>
+ </eAnnotations>
+ <eAnnotations source="MTL" references="/0/flattenParName"/>
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <eParameters name="parameter">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Parameter"/>
+ </eParameters>
+ </eOperations>
+ <eOperations name="flattenCtfType">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <contents xsi:type="ocl.ecore:Constraint"/>
+ </eAnnotations>
+ <eAnnotations source="MTL" references="/0/flattenCtfType"/>
+ <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/4.0.0/UML#//Type"/>
+ </eParameters>
+ <eParameters name="name">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </eParameters>
+ </eOperations>
+ <eOperations name="cppTypeWB">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <contents xsi:type="ocl.ecore:Constraint"/>
+ </eAnnotations>
+ <eAnnotations source="MTL" references="/0/cppTypeWB"/>
+ <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/4.0.0/UML#//Type"/>
+ </eParameters>
+ </eOperations>
+ <eOperations name="ctfType">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <contents xsi:type="ocl.ecore:Constraint"/>
+ </eAnnotations>
+ <eAnnotations source="MTL" references="/0/ctfType"/>
+ <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/4.0.0/UML#//Type"/>
+ </eParameters>
+ <eParameters name="name">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </eParameters>
+ </eOperations>
+ <eOperations name="parametersInInout">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <contents xsi:type="ocl.ecore:Constraint"/>
+ </eAnnotations>
+ <eAnnotations source="MTL">
+ <references href="platform:/plugin/org.eclipse.papyrus.qompass.designer.core/org/eclipse/papyrus/qompass/designer/core/acceleo/UMLTool.emtl#/0/parametersInInout"/>
+ </eAnnotations>
+ <eType xsi:type="ocl.ecore:SequenceType" href="platform:/plugin/org.eclipse.papyrus.qompass.designer.core/org/eclipse/papyrus/qompass/designer/core/acceleo/UMLTool.emtl#/3/Sequence(Parameter)"/>
+ <eParameters name="operation">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Operation"/>
+ </eParameters>
+ </eOperations>
+ <eOperations name="declareDependency">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <contents xsi:type="ocl.ecore:Constraint"/>
+ </eAnnotations>
+ <eAnnotations source="MTL">
+ <references href="platform:/plugin/org.eclipse.papyrus.qompass.designer.core/org/eclipse/papyrus/qompass/designer/core/acceleo/UMLTool.emtl#/0/declareDependency"/>
+ </eAnnotations>
+ <eType xsi:type="ocl.ecore:VoidType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclVoid"/>
+ <eParameters name="source">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Type"/>
+ </eParameters>
+ <eParameters name="dest">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Type"/>
+ </eParameters>
+ </eOperations>
+ <eOperations name="varName">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <contents xsi:type="ocl.ecore:Constraint"/>
+ </eAnnotations>
+ <eAnnotations source="MTL">
+ <references href="platform:/plugin/org.eclipse.papyrus.qompass.designer.core/org/eclipse/papyrus/qompass/designer/core/acceleo/UMLTool.emtl#/0/varName.1"/>
+ </eAnnotations>
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <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="xmlID">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <contents xsi:type="ocl.ecore:Constraint"/>
+ </eAnnotations>
+ <eAnnotations source="MTL">
+ <references href="platform:/plugin/org.eclipse.papyrus.qompass.designer.core/org/eclipse/papyrus/qompass/designer/core/acceleo/UMLTool.emtl#/0/xmlID"/>
+ </eAnnotations>
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <eParameters name="element">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Element"/>
+ </eParameters>
+ </eOperations>
+ <eOperations name="getURI">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <contents xsi:type="ocl.ecore:Constraint"/>
+ </eAnnotations>
+ <eAnnotations source="MTL">
+ <references href="platform:/plugin/org.eclipse.papyrus.qompass.designer.core/org/eclipse/papyrus/qompass/designer/core/acceleo/UMLTool.emtl#/0/getURI"/>
+ </eAnnotations>
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <eParameters name="element">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Element"/>
+ </eParameters>
+ </eOperations>
+ <eOperations name="trafoContextClassifier">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <contents xsi:type="ocl.ecore:Constraint"/>
+ </eAnnotations>
+ <eAnnotations source="MTL">
+ <references href="platform:/plugin/org.eclipse.papyrus.qompass.designer.core/org/eclipse/papyrus/qompass/designer/core/acceleo/TransformationContext.emtl#/0/trafoContextClassifier"/>
+ </eAnnotations>
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Classifier"/>
+ <eParameters name="dummmy">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Element"/>
+ </eParameters>
+ </eOperations>
+ <eOperations name="trafoContextPort">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <contents xsi:type="ocl.ecore:Constraint"/>
+ </eAnnotations>
+ <eAnnotations source="MTL">
+ <references href="platform:/plugin/org.eclipse.papyrus.qompass.designer.core/org/eclipse/papyrus/qompass/designer/core/acceleo/TransformationContext.emtl#/0/trafoContextPort"/>
+ </eAnnotations>
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Port"/>
+ <eParameters name="dummmy">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Element"/>
+ </eParameters>
+ </eOperations>
+ <eOperations name="templateBinding">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <contents xsi:type="ocl.ecore:Constraint"/>
+ </eAnnotations>
+ <eAnnotations source="MTL">
+ <references href="platform:/plugin/org.eclipse.papyrus.qompass.designer.core/org/eclipse/papyrus/qompass/designer/core/acceleo/TransformationContext.emtl#/0/templateBinding.1"/>
+ </eAnnotations>
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//TemplateBinding"/>
+ </eOperations>
+ <eOperations name="getSourceRoot">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <contents xsi:type="ocl.ecore:Constraint"/>
+ </eAnnotations>
+ <eAnnotations source="MTL">
+ <references href="platform:/plugin/org.eclipse.papyrus.qompass.designer.core/org/eclipse/papyrus/qompass/designer/core/acceleo/TransformationContext.emtl#/0/getSourceRoot"/>
+ </eAnnotations>
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Package"/>
+ <eParameters name="dummy">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Element"/>
+ </eParameters>
+ </eOperations>
+ <eOperations name="cppType">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <contents xsi:type="ocl.ecore:Constraint"/>
+ </eAnnotations>
+ <eAnnotations source="MTL">
+ <references href="platform:/plugin/org.eclipse.papyrus.qompass.designer.core/org/eclipse/papyrus/qompass/designer/core/acceleo/utils_cpp.emtl#/0/cppType"/>
+ </eAnnotations>
+ <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/4.0.0/UML#//Type"/>
+ </eParameters>
+ </eOperations>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="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="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>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="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="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="Element_Class">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <references href="http://www.eclipse.org/uml2/4.0.0/UML#//Element"/>
+ </eAnnotations>
+ <eOperations name="templateBinding">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <contents xsi:type="ocl.ecore:Constraint"/>
+ </eAnnotations>
+ <eAnnotations source="MTL">
+ <references href="platform:/plugin/org.eclipse.papyrus.qompass.designer.core/org/eclipse/papyrus/qompass/designer/core/acceleo/TransformationContext.emtl#/0/templateBinding"/>
+ </eAnnotations>
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//TemplateBinding"/>
+ </eOperations>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="Classifier_Class">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <references href="http://www.eclipse.org/uml2/4.0.0/UML#//Classifier"/>
+ </eAnnotations>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="Operation_Class">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <references href="http://www.eclipse.org/uml2/4.0.0/UML#//Operation"/>
+ </eAnnotations>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="Parameter_Class">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <references href="http://www.eclipse.org/uml2/4.0.0/UML#//Parameter"/>
+ </eAnnotations>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="Type_Class">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <references href="http://www.eclipse.org/uml2/4.0.0/UML#//Type"/>
+ </eAnnotations>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="NamedElement_Class">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <references href="http://www.eclipse.org/uml2/4.0.0/UML#//NamedElement"/>
+ </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/4.0.0/UML#//Element"/>
+ </ocl.ecore:Variable>
+ <ecore:EPackage name="collections">
+ <eClassifiers xsi:type="ocl.ecore:SequenceType" name="Sequence(Element)" instanceClassName="java.util.List">
+ <elementType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Element"/>
+ </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:SetType" name="Set(Operation)" instanceClassName="java.util.Set">
+ <elementType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Operation"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ocl.ecore:SequenceType" name="Sequence(Parameter)" instanceClassName="java.util.List">
+ <elementType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Parameter"/>
+ </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/4.0.0/UML#//Property"/>
+ </eClassifiers>
+ </ecore:EPackage>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Element"/>
+ </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/4.0.0/UML#//Classifier"/>
+ </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/4.0.0/UML#//Classifier"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Classifier"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Operation"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Operation"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Operation"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Classifier"/>
+ </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/4.0.0/UML#//Classifier"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Classifier"/>
+ </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="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/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="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="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/4.0.0/UML#//Parameter"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Parameter"/>
+ </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="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="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/4.0.0/UML#//Parameter"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Parameter"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Parameter"/>
+ </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="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/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="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="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="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="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/emf/2002/Ecore#//EObject"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Operation"/>
+ </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/4.0.0/UML#//Operation"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.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/4.0.0/UML#//Operation"/>
+ </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/uml2/4.0.0/UML#//Operation"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Operation"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Operation"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Operation"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Operation"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.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/4.0.0/UML#//Operation"/>
+ </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/4.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/4.0.0/UML#//Operation"/>
+ </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/4.0.0/UML#//Operation"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Operation"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Operation"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Operation"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Operation"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Operation"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Operation"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Parameter"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Parameter"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Operation"/>
+ </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/4.0.0/UML#//Parameter"/>
+ </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/uml2/4.0.0/UML#//Parameter"/>
+ </ocl.ecore:Variable>
+ <ecore:EPackage name="types">
+ <eClassifiers xsi:type="ocl.ecore:TypeType" name="DataType">
+ <referredType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//DataType"/>
+ </eClassifiers>
+ </ecore:EPackage>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Parameter"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Parameter"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Parameter"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Parameter"/>
+ </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/4.0.0/UML#//Parameter"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Parameter"/>
+ </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/4.0.0/UML#//Parameter"/>
+ </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/uml2/4.0.0/UML#//Parameter"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Parameter"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Parameter"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Parameter"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Parameter"/>
+ </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/4.0.0/UML#//Parameter"/>
+ </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/4.0.0/UML#//Type"/>
+ </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/uml2/4.0.0/UML#//Type"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Type"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Type"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Type"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Type"/>
+ </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/4.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/4.0.0/UML#//Type"/>
+ </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/uml2/4.0.0/UML#//Type"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Type"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.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/4.0.0/UML#//Type"/>
+ </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/uml2/4.0.0/UML#//Type"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Type"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Type"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Type"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Type"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Type"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Type"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Type"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Type"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Type"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.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/hasTrace">
+ <details key="start" value="305"/>
+ <details key="end" value="502"/>
+ <details key="line" value="7"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1" references="/0/hasTrace/element">
+ <details key="start" value="328"/>
+ <details key="end" value="345"/>
+ <details key="line" value="7"/>
+ </eAnnotations>
+ <eAnnotations source="positions.2" references="/0/hasTrace/%">
+ <details key="start" value="360"/>
+ <details key="end" value="499"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.3" references="/0/hasTrace/%/self">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.4" references="/0/hasTrace/%/%">
+ <details key="start" value="367"/>
+ <details key="end" value="433"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.5" references="/0/hasTrace/%/%.1">
+ <details key="start" value="437"/>
+ <details key="end" value="477"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.6" references="/0/hasTrace/%/%.2">
+ <details key="start" value="481"/>
+ <details key="end" value="498"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.7" references="/0/hasTrace/%/%.2/%/element">
+ <details key="start" value="490"/>
+ <details key="end" value="497"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.8" references="/0/declareTP">
+ <details key="start" value="504"/>
+ <details key="end" value="1117"/>
+ <details key="line" value="12"/>
+ </eAnnotations>
+ <eAnnotations source="positions.9" references="/0/declareTP/%">
+ <details key="start" value="548"/>
+ <details key="end" value="706"/>
+ <details key="line" value="13"/>
+ </eAnnotations>
+ <eAnnotations source="positions.10" references="/0/declareTP/%.1">
+ <details key="start" value="706"/>
+ <details key="end" value="825"/>
+ <details key="line" value="21"/>
+ </eAnnotations>
+ <eAnnotations source="positions.11" references="/0/declareTP/%.1/%">
+ <details key="start" value="760"/>
+ <details key="end" value="818"/>
+ <details key="line" value="22"/>
+ </eAnnotations>
+ <eAnnotations source="positions.12" references="/0/declareTP/%.1/%/%">
+ <details key="start" value="777"/>
+ <details key="end" value="810"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.13" references="/0/declareTP/%.1/%/%/%">
+ <details key="start" value="789"/>
+ <details key="end" value="798"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.14" references="/0/declareTP/%.1/%/%/%/self">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.15" references="/0/declareTP/%.1/%/%/operation">
+ <details key="start" value="800"/>
+ <details key="end" value="809"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.16" references="/0/declareTP/%.1/%/%.1">
+ <details key="start" value="812"/>
+ <details key="end" value="813"/>
+ <details key="line" value="24"/>
+ </eAnnotations>
+ <eAnnotations source="positions.17" references="/0/declareTP/%.1/%/%.2">
+ <details key="start" value="764"/>
+ <details key="end" value="774"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.18" references="/0/declareTP/%.1/%/%.2/self">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.19" references="/0/declareTP/%.1/operation">
+ <details key="start" value="712"/>
+ <details key="end" value="733"/>
+ <details key="line" value="21"/>
+ </eAnnotations>
+ <eAnnotations source="positions.20" references="/0/declareTP/%.1/%.1">
+ <details key="start" value="736"/>
+ <details key="end" value="757"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.21" references="/0/declareTP/%.1/%.1/cl">
+ <details key="start" value="736"/>
+ <details key="end" value="738"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.22" references="/0/declareTP/%.2">
+ <details key="start" value="826"/>
+ <details key="end" value="882"/>
+ <details key="line" value="26"/>
+ </eAnnotations>
+ <eAnnotations source="positions.23" references="/0/declareTP/%.3">
+ <details key="start" value="883"/>
+ <details key="end" value="892"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.24" references="/0/declareTP/%.3/self">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.25" references="/0/declareTP/%.4">
+ <details key="start" value="895"/>
+ <details key="end" value="960"/>
+ <details key="line" value="29"/>
+ </eAnnotations>
+ <eAnnotations source="positions.26" references="/0/declareTP/%.5">
+ <details key="start" value="961"/>
+ <details key="end" value="1026"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.27" references="/0/declareTP/%.5/%">
+ <details key="start" value="961"/>
+ <details key="end" value="1004"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.28" references="/0/declareTP/%.5/%/%">
+ <details key="start" value="961"/>
+ <details key="end" value="985"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.29" references="/0/declareTP/%.5/%/%/self">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.30" references="/0/declareTP/%.5/%.1">
+ <details key="start" value="1016"/>
+ <details key="end" value="1020"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.31" references="/0/declareTP/%.5/%.2">
+ <details key="start" value="1022"/>
+ <details key="end" value="1025"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.32" references="/0/declareTP/%.6">
+ <details key="start" value="1029"/>
+ <details key="end" value="1105"/>
+ <details key="line" value="31"/>
+ </eAnnotations>
+ <eAnnotations source="positions.33" references="/0/declareTP/cl">
+ <details key="start" value="531"/>
+ <details key="end" value="545"/>
+ <details key="line" value="12"/>
+ </eAnnotations>
+ <eAnnotations source="positions.34" references="/0/declareTPop">
+ <details key="start" value="1119"/>
+ <details key="end" value="1836"/>
+ <details key="line" value="42"/>
+ </eAnnotations>
+ <eAnnotations source="positions.35" references="/0/declareTPop/%">
+ <details key="start" value="1189"/>
+ <details key="end" value="1250"/>
+ <details key="line" value="43"/>
+ </eAnnotations>
+ <eAnnotations source="positions.36" references="/0/declareTPop/%.1">
+ <details key="start" value="1251"/>
+ <details key="end" value="1260"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.37" references="/0/declareTPop/%.1/self">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.38" references="/0/declareTPop/%.2">
+ <details key="start" value="1262"/>
+ <details key="end" value="1264"/>
+ <details key="line" value="46"/>
+ </eAnnotations>
+ <eAnnotations source="positions.39" references="/0/declareTPop/%.3">
+ <details key="start" value="1265"/>
+ <details key="end" value="1284"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.40" references="/0/declareTPop/%.3/operation">
+ <details key="start" value="1265"/>
+ <details key="end" value="1274"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.41" references="/0/declareTPop/%.4">
+ <details key="start" value="1286"/>
+ <details key="end" value="1323"/>
+ <details key="line" value="46"/>
+ </eAnnotations>
+ <eAnnotations source="positions.42" references="/0/declareTPop/%.5">
+ <details key="start" value="1323"/>
+ <details key="end" value="1378"/>
+ <details key="line" value="47"/>
+ </eAnnotations>
+ <eAnnotations source="positions.43" references="/0/declareTPop/%.5/%">
+ <details key="start" value="1371"/>
+ <details key="end" value="1373"/>
+ <details key="line" value="47"/>
+ </eAnnotations>
+ <eAnnotations source="positions.44" references="/0/declareTPop/%.5/%.1">
+ <details key="start" value="1327"/>
+ <details key="end" value="1370"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.45" references="/0/declareTPop/%.5/%.1/%">
+ <details key="start" value="1328"/>
+ <details key="end" value="1365"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.46" references="/0/declareTPop/%.5/%.1/%/%">
+ <details key="start" value="1328"/>
+ <details key="end" value="1357"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.47" references="/0/declareTPop/%.5/%.1/%/%/operation">
+ <details key="start" value="1328"/>
+ <details key="end" value="1337"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.48" references="/0/declareTPop/%.5/%.1/%.1">
+ <details key="start" value="1368"/>
+ <details key="end" value="1369"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.49" references="/0/declareTPop/%.6">
+ <details key="start" value="1378"/>
+ <details key="end" value="1487"/>
+ <details key="line" value="47"/>
+ </eAnnotations>
+ <eAnnotations source="positions.50" references="/0/declareTPop/%.6/%">
+ <details key="start" value="1456"/>
+ <details key="end" value="1479"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.51" references="/0/declareTPop/%.6/%/self">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.52" references="/0/declareTPop/%.6/parameter">
+ <details key="start" value="1384"/>
+ <details key="end" value="1405"/>
+ <details key="line" value="47"/>
+ </eAnnotations>
+ <eAnnotations source="positions.53" references="/0/declareTPop/%.6/%.1">
+ <details key="start" value="1408"/>
+ <details key="end" value="1437"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.54" references="/0/declareTPop/%.6/%.1/operation">
+ <details key="start" value="1408"/>
+ <details key="end" value="1417"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.55" references="/0/declareTPop/%.6/%.2">
+ <details key="start" value="1449"/>
+ <details key="end" value="1453"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.56" references="/0/declareTPop/%.7">
+ <details key="start" value="1487"/>
+ <details key="end" value="1543"/>
+ <details key="line" value="47"/>
+ </eAnnotations>
+ <eAnnotations source="positions.57" references="/0/declareTPop/%.8">
+ <details key="start" value="1545"/>
+ <details key="end" value="1728"/>
+ <details key="line" value="50"/>
+ </eAnnotations>
+ <eAnnotations source="positions.58" references="/0/declareTPop/%.8/%">
+ <details key="start" value="1607"/>
+ <details key="end" value="1609"/>
+ <details key="line" value="51"/>
+ </eAnnotations>
+ <eAnnotations source="positions.59" references="/0/declareTPop/%.8/%.1">
+ <details key="start" value="1610"/>
+ <details key="end" value="1668"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.60" references="/0/declareTPop/%.8/%.1/%">
+ <details key="start" value="1610"/>
+ <details key="end" value="1634"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.61" references="/0/declareTPop/%.8/%.1/%/self">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.62" references="/0/declareTPop/%.8/%.1/%.1">
+ <details key="start" value="1653"/>
+ <details key="end" value="1667"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.63" references="/0/declareTPop/%.8/%.1/%.1/parameter">
+ <details key="start" value="1653"/>
+ <details key="end" value="1662"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.64" references="/0/declareTPop/%.8/%.2">
+ <details key="start" value="1671"/>
+ <details key="end" value="1717"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.65" references="/0/declareTPop/%.8/%.2/%">
+ <details key="start" value="1686"/>
+ <details key="end" value="1700"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.66" references="/0/declareTPop/%.8/%.2/%/parameter">
+ <details key="start" value="1686"/>
+ <details key="end" value="1695"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.67" references="/0/declareTPop/%.8/%.2/%.1">
+ <details key="start" value="1702"/>
+ <details key="end" value="1716"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.68" references="/0/declareTPop/%.8/%.2/%.1/parameter">
+ <details key="start" value="1702"/>
+ <details key="end" value="1711"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.69" references="/0/declareTPop/%.8/%.3">
+ <details key="start" value="1719"/>
+ <details key="end" value="1720"/>
+ <details key="line" value="52"/>
+ </eAnnotations>
+ <eAnnotations source="positions.70" references="/0/declareTPop/%.8/parameter">
+ <details key="start" value="1551"/>
+ <details key="end" value="1572"/>
+ <details key="line" value="50"/>
+ </eAnnotations>
+ <eAnnotations source="positions.71" references="/0/declareTPop/%.8/%.4">
+ <details key="start" value="1575"/>
+ <details key="end" value="1604"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.72" references="/0/declareTPop/%.8/%.4/operation">
+ <details key="start" value="1575"/>
+ <details key="end" value="1584"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.73" references="/0/declareTPop/%.9">
+ <details key="start" value="1729"/>
+ <details key="end" value="1759"/>
+ <details key="line" value="53"/>
+ </eAnnotations>
+ <eAnnotations source="positions.74" references="/0/declareTPop/%.10">
+ <details key="start" value="1760"/>
+ <details key="end" value="1769"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.75" references="/0/declareTPop/%.10/self">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.76" references="/0/declareTPop/%.11">
+ <details key="start" value="1771"/>
+ <details key="end" value="1773"/>
+ <details key="line" value="55"/>
+ </eAnnotations>
+ <eAnnotations source="positions.77" references="/0/declareTPop/%.12">
+ <details key="start" value="1774"/>
+ <details key="end" value="1793"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.78" references="/0/declareTPop/%.12/operation">
+ <details key="start" value="1774"/>
+ <details key="end" value="1783"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.79" references="/0/declareTPop/%.13">
+ <details key="start" value="1795"/>
+ <details key="end" value="1798"/>
+ <details key="line" value="55"/>
+ </eAnnotations>
+ <eAnnotations source="positions.80" references="/0/declareTPop/%.14">
+ <details key="start" value="1799"/>
+ <details key="end" value="1819"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.81" references="/0/declareTPop/%.14/operation">
+ <details key="start" value="1799"/>
+ <details key="end" value="1808"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.82" references="/0/declareTPop/%.15">
+ <details key="start" value="1821"/>
+ <details key="end" value="1824"/>
+ <details key="line" value="55"/>
+ </eAnnotations>
+ <eAnnotations source="positions.83" references="/0/declareTPop/tpName">
+ <details key="start" value="1148"/>
+ <details key="end" value="1163"/>
+ <details key="line" value="42"/>
+ </eAnnotations>
+ <eAnnotations source="positions.84" references="/0/declareTPop/operation">
+ <details key="start" value="1165"/>
+ <details key="end" value="1186"/>
+ <details key="line" value="42"/>
+ </eAnnotations>
+ <eAnnotations source="positions.85" references="/0/declareCreateDestroy">
+ <details key="start" value="1838"/>
+ <details key="end" value="2155"/>
+ <details key="line" value="59"/>
+ </eAnnotations>
+ <eAnnotations source="positions.86" references="/0/declareCreateDestroy/%">
+ <details key="start" value="1894"/>
+ <details key="end" value="1911"/>
+ <details key="line" value="60"/>
+ </eAnnotations>
+ <eAnnotations source="positions.87" references="/0/declareCreateDestroy/tpName">
+ <details key="start" value="1912"/>
+ <details key="end" value="1918"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.88" references="/0/declareCreateDestroy/%.1">
+ <details key="start" value="1920"/>
+ <details key="end" value="2036"/>
+ <details key="line" value="60"/>
+ </eAnnotations>
+ <eAnnotations source="positions.89" references="/0/declareCreateDestroy/tpName.1">
+ <details key="start" value="2037"/>
+ <details key="end" value="2043"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.90" references="/0/declareCreateDestroy/%.2">
+ <details key="start" value="2045"/>
+ <details key="end" value="2143"/>
+ <details key="line" value="66"/>
+ </eAnnotations>
+ <eAnnotations source="positions.91" references="/0/declareCreateDestroy/tpName.2">
+ <details key="start" value="1876"/>
+ <details key="end" value="1891"/>
+ <details key="line" value="59"/>
+ </eAnnotations>
+ <eAnnotations source="positions.92" references="/0/%">
+ <details key="start" value="2158"/>
+ <details key="end" value="2215"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.93" references="/0/tpName1">
+ <details key="start" value="2216"/>
+ <details key="end" value="2325"/>
+ <details key="line" value="78"/>
+ </eAnnotations>
+ <eAnnotations source="positions.94" references="/0/tpName1/%">
+ <details key="start" value="2245"/>
+ <details key="end" value="2311"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.95" references="/0/tpName1/%/%">
+ <details key="start" value="2245"/>
+ <details key="end" value="2301"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.96" references="/0/tpName1/%/%/%">
+ <details key="start" value="2245"/>
+ <details key="end" value="2282"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.97" references="/0/tpName1/%/%/%/%">
+ <details key="start" value="2245"/>
+ <details key="end" value="2262"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.98" references="/0/tpName1/%/%/%/%/self">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.99" references="/0/%.1">
+ <details key="start" value="2328"/>
+ <details key="end" value="2375"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.100" references="/0/tpName2">
+ <details key="start" value="2376"/>
+ <details key="end" value="2454"/>
+ <details key="line" value="86"/>
+ </eAnnotations>
+ <eAnnotations source="positions.101" references="/0/tpName2/%">
+ <details key="start" value="2426"/>
+ <details key="end" value="2440"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.102" references="/0/tpName2/%/operation">
+ <details key="start" value="2426"/>
+ <details key="end" value="2435"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.103" references="/0/tpName2/operation">
+ <details key="start" value="2401"/>
+ <details key="end" value="2422"/>
+ <details key="line" value="86"/>
+ </eAnnotations>
+ <eAnnotations source="positions.104" references="/0/%.2">
+ <details key="start" value="2457"/>
+ <details key="end" value="2557"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.105" references="/0/modelRef">
+ <details key="start" value="2558"/>
+ <details key="end" value="2808"/>
+ <details key="line" value="94"/>
+ </eAnnotations>
+ <eAnnotations source="positions.106" references="/0/modelRef/%">
+ <details key="start" value="2621"/>
+ <details key="end" value="2796"/>
+ <details key="line" value="95"/>
+ </eAnnotations>
+ <eAnnotations source="positions.107" references="/0/modelRef/%/%">
+ <details key="start" value="2654"/>
+ <details key="end" value="2655"/>
+ <details key="line" value="96"/>
+ </eAnnotations>
+ <eAnnotations source="positions.108" references="/0/modelRef/%/%.1">
+ <details key="start" value="2656"/>
+ <details key="end" value="2690"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.109" references="/0/modelRef/%/%.1/%">
+ <details key="start" value="2656"/>
+ <details key="end" value="2681"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.110" references="/0/modelRef/%/%.1/%/operation">
+ <details key="start" value="2656"/>
+ <details key="end" value="2665"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.111" references="/0/modelRef/%/%.2">
+ <details key="start" value="2692"/>
+ <details key="end" value="2693"/>
+ <details key="line" value="96"/>
+ </eAnnotations>
+ <eAnnotations source="positions.112" references="/0/modelRef/%/%.3">
+ <details key="start" value="2694"/>
+ <details key="end" value="2711"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.113" references="/0/modelRef/%/%.3/operation">
+ <details key="start" value="2694"/>
+ <details key="end" value="2703"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.114" references="/0/modelRef/%/%.4">
+ <details key="start" value="2713"/>
+ <details key="end" value="2714"/>
+ <details key="line" value="97"/>
+ </eAnnotations>
+ <eAnnotations source="positions.115" references="/0/modelRef/%/%.5">
+ <details key="start" value="2625"/>
+ <details key="end" value="2652"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.116" references="/0/modelRef/%/%.5/%">
+ <details key="start" value="2626"/>
+ <details key="end" value="2644"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.117" references="/0/modelRef/%/%.5/%/self">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.118" references="/0/modelRef/%/%.5/%.1">
+ <details key="start" value="2647"/>
+ <details key="end" value="2651"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.119" references="/0/modelRef/%/%.6">
+ <details key="start" value="2714"/>
+ <details key="end" value="2791"/>
+ <details key="line" value="97"/>
+ </eAnnotations>
+ <eAnnotations source="positions.120" references="/0/modelRef/%/%.6/%">
+ <details key="start" value="2721"/>
+ <details key="end" value="2722"/>
+ <details key="line" value="98"/>
+ </eAnnotations>
+ <eAnnotations source="positions.121" references="/0/modelRef/%/%.6/%.1">
+ <details key="start" value="2723"/>
+ <details key="end" value="2757"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.122" references="/0/modelRef/%/%.6/%.1/%">
+ <details key="start" value="2723"/>
+ <details key="end" value="2748"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.123" references="/0/modelRef/%/%.6/%.1/%/operation">
+ <details key="start" value="2723"/>
+ <details key="end" value="2732"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.124" references="/0/modelRef/%/%.6/%.2">
+ <details key="start" value="2759"/>
+ <details key="end" value="2760"/>
+ <details key="line" value="98"/>
+ </eAnnotations>
+ <eAnnotations source="positions.125" references="/0/modelRef/%/%.6/%.3">
+ <details key="start" value="2761"/>
+ <details key="end" value="2787"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.126" references="/0/modelRef/%/%.6/%.3/%">
+ <details key="start" value="2761"/>
+ <details key="end" value="2779"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.127" references="/0/modelRef/%/%.6/%.3/%/self">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.128" references="/0/modelRef/%/%.6/%.4">
+ <details key="start" value="2789"/>
+ <details key="end" value="2791"/>
+ <details key="line" value="98"/>
+ </eAnnotations>
+ <eAnnotations source="positions.129" references="/0/modelRef/operation">
+ <details key="start" value="2584"/>
+ <details key="end" value="2605"/>
+ <details key="line" value="94"/>
+ </eAnnotations>
+ <eAnnotations source="positions.130" references="/0/modelRef/%.1">
+ <details key="start" value="2612"/>
+ <details key="end" value="2618"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.131" references="/0/modelRef/%.1/self">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.132" references="/0/%.3">
+ <details key="start" value="2810"/>
+ <details key="end" value="2821"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.133" references="/0/declareTraceOp">
+ <details key="start" value="2822"/>
+ <details key="end" value="2889"/>
+ <details key="line" value="104"/>
+ </eAnnotations>
+ <eAnnotations source="positions.134" references="/0/declareTraceOp/operation">
+ <details key="start" value="2854"/>
+ <details key="end" value="2875"/>
+ <details key="line" value="104"/>
+ </eAnnotations>
+ <eAnnotations source="positions.135" references="/0/invokeTP">
+ <details key="start" value="2891"/>
+ <details key="end" value="3220"/>
+ <details key="line" value="107"/>
+ </eAnnotations>
+ <eAnnotations source="positions.136" references="/0/invokeTP/%">
+ <details key="start" value="2941"/>
+ <details key="end" value="3208"/>
+ <details key="line" value="108"/>
+ </eAnnotations>
+ <eAnnotations source="positions.137" references="/0/invokeTP/%/%">
+ <details key="start" value="2957"/>
+ <details key="end" value="2993"/>
+ <details key="line" value="109"/>
+ </eAnnotations>
+ <eAnnotations source="positions.138" references="/0/invokeTP/%/%.1">
+ <details key="start" value="2994"/>
+ <details key="end" value="3003"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.139" references="/0/invokeTP/%/%.1/self">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.140" references="/0/invokeTP/%/%.2">
+ <details key="start" value="3005"/>
+ <details key="end" value="3007"/>
+ <details key="line" value="110"/>
+ </eAnnotations>
+ <eAnnotations source="positions.141" references="/0/invokeTP/%/%.3">
+ <details key="start" value="3008"/>
+ <details key="end" value="3027"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.142" references="/0/invokeTP/%/%.3/operation">
+ <details key="start" value="3008"/>
+ <details key="end" value="3017"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.143" references="/0/invokeTP/%/%.4">
+ <details key="start" value="3029"/>
+ <details key="end" value="3043"/>
+ <details key="line" value="110"/>
+ </eAnnotations>
+ <eAnnotations source="positions.144" references="/0/invokeTP/%/%.5">
+ <details key="start" value="3043"/>
+ <details key="end" value="3098"/>
+ <details key="line" value="110"/>
+ </eAnnotations>
+ <eAnnotations source="positions.145" references="/0/invokeTP/%/%.5/%">
+ <details key="start" value="3091"/>
+ <details key="end" value="3093"/>
+ <details key="line" value="110"/>
+ </eAnnotations>
+ <eAnnotations source="positions.146" references="/0/invokeTP/%/%.5/%.1">
+ <details key="start" value="3047"/>
+ <details key="end" value="3090"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.147" references="/0/invokeTP/%/%.5/%.1/%">
+ <details key="start" value="3048"/>
+ <details key="end" value="3085"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.148" references="/0/invokeTP/%/%.5/%.1/%/%">
+ <details key="start" value="3048"/>
+ <details key="end" value="3077"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.149" references="/0/invokeTP/%/%.5/%.1/%/%/operation">
+ <details key="start" value="3048"/>
+ <details key="end" value="3057"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.150" references="/0/invokeTP/%/%.5/%.1/%.1">
+ <details key="start" value="3088"/>
+ <details key="end" value="3089"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.151" references="/0/invokeTP/%/%.6">
+ <details key="start" value="3098"/>
+ <details key="end" value="3200"/>
+ <details key="line" value="110"/>
+ </eAnnotations>
+ <eAnnotations source="positions.152" references="/0/invokeTP/%/%.6/%">
+ <details key="start" value="3176"/>
+ <details key="end" value="3192"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.153" references="/0/invokeTP/%/%.6/%/self">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.154" references="/0/invokeTP/%/%.6/parameter">
+ <details key="start" value="3104"/>
+ <details key="end" value="3125"/>
+ <details key="line" value="110"/>
+ </eAnnotations>
+ <eAnnotations source="positions.155" references="/0/invokeTP/%/%.6/%.1">
+ <details key="start" value="3128"/>
+ <details key="end" value="3157"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.156" references="/0/invokeTP/%/%.6/%.1/operation">
+ <details key="start" value="3128"/>
+ <details key="end" value="3137"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.157" references="/0/invokeTP/%/%.6/%.2">
+ <details key="start" value="3169"/>
+ <details key="end" value="3173"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.158" references="/0/invokeTP/%/%.7">
+ <details key="start" value="3200"/>
+ <details key="end" value="3203"/>
+ <details key="line" value="110"/>
+ </eAnnotations>
+ <eAnnotations source="positions.159" references="/0/invokeTP/%/%.8">
+ <details key="start" value="2945"/>
+ <details key="end" value="2955"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.160" references="/0/invokeTP/%/%.8/self">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.161" references="/0/invokeTP/operation">
+ <details key="start" value="2917"/>
+ <details key="end" value="2938"/>
+ <details key="line" value="107"/>
+ </eAnnotations>
+ <eAnnotations source="positions.162" references="/0/flattenParNameAndType">
+ <details key="start" value="3223"/>
+ <details key="end" value="3560"/>
+ <details key="line" value="115"/>
+ </eAnnotations>
+ <eAnnotations source="positions.163" references="/0/flattenParNameAndType/%">
+ <details key="start" value="3292"/>
+ <details key="end" value="3548"/>
+ <details key="line" value="116"/>
+ </eAnnotations>
+ <eAnnotations source="positions.164" references="/0/flattenParNameAndType/%/%">
+ <details key="start" value="3326"/>
+ <details key="end" value="3327"/>
+ <details key="line" value="117"/>
+ </eAnnotations>
+ <eAnnotations source="positions.165" references="/0/flattenParNameAndType/%/%.1">
+ <details key="start" value="3327"/>
+ <details key="end" value="3485"/>
+ <details key="line" value="117"/>
+ </eAnnotations>
+ <eAnnotations source="positions.166" references="/0/flattenParNameAndType/%/%.1/%">
+ <details key="start" value="3409"/>
+ <details key="end" value="3435"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.167" references="/0/flattenParNameAndType/%/%.1/%/%">
+ <details key="start" value="3409"/>
+ <details key="end" value="3423"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.168" references="/0/flattenParNameAndType/%/%.1/%/%/attribute">
+ <details key="start" value="3409"/>
+ <details key="end" value="3418"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.169" references="/0/flattenParNameAndType/%/%.1/%.1">
+ <details key="start" value="3437"/>
+ <details key="end" value="3439"/>
+ <details key="line" value="117"/>
+ </eAnnotations>
+ <eAnnotations source="positions.170" references="/0/flattenParNameAndType/%/%.1/%.2">
+ <details key="start" value="3440"/>
+ <details key="end" value="3477"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.171" references="/0/flattenParNameAndType/%/%.1/%.2/%">
+ <details key="start" value="3440"/>
+ <details key="end" value="3460"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.172" references="/0/flattenParNameAndType/%/%.1/%.2/%/%">
+ <details key="start" value="3440"/>
+ <details key="end" value="3454"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.173" references="/0/flattenParNameAndType/%/%.1/%.2/%/%/parameter">
+ <details key="start" value="3440"/>
+ <details key="end" value="3449"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.174" references="/0/flattenParNameAndType/%/%.1/%.2/%/%.1">
+ <details key="start" value="3457"/>
+ <details key="end" value="3460"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.175" references="/0/flattenParNameAndType/%/%.1/%.2/%.1">
+ <details key="start" value="3463"/>
+ <details key="end" value="3477"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.176" references="/0/flattenParNameAndType/%/%.1/%.2/%.1/attribute">
+ <details key="start" value="3463"/>
+ <details key="end" value="3472"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.177" references="/0/flattenParNameAndType/%/%.1/attribute">
+ <details key="start" value="3333"/>
+ <details key="end" value="3353"/>
+ <details key="line" value="117"/>
+ </eAnnotations>
+ <eAnnotations source="positions.178" references="/0/flattenParNameAndType/%/%.1/%.3">
+ <details key="start" value="3356"/>
+ <details key="end" value="3390"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.179" references="/0/flattenParNameAndType/%/%.1/%.3/%">
+ <details key="start" value="3356"/>
+ <details key="end" value="3380"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.180" references="/0/flattenParNameAndType/%/%.1/%.3/%/%">
+ <details key="start" value="3356"/>
+ <details key="end" value="3360"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.181" references="/0/flattenParNameAndType/%/%.1/%.3/%/%/self">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.182" references="/0/flattenParNameAndType/%/%.1/%.3/%/%.1">
+ <details key="start" value="3371"/>
+ <details key="end" value="3379"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.183" references="/0/flattenParNameAndType/%/%.1/%.4">
+ <details key="start" value="3402"/>
+ <details key="end" value="3406"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.184" references="/0/flattenParNameAndType/%/%.2">
+ <details key="start" value="3485"/>
+ <details key="end" value="3486"/>
+ <details key="line" value="118"/>
+ </eAnnotations>
+ <eAnnotations source="positions.185" references="/0/flattenParNameAndType/%/%.3">
+ <details key="start" value="3296"/>
+ <details key="end" value="3324"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.186" references="/0/flattenParNameAndType/%/%.3/%">
+ <details key="start" value="3297"/>
+ <details key="end" value="3301"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.187" references="/0/flattenParNameAndType/%/%.3/%/self">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.188" references="/0/flattenParNameAndType/%/%.3/%.1">
+ <details key="start" value="3314"/>
+ <details key="end" value="3322"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.189" references="/0/flattenParNameAndType/%/%.4">
+ <details key="start" value="3486"/>
+ <details key="end" value="3543"/>
+ <details key="line" value="118"/>
+ </eAnnotations>
+ <eAnnotations source="positions.190" references="/0/flattenParNameAndType/%/%.4/%">
+ <details key="start" value="3493"/>
+ <details key="end" value="3494"/>
+ <details key="line" value="119"/>
+ </eAnnotations>
+ <eAnnotations source="positions.191" references="/0/flattenParNameAndType/%/%.4/%.1">
+ <details key="start" value="3495"/>
+ <details key="end" value="3521"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.192" references="/0/flattenParNameAndType/%/%.4/%.1/%">
+ <details key="start" value="3495"/>
+ <details key="end" value="3509"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.193" references="/0/flattenParNameAndType/%/%.4/%.1/%/parameter">
+ <details key="start" value="3495"/>
+ <details key="end" value="3504"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.194" references="/0/flattenParNameAndType/%/%.4/%.2">
+ <details key="start" value="3523"/>
+ <details key="end" value="3525"/>
+ <details key="line" value="119"/>
+ </eAnnotations>
+ <eAnnotations source="positions.195" references="/0/flattenParNameAndType/%/%.4/%.3">
+ <details key="start" value="3526"/>
+ <details key="end" value="3540"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.196" references="/0/flattenParNameAndType/%/%.4/%.3/parameter">
+ <details key="start" value="3526"/>
+ <details key="end" value="3535"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.197" references="/0/flattenParNameAndType/%/%.4/%.4">
+ <details key="start" value="3542"/>
+ <details key="end" value="3543"/>
+ <details key="line" value="120"/>
+ </eAnnotations>
+ <eAnnotations source="positions.198" references="/0/flattenParNameAndType/parameter">
+ <details key="start" value="3255"/>
+ <details key="end" value="3276"/>
+ <details key="line" value="115"/>
+ </eAnnotations>
+ <eAnnotations source="positions.199" references="/0/flattenParNameAndType/%.1">
+ <details key="start" value="3283"/>
+ <details key="end" value="3289"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.200" references="/0/flattenParNameAndType/%.1/self">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.201" references="/0/flattenParName">
+ <details key="start" value="3562"/>
+ <details key="end" value="3830"/>
+ <details key="line" value="123"/>
+ </eAnnotations>
+ <eAnnotations source="positions.202" references="/0/flattenParName/%">
+ <details key="start" value="3624"/>
+ <details key="end" value="3818"/>
+ <details key="line" value="124"/>
+ </eAnnotations>
+ <eAnnotations source="positions.203" references="/0/flattenParName/%/%">
+ <details key="start" value="3658"/>
+ <details key="end" value="3659"/>
+ <details key="line" value="125"/>
+ </eAnnotations>
+ <eAnnotations source="positions.204" references="/0/flattenParName/%/%.1">
+ <details key="start" value="3659"/>
+ <details key="end" value="3786"/>
+ <details key="line" value="125"/>
+ </eAnnotations>
+ <eAnnotations source="positions.205" references="/0/flattenParName/%/%.1/%">
+ <details key="start" value="3741"/>
+ <details key="end" value="3778"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.206" references="/0/flattenParName/%/%.1/%/%">
+ <details key="start" value="3741"/>
+ <details key="end" value="3761"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.207" references="/0/flattenParName/%/%.1/%/%/%">
+ <details key="start" value="3741"/>
+ <details key="end" value="3755"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.208" references="/0/flattenParName/%/%.1/%/%/%/parameter">
+ <details key="start" value="3741"/>
+ <details key="end" value="3750"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.209" references="/0/flattenParName/%/%.1/%/%/%.1">
+ <details key="start" value="3758"/>
+ <details key="end" value="3761"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.210" references="/0/flattenParName/%/%.1/%/%.1">
+ <details key="start" value="3764"/>
+ <details key="end" value="3778"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.211" references="/0/flattenParName/%/%.1/%/%.1/attribute">
+ <details key="start" value="3764"/>
+ <details key="end" value="3773"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.212" references="/0/flattenParName/%/%.1/attribute">
+ <details key="start" value="3665"/>
+ <details key="end" value="3685"/>
+ <details key="line" value="125"/>
+ </eAnnotations>
+ <eAnnotations source="positions.213" references="/0/flattenParName/%/%.1/%.1">
+ <details key="start" value="3688"/>
+ <details key="end" value="3722"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.214" references="/0/flattenParName/%/%.1/%.1/%">
+ <details key="start" value="3688"/>
+ <details key="end" value="3712"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.215" references="/0/flattenParName/%/%.1/%.1/%/%">
+ <details key="start" value="3688"/>
+ <details key="end" value="3692"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.216" references="/0/flattenParName/%/%.1/%.1/%/%/self">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.217" references="/0/flattenParName/%/%.1/%.1/%/%.1">
+ <details key="start" value="3703"/>
+ <details key="end" value="3711"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.218" references="/0/flattenParName/%/%.1/%.2">
+ <details key="start" value="3734"/>
+ <details key="end" value="3738"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.219" references="/0/flattenParName/%/%.2">
+ <details key="start" value="3786"/>
+ <details key="end" value="3787"/>
+ <details key="line" value="126"/>
+ </eAnnotations>
+ <eAnnotations source="positions.220" references="/0/flattenParName/%/%.3">
+ <details key="start" value="3628"/>
+ <details key="end" value="3656"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.221" references="/0/flattenParName/%/%.3/%">
+ <details key="start" value="3629"/>
+ <details key="end" value="3633"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.222" references="/0/flattenParName/%/%.3/%/self">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.223" references="/0/flattenParName/%/%.3/%.1">
+ <details key="start" value="3646"/>
+ <details key="end" value="3654"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.224" references="/0/flattenParName/%/%.4">
+ <details key="start" value="3787"/>
+ <details key="end" value="3813"/>
+ <details key="line" value="126"/>
+ </eAnnotations>
+ <eAnnotations source="positions.225" references="/0/flattenParName/%/%.4/%">
+ <details key="start" value="3794"/>
+ <details key="end" value="3795"/>
+ <details key="line" value="127"/>
+ </eAnnotations>
+ <eAnnotations source="positions.226" references="/0/flattenParName/%/%.4/%.1">
+ <details key="start" value="3796"/>
+ <details key="end" value="3810"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.227" references="/0/flattenParName/%/%.4/%.1/parameter">
+ <details key="start" value="3796"/>
+ <details key="end" value="3805"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.228" references="/0/flattenParName/%/%.4/%.2">
+ <details key="start" value="3812"/>
+ <details key="end" value="3813"/>
+ <details key="line" value="128"/>
+ </eAnnotations>
+ <eAnnotations source="positions.229" references="/0/flattenParName/parameter">
+ <details key="start" value="3587"/>
+ <details key="end" value="3608"/>
+ <details key="line" value="123"/>
+ </eAnnotations>
+ <eAnnotations source="positions.230" references="/0/flattenParName/%.1">
+ <details key="start" value="3615"/>
+ <details key="end" value="3621"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.231" references="/0/flattenParName/%.1/self">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.232" references="/0/flattenCtfType">
+ <details key="start" value="3833"/>
+ <details key="end" value="4126"/>
+ <details key="line" value="132"/>
+ </eAnnotations>
+ <eAnnotations source="positions.233" references="/0/flattenCtfType/%">
+ <details key="start" value="3900"/>
+ <details key="end" value="4114"/>
+ <details key="line" value="133"/>
+ </eAnnotations>
+ <eAnnotations source="positions.234" references="/0/flattenCtfType/%/%">
+ <details key="start" value="3934"/>
+ <details key="end" value="3935"/>
+ <details key="line" value="134"/>
+ </eAnnotations>
+ <eAnnotations source="positions.235" references="/0/flattenCtfType/%/%.1">
+ <details key="start" value="3935"/>
+ <details key="end" value="4077"/>
+ <details key="line" value="134"/>
+ </eAnnotations>
+ <eAnnotations source="positions.236" references="/0/flattenCtfType/%/%.1/%">
+ <details key="start" value="4017"/>
+ <details key="end" value="4069"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.237" references="/0/flattenCtfType/%/%.1/%/%">
+ <details key="start" value="4025"/>
+ <details key="end" value="4039"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.238" references="/0/flattenCtfType/%/%.1/%/%/attribute">
+ <details key="start" value="4025"/>
+ <details key="end" value="4034"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.239" references="/0/flattenCtfType/%/%.1/%/%.1">
+ <details key="start" value="4041"/>
+ <details key="end" value="4068"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.240" references="/0/flattenCtfType/%/%.1/%/%.1/%">
+ <details key="start" value="4041"/>
+ <details key="end" value="4051"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.241" references="/0/flattenCtfType/%/%.1/%/%.1/%/name">
+ <details key="start" value="4041"/>
+ <details key="end" value="4045"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.242" references="/0/flattenCtfType/%/%.1/%/%.1/%/%">
+ <details key="start" value="4048"/>
+ <details key="end" value="4051"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.243" references="/0/flattenCtfType/%/%.1/%/%.1/%.1">
+ <details key="start" value="4054"/>
+ <details key="end" value="4068"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.244" references="/0/flattenCtfType/%/%.1/%/%.1/%.1/attribute">
+ <details key="start" value="4054"/>
+ <details key="end" value="4063"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.245" references="/0/flattenCtfType/%/%.1/attribute">
+ <details key="start" value="3941"/>
+ <details key="end" value="3961"/>
+ <details key="line" value="134"/>
+ </eAnnotations>
+ <eAnnotations source="positions.246" references="/0/flattenCtfType/%/%.1/%.1">
+ <details key="start" value="3964"/>
+ <details key="end" value="3998"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.247" references="/0/flattenCtfType/%/%.1/%.1/%">
+ <details key="start" value="3964"/>
+ <details key="end" value="3988"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.248" references="/0/flattenCtfType/%/%.1/%.1/%/type">
+ <details key="start" value="3964"/>
+ <details key="end" value="3968"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.249" references="/0/flattenCtfType/%/%.1/%.1/%/%">
+ <details key="start" value="3979"/>
+ <details key="end" value="3987"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.250" references="/0/flattenCtfType/%/%.1/%.2">
+ <details key="start" value="4010"/>
+ <details key="end" value="4014"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.251" references="/0/flattenCtfType/%/%.2">
+ <details key="start" value="4077"/>
+ <details key="end" value="4078"/>
+ <details key="line" value="135"/>
+ </eAnnotations>
+ <eAnnotations source="positions.252" references="/0/flattenCtfType/%/%.3">
+ <details key="start" value="3904"/>
+ <details key="end" value="3932"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.253" references="/0/flattenCtfType/%/%.3/type">
+ <details key="start" value="3905"/>
+ <details key="end" value="3909"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.254" references="/0/flattenCtfType/%/%.3/%">
+ <details key="start" value="3922"/>
+ <details key="end" value="3930"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.255" references="/0/flattenCtfType/%/%.4">
+ <details key="start" value="4078"/>
+ <details key="end" value="4109"/>
+ <details key="line" value="135"/>
+ </eAnnotations>
+ <eAnnotations source="positions.256" references="/0/flattenCtfType/%/%.4/%">
+ <details key="start" value="4085"/>
+ <details key="end" value="4086"/>
+ <details key="line" value="136"/>
+ </eAnnotations>
+ <eAnnotations source="positions.257" references="/0/flattenCtfType/%/%.4/%.1">
+ <details key="start" value="4087"/>
+ <details key="end" value="4106"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.258" references="/0/flattenCtfType/%/%.4/%.1/type">
+ <details key="start" value="4095"/>
+ <details key="end" value="4099"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.259" references="/0/flattenCtfType/%/%.4/%.1/name">
+ <details key="start" value="4101"/>
+ <details key="end" value="4105"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.260" references="/0/flattenCtfType/%/%.4/%.2">
+ <details key="start" value="4108"/>
+ <details key="end" value="4109"/>
+ <details key="line" value="137"/>
+ </eAnnotations>
+ <eAnnotations source="positions.261" references="/0/flattenCtfType/type">
+ <details key="start" value="3858"/>
+ <details key="end" value="3869"/>
+ <details key="line" value="132"/>
+ </eAnnotations>
+ <eAnnotations source="positions.262" references="/0/flattenCtfType/name">
+ <details key="start" value="3871"/>
+ <details key="end" value="3884"/>
+ <details key="line" value="132"/>
+ </eAnnotations>
+ <eAnnotations source="positions.263" references="/0/flattenCtfType/%.1">
+ <details key="start" value="3891"/>
+ <details key="end" value="3897"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.264" references="/0/flattenCtfType/%.1/self">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.265" references="/0/cppTypeWB">
+ <details key="start" value="4129"/>
+ <details key="end" value="4395"/>
+ <details key="line" value="141"/>
+ </eAnnotations>
+ <eAnnotations source="positions.266" references="/0/cppTypeWB/%">
+ <details key="start" value="4176"/>
+ <details key="end" value="4383"/>
+ <details key="line" value="142"/>
+ </eAnnotations>
+ <eAnnotations source="positions.267" references="/0/cppTypeWB/%/%">
+ <details key="start" value="4331"/>
+ <details key="end" value="4357"/>
+ <details key="line" value="146"/>
+ </eAnnotations>
+ <eAnnotations source="positions.268" references="/0/cppTypeWB/%/%.1">
+ <details key="start" value="4181"/>
+ <details key="end" value="4329"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.269" references="/0/cppTypeWB/%/%.1/%">
+ <details key="start" value="4181"/>
+ <details key="end" value="4285"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.270" references="/0/cppTypeWB/%/%.1/%/%">
+ <details key="start" value="4181"/>
+ <details key="end" value="4232"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.271" references="/0/cppTypeWB/%/%.1/%/%/%">
+ <details key="start" value="4182"/>
+ <details key="end" value="4200"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.272" references="/0/cppTypeWB/%/%.1/%/%/%/type">
+ <details key="start" value="4182"/>
+ <details key="end" value="4186"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.273" references="/0/cppTypeWB/%/%.1/%/%/%.1">
+ <details key="start" value="4203"/>
+ <details key="end" value="4231"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.274" references="/0/cppTypeWB/%/%.1/%/%.1">
+ <details key="start" value="4237"/>
+ <details key="end" value="4285"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.275" references="/0/cppTypeWB/%/%.1/%/%.1/%">
+ <details key="start" value="4238"/>
+ <details key="end" value="4256"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.276" references="/0/cppTypeWB/%/%.1/%/%.1/%/type">
+ <details key="start" value="4238"/>
+ <details key="end" value="4242"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.277" references="/0/cppTypeWB/%/%.1/%/%.1/%.1">
+ <details key="start" value="4259"/>
+ <details key="end" value="4284"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.278" references="/0/cppTypeWB/%/%.1/%.1">
+ <details key="start" value="4290"/>
+ <details key="end" value="4329"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.279" references="/0/cppTypeWB/%/%.1/%.1/%">
+ <details key="start" value="4291"/>
+ <details key="end" value="4309"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.280" references="/0/cppTypeWB/%/%.1/%.1/%/type">
+ <details key="start" value="4291"/>
+ <details key="end" value="4295"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.281" references="/0/cppTypeWB/%/%.1/%.1/%.1">
+ <details key="start" value="4312"/>
+ <details key="end" value="4328"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.282" references="/0/cppTypeWB/%/%.2">
+ <details key="start" value="4357"/>
+ <details key="end" value="4378"/>
+ <details key="line" value="147"/>
+ </eAnnotations>
+ <eAnnotations source="positions.283" references="/0/cppTypeWB/%/%.2/%">
+ <details key="start" value="4364"/>
+ <details key="end" value="4365"/>
+ <details key="line" value="148"/>
+ </eAnnotations>
+ <eAnnotations source="positions.284" references="/0/cppTypeWB/%/%.2/%.1">
+ <details key="start" value="4366"/>
+ <details key="end" value="4375"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.285" references="/0/cppTypeWB/%/%.2/%.1/self">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.286" references="/0/cppTypeWB/%/%.2/%.2">
+ <details key="start" value="4377"/>
+ <details key="end" value="4378"/>
+ <details key="line" value="149"/>
+ </eAnnotations>
+ <eAnnotations source="positions.287" references="/0/cppTypeWB/type">
+ <details key="start" value="4149"/>
+ <details key="end" value="4160"/>
+ <details key="line" value="141"/>
+ </eAnnotations>
+ <eAnnotations source="positions.288" references="/0/cppTypeWB/%.1">
+ <details key="start" value="4167"/>
+ <details key="end" value="4173"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.289" references="/0/cppTypeWB/%.1/self">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.290" references="/0/%.4">
+ <details key="start" value="4398"/>
+ <details key="end" value="4558"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.291" references="/0/ctfType">
+ <details key="start" value="4559"/>
+ <details key="end" value="5122"/>
+ <details key="line" value="157"/>
+ </eAnnotations>
+ <eAnnotations source="positions.292" references="/0/ctfType/%">
+ <details key="start" value="4626"/>
+ <details key="end" value="5110"/>
+ <details key="line" value="158"/>
+ </eAnnotations>
+ <eAnnotations source="positions.293" references="/0/ctfType/%/%">
+ <details key="start" value="4778"/>
+ <details key="end" value="4790"/>
+ <details key="line" value="162"/>
+ </eAnnotations>
+ <eAnnotations source="positions.294" references="/0/ctfType/%/name">
+ <details key="start" value="4791"/>
+ <details key="end" value="4795"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.295" references="/0/ctfType/%/%.1">
+ <details key="start" value="4797"/>
+ <details key="end" value="4799"/>
+ <details key="line" value="162"/>
+ </eAnnotations>
+ <eAnnotations source="positions.296" references="/0/ctfType/%/name.1">
+ <details key="start" value="4800"/>
+ <details key="end" value="4804"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.297" references="/0/ctfType/%/%.2">
+ <details key="start" value="4806"/>
+ <details key="end" value="4808"/>
+ <details key="line" value="162"/>
+ </eAnnotations>
+ <eAnnotations source="positions.298" references="/0/ctfType/%/%.3">
+ <details key="start" value="4631"/>
+ <details key="end" value="4776"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.299" references="/0/ctfType/%/%.3/%">
+ <details key="start" value="4631"/>
+ <details key="end" value="4721"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.300" references="/0/ctfType/%/%.3/%/%">
+ <details key="start" value="4631"/>
+ <details key="end" value="4669"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.301" references="/0/ctfType/%/%.3/%/%/%">
+ <details key="start" value="4632"/>
+ <details key="end" value="4650"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.302" references="/0/ctfType/%/%.3/%/%/%/type">
+ <details key="start" value="4632"/>
+ <details key="end" value="4636"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.303" references="/0/ctfType/%/%.3/%/%/%.1">
+ <details key="start" value="4653"/>
+ <details key="end" value="4668"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.304" references="/0/ctfType/%/%.3/%/%.1">
+ <details key="start" value="4674"/>
+ <details key="end" value="4721"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.305" references="/0/ctfType/%/%.3/%/%.1/%">
+ <details key="start" value="4675"/>
+ <details key="end" value="4693"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.306" references="/0/ctfType/%/%.3/%/%.1/%/type">
+ <details key="start" value="4675"/>
+ <details key="end" value="4679"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.307" references="/0/ctfType/%/%.3/%/%.1/%.1">
+ <details key="start" value="4696"/>
+ <details key="end" value="4720"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.308" references="/0/ctfType/%/%.3/%.1">
+ <details key="start" value="4726"/>
+ <details key="end" value="4776"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.309" references="/0/ctfType/%/%.3/%.1/%">
+ <details key="start" value="4727"/>
+ <details key="end" value="4745"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.310" references="/0/ctfType/%/%.3/%.1/%/type">
+ <details key="start" value="4727"/>
+ <details key="end" value="4731"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.311" references="/0/ctfType/%/%.3/%.1/%.1">
+ <details key="start" value="4748"/>
+ <details key="end" value="4775"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.312" references="/0/ctfType/%/%.4">
+ <details key="start" value="5046"/>
+ <details key="end" value="5105"/>
+ <details key="line" value="169"/>
+ </eAnnotations>
+ <eAnnotations source="positions.313" references="/0/ctfType/%/%.4/%">
+ <details key="start" value="5053"/>
+ <details key="end" value="5066"/>
+ <details key="line" value="170"/>
+ </eAnnotations>
+ <eAnnotations source="positions.314" references="/0/ctfType/%/%.4/%.1">
+ <details key="start" value="5067"/>
+ <details key="end" value="5083"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.315" references="/0/ctfType/%/%.4/%.1/type">
+ <details key="start" value="5067"/>
+ <details key="end" value="5071"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.316" references="/0/ctfType/%/%.4/%.2">
+ <details key="start" value="5085"/>
+ <details key="end" value="5087"/>
+ <details key="line" value="170"/>
+ </eAnnotations>
+ <eAnnotations source="positions.317" references="/0/ctfType/%/%.4/name">
+ <details key="start" value="5088"/>
+ <details key="end" value="5092"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.318" references="/0/ctfType/%/%.4/%.3">
+ <details key="start" value="5094"/>
+ <details key="end" value="5096"/>
+ <details key="line" value="170"/>
+ </eAnnotations>
+ <eAnnotations source="positions.319" references="/0/ctfType/%/%.4/name.1">
+ <details key="start" value="5097"/>
+ <details key="end" value="5101"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.320" references="/0/ctfType/%/%.4/%.4">
+ <details key="start" value="5103"/>
+ <details key="end" value="5105"/>
+ <details key="line" value="170"/>
+ </eAnnotations>
+ <eAnnotations source="positions.321" references="/0/ctfType/%/%.5">
+ <details key="start" value="4808"/>
+ <details key="end" value="5046"/>
+ <details key="line" value="163"/>
+ </eAnnotations>
+ <eAnnotations source="positions.322" references="/0/ctfType/%/%.5/%">
+ <details key="start" value="4998"/>
+ <details key="end" value="5009"/>
+ <details key="line" value="168"/>
+ </eAnnotations>
+ <eAnnotations source="positions.323" references="/0/ctfType/%/%.5/%.1">
+ <details key="start" value="5010"/>
+ <details key="end" value="5024"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.324" references="/0/ctfType/%/%.5/%.1/type">
+ <details key="start" value="5010"/>
+ <details key="end" value="5014"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.325" references="/0/ctfType/%/%.5/%.2">
+ <details key="start" value="5026"/>
+ <details key="end" value="5028"/>
+ <details key="line" value="168"/>
+ </eAnnotations>
+ <eAnnotations source="positions.326" references="/0/ctfType/%/%.5/name">
+ <details key="start" value="5029"/>
+ <details key="end" value="5033"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.327" references="/0/ctfType/%/%.5/%.3">
+ <details key="start" value="5035"/>
+ <details key="end" value="5037"/>
+ <details key="line" value="168"/>
+ </eAnnotations>
+ <eAnnotations source="positions.328" references="/0/ctfType/%/%.5/name.1">
+ <details key="start" value="5038"/>
+ <details key="end" value="5042"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.329" references="/0/ctfType/%/%.5/%.4">
+ <details key="start" value="5044"/>
+ <details key="end" value="5046"/>
+ <details key="line" value="168"/>
+ </eAnnotations>
+ <eAnnotations source="positions.330" references="/0/ctfType/%/%.5/%.5">
+ <details key="start" value="4817"/>
+ <details key="end" value="4996"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.331" references="/0/ctfType/%/%.5/%.5/%">
+ <details key="start" value="4817"/>
+ <details key="end" value="4946"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.332" references="/0/ctfType/%/%.5/%.5/%/%">
+ <details key="start" value="4817"/>
+ <details key="end" value="4897"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.333" references="/0/ctfType/%/%.5/%.5/%/%/%">
+ <details key="start" value="4817"/>
+ <details key="end" value="4854"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.334" references="/0/ctfType/%/%.5/%.5/%/%/%/%">
+ <details key="start" value="4818"/>
+ <details key="end" value="4836"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.335" references="/0/ctfType/%/%.5/%.5/%/%/%/%/type">
+ <details key="start" value="4818"/>
+ <details key="end" value="4822"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.336" references="/0/ctfType/%/%.5/%.5/%/%/%/%.1">
+ <details key="start" value="4839"/>
+ <details key="end" value="4853"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.337" references="/0/ctfType/%/%.5/%.5/%/%/%.1">
+ <details key="start" value="4859"/>
+ <details key="end" value="4897"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.338" references="/0/ctfType/%/%.5/%.5/%/%/%.1/%">
+ <details key="start" value="4860"/>
+ <details key="end" value="4878"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.339" references="/0/ctfType/%/%.5/%.5/%/%/%.1/%/type">
+ <details key="start" value="4860"/>
+ <details key="end" value="4864"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.340" references="/0/ctfType/%/%.5/%.5/%/%/%.1/%.1">
+ <details key="start" value="4881"/>
+ <details key="end" value="4896"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.341" references="/0/ctfType/%/%.5/%.5/%/%.1">
+ <details key="start" value="4902"/>
+ <details key="end" value="4946"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.342" references="/0/ctfType/%/%.5/%.5/%/%.1/%">
+ <details key="start" value="4903"/>
+ <details key="end" value="4921"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.343" references="/0/ctfType/%/%.5/%.5/%/%.1/%/type">
+ <details key="start" value="4903"/>
+ <details key="end" value="4907"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.344" references="/0/ctfType/%/%.5/%.5/%/%.1/%.1">
+ <details key="start" value="4924"/>
+ <details key="end" value="4945"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.345" references="/0/ctfType/%/%.5/%.5/%.1">
+ <details key="start" value="4951"/>
+ <details key="end" value="4996"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.346" references="/0/ctfType/%/%.5/%.5/%.1/%">
+ <details key="start" value="4952"/>
+ <details key="end" value="4970"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.347" references="/0/ctfType/%/%.5/%.5/%.1/%/type">
+ <details key="start" value="4952"/>
+ <details key="end" value="4956"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.348" references="/0/ctfType/%/%.5/%.5/%.1/%.1">
+ <details key="start" value="4973"/>
+ <details key="end" value="4995"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.349" references="/0/ctfType/type">
+ <details key="start" value="4584"/>
+ <details key="end" value="4595"/>
+ <details key="line" value="157"/>
+ </eAnnotations>
+ <eAnnotations source="positions.350" references="/0/ctfType/name">
+ <details key="start" value="4597"/>
+ <details key="end" value="4610"/>
+ <details key="line" value="157"/>
+ </eAnnotations>
+ <eAnnotations source="positions.351" references="/0/ctfType/%.1">
+ <details key="start" value="4617"/>
+ <details key="end" value="4623"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.352" references="/0/ctfType/%.1/self">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ </ecore:EAnnotation>
+</xmi:XMI>
diff --git a/extraplugins/qompass-designer/tracing/org.eclipse.papyrus.qompass.modellibs.tracing/src/org/eclipse/papyrus/qompass/modellibs/tracing/acceleo/traceOTF.emtl b/extraplugins/qompass-designer/tracing/org.eclipse.papyrus.qompass.modellibs.tracing/src/org/eclipse/papyrus/qompass/modellibs/tracing/acceleo/traceOTF.emtl
new file mode 100644
index 00000000000..73a9d729b09
--- /dev/null
+++ b/extraplugins/qompass-designer/tracing/org.eclipse.papyrus.qompass.modellibs.tracing/src/org/eclipse/papyrus/qompass/modellibs/tracing/acceleo/traceOTF.emtl
@@ -0,0 +1,339 @@
+<?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="traceOTF" nsURI="org::eclipse::papyrus::qompass::modellibs::tracing::acceleo::traceOTF" endHeaderPosition="57">
+ <input>
+ <takesTypesFrom href="http://www.eclipse.org/uml2/4.0.0/UML#/"/>
+ </input>
+ <imports href="platform:/plugin/org.eclipse.papyrus.qompass.designer.core/org/eclipse/papyrus/qompass/designer/core/acceleo/UMLTool.emtl#/0"/>
+ <imports href="platform:/plugin/org.eclipse.papyrus.qompass.designer.core/org/eclipse/papyrus/qompass/designer/core/acceleo/utils_cpp.emtl#/0"/>
+ <ownedModuleElement xsi:type="mtl:Template" name="traceOp" visibility="Public">
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="&#xA;// &lt;instance>_&lt;port>_&lt;operation>&#xA;// easier: &lt;component>_&lt;port>_&lt;operation>&#xA;updateTimestamp ();&#xA;if (!hasDeclaredFunctions) {&#xA;&#x9;declareFunctions();&#xA;&#x9;hasDeclaredFunctions = true;&#xA;}&#xA;Tracing::TraceInit::wait();&#xA;int processID = Tracing::TraceInit::getProcessID();&#xA;OTF_Writer * writer = Tracing::TraceInit::getWriter();&#xA;OTF_Writer_writeEnter (writer, timestamp.ticks(), &lt;%enumSvcPrefix%>::id_&lt;%owner.varName%>_&lt;%varName%>, processID, 0);&#xA;OTF_Writer_writeEventComment (writer, timestamp.ticks(), processID, portName);&#xA;OTF_Writer_writeEventComment (writer, timestamp.ticks(), processID, instanceName);&#xA;Tracing::TraceInit::post();&#xA;"/>
+ <body xsi:type="mtl:IfBlock">
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=" "/>
+ <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="platform:/plugin/org.eclipse.papyrus.qompass.designer.core/org/eclipse/papyrus/qompass/designer/core/acceleo/utils_cpp.emtl#/0/cppType"/>
+ <argument xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Type"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="self" referredVariable="/7">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Operation"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/4.0.0/UML#//Operation/type"/>
+ </argument>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=" ret = "/>
+ <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/4.0.0/UML#//Type"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="self" referredVariable="/6">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Operation"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/4.0.0/UML#//Operation/type"/>
+ </source>
+ <argument xsi:type="ocl.ecore:NullLiteralExp">
+ <eType xsi:type="ocl.ecore:VoidType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclVoid"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny_Class/="/>
+ </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="rconn->"/>
+ <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="platform:/plugin/org.eclipse.papyrus.qompass.designer.core/org/eclipse/papyrus/qompass/designer/core/acceleo/utils_cpp.emtl#/0/cppCall"/>
+ <argument xsi:type="ocl.ecore:VariableExp" name="operation" referredVariable="/0/traceOp/operation">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Operation"/>
+ </argument>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=";&#xA;updateTimestamp ();&#xA;Tracing::TraceInit::wait();&#xA;OTF_Writer_writeLeave (writer, timestamp.ticks(), &lt;%enumSvcPrefix%>::id_&lt;%owner.varName%>_&lt;%varName%>, processID, 0);&#xA;Tracing::TraceInit::post();&#xA;"/>
+ <body xsi:type="mtl:IfBlock">
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=" return ret;"/>
+ <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/4.0.0/UML#//Type"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="self" referredVariable="/9">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Operation"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/4.0.0/UML#//Operation/type"/>
+ </source>
+ <argument xsi:type="ocl.ecore:NullLiteralExp">
+ <eType xsi:type="ocl.ecore:VoidType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclVoid"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny_Class/="/>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean_Class/not"/>
+ </ifExpr>
+ </body>
+ <parameter name="operation">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Operation"/>
+ </parameter>
+ </ownedModuleElement>
+ </mtl:Module>
+ <ecore:EPackage name="additions">
+ <eClassifiers xsi:type="ecore:EClass" name="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="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="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="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="traceOp">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <contents xsi:type="ocl.ecore:Constraint"/>
+ </eAnnotations>
+ <eAnnotations source="MTL" references="/0/traceOp"/>
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <eParameters name="operation">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Operation"/>
+ </eParameters>
+ </eOperations>
+ <eOperations name="cppCall">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <contents xsi:type="ocl.ecore:Constraint"/>
+ </eAnnotations>
+ <eAnnotations source="MTL">
+ <references href="platform:/plugin/org.eclipse.papyrus.qompass.designer.core/org/eclipse/papyrus/qompass/designer/core/acceleo/utils_cpp.emtl#/0/cppCall"/>
+ </eAnnotations>
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <eParameters name="operation">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Operation"/>
+ </eParameters>
+ </eOperations>
+ <eOperations name="cppType">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <contents xsi:type="ocl.ecore:Constraint"/>
+ </eAnnotations>
+ <eAnnotations source="MTL">
+ <references href="platform:/plugin/org.eclipse.papyrus.qompass.designer.core/org/eclipse/papyrus/qompass/designer/core/acceleo/utils_cpp.emtl#/0/cppType"/>
+ </eAnnotations>
+ <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/4.0.0/UML#//Type"/>
+ </eParameters>
+ </eOperations>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="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>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="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>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="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="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="Operation_Class">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <references href="http://www.eclipse.org/uml2/4.0.0/UML#//Operation"/>
+ </eAnnotations>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="Type_Class">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <references href="http://www.eclipse.org/uml2/4.0.0/UML#//Type"/>
+ </eAnnotations>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="NamedElement_Class">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <references href="http://www.eclipse.org/uml2/4.0.0/UML#//NamedElement"/>
+ </eAnnotations>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="Element_Class">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <references href="http://www.eclipse.org/uml2/4.0.0/UML#//Element"/>
+ </eAnnotations>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="Classifier_Class">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <references href="http://www.eclipse.org/uml2/4.0.0/UML#//Classifier"/>
+ </eAnnotations>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="Parameter_Class">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <references href="http://www.eclipse.org/uml2/4.0.0/UML#//Parameter"/>
+ </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/4.0.0/UML#//Operation"/>
+ </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/4.0.0/UML#//Operation"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Operation"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Operation"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.0.0/UML#//Operation"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/4.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>
+ <ecore:EAnnotation source="positions">
+ <eAnnotations source="positions.0" references="/0/traceOp">
+ <details key="start" value="214"/>
+ <details key="end" value="1211"/>
+ <details key="line" value="6"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1" references="/0/traceOp/%">
+ <details key="start" value="262"/>
+ <details key="end" value="883"/>
+ <details key="line" value="7"/>
+ </eAnnotations>
+ <eAnnotations source="positions.2" references="/0/traceOp/%.1">
+ <details key="start" value="883"/>
+ <details key="end" value="935"/>
+ <details key="line" value="22"/>
+ </eAnnotations>
+ <eAnnotations source="positions.3" references="/0/traceOp/%.1/%">
+ <details key="start" value="905"/>
+ <details key="end" value="906"/>
+ <details key="line" value="22"/>
+ </eAnnotations>
+ <eAnnotations source="positions.4" references="/0/traceOp/%.1/%.1">
+ <details key="start" value="907"/>
+ <details key="end" value="921"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.5" references="/0/traceOp/%.1/%.1/%">
+ <details key="start" value="907"/>
+ <details key="end" value="911"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.6" references="/0/traceOp/%.1/%.1/%/self">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.7" references="/0/traceOp/%.1/%.2">
+ <details key="start" value="923"/>
+ <details key="end" value="930"/>
+ <details key="line" value="22"/>
+ </eAnnotations>
+ <eAnnotations source="positions.8" references="/0/traceOp/%.1/%.3">
+ <details key="start" value="887"/>
+ <details key="end" value="904"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.9" references="/0/traceOp/%.1/%.3/%">
+ <details key="start" value="891"/>
+ <details key="end" value="904"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.10" references="/0/traceOp/%.1/%.3/%/%">
+ <details key="start" value="892"/>
+ <details key="end" value="896"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.11" references="/0/traceOp/%.1/%.3/%/%/self">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.12" references="/0/traceOp/%.1/%.3/%/%.1">
+ <details key="start" value="899"/>
+ <details key="end" value="903"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.13" references="/0/traceOp/%.2">
+ <details key="start" value="935"/>
+ <details key="end" value="942"/>
+ <details key="line" value="22"/>
+ </eAnnotations>
+ <eAnnotations source="positions.14" references="/0/traceOp/%.3">
+ <details key="start" value="943"/>
+ <details key="end" value="962"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.15" references="/0/traceOp/%.3/operation">
+ <details key="start" value="943"/>
+ <details key="end" value="952"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.16" references="/0/traceOp/%.4">
+ <details key="start" value="964"/>
+ <details key="end" value="1160"/>
+ <details key="line" value="22"/>
+ </eAnnotations>
+ <eAnnotations source="positions.17" references="/0/traceOp/%.5">
+ <details key="start" value="1160"/>
+ <details key="end" value="1199"/>
+ <details key="line" value="27"/>
+ </eAnnotations>
+ <eAnnotations source="positions.18" references="/0/traceOp/%.5/%">
+ <details key="start" value="1182"/>
+ <details key="end" value="1194"/>
+ <details key="line" value="27"/>
+ </eAnnotations>
+ <eAnnotations source="positions.19" references="/0/traceOp/%.5/%.1">
+ <details key="start" value="1164"/>
+ <details key="end" value="1181"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.20" references="/0/traceOp/%.5/%.1/%">
+ <details key="start" value="1168"/>
+ <details key="end" value="1181"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.21" references="/0/traceOp/%.5/%.1/%/%">
+ <details key="start" value="1169"/>
+ <details key="end" value="1173"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.22" references="/0/traceOp/%.5/%.1/%/%/self">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.23" references="/0/traceOp/%.5/%.1/%/%.1">
+ <details key="start" value="1176"/>
+ <details key="end" value="1180"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.24" references="/0/traceOp/operation">
+ <details key="start" value="239"/>
+ <details key="end" value="259"/>
+ <details key="line" value="6"/>
+ </eAnnotations>
+ </ecore:EAnnotation>
+</xmi:XMI>

Back to the top