blob: 328f9e9759cb958bc90b72fddf20e9a5fd05a7ac [file] [log] [blame]
<?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="org::eclipse::ocl::examples::codegen::tables::model2bodies" nsURI="org::eclipse::ocl::examples::codegen::tables::model2bodies" startHeaderPosition="445" endHeaderPosition="596">
<input>
<takesTypesFrom href="http://www.eclipse.org/ocl/3.1.0/Pivot#/"/>
</input>
<input>
<takesTypesFrom href="http://www.eclipse.org/emf/2002/GenModel#/"/>
</input>
<imports href="../common/constantTemplates.emtl#/0"/>
<imports href="../common/elementQueries.emtl#/0"/>
<imports href="../common/emitQueries.emtl#/0"/>
<imports href="../common/expressionTemplates.emtl#/0"/>
<imports href="../common/genPackageQueries.emtl#/0"/>
<imports href="../common/nameQueries.emtl#/0"/>
<imports href="../common/pivotQueries.emtl#/0"/>
<imports href="../common/symbolTemplates.emtl#/0"/>
<ownedModuleElement xsi:type="mtl:Template" name="generateBodies" visibility="Public" main="true">
<body xsi:type="mtl:ForBlock">
<body xsi:type="mtl:LetBlock">
<body xsi:type="mtl:ForBlock">
<body xsi:type="mtl:TemplateInvocation" definition="/0/generateType">
<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="genPackage" referredVariable="/0/generateBodies/@body.0/genPackage">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/GenModel#//GenPackage"/>
</argument>
<argument xsi:type="ocl.ecore:VariableExp" name="pPackage" referredVariable="/0/generateBodies/@body.0/@body.0/pPackage">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Package"/>
</argument>
<argument xsi:type="ocl.ecore:VariableExp" name="pType" referredVariable="/0/generateBodies/@body.0/@body.0/@body.0/pType">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Type"/>
</argument>
</body>
<body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="&#xA;"/>
<loopVariable name="pType">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Type"/>
</loopVariable>
<iterSet xsi:type="ocl.ecore:IteratorExp" name="select" eType="/3/Set(Type)">
<source xsi:type="ocl.ecore:PropertyCallExp" eType="/3/Set(Type)">
<source xsi:type="ocl.ecore:VariableExp" name="pPackage" referredVariable="/0/generateBodies/@body.0/@body.0/pPackage">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Package"/>
</source>
<referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Package/ownedType"/>
</source>
<body xsi:type="ocl.ecore:OperationCallExp">
<eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
<source xsi:type="ocl.ecore:OperationCallExp">
<eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
<source xsi:type="ocl.ecore:OperationCallExp">
<eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
<source xsi:type="ocl.ecore:PropertyCallExp" eType="/3/OrderedSet(Constraint)">
<source xsi:type="ocl.ecore:VariableExp" name="temp1" referredVariable="/0/generateBodies/@body.0/@body.0/@body.0/select/temp1">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Type"/>
</source>
<referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//NamedElement/ownedRule"/>
</source>
<referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OrderedSet(T)_Class/notEmpty"/>
</source>
<argument xsi:type="ocl.ecore:OperationCallExp">
<eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
<source xsi:type="ocl.ecore:IteratorExp" name="collect" eType="/3/Sequence(Constraint)">
<source xsi:type="mtl:QueryInvocation" eType="/3/OrderedSet(Operation)">
<definition href="../common/pivotQueries.emtl#/0/getOperations"/>
<argument xsi:type="ocl.ecore:VariableExp" name="temp1" referredVariable="/0/generateBodies/@body.0/@body.0/@body.0/select/temp1">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Type"/>
</argument>
</source>
<body xsi:type="ocl.ecore:PropertyCallExp" eType="/3/OrderedSet(Constraint)">
<source xsi:type="ocl.ecore:VariableExp" name="temp2" referredVariable="/0/generateBodies/@body.0/@body.0/@body.0/select/@body/@source/@argument.0/collect/temp2">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Operation"/>
</source>
<referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//NamedElement/ownedRule"/>
</body>
<iterator xsi:type="ocl.ecore:Variable" name="temp2">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Operation"/>
</iterator>
</source>
<referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Sequence(T)_Class/notEmpty"/>
</argument>
<referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean_Class/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:IteratorExp" name="collect" eType="/3/Sequence(Constraint)">
<source xsi:type="mtl:QueryInvocation" eType="/3/OrderedSet(Property)">
<definition href="../common/pivotQueries.emtl#/0/getProperties"/>
<argument xsi:type="ocl.ecore:VariableExp" name="temp1" referredVariable="/0/generateBodies/@body.0/@body.0/@body.0/select/temp1">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Type"/>
</argument>
</source>
<body xsi:type="ocl.ecore:PropertyCallExp" eType="/3/OrderedSet(Constraint)">
<source xsi:type="ocl.ecore:VariableExp" name="temp3" referredVariable="/0/generateBodies/@body.0/@body.0/@body.0/select/@body/@argument.0/collect/temp3">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Property"/>
</source>
<referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//NamedElement/ownedRule"/>
</body>
<iterator xsi:type="ocl.ecore:Variable" name="temp3">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Property"/>
</iterator>
</source>
<referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Sequence(T)_Class/notEmpty"/>
</argument>
<referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean_Class/or"/>
</body>
<iterator xsi:type="ocl.ecore:Variable" name="temp1">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Type"/>
</iterator>
</iterSet>
</body>
<letVariable name="pPackage">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Package"/>
<initExpression xsi:type="mtl:QueryInvocation">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Package"/>
<definition href="../common/genPackageQueries.emtl#/0/getPivotPackage"/>
<argument xsi:type="ocl.ecore:VariableExp" name="genPackage" referredVariable="/0/generateBodies/@body.0/genPackage">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/GenModel#//GenPackage"/>
</argument>
</initExpression>
</letVariable>
</body>
<loopVariable name="genPackage">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/GenModel#//GenPackage"/>
</loopVariable>
<iterSet xsi:type="ocl.ecore:PropertyCallExp" eType="/3/OrderedSet(GenPackage)">
<source xsi:type="ocl.ecore:VariableExp" name="genModel" referredVariable="/0/generateBodies/genModel">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/GenModel#//GenModel"/>
</source>
<referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/emf/2002/GenModel#//GenModel/genPackages"/>
</iterSet>
</body>
<parameter name="genModel">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/GenModel#//GenModel"/>
</parameter>
</ownedModuleElement>
<ownedModuleElement xsi:type="mtl:Template" name="generateType" visibility="Public">
<body xsi:type="mtl:LetBlock">
<body xsi:type="mtl:LetBlock">
<body xsi:type="mtl:LetBlock">
<body xsi:type="mtl:FileBlock" openMode="OverWrite">
<body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="/**&#xA; * "/>
<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="../common/genPackageQueries.emtl#/0/getCopyright"/>
<argument xsi:type="ocl.ecore:VariableExp" name="genPackage" referredVariable="/0/generateType/genPackage">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/GenModel#//GenPackage"/>
</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>
</body>
<body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="&#xA; *************************************************************************&#xA; * This code is 100% auto-generated&#xA; * from: "/>
<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="pPackage" referredVariable="/0/generateType/pPackage">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Package"/>
</source>
<referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//NamedElement/name"/>
</body>
<body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="&#xA; * using: org.eclipse.ocl.examples.codegen.tables.model2tables.mtl&#xA; *&#xA; * Do not edit it.&#xA; */&#xA;package "/>
<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="../common/genPackageQueries.emtl#/0/getQualifiedBodiesPackageName"/>
<argument xsi:type="ocl.ecore:VariableExp" name="genPackage" referredVariable="/0/generateType/genPackage">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/GenModel#//GenPackage"/>
</argument>
</body>
<body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=";&#xA;&#xA;"/>
<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="../common/emitQueries.emtl#/0/prefixImports"/>
<argument xsi:type="ocl.ecore:VariableExp" name="self" referredVariable="/29">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/GenModel#//GenPackage"/>
</argument>
<argument 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="../common/emitQueries.emtl#/0/knownImports"/>
<argument xsi:type="ocl.ecore:VariableExp" name="self" referredVariable="/29">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/GenModel#//GenPackage"/>
</argument>
</argument>
<argument xsi:type="mtl:TemplateInvocation" definition="/0/generateTypeClass">
<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="genPackage" referredVariable="/0/generateType/genPackage">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/GenModel#//GenPackage"/>
</argument>
<argument xsi:type="ocl.ecore:VariableExp" name="pPackage" referredVariable="/0/generateType/pPackage">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Package"/>
</argument>
<argument xsi:type="ocl.ecore:VariableExp" name="pType" referredVariable="/0/generateType/pType">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Type"/>
</argument>
</argument>
</body>
<body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="&#xA;"/>
<fileUrl xsi:type="ocl.ecore:OperationCallExp" referredOperation="/1/String_Class/+">
<eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
<source xsi:type="ocl.ecore:OperationCallExp" referredOperation="/1/String_Class/+">
<eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
<source xsi:type="ocl.ecore:OperationCallExp" referredOperation="/1/String_Class/+">
<eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
<source xsi:type="ocl.ecore:OperationCallExp" referredOperation="/1/String_Class/+">
<eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
<source xsi:type="ocl.ecore:OperationCallExp" referredOperation="/1/String_Class/+">
<eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
<source xsi:type="ocl.ecore:OperationCallExp" referredOperation="/1/String_Class/+">
<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="packagePathPrefix" referredVariable="/0/generateType/@body.0/packagePathPrefix">
<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: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="pPackage" referredVariable="/0/generateType/pPackage">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Package"/>
</source>
<referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//NamedElement/name"/>
</argument>
</source>
<argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="/">
<eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
</argument>
</source>
<argument 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="../common/genPackageQueries.emtl#/0/getBodiesPackageName"/>
<argument xsi:type="ocl.ecore:VariableExp" name="genPackage" referredVariable="/0/generateType/genPackage">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/GenModel#//GenPackage"/>
</argument>
</argument>
</source>
<argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="/">
<eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
</argument>
</source>
<argument xsi:type="ocl.ecore:VariableExp" name="className" referredVariable="/0/generateType/@body.0/@body.0/@body.0/className">
<eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
</argument>
</source>
<argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=".java">
<eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
</argument>
</fileUrl>
<charset xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="UTF-8">
<eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
</charset>
</body>
<letVariable name="className">
<eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
<initExpression xsi:type="ocl.ecore:OperationCallExp" referredOperation="/1/String_Class/+">
<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="pType" referredVariable="/0/generateType/pType">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Type"/>
</source>
<referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//NamedElement/name"/>
</source>
<argument 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="../common/genPackageQueries.emtl#/0/getBodiesClassSuffix"/>
<argument xsi:type="ocl.ecore:VariableExp" name="genPackage" referredVariable="/0/generateType/genPackage">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/GenModel#//GenPackage"/>
</argument>
</argument>
</initExpression>
</letVariable>
</body>
<letVariable name="packagePrefix">
<eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
<initExpression xsi:type="ocl.ecore:OperationCallExp" referredOperation="/1/String_Class/replaceAll">
<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="packagePathPrefix" referredVariable="/0/generateType/@body.0/packagePathPrefix">
<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>
<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>
</initExpression>
</letVariable>
</body>
<letVariable name="packagePathPrefix">
<eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
<initExpression xsi:type="ocl.ecore:IfExp">
<eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
<condition xsi:type="ocl.ecore:OperationCallExp">
<eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
<source xsi:type="ocl.ecore:OperationCallExp">
<eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
<source xsi:type="ocl.ecore:CollectionLiteralExp" eType="/3/Set(String)">
<eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL/Annotations">
<details key="IMPLICIT_SET_CONVERSION" value="true"/>
</eAnnotations>
<part xsi:type="ocl.ecore:CollectionItem">
<eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
<item xsi:type="ocl.ecore:PropertyCallExp">
<eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
<source xsi:type="ocl.ecore:VariableExp" name="genPackage" referredVariable="/0/generateType/genPackage">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/GenModel#//GenPackage"/>
</source>
<referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/emf/2002/GenModel#//GenPackage/basePackage"/>
</item>
</part>
</source>
<referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Set(T)_Class/notEmpty"/>
</source>
<argument xsi:type="ocl.ecore:OperationCallExp">
<eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
<source xsi:type="ocl.ecore:OperationCallExp">
<eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Integer"/>
<source xsi:type="ocl.ecore:PropertyCallExp">
<eType 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="genPackage" referredVariable="/0/generateType/genPackage">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/GenModel#//GenPackage"/>
</source>
<referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/emf/2002/GenModel#//GenPackage/basePackage"/>
</source>
<referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String_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"/>
</argument>
<referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean_Class/and"/>
</condition>
<thenExpression xsi:type="ocl.ecore:OperationCallExp" referredOperation="/1/String_Class/+">
<eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
<source xsi:type="ocl.ecore:OperationCallExp" referredOperation="/1/String_Class/replaceAll">
<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="genPackage" referredVariable="/0/generateType/genPackage">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/GenModel#//GenPackage"/>
</source>
<referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/emf/2002/GenModel#//GenPackage/basePackage"/>
</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>
</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>
</thenExpression>
<elseExpression xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="">
<eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
</elseExpression>
</initExpression>
</letVariable>
</body>
<parameter name="genPackage">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/GenModel#//GenPackage"/>
</parameter>
<parameter name="pPackage">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Package"/>
</parameter>
<parameter name="pType">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Type"/>
</parameter>
</ownedModuleElement>
<ownedModuleElement xsi:type="mtl:Template" name="generateTypeClass" visibility="Public">
<body xsi:type="mtl:LetBlock">
<body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="/**&#xA; * "/>
<body xsi:type="ocl.ecore:VariableExp" name="className" referredVariable="/0/generateTypeClass/@body.0/className.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=" provides the Java implementation bodies of OCL-defined "/>
<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="pType" referredVariable="/0/generateTypeClass/pType">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Type"/>
</source>
<referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//NamedElement/name"/>
</body>
<body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=" operations and properties.&#xA; */&#xA;@SuppressWarnings(&quot;nls&quot;)&#xA;public class "/>
<body xsi:type="ocl.ecore:VariableExp" name="className" referredVariable="/0/generateTypeClass/@body.0/className.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="&#xA;{&#xA;"/>
<body xsi:type="mtl:ForBlock">
<body xsi:type="mtl:LetBlock">
<body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="&#x9;"/>
<body xsi:type="mtl:TemplateInvocation" definition="/0/generateInvariant">
<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="expInOcl" referredVariable="/0/generateTypeClass/@body.0/@body.7/@body.0/expInOcl">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</argument>
<argument xsi:type="ocl.ecore:VariableExp" name="genPackage" referredVariable="/0/generateTypeClass/genPackage">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/GenModel#//GenPackage"/>
</argument>
<argument xsi:type="ocl.ecore:VariableExp" name="pPackage" referredVariable="/0/generateTypeClass/pPackage">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Package"/>
</argument>
<argument xsi:type="ocl.ecore:VariableExp" name="pType" referredVariable="/0/generateTypeClass/pType">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Type"/>
</argument>
<argument xsi:type="ocl.ecore:VariableExp" name="pConstraint" referredVariable="/0/generateTypeClass/@body.0/@body.7/pConstraint">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Constraint"/>
</argument>
</body>
<body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="&#xA;"/>
<letVariable name="expInOcl">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
<initExpression xsi:type="mtl:QueryInvocation">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
<definition href="../common/elementQueries.emtl#/0/getExpressionInOcl"/>
<argument xsi:type="ocl.ecore:PropertyCallExp">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ValueSpecification"/>
<source xsi:type="ocl.ecore:VariableExp" name="pConstraint" referredVariable="/0/generateTypeClass/@body.0/@body.7/pConstraint">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Constraint"/>
</source>
<referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Constraint/specification"/>
</argument>
<argument xsi:type="ocl.ecore:VariableExp" name="pType" referredVariable="/0/generateTypeClass/pType">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Type"/>
</argument>
</initExpression>
</letVariable>
</body>
<loopVariable name="pConstraint">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Constraint"/>
</loopVariable>
<iterSet xsi:type="ocl.ecore:IteratorExp" name="sortedBy" eType="/3/OrderedSet(Constraint)">
<source xsi:type="ocl.ecore:PropertyCallExp" eType="/3/OrderedSet(Constraint)">
<source xsi:type="ocl.ecore:VariableExp" name="pType" referredVariable="/0/generateTypeClass/pType">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Type"/>
</source>
<referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//NamedElement/ownedRule"/>
</source>
<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="temp1" referredVariable="/0/generateTypeClass/@body.0/@body.7/sortedBy/temp4">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Constraint"/>
</source>
<referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//NamedElement/name"/>
</body>
<iterator xsi:type="ocl.ecore:Variable" name="temp4">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Constraint"/>
</iterator>
</iterSet>
<before 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"/>
</before>
<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="mtl:IfBlock">
<body xsi:type="mtl:ForBlock">
<body xsi:type="mtl:ForBlock">
<body xsi:type="mtl:LetBlock">
<body xsi:type="mtl:IfBlock">
<body xsi:type="mtl:IfBlock">
<body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="&#x9;public static "/>
<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/ocl/3.1.0/Pivot#//Type"/>
<source xsi:type="ocl.ecore:VariableExp" name="pOperation" referredVariable="/0/generateTypeClass/@body.0/@body.8/@body.0/pOperation">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Operation"/>
</source>
<referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//TypedElement/type"/>
</source>
<referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//NamedElement/name"/>
</body>
<body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=" "/>
<body xsi:type="ocl.ecore:PropertyCallExp">
<eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
<source xsi:type="ocl.ecore:VariableExp" name="pOperation" referredVariable="/0/generateTypeClass/@body.0/@body.8/@body.0/pOperation">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Operation"/>
</source>
<referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//NamedElement/name"/>
</body>
<body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="("/>
<body xsi:type="ocl.ecore:PropertyCallExp">
<eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
<source xsi:type="ocl.ecore:VariableExp" name="pType" referredVariable="/0/generateTypeClass/pType">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Type"/>
</source>
<referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//NamedElement/name"/>
</body>
<body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=" self"/>
<body xsi:type="mtl:ForBlock">
<body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=", "/>
<body xsi:type="ocl.ecore:PropertyCallExp">
<eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
<source xsi:type="ocl.ecore:PropertyCallExp">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Type"/>
<source xsi:type="ocl.ecore:VariableExp" name="parameter" referredVariable="/0/generateTypeClass/@body.0/@body.8/@body.0/@body.0/@body.0/@body.0/@body.0/@body.7/parameter">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Parameter"/>
</source>
<referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//TypedElement/type"/>
</source>
<referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//NamedElement/name"/>
</body>
<body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=" "/>
<body xsi:type="ocl.ecore:PropertyCallExp">
<eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
<source xsi:type="ocl.ecore:VariableExp" name="parameter" referredVariable="/0/generateTypeClass/@body.0/@body.8/@body.0/@body.0/@body.0/@body.0/@body.0/@body.7/parameter">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Parameter"/>
</source>
<referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//NamedElement/name"/>
</body>
<loopVariable name="parameter">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Parameter"/>
</loopVariable>
<iterSet xsi:type="ocl.ecore:PropertyCallExp" eType="/3/OrderedSet(Parameter)">
<source xsi:type="ocl.ecore:VariableExp" name="pOperation" referredVariable="/0/generateTypeClass/@body.0/@body.8/@body.0/pOperation">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Operation"/>
</source>
<referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Operation/ownedParameter"/>
</iterSet>
</body>
<body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=") {&#xA;&#x9;&#x9;final &lt;%ExecutorManager%> evaluator = new &lt;%EcoreExecutorManager%>(this, null, &lt;%"/>
<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="../common/genPackageQueries.emtl#/0/getQualifiedTablesClassName"/>
<argument xsi:type="ocl.ecore:VariableExp" name="pType" referredVariable="/0/generateTypeClass/pType">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Type"/>
</argument>
<argument xsi:type="ocl.ecore:VariableExp" name="genPackage" referredVariable="/0/generateTypeClass/genPackage">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/GenModel#//GenPackage"/>
</argument>
</body>
<body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="%>.LIBRARY);&#xA;&#x9;&#x9;final &lt;%ValueFactory%> valueFactory = evaluator.getValueFactory();&#xA;&#x9;&#x9;Library"/>
<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="../common/genPackageQueries.emtl#/0/emitOperationArity"/>
<argument xsi:type="ocl.ecore:VariableExp" name="genPackage" referredVariable="/0/generateTypeClass/genPackage">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/GenModel#//GenPackage"/>
</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/Integer"/>
<source xsi:type="ocl.ecore:PropertyCallExp" eType="/3/OrderedSet(Parameter)">
<source xsi:type="ocl.ecore:VariableExp" name="pOperation" referredVariable="/0/generateTypeClass/@body.0/@body.8/@body.0/pOperation">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Operation"/>
</source>
<referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Operation/ownedParameter"/>
</source>
<referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OrderedSet(T)_Class/size"/>
</argument>
</body>
<body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=" codeGen = "/>
<body xsi:type="ocl.ecore:OperationCallExp" referredOperation="/1/String_Class/+">
<eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
<source xsi:type="ocl.ecore:OperationCallExp" referredOperation="/1/String_Class/+">
<eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
<source xsi:type="ocl.ecore:OperationCallExp" referredOperation="/1/String_Class/+">
<eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
<source xsi:type="ocl.ecore:OperationCallExp" referredOperation="/1/String_Class/+">
<eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
<source xsi:type="ocl.ecore:OperationCallExp" referredOperation="/1/String_Class/+">
<eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
<source xsi:type="ocl.ecore:OperationCallExp" referredOperation="/1/String_Class/+">
<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="pType" referredVariable="/0/generateTypeClass/pType">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Type"/>
</source>
<referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//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>
</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="pOperation" referredVariable="/0/generateTypeClass/@body.0/@body.8/@body.0/pOperation">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Operation"/>
</source>
<referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//NamedElement/name"/>
</argument>
</source>
<argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="_">
<eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
</argument>
</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="pConstraint" referredVariable="/0/generateTypeClass/@body.0/@body.8/@body.0/@body.0/pConstraint">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Constraint"/>
</source>
<referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Constraint/stereotype"/>
</argument>
</source>
<argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="_">
<eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
</argument>
</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="pConstraint" referredVariable="/0/generateTypeClass/@body.0/@body.8/@body.0/@body.0/pConstraint">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Constraint"/>
</source>
<referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//NamedElement/name"/>
</argument>
</body>
<body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=".INSTANCE;&#xA;&#x9;&#x9;try {&#xA;&#x9;&#x9;&#x9;final &lt;%Value%> result = codeGen.evaluate(evaluator, null, valueFactory.valueOf(self)"/>
<body xsi:type="mtl:ForBlock">
<body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=", valueFactory.valueOf("/>
<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/generateTypeClass/@body.0/@body.8/@body.0/@body.0/@body.0/@body.0/@body.0/@body.15/parameter">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Parameter"/>
</source>
<referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//NamedElement/name"/>
</body>
<body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=")"/>
<loopVariable name="parameter">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Parameter"/>
</loopVariable>
<iterSet xsi:type="ocl.ecore:PropertyCallExp" eType="/3/OrderedSet(Parameter)">
<source xsi:type="ocl.ecore:VariableExp" name="pOperation" referredVariable="/0/generateTypeClass/@body.0/@body.8/@body.0/pOperation">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Operation"/>
</source>
<referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Operation/ownedParameter"/>
</iterSet>
</body>
<body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=");&#xA;&#x9;&#x9;&#x9;return ("/>
<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/ocl/3.1.0/Pivot#//Type"/>
<source xsi:type="ocl.ecore:VariableExp" name="pOperation" referredVariable="/0/generateTypeClass/@body.0/@body.8/@body.0/pOperation">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Operation"/>
</source>
<referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//TypedElement/type"/>
</source>
<referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//NamedElement/name"/>
</body>
<body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=") result.asEcoreObject();&#xA;&#x9;&#x9;} catch (&lt;%InvalidValueException%> e) {&#xA;&#x9;&#x9;&#x9;throw new WrappedException(e);&#xA;&#x9;&#x9;}&#xA;&#x9;}&#xA;&#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:BooleanLiteralExp" booleanSymbol="false">
<eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
</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="pConstraint" referredVariable="/0/generateTypeClass/@body.0/@body.8/@body.0/@body.0/pConstraint">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Constraint"/>
</source>
<referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Constraint/stereotype"/>
</source>
<argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="body">
<eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
</argument>
<referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String_Class/="/>
</argument>
<referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean_Class/and"/>
</ifExpr>
</body>
<ifExpr xsi:type="ocl.ecore:OperationCallExp">
<eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
<source xsi:type="ocl.ecore:CollectionLiteralExp" eType="/3/Set(Variable)">
<eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL/Annotations">
<details key="IMPLICIT_SET_CONVERSION" value="true"/>
</eAnnotations>
<part xsi:type="ocl.ecore:CollectionItem">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Variable"/>
<item xsi:type="ocl.ecore:PropertyCallExp">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Variable"/>
<source xsi:type="ocl.ecore:VariableExp" name="expInOcl" referredVariable="/0/generateTypeClass/@body.0/@body.8/@body.0/@body.0/@body.0/expInOcl">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</source>
<referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl/contextVariable"/>
</item>
</part>
</source>
<referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Set(T)_Class/notEmpty"/>
</ifExpr>
</body>
<body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="&#x9;"/>
<body xsi:type="mtl:TemplateInvocation" definition="/0/generateOperationConstraint">
<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="expInOcl" referredVariable="/0/generateTypeClass/@body.0/@body.8/@body.0/@body.0/@body.0/expInOcl">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</argument>
<argument xsi:type="ocl.ecore:VariableExp" name="genPackage" referredVariable="/0/generateTypeClass/genPackage">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/GenModel#//GenPackage"/>
</argument>
<argument xsi:type="ocl.ecore:VariableExp" name="pPackage" referredVariable="/0/generateTypeClass/pPackage">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Package"/>
</argument>
<argument xsi:type="ocl.ecore:VariableExp" name="pType" referredVariable="/0/generateTypeClass/pType">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Type"/>
</argument>
<argument xsi:type="ocl.ecore:VariableExp" name="pOperation" referredVariable="/0/generateTypeClass/@body.0/@body.8/@body.0/pOperation">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Operation"/>
</argument>
<argument xsi:type="ocl.ecore:VariableExp" name="pConstraint" referredVariable="/0/generateTypeClass/@body.0/@body.8/@body.0/@body.0/pConstraint">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Constraint"/>
</argument>
</body>
<body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="&#xA;"/>
<letVariable name="expInOcl">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
<initExpression xsi:type="mtl:QueryInvocation">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
<definition href="../common/elementQueries.emtl#/0/getExpressionInOcl"/>
<argument xsi:type="ocl.ecore:PropertyCallExp">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ValueSpecification"/>
<source xsi:type="ocl.ecore:VariableExp" name="pConstraint" referredVariable="/0/generateTypeClass/@body.0/@body.8/@body.0/@body.0/pConstraint">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Constraint"/>
</source>
<referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Constraint/specification"/>
</argument>
<argument xsi:type="ocl.ecore:VariableExp" name="pOperation" referredVariable="/0/generateTypeClass/@body.0/@body.8/@body.0/pOperation">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Operation"/>
</argument>
</initExpression>
</letVariable>
</body>
<loopVariable name="pConstraint">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Constraint"/>
</loopVariable>
<iterSet xsi:type="ocl.ecore:PropertyCallExp" eType="/3/OrderedSet(Constraint)">
<source xsi:type="ocl.ecore:VariableExp" name="pOperation" referredVariable="/0/generateTypeClass/@body.0/@body.8/@body.0/pOperation">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Operation"/>
</source>
<referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//NamedElement/ownedRule"/>
</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>
<loopVariable name="pOperation">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Operation"/>
</loopVariable>
<iterSet xsi:type="ocl.ecore:IteratorExp" name="sortedBy" eType="/3/OrderedSet(Operation)">
<source xsi:type="mtl:QueryInvocation" eType="/3/OrderedSet(Operation)">
<definition href="../common/pivotQueries.emtl#/0/getOperations"/>
<argument xsi:type="ocl.ecore:OperationCallExp">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Class"/>
<source xsi:type="ocl.ecore:VariableExp" name="pType" referredVariable="/0/generateTypeClass/pType">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Type"/>
</source>
<argument xsi:type="ocl.ecore:TypeExp" eType="/46/Class">
<referredType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Class"/>
</argument>
<referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny_Class/oclAsType"/>
</argument>
</source>
<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="../common/elementQueries.emtl#/0/getMoniker"/>
<argument xsi:type="ocl.ecore:VariableExp" name="temp1" referredVariable="/0/generateTypeClass/@body.0/@body.8/@body.0/sortedBy/temp5">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Operation"/>
</argument>
</body>
<iterator xsi:type="ocl.ecore:Variable" name="temp5">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Operation"/>
</iterator>
</iterSet>
<before 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"/>
</before>
<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="mtl:ForBlock">
<body xsi:type="mtl:ForBlock">
<body xsi:type="mtl:LetBlock">
<body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="&#x9;"/>
<body xsi:type="mtl:TemplateInvocation" definition="/0/generatePropertyConstraint">
<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="expInOcl" referredVariable="/0/generateTypeClass/@body.0/@body.8/@body.1/@body.0/@body.0/expInOcl">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</argument>
<argument xsi:type="ocl.ecore:VariableExp" name="genPackage" referredVariable="/0/generateTypeClass/genPackage">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/GenModel#//GenPackage"/>
</argument>
<argument xsi:type="ocl.ecore:VariableExp" name="pPackage" referredVariable="/0/generateTypeClass/pPackage">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Package"/>
</argument>
<argument xsi:type="ocl.ecore:VariableExp" name="pType" referredVariable="/0/generateTypeClass/pType">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Type"/>
</argument>
<argument xsi:type="ocl.ecore:VariableExp" name="pProperty" referredVariable="/0/generateTypeClass/@body.0/@body.8/@body.1/pProperty">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Property"/>
</argument>
<argument xsi:type="ocl.ecore:VariableExp" name="pConstraint" referredVariable="/0/generateTypeClass/@body.0/@body.8/@body.1/@body.0/pConstraint">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Constraint"/>
</argument>
</body>
<body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="&#xA;"/>
<letVariable name="expInOcl">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
<initExpression xsi:type="mtl:QueryInvocation">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
<definition href="../common/elementQueries.emtl#/0/getExpressionInOcl"/>
<argument xsi:type="ocl.ecore:PropertyCallExp">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ValueSpecification"/>
<source xsi:type="ocl.ecore:VariableExp" name="pConstraint" referredVariable="/0/generateTypeClass/@body.0/@body.8/@body.1/@body.0/pConstraint">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Constraint"/>
</source>
<referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Constraint/specification"/>
</argument>
<argument xsi:type="ocl.ecore:VariableExp" name="pProperty" referredVariable="/0/generateTypeClass/@body.0/@body.8/@body.1/pProperty">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Property"/>
</argument>
</initExpression>
</letVariable>
</body>
<loopVariable name="pConstraint">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Constraint"/>
</loopVariable>
<iterSet xsi:type="ocl.ecore:PropertyCallExp" eType="/3/OrderedSet(Constraint)">
<source xsi:type="ocl.ecore:VariableExp" name="pProperty" referredVariable="/0/generateTypeClass/@body.0/@body.8/@body.1/pProperty">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Property"/>
</source>
<referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//NamedElement/ownedRule"/>
</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>
<loopVariable name="pProperty">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Property"/>
</loopVariable>
<iterSet xsi:type="ocl.ecore:IteratorExp" name="sortedBy" eType="/3/OrderedSet(Property)">
<source xsi:type="mtl:QueryInvocation" eType="/3/OrderedSet(Property)">
<definition href="../common/pivotQueries.emtl#/0/getProperties"/>
<argument xsi:type="ocl.ecore:OperationCallExp">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Class"/>
<source xsi:type="ocl.ecore:VariableExp" name="pType" referredVariable="/0/generateTypeClass/pType">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Type"/>
</source>
<argument xsi:type="ocl.ecore:TypeExp" eType="/46/Class">
<referredType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Class"/>
</argument>
<referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny_Class/oclAsType"/>
</argument>
</source>
<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="temp1" referredVariable="/0/generateTypeClass/@body.0/@body.8/@body.1/sortedBy/temp6">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Property"/>
</source>
<referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//NamedElement/name"/>
</body>
<iterator xsi:type="ocl.ecore:Variable" name="temp6">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Property"/>
</iterator>
</iterSet>
<before 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"/>
</before>
<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>
<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="pType" referredVariable="/0/generateTypeClass/pType">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Type"/>
</source>
<argument xsi:type="ocl.ecore:TypeExp" eType="/46/Class">
<referredType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Class"/>
</argument>
<referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny_Class/oclIsKindOf"/>
</ifExpr>
</body>
<body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="}&#xA;"/>
<letVariable name="className">
<eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
<initExpression xsi:type="ocl.ecore:OperationCallExp" referredOperation="/1/String_Class/+">
<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="pType" referredVariable="/0/generateTypeClass/pType">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Type"/>
</source>
<referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//NamedElement/name"/>
</source>
<argument 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="../common/genPackageQueries.emtl#/0/getBodiesClassSuffix"/>
<argument xsi:type="ocl.ecore:VariableExp" name="genPackage" referredVariable="/0/generateTypeClass/genPackage">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/GenModel#//GenPackage"/>
</argument>
</argument>
</initExpression>
</letVariable>
</body>
<parameter name="genPackage">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/GenModel#//GenPackage"/>
</parameter>
<parameter name="pPackage">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Package"/>
</parameter>
<parameter name="pType">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Type"/>
</parameter>
</ownedModuleElement>
<ownedModuleElement xsi:type="mtl:Template" name="generateInvariant" visibility="Public">
<body xsi:type="mtl:LetBlock">
<body xsi:type="mtl:LetBlock">
<body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="/** &#xA; * Implementation of the "/>
<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="pType" referredVariable="/0/generateInvariant/pType">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Type"/>
</source>
<referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//NamedElement/name"/>
</body>
<body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=" '"/>
<body xsi:type="ocl.ecore:PropertyCallExp">
<eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
<source xsi:type="ocl.ecore:VariableExp" name="pConstraint" referredVariable="/0/generateInvariant/pConstraint">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Constraint"/>
</source>
<referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//NamedElement/name"/>
</body>
<body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="' invariant.&#xA; */&#xA;public static class "/>
<body xsi:type="ocl.ecore:VariableExp" name="className" referredVariable="/0/generateInvariant/@body.0/className">
<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=" extends &lt;%Abstract"/>
<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="../common/genPackageQueries.emtl#/0/emitOperationArity"/>
<argument xsi:type="ocl.ecore:VariableExp" name="genPackage" referredVariable="/0/generateInvariant/genPackage">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/GenModel#//GenPackage"/>
</argument>
<argument xsi:type="ocl.ecore:VariableExp" name="arity" referredVariable="/0/generateInvariant/@body.0/@body.0/arity">
<eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Integer"/>
</argument>
</body>
<body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="%>&#xA;{&#xA;&#x9;public static "/>
<body xsi:type="ocl.ecore:VariableExp" name="className" referredVariable="/0/generateInvariant/@body.0/className">
<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=" INSTANCE = new "/>
<body xsi:type="ocl.ecore:VariableExp" name="className" referredVariable="/0/generateInvariant/@body.0/className">
<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;"/>
<body xsi:type="mtl:IfBlock">
<body xsi:type="mtl:LetBlock">
<body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="&#xA;&#x9;/*&#xA;&#x9;"/>
<body xsi:type="ocl.ecore:OperationCallExp" referredOperation="/1/String_Class/trim">
<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="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
<definition href="../common/pivotQueries.emtl#/0/prettyPrint.1"/>
<argument xsi:type="ocl.ecore:VariableExp" name="expInOcl" referredVariable="/0/generateInvariant/expInOcl">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</argument>
</source>
</body>
<body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="&#xA;&#x9;*/&#xA;&#x9;public &lt;%Value%> evaluate(&lt;%DomainEvaluator%> evaluator, &lt;%DomainType%> returnType, final &lt;%Value%> "/>
<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="../common/nameQueries.emtl#/0/defineSymbolName"/>
<argument xsi:type="ocl.ecore:PropertyCallExp">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Variable"/>
<source xsi:type="ocl.ecore:VariableExp" name="expInOcl" referredVariable="/0/generateInvariant/expInOcl">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</source>
<referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl/contextVariable"/>
</argument>
<argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="self">
<eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
</argument>
</body>
<body xsi:type="mtl:IfBlock">
<body xsi:type="mtl:ForBlock">
<body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=", final &lt;%Value%> "/>
<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="../common/nameQueries.emtl#/0/defineSymbolName"/>
<argument xsi:type="ocl.ecore:VariableExp" name="parameter" referredVariable="/0/generateInvariant/@body.0/@body.0/@body.13/@body.0/@body.4/@body.0/parameter">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Variable"/>
</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/generateInvariant/@body.0/@body.0/@body.13/@body.0/@body.4/@body.0/parameter">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Variable"/>
</source>
<referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//NamedElement/name"/>
</argument>
</body>
<loopVariable name="parameter">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Variable"/>
</loopVariable>
<iterSet xsi:type="ocl.ecore:PropertyCallExp" eType="/3/OrderedSet(Variable)">
<source xsi:type="ocl.ecore:VariableExp" name="expInOcl" referredVariable="/0/generateInvariant/expInOcl">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</source>
<referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl/parameterVariable"/>
</iterSet>
</body>
<ifExpr xsi:type="ocl.ecore:OperationCallExp">
<eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
<source xsi:type="ocl.ecore:PropertyCallExp" eType="/3/OrderedSet(Variable)">
<source xsi:type="ocl.ecore:VariableExp" name="expInOcl" referredVariable="/0/generateInvariant/expInOcl">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</source>
<referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl/parameterVariable"/>
</source>
<referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OrderedSet(T)_Class/notEmpty"/>
</ifExpr>
</body>
<body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=") throws &lt;%InvalidValueException%> {&#xA;&#x9;&#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="../common/constantTemplates.emtl#/0/emitConstants.1"/>
<argument xsi:type="ocl.ecore:VariableExp" name="expInOcl" referredVariable="/0/generateInvariant/expInOcl">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</argument>
<argument xsi:type="ocl.ecore:VariableExp" name="constants" referredVariable="/0/generateInvariant/@body.0/@body.0/@body.13/@body.0/constants">
<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;&#x9;&#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="../common/expressionTemplates.emtl#/0/emitExpression.4"/>
<argument xsi:type="ocl.ecore:PropertyCallExp">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//OclExpression"/>
<source xsi:type="ocl.ecore:VariableExp" name="expInOcl" referredVariable="/0/generateInvariant/expInOcl">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</source>
<referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl/bodyExpression"/>
</argument>
<argument xsi:type="ocl.ecore:VariableExp" name="pType" referredVariable="/0/generateInvariant/pType">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Type"/>
</argument>
<argument xsi:type="ocl.ecore:VariableExp" name="genPackage" referredVariable="/0/generateInvariant/genPackage">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/GenModel#//GenPackage"/>
</argument>
<argument xsi:type="ocl.ecore:VariableExp" name="expInOcl" referredVariable="/0/generateInvariant/expInOcl">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</argument>
</body>
<body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="&#xA;&#x9;&#x9;return "/>
<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="../common/symbolTemplates.emtl#/0/symbolName.1"/>
<argument xsi:type="ocl.ecore:PropertyCallExp">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//OclExpression"/>
<source xsi:type="ocl.ecore:VariableExp" name="expInOcl" referredVariable="/0/generateInvariant/expInOcl">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</source>
<referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl/bodyExpression"/>
</argument>
<argument xsi:type="ocl.ecore:VariableExp" name="expInOcl" referredVariable="/0/generateInvariant/expInOcl">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</argument>
</body>
<body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=";&#xA;&#x9;}&#xA;"/>
<body xsi:type="mtl:IfBlock">
<body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="&#x9;public static class Message extends &lt;%Abstract"/>
<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="../common/genPackageQueries.emtl#/0/emitOperationArity"/>
<argument xsi:type="ocl.ecore:VariableExp" name="genPackage" referredVariable="/0/generateInvariant/genPackage">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/GenModel#//GenPackage"/>
</argument>
<argument xsi:type="ocl.ecore:VariableExp" name="arity" referredVariable="/0/generateInvariant/@body.0/@body.0/arity">
<eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Integer"/>
</argument>
</body>
<body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="%>&#xA;&#x9;{&#xA;&#x9;&#x9;public static "/>
<body xsi:type="ocl.ecore:VariableExp" name="className" referredVariable="/0/generateInvariant/@body.0/className">
<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=" INSTANCE = new "/>
<body xsi:type="ocl.ecore:VariableExp" name="className" referredVariable="/0/generateInvariant/@body.0/className">
<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;&#x9;&#xA;&#x9;&#x9;public &lt;%Value%> evaluate(&lt;%DomainEvaluator%> evaluator, &lt;%DomainType%> returnType, final &lt;%Value%> "/>
<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="../common/nameQueries.emtl#/0/defineSymbolName"/>
<argument xsi:type="ocl.ecore:PropertyCallExp">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Variable"/>
<source xsi:type="ocl.ecore:VariableExp" name="expInOcl" referredVariable="/0/generateInvariant/expInOcl">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</source>
<referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl/contextVariable"/>
</argument>
<argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="self">
<eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
</argument>
</body>
<body xsi:type="mtl:IfBlock">
<body xsi:type="mtl:ForBlock">
<body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="&#x9;, &lt;%Value%> "/>
<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="../common/nameQueries.emtl#/0/defineSymbolName"/>
<argument xsi:type="ocl.ecore:VariableExp" name="parameter" referredVariable="/0/generateInvariant/@body.0/@body.0/@body.13/@body.0/@body.12/@body.8/@body.0/parameter">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Variable"/>
</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/generateInvariant/@body.0/@body.0/@body.13/@body.0/@body.12/@body.8/@body.0/parameter">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Variable"/>
</source>
<referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//NamedElement/name"/>
</argument>
</body>
<loopVariable name="parameter">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Variable"/>
</loopVariable>
<iterSet xsi:type="ocl.ecore:PropertyCallExp" eType="/3/OrderedSet(Variable)">
<source xsi:type="ocl.ecore:VariableExp" name="expInOcl" referredVariable="/0/generateInvariant/expInOcl">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</source>
<referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl/parameterVariable"/>
</iterSet>
</body>
<ifExpr xsi:type="ocl.ecore:OperationCallExp">
<eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
<source xsi:type="ocl.ecore:PropertyCallExp" eType="/3/OrderedSet(Variable)">
<source xsi:type="ocl.ecore:VariableExp" name="expInOcl" referredVariable="/0/generateInvariant/expInOcl">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</source>
<referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl/parameterVariable"/>
</source>
<referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OrderedSet(T)_Class/notEmpty"/>
</ifExpr>
</body>
<body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=") throws &lt;%InvalidValueException%> {&#xA;&#x9;&#x9;&#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="../common/expressionTemplates.emtl#/0/emitExpression.4"/>
<argument xsi:type="ocl.ecore:PropertyCallExp">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//OclExpression"/>
<source xsi:type="ocl.ecore:VariableExp" name="expInOcl" referredVariable="/0/generateInvariant/expInOcl">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</source>
<referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl/messageExpression"/>
</argument>
<argument xsi:type="ocl.ecore:VariableExp" name="pType" referredVariable="/0/generateInvariant/pType">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Type"/>
</argument>
<argument xsi:type="ocl.ecore:VariableExp" name="genPackage" referredVariable="/0/generateInvariant/genPackage">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/GenModel#//GenPackage"/>
</argument>
<argument xsi:type="ocl.ecore:VariableExp" name="expInOcl" referredVariable="/0/generateInvariant/expInOcl">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</argument>
</body>
<body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="&#xA;&#x9;&#x9;&#x9;return "/>
<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="../common/symbolTemplates.emtl#/0/symbolName.1"/>
<argument xsi:type="ocl.ecore:PropertyCallExp">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//OclExpression"/>
<source xsi:type="ocl.ecore:VariableExp" name="expInOcl" referredVariable="/0/generateInvariant/expInOcl">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</source>
<referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl/messageExpression"/>
</argument>
<argument xsi:type="ocl.ecore:VariableExp" name="expInOcl" referredVariable="/0/generateInvariant/expInOcl">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</argument>
</body>
<body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=";&#xA;&#x9;&#x9;}&#xA;&#x9;}&#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:CollectionLiteralExp" eType="/3/Set(OclExpression)">
<eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL/Annotations">
<details key="IMPLICIT_SET_CONVERSION" value="true"/>
</eAnnotations>
<part xsi:type="ocl.ecore:CollectionItem">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//OclExpression"/>
<item xsi:type="ocl.ecore:PropertyCallExp">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//OclExpression"/>
<source xsi:type="ocl.ecore:VariableExp" name="expInOcl" referredVariable="/0/generateInvariant/expInOcl">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</source>
<referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl/messageExpression"/>
</item>
</part>
</source>
<referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Set(T)_Class/notEmpty"/>
</ifExpr>
</body>
<letVariable name="constants">
<eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
<initExpression 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="../common/constantTemplates.emtl#/0/gatherConstants"/>
<argument xsi:type="ocl.ecore:PropertyCallExp">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//OclExpression"/>
<source xsi:type="ocl.ecore:VariableExp" name="expInOcl" referredVariable="/0/generateInvariant/expInOcl">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</source>
<referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl/bodyExpression"/>
</argument>
<argument xsi:type="ocl.ecore:VariableExp" name="genPackage" referredVariable="/0/generateInvariant/genPackage">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/GenModel#//GenPackage"/>
</argument>
<argument xsi:type="ocl.ecore:VariableExp" name="expInOcl" referredVariable="/0/generateInvariant/expInOcl">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</argument>
</initExpression>
</letVariable>
</body>
<ifExpr xsi:type="ocl.ecore:OperationCallExp">
<eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
<source xsi:type="ocl.ecore:CollectionLiteralExp" eType="/3/Set(Variable)">
<eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL/Annotations">
<details key="IMPLICIT_SET_CONVERSION" value="true"/>
</eAnnotations>
<part xsi:type="ocl.ecore:CollectionItem">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Variable"/>
<item xsi:type="ocl.ecore:PropertyCallExp">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Variable"/>
<source xsi:type="ocl.ecore:VariableExp" name="expInOcl" referredVariable="/0/generateInvariant/expInOcl">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</source>
<referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl/contextVariable"/>
</item>
</part>
</source>
<referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Set(T)_Class/notEmpty"/>
</ifExpr>
<else>
<body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="&#x9;"/>
<body xsi:type="mtl:TemplateInvocation" definition="/0/generateErrorMessage">
<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="expInOcl" referredVariable="/0/generateInvariant/expInOcl">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</argument>
</body>
<body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="&#xA;"/>
</else>
</body>
<body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="}"/>
<letVariable name="arity">
<eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Integer"/>
<initExpression xsi:type="ocl.ecore:OperationCallExp">
<eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Integer"/>
<source xsi:type="ocl.ecore:PropertyCallExp" eType="/3/OrderedSet(Variable)">
<source xsi:type="ocl.ecore:VariableExp" name="expInOcl" referredVariable="/0/generateInvariant/expInOcl">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</source>
<referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl/parameterVariable"/>
</source>
<referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OrderedSet(T)_Class/size"/>
</initExpression>
</letVariable>
</body>
<letVariable name="className">
<eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
<initExpression xsi:type="ocl.ecore:OperationCallExp" referredOperation="/1/String_Class/+">
<eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
<source xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="_invariant_">
<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: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="pConstraint" referredVariable="/0/generateInvariant/pConstraint">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Constraint"/>
</source>
<referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//NamedElement/name"/>
</argument>
</initExpression>
</letVariable>
</body>
<parameter name="expInOcl">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</parameter>
<parameter name="genPackage">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/GenModel#//GenPackage"/>
</parameter>
<parameter name="pPackage">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Package"/>
</parameter>
<parameter name="pType">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Type"/>
</parameter>
<parameter name="pConstraint">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Constraint"/>
</parameter>
</ownedModuleElement>
<ownedModuleElement xsi:type="mtl:Template" name="generateOperationConstraint" visibility="Public">
<body xsi:type="mtl:LetBlock">
<body xsi:type="mtl:LetBlock">
<body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="/** &#xA; * Implementation of the "/>
<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="pType" referredVariable="/0/generateOperationConstraint/pType">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Type"/>
</source>
<referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//NamedElement/name"/>
</body>
<body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="::"/>
<body xsi:type="ocl.ecore:PropertyCallExp">
<eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
<source xsi:type="ocl.ecore:VariableExp" name="pOperation" referredVariable="/0/generateOperationConstraint/pOperation">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Operation"/>
</source>
<referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//NamedElement/name"/>
</body>
<body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=" '"/>
<body xsi:type="ocl.ecore:PropertyCallExp">
<eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
<source xsi:type="ocl.ecore:VariableExp" name="pConstraint" referredVariable="/0/generateOperationConstraint/pConstraint">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Constraint"/>
</source>
<referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//NamedElement/name"/>
</body>
<body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="' &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="pConstraint" referredVariable="/0/generateOperationConstraint/pConstraint">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Constraint"/>
</source>
<referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Constraint/stereotype"/>
</body>
<body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=">.&#xA; */&#xA;public static class "/>
<body xsi:type="ocl.ecore:VariableExp" name="className" referredVariable="/0/generateOperationConstraint/@body.0/@body.0/className.3">
<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=" extends &lt;%Abstract"/>
<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="../common/genPackageQueries.emtl#/0/emitOperationArity"/>
<argument xsi:type="ocl.ecore:VariableExp" name="genPackage" referredVariable="/0/generateOperationConstraint/genPackage">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/GenModel#//GenPackage"/>
</argument>
<argument xsi:type="ocl.ecore:VariableExp" name="arity" referredVariable="/0/generateOperationConstraint/@body.0/arity">
<eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Integer"/>
</argument>
</body>
<body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="%>&#xA;{&#xA;&#x9;public static "/>
<body xsi:type="ocl.ecore:VariableExp" name="className" referredVariable="/0/generateOperationConstraint/@body.0/@body.0/className.3">
<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=" INSTANCE = new "/>
<body xsi:type="ocl.ecore:VariableExp" name="className" referredVariable="/0/generateOperationConstraint/@body.0/@body.0/className.3">
<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;&#xA;"/>
<body xsi:type="mtl:IfBlock">
<body xsi:type="mtl:LetBlock">
<body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="&#x9;/*&#xA;&#x9;"/>
<body xsi:type="ocl.ecore:OperationCallExp" referredOperation="/1/String_Class/trim">
<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="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
<definition href="../common/pivotQueries.emtl#/0/prettyPrint.1"/>
<argument xsi:type="ocl.ecore:VariableExp" name="expInOcl" referredVariable="/0/generateOperationConstraint/expInOcl">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</argument>
</source>
</body>
<body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="&#xA;&#x9;*/&#xA;&#x9;public &lt;%Value%> evaluate(&lt;%DomainEvaluator%> evaluator, &lt;%DomainType%> returnType, final &lt;%Value%> "/>
<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="../common/nameQueries.emtl#/0/defineSymbolName"/>
<argument xsi:type="ocl.ecore:PropertyCallExp">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Variable"/>
<source xsi:type="ocl.ecore:VariableExp" name="expInOcl" referredVariable="/0/generateOperationConstraint/expInOcl">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</source>
<referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl/contextVariable"/>
</argument>
<argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="self">
<eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
</argument>
</body>
<body xsi:type="mtl:IfBlock">
<body xsi:type="mtl:ForBlock">
<body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=", final &lt;%Value%> "/>
<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="../common/nameQueries.emtl#/0/defineSymbolName"/>
<argument xsi:type="ocl.ecore:VariableExp" name="parameter" referredVariable="/0/generateOperationConstraint/@body.0/@body.0/@body.17/@body.0/@body.4/@body.0/parameter">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Variable"/>
</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/generateOperationConstraint/@body.0/@body.0/@body.17/@body.0/@body.4/@body.0/parameter">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Variable"/>
</source>
<referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//NamedElement/name"/>
</argument>
</body>
<loopVariable name="parameter">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Variable"/>
</loopVariable>
<iterSet xsi:type="ocl.ecore:PropertyCallExp" eType="/3/OrderedSet(Variable)">
<source xsi:type="ocl.ecore:VariableExp" name="expInOcl" referredVariable="/0/generateOperationConstraint/expInOcl">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</source>
<referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl/parameterVariable"/>
</iterSet>
</body>
<ifExpr xsi:type="ocl.ecore:OperationCallExp">
<eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
<source xsi:type="ocl.ecore:PropertyCallExp" eType="/3/OrderedSet(Variable)">
<source xsi:type="ocl.ecore:VariableExp" name="expInOcl" referredVariable="/0/generateOperationConstraint/expInOcl">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</source>
<referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl/parameterVariable"/>
</source>
<referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OrderedSet(T)_Class/notEmpty"/>
</ifExpr>
</body>
<body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=") throws &lt;%InvalidValueException%> {&#xA;&#x9;&#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="../common/constantTemplates.emtl#/0/emitConstants.1"/>
<argument xsi:type="ocl.ecore:VariableExp" name="expInOcl" referredVariable="/0/generateOperationConstraint/expInOcl">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</argument>
<argument xsi:type="ocl.ecore:VariableExp" name="constants" referredVariable="/0/generateOperationConstraint/@body.0/@body.0/@body.17/@body.0/constants">
<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;&#x9;&#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="../common/expressionTemplates.emtl#/0/emitExpression.4"/>
<argument xsi:type="ocl.ecore:PropertyCallExp">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//OclExpression"/>
<source xsi:type="ocl.ecore:VariableExp" name="expInOcl" referredVariable="/0/generateOperationConstraint/expInOcl">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</source>
<referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl/bodyExpression"/>
</argument>
<argument xsi:type="ocl.ecore:VariableExp" name="pType" referredVariable="/0/generateOperationConstraint/pType">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Type"/>
</argument>
<argument xsi:type="ocl.ecore:VariableExp" name="genPackage" referredVariable="/0/generateOperationConstraint/genPackage">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/GenModel#//GenPackage"/>
</argument>
<argument xsi:type="ocl.ecore:VariableExp" name="expInOcl" referredVariable="/0/generateOperationConstraint/expInOcl">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</argument>
</body>
<body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="&#xA;&#x9;&#x9;return "/>
<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="../common/symbolTemplates.emtl#/0/symbolName.1"/>
<argument xsi:type="ocl.ecore:PropertyCallExp">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//OclExpression"/>
<source xsi:type="ocl.ecore:VariableExp" name="expInOcl" referredVariable="/0/generateOperationConstraint/expInOcl">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</source>
<referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl/bodyExpression"/>
</argument>
<argument xsi:type="ocl.ecore:VariableExp" name="expInOcl" referredVariable="/0/generateOperationConstraint/expInOcl">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</argument>
</body>
<body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=";&#xA;&#x9;}&#xA;"/>
<letVariable name="constants">
<eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
<initExpression 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="../common/constantTemplates.emtl#/0/gatherConstants"/>
<argument xsi:type="ocl.ecore:PropertyCallExp">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//OclExpression"/>
<source xsi:type="ocl.ecore:VariableExp" name="expInOcl" referredVariable="/0/generateOperationConstraint/expInOcl">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</source>
<referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl/bodyExpression"/>
</argument>
<argument xsi:type="ocl.ecore:VariableExp" name="genPackage" referredVariable="/0/generateOperationConstraint/genPackage">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/GenModel#//GenPackage"/>
</argument>
<argument xsi:type="ocl.ecore:VariableExp" name="expInOcl" referredVariable="/0/generateOperationConstraint/expInOcl">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</argument>
</initExpression>
</letVariable>
</body>
<ifExpr xsi:type="ocl.ecore:OperationCallExp">
<eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
<source xsi:type="ocl.ecore:CollectionLiteralExp" eType="/3/Set(Variable)">
<eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL/Annotations">
<details key="IMPLICIT_SET_CONVERSION" value="true"/>
</eAnnotations>
<part xsi:type="ocl.ecore:CollectionItem">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Variable"/>
<item xsi:type="ocl.ecore:PropertyCallExp">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Variable"/>
<source xsi:type="ocl.ecore:VariableExp" name="expInOcl" referredVariable="/0/generateOperationConstraint/expInOcl">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</source>
<referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl/contextVariable"/>
</item>
</part>
</source>
<referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Set(T)_Class/notEmpty"/>
</ifExpr>
<else>
<body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="&#x9;"/>
<body xsi:type="mtl:TemplateInvocation" definition="/0/generateErrorMessage">
<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="expInOcl" referredVariable="/0/generateOperationConstraint/expInOcl">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</argument>
</body>
<body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="&#xA;"/>
</else>
</body>
<body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="}"/>
<letVariable name="className">
<eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
<initExpression xsi:type="ocl.ecore:OperationCallExp" referredOperation="/1/String_Class/+">
<eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
<source xsi:type="ocl.ecore:OperationCallExp" referredOperation="/1/String_Class/+">
<eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
<source xsi:type="ocl.ecore:OperationCallExp" referredOperation="/1/String_Class/+">
<eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
<source xsi:type="ocl.ecore:OperationCallExp" referredOperation="/1/String_Class/+">
<eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
<source xsi:type="ocl.ecore:OperationCallExp" referredOperation="/1/String_Class/+">
<eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
<source 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"/>
</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="pOperation" referredVariable="/0/generateOperationConstraint/pOperation">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Operation"/>
</source>
<referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//NamedElement/name"/>
</argument>
</source>
<argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="_">
<eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
</argument>
</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="pConstraint" referredVariable="/0/generateOperationConstraint/pConstraint">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Constraint"/>
</source>
<referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Constraint/stereotype"/>
</argument>
</source>
<argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="_">
<eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
</argument>
</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="pConstraint" referredVariable="/0/generateOperationConstraint/pConstraint">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Constraint"/>
</source>
<referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//NamedElement/name"/>
</argument>
</initExpression>
</letVariable>
</body>
<letVariable name="arity">
<eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Integer"/>
<initExpression xsi:type="ocl.ecore:OperationCallExp">
<eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Integer"/>
<source xsi:type="ocl.ecore:PropertyCallExp" eType="/3/OrderedSet(Variable)">
<source xsi:type="ocl.ecore:VariableExp" name="expInOcl" referredVariable="/0/generateOperationConstraint/expInOcl">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</source>
<referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl/parameterVariable"/>
</source>
<referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OrderedSet(T)_Class/size"/>
</initExpression>
</letVariable>
</body>
<parameter name="expInOcl">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</parameter>
<parameter name="genPackage">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/GenModel#//GenPackage"/>
</parameter>
<parameter name="pPackage">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Package"/>
</parameter>
<parameter name="pType">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Type"/>
</parameter>
<parameter name="pOperation">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Operation"/>
</parameter>
<parameter name="pConstraint">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Constraint"/>
</parameter>
</ownedModuleElement>
<ownedModuleElement xsi:type="mtl:Template" name="generatePropertyConstraint" visibility="Public">
<body xsi:type="mtl:LetBlock">
<body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="/** &#xA; * Implementation of the "/>
<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="pType" referredVariable="/0/generatePropertyConstraint/pType">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Type"/>
</source>
<referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//NamedElement/name"/>
</body>
<body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="::"/>
<body xsi:type="ocl.ecore:PropertyCallExp">
<eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
<source xsi:type="ocl.ecore:VariableExp" name="pProperty" referredVariable="/0/generatePropertyConstraint/pProperty">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Property"/>
</source>
<referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//NamedElement/name"/>
</body>
<body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=" '"/>
<body xsi:type="ocl.ecore:PropertyCallExp">
<eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
<source xsi:type="ocl.ecore:VariableExp" name="pConstraint" referredVariable="/0/generatePropertyConstraint/pConstraint">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Constraint"/>
</source>
<referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//NamedElement/name"/>
</body>
<body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="' &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="pConstraint" referredVariable="/0/generatePropertyConstraint/pConstraint">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Constraint"/>
</source>
<referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Constraint/stereotype"/>
</body>
<body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=">.&#xA; */&#xA;public static class "/>
<body xsi:type="ocl.ecore:VariableExp" name="className" referredVariable="/0/generatePropertyConstraint/@body.0/className.3">
<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=" extends &lt;%AbstractProperty%>&#xA;{&#xA;&#x9;public static "/>
<body xsi:type="ocl.ecore:VariableExp" name="className" referredVariable="/0/generatePropertyConstraint/@body.0/className.3">
<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=" INSTANCE = new "/>
<body xsi:type="ocl.ecore:VariableExp" name="className" referredVariable="/0/generatePropertyConstraint/@body.0/className.3">
<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;&#xA;"/>
<body xsi:type="mtl:IfBlock">
<body xsi:type="mtl:LetBlock">
<body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="&#x9;/*&#xA;&#x9;"/>
<body xsi:type="ocl.ecore:OperationCallExp" referredOperation="/1/String_Class/trim">
<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="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
<definition href="../common/pivotQueries.emtl#/0/prettyPrint.1"/>
<argument xsi:type="ocl.ecore:VariableExp" name="expInOcl" referredVariable="/0/generatePropertyConstraint/expInOcl">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</argument>
</source>
</body>
<body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="&#xA;&#x9;*/&#xA;&#x9;public &lt;%Value%> evaluate(&lt;%DomainEvaluator%> evaluator, &lt;%DomainType%> returnType, final &lt;%Value%> "/>
<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="../common/nameQueries.emtl#/0/defineSymbolName"/>
<argument xsi:type="ocl.ecore:PropertyCallExp">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Variable"/>
<source xsi:type="ocl.ecore:VariableExp" name="expInOcl" referredVariable="/0/generatePropertyConstraint/expInOcl">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</source>
<referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl/contextVariable"/>
</argument>
<argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="self">
<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=", &lt;%DomainProperty%> property) throws &lt;%InvalidValueException%> {&#xA;&#x9;&#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="../common/constantTemplates.emtl#/0/emitConstants.1"/>
<argument xsi:type="ocl.ecore:VariableExp" name="expInOcl" referredVariable="/0/generatePropertyConstraint/expInOcl">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</argument>
<argument xsi:type="ocl.ecore:VariableExp" name="constants" referredVariable="/0/generatePropertyConstraint/@body.0/@body.15/@body.0/constants">
<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;&#x9;&#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="../common/expressionTemplates.emtl#/0/emitExpression.4"/>
<argument xsi:type="ocl.ecore:PropertyCallExp">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//OclExpression"/>
<source xsi:type="ocl.ecore:VariableExp" name="expInOcl" referredVariable="/0/generatePropertyConstraint/expInOcl">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</source>
<referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl/bodyExpression"/>
</argument>
<argument xsi:type="ocl.ecore:VariableExp" name="pType" referredVariable="/0/generatePropertyConstraint/pType">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Type"/>
</argument>
<argument xsi:type="ocl.ecore:VariableExp" name="genPackage" referredVariable="/0/generatePropertyConstraint/genPackage">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/GenModel#//GenPackage"/>
</argument>
<argument xsi:type="ocl.ecore:VariableExp" name="expInOcl" referredVariable="/0/generatePropertyConstraint/expInOcl">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</argument>
</body>
<body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="&#xA;&#x9;&#x9;return "/>
<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="../common/symbolTemplates.emtl#/0/symbolName.1"/>
<argument xsi:type="ocl.ecore:PropertyCallExp">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//OclExpression"/>
<source xsi:type="ocl.ecore:VariableExp" name="expInOcl" referredVariable="/0/generatePropertyConstraint/expInOcl">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</source>
<referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl/bodyExpression"/>
</argument>
<argument xsi:type="ocl.ecore:VariableExp" name="expInOcl" referredVariable="/0/generatePropertyConstraint/expInOcl">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</argument>
</body>
<body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=";&#xA;&#x9;}"/>
<letVariable name="constants">
<eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
<initExpression 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="../common/constantTemplates.emtl#/0/gatherConstants"/>
<argument xsi:type="ocl.ecore:PropertyCallExp">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//OclExpression"/>
<source xsi:type="ocl.ecore:VariableExp" name="expInOcl" referredVariable="/0/generatePropertyConstraint/expInOcl">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</source>
<referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl/bodyExpression"/>
</argument>
<argument xsi:type="ocl.ecore:VariableExp" name="genPackage" referredVariable="/0/generatePropertyConstraint/genPackage">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/GenModel#//GenPackage"/>
</argument>
<argument xsi:type="ocl.ecore:VariableExp" name="expInOcl" referredVariable="/0/generatePropertyConstraint/expInOcl">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</argument>
</initExpression>
</letVariable>
</body>
<ifExpr xsi:type="ocl.ecore:OperationCallExp">
<eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
<source xsi:type="ocl.ecore:CollectionLiteralExp" eType="/3/Set(Variable)">
<eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL/Annotations">
<details key="IMPLICIT_SET_CONVERSION" value="true"/>
</eAnnotations>
<part xsi:type="ocl.ecore:CollectionItem">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Variable"/>
<item xsi:type="ocl.ecore:PropertyCallExp">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Variable"/>
<source xsi:type="ocl.ecore:VariableExp" name="expInOcl" referredVariable="/0/generatePropertyConstraint/expInOcl">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</source>
<referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl/contextVariable"/>
</item>
</part>
</source>
<referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Set(T)_Class/notEmpty"/>
</ifExpr>
<else>
<body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="&#x9;"/>
<body xsi:type="mtl:TemplateInvocation" definition="/0/generateErrorMessage">
<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="expInOcl" referredVariable="/0/generatePropertyConstraint/expInOcl">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</argument>
</body>
<body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="&#xA;"/>
</else>
</body>
<body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="}"/>
<letVariable name="className">
<eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
<initExpression xsi:type="ocl.ecore:OperationCallExp" referredOperation="/1/String_Class/+">
<eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
<source xsi:type="ocl.ecore:OperationCallExp" referredOperation="/1/String_Class/+">
<eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
<source xsi:type="ocl.ecore:OperationCallExp" referredOperation="/1/String_Class/+">
<eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
<source xsi:type="ocl.ecore:OperationCallExp" referredOperation="/1/String_Class/+">
<eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
<source xsi:type="ocl.ecore:OperationCallExp" referredOperation="/1/String_Class/+">
<eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
<source 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"/>
</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="pProperty" referredVariable="/0/generatePropertyConstraint/pProperty">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Property"/>
</source>
<referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//NamedElement/name"/>
</argument>
</source>
<argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="_">
<eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
</argument>
</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="pConstraint" referredVariable="/0/generatePropertyConstraint/pConstraint">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Constraint"/>
</source>
<referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Constraint/stereotype"/>
</argument>
</source>
<argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="_">
<eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
</argument>
</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="pConstraint" referredVariable="/0/generatePropertyConstraint/pConstraint">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Constraint"/>
</source>
<referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//NamedElement/name"/>
</argument>
</initExpression>
</letVariable>
</body>
<parameter name="expInOcl">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</parameter>
<parameter name="genPackage">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/GenModel#//GenPackage"/>
</parameter>
<parameter name="pPackage">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Package"/>
</parameter>
<parameter name="pType">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Type"/>
</parameter>
<parameter name="pProperty">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Property"/>
</parameter>
<parameter name="pConstraint">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Constraint"/>
</parameter>
</ownedModuleElement>
<ownedModuleElement xsi:type="mtl:Template" name="generateErrorMessage" visibility="Public">
<body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="/*&#xA;"/>
<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:OperationCallExp">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//StringLiteralExp"/>
<source xsi:type="ocl.ecore:PropertyCallExp">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//OclExpression"/>
<source xsi:type="ocl.ecore:VariableExp" name="expInOcl" referredVariable="/0/generateErrorMessage/expInOcl">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</source>
<referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl/messageExpression"/>
</source>
<argument xsi:type="ocl.ecore:TypeExp" eType="/46/StringLiteralExp">
<referredType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//StringLiteralExp"/>
</argument>
<referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny_Class/oclAsType"/>
</source>
<referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//StringLiteralExp/stringSymbol"/>
</body>
<body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="&#xA;*/"/>
<parameter name="expInOcl">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</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>
<eOperations name="replaceAll">
<eAnnotations source="MTL non-standard"/>
<eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
<eParameters name="substring">
<eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
</eParameters>
<eParameters name="replacement">
<eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
</eParameters>
</eOperations>
<eOperations name="trim">
<eAnnotations source="MTL non-standard"/>
<eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
</eOperations>
<eOperations name="+">
<eAnnotations source="MTL non-standard"/>
<eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
<eParameters name="other">
<eType xsi:type="ocl.ecore:AnyType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny"/>
</eParameters>
</eOperations>
</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="generateBodies">
<eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
<contents xsi:type="ocl.ecore:Constraint"/>
</eAnnotations>
<eAnnotations source="MTL" references="/0/generateBodies"/>
<eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
<eParameters name="genModel">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/GenModel#//GenModel"/>
</eParameters>
</eOperations>
<eOperations name="generateType">
<eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
<contents xsi:type="ocl.ecore:Constraint"/>
</eAnnotations>
<eAnnotations source="MTL" references="/0/generateType"/>
<eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
<eParameters name="genPackage">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/GenModel#//GenPackage"/>
</eParameters>
<eParameters name="pPackage">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Package"/>
</eParameters>
<eParameters name="pType">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Type"/>
</eParameters>
</eOperations>
<eOperations name="generateTypeClass">
<eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
<contents xsi:type="ocl.ecore:Constraint"/>
</eAnnotations>
<eAnnotations source="MTL" references="/0/generateTypeClass"/>
<eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
<eParameters name="genPackage">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/GenModel#//GenPackage"/>
</eParameters>
<eParameters name="pPackage">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Package"/>
</eParameters>
<eParameters name="pType">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Type"/>
</eParameters>
</eOperations>
<eOperations name="generateInvariant">
<eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
<contents xsi:type="ocl.ecore:Constraint"/>
</eAnnotations>
<eAnnotations source="MTL" references="/0/generateInvariant"/>
<eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
<eParameters name="expInOcl">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</eParameters>
<eParameters name="genPackage">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/GenModel#//GenPackage"/>
</eParameters>
<eParameters name="pPackage">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Package"/>
</eParameters>
<eParameters name="pType">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Type"/>
</eParameters>
<eParameters name="pConstraint">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Constraint"/>
</eParameters>
</eOperations>
<eOperations name="generateOperationConstraint">
<eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
<contents xsi:type="ocl.ecore:Constraint"/>
</eAnnotations>
<eAnnotations source="MTL" references="/0/generateOperationConstraint"/>
<eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
<eParameters name="expInOcl">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</eParameters>
<eParameters name="genPackage">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/GenModel#//GenPackage"/>
</eParameters>
<eParameters name="pPackage">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Package"/>
</eParameters>
<eParameters name="pType">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Type"/>
</eParameters>
<eParameters name="pOperation">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Operation"/>
</eParameters>
<eParameters name="pConstraint">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Constraint"/>
</eParameters>
</eOperations>
<eOperations name="generatePropertyConstraint">
<eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
<contents xsi:type="ocl.ecore:Constraint"/>
</eAnnotations>
<eAnnotations source="MTL" references="/0/generatePropertyConstraint"/>
<eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
<eParameters name="expInOcl">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</eParameters>
<eParameters name="genPackage">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/GenModel#//GenPackage"/>
</eParameters>
<eParameters name="pPackage">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Package"/>
</eParameters>
<eParameters name="pType">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Type"/>
</eParameters>
<eParameters name="pProperty">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Property"/>
</eParameters>
<eParameters name="pConstraint">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Constraint"/>
</eParameters>
</eOperations>
<eOperations name="generateErrorMessage">
<eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
<contents xsi:type="ocl.ecore:Constraint"/>
</eAnnotations>
<eAnnotations source="MTL" references="/0/generateErrorMessage"/>
<eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
<eParameters name="expInOcl">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</eParameters>
</eOperations>
<eOperations name="gatherConstants">
<eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
<contents xsi:type="ocl.ecore:Constraint"/>
</eAnnotations>
<eAnnotations source="MTL">
<references href="../common/constantTemplates.emtl#/0/gatherConstants"/>
</eAnnotations>
<eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
<eParameters name="ast">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Element"/>
</eParameters>
<eParameters name="genPackage">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/GenModel#//GenPackage"/>
</eParameters>
<eParameters name="expInOcl">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</eParameters>
</eOperations>
<eOperations name="emitConstants">
<eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
<contents xsi:type="ocl.ecore:Constraint"/>
</eAnnotations>
<eAnnotations source="MTL">
<references href="../common/constantTemplates.emtl#/0/emitConstants.1"/>
</eAnnotations>
<eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
<eParameters name="dummy">
<eType xsi:type="ocl.ecore:AnyType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny"/>
</eParameters>
<eParameters name="constants">
<eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
</eParameters>
</eOperations>
<eOperations name="getExpressionInOcl">
<eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
<contents xsi:type="ocl.ecore:Constraint"/>
</eAnnotations>
<eAnnotations source="MTL">
<references href="../common/elementQueries.emtl#/0/getExpressionInOcl"/>
</eAnnotations>
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
<eParameters name="specification">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ValueSpecification"/>
</eParameters>
<eParameters name="contextElement">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//NamedElement"/>
</eParameters>
</eOperations>
<eOperations name="getMoniker">
<eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
<contents xsi:type="ocl.ecore:Constraint"/>
</eAnnotations>
<eAnnotations source="MTL">
<references href="../common/elementQueries.emtl#/0/getMoniker"/>
</eAnnotations>
<eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
<eParameters name="elem">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Element"/>
</eParameters>
</eOperations>
<eOperations name="knownImports">
<eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
<contents xsi:type="ocl.ecore:Constraint"/>
</eAnnotations>
<eAnnotations source="MTL">
<references href="../common/emitQueries.emtl#/0/knownImports"/>
</eAnnotations>
<eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
<eParameters name="dummy">
<eType xsi:type="ocl.ecore:AnyType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny"/>
</eParameters>
</eOperations>
<eOperations name="prefixImports">
<eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
<contents xsi:type="ocl.ecore:Constraint"/>
</eAnnotations>
<eAnnotations source="MTL">
<references href="../common/emitQueries.emtl#/0/prefixImports"/>
</eAnnotations>
<eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
<eParameters name="dummy">
<eType xsi:type="ocl.ecore:AnyType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny"/>
</eParameters>
<eParameters name="knownImports">
<eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
</eParameters>
<eParameters name="classText">
<eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
</eParameters>
</eOperations>
<eOperations name="emitExpression">
<eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
<contents xsi:type="ocl.ecore:Constraint"/>
</eAnnotations>
<eAnnotations source="MTL">
<references href="../common/expressionTemplates.emtl#/0/emitExpression.4"/>
</eAnnotations>
<eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
<eParameters name="ast">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Element"/>
</eParameters>
<eParameters name="importer">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//NamedElement"/>
</eParameters>
<eParameters name="genPackage">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/GenModel#//GenPackage"/>
</eParameters>
<eParameters name="expInOcl">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</eParameters>
</eOperations>
<eOperations name="getBodiesClassSuffix">
<eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
<contents xsi:type="ocl.ecore:Constraint"/>
</eAnnotations>
<eAnnotations source="MTL">
<references href="../common/genPackageQueries.emtl#/0/getBodiesClassSuffix"/>
</eAnnotations>
<eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
<eParameters name="genPackage">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/GenModel#//GenPackage"/>
</eParameters>
</eOperations>
<eOperations name="getBodiesPackageName">
<eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
<contents xsi:type="ocl.ecore:Constraint"/>
</eAnnotations>
<eAnnotations source="MTL">
<references href="../common/genPackageQueries.emtl#/0/getBodiesPackageName"/>
</eAnnotations>
<eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
<eParameters name="genPackage">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/GenModel#//GenPackage"/>
</eParameters>
</eOperations>
<eOperations name="getCopyright">
<eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
<contents xsi:type="ocl.ecore:Constraint"/>
</eAnnotations>
<eAnnotations source="MTL">
<references href="../common/genPackageQueries.emtl#/0/getCopyright"/>
</eAnnotations>
<eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
<eParameters name="genPackage">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/GenModel#//GenPackage"/>
</eParameters>
<eParameters name="indentation">
<eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
</eParameters>
</eOperations>
<eOperations name="getPivotPackage">
<eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
<contents xsi:type="ocl.ecore:Constraint"/>
</eAnnotations>
<eAnnotations source="MTL">
<references href="../common/genPackageQueries.emtl#/0/getPivotPackage"/>
</eAnnotations>
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Package"/>
<eParameters name="genPackage">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/GenModel#//GenPackage"/>
</eParameters>
</eOperations>
<eOperations name="getQualifiedBodiesPackageName">
<eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
<contents xsi:type="ocl.ecore:Constraint"/>
</eAnnotations>
<eAnnotations source="MTL">
<references href="../common/genPackageQueries.emtl#/0/getQualifiedBodiesPackageName"/>
</eAnnotations>
<eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
<eParameters name="genPackage">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/GenModel#//GenPackage"/>
</eParameters>
</eOperations>
<eOperations name="getQualifiedTablesClassName">
<eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
<contents xsi:type="ocl.ecore:Constraint"/>
</eAnnotations>
<eAnnotations source="MTL">
<references href="../common/genPackageQueries.emtl#/0/getQualifiedTablesClassName"/>
</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/ocl/3.1.0/Pivot#//Type"/>
</eParameters>
<eParameters name="genPackage">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/GenModel#//GenPackage"/>
</eParameters>
</eOperations>
<eOperations name="emitOperationArity">
<eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
<contents xsi:type="ocl.ecore:Constraint"/>
</eAnnotations>
<eAnnotations source="MTL">
<references href="../common/genPackageQueries.emtl#/0/emitOperationArity"/>
</eAnnotations>
<eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
<eParameters name="genPackage">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/GenModel#//GenPackage"/>
</eParameters>
<eParameters name="arity">
<eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Integer"/>
</eParameters>
</eOperations>
<eOperations name="defineSymbolName">
<eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
<contents xsi:type="ocl.ecore:Constraint"/>
</eAnnotations>
<eAnnotations source="MTL">
<references href="../common/nameQueries.emtl#/0/defineSymbolName"/>
</eAnnotations>
<eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
<eParameters name="elem">
<eType xsi:type="ocl.ecore:AnyType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny"/>
</eParameters>
<eParameters name="symbol">
<eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
</eParameters>
</eOperations>
<eOperations name="getOperations">
<eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
<contents xsi:type="ocl.ecore:Constraint"/>
</eAnnotations>
<eAnnotations source="MTL">
<references href="../common/pivotQueries.emtl#/0/getOperations"/>
</eAnnotations>
<eType xsi:type="ocl.ecore:OrderedSetType" href="../common/pivotQueries.emtl#/3/OrderedSet(Operation)"/>
<eParameters name="elem">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Type"/>
</eParameters>
</eOperations>
<eOperations name="getProperties">
<eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
<contents xsi:type="ocl.ecore:Constraint"/>
</eAnnotations>
<eAnnotations source="MTL">
<references href="../common/pivotQueries.emtl#/0/getProperties"/>
</eAnnotations>
<eType xsi:type="ocl.ecore:OrderedSetType" href="../common/pivotQueries.emtl#/3/OrderedSet(Property)"/>
<eParameters name="elem">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Type"/>
</eParameters>
</eOperations>
<eOperations name="prettyPrint">
<eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
<contents xsi:type="ocl.ecore:Constraint"/>
</eAnnotations>
<eAnnotations source="MTL">
<references href="../common/pivotQueries.emtl#/0/prettyPrint.1"/>
</eAnnotations>
<eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
<eParameters name="expInOcl">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ValueSpecification"/>
</eParameters>
</eOperations>
<eOperations name="symbolName">
<eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
<contents xsi:type="ocl.ecore:Constraint"/>
</eAnnotations>
<eAnnotations source="MTL">
<references href="../common/symbolTemplates.emtl#/0/symbolName.1"/>
</eAnnotations>
<eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
<eParameters name="ast">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Element"/>
</eParameters>
<eParameters name="expInOcl">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</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="GenModel_Class">
<eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
<references href="http://www.eclipse.org/emf/2002/GenModel#//GenModel"/>
</eAnnotations>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="GenPackage_Class">
<eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
<references href="http://www.eclipse.org/emf/2002/GenModel#//GenPackage"/>
</eAnnotations>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="ExpressionInOcl_Class">
<eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
<references href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</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/ocl/3.1.0/Pivot#//Element"/>
</eAnnotations>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="ConstructorExp_Class">
<eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
<references href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ConstructorExp"/>
</eAnnotations>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="ConstructorPart_Class">
<eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
<references href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ConstructorPart"/>
</eAnnotations>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="BagType_Class">
<eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
<references href="http://www.eclipse.org/ocl/3.1.0/Pivot#//BagType"/>
</eAnnotations>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="ClassifierType_Class">
<eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
<references href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ClassifierType"/>
</eAnnotations>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="CollectionItem_Class">
<eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
<references href="http://www.eclipse.org/ocl/3.1.0/Pivot#//CollectionItem"/>
</eAnnotations>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="CollectionLiteralExp_Class">
<eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
<references href="http://www.eclipse.org/ocl/3.1.0/Pivot#//CollectionLiteralExp"/>
</eAnnotations>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="CollectionLiteralPart_Class">
<eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
<references href="http://www.eclipse.org/ocl/3.1.0/Pivot#//CollectionLiteralPart"/>
</eAnnotations>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="CollectionRange_Class">
<eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
<references href="http://www.eclipse.org/ocl/3.1.0/Pivot#//CollectionRange"/>
</eAnnotations>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="OrderedSetType_Class">
<eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
<references href="http://www.eclipse.org/ocl/3.1.0/Pivot#//OrderedSetType"/>
</eAnnotations>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="SequenceType_Class">
<eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
<references href="http://www.eclipse.org/ocl/3.1.0/Pivot#//SequenceType"/>
</eAnnotations>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="SetType_Class">
<eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
<references href="http://www.eclipse.org/ocl/3.1.0/Pivot#//SetType"/>
</eAnnotations>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="TupleLiteralExp_Class">
<eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
<references href="http://www.eclipse.org/ocl/3.1.0/Pivot#//TupleLiteralExp"/>
</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/ocl/3.1.0/Pivot#//Type"/>
</eAnnotations>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="OclExpression_Class">
<eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
<references href="http://www.eclipse.org/ocl/3.1.0/Pivot#//OclExpression"/>
</eAnnotations>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="PrimitiveLiteralExp_Class">
<eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
<references href="http://www.eclipse.org/ocl/3.1.0/Pivot#//PrimitiveLiteralExp"/>
</eAnnotations>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="TupleLiteralPart_Class">
<eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
<references href="http://www.eclipse.org/ocl/3.1.0/Pivot#//TupleLiteralPart"/>
</eAnnotations>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="TypeExp_Class">
<eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
<references href="http://www.eclipse.org/ocl/3.1.0/Pivot#//TypeExp"/>
</eAnnotations>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="ValueSpecification_Class">
<eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
<references href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ValueSpecification"/>
</eAnnotations>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="IfExp_Class">
<eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
<references href="http://www.eclipse.org/ocl/3.1.0/Pivot#//IfExp"/>
</eAnnotations>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="IterateExp_Class">
<eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
<references href="http://www.eclipse.org/ocl/3.1.0/Pivot#//IterateExp"/>
</eAnnotations>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="IteratorExp_Class">
<eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
<references href="http://www.eclipse.org/ocl/3.1.0/Pivot#//IteratorExp"/>
</eAnnotations>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="LetExp_Class">
<eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
<references href="http://www.eclipse.org/ocl/3.1.0/Pivot#//LetExp"/>
</eAnnotations>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="LiteralExp_Class">
<eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
<references href="http://www.eclipse.org/ocl/3.1.0/Pivot#//LiteralExp"/>
</eAnnotations>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="OperationCallExp_Class">
<eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
<references href="http://www.eclipse.org/ocl/3.1.0/Pivot#//OperationCallExp"/>
</eAnnotations>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="PropertyCallExp_Class">
<eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
<references href="http://www.eclipse.org/ocl/3.1.0/Pivot#//PropertyCallExp"/>
</eAnnotations>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="VariableExp_Class">
<eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
<references href="http://www.eclipse.org/ocl/3.1.0/Pivot#//VariableExp"/>
</eAnnotations>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Package_Class">
<eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
<references href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Package"/>
</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/ocl/3.1.0/Pivot#//NamedElement"/>
</eAnnotations>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Class_Class">
<eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
<references href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Class"/>
</eAnnotations>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Set(Class)_Class">
<eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
<references href="../common/pivotQueries.emtl#/3/Set(Class)"/>
</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/ocl/3.1.0/Pivot#//Operation"/>
</eAnnotations>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Property_Class">
<eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
<references href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Property"/>
</eAnnotations>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Constraint_Class">
<eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
<references href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Constraint"/>
</eAnnotations>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="BooleanLiteralExp_Class">
<eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
<references href="http://www.eclipse.org/ocl/3.1.0/Pivot#//BooleanLiteralExp"/>
</eAnnotations>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="IntegerLiteralExp_Class">
<eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
<references href="http://www.eclipse.org/ocl/3.1.0/Pivot#//IntegerLiteralExp"/>
</eAnnotations>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="InvalidLiteralExp_Class">
<eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
<references href="http://www.eclipse.org/ocl/3.1.0/Pivot#//InvalidLiteralExp"/>
</eAnnotations>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="NullLiteralExp_Class">
<eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
<references href="http://www.eclipse.org/ocl/3.1.0/Pivot#//NullLiteralExp"/>
</eAnnotations>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="RealLiteralExp_Class">
<eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
<references href="http://www.eclipse.org/ocl/3.1.0/Pivot#//RealLiteralExp"/>
</eAnnotations>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="StringLiteralExp_Class">
<eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
<references href="http://www.eclipse.org/ocl/3.1.0/Pivot#//StringLiteralExp"/>
</eAnnotations>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="TupleType_Class">
<eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
<references href="http://www.eclipse.org/ocl/3.1.0/Pivot#//TupleType"/>
</eAnnotations>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Variable_Class">
<eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
<references href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Variable"/>
</eAnnotations>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="UnlimitedNaturalLiteralExp_Class">
<eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
<references href="http://www.eclipse.org/ocl/3.1.0/Pivot#//UnlimitedNaturalLiteralExp"/>
</eAnnotations>
</eClassifiers>
</ecore:EPackage>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/Ecore#//EObject"/>
</ocl.ecore:Variable>
<ecore:EPackage name="collections">
<eClassifiers xsi:type="ocl.ecore:SetType" name="Set(Class)" instanceClassName="java.util.Set">
<elementType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Class"/>
</eClassifiers>
<eClassifiers xsi:type="ocl.ecore:OrderedSetType" name="OrderedSet(GenPackage)" instanceClassName="java.util.LinkedHashSet">
<elementType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/GenModel#//GenPackage"/>
</eClassifiers>
<eClassifiers xsi:type="ocl.ecore:SetType" name="Set(Type)" instanceClassName="java.util.Set">
<elementType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Type"/>
</eClassifiers>
<eClassifiers xsi:type="ocl.ecore:OrderedSetType" name="OrderedSet(Constraint)" instanceClassName="java.util.LinkedHashSet">
<elementType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Constraint"/>
</eClassifiers>
<eClassifiers xsi:type="ocl.ecore:SetType" name="Set(Constraint)" instanceClassName="java.util.Set">
<elementType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Constraint"/>
</eClassifiers>
<eClassifiers xsi:type="ocl.ecore:OrderedSetType" name="OrderedSet(Operation)" instanceClassName="java.util.LinkedHashSet">
<elementType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Operation"/>
</eClassifiers>
<eClassifiers xsi:type="ocl.ecore:SequenceType" name="Sequence(Constraint)" instanceClassName="java.util.List">
<elementType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Constraint"/>
</eClassifiers>
<eClassifiers xsi:type="ocl.ecore:OrderedSetType" name="OrderedSet(Property)" instanceClassName="java.util.LinkedHashSet">
<elementType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Property"/>
</eClassifiers>
<eClassifiers xsi:type="ocl.ecore:SetType" name="Set(String)" instanceClassName="java.util.Set">
<elementType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
</eClassifiers>
<eClassifiers xsi:type="ocl.ecore:SetType" name="Set(Variable)" instanceClassName="java.util.Set">
<elementType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Variable"/>
</eClassifiers>
<eClassifiers xsi:type="ocl.ecore:OrderedSetType" name="OrderedSet(Parameter)" instanceClassName="java.util.LinkedHashSet">
<elementType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Parameter"/>
</eClassifiers>
<eClassifiers xsi:type="ocl.ecore:SetType" name="Set(Parameter)" instanceClassName="java.util.Set">
<elementType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Parameter"/>
</eClassifiers>
<eClassifiers xsi:type="ocl.ecore:OrderedSetType" name="OrderedSet(Variable)" instanceClassName="java.util.LinkedHashSet">
<elementType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Variable"/>
</eClassifiers>
<eClassifiers xsi:type="ocl.ecore:SetType" name="Set(OclExpression)" instanceClassName="java.util.Set">
<elementType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//OclExpression"/>
</eClassifiers>
</ecore:EPackage>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/GenModel#//GenModel"/>
</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/GenModel#//GenModel"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/GenModel#//GenModel"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/GenModel#//GenPackage"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/GenModel#//GenPackage"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/GenModel#//GenPackage"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Type"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Type"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/GenModel#//GenPackage"/>
</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/GenModel#//GenModel"/>
</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/GenModel#//GenPackage"/>
</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/GenModel#//GenPackage"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/GenModel#//GenPackage"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/GenModel#//GenPackage"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/GenModel#//GenPackage"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/GenModel#//GenPackage"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/GenModel#//GenPackage"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/GenModel#//GenPackage"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/GenModel#//GenPackage"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/GenModel#//GenPackage"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/GenModel#//GenPackage"/>
</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/GenModel#//GenPackage"/>
</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/GenModel#//GenPackage"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/GenModel#//GenPackage"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/GenModel#//GenPackage"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/GenModel#//GenPackage"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/GenModel#//GenPackage"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/GenModel#//GenPackage"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/GenModel#//GenPackage"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/GenModel#//GenPackage"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Constraint"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Constraint"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Constraint"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/GenModel#//GenPackage"/>
</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>
<ecore:EPackage name="types">
<eClassifiers xsi:type="ocl.ecore:TypeType" name="Class">
<referredType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Class"/>
</eClassifiers>
<eClassifiers xsi:type="ocl.ecore:TypeType" name="StringLiteralExp">
<referredType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//StringLiteralExp"/>
</eClassifiers>
</ecore:EPackage>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/GenModel#//GenPackage"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/GenModel#//GenPackage"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/GenModel#//GenPackage"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/GenModel#//GenPackage"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Operation"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Operation"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Operation"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Constraint"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Constraint"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Constraint"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Constraint"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Constraint"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Constraint"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Constraint"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Constraint"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Parameter"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Parameter"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Parameter"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Constraint"/>
</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/ocl/3.1.0/Pivot#//Constraint"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Constraint"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Constraint"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Constraint"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Parameter"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Parameter"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Constraint"/>
</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/ocl/3.1.0/Pivot#//Constraint"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Constraint"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//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/GenModel#//GenPackage"/>
</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/GenModel#//GenPackage"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/GenModel#//GenPackage"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/GenModel#//GenPackage"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Property"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Property"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Property"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Constraint"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Constraint"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Constraint"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Property"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="i">
<eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Integer"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/GenModel#//GenPackage"/>
</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/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</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/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Variable"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Variable"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</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/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Variable"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Variable"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</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/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</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/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</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/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Variable"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//Variable"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</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/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</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/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</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/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</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/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</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/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</ocl.ecore:Variable>
<ocl.ecore:Variable name="self">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/ocl/3.1.0/Pivot#//ExpressionInOcl"/>
</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/generateBodies">
<details key="start" value="1173"/>
<details key="end" value="1588"/>
<details key="line" value="27"/>
</eAnnotations>
<eAnnotations source="positions.1" references="/0/generateBodies/@body.0">
<details key="start" value="1245"/>
<details key="end" value="1576"/>
<details key="line" value="29"/>
</eAnnotations>
<eAnnotations source="positions.2" references="/0/generateBodies/@body.0/@body.0">
<details key="start" value="1300"/>
<details key="end" value="1569"/>
<details key="line" value="30"/>
</eAnnotations>
<eAnnotations source="positions.3" references="/0/generateBodies/@body.0/@body.0/@body.0">
<details key="start" value="1356"/>
<details key="end" value="1562"/>
<details key="line" value="31"/>
</eAnnotations>
<eAnnotations source="positions.4" references="/0/generateBodies/@body.0/@body.0/@body.0/@body.0">
<details key="start" value="1512"/>
<details key="end" value="1553"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.5" references="/0/generateBodies/@body.0/@body.0/@body.0/@body.0/genPackage">
<details key="start" value="1525"/>
<details key="end" value="1535"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.6" references="/0/generateBodies/@body.0/@body.0/@body.0/@body.0/pPackage">
<details key="start" value="1537"/>
<details key="end" value="1545"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.7" references="/0/generateBodies/@body.0/@body.0/@body.0/@body.0/pType">
<details key="start" value="1547"/>
<details key="end" value="1552"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.8" references="/0/generateBodies/@body.0/@body.0/@body.0/@body.1">
<details key="start" value="1555"/>
<details key="end" value="1556"/>
<details key="line" value="33"/>
</eAnnotations>
<eAnnotations source="positions.9" references="/0/generateBodies/@body.0/@body.0/@body.0/pType">
<details key="start" value="1362"/>
<details key="end" value="1374"/>
<details key="line" value="31"/>
</eAnnotations>
<eAnnotations source="positions.10" references="/0/generateBodies/@body.0/@body.0/@body.0/select">
<details key="start" value="1377"/>
<details key="end" value="1508"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.11" references="/0/generateBodies/@body.0/@body.0/@body.0/select/@source">
<details key="start" value="1377"/>
<details key="end" value="1395"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.12" references="/0/generateBodies/@body.0/@body.0/@body.0/select/@source/pPackage">
<details key="start" value="1377"/>
<details key="end" value="1385"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.13" references="/0/generateBodies/@body.0/@body.0/@body.0/select/@body">
<details key="start" value="1404"/>
<details key="end" value="1507"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.14" references="/0/generateBodies/@body.0/@body.0/@body.0/select/@body/@source">
<details key="start" value="1404"/>
<details key="end" value="1466"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.15" references="/0/generateBodies/@body.0/@body.0/@body.0/select/@body/@source/@source">
<details key="start" value="1404"/>
<details key="end" value="1425"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.16" references="/0/generateBodies/@body.0/@body.0/@body.0/select/@body/@source/@source/@source">
<details key="start" value="1404"/>
<details key="end" value="1413"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.17" references="/0/generateBodies/@body.0/@body.0/@body.0/select/@body/@source/@source/@source/temp1">
<details key="start" value="-1"/>
<details key="end" value="-1"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.18" references="/0/generateBodies/@body.0/@body.0/@body.0/select/@body/@source/@argument.0">
<details key="start" value="1429"/>
<details key="end" value="1466"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.19" references="/0/generateBodies/@body.0/@body.0/@body.0/select/@body/@source/@argument.0/collect">
<details key="start" value="1429"/>
<details key="end" value="1454"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.20" references="/0/generateBodies/@body.0/@body.0/@body.0/select/@body/@source/@argument.0/collect/@source">
<details key="start" value="1429"/>
<details key="end" value="1444"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.21" references="/0/generateBodies/@body.0/@body.0/@body.0/select/@body/@source/@argument.0/collect/@source/temp1">
<details key="start" value="-1"/>
<details key="end" value="-1"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.22" references="/0/generateBodies/@body.0/@body.0/@body.0/select/@body/@source/@argument.0/collect/@body">
<details key="start" value="1445"/>
<details key="end" value="1454"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.23" references="/0/generateBodies/@body.0/@body.0/@body.0/select/@body/@source/@argument.0/collect/@body/temp2">
<details key="start" value="-1"/>
<details key="end" value="-1"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.24" references="/0/generateBodies/@body.0/@body.0/@body.0/select/@body/@source/@argument.0/collect/temp2">
<details key="start" value="-1"/>
<details key="end" value="-1"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.25" references="/0/generateBodies/@body.0/@body.0/@body.0/select/@body/@argument.0">
<details key="start" value="1470"/>
<details key="end" value="1507"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.26" references="/0/generateBodies/@body.0/@body.0/@body.0/select/@body/@argument.0/collect">
<details key="start" value="1470"/>
<details key="end" value="1495"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.27" references="/0/generateBodies/@body.0/@body.0/@body.0/select/@body/@argument.0/collect/@source">
<details key="start" value="1470"/>
<details key="end" value="1485"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.28" references="/0/generateBodies/@body.0/@body.0/@body.0/select/@body/@argument.0/collect/@source/temp1">
<details key="start" value="-1"/>
<details key="end" value="-1"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.29" references="/0/generateBodies/@body.0/@body.0/@body.0/select/@body/@argument.0/collect/@body">
<details key="start" value="1486"/>
<details key="end" value="1495"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.30" references="/0/generateBodies/@body.0/@body.0/@body.0/select/@body/@argument.0/collect/@body/temp3">
<details key="start" value="-1"/>
<details key="end" value="-1"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.31" references="/0/generateBodies/@body.0/@body.0/@body.0/select/@body/@argument.0/collect/temp3">
<details key="start" value="-1"/>
<details key="end" value="-1"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.32" references="/0/generateBodies/@body.0/@body.0/@body.0/select/temp1">
<details key="start" value="-1"/>
<details key="end" value="-1"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.33" references="/0/generateBodies/@body.0/@body.0/pPackage">
<details key="start" value="1305"/>
<details key="end" value="1354"/>
<details key="line" value="30"/>
</eAnnotations>
<eAnnotations source="positions.34" references="/0/generateBodies/@body.0/@body.0/pPackage/@initExpression">
<details key="start" value="1327"/>
<details key="end" value="1355"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.35" references="/0/generateBodies/@body.0/@body.0/pPackage/@initExpression/genPackage">
<details key="start" value="1327"/>
<details key="end" value="1337"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.36" references="/0/generateBodies/@body.0/genPackage">
<details key="start" value="1251"/>
<details key="end" value="1274"/>
<details key="line" value="29"/>
</eAnnotations>
<eAnnotations source="positions.37" references="/0/generateBodies/@body.0/@iterSet">
<details key="start" value="1277"/>
<details key="end" value="1297"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.38" references="/0/generateBodies/@body.0/@iterSet/genModel">
<details key="start" value="1277"/>
<details key="end" value="1285"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.39" references="/0/generateBodies/genModel">
<details key="start" value="1205"/>
<details key="end" value="1224"/>
<details key="line" value="27"/>
</eAnnotations>
<eAnnotations source="positions.40" references="/0/generateType">
<details key="start" value="1590"/>
<details key="end" value="2582"/>
<details key="line" value="38"/>
</eAnnotations>
<eAnnotations source="positions.41" references="/0/generateType/@body.0">
<details key="start" value="1680"/>
<details key="end" value="2570"/>
<details key="line" value="39"/>
</eAnnotations>
<eAnnotations source="positions.42" references="/0/generateType/@body.0/@body.0">
<details key="start" value="1862"/>
<details key="end" value="2563"/>
<details key="line" value="40"/>
</eAnnotations>
<eAnnotations source="positions.43" references="/0/generateType/@body.0/@body.0/@body.0">
<details key="start" value="1932"/>
<details key="end" value="2556"/>
<details key="line" value="41"/>
</eAnnotations>
<eAnnotations source="positions.44" references="/0/generateType/@body.0/@body.0/@body.0/@body.0">
<details key="start" value="2006"/>
<details key="end" value="2549"/>
<details key="line" value="42"/>
</eAnnotations>
<eAnnotations source="positions.45" references="/0/generateType/@body.0/@body.0/@body.0/@body.0/@body.0">
<details key="start" value="2135"/>
<details key="end" value="2142"/>
<details key="line" value="43"/>
</eAnnotations>
<eAnnotations source="positions.46" references="/0/generateType/@body.0/@body.0/@body.0/@body.0/@body.1">
<details key="start" value="2143"/>
<details key="end" value="2173"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.47" references="/0/generateType/@body.0/@body.0/@body.0/@body.0/@body.1/genPackage">
<details key="start" value="2143"/>
<details key="end" value="2153"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.48" references="/0/generateType/@body.0/@body.0/@body.0/@body.0/@body.1/@argument.1">
<details key="start" value="2167"/>
<details key="end" value="2172"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.49" references="/0/generateType/@body.0/@body.0/@body.0/@body.0/@body.2">
<details key="start" value="2175"/>
<details key="end" value="2296"/>
<details key="line" value="45"/>
</eAnnotations>
<eAnnotations source="positions.50" references="/0/generateType/@body.0/@body.0/@body.0/@body.0/@body.3">
<details key="start" value="2297"/>
<details key="end" value="2310"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.51" references="/0/generateType/@body.0/@body.0/@body.0/@body.0/@body.3/pPackage">
<details key="start" value="2297"/>
<details key="end" value="2305"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.52" references="/0/generateType/@body.0/@body.0/@body.0/@body.0/@body.4">
<details key="start" value="2312"/>
<details key="end" value="2414"/>
<details key="line" value="48"/>
</eAnnotations>
<eAnnotations source="positions.53" references="/0/generateType/@body.0/@body.0/@body.0/@body.0/@body.5">
<details key="start" value="2415"/>
<details key="end" value="2457"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.54" references="/0/generateType/@body.0/@body.0/@body.0/@body.0/@body.5/genPackage">
<details key="start" value="2415"/>
<details key="end" value="2425"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.55" references="/0/generateType/@body.0/@body.0/@body.0/@body.0/@body.6">
<details key="start" value="2459"/>
<details key="end" value="2462"/>
<details key="line" value="52"/>
</eAnnotations>
<eAnnotations source="positions.56" references="/0/generateType/@body.0/@body.0/@body.0/@body.0/@body.7">
<details key="start" value="2463"/>
<details key="end" value="2539"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.57" references="/0/generateType/@body.0/@body.0/@body.0/@body.0/@body.7/self">
<details key="start" value="-1"/>
<details key="end" value="-1"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.58" references="/0/generateType/@body.0/@body.0/@body.0/@body.0/@body.7/@argument.1">
<details key="start" value="2477"/>
<details key="end" value="2491"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.59" references="/0/generateType/@body.0/@body.0/@body.0/@body.0/@body.7/@argument.1/self">
<details key="start" value="-1"/>
<details key="end" value="-1"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.60" references="/0/generateType/@body.0/@body.0/@body.0/@body.0/@body.7/@argument.2">
<details key="start" value="2493"/>
<details key="end" value="2538"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.61" references="/0/generateType/@body.0/@body.0/@body.0/@body.0/@body.7/@argument.2/genPackage">
<details key="start" value="2493"/>
<details key="end" value="2503"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.62" references="/0/generateType/@body.0/@body.0/@body.0/@body.0/@body.7/@argument.2/pPackage">
<details key="start" value="2522"/>
<details key="end" value="2530"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.63" references="/0/generateType/@body.0/@body.0/@body.0/@body.0/@body.7/@argument.2/pType">
<details key="start" value="2532"/>
<details key="end" value="2537"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.64" references="/0/generateType/@body.0/@body.0/@body.0/@body.0/@body.8">
<details key="start" value="2541"/>
<details key="end" value="2542"/>
<details key="line" value="55"/>
</eAnnotations>
<eAnnotations source="positions.65" references="/0/generateType/@body.0/@body.0/@body.0/@body.0/@fileUrl">
<details key="start" value="2013"/>
<details key="end" value="2116"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.66" references="/0/generateType/@body.0/@body.0/@body.0/@body.0/@fileUrl/@source">
<details key="start" value="2013"/>
<details key="end" value="2106"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.67" references="/0/generateType/@body.0/@body.0/@body.0/@body.0/@fileUrl/@source/@source">
<details key="start" value="2013"/>
<details key="end" value="2094"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.68" references="/0/generateType/@body.0/@body.0/@body.0/@body.0/@fileUrl/@source/@source/@source">
<details key="start" value="2013"/>
<details key="end" value="2088"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.69" references="/0/generateType/@body.0/@body.0/@body.0/@body.0/@fileUrl/@source/@source/@source/@source">
<details key="start" value="2013"/>
<details key="end" value="2052"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.70" references="/0/generateType/@body.0/@body.0/@body.0/@body.0/@fileUrl/@source/@source/@source/@source/@source">
<details key="start" value="2013"/>
<details key="end" value="2046"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.71" references="/0/generateType/@body.0/@body.0/@body.0/@body.0/@fileUrl/@source/@source/@source/@source/@source/packagePathPrefix">
<details key="start" value="2013"/>
<details key="end" value="2030"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.72" references="/0/generateType/@body.0/@body.0/@body.0/@body.0/@fileUrl/@source/@source/@source/@source/@source/@argument.0">
<details key="start" value="2033"/>
<details key="end" value="2046"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.73" references="/0/generateType/@body.0/@body.0/@body.0/@body.0/@fileUrl/@source/@source/@source/@source/@source/@argument.0/pPackage">
<details key="start" value="2033"/>
<details key="end" value="2041"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.74" references="/0/generateType/@body.0/@body.0/@body.0/@body.0/@fileUrl/@source/@source/@source/@source/@argument.0">
<details key="start" value="2049"/>
<details key="end" value="2052"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.75" references="/0/generateType/@body.0/@body.0/@body.0/@body.0/@fileUrl/@source/@source/@source/@argument.0">
<details key="start" value="2055"/>
<details key="end" value="2088"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.76" references="/0/generateType/@body.0/@body.0/@body.0/@body.0/@fileUrl/@source/@source/@source/@argument.0/genPackage">
<details key="start" value="2055"/>
<details key="end" value="2065"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.77" references="/0/generateType/@body.0/@body.0/@body.0/@body.0/@fileUrl/@source/@source/@argument.0">
<details key="start" value="2091"/>
<details key="end" value="2094"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.78" references="/0/generateType/@body.0/@body.0/@body.0/@body.0/@fileUrl/@source/className">
<details key="start" value="2097"/>
<details key="end" value="2106"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.79" references="/0/generateType/@body.0/@body.0/@body.0/@body.0/@fileUrl/@argument.0">
<details key="start" value="2109"/>
<details key="end" value="2116"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.80" references="/0/generateType/@body.0/@body.0/@body.0/@body.0/@charset">
<details key="start" value="2125"/>
<details key="end" value="2132"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.81" references="/0/generateType/@body.0/@body.0/@body.0/className">
<details key="start" value="1937"/>
<details key="end" value="2004"/>
<details key="line" value="41"/>
</eAnnotations>
<eAnnotations source="positions.82" references="/0/generateType/@body.0/@body.0/@body.0/className/@initExpression">
<details key="start" value="1959"/>
<details key="end" value="2005"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.83" references="/0/generateType/@body.0/@body.0/@body.0/className/@initExpression/@source">
<details key="start" value="1959"/>
<details key="end" value="1969"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.84" references="/0/generateType/@body.0/@body.0/@body.0/className/@initExpression/@source/pType">
<details key="start" value="1959"/>
<details key="end" value="1964"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.85" references="/0/generateType/@body.0/@body.0/@body.0/className/@initExpression/@argument.0">
<details key="start" value="1972"/>
<details key="end" value="2005"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.86" references="/0/generateType/@body.0/@body.0/@body.0/className/@initExpression/@argument.0/genPackage">
<details key="start" value="1972"/>
<details key="end" value="1982"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.87" references="/0/generateType/@body.0/@body.0/packagePrefix">
<details key="start" value="1867"/>
<details key="end" value="1930"/>
<details key="line" value="40"/>
</eAnnotations>
<eAnnotations source="positions.88" references="/0/generateType/@body.0/@body.0/packagePrefix/@initExpression">
<details key="start" value="1893"/>
<details key="end" value="1931"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.89" references="/0/generateType/@body.0/@body.0/packagePrefix/@initExpression/packagePathPrefix">
<details key="start" value="1893"/>
<details key="end" value="1910"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.90" references="/0/generateType/@body.0/@body.0/packagePrefix/@initExpression/@argument.0">
<details key="start" value="1922"/>
<details key="end" value="1925"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.91" references="/0/generateType/@body.0/@body.0/packagePrefix/@initExpression/@argument.1">
<details key="start" value="1927"/>
<details key="end" value="1930"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.92" references="/0/generateType/@body.0/packagePathPrefix">
<details key="start" value="1685"/>
<details key="end" value="1860"/>
<details key="line" value="39"/>
</eAnnotations>
<eAnnotations source="positions.93" references="/0/generateType/@body.0/packagePathPrefix/@initExpression">
<details key="start" value="1715"/>
<details key="end" value="1861"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.94" references="/0/generateType/@body.0/packagePathPrefix/@initExpression/@condition">
<details key="start" value="1718"/>
<details key="end" value="1790"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.95" references="/0/generateType/@body.0/packagePathPrefix/@initExpression/@condition/@source">
<details key="start" value="1718"/>
<details key="end" value="1752"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.96" references="/0/generateType/@body.0/packagePathPrefix/@initExpression/@condition/@source/@source">
<details key="start" value="-1"/>
<details key="end" value="-1"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.97" references="/0/generateType/@body.0/packagePathPrefix/@initExpression/@condition/@source/@source/@part.0/@item">
<details key="start" value="1718"/>
<details key="end" value="1740"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.98" references="/0/generateType/@body.0/packagePathPrefix/@initExpression/@condition/@source/@source/@part.0/@item/genPackage">
<details key="start" value="1718"/>
<details key="end" value="1728"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.99" references="/0/generateType/@body.0/packagePathPrefix/@initExpression/@condition/@argument.0">
<details key="start" value="1757"/>
<details key="end" value="1790"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.100" references="/0/generateType/@body.0/packagePathPrefix/@initExpression/@condition/@argument.0/@source">
<details key="start" value="1757"/>
<details key="end" value="1786"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.101" references="/0/generateType/@body.0/packagePathPrefix/@initExpression/@condition/@argument.0/@source/@source">
<details key="start" value="1757"/>
<details key="end" value="1779"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.102" references="/0/generateType/@body.0/packagePathPrefix/@initExpression/@condition/@argument.0/@source/@source/genPackage">
<details key="start" value="1757"/>
<details key="end" value="1767"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.103" references="/0/generateType/@body.0/packagePathPrefix/@initExpression/@condition/@argument.0/@argument.0">
<details key="start" value="1789"/>
<details key="end" value="1790"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.104" references="/0/generateType/@body.0/packagePathPrefix/@initExpression/@thenExpression">
<details key="start" value="1796"/>
<details key="end" value="1847"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.105" references="/0/generateType/@body.0/packagePathPrefix/@initExpression/@thenExpression/@source">
<details key="start" value="1796"/>
<details key="end" value="1841"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.106" references="/0/generateType/@body.0/packagePathPrefix/@initExpression/@thenExpression/@source/@source">
<details key="start" value="1796"/>
<details key="end" value="1818"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.107" references="/0/generateType/@body.0/packagePathPrefix/@initExpression/@thenExpression/@source/@source/genPackage">
<details key="start" value="1796"/>
<details key="end" value="1806"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.108" references="/0/generateType/@body.0/packagePathPrefix/@initExpression/@thenExpression/@source/@argument.0">
<details key="start" value="1830"/>
<details key="end" value="1835"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.109" references="/0/generateType/@body.0/packagePathPrefix/@initExpression/@thenExpression/@source/@argument.1">
<details key="start" value="1837"/>
<details key="end" value="1840"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.110" references="/0/generateType/@body.0/packagePathPrefix/@initExpression/@thenExpression/@argument.0">
<details key="start" value="1844"/>
<details key="end" value="1847"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.111" references="/0/generateType/@body.0/packagePathPrefix/@initExpression/@elseExpression">
<details key="start" value="1853"/>
<details key="end" value="1855"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.112" references="/0/generateType/genPackage">
<details key="start" value="1620"/>
<details key="end" value="1643"/>
<details key="line" value="38"/>
</eAnnotations>
<eAnnotations source="positions.113" references="/0/generateType/pPackage">
<details key="start" value="1645"/>
<details key="end" value="1663"/>
<details key="line" value="38"/>
</eAnnotations>
<eAnnotations source="positions.114" references="/0/generateType/pType">
<details key="start" value="1665"/>
<details key="end" value="1677"/>
<details key="line" value="38"/>
</eAnnotations>
<eAnnotations source="positions.115" references="/0/generateTypeClass">
<details key="start" value="2584"/>
<details key="end" value="5099"/>
<details key="line" value="61"/>
</eAnnotations>
<eAnnotations source="positions.116" references="/0/generateTypeClass/@body.0">
<details key="start" value="2679"/>
<details key="end" value="5087"/>
<details key="line" value="62"/>
</eAnnotations>
<eAnnotations source="positions.117" references="/0/generateTypeClass/@body.0/@body.0">
<details key="start" value="2753"/>
<details key="end" value="2760"/>
<details key="line" value="63"/>
</eAnnotations>
<eAnnotations source="positions.118" references="/0/generateTypeClass/@body.0/className">
<details key="start" value="2761"/>
<details key="end" value="2770"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.119" references="/0/generateTypeClass/@body.0/@body.2">
<details key="start" value="2772"/>
<details key="end" value="2828"/>
<details key="line" value="64"/>
</eAnnotations>
<eAnnotations source="positions.120" references="/0/generateTypeClass/@body.0/@body.3">
<details key="start" value="2829"/>
<details key="end" value="2839"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.121" references="/0/generateTypeClass/@body.0/@body.3/pType">
<details key="start" value="2829"/>
<details key="end" value="2834"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.122" references="/0/generateTypeClass/@body.0/@body.4">
<details key="start" value="2841"/>
<details key="end" value="2911"/>
<details key="line" value="64"/>
</eAnnotations>
<eAnnotations source="positions.123" references="/0/generateTypeClass/@body.0/className.1">
<details key="start" value="2912"/>
<details key="end" value="2921"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.124" references="/0/generateTypeClass/@body.0/@body.6">
<details key="start" value="2923"/>
<details key="end" value="2926"/>
<details key="line" value="68"/>
</eAnnotations>
<eAnnotations source="positions.125" references="/0/generateTypeClass/@body.0/@body.7">
<details key="start" value="2926"/>
<details key="end" value="3197"/>
<details key="line" value="69"/>
</eAnnotations>
<eAnnotations source="positions.126" references="/0/generateTypeClass/@body.0/@body.7/@body.0">
<details key="start" value="3024"/>
<details key="end" value="3190"/>
<details key="line" value="70"/>
</eAnnotations>
<eAnnotations source="positions.127" references="/0/generateTypeClass/@body.0/@body.7/@body.0/@body.0">
<details key="start" value="3111"/>
<details key="end" value="3112"/>
<details key="line" value="71"/>
</eAnnotations>
<eAnnotations source="positions.128" references="/0/generateTypeClass/@body.0/@body.7/@body.0/@body.1">
<details key="start" value="3113"/>
<details key="end" value="3181"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.129" references="/0/generateTypeClass/@body.0/@body.7/@body.0/@body.1/expInOcl">
<details key="start" value="3113"/>
<details key="end" value="3121"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.130" references="/0/generateTypeClass/@body.0/@body.7/@body.0/@body.1/genPackage">
<details key="start" value="3140"/>
<details key="end" value="3150"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.131" references="/0/generateTypeClass/@body.0/@body.7/@body.0/@body.1/pPackage">
<details key="start" value="3152"/>
<details key="end" value="3160"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.132" references="/0/generateTypeClass/@body.0/@body.7/@body.0/@body.1/pType">
<details key="start" value="3162"/>
<details key="end" value="3167"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.133" references="/0/generateTypeClass/@body.0/@body.7/@body.0/@body.1/pConstraint">
<details key="start" value="3169"/>
<details key="end" value="3180"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.134" references="/0/generateTypeClass/@body.0/@body.7/@body.0/@body.2">
<details key="start" value="3183"/>
<details key="end" value="3184"/>
<details key="line" value="72"/>
</eAnnotations>
<eAnnotations source="positions.135" references="/0/generateTypeClass/@body.0/@body.7/@body.0/expInOcl">
<details key="start" value="3029"/>
<details key="end" value="3109"/>
<details key="line" value="70"/>
</eAnnotations>
<eAnnotations source="positions.136" references="/0/generateTypeClass/@body.0/@body.7/@body.0/expInOcl/@initExpression">
<details key="start" value="3059"/>
<details key="end" value="3110"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.137" references="/0/generateTypeClass/@body.0/@body.7/@body.0/expInOcl/@initExpression/@argument.0">
<details key="start" value="3059"/>
<details key="end" value="3084"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.138" references="/0/generateTypeClass/@body.0/@body.7/@body.0/expInOcl/@initExpression/@argument.0/pConstraint">
<details key="start" value="3059"/>
<details key="end" value="3070"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.139" references="/0/generateTypeClass/@body.0/@body.7/@body.0/expInOcl/@initExpression/pType">
<details key="start" value="3104"/>
<details key="end" value="3109"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.140" references="/0/generateTypeClass/@body.0/@body.7/pConstraint">
<details key="start" value="2932"/>
<details key="end" value="2956"/>
<details key="line" value="69"/>
</eAnnotations>
<eAnnotations source="positions.141" references="/0/generateTypeClass/@body.0/@body.7/sortedBy">
<details key="start" value="2959"/>
<details key="end" value="2990"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.142" references="/0/generateTypeClass/@body.0/@body.7/sortedBy/@source">
<details key="start" value="2959"/>
<details key="end" value="2974"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.143" references="/0/generateTypeClass/@body.0/@body.7/sortedBy/@source/pType">
<details key="start" value="2959"/>
<details key="end" value="2964"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.144" references="/0/generateTypeClass/@body.0/@body.7/sortedBy/@body">
<details key="start" value="2985"/>
<details key="end" value="2989"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.145" references="/0/generateTypeClass/@body.0/@body.7/sortedBy/@body/temp1">
<details key="start" value="-1"/>
<details key="end" value="-1"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.146" references="/0/generateTypeClass/@body.0/@body.7/sortedBy/temp4">
<details key="start" value="-1"/>
<details key="end" value="-1"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.147" references="/0/generateTypeClass/@body.0/@body.7/@before">
<details key="start" value="3000"/>
<details key="end" value="3004"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.148" references="/0/generateTypeClass/@body.0/@body.7/@each">
<details key="start" value="3017"/>
<details key="end" value="3021"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.149" references="/0/generateTypeClass/@body.0/@body.8">
<details key="start" value="3198"/>
<details key="end" value="5078"/>
<details key="line" value="74"/>
</eAnnotations>
<eAnnotations source="positions.150" references="/0/generateTypeClass/@body.0/@body.8/@body.0">
<details key="start" value="3230"/>
<details key="end" value="4678"/>
<details key="line" value="75"/>
</eAnnotations>
<eAnnotations source="positions.151" references="/0/generateTypeClass/@body.0/@body.8/@body.0/@body.0">
<details key="start" value="3357"/>
<details key="end" value="4671"/>
<details key="line" value="76"/>
</eAnnotations>
<eAnnotations source="positions.152" references="/0/generateTypeClass/@body.0/@body.8/@body.0/@body.0/@body.0">
<details key="start" value="3430"/>
<details key="end" value="4664"/>
<details key="line" value="77"/>
</eAnnotations>
<eAnnotations source="positions.153" references="/0/generateTypeClass/@body.0/@body.8/@body.0/@body.0/@body.0/@body.0">
<details key="start" value="3522"/>
<details key="end" value="4562"/>
<details key="line" value="78"/>
</eAnnotations>
<eAnnotations source="positions.154" references="/0/generateTypeClass/@body.0/@body.8/@body.0/@body.0/@body.0/@body.0/@body.0">
<details key="start" value="3566"/>
<details key="end" value="4556"/>
<details key="line" value="79"/>
</eAnnotations>
<eAnnotations source="positions.155" references="/0/generateTypeClass/@body.0/@body.8/@body.0/@body.0/@body.0/@body.0/@body.0/@body.0">
<details key="start" value="3615"/>
<details key="end" value="3630"/>
<details key="line" value="80"/>
</eAnnotations>
<eAnnotations source="positions.156" references="/0/generateTypeClass/@body.0/@body.8/@body.0/@body.0/@body.0/@body.0/@body.0/@body.1">
<details key="start" value="3631"/>
<details key="end" value="3651"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.157" references="/0/generateTypeClass/@body.0/@body.8/@body.0/@body.0/@body.0/@body.0/@body.0/@body.1/@source">
<details key="start" value="3631"/>
<details key="end" value="3646"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.158" references="/0/generateTypeClass/@body.0/@body.8/@body.0/@body.0/@body.0/@body.0/@body.0/@body.1/@source/pOperation">
<details key="start" value="3631"/>
<details key="end" value="3641"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.159" references="/0/generateTypeClass/@body.0/@body.8/@body.0/@body.0/@body.0/@body.0/@body.0/@body.2">
<details key="start" value="3653"/>
<details key="end" value="3654"/>
<details key="line" value="80"/>
</eAnnotations>
<eAnnotations source="positions.160" references="/0/generateTypeClass/@body.0/@body.8/@body.0/@body.0/@body.0/@body.0/@body.0/@body.3">
<details key="start" value="3655"/>
<details key="end" value="3670"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.161" references="/0/generateTypeClass/@body.0/@body.8/@body.0/@body.0/@body.0/@body.0/@body.0/@body.3/pOperation">
<details key="start" value="3655"/>
<details key="end" value="3665"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.162" references="/0/generateTypeClass/@body.0/@body.8/@body.0/@body.0/@body.0/@body.0/@body.0/@body.4">
<details key="start" value="3672"/>
<details key="end" value="3673"/>
<details key="line" value="80"/>
</eAnnotations>
<eAnnotations source="positions.163" references="/0/generateTypeClass/@body.0/@body.8/@body.0/@body.0/@body.0/@body.0/@body.0/@body.5">
<details key="start" value="3674"/>
<details key="end" value="3684"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.164" references="/0/generateTypeClass/@body.0/@body.8/@body.0/@body.0/@body.0/@body.0/@body.0/@body.5/pType">
<details key="start" value="3674"/>
<details key="end" value="3679"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.165" references="/0/generateTypeClass/@body.0/@body.8/@body.0/@body.0/@body.0/@body.0/@body.0/@body.6">
<details key="start" value="3686"/>
<details key="end" value="3691"/>
<details key="line" value="80"/>
</eAnnotations>
<eAnnotations source="positions.166" references="/0/generateTypeClass/@body.0/@body.8/@body.0/@body.0/@body.0/@body.0/@body.0/@body.7">
<details key="start" value="3691"/>
<details key="end" value="3796"/>
<details key="line" value="80"/>
</eAnnotations>
<eAnnotations source="positions.167" references="/0/generateTypeClass/@body.0/@body.8/@body.0/@body.0/@body.0/@body.0/@body.0/@body.7/@body.0">
<details key="start" value="3748"/>
<details key="end" value="3750"/>
<details key="line" value="80"/>
</eAnnotations>
<eAnnotations source="positions.168" references="/0/generateTypeClass/@body.0/@body.8/@body.0/@body.0/@body.0/@body.0/@body.0/@body.7/@body.1">
<details key="start" value="3751"/>
<details key="end" value="3770"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.169" references="/0/generateTypeClass/@body.0/@body.8/@body.0/@body.0/@body.0/@body.0/@body.0/@body.7/@body.1/@source">
<details key="start" value="3751"/>
<details key="end" value="3765"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.170" references="/0/generateTypeClass/@body.0/@body.8/@body.0/@body.0/@body.0/@body.0/@body.0/@body.7/@body.1/@source/parameter">
<details key="start" value="3751"/>
<details key="end" value="3760"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.171" references="/0/generateTypeClass/@body.0/@body.8/@body.0/@body.0/@body.0/@body.0/@body.0/@body.7/@body.2">
<details key="start" value="3772"/>
<details key="end" value="3773"/>
<details key="line" value="80"/>
</eAnnotations>
<eAnnotations source="positions.172" references="/0/generateTypeClass/@body.0/@body.8/@body.0/@body.0/@body.0/@body.0/@body.0/@body.7/@body.3">
<details key="start" value="3774"/>
<details key="end" value="3788"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.173" references="/0/generateTypeClass/@body.0/@body.8/@body.0/@body.0/@body.0/@body.0/@body.0/@body.7/@body.3/parameter">
<details key="start" value="3774"/>
<details key="end" value="3783"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.174" references="/0/generateTypeClass/@body.0/@body.8/@body.0/@body.0/@body.0/@body.0/@body.0/@body.7/parameter">
<details key="start" value="3697"/>
<details key="end" value="3718"/>
<details key="line" value="80"/>
</eAnnotations>
<eAnnotations source="positions.175" references="/0/generateTypeClass/@body.0/@body.8/@body.0/@body.0/@body.0/@body.0/@body.0/@body.7/@iterSet">
<details key="start" value="3721"/>
<details key="end" value="3746"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.176" references="/0/generateTypeClass/@body.0/@body.8/@body.0/@body.0/@body.0/@body.0/@body.0/@body.7/@iterSet/pOperation">
<details key="start" value="3721"/>
<details key="end" value="3731"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.177" references="/0/generateTypeClass/@body.0/@body.8/@body.0/@body.0/@body.0/@body.0/@body.0/@body.8">
<details key="start" value="3796"/>
<details key="end" value="3883"/>
<details key="line" value="80"/>
</eAnnotations>
<eAnnotations source="positions.178" references="/0/generateTypeClass/@body.0/@body.8/@body.0/@body.0/@body.0/@body.0/@body.0/@body.9">
<details key="start" value="3884"/>
<details key="end" value="3929"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.179" references="/0/generateTypeClass/@body.0/@body.8/@body.0/@body.0/@body.0/@body.0/@body.0/@body.9/pType">
<details key="start" value="3884"/>
<details key="end" value="3889"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.180" references="/0/generateTypeClass/@body.0/@body.8/@body.0/@body.0/@body.0/@body.0/@body.0/@body.9/genPackage">
<details key="start" value="3918"/>
<details key="end" value="3928"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.181" references="/0/generateTypeClass/@body.0/@body.8/@body.0/@body.0/@body.0/@body.0/@body.0/@body.10">
<details key="start" value="3931"/>
<details key="end" value="4022"/>
<details key="line" value="81"/>
</eAnnotations>
<eAnnotations source="positions.182" references="/0/generateTypeClass/@body.0/@body.8/@body.0/@body.0/@body.0/@body.0/@body.0/@body.11">
<details key="start" value="4023"/>
<details key="end" value="4087"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.183" references="/0/generateTypeClass/@body.0/@body.8/@body.0/@body.0/@body.0/@body.0/@body.0/@body.11/genPackage">
<details key="start" value="4023"/>
<details key="end" value="4033"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.184" references="/0/generateTypeClass/@body.0/@body.8/@body.0/@body.0/@body.0/@body.0/@body.0/@body.11/@argument.1">
<details key="start" value="4053"/>
<details key="end" value="4086"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.185" references="/0/generateTypeClass/@body.0/@body.8/@body.0/@body.0/@body.0/@body.0/@body.0/@body.11/@argument.1/@source">
<details key="start" value="4053"/>
<details key="end" value="4078"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.186" references="/0/generateTypeClass/@body.0/@body.8/@body.0/@body.0/@body.0/@body.0/@body.0/@body.11/@argument.1/@source/pOperation">
<details key="start" value="4053"/>
<details key="end" value="4063"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.187" references="/0/generateTypeClass/@body.0/@body.8/@body.0/@body.0/@body.0/@body.0/@body.0/@body.12">
<details key="start" value="4089"/>
<details key="end" value="4100"/>
<details key="line" value="83"/>
</eAnnotations>
<eAnnotations source="positions.188" references="/0/generateTypeClass/@body.0/@body.8/@body.0/@body.0/@body.0/@body.0/@body.0/@body.13">
<details key="start" value="4101"/>
<details key="end" value="4191"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.189" references="/0/generateTypeClass/@body.0/@body.8/@body.0/@body.0/@body.0/@body.0/@body.0/@body.13/@source">
<details key="start" value="4101"/>
<details key="end" value="4172"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.190" references="/0/generateTypeClass/@body.0/@body.8/@body.0/@body.0/@body.0/@body.0/@body.0/@body.13/@source/@source">
<details key="start" value="4101"/>
<details key="end" value="4166"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.191" references="/0/generateTypeClass/@body.0/@body.8/@body.0/@body.0/@body.0/@body.0/@body.0/@body.13/@source/@source/@source">
<details key="start" value="4101"/>
<details key="end" value="4141"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.192" references="/0/generateTypeClass/@body.0/@body.8/@body.0/@body.0/@body.0/@body.0/@body.0/@body.13/@source/@source/@source/@source">
<details key="start" value="4101"/>
<details key="end" value="4135"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.193" references="/0/generateTypeClass/@body.0/@body.8/@body.0/@body.0/@body.0/@body.0/@body.0/@body.13/@source/@source/@source/@source/@source">
<details key="start" value="4101"/>
<details key="end" value="4117"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.194" references="/0/generateTypeClass/@body.0/@body.8/@body.0/@body.0/@body.0/@body.0/@body.0/@body.13/@source/@source/@source/@source/@source/@source">
<details key="start" value="4101"/>
<details key="end" value="4111"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.195" references="/0/generateTypeClass/@body.0/@body.8/@body.0/@body.0/@body.0/@body.0/@body.0/@body.13/@source/@source/@source/@source/@source/@source/pType">
<details key="start" value="4101"/>
<details key="end" value="4106"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.196" references="/0/generateTypeClass/@body.0/@body.8/@body.0/@body.0/@body.0/@body.0/@body.0/@body.13/@source/@source/@source/@source/@source/@argument.0">
<details key="start" value="4114"/>
<details key="end" value="4117"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.197" references="/0/generateTypeClass/@body.0/@body.8/@body.0/@body.0/@body.0/@body.0/@body.0/@body.13/@source/@source/@source/@source/@argument.0">
<details key="start" value="4120"/>
<details key="end" value="4135"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.198" references="/0/generateTypeClass/@body.0/@body.8/@body.0/@body.0/@body.0/@body.0/@body.0/@body.13/@source/@source/@source/@source/@argument.0/pOperation">
<details key="start" value="4120"/>
<details key="end" value="4130"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.199" references="/0/generateTypeClass/@body.0/@body.8/@body.0/@body.0/@body.0/@body.0/@body.0/@body.13/@source/@source/@source/@argument.0">
<details key="start" value="4138"/>
<details key="end" value="4141"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.200" references="/0/generateTypeClass/@body.0/@body.8/@body.0/@body.0/@body.0/@body.0/@body.0/@body.13/@source/@source/@argument.0">
<details key="start" value="4144"/>
<details key="end" value="4166"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.201" references="/0/generateTypeClass/@body.0/@body.8/@body.0/@body.0/@body.0/@body.0/@body.0/@body.13/@source/@source/@argument.0/pConstraint">
<details key="start" value="4144"/>
<details key="end" value="4155"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.202" references="/0/generateTypeClass/@body.0/@body.8/@body.0/@body.0/@body.0/@body.0/@body.0/@body.13/@source/@argument.0">
<details key="start" value="4169"/>
<details key="end" value="4172"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.203" references="/0/generateTypeClass/@body.0/@body.8/@body.0/@body.0/@body.0/@body.0/@body.0/@body.13/@argument.0">
<details key="start" value="4175"/>
<details key="end" value="4191"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.204" references="/0/generateTypeClass/@body.0/@body.8/@body.0/@body.0/@body.0/@body.0/@body.0/@body.13/@argument.0/pConstraint">
<details key="start" value="4175"/>
<details key="end" value="4186"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.205" references="/0/generateTypeClass/@body.0/@body.8/@body.0/@body.0/@body.0/@body.0/@body.0/@body.14">
<details key="start" value="4193"/>
<details key="end" value="4300"/>
<details key="line" value="83"/>
</eAnnotations>
<eAnnotations source="positions.206" references="/0/generateTypeClass/@body.0/@body.8/@body.0/@body.0/@body.0/@body.0/@body.0/@body.15">
<details key="start" value="4300"/>
<details key="end" value="4404"/>
<details key="line" value="85"/>
</eAnnotations>
<eAnnotations source="positions.207" references="/0/generateTypeClass/@body.0/@body.8/@body.0/@body.0/@body.0/@body.0/@body.0/@body.15/@body.0">
<details key="start" value="4357"/>
<details key="end" value="4380"/>
<details key="line" value="85"/>
</eAnnotations>
<eAnnotations source="positions.208" references="/0/generateTypeClass/@body.0/@body.8/@body.0/@body.0/@body.0/@body.0/@body.0/@body.15/@body.1">
<details key="start" value="4381"/>
<details key="end" value="4395"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.209" references="/0/generateTypeClass/@body.0/@body.8/@body.0/@body.0/@body.0/@body.0/@body.0/@body.15/@body.1/parameter">
<details key="start" value="4381"/>
<details key="end" value="4390"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.210" references="/0/generateTypeClass/@body.0/@body.8/@body.0/@body.0/@body.0/@body.0/@body.0/@body.15/@body.2">
<details key="start" value="4397"/>
<details key="end" value="4398"/>
<details key="line" value="85"/>
</eAnnotations>
<eAnnotations source="positions.211" references="/0/generateTypeClass/@body.0/@body.8/@body.0/@body.0/@body.0/@body.0/@body.0/@body.15/parameter">
<details key="start" value="4306"/>
<details key="end" value="4327"/>
<details key="line" value="85"/>
</eAnnotations>
<eAnnotations source="positions.212" references="/0/generateTypeClass/@body.0/@body.8/@body.0/@body.0/@body.0/@body.0/@body.0/@body.15/@iterSet">
<details key="start" value="4330"/>
<details key="end" value="4355"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.213" references="/0/generateTypeClass/@body.0/@body.8/@body.0/@body.0/@body.0/@body.0/@body.0/@body.15/@iterSet/pOperation">
<details key="start" value="4330"/>
<details key="end" value="4340"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.214" references="/0/generateTypeClass/@body.0/@body.8/@body.0/@body.0/@body.0/@body.0/@body.0/@body.16">
<details key="start" value="4404"/>
<details key="end" value="4418"/>
<details key="line" value="85"/>
</eAnnotations>
<eAnnotations source="positions.215" references="/0/generateTypeClass/@body.0/@body.8/@body.0/@body.0/@body.0/@body.0/@body.0/@body.17">
<details key="start" value="4419"/>
<details key="end" value="4439"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.216" references="/0/generateTypeClass/@body.0/@body.8/@body.0/@body.0/@body.0/@body.0/@body.0/@body.17/@source">
<details key="start" value="4419"/>
<details key="end" value="4434"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.217" references="/0/generateTypeClass/@body.0/@body.8/@body.0/@body.0/@body.0/@body.0/@body.0/@body.17/@source/pOperation">
<details key="start" value="4419"/>
<details key="end" value="4429"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.218" references="/0/generateTypeClass/@body.0/@body.8/@body.0/@body.0/@body.0/@body.0/@body.0/@body.18">
<details key="start" value="4441"/>
<details key="end" value="4551"/>
<details key="line" value="86"/>
</eAnnotations>
<eAnnotations source="positions.219" references="/0/generateTypeClass/@body.0/@body.8/@body.0/@body.0/@body.0/@body.0/@body.0/@ifExpr">
<details key="start" value="3570"/>
<details key="end" value="3613"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.220" references="/0/generateTypeClass/@body.0/@body.8/@body.0/@body.0/@body.0/@body.0/@body.0/@ifExpr/@source">
<details key="start" value="3571"/>
<details key="end" value="3576"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.221" references="/0/generateTypeClass/@body.0/@body.8/@body.0/@body.0/@body.0/@body.0/@body.0/@ifExpr/@argument.0">
<details key="start" value="3581"/>
<details key="end" value="3612"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.222" references="/0/generateTypeClass/@body.0/@body.8/@body.0/@body.0/@body.0/@body.0/@body.0/@ifExpr/@argument.0/@source">
<details key="start" value="3581"/>
<details key="end" value="3603"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.223" references="/0/generateTypeClass/@body.0/@body.8/@body.0/@body.0/@body.0/@body.0/@body.0/@ifExpr/@argument.0/@source/pConstraint">
<details key="start" value="3581"/>
<details key="end" value="3592"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.224" references="/0/generateTypeClass/@body.0/@body.8/@body.0/@body.0/@body.0/@body.0/@body.0/@ifExpr/@argument.0/@argument.0">
<details key="start" value="3606"/>
<details key="end" value="3612"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.225" references="/0/generateTypeClass/@body.0/@body.8/@body.0/@body.0/@body.0/@body.0/@ifExpr">
<details key="start" value="3526"/>
<details key="end" value="3564"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.226" references="/0/generateTypeClass/@body.0/@body.8/@body.0/@body.0/@body.0/@body.0/@ifExpr/@source">
<details key="start" value="-1"/>
<details key="end" value="-1"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.227" references="/0/generateTypeClass/@body.0/@body.8/@body.0/@body.0/@body.0/@body.0/@ifExpr/@source/@part.0/@item">
<details key="start" value="3527"/>
<details key="end" value="3551"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.228" references="/0/generateTypeClass/@body.0/@body.8/@body.0/@body.0/@body.0/@body.0/@ifExpr/@source/@part.0/@item/expInOcl">
<details key="start" value="3527"/>
<details key="end" value="3535"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.229" references="/0/generateTypeClass/@body.0/@body.8/@body.0/@body.0/@body.0/@body.1">
<details key="start" value="4563"/>
<details key="end" value="4564"/>
<details key="line" value="94"/>
</eAnnotations>
<eAnnotations source="positions.230" references="/0/generateTypeClass/@body.0/@body.8/@body.0/@body.0/@body.0/@body.2">
<details key="start" value="4565"/>
<details key="end" value="4655"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.231" references="/0/generateTypeClass/@body.0/@body.8/@body.0/@body.0/@body.0/@body.2/expInOcl">
<details key="start" value="4565"/>
<details key="end" value="4573"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.232" references="/0/generateTypeClass/@body.0/@body.8/@body.0/@body.0/@body.0/@body.2/genPackage">
<details key="start" value="4602"/>
<details key="end" value="4612"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.233" references="/0/generateTypeClass/@body.0/@body.8/@body.0/@body.0/@body.0/@body.2/pPackage">
<details key="start" value="4614"/>
<details key="end" value="4622"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.234" references="/0/generateTypeClass/@body.0/@body.8/@body.0/@body.0/@body.0/@body.2/pType">
<details key="start" value="4624"/>
<details key="end" value="4629"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.235" references="/0/generateTypeClass/@body.0/@body.8/@body.0/@body.0/@body.0/@body.2/pOperation">
<details key="start" value="4631"/>
<details key="end" value="4641"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.236" references="/0/generateTypeClass/@body.0/@body.8/@body.0/@body.0/@body.0/@body.2/pConstraint">
<details key="start" value="4643"/>
<details key="end" value="4654"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.237" references="/0/generateTypeClass/@body.0/@body.8/@body.0/@body.0/@body.0/@body.3">
<details key="start" value="4657"/>
<details key="end" value="4658"/>
<details key="line" value="95"/>
</eAnnotations>
<eAnnotations source="positions.238" references="/0/generateTypeClass/@body.0/@body.8/@body.0/@body.0/@body.0/expInOcl">
<details key="start" value="3435"/>
<details key="end" value="3520"/>
<details key="line" value="77"/>
</eAnnotations>
<eAnnotations source="positions.239" references="/0/generateTypeClass/@body.0/@body.8/@body.0/@body.0/@body.0/expInOcl/@initExpression">
<details key="start" value="3465"/>
<details key="end" value="3521"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.240" references="/0/generateTypeClass/@body.0/@body.8/@body.0/@body.0/@body.0/expInOcl/@initExpression/@argument.0">
<details key="start" value="3465"/>
<details key="end" value="3490"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.241" references="/0/generateTypeClass/@body.0/@body.8/@body.0/@body.0/@body.0/expInOcl/@initExpression/@argument.0/pConstraint">
<details key="start" value="3465"/>
<details key="end" value="3476"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.242" references="/0/generateTypeClass/@body.0/@body.8/@body.0/@body.0/@body.0/expInOcl/@initExpression/pOperation">
<details key="start" value="3510"/>
<details key="end" value="3520"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.243" references="/0/generateTypeClass/@body.0/@body.8/@body.0/@body.0/pConstraint">
<details key="start" value="3363"/>
<details key="end" value="3387"/>
<details key="line" value="76"/>
</eAnnotations>
<eAnnotations source="positions.244" references="/0/generateTypeClass/@body.0/@body.8/@body.0/@body.0/@iterSet">
<details key="start" value="3390"/>
<details key="end" value="3410"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.245" references="/0/generateTypeClass/@body.0/@body.8/@body.0/@body.0/@iterSet/pOperation">
<details key="start" value="3390"/>
<details key="end" value="3400"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.246" references="/0/generateTypeClass/@body.0/@body.8/@body.0/@body.0/@each">
<details key="start" value="3423"/>
<details key="end" value="3427"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.247" references="/0/generateTypeClass/@body.0/@body.8/@body.0/pOperation">
<details key="start" value="3236"/>
<details key="end" value="3258"/>
<details key="line" value="75"/>
</eAnnotations>
<eAnnotations source="positions.248" references="/0/generateTypeClass/@body.0/@body.8/@body.0/sortedBy">
<details key="start" value="3261"/>
<details key="end" value="3323"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.249" references="/0/generateTypeClass/@body.0/@body.8/@body.0/sortedBy/@source">
<details key="start" value="3261"/>
<details key="end" value="3299"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.250" references="/0/generateTypeClass/@body.0/@body.8/@body.0/sortedBy/@source/@argument.0">
<details key="start" value="3261"/>
<details key="end" value="3283"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.251" references="/0/generateTypeClass/@body.0/@body.8/@body.0/sortedBy/@source/@argument.0/pType">
<details key="start" value="3261"/>
<details key="end" value="3266"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.252" references="/0/generateTypeClass/@body.0/@body.8/@body.0/sortedBy/@source/@argument.0/@argument.0">
<details key="start" value="3277"/>
<details key="end" value="3282"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.253" references="/0/generateTypeClass/@body.0/@body.8/@body.0/sortedBy/@body">
<details key="start" value="3310"/>
<details key="end" value="3322"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.254" references="/0/generateTypeClass/@body.0/@body.8/@body.0/sortedBy/@body/temp1">
<details key="start" value="-1"/>
<details key="end" value="-1"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.255" references="/0/generateTypeClass/@body.0/@body.8/@body.0/sortedBy/temp5">
<details key="start" value="-1"/>
<details key="end" value="-1"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.256" references="/0/generateTypeClass/@body.0/@body.8/@body.0/@before">
<details key="start" value="3333"/>
<details key="end" value="3337"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.257" references="/0/generateTypeClass/@body.0/@body.8/@body.0/@each">
<details key="start" value="3350"/>
<details key="end" value="3354"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.258" references="/0/generateTypeClass/@body.0/@body.8/@body.1">
<details key="start" value="4679"/>
<details key="end" value="5072"/>
<details key="line" value="98"/>
</eAnnotations>
<eAnnotations source="positions.259" references="/0/generateTypeClass/@body.0/@body.8/@body.1/@body.0">
<details key="start" value="4796"/>
<details key="end" value="5065"/>
<details key="line" value="99"/>
</eAnnotations>
<eAnnotations source="positions.260" references="/0/generateTypeClass/@body.0/@body.8/@body.1/@body.0/@body.0">
<details key="start" value="4868"/>
<details key="end" value="5058"/>
<details key="line" value="100"/>
</eAnnotations>
<eAnnotations source="positions.261" references="/0/generateTypeClass/@body.0/@body.8/@body.1/@body.0/@body.0/@body.0">
<details key="start" value="4959"/>
<details key="end" value="4960"/>
<details key="line" value="101"/>
</eAnnotations>
<eAnnotations source="positions.262" references="/0/generateTypeClass/@body.0/@body.8/@body.1/@body.0/@body.0/@body.1">
<details key="start" value="4961"/>
<details key="end" value="5049"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.263" references="/0/generateTypeClass/@body.0/@body.8/@body.1/@body.0/@body.0/@body.1/expInOcl">
<details key="start" value="4961"/>
<details key="end" value="4969"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.264" references="/0/generateTypeClass/@body.0/@body.8/@body.1/@body.0/@body.0/@body.1/genPackage">
<details key="start" value="4997"/>
<details key="end" value="5007"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.265" references="/0/generateTypeClass/@body.0/@body.8/@body.1/@body.0/@body.0/@body.1/pPackage">
<details key="start" value="5009"/>
<details key="end" value="5017"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.266" references="/0/generateTypeClass/@body.0/@body.8/@body.1/@body.0/@body.0/@body.1/pType">
<details key="start" value="5019"/>
<details key="end" value="5024"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.267" references="/0/generateTypeClass/@body.0/@body.8/@body.1/@body.0/@body.0/@body.1/pProperty">
<details key="start" value="5026"/>
<details key="end" value="5035"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.268" references="/0/generateTypeClass/@body.0/@body.8/@body.1/@body.0/@body.0/@body.1/pConstraint">
<details key="start" value="5037"/>
<details key="end" value="5048"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.269" references="/0/generateTypeClass/@body.0/@body.8/@body.1/@body.0/@body.0/@body.2">
<details key="start" value="5051"/>
<details key="end" value="5052"/>
<details key="line" value="102"/>
</eAnnotations>
<eAnnotations source="positions.270" references="/0/generateTypeClass/@body.0/@body.8/@body.1/@body.0/@body.0/expInOcl">
<details key="start" value="4873"/>
<details key="end" value="4957"/>
<details key="line" value="100"/>
</eAnnotations>
<eAnnotations source="positions.271" references="/0/generateTypeClass/@body.0/@body.8/@body.1/@body.0/@body.0/expInOcl/@initExpression">
<details key="start" value="4903"/>
<details key="end" value="4958"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.272" references="/0/generateTypeClass/@body.0/@body.8/@body.1/@body.0/@body.0/expInOcl/@initExpression/@argument.0">
<details key="start" value="4903"/>
<details key="end" value="4928"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.273" references="/0/generateTypeClass/@body.0/@body.8/@body.1/@body.0/@body.0/expInOcl/@initExpression/@argument.0/pConstraint">
<details key="start" value="4903"/>
<details key="end" value="4914"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.274" references="/0/generateTypeClass/@body.0/@body.8/@body.1/@body.0/@body.0/expInOcl/@initExpression/pProperty">
<details key="start" value="4948"/>
<details key="end" value="4957"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.275" references="/0/generateTypeClass/@body.0/@body.8/@body.1/@body.0/pConstraint">
<details key="start" value="4802"/>
<details key="end" value="4826"/>
<details key="line" value="99"/>
</eAnnotations>
<eAnnotations source="positions.276" references="/0/generateTypeClass/@body.0/@body.8/@body.1/@body.0/@iterSet">
<details key="start" value="4829"/>
<details key="end" value="4848"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.277" references="/0/generateTypeClass/@body.0/@body.8/@body.1/@body.0/@iterSet/pProperty">
<details key="start" value="4829"/>
<details key="end" value="4838"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.278" references="/0/generateTypeClass/@body.0/@body.8/@body.1/@body.0/@each">
<details key="start" value="4861"/>
<details key="end" value="4865"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.279" references="/0/generateTypeClass/@body.0/@body.8/@body.1/pProperty">
<details key="start" value="4685"/>
<details key="end" value="4705"/>
<details key="line" value="98"/>
</eAnnotations>
<eAnnotations source="positions.280" references="/0/generateTypeClass/@body.0/@body.8/@body.1/sortedBy">
<details key="start" value="4708"/>
<details key="end" value="4762"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.281" references="/0/generateTypeClass/@body.0/@body.8/@body.1/sortedBy/@source">
<details key="start" value="4708"/>
<details key="end" value="4746"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.282" references="/0/generateTypeClass/@body.0/@body.8/@body.1/sortedBy/@source/@argument.0">
<details key="start" value="4708"/>
<details key="end" value="4730"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.283" references="/0/generateTypeClass/@body.0/@body.8/@body.1/sortedBy/@source/@argument.0/pType">
<details key="start" value="4708"/>
<details key="end" value="4713"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.284" references="/0/generateTypeClass/@body.0/@body.8/@body.1/sortedBy/@source/@argument.0/@argument.0">
<details key="start" value="4724"/>
<details key="end" value="4729"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.285" references="/0/generateTypeClass/@body.0/@body.8/@body.1/sortedBy/@body">
<details key="start" value="4757"/>
<details key="end" value="4761"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.286" references="/0/generateTypeClass/@body.0/@body.8/@body.1/sortedBy/@body/temp1">
<details key="start" value="-1"/>
<details key="end" value="-1"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.287" references="/0/generateTypeClass/@body.0/@body.8/@body.1/sortedBy/temp6">
<details key="start" value="-1"/>
<details key="end" value="-1"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.288" references="/0/generateTypeClass/@body.0/@body.8/@body.1/@before">
<details key="start" value="4772"/>
<details key="end" value="4776"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.289" references="/0/generateTypeClass/@body.0/@body.8/@body.1/@each">
<details key="start" value="4789"/>
<details key="end" value="4793"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.290" references="/0/generateTypeClass/@body.0/@body.8/@ifExpr">
<details key="start" value="3202"/>
<details key="end" value="3228"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.291" references="/0/generateTypeClass/@body.0/@body.8/@ifExpr/pType">
<details key="start" value="3203"/>
<details key="end" value="3208"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.292" references="/0/generateTypeClass/@body.0/@body.8/@ifExpr/@argument.0">
<details key="start" value="3221"/>
<details key="end" value="3226"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.293" references="/0/generateTypeClass/@body.0/@body.9">
<details key="start" value="5079"/>
<details key="end" value="5081"/>
<details key="line" value="106"/>
</eAnnotations>
<eAnnotations source="positions.294" references="/0/generateTypeClass/@body.0/className.2">
<details key="start" value="2684"/>
<details key="end" value="2751"/>
<details key="line" value="62"/>
</eAnnotations>
<eAnnotations source="positions.295" references="/0/generateTypeClass/@body.0/className.2/@initExpression">
<details key="start" value="2706"/>
<details key="end" value="2752"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.296" references="/0/generateTypeClass/@body.0/className.2/@initExpression/@source">
<details key="start" value="2706"/>
<details key="end" value="2716"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.297" references="/0/generateTypeClass/@body.0/className.2/@initExpression/@source/pType">
<details key="start" value="2706"/>
<details key="end" value="2711"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.298" references="/0/generateTypeClass/@body.0/className.2/@initExpression/@argument.0">
<details key="start" value="2719"/>
<details key="end" value="2752"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.299" references="/0/generateTypeClass/@body.0/className.2/@initExpression/@argument.0/genPackage">
<details key="start" value="2719"/>
<details key="end" value="2729"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.300" references="/0/generateTypeClass/genPackage">
<details key="start" value="2619"/>
<details key="end" value="2642"/>
<details key="line" value="61"/>
</eAnnotations>
<eAnnotations source="positions.301" references="/0/generateTypeClass/pPackage">
<details key="start" value="2644"/>
<details key="end" value="2662"/>
<details key="line" value="61"/>
</eAnnotations>
<eAnnotations source="positions.302" references="/0/generateTypeClass/pType">
<details key="start" value="2664"/>
<details key="end" value="2676"/>
<details key="line" value="61"/>
</eAnnotations>
<eAnnotations source="positions.303" references="/0/generateInvariant">
<details key="start" value="5101"/>
<details key="end" value="7116"/>
<details key="line" value="110"/>
</eAnnotations>
<eAnnotations source="positions.304" references="/0/generateInvariant/@body.0">
<details key="start" value="5250"/>
<details key="end" value="7105"/>
<details key="line" value="111"/>
</eAnnotations>
<eAnnotations source="positions.305" references="/0/generateInvariant/@body.0/@body.0">
<details key="start" value="5310"/>
<details key="end" value="7099"/>
<details key="line" value="112"/>
</eAnnotations>
<eAnnotations source="positions.306" references="/0/generateInvariant/@body.0/@body.0/@body.0">
<details key="start" value="5369"/>
<details key="end" value="5399"/>
<details key="line" value="113"/>
</eAnnotations>
<eAnnotations source="positions.307" references="/0/generateInvariant/@body.0/@body.0/@body.1">
<details key="start" value="5400"/>
<details key="end" value="5410"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.308" references="/0/generateInvariant/@body.0/@body.0/@body.1/pType">
<details key="start" value="5400"/>
<details key="end" value="5405"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.309" references="/0/generateInvariant/@body.0/@body.0/@body.2">
<details key="start" value="5412"/>
<details key="end" value="5414"/>
<details key="line" value="114"/>
</eAnnotations>
<eAnnotations source="positions.310" references="/0/generateInvariant/@body.0/@body.0/@body.3">
<details key="start" value="5415"/>
<details key="end" value="5431"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.311" references="/0/generateInvariant/@body.0/@body.0/@body.3/pConstraint">
<details key="start" value="5415"/>
<details key="end" value="5426"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.312" references="/0/generateInvariant/@body.0/@body.0/@body.4">
<details key="start" value="5433"/>
<details key="end" value="5470"/>
<details key="line" value="114"/>
</eAnnotations>
<eAnnotations source="positions.313" references="/0/generateInvariant/@body.0/@body.0/className">
<details key="start" value="5471"/>
<details key="end" value="5480"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.314" references="/0/generateInvariant/@body.0/@body.0/@body.6">
<details key="start" value="5482"/>
<details key="end" value="5501"/>
<details key="line" value="116"/>
</eAnnotations>
<eAnnotations source="positions.315" references="/0/generateInvariant/@body.0/@body.0/@body.7">
<details key="start" value="5502"/>
<details key="end" value="5538"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.316" references="/0/generateInvariant/@body.0/@body.0/@body.7/genPackage">
<details key="start" value="5502"/>
<details key="end" value="5512"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.317" references="/0/generateInvariant/@body.0/@body.0/@body.7/arity">
<details key="start" value="5532"/>
<details key="end" value="5537"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.318" references="/0/generateInvariant/@body.0/@body.0/@body.8">
<details key="start" value="5540"/>
<details key="end" value="5560"/>
<details key="line" value="116"/>
</eAnnotations>
<eAnnotations source="positions.319" references="/0/generateInvariant/@body.0/@body.0/className.1">
<details key="start" value="5561"/>
<details key="end" value="5570"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.320" references="/0/generateInvariant/@body.0/@body.0/@body.10">
<details key="start" value="5572"/>
<details key="end" value="5588"/>
<details key="line" value="118"/>
</eAnnotations>
<eAnnotations source="positions.321" references="/0/generateInvariant/@body.0/@body.0/className.2">
<details key="start" value="5589"/>
<details key="end" value="5598"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.322" references="/0/generateInvariant/@body.0/@body.0/@body.12">
<details key="start" value="5600"/>
<details key="end" value="5604"/>
<details key="line" value="118"/>
</eAnnotations>
<eAnnotations source="positions.323" references="/0/generateInvariant/@body.0/@body.0/@body.13">
<details key="start" value="5604"/>
<details key="end" value="7091"/>
<details key="line" value="119"/>
</eAnnotations>
<eAnnotations source="positions.324" references="/0/generateInvariant/@body.0/@body.0/@body.13/@body.0">
<details key="start" value="5648"/>
<details key="end" value="7043"/>
<details key="line" value="120"/>
</eAnnotations>
<eAnnotations source="positions.325" references="/0/generateInvariant/@body.0/@body.0/@body.13/@body.0/@body.0">
<details key="start" value="5737"/>
<details key="end" value="5743"/>
<details key="line" value="121"/>
</eAnnotations>
<eAnnotations source="positions.326" references="/0/generateInvariant/@body.0/@body.0/@body.13/@body.0/@body.1">
<details key="start" value="5744"/>
<details key="end" value="5773"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.327" references="/0/generateInvariant/@body.0/@body.0/@body.13/@body.0/@body.1/@source">
<details key="start" value="5744"/>
<details key="end" value="5766"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.328" references="/0/generateInvariant/@body.0/@body.0/@body.13/@body.0/@body.1/@source/expInOcl">
<details key="start" value="5744"/>
<details key="end" value="5752"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.329" references="/0/generateInvariant/@body.0/@body.0/@body.13/@body.0/@body.2">
<details key="start" value="5775"/>
<details key="end" value="5881"/>
<details key="line" value="124"/>
</eAnnotations>
<eAnnotations source="positions.330" references="/0/generateInvariant/@body.0/@body.0/@body.13/@body.0/@body.3">
<details key="start" value="5882"/>
<details key="end" value="5932"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.331" references="/0/generateInvariant/@body.0/@body.0/@body.13/@body.0/@body.3/@argument.0">
<details key="start" value="5899"/>
<details key="end" value="5923"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.332" references="/0/generateInvariant/@body.0/@body.0/@body.13/@body.0/@body.3/@argument.0/expInOcl">
<details key="start" value="5899"/>
<details key="end" value="5907"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.333" references="/0/generateInvariant/@body.0/@body.0/@body.13/@body.0/@body.3/@argument.1">
<details key="start" value="5925"/>
<details key="end" value="5931"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.334" references="/0/generateInvariant/@body.0/@body.0/@body.13/@body.0/@body.4">
<details key="start" value="5934"/>
<details key="end" value="6111"/>
<details key="line" value="125"/>
</eAnnotations>
<eAnnotations source="positions.335" references="/0/generateInvariant/@body.0/@body.0/@body.13/@body.0/@body.4/@body.0">
<details key="start" value="5978"/>
<details key="end" value="6106"/>
<details key="line" value="126"/>
</eAnnotations>
<eAnnotations source="positions.336" references="/0/generateInvariant/@body.0/@body.0/@body.13/@body.0/@body.4/@body.0/@body.0">
<details key="start" value="6036"/>
<details key="end" value="6054"/>
<details key="line" value="127"/>
</eAnnotations>
<eAnnotations source="positions.337" references="/0/generateInvariant/@body.0/@body.0/@body.13/@body.0/@body.4/@body.0/@body.1">
<details key="start" value="6055"/>
<details key="end" value="6098"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.338" references="/0/generateInvariant/@body.0/@body.0/@body.13/@body.0/@body.4/@body.0/@body.1/parameter">
<details key="start" value="6072"/>
<details key="end" value="6081"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.339" references="/0/generateInvariant/@body.0/@body.0/@body.13/@body.0/@body.4/@body.0/@body.1/@argument.1">
<details key="start" value="6083"/>
<details key="end" value="6097"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.340" references="/0/generateInvariant/@body.0/@body.0/@body.13/@body.0/@body.4/@body.0/@body.1/@argument.1/parameter">
<details key="start" value="6083"/>
<details key="end" value="6092"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.341" references="/0/generateInvariant/@body.0/@body.0/@body.13/@body.0/@body.4/@body.0/parameter">
<details key="start" value="5984"/>
<details key="end" value="6004"/>
<details key="line" value="126"/>
</eAnnotations>
<eAnnotations source="positions.342" references="/0/generateInvariant/@body.0/@body.0/@body.13/@body.0/@body.4/@body.0/@iterSet">
<details key="start" value="6007"/>
<details key="end" value="6033"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.343" references="/0/generateInvariant/@body.0/@body.0/@body.13/@body.0/@body.4/@body.0/@iterSet/expInOcl">
<details key="start" value="6007"/>
<details key="end" value="6015"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.344" references="/0/generateInvariant/@body.0/@body.0/@body.13/@body.0/@body.4/@ifExpr">
<details key="start" value="5938"/>
<details key="end" value="5976"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.345" references="/0/generateInvariant/@body.0/@body.0/@body.13/@body.0/@body.4/@ifExpr/@source">
<details key="start" value="5938"/>
<details key="end" value="5964"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.346" references="/0/generateInvariant/@body.0/@body.0/@body.13/@body.0/@body.4/@ifExpr/@source/expInOcl">
<details key="start" value="5938"/>
<details key="end" value="5946"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.347" references="/0/generateInvariant/@body.0/@body.0/@body.13/@body.0/@body.5">
<details key="start" value="6111"/>
<details key="end" value="6150"/>
<details key="line" value="127"/>
</eAnnotations>
<eAnnotations source="positions.348" references="/0/generateInvariant/@body.0/@body.0/@body.13/@body.0/@body.6">
<details key="start" value="6151"/>
<details key="end" value="6184"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.349" references="/0/generateInvariant/@body.0/@body.0/@body.13/@body.0/@body.6/expInOcl">
<details key="start" value="6151"/>
<details key="end" value="6159"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.350" references="/0/generateInvariant/@body.0/@body.0/@body.13/@body.0/@body.6/constants">
<details key="start" value="6174"/>
<details key="end" value="6183"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.351" references="/0/generateInvariant/@body.0/@body.0/@body.13/@body.0/@body.7">
<details key="start" value="6186"/>
<details key="end" value="6189"/>
<details key="line" value="129"/>
</eAnnotations>
<eAnnotations source="positions.352" references="/0/generateInvariant/@body.0/@body.0/@body.13/@body.0/@body.8">
<details key="start" value="6190"/>
<details key="end" value="6257"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.353" references="/0/generateInvariant/@body.0/@body.0/@body.13/@body.0/@body.8/@argument.0">
<details key="start" value="6190"/>
<details key="end" value="6213"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.354" references="/0/generateInvariant/@body.0/@body.0/@body.13/@body.0/@body.8/@argument.0/expInOcl">
<details key="start" value="6190"/>
<details key="end" value="6198"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.355" references="/0/generateInvariant/@body.0/@body.0/@body.13/@body.0/@body.8/pType">
<details key="start" value="6229"/>
<details key="end" value="6234"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.356" references="/0/generateInvariant/@body.0/@body.0/@body.13/@body.0/@body.8/genPackage">
<details key="start" value="6236"/>
<details key="end" value="6246"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.357" references="/0/generateInvariant/@body.0/@body.0/@body.13/@body.0/@body.8/expInOcl">
<details key="start" value="6248"/>
<details key="end" value="6256"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.358" references="/0/generateInvariant/@body.0/@body.0/@body.13/@body.0/@body.9">
<details key="start" value="6259"/>
<details key="end" value="6269"/>
<details key="line" value="130"/>
</eAnnotations>
<eAnnotations source="positions.359" references="/0/generateInvariant/@body.0/@body.0/@body.13/@body.0/@body.10">
<details key="start" value="6270"/>
<details key="end" value="6314"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.360" references="/0/generateInvariant/@body.0/@body.0/@body.13/@body.0/@body.10/@argument.0">
<details key="start" value="6270"/>
<details key="end" value="6293"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.361" references="/0/generateInvariant/@body.0/@body.0/@body.13/@body.0/@body.10/@argument.0/expInOcl">
<details key="start" value="6270"/>
<details key="end" value="6278"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.362" references="/0/generateInvariant/@body.0/@body.0/@body.13/@body.0/@body.10/expInOcl">
<details key="start" value="6305"/>
<details key="end" value="6313"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.363" references="/0/generateInvariant/@body.0/@body.0/@body.13/@body.0/@body.11">
<details key="start" value="6316"/>
<details key="end" value="6321"/>
<details key="line" value="130"/>
</eAnnotations>
<eAnnotations source="positions.364" references="/0/generateInvariant/@body.0/@body.0/@body.13/@body.0/@body.12">
<details key="start" value="6321"/>
<details key="end" value="7037"/>
<details key="line" value="132"/>
</eAnnotations>
<eAnnotations source="positions.365" references="/0/generateInvariant/@body.0/@body.0/@body.13/@body.0/@body.12/@body.0">
<details key="start" value="6367"/>
<details key="end" value="6414"/>
<details key="line" value="133"/>
</eAnnotations>
<eAnnotations source="positions.366" references="/0/generateInvariant/@body.0/@body.0/@body.13/@body.0/@body.12/@body.1">
<details key="start" value="6415"/>
<details key="end" value="6451"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.367" references="/0/generateInvariant/@body.0/@body.0/@body.13/@body.0/@body.12/@body.1/genPackage">
<details key="start" value="6415"/>
<details key="end" value="6425"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.368" references="/0/generateInvariant/@body.0/@body.0/@body.13/@body.0/@body.12/@body.1/arity">
<details key="start" value="6445"/>
<details key="end" value="6450"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.369" references="/0/generateInvariant/@body.0/@body.0/@body.13/@body.0/@body.12/@body.2">
<details key="start" value="6453"/>
<details key="end" value="6475"/>
<details key="line" value="133"/>
</eAnnotations>
<eAnnotations source="positions.370" references="/0/generateInvariant/@body.0/@body.0/@body.13/@body.0/@body.12/className">
<details key="start" value="6476"/>
<details key="end" value="6485"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.371" references="/0/generateInvariant/@body.0/@body.0/@body.13/@body.0/@body.12/@body.4">
<details key="start" value="6487"/>
<details key="end" value="6503"/>
<details key="line" value="135"/>
</eAnnotations>
<eAnnotations source="positions.372" references="/0/generateInvariant/@body.0/@body.0/@body.13/@body.0/@body.12/className.1">
<details key="start" value="6504"/>
<details key="end" value="6513"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.373" references="/0/generateInvariant/@body.0/@body.0/@body.13/@body.0/@body.12/@body.6">
<details key="start" value="6515"/>
<details key="end" value="6623"/>
<details key="line" value="135"/>
</eAnnotations>
<eAnnotations source="positions.374" references="/0/generateInvariant/@body.0/@body.0/@body.13/@body.0/@body.12/@body.7">
<details key="start" value="6624"/>
<details key="end" value="6674"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.375" references="/0/generateInvariant/@body.0/@body.0/@body.13/@body.0/@body.12/@body.7/@argument.0">
<details key="start" value="6641"/>
<details key="end" value="6665"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.376" references="/0/generateInvariant/@body.0/@body.0/@body.13/@body.0/@body.12/@body.7/@argument.0/expInOcl">
<details key="start" value="6641"/>
<details key="end" value="6649"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.377" references="/0/generateInvariant/@body.0/@body.0/@body.13/@body.0/@body.12/@body.7/@argument.1">
<details key="start" value="6667"/>
<details key="end" value="6673"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.378" references="/0/generateInvariant/@body.0/@body.0/@body.13/@body.0/@body.12/@body.8">
<details key="start" value="6676"/>
<details key="end" value="6849"/>
<details key="line" value="137"/>
</eAnnotations>
<eAnnotations source="positions.379" references="/0/generateInvariant/@body.0/@body.0/@body.13/@body.0/@body.12/@body.8/@body.0">
<details key="start" value="6721"/>
<details key="end" value="6844"/>
<details key="line" value="138"/>
</eAnnotations>
<eAnnotations source="positions.380" references="/0/generateInvariant/@body.0/@body.0/@body.13/@body.0/@body.12/@body.8/@body.0/@body.0">
<details key="start" value="6779"/>
<details key="end" value="6792"/>
<details key="line" value="139"/>
</eAnnotations>
<eAnnotations source="positions.381" references="/0/generateInvariant/@body.0/@body.0/@body.13/@body.0/@body.12/@body.8/@body.0/@body.1">
<details key="start" value="6793"/>
<details key="end" value="6836"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.382" references="/0/generateInvariant/@body.0/@body.0/@body.13/@body.0/@body.12/@body.8/@body.0/@body.1/parameter">
<details key="start" value="6810"/>
<details key="end" value="6819"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.383" references="/0/generateInvariant/@body.0/@body.0/@body.13/@body.0/@body.12/@body.8/@body.0/@body.1/@argument.1">
<details key="start" value="6821"/>
<details key="end" value="6835"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.384" references="/0/generateInvariant/@body.0/@body.0/@body.13/@body.0/@body.12/@body.8/@body.0/@body.1/@argument.1/parameter">
<details key="start" value="6821"/>
<details key="end" value="6830"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.385" references="/0/generateInvariant/@body.0/@body.0/@body.13/@body.0/@body.12/@body.8/@body.0/parameter">
<details key="start" value="6727"/>
<details key="end" value="6747"/>
<details key="line" value="138"/>
</eAnnotations>
<eAnnotations source="positions.386" references="/0/generateInvariant/@body.0/@body.0/@body.13/@body.0/@body.12/@body.8/@body.0/@iterSet">
<details key="start" value="6750"/>
<details key="end" value="6776"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.387" references="/0/generateInvariant/@body.0/@body.0/@body.13/@body.0/@body.12/@body.8/@body.0/@iterSet/expInOcl">
<details key="start" value="6750"/>
<details key="end" value="6758"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.388" references="/0/generateInvariant/@body.0/@body.0/@body.13/@body.0/@body.12/@body.8/@ifExpr">
<details key="start" value="6680"/>
<details key="end" value="6718"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.389" references="/0/generateInvariant/@body.0/@body.0/@body.13/@body.0/@body.12/@body.8/@ifExpr/@source">
<details key="start" value="6680"/>
<details key="end" value="6706"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.390" references="/0/generateInvariant/@body.0/@body.0/@body.13/@body.0/@body.12/@body.8/@ifExpr/@source/expInOcl">
<details key="start" value="6680"/>
<details key="end" value="6688"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.391" references="/0/generateInvariant/@body.0/@body.0/@body.13/@body.0/@body.12/@body.9">
<details key="start" value="6849"/>
<details key="end" value="6889"/>
<details key="line" value="139"/>
</eAnnotations>
<eAnnotations source="positions.392" references="/0/generateInvariant/@body.0/@body.0/@body.13/@body.0/@body.12/@body.10">
<details key="start" value="6890"/>
<details key="end" value="6960"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.393" references="/0/generateInvariant/@body.0/@body.0/@body.13/@body.0/@body.12/@body.10/@argument.0">
<details key="start" value="6890"/>
<details key="end" value="6916"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.394" references="/0/generateInvariant/@body.0/@body.0/@body.13/@body.0/@body.12/@body.10/@argument.0/expInOcl">
<details key="start" value="6890"/>
<details key="end" value="6898"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.395" references="/0/generateInvariant/@body.0/@body.0/@body.13/@body.0/@body.12/@body.10/pType">
<details key="start" value="6932"/>
<details key="end" value="6937"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.396" references="/0/generateInvariant/@body.0/@body.0/@body.13/@body.0/@body.12/@body.10/genPackage">
<details key="start" value="6939"/>
<details key="end" value="6949"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.397" references="/0/generateInvariant/@body.0/@body.0/@body.13/@body.0/@body.12/@body.10/expInOcl">
<details key="start" value="6951"/>
<details key="end" value="6959"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.398" references="/0/generateInvariant/@body.0/@body.0/@body.13/@body.0/@body.12/@body.11">
<details key="start" value="6962"/>
<details key="end" value="6973"/>
<details key="line" value="141"/>
</eAnnotations>
<eAnnotations source="positions.399" references="/0/generateInvariant/@body.0/@body.0/@body.13/@body.0/@body.12/@body.12">
<details key="start" value="6974"/>
<details key="end" value="7021"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.400" references="/0/generateInvariant/@body.0/@body.0/@body.13/@body.0/@body.12/@body.12/@argument.0">
<details key="start" value="6974"/>
<details key="end" value="7000"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.401" references="/0/generateInvariant/@body.0/@body.0/@body.13/@body.0/@body.12/@body.12/@argument.0/expInOcl">
<details key="start" value="6974"/>
<details key="end" value="6982"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.402" references="/0/generateInvariant/@body.0/@body.0/@body.13/@body.0/@body.12/@body.12/expInOcl">
<details key="start" value="7012"/>
<details key="end" value="7020"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.403" references="/0/generateInvariant/@body.0/@body.0/@body.13/@body.0/@body.12/@body.13">
<details key="start" value="7023"/>
<details key="end" value="7032"/>
<details key="line" value="141"/>
</eAnnotations>
<eAnnotations source="positions.404" references="/0/generateInvariant/@body.0/@body.0/@body.13/@body.0/@body.12/@ifExpr">
<details key="start" value="6325"/>
<details key="end" value="6365"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.405" references="/0/generateInvariant/@body.0/@body.0/@body.13/@body.0/@body.12/@ifExpr/@source">
<details key="start" value="-1"/>
<details key="end" value="-1"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.406" references="/0/generateInvariant/@body.0/@body.0/@body.13/@body.0/@body.12/@ifExpr/@source/@part.0/@item">
<details key="start" value="6326"/>
<details key="end" value="6352"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.407" references="/0/generateInvariant/@body.0/@body.0/@body.13/@body.0/@body.12/@ifExpr/@source/@part.0/@item/expInOcl">
<details key="start" value="6326"/>
<details key="end" value="6334"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.408" references="/0/generateInvariant/@body.0/@body.0/@body.13/@body.0/constants">
<details key="start" value="5653"/>
<details key="end" value="5735"/>
<details key="line" value="120"/>
</eAnnotations>
<eAnnotations source="positions.409" references="/0/generateInvariant/@body.0/@body.0/@body.13/@body.0/constants/@initExpression">
<details key="start" value="5675"/>
<details key="end" value="5736"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.410" references="/0/generateInvariant/@body.0/@body.0/@body.13/@body.0/constants/@initExpression/@argument.0">
<details key="start" value="5675"/>
<details key="end" value="5698"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.411" references="/0/generateInvariant/@body.0/@body.0/@body.13/@body.0/constants/@initExpression/@argument.0/expInOcl">
<details key="start" value="5675"/>
<details key="end" value="5683"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.412" references="/0/generateInvariant/@body.0/@body.0/@body.13/@body.0/constants/@initExpression/genPackage">
<details key="start" value="5715"/>
<details key="end" value="5725"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.413" references="/0/generateInvariant/@body.0/@body.0/@body.13/@body.0/constants/@initExpression/expInOcl">
<details key="start" value="5727"/>
<details key="end" value="5735"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.414" references="/0/generateInvariant/@body.0/@body.0/@body.13/@ifExpr">
<details key="start" value="5608"/>
<details key="end" value="5646"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.415" references="/0/generateInvariant/@body.0/@body.0/@body.13/@ifExpr/@source">
<details key="start" value="-1"/>
<details key="end" value="-1"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.416" references="/0/generateInvariant/@body.0/@body.0/@body.13/@ifExpr/@source/@part.0/@item">
<details key="start" value="5609"/>
<details key="end" value="5633"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.417" references="/0/generateInvariant/@body.0/@body.0/@body.13/@ifExpr/@source/@part.0/@item/expInOcl">
<details key="start" value="5609"/>
<details key="end" value="5617"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.418" references="/0/generateInvariant/@body.0/@body.0/@body.13/@else">
<details key="start" value="7043"/>
<details key="end" value="7086"/>
<details key="line" value="144"/>
</eAnnotations>
<eAnnotations source="positions.419" references="/0/generateInvariant/@body.0/@body.0/@body.13/@else/@body.0">
<details key="start" value="7050"/>
<details key="end" value="7051"/>
<details key="line" value="145"/>
</eAnnotations>
<eAnnotations source="positions.420" references="/0/generateInvariant/@body.0/@body.0/@body.13/@else/@body.1">
<details key="start" value="7052"/>
<details key="end" value="7083"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.421" references="/0/generateInvariant/@body.0/@body.0/@body.13/@else/@body.1/expInOcl">
<details key="start" value="7052"/>
<details key="end" value="7060"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.422" references="/0/generateInvariant/@body.0/@body.0/@body.13/@else/@body.2">
<details key="start" value="7085"/>
<details key="end" value="7086"/>
<details key="line" value="146"/>
</eAnnotations>
<eAnnotations source="positions.423" references="/0/generateInvariant/@body.0/@body.0/@body.14">
<details key="start" value="7092"/>
<details key="end" value="7093"/>
<details key="line" value="147"/>
</eAnnotations>
<eAnnotations source="positions.424" references="/0/generateInvariant/@body.0/@body.0/arity">
<details key="start" value="5315"/>
<details key="end" value="5367"/>
<details key="line" value="112"/>
</eAnnotations>
<eAnnotations source="positions.425" references="/0/generateInvariant/@body.0/@body.0/arity/@initExpression">
<details key="start" value="5334"/>
<details key="end" value="5368"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.426" references="/0/generateInvariant/@body.0/@body.0/arity/@initExpression/@source">
<details key="start" value="5334"/>
<details key="end" value="5360"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.427" references="/0/generateInvariant/@body.0/@body.0/arity/@initExpression/@source/expInOcl">
<details key="start" value="5334"/>
<details key="end" value="5342"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.428" references="/0/generateInvariant/@body.0/className">
<details key="start" value="5255"/>
<details key="end" value="5308"/>
<details key="line" value="111"/>
</eAnnotations>
<eAnnotations source="positions.429" references="/0/generateInvariant/@body.0/className/@initExpression">
<details key="start" value="5277"/>
<details key="end" value="5309"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.430" references="/0/generateInvariant/@body.0/className/@initExpression/@source">
<details key="start" value="5277"/>
<details key="end" value="5290"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.431" references="/0/generateInvariant/@body.0/className/@initExpression/@argument.0">
<details key="start" value="5293"/>
<details key="end" value="5309"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.432" references="/0/generateInvariant/@body.0/className/@initExpression/@argument.0/pConstraint">
<details key="start" value="5293"/>
<details key="end" value="5304"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.433" references="/0/generateInvariant/expInOcl">
<details key="start" value="5136"/>
<details key="end" value="5162"/>
<details key="line" value="110"/>
</eAnnotations>
<eAnnotations source="positions.434" references="/0/generateInvariant/genPackage">
<details key="start" value="5164"/>
<details key="end" value="5187"/>
<details key="line" value="110"/>
</eAnnotations>
<eAnnotations source="positions.435" references="/0/generateInvariant/pPackage">
<details key="start" value="5189"/>
<details key="end" value="5207"/>
<details key="line" value="110"/>
</eAnnotations>
<eAnnotations source="positions.436" references="/0/generateInvariant/pType">
<details key="start" value="5209"/>
<details key="end" value="5221"/>
<details key="line" value="110"/>
</eAnnotations>
<eAnnotations source="positions.437" references="/0/generateInvariant/pConstraint">
<details key="start" value="5223"/>
<details key="end" value="5247"/>
<details key="line" value="110"/>
</eAnnotations>
<eAnnotations source="positions.438" references="/0/generateOperationConstraint">
<details key="start" value="7118"/>
<details key="end" value="8535"/>
<details key="line" value="149"/>
</eAnnotations>
<eAnnotations source="positions.439" references="/0/generateOperationConstraint/@body.0">
<details key="start" value="7301"/>
<details key="end" value="8524"/>
<details key="line" value="150"/>
</eAnnotations>
<eAnnotations source="positions.440" references="/0/generateOperationConstraint/@body.0/@body.0">
<details key="start" value="7360"/>
<details key="end" value="8518"/>
<details key="line" value="151"/>
</eAnnotations>
<eAnnotations source="positions.441" references="/0/generateOperationConstraint/@body.0/@body.0/@body.0">
<details key="start" value="7465"/>
<details key="end" value="7495"/>
<details key="line" value="152"/>
</eAnnotations>
<eAnnotations source="positions.442" references="/0/generateOperationConstraint/@body.0/@body.0/@body.1">
<details key="start" value="7496"/>
<details key="end" value="7506"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.443" references="/0/generateOperationConstraint/@body.0/@body.0/@body.1/pType">
<details key="start" value="7496"/>
<details key="end" value="7501"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.444" references="/0/generateOperationConstraint/@body.0/@body.0/@body.2">
<details key="start" value="7508"/>
<details key="end" value="7510"/>
<details key="line" value="153"/>
</eAnnotations>
<eAnnotations source="positions.445" references="/0/generateOperationConstraint/@body.0/@body.0/@body.3">
<details key="start" value="7511"/>
<details key="end" value="7526"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.446" references="/0/generateOperationConstraint/@body.0/@body.0/@body.3/pOperation">
<details key="start" value="7511"/>
<details key="end" value="7521"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.447" references="/0/generateOperationConstraint/@body.0/@body.0/@body.4">
<details key="start" value="7528"/>
<details key="end" value="7530"/>
<details key="line" value="153"/>
</eAnnotations>
<eAnnotations source="positions.448" references="/0/generateOperationConstraint/@body.0/@body.0/@body.5">
<details key="start" value="7531"/>
<details key="end" value="7547"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.449" references="/0/generateOperationConstraint/@body.0/@body.0/@body.5/pConstraint">
<details key="start" value="7531"/>
<details key="end" value="7542"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.450" references="/0/generateOperationConstraint/@body.0/@body.0/@body.6">
<details key="start" value="7549"/>
<details key="end" value="7552"/>
<details key="line" value="153"/>
</eAnnotations>
<eAnnotations source="positions.451" references="/0/generateOperationConstraint/@body.0/@body.0/@body.7">
<details key="start" value="7553"/>
<details key="end" value="7575"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.452" references="/0/generateOperationConstraint/@body.0/@body.0/@body.7/pConstraint">
<details key="start" value="7553"/>
<details key="end" value="7564"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.453" references="/0/generateOperationConstraint/@body.0/@body.0/@body.8">
<details key="start" value="7577"/>
<details key="end" value="7604"/>
<details key="line" value="153"/>
</eAnnotations>
<eAnnotations source="positions.454" references="/0/generateOperationConstraint/@body.0/@body.0/className">
<details key="start" value="7605"/>
<details key="end" value="7614"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.455" references="/0/generateOperationConstraint/@body.0/@body.0/@body.10">
<details key="start" value="7616"/>
<details key="end" value="7635"/>
<details key="line" value="155"/>
</eAnnotations>
<eAnnotations source="positions.456" references="/0/generateOperationConstraint/@body.0/@body.0/@body.11">
<details key="start" value="7636"/>
<details key="end" value="7672"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.457" references="/0/generateOperationConstraint/@body.0/@body.0/@body.11/genPackage">
<details key="start" value="7636"/>
<details key="end" value="7646"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.458" references="/0/generateOperationConstraint/@body.0/@body.0/@body.11/arity">
<details key="start" value="7666"/>
<details key="end" value="7671"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.459" references="/0/generateOperationConstraint/@body.0/@body.0/@body.12">
<details key="start" value="7674"/>
<details key="end" value="7694"/>
<details key="line" value="155"/>
</eAnnotations>
<eAnnotations source="positions.460" references="/0/generateOperationConstraint/@body.0/@body.0/className.1">
<details key="start" value="7695"/>
<details key="end" value="7704"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.461" references="/0/generateOperationConstraint/@body.0/@body.0/@body.14">
<details key="start" value="7706"/>
<details key="end" value="7722"/>
<details key="line" value="157"/>
</eAnnotations>
<eAnnotations source="positions.462" references="/0/generateOperationConstraint/@body.0/@body.0/className.2">
<details key="start" value="7723"/>
<details key="end" value="7732"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.463" references="/0/generateOperationConstraint/@body.0/@body.0/@body.16">
<details key="start" value="7734"/>
<details key="end" value="7739"/>
<details key="line" value="157"/>
</eAnnotations>
<eAnnotations source="positions.464" references="/0/generateOperationConstraint/@body.0/@body.0/@body.17">
<details key="start" value="7739"/>
<details key="end" value="8510"/>
<details key="line" value="159"/>
</eAnnotations>
<eAnnotations source="positions.465" references="/0/generateOperationConstraint/@body.0/@body.0/@body.17/@body.0">
<details key="start" value="7783"/>
<details key="end" value="8461"/>
<details key="line" value="160"/>
</eAnnotations>
<eAnnotations source="positions.466" references="/0/generateOperationConstraint/@body.0/@body.0/@body.17/@body.0/@body.0">
<details key="start" value="7872"/>
<details key="end" value="7877"/>
<details key="line" value="161"/>
</eAnnotations>
<eAnnotations source="positions.467" references="/0/generateOperationConstraint/@body.0/@body.0/@body.17/@body.0/@body.1">
<details key="start" value="7878"/>
<details key="end" value="7907"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.468" references="/0/generateOperationConstraint/@body.0/@body.0/@body.17/@body.0/@body.1/@source">
<details key="start" value="7878"/>
<details key="end" value="7900"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.469" references="/0/generateOperationConstraint/@body.0/@body.0/@body.17/@body.0/@body.1/@source/expInOcl">
<details key="start" value="7878"/>
<details key="end" value="7886"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.470" references="/0/generateOperationConstraint/@body.0/@body.0/@body.17/@body.0/@body.2">
<details key="start" value="7909"/>
<details key="end" value="8015"/>
<details key="line" value="163"/>
</eAnnotations>
<eAnnotations source="positions.471" references="/0/generateOperationConstraint/@body.0/@body.0/@body.17/@body.0/@body.3">
<details key="start" value="8016"/>
<details key="end" value="8066"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.472" references="/0/generateOperationConstraint/@body.0/@body.0/@body.17/@body.0/@body.3/@argument.0">
<details key="start" value="8033"/>
<details key="end" value="8057"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.473" references="/0/generateOperationConstraint/@body.0/@body.0/@body.17/@body.0/@body.3/@argument.0/expInOcl">
<details key="start" value="8033"/>
<details key="end" value="8041"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.474" references="/0/generateOperationConstraint/@body.0/@body.0/@body.17/@body.0/@body.3/@argument.1">
<details key="start" value="8059"/>
<details key="end" value="8065"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.475" references="/0/generateOperationConstraint/@body.0/@body.0/@body.17/@body.0/@body.4">
<details key="start" value="8068"/>
<details key="end" value="8245"/>
<details key="line" value="164"/>
</eAnnotations>
<eAnnotations source="positions.476" references="/0/generateOperationConstraint/@body.0/@body.0/@body.17/@body.0/@body.4/@body.0">
<details key="start" value="8112"/>
<details key="end" value="8240"/>
<details key="line" value="165"/>
</eAnnotations>
<eAnnotations source="positions.477" references="/0/generateOperationConstraint/@body.0/@body.0/@body.17/@body.0/@body.4/@body.0/@body.0">
<details key="start" value="8170"/>
<details key="end" value="8188"/>
<details key="line" value="166"/>
</eAnnotations>
<eAnnotations source="positions.478" references="/0/generateOperationConstraint/@body.0/@body.0/@body.17/@body.0/@body.4/@body.0/@body.1">
<details key="start" value="8189"/>
<details key="end" value="8232"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.479" references="/0/generateOperationConstraint/@body.0/@body.0/@body.17/@body.0/@body.4/@body.0/@body.1/parameter">
<details key="start" value="8206"/>
<details key="end" value="8215"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.480" references="/0/generateOperationConstraint/@body.0/@body.0/@body.17/@body.0/@body.4/@body.0/@body.1/@argument.1">
<details key="start" value="8217"/>
<details key="end" value="8231"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.481" references="/0/generateOperationConstraint/@body.0/@body.0/@body.17/@body.0/@body.4/@body.0/@body.1/@argument.1/parameter">
<details key="start" value="8217"/>
<details key="end" value="8226"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.482" references="/0/generateOperationConstraint/@body.0/@body.0/@body.17/@body.0/@body.4/@body.0/parameter">
<details key="start" value="8118"/>
<details key="end" value="8138"/>
<details key="line" value="165"/>
</eAnnotations>
<eAnnotations source="positions.483" references="/0/generateOperationConstraint/@body.0/@body.0/@body.17/@body.0/@body.4/@body.0/@iterSet">
<details key="start" value="8141"/>
<details key="end" value="8167"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.484" references="/0/generateOperationConstraint/@body.0/@body.0/@body.17/@body.0/@body.4/@body.0/@iterSet/expInOcl">
<details key="start" value="8141"/>
<details key="end" value="8149"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.485" references="/0/generateOperationConstraint/@body.0/@body.0/@body.17/@body.0/@body.4/@ifExpr">
<details key="start" value="8072"/>
<details key="end" value="8110"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.486" references="/0/generateOperationConstraint/@body.0/@body.0/@body.17/@body.0/@body.4/@ifExpr/@source">
<details key="start" value="8072"/>
<details key="end" value="8098"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.487" references="/0/generateOperationConstraint/@body.0/@body.0/@body.17/@body.0/@body.4/@ifExpr/@source/expInOcl">
<details key="start" value="8072"/>
<details key="end" value="8080"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.488" references="/0/generateOperationConstraint/@body.0/@body.0/@body.17/@body.0/@body.5">
<details key="start" value="8245"/>
<details key="end" value="8284"/>
<details key="line" value="166"/>
</eAnnotations>
<eAnnotations source="positions.489" references="/0/generateOperationConstraint/@body.0/@body.0/@body.17/@body.0/@body.6">
<details key="start" value="8285"/>
<details key="end" value="8318"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.490" references="/0/generateOperationConstraint/@body.0/@body.0/@body.17/@body.0/@body.6/expInOcl">
<details key="start" value="8285"/>
<details key="end" value="8293"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.491" references="/0/generateOperationConstraint/@body.0/@body.0/@body.17/@body.0/@body.6/constants">
<details key="start" value="8308"/>
<details key="end" value="8317"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.492" references="/0/generateOperationConstraint/@body.0/@body.0/@body.17/@body.0/@body.7">
<details key="start" value="8320"/>
<details key="end" value="8323"/>
<details key="line" value="168"/>
</eAnnotations>
<eAnnotations source="positions.493" references="/0/generateOperationConstraint/@body.0/@body.0/@body.17/@body.0/@body.8">
<details key="start" value="8324"/>
<details key="end" value="8391"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.494" references="/0/generateOperationConstraint/@body.0/@body.0/@body.17/@body.0/@body.8/@argument.0">
<details key="start" value="8324"/>
<details key="end" value="8347"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.495" references="/0/generateOperationConstraint/@body.0/@body.0/@body.17/@body.0/@body.8/@argument.0/expInOcl">
<details key="start" value="8324"/>
<details key="end" value="8332"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.496" references="/0/generateOperationConstraint/@body.0/@body.0/@body.17/@body.0/@body.8/pType">
<details key="start" value="8363"/>
<details key="end" value="8368"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.497" references="/0/generateOperationConstraint/@body.0/@body.0/@body.17/@body.0/@body.8/genPackage">
<details key="start" value="8370"/>
<details key="end" value="8380"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.498" references="/0/generateOperationConstraint/@body.0/@body.0/@body.17/@body.0/@body.8/expInOcl">
<details key="start" value="8382"/>
<details key="end" value="8390"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.499" references="/0/generateOperationConstraint/@body.0/@body.0/@body.17/@body.0/@body.9">
<details key="start" value="8393"/>
<details key="end" value="8403"/>
<details key="line" value="169"/>
</eAnnotations>
<eAnnotations source="positions.500" references="/0/generateOperationConstraint/@body.0/@body.0/@body.17/@body.0/@body.10">
<details key="start" value="8404"/>
<details key="end" value="8448"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.501" references="/0/generateOperationConstraint/@body.0/@body.0/@body.17/@body.0/@body.10/@argument.0">
<details key="start" value="8404"/>
<details key="end" value="8427"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.502" references="/0/generateOperationConstraint/@body.0/@body.0/@body.17/@body.0/@body.10/@argument.0/expInOcl">
<details key="start" value="8404"/>
<details key="end" value="8412"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.503" references="/0/generateOperationConstraint/@body.0/@body.0/@body.17/@body.0/@body.10/expInOcl">
<details key="start" value="8439"/>
<details key="end" value="8447"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.504" references="/0/generateOperationConstraint/@body.0/@body.0/@body.17/@body.0/@body.11">
<details key="start" value="8450"/>
<details key="end" value="8455"/>
<details key="line" value="169"/>
</eAnnotations>
<eAnnotations source="positions.505" references="/0/generateOperationConstraint/@body.0/@body.0/@body.17/@body.0/constants">
<details key="start" value="7788"/>
<details key="end" value="7870"/>
<details key="line" value="160"/>
</eAnnotations>
<eAnnotations source="positions.506" references="/0/generateOperationConstraint/@body.0/@body.0/@body.17/@body.0/constants/@initExpression">
<details key="start" value="7810"/>
<details key="end" value="7871"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.507" references="/0/generateOperationConstraint/@body.0/@body.0/@body.17/@body.0/constants/@initExpression/@argument.0">
<details key="start" value="7810"/>
<details key="end" value="7833"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.508" references="/0/generateOperationConstraint/@body.0/@body.0/@body.17/@body.0/constants/@initExpression/@argument.0/expInOcl">
<details key="start" value="7810"/>
<details key="end" value="7818"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.509" references="/0/generateOperationConstraint/@body.0/@body.0/@body.17/@body.0/constants/@initExpression/genPackage">
<details key="start" value="7850"/>
<details key="end" value="7860"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.510" references="/0/generateOperationConstraint/@body.0/@body.0/@body.17/@body.0/constants/@initExpression/expInOcl">
<details key="start" value="7862"/>
<details key="end" value="7870"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.511" references="/0/generateOperationConstraint/@body.0/@body.0/@body.17/@ifExpr">
<details key="start" value="7743"/>
<details key="end" value="7781"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.512" references="/0/generateOperationConstraint/@body.0/@body.0/@body.17/@ifExpr/@source">
<details key="start" value="-1"/>
<details key="end" value="-1"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.513" references="/0/generateOperationConstraint/@body.0/@body.0/@body.17/@ifExpr/@source/@part.0/@item">
<details key="start" value="7744"/>
<details key="end" value="7768"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.514" references="/0/generateOperationConstraint/@body.0/@body.0/@body.17/@ifExpr/@source/@part.0/@item/expInOcl">
<details key="start" value="7744"/>
<details key="end" value="7752"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.515" references="/0/generateOperationConstraint/@body.0/@body.0/@body.17/@else">
<details key="start" value="8462"/>
<details key="end" value="8505"/>
<details key="line" value="172"/>
</eAnnotations>
<eAnnotations source="positions.516" references="/0/generateOperationConstraint/@body.0/@body.0/@body.17/@else/@body.0">
<details key="start" value="8469"/>
<details key="end" value="8470"/>
<details key="line" value="173"/>
</eAnnotations>
<eAnnotations source="positions.517" references="/0/generateOperationConstraint/@body.0/@body.0/@body.17/@else/@body.1">
<details key="start" value="8471"/>
<details key="end" value="8502"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.518" references="/0/generateOperationConstraint/@body.0/@body.0/@body.17/@else/@body.1/expInOcl">
<details key="start" value="8471"/>
<details key="end" value="8479"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.519" references="/0/generateOperationConstraint/@body.0/@body.0/@body.17/@else/@body.2">
<details key="start" value="8504"/>
<details key="end" value="8505"/>
<details key="line" value="174"/>
</eAnnotations>
<eAnnotations source="positions.520" references="/0/generateOperationConstraint/@body.0/@body.0/@body.18">
<details key="start" value="8511"/>
<details key="end" value="8512"/>
<details key="line" value="175"/>
</eAnnotations>
<eAnnotations source="positions.521" references="/0/generateOperationConstraint/@body.0/@body.0/className.3">
<details key="start" value="7365"/>
<details key="end" value="7463"/>
<details key="line" value="151"/>
</eAnnotations>
<eAnnotations source="positions.522" references="/0/generateOperationConstraint/@body.0/@body.0/className.3/@initExpression">
<details key="start" value="7387"/>
<details key="end" value="7464"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.523" references="/0/generateOperationConstraint/@body.0/@body.0/className.3/@initExpression/@source">
<details key="start" value="7387"/>
<details key="end" value="7445"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.524" references="/0/generateOperationConstraint/@body.0/@body.0/className.3/@initExpression/@source/@source">
<details key="start" value="7387"/>
<details key="end" value="7439"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.525" references="/0/generateOperationConstraint/@body.0/@body.0/className.3/@initExpression/@source/@source/@source">
<details key="start" value="7387"/>
<details key="end" value="7414"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.526" references="/0/generateOperationConstraint/@body.0/@body.0/className.3/@initExpression/@source/@source/@source/@source">
<details key="start" value="7387"/>
<details key="end" value="7408"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.527" references="/0/generateOperationConstraint/@body.0/@body.0/className.3/@initExpression/@source/@source/@source/@source/@source">
<details key="start" value="7387"/>
<details key="end" value="7390"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.528" references="/0/generateOperationConstraint/@body.0/@body.0/className.3/@initExpression/@source/@source/@source/@source/@argument.0">
<details key="start" value="7393"/>
<details key="end" value="7408"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.529" references="/0/generateOperationConstraint/@body.0/@body.0/className.3/@initExpression/@source/@source/@source/@source/@argument.0/pOperation">
<details key="start" value="7393"/>
<details key="end" value="7403"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.530" references="/0/generateOperationConstraint/@body.0/@body.0/className.3/@initExpression/@source/@source/@source/@argument.0">
<details key="start" value="7411"/>
<details key="end" value="7414"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.531" references="/0/generateOperationConstraint/@body.0/@body.0/className.3/@initExpression/@source/@source/@argument.0">
<details key="start" value="7417"/>
<details key="end" value="7439"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.532" references="/0/generateOperationConstraint/@body.0/@body.0/className.3/@initExpression/@source/@source/@argument.0/pConstraint">
<details key="start" value="7417"/>
<details key="end" value="7428"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.533" references="/0/generateOperationConstraint/@body.0/@body.0/className.3/@initExpression/@source/@argument.0">
<details key="start" value="7442"/>
<details key="end" value="7445"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.534" references="/0/generateOperationConstraint/@body.0/@body.0/className.3/@initExpression/@argument.0">
<details key="start" value="7448"/>
<details key="end" value="7464"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.535" references="/0/generateOperationConstraint/@body.0/@body.0/className.3/@initExpression/@argument.0/pConstraint">
<details key="start" value="7448"/>
<details key="end" value="7459"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.536" references="/0/generateOperationConstraint/@body.0/arity">
<details key="start" value="7306"/>
<details key="end" value="7358"/>
<details key="line" value="150"/>
</eAnnotations>
<eAnnotations source="positions.537" references="/0/generateOperationConstraint/@body.0/arity/@initExpression">
<details key="start" value="7325"/>
<details key="end" value="7359"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.538" references="/0/generateOperationConstraint/@body.0/arity/@initExpression/@source">
<details key="start" value="7325"/>
<details key="end" value="7351"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.539" references="/0/generateOperationConstraint/@body.0/arity/@initExpression/@source/expInOcl">
<details key="start" value="7325"/>
<details key="end" value="7333"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.540" references="/0/generateOperationConstraint/expInOcl">
<details key="start" value="7163"/>
<details key="end" value="7189"/>
<details key="line" value="149"/>
</eAnnotations>
<eAnnotations source="positions.541" references="/0/generateOperationConstraint/genPackage">
<details key="start" value="7191"/>
<details key="end" value="7214"/>
<details key="line" value="149"/>
</eAnnotations>
<eAnnotations source="positions.542" references="/0/generateOperationConstraint/pPackage">
<details key="start" value="7216"/>
<details key="end" value="7234"/>
<details key="line" value="149"/>
</eAnnotations>
<eAnnotations source="positions.543" references="/0/generateOperationConstraint/pType">
<details key="start" value="7236"/>
<details key="end" value="7248"/>
<details key="line" value="149"/>
</eAnnotations>
<eAnnotations source="positions.544" references="/0/generateOperationConstraint/pOperation">
<details key="start" value="7250"/>
<details key="end" value="7272"/>
<details key="line" value="149"/>
</eAnnotations>
<eAnnotations source="positions.545" references="/0/generateOperationConstraint/pConstraint">
<details key="start" value="7274"/>
<details key="end" value="7298"/>
<details key="line" value="149"/>
</eAnnotations>
<eAnnotations source="positions.546" references="/0/generatePropertyConstraint">
<details key="start" value="8537"/>
<details key="end" value="9704"/>
<details key="line" value="177"/>
</eAnnotations>
<eAnnotations source="positions.547" references="/0/generatePropertyConstraint/@body.0">
<details key="start" value="8717"/>
<details key="end" value="9693"/>
<details key="line" value="178"/>
</eAnnotations>
<eAnnotations source="positions.548" references="/0/generatePropertyConstraint/@body.0/@body.0">
<details key="start" value="8821"/>
<details key="end" value="8851"/>
<details key="line" value="179"/>
</eAnnotations>
<eAnnotations source="positions.549" references="/0/generatePropertyConstraint/@body.0/@body.1">
<details key="start" value="8852"/>
<details key="end" value="8862"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.550" references="/0/generatePropertyConstraint/@body.0/@body.1/pType">
<details key="start" value="8852"/>
<details key="end" value="8857"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.551" references="/0/generatePropertyConstraint/@body.0/@body.2">
<details key="start" value="8864"/>
<details key="end" value="8866"/>
<details key="line" value="180"/>
</eAnnotations>
<eAnnotations source="positions.552" references="/0/generatePropertyConstraint/@body.0/@body.3">
<details key="start" value="8867"/>
<details key="end" value="8881"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.553" references="/0/generatePropertyConstraint/@body.0/@body.3/pProperty">
<details key="start" value="8867"/>
<details key="end" value="8876"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.554" references="/0/generatePropertyConstraint/@body.0/@body.4">
<details key="start" value="8883"/>
<details key="end" value="8885"/>
<details key="line" value="180"/>
</eAnnotations>
<eAnnotations source="positions.555" references="/0/generatePropertyConstraint/@body.0/@body.5">
<details key="start" value="8886"/>
<details key="end" value="8902"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.556" references="/0/generatePropertyConstraint/@body.0/@body.5/pConstraint">
<details key="start" value="8886"/>
<details key="end" value="8897"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.557" references="/0/generatePropertyConstraint/@body.0/@body.6">
<details key="start" value="8904"/>
<details key="end" value="8907"/>
<details key="line" value="180"/>
</eAnnotations>
<eAnnotations source="positions.558" references="/0/generatePropertyConstraint/@body.0/@body.7">
<details key="start" value="8908"/>
<details key="end" value="8930"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.559" references="/0/generatePropertyConstraint/@body.0/@body.7/pConstraint">
<details key="start" value="8908"/>
<details key="end" value="8919"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.560" references="/0/generatePropertyConstraint/@body.0/@body.8">
<details key="start" value="8932"/>
<details key="end" value="8959"/>
<details key="line" value="180"/>
</eAnnotations>
<eAnnotations source="positions.561" references="/0/generatePropertyConstraint/@body.0/className">
<details key="start" value="8960"/>
<details key="end" value="8969"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.562" references="/0/generatePropertyConstraint/@body.0/@body.10">
<details key="start" value="8971"/>
<details key="end" value="9018"/>
<details key="line" value="182"/>
</eAnnotations>
<eAnnotations source="positions.563" references="/0/generatePropertyConstraint/@body.0/className.1">
<details key="start" value="9019"/>
<details key="end" value="9028"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.564" references="/0/generatePropertyConstraint/@body.0/@body.12">
<details key="start" value="9030"/>
<details key="end" value="9046"/>
<details key="line" value="184"/>
</eAnnotations>
<eAnnotations source="positions.565" references="/0/generatePropertyConstraint/@body.0/className.2">
<details key="start" value="9047"/>
<details key="end" value="9056"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.566" references="/0/generatePropertyConstraint/@body.0/@body.14">
<details key="start" value="9058"/>
<details key="end" value="9063"/>
<details key="line" value="184"/>
</eAnnotations>
<eAnnotations source="positions.567" references="/0/generatePropertyConstraint/@body.0/@body.15">
<details key="start" value="9063"/>
<details key="end" value="9685"/>
<details key="line" value="186"/>
</eAnnotations>
<eAnnotations source="positions.568" references="/0/generatePropertyConstraint/@body.0/@body.15/@body.0">
<details key="start" value="9107"/>
<details key="end" value="9636"/>
<details key="line" value="187"/>
</eAnnotations>
<eAnnotations source="positions.569" references="/0/generatePropertyConstraint/@body.0/@body.15/@body.0/@body.0">
<details key="start" value="9196"/>
<details key="end" value="9201"/>
<details key="line" value="188"/>
</eAnnotations>
<eAnnotations source="positions.570" references="/0/generatePropertyConstraint/@body.0/@body.15/@body.0/@body.1">
<details key="start" value="9202"/>
<details key="end" value="9231"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.571" references="/0/generatePropertyConstraint/@body.0/@body.15/@body.0/@body.1/@source">
<details key="start" value="9202"/>
<details key="end" value="9224"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.572" references="/0/generatePropertyConstraint/@body.0/@body.15/@body.0/@body.1/@source/expInOcl">
<details key="start" value="9202"/>
<details key="end" value="9210"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.573" references="/0/generatePropertyConstraint/@body.0/@body.15/@body.0/@body.2">
<details key="start" value="9233"/>
<details key="end" value="9339"/>
<details key="line" value="190"/>
</eAnnotations>
<eAnnotations source="positions.574" references="/0/generatePropertyConstraint/@body.0/@body.15/@body.0/@body.3">
<details key="start" value="9340"/>
<details key="end" value="9390"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.575" references="/0/generatePropertyConstraint/@body.0/@body.15/@body.0/@body.3/@argument.0">
<details key="start" value="9357"/>
<details key="end" value="9381"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.576" references="/0/generatePropertyConstraint/@body.0/@body.15/@body.0/@body.3/@argument.0/expInOcl">
<details key="start" value="9357"/>
<details key="end" value="9365"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.577" references="/0/generatePropertyConstraint/@body.0/@body.15/@body.0/@body.3/@argument.1">
<details key="start" value="9383"/>
<details key="end" value="9389"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.578" references="/0/generatePropertyConstraint/@body.0/@body.15/@body.0/@body.4">
<details key="start" value="9392"/>
<details key="end" value="9460"/>
<details key="line" value="191"/>
</eAnnotations>
<eAnnotations source="positions.579" references="/0/generatePropertyConstraint/@body.0/@body.15/@body.0/@body.5">
<details key="start" value="9461"/>
<details key="end" value="9494"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.580" references="/0/generatePropertyConstraint/@body.0/@body.15/@body.0/@body.5/expInOcl">
<details key="start" value="9461"/>
<details key="end" value="9469"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.581" references="/0/generatePropertyConstraint/@body.0/@body.15/@body.0/@body.5/constants">
<details key="start" value="9484"/>
<details key="end" value="9493"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.582" references="/0/generatePropertyConstraint/@body.0/@body.15/@body.0/@body.6">
<details key="start" value="9496"/>
<details key="end" value="9499"/>
<details key="line" value="193"/>
</eAnnotations>
<eAnnotations source="positions.583" references="/0/generatePropertyConstraint/@body.0/@body.15/@body.0/@body.7">
<details key="start" value="9500"/>
<details key="end" value="9567"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.584" references="/0/generatePropertyConstraint/@body.0/@body.15/@body.0/@body.7/@argument.0">
<details key="start" value="9500"/>
<details key="end" value="9523"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.585" references="/0/generatePropertyConstraint/@body.0/@body.15/@body.0/@body.7/@argument.0/expInOcl">
<details key="start" value="9500"/>
<details key="end" value="9508"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.586" references="/0/generatePropertyConstraint/@body.0/@body.15/@body.0/@body.7/pType">
<details key="start" value="9539"/>
<details key="end" value="9544"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.587" references="/0/generatePropertyConstraint/@body.0/@body.15/@body.0/@body.7/genPackage">
<details key="start" value="9546"/>
<details key="end" value="9556"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.588" references="/0/generatePropertyConstraint/@body.0/@body.15/@body.0/@body.7/expInOcl">
<details key="start" value="9558"/>
<details key="end" value="9566"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.589" references="/0/generatePropertyConstraint/@body.0/@body.15/@body.0/@body.8">
<details key="start" value="9569"/>
<details key="end" value="9579"/>
<details key="line" value="194"/>
</eAnnotations>
<eAnnotations source="positions.590" references="/0/generatePropertyConstraint/@body.0/@body.15/@body.0/@body.9">
<details key="start" value="9580"/>
<details key="end" value="9624"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.591" references="/0/generatePropertyConstraint/@body.0/@body.15/@body.0/@body.9/@argument.0">
<details key="start" value="9580"/>
<details key="end" value="9603"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.592" references="/0/generatePropertyConstraint/@body.0/@body.15/@body.0/@body.9/@argument.0/expInOcl">
<details key="start" value="9580"/>
<details key="end" value="9588"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.593" references="/0/generatePropertyConstraint/@body.0/@body.15/@body.0/@body.9/expInOcl">
<details key="start" value="9615"/>
<details key="end" value="9623"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.594" references="/0/generatePropertyConstraint/@body.0/@body.15/@body.0/@body.10">
<details key="start" value="9626"/>
<details key="end" value="9630"/>
<details key="line" value="194"/>
</eAnnotations>
<eAnnotations source="positions.595" references="/0/generatePropertyConstraint/@body.0/@body.15/@body.0/constants">
<details key="start" value="9112"/>
<details key="end" value="9194"/>
<details key="line" value="187"/>
</eAnnotations>
<eAnnotations source="positions.596" references="/0/generatePropertyConstraint/@body.0/@body.15/@body.0/constants/@initExpression">
<details key="start" value="9134"/>
<details key="end" value="9195"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.597" references="/0/generatePropertyConstraint/@body.0/@body.15/@body.0/constants/@initExpression/@argument.0">
<details key="start" value="9134"/>
<details key="end" value="9157"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.598" references="/0/generatePropertyConstraint/@body.0/@body.15/@body.0/constants/@initExpression/@argument.0/expInOcl">
<details key="start" value="9134"/>
<details key="end" value="9142"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.599" references="/0/generatePropertyConstraint/@body.0/@body.15/@body.0/constants/@initExpression/genPackage">
<details key="start" value="9174"/>
<details key="end" value="9184"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.600" references="/0/generatePropertyConstraint/@body.0/@body.15/@body.0/constants/@initExpression/expInOcl">
<details key="start" value="9186"/>
<details key="end" value="9194"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.601" references="/0/generatePropertyConstraint/@body.0/@body.15/@ifExpr">
<details key="start" value="9067"/>
<details key="end" value="9105"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.602" references="/0/generatePropertyConstraint/@body.0/@body.15/@ifExpr/@source">
<details key="start" value="-1"/>
<details key="end" value="-1"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.603" references="/0/generatePropertyConstraint/@body.0/@body.15/@ifExpr/@source/@part.0/@item">
<details key="start" value="9068"/>
<details key="end" value="9092"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.604" references="/0/generatePropertyConstraint/@body.0/@body.15/@ifExpr/@source/@part.0/@item/expInOcl">
<details key="start" value="9068"/>
<details key="end" value="9076"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.605" references="/0/generatePropertyConstraint/@body.0/@body.15/@else">
<details key="start" value="9637"/>
<details key="end" value="9680"/>
<details key="line" value="196"/>
</eAnnotations>
<eAnnotations source="positions.606" references="/0/generatePropertyConstraint/@body.0/@body.15/@else/@body.0">
<details key="start" value="9644"/>
<details key="end" value="9645"/>
<details key="line" value="197"/>
</eAnnotations>
<eAnnotations source="positions.607" references="/0/generatePropertyConstraint/@body.0/@body.15/@else/@body.1">
<details key="start" value="9646"/>
<details key="end" value="9677"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.608" references="/0/generatePropertyConstraint/@body.0/@body.15/@else/@body.1/expInOcl">
<details key="start" value="9646"/>
<details key="end" value="9654"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.609" references="/0/generatePropertyConstraint/@body.0/@body.15/@else/@body.2">
<details key="start" value="9679"/>
<details key="end" value="9680"/>
<details key="line" value="198"/>
</eAnnotations>
<eAnnotations source="positions.610" references="/0/generatePropertyConstraint/@body.0/@body.16">
<details key="start" value="9686"/>
<details key="end" value="9687"/>
<details key="line" value="199"/>
</eAnnotations>
<eAnnotations source="positions.611" references="/0/generatePropertyConstraint/@body.0/className.3">
<details key="start" value="8722"/>
<details key="end" value="8819"/>
<details key="line" value="178"/>
</eAnnotations>
<eAnnotations source="positions.612" references="/0/generatePropertyConstraint/@body.0/className.3/@initExpression">
<details key="start" value="8744"/>
<details key="end" value="8820"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.613" references="/0/generatePropertyConstraint/@body.0/className.3/@initExpression/@source">
<details key="start" value="8744"/>
<details key="end" value="8801"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.614" references="/0/generatePropertyConstraint/@body.0/className.3/@initExpression/@source/@source">
<details key="start" value="8744"/>
<details key="end" value="8795"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.615" references="/0/generatePropertyConstraint/@body.0/className.3/@initExpression/@source/@source/@source">
<details key="start" value="8744"/>
<details key="end" value="8770"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.616" references="/0/generatePropertyConstraint/@body.0/className.3/@initExpression/@source/@source/@source/@source">
<details key="start" value="8744"/>
<details key="end" value="8764"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.617" references="/0/generatePropertyConstraint/@body.0/className.3/@initExpression/@source/@source/@source/@source/@source">
<details key="start" value="8744"/>
<details key="end" value="8747"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.618" references="/0/generatePropertyConstraint/@body.0/className.3/@initExpression/@source/@source/@source/@source/@argument.0">
<details key="start" value="8750"/>
<details key="end" value="8764"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.619" references="/0/generatePropertyConstraint/@body.0/className.3/@initExpression/@source/@source/@source/@source/@argument.0/pProperty">
<details key="start" value="8750"/>
<details key="end" value="8759"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.620" references="/0/generatePropertyConstraint/@body.0/className.3/@initExpression/@source/@source/@source/@argument.0">
<details key="start" value="8767"/>
<details key="end" value="8770"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.621" references="/0/generatePropertyConstraint/@body.0/className.3/@initExpression/@source/@source/@argument.0">
<details key="start" value="8773"/>
<details key="end" value="8795"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.622" references="/0/generatePropertyConstraint/@body.0/className.3/@initExpression/@source/@source/@argument.0/pConstraint">
<details key="start" value="8773"/>
<details key="end" value="8784"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.623" references="/0/generatePropertyConstraint/@body.0/className.3/@initExpression/@source/@argument.0">
<details key="start" value="8798"/>
<details key="end" value="8801"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.624" references="/0/generatePropertyConstraint/@body.0/className.3/@initExpression/@argument.0">
<details key="start" value="8804"/>
<details key="end" value="8820"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.625" references="/0/generatePropertyConstraint/@body.0/className.3/@initExpression/@argument.0/pConstraint">
<details key="start" value="8804"/>
<details key="end" value="8815"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.626" references="/0/generatePropertyConstraint/expInOcl">
<details key="start" value="8581"/>
<details key="end" value="8607"/>
<details key="line" value="177"/>
</eAnnotations>
<eAnnotations source="positions.627" references="/0/generatePropertyConstraint/genPackage">
<details key="start" value="8609"/>
<details key="end" value="8632"/>
<details key="line" value="177"/>
</eAnnotations>
<eAnnotations source="positions.628" references="/0/generatePropertyConstraint/pPackage">
<details key="start" value="8634"/>
<details key="end" value="8652"/>
<details key="line" value="177"/>
</eAnnotations>
<eAnnotations source="positions.629" references="/0/generatePropertyConstraint/pType">
<details key="start" value="8654"/>
<details key="end" value="8666"/>
<details key="line" value="177"/>
</eAnnotations>
<eAnnotations source="positions.630" references="/0/generatePropertyConstraint/pProperty">
<details key="start" value="8668"/>
<details key="end" value="8688"/>
<details key="line" value="177"/>
</eAnnotations>
<eAnnotations source="positions.631" references="/0/generatePropertyConstraint/pConstraint">
<details key="start" value="8690"/>
<details key="end" value="8714"/>
<details key="line" value="177"/>
</eAnnotations>
<eAnnotations source="positions.632" references="/0/generateErrorMessage">
<details key="start" value="9706"/>
<details key="end" value="9861"/>
<details key="line" value="201"/>
</eAnnotations>
<eAnnotations source="positions.633" references="/0/generateErrorMessage/@body.0">
<details key="start" value="9773"/>
<details key="end" value="9776"/>
<details key="line" value="202"/>
</eAnnotations>
<eAnnotations source="positions.634" references="/0/generateErrorMessage/@body.1">
<details key="start" value="9777"/>
<details key="end" value="9844"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.635" references="/0/generateErrorMessage/@body.1/@source">
<details key="start" value="9777"/>
<details key="end" value="9831"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.636" references="/0/generateErrorMessage/@body.1/@source/@source">
<details key="start" value="9777"/>
<details key="end" value="9803"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.637" references="/0/generateErrorMessage/@body.1/@source/@source/expInOcl">
<details key="start" value="9777"/>
<details key="end" value="9785"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.638" references="/0/generateErrorMessage/@body.1/@source/@argument.0">
<details key="start" value="9814"/>
<details key="end" value="9830"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.639" references="/0/generateErrorMessage/@body.2">
<details key="start" value="9846"/>
<details key="end" value="9849"/>
<details key="line" value="204"/>
</eAnnotations>
<eAnnotations source="positions.640" references="/0/generateErrorMessage/expInOcl">
<details key="start" value="9744"/>
<details key="end" value="9770"/>
<details key="line" value="201"/>
</eAnnotations>
</ecore:EAnnotation>
</xmi:XMI>