<?xml version="1.0" encoding="UTF-8"?>
<genmodel:GenModel xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore"
    xmlns:genmodel="http://www.eclipse.org/emf/2002/GenModel" copyrightText="generated by Xtext 2.10.0" modelDirectory="/fr.irit.fiacre.xtext/src-gen"
    modelPluginID="fr.irit.fiacre.xtext" forceOverwrite="true" modelName="Fiacre"
    updateClasspath="false" rootExtendsClass="org.eclipse.emf.ecore.impl.MinimalEObjectImpl$Container"
    complianceLevel="6.0" copyrightFields="false" runtimeVersion="2.12">
  <genPackages prefix="Fiacre" basePackage="fr.irit.fiacre.xtext" disposableProviderFactory="true"
      loadInitialization="true" literalsInterface="false" fileExtensions="fcr" ecorePackage="Fiacre.ecore#/">
    <genClasses ecoreClass="Fiacre.ecore#//Model">
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//Model/imports"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//Model/declarations"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//Model/requirements"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//Model/root"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//RootDeclaration"/>
    <genClasses ecoreClass="Fiacre.ecore#//Root">
      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Fiacre.ecore#//Root/declaration"/>
      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Fiacre.ecore#//Root/observed"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//NamedElement">
      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Fiacre.ecore#//NamedElement/name"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//TypeDeclarationUse"/>
    <genClasses ecoreClass="Fiacre.ecore#//ConstantDeclarationUse"/>
    <genClasses ecoreClass="Fiacre.ecore#//ExpressionDeclarationUse"/>
    <genClasses ecoreClass="Fiacre.ecore#//ReferenceDeclarationUse"/>
    <genClasses ecoreClass="Fiacre.ecore#//UnionTagDeclarationUse"/>
    <genClasses ecoreClass="Fiacre.ecore#//RecordFieldDeclarationUse"/>
    <genClasses ecoreClass="Fiacre.ecore#//PatternDeclarationUse"/>
    <genClasses ecoreClass="Fiacre.ecore#//BoundDeclarationUse"/>
    <genClasses ecoreClass="Fiacre.ecore#//PathDeclarationUse"/>
    <genClasses ecoreClass="Fiacre.ecore#//PropertyDeclarationUse"/>
    <genClasses ecoreClass="Fiacre.ecore#//ImportDeclaration">
      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Fiacre.ecore#//ImportDeclaration/importURI"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//Declaration"/>
    <genClasses ecoreClass="Fiacre.ecore#//ParameterizedDeclaration">
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//ParameterizedDeclaration/parameters"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//ParameterizedDeclaration/variables"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//FunctionDeclaration">
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//FunctionDeclaration/type"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//FunctionDeclaration/statement"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//TypeDeclaration">
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//TypeDeclaration/value"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//ChannelDeclaration">
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//ChannelDeclaration/value"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//ChannelType">
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//ChannelType/size"/>
      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Fiacre.ecore#//ChannelType/in"/>
      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Fiacre.ecore#//ChannelType/out"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//ChannelType/type"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//Type"/>
    <genClasses ecoreClass="Fiacre.ecore#//BasicType"/>
    <genClasses ecoreClass="Fiacre.ecore#//RangeType">
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//RangeType/minimum"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//RangeType/maximum"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//UnionType">
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//UnionType/tags"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//UnionTags">
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//UnionTags/tags"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//UnionTags/type"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//UnionTagDeclaration"/>
    <genClasses ecoreClass="Fiacre.ecore#//RecordType">
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//RecordType/fields"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//RecordFields">
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//RecordFields/fields"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//RecordFields/type"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//RecordFieldDeclaration"/>
    <genClasses ecoreClass="Fiacre.ecore#//QueueType">
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//QueueType/size"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//QueueType/type"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//ArrayType">
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//ArrayType/size"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//ArrayType/type"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//ReferencedType">
      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Fiacre.ecore#//ReferencedType/type"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//ConstantDeclaration">
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//ConstantDeclaration/type"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//ConstantDeclaration/value"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//ProcessDeclaration">
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//ProcessDeclaration/ports"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//ProcessDeclaration/localPorts"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//ProcessDeclaration/priorities"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//ProcessDeclaration/states"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//ProcessDeclaration/prelude"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//ProcessDeclaration/transitions"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//StateDeclaration"/>
    <genClasses ecoreClass="Fiacre.ecore#//TransitionSource">
      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Fiacre.ecore#//TransitionSource/origin"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//Transition">
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//Transition/source"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//Transition/action"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//ComponentDeclaration">
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//ComponentDeclaration/ports"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//ComponentDeclaration/localPorts"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//ComponentDeclaration/priorities"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//ComponentDeclaration/prelude"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//ComponentDeclaration/body"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//PortsDeclaration">
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//PortsDeclaration/ports"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//PortsDeclaration/type"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//PortDeclaration"/>
    <genClasses ecoreClass="Fiacre.ecore#//LocalPortsDeclaration">
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//LocalPortsDeclaration/ports"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//LocalPortsDeclaration/type"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//LocalPortsDeclaration/left"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//LocalPortsDeclaration/right"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//ParametersDeclaration">
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//ParametersDeclaration/parameters"/>
      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Fiacre.ecore#//ParametersDeclaration/read"/>
      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Fiacre.ecore#//ParametersDeclaration/write"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//ParametersDeclaration/type"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//ParameterDeclaration">
      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Fiacre.ecore#//ParameterDeclaration/reference"/>
      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Fiacre.ecore#//ParameterDeclaration/array"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//ParameterDeclaration/size"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//VariablesDeclaration">
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//VariablesDeclaration/variables"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//VariablesDeclaration/type"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//VariablesDeclaration/value"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//VariableDeclaration"/>
    <genClasses ecoreClass="Fiacre.ecore#//PriorityDeclaration">
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//PriorityDeclaration/groups"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//PriorityGroup">
      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Fiacre.ecore#//PriorityGroup/ports"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//Statement"/>
    <genClasses ecoreClass="Fiacre.ecore#//BlockStatement">
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//BlockStatement/body"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//ReturnStatement">
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//ReturnStatement/expression"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//NullStatement"/>
    <genClasses ecoreClass="Fiacre.ecore#//TaggedStatement">
      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Fiacre.ecore#//TaggedStatement/name"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//PatternStatement"/>
    <genClasses ecoreClass="Fiacre.ecore#//Pattern"/>
    <genClasses ecoreClass="Fiacre.ecore#//AnyPattern"/>
    <genClasses ecoreClass="Fiacre.ecore#//ConstantPattern">
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//ConstantPattern/value"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//IntegerPattern">
      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Fiacre.ecore#//IntegerPattern/negative"/>
      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Fiacre.ecore#//IntegerPattern/value"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//IdentifierPattern">
      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Fiacre.ecore#//IdentifierPattern/declaration"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//ConditionalStatement">
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//ConditionalStatement/condition"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//ConditionalStatement/then"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//ConditionalStatement/elseif"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//ConditionalStatement/else"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//ExtendedConditionalStatement">
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//ExtendedConditionalStatement/condition"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//ExtendedConditionalStatement/then"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//SelectStatement">
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//SelectStatement/body"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//SelectStatement/index"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//SelectStatement/type"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//WhileStatement">
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//WhileStatement/condition"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//WhileStatement/body"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//ForeachStatement">
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//ForeachStatement/variable"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//ForeachStatement/body"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//ToStatement">
      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Fiacre.ecore#//ToStatement/state"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//CaseStatement">
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//CaseStatement/value"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//CaseStatement/pattern"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//CaseStatement/body"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//LoopStatement"/>
    <genClasses ecoreClass="Fiacre.ecore#//OnStatement">
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//OnStatement/condition"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//WaitStatement">
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//WaitStatement/left"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//WaitStatement/right"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//Composition">
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//Composition/global"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//Composition/blocks"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//Block">
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//Block/local"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//CompositeBlock">
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//CompositeBlock/composition"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//InstanceDeclaration">
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//InstanceDeclaration/instance"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//PortSet">
      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Fiacre.ecore#//PortSet/allPorts"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//PortSet/ports"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//ComponentInstance">
      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Fiacre.ecore#//ComponentInstance/component"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//ComponentInstance/ports"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//ComponentInstance/parameters"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//Expression"/>
    <genClasses ecoreClass="Fiacre.ecore#//ValueExpression"/>
    <genClasses ecoreClass="Fiacre.ecore#//ReferenceExpression">
      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Fiacre.ecore#//ReferenceExpression/declaration"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//IdentifierExpression">
      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Fiacre.ecore#//IdentifierExpression/declaration"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//RecordExpression">
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//RecordExpression/fields"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//FieldExpression">
      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Fiacre.ecore#//FieldExpression/field"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//FieldExpression/value"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//ArrayExpression">
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//ArrayExpression/values"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//QueueExpression">
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//QueueExpression/values"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//EnqueueExpression">
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//EnqueueExpression/element"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//EnqueueExpression/queue"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//AppendExpression">
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//AppendExpression/left"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//AppendExpression/right"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//LiteralExpression"/>
    <genClasses ecoreClass="Fiacre.ecore#//BooleanLiteral"/>
    <genClasses ecoreClass="Fiacre.ecore#//NaturalLiteral">
      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Fiacre.ecore#//NaturalLiteral/value"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//LowerBound">
      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Fiacre.ecore#//LowerBound/left"/>
      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Fiacre.ecore#//LowerBound/right"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//UpperBound"/>
    <genClasses ecoreClass="Fiacre.ecore#//NaturalLowerBound">
      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Fiacre.ecore#//NaturalLowerBound/value"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//NaturalUpperBound">
      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Fiacre.ecore#//NaturalUpperBound/value"/>
      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Fiacre.ecore#//NaturalUpperBound/left"/>
      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Fiacre.ecore#//NaturalUpperBound/right"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//DecimalLowerBound">
      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Fiacre.ecore#//DecimalLowerBound/value"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//DecimalUpperBound">
      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Fiacre.ecore#//DecimalUpperBound/value"/>
      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Fiacre.ecore#//DecimalUpperBound/left"/>
      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Fiacre.ecore#//DecimalUpperBound/right"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//VariableLowerBound">
      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Fiacre.ecore#//VariableLowerBound/variable"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//VariableUpperBound">
      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Fiacre.ecore#//VariableUpperBound/variable"/>
      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Fiacre.ecore#//VariableUpperBound/left"/>
      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Fiacre.ecore#//VariableUpperBound/right"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//InfiniteUpperBound"/>
    <genClasses ecoreClass="Fiacre.ecore#//Requirement">
      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Fiacre.ecore#//Requirement/property"/>
      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Fiacre.ecore#//Requirement/positive"/>
      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Fiacre.ecore#//Requirement/negative"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//PropertyDeclaration">
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//PropertyDeclaration/property"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//Property"/>
    <genClasses ecoreClass="Fiacre.ecore#//PatternProperty"/>
    <genClasses ecoreClass="Fiacre.ecore#//LTLPattern">
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//LTLPattern/property"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//DeadlockFreePattern"/>
    <genClasses ecoreClass="Fiacre.ecore#//InfinitelyOftenPattern">
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//InfinitelyOftenPattern/subject"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//MortalPattern">
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//MortalPattern/subject"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//PresencePattern">
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//PresencePattern/subject"/>
      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Fiacre.ecore#//PresencePattern/lasting"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//PresencePattern/after"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//PresencePattern/lower"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//PresencePattern/upper"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//PresencePattern/until"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//PresencePattern/before"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//PresencePattern/min"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//PresencePattern/max"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//AbsencePattern">
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//AbsencePattern/subject"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//AbsencePattern/after"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//AbsencePattern/lower"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//AbsencePattern/upper"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//AbsencePattern/until"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//AbsencePattern/before"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//AbsencePattern/min"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//AbsencePattern/max"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//AlwaysPattern">
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//AlwaysPattern/subject"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//AlwaysPattern/before"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//AlwaysPattern/after"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//AlwaysPattern/until"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//AlwaysPattern/min"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//AlwaysPattern/max"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//SequencePattern"/>
    <genClasses ecoreClass="Fiacre.ecore#//LTLProperty"/>
    <genClasses ecoreClass="Fiacre.ecore#//StateEvent">
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//StateEvent/subject"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//EnterStateEvent"/>
    <genClasses ecoreClass="Fiacre.ecore#//LeaveStateEvent"/>
    <genClasses ecoreClass="Fiacre.ecore#//Observable"/>
    <genClasses ecoreClass="Fiacre.ecore#//ObservableEvent"/>
    <genClasses ecoreClass="Fiacre.ecore#//PathEvent">
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//PathEvent/path"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//PathEvent/item"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//Path">
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//Path/items"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//PathItem"/>
    <genClasses ecoreClass="Fiacre.ecore#//NaturalItem">
      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Fiacre.ecore#//NaturalItem/value"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//NamedItem">
      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Fiacre.ecore#//NamedItem/declaration"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//Subject"/>
    <genClasses ecoreClass="Fiacre.ecore#//StateSubject">
      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Fiacre.ecore#//StateSubject/state"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//ValueSubject">
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//ValueSubject/value"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//TagSubject">
      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Fiacre.ecore#//TagSubject/tag"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//EventSubject">
      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Fiacre.ecore#//EventSubject/event"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//TupleType">
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//TupleType/types"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//NaturalType"/>
    <genClasses ecoreClass="Fiacre.ecore#//IntegerType"/>
    <genClasses ecoreClass="Fiacre.ecore#//BooleanType"/>
    <genClasses ecoreClass="Fiacre.ecore#//UnlessStatement">
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//UnlessStatement/followers"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//StatementChoice">
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//StatementChoice/choices"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//StatementSequence">
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//StatementSequence/statements"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//AssignStatement">
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//AssignStatement/patterns"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//AssignStatement/values"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//AssignAnyStatement">
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//AssignAnyStatement/patterns"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//AssignAnyStatement/exp"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//SendStatement">
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//SendStatement/port"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//SendStatement/values"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//ReceiveStatement">
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//ReceiveStatement/port"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//ReceiveStatement/patterns"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//ReceiveStatement/exp"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//ConstructorPattern">
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//ConstructorPattern/parameters"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//ArrayAccessPattern">
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//ArrayAccessPattern/source"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//ArrayAccessPattern/index"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//RecordAccessPattern">
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//RecordAccessPattern/source"/>
      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Fiacre.ecore#//RecordAccessPattern/field"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//AllExpression">
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//AllExpression/index"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//AllExpression/type"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//AllExpression/child"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//ExistsExpression">
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//ExistsExpression/index"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//ExistsExpression/type"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//ExistsExpression/child"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//Conditional">
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//Conditional/condition"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//Conditional/then"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//Conditional/else"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//Disjunction">
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//Disjunction/left"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//Disjunction/right"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//Implication">
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//Implication/left"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//Implication/right"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//Conjunction">
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//Conjunction/left"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//Conjunction/right"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//ComparisonEqual">
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//ComparisonEqual/left"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//ComparisonEqual/right"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//ComparisonNotEqual">
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//ComparisonNotEqual/left"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//ComparisonNotEqual/right"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//ComparisonLesser">
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//ComparisonLesser/left"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//ComparisonLesser/right"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//ComparisonLesserEqual">
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//ComparisonLesserEqual/left"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//ComparisonLesserEqual/right"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//ComparisonGreater">
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//ComparisonGreater/left"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//ComparisonGreater/right"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//ComparisonGreaterEqual">
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//ComparisonGreaterEqual/left"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//ComparisonGreaterEqual/right"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//Addition">
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//Addition/left"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//Addition/right"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//Substraction">
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//Substraction/left"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//Substraction/right"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//Multiplication">
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//Multiplication/left"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//Multiplication/right"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//Division">
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//Division/left"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//Division/right"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//Modulo">
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//Modulo/left"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//Modulo/right"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//UnaryPlusExpression">
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//UnaryPlusExpression/child"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//UnaryMinusExpression">
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//UnaryMinusExpression/child"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//UnaryNegationExpression">
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//UnaryNegationExpression/child"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//UnaryFirstExpression">
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//UnaryFirstExpression/child"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//UnaryLengthExpression">
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//UnaryLengthExpression/child"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//UnaryCoerceExpression">
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//UnaryCoerceExpression/child"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//UnaryFullExpression">
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//UnaryFullExpression/child"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//UnaryDeQueueExpression">
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//UnaryDeQueueExpression/child"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//UnaryEmptyExpression">
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//UnaryEmptyExpression/child"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//Projection">
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//Projection/channel"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//Projection/field"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//ConstructionExpression">
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//ConstructionExpression/parameters"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//ArrayAccessExpression">
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//ArrayAccessExpression/child"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//ArrayAccessExpression/indexes"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//RecordAccessExpression">
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//RecordAccessExpression/child"/>
      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Fiacre.ecore#//RecordAccessExpression/field"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//TrueLiteral"/>
    <genClasses ecoreClass="Fiacre.ecore#//FalseLiteral"/>
    <genClasses ecoreClass="Fiacre.ecore#//AllProperty">
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//AllProperty/variable"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//AllProperty/type"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//AllProperty/child"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//ExistsProperty">
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//ExistsProperty/variable"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//ExistsProperty/type"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//ExistsProperty/child"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//PropertyDisjunction">
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//PropertyDisjunction/left"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//PropertyDisjunction/right"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//PropertyImplication">
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//PropertyImplication/left"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//PropertyImplication/right"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//PropertyConjunction">
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//PropertyConjunction/left"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//PropertyConjunction/right"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//PropertyNegation">
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//PropertyNegation/child"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//LeadsToPattern">
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//LeadsToPattern/subject"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//LeadsToPattern/follower"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//LeadsToPattern/before"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//LeadsToPattern/lower"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//LeadsToPattern/upper"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//LeadsToPattern/after"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//LeadsToPattern/until"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//LeadsToPattern/min"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//LeadsToPattern/max"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//PrecedesPattern">
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//PrecedesPattern/subject"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//PrecedesPattern/follower"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//PrecedesPattern/before"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//PrecedesPattern/after"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//PrecedesPattern/until"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//PrecedesPattern/min"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//PrecedesPattern/max"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//LTLAll">
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//LTLAll/index"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//LTLAll/type"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//LTLAll/child"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//LTLExists">
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//LTLExists/index"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//LTLExists/type"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//LTLExists/child"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//LTLDisjunction">
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//LTLDisjunction/left"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//LTLDisjunction/right"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//LTLImplication">
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//LTLImplication/left"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//LTLImplication/right"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//LTLConjunction">
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//LTLConjunction/left"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//LTLConjunction/right"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//LTLUntil">
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//LTLUntil/left"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//LTLUntil/right"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//LTLRelease">
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//LTLRelease/left"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//LTLRelease/right"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//LTLUnaryNegation">
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//LTLUnaryNegation/operand"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//LTLUnaryNext">
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//LTLUnaryNext/operand"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//LTLUnaryAlways">
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//LTLUnaryAlways/operand"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//LTLUnaryEventually">
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//LTLUnaryEventually/operand"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//LTLVariable">
      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Fiacre.ecore#//LTLVariable/declaration"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//ObservableDisjunction">
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//ObservableDisjunction/left"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//ObservableDisjunction/right"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//ObservableImplication">
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//ObservableImplication/left"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//ObservableImplication/right"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//ObservableConjunction">
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//ObservableConjunction/left"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//ObservableConjunction/right"/>
    </genClasses>
    <genClasses ecoreClass="Fiacre.ecore#//ObservableNegation">
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Fiacre.ecore#//ObservableNegation/child"/>
    </genClasses>
  </genPackages>
</genmodel:GenModel>
