cppmodel
CPPNamedElement
cppName
ooplNameProvider
CPPQualifiedNamedElement
cppPrefix
cppQualifiedName
subElements
CPPModel
commonModel
bodyFile
declarationHeaderFile
definitionHeaderFile
apiHeaderFile
headerDir
bodyDir
externalHeaderDir
externalBodySkeletonDir
CPPPackage
commonPackage
bodyFile
headerFile
headerDir
bodyDir
CPPClass
headerFile
bodyFile
CPPProtocol
xtProtocol
headerFile
CPPSourceFile
generationName
generationDirectory
generationPath
includedHeaders
externalHeaderInclusion
CPPHeaderFile
includeName
includeDirectory
includePath
CPPBodyFile
CPPDirectory
subDirectories
files
name
parentDirectory
path
makeRulesFile
CPPComponent
xtComponent
mainHeaderFile
mainBodyFile
declarationHeaderFile
definitionHeaderFile
headerDirectory
bodyDirectory
externalHeaderDirectory
externalBodySkeletonDirectory
CPPExternalHeader
name
CPPExternalHeaderInclusion
externalHeader
comment
CPPRelation
CPPOperation
commonOperation
compiledBody
CPPPort
xtPort
headerFile
externalHeaderFile
bodyFile
externalBodySkeletonFile
CPPProtocolOperationDefinition
xtProtocolOperationDefinition
CPPSignal
commonSignal
CPPProtocolOperationImplementation
xtProtocolOperationImplementation
CPPClassReference
CPPClassReferenceStorage
CPPClassRefSimpleCollection
cppContainer
CPPClassRefAssocCollection
cppContainer
cppAttribute
CPPAttribute
commonAttribute
unnamedSequenceType
type
CPPState
commonState
compiledEntryBody
compiledExitBody
CPPTransition
commonTransition
compiledEffectBody
compiledGuardBody
CPPEvent
xtEvent
CPPFormalParameter
commonParameter
passingMode
BY_VALUE
unnamedSequenceType
type
CPPParameterPassingKind
BY_VALUE
BY_VALUE
BY_REFERENCE
BY_REFERENCE
BY_CONSTANT_REFERENCE
BY_CONSTANT_REFERENCE
CPPReturnValue
type
unnamedSequenceType
commonTypedMultiplicityElement
CPPExternalLibrary
externalHeader
CPPBasicType
cppSpecifier
CPPSequence
cppContainer
CPPEnumType
CPPEnumerator
cppValue
CPPStructType
CPPStructMember
CPPUserDefinedType
CPPMakeFile
CPPExternalBridge
headerFile
bodyFile
cppExternalNamespace
xtClass
<?xml version="1.0" encoding="UTF-8"?>
<ecore:EPackage xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" name="cppmodel" nsURI="http://www.ericsson.com/xtumlrt/oopl/cpp" nsPrefix="cpp">
  <eAnnotations source="http://www.eclipse.org/emf/2002/Ecore">
    <details key="settingDelegates" value="org.eclipse.incquery.querybasedfeature"/>
  </eAnnotations>
  <eClassifiers xsi:type="ecore:EClass" name="CPPNamedElement" abstract="true">
    <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
      <details key="documentation" value="Superclass for all named elements in the C++ domain that contains the syntactically valid C++-style name of the element. The original name is taken from {@link com.ericsson.xtumlrt.oopl.OOPLNameProvider}."/>
    </eAnnotations>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="cppName" ordered="false"
        unique="false" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
        changeable="false" volatile="true" transient="true" derived="true">
      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
        <details key="documentation" value="{&#xD;&#xA;&#x9;CPPNamedElement.ooplNameProvider(cppNamedElement, provider);&#xD;&#xA;&#x9;OOPLExistingNameProvider(provider);&#xD;&#xA;&#x9;OOPLExistingNameProvider.commonNamedElement(provider, element);&#xD;&#xA;&#x9;cppName == eval(toCPPName(element.name));&#xD;&#xA;} or {&#xD;&#xA;&#x9;CPPNamedElement.ooplNameProvider(cppNamedElement, provider);&#xD;&#xA;&#x9;OOPLDerivedName(provider);&#xD;&#xA;&#x9;cppName == eval(toCPPName(provider.name));&#xD;&#xA;}&#xD;&#xA;"/>
      </eAnnotations>
      <eAnnotations source="org.eclipse.incquery.querybasedfeature">
        <details key="patternFQN" value="com.ericsson.xtumlrt.oopl.cppmodel.derived.cppNamedElementCppName"/>
      </eAnnotations>
    </eStructuralFeatures>
    <eStructuralFeatures xsi:type="ecore:EReference" name="ooplNameProvider" lowerBound="1"
        eType="ecore:EClass ../../com.ericsson.xtumlrt.oopl.model/model/oopl.ecore#//OOPLNameProvider"
        containment="true"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="CPPQualifiedNamedElement" abstract="true"
      eSuperTypes="#//CPPNamedElement">
    <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
      <details key="documentation" value="Superclass for all elements in the C++ domain that have fully qualified names. The qualified name of the element is composed of a prefix and its C++ name. The prefix is the qualified name of the container element extended with two colons."/>
    </eAnnotations>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="cppPrefix" ordered="false"
        unique="false" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
        changeable="false" volatile="true" transient="true" derived="true">
      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
        <details key="documentation" value="{&#xD;&#xA;&#x9;CPPQualifiedNamedElement(parent);&#xD;&#xA;&#x9;parent.subElements == cppQualifiedNamedElement;"/>
      </eAnnotations>
      <eAnnotations source="org.eclipse.incquery.querybasedfeature">
        <details key="patternFQN" value="com.ericsson.xtumlrt.oopl.cppmodel.derived.cppQualifiedNamedElementCppPrefix"/>
      </eAnnotations>
    </eStructuralFeatures>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="cppQualifiedName" ordered="false"
        unique="false" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
        changeable="false" volatile="true" transient="true" derived="true">
      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
        <details key="documentation" value="{&#xD;&#xA;&#x9;cppQualifiedName == eval(cppPrefix+cppName);&#xD;&#xA;}&#xD;&#xA;"/>
      </eAnnotations>
      <eAnnotations source="org.eclipse.incquery.querybasedfeature">
        <details key="patternFQN" value="com.ericsson.xtumlrt.oopl.cppmodel.derived.cppQualifiedNamedElementCppQualifiedName"/>
      </eAnnotations>
    </eStructuralFeatures>
    <eStructuralFeatures xsi:type="ecore:EReference" name="subElements" upperBound="-1"
        eType="#//CPPQualifiedNamedElement" containment="true"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="CPPModel" eSuperTypes="#//CPPQualifiedNamedElement">
    <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
      <details key="documentation" value="Representation of a model ({@link org.eclipse.papyrusrt.xtumlrt.common.Model}) in the C++ domain."/>
    </eAnnotations>
    <eStructuralFeatures xsi:type="ecore:EReference" name="commonModel" lowerBound="1"
        eType="ecore:EClass ../../org.eclipse.papyrusrt.xtumlrt.common.model/model/common.ecore#//Model"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="bodyFile" eType="#//CPPBodyFile"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="declarationHeaderFile"
        lowerBound="1" eType="#//CPPHeaderFile"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="definitionHeaderFile" lowerBound="1"
        eType="#//CPPHeaderFile"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="apiHeaderFile" eType="#//CPPHeaderFile"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="headerDir" eType="#//CPPDirectory"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="bodyDir" eType="#//CPPDirectory"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="externalHeaderDir" eType="#//CPPDirectory"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="externalBodySkeletonDir"
        eType="#//CPPDirectory"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="CPPPackage" eSuperTypes="#//CPPQualifiedNamedElement">
    <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
      <details key="documentation" value="Representation of XTUML package ({@link org.eclipse.papyrusrt.xtumlrt.xtuml.XTPackage}) in the C++ domain."/>
    </eAnnotations>
    <eStructuralFeatures xsi:type="ecore:EReference" name="commonPackage" lowerBound="1"
        eType="ecore:EClass ../../org.eclipse.papyrusrt.xtumlrt.common.model/model/common.ecore#//Package"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="bodyFile" eType="#//CPPBodyFile"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="headerFile" eType="#//CPPHeaderFile"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="headerDir" eType="#//CPPDirectory"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="bodyDir" eType="#//CPPDirectory"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="CPPClass" eSuperTypes="#//CPPQualifiedNamedElement ../../com.ericsson.xtumlrt.oopl.model/model/oopl.ecore#//OOPLClass">
    <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
      <details key="documentation" value="Representation of XTUML class ({@link org.eclipse.papyrusrt.xtumlrt.xtuml.XTClass}) In the C++ domain."/>
    </eAnnotations>
    <eStructuralFeatures xsi:type="ecore:EReference" name="headerFile" lowerBound="1"
        eType="#//CPPHeaderFile"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="bodyFile" lowerBound="1"
        eType="#//CPPBodyFile"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="CPPProtocol" eSuperTypes="#//CPPQualifiedNamedElement">
    <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
      <details key="documentation" value="Representation of XTUML protocol ({@link org.eclipse.papyrusrt.xtumlrt.xtuml.XTProtocol}) in the C++ domain."/>
    </eAnnotations>
    <eStructuralFeatures xsi:type="ecore:EReference" name="xtProtocol" lowerBound="1"
        eType="ecore:EClass ../../org.eclipse.papyrusrt.xtumlrt.xtuml.model/model/xtuml.ecore#//XTProtocol"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="headerFile" lowerBound="1"
        eType="#//CPPHeaderFile"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="CPPSourceFile" abstract="true">
    <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
      <details key="documentation" value="Representation of C++ source file (header and body)."/>
    </eAnnotations>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="generationName" ordered="false"
        unique="false" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
        changeable="false" volatile="true" transient="true" derived="true">
      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
        <details key="documentation" value="{&#xD;&#xA;&#x9;CPPClass(class);&#xD;&#xA;&#x9;CPPClass.headerFile(class, cppSourceFile);&#xD;&#xA;&#x9;generationName == eval(class.cppName+&quot;.&quot;+GlobalSettings.cppHeaderFileExtension);&#xD;&#xA;} or {&#xD;&#xA;&#x9;CPPClass(class);&#xD;&#xA;&#x9;CPPClass.bodyFile(class, cppSourceFile);&#xD;&#xA;&#x9;generationName == eval(class.cppName+&quot;.&quot;+GlobalSettings.cppBodyFileExtension);&#xD;&#xA;} or {&#xD;&#xA;&#x9;CPPComponent(component);&#xD;&#xA;&#x9;CPPComponent.mainHeaderFile(component, cppSourceFile);&#xD;&#xA;&#x9;generationName == eval(component.cppName+&quot;_main.&quot;+GlobalSettings.cppHeaderFileExtension);&#xD;&#xA;} or {&#xD;&#xA;&#x9;CPPComponent(component);&#xD;&#xA;&#x9;CPPComponent.declarationHeaderFile(component, cppSourceFile);&#xD;&#xA;&#x9;generationName == eval(component.cppName+&quot;_decl.&quot;+GlobalSettings.cppHeaderFileExtension);&#xD;&#xA;} or {&#xD;&#xA;&#x9;CPPComponent(component);&#xD;&#xA;&#x9;CPPComponent.definitionHeaderFile(component, cppSourceFile);&#xD;&#xA;&#x9;generationName == eval(component.cppName+&quot;_def.&quot;+GlobalSettings.cppHeaderFileExtension);&#xD;&#xA;} or {&#xD;&#xA;&#x9;CPPComponent(component);&#xD;&#xA;&#x9;CPPComponent.mainBodyFile(component, cppSourceFile);&#xD;&#xA;&#x9;generationName == eval(component.cppName+&quot;_main.&quot;+GlobalSettings.cppBodyFileExtension);&#xD;&#xA;} or {&#xD;&#xA;&#x9;CPPModel(model);&#xD;&#xA;&#x9;CPPModel.declarationHeaderFile(model, cppSourceFile);&#xD;&#xA;&#x9;generationName == eval(model.cppName+&quot;_decl.&quot;+GlobalSettings.cppHeaderFileExtension);&#xD;&#xA;} or {&#xD;&#xA;&#x9;CPPModel(model);&#xD;&#xA;&#x9;CPPModel.definitionHeaderFile(model, cppSourceFile);&#xD;&#xA;&#x9;generationName == eval(model.cppName+&quot;_def.&quot;+GlobalSettings.cppHeaderFileExtension);&#xD;&#xA;} or {&#xD;&#xA;&#x9;CPPModel(model);&#xD;&#xA;&#x9;CPPModel.apiHeaderFile(model, cppSourceFile);&#xD;&#xA;&#x9;generationName == eval(model.cppName+&quot;_api.&quot;+GlobalSettings.cppHeaderFileExtension);&#xD;&#xA;} or {&#xD;&#xA;&#x9;CPPPackage(package);&#xD;&#xA;&#x9;CPPPackage.headerFile(package, cppSourceFile);&#xD;&#xA;&#x9;generationName == eval(package.cppName+&quot;.&quot;+GlobalSettings.cppHeaderFileExtension);&#xD;&#xA;} or {&#xD;&#xA;&#x9;CPPPackage(package);&#xD;&#xA;&#x9;CPPPackage.bodyFile(package, cppSourceFile);&#xD;&#xA;&#x9;generationName == eval(package.cppName+&quot;.&quot;+GlobalSettings.cppBodyFileExtension);&#xD;&#xA;} or {&#xD;&#xA;&#x9;CPPPort(port);&#xD;&#xA;&#x9;CPPPort.headerFile(port, cppSourceFile);&#xD;&#xA;&#x9;generationName == eval(port.cppName+&quot;.&quot;+GlobalSettings.cppHeaderFileExtension);&#xD;&#xA;} or {&#xD;&#xA;&#x9;CPPPort(port);&#xD;&#xA;&#x9;CPPPort.externalHeaderFile(port, cppSourceFile);&#xD;&#xA;&#x9;generationName == eval(port.cppName+&quot;_impl.&quot;+GlobalSettings.cppHeaderFileExtension);&#xD;&#xA;} or {&#xD;&#xA;&#x9;CPPPort(port);&#xD;&#xA;&#x9;CPPPort.bodyFile(port, cppSourceFile);&#xD;&#xA;&#x9;generationName == eval(port.cppName+&quot;.&quot;+GlobalSettings.cppBodyFileExtension);&#xD;&#xA;} or {&#xD;&#xA;&#x9;CPPPort(port);&#xD;&#xA;&#x9;CPPPort.externalBodySkeletonFile(port, cppSourceFile);&#xD;&#xA;&#x9;generationName == eval(port.cppName+&quot;_impl.&quot;+GlobalSettings.cppBodyFileExtension+&quot;_skel&quot;);&#xD;&#xA;} or {&#xD;&#xA;&#x9;CPPProtocol(protocol);&#xD;&#xA;&#x9;CPPProtocol.headerFile(protocol, cppSourceFile);&#xD;&#xA;&#x9;generationName == eval(protocol.cppName+&quot;.&quot;+GlobalSettings.cppHeaderFileExtension);&#xD;&#xA;}"/>
      </eAnnotations>
      <eAnnotations source="org.eclipse.incquery.querybasedfeature">
        <details key="patternFQN" value="com.ericsson.xtumlrt.oopl.cppmodel.derived.cppSourceFileGenerationName"/>
      </eAnnotations>
    </eStructuralFeatures>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="generationDirectory" ordered="false"
        unique="false" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
        changeable="false" volatile="true" transient="true" derived="true">
      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
        <details key="documentation" value="{&#xD;&#xA;&#x9;CPPDirectory.files(directory, cppSourceFile);&#xD;&#xA;&#x9;generationDirectory == directory.path;&#xD;&#xA;}"/>
      </eAnnotations>
      <eAnnotations source="org.eclipse.incquery.querybasedfeature">
        <details key="patternFQN" value="com.ericsson.xtumlrt.oopl.cppmodel.derived.cppSourceFileGenerationDirectory"/>
      </eAnnotations>
    </eStructuralFeatures>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="generationPath" ordered="false"
        unique="false" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
        changeable="false" volatile="true" transient="true" derived="true">
      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
        <details key="documentation" value="{&#xD;&#xA;&#x9;generationPath == eval(cppFile.generationDirectory+GlobalSettings.pathSeparator+cppFile.generationName);&#xD;&#xA;}"/>
      </eAnnotations>
      <eAnnotations source="org.eclipse.incquery.querybasedfeature">
        <details key="patternFQN" value="com.ericsson.xtumlrt.oopl.cppmodel.derived.cppSourceFileGenerationPath"/>
      </eAnnotations>
    </eStructuralFeatures>
    <eStructuralFeatures xsi:type="ecore:EReference" name="includedHeaders" upperBound="-1"
        eType="#//CPPHeaderFile"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="externalHeaderInclusion"
        upperBound="-1" eType="#//CPPExternalHeaderInclusion" containment="true"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="CPPHeaderFile" eSuperTypes="#//CPPSourceFile">
    <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
      <details key="documentation" value="C++ header file that contains the path that must appear in the #include directive."/>
    </eAnnotations>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="includeName" ordered="false"
        unique="false" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
        changeable="false" volatile="true" transient="true" derived="true">
      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
        <details key="documentation" value="{&#xD;&#xA;&#x9;CPPClass(class);&#xD;&#xA;&#x9;CPPClass.headerFile(class, cppSourceFile);&#xD;&#xA;&#x9;includeName == eval(class.cppName+&quot;.&quot;+GlobalSettings.cppHeaderFileExtension);&#xD;&#xA;} or {&#xD;&#xA;&#x9;CPPClass(class);&#xD;&#xA;&#x9;CPPClass.bodyFile(class, cppSourceFile);&#xD;&#xA;&#x9;includeName == eval(class.cppName+&quot;.&quot;+GlobalSettings.cppBodyFileExtension);&#xD;&#xA;} or {&#xD;&#xA;&#x9;CPPComponent(component);&#xD;&#xA;&#x9;CPPComponent.mainHeaderFile(component, cppSourceFile);&#xD;&#xA;&#x9;includeName == eval(component.cppName+&quot;_main.&quot;+GlobalSettings.cppHeaderFileExtension);&#xD;&#xA;} or {&#xD;&#xA;&#x9;CPPComponent(component);&#xD;&#xA;&#x9;CPPComponent.declarationHeaderFile(component, cppSourceFile);&#xD;&#xA;&#x9;includeName == eval(component.cppName+&quot;_decl.&quot;+GlobalSettings.cppHeaderFileExtension);&#xD;&#xA;} or {&#xD;&#xA;&#x9;CPPComponent(component);&#xD;&#xA;&#x9;CPPComponent.definitionHeaderFile(component, cppSourceFile);&#xD;&#xA;&#x9;includeName == eval(component.cppName+&quot;_def.&quot;+GlobalSettings.cppHeaderFileExtension);&#xD;&#xA;} or {&#xD;&#xA;&#x9;CPPComponent(component);&#xD;&#xA;&#x9;CPPComponent.mainBodyFile(component, cppSourceFile);&#xD;&#xA;&#x9;includeName == eval(component.cppName+&quot;_main.&quot;+GlobalSettings.cppBodyFileExtension);&#xD;&#xA;} or {&#xD;&#xA;&#x9;CPPModel(model);&#xD;&#xA;&#x9;CPPModel.declarationHeaderFile(model, cppSourceFile);&#xD;&#xA;&#x9;includeName == eval(model.cppName+&quot;_decl.&quot;+GlobalSettings.cppHeaderFileExtension);&#xD;&#xA;} or {&#xD;&#xA;&#x9;CPPModel(model);&#xD;&#xA;&#x9;CPPModel.definitionHeaderFile(model, cppSourceFile);&#xD;&#xA;&#x9;includeName == eval(model.cppName+&quot;_def.&quot;+GlobalSettings.cppHeaderFileExtension);&#xD;&#xA;} or {&#xD;&#xA;&#x9;CPPModel(model);&#xD;&#xA;&#x9;CPPModel.apiHeaderFile(model, cppSourceFile);&#xD;&#xA;&#x9;includeName == eval(model.cppName+&quot;_api.&quot;+GlobalSettings.cppHeaderFileExtension);&#xD;&#xA;} or {&#xD;&#xA;&#x9;CPPPackage(package);&#xD;&#xA;&#x9;CPPPackage.headerFile(package, cppSourceFile);&#xD;&#xA;&#x9;includeName == eval(package.cppName+&quot;.&quot;+GlobalSettings.cppHeaderFileExtension);&#xD;&#xA;} or {&#xD;&#xA;&#x9;CPPPackage(package);&#xD;&#xA;&#x9;CPPPackage.bodyFile(package, cppSourceFile);&#xD;&#xA;&#x9;includeName == eval(package.cppName+&quot;.&quot;+GlobalSettings.cppBodyFileExtension);&#xD;&#xA;} or {&#xD;&#xA;&#x9;CPPPort(port);&#xD;&#xA;&#x9;CPPPort.headerFile(port, cppSourceFile);&#xD;&#xA;&#x9;includeName == eval(port.cppName+&quot;.&quot;+GlobalSettings.cppHeaderFileExtension);&#xD;&#xA;} or {&#xD;&#xA;&#x9;CPPPort(port);&#xD;&#xA;&#x9;CPPPort.externalHeaderFile(port, cppSourceFile);&#xD;&#xA;&#x9;includeName == eval(port.cppName+&quot;_impl.&quot;+GlobalSettings.cppHeaderFileExtension);&#xD;&#xA;} or {&#xD;&#xA;&#x9;CPPPort(port);&#xD;&#xA;&#x9;CPPPort.bodyFile(port, cppSourceFile);&#xD;&#xA;&#x9;includeName == eval(port.cppName+&quot;.&quot;+GlobalSettings.cppBodyFileExtension);&#xD;&#xA;} or {&#xD;&#xA;&#x9;CPPPort(port);&#xD;&#xA;&#x9;CPPPort.externalBodySkeletonFile(port, cppSourceFile);&#xD;&#xA;&#x9;includeName == eval(port.cppName+&quot;_impl.&quot;+GlobalSettings.cppBodyFileExtension+&quot;_skel&quot;);&#xD;&#xA;} or {&#xD;&#xA;&#x9;CPPProtocol(protocol);&#xD;&#xA;&#x9;CPPProtocol.headerFile(protocol, cppSourceFile);&#xD;&#xA;&#x9;includeName == eval(protocol.cppName+&quot;.&quot;+GlobalSettings.cppHeaderFileExtension);&#xD;&#xA;}"/>
      </eAnnotations>
      <eAnnotations source="org.eclipse.incquery.querybasedfeature">
        <details key="patternFQN" value="com.ericsson.xtumlrt.oopl.cppmodel.derived.cppHeaderFileIncludeName"/>
      </eAnnotations>
    </eStructuralFeatures>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="includeDirectory" ordered="false"
        unique="false" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
        changeable="false" volatile="true" transient="true" derived="true">
      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
        <details key="documentation" value="{&#xD;&#xA;&#x9;CPPDirectory.files(directory, cppHeaderFile);&#xD;&#xA;&#x9;includeDirectory==eval(CPPDirectory.path);&#xD;&#xA;}"/>
      </eAnnotations>
      <eAnnotations source="org.eclipse.incquery.querybasedfeature">
        <details key="patternFQN" value="com.ericsson.xtumlrt.oopl.cppmodel.derived.cppHeaderFileIncludeDirectory"/>
      </eAnnotations>
    </eStructuralFeatures>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="includePath" ordered="false"
        unique="false" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
        changeable="false" volatile="true" transient="true" derived="true">
      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
        <details key="documentation" value="{&#xD;&#xA;&#x9;includePath==eval(cppHeaderFile.includeDirectory+GlobalSettings.pathSeparator+cppHeaderFile.includeName);&#xD;&#xA;}&#xD;&#xA;"/>
      </eAnnotations>
      <eAnnotations source="org.eclipse.incquery.querybasedfeature">
        <details key="patternFQN" value="com.ericsson.xtumlrt.oopl.cppmodel.derived.cppHeaderFileIncludePath"/>
      </eAnnotations>
    </eStructuralFeatures>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="CPPBodyFile" eSuperTypes="#//CPPSourceFile">
    <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
      <details key="documentation" value="C++ body file."/>
    </eAnnotations>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="CPPDirectory">
    <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
      <details key="documentation" value="Representation of a file system directory in the C++ domain. Directories contain each other and they have a single root: the target directory for code generation."/>
    </eAnnotations>
    <eStructuralFeatures xsi:type="ecore:EReference" name="subDirectories" upperBound="-1"
        eType="#//CPPDirectory" containment="true"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="files" upperBound="-1"
        eType="#//CPPSourceFile" containment="true"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" ordered="false" unique="false"
        lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
        changeable="false" volatile="true" transient="true" derived="true">
      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
        <details key="documentation" value="{&#xD;&#xA;&#x9;CPPComponent(component);&#xD;&#xA;&#x9;CPPComponent.headerDirectory(component, cppDirectory);&#xD;&#xA;&#x9;generationName == component.cppName;&#xD;&#xA;} or {&#xD;&#xA;&#x9;CPPComponent(component);&#xD;&#xA;&#x9;CPPComponent.bodyDirectory(component, cppDirectory);&#xD;&#xA;&#x9;generationName == component.cppName;&#xD;&#xA;} or {&#xD;&#xA;&#x9;CPPComponent(component);&#xD;&#xA;&#x9;CPPComponent.externalHeaderDirectory(component, cppDirectory);&#xD;&#xA;&#x9;generationName == component.cppName;&#xD;&#xA;} or {&#xD;&#xA;&#x9;CPPComponent(component);&#xD;&#xA;&#x9;CPPComponent.externalBodySkeletonDirectory(component, cppDirectory);&#xD;&#xA;&#x9;generationName == component.cppName;&#xD;&#xA;} or {&#xD;&#xA;&#x9;CPPModel(model);&#xD;&#xA;&#x9;CPPModel.headerDirectory(model, cppDirectory);&#xD;&#xA;&#x9;generationName == eval(GlobalSettings.headerGenerationDirectory+GlobalSettings.pathSeparator+model.cppName);&#xD;&#xA;} or {&#xD;&#xA;&#x9;CPPModel(model);&#xD;&#xA;&#x9;CPPModel.bodyDirectory(model, cppDirectory);&#xD;&#xA;&#x9;generationName == eval(GlobalSettings.bodyGenerationDirectory+GlobalSettings.pathSeparator+model.cppName);&#xD;&#xA;} or {&#xD;&#xA;&#x9;CPPModel(model);&#xD;&#xA;&#x9;CPPModel.externalHeaderDirectory(model, cppDirectory);&#xD;&#xA;&#x9;generationName == eval(GlobalSettings.headerGenerationDirectory+GlobalSettings.pathSeparator+model.cppName);&#xD;&#xA;} or {&#xD;&#xA;&#x9;CPPModel(model);&#xD;&#xA;&#x9;CPPModel.externalBodySkeletonDirectory(model, cppDirectory);&#xD;&#xA;&#x9;generationName == eval(GlobalSettings.bodyGenerationDirectory+GlobalSettings.pathSeparator+model.cppName);&#xD;&#xA;} or {&#xD;&#xA;&#x9;CPPPackage(package);&#xD;&#xA;&#x9;CPPPackage.headerDirectory(package, cppDirectory);&#xD;&#xA;&#x9;generationName == package.cppName;&#xD;&#xA;} or {&#xD;&#xA;&#x9;CPPPackagel(package);&#xD;&#xA;&#x9;CPPPackage.bodyDirectory(package, cppDirectory);&#xD;&#xA;&#x9;generationName == package.cppName;&#xD;&#xA;}"/>
      </eAnnotations>
      <eAnnotations source="org.eclipse.incquery.querybasedfeature">
        <details key="patternFQN" value="com.ericsson.xtumlrt.oopl.cppmodel.derived.cppDirectoryName"/>
      </eAnnotations>
    </eStructuralFeatures>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="parentDirectory" ordered="false"
        unique="false" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
        changeable="false" volatile="true" transient="true" derived="true">
      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
        <details key="documentation" value="{&#xD;&#xA;&#x9;CPPDirectory.subDirectories(parent, cppDirectory);&#xD;&#xA;&#x9;parentDirectory==parent.name;&#xD;&#xA;}&#xD;&#xA;"/>
      </eAnnotations>
      <eAnnotations source="org.eclipse.incquery.querybasedfeature">
        <details key="patternFQN" value="com.ericsson.xtumlrt.oopl.cppmodel.derived.cppDirectoryParentDirectory"/>
      </eAnnotations>
    </eStructuralFeatures>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="path" ordered="false" unique="false"
        lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
        changeable="false" volatile="true" transient="true" derived="true">
      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
        <details key="documentation" value="{&#xD;&#xA;&#x9;cppDirectory.path==eval(cppDirectory.parentDirectory+GlobalSettings.pathSeparator+cppDirectory.name);&#xD;&#xA;}"/>
      </eAnnotations>
      <eAnnotations source="org.eclipse.incquery.querybasedfeature">
        <details key="patternFQN" value="com.ericsson.xtumlrt.oopl.cppmodel.derived.cppDirectoryPath"/>
      </eAnnotations>
    </eStructuralFeatures>
    <eStructuralFeatures xsi:type="ecore:EReference" name="makeRulesFile" eType="#//CPPMakeFile"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="CPPComponent" eSuperTypes="#//CPPQualifiedNamedElement">
    <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
      <details key="documentation" value="Representation of XTUML Component ({@link org.eclipse.papyrusrt.xtumlrt.xtuml.XTComponent}) In the C++ domain."/>
    </eAnnotations>
    <eStructuralFeatures xsi:type="ecore:EReference" name="xtComponent" lowerBound="1"
        eType="ecore:EClass ../../org.eclipse.papyrusrt.xtumlrt.xtuml.model/model/xtuml.ecore#//XTComponent"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="mainHeaderFile" lowerBound="1"
        eType="#//CPPHeaderFile"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="mainBodyFile" lowerBound="1"
        eType="#//CPPBodyFile"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="declarationHeaderFile"
        lowerBound="1" eType="#//CPPHeaderFile"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="definitionHeaderFile" lowerBound="1"
        eType="#//CPPHeaderFile"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="headerDirectory" eType="#//CPPDirectory"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="bodyDirectory" eType="#//CPPDirectory"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="externalHeaderDirectory"
        eType="#//CPPDirectory"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="externalBodySkeletonDirectory"
        eType="#//CPPDirectory"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="CPPExternalHeader">
    <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
      <details key="documentation" value="External C++ header file that must be included into another C++ source file. Such headerfiles contain type and functions that are defined in the handwritten code but are used by the model."/>
    </eAnnotations>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" ordered="false" unique="false"
        lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="CPPExternalHeaderInclusion">
    <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
      <details key="documentation" value="Entity describing a connection between a C++ source file ({@link com.ericsson.xtumlrt.cppmodel.CPPSourceFile}) and an external header ({@link com.ericsson.xtumlrt.cppmodel.CPPExternalHeader}) file. It also contains a comment that should contain the reason for the inclusion (the fully qualified name of the external elements that are declared or defined in the external header file."/>
    </eAnnotations>
    <eStructuralFeatures xsi:type="ecore:EReference" name="externalHeader" lowerBound="1"
        eType="#//CPPExternalHeader"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="comment" ordered="false"
        unique="false" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="CPPRelation" eSuperTypes="#//CPPQualifiedNamedElement ../../com.ericsson.xtumlrt.oopl.model/model/oopl.ecore#//OOPLRelation">
    <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
      <details key="documentation" value="Representation of an XTUML class relation ({@link org.eclipse.papyrusrt.xtumlrt.xtuml.XTRelation}) in the C++ domain."/>
    </eAnnotations>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="CPPOperation" eSuperTypes="#//CPPQualifiedNamedElement">
    <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
      <details key="documentation" value="Representation of a class operation ({@link org.eclipse.papyrusrt.xtumlrt.common.Attribute}) in the C++ domain."/>
    </eAnnotations>
    <eStructuralFeatures xsi:type="ecore:EReference" name="commonOperation" lowerBound="1"
        eType="ecore:EClass ../../org.eclipse.papyrusrt.xtumlrt.common.model/model/common.ecore#//Operation"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="compiledBody" eType="ecore:EClass ../../com.incquerylabs.emdw.snippet.model/model/snippettemplate.ecore#//Snippet"
        containment="true"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="CPPPort" eSuperTypes="#//CPPQualifiedNamedElement">
    <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
      <details key="documentation" value="Representation of XTUML port ({@link org.eclipse.papyrusrt.xtumlrt.xtuml.XTPort}) In the C++ domain."/>
    </eAnnotations>
    <eStructuralFeatures xsi:type="ecore:EReference" name="xtPort" lowerBound="1"
        eType="ecore:EClass ../../org.eclipse.papyrusrt.xtumlrt.xtuml.model/model/xtuml.ecore#//XTPort"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="headerFile" lowerBound="1"
        eType="#//CPPHeaderFile"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="externalHeaderFile" eType="#//CPPHeaderFile"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="bodyFile" lowerBound="1"
        eType="#//CPPBodyFile"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="externalBodySkeletonFile"
        eType="#//CPPBodyFile"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="CPPProtocolOperationDefinition" eSuperTypes="#//CPPQualifiedNamedElement">
    <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
      <details key="documentation" value="Representation of XTUML protocol operation definition ({@link org.eclipse.papyrusrt.xtumlrt.xtuml.XTProtocolOperationDefinition}) in the C++ domain."/>
    </eAnnotations>
    <eStructuralFeatures xsi:type="ecore:EReference" name="xtProtocolOperationDefinition"
        lowerBound="1" eType="ecore:EClass ../../org.eclipse.papyrusrt.xtumlrt.xtuml.model/model/xtuml.ecore#//XTProtocolOperationDefinition"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="CPPSignal" eSuperTypes="#//CPPQualifiedNamedElement">
    <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
      <details key="documentation" value="Representation of a signal ({@link org.eclipse.papyrusrt.xtumlrt.common.Signal}) in the C++ domain."/>
    </eAnnotations>
    <eStructuralFeatures xsi:type="ecore:EReference" name="commonSignal" lowerBound="1"
        eType="ecore:EClass ../../org.eclipse.papyrusrt.xtumlrt.common.model/model/common.ecore#//Signal"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="CPPProtocolOperationImplementation"
      eSuperTypes="#//CPPQualifiedNamedElement">
    <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
      <details key="documentation" value="Representation of XTUML Protocol Operation Implementation ({@link org.eclipse.papyrusrt.xtumlrt.xtuml.XTProtocolOperationImplementation}) In the C++ domain."/>
    </eAnnotations>
    <eStructuralFeatures xsi:type="ecore:EReference" name="xtProtocolOperationImplementation"
        lowerBound="1" eType="ecore:EClass ../../org.eclipse.papyrusrt.xtumlrt.xtuml.model/model/xtuml.ecore#//XTProtocolOperationImplementation"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="CPPClassReference" eSuperTypes="../../com.ericsson.xtumlrt.oopl.model/model/oopl.ecore#//OOPLClassReference #//CPPQualifiedNamedElement">
    <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
      <details key="documentation" value="Pointer type in C++ to store reference to the C++ representation of a model class ({@link com.ericsson.xtumlrt.cppmodel.CPPClass})."/>
    </eAnnotations>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="CPPClassReferenceStorage" eSuperTypes="#//CPPQualifiedNamedElement ../../com.ericsson.xtumlrt.oopl.model/model/oopl.ecore#//OOPLClassReferenceStorage">
    <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
      <details key="documentation" value="C++ specialization of the OOPL class reference storage ({@link com.ericsson.xtumlrt.OOPLClassReferenceStorage})."/>
    </eAnnotations>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="CPPClassRefSimpleCollection" eSuperTypes="#//CPPQualifiedNamedElement ../../com.ericsson.xtumlrt.oopl.model/model/oopl.ecore#//OOPLClassRefSimpleCollection">
    <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
      <details key="documentation" value="Simple (non-associative) collection C++ type to store pointers to the C++ representation of model classes ({@link com.ericsson.xtumlrt.cppmodel.CPPClass})."/>
    </eAnnotations>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="cppContainer" ordered="false"
        unique="false" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
        changeable="false" volatile="true" transient="true" derived="true">
      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
        <details key="documentation" value="{&#xD;&#xA;&#x9;cppClassRefSimpleCollection.kind== ::INDEXED_ARRAY;&#xD;&#xA;&#x9;cppClassRefSimpleCollection.cppContainer==&quot;std::array&quot;;&#xD;&#xA;} or {&#xD;&#xA;&#x9;!CPPFeatures.forwardList;&#xD;&#xA;&#x9;cppClassRefSimpleCollection.kind== ::SIMPLY_LINKED_LIST;&#xD;&#xA;&#x9;cppClassRefSimpleCollection.cppContainer==&quot;std::list&quot;;&#xD;&#xA;} or {&#xD;&#xA;&#x9;CPPFeatures.forwardList;&#xD;&#xA;&#x9;cppClassRefSimpleCollection.kind== ::SIMPLY_LINKED_LIST;&#xD;&#xA;&#x9;cppClassRefSimpleCollection.cppContainer==&quot;std::forward_list&quot;;&#xD;&#xA;} or {&#xD;&#xA;&#x9;cppClassRefSimpleCollection.kind== ::DOUBLY_LINKED_LIST;&#xD;&#xA;&#x9;cppClassRefSimpleCollection.cppContainer==&quot;std::list&quot;;&#xD;&#xA;} or {&#xD;&#xA;&#x9;cppClassRefSimpleCollection.kind== ::DOUBLE_ENDED_QUEUE;&#xD;&#xA;&#x9;cppClassRefSimpleCollection.cppContainer==&quot;std::deque&quot;;&#xD;&#xA;}"/>
      </eAnnotations>
      <eAnnotations source="org.eclipse.incquery.querybasedfeature">
        <details key="patternFQN" value="com.ericsson.xtumlrt.oopl.cppmodel.derived.cppClassRefSimpleCollectionCppContainer"/>
      </eAnnotations>
    </eStructuralFeatures>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="CPPClassRefAssocCollection" eSuperTypes="#//CPPQualifiedNamedElement ../../com.ericsson.xtumlrt.oopl.model/model/oopl.ecore#//OOPLClassRefAssocCollection">
    <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
      <details key="documentation" value="Associative collection C++ type to store pointers to the C++ representation of model classes ({@link com.ericsson.xtumlrt.cppmodel.CPPClass}) indexed by one of the attributes ({@link com.ericsson.xtumlrt.cppmodel.CPPAttribute}) of the class."/>
    </eAnnotations>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="cppContainer" ordered="false"
        unique="false" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
        derived="true">
      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
        <details key="documentation" value="{&#xD;&#xA;&#x9;!CPPFeatures.unorderedAssociativeContainers;&#xD;&#xA;&#x9;cppClassRefAssocCollection.kind== ::UNORDERED_SET;&#xD;&#xA;&#x9;cppClassRefAssocCollection.cppContainer==&quot;std::set&quot;;&#xD;&#xA;} or {&#xD;&#xA;&#x9;CPPFeatures.unorderedAssociativeContainers;&#xD;&#xA;&#x9;cppClassRefAssocCollection.kind== ::UNORDERED_SET;&#xD;&#xA;&#x9;cppClassRefAssocCollection.cppContainer==&quot;std::unordered_set&quot;;&#xD;&#xA;} or {&#xD;&#xA;&#x9;cppClassRefAssocCollection.kind== ::ORDERED_SET;&#xD;&#xA;&#x9;cppClassRefAssocCollection.cppContainer==&quot;std::set&quot;;&#xD;&#xA;} or {&#xD;&#xA;&#x9;!CPPFeatures.unorderedAssociativeContainers;&#xD;&#xA;&#x9;cppClassRefAssocCollection.kind== ::UNORDERED_MULTISET;&#xD;&#xA;&#x9;cppClassRefAssocCollection.cppContainer==&quot;std::multiset&quot;;&#xD;&#xA;} or {&#xD;&#xA;&#x9;CPPFeatures.unorderedAssociativeContainers;&#xD;&#xA;&#x9;cppClassRefAssocCollection.kind== ::UNORDERED_MULTISET;&#xD;&#xA;&#x9;cppClassRefAssocCollection.cppContainer==&quot;std::unordered_multiset&quot;;&#xD;&#xA;} or {&#xD;&#xA;&#x9;cppClassRefAssocCollection.kind== ::ORDERED_MULTISET;&#xD;&#xA;&#x9;cppClassRefAssocCollection.cppContainer==&quot;std::multiset&quot;;&#xD;&#xA;} or {&#xD;&#xA;&#x9;!CPPFeatures.unorderedAssociativeContainers;&#xD;&#xA;&#x9;cppClassRefAssocCollection.kind== ::UNORDERED_MAP;&#xD;&#xA;&#x9;cppClassRefAssocCollection.cppContainer==&quot;std::map&quot;;&#xD;&#xA;} or {&#xD;&#xA;&#x9;CPPFeatures.unorderedAssociativeContainers;&#xD;&#xA;&#x9;cppClassRefAssocCollection.kind== ::UNORDERED_MAP;&#xD;&#xA;&#x9;cppClassRefAssocCollection.cppContainer==&quot;std::unordered_map&quot;;&#xD;&#xA;} or {&#xD;&#xA;&#x9;cppClassRefAssocCollection.kind== ::ORDERED_MAP;&#xD;&#xA;&#x9;cppClassRefAssocCollection.cppContainer==&quot;std::map&quot;;&#xD;&#xA;} or {&#xD;&#xA;&#x9;!CPPFeatures.unorderedAssociativeContainers;&#xD;&#xA;&#x9;cppClassRefAssocCollection.kind== ::UNORDERED_MULTIMAP;&#xD;&#xA;&#x9;cppClassRefAssocCollection.cppContainer==&quot;std::multimap&quot;;&#xD;&#xA;} or {&#xD;&#xA;&#x9;CPPFeatures.unorderedAssociativeContainers;&#xD;&#xA;&#x9;cppClassRefAssocCollection.kind== ::UNORDERED_MULTIMAP;&#xD;&#xA;&#x9;cppClassRefAssocCollection.cppContainer==&quot;std::unordered_multimap&quot;;&#xD;&#xA;} or {&#xD;&#xA;&#x9;cppClassRefAssocCollection.kind== ::ORDERED_MULTIMAP;&#xD;&#xA;&#x9;cppClassRefAssocCollection.cppContainer==&quot;std::multimap&quot;;&#xD;&#xA;}"/>
      </eAnnotations>
    </eStructuralFeatures>
    <eStructuralFeatures xsi:type="ecore:EReference" name="cppAttribute" lowerBound="1"
        eType="#//CPPAttribute" changeable="false" derived="true">
      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
        <details key="documentation" value="{&#xD;&#xA;&#x9;CPPClassRefAssocCollection.cppAttribute.commonAttribute(cppClassRefAssocCollection, attribute);&#xD;&#xA;&#x9;CPPClassRefAssocCollection.key(cppClassRefAssocCollection, attribute);&#xD;&#xA;}"/>
      </eAnnotations>
    </eStructuralFeatures>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="CPPAttribute" eSuperTypes="#//CPPQualifiedNamedElement">
    <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
      <details key="documentation" value="Representation of a class attribute ({@link org.eclipse.papyrusrt.xtumlrt.common.Attribute}) in the C++ domain."/>
    </eAnnotations>
    <eStructuralFeatures xsi:type="ecore:EReference" name="commonAttribute" lowerBound="1"
        eType="ecore:EClass ../../org.eclipse.papyrusrt.xtumlrt.common.model/model/common.ecore#//Attribute"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="unnamedSequenceType" eType="#//CPPSequence"
        containment="true"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="type" lowerBound="1" eType="ecore:EClass ../../com.ericsson.xtumlrt.oopl.model/model/oopl.ecore#//OOPLDataType"
        changeable="false" volatile="true" transient="true" derived="true">
      <eAnnotations source="org.eclipse.incquery.querybasedfeature">
        <details key="patternFQN" value="com.ericsson.xtumlrt.oopl.cppmodel.derived.cppAttributeType"/>
      </eAnnotations>
    </eStructuralFeatures>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="CPPState" eSuperTypes="#//CPPQualifiedNamedElement">
    <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
      <details key="documentation" value="Representation of a state machine state ({@link org.eclipse.papyrusrt.xtumlrt.common.State}) In the C++ domain."/>
    </eAnnotations>
    <eStructuralFeatures xsi:type="ecore:EReference" name="commonState" lowerBound="1"
        eType="ecore:EClass ../../org.eclipse.papyrusrt.xtumlrt.common.model/model/common.ecore#//State"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="compiledEntryBody" eType="ecore:EClass ../../com.incquerylabs.emdw.snippet.model/model/snippettemplate.ecore#//Snippet"
        containment="true"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="compiledExitBody" eType="ecore:EClass ../../com.incquerylabs.emdw.snippet.model/model/snippettemplate.ecore#//Snippet"
        containment="true"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="CPPTransition" eSuperTypes="#//CPPQualifiedNamedElement">
    <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
      <details key="documentation" value="Representation of a state machine transition ({@link org.eclipse.papyrusrt.xtumlrt.common.Transition}) in the C++ domain."/>
    </eAnnotations>
    <eStructuralFeatures xsi:type="ecore:EReference" name="commonTransition" lowerBound="1"
        eType="ecore:EClass ../../org.eclipse.papyrusrt.xtumlrt.common.model/model/common.ecore#//Transition"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="compiledEffectBody" eType="ecore:EClass ../../com.incquerylabs.emdw.snippet.model/model/snippettemplate.ecore#//Snippet"
        containment="true"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="compiledGuardBody" eType="ecore:EClass ../../com.incquerylabs.emdw.snippet.model/model/snippettemplate.ecore#//Snippet"
        containment="true"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="CPPEvent" eSuperTypes="#//CPPQualifiedNamedElement">
    <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
      <details key="documentation" value="Representation of XTUML state machine event ({@link org.eclipse.papyrusrt.xtumlrt.xtuml.XTEvent}) in the C++ domain."/>
    </eAnnotations>
    <eStructuralFeatures xsi:type="ecore:EReference" name="xtEvent" lowerBound="1"
        eType="ecore:EClass ../../org.eclipse.papyrusrt.xtumlrt.xtuml.model/model/xtuml.ecore#//XTEvent"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="CPPFormalParameter" eSuperTypes="#//CPPQualifiedNamedElement">
    <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
      <details key="documentation" value="Representation of a formal parameter ({@link org.eclipse.papyrusrt.xtumlrt.common.Parameter}) in the C++ domain. Passing mode is derived from the direction: for IN parameters the mode is BY_VALUE for simple and BY_CONSTANT_REFERENCE for complex types. For OUT and IN_OUT parameters the mode is BY_REFERENCE."/>
    </eAnnotations>
    <eStructuralFeatures xsi:type="ecore:EReference" name="commonParameter" lowerBound="1"
        eType="ecore:EClass ../../org.eclipse.papyrusrt.xtumlrt.common.model/model/common.ecore#//Parameter"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="passingMode" ordered="false"
        unique="false" lowerBound="1" eType="#//CPPParameterPassingKind" defaultValueLiteral="BY_VALUE"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="unnamedSequenceType" eType="#//CPPSequence"
        containment="true">
      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
        <details key="documentation" value="This reference shall be used only for containing a CPPSequence."/>
      </eAnnotations>
    </eStructuralFeatures>
    <eStructuralFeatures xsi:type="ecore:EReference" name="type" lowerBound="1" eType="ecore:EClass ../../com.ericsson.xtumlrt.oopl.model/model/oopl.ecore#//OOPLDataType"
        changeable="false" volatile="true" transient="true" derived="true">
      <eAnnotations source="org.eclipse.incquery.querybasedfeature">
        <details key="patternFQN" value="com.ericsson.xtumlrt.oopl.cppmodel.derived.cppFormalParameterType"/>
      </eAnnotations>
    </eStructuralFeatures>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EEnum" name="CPPParameterPassingKind">
    <eLiterals name="BY_VALUE"/>
    <eLiterals name="BY_REFERENCE" value="1"/>
    <eLiterals name="BY_CONSTANT_REFERENCE" value="2"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="CPPReturnValue" eSuperTypes="#//CPPQualifiedNamedElement">
    <eStructuralFeatures xsi:type="ecore:EReference" name="type" lowerBound="1" eType="ecore:EClass ../../com.ericsson.xtumlrt.oopl.model/model/oopl.ecore#//OOPLDataType"
        changeable="false" volatile="true" transient="true" derived="true">
      <eAnnotations source="org.eclipse.incquery.querybasedfeature">
        <details key="patternFQN" value="com.ericsson.xtumlrt.oopl.cppmodel.derived.cppReturnValueType"/>
      </eAnnotations>
    </eStructuralFeatures>
    <eStructuralFeatures xsi:type="ecore:EReference" name="unnamedSequenceType" eType="#//CPPSequence"
        containment="true">
      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
        <details key="documentation" value="This reference shall be used only for containing a CPPSequence."/>
      </eAnnotations>
    </eStructuralFeatures>
    <eStructuralFeatures xsi:type="ecore:EReference" name="commonTypedMultiplicityElement"
        lowerBound="1" eType="ecore:EClass ../../org.eclipse.papyrusrt.xtumlrt.common.model/model/common.ecore#//TypedMultiplicityElement"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="CPPExternalLibrary">
    <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
      <details key="documentation" value="Artificial root for all {@link com.ericsson.xtumlrt.cppmodel.CPPExternalHeader} elements."/>
    </eAnnotations>
    <eStructuralFeatures xsi:type="ecore:EReference" name="externalHeader" upperBound="-1"
        eType="#//CPPExternalHeader" containment="true"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="CPPBasicType" eSuperTypes="../../com.ericsson.xtumlrt.oopl.model/model/oopl.ecore#//OOPLBasicType #//CPPQualifiedNamedElement">
    <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
      <details key="documentation" value="C++ type corresponding to UML primitive types. Not necessarily primitive type in C++ as well (see strings)."/>
    </eAnnotations>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="cppSpecifier" ordered="false"
        unique="false" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="CPPSequence" eSuperTypes="../../com.ericsson.xtumlrt.oopl.model/model/oopl.ecore#//OOPLSequence">
    <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
      <details key="documentation" value="Sequence type in C++ depending on the orderedness and uniqueness of the sequence: vector, set or multiset."/>
    </eAnnotations>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="cppContainer" ordered="false"
        unique="false" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
        changeable="false" volatile="true" transient="true" derived="true">
      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
        <details key="documentation" value="// without unordered collections, sorted and unordered sequences are mapped to the same type&#xD;&#xA;{&#xD;&#xA;&#x9;!CPPFeatures.unorderedAssociativeContainers;&#xD;&#xA;&#x9;cppSequence.orderedness== ::SORTED or ::UNORDERED;;&#xD;&#xA;&#x9;cppSequence.uniqueness== ::NON_UNIQUE;&#xD;&#xA;&#x9;cppClassRefSimpleCollection.cppContainer==&quot;std::multiset&quot;;&#xD;&#xA;} or {&#xD;&#xA;&#x9;!CPPFeatures.unorderedAssociativeContainers;&#xD;&#xA;&#x9;cppSequence.orderedness== ::SORTED or ::UNORDERED;;&#xD;&#xA;&#x9;cppSequence.uniqueness== ::UNIQUE;&#xD;&#xA;&#x9;cppClassRefSimpleCollection.cppContainer==&quot;std::set&quot;;&#xD;&#xA;} or&#xD;&#xA;// with unordered collections, sorted and unordered sequences are mapped to differen types&#xD;&#xA; {&#xD;&#xA;&#x9;CPPFeatures.unorderedAssociativeContainers;&#xD;&#xA;&#x9;cppSequence.orderedness== ::SORTED;&#xD;&#xA;&#x9;cppSequence.uniqueness== ::NON_UNIQUE;&#xD;&#xA;&#x9;cppClassRefSimpleCollection.cppContainer==&quot;std::multiset&quot;;&#xD;&#xA;} or {&#xD;&#xA;&#x9;CPPFeatures.unorderedAssociativeContainers;&#xD;&#xA;&#x9;cppSequence.orderedness== ::SORTED;&#xD;&#xA;&#x9;cppSequence.uniqueness== ::UNIQUE;&#xD;&#xA;&#x9;cppClassRefSimpleCollection.cppContainer==&quot;std::set&quot;;&#xD;&#xA;} or {&#xD;&#xA;&#x9;CPPFeatures.unorderedAssociativeContainers;&#xD;&#xA;&#x9;cppSequence.orderedness== ::UNORDERED;&#xD;&#xA;&#x9;cppSequence.uniqueness== ::NON_UNIQUE;&#xD;&#xA;&#x9;cppClassRefSimpleCollection.cppContainer==&quot;std::unordered_multiset&quot;;&#xD;&#xA;} or {&#xD;&#xA;&#x9;CPPFeatures.unorderedAssociativeContainers;&#xD;&#xA;&#x9;cppSequence.orderedness== ::UNORDERED;&#xD;&#xA;&#x9;cppSequence.uniqueness== ::UNIQUE;&#xD;&#xA;&#x9;cppClassRefSimpleCollection.cppContainer==&quot;std::unordered_set&quot;;&#xD;&#xA;} or {&#xD;&#xA;&#x9;cppSequence.orderedness== ::ORDERED;&#xD;&#xA;&#x9;cppClassRefSimpleCollection.cppContainer==&quot;std::vector&quot;;&#xD;&#xA;}&#xD;&#xA;"/>
      </eAnnotations>
      <eAnnotations source="org.eclipse.incquery.querybasedfeature">
        <details key="patternFQN" value="com.ericsson.xtumlrt.oopl.cppmodel.derived.cppSequenceCppContainer"/>
      </eAnnotations>
    </eStructuralFeatures>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="CPPEnumType" eSuperTypes="../../com.ericsson.xtumlrt.oopl.model/model/oopl.ecore#//OOPLEnumType #//CPPQualifiedNamedElement">
    <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
      <details key="documentation" value="Enumeration type in C++."/>
    </eAnnotations>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="CPPEnumerator" eSuperTypes="../../com.ericsson.xtumlrt.oopl.model/model/oopl.ecore#//OOPLEnumerator #//CPPQualifiedNamedElement">
    <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
      <details key="documentation" value="Enumerator (enumeration literal) in C++."/>
    </eAnnotations>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="cppValue" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
        derived="true">
      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
        <details key="documentation" value="!Source missing in common metamodel."/>
      </eAnnotations>
    </eStructuralFeatures>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="CPPStructType" eSuperTypes="../../com.ericsson.xtumlrt.oopl.model/model/oopl.ecore#//OOPLStructType #//CPPQualifiedNamedElement">
    <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
      <details key="documentation" value="Structure type (C-style) in C++."/>
    </eAnnotations>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="CPPStructMember" eSuperTypes="../../com.ericsson.xtumlrt.oopl.model/model/oopl.ecore#//OOPLStructMember #//CPPQualifiedNamedElement">
    <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
      <details key="documentation" value="Structure member in C++."/>
    </eAnnotations>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="CPPUserDefinedType" eSuperTypes="../../com.ericsson.xtumlrt.oopl.model/model/oopl.ecore#//OOPLUserDefinedType #//CPPQualifiedNamedElement">
    <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
      <details key="documentation" value="User defined type (typedef type) in C++."/>
    </eAnnotations>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="CPPMakeFile" eSuperTypes="#//CPPSourceFile"/>
  <eClassifiers xsi:type="ecore:EClass" name="CPPExternalBridge" eSuperTypes="#//CPPQualifiedNamedElement">
    <eStructuralFeatures xsi:type="ecore:EReference" name="headerFile" lowerBound="1"
        eType="#//CPPHeaderFile"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="bodyFile" lowerBound="1"
        eType="#//CPPBodyFile"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="cppExternalNamespace" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="xtClass" lowerBound="1"
        eType="ecore:EClass ../../org.eclipse.papyrusrt.xtumlrt.xtuml.model/model/xtuml.ecore#//XTClass"/>
  </eClassifiers>
</ecore:EPackage>

{"directed":true,"nodes":[{"nsPrefix":"cpp","nsURI":"http://www.ericsson.com/xtumlrt/oopl/cpp","name":"cppmodel","id":0,"eClass":"EPackage"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"CPPNamedElement","instanceClass":null,"abstract":true,"id":1,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"CPPQualifiedNamedElement","instanceClass":null,"abstract":true,"id":2,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"CPPModel","instanceClass":null,"abstract":false,"id":3,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"CPPPackage","instanceClass":null,"abstract":false,"id":4,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"CPPClass","instanceClass":null,"abstract":false,"id":5,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"CPPProtocol","instanceClass":null,"abstract":false,"id":6,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"CPPSourceFile","instanceClass":null,"abstract":true,"id":7,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"CPPHeaderFile","instanceClass":null,"abstract":false,"id":8,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"CPPBodyFile","instanceClass":null,"abstract":false,"id":9,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"CPPDirectory","instanceClass":null,"abstract":false,"id":10,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"CPPComponent","instanceClass":null,"abstract":false,"id":11,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"CPPExternalHeader","instanceClass":null,"abstract":false,"id":12,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"CPPExternalHeaderInclusion","instanceClass":null,"abstract":false,"id":13,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"CPPRelation","instanceClass":null,"abstract":false,"id":14,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"CPPOperation","instanceClass":null,"abstract":false,"id":15,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"CPPPort","instanceClass":null,"abstract":false,"id":16,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"CPPProtocolOperationDefinition","instanceClass":null,"abstract":false,"id":17,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"CPPSignal","instanceClass":null,"abstract":false,"id":18,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"CPPProtocolOperationImplementation","instanceClass":null,"abstract":false,"id":19,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"CPPClassReference","instanceClass":null,"abstract":false,"id":20,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"CPPClassReferenceStorage","instanceClass":null,"abstract":false,"id":21,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"CPPClassRefSimpleCollection","instanceClass":null,"abstract":false,"id":22,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"CPPClassRefAssocCollection","instanceClass":null,"abstract":false,"id":23,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"CPPAttribute","instanceClass":null,"abstract":false,"id":24,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"CPPState","instanceClass":null,"abstract":false,"id":25,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"CPPTransition","instanceClass":null,"abstract":false,"id":26,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"CPPEvent","instanceClass":null,"abstract":false,"id":27,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"CPPFormalParameter","instanceClass":null,"abstract":false,"id":28,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"instanceClassName":null,"name":"CPPParameterPassingKind","instanceClass":null,"id":29,"serializable":true,"eClass":"EEnum"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"CPPReturnValue","instanceClass":null,"abstract":false,"id":30,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"CPPExternalLibrary","instanceClass":null,"abstract":false,"id":31,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"CPPBasicType","instanceClass":null,"abstract":false,"id":32,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"CPPSequence","instanceClass":null,"abstract":false,"id":33,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"CPPEnumType","instanceClass":null,"abstract":false,"id":34,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"CPPEnumerator","instanceClass":null,"abstract":false,"id":35,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"CPPStructType","instanceClass":null,"abstract":false,"id":36,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"CPPStructMember","instanceClass":null,"abstract":false,"id":37,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"CPPUserDefinedType","instanceClass":null,"abstract":false,"id":38,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"CPPMakeFile","instanceClass":null,"abstract":false,"id":39,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"CPPExternalBridge","instanceClass":null,"abstract":false,"id":40,"interface":false,"eClass":"EClass"},{"ordered":false,"upperBound":1,"defaultValue":null,"volatile":true,"many":false,"required":true,"eClass":"EAttribute","defaultValueLiteral":null,"unsettable":false,"transient":true,"unique":false,"name":"cppName","changeable":false,"lowerBound":1,"iD":false,"id":41,"derived":true},{"container":false,"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":true,"eClass":"EReference","defaultValueLiteral":null,"containment":true,"unsettable":false,"transient":false,"unique":true,"name":"ooplNameProvider","changeable":true,"resolveProxies":true,"lowerBound":1,"id":42,"derived":false},{"id":43,"eClass":"EGenericType"},{"id":44,"eClass":"EGenericType"},{"ordered":false,"upperBound":1,"defaultValue":null,"volatile":true,"many":false,"required":true,"eClass":"EAttribute","defaultValueLiteral":null,"unsettable":false,"transient":true,"unique":false,"name":"cppPrefix","changeable":false,"lowerBound":1,"iD":false,"id":45,"derived":true},{"ordered":false,"upperBound":1,"defaultValue":null,"volatile":true,"many":false,"required":true,"eClass":"EAttribute","defaultValueLiteral":null,"unsettable":false,"transient":true,"unique":false,"name":"cppQualifiedName","changeable":false,"lowerBound":1,"iD":false,"id":46,"derived":true},{"container":false,"ordered":true,"upperBound":-1,"defaultValue":null,"volatile":false,"many":true,"required":false,"eClass":"EReference","defaultValueLiteral":null,"containment":true,"unsettable":false,"transient":false,"unique":true,"name":"subElements","changeable":true,"resolveProxies":true,"lowerBound":0,"id":47,"derived":false},{"id":48,"eClass":"EGenericType"},{"id":49,"eClass":"EGenericType"},{"id":50,"eClass":"EGenericType"},{"id":51,"eClass":"EGenericType"},{"container":false,"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":true,"eClass":"EReference","defaultValueLiteral":null,"containment":false,"unsettable":false,"transient":false,"unique":true,"name":"commonModel","changeable":true,"resolveProxies":true,"lowerBound":1,"id":52,"derived":false},{"container":false,"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":false,"eClass":"EReference","defaultValueLiteral":null,"containment":false,"unsettable":false,"transient":false,"unique":true,"name":"bodyFile","changeable":true,"resolveProxies":true,"lowerBound":0,"id":53,"derived":false},{"container":false,"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":true,"eClass":"EReference","defaultValueLiteral":null,"containment":false,"unsettable":false,"transient":false,"unique":true,"name":"declarationHeaderFile","changeable":true,"resolveProxies":true,"lowerBound":1,"id":54,"derived":false},{"container":false,"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":true,"eClass":"EReference","defaultValueLiteral":null,"containment":false,"unsettable":false,"transient":false,"unique":true,"name":"definitionHeaderFile","changeable":true,"resolveProxies":true,"lowerBound":1,"id":55,"derived":false},{"container":false,"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":false,"eClass":"EReference","defaultValueLiteral":null,"containment":false,"unsettable":false,"transient":false,"unique":true,"name":"apiHeaderFile","changeable":true,"resolveProxies":true,"lowerBound":0,"id":56,"derived":false},{"container":false,"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":false,"eClass":"EReference","defaultValueLiteral":null,"containment":false,"unsettable":false,"transient":false,"unique":true,"name":"headerDir","changeable":true,"resolveProxies":true,"lowerBound":0,"id":57,"derived":false},{"container":false,"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":false,"eClass":"EReference","defaultValueLiteral":null,"containment":false,"unsettable":false,"transient":false,"unique":true,"name":"bodyDir","changeable":true,"resolveProxies":true,"lowerBound":0,"id":58,"derived":false},{"container":false,"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":false,"eClass":"EReference","defaultValueLiteral":null,"containment":false,"unsettable":false,"transient":false,"unique":true,"name":"externalHeaderDir","changeable":true,"resolveProxies":true,"lowerBound":0,"id":59,"derived":false},{"container":false,"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":false,"eClass":"EReference","defaultValueLiteral":null,"containment":false,"unsettable":false,"transient":false,"unique":true,"name":"externalBodySkeletonDir","changeable":true,"resolveProxies":true,"lowerBound":0,"id":60,"derived":false},{"id":61,"eClass":"EGenericType"},{"id":62,"eClass":"EGenericType"},{"id":63,"eClass":"EGenericType"},{"id":64,"eClass":"EGenericType"},{"id":65,"eClass":"EGenericType"},{"id":66,"eClass":"EGenericType"},{"id":67,"eClass":"EGenericType"},{"id":68,"eClass":"EGenericType"},{"id":69,"eClass":"EGenericType"},{"id":70,"eClass":"EGenericType"},{"container":false,"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":true,"eClass":"EReference","defaultValueLiteral":null,"containment":false,"unsettable":false,"transient":false,"unique":true,"name":"commonPackage","changeable":true,"resolveProxies":true,"lowerBound":1,"id":71,"derived":false},{"container":false,"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":false,"eClass":"EReference","defaultValueLiteral":null,"containment":false,"unsettable":false,"transient":false,"unique":true,"name":"bodyFile","changeable":true,"resolveProxies":true,"lowerBound":0,"id":72,"derived":false},{"container":false,"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":false,"eClass":"EReference","defaultValueLiteral":null,"containment":false,"unsettable":false,"transient":false,"unique":true,"name":"headerFile","changeable":true,"resolveProxies":true,"lowerBound":0,"id":73,"derived":false},{"container":false,"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":false,"eClass":"EReference","defaultValueLiteral":null,"containment":false,"unsettable":false,"transient":false,"unique":true,"name":"headerDir","changeable":true,"resolveProxies":true,"lowerBound":0,"id":74,"derived":false},{"container":false,"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":false,"eClass":"EReference","defaultValueLiteral":null,"containment":false,"unsettable":false,"transient":false,"unique":true,"name":"bodyDir","changeable":true,"resolveProxies":true,"lowerBound":0,"id":75,"derived":false},{"id":76,"eClass":"EGenericType"},{"id":77,"eClass":"EGenericType"},{"id":78,"eClass":"EGenericType"},{"id":79,"eClass":"EGenericType"},{"id":80,"eClass":"EGenericType"},{"id":81,"eClass":"EGenericType"},{"container":false,"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":true,"eClass":"EReference","defaultValueLiteral":null,"containment":false,"unsettable":false,"transient":false,"unique":true,"name":"headerFile","changeable":true,"resolveProxies":true,"lowerBound":1,"id":82,"derived":false},{"container":false,"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":true,"eClass":"EReference","defaultValueLiteral":null,"containment":false,"unsettable":false,"transient":false,"unique":true,"name":"bodyFile","changeable":true,"resolveProxies":true,"lowerBound":1,"id":83,"derived":false},{"id":84,"eClass":"EGenericType"},{"id":85,"eClass":"EGenericType"},{"id":86,"eClass":"EGenericType"},{"id":87,"eClass":"EGenericType"},{"container":false,"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":true,"eClass":"EReference","defaultValueLiteral":null,"containment":false,"unsettable":false,"transient":false,"unique":true,"name":"xtProtocol","changeable":true,"resolveProxies":true,"lowerBound":1,"id":88,"derived":false},{"container":false,"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":true,"eClass":"EReference","defaultValueLiteral":null,"containment":false,"unsettable":false,"transient":false,"unique":true,"name":"headerFile","changeable":true,"resolveProxies":true,"lowerBound":1,"id":89,"derived":false},{"id":90,"eClass":"EGenericType"},{"id":91,"eClass":"EGenericType"},{"id":92,"eClass":"EGenericType"},{"ordered":false,"upperBound":1,"defaultValue":null,"volatile":true,"many":false,"required":true,"eClass":"EAttribute","defaultValueLiteral":null,"unsettable":false,"transient":true,"unique":false,"name":"generationName","changeable":false,"lowerBound":1,"iD":false,"id":93,"derived":true},{"ordered":false,"upperBound":1,"defaultValue":null,"volatile":true,"many":false,"required":true,"eClass":"EAttribute","defaultValueLiteral":null,"unsettable":false,"transient":true,"unique":false,"name":"generationDirectory","changeable":false,"lowerBound":1,"iD":false,"id":94,"derived":true},{"ordered":false,"upperBound":1,"defaultValue":null,"volatile":true,"many":false,"required":true,"eClass":"EAttribute","defaultValueLiteral":null,"unsettable":false,"transient":true,"unique":false,"name":"generationPath","changeable":false,"lowerBound":1,"iD":false,"id":95,"derived":true},{"container":false,"ordered":true,"upperBound":-1,"defaultValue":null,"volatile":false,"many":true,"required":false,"eClass":"EReference","defaultValueLiteral":null,"containment":false,"unsettable":false,"transient":false,"unique":true,"name":"includedHeaders","changeable":true,"resolveProxies":true,"lowerBound":0,"id":96,"derived":false},{"container":false,"ordered":true,"upperBound":-1,"defaultValue":null,"volatile":false,"many":true,"required":false,"eClass":"EReference","defaultValueLiteral":null,"containment":true,"unsettable":false,"transient":false,"unique":true,"name":"externalHeaderInclusion","changeable":true,"resolveProxies":true,"lowerBound":0,"id":97,"derived":false},{"id":98,"eClass":"EGenericType"},{"id":99,"eClass":"EGenericType"},{"id":100,"eClass":"EGenericType"},{"id":101,"eClass":"EGenericType"},{"id":102,"eClass":"EGenericType"},{"ordered":false,"upperBound":1,"defaultValue":null,"volatile":true,"many":false,"required":true,"eClass":"EAttribute","defaultValueLiteral":null,"unsettable":false,"transient":true,"unique":false,"name":"includeName","changeable":false,"lowerBound":1,"iD":false,"id":103,"derived":true},{"ordered":false,"upperBound":1,"defaultValue":null,"volatile":true,"many":false,"required":true,"eClass":"EAttribute","defaultValueLiteral":null,"unsettable":false,"transient":true,"unique":false,"name":"includeDirectory","changeable":false,"lowerBound":1,"iD":false,"id":104,"derived":true},{"ordered":false,"upperBound":1,"defaultValue":null,"volatile":true,"many":false,"required":true,"eClass":"EAttribute","defaultValueLiteral":null,"unsettable":false,"transient":true,"unique":false,"name":"includePath","changeable":false,"lowerBound":1,"iD":false,"id":105,"derived":true},{"id":106,"eClass":"EGenericType"},{"id":107,"eClass":"EGenericType"},{"id":108,"eClass":"EGenericType"},{"id":109,"eClass":"EGenericType"},{"id":110,"eClass":"EGenericType"},{"container":false,"ordered":true,"upperBound":-1,"defaultValue":null,"volatile":false,"many":true,"required":false,"eClass":"EReference","defaultValueLiteral":null,"containment":true,"unsettable":false,"transient":false,"unique":true,"name":"subDirectories","changeable":true,"resolveProxies":true,"lowerBound":0,"id":111,"derived":false},{"container":false,"ordered":true,"upperBound":-1,"defaultValue":null,"volatile":false,"many":true,"required":false,"eClass":"EReference","defaultValueLiteral":null,"containment":true,"unsettable":false,"transient":false,"unique":true,"name":"files","changeable":true,"resolveProxies":true,"lowerBound":0,"id":112,"derived":false},{"ordered":false,"upperBound":1,"defaultValue":null,"volatile":true,"many":false,"required":true,"eClass":"EAttribute","defaultValueLiteral":null,"unsettable":false,"transient":true,"unique":false,"name":"name","changeable":false,"lowerBound":1,"iD":false,"id":113,"derived":true},{"ordered":false,"upperBound":1,"defaultValue":null,"volatile":true,"many":false,"required":true,"eClass":"EAttribute","defaultValueLiteral":null,"unsettable":false,"transient":true,"unique":false,"name":"parentDirectory","changeable":false,"lowerBound":1,"iD":false,"id":114,"derived":true},{"ordered":false,"upperBound":1,"defaultValue":null,"volatile":true,"many":false,"required":true,"eClass":"EAttribute","defaultValueLiteral":null,"unsettable":false,"transient":true,"unique":false,"name":"path","changeable":false,"lowerBound":1,"iD":false,"id":115,"derived":true},{"container":false,"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":false,"eClass":"EReference","defaultValueLiteral":null,"containment":false,"unsettable":false,"transient":false,"unique":true,"name":"makeRulesFile","changeable":true,"resolveProxies":true,"lowerBound":0,"id":116,"derived":false},{"id":117,"eClass":"EGenericType"},{"id":118,"eClass":"EGenericType"},{"id":119,"eClass":"EGenericType"},{"id":120,"eClass":"EGenericType"},{"id":121,"eClass":"EGenericType"},{"id":122,"eClass":"EGenericType"},{"container":false,"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":true,"eClass":"EReference","defaultValueLiteral":null,"containment":false,"unsettable":false,"transient":false,"unique":true,"name":"xtComponent","changeable":true,"resolveProxies":true,"lowerBound":1,"id":123,"derived":false},{"container":false,"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":true,"eClass":"EReference","defaultValueLiteral":null,"containment":false,"unsettable":false,"transient":false,"unique":true,"name":"mainHeaderFile","changeable":true,"resolveProxies":true,"lowerBound":1,"id":124,"derived":false},{"container":false,"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":true,"eClass":"EReference","defaultValueLiteral":null,"containment":false,"unsettable":false,"transient":false,"unique":true,"name":"mainBodyFile","changeable":true,"resolveProxies":true,"lowerBound":1,"id":125,"derived":false},{"container":false,"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":true,"eClass":"EReference","defaultValueLiteral":null,"containment":false,"unsettable":false,"transient":false,"unique":true,"name":"declarationHeaderFile","changeable":true,"resolveProxies":true,"lowerBound":1,"id":126,"derived":false},{"container":false,"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":true,"eClass":"EReference","defaultValueLiteral":null,"containment":false,"unsettable":false,"transient":false,"unique":true,"name":"definitionHeaderFile","changeable":true,"resolveProxies":true,"lowerBound":1,"id":127,"derived":false},{"container":false,"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":false,"eClass":"EReference","defaultValueLiteral":null,"containment":false,"unsettable":false,"transient":false,"unique":true,"name":"headerDirectory","changeable":true,"resolveProxies":true,"lowerBound":0,"id":128,"derived":false},{"container":false,"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":false,"eClass":"EReference","defaultValueLiteral":null,"containment":false,"unsettable":false,"transient":false,"unique":true,"name":"bodyDirectory","changeable":true,"resolveProxies":true,"lowerBound":0,"id":129,"derived":false},{"container":false,"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":false,"eClass":"EReference","defaultValueLiteral":null,"containment":false,"unsettable":false,"transient":false,"unique":true,"name":"externalHeaderDirectory","changeable":true,"resolveProxies":true,"lowerBound":0,"id":130,"derived":false},{"container":false,"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":false,"eClass":"EReference","defaultValueLiteral":null,"containment":false,"unsettable":false,"transient":false,"unique":true,"name":"externalBodySkeletonDirectory","changeable":true,"resolveProxies":true,"lowerBound":0,"id":131,"derived":false},{"id":132,"eClass":"EGenericType"},{"id":133,"eClass":"EGenericType"},{"id":134,"eClass":"EGenericType"},{"id":135,"eClass":"EGenericType"},{"id":136,"eClass":"EGenericType"},{"id":137,"eClass":"EGenericType"},{"id":138,"eClass":"EGenericType"},{"id":139,"eClass":"EGenericType"},{"id":140,"eClass":"EGenericType"},{"id":141,"eClass":"EGenericType"},{"ordered":false,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":true,"eClass":"EAttribute","defaultValueLiteral":null,"unsettable":false,"transient":false,"unique":false,"name":"name","changeable":true,"lowerBound":1,"iD":false,"id":142,"derived":false},{"id":143,"eClass":"EGenericType"},{"container":false,"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":true,"eClass":"EReference","defaultValueLiteral":null,"containment":false,"unsettable":false,"transient":false,"unique":true,"name":"externalHeader","changeable":true,"resolveProxies":true,"lowerBound":1,"id":144,"derived":false},{"ordered":false,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":true,"eClass":"EAttribute","defaultValueLiteral":null,"unsettable":false,"transient":false,"unique":false,"name":"comment","changeable":true,"lowerBound":1,"iD":false,"id":145,"derived":false},{"id":146,"eClass":"EGenericType"},{"id":147,"eClass":"EGenericType"},{"id":148,"eClass":"EGenericType"},{"id":149,"eClass":"EGenericType"},{"container":false,"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":true,"eClass":"EReference","defaultValueLiteral":null,"containment":false,"unsettable":false,"transient":false,"unique":true,"name":"commonOperation","changeable":true,"resolveProxies":true,"lowerBound":1,"id":150,"derived":false},{"container":false,"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":false,"eClass":"EReference","defaultValueLiteral":null,"containment":true,"unsettable":false,"transient":false,"unique":true,"name":"compiledBody","changeable":true,"resolveProxies":true,"lowerBound":0,"id":151,"derived":false},{"id":152,"eClass":"EGenericType"},{"id":153,"eClass":"EGenericType"},{"id":154,"eClass":"EGenericType"},{"container":false,"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":true,"eClass":"EReference","defaultValueLiteral":null,"containment":false,"unsettable":false,"transient":false,"unique":true,"name":"xtPort","changeable":true,"resolveProxies":true,"lowerBound":1,"id":155,"derived":false},{"container":false,"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":true,"eClass":"EReference","defaultValueLiteral":null,"containment":false,"unsettable":false,"transient":false,"unique":true,"name":"headerFile","changeable":true,"resolveProxies":true,"lowerBound":1,"id":156,"derived":false},{"container":false,"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":false,"eClass":"EReference","defaultValueLiteral":null,"containment":false,"unsettable":false,"transient":false,"unique":true,"name":"externalHeaderFile","changeable":true,"resolveProxies":true,"lowerBound":0,"id":157,"derived":false},{"container":false,"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":true,"eClass":"EReference","defaultValueLiteral":null,"containment":false,"unsettable":false,"transient":false,"unique":true,"name":"bodyFile","changeable":true,"resolveProxies":true,"lowerBound":1,"id":158,"derived":false},{"container":false,"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":false,"eClass":"EReference","defaultValueLiteral":null,"containment":false,"unsettable":false,"transient":false,"unique":true,"name":"externalBodySkeletonFile","changeable":true,"resolveProxies":true,"lowerBound":0,"id":159,"derived":false},{"id":160,"eClass":"EGenericType"},{"id":161,"eClass":"EGenericType"},{"id":162,"eClass":"EGenericType"},{"id":163,"eClass":"EGenericType"},{"id":164,"eClass":"EGenericType"},{"id":165,"eClass":"EGenericType"},{"container":false,"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":true,"eClass":"EReference","defaultValueLiteral":null,"containment":false,"unsettable":false,"transient":false,"unique":true,"name":"xtProtocolOperationDefinition","changeable":true,"resolveProxies":true,"lowerBound":1,"id":166,"derived":false},{"id":167,"eClass":"EGenericType"},{"id":168,"eClass":"EGenericType"},{"container":false,"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":true,"eClass":"EReference","defaultValueLiteral":null,"containment":false,"unsettable":false,"transient":false,"unique":true,"name":"commonSignal","changeable":true,"resolveProxies":true,"lowerBound":1,"id":169,"derived":false},{"id":170,"eClass":"EGenericType"},{"id":171,"eClass":"EGenericType"},{"container":false,"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":true,"eClass":"EReference","defaultValueLiteral":null,"containment":false,"unsettable":false,"transient":false,"unique":true,"name":"xtProtocolOperationImplementation","changeable":true,"resolveProxies":true,"lowerBound":1,"id":172,"derived":false},{"id":173,"eClass":"EGenericType"},{"id":174,"eClass":"EGenericType"},{"id":175,"eClass":"EGenericType"},{"id":176,"eClass":"EGenericType"},{"id":177,"eClass":"EGenericType"},{"id":178,"eClass":"EGenericType"},{"ordered":false,"upperBound":1,"defaultValue":null,"volatile":true,"many":false,"required":true,"eClass":"EAttribute","defaultValueLiteral":null,"unsettable":false,"transient":true,"unique":false,"name":"cppContainer","changeable":false,"lowerBound":1,"iD":false,"id":179,"derived":true},{"id":180,"eClass":"EGenericType"},{"id":181,"eClass":"EGenericType"},{"id":182,"eClass":"EGenericType"},{"ordered":false,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":true,"eClass":"EAttribute","defaultValueLiteral":null,"unsettable":false,"transient":false,"unique":false,"name":"cppContainer","changeable":true,"lowerBound":1,"iD":false,"id":183,"derived":true},{"container":false,"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":true,"eClass":"EReference","defaultValueLiteral":null,"containment":false,"unsettable":false,"transient":false,"unique":true,"name":"cppAttribute","changeable":false,"resolveProxies":true,"lowerBound":1,"id":184,"derived":true},{"id":185,"eClass":"EGenericType"},{"id":186,"eClass":"EGenericType"},{"id":187,"eClass":"EGenericType"},{"id":188,"eClass":"EGenericType"},{"container":false,"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":true,"eClass":"EReference","defaultValueLiteral":null,"containment":false,"unsettable":false,"transient":false,"unique":true,"name":"commonAttribute","changeable":true,"resolveProxies":true,"lowerBound":1,"id":189,"derived":false},{"container":false,"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":false,"eClass":"EReference","defaultValueLiteral":null,"containment":true,"unsettable":false,"transient":false,"unique":true,"name":"unnamedSequenceType","changeable":true,"resolveProxies":true,"lowerBound":0,"id":190,"derived":false},{"container":false,"ordered":true,"upperBound":1,"defaultValue":null,"volatile":true,"many":false,"required":true,"eClass":"EReference","defaultValueLiteral":null,"containment":false,"unsettable":false,"transient":true,"unique":true,"name":"type","changeable":false,"resolveProxies":true,"lowerBound":1,"id":191,"derived":true},{"id":192,"eClass":"EGenericType"},{"id":193,"eClass":"EGenericType"},{"id":194,"eClass":"EGenericType"},{"id":195,"eClass":"EGenericType"},{"container":false,"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":true,"eClass":"EReference","defaultValueLiteral":null,"containment":false,"unsettable":false,"transient":false,"unique":true,"name":"commonState","changeable":true,"resolveProxies":true,"lowerBound":1,"id":196,"derived":false},{"container":false,"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":false,"eClass":"EReference","defaultValueLiteral":null,"containment":true,"unsettable":false,"transient":false,"unique":true,"name":"compiledEntryBody","changeable":true,"resolveProxies":true,"lowerBound":0,"id":197,"derived":false},{"container":false,"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":false,"eClass":"EReference","defaultValueLiteral":null,"containment":true,"unsettable":false,"transient":false,"unique":true,"name":"compiledExitBody","changeable":true,"resolveProxies":true,"lowerBound":0,"id":198,"derived":false},{"id":199,"eClass":"EGenericType"},{"id":200,"eClass":"EGenericType"},{"id":201,"eClass":"EGenericType"},{"id":202,"eClass":"EGenericType"},{"container":false,"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":true,"eClass":"EReference","defaultValueLiteral":null,"containment":false,"unsettable":false,"transient":false,"unique":true,"name":"commonTransition","changeable":true,"resolveProxies":true,"lowerBound":1,"id":203,"derived":false},{"container":false,"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":false,"eClass":"EReference","defaultValueLiteral":null,"containment":true,"unsettable":false,"transient":false,"unique":true,"name":"compiledEffectBody","changeable":true,"resolveProxies":true,"lowerBound":0,"id":204,"derived":false},{"container":false,"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":false,"eClass":"EReference","defaultValueLiteral":null,"containment":true,"unsettable":false,"transient":false,"unique":true,"name":"compiledGuardBody","changeable":true,"resolveProxies":true,"lowerBound":0,"id":205,"derived":false},{"id":206,"eClass":"EGenericType"},{"id":207,"eClass":"EGenericType"},{"id":208,"eClass":"EGenericType"},{"id":209,"eClass":"EGenericType"},{"container":false,"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":true,"eClass":"EReference","defaultValueLiteral":null,"containment":false,"unsettable":false,"transient":false,"unique":true,"name":"xtEvent","changeable":true,"resolveProxies":true,"lowerBound":1,"id":210,"derived":false},{"id":211,"eClass":"EGenericType"},{"id":212,"eClass":"EGenericType"},{"container":false,"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":true,"eClass":"EReference","defaultValueLiteral":null,"containment":false,"unsettable":false,"transient":false,"unique":true,"name":"commonParameter","changeable":true,"resolveProxies":true,"lowerBound":1,"id":213,"derived":false},{"ordered":false,"upperBound":1,"volatile":false,"many":false,"required":true,"eClass":"EAttribute","defaultValueLiteral":"BY_VALUE","unsettable":false,"transient":false,"unique":false,"name":"passingMode","changeable":true,"lowerBound":1,"iD":false,"id":214,"derived":false},{"container":false,"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":false,"eClass":"EReference","defaultValueLiteral":null,"containment":true,"unsettable":false,"transient":false,"unique":true,"name":"unnamedSequenceType","changeable":true,"resolveProxies":true,"lowerBound":0,"id":215,"derived":false},{"container":false,"ordered":true,"upperBound":1,"defaultValue":null,"volatile":true,"many":false,"required":true,"eClass":"EReference","defaultValueLiteral":null,"containment":false,"unsettable":false,"transient":true,"unique":true,"name":"type","changeable":false,"resolveProxies":true,"lowerBound":1,"id":216,"derived":true},{"id":217,"eClass":"EGenericType"},{"id":218,"eClass":"EGenericType"},{"id":219,"eClass":"EGenericType"},{"id":220,"eClass":"EGenericType"},{"id":221,"eClass":"EGenericType"},{"name":"BY_VALUE","id":222,"value":0,"literal":"BY_VALUE","eClass":"EEnumLiteral"},{"name":"BY_REFERENCE","id":223,"value":1,"literal":"BY_REFERENCE","eClass":"EEnumLiteral"},{"name":"BY_CONSTANT_REFERENCE","id":224,"value":2,"literal":"BY_CONSTANT_REFERENCE","eClass":"EEnumLiteral"},{"container":false,"ordered":true,"upperBound":1,"defaultValue":null,"volatile":true,"many":false,"required":true,"eClass":"EReference","defaultValueLiteral":null,"containment":false,"unsettable":false,"transient":true,"unique":true,"name":"type","changeable":false,"resolveProxies":true,"lowerBound":1,"id":225,"derived":true},{"container":false,"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":false,"eClass":"EReference","defaultValueLiteral":null,"containment":true,"unsettable":false,"transient":false,"unique":true,"name":"unnamedSequenceType","changeable":true,"resolveProxies":true,"lowerBound":0,"id":226,"derived":false},{"container":false,"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":true,"eClass":"EReference","defaultValueLiteral":null,"containment":false,"unsettable":false,"transient":false,"unique":true,"name":"commonTypedMultiplicityElement","changeable":true,"resolveProxies":true,"lowerBound":1,"id":227,"derived":false},{"id":228,"eClass":"EGenericType"},{"id":229,"eClass":"EGenericType"},{"id":230,"eClass":"EGenericType"},{"id":231,"eClass":"EGenericType"},{"container":false,"ordered":true,"upperBound":-1,"defaultValue":null,"volatile":false,"many":true,"required":false,"eClass":"EReference","defaultValueLiteral":null,"containment":true,"unsettable":false,"transient":false,"unique":true,"name":"externalHeader","changeable":true,"resolveProxies":true,"lowerBound":0,"id":232,"derived":false},{"id":233,"eClass":"EGenericType"},{"ordered":false,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":true,"eClass":"EAttribute","defaultValueLiteral":null,"unsettable":false,"transient":false,"unique":false,"name":"cppSpecifier","changeable":true,"lowerBound":1,"iD":false,"id":234,"derived":false},{"id":235,"eClass":"EGenericType"},{"id":236,"eClass":"EGenericType"},{"id":237,"eClass":"EGenericType"},{"ordered":false,"upperBound":1,"defaultValue":null,"volatile":true,"many":false,"required":true,"eClass":"EAttribute","defaultValueLiteral":null,"unsettable":false,"transient":true,"unique":false,"name":"cppContainer","changeable":false,"lowerBound":1,"iD":false,"id":238,"derived":true},{"id":239,"eClass":"EGenericType"},{"id":240,"eClass":"EGenericType"},{"id":241,"eClass":"EGenericType"},{"id":242,"eClass":"EGenericType"},{"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":false,"eClass":"EAttribute","defaultValueLiteral":null,"unsettable":false,"transient":false,"unique":true,"name":"cppValue","changeable":true,"lowerBound":0,"iD":false,"id":243,"derived":true},{"id":244,"eClass":"EGenericType"},{"id":245,"eClass":"EGenericType"},{"id":246,"eClass":"EGenericType"},{"id":247,"eClass":"EGenericType"},{"id":248,"eClass":"EGenericType"},{"id":249,"eClass":"EGenericType"},{"id":250,"eClass":"EGenericType"},{"id":251,"eClass":"EGenericType"},{"id":252,"eClass":"EGenericType"},{"id":253,"eClass":"EGenericType"},{"container":false,"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":true,"eClass":"EReference","defaultValueLiteral":null,"containment":false,"unsettable":false,"transient":false,"unique":true,"name":"headerFile","changeable":true,"resolveProxies":true,"lowerBound":1,"id":254,"derived":false},{"container":false,"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":true,"eClass":"EReference","defaultValueLiteral":null,"containment":false,"unsettable":false,"transient":false,"unique":true,"name":"bodyFile","changeable":true,"resolveProxies":true,"lowerBound":1,"id":255,"derived":false},{"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":false,"eClass":"EAttribute","defaultValueLiteral":null,"unsettable":false,"transient":false,"unique":true,"name":"cppExternalNamespace","changeable":true,"lowerBound":0,"iD":false,"id":256,"derived":false},{"container":false,"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":true,"eClass":"EReference","defaultValueLiteral":null,"containment":false,"unsettable":false,"transient":false,"unique":true,"name":"xtClass","changeable":true,"resolveProxies":true,"lowerBound":1,"id":257,"derived":false},{"id":258,"eClass":"EGenericType"},{"id":259,"eClass":"EGenericType"},{"id":260,"eClass":"EGenericType"},{"id":261,"eClass":"EGenericType"},{"id":262,"eClass":"EGenericType"}],"links":[{"source":0,"target":1},{"source":0,"target":2},{"source":0,"target":3},{"source":0,"target":4},{"source":0,"target":5},{"source":0,"target":6},{"source":0,"target":7},{"source":0,"target":8},{"source":0,"target":9},{"source":0,"target":10},{"source":0,"target":11},{"source":0,"target":12},{"source":0,"target":13},{"source":0,"target":14},{"source":0,"target":15},{"source":0,"target":16},{"source":0,"target":17},{"source":0,"target":18},{"source":0,"target":19},{"source":0,"target":20},{"source":0,"target":21},{"source":0,"target":22},{"source":0,"target":23},{"source":0,"target":24},{"source":0,"target":25},{"source":0,"target":26},{"source":0,"target":27},{"source":0,"target":28},{"source":0,"target":29},{"source":0,"target":30},{"source":0,"target":31},{"source":0,"target":32},{"source":0,"target":33},{"source":0,"target":34},{"source":0,"target":35},{"source":0,"target":36},{"source":0,"target":37},{"source":0,"target":38},{"source":0,"target":39},{"source":0,"target":40},{"source":1,"target":0},{"source":1,"target":41},{"source":1,"target":42},{"source":41,"target":43},{"source":41,"target":1},{"source":42,"target":44},{"source":42,"target":1},{"source":2,"target":0},{"source":2,"target":1},{"source":2,"target":45},{"source":2,"target":46},{"source":2,"target":47},{"source":2,"target":48},{"source":45,"target":49},{"source":45,"target":2},{"source":46,"target":50},{"source":46,"target":2},{"source":47,"target":2},{"source":47,"target":51},{"source":47,"target":2},{"source":51,"target":2},{"source":48,"target":1},{"source":3,"target":0},{"source":3,"target":2},{"source":3,"target":52},{"source":3,"target":53},{"source":3,"target":54},{"source":3,"target":55},{"source":3,"target":56},{"source":3,"target":57},{"source":3,"target":58},{"source":3,"target":59},{"source":3,"target":60},{"source":3,"target":61},{"source":52,"target":62},{"source":52,"target":3},{"source":53,"target":9},{"source":53,"target":63},{"source":53,"target":3},{"source":63,"target":9},{"source":54,"target":8},{"source":54,"target":64},{"source":54,"target":3},{"source":64,"target":8},{"source":55,"target":8},{"source":55,"target":65},{"source":55,"target":3},{"source":65,"target":8},{"source":56,"target":8},{"source":56,"target":66},{"source":56,"target":3},{"source":66,"target":8},{"source":57,"target":10},{"source":57,"target":67},{"source":57,"target":3},{"source":67,"target":10},{"source":58,"target":10},{"source":58,"target":68},{"source":58,"target":3},{"source":68,"target":10},{"source":59,"target":10},{"source":59,"target":69},{"source":59,"target":3},{"source":69,"target":10},{"source":60,"target":10},{"source":60,"target":70},{"source":60,"target":3},{"source":70,"target":10},{"source":61,"target":2},{"source":4,"target":0},{"source":4,"target":2},{"source":4,"target":71},{"source":4,"target":72},{"source":4,"target":73},{"source":4,"target":74},{"source":4,"target":75},{"source":4,"target":76},{"source":71,"target":77},{"source":71,"target":4},{"source":72,"target":9},{"source":72,"target":78},{"source":72,"target":4},{"source":78,"target":9},{"source":73,"target":8},{"source":73,"target":79},{"source":73,"target":4},{"source":79,"target":8},{"source":74,"target":10},{"source":74,"target":80},{"source":74,"target":4},{"source":80,"target":10},{"source":75,"target":10},{"source":75,"target":81},{"source":75,"target":4},{"source":81,"target":10},{"source":76,"target":2},{"source":5,"target":0},{"source":5,"target":2},{"source":5,"target":82},{"source":5,"target":83},{"source":5,"target":84},{"source":5,"target":85},{"source":82,"target":8},{"source":82,"target":86},{"source":82,"target":5},{"source":86,"target":8},{"source":83,"target":9},{"source":83,"target":87},{"source":83,"target":5},{"source":87,"target":9},{"source":84,"target":2},{"source":6,"target":0},{"source":6,"target":2},{"source":6,"target":88},{"source":6,"target":89},{"source":6,"target":90},{"source":88,"target":91},{"source":88,"target":6},{"source":89,"target":8},{"source":89,"target":92},{"source":89,"target":6},{"source":92,"target":8},{"source":90,"target":2},{"source":7,"target":0},{"source":7,"target":93},{"source":7,"target":94},{"source":7,"target":95},{"source":7,"target":96},{"source":7,"target":97},{"source":93,"target":98},{"source":93,"target":7},{"source":94,"target":99},{"source":94,"target":7},{"source":95,"target":100},{"source":95,"target":7},{"source":96,"target":8},{"source":96,"target":101},{"source":96,"target":7},{"source":101,"target":8},{"source":97,"target":13},{"source":97,"target":102},{"source":97,"target":7},{"source":102,"target":13},{"source":8,"target":0},{"source":8,"target":7},{"source":8,"target":103},{"source":8,"target":104},{"source":8,"target":105},{"source":8,"target":106},{"source":103,"target":107},{"source":103,"target":8},{"source":104,"target":108},{"source":104,"target":8},{"source":105,"target":109},{"source":105,"target":8},{"source":106,"target":7},{"source":9,"target":0},{"source":9,"target":7},{"source":9,"target":110},{"source":110,"target":7},{"source":10,"target":0},{"source":10,"target":111},{"source":10,"target":112},{"source":10,"target":113},{"source":10,"target":114},{"source":10,"target":115},{"source":10,"target":116},{"source":111,"target":10},{"source":111,"target":117},{"source":111,"target":10},{"source":117,"target":10},{"source":112,"target":7},{"source":112,"target":118},{"source":112,"target":10},{"source":118,"target":7},{"source":113,"target":119},{"source":113,"target":10},{"source":114,"target":120},{"source":114,"target":10},{"source":115,"target":121},{"source":115,"target":10},{"source":116,"target":39},{"source":116,"target":122},{"source":116,"target":10},{"source":122,"target":39},{"source":11,"target":0},{"source":11,"target":2},{"source":11,"target":123},{"source":11,"target":124},{"source":11,"target":125},{"source":11,"target":126},{"source":11,"target":127},{"source":11,"target":128},{"source":11,"target":129},{"source":11,"target":130},{"source":11,"target":131},{"source":11,"target":132},{"source":123,"target":133},{"source":123,"target":11},{"source":124,"target":8},{"source":124,"target":134},{"source":124,"target":11},{"source":134,"target":8},{"source":125,"target":9},{"source":125,"target":135},{"source":125,"target":11},{"source":135,"target":9},{"source":126,"target":8},{"source":126,"target":136},{"source":126,"target":11},{"source":136,"target":8},{"source":127,"target":8},{"source":127,"target":137},{"source":127,"target":11},{"source":137,"target":8},{"source":128,"target":10},{"source":128,"target":138},{"source":128,"target":11},{"source":138,"target":10},{"source":129,"target":10},{"source":129,"target":139},{"source":129,"target":11},{"source":139,"target":10},{"source":130,"target":10},{"source":130,"target":140},{"source":130,"target":11},{"source":140,"target":10},{"source":131,"target":10},{"source":131,"target":141},{"source":131,"target":11},{"source":141,"target":10},{"source":132,"target":2},{"source":12,"target":0},{"source":12,"target":142},{"source":142,"target":143},{"source":142,"target":12},{"source":13,"target":0},{"source":13,"target":144},{"source":13,"target":145},{"source":144,"target":12},{"source":144,"target":146},{"source":144,"target":13},{"source":146,"target":12},{"source":145,"target":147},{"source":145,"target":13},{"source":14,"target":0},{"source":14,"target":2},{"source":14,"target":148},{"source":14,"target":149},{"source":148,"target":2},{"source":15,"target":0},{"source":15,"target":2},{"source":15,"target":150},{"source":15,"target":151},{"source":15,"target":152},{"source":150,"target":153},{"source":150,"target":15},{"source":151,"target":154},{"source":151,"target":15},{"source":152,"target":2},{"source":16,"target":0},{"source":16,"target":2},{"source":16,"target":155},{"source":16,"target":156},{"source":16,"target":157},{"source":16,"target":158},{"source":16,"target":159},{"source":16,"target":160},{"source":155,"target":161},{"source":155,"target":16},{"source":156,"target":8},{"source":156,"target":162},{"source":156,"target":16},{"source":162,"target":8},{"source":157,"target":8},{"source":157,"target":163},{"source":157,"target":16},{"source":163,"target":8},{"source":158,"target":9},{"source":158,"target":164},{"source":158,"target":16},{"source":164,"target":9},{"source":159,"target":9},{"source":159,"target":165},{"source":159,"target":16},{"source":165,"target":9},{"source":160,"target":2},{"source":17,"target":0},{"source":17,"target":2},{"source":17,"target":166},{"source":17,"target":167},{"source":166,"target":168},{"source":166,"target":17},{"source":167,"target":2},{"source":18,"target":0},{"source":18,"target":2},{"source":18,"target":169},{"source":18,"target":170},{"source":169,"target":171},{"source":169,"target":18},{"source":170,"target":2},{"source":19,"target":0},{"source":19,"target":2},{"source":19,"target":172},{"source":19,"target":173},{"source":172,"target":174},{"source":172,"target":19},{"source":173,"target":2},{"source":20,"target":0},{"source":20,"target":2},{"source":20,"target":175},{"source":20,"target":176},{"source":176,"target":2},{"source":21,"target":0},{"source":21,"target":2},{"source":21,"target":177},{"source":21,"target":178},{"source":177,"target":2},{"source":22,"target":0},{"source":22,"target":2},{"source":22,"target":179},{"source":22,"target":180},{"source":22,"target":181},{"source":179,"target":182},{"source":179,"target":22},{"source":180,"target":2},{"source":23,"target":0},{"source":23,"target":2},{"source":23,"target":183},{"source":23,"target":184},{"source":23,"target":185},{"source":23,"target":186},{"source":183,"target":187},{"source":183,"target":23},{"source":184,"target":24},{"source":184,"target":188},{"source":184,"target":23},{"source":188,"target":24},{"source":185,"target":2},{"source":24,"target":0},{"source":24,"target":2},{"source":24,"target":189},{"source":24,"target":190},{"source":24,"target":191},{"source":24,"target":192},{"source":189,"target":193},{"source":189,"target":24},{"source":190,"target":33},{"source":190,"target":194},{"source":190,"target":24},{"source":194,"target":33},{"source":191,"target":195},{"source":191,"target":24},{"source":192,"target":2},{"source":25,"target":0},{"source":25,"target":2},{"source":25,"target":196},{"source":25,"target":197},{"source":25,"target":198},{"source":25,"target":199},{"source":196,"target":200},{"source":196,"target":25},{"source":197,"target":201},{"source":197,"target":25},{"source":198,"target":202},{"source":198,"target":25},{"source":199,"target":2},{"source":26,"target":0},{"source":26,"target":2},{"source":26,"target":203},{"source":26,"target":204},{"source":26,"target":205},{"source":26,"target":206},{"source":203,"target":207},{"source":203,"target":26},{"source":204,"target":208},{"source":204,"target":26},{"source":205,"target":209},{"source":205,"target":26},{"source":206,"target":2},{"source":27,"target":0},{"source":27,"target":2},{"source":27,"target":210},{"source":27,"target":211},{"source":210,"target":212},{"source":210,"target":27},{"source":211,"target":2},{"source":28,"target":0},{"source":28,"target":2},{"source":28,"target":213},{"source":28,"target":214},{"source":28,"target":215},{"source":28,"target":216},{"source":28,"target":217},{"source":213,"target":218},{"source":213,"target":28},{"source":214,"target":29},{"source":214,"target":219},{"source":214,"target":28},{"source":219,"target":29},{"source":215,"target":33},{"source":215,"target":220},{"source":215,"target":28},{"source":220,"target":33},{"source":216,"target":221},{"source":216,"target":28},{"source":217,"target":2},{"source":29,"target":0},{"source":29,"target":222},{"source":29,"target":223},{"source":29,"target":224},{"source":222,"target":29},{"source":223,"target":29},{"source":224,"target":29},{"source":30,"target":0},{"source":30,"target":2},{"source":30,"target":225},{"source":30,"target":226},{"source":30,"target":227},{"source":30,"target":228},{"source":225,"target":229},{"source":225,"target":30},{"source":226,"target":33},{"source":226,"target":230},{"source":226,"target":30},{"source":230,"target":33},{"source":227,"target":231},{"source":227,"target":30},{"source":228,"target":2},{"source":31,"target":0},{"source":31,"target":232},{"source":232,"target":12},{"source":232,"target":233},{"source":232,"target":31},{"source":233,"target":12},{"source":32,"target":0},{"source":32,"target":2},{"source":32,"target":234},{"source":32,"target":235},{"source":32,"target":236},{"source":234,"target":237},{"source":234,"target":32},{"source":236,"target":2},{"source":33,"target":0},{"source":33,"target":238},{"source":33,"target":239},{"source":238,"target":240},{"source":238,"target":33},{"source":34,"target":0},{"source":34,"target":2},{"source":34,"target":241},{"source":34,"target":242},{"source":242,"target":2},{"source":35,"target":0},{"source":35,"target":2},{"source":35,"target":243},{"source":35,"target":244},{"source":35,"target":245},{"source":243,"target":246},{"source":243,"target":35},{"source":245,"target":2},{"source":36,"target":0},{"source":36,"target":2},{"source":36,"target":247},{"source":36,"target":248},{"source":248,"target":2},{"source":37,"target":0},{"source":37,"target":2},{"source":37,"target":249},{"source":37,"target":250},{"source":250,"target":2},{"source":38,"target":0},{"source":38,"target":2},{"source":38,"target":251},{"source":38,"target":252},{"source":252,"target":2},{"source":39,"target":0},{"source":39,"target":7},{"source":39,"target":253},{"source":253,"target":7},{"source":40,"target":0},{"source":40,"target":2},{"source":40,"target":254},{"source":40,"target":255},{"source":40,"target":256},{"source":40,"target":257},{"source":40,"target":258},{"source":254,"target":8},{"source":254,"target":259},{"source":254,"target":40},{"source":259,"target":8},{"source":255,"target":9},{"source":255,"target":260},{"source":255,"target":40},{"source":260,"target":9},{"source":256,"target":261},{"source":256,"target":40},{"source":257,"target":262},{"source":257,"target":40},{"source":258,"target":2}],"multigraph":true}