terms
Declarations
declaration
containerDeclaration
TermsDeclaration
id
name
containerDeclarations
Sort
multi
containerNamedSort
containerVariableDecl
containerProductSort
containerType
containerAll
containerEmpty
containerPartition
containerList
containerEmptyList
containerMakeList
MultisetSort
basis
Term
sort
containerOperator
containerNamedOperator
containerHLMarking
containerCondition
containerHLAnnotation
containerPartitionElement
Operator
subterm
output
input
VariableDecl
sort
containerNamedOperator
Variable
variableDecl
BuiltInSort
ProductSort
elementSort
BuiltInConstant
MultisetOperator
Tuple
SortDecl
BuiltInOperator
NamedSort
sortdef
UserSort
declaration
OperatorDecl
NamedOperator
def
parameters
UserOperator
declaration
<?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="terms" nsURI="http:///hlpn.terms.ecore" nsPrefix="terms">
  <eClassifiers xsi:type="ecore:EClass" name="Declarations">
    <eAnnotations source="http://www.pnml.org/models/ToPNML">
      <details key="tag" value="declarations"/>
      <details key="kind" value="son"/>
    </eAnnotations>
    <eAnnotations source="http://www.pnml.org/models/HLAPI"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="declaration" ordered="false"
        upperBound="-1" eType="#//TermsDeclaration" containment="true" eOpposite="#//TermsDeclaration/containerDeclarations">
      <eAnnotations source="http://www.pnml.org/models/ToPNML">
        <details key="kind" value="follow"/>
      </eAnnotations>
    </eStructuralFeatures>
    <eStructuralFeatures xsi:type="ecore:EReference" name="containerDeclaration" eType="ecore:EClass hlcorestructure.ecore#//Declaration"
        eOpposite="hlcorestructure.ecore#//Declaration/structure"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="TermsDeclaration" abstract="true">
    <eAnnotations source="http://www.pnml.org/models/HLAPI"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" ordered="false" lowerBound="1"
        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString" iD="true">
      <eAnnotations source="http://www.pnml.org/models/ToPNML">
        <details key="tag" value="id"/>
        <details key="kind" value="id"/>
      </eAnnotations>
    </eStructuralFeatures>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" ordered="false" lowerBound="1"
        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString">
      <eAnnotations source="http://www.pnml.org/models/ToPNML">
        <details key="tag" value="name"/>
        <details key="kind" value="attribute"/>
      </eAnnotations>
    </eStructuralFeatures>
    <eStructuralFeatures xsi:type="ecore:EReference" name="containerDeclarations"
        eType="#//Declarations" eOpposite="#//Declarations/declaration"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="Sort" abstract="true">
    <eAnnotations source="http://www.pnml.org/models/HLAPI"/>
    <eAnnotations source="http://www.pnml.org/models/methods/SORT">
      <details key="signature" value="boolean equalSorts(Sort sort)"/>
      <details key="body" value=""/>
      <details key="documentation" value="/**&#xA;  * Returns true if this sort and argument sort are actually semantically the&#xA;  * same sort, even in two different objects. &#xA;  * &lt;p>Ex: two FiniteEnumerations F1 = {1,4,6} and F2 = {1,4,6} or&#xA;  * two Integers I1 and I2.&lt;/p> &#xA;  * &lt;p>&lt;strong>Note&lt;/strong> : the implementation available for&#xA;  * MultisetSort is not complete. In particular, we just test equality&#xA;  * of the references or of the enclosing NamedSorts (if any). &#xA;  * You should consider overriding it in that case.&#xA;  * &#xA;  * @return true if so.&#xA;  * @param sort&#xA;  *            the sort to which we compare this one.&#xA;  */"/>
    </eAnnotations>
    <eStructuralFeatures xsi:type="ecore:EReference" name="multi" ordered="false"
        eType="#//MultisetSort" eOpposite="#//MultisetSort/basis"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="containerNamedSort" eType="#//NamedSort"
        eOpposite="#//NamedSort/sortdef"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="containerVariableDecl"
        eType="#//VariableDecl" eOpposite="#//VariableDecl/sort"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="containerProductSort" eType="#//ProductSort"
        eOpposite="#//ProductSort/elementSort"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="containerType" eType="ecore:EClass hlcorestructure.ecore#//Type"
        eOpposite="hlcorestructure.ecore#//Type/structure"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="containerAll" eType="ecore:EClass multisets.ecore#//All"
        eOpposite="multisets.ecore#//All/refsort"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="containerEmpty" eType="ecore:EClass multisets.ecore#//Empty"
        eOpposite="multisets.ecore#//Empty/refsort"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="containerPartition" ordered="false"
        eType="ecore:EClass partitions.ecore#//Partition" eOpposite="partitions.ecore#//Partition/def"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="containerList" eType="ecore:EClass lists.ecore#//HLPNList"
        eOpposite="lists.ecore#//HLPNList/basis"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="containerEmptyList" eType="ecore:EClass lists.ecore#//EmptyList"
        eOpposite="lists.ecore#//EmptyList/refsort"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="containerMakeList" eType="ecore:EClass lists.ecore#//MakeList"
        eOpposite="lists.ecore#//MakeList/refsort"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="MultisetSort" eSuperTypes="#//Sort">
    <eAnnotations source="http://www.pnml.org/models/ToPNML">
      <details key="tag" value="multisetsort"/>
      <details key="kind" value="son"/>
    </eAnnotations>
    <eAnnotations source="http://www.pnml.org/models/HLAPI"/>
    <eAnnotations source="http://www.pnml.org/models/methods/SORT">
      <details key="signature" value="boolean equalSorts(Sort sort)"/>
      <details key="body" value="boolean isEqual = false;&#xA;&#x9;&#x9;if (this.eClass().getName().equalsIgnoreCase(sort.eClass().getName())) {&#xA;&#x9;&#x9;  &#x9;if (this.getContainerNamedSort() != null&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&amp;&amp; sort.getContainerNamedSort() != null) {&#xA;&#x9;&#x9;&#x9;&#x9;// we test them if they have been explicitly named.&#xA;&#x9;&#x9;&#x9;&#x9;isEqual = this.getContainerNamedSort().getName()&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;.equalsIgnoreCase(&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;sort.getContainerNamedSort().getName());&#xA;&#x9;&#x9;&#x9;} else {&#xA;&#x9;&#x9;&#x9; throw new UnsupportedOperationException(&quot;Cannot determine if these two multisets are equal.&quot;&#xA;&#x9;&#x9;&#x9; + &quot;You should override this method.&quot;);&#xA;&#x9;&#x9;&#x9;}&#xA;&#x9;&#x9;}&#xA;&#x9;&#x9;return isEqual;"/>
      <details key="documentation" value="/**&#xD; * Returns true if this sort and argument sort are actually &#xD; * semantically the same sort, even in two different objects.&#xD; * Ex: two FiniteEnumerations or two Integers.&#xD; * Note : there is no implementation available for MultisetSort yet.&#xD; * @return true if so. &#xD; * @param sort the sort to which we compare this one. &#xD; */"/>
    </eAnnotations>
    <eStructuralFeatures xsi:type="ecore:EReference" name="basis" ordered="false"
        lowerBound="1" eType="#//Sort" containment="true" eOpposite="#//Sort/multi">
      <eAnnotations source="http://www.pnml.org/models/ToPNML">
        <details key="kind" value="follow"/>
      </eAnnotations>
    </eStructuralFeatures>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="Term" abstract="true">
    <eAnnotations source="http://www.pnml.org/models/HLAPI"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="sort" ordered="false" eType="#//Sort"
        derived="true"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="containerOperator" eType="#//Operator"
        eOpposite="#//Operator/subterm"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="containerNamedOperator"
        eType="#//NamedOperator" eOpposite="#//NamedOperator/def"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="containerHLMarking" eType="ecore:EClass hlcorestructure.ecore#//HLMarking"
        eOpposite="hlcorestructure.ecore#//HLMarking/structure"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="containerCondition" eType="ecore:EClass hlcorestructure.ecore#//Condition"
        eOpposite="hlcorestructure.ecore#//Condition/structure"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="containerHLAnnotation"
        eType="ecore:EClass hlcorestructure.ecore#//HLAnnotation" eOpposite="hlcorestructure.ecore#//HLAnnotation/structure"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="containerPartitionElement"
        eType="ecore:EClass partitions.ecore#//PartitionElement" eOpposite="partitions.ecore#//PartitionElement/partitionelementconstants"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="Operator" abstract="true" eSuperTypes="#//Term">
    <eAnnotations source="http://www.pnml.org/models/OCL">
      <details key="sameOperatorNTermSort" value="self.sort = self.output"/>
    </eAnnotations>
    <eAnnotations source="http://www.eclipse.org/emf/2002/Ecore">
      <details key="constraints" value="sameOperatorNTermSort"/>
    </eAnnotations>
    <eAnnotations source="http://www.pnml.org/models/HLAPI"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="subterm" upperBound="-1"
        eType="#//Term" containment="true" eOpposite="#//Term/containerOperator">
      <eAnnotations source="http://www.pnml.org/models/ToPNML">
        <details key="tag" value="subterm"/>
        <details key="kind" value="follow"/>
      </eAnnotations>
    </eStructuralFeatures>
    <eStructuralFeatures xsi:type="ecore:EReference" name="output" ordered="false"
        eType="#//Sort" derived="true"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="input" upperBound="-1"
        eType="#//Sort" derived="true"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="VariableDecl" eSuperTypes="#//TermsDeclaration">
    <eAnnotations source="http://www.pnml.org/models/HLAPI"/>
    <eAnnotations source="http://www.pnml.org/models/ToPNML">
      <details key="tag" value="variabledecl"/>
      <details key="kind" value="son"/>
    </eAnnotations>
    <eStructuralFeatures xsi:type="ecore:EReference" name="sort" ordered="false" lowerBound="1"
        eType="#//Sort" containment="true" eOpposite="#//Sort/containerVariableDecl">
      <eAnnotations source="http://www.pnml.org/models/ToPNML">
        <details key="kind" value="follow"/>
      </eAnnotations>
    </eStructuralFeatures>
    <eStructuralFeatures xsi:type="ecore:EReference" name="containerNamedOperator"
        eType="#//NamedOperator" eOpposite="#//NamedOperator/parameters"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="Variable" eSuperTypes="#//Term">
    <eAnnotations source="http://www.pnml.org/models/ToPNML">
      <details key="tag" value="variable"/>
      <details key="kind" value="son"/>
    </eAnnotations>
    <eAnnotations source="http://www.pnml.org/models/HLAPI"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="variableDecl" ordered="false"
        lowerBound="1" eType="#//VariableDecl">
      <eAnnotations source="http://www.pnml.org/models/ToPNML">
        <details key="tag" value="refvariable"/>
        <details key="kind" value="idref"/>
      </eAnnotations>
    </eStructuralFeatures>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="BuiltInSort" abstract="true" eSuperTypes="#//Sort"/>
  <eClassifiers xsi:type="ecore:EClass" name="ProductSort" eSuperTypes="#//Sort">
    <eAnnotations source="http://www.pnml.org/models/ToPNML">
      <details key="tag" value="productsort"/>
      <details key="kind" value="son"/>
    </eAnnotations>
    <eAnnotations source="http://www.pnml.org/models/HLAPI"/>
    <eAnnotations source="http://www.pnml.org/models/methods/SORT">
      <details key="signature" value="boolean equalSorts(Sort sort)"/>
      <details key="body" value="boolean isEqual = false;&#xA;&#x9;&#x9;if (this.eClass().getName().equalsIgnoreCase(sort.eClass().getName())) {&#xA;&#x9;&#x9;&#x9;if (this.getContainerNamedSort() != null&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&amp;&amp; sort.getContainerNamedSort() != null) {&#xA;&#x9;&#x9;&#x9;&#x9;isEqual = this.getContainerNamedSort().getName()&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;.equalsIgnoreCase(&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;sort.getContainerNamedSort().getName());&#xA;&#x9;&#x9;&#x9;} else {&#xA;&#x9;&#x9;&#x9;&#x9;// Someone may one day inherit from ProductSort, so we should&#xA;&#x9;&#x9;&#x9;&#x9;// strictly check for ProductSort only. Further sub-classes must &#xA;&#x9;&#x9;&#x9;&#x9;//override this method.&#xA;&#x9;&#x9;&#x9;&#x9;if (&quot;ProductSort&quot;.equalsIgnoreCase(this.eClass().getName())) {&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;ProductSort mySort = (ProductSort) this;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;ProductSort thatSort = (ProductSort) sort;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;List&lt;Sort> myElements = mySort.getElementSort();&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;List&lt;Sort> thoseElements = thatSort.getElementSort();&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;int i = 0;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;int j = 0;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;for (; i &lt; myElements.size() &amp;&amp; j &lt; thoseElements.size(); i++, j++) {&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;if (myElements&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;.get(i)&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;.eClass()&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;.getName()&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;.equalsIgnoreCase(&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;thoseElements.get(j).eClass().getName())) {&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;isEqual = true;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;} else {&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;isEqual = false;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;break;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;}&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;}&#xA;&#x9;&#x9;&#x9;&#x9;}&#x9;&#x9;&#xA;&#x9;&#x9;&#x9;}&#xA;&#x9;&#x9;}&#xA;&#x9;&#x9;return isEqual;"/>
      <details key="documentation" value="/**&#xD; * Returns true if this sort and argument sort are actually &#xD; * semantically the same sort, even in two different objects.&#xD; * Ex: two FiniteEnumerations or two Integers.&#xD; * @return true if so. &#xD; * @param sort the sort to which we compare this one. &#xD; */"/>
    </eAnnotations>
    <eStructuralFeatures xsi:type="ecore:EReference" name="elementSort" upperBound="-1"
        eType="#//Sort" containment="true" eOpposite="#//Sort/containerProductSort">
      <eAnnotations source="http://www.pnml.org/models/ToPNML">
        <details key="kind" value="follow"/>
      </eAnnotations>
    </eStructuralFeatures>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="BuiltInConstant" abstract="true" eSuperTypes="#//Operator"/>
  <eClassifiers xsi:type="ecore:EClass" name="MultisetOperator" abstract="true" eSuperTypes="#//Operator"/>
  <eClassifiers xsi:type="ecore:EClass" name="Tuple" eSuperTypes="#//Operator">
    <eAnnotations source="http://www.pnml.org/models/ToPNML">
      <details key="tag" value="tuple"/>
      <details key="kind" value="son"/>
    </eAnnotations>
    <eAnnotations source="http://www.pnml.org/models/HLAPI"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="SortDecl" abstract="true" eSuperTypes="#//TermsDeclaration">
    <eAnnotations source="http://www.pnml.org/models/HLAPI"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="BuiltInOperator" abstract="true" eSuperTypes="#//Operator"/>
  <eClassifiers xsi:type="ecore:EClass" name="NamedSort" eSuperTypes="#//SortDecl">
    <eAnnotations source="http://www.pnml.org/models/OCL">
      <details key="refSortNotMultiset" value="not(self.sortdef.oclIsTypeOf(MultisetSort))"/>
    </eAnnotations>
    <eAnnotations source="http://www.eclipse.org/emf/2002/Ecore">
      <details key="constraints" value="refSortNotMultiset"/>
    </eAnnotations>
    <eAnnotations source="http://www.pnml.org/models/ToPNML">
      <details key="tag" value="namedsort"/>
      <details key="kind" value="son"/>
    </eAnnotations>
    <eAnnotations source="http://www.pnml.org/models/HLAPI"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="sortdef" ordered="false"
        lowerBound="1" eType="#//Sort" containment="true" eOpposite="#//Sort/containerNamedSort">
      <eAnnotations source="http://www.pnml.org/models/ToPNML">
        <details key="kind" value="follow"/>
      </eAnnotations>
    </eStructuralFeatures>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="UserSort" eSuperTypes="#//Sort">
    <eAnnotations source="http://www.pnml.org/models/ToPNML">
      <details key="tag" value="usersort"/>
      <details key="kind" value="son"/>
    </eAnnotations>
    <eAnnotations source="http://www.pnml.org/models/HLAPI"/>
    <eAnnotations source="http://www.pnml.org/models/methods/SORT">
      <details key="signature" value="boolean equalSorts(Sort sort)"/>
      <details key="body" value="boolean isEqual = false;&#xA;&#x9;&#x9;if (this.eClass().getName().equalsIgnoreCase(sort.eClass().getName())) {&#xA;&#x9;&#x9;&#x9;if (this.getContainerNamedSort() != null&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&amp;&amp; sort.getContainerNamedSort() != null) {&#xA;&#x9;&#x9;&#x9;&#x9;isEqual = this.getContainerNamedSort().getName()&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;.equalsIgnoreCase(&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;sort.getContainerNamedSort().getName());&#xA;&#x9;&#x9;&#x9;} else {&#xA;&#x9;&#x9;&#x9;&#x9;//further sub-classes must override this method.&#xA;&#x9;&#x9;&#x9;&#x9;if (&quot;UserSort&quot;.equalsIgnoreCase(this.eClass().getName())) {&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;isEqual = ((UserSort) this).getDeclaration().getName()&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;.equalsIgnoreCase(&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;((UserSort) sort).getDeclaration()&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;.getName());&#xA;&#x9;&#x9;&#x9;&#x9;}&#xA;&#x9;&#x9;&#x9;}&#xA;&#x9;&#x9;}&#xA;&#x9;&#x9;return isEqual;"/>
      <details key="documentation" value="/**&#xD; * Returns true if this sort and argument sort are actually &#xD; * semantically the same sort, even in two different objects.&#xD; * Ex: two FiniteEnumerations or two Integers.&#xD; * @return true if so. &#xD; * @param sort the sort to which we compare this one. &#xD; */"/>
    </eAnnotations>
    <eStructuralFeatures xsi:type="ecore:EReference" name="declaration" ordered="false"
        lowerBound="1" eType="#//SortDecl">
      <eAnnotations source="http://www.pnml.org/models/ToPNML">
        <details key="tag" value="declaration"/>
        <details key="kind" value="idref"/>
      </eAnnotations>
    </eStructuralFeatures>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="OperatorDecl" abstract="true" eSuperTypes="#//TermsDeclaration">
    <eAnnotations source="http://www.pnml.org/models/HLAPI"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="NamedOperator" eSuperTypes="#//OperatorDecl">
    <eAnnotations source="http://www.pnml.org/models/ToPNML">
      <details key="tag" value="namedoperator"/>
      <details key="kind" value="son"/>
    </eAnnotations>
    <eAnnotations source="http://www.pnml.org/models/HLAPI"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="def" ordered="false" lowerBound="1"
        eType="#//Term" containment="true" eOpposite="#//Term/containerNamedOperator">
      <eAnnotations source="http://www.pnml.org/models/ToPNML">
        <details key="tag" value="def"/>
        <details key="kind" value="follow"/>
      </eAnnotations>
    </eStructuralFeatures>
    <eStructuralFeatures xsi:type="ecore:EReference" name="parameters" upperBound="-1"
        eType="#//VariableDecl" containment="true" eOpposite="#//VariableDecl/containerNamedOperator">
      <eAnnotations source="http://www.pnml.org/models/ToPNML">
        <details key="tag" value="parameter"/>
        <details key="kind" value="follow"/>
      </eAnnotations>
    </eStructuralFeatures>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="UserOperator" eSuperTypes="#//Operator">
    <eAnnotations source="http://www.pnml.org/models/ToPNML">
      <details key="tag" value="useroperator"/>
      <details key="kind" value="son"/>
    </eAnnotations>
    <eAnnotations source="http://www.pnml.org/models/HLAPI"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="declaration" ordered="false"
        lowerBound="1" eType="#//OperatorDecl">
      <eAnnotations source="http://www.pnml.org/models/ToPNML">
        <details key="tag" value="declaration"/>
        <details key="kind" value="idref"/>
      </eAnnotations>
    </eStructuralFeatures>
  </eClassifiers>
</ecore:EPackage>

{"directed":true,"nodes":[{"nsPrefix":"terms","nsURI":"http:///hlpn.terms.ecore","name":"terms","id":0,"eClass":"EPackage"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"Declarations","instanceClass":null,"abstract":false,"id":1,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"TermsDeclaration","instanceClass":null,"abstract":true,"id":2,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"Sort","instanceClass":null,"abstract":true,"id":3,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"MultisetSort","instanceClass":null,"abstract":false,"id":4,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"Term","instanceClass":null,"abstract":true,"id":5,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"Operator","instanceClass":null,"abstract":true,"id":6,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"VariableDecl","instanceClass":null,"abstract":false,"id":7,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"Variable","instanceClass":null,"abstract":false,"id":8,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"BuiltInSort","instanceClass":null,"abstract":true,"id":9,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"ProductSort","instanceClass":null,"abstract":false,"id":10,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"BuiltInConstant","instanceClass":null,"abstract":true,"id":11,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"MultisetOperator","instanceClass":null,"abstract":true,"id":12,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"Tuple","instanceClass":null,"abstract":false,"id":13,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"SortDecl","instanceClass":null,"abstract":true,"id":14,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"BuiltInOperator","instanceClass":null,"abstract":true,"id":15,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"NamedSort","instanceClass":null,"abstract":false,"id":16,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"UserSort","instanceClass":null,"abstract":false,"id":17,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"OperatorDecl","instanceClass":null,"abstract":true,"id":18,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"NamedOperator","instanceClass":null,"abstract":false,"id":19,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"UserOperator","instanceClass":null,"abstract":false,"id":20,"interface":false,"eClass":"EClass"},{"container":false,"ordered":false,"upperBound":-1,"defaultValue":null,"volatile":false,"many":true,"required":false,"eClass":"EReference","defaultValueLiteral":null,"containment":true,"unsettable":false,"transient":false,"unique":true,"name":"declaration","changeable":true,"resolveProxies":true,"lowerBound":0,"id":21,"derived":false},{"container":true,"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":"containerDeclaration","changeable":true,"resolveProxies":true,"lowerBound":0,"id":22,"derived":false},{"id":23,"eClass":"EGenericType"},{"container":true,"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":"containerDeclarations","changeable":true,"resolveProxies":true,"lowerBound":0,"id":24,"derived":false},{"id":25,"eClass":"EGenericType"},{"ordered":false,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":true,"eClass":"EAttribute","defaultValueLiteral":null,"unsettable":false,"transient":false,"unique":true,"name":"id","changeable":true,"lowerBound":1,"iD":true,"id":26,"derived":false},{"ordered":false,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":true,"eClass":"EAttribute","defaultValueLiteral":null,"unsettable":false,"transient":false,"unique":true,"name":"name","changeable":true,"lowerBound":1,"iD":false,"id":27,"derived":false},{"id":28,"eClass":"EGenericType"},{"id":29,"eClass":"EGenericType"},{"id":30,"eClass":"EGenericType"},{"container":true,"ordered":false,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":false,"eClass":"EReference","defaultValueLiteral":null,"containment":false,"unsettable":false,"transient":false,"unique":true,"name":"multi","changeable":true,"resolveProxies":true,"lowerBound":0,"id":31,"derived":false},{"container":true,"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":"containerNamedSort","changeable":true,"resolveProxies":true,"lowerBound":0,"id":32,"derived":false},{"container":true,"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":"containerVariableDecl","changeable":true,"resolveProxies":true,"lowerBound":0,"id":33,"derived":false},{"container":true,"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":"containerProductSort","changeable":true,"resolveProxies":true,"lowerBound":0,"id":34,"derived":false},{"container":true,"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":"containerType","changeable":true,"resolveProxies":true,"lowerBound":0,"id":35,"derived":false},{"container":true,"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":"containerAll","changeable":true,"resolveProxies":true,"lowerBound":0,"id":36,"derived":false},{"container":true,"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":"containerEmpty","changeable":true,"resolveProxies":true,"lowerBound":0,"id":37,"derived":false},{"container":true,"ordered":false,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":false,"eClass":"EReference","defaultValueLiteral":null,"containment":false,"unsettable":false,"transient":false,"unique":true,"name":"containerPartition","changeable":true,"resolveProxies":true,"lowerBound":0,"id":38,"derived":false},{"container":true,"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":"containerList","changeable":true,"resolveProxies":true,"lowerBound":0,"id":39,"derived":false},{"container":true,"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":"containerEmptyList","changeable":true,"resolveProxies":true,"lowerBound":0,"id":40,"derived":false},{"container":true,"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":"containerMakeList","changeable":true,"resolveProxies":true,"lowerBound":0,"id":41,"derived":false},{"id":42,"eClass":"EGenericType"},{"container":false,"ordered":false,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":true,"eClass":"EReference","defaultValueLiteral":null,"containment":true,"unsettable":false,"transient":false,"unique":true,"name":"basis","changeable":true,"resolveProxies":true,"lowerBound":1,"id":43,"derived":false},{"id":44,"eClass":"EGenericType"},{"container":false,"ordered":false,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":true,"eClass":"EReference","defaultValueLiteral":null,"containment":true,"unsettable":false,"transient":false,"unique":true,"name":"sortdef","changeable":true,"resolveProxies":true,"lowerBound":1,"id":45,"derived":false},{"id":46,"eClass":"EGenericType"},{"container":false,"ordered":false,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":true,"eClass":"EReference","defaultValueLiteral":null,"containment":true,"unsettable":false,"transient":false,"unique":true,"name":"sort","changeable":true,"resolveProxies":true,"lowerBound":1,"id":47,"derived":false},{"id":48,"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":"elementSort","changeable":true,"resolveProxies":true,"lowerBound":0,"id":49,"derived":false},{"id":50,"eClass":"EGenericType"},{"id":51,"eClass":"EGenericType"},{"id":52,"eClass":"EGenericType"},{"id":53,"eClass":"EGenericType"},{"id":54,"eClass":"EGenericType"},{"id":55,"eClass":"EGenericType"},{"id":56,"eClass":"EGenericType"},{"id":57,"eClass":"EGenericType"},{"id":58,"eClass":"EGenericType"},{"container":false,"ordered":false,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":false,"eClass":"EReference","defaultValueLiteral":null,"containment":false,"unsettable":false,"transient":false,"unique":true,"name":"sort","changeable":true,"resolveProxies":true,"lowerBound":0,"id":59,"derived":true},{"container":true,"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":"containerOperator","changeable":true,"resolveProxies":true,"lowerBound":0,"id":60,"derived":false},{"container":true,"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":"containerNamedOperator","changeable":true,"resolveProxies":true,"lowerBound":0,"id":61,"derived":false},{"container":true,"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":"containerHLMarking","changeable":true,"resolveProxies":true,"lowerBound":0,"id":62,"derived":false},{"container":true,"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":"containerCondition","changeable":true,"resolveProxies":true,"lowerBound":0,"id":63,"derived":false},{"container":true,"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":"containerHLAnnotation","changeable":true,"resolveProxies":true,"lowerBound":0,"id":64,"derived":false},{"container":true,"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":"containerPartitionElement","changeable":true,"resolveProxies":true,"lowerBound":0,"id":65,"derived":false},{"id":66,"eClass":"EGenericType"},{"id":67,"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":"subterm","changeable":true,"resolveProxies":true,"lowerBound":0,"id":68,"derived":false},{"id":69,"eClass":"EGenericType"},{"container":false,"ordered":false,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":true,"eClass":"EReference","defaultValueLiteral":null,"containment":true,"unsettable":false,"transient":false,"unique":true,"name":"def","changeable":true,"resolveProxies":true,"lowerBound":1,"id":70,"derived":false},{"id":71,"eClass":"EGenericType"},{"id":72,"eClass":"EGenericType"},{"id":73,"eClass":"EGenericType"},{"id":74,"eClass":"EGenericType"},{"container":false,"ordered":false,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":false,"eClass":"EReference","defaultValueLiteral":null,"containment":false,"unsettable":false,"transient":false,"unique":true,"name":"output","changeable":true,"resolveProxies":true,"lowerBound":0,"id":75,"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":"input","changeable":true,"resolveProxies":true,"lowerBound":0,"id":76,"derived":true},{"id":77,"eClass":"EGenericType"},{"id":78,"eClass":"EGenericType"},{"id":79,"eClass":"EGenericType"},{"id":80,"eClass":"EGenericType"},{"container":true,"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":"containerNamedOperator","changeable":true,"resolveProxies":true,"lowerBound":0,"id":81,"derived":false},{"id":82,"eClass":"EGenericType"},{"id":83,"eClass":"EGenericType"},{"id":84,"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":"parameters","changeable":true,"resolveProxies":true,"lowerBound":0,"id":85,"derived":false},{"container":false,"ordered":false,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":true,"eClass":"EReference","defaultValueLiteral":null,"containment":false,"unsettable":false,"transient":false,"unique":true,"name":"variableDecl","changeable":true,"resolveProxies":true,"lowerBound":1,"id":86,"derived":false},{"id":87,"eClass":"EGenericType"},{"id":88,"eClass":"EGenericType"},{"id":89,"eClass":"EGenericType"},{"id":90,"eClass":"EGenericType"},{"id":91,"eClass":"EGenericType"},{"id":92,"eClass":"EGenericType"},{"id":93,"eClass":"EGenericType"},{"id":94,"eClass":"EGenericType"},{"id":95,"eClass":"EGenericType"},{"id":96,"eClass":"EGenericType"},{"id":97,"eClass":"EGenericType"},{"id":98,"eClass":"EGenericType"},{"container":false,"ordered":false,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":true,"eClass":"EReference","defaultValueLiteral":null,"containment":false,"unsettable":false,"transient":false,"unique":true,"name":"declaration","changeable":true,"resolveProxies":true,"lowerBound":1,"id":99,"derived":false},{"id":100,"eClass":"EGenericType"},{"id":101,"eClass":"EGenericType"},{"id":102,"eClass":"EGenericType"},{"id":103,"eClass":"EGenericType"},{"id":104,"eClass":"EGenericType"},{"id":105,"eClass":"EGenericType"},{"container":false,"ordered":false,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":true,"eClass":"EReference","defaultValueLiteral":null,"containment":false,"unsettable":false,"transient":false,"unique":true,"name":"declaration","changeable":true,"resolveProxies":true,"lowerBound":1,"id":106,"derived":false},{"id":107,"eClass":"EGenericType"},{"id":108,"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":1,"target":0},{"source":1,"target":21},{"source":1,"target":22},{"source":21,"target":2},{"source":21,"target":23},{"source":21,"target":1},{"source":21,"target":24},{"source":23,"target":2},{"source":22,"target":25},{"source":22,"target":1},{"source":2,"target":0},{"source":2,"target":26},{"source":2,"target":27},{"source":2,"target":24},{"source":26,"target":28},{"source":26,"target":2},{"source":27,"target":29},{"source":27,"target":2},{"source":24,"target":1},{"source":24,"target":30},{"source":24,"target":2},{"source":24,"target":21},{"source":30,"target":1},{"source":3,"target":0},{"source":3,"target":31},{"source":3,"target":32},{"source":3,"target":33},{"source":3,"target":34},{"source":3,"target":35},{"source":3,"target":36},{"source":3,"target":37},{"source":3,"target":38},{"source":3,"target":39},{"source":3,"target":40},{"source":3,"target":41},{"source":31,"target":4},{"source":31,"target":42},{"source":31,"target":3},{"source":31,"target":43},{"source":42,"target":4},{"source":32,"target":16},{"source":32,"target":44},{"source":32,"target":3},{"source":32,"target":45},{"source":44,"target":16},{"source":33,"target":7},{"source":33,"target":46},{"source":33,"target":3},{"source":33,"target":47},{"source":46,"target":7},{"source":34,"target":10},{"source":34,"target":48},{"source":34,"target":3},{"source":34,"target":49},{"source":48,"target":10},{"source":35,"target":50},{"source":35,"target":3},{"source":36,"target":51},{"source":36,"target":3},{"source":37,"target":52},{"source":37,"target":3},{"source":38,"target":53},{"source":38,"target":3},{"source":39,"target":54},{"source":39,"target":3},{"source":40,"target":55},{"source":40,"target":3},{"source":41,"target":56},{"source":41,"target":3},{"source":4,"target":0},{"source":4,"target":3},{"source":4,"target":43},{"source":4,"target":57},{"source":43,"target":3},{"source":43,"target":58},{"source":43,"target":4},{"source":43,"target":31},{"source":58,"target":3},{"source":57,"target":3},{"source":5,"target":0},{"source":5,"target":59},{"source":5,"target":60},{"source":5,"target":61},{"source":5,"target":62},{"source":5,"target":63},{"source":5,"target":64},{"source":5,"target":65},{"source":59,"target":3},{"source":59,"target":66},{"source":59,"target":5},{"source":66,"target":3},{"source":60,"target":6},{"source":60,"target":67},{"source":60,"target":5},{"source":60,"target":68},{"source":67,"target":6},{"source":61,"target":19},{"source":61,"target":69},{"source":61,"target":5},{"source":61,"target":70},{"source":69,"target":19},{"source":62,"target":71},{"source":62,"target":5},{"source":63,"target":72},{"source":63,"target":5},{"source":64,"target":73},{"source":64,"target":5},{"source":65,"target":74},{"source":65,"target":5},{"source":6,"target":0},{"source":6,"target":5},{"source":6,"target":68},{"source":6,"target":75},{"source":6,"target":76},{"source":6,"target":77},{"source":68,"target":5},{"source":68,"target":78},{"source":68,"target":6},{"source":68,"target":60},{"source":78,"target":5},{"source":75,"target":3},{"source":75,"target":79},{"source":75,"target":6},{"source":79,"target":3},{"source":76,"target":3},{"source":76,"target":80},{"source":76,"target":6},{"source":80,"target":3},{"source":77,"target":5},{"source":7,"target":0},{"source":7,"target":2},{"source":7,"target":47},{"source":7,"target":81},{"source":7,"target":82},{"source":47,"target":3},{"source":47,"target":83},{"source":47,"target":7},{"source":47,"target":33},{"source":83,"target":3},{"source":81,"target":19},{"source":81,"target":84},{"source":81,"target":7},{"source":81,"target":85},{"source":84,"target":19},{"source":82,"target":2},{"source":8,"target":0},{"source":8,"target":5},{"source":8,"target":86},{"source":8,"target":87},{"source":86,"target":7},{"source":86,"target":88},{"source":86,"target":8},{"source":88,"target":7},{"source":87,"target":5},{"source":9,"target":0},{"source":9,"target":3},{"source":9,"target":89},{"source":89,"target":3},{"source":10,"target":0},{"source":10,"target":3},{"source":10,"target":49},{"source":10,"target":90},{"source":49,"target":3},{"source":49,"target":91},{"source":49,"target":10},{"source":49,"target":34},{"source":91,"target":3},{"source":90,"target":3},{"source":11,"target":0},{"source":11,"target":6},{"source":11,"target":92},{"source":92,"target":6},{"source":12,"target":0},{"source":12,"target":6},{"source":12,"target":93},{"source":93,"target":6},{"source":13,"target":0},{"source":13,"target":6},{"source":13,"target":94},{"source":94,"target":6},{"source":14,"target":0},{"source":14,"target":2},{"source":14,"target":95},{"source":95,"target":2},{"source":15,"target":0},{"source":15,"target":6},{"source":15,"target":96},{"source":96,"target":6},{"source":16,"target":0},{"source":16,"target":14},{"source":16,"target":45},{"source":16,"target":97},{"source":45,"target":3},{"source":45,"target":98},{"source":45,"target":16},{"source":45,"target":32},{"source":98,"target":3},{"source":97,"target":14},{"source":17,"target":0},{"source":17,"target":3},{"source":17,"target":99},{"source":17,"target":100},{"source":99,"target":14},{"source":99,"target":101},{"source":99,"target":17},{"source":101,"target":14},{"source":100,"target":3},{"source":18,"target":0},{"source":18,"target":2},{"source":18,"target":102},{"source":102,"target":2},{"source":19,"target":0},{"source":19,"target":18},{"source":19,"target":70},{"source":19,"target":85},{"source":19,"target":103},{"source":70,"target":5},{"source":70,"target":104},{"source":70,"target":19},{"source":70,"target":61},{"source":104,"target":5},{"source":85,"target":7},{"source":85,"target":105},{"source":85,"target":19},{"source":85,"target":81},{"source":105,"target":7},{"source":103,"target":18},{"source":20,"target":0},{"source":20,"target":6},{"source":20,"target":106},{"source":20,"target":107},{"source":106,"target":18},{"source":106,"target":108},{"source":106,"target":20},{"source":108,"target":18},{"source":107,"target":6}],"multigraph":true}