aboutsummaryrefslogtreecommitdiffstats
path: root/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model
diff options
context:
space:
mode:
Diffstat (limited to 'org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model')
-rw-r--r--org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/problem.aird506
-rw-r--r--org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/Argument.java20
-rw-r--r--org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/ClassDeclaration.java4
-rw-r--r--org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/EnumDeclaration.java36
-rw-r--r--org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/Node.java2
-rw-r--r--org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/Parameter.java6
-rw-r--r--org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/ProblemFactory.java9
-rw-r--r--org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/ProblemPackage.java172
-rw-r--r--org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/ReferenceDeclaration.java6
-rw-r--r--org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/Variable.java2
-rw-r--r--org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/VariableOrNode.java16
-rw-r--r--org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/ArgumentImpl.java58
-rw-r--r--org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/ClassDeclarationImpl.java9
-rw-r--r--org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/EnumDeclarationImpl.java150
-rw-r--r--org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/NodeImpl.java2
-rw-r--r--org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/ParameterImpl.java19
-rw-r--r--org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/ProblemFactoryImpl.java12
-rw-r--r--org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/ProblemPackageImpl.java82
-rw-r--r--org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/ReferenceDeclarationImpl.java19
-rw-r--r--org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/VariableImpl.java2
-rw-r--r--org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/VariableOrNodeImpl.java37
-rw-r--r--org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/util/ProblemAdapterFactory.java38
-rw-r--r--org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/util/ProblemSwitch.java60
-rw-r--r--org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/resources/model/problem.ecore17
-rw-r--r--org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/resources/model/problem.genmodel6
25 files changed, 1006 insertions, 284 deletions
diff --git a/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/problem.aird b/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/problem.aird
index 1769c224..047b72a2 100644
--- a/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/problem.aird
+++ b/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/problem.aird
@@ -5,7 +5,7 @@
5 <semanticResources>src/main/resources/model/problem.genmodel</semanticResources> 5 <semanticResources>src/main/resources/model/problem.genmodel</semanticResources>
6 <ownedViews xmi:type="viewpoint:DView" uid="_CsAAYKA4EeuqkpDnuik1sg"> 6 <ownedViews xmi:type="viewpoint:DView" uid="_CsAAYKA4EeuqkpDnuik1sg">
7 <viewpoint xmi:type="description:Viewpoint" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']"/> 7 <viewpoint xmi:type="description:Viewpoint" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']"/>
8 <ownedRepresentationDescriptors xmi:type="viewpoint:DRepresentationDescriptor" uid="_CsYa4KA4EeuqkpDnuik1sg" name="problem" repPath="#_CsUwgKA4EeuqkpDnuik1sg" changeId="21ccbdb3-d7f2-4782-aa2a-5fc2003467bb"> 8 <ownedRepresentationDescriptors xmi:type="viewpoint:DRepresentationDescriptor" uid="_CsYa4KA4EeuqkpDnuik1sg" name="problem" repPath="#_CsUwgKA4EeuqkpDnuik1sg" changeId="c29543bd-4d24-42d3-8f5b-82d41af742bd">
9 <description xmi:type="description_1:DiagramDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']"/> 9 <description xmi:type="description_1:DiagramDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']"/>
10 <target xmi:type="ecore:EPackage" href="src/main/resources/model/problem.ecore#/"/> 10 <target xmi:type="ecore:EPackage" href="src/main/resources/model/problem.ecore#/"/>
11 </ownedRepresentationDescriptors> 11 </ownedRepresentationDescriptors>
@@ -82,7 +82,7 @@
82 <styles xmi:type="notation:FilteringStyle" xmi:id="_fit3lqA5EeuqkpDnuik1sg"/> 82 <styles xmi:type="notation:FilteringStyle" xmi:id="_fit3lqA5EeuqkpDnuik1sg"/>
83 </children> 83 </children>
84 <styles xmi:type="notation:ShapeStyle" xmi:id="_fit3kaA5EeuqkpDnuik1sg" fontName="Noto Sans" fontHeight="8"/> 84 <styles xmi:type="notation:ShapeStyle" xmi:id="_fit3kaA5EeuqkpDnuik1sg" fontName="Noto Sans" fontHeight="8"/>
85 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_fit3kqA5EeuqkpDnuik1sg" x="1236" y="720" width="120" height="100"/> 85 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_fit3kqA5EeuqkpDnuik1sg" x="1416" y="720" width="120" height="100"/>
86 </children> 86 </children>
87 <children xmi:type="notation:Node" xmi:id="_QKLK0KA6EeuqkpDnuik1sg" type="2003" element="_QKD2EKA6EeuqkpDnuik1sg"> 87 <children xmi:type="notation:Node" xmi:id="_QKLK0KA6EeuqkpDnuik1sg" type="2003" element="_QKD2EKA6EeuqkpDnuik1sg">
88 <children xmi:type="notation:Node" xmi:id="_QKLK06A6EeuqkpDnuik1sg" type="5007"/> 88 <children xmi:type="notation:Node" xmi:id="_QKLK06A6EeuqkpDnuik1sg" type="5007"/>
@@ -91,7 +91,7 @@
91 <styles xmi:type="notation:FilteringStyle" xmi:id="_QKLK1qA6EeuqkpDnuik1sg"/> 91 <styles xmi:type="notation:FilteringStyle" xmi:id="_QKLK1qA6EeuqkpDnuik1sg"/>
92 </children> 92 </children>
93 <styles xmi:type="notation:ShapeStyle" xmi:id="_QKLK0aA6EeuqkpDnuik1sg" fontName="Noto Sans" fontHeight="8"/> 93 <styles xmi:type="notation:ShapeStyle" xmi:id="_QKLK0aA6EeuqkpDnuik1sg" fontName="Noto Sans" fontHeight="8"/>
94 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_QKLK0qA6EeuqkpDnuik1sg" x="1068" y="960" width="120" height="100"/> 94 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_QKLK0qA6EeuqkpDnuik1sg" x="1248" y="960" width="120" height="100"/>
95 </children> 95 </children>
96 <children xmi:type="notation:Node" xmi:id="_jP6FkKA6EeuqkpDnuik1sg" type="2003" element="_jPpm4KA6EeuqkpDnuik1sg"> 96 <children xmi:type="notation:Node" xmi:id="_jP6FkKA6EeuqkpDnuik1sg" type="2003" element="_jPpm4KA6EeuqkpDnuik1sg">
97 <children xmi:type="notation:Node" xmi:id="_jP6soKA6EeuqkpDnuik1sg" type="5007"/> 97 <children xmi:type="notation:Node" xmi:id="_jP6soKA6EeuqkpDnuik1sg" type="5007"/>
@@ -100,7 +100,7 @@
100 <styles xmi:type="notation:FilteringStyle" xmi:id="_jP6so6A6EeuqkpDnuik1sg"/> 100 <styles xmi:type="notation:FilteringStyle" xmi:id="_jP6so6A6EeuqkpDnuik1sg"/>
101 </children> 101 </children>
102 <styles xmi:type="notation:ShapeStyle" xmi:id="_jP6FkaA6EeuqkpDnuik1sg" fontName="Noto Sans" fontHeight="8"/> 102 <styles xmi:type="notation:ShapeStyle" xmi:id="_jP6FkaA6EeuqkpDnuik1sg" fontName="Noto Sans" fontHeight="8"/>
103 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_jP6FkqA6EeuqkpDnuik1sg" x="1056" y="720" width="120" height="100"/> 103 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_jP6FkqA6EeuqkpDnuik1sg" x="1236" y="720" width="120" height="100"/>
104 </children> 104 </children>
105 <children xmi:type="notation:Node" xmi:id="_sdPX0KA6EeuqkpDnuik1sg" type="2003" element="_sc_gMKA6EeuqkpDnuik1sg"> 105 <children xmi:type="notation:Node" xmi:id="_sdPX0KA6EeuqkpDnuik1sg" type="2003" element="_sc_gMKA6EeuqkpDnuik1sg">
106 <children xmi:type="notation:Node" xmi:id="_sdP-4KA6EeuqkpDnuik1sg" type="5007"/> 106 <children xmi:type="notation:Node" xmi:id="_sdP-4KA6EeuqkpDnuik1sg" type="5007"/>
@@ -109,7 +109,7 @@
109 <styles xmi:type="notation:FilteringStyle" xmi:id="_sdP-46A6EeuqkpDnuik1sg"/> 109 <styles xmi:type="notation:FilteringStyle" xmi:id="_sdP-46A6EeuqkpDnuik1sg"/>
110 </children> 110 </children>
111 <styles xmi:type="notation:ShapeStyle" xmi:id="_sdPX0aA6EeuqkpDnuik1sg" fontName="Noto Sans" fontHeight="8"/> 111 <styles xmi:type="notation:ShapeStyle" xmi:id="_sdPX0aA6EeuqkpDnuik1sg" fontName="Noto Sans" fontHeight="8"/>
112 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_sdPX0qA6EeuqkpDnuik1sg" x="1236" y="960" width="120" height="100"/> 112 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_sdPX0qA6EeuqkpDnuik1sg" x="1416" y="960" width="120" height="100"/>
113 </children> 113 </children>
114 <children xmi:type="notation:Node" xmi:id="_4k5GIKA6EeuqkpDnuik1sg" type="2003" element="_4k00sKA6EeuqkpDnuik1sg"> 114 <children xmi:type="notation:Node" xmi:id="_4k5GIKA6EeuqkpDnuik1sg" type="2003" element="_4k00sKA6EeuqkpDnuik1sg">
115 <children xmi:type="notation:Node" xmi:id="_4k5GI6A6EeuqkpDnuik1sg" type="5007"/> 115 <children xmi:type="notation:Node" xmi:id="_4k5GI6A6EeuqkpDnuik1sg" type="5007"/>
@@ -118,7 +118,7 @@
118 <styles xmi:type="notation:FilteringStyle" xmi:id="_4k5GJqA6EeuqkpDnuik1sg"/> 118 <styles xmi:type="notation:FilteringStyle" xmi:id="_4k5GJqA6EeuqkpDnuik1sg"/>
119 </children> 119 </children>
120 <styles xmi:type="notation:ShapeStyle" xmi:id="_4k5GIaA6EeuqkpDnuik1sg" fontName="Noto Sans" fontHeight="8"/> 120 <styles xmi:type="notation:ShapeStyle" xmi:id="_4k5GIaA6EeuqkpDnuik1sg" fontName="Noto Sans" fontHeight="8"/>
121 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_4k5GIqA6EeuqkpDnuik1sg" x="1236" y="1128" width="120" height="100"/> 121 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_4k5GIqA6EeuqkpDnuik1sg" x="1416" y="1128" width="120" height="100"/>
122 </children> 122 </children>
123 <children xmi:type="notation:Node" xmi:id="_6KEUMKA6EeuqkpDnuik1sg" type="2003" element="_6J_bsKA6EeuqkpDnuik1sg"> 123 <children xmi:type="notation:Node" xmi:id="_6KEUMKA6EeuqkpDnuik1sg" type="2003" element="_6J_bsKA6EeuqkpDnuik1sg">
124 <children xmi:type="notation:Node" xmi:id="_6KEUM6A6EeuqkpDnuik1sg" type="5007"/> 124 <children xmi:type="notation:Node" xmi:id="_6KEUM6A6EeuqkpDnuik1sg" type="5007"/>
@@ -131,7 +131,7 @@
131 <styles xmi:type="notation:FilteringStyle" xmi:id="_6KEUNqA6EeuqkpDnuik1sg"/> 131 <styles xmi:type="notation:FilteringStyle" xmi:id="_6KEUNqA6EeuqkpDnuik1sg"/>
132 </children> 132 </children>
133 <styles xmi:type="notation:ShapeStyle" xmi:id="_6KEUMaA6EeuqkpDnuik1sg" fontName="Noto Sans" fontHeight="8"/> 133 <styles xmi:type="notation:ShapeStyle" xmi:id="_6KEUMaA6EeuqkpDnuik1sg" fontName="Noto Sans" fontHeight="8"/>
134 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_6KEUMqA6EeuqkpDnuik1sg" x="1164" y="1284" width="120" height="100"/> 134 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_6KEUMqA6EeuqkpDnuik1sg" x="1344" y="1284" width="120" height="100"/>
135 </children> 135 </children>
136 <children xmi:type="notation:Node" xmi:id="_-O-UEKA6EeuqkpDnuik1sg" type="2003" element="_-O6CoKA6EeuqkpDnuik1sg"> 136 <children xmi:type="notation:Node" xmi:id="_-O-UEKA6EeuqkpDnuik1sg" type="2003" element="_-O6CoKA6EeuqkpDnuik1sg">
137 <children xmi:type="notation:Node" xmi:id="_-O-7IKA6EeuqkpDnuik1sg" type="5007"/> 137 <children xmi:type="notation:Node" xmi:id="_-O-7IKA6EeuqkpDnuik1sg" type="5007"/>
@@ -140,7 +140,7 @@
140 <styles xmi:type="notation:FilteringStyle" xmi:id="_-O-7I6A6EeuqkpDnuik1sg"/> 140 <styles xmi:type="notation:FilteringStyle" xmi:id="_-O-7I6A6EeuqkpDnuik1sg"/>
141 </children> 141 </children>
142 <styles xmi:type="notation:ShapeStyle" xmi:id="_-O-UEaA6EeuqkpDnuik1sg" fontName="Noto Sans" fontHeight="8"/> 142 <styles xmi:type="notation:ShapeStyle" xmi:id="_-O-UEaA6EeuqkpDnuik1sg" fontName="Noto Sans" fontHeight="8"/>
143 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_-O-UEqA6EeuqkpDnuik1sg" x="1464" y="960" width="120" height="100"/> 143 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_-O-UEqA6EeuqkpDnuik1sg" x="1644" y="960" width="120" height="100"/>
144 </children> 144 </children>
145 <children xmi:type="notation:Node" xmi:id="_V6pfMKA7EeuqkpDnuik1sg" type="2003" element="_V6YZcKA7EeuqkpDnuik1sg"> 145 <children xmi:type="notation:Node" xmi:id="_V6pfMKA7EeuqkpDnuik1sg" type="2003" element="_V6YZcKA7EeuqkpDnuik1sg">
146 <children xmi:type="notation:Node" xmi:id="_V6qGQKA7EeuqkpDnuik1sg" type="5007"/> 146 <children xmi:type="notation:Node" xmi:id="_V6qGQKA7EeuqkpDnuik1sg" type="5007"/>
@@ -149,7 +149,7 @@
149 <styles xmi:type="notation:FilteringStyle" xmi:id="_V6qGQ6A7EeuqkpDnuik1sg"/> 149 <styles xmi:type="notation:FilteringStyle" xmi:id="_V6qGQ6A7EeuqkpDnuik1sg"/>
150 </children> 150 </children>
151 <styles xmi:type="notation:ShapeStyle" xmi:id="_V6pfMaA7EeuqkpDnuik1sg" fontName="Noto Sans" fontHeight="8"/> 151 <styles xmi:type="notation:ShapeStyle" xmi:id="_V6pfMaA7EeuqkpDnuik1sg" fontName="Noto Sans" fontHeight="8"/>
152 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_V6pfMqA7EeuqkpDnuik1sg" x="1368" y="1284" width="120" height="100"/> 152 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_V6pfMqA7EeuqkpDnuik1sg" x="1548" y="1284" width="120" height="100"/>
153 </children> 153 </children>
154 <children xmi:type="notation:Node" xmi:id="_rRhWIKA7EeuqkpDnuik1sg" type="2003" element="_rRcdoKA7EeuqkpDnuik1sg"> 154 <children xmi:type="notation:Node" xmi:id="_rRhWIKA7EeuqkpDnuik1sg" type="2003" element="_rRcdoKA7EeuqkpDnuik1sg">
155 <children xmi:type="notation:Node" xmi:id="_rRh9MKA7EeuqkpDnuik1sg" type="5007"/> 155 <children xmi:type="notation:Node" xmi:id="_rRh9MKA7EeuqkpDnuik1sg" type="5007"/>
@@ -158,7 +158,7 @@
158 <styles xmi:type="notation:FilteringStyle" xmi:id="_rRh9M6A7EeuqkpDnuik1sg"/> 158 <styles xmi:type="notation:FilteringStyle" xmi:id="_rRh9M6A7EeuqkpDnuik1sg"/>
159 </children> 159 </children>
160 <styles xmi:type="notation:ShapeStyle" xmi:id="_rRhWIaA7EeuqkpDnuik1sg" fontName="Noto Sans" fontHeight="8"/> 160 <styles xmi:type="notation:ShapeStyle" xmi:id="_rRhWIaA7EeuqkpDnuik1sg" fontName="Noto Sans" fontHeight="8"/>
161 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_rRhWIqA7EeuqkpDnuik1sg" x="1450" y="720" width="147" height="100"/> 161 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_rRhWIqA7EeuqkpDnuik1sg" x="1630" y="720" width="147" height="100"/>
162 </children> 162 </children>
163 <children xmi:type="notation:Node" xmi:id="_p9wywKA8EeuqkpDnuik1sg" type="2003" element="_p9d30KA8EeuqkpDnuik1sg"> 163 <children xmi:type="notation:Node" xmi:id="_p9wywKA8EeuqkpDnuik1sg" type="2003" element="_p9d30KA8EeuqkpDnuik1sg">
164 <children xmi:type="notation:Node" xmi:id="_p9xZ0KA8EeuqkpDnuik1sg" type="5007"/> 164 <children xmi:type="notation:Node" xmi:id="_p9xZ0KA8EeuqkpDnuik1sg" type="5007"/>
@@ -171,7 +171,7 @@
171 <styles xmi:type="notation:FilteringStyle" xmi:id="_p9xZ06A8EeuqkpDnuik1sg"/> 171 <styles xmi:type="notation:FilteringStyle" xmi:id="_p9xZ06A8EeuqkpDnuik1sg"/>
172 </children> 172 </children>
173 <styles xmi:type="notation:ShapeStyle" xmi:id="_p9wywaA8EeuqkpDnuik1sg" fontName="Noto Sans" fontHeight="8"/> 173 <styles xmi:type="notation:ShapeStyle" xmi:id="_p9wywaA8EeuqkpDnuik1sg" fontName="Noto Sans" fontHeight="8"/>
174 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_p9wywqA8EeuqkpDnuik1sg" x="1464" y="528" width="120" height="100"/> 174 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_p9wywqA8EeuqkpDnuik1sg" x="1644" y="528" width="120" height="100"/>
175 </children> 175 </children>
176 <children xmi:type="notation:Node" xmi:id="_xsq_MKA8EeuqkpDnuik1sg" type="2003" element="_xsYrUKA8EeuqkpDnuik1sg"> 176 <children xmi:type="notation:Node" xmi:id="_xsq_MKA8EeuqkpDnuik1sg" type="2003" element="_xsYrUKA8EeuqkpDnuik1sg">
177 <children xmi:type="notation:Node" xmi:id="_xsrmQKA8EeuqkpDnuik1sg" type="5007"/> 177 <children xmi:type="notation:Node" xmi:id="_xsrmQKA8EeuqkpDnuik1sg" type="5007"/>
@@ -180,7 +180,7 @@
180 <styles xmi:type="notation:FilteringStyle" xmi:id="_xsrmQ6A8EeuqkpDnuik1sg"/> 180 <styles xmi:type="notation:FilteringStyle" xmi:id="_xsrmQ6A8EeuqkpDnuik1sg"/>
181 </children> 181 </children>
182 <styles xmi:type="notation:ShapeStyle" xmi:id="_xsq_MaA8EeuqkpDnuik1sg" fontName="Noto Sans" fontHeight="8"/> 182 <styles xmi:type="notation:ShapeStyle" xmi:id="_xsq_MaA8EeuqkpDnuik1sg" fontName="Noto Sans" fontHeight="8"/>
183 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_xsq_MqA8EeuqkpDnuik1sg" x="1692" y="528" width="120" height="100"/> 183 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_xsq_MqA8EeuqkpDnuik1sg" x="1020" y="336" width="120" height="100"/>
184 </children> 184 </children>
185 <children xmi:type="notation:Node" xmi:id="_BMfjMKA9EeuqkpDnuik1sg" type="2003" element="_BMXnYKA9EeuqkpDnuik1sg"> 185 <children xmi:type="notation:Node" xmi:id="_BMfjMKA9EeuqkpDnuik1sg" type="2003" element="_BMXnYKA9EeuqkpDnuik1sg">
186 <children xmi:type="notation:Node" xmi:id="_BMfjM6A9EeuqkpDnuik1sg" type="5007"/> 186 <children xmi:type="notation:Node" xmi:id="_BMfjM6A9EeuqkpDnuik1sg" type="5007"/>
@@ -201,7 +201,7 @@
201 <styles xmi:type="notation:FilteringStyle" xmi:id="_BMfjNqA9EeuqkpDnuik1sg"/> 201 <styles xmi:type="notation:FilteringStyle" xmi:id="_BMfjNqA9EeuqkpDnuik1sg"/>
202 </children> 202 </children>
203 <styles xmi:type="notation:ShapeStyle" xmi:id="_BMfjMaA9EeuqkpDnuik1sg" fontName="Noto Sans" fontHeight="8"/> 203 <styles xmi:type="notation:ShapeStyle" xmi:id="_BMfjMaA9EeuqkpDnuik1sg" fontName="Noto Sans" fontHeight="8"/>
204 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_BMfjMqA9EeuqkpDnuik1sg" x="1692" y="720" width="120" height="100"/> 204 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_BMfjMqA9EeuqkpDnuik1sg" x="1872" y="720" width="120" height="100"/>
205 </children> 205 </children>
206 <children xmi:type="notation:Node" xmi:id="_QUDYMKA9EeuqkpDnuik1sg" type="2003" element="_QTzgkKA9EeuqkpDnuik1sg"> 206 <children xmi:type="notation:Node" xmi:id="_QUDYMKA9EeuqkpDnuik1sg" type="2003" element="_QTzgkKA9EeuqkpDnuik1sg">
207 <children xmi:type="notation:Node" xmi:id="_QUDYM6A9EeuqkpDnuik1sg" type="5007"/> 207 <children xmi:type="notation:Node" xmi:id="_QUDYM6A9EeuqkpDnuik1sg" type="5007"/>
@@ -289,7 +289,25 @@
289 <styles xmi:type="notation:FilteringStyle" xmi:id="_IwtR09YPEeuF_d0WEhR3Xw"/> 289 <styles xmi:type="notation:FilteringStyle" xmi:id="_IwtR09YPEeuF_d0WEhR3Xw"/>
290 </children> 290 </children>
291 <styles xmi:type="notation:ShapeStyle" xmi:id="_IwsqwdYPEeuF_d0WEhR3Xw" fontName="Noto Sans" fontHeight="8"/> 291 <styles xmi:type="notation:ShapeStyle" xmi:id="_IwsqwdYPEeuF_d0WEhR3Xw" fontName="Noto Sans" fontHeight="8"/>
292 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_IwsqwtYPEeuF_d0WEhR3Xw" x="996" y="1476" width="120" height="100"/> 292 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_IwsqwtYPEeuF_d0WEhR3Xw" x="1353" y="1476" width="120" height="100"/>
293 </children>
294 <children xmi:type="notation:Node" xmi:id="_M6O-0NbGEeuymriYTNxK2g" type="2003" element="_M58q8NbGEeuymriYTNxK2g">
295 <children xmi:type="notation:Node" xmi:id="_M6Pl4NbGEeuymriYTNxK2g" type="5007"/>
296 <children xmi:type="notation:Node" xmi:id="_M6Pl4dbGEeuymriYTNxK2g" type="7004">
297 <styles xmi:type="notation:SortingStyle" xmi:id="_M6Pl4tbGEeuymriYTNxK2g"/>
298 <styles xmi:type="notation:FilteringStyle" xmi:id="_M6Pl49bGEeuymriYTNxK2g"/>
299 </children>
300 <styles xmi:type="notation:ShapeStyle" xmi:id="_M6O-0dbGEeuymriYTNxK2g" fontName="Noto Sans" fontHeight="8"/>
301 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_M6O-0tbGEeuymriYTNxK2g" x="903" y="720" width="120" height="100"/>
302 </children>
303 <children xmi:type="notation:Node" xmi:id="_Kw-vINbNEeuymriYTNxK2g" type="2003" element="_KwtCUNbNEeuymriYTNxK2g">
304 <children xmi:type="notation:Node" xmi:id="_Kw_WMNbNEeuymriYTNxK2g" type="5007"/>
305 <children xmi:type="notation:Node" xmi:id="_Kw_WMdbNEeuymriYTNxK2g" type="7004">
306 <styles xmi:type="notation:SortingStyle" xmi:id="_Kw_WMtbNEeuymriYTNxK2g"/>
307 <styles xmi:type="notation:FilteringStyle" xmi:id="_Kw_WM9bNEeuymriYTNxK2g"/>
308 </children>
309 <styles xmi:type="notation:ShapeStyle" xmi:id="_Kw-vIdbNEeuymriYTNxK2g" fontName="Noto Sans" fontHeight="8"/>
310 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Kw-vItbNEeuymriYTNxK2g" x="1137" y="180" width="120" height="100"/>
293 </children> 311 </children>
294 <styles xmi:type="notation:DiagramStyle" xmi:id="_CsZB8qA4EeuqkpDnuik1sg"/> 312 <styles xmi:type="notation:DiagramStyle" xmi:id="_CsZB8qA4EeuqkpDnuik1sg"/>
295 <edges xmi:type="notation:Edge" xmi:id="_ODhSQKA4EeuqkpDnuik1sg" type="4001" element="_ODPlcKA4EeuqkpDnuik1sg" source="_JT0o8KA4EeuqkpDnuik1sg" target="_EfWNUKA4EeuqkpDnuik1sg"> 313 <edges xmi:type="notation:Edge" xmi:id="_ODhSQKA4EeuqkpDnuik1sg" type="4001" element="_ODPlcKA4EeuqkpDnuik1sg" source="_JT0o8KA4EeuqkpDnuik1sg" target="_EfWNUKA4EeuqkpDnuik1sg">
@@ -308,22 +326,6 @@
308 <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_ODh5VKA4EeuqkpDnuik1sg" id="(0.5,0.0)"/> 326 <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_ODh5VKA4EeuqkpDnuik1sg" id="(0.5,0.0)"/>
309 <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_ODh5VaA4EeuqkpDnuik1sg" id="(0.5,0.5)"/> 327 <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_ODh5VaA4EeuqkpDnuik1sg" id="(0.5,0.5)"/>
310 </edges> 328 </edges>
311 <edges xmi:type="notation:Edge" xmi:id="_VtWKYKA4EeuqkpDnuik1sg" type="4001" element="_VtPctqA4EeuqkpDnuik1sg" source="_JT0o8KA4EeuqkpDnuik1sg" target="_JT0o8KA4EeuqkpDnuik1sg">
312 <children xmi:type="notation:Node" xmi:id="_VtWKZKA4EeuqkpDnuik1sg" type="6001">
313 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_VtWKZaA4EeuqkpDnuik1sg" x="-31" y="-17"/>
314 </children>
315 <children xmi:type="notation:Node" xmi:id="_VtWKZqA4EeuqkpDnuik1sg" type="6002">
316 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_VtWKZ6A4EeuqkpDnuik1sg" x="-5" y="-108"/>
317 </children>
318 <children xmi:type="notation:Node" xmi:id="_VtWKaKA4EeuqkpDnuik1sg" type="6003">
319 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_VtWKaaA4EeuqkpDnuik1sg" x="-88" y="-14"/>
320 </children>
321 <styles xmi:type="notation:ConnectorStyle" xmi:id="_VtWKYaA4EeuqkpDnuik1sg" routing="Rectilinear"/>
322 <styles xmi:type="notation:FontStyle" xmi:id="_VtWKYqA4EeuqkpDnuik1sg" fontColor="7490599" fontName="Noto Sans" fontHeight="8"/>
323 <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_VtWKY6A4EeuqkpDnuik1sg" points="[24, 0, 37, 98]$[24, 58, 37, 156]$[132, 58, 145, 156]$[132, -26, 145, 72]$[94, -26, 107, 72]"/>
324 <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_VtX_kKA4EeuqkpDnuik1sg" id="(0.2033898305084746,1.0)"/>
325 <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_VtX_kaA4EeuqkpDnuik1sg" id="(0.09322033898305085,0.0)"/>
326 </edges>
327 <edges xmi:type="notation:Edge" xmi:id="_gR35EKA4EeuqkpDnuik1sg" type="4001" element="_gRoBcKA4EeuqkpDnuik1sg" source="_c-HCQKA4EeuqkpDnuik1sg" target="_EfWNUKA4EeuqkpDnuik1sg"> 329 <edges xmi:type="notation:Edge" xmi:id="_gR35EKA4EeuqkpDnuik1sg" type="4001" element="_gRoBcKA4EeuqkpDnuik1sg" source="_c-HCQKA4EeuqkpDnuik1sg" target="_EfWNUKA4EeuqkpDnuik1sg">
328 <children xmi:type="notation:Node" xmi:id="_gR4gIKA4EeuqkpDnuik1sg" type="6001"> 330 <children xmi:type="notation:Node" xmi:id="_gR4gIKA4EeuqkpDnuik1sg" type="6001">
329 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_gR4gIaA4EeuqkpDnuik1sg" y="-10"/> 331 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_gR4gIaA4EeuqkpDnuik1sg" y="-10"/>
@@ -356,22 +358,6 @@
356 <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_jlBr4KA4EeuqkpDnuik1sg" id="(0.4067796610169492,1.0)"/> 358 <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_jlBr4KA4EeuqkpDnuik1sg" id="(0.4067796610169492,1.0)"/>
357 <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_jlBr4aA4EeuqkpDnuik1sg" id="(0.503448275862069,0.0)"/> 359 <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_jlBr4aA4EeuqkpDnuik1sg" id="(0.503448275862069,0.0)"/>
358 </edges> 360 </edges>
359 <edges xmi:type="notation:Edge" xmi:id="_ufaV0KA4EeuqkpDnuik1sg" type="4001" element="_ufJ3IKA4EeuqkpDnuik1sg" source="_c-HCQKA4EeuqkpDnuik1sg" target="_JT0o8KA4EeuqkpDnuik1sg">
360 <children xmi:type="notation:Node" xmi:id="_ufa84KA4EeuqkpDnuik1sg" type="6001">
361 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ufa84aA4EeuqkpDnuik1sg" x="-60" y="-58"/>
362 </children>
363 <children xmi:type="notation:Node" xmi:id="_ufa84qA4EeuqkpDnuik1sg" type="6002">
364 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ufa846A4EeuqkpDnuik1sg" x="18" y="10"/>
365 </children>
366 <children xmi:type="notation:Node" xmi:id="_ufa85KA4EeuqkpDnuik1sg" type="6003">
367 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ufa85aA4EeuqkpDnuik1sg" x="12" y="-10"/>
368 </children>
369 <styles xmi:type="notation:ConnectorStyle" xmi:id="_ufaV0aA4EeuqkpDnuik1sg" routing="Rectilinear"/>
370 <styles xmi:type="notation:FontStyle" xmi:id="_ufaV0qA4EeuqkpDnuik1sg" fontColor="7490599" fontName="Noto Sans" fontHeight="8"/>
371 <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_ufaV06A4EeuqkpDnuik1sg" points="[37, 36, -35, 178]$[156, 36, 84, 178]$[156, -180, 84, -38]$[94, -180, 22, -38]"/>
372 <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_ufa85qA4EeuqkpDnuik1sg" id="(0.7448275862068966,0.0)"/>
373 <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_ufa856A4EeuqkpDnuik1sg" id="(0.8135593220338984,1.0)"/>
374 </edges>
375 <edges xmi:type="notation:Edge" xmi:id="_0V8EUKA4EeuqkpDnuik1sg" type="4001" element="_0V3L1qA4EeuqkpDnuik1sg" source="_c-HCQKA4EeuqkpDnuik1sg" target="_c-HCQKA4EeuqkpDnuik1sg"> 361 <edges xmi:type="notation:Edge" xmi:id="_0V8EUKA4EeuqkpDnuik1sg" type="4001" element="_0V3L1qA4EeuqkpDnuik1sg" source="_c-HCQKA4EeuqkpDnuik1sg" target="_c-HCQKA4EeuqkpDnuik1sg">
376 <children xmi:type="notation:Node" xmi:id="_0V8rYKA4EeuqkpDnuik1sg" type="6001"> 362 <children xmi:type="notation:Node" xmi:id="_0V8rYKA4EeuqkpDnuik1sg" type="6001">
377 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_0V8rYaA4EeuqkpDnuik1sg" x="30" y="11"/> 363 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_0V8rYaA4EeuqkpDnuik1sg" x="30" y="11"/>
@@ -436,38 +422,6 @@
436 <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_UzJhEKA6EeuqkpDnuik1sg" id="(0.3050847457627119,1.0)"/> 422 <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_UzJhEKA6EeuqkpDnuik1sg" id="(0.3050847457627119,1.0)"/>
437 <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_UzJhEaA6EeuqkpDnuik1sg" id="(0.4322033898305085,0.0)"/> 423 <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_UzJhEaA6EeuqkpDnuik1sg" id="(0.4322033898305085,0.0)"/>
438 </edges> 424 </edges>
439 <edges xmi:type="notation:Edge" xmi:id="_Z7WJ8KA6EeuqkpDnuik1sg" type="4001" element="_Z7FrQKA6EeuqkpDnuik1sg" source="_QKLK0KA6EeuqkpDnuik1sg" target="_JT0o8KA4EeuqkpDnuik1sg">
440 <children xmi:type="notation:Node" xmi:id="_Z7WJ9KA6EeuqkpDnuik1sg" type="6001">
441 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Z7WJ9aA6EeuqkpDnuik1sg" x="-49" y="113"/>
442 </children>
443 <children xmi:type="notation:Node" xmi:id="_Z7WJ9qA6EeuqkpDnuik1sg" type="6002">
444 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Z7WJ96A6EeuqkpDnuik1sg" x="104" y="113"/>
445 </children>
446 <children xmi:type="notation:Node" xmi:id="_Z7WJ-KA6EeuqkpDnuik1sg" type="6003">
447 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Z7WJ-aA6EeuqkpDnuik1sg" x="14" y="10"/>
448 </children>
449 <styles xmi:type="notation:ConnectorStyle" xmi:id="_Z7WJ8aA6EeuqkpDnuik1sg" routing="Rectilinear"/>
450 <styles xmi:type="notation:FontStyle" xmi:id="_Z7WJ8qA6EeuqkpDnuik1sg" fontColor="7490599" fontName="Noto Sans" fontHeight="8"/>
451 <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_Z7WJ86A6EeuqkpDnuik1sg" points="[-75, 50, 278, 266]$[-267, 50, 86, 266]$[-267, -192, 86, 24]$[-353, -192, 0, 24]"/>
452 <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Z7WxAKA6EeuqkpDnuik1sg" id="(0.635593220338983,0.0)"/>
453 <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Z7WxAaA6EeuqkpDnuik1sg" id="(1.0,0.24489795918367346)"/>
454 </edges>
455 <edges xmi:type="notation:Edge" xmi:id="_l7e7AKA6EeuqkpDnuik1sg" type="4001" element="_l7apoqA6EeuqkpDnuik1sg" source="_jP6FkKA6EeuqkpDnuik1sg" target="_RzZA0KA5EeuqkpDnuik1sg">
456 <children xmi:type="notation:Node" xmi:id="_l7e7BKA6EeuqkpDnuik1sg" type="6001">
457 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_l7e7BaA6EeuqkpDnuik1sg" x="131" y="-10"/>
458 </children>
459 <children xmi:type="notation:Node" xmi:id="_l7e7BqA6EeuqkpDnuik1sg" type="6002">
460 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_l7e7B6A6EeuqkpDnuik1sg" x="145" y="-21"/>
461 </children>
462 <children xmi:type="notation:Node" xmi:id="_l7e7CKA6EeuqkpDnuik1sg" type="6003">
463 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_l7e7CaA6EeuqkpDnuik1sg" x="26" y="27"/>
464 </children>
465 <styles xmi:type="notation:ConnectorStyle" xmi:id="_l7e7AaA6EeuqkpDnuik1sg" routing="Tree"/>
466 <styles xmi:type="notation:FontStyle" xmi:id="_l7e7AqA6EeuqkpDnuik1sg" fontName="Noto Sans" fontHeight="8"/>
467 <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_l7e7A6A6EeuqkpDnuik1sg" points="[0, 0, 337, 335]$[0, -228, 337, 107]$[-336, -228, 1, 107]$[-336, -286, 1, 49]"/>
468 <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_l7e7CqA6EeuqkpDnuik1sg" id="(0.711864406779661,0.0)"/>
469 <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_l7e7C6A6EeuqkpDnuik1sg" id="(0.5,0.5)"/>
470 </edges>
471 <edges xmi:type="notation:Edge" xmi:id="_onzXUKA6EeuqkpDnuik1sg" type="4001" element="_oni4rKA6EeuqkpDnuik1sg" source="_QKLK0KA6EeuqkpDnuik1sg" target="_jP6FkKA6EeuqkpDnuik1sg"> 425 <edges xmi:type="notation:Edge" xmi:id="_onzXUKA6EeuqkpDnuik1sg" type="4001" element="_oni4rKA6EeuqkpDnuik1sg" source="_QKLK0KA6EeuqkpDnuik1sg" target="_jP6FkKA6EeuqkpDnuik1sg">
472 <children xmi:type="notation:Node" xmi:id="_onz-YKA6EeuqkpDnuik1sg" type="6001"> 426 <children xmi:type="notation:Node" xmi:id="_onz-YKA6EeuqkpDnuik1sg" type="6001">
473 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_onz-YaA6EeuqkpDnuik1sg" x="-21" y="23"/> 427 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_onz-YaA6EeuqkpDnuik1sg" x="-21" y="23"/>
@@ -614,82 +568,66 @@
614 </edges> 568 </edges>
615 <edges xmi:type="notation:Edge" xmi:id="_Vj1sQKA8EeuqkpDnuik1sg" type="4001" element="_VjwMzqA8EeuqkpDnuik1sg" source="_6KEUMKA6EeuqkpDnuik1sg" target="_EfWNUKA4EeuqkpDnuik1sg"> 569 <edges xmi:type="notation:Edge" xmi:id="_Vj1sQKA8EeuqkpDnuik1sg" type="4001" element="_VjwMzqA8EeuqkpDnuik1sg" source="_6KEUMKA6EeuqkpDnuik1sg" target="_EfWNUKA4EeuqkpDnuik1sg">
616 <children xmi:type="notation:Node" xmi:id="_Vj1sRKA8EeuqkpDnuik1sg" type="6001"> 570 <children xmi:type="notation:Node" xmi:id="_Vj1sRKA8EeuqkpDnuik1sg" type="6001">
617 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Vj1sRaA8EeuqkpDnuik1sg" x="-79" y="526"/> 571 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Vj1sRaA8EeuqkpDnuik1sg" x="11" y="526"/>
618 </children> 572 </children>
619 <children xmi:type="notation:Node" xmi:id="_Vj1sRqA8EeuqkpDnuik1sg" type="6002"> 573 <children xmi:type="notation:Node" xmi:id="_Vj1sRqA8EeuqkpDnuik1sg" type="6002">
620 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Vj1sR6A8EeuqkpDnuik1sg" x="113" y="-10"/> 574 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Vj1sR6A8EeuqkpDnuik1sg" x="266" y="-10"/>
621 </children> 575 </children>
622 <children xmi:type="notation:Node" xmi:id="_Vj1sSKA8EeuqkpDnuik1sg" type="6003"> 576 <children xmi:type="notation:Node" xmi:id="_Vj1sSKA8EeuqkpDnuik1sg" type="6003">
623 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Vj1sSaA8EeuqkpDnuik1sg" x="-62" y="10"/> 577 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Vj1sSaA8EeuqkpDnuik1sg" x="-35" y="10"/>
624 </children> 578 </children>
625 <styles xmi:type="notation:ConnectorStyle" xmi:id="_Vj1sQaA8EeuqkpDnuik1sg" routing="Rectilinear"/> 579 <styles xmi:type="notation:ConnectorStyle" xmi:id="_Vj1sQaA8EeuqkpDnuik1sg" routing="Rectilinear"/>
626 <styles xmi:type="notation:FontStyle" xmi:id="_Vj1sQqA8EeuqkpDnuik1sg" fontColor="7490599" fontName="Noto Sans" fontHeight="8"/> 580 <styles xmi:type="notation:FontStyle" xmi:id="_Vj1sQqA8EeuqkpDnuik1sg" fontColor="7490599" fontName="Noto Sans" fontHeight="8"/>
627 <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_Vj1sQ6A8EeuqkpDnuik1sg" points="[-48, 24, 481, 682]$[-648, 24, -119, 682]$[-648, -708, -119, -50]$[-588, -708, -59, -50]"/> 581 <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_Vj1sQ6A8EeuqkpDnuik1sg" points="[-48, 24, 661, 682]$[-828, 24, -119, 682]$[-828, -708, -119, -50]$[-768, -708, -59, -50]"/>
628 <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Vj1sSqA8EeuqkpDnuik1sg" id="(0.4067796610169492,0.0)"/> 582 <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Vj1sSqA8EeuqkpDnuik1sg" id="(0.4067796610169492,0.0)"/>
629 <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Vj1sS6A8EeuqkpDnuik1sg" id="(0.5,1.0)"/> 583 <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Vj1sS6A8EeuqkpDnuik1sg" id="(0.5,1.0)"/>
630 </edges> 584 </edges>
631 <edges xmi:type="notation:Edge" xmi:id="_w-zMkKA8EeuqkpDnuik1sg" type="4001" element="_w-iG36A8EeuqkpDnuik1sg" source="_p9wywKA8EeuqkpDnuik1sg" target="_EfWNUKA4EeuqkpDnuik1sg"> 585 <edges xmi:type="notation:Edge" xmi:id="_w-zMkKA8EeuqkpDnuik1sg" type="4001" element="_w-iG36A8EeuqkpDnuik1sg" source="_p9wywKA8EeuqkpDnuik1sg" target="_EfWNUKA4EeuqkpDnuik1sg">
632 <children xmi:type="notation:Node" xmi:id="_w-zMlKA8EeuqkpDnuik1sg" type="6001"> 586 <children xmi:type="notation:Node" xmi:id="_w-zMlKA8EeuqkpDnuik1sg" type="6001">
633 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_w-zMlaA8EeuqkpDnuik1sg" x="174" y="-10"/> 587 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_w-zMlaA8EeuqkpDnuik1sg" x="-221" y="18"/>
634 </children> 588 </children>
635 <children xmi:type="notation:Node" xmi:id="_w-zzoKA8EeuqkpDnuik1sg" type="6002"> 589 <children xmi:type="notation:Node" xmi:id="_w-zzoKA8EeuqkpDnuik1sg" type="6002">
636 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_w-zzoaA8EeuqkpDnuik1sg" x="296" y="10"/> 590 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_w-zzoaA8EeuqkpDnuik1sg" x="449" y="10"/>
637 </children> 591 </children>
638 <children xmi:type="notation:Node" xmi:id="_w-zzoqA8EeuqkpDnuik1sg" type="6003"> 592 <children xmi:type="notation:Node" xmi:id="_w-zzoqA8EeuqkpDnuik1sg" type="6003">
639 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_w-zzo6A8EeuqkpDnuik1sg" x="52" y="10"/> 593 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_w-zzo6A8EeuqkpDnuik1sg" x="79" y="10"/>
640 </children> 594 </children>
641 <styles xmi:type="notation:ConnectorStyle" xmi:id="_w-zMkaA8EeuqkpDnuik1sg" routing="Rectilinear"/> 595 <styles xmi:type="notation:ConnectorStyle" xmi:id="_w-zMkaA8EeuqkpDnuik1sg" routing="Rectilinear"/>
642 <styles xmi:type="notation:FontStyle" xmi:id="_w-zMkqA8EeuqkpDnuik1sg" fontColor="7490599" fontName="Noto Sans" fontHeight="8"/> 596 <styles xmi:type="notation:FontStyle" xmi:id="_w-zMkqA8EeuqkpDnuik1sg" fontColor="7490599" fontName="Noto Sans" fontHeight="8"/>
643 <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_w-zMk6A8EeuqkpDnuik1sg" points="[0, 0, 722, 0]$[-722, 0, 0, 0]"/> 597 <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_w-zMk6A8EeuqkpDnuik1sg" points="[0, -25, 902, -25]$[-902, -25, 0, -25]"/>
644 <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_w-zzpKA8EeuqkpDnuik1sg" id="(0.0,0.5)"/> 598 <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_w-zzpKA8EeuqkpDnuik1sg" id="(0.0,0.5)"/>
645 <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_w-zzpaA8EeuqkpDnuik1sg" id="(1.0,0.5)"/> 599 <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_w-zzpaA8EeuqkpDnuik1sg" id="(1.0,0.5)"/>
646 </edges> 600 </edges>
647 <edges xmi:type="notation:Edge" xmi:id="_2VC4gKA8EeuqkpDnuik1sg" type="4001" element="_2U4ggqA8EeuqkpDnuik1sg" source="_xsq_MKA8EeuqkpDnuik1sg" target="_RzZA0KA5EeuqkpDnuik1sg">
648 <children xmi:type="notation:Node" xmi:id="_2VC4hKA8EeuqkpDnuik1sg" type="6001">
649 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_2VC4haA8EeuqkpDnuik1sg" x="-328" y="-10"/>
650 </children>
651 <children xmi:type="notation:Node" xmi:id="_2VC4hqA8EeuqkpDnuik1sg" type="6002">
652 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_2VC4h6A8EeuqkpDnuik1sg" x="-125" y="-38"/>
653 </children>
654 <children xmi:type="notation:Node" xmi:id="_2VC4iKA8EeuqkpDnuik1sg" type="6003">
655 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_2VC4iaA8EeuqkpDnuik1sg" x="-17" y="103"/>
656 </children>
657 <styles xmi:type="notation:ConnectorStyle" xmi:id="_2VC4gaA8EeuqkpDnuik1sg" routing="Tree"/>
658 <styles xmi:type="notation:FontStyle" xmi:id="_2VC4gqA8EeuqkpDnuik1sg" fontName="Noto Sans" fontHeight="8"/>
659 <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_2VC4g6A8EeuqkpDnuik1sg" points="[0, -6, 1048, 455]$[0, -78, 1048, 383]$[-1047, -78, 1, 383]$[-1047, -412, 1, 49]"/>
660 <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_2VC4iqA8EeuqkpDnuik1sg" id="(0.3305084745762712,0.061224489795918366)"/>
661 <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_2VC4i6A8EeuqkpDnuik1sg" id="(0.5,0.5)"/>
662 </edges>
663 <edges xmi:type="notation:Edge" xmi:id="_4eaYwKA8EeuqkpDnuik1sg" type="4001" element="_4eU5TqA8EeuqkpDnuik1sg" source="_D1D6MKA4EeuqkpDnuik1sg" target="_xsq_MKA8EeuqkpDnuik1sg"> 601 <edges xmi:type="notation:Edge" xmi:id="_4eaYwKA8EeuqkpDnuik1sg" type="4001" element="_4eU5TqA8EeuqkpDnuik1sg" source="_D1D6MKA4EeuqkpDnuik1sg" target="_xsq_MKA8EeuqkpDnuik1sg">
664 <children xmi:type="notation:Node" xmi:id="_4ea_06A8EeuqkpDnuik1sg" type="6001"> 602 <children xmi:type="notation:Node" xmi:id="_4ea_06A8EeuqkpDnuik1sg" type="6001">
665 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_4ea_1KA8EeuqkpDnuik1sg" x="-410" y="-17"/> 603 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_4ea_1KA8EeuqkpDnuik1sg" x="-36" y="-17"/>
666 </children> 604 </children>
667 <children xmi:type="notation:Node" xmi:id="_4ea_1aA8EeuqkpDnuik1sg" type="6002"> 605 <children xmi:type="notation:Node" xmi:id="_4ea_1aA8EeuqkpDnuik1sg" type="6002">
668 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_4ea_1qA8EeuqkpDnuik1sg" x="-19" y="10"/> 606 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_4ea_1qA8EeuqkpDnuik1sg" x="8" y="-14"/>
669 </children> 607 </children>
670 <children xmi:type="notation:Node" xmi:id="_4ea_16A8EeuqkpDnuik1sg" type="6003"> 608 <children xmi:type="notation:Node" xmi:id="_4ea_16A8EeuqkpDnuik1sg" type="6003">
671 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_4ea_2KA8EeuqkpDnuik1sg" x="-37" y="522"/> 609 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_4ea_2KA8EeuqkpDnuik1sg" x="-124" y="10"/>
672 </children> 610 </children>
673 <styles xmi:type="notation:ConnectorStyle" xmi:id="_4ea_0KA8EeuqkpDnuik1sg" routing="Rectilinear"/> 611 <styles xmi:type="notation:ConnectorStyle" xmi:id="_4ea_0KA8EeuqkpDnuik1sg" routing="Rectilinear"/>
674 <styles xmi:type="notation:FontStyle" xmi:id="_4ea_0aA8EeuqkpDnuik1sg" fontColor="7490599" fontName="Noto Sans" fontHeight="8"/> 612 <styles xmi:type="notation:FontStyle" xmi:id="_4ea_0aA8EeuqkpDnuik1sg" fontColor="7490599" fontName="Noto Sans" fontHeight="8"/>
675 <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_4ea_0qA8EeuqkpDnuik1sg" points="[-34, 50, -804, -274]$[-34, 84, -804, -240]$[840, 84, 70, -240]$[840, 300, 70, -24]"/> 613 <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_4ea_0qA8EeuqkpDnuik1sg" points="[-21, 50, -159, -58]$[-34, 84, -172, -24]$[137, 84, -1, -24]$[137, 107, -1, -1]"/>
676 <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_4ea_2aA8EeuqkpDnuik1sg" id="(1.0,0.4897959183673469)"/> 614 <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_4ea_2aA8EeuqkpDnuik1sg" id="(1.0,0.4897959183673469)"/>
677 <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_4ea_2qA8EeuqkpDnuik1sg" id="(0.0,0.24489795918367346)"/> 615 <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_4ea_2qA8EeuqkpDnuik1sg" id="(0.3389830508474576,0.0)"/>
678 </edges> 616 </edges>
679 <edges xmi:type="notation:Edge" xmi:id="_79_eAKA8EeuqkpDnuik1sg" type="4001" element="_79nqlqA8EeuqkpDnuik1sg" source="_p9wywKA8EeuqkpDnuik1sg" target="_xsq_MKA8EeuqkpDnuik1sg"> 617 <edges xmi:type="notation:Edge" xmi:id="_79_eAKA8EeuqkpDnuik1sg" type="4001" element="_79nqlqA8EeuqkpDnuik1sg" source="_p9wywKA8EeuqkpDnuik1sg" target="_xsq_MKA8EeuqkpDnuik1sg">
680 <children xmi:type="notation:Node" xmi:id="_79_eBKA8EeuqkpDnuik1sg" type="6001"> 618 <children xmi:type="notation:Node" xmi:id="_79_eBKA8EeuqkpDnuik1sg" type="6001">
681 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_79_eBaA8EeuqkpDnuik1sg" x="1" y="-18"/> 619 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_79_eBaA8EeuqkpDnuik1sg" x="87" y="18"/>
682 </children> 620 </children>
683 <children xmi:type="notation:Node" xmi:id="_79_eBqA8EeuqkpDnuik1sg" type="6002"> 621 <children xmi:type="notation:Node" xmi:id="_79_eBqA8EeuqkpDnuik1sg" type="6002">
684 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_79_eB6A8EeuqkpDnuik1sg" x="-3" y="10"/> 622 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_79_eB6A8EeuqkpDnuik1sg" x="-19" y="-10"/>
685 </children> 623 </children>
686 <children xmi:type="notation:Node" xmi:id="_79_eCKA8EeuqkpDnuik1sg" type="6003"> 624 <children xmi:type="notation:Node" xmi:id="_79_eCKA8EeuqkpDnuik1sg" type="6003">
687 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_79_eCaA8EeuqkpDnuik1sg" x="-19" y="10"/> 625 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_79_eCaA8EeuqkpDnuik1sg" x="-58" y="-10"/>
688 </children> 626 </children>
689 <styles xmi:type="notation:ConnectorStyle" xmi:id="_79_eAaA8EeuqkpDnuik1sg" routing="Rectilinear"/> 627 <styles xmi:type="notation:ConnectorStyle" xmi:id="_79_eAaA8EeuqkpDnuik1sg" routing="Rectilinear"/>
690 <styles xmi:type="notation:FontStyle" xmi:id="_79_eAqA8EeuqkpDnuik1sg" fontColor="7490599" fontName="Noto Sans" fontHeight="8"/> 628 <styles xmi:type="notation:FontStyle" xmi:id="_79_eAqA8EeuqkpDnuik1sg" fontColor="7490599" fontName="Noto Sans" fontHeight="8"/>
691 <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_79_eA6A8EeuqkpDnuik1sg" points="[0, 0, -110, 0]$[110, 0, 0, 0]"/> 629 <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_79_eA6A8EeuqkpDnuik1sg" points="[41, -3, 708, 143]$[41, -146, 708, 0]$[-549, -146, 118, 0]"/>
692 <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_79_eCqA8EeuqkpDnuik1sg" id="(1.0,0.5)"/> 630 <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_79_eCqA8EeuqkpDnuik1sg" id="(0.3644067796610169,0.030612244897959183)"/>
693 <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_79_eC6A8EeuqkpDnuik1sg" id="(0.0,0.5)"/> 631 <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_79_eC6A8EeuqkpDnuik1sg" id="(0.0,0.5)"/>
694 </edges> 632 </edges>
695 <edges xmi:type="notation:Edge" xmi:id="_hU_wsKA9EeuqkpDnuik1sg" type="4001" element="_hU64ZqA9EeuqkpDnuik1sg" source="_D1D6MKA4EeuqkpDnuik1sg" target="_e73WIKA9EeuqkpDnuik1sg"> 633 <edges xmi:type="notation:Edge" xmi:id="_hU_wsKA9EeuqkpDnuik1sg" type="4001" element="_hU64ZqA9EeuqkpDnuik1sg" source="_D1D6MKA4EeuqkpDnuik1sg" target="_e73WIKA9EeuqkpDnuik1sg">
@@ -918,68 +856,212 @@
918 </edges> 856 </edges>
919 <edges xmi:type="notation:Edge" xmi:id="_KnGywNYPEeuF_d0WEhR3Xw" type="4001" element="_KmxbkNYPEeuF_d0WEhR3Xw" source="_6KEUMKA6EeuqkpDnuik1sg" target="_IwsqwNYPEeuF_d0WEhR3Xw"> 857 <edges xmi:type="notation:Edge" xmi:id="_KnGywNYPEeuF_d0WEhR3Xw" type="4001" element="_KmxbkNYPEeuF_d0WEhR3Xw" source="_6KEUMKA6EeuqkpDnuik1sg" target="_IwsqwNYPEeuF_d0WEhR3Xw">
920 <children xmi:type="notation:Node" xmi:id="_KnHZ0NYPEeuF_d0WEhR3Xw" type="6001"> 858 <children xmi:type="notation:Node" xmi:id="_KnHZ0NYPEeuF_d0WEhR3Xw" type="6001">
921 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_KnHZ0dYPEeuF_d0WEhR3Xw" x="-23" y="-60"/> 859 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_KnHZ0dYPEeuF_d0WEhR3Xw" x="-10"/>
922 </children> 860 </children>
923 <children xmi:type="notation:Node" xmi:id="_KnHZ0tYPEeuF_d0WEhR3Xw" type="6002"> 861 <children xmi:type="notation:Node" xmi:id="_KnHZ0tYPEeuF_d0WEhR3Xw" type="6002">
924 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_KnHZ09YPEeuF_d0WEhR3Xw" x="1" y="10"/> 862 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_KnHZ09YPEeuF_d0WEhR3Xw" x="10"/>
925 </children> 863 </children>
926 <children xmi:type="notation:Node" xmi:id="_KnHZ1NYPEeuF_d0WEhR3Xw" type="6003"> 864 <children xmi:type="notation:Node" xmi:id="_KnHZ1NYPEeuF_d0WEhR3Xw" type="6003">
927 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_KnHZ1dYPEeuF_d0WEhR3Xw" x="-1" y="10"/> 865 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_KnHZ1dYPEeuF_d0WEhR3Xw" x="-23" y="10"/>
928 </children> 866 </children>
929 <styles xmi:type="notation:ConnectorStyle" xmi:id="_KnGywdYPEeuF_d0WEhR3Xw" routing="Rectilinear"/> 867 <styles xmi:type="notation:ConnectorStyle" xmi:id="_KnGywdYPEeuF_d0WEhR3Xw" routing="Rectilinear"/>
930 <styles xmi:type="notation:FontStyle" xmi:id="_KnGywtYPEeuF_d0WEhR3Xw" fontColor="7490599" fontName="Noto Sans" fontHeight="8"/> 868 <styles xmi:type="notation:FontStyle" xmi:id="_KnGywtYPEeuF_d0WEhR3Xw" fontColor="7490599" fontName="Noto Sans" fontHeight="8"/>
931 <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_KnGyw9YPEeuF_d0WEhR3Xw" points="[0, 0, 89, -138]$[-110, 0, -21, -138]$[-110, 132, -21, -6]"/> 869 <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_KnGyw9YPEeuF_d0WEhR3Xw" points="[67, 38, -21, -100]$[67, 132, -21, -6]"/>
932 <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_KnHZ1tYPEeuF_d0WEhR3Xw" id="(0.0,0.6122448979591837)"/> 870 <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_KnHZ1tYPEeuF_d0WEhR3Xw" id="(0.0,0.6122448979591837)"/>
933 <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_KnHZ19YPEeuF_d0WEhR3Xw" id="(0.6694915254237288,0.061224489795918366)"/> 871 <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_KnHZ19YPEeuF_d0WEhR3Xw" id="(0.6694915254237288,0.061224489795918366)"/>
934 </edges> 872 </edges>
935 <edges xmi:type="notation:Edge" xmi:id="_T1qNANYPEeuF_d0WEhR3Xw" type="4001" element="_T1fN5tYPEeuF_d0WEhR3Xw" source="_IwsqwNYPEeuF_d0WEhR3Xw" target="_jP6FkKA6EeuqkpDnuik1sg">
936 <children xmi:type="notation:Node" xmi:id="_T1qNBNYPEeuF_d0WEhR3Xw" type="6001">
937 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_T1qNBdYPEeuF_d0WEhR3Xw" x="-390" y="43"/>
938 </children>
939 <children xmi:type="notation:Node" xmi:id="_T1qNBtYPEeuF_d0WEhR3Xw" type="6002">
940 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_T1qNB9YPEeuF_d0WEhR3Xw" x="94" y="10"/>
941 </children>
942 <children xmi:type="notation:Node" xmi:id="_T1qNCNYPEeuF_d0WEhR3Xw" type="6003">
943 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_T1qNCdYPEeuF_d0WEhR3Xw" x="-154" y="10"/>
944 </children>
945 <styles xmi:type="notation:ConnectorStyle" xmi:id="_T1qNAdYPEeuF_d0WEhR3Xw" routing="Rectilinear"/>
946 <styles xmi:type="notation:FontStyle" xmi:id="_T1qNAtYPEeuF_d0WEhR3Xw" fontColor="7490599" fontName="Noto Sans" fontHeight="8"/>
947 <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_T1qNA9YPEeuF_d0WEhR3Xw" points="[-36, 50, -96, 708]$[-120, 50, -180, 708]$[-120, -708, -180, -50]$[24, -708, -36, -50]"/>
948 <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_T1qNCtYPEeuF_d0WEhR3Xw" id="(0.3050847457627119,0.0)"/>
949 <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_T1qNC9YPEeuF_d0WEhR3Xw" id="(0.3050847457627119,1.0)"/>
950 </edges>
951 <edges xmi:type="notation:Edge" xmi:id="_byTTcNYPEeuF_d0WEhR3Xw" type="4001" element="_bx-jYtYPEeuF_d0WEhR3Xw" source="_IwsqwNYPEeuF_d0WEhR3Xw" target="_-O-UEKA6EeuqkpDnuik1sg"> 873 <edges xmi:type="notation:Edge" xmi:id="_byTTcNYPEeuF_d0WEhR3Xw" type="4001" element="_bx-jYtYPEeuF_d0WEhR3Xw" source="_IwsqwNYPEeuF_d0WEhR3Xw" target="_-O-UEKA6EeuqkpDnuik1sg">
952 <children xmi:type="notation:Node" xmi:id="_byTTdNYPEeuF_d0WEhR3Xw" type="6001"> 874 <children xmi:type="notation:Node" xmi:id="_byTTdNYPEeuF_d0WEhR3Xw" type="6001">
953 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_byTTddYPEeuF_d0WEhR3Xw" x="-18" y="-246"/> 875 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_byTTddYPEeuF_d0WEhR3Xw" x="-106" y="-140"/>
954 </children> 876 </children>
955 <children xmi:type="notation:Node" xmi:id="_byTTdtYPEeuF_d0WEhR3Xw" type="6002"> 877 <children xmi:type="notation:Node" xmi:id="_byTTdtYPEeuF_d0WEhR3Xw" type="6002">
956 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_byTTd9YPEeuF_d0WEhR3Xw" x="-2" y="10"/> 878 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_byTTd9YPEeuF_d0WEhR3Xw" x="-31" y="10"/>
957 </children> 879 </children>
958 <children xmi:type="notation:Node" xmi:id="_byTTeNYPEeuF_d0WEhR3Xw" type="6003"> 880 <children xmi:type="notation:Node" xmi:id="_byTTeNYPEeuF_d0WEhR3Xw" type="6003">
959 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_byTTedYPEeuF_d0WEhR3Xw" x="-1" y="10"/> 881 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_byTTedYPEeuF_d0WEhR3Xw" x="-28" y="10"/>
960 </children> 882 </children>
961 <styles xmi:type="notation:ConnectorStyle" xmi:id="_byTTcdYPEeuF_d0WEhR3Xw" routing="Rectilinear"/> 883 <styles xmi:type="notation:ConnectorStyle" xmi:id="_byTTcdYPEeuF_d0WEhR3Xw" routing="Rectilinear"/>
962 <styles xmi:type="notation:FontStyle" xmi:id="_byTTctYPEeuF_d0WEhR3Xw" fontColor="7490599" fontName="Noto Sans" fontHeight="8"/> 884 <styles xmi:type="notation:FontStyle" xmi:id="_byTTctYPEeuF_d0WEhR3Xw" fontColor="7490599" fontName="Noto Sans" fontHeight="8"/>
963 <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_byTTc9YPEeuF_d0WEhR3Xw" points="[70, 48, -398, 466]$[480, 48, 12, 466]$[480, -418, 12, 0]"/> 885 <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_byTTc9YPEeuF_d0WEhR3Xw" points="[70, 48, -221, 466]$[303, 48, 12, 466]$[303, -418, 12, 0]"/>
964 <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_byT6gNYPEeuF_d0WEhR3Xw" id="(0.4067796610169492,0.0)"/> 886 <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_byT6gNYPEeuF_d0WEhR3Xw" id="(0.4067796610169492,0.0)"/>
965 <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_byT6gdYPEeuF_d0WEhR3Xw" id="(0.4067796610169492,1.0)"/> 887 <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_byT6gdYPEeuF_d0WEhR3Xw" id="(0.4067796610169492,1.0)"/>
966 </edges> 888 </edges>
967 <edges xmi:type="notation:Edge" xmi:id="_-X6xcNawEeuymriYTNxK2g" type="4001" element="_-XLKltawEeuymriYTNxK2g" source="_JT0o8KA4EeuqkpDnuik1sg" target="_xsq_MKA8EeuqkpDnuik1sg"> 889 <edges xmi:type="notation:Edge" xmi:id="_-X6xcNawEeuymriYTNxK2g" type="4001" element="_-XLKltawEeuymriYTNxK2g" source="_JT0o8KA4EeuqkpDnuik1sg" target="_xsq_MKA8EeuqkpDnuik1sg">
968 <children xmi:type="notation:Node" xmi:id="_-X_C4NawEeuymriYTNxK2g" type="6001"> 890 <children xmi:type="notation:Node" xmi:id="_-X_C4NawEeuymriYTNxK2g" type="6001">
969 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_-X_C4dawEeuymriYTNxK2g" x="-421" y="79"/> 891 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_-X_C4dawEeuymriYTNxK2g" x="-2" y="-308"/>
970 </children> 892 </children>
971 <children xmi:type="notation:Node" xmi:id="_-X_p8NawEeuymriYTNxK2g" type="6002"> 893 <children xmi:type="notation:Node" xmi:id="_-X_p8NawEeuymriYTNxK2g" type="6002">
972 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_-X_p8dawEeuymriYTNxK2g" x="-71" y="82"/> 894 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_-X_p8dawEeuymriYTNxK2g" x="-2" y="10"/>
973 </children> 895 </children>
974 <children xmi:type="notation:Node" xmi:id="_-YARANawEeuymriYTNxK2g" type="6003"> 896 <children xmi:type="notation:Node" xmi:id="_-YARANawEeuymriYTNxK2g" type="6003">
975 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_-YARAdawEeuymriYTNxK2g" x="-90" y="10"/> 897 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_-YARAdawEeuymriYTNxK2g" x="-316" y="-140"/>
976 </children> 898 </children>
977 <styles xmi:type="notation:ConnectorStyle" xmi:id="_-X6xcdawEeuymriYTNxK2g" routing="Rectilinear"/> 899 <styles xmi:type="notation:ConnectorStyle" xmi:id="_-X6xcdawEeuymriYTNxK2g" routing="Rectilinear"/>
978 <styles xmi:type="notation:FontStyle" xmi:id="_-X6xctawEeuymriYTNxK2g" fontColor="7490599" fontName="Noto Sans" fontHeight="8"/> 900 <styles xmi:type="notation:FontStyle" xmi:id="_-X6xctawEeuymriYTNxK2g" fontColor="7490599" fontName="Noto Sans" fontHeight="8"/>
979 <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_-X6xc9awEeuymriYTNxK2g" points="[0, 0, -902, 144]$[50, 0, -852, 144]$[50, -72, -852, 72]$[962, -72, 60, 72]$[962, -106, 60, 38]"/> 901 <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_-X6xc9awEeuymriYTNxK2g" points="[-58, 86, -288, 422]$[-58, 132, -288, 468]$[288, 132, 58, 468]$[288, -298, 58, 38]"/>
980 <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_-YCtQNawEeuymriYTNxK2g" id="(1.0,0.12244897959183673)"/> 902 <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_-YCtQNawEeuymriYTNxK2g" id="(1.0,0.12244897959183673)"/>
981 <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_-YCtQdawEeuymriYTNxK2g" id="(0.0,0.6122448979591837)"/> 903 <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_-YCtQdawEeuymriYTNxK2g" id="(0.0,0.6122448979591837)"/>
982 </edges> 904 </edges>
905 <edges xmi:type="notation:Edge" xmi:id="_W89dcNbFEeuymriYTNxK2g" type="4001" element="_Z7FrQKA6EeuqkpDnuik1sg" source="_QKLK0KA6EeuqkpDnuik1sg" target="_EfWNUKA4EeuqkpDnuik1sg">
906 <children xmi:type="notation:Node" xmi:id="_W89ddNbFEeuymriYTNxK2g" type="6001">
907 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_W89dddbFEeuymriYTNxK2g" x="-349" y="-67"/>
908 </children>
909 <children xmi:type="notation:Node" xmi:id="_W8-EgNbFEeuymriYTNxK2g" type="6002">
910 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_W8-EgdbFEeuymriYTNxK2g" x="-12" y="3"/>
911 </children>
912 <children xmi:type="notation:Node" xmi:id="_W8-EgtbFEeuymriYTNxK2g" type="6003">
913 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_W8-Eg9bFEeuymriYTNxK2g" x="32" y="10"/>
914 </children>
915 <styles xmi:type="notation:ConnectorStyle" xmi:id="_W89dcdbFEeuymriYTNxK2g" routing="Rectilinear"/>
916 <styles xmi:type="notation:FontStyle" xmi:id="_W89dctbFEeuymriYTNxK2g" fontColor="7490599" fontName="Noto Sans" fontHeight="8"/>
917 <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_W89dc9bFEeuymriYTNxK2g" points="[-75, 50, 517, 414]$[-195, 50, 397, 414]$[-195, -396, 397, -32]$[-581, -396, 11, -32]"/>
918 <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_W8_SoNbFEeuymriYTNxK2g" id="(0.635593220338983,0.0)"/>
919 <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_W8_SodbFEeuymriYTNxK2g" id="(0.9067796610169492,0.6938775510204082)"/>
920 </edges>
921 <edges xmi:type="notation:Edge" xmi:id="_ev0VwNbFEeuymriYTNxK2g" type="4001" element="_ufJ3IKA4EeuqkpDnuik1sg" source="_c-HCQKA4EeuqkpDnuik1sg" target="_EfWNUKA4EeuqkpDnuik1sg">
922 <children xmi:type="notation:Node" xmi:id="_ev0VxNbFEeuymriYTNxK2g" type="6001">
923 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ev0VxdbFEeuymriYTNxK2g" x="-206" y="-22"/>
924 </children>
925 <children xmi:type="notation:Node" xmi:id="_ev0VxtbFEeuymriYTNxK2g" type="6002">
926 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ev0Vx9bFEeuymriYTNxK2g" x="6" y="10"/>
927 </children>
928 <children xmi:type="notation:Node" xmi:id="_ev0VyNbFEeuymriYTNxK2g" type="6003">
929 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ev0VydbFEeuymriYTNxK2g" x="-6" y="10"/>
930 </children>
931 <styles xmi:type="notation:ConnectorStyle" xmi:id="_ev0VwdbFEeuymriYTNxK2g" routing="Rectilinear"/>
932 <styles xmi:type="notation:FontStyle" xmi:id="_ev0VwtbFEeuymriYTNxK2g" fontColor="7490599" fontName="Noto Sans" fontHeight="8"/>
933 <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_ev0Vw9bFEeuymriYTNxK2g" points="[37, 36, -4, 419]$[156, 36, 115, 419]$[156, -348, 115, 35]$[46, -348, 5, 35]"/>
934 <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_ev0VytbFEeuymriYTNxK2g" id="(0.7448275862068966,0.0)"/>
935 <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_ev080NbFEeuymriYTNxK2g" id="(0.9576271186440678,0.5)"/>
936 </edges>
937 <edges xmi:type="notation:Edge" xmi:id="_f-FfsNbFEeuymriYTNxK2g" type="4001" element="_VtPctqA4EeuqkpDnuik1sg" source="_JT0o8KA4EeuqkpDnuik1sg" target="_EfWNUKA4EeuqkpDnuik1sg">
938 <children xmi:type="notation:Node" xmi:id="_f-FftNbFEeuymriYTNxK2g" type="6001">
939 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_f-FftdbFEeuymriYTNxK2g" x="6" y="31"/>
940 </children>
941 <children xmi:type="notation:Node" xmi:id="_f-FfttbFEeuymriYTNxK2g" type="6002">
942 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_f-Fft9bFEeuymriYTNxK2g" x="-10"/>
943 </children>
944 <children xmi:type="notation:Node" xmi:id="_f-FfuNbFEeuymriYTNxK2g" type="6003">
945 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_f-FfudbFEeuymriYTNxK2g" x="-10"/>
946 </children>
947 <styles xmi:type="notation:ConnectorStyle" xmi:id="_f-FfsdbFEeuymriYTNxK2g" routing="Rectilinear"/>
948 <styles xmi:type="notation:FontStyle" xmi:id="_f-FfstbFEeuymriYTNxK2g" fontColor="7490599" fontName="Noto Sans" fontHeight="8"/>
949 <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_f-Ffs9bFEeuymriYTNxK2g" points="[24, -98, -17, 129]$[24, -192, -17, 35]"/>
950 <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_f-GGwNbFEeuymriYTNxK2g" id="(0.2033898305084746,1.0)"/>
951 <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_f-GGwdbFEeuymriYTNxK2g" id="(0.9576271186440678,0.6428571428571429)"/>
952 </edges>
953 <edges xmi:type="notation:Edge" xmi:id="_UwuZ8NbGEeuymriYTNxK2g" type="4001" element="_UwbfHtbGEeuymriYTNxK2g" source="_M6O-0NbGEeuymriYTNxK2g" target="_EfWNUKA4EeuqkpDnuik1sg">
954 <children xmi:type="notation:Node" xmi:id="_UwuZ9NbGEeuymriYTNxK2g" type="6001">
955 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_UwuZ9dbGEeuymriYTNxK2g" y="-10"/>
956 </children>
957 <children xmi:type="notation:Node" xmi:id="_UwuZ9tbGEeuymriYTNxK2g" type="6002">
958 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_UwuZ99bGEeuymriYTNxK2g" y="10"/>
959 </children>
960 <children xmi:type="notation:Node" xmi:id="_UwuZ-NbGEeuymriYTNxK2g" type="6003">
961 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_UwuZ-dbGEeuymriYTNxK2g" y="10"/>
962 </children>
963 <styles xmi:type="notation:ConnectorStyle" xmi:id="_UwuZ8dbGEeuymriYTNxK2g" routing="Tree"/>
964 <styles xmi:type="notation:FontStyle" xmi:id="_UwuZ8tbGEeuymriYTNxK2g" fontName="Noto Sans" fontHeight="8"/>
965 <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_UwuZ89bGEeuymriYTNxK2g" points="[0, 0, 220, 180]$[-220, -180, 0, 0]"/>
966 <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_UwvBANbGEeuymriYTNxK2g" id="(0.5,0.0)"/>
967 <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_UwvBAdbGEeuymriYTNxK2g" id="(0.5,0.5)"/>
968 </edges>
969 <edges xmi:type="notation:Edge" xmi:id="_WYV4ANbGEeuymriYTNxK2g" type="4001" element="_WX_5w9bGEeuymriYTNxK2g" source="_M6O-0NbGEeuymriYTNxK2g" target="_e73WIKA9EeuqkpDnuik1sg">
970 <children xmi:type="notation:Node" xmi:id="_WYV4BNbGEeuymriYTNxK2g" type="6001">
971 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_WYV4BdbGEeuymriYTNxK2g" y="-10"/>
972 </children>
973 <children xmi:type="notation:Node" xmi:id="_WYV4BtbGEeuymriYTNxK2g" type="6002">
974 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_WYV4B9bGEeuymriYTNxK2g" y="10"/>
975 </children>
976 <children xmi:type="notation:Node" xmi:id="_WYV4CNbGEeuymriYTNxK2g" type="6003">
977 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_WYV4CdbGEeuymriYTNxK2g" y="10"/>
978 </children>
979 <styles xmi:type="notation:ConnectorStyle" xmi:id="_WYV4AdbGEeuymriYTNxK2g" routing="Tree"/>
980 <styles xmi:type="notation:FontStyle" xmi:id="_WYV4AtbGEeuymriYTNxK2g" fontName="Noto Sans" fontHeight="8"/>
981 <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_WYV4A9bGEeuymriYTNxK2g" points="[0, 0, 99, 384]$[0, -240, 99, 144]$[-98, -240, 1, 144]$[-98, -286, 1, 98]"/>
982 <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_WYV4CtbGEeuymriYTNxK2g" id="(0.3220338983050847,0.030612244897959183)"/>
983 <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_WYV4C9bGEeuymriYTNxK2g" id="(0.5,0.0)"/>
984 </edges>
985 <edges xmi:type="notation:Edge" xmi:id="_gRXLkNbGEeuymriYTNxK2g" type="4001" element="_gRDCgNbGEeuymriYTNxK2g" source="_M6O-0NbGEeuymriYTNxK2g" target="_xsq_MKA8EeuqkpDnuik1sg">
986 <children xmi:type="notation:Node" xmi:id="_gRXLlNbGEeuymriYTNxK2g" type="6001">
987 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_gRXLldbGEeuymriYTNxK2g" x="-13" y="-41"/>
988 </children>
989 <children xmi:type="notation:Node" xmi:id="_gRXyoNbGEeuymriYTNxK2g" type="6002">
990 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_gRXyodbGEeuymriYTNxK2g" x="79" y="10"/>
991 </children>
992 <children xmi:type="notation:Node" xmi:id="_gRXyotbGEeuymriYTNxK2g" type="6003">
993 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_gRXyo9bGEeuymriYTNxK2g" x="4" y="10"/>
994 </children>
995 <styles xmi:type="notation:ConnectorStyle" xmi:id="_gRXLkdbGEeuymriYTNxK2g" routing="Rectilinear"/>
996 <styles xmi:type="notation:FontStyle" xmi:id="_gRXLktbGEeuymriYTNxK2g" fontColor="7490599" fontName="Noto Sans" fontHeight="8"/>
997 <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_gRXLk9bGEeuymriYTNxK2g" points="[25, 48, -35, 334]$[60, 48, 0, 334]$[60, -286, 0, 0]"/>
998 <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_gRXypNbGEeuymriYTNxK2g" id="(0.788135593220339,0.0)"/>
999 <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_gRXypdbGEeuymriYTNxK2g" id="(0.3050847457627119,1.0)"/>
1000 </edges>
1001 <edges xmi:type="notation:Edge" xmi:id="_Ql_asNbNEeuymriYTNxK2g" type="4001" element="_QlymotbNEeuymriYTNxK2g" source="_xsq_MKA8EeuqkpDnuik1sg" target="_Kw-vINbNEeuymriYTNxK2g">
1002 <children xmi:type="notation:Node" xmi:id="_Ql_atNbNEeuymriYTNxK2g" type="6001">
1003 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Ql_atdbNEeuymriYTNxK2g" y="-10"/>
1004 </children>
1005 <children xmi:type="notation:Node" xmi:id="_QmABwNbNEeuymriYTNxK2g" type="6002">
1006 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_QmABwdbNEeuymriYTNxK2g" y="10"/>
1007 </children>
1008 <children xmi:type="notation:Node" xmi:id="_QmABwtbNEeuymriYTNxK2g" type="6003">
1009 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_QmABw9bNEeuymriYTNxK2g" y="10"/>
1010 </children>
1011 <styles xmi:type="notation:ConnectorStyle" xmi:id="_Ql_asdbNEeuymriYTNxK2g" routing="Tree"/>
1012 <styles xmi:type="notation:FontStyle" xmi:id="_Ql_astbNEeuymriYTNxK2g" fontName="Noto Sans" fontHeight="8"/>
1013 <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_Ql_as9bNEeuymriYTNxK2g" points="[0, 0, -84, 58]$[84, -58, 0, 0]"/>
1014 <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_QmABxNbNEeuymriYTNxK2g" id="(0.7796610169491526,0.01020408163265306)"/>
1015 <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_QmABxdbNEeuymriYTNxK2g" id="(0.5,0.5)"/>
1016 </edges>
1017 <edges xmi:type="notation:Edge" xmi:id="_SmujYNbNEeuymriYTNxK2g" type="4001" element="_Smi9eNbNEeuymriYTNxK2g" source="_Kw-vINbNEeuymriYTNxK2g" target="_RzZA0KA5EeuqkpDnuik1sg">
1018 <children xmi:type="notation:Node" xmi:id="_SmvKcNbNEeuymriYTNxK2g" type="6001">
1019 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_SmvKcdbNEeuymriYTNxK2g" y="-10"/>
1020 </children>
1021 <children xmi:type="notation:Node" xmi:id="_SmvKctbNEeuymriYTNxK2g" type="6002">
1022 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_SmvKc9bNEeuymriYTNxK2g" y="10"/>
1023 </children>
1024 <children xmi:type="notation:Node" xmi:id="_SmvKdNbNEeuymriYTNxK2g" type="6003">
1025 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_SmvKddbNEeuymriYTNxK2g" y="10"/>
1026 </children>
1027 <styles xmi:type="notation:ConnectorStyle" xmi:id="_SmujYdbNEeuymriYTNxK2g" routing="Tree"/>
1028 <styles xmi:type="notation:FontStyle" xmi:id="_SmujYtbNEeuymriYTNxK2g" fontName="Noto Sans" fontHeight="8"/>
1029 <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_SmujY9bNEeuymriYTNxK2g" points="[0, 0, 84, 58]$[-84, -58, 0, 0]"/>
1030 <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_SmvKdtbNEeuymriYTNxK2g" id="(0.5423728813559322,0.07142857142857142)"/>
1031 <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_SmvKd9bNEeuymriYTNxK2g" id="(0.5,0.5)"/>
1032 </edges>
1033 <edges xmi:type="notation:Edge" xmi:id="_TuLToNbNEeuymriYTNxK2g" type="4001" element="_Tt9RRtbNEeuymriYTNxK2g" source="_jP6FkKA6EeuqkpDnuik1sg" target="_Kw-vINbNEeuymriYTNxK2g">
1034 <children xmi:type="notation:Node" xmi:id="_TuLTpNbNEeuymriYTNxK2g" type="6001">
1035 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_TuLTpdbNEeuymriYTNxK2g" y="-10"/>
1036 </children>
1037 <children xmi:type="notation:Node" xmi:id="_TuL6sNbNEeuymriYTNxK2g" type="6002">
1038 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_TuL6sdbNEeuymriYTNxK2g" y="10"/>
1039 </children>
1040 <children xmi:type="notation:Node" xmi:id="_TuL6stbNEeuymriYTNxK2g" type="6003">
1041 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_TuL6s9bNEeuymriYTNxK2g" y="10"/>
1042 </children>
1043 <styles xmi:type="notation:ConnectorStyle" xmi:id="_TuLTodbNEeuymriYTNxK2g" routing="Tree"/>
1044 <styles xmi:type="notation:FontStyle" xmi:id="_TuLTotbNEeuymriYTNxK2g" fontName="Noto Sans" fontHeight="8"/>
1045 <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_TuLTo9bNEeuymriYTNxK2g" points="[0, 0, 96, 442]$[-96, -442, 0, 0]"/>
1046 <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_TuL6tNbNEeuymriYTNxK2g" id="(0.4067796610169492,0.0)"/>
1047 <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_TuL6tdbNEeuymriYTNxK2g" id="(0.5,0.5)"/>
1048 </edges>
1049 <edges xmi:type="notation:Edge" xmi:id="_UosbINbNEeuymriYTNxK2g" type="4001" element="_T1fN5tYPEeuF_d0WEhR3Xw" source="_IwsqwNYPEeuF_d0WEhR3Xw" target="_Kw-vINbNEeuymriYTNxK2g">
1050 <children xmi:type="notation:Node" xmi:id="_UosbJNbNEeuymriYTNxK2g" type="6001">
1051 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_UosbJdbNEeuymriYTNxK2g" x="-516" y="82"/>
1052 </children>
1053 <children xmi:type="notation:Node" xmi:id="_UotCMNbNEeuymriYTNxK2g" type="6002">
1054 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_UotCMdbNEeuymriYTNxK2g" x="21" y="10"/>
1055 </children>
1056 <children xmi:type="notation:Node" xmi:id="_UotCMtbNEeuymriYTNxK2g" type="6003">
1057 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_UotCM9bNEeuymriYTNxK2g" x="3" y="10"/>
1058 </children>
1059 <styles xmi:type="notation:ConnectorStyle" xmi:id="_UosbIdbNEeuymriYTNxK2g" routing="Rectilinear"/>
1060 <styles xmi:type="notation:FontStyle" xmi:id="_UosbItbNEeuymriYTNxK2g" fontColor="7490599" fontName="Noto Sans" fontHeight="8"/>
1061 <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_UosbI9bNEeuymriYTNxK2g" points="[-36, 50, 197, 1259]$[-213, 50, 20, 1259]$[-213, -1198, 20, 11]"/>
1062 <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_UotCNNbNEeuymriYTNxK2g" id="(0.3050847457627119,0.0)"/>
1063 <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_UotCNdbNEeuymriYTNxK2g" id="(0.16101694915254236,0.8877551020408163)"/>
1064 </edges>
983 </data> 1065 </data>
984 </ownedAnnotationEntries> 1066 </ownedAnnotationEntries>
985 <ownedAnnotationEntries xmi:type="description:AnnotationEntry" uid="_Csiy8KA4EeuqkpDnuik1sg" source="DANNOTATION_CUSTOMIZATION_KEY"> 1067 <ownedAnnotationEntries xmi:type="description:AnnotationEntry" uid="_Csiy8KA4EeuqkpDnuik1sg" source="DANNOTATION_CUSTOMIZATION_KEY">
@@ -1006,7 +1088,7 @@
1006 </ownedStyle> 1088 </ownedStyle>
1007 <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/> 1089 <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/>
1008 </ownedDiagramElements> 1090 </ownedDiagramElements>
1009 <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_EfNqcKA4EeuqkpDnuik1sg" name="Relation" tooltipText="" outgoingEdges="_XWbypqA5EeuqkpDnuik1sg" incomingEdges="_ODPlcKA4EeuqkpDnuik1sg _gRoBcKA4EeuqkpDnuik1sg _rUgDkKA5EeuqkpDnuik1sg _VjwMzqA8EeuqkpDnuik1sg _w-iG36A8EeuqkpDnuik1sg" width="12" height="10"> 1091 <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_EfNqcKA4EeuqkpDnuik1sg" name="Relation" tooltipText="" outgoingEdges="_XWbypqA5EeuqkpDnuik1sg" incomingEdges="_ODPlcKA4EeuqkpDnuik1sg _gRoBcKA4EeuqkpDnuik1sg _rUgDkKA5EeuqkpDnuik1sg _VjwMzqA8EeuqkpDnuik1sg _w-iG36A8EeuqkpDnuik1sg _Z7FrQKA6EeuqkpDnuik1sg _ufJ3IKA4EeuqkpDnuik1sg _VtPctqA4EeuqkpDnuik1sg _UwbfHtbGEeuymriYTNxK2g" width="12" height="10">
1010 <target xmi:type="ecore:EClass" href="src/main/resources/model/problem.ecore#//Relation"/> 1092 <target xmi:type="ecore:EClass" href="src/main/resources/model/problem.ecore#//Relation"/>
1011 <semanticElements xmi:type="ecore:EClass" href="src/main/resources/model/problem.ecore#//Relation"/> 1093 <semanticElements xmi:type="ecore:EClass" href="src/main/resources/model/problem.ecore#//Relation"/>
1012 <arrangeConstraints>KEEP_LOCATION</arrangeConstraints> 1094 <arrangeConstraints>KEEP_LOCATION</arrangeConstraints>
@@ -1018,7 +1100,7 @@
1018 </ownedStyle> 1100 </ownedStyle>
1019 <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/> 1101 <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/>
1020 </ownedDiagramElements> 1102 </ownedDiagramElements>
1021 <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_JTstIKA4EeuqkpDnuik1sg" name="ClassDeclaration" tooltipText="" outgoingEdges="_ODPlcKA4EeuqkpDnuik1sg _VtPctqA4EeuqkpDnuik1sg _jk6-PKA4EeuqkpDnuik1sg _plK3JqA9EeuqkpDnuik1sg _-XLKltawEeuymriYTNxK2g" incomingEdges="_VtPctqA4EeuqkpDnuik1sg _ufJ3IKA4EeuqkpDnuik1sg _Z7FrQKA6EeuqkpDnuik1sg _2kWqbKA9EeuqkpDnuik1sg" width="12" height="10"> 1103 <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_JTstIKA4EeuqkpDnuik1sg" name="ClassDeclaration" tooltipText="" outgoingEdges="_ODPlcKA4EeuqkpDnuik1sg _VtPctqA4EeuqkpDnuik1sg _jk6-PKA4EeuqkpDnuik1sg _plK3JqA9EeuqkpDnuik1sg _-XLKltawEeuymriYTNxK2g" incomingEdges="_2kWqbKA9EeuqkpDnuik1sg" width="12" height="10">
1022 <target xmi:type="ecore:EClass" href="src/main/resources/model/problem.ecore#//ClassDeclaration"/> 1104 <target xmi:type="ecore:EClass" href="src/main/resources/model/problem.ecore#//ClassDeclaration"/>
1023 <semanticElements xmi:type="ecore:EClass" href="src/main/resources/model/problem.ecore#//ClassDeclaration"/> 1105 <semanticElements xmi:type="ecore:EClass" href="src/main/resources/model/problem.ecore#//ClassDeclaration"/>
1024 <arrangeConstraints>KEEP_LOCATION</arrangeConstraints> 1106 <arrangeConstraints>KEEP_LOCATION</arrangeConstraints>
@@ -1049,7 +1131,7 @@
1049 </ownedStyle> 1131 </ownedStyle>
1050 <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']"/> 1132 <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']"/>
1051 </ownedDiagramElements> 1133 </ownedDiagramElements>
1052 <ownedDiagramElements xmi:type="diagram:DEdge" uid="_VtPctqA4EeuqkpDnuik1sg" name="[0..*] superTypes" sourceNode="_JTstIKA4EeuqkpDnuik1sg" targetNode="_JTstIKA4EeuqkpDnuik1sg"> 1134 <ownedDiagramElements xmi:type="diagram:DEdge" uid="_VtPctqA4EeuqkpDnuik1sg" name="[0..*] superTypes" sourceNode="_JTstIKA4EeuqkpDnuik1sg" targetNode="_EfNqcKA4EeuqkpDnuik1sg">
1053 <target xmi:type="ecore:EReference" href="src/main/resources/model/problem.ecore#//ClassDeclaration/superTypes"/> 1135 <target xmi:type="ecore:EReference" href="src/main/resources/model/problem.ecore#//ClassDeclaration/superTypes"/>
1054 <semanticElements xmi:type="ecore:EReference" href="src/main/resources/model/problem.ecore#//ClassDeclaration/superTypes"/> 1136 <semanticElements xmi:type="ecore:EReference" href="src/main/resources/model/problem.ecore#//ClassDeclaration/superTypes"/>
1055 <ownedStyle xmi:type="diagram:EdgeStyle" uid="_VtQDwKA4EeuqkpDnuik1sg" routingStyle="manhattan" strokeColor="0,0,0"> 1137 <ownedStyle xmi:type="diagram:EdgeStyle" uid="_VtQDwKA4EeuqkpDnuik1sg" routingStyle="manhattan" strokeColor="0,0,0">
@@ -1107,7 +1189,7 @@
1107 </ownedStyle> 1189 </ownedStyle>
1108 <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC_EReference']"/> 1190 <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC_EReference']"/>
1109 </ownedDiagramElements> 1191 </ownedDiagramElements>
1110 <ownedDiagramElements xmi:type="diagram:DEdge" uid="_ufJ3IKA4EeuqkpDnuik1sg" name="[0..1] referenceType" sourceNode="_c-A7oKA4EeuqkpDnuik1sg" targetNode="_JTstIKA4EeuqkpDnuik1sg"> 1192 <ownedDiagramElements xmi:type="diagram:DEdge" uid="_ufJ3IKA4EeuqkpDnuik1sg" name="[0..1] referenceType" sourceNode="_c-A7oKA4EeuqkpDnuik1sg" targetNode="_EfNqcKA4EeuqkpDnuik1sg">
1111 <target xmi:type="ecore:EReference" href="src/main/resources/model/problem.ecore#//ReferenceDeclaration/referenceType"/> 1193 <target xmi:type="ecore:EReference" href="src/main/resources/model/problem.ecore#//ReferenceDeclaration/referenceType"/>
1112 <semanticElements xmi:type="ecore:EReference" href="src/main/resources/model/problem.ecore#//ReferenceDeclaration/referenceType"/> 1194 <semanticElements xmi:type="ecore:EReference" href="src/main/resources/model/problem.ecore#//ReferenceDeclaration/referenceType"/>
1113 <ownedStyle xmi:type="diagram:EdgeStyle" uid="_ufLFQKA4EeuqkpDnuik1sg" routingStyle="manhattan" strokeColor="0,0,0"> 1195 <ownedStyle xmi:type="diagram:EdgeStyle" uid="_ufLFQKA4EeuqkpDnuik1sg" routingStyle="manhattan" strokeColor="0,0,0">
@@ -1135,7 +1217,7 @@
1135 </ownedStyle> 1217 </ownedStyle>
1136 <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC_EReference']"/> 1218 <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC_EReference']"/>
1137 </ownedDiagramElements> 1219 </ownedDiagramElements>
1138 <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_RzK-YKA5EeuqkpDnuik1sg" name="NamedElement" tooltipText="" incomingEdges="_XWbypqA5EeuqkpDnuik1sg _l7apoqA6EeuqkpDnuik1sg _2U4ggqA8EeuqkpDnuik1sg _m-6OTNXtEeuF_d0WEhR3Xw" width="12" height="10"> 1220 <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_RzK-YKA5EeuqkpDnuik1sg" name="NamedElement" tooltipText="" incomingEdges="_XWbypqA5EeuqkpDnuik1sg _m-6OTNXtEeuF_d0WEhR3Xw _Smi9eNbNEeuymriYTNxK2g" width="12" height="10">
1139 <target xmi:type="ecore:EClass" href="src/main/resources/model/problem.ecore#//NamedElement"/> 1221 <target xmi:type="ecore:EClass" href="src/main/resources/model/problem.ecore#//NamedElement"/>
1140 <semanticElements xmi:type="ecore:EClass" href="src/main/resources/model/problem.ecore#//NamedElement"/> 1222 <semanticElements xmi:type="ecore:EClass" href="src/main/resources/model/problem.ecore#//NamedElement"/>
1141 <arrangeConstraints>KEEP_LOCATION</arrangeConstraints> 1223 <arrangeConstraints>KEEP_LOCATION</arrangeConstraints>
@@ -1222,7 +1304,7 @@
1222 </ownedStyle> 1304 </ownedStyle>
1223 <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC_EReference']"/> 1305 <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC_EReference']"/>
1224 </ownedDiagramElements> 1306 </ownedDiagramElements>
1225 <ownedDiagramElements xmi:type="diagram:DEdge" uid="_Z7FrQKA6EeuqkpDnuik1sg" name="[0..1] parameterType" sourceNode="_QKD2EKA6EeuqkpDnuik1sg" targetNode="_JTstIKA4EeuqkpDnuik1sg"> 1307 <ownedDiagramElements xmi:type="diagram:DEdge" uid="_Z7FrQKA6EeuqkpDnuik1sg" name="[0..1] parameterType" sourceNode="_QKD2EKA6EeuqkpDnuik1sg" targetNode="_EfNqcKA4EeuqkpDnuik1sg">
1226 <target xmi:type="ecore:EReference" href="src/main/resources/model/problem.ecore#//Parameter/parameterType"/> 1308 <target xmi:type="ecore:EReference" href="src/main/resources/model/problem.ecore#//Parameter/parameterType"/>
1227 <semanticElements xmi:type="ecore:EReference" href="src/main/resources/model/problem.ecore#//Parameter/parameterType"/> 1309 <semanticElements xmi:type="ecore:EReference" href="src/main/resources/model/problem.ecore#//Parameter/parameterType"/>
1228 <ownedStyle xmi:type="diagram:EdgeStyle" uid="_Z7GSUKA6EeuqkpDnuik1sg" routingStyle="manhattan" strokeColor="0,0,0"> 1310 <ownedStyle xmi:type="diagram:EdgeStyle" uid="_Z7GSUKA6EeuqkpDnuik1sg" routingStyle="manhattan" strokeColor="0,0,0">
@@ -1236,7 +1318,7 @@
1236 </ownedStyle> 1318 </ownedStyle>
1237 <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC_EReference']"/> 1319 <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC_EReference']"/>
1238 </ownedDiagramElements> 1320 </ownedDiagramElements>
1239 <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_jPpm4KA6EeuqkpDnuik1sg" name="Variable" tooltipText="" outgoingEdges="_l7apoqA6EeuqkpDnuik1sg" incomingEdges="_oni4rKA6EeuqkpDnuik1sg _BVyUAKA7EeuqkpDnuik1sg _T1fN5tYPEeuF_d0WEhR3Xw" width="12" height="10"> 1321 <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_jPpm4KA6EeuqkpDnuik1sg" name="Variable" tooltipText="" outgoingEdges="_Tt9RRtbNEeuymriYTNxK2g" incomingEdges="_oni4rKA6EeuqkpDnuik1sg _BVyUAKA7EeuqkpDnuik1sg" width="12" height="10">
1240 <target xmi:type="ecore:EClass" href="src/main/resources/model/problem.ecore#//Variable"/> 1322 <target xmi:type="ecore:EClass" href="src/main/resources/model/problem.ecore#//Variable"/>
1241 <semanticElements xmi:type="ecore:EClass" href="src/main/resources/model/problem.ecore#//Variable"/> 1323 <semanticElements xmi:type="ecore:EClass" href="src/main/resources/model/problem.ecore#//Variable"/>
1242 <arrangeConstraints>KEEP_LOCATION</arrangeConstraints> 1324 <arrangeConstraints>KEEP_LOCATION</arrangeConstraints>
@@ -1248,18 +1330,6 @@
1248 </ownedStyle> 1330 </ownedStyle>
1249 <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/> 1331 <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/>
1250 </ownedDiagramElements> 1332 </ownedDiagramElements>
1251 <ownedDiagramElements xmi:type="diagram:DEdge" uid="_l7apoqA6EeuqkpDnuik1sg" sourceNode="_jPpm4KA6EeuqkpDnuik1sg" targetNode="_RzK-YKA5EeuqkpDnuik1sg">
1252 <target xmi:type="ecore:EClass" href="src/main/resources/model/problem.ecore#//Variable"/>
1253 <semanticElements xmi:type="ecore:EClass" href="src/main/resources/model/problem.ecore#//Variable"/>
1254 <ownedStyle xmi:type="diagram:EdgeStyle" uid="_l7apo6A6EeuqkpDnuik1sg" targetArrow="InputClosedArrow" routingStyle="tree">
1255 <description xmi:type="style:EdgeStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']/@style"/>
1256 <beginLabelStyle xmi:type="diagram:BeginLabelStyle" uid="_l7appKA6EeuqkpDnuik1sg" showIcon="false">
1257 <labelFormat>italic</labelFormat>
1258 </beginLabelStyle>
1259 <centerLabelStyle xmi:type="diagram:CenterLabelStyle" uid="_l7appaA6EeuqkpDnuik1sg" showIcon="false"/>
1260 </ownedStyle>
1261 <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']"/>
1262 </ownedDiagramElements>
1263 <ownedDiagramElements xmi:type="diagram:DEdge" uid="_oni4rKA6EeuqkpDnuik1sg" sourceNode="_QKD2EKA6EeuqkpDnuik1sg" targetNode="_jPpm4KA6EeuqkpDnuik1sg"> 1333 <ownedDiagramElements xmi:type="diagram:DEdge" uid="_oni4rKA6EeuqkpDnuik1sg" sourceNode="_QKD2EKA6EeuqkpDnuik1sg" targetNode="_jPpm4KA6EeuqkpDnuik1sg">
1264 <target xmi:type="ecore:EClass" href="src/main/resources/model/problem.ecore#//Parameter"/> 1334 <target xmi:type="ecore:EClass" href="src/main/resources/model/problem.ecore#//Parameter"/>
1265 <semanticElements xmi:type="ecore:EClass" href="src/main/resources/model/problem.ecore#//Parameter"/> 1335 <semanticElements xmi:type="ecore:EClass" href="src/main/resources/model/problem.ecore#//Parameter"/>
@@ -1494,7 +1564,7 @@
1494 </ownedStyle> 1564 </ownedStyle>
1495 <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC_EReference']"/> 1565 <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC_EReference']"/>
1496 </ownedDiagramElements> 1566 </ownedDiagramElements>
1497 <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_xsYrUKA8EeuqkpDnuik1sg" name="Node" tooltipText="" outgoingEdges="_2U4ggqA8EeuqkpDnuik1sg" incomingEdges="_4eU5TqA8EeuqkpDnuik1sg _79nqlqA8EeuqkpDnuik1sg _-XLKltawEeuymriYTNxK2g" width="12" height="10"> 1567 <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_xsYrUKA8EeuqkpDnuik1sg" name="Node" tooltipText="" outgoingEdges="_QlymotbNEeuymriYTNxK2g" incomingEdges="_4eU5TqA8EeuqkpDnuik1sg _79nqlqA8EeuqkpDnuik1sg _-XLKltawEeuymriYTNxK2g _gRDCgNbGEeuymriYTNxK2g" width="12" height="10">
1498 <target xmi:type="ecore:EClass" href="src/main/resources/model/problem.ecore#//Node"/> 1568 <target xmi:type="ecore:EClass" href="src/main/resources/model/problem.ecore#//Node"/>
1499 <semanticElements xmi:type="ecore:EClass" href="src/main/resources/model/problem.ecore#//Node"/> 1569 <semanticElements xmi:type="ecore:EClass" href="src/main/resources/model/problem.ecore#//Node"/>
1500 <arrangeConstraints>KEEP_LOCATION</arrangeConstraints> 1570 <arrangeConstraints>KEEP_LOCATION</arrangeConstraints>
@@ -1505,18 +1575,6 @@
1505 </ownedStyle> 1575 </ownedStyle>
1506 <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/> 1576 <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/>
1507 </ownedDiagramElements> 1577 </ownedDiagramElements>
1508 <ownedDiagramElements xmi:type="diagram:DEdge" uid="_2U4ggqA8EeuqkpDnuik1sg" sourceNode="_xsYrUKA8EeuqkpDnuik1sg" targetNode="_RzK-YKA5EeuqkpDnuik1sg">
1509 <target xmi:type="ecore:EClass" href="src/main/resources/model/problem.ecore#//Node"/>
1510 <semanticElements xmi:type="ecore:EClass" href="src/main/resources/model/problem.ecore#//Node"/>
1511 <ownedStyle xmi:type="diagram:EdgeStyle" uid="_Mca_kqA9EeuqkpDnuik1sg" targetArrow="InputClosedArrow" routingStyle="tree">
1512 <description xmi:type="style:EdgeStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']/@style"/>
1513 <beginLabelStyle xmi:type="diagram:BeginLabelStyle" uid="_Mca_k6A9EeuqkpDnuik1sg" showIcon="false">
1514 <labelFormat>italic</labelFormat>
1515 </beginLabelStyle>
1516 <centerLabelStyle xmi:type="diagram:CenterLabelStyle" uid="_Mca_lKA9EeuqkpDnuik1sg" showIcon="false"/>
1517 </ownedStyle>
1518 <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']"/>
1519 </ownedDiagramElements>
1520 <ownedDiagramElements xmi:type="diagram:DEdge" uid="_4eU5TqA8EeuqkpDnuik1sg" name="[0..*] nodes" sourceNode="_D05iIKA4EeuqkpDnuik1sg" targetNode="_xsYrUKA8EeuqkpDnuik1sg"> 1578 <ownedDiagramElements xmi:type="diagram:DEdge" uid="_4eU5TqA8EeuqkpDnuik1sg" name="[0..*] nodes" sourceNode="_D05iIKA4EeuqkpDnuik1sg" targetNode="_xsYrUKA8EeuqkpDnuik1sg">
1521 <target xmi:type="ecore:EReference" href="src/main/resources/model/problem.ecore#//Problem/nodes"/> 1579 <target xmi:type="ecore:EReference" href="src/main/resources/model/problem.ecore#//Problem/nodes"/>
1522 <semanticElements xmi:type="ecore:EReference" href="src/main/resources/model/problem.ecore#//Problem/nodes"/> 1580 <semanticElements xmi:type="ecore:EReference" href="src/main/resources/model/problem.ecore#//Problem/nodes"/>
@@ -1590,7 +1648,7 @@
1590 </ownedStyle> 1648 </ownedStyle>
1591 <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/> 1649 <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/>
1592 </ownedDiagramElements> 1650 </ownedDiagramElements>
1593 <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_e7ydoKA9EeuqkpDnuik1sg" name="Statement" tooltipText="" incomingEdges="_hU64ZqA9EeuqkpDnuik1sg _mQFKsqA9EeuqkpDnuik1sg _mzziwKA9EeuqkpDnuik1sg _plK3JqA9EeuqkpDnuik1sg _vdptgqA9EeuqkpDnuik1sg" width="12" height="10"> 1651 <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_e7ydoKA9EeuqkpDnuik1sg" name="Statement" tooltipText="" incomingEdges="_hU64ZqA9EeuqkpDnuik1sg _mQFKsqA9EeuqkpDnuik1sg _mzziwKA9EeuqkpDnuik1sg _plK3JqA9EeuqkpDnuik1sg _vdptgqA9EeuqkpDnuik1sg _WX_5w9bGEeuymriYTNxK2g" width="12" height="10">
1594 <target xmi:type="ecore:EClass" href="src/main/resources/model/problem.ecore#//Statement"/> 1652 <target xmi:type="ecore:EClass" href="src/main/resources/model/problem.ecore#//Statement"/>
1595 <semanticElements xmi:type="ecore:EClass" href="src/main/resources/model/problem.ecore#//Statement"/> 1653 <semanticElements xmi:type="ecore:EClass" href="src/main/resources/model/problem.ecore#//Statement"/>
1596 <arrangeConstraints>KEEP_LOCATION</arrangeConstraints> 1654 <arrangeConstraints>KEEP_LOCATION</arrangeConstraints>
@@ -1885,9 +1943,9 @@
1885 </ownedStyle> 1943 </ownedStyle>
1886 <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC_EReference']"/> 1944 <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC_EReference']"/>
1887 </ownedDiagramElements> 1945 </ownedDiagramElements>
1888 <ownedDiagramElements xmi:type="diagram:DEdge" uid="_T1fN5tYPEeuF_d0WEhR3Xw" name="[0..1] variable" sourceNode="_IwJ4MNYPEeuF_d0WEhR3Xw" targetNode="_jPpm4KA6EeuqkpDnuik1sg"> 1946 <ownedDiagramElements xmi:type="diagram:DEdge" uid="_T1fN5tYPEeuF_d0WEhR3Xw" name="[0..1] variableOrNode" sourceNode="_IwJ4MNYPEeuF_d0WEhR3Xw" targetNode="_KwtCUNbNEeuymriYTNxK2g">
1889 <target xmi:type="ecore:EReference" href="src/main/resources/model/problem.ecore#//Argument/variable"/> 1947 <target xmi:type="ecore:EReference" href="src/main/resources/model/problem.ecore#//Argument/variableOrNode"/>
1890 <semanticElements xmi:type="ecore:EReference" href="src/main/resources/model/problem.ecore#//Argument/variable"/> 1948 <semanticElements xmi:type="ecore:EReference" href="src/main/resources/model/problem.ecore#//Argument/variableOrNode"/>
1891 <ownedStyle xmi:type="diagram:EdgeStyle" uid="_T1fN59YPEeuF_d0WEhR3Xw" routingStyle="manhattan" strokeColor="0,0,0"> 1949 <ownedStyle xmi:type="diagram:EdgeStyle" uid="_T1fN59YPEeuF_d0WEhR3Xw" routingStyle="manhattan" strokeColor="0,0,0">
1892 <description xmi:type="style:EdgeStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC_EReference']/@style"/> 1950 <description xmi:type="style:EdgeStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC_EReference']/@style"/>
1893 <centerLabelStyle xmi:type="diagram:CenterLabelStyle" uid="_T1fN6dYPEeuF_d0WEhR3Xw" showIcon="false"> 1951 <centerLabelStyle xmi:type="diagram:CenterLabelStyle" uid="_T1fN6dYPEeuF_d0WEhR3Xw" showIcon="false">
@@ -1921,6 +1979,102 @@
1921 </ownedStyle> 1979 </ownedStyle>
1922 <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC_EReference']"/> 1980 <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC_EReference']"/>
1923 </ownedDiagramElements> 1981 </ownedDiagramElements>
1982 <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_M58q8NbGEeuymriYTNxK2g" name="EnumDeclaration" tooltipText="" outgoingEdges="_UwbfHtbGEeuymriYTNxK2g _WX_5w9bGEeuymriYTNxK2g _gRDCgNbGEeuymriYTNxK2g" width="12" height="10">
1983 <target xmi:type="ecore:EClass" href="src/main/resources/model/problem.ecore#//EnumDeclaration"/>
1984 <semanticElements xmi:type="ecore:EClass" href="src/main/resources/model/problem.ecore#//EnumDeclaration"/>
1985 <arrangeConstraints>KEEP_LOCATION</arrangeConstraints>
1986 <arrangeConstraints>KEEP_SIZE</arrangeConstraints>
1987 <arrangeConstraints>KEEP_RATIO</arrangeConstraints>
1988 <ownedStyle xmi:type="diagram:FlatContainerStyle" uid="_M59SANbGEeuymriYTNxK2g" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" foregroundColor="255,252,216">
1989 <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@style"/>
1990 </ownedStyle>
1991 <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/>
1992 </ownedDiagramElements>
1993 <ownedDiagramElements xmi:type="diagram:DEdge" uid="_UwbfHtbGEeuymriYTNxK2g" sourceNode="_M58q8NbGEeuymriYTNxK2g" targetNode="_EfNqcKA4EeuqkpDnuik1sg">
1994 <target xmi:type="ecore:EClass" href="src/main/resources/model/problem.ecore#//EnumDeclaration"/>
1995 <semanticElements xmi:type="ecore:EClass" href="src/main/resources/model/problem.ecore#//EnumDeclaration"/>
1996 <ownedStyle xmi:type="diagram:EdgeStyle" uid="_UwcGENbGEeuymriYTNxK2g" targetArrow="InputClosedArrow" routingStyle="tree">
1997 <description xmi:type="style:EdgeStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']/@style"/>
1998 <beginLabelStyle xmi:type="diagram:BeginLabelStyle" uid="_UwcGEdbGEeuymriYTNxK2g" showIcon="false">
1999 <labelFormat>italic</labelFormat>
2000 </beginLabelStyle>
2001 <centerLabelStyle xmi:type="diagram:CenterLabelStyle" uid="_UwcGEtbGEeuymriYTNxK2g" showIcon="false"/>
2002 </ownedStyle>
2003 <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']"/>
2004 </ownedDiagramElements>
2005 <ownedDiagramElements xmi:type="diagram:DEdge" uid="_WX_5w9bGEeuymriYTNxK2g" sourceNode="_M58q8NbGEeuymriYTNxK2g" targetNode="_e7ydoKA9EeuqkpDnuik1sg">
2006 <target xmi:type="ecore:EClass" href="src/main/resources/model/problem.ecore#//EnumDeclaration"/>
2007 <semanticElements xmi:type="ecore:EClass" href="src/main/resources/model/problem.ecore#//EnumDeclaration"/>
2008 <ownedStyle xmi:type="diagram:EdgeStyle" uid="_WYAg0NbGEeuymriYTNxK2g" lineStyle="dash" targetArrow="InputClosedArrow" routingStyle="tree">
2009 <description xmi:type="style:EdgeStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']/@conditionnalStyles.0/@style"/>
2010 <beginLabelStyle xmi:type="diagram:BeginLabelStyle" uid="_WYAg0dbGEeuymriYTNxK2g" showIcon="false">
2011 <labelFormat>italic</labelFormat>
2012 </beginLabelStyle>
2013 <centerLabelStyle xmi:type="diagram:CenterLabelStyle" uid="_WYAg0tbGEeuymriYTNxK2g" showIcon="false"/>
2014 </ownedStyle>
2015 <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']"/>
2016 </ownedDiagramElements>
2017 <ownedDiagramElements xmi:type="diagram:DEdge" uid="_gRDCgNbGEeuymriYTNxK2g" name="[0..*] literals" sourceNode="_M58q8NbGEeuymriYTNxK2g" targetNode="_xsYrUKA8EeuqkpDnuik1sg">
2018 <target xmi:type="ecore:EReference" href="src/main/resources/model/problem.ecore#//EnumDeclaration/literals"/>
2019 <semanticElements xmi:type="ecore:EReference" href="src/main/resources/model/problem.ecore#//EnumDeclaration/literals"/>
2020 <ownedStyle xmi:type="diagram:EdgeStyle" uid="_gRDpkNbGEeuymriYTNxK2g" description="_L-JhMKA4EeuqkpDnuik1sg" sourceArrow="FillDiamond" routingStyle="manhattan" strokeColor="0,0,0">
2021 <centerLabelStyle xmi:type="diagram:CenterLabelStyle" uid="_gRDpktbGEeuymriYTNxK2g" showIcon="false">
2022 <customFeatures>labelSize</customFeatures>
2023 </centerLabelStyle>
2024 <endLabelStyle xmi:type="diagram:EndLabelStyle" uid="_gRDpkdbGEeuymriYTNxK2g" showIcon="false" labelColor="39,76,114">
2025 <customFeatures>labelSize</customFeatures>
2026 </endLabelStyle>
2027 </ownedStyle>
2028 <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC_EReference']"/>
2029 </ownedDiagramElements>
2030 <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_KwtCUNbNEeuymriYTNxK2g" name="VariableOrNode" tooltipText="" outgoingEdges="_Smi9eNbNEeuymriYTNxK2g" incomingEdges="_QlymotbNEeuymriYTNxK2g _Tt9RRtbNEeuymriYTNxK2g _T1fN5tYPEeuF_d0WEhR3Xw" width="12" height="10">
2031 <target xmi:type="ecore:EClass" href="src/main/resources/model/problem.ecore#//VariableOrNode"/>
2032 <semanticElements xmi:type="ecore:EClass" href="src/main/resources/model/problem.ecore#//VariableOrNode"/>
2033 <arrangeConstraints>KEEP_LOCATION</arrangeConstraints>
2034 <arrangeConstraints>KEEP_SIZE</arrangeConstraints>
2035 <arrangeConstraints>KEEP_RATIO</arrangeConstraints>
2036 <ownedStyle xmi:type="diagram:FlatContainerStyle" uid="_QMf8vdbNEeuymriYTNxK2g" iconPath="/org.eclipse.emf.ecoretools.design/icons/full/obj16/EClass_abstract.gif" borderSize="1" borderSizeComputationExpression="1" borderColor="125,125,125" backgroundStyle="Liquid" foregroundColor="228,228,228">
2037 <labelFormat>italic</labelFormat>
2038 <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@conditionnalStyles.1/@style"/>
2039 </ownedStyle>
2040 <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/>
2041 </ownedDiagramElements>
2042 <ownedDiagramElements xmi:type="diagram:DEdge" uid="_QlymotbNEeuymriYTNxK2g" sourceNode="_xsYrUKA8EeuqkpDnuik1sg" targetNode="_KwtCUNbNEeuymriYTNxK2g">
2043 <target xmi:type="ecore:EClass" href="src/main/resources/model/problem.ecore#//Node"/>
2044 <semanticElements xmi:type="ecore:EClass" href="src/main/resources/model/problem.ecore#//Node"/>
2045 <ownedStyle xmi:type="diagram:EdgeStyle" uid="_QlzNcNbNEeuymriYTNxK2g" targetArrow="InputClosedArrow" routingStyle="tree">
2046 <description xmi:type="style:EdgeStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']/@style"/>
2047 <beginLabelStyle xmi:type="diagram:BeginLabelStyle" uid="_QlzNcdbNEeuymriYTNxK2g" showIcon="false">
2048 <labelFormat>italic</labelFormat>
2049 </beginLabelStyle>
2050 <centerLabelStyle xmi:type="diagram:CenterLabelStyle" uid="_QlzNctbNEeuymriYTNxK2g" showIcon="false"/>
2051 </ownedStyle>
2052 <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']"/>
2053 </ownedDiagramElements>
2054 <ownedDiagramElements xmi:type="diagram:DEdge" uid="_Smi9eNbNEeuymriYTNxK2g" sourceNode="_KwtCUNbNEeuymriYTNxK2g" targetNode="_RzK-YKA5EeuqkpDnuik1sg">
2055 <target xmi:type="ecore:EClass" href="src/main/resources/model/problem.ecore#//VariableOrNode"/>
2056 <semanticElements xmi:type="ecore:EClass" href="src/main/resources/model/problem.ecore#//VariableOrNode"/>
2057 <ownedStyle xmi:type="diagram:EdgeStyle" uid="_SmjkQNbNEeuymriYTNxK2g" targetArrow="InputClosedArrow" routingStyle="tree">
2058 <description xmi:type="style:EdgeStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']/@style"/>
2059 <beginLabelStyle xmi:type="diagram:BeginLabelStyle" uid="_SmjkQdbNEeuymriYTNxK2g" showIcon="false">
2060 <labelFormat>italic</labelFormat>
2061 </beginLabelStyle>
2062 <centerLabelStyle xmi:type="diagram:CenterLabelStyle" uid="_SmjkQtbNEeuymriYTNxK2g" showIcon="false"/>
2063 </ownedStyle>
2064 <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']"/>
2065 </ownedDiagramElements>
2066 <ownedDiagramElements xmi:type="diagram:DEdge" uid="_Tt9RRtbNEeuymriYTNxK2g" sourceNode="_jPpm4KA6EeuqkpDnuik1sg" targetNode="_KwtCUNbNEeuymriYTNxK2g">
2067 <target xmi:type="ecore:EClass" href="src/main/resources/model/problem.ecore#//Variable"/>
2068 <semanticElements xmi:type="ecore:EClass" href="src/main/resources/model/problem.ecore#//Variable"/>
2069 <ownedStyle xmi:type="diagram:EdgeStyle" uid="_Tt94QNbNEeuymriYTNxK2g" targetArrow="InputClosedArrow" routingStyle="tree">
2070 <description xmi:type="style:EdgeStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']/@style"/>
2071 <beginLabelStyle xmi:type="diagram:BeginLabelStyle" uid="_Tt94QdbNEeuymriYTNxK2g" showIcon="false">
2072 <labelFormat>italic</labelFormat>
2073 </beginLabelStyle>
2074 <centerLabelStyle xmi:type="diagram:CenterLabelStyle" uid="_Tt94QtbNEeuymriYTNxK2g" showIcon="false"/>
2075 </ownedStyle>
2076 <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']"/>
2077 </ownedDiagramElements>
1924 <description xmi:type="description_1:DiagramDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']"/> 2078 <description xmi:type="description_1:DiagramDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']"/>
1925 <filterVariableHistory xmi:type="diagram:FilterVariableHistory" uid="_CsWlsKA4EeuqkpDnuik1sg"/> 2079 <filterVariableHistory xmi:type="diagram:FilterVariableHistory" uid="_CsWlsKA4EeuqkpDnuik1sg"/>
1926 <activatedLayers xmi:type="description_1:Layer" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer"/> 2080 <activatedLayers xmi:type="description_1:Layer" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer"/>
diff --git a/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/Argument.java b/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/Argument.java
index 5442f8e0..4857b38a 100644
--- a/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/Argument.java
+++ b/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/Argument.java
@@ -13,7 +13,7 @@ import org.eclipse.emf.ecore.EObject;
13 * The following features are supported: 13 * The following features are supported:
14 * </p> 14 * </p>
15 * <ul> 15 * <ul>
16 * <li>{@link org.eclipse.viatra.solver.language.model.problem.Argument#getVariable <em>Variable</em>}</li> 16 * <li>{@link org.eclipse.viatra.solver.language.model.problem.Argument#getVariableOrNode <em>Variable Or Node</em>}</li>
17 * <li>{@link org.eclipse.viatra.solver.language.model.problem.Argument#getSingletonVariable <em>Singleton Variable</em>}</li> 17 * <li>{@link org.eclipse.viatra.solver.language.model.problem.Argument#getSingletonVariable <em>Singleton Variable</em>}</li>
18 * </ul> 18 * </ul>
19 * 19 *
@@ -23,26 +23,26 @@ import org.eclipse.emf.ecore.EObject;
23 */ 23 */
24public interface Argument extends EObject { 24public interface Argument extends EObject {
25 /** 25 /**
26 * Returns the value of the '<em><b>Variable</b></em>' reference. 26 * Returns the value of the '<em><b>Variable Or Node</b></em>' reference.
27 * <!-- begin-user-doc --> 27 * <!-- begin-user-doc -->
28 * <!-- end-user-doc --> 28 * <!-- end-user-doc -->
29 * @return the value of the '<em>Variable</em>' reference. 29 * @return the value of the '<em>Variable Or Node</em>' reference.
30 * @see #setVariable(Variable) 30 * @see #setVariableOrNode(VariableOrNode)
31 * @see org.eclipse.viatra.solver.language.model.problem.ProblemPackage#getArgument_Variable() 31 * @see org.eclipse.viatra.solver.language.model.problem.ProblemPackage#getArgument_VariableOrNode()
32 * @model 32 * @model
33 * @generated 33 * @generated
34 */ 34 */
35 Variable getVariable(); 35 VariableOrNode getVariableOrNode();
36 36
37 /** 37 /**
38 * Sets the value of the '{@link org.eclipse.viatra.solver.language.model.problem.Argument#getVariable <em>Variable</em>}' reference. 38 * Sets the value of the '{@link org.eclipse.viatra.solver.language.model.problem.Argument#getVariableOrNode <em>Variable Or Node</em>}' reference.
39 * <!-- begin-user-doc --> 39 * <!-- begin-user-doc -->
40 * <!-- end-user-doc --> 40 * <!-- end-user-doc -->
41 * @param value the new value of the '<em>Variable</em>' reference. 41 * @param value the new value of the '<em>Variable Or Node</em>' reference.
42 * @see #getVariable() 42 * @see #getVariableOrNode()
43 * @generated 43 * @generated
44 */ 44 */
45 void setVariable(Variable value); 45 void setVariableOrNode(VariableOrNode value);
46 46
47 /** 47 /**
48 * Returns the value of the '<em><b>Singleton Variable</b></em>' containment reference. 48 * Returns the value of the '<em><b>Singleton Variable</b></em>' containment reference.
diff --git a/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/ClassDeclaration.java b/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/ClassDeclaration.java
index 1387575a..d0f471be 100644
--- a/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/ClassDeclaration.java
+++ b/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/ClassDeclaration.java
@@ -48,7 +48,7 @@ public interface ClassDeclaration extends Relation, Statement {
48 48
49 /** 49 /**
50 * Returns the value of the '<em><b>Super Types</b></em>' reference list. 50 * Returns the value of the '<em><b>Super Types</b></em>' reference list.
51 * The list contents are of type {@link org.eclipse.viatra.solver.language.model.problem.ClassDeclaration}. 51 * The list contents are of type {@link org.eclipse.viatra.solver.language.model.problem.Relation}.
52 * <!-- begin-user-doc --> 52 * <!-- begin-user-doc -->
53 * <!-- end-user-doc --> 53 * <!-- end-user-doc -->
54 * @return the value of the '<em>Super Types</em>' reference list. 54 * @return the value of the '<em>Super Types</em>' reference list.
@@ -56,7 +56,7 @@ public interface ClassDeclaration extends Relation, Statement {
56 * @model 56 * @model
57 * @generated 57 * @generated
58 */ 58 */
59 EList<ClassDeclaration> getSuperTypes(); 59 EList<Relation> getSuperTypes();
60 60
61 /** 61 /**
62 * Returns the value of the '<em><b>Reference Declarations</b></em>' containment reference list. 62 * Returns the value of the '<em><b>Reference Declarations</b></em>' containment reference list.
diff --git a/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/EnumDeclaration.java b/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/EnumDeclaration.java
new file mode 100644
index 00000000..81f2967d
--- /dev/null
+++ b/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/EnumDeclaration.java
@@ -0,0 +1,36 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.model.problem;
4
5import org.eclipse.emf.common.util.EList;
6
7/**
8 * <!-- begin-user-doc -->
9 * A representation of the model object '<em><b>Enum Declaration</b></em>'.
10 * <!-- end-user-doc -->
11 *
12 * <p>
13 * The following features are supported:
14 * </p>
15 * <ul>
16 * <li>{@link org.eclipse.viatra.solver.language.model.problem.EnumDeclaration#getLiterals <em>Literals</em>}</li>
17 * </ul>
18 *
19 * @see org.eclipse.viatra.solver.language.model.problem.ProblemPackage#getEnumDeclaration()
20 * @model
21 * @generated
22 */
23public interface EnumDeclaration extends Relation, Statement {
24 /**
25 * Returns the value of the '<em><b>Literals</b></em>' containment reference list.
26 * The list contents are of type {@link org.eclipse.viatra.solver.language.model.problem.Node}.
27 * <!-- begin-user-doc -->
28 * <!-- end-user-doc -->
29 * @return the value of the '<em>Literals</em>' containment reference list.
30 * @see org.eclipse.viatra.solver.language.model.problem.ProblemPackage#getEnumDeclaration_Literals()
31 * @model containment="true"
32 * @generated
33 */
34 EList<Node> getLiterals();
35
36} // EnumDeclaration
diff --git a/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/Node.java b/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/Node.java
index e6547083..3da08af3 100644
--- a/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/Node.java
+++ b/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/Node.java
@@ -12,5 +12,5 @@ package org.eclipse.viatra.solver.language.model.problem;
12 * @model 12 * @model
13 * @generated 13 * @generated
14 */ 14 */
15public interface Node extends NamedElement { 15public interface Node extends VariableOrNode {
16} // Node 16} // Node
diff --git a/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/Parameter.java b/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/Parameter.java
index 5ed8ac3c..7bedca1b 100644
--- a/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/Parameter.java
+++ b/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/Parameter.java
@@ -24,12 +24,12 @@ public interface Parameter extends Variable {
24 * <!-- begin-user-doc --> 24 * <!-- begin-user-doc -->
25 * <!-- end-user-doc --> 25 * <!-- end-user-doc -->
26 * @return the value of the '<em>Parameter Type</em>' reference. 26 * @return the value of the '<em>Parameter Type</em>' reference.
27 * @see #setParameterType(ClassDeclaration) 27 * @see #setParameterType(Relation)
28 * @see org.eclipse.viatra.solver.language.model.problem.ProblemPackage#getParameter_ParameterType() 28 * @see org.eclipse.viatra.solver.language.model.problem.ProblemPackage#getParameter_ParameterType()
29 * @model 29 * @model
30 * @generated 30 * @generated
31 */ 31 */
32 ClassDeclaration getParameterType(); 32 Relation getParameterType();
33 33
34 /** 34 /**
35 * Sets the value of the '{@link org.eclipse.viatra.solver.language.model.problem.Parameter#getParameterType <em>Parameter Type</em>}' reference. 35 * Sets the value of the '{@link org.eclipse.viatra.solver.language.model.problem.Parameter#getParameterType <em>Parameter Type</em>}' reference.
@@ -39,6 +39,6 @@ public interface Parameter extends Variable {
39 * @see #getParameterType() 39 * @see #getParameterType()
40 * @generated 40 * @generated
41 */ 41 */
42 void setParameterType(ClassDeclaration value); 42 void setParameterType(Relation value);
43 43
44} // Parameter 44} // Parameter
diff --git a/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/ProblemFactory.java b/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/ProblemFactory.java
index bdfc326b..e4332d19 100644
--- a/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/ProblemFactory.java
+++ b/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/ProblemFactory.java
@@ -175,6 +175,15 @@ public interface ProblemFactory extends EFactory {
175 Argument createArgument(); 175 Argument createArgument();
176 176
177 /** 177 /**
178 * Returns a new object of class '<em>Enum Declaration</em>'.
179 * <!-- begin-user-doc -->
180 * <!-- end-user-doc -->
181 * @return a new object of class '<em>Enum Declaration</em>'.
182 * @generated
183 */
184 EnumDeclaration createEnumDeclaration();
185
186 /**
178 * Returns the package supported by this factory. 187 * Returns the package supported by this factory.
179 * <!-- begin-user-doc --> 188 * <!-- begin-user-doc -->
180 * <!-- end-user-doc --> 189 * <!-- end-user-doc -->
diff --git a/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/ProblemPackage.java b/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/ProblemPackage.java
index 1358eaeb..ec96501d 100644
--- a/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/ProblemPackage.java
+++ b/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/ProblemPackage.java
@@ -397,6 +397,43 @@ public interface ProblemPackage extends EPackage {
397 int PREDICATE_DEFINITION_OPERATION_COUNT = RELATION_OPERATION_COUNT + 0; 397 int PREDICATE_DEFINITION_OPERATION_COUNT = RELATION_OPERATION_COUNT + 0;
398 398
399 /** 399 /**
400 * The meta object id for the '{@link org.eclipse.viatra.solver.language.model.problem.impl.VariableOrNodeImpl <em>Variable Or Node</em>}' class.
401 * <!-- begin-user-doc -->
402 * <!-- end-user-doc -->
403 * @see org.eclipse.viatra.solver.language.model.problem.impl.VariableOrNodeImpl
404 * @see org.eclipse.viatra.solver.language.model.problem.impl.ProblemPackageImpl#getVariableOrNode()
405 * @generated
406 */
407 int VARIABLE_OR_NODE = 25;
408
409 /**
410 * The feature id for the '<em><b>Name</b></em>' attribute.
411 * <!-- begin-user-doc -->
412 * <!-- end-user-doc -->
413 * @generated
414 * @ordered
415 */
416 int VARIABLE_OR_NODE__NAME = NAMED_ELEMENT__NAME;
417
418 /**
419 * The number of structural features of the '<em>Variable Or Node</em>' class.
420 * <!-- begin-user-doc -->
421 * <!-- end-user-doc -->
422 * @generated
423 * @ordered
424 */
425 int VARIABLE_OR_NODE_FEATURE_COUNT = NAMED_ELEMENT_FEATURE_COUNT + 0;
426
427 /**
428 * The number of operations of the '<em>Variable Or Node</em>' class.
429 * <!-- begin-user-doc -->
430 * <!-- end-user-doc -->
431 * @generated
432 * @ordered
433 */
434 int VARIABLE_OR_NODE_OPERATION_COUNT = NAMED_ELEMENT_OPERATION_COUNT + 0;
435
436 /**
400 * The meta object id for the '{@link org.eclipse.viatra.solver.language.model.problem.impl.VariableImpl <em>Variable</em>}' class. 437 * The meta object id for the '{@link org.eclipse.viatra.solver.language.model.problem.impl.VariableImpl <em>Variable</em>}' class.
401 * <!-- begin-user-doc --> 438 * <!-- begin-user-doc -->
402 * <!-- end-user-doc --> 439 * <!-- end-user-doc -->
@@ -413,7 +450,7 @@ public interface ProblemPackage extends EPackage {
413 * @generated 450 * @generated
414 * @ordered 451 * @ordered
415 */ 452 */
416 int VARIABLE__NAME = NAMED_ELEMENT__NAME; 453 int VARIABLE__NAME = VARIABLE_OR_NODE__NAME;
417 454
418 /** 455 /**
419 * The number of structural features of the '<em>Variable</em>' class. 456 * The number of structural features of the '<em>Variable</em>' class.
@@ -422,7 +459,7 @@ public interface ProblemPackage extends EPackage {
422 * @generated 459 * @generated
423 * @ordered 460 * @ordered
424 */ 461 */
425 int VARIABLE_FEATURE_COUNT = NAMED_ELEMENT_FEATURE_COUNT + 0; 462 int VARIABLE_FEATURE_COUNT = VARIABLE_OR_NODE_FEATURE_COUNT + 0;
426 463
427 /** 464 /**
428 * The number of operations of the '<em>Variable</em>' class. 465 * The number of operations of the '<em>Variable</em>' class.
@@ -431,7 +468,7 @@ public interface ProblemPackage extends EPackage {
431 * @generated 468 * @generated
432 * @ordered 469 * @ordered
433 */ 470 */
434 int VARIABLE_OPERATION_COUNT = NAMED_ELEMENT_OPERATION_COUNT + 0; 471 int VARIABLE_OPERATION_COUNT = VARIABLE_OR_NODE_OPERATION_COUNT + 0;
435 472
436 /** 473 /**
437 * The meta object id for the '{@link org.eclipse.viatra.solver.language.model.problem.impl.ParameterImpl <em>Parameter</em>}' class. 474 * The meta object id for the '{@link org.eclipse.viatra.solver.language.model.problem.impl.ParameterImpl <em>Parameter</em>}' class.
@@ -828,7 +865,7 @@ public interface ProblemPackage extends EPackage {
828 * @generated 865 * @generated
829 * @ordered 866 * @ordered
830 */ 867 */
831 int NODE__NAME = NAMED_ELEMENT__NAME; 868 int NODE__NAME = VARIABLE_OR_NODE__NAME;
832 869
833 /** 870 /**
834 * The number of structural features of the '<em>Node</em>' class. 871 * The number of structural features of the '<em>Node</em>' class.
@@ -837,7 +874,7 @@ public interface ProblemPackage extends EPackage {
837 * @generated 874 * @generated
838 * @ordered 875 * @ordered
839 */ 876 */
840 int NODE_FEATURE_COUNT = NAMED_ELEMENT_FEATURE_COUNT + 0; 877 int NODE_FEATURE_COUNT = VARIABLE_OR_NODE_FEATURE_COUNT + 0;
841 878
842 /** 879 /**
843 * The number of operations of the '<em>Node</em>' class. 880 * The number of operations of the '<em>Node</em>' class.
@@ -846,7 +883,7 @@ public interface ProblemPackage extends EPackage {
846 * @generated 883 * @generated
847 * @ordered 884 * @ordered
848 */ 885 */
849 int NODE_OPERATION_COUNT = NAMED_ELEMENT_OPERATION_COUNT + 0; 886 int NODE_OPERATION_COUNT = VARIABLE_OR_NODE_OPERATION_COUNT + 0;
850 887
851 /** 888 /**
852 * The meta object id for the '{@link org.eclipse.viatra.solver.language.model.problem.impl.ScopeDeclarationImpl <em>Scope Declaration</em>}' class. 889 * The meta object id for the '{@link org.eclipse.viatra.solver.language.model.problem.impl.ScopeDeclarationImpl <em>Scope Declaration</em>}' class.
@@ -1090,13 +1127,13 @@ public interface ProblemPackage extends EPackage {
1090 int ARGUMENT = 23; 1127 int ARGUMENT = 23;
1091 1128
1092 /** 1129 /**
1093 * The feature id for the '<em><b>Variable</b></em>' reference. 1130 * The feature id for the '<em><b>Variable Or Node</b></em>' reference.
1094 * <!-- begin-user-doc --> 1131 * <!-- begin-user-doc -->
1095 * <!-- end-user-doc --> 1132 * <!-- end-user-doc -->
1096 * @generated 1133 * @generated
1097 * @ordered 1134 * @ordered
1098 */ 1135 */
1099 int ARGUMENT__VARIABLE = 0; 1136 int ARGUMENT__VARIABLE_OR_NODE = 0;
1100 1137
1101 /** 1138 /**
1102 * The feature id for the '<em><b>Singleton Variable</b></em>' containment reference. 1139 * The feature id for the '<em><b>Singleton Variable</b></em>' containment reference.
@@ -1126,6 +1163,52 @@ public interface ProblemPackage extends EPackage {
1126 int ARGUMENT_OPERATION_COUNT = 0; 1163 int ARGUMENT_OPERATION_COUNT = 0;
1127 1164
1128 /** 1165 /**
1166 * The meta object id for the '{@link org.eclipse.viatra.solver.language.model.problem.impl.EnumDeclarationImpl <em>Enum Declaration</em>}' class.
1167 * <!-- begin-user-doc -->
1168 * <!-- end-user-doc -->
1169 * @see org.eclipse.viatra.solver.language.model.problem.impl.EnumDeclarationImpl
1170 * @see org.eclipse.viatra.solver.language.model.problem.impl.ProblemPackageImpl#getEnumDeclaration()
1171 * @generated
1172 */
1173 int ENUM_DECLARATION = 24;
1174
1175 /**
1176 * The feature id for the '<em><b>Name</b></em>' attribute.
1177 * <!-- begin-user-doc -->
1178 * <!-- end-user-doc -->
1179 * @generated
1180 * @ordered
1181 */
1182 int ENUM_DECLARATION__NAME = RELATION__NAME;
1183
1184 /**
1185 * The feature id for the '<em><b>Literals</b></em>' containment reference list.
1186 * <!-- begin-user-doc -->
1187 * <!-- end-user-doc -->
1188 * @generated
1189 * @ordered
1190 */
1191 int ENUM_DECLARATION__LITERALS = RELATION_FEATURE_COUNT + 0;
1192
1193 /**
1194 * The number of structural features of the '<em>Enum Declaration</em>' class.
1195 * <!-- begin-user-doc -->
1196 * <!-- end-user-doc -->
1197 * @generated
1198 * @ordered
1199 */
1200 int ENUM_DECLARATION_FEATURE_COUNT = RELATION_FEATURE_COUNT + 1;
1201
1202 /**
1203 * The number of operations of the '<em>Enum Declaration</em>' class.
1204 * <!-- begin-user-doc -->
1205 * <!-- end-user-doc -->
1206 * @generated
1207 * @ordered
1208 */
1209 int ENUM_DECLARATION_OPERATION_COUNT = RELATION_OPERATION_COUNT + 0;
1210
1211 /**
1129 * The meta object id for the '{@link org.eclipse.viatra.solver.language.model.problem.LogicValue <em>Logic Value</em>}' enum. 1212 * The meta object id for the '{@link org.eclipse.viatra.solver.language.model.problem.LogicValue <em>Logic Value</em>}' enum.
1130 * <!-- begin-user-doc --> 1213 * <!-- begin-user-doc -->
1131 * <!-- end-user-doc --> 1214 * <!-- end-user-doc -->
@@ -1133,7 +1216,7 @@ public interface ProblemPackage extends EPackage {
1133 * @see org.eclipse.viatra.solver.language.model.problem.impl.ProblemPackageImpl#getLogicValue() 1216 * @see org.eclipse.viatra.solver.language.model.problem.impl.ProblemPackageImpl#getLogicValue()
1134 * @generated 1217 * @generated
1135 */ 1218 */
1136 int LOGIC_VALUE = 24; 1219 int LOGIC_VALUE = 26;
1137 1220
1138 /** 1221 /**
1139 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.model.problem.Problem <em>Problem</em>}'. 1222 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.model.problem.Problem <em>Problem</em>}'.
@@ -1717,15 +1800,15 @@ public interface ProblemPackage extends EPackage {
1717 EClass getArgument(); 1800 EClass getArgument();
1718 1801
1719 /** 1802 /**
1720 * Returns the meta object for the reference '{@link org.eclipse.viatra.solver.language.model.problem.Argument#getVariable <em>Variable</em>}'. 1803 * Returns the meta object for the reference '{@link org.eclipse.viatra.solver.language.model.problem.Argument#getVariableOrNode <em>Variable Or Node</em>}'.
1721 * <!-- begin-user-doc --> 1804 * <!-- begin-user-doc -->
1722 * <!-- end-user-doc --> 1805 * <!-- end-user-doc -->
1723 * @return the meta object for the reference '<em>Variable</em>'. 1806 * @return the meta object for the reference '<em>Variable Or Node</em>'.
1724 * @see org.eclipse.viatra.solver.language.model.problem.Argument#getVariable() 1807 * @see org.eclipse.viatra.solver.language.model.problem.Argument#getVariableOrNode()
1725 * @see #getArgument() 1808 * @see #getArgument()
1726 * @generated 1809 * @generated
1727 */ 1810 */
1728 EReference getArgument_Variable(); 1811 EReference getArgument_VariableOrNode();
1729 1812
1730 /** 1813 /**
1731 * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.model.problem.Argument#getSingletonVariable <em>Singleton Variable</em>}'. 1814 * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.model.problem.Argument#getSingletonVariable <em>Singleton Variable</em>}'.
@@ -1739,6 +1822,37 @@ public interface ProblemPackage extends EPackage {
1739 EReference getArgument_SingletonVariable(); 1822 EReference getArgument_SingletonVariable();
1740 1823
1741 /** 1824 /**
1825 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.model.problem.EnumDeclaration <em>Enum Declaration</em>}'.
1826 * <!-- begin-user-doc -->
1827 * <!-- end-user-doc -->
1828 * @return the meta object for class '<em>Enum Declaration</em>'.
1829 * @see org.eclipse.viatra.solver.language.model.problem.EnumDeclaration
1830 * @generated
1831 */
1832 EClass getEnumDeclaration();
1833
1834 /**
1835 * Returns the meta object for the containment reference list '{@link org.eclipse.viatra.solver.language.model.problem.EnumDeclaration#getLiterals <em>Literals</em>}'.
1836 * <!-- begin-user-doc -->
1837 * <!-- end-user-doc -->
1838 * @return the meta object for the containment reference list '<em>Literals</em>'.
1839 * @see org.eclipse.viatra.solver.language.model.problem.EnumDeclaration#getLiterals()
1840 * @see #getEnumDeclaration()
1841 * @generated
1842 */
1843 EReference getEnumDeclaration_Literals();
1844
1845 /**
1846 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.model.problem.VariableOrNode <em>Variable Or Node</em>}'.
1847 * <!-- begin-user-doc -->
1848 * <!-- end-user-doc -->
1849 * @return the meta object for class '<em>Variable Or Node</em>'.
1850 * @see org.eclipse.viatra.solver.language.model.problem.VariableOrNode
1851 * @generated
1852 */
1853 EClass getVariableOrNode();
1854
1855 /**
1742 * Returns the meta object for enum '{@link org.eclipse.viatra.solver.language.model.problem.LogicValue <em>Logic Value</em>}'. 1856 * Returns the meta object for enum '{@link org.eclipse.viatra.solver.language.model.problem.LogicValue <em>Logic Value</em>}'.
1743 * <!-- begin-user-doc --> 1857 * <!-- begin-user-doc -->
1744 * <!-- end-user-doc --> 1858 * <!-- end-user-doc -->
@@ -2260,12 +2374,12 @@ public interface ProblemPackage extends EPackage {
2260 EClass ARGUMENT = eINSTANCE.getArgument(); 2374 EClass ARGUMENT = eINSTANCE.getArgument();
2261 2375
2262 /** 2376 /**
2263 * The meta object literal for the '<em><b>Variable</b></em>' reference feature. 2377 * The meta object literal for the '<em><b>Variable Or Node</b></em>' reference feature.
2264 * <!-- begin-user-doc --> 2378 * <!-- begin-user-doc -->
2265 * <!-- end-user-doc --> 2379 * <!-- end-user-doc -->
2266 * @generated 2380 * @generated
2267 */ 2381 */
2268 EReference ARGUMENT__VARIABLE = eINSTANCE.getArgument_Variable(); 2382 EReference ARGUMENT__VARIABLE_OR_NODE = eINSTANCE.getArgument_VariableOrNode();
2269 2383
2270 /** 2384 /**
2271 * The meta object literal for the '<em><b>Singleton Variable</b></em>' containment reference feature. 2385 * The meta object literal for the '<em><b>Singleton Variable</b></em>' containment reference feature.
@@ -2276,6 +2390,34 @@ public interface ProblemPackage extends EPackage {
2276 EReference ARGUMENT__SINGLETON_VARIABLE = eINSTANCE.getArgument_SingletonVariable(); 2390 EReference ARGUMENT__SINGLETON_VARIABLE = eINSTANCE.getArgument_SingletonVariable();
2277 2391
2278 /** 2392 /**
2393 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.model.problem.impl.EnumDeclarationImpl <em>Enum Declaration</em>}' class.
2394 * <!-- begin-user-doc -->
2395 * <!-- end-user-doc -->
2396 * @see org.eclipse.viatra.solver.language.model.problem.impl.EnumDeclarationImpl
2397 * @see org.eclipse.viatra.solver.language.model.problem.impl.ProblemPackageImpl#getEnumDeclaration()
2398 * @generated
2399 */
2400 EClass ENUM_DECLARATION = eINSTANCE.getEnumDeclaration();
2401
2402 /**
2403 * The meta object literal for the '<em><b>Literals</b></em>' containment reference list feature.
2404 * <!-- begin-user-doc -->
2405 * <!-- end-user-doc -->
2406 * @generated
2407 */
2408 EReference ENUM_DECLARATION__LITERALS = eINSTANCE.getEnumDeclaration_Literals();
2409
2410 /**
2411 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.model.problem.impl.VariableOrNodeImpl <em>Variable Or Node</em>}' class.
2412 * <!-- begin-user-doc -->
2413 * <!-- end-user-doc -->
2414 * @see org.eclipse.viatra.solver.language.model.problem.impl.VariableOrNodeImpl
2415 * @see org.eclipse.viatra.solver.language.model.problem.impl.ProblemPackageImpl#getVariableOrNode()
2416 * @generated
2417 */
2418 EClass VARIABLE_OR_NODE = eINSTANCE.getVariableOrNode();
2419
2420 /**
2279 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.model.problem.LogicValue <em>Logic Value</em>}' enum. 2421 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.model.problem.LogicValue <em>Logic Value</em>}' enum.
2280 * <!-- begin-user-doc --> 2422 * <!-- begin-user-doc -->
2281 * <!-- end-user-doc --> 2423 * <!-- end-user-doc -->
diff --git a/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/ReferenceDeclaration.java b/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/ReferenceDeclaration.java
index f07ee7d1..38650d66 100644
--- a/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/ReferenceDeclaration.java
+++ b/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/ReferenceDeclaration.java
@@ -27,12 +27,12 @@ public interface ReferenceDeclaration extends Relation {
27 * <!-- begin-user-doc --> 27 * <!-- begin-user-doc -->
28 * <!-- end-user-doc --> 28 * <!-- end-user-doc -->
29 * @return the value of the '<em>Reference Type</em>' reference. 29 * @return the value of the '<em>Reference Type</em>' reference.
30 * @see #setReferenceType(ClassDeclaration) 30 * @see #setReferenceType(Relation)
31 * @see org.eclipse.viatra.solver.language.model.problem.ProblemPackage#getReferenceDeclaration_ReferenceType() 31 * @see org.eclipse.viatra.solver.language.model.problem.ProblemPackage#getReferenceDeclaration_ReferenceType()
32 * @model 32 * @model
33 * @generated 33 * @generated
34 */ 34 */
35 ClassDeclaration getReferenceType(); 35 Relation getReferenceType();
36 36
37 /** 37 /**
38 * Sets the value of the '{@link org.eclipse.viatra.solver.language.model.problem.ReferenceDeclaration#getReferenceType <em>Reference Type</em>}' reference. 38 * Sets the value of the '{@link org.eclipse.viatra.solver.language.model.problem.ReferenceDeclaration#getReferenceType <em>Reference Type</em>}' reference.
@@ -42,7 +42,7 @@ public interface ReferenceDeclaration extends Relation {
42 * @see #getReferenceType() 42 * @see #getReferenceType()
43 * @generated 43 * @generated
44 */ 44 */
45 void setReferenceType(ClassDeclaration value); 45 void setReferenceType(Relation value);
46 46
47 /** 47 /**
48 * Returns the value of the '<em><b>Opposite</b></em>' reference. 48 * Returns the value of the '<em><b>Opposite</b></em>' reference.
diff --git a/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/Variable.java b/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/Variable.java
index 26637a35..cba5740c 100644
--- a/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/Variable.java
+++ b/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/Variable.java
@@ -12,5 +12,5 @@ package org.eclipse.viatra.solver.language.model.problem;
12 * @model abstract="true" 12 * @model abstract="true"
13 * @generated 13 * @generated
14 */ 14 */
15public interface Variable extends NamedElement { 15public interface Variable extends VariableOrNode {
16} // Variable 16} // Variable
diff --git a/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/VariableOrNode.java b/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/VariableOrNode.java
new file mode 100644
index 00000000..65c315e2
--- /dev/null
+++ b/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/VariableOrNode.java
@@ -0,0 +1,16 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.model.problem;
4
5/**
6 * <!-- begin-user-doc -->
7 * A representation of the model object '<em><b>Variable Or Node</b></em>'.
8 * <!-- end-user-doc -->
9 *
10 *
11 * @see org.eclipse.viatra.solver.language.model.problem.ProblemPackage#getVariableOrNode()
12 * @model abstract="true"
13 * @generated
14 */
15public interface VariableOrNode extends NamedElement {
16} // VariableOrNode
diff --git a/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/ArgumentImpl.java b/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/ArgumentImpl.java
index 9f6bc7ae..f7d045ca 100644
--- a/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/ArgumentImpl.java
+++ b/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/ArgumentImpl.java
@@ -14,7 +14,7 @@ import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
14import org.eclipse.viatra.solver.language.model.problem.Argument; 14import org.eclipse.viatra.solver.language.model.problem.Argument;
15import org.eclipse.viatra.solver.language.model.problem.ImplicitVariable; 15import org.eclipse.viatra.solver.language.model.problem.ImplicitVariable;
16import org.eclipse.viatra.solver.language.model.problem.ProblemPackage; 16import org.eclipse.viatra.solver.language.model.problem.ProblemPackage;
17import org.eclipse.viatra.solver.language.model.problem.Variable; 17import org.eclipse.viatra.solver.language.model.problem.VariableOrNode;
18 18
19/** 19/**
20 * <!-- begin-user-doc --> 20 * <!-- begin-user-doc -->
@@ -24,7 +24,7 @@ import org.eclipse.viatra.solver.language.model.problem.Variable;
24 * The following features are implemented: 24 * The following features are implemented:
25 * </p> 25 * </p>
26 * <ul> 26 * <ul>
27 * <li>{@link org.eclipse.viatra.solver.language.model.problem.impl.ArgumentImpl#getVariable <em>Variable</em>}</li> 27 * <li>{@link org.eclipse.viatra.solver.language.model.problem.impl.ArgumentImpl#getVariableOrNode <em>Variable Or Node</em>}</li>
28 * <li>{@link org.eclipse.viatra.solver.language.model.problem.impl.ArgumentImpl#getSingletonVariable <em>Singleton Variable</em>}</li> 28 * <li>{@link org.eclipse.viatra.solver.language.model.problem.impl.ArgumentImpl#getSingletonVariable <em>Singleton Variable</em>}</li>
29 * </ul> 29 * </ul>
30 * 30 *
@@ -32,14 +32,14 @@ import org.eclipse.viatra.solver.language.model.problem.Variable;
32 */ 32 */
33public class ArgumentImpl extends MinimalEObjectImpl.Container implements Argument { 33public class ArgumentImpl extends MinimalEObjectImpl.Container implements Argument {
34 /** 34 /**
35 * The cached value of the '{@link #getVariable() <em>Variable</em>}' reference. 35 * The cached value of the '{@link #getVariableOrNode() <em>Variable Or Node</em>}' reference.
36 * <!-- begin-user-doc --> 36 * <!-- begin-user-doc -->
37 * <!-- end-user-doc --> 37 * <!-- end-user-doc -->
38 * @see #getVariable() 38 * @see #getVariableOrNode()
39 * @generated 39 * @generated
40 * @ordered 40 * @ordered
41 */ 41 */
42 protected Variable variable; 42 protected VariableOrNode variableOrNode;
43 43
44 /** 44 /**
45 * The cached value of the '{@link #getSingletonVariable() <em>Singleton Variable</em>}' containment reference. 45 * The cached value of the '{@link #getSingletonVariable() <em>Singleton Variable</em>}' containment reference.
@@ -75,17 +75,17 @@ public class ArgumentImpl extends MinimalEObjectImpl.Container implements Argume
75 * <!-- end-user-doc --> 75 * <!-- end-user-doc -->
76 * @generated 76 * @generated
77 */ 77 */
78 public Variable getVariable() { 78 public VariableOrNode getVariableOrNode() {
79 if (variable != null && variable.eIsProxy()) { 79 if (variableOrNode != null && variableOrNode.eIsProxy()) {
80 InternalEObject oldVariable = (InternalEObject) variable; 80 InternalEObject oldVariableOrNode = (InternalEObject) variableOrNode;
81 variable = (Variable) eResolveProxy(oldVariable); 81 variableOrNode = (VariableOrNode) eResolveProxy(oldVariableOrNode);
82 if (variable != oldVariable) { 82 if (variableOrNode != oldVariableOrNode) {
83 if (eNotificationRequired()) 83 if (eNotificationRequired())
84 eNotify(new ENotificationImpl(this, Notification.RESOLVE, ProblemPackage.ARGUMENT__VARIABLE, 84 eNotify(new ENotificationImpl(this, Notification.RESOLVE, ProblemPackage.ARGUMENT__VARIABLE_OR_NODE,
85 oldVariable, variable)); 85 oldVariableOrNode, variableOrNode));
86 } 86 }
87 } 87 }
88 return variable; 88 return variableOrNode;
89 } 89 }
90 90
91 /** 91 /**
@@ -93,8 +93,8 @@ public class ArgumentImpl extends MinimalEObjectImpl.Container implements Argume
93 * <!-- end-user-doc --> 93 * <!-- end-user-doc -->
94 * @generated 94 * @generated
95 */ 95 */
96 public Variable basicGetVariable() { 96 public VariableOrNode basicGetVariableOrNode() {
97 return variable; 97 return variableOrNode;
98 } 98 }
99 99
100 /** 100 /**
@@ -102,12 +102,12 @@ public class ArgumentImpl extends MinimalEObjectImpl.Container implements Argume
102 * <!-- end-user-doc --> 102 * <!-- end-user-doc -->
103 * @generated 103 * @generated
104 */ 104 */
105 public void setVariable(Variable newVariable) { 105 public void setVariableOrNode(VariableOrNode newVariableOrNode) {
106 Variable oldVariable = variable; 106 VariableOrNode oldVariableOrNode = variableOrNode;
107 variable = newVariable; 107 variableOrNode = newVariableOrNode;
108 if (eNotificationRequired()) 108 if (eNotificationRequired())
109 eNotify(new ENotificationImpl(this, Notification.SET, ProblemPackage.ARGUMENT__VARIABLE, oldVariable, 109 eNotify(new ENotificationImpl(this, Notification.SET, ProblemPackage.ARGUMENT__VARIABLE_OR_NODE,
110 variable)); 110 oldVariableOrNode, variableOrNode));
111 } 111 }
112 112
113 /** 113 /**
@@ -182,10 +182,10 @@ public class ArgumentImpl extends MinimalEObjectImpl.Container implements Argume
182 @Override 182 @Override
183 public Object eGet(int featureID, boolean resolve, boolean coreType) { 183 public Object eGet(int featureID, boolean resolve, boolean coreType) {
184 switch (featureID) { 184 switch (featureID) {
185 case ProblemPackage.ARGUMENT__VARIABLE: 185 case ProblemPackage.ARGUMENT__VARIABLE_OR_NODE:
186 if (resolve) 186 if (resolve)
187 return getVariable(); 187 return getVariableOrNode();
188 return basicGetVariable(); 188 return basicGetVariableOrNode();
189 case ProblemPackage.ARGUMENT__SINGLETON_VARIABLE: 189 case ProblemPackage.ARGUMENT__SINGLETON_VARIABLE:
190 return getSingletonVariable(); 190 return getSingletonVariable();
191 } 191 }
@@ -200,8 +200,8 @@ public class ArgumentImpl extends MinimalEObjectImpl.Container implements Argume
200 @Override 200 @Override
201 public void eSet(int featureID, Object newValue) { 201 public void eSet(int featureID, Object newValue) {
202 switch (featureID) { 202 switch (featureID) {
203 case ProblemPackage.ARGUMENT__VARIABLE: 203 case ProblemPackage.ARGUMENT__VARIABLE_OR_NODE:
204 setVariable((Variable) newValue); 204 setVariableOrNode((VariableOrNode) newValue);
205 return; 205 return;
206 case ProblemPackage.ARGUMENT__SINGLETON_VARIABLE: 206 case ProblemPackage.ARGUMENT__SINGLETON_VARIABLE:
207 setSingletonVariable((ImplicitVariable) newValue); 207 setSingletonVariable((ImplicitVariable) newValue);
@@ -218,8 +218,8 @@ public class ArgumentImpl extends MinimalEObjectImpl.Container implements Argume
218 @Override 218 @Override
219 public void eUnset(int featureID) { 219 public void eUnset(int featureID) {
220 switch (featureID) { 220 switch (featureID) {
221 case ProblemPackage.ARGUMENT__VARIABLE: 221 case ProblemPackage.ARGUMENT__VARIABLE_OR_NODE:
222 setVariable((Variable) null); 222 setVariableOrNode((VariableOrNode) null);
223 return; 223 return;
224 case ProblemPackage.ARGUMENT__SINGLETON_VARIABLE: 224 case ProblemPackage.ARGUMENT__SINGLETON_VARIABLE:
225 setSingletonVariable((ImplicitVariable) null); 225 setSingletonVariable((ImplicitVariable) null);
@@ -236,8 +236,8 @@ public class ArgumentImpl extends MinimalEObjectImpl.Container implements Argume
236 @Override 236 @Override
237 public boolean eIsSet(int featureID) { 237 public boolean eIsSet(int featureID) {
238 switch (featureID) { 238 switch (featureID) {
239 case ProblemPackage.ARGUMENT__VARIABLE: 239 case ProblemPackage.ARGUMENT__VARIABLE_OR_NODE:
240 return variable != null; 240 return variableOrNode != null;
241 case ProblemPackage.ARGUMENT__SINGLETON_VARIABLE: 241 case ProblemPackage.ARGUMENT__SINGLETON_VARIABLE:
242 return singletonVariable != null; 242 return singletonVariable != null;
243 } 243 }
diff --git a/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/ClassDeclarationImpl.java b/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/ClassDeclarationImpl.java
index 89de4d01..774a6e33 100644
--- a/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/ClassDeclarationImpl.java
+++ b/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/ClassDeclarationImpl.java
@@ -22,6 +22,7 @@ import org.eclipse.viatra.solver.language.model.problem.ClassDeclaration;
22import org.eclipse.viatra.solver.language.model.problem.Node; 22import org.eclipse.viatra.solver.language.model.problem.Node;
23import org.eclipse.viatra.solver.language.model.problem.ProblemPackage; 23import org.eclipse.viatra.solver.language.model.problem.ProblemPackage;
24import org.eclipse.viatra.solver.language.model.problem.ReferenceDeclaration; 24import org.eclipse.viatra.solver.language.model.problem.ReferenceDeclaration;
25import org.eclipse.viatra.solver.language.model.problem.Relation;
25 26
26/** 27/**
27 * <!-- begin-user-doc --> 28 * <!-- begin-user-doc -->
@@ -68,7 +69,7 @@ public class ClassDeclarationImpl extends RelationImpl implements ClassDeclarati
68 * @generated 69 * @generated
69 * @ordered 70 * @ordered
70 */ 71 */
71 protected EList<ClassDeclaration> superTypes; 72 protected EList<Relation> superTypes;
72 73
73 /** 74 /**
74 * The cached value of the '{@link #getReferenceDeclarations() <em>Reference Declarations</em>}' containment reference list. 75 * The cached value of the '{@link #getReferenceDeclarations() <em>Reference Declarations</em>}' containment reference list.
@@ -136,9 +137,9 @@ public class ClassDeclarationImpl extends RelationImpl implements ClassDeclarati
136 * <!-- end-user-doc --> 137 * <!-- end-user-doc -->
137 * @generated 138 * @generated
138 */ 139 */
139 public EList<ClassDeclaration> getSuperTypes() { 140 public EList<Relation> getSuperTypes() {
140 if (superTypes == null) { 141 if (superTypes == null) {
141 superTypes = new EObjectResolvingEList<ClassDeclaration>(ClassDeclaration.class, this, 142 superTypes = new EObjectResolvingEList<Relation>(Relation.class, this,
142 ProblemPackage.CLASS_DECLARATION__SUPER_TYPES); 143 ProblemPackage.CLASS_DECLARATION__SUPER_TYPES);
143 } 144 }
144 return superTypes; 145 return superTypes;
@@ -257,7 +258,7 @@ public class ClassDeclarationImpl extends RelationImpl implements ClassDeclarati
257 return; 258 return;
258 case ProblemPackage.CLASS_DECLARATION__SUPER_TYPES: 259 case ProblemPackage.CLASS_DECLARATION__SUPER_TYPES:
259 getSuperTypes().clear(); 260 getSuperTypes().clear();
260 getSuperTypes().addAll((Collection<? extends ClassDeclaration>) newValue); 261 getSuperTypes().addAll((Collection<? extends Relation>) newValue);
261 return; 262 return;
262 case ProblemPackage.CLASS_DECLARATION__REFERENCE_DECLARATIONS: 263 case ProblemPackage.CLASS_DECLARATION__REFERENCE_DECLARATIONS:
263 getReferenceDeclarations().clear(); 264 getReferenceDeclarations().clear();
diff --git a/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/EnumDeclarationImpl.java b/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/EnumDeclarationImpl.java
new file mode 100644
index 00000000..aac00423
--- /dev/null
+++ b/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/EnumDeclarationImpl.java
@@ -0,0 +1,150 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.model.problem.impl;
4
5import java.util.Collection;
6
7import org.eclipse.emf.common.notify.NotificationChain;
8
9import org.eclipse.emf.common.util.EList;
10
11import org.eclipse.emf.ecore.EClass;
12import org.eclipse.emf.ecore.InternalEObject;
13
14import org.eclipse.emf.ecore.util.EObjectContainmentEList;
15import org.eclipse.emf.ecore.util.InternalEList;
16
17import org.eclipse.viatra.solver.language.model.problem.EnumDeclaration;
18import org.eclipse.viatra.solver.language.model.problem.Node;
19import org.eclipse.viatra.solver.language.model.problem.ProblemPackage;
20
21/**
22 * <!-- begin-user-doc -->
23 * An implementation of the model object '<em><b>Enum Declaration</b></em>'.
24 * <!-- end-user-doc -->
25 * <p>
26 * The following features are implemented:
27 * </p>
28 * <ul>
29 * <li>{@link org.eclipse.viatra.solver.language.model.problem.impl.EnumDeclarationImpl#getLiterals <em>Literals</em>}</li>
30 * </ul>
31 *
32 * @generated
33 */
34public class EnumDeclarationImpl extends RelationImpl implements EnumDeclaration {
35 /**
36 * The cached value of the '{@link #getLiterals() <em>Literals</em>}' containment reference list.
37 * <!-- begin-user-doc -->
38 * <!-- end-user-doc -->
39 * @see #getLiterals()
40 * @generated
41 * @ordered
42 */
43 protected EList<Node> literals;
44
45 /**
46 * <!-- begin-user-doc -->
47 * <!-- end-user-doc -->
48 * @generated
49 */
50 protected EnumDeclarationImpl() {
51 super();
52 }
53
54 /**
55 * <!-- begin-user-doc -->
56 * <!-- end-user-doc -->
57 * @generated
58 */
59 @Override
60 protected EClass eStaticClass() {
61 return ProblemPackage.Literals.ENUM_DECLARATION;
62 }
63
64 /**
65 * <!-- begin-user-doc -->
66 * <!-- end-user-doc -->
67 * @generated
68 */
69 public EList<Node> getLiterals() {
70 if (literals == null) {
71 literals = new EObjectContainmentEList<Node>(Node.class, this, ProblemPackage.ENUM_DECLARATION__LITERALS);
72 }
73 return literals;
74 }
75
76 /**
77 * <!-- begin-user-doc -->
78 * <!-- end-user-doc -->
79 * @generated
80 */
81 @Override
82 public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
83 switch (featureID) {
84 case ProblemPackage.ENUM_DECLARATION__LITERALS:
85 return ((InternalEList<?>) getLiterals()).basicRemove(otherEnd, msgs);
86 }
87 return super.eInverseRemove(otherEnd, featureID, msgs);
88 }
89
90 /**
91 * <!-- begin-user-doc -->
92 * <!-- end-user-doc -->
93 * @generated
94 */
95 @Override
96 public Object eGet(int featureID, boolean resolve, boolean coreType) {
97 switch (featureID) {
98 case ProblemPackage.ENUM_DECLARATION__LITERALS:
99 return getLiterals();
100 }
101 return super.eGet(featureID, resolve, coreType);
102 }
103
104 /**
105 * <!-- begin-user-doc -->
106 * <!-- end-user-doc -->
107 * @generated
108 */
109 @SuppressWarnings("unchecked")
110 @Override
111 public void eSet(int featureID, Object newValue) {
112 switch (featureID) {
113 case ProblemPackage.ENUM_DECLARATION__LITERALS:
114 getLiterals().clear();
115 getLiterals().addAll((Collection<? extends Node>) newValue);
116 return;
117 }
118 super.eSet(featureID, newValue);
119 }
120
121 /**
122 * <!-- begin-user-doc -->
123 * <!-- end-user-doc -->
124 * @generated
125 */
126 @Override
127 public void eUnset(int featureID) {
128 switch (featureID) {
129 case ProblemPackage.ENUM_DECLARATION__LITERALS:
130 getLiterals().clear();
131 return;
132 }
133 super.eUnset(featureID);
134 }
135
136 /**
137 * <!-- begin-user-doc -->
138 * <!-- end-user-doc -->
139 * @generated
140 */
141 @Override
142 public boolean eIsSet(int featureID) {
143 switch (featureID) {
144 case ProblemPackage.ENUM_DECLARATION__LITERALS:
145 return literals != null && !literals.isEmpty();
146 }
147 return super.eIsSet(featureID);
148 }
149
150} //EnumDeclarationImpl
diff --git a/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/NodeImpl.java b/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/NodeImpl.java
index 23b85a9c..0c08bb1b 100644
--- a/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/NodeImpl.java
+++ b/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/NodeImpl.java
@@ -14,7 +14,7 @@ import org.eclipse.viatra.solver.language.model.problem.ProblemPackage;
14 * 14 *
15 * @generated 15 * @generated
16 */ 16 */
17public class NodeImpl extends NamedElementImpl implements Node { 17public class NodeImpl extends VariableOrNodeImpl implements Node {
18 /** 18 /**
19 * <!-- begin-user-doc --> 19 * <!-- begin-user-doc -->
20 * <!-- end-user-doc --> 20 * <!-- end-user-doc -->
diff --git a/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/ParameterImpl.java b/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/ParameterImpl.java
index cfbf25b0..06eea3f3 100644
--- a/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/ParameterImpl.java
+++ b/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/ParameterImpl.java
@@ -8,10 +8,9 @@ import org.eclipse.emf.ecore.EClass;
8import org.eclipse.emf.ecore.InternalEObject; 8import org.eclipse.emf.ecore.InternalEObject;
9 9
10import org.eclipse.emf.ecore.impl.ENotificationImpl; 10import org.eclipse.emf.ecore.impl.ENotificationImpl;
11
12import org.eclipse.viatra.solver.language.model.problem.ClassDeclaration;
13import org.eclipse.viatra.solver.language.model.problem.Parameter; 11import org.eclipse.viatra.solver.language.model.problem.Parameter;
14import org.eclipse.viatra.solver.language.model.problem.ProblemPackage; 12import org.eclipse.viatra.solver.language.model.problem.ProblemPackage;
13import org.eclipse.viatra.solver.language.model.problem.Relation;
15 14
16/** 15/**
17 * <!-- begin-user-doc --> 16 * <!-- begin-user-doc -->
@@ -35,7 +34,7 @@ public class ParameterImpl extends VariableImpl implements Parameter {
35 * @generated 34 * @generated
36 * @ordered 35 * @ordered
37 */ 36 */
38 protected ClassDeclaration parameterType; 37 protected Relation parameterType;
39 38
40 /** 39 /**
41 * <!-- begin-user-doc --> 40 * <!-- begin-user-doc -->
@@ -61,10 +60,10 @@ public class ParameterImpl extends VariableImpl implements Parameter {
61 * <!-- end-user-doc --> 60 * <!-- end-user-doc -->
62 * @generated 61 * @generated
63 */ 62 */
64 public ClassDeclaration getParameterType() { 63 public Relation getParameterType() {
65 if (parameterType != null && parameterType.eIsProxy()) { 64 if (parameterType != null && parameterType.eIsProxy()) {
66 InternalEObject oldParameterType = (InternalEObject) parameterType; 65 InternalEObject oldParameterType = (InternalEObject) parameterType;
67 parameterType = (ClassDeclaration) eResolveProxy(oldParameterType); 66 parameterType = (Relation) eResolveProxy(oldParameterType);
68 if (parameterType != oldParameterType) { 67 if (parameterType != oldParameterType) {
69 if (eNotificationRequired()) 68 if (eNotificationRequired())
70 eNotify(new ENotificationImpl(this, Notification.RESOLVE, ProblemPackage.PARAMETER__PARAMETER_TYPE, 69 eNotify(new ENotificationImpl(this, Notification.RESOLVE, ProblemPackage.PARAMETER__PARAMETER_TYPE,
@@ -79,7 +78,7 @@ public class ParameterImpl extends VariableImpl implements Parameter {
79 * <!-- end-user-doc --> 78 * <!-- end-user-doc -->
80 * @generated 79 * @generated
81 */ 80 */
82 public ClassDeclaration basicGetParameterType() { 81 public Relation basicGetParameterType() {
83 return parameterType; 82 return parameterType;
84 } 83 }
85 84
@@ -88,8 +87,8 @@ public class ParameterImpl extends VariableImpl implements Parameter {
88 * <!-- end-user-doc --> 87 * <!-- end-user-doc -->
89 * @generated 88 * @generated
90 */ 89 */
91 public void setParameterType(ClassDeclaration newParameterType) { 90 public void setParameterType(Relation newParameterType) {
92 ClassDeclaration oldParameterType = parameterType; 91 Relation oldParameterType = parameterType;
93 parameterType = newParameterType; 92 parameterType = newParameterType;
94 if (eNotificationRequired()) 93 if (eNotificationRequired())
95 eNotify(new ENotificationImpl(this, Notification.SET, ProblemPackage.PARAMETER__PARAMETER_TYPE, 94 eNotify(new ENotificationImpl(this, Notification.SET, ProblemPackage.PARAMETER__PARAMETER_TYPE,
@@ -121,7 +120,7 @@ public class ParameterImpl extends VariableImpl implements Parameter {
121 public void eSet(int featureID, Object newValue) { 120 public void eSet(int featureID, Object newValue) {
122 switch (featureID) { 121 switch (featureID) {
123 case ProblemPackage.PARAMETER__PARAMETER_TYPE: 122 case ProblemPackage.PARAMETER__PARAMETER_TYPE:
124 setParameterType((ClassDeclaration) newValue); 123 setParameterType((Relation) newValue);
125 return; 124 return;
126 } 125 }
127 super.eSet(featureID, newValue); 126 super.eSet(featureID, newValue);
@@ -136,7 +135,7 @@ public class ParameterImpl extends VariableImpl implements Parameter {
136 public void eUnset(int featureID) { 135 public void eUnset(int featureID) {
137 switch (featureID) { 136 switch (featureID) {
138 case ProblemPackage.PARAMETER__PARAMETER_TYPE: 137 case ProblemPackage.PARAMETER__PARAMETER_TYPE:
139 setParameterType((ClassDeclaration) null); 138 setParameterType((Relation) null);
140 return; 139 return;
141 } 140 }
142 super.eUnset(featureID); 141 super.eUnset(featureID);
diff --git a/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/ProblemFactoryImpl.java b/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/ProblemFactoryImpl.java
index 3bb50cfe..2f4144b9 100644
--- a/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/ProblemFactoryImpl.java
+++ b/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/ProblemFactoryImpl.java
@@ -91,6 +91,8 @@ public class ProblemFactoryImpl extends EFactoryImpl implements ProblemFactory {
91 return createUnboundedMultiplicity(); 91 return createUnboundedMultiplicity();
92 case ProblemPackage.ARGUMENT: 92 case ProblemPackage.ARGUMENT:
93 return createArgument(); 93 return createArgument();
94 case ProblemPackage.ENUM_DECLARATION:
95 return createEnumDeclaration();
94 default: 96 default:
95 throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier"); 97 throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier");
96 } 98 }
@@ -301,6 +303,16 @@ public class ProblemFactoryImpl extends EFactoryImpl implements ProblemFactory {
301 * <!-- end-user-doc --> 303 * <!-- end-user-doc -->
302 * @generated 304 * @generated
303 */ 305 */
306 public EnumDeclaration createEnumDeclaration() {
307 EnumDeclarationImpl enumDeclaration = new EnumDeclarationImpl();
308 return enumDeclaration;
309 }
310
311 /**
312 * <!-- begin-user-doc -->
313 * <!-- end-user-doc -->
314 * @generated
315 */
304 public LogicValue createLogicValueFromString(EDataType eDataType, String initialValue) { 316 public LogicValue createLogicValueFromString(EDataType eDataType, String initialValue) {
305 LogicValue result = LogicValue.get(initialValue); 317 LogicValue result = LogicValue.get(initialValue);
306 if (result == null) 318 if (result == null)
diff --git a/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/ProblemPackageImpl.java b/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/ProblemPackageImpl.java
index f412addc..d10ff2f0 100644
--- a/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/ProblemPackageImpl.java
+++ b/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/ProblemPackageImpl.java
@@ -15,6 +15,7 @@ import org.eclipse.viatra.solver.language.model.problem.Assertion;
15import org.eclipse.viatra.solver.language.model.problem.Atom; 15import org.eclipse.viatra.solver.language.model.problem.Atom;
16import org.eclipse.viatra.solver.language.model.problem.ClassDeclaration; 16import org.eclipse.viatra.solver.language.model.problem.ClassDeclaration;
17import org.eclipse.viatra.solver.language.model.problem.Conjunction; 17import org.eclipse.viatra.solver.language.model.problem.Conjunction;
18import org.eclipse.viatra.solver.language.model.problem.EnumDeclaration;
18import org.eclipse.viatra.solver.language.model.problem.ExactMultiplicity; 19import org.eclipse.viatra.solver.language.model.problem.ExactMultiplicity;
19import org.eclipse.viatra.solver.language.model.problem.ExistentialQuantifier; 20import org.eclipse.viatra.solver.language.model.problem.ExistentialQuantifier;
20import org.eclipse.viatra.solver.language.model.problem.ImplicitVariable; 21import org.eclipse.viatra.solver.language.model.problem.ImplicitVariable;
@@ -37,6 +38,7 @@ import org.eclipse.viatra.solver.language.model.problem.Statement;
37import org.eclipse.viatra.solver.language.model.problem.TypeScope; 38import org.eclipse.viatra.solver.language.model.problem.TypeScope;
38import org.eclipse.viatra.solver.language.model.problem.UnboundedMultiplicity; 39import org.eclipse.viatra.solver.language.model.problem.UnboundedMultiplicity;
39import org.eclipse.viatra.solver.language.model.problem.Variable; 40import org.eclipse.viatra.solver.language.model.problem.Variable;
41import org.eclipse.viatra.solver.language.model.problem.VariableOrNode;
40 42
41/** 43/**
42 * <!-- begin-user-doc --> 44 * <!-- begin-user-doc -->
@@ -218,6 +220,20 @@ public class ProblemPackageImpl extends EPackageImpl implements ProblemPackage {
218 * <!-- end-user-doc --> 220 * <!-- end-user-doc -->
219 * @generated 221 * @generated
220 */ 222 */
223 private EClass enumDeclarationEClass = null;
224
225 /**
226 * <!-- begin-user-doc -->
227 * <!-- end-user-doc -->
228 * @generated
229 */
230 private EClass variableOrNodeEClass = null;
231
232 /**
233 * <!-- begin-user-doc -->
234 * <!-- end-user-doc -->
235 * @generated
236 */
221 private EEnum logicValueEEnum = null; 237 private EEnum logicValueEEnum = null;
222 238
223 /** 239 /**
@@ -784,7 +800,7 @@ public class ProblemPackageImpl extends EPackageImpl implements ProblemPackage {
784 * <!-- end-user-doc --> 800 * <!-- end-user-doc -->
785 * @generated 801 * @generated
786 */ 802 */
787 public EReference getArgument_Variable() { 803 public EReference getArgument_VariableOrNode() {
788 return (EReference) argumentEClass.getEStructuralFeatures().get(0); 804 return (EReference) argumentEClass.getEStructuralFeatures().get(0);
789 } 805 }
790 806
@@ -802,6 +818,33 @@ public class ProblemPackageImpl extends EPackageImpl implements ProblemPackage {
802 * <!-- end-user-doc --> 818 * <!-- end-user-doc -->
803 * @generated 819 * @generated
804 */ 820 */
821 public EClass getEnumDeclaration() {
822 return enumDeclarationEClass;
823 }
824
825 /**
826 * <!-- begin-user-doc -->
827 * <!-- end-user-doc -->
828 * @generated
829 */
830 public EReference getEnumDeclaration_Literals() {
831 return (EReference) enumDeclarationEClass.getEStructuralFeatures().get(0);
832 }
833
834 /**
835 * <!-- begin-user-doc -->
836 * <!-- end-user-doc -->
837 * @generated
838 */
839 public EClass getVariableOrNode() {
840 return variableOrNodeEClass;
841 }
842
843 /**
844 * <!-- begin-user-doc -->
845 * <!-- end-user-doc -->
846 * @generated
847 */
805 public EEnum getLogicValue() { 848 public EEnum getLogicValue() {
806 return logicValueEEnum; 849 return logicValueEEnum;
807 } 850 }
@@ -913,9 +956,14 @@ public class ProblemPackageImpl extends EPackageImpl implements ProblemPackage {
913 unboundedMultiplicityEClass = createEClass(UNBOUNDED_MULTIPLICITY); 956 unboundedMultiplicityEClass = createEClass(UNBOUNDED_MULTIPLICITY);
914 957
915 argumentEClass = createEClass(ARGUMENT); 958 argumentEClass = createEClass(ARGUMENT);
916 createEReference(argumentEClass, ARGUMENT__VARIABLE); 959 createEReference(argumentEClass, ARGUMENT__VARIABLE_OR_NODE);
917 createEReference(argumentEClass, ARGUMENT__SINGLETON_VARIABLE); 960 createEReference(argumentEClass, ARGUMENT__SINGLETON_VARIABLE);
918 961
962 enumDeclarationEClass = createEClass(ENUM_DECLARATION);
963 createEReference(enumDeclarationEClass, ENUM_DECLARATION__LITERALS);
964
965 variableOrNodeEClass = createEClass(VARIABLE_OR_NODE);
966
919 // Create enums 967 // Create enums
920 logicValueEEnum = createEEnum(LOGIC_VALUE); 968 logicValueEEnum = createEEnum(LOGIC_VALUE);
921 } 969 }
@@ -957,18 +1005,21 @@ public class ProblemPackageImpl extends EPackageImpl implements ProblemPackage {
957 predicateDefinitionEClass.getESuperTypes().add(this.getRelation()); 1005 predicateDefinitionEClass.getESuperTypes().add(this.getRelation());
958 predicateDefinitionEClass.getESuperTypes().add(this.getStatement()); 1006 predicateDefinitionEClass.getESuperTypes().add(this.getStatement());
959 parameterEClass.getESuperTypes().add(this.getVariable()); 1007 parameterEClass.getESuperTypes().add(this.getVariable());
960 variableEClass.getESuperTypes().add(this.getNamedElement()); 1008 variableEClass.getESuperTypes().add(this.getVariableOrNode());
961 conjunctionEClass.getESuperTypes().add(this.getExistentialQuantifier()); 1009 conjunctionEClass.getESuperTypes().add(this.getExistentialQuantifier());
962 atomEClass.getESuperTypes().add(this.getLiteral()); 1010 atomEClass.getESuperTypes().add(this.getLiteral());
963 implicitVariableEClass.getESuperTypes().add(this.getVariable()); 1011 implicitVariableEClass.getESuperTypes().add(this.getVariable());
964 negativeLiteralEClass.getESuperTypes().add(this.getExistentialQuantifier()); 1012 negativeLiteralEClass.getESuperTypes().add(this.getExistentialQuantifier());
965 negativeLiteralEClass.getESuperTypes().add(this.getLiteral()); 1013 negativeLiteralEClass.getESuperTypes().add(this.getLiteral());
966 assertionEClass.getESuperTypes().add(this.getStatement()); 1014 assertionEClass.getESuperTypes().add(this.getStatement());
967 nodeEClass.getESuperTypes().add(this.getNamedElement()); 1015 nodeEClass.getESuperTypes().add(this.getVariableOrNode());
968 scopeDeclarationEClass.getESuperTypes().add(this.getStatement()); 1016 scopeDeclarationEClass.getESuperTypes().add(this.getStatement());
969 rangeMultiplicityEClass.getESuperTypes().add(this.getMultiplicity()); 1017 rangeMultiplicityEClass.getESuperTypes().add(this.getMultiplicity());
970 exactMultiplicityEClass.getESuperTypes().add(this.getMultiplicity()); 1018 exactMultiplicityEClass.getESuperTypes().add(this.getMultiplicity());
971 unboundedMultiplicityEClass.getESuperTypes().add(this.getMultiplicity()); 1019 unboundedMultiplicityEClass.getESuperTypes().add(this.getMultiplicity());
1020 enumDeclarationEClass.getESuperTypes().add(this.getRelation());
1021 enumDeclarationEClass.getESuperTypes().add(this.getStatement());
1022 variableOrNodeEClass.getESuperTypes().add(this.getNamedElement());
972 1023
973 // Initialize classes, features, and operations; add parameters 1024 // Initialize classes, features, and operations; add parameters
974 initEClass(problemEClass, Problem.class, "Problem", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); 1025 initEClass(problemEClass, Problem.class, "Problem", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
@@ -986,7 +1037,7 @@ public class ProblemPackageImpl extends EPackageImpl implements ProblemPackage {
986 initEAttribute(getClassDeclaration_Abstract(), ecorePackage.getEBoolean(), "abstract", null, 0, 1, 1037 initEAttribute(getClassDeclaration_Abstract(), ecorePackage.getEBoolean(), "abstract", null, 0, 1,
987 ClassDeclaration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, 1038 ClassDeclaration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE,
988 !IS_DERIVED, IS_ORDERED); 1039 !IS_DERIVED, IS_ORDERED);
989 initEReference(getClassDeclaration_SuperTypes(), this.getClassDeclaration(), null, "superTypes", null, 0, -1, 1040 initEReference(getClassDeclaration_SuperTypes(), this.getRelation(), null, "superTypes", null, 0, -1,
990 ClassDeclaration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, 1041 ClassDeclaration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES,
991 !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); 1042 !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
992 initEReference(getClassDeclaration_ReferenceDeclarations(), this.getReferenceDeclaration(), null, 1043 initEReference(getClassDeclaration_ReferenceDeclarations(), this.getReferenceDeclaration(), null,
@@ -998,8 +1049,8 @@ public class ProblemPackageImpl extends EPackageImpl implements ProblemPackage {
998 1049
999 initEClass(referenceDeclarationEClass, ReferenceDeclaration.class, "ReferenceDeclaration", !IS_ABSTRACT, 1050 initEClass(referenceDeclarationEClass, ReferenceDeclaration.class, "ReferenceDeclaration", !IS_ABSTRACT,
1000 !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); 1051 !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
1001 initEReference(getReferenceDeclaration_ReferenceType(), this.getClassDeclaration(), null, "referenceType", null, 1052 initEReference(getReferenceDeclaration_ReferenceType(), this.getRelation(), null, "referenceType", null, 0, 1,
1002 0, 1, ReferenceDeclaration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, 1053 ReferenceDeclaration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE,
1003 IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); 1054 IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
1004 initEReference(getReferenceDeclaration_Opposite(), this.getReferenceDeclaration(), null, "opposite", null, 0, 1, 1055 initEReference(getReferenceDeclaration_Opposite(), this.getReferenceDeclaration(), null, "opposite", null, 0, 1,
1005 ReferenceDeclaration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, 1056 ReferenceDeclaration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE,
@@ -1030,7 +1081,7 @@ public class ProblemPackageImpl extends EPackageImpl implements ProblemPackage {
1030 1081
1031 initEClass(parameterEClass, Parameter.class, "Parameter", !IS_ABSTRACT, !IS_INTERFACE, 1082 initEClass(parameterEClass, Parameter.class, "Parameter", !IS_ABSTRACT, !IS_INTERFACE,
1032 IS_GENERATED_INSTANCE_CLASS); 1083 IS_GENERATED_INSTANCE_CLASS);
1033 initEReference(getParameter_ParameterType(), this.getClassDeclaration(), null, "parameterType", null, 0, 1, 1084 initEReference(getParameter_ParameterType(), this.getRelation(), null, "parameterType", null, 0, 1,
1034 Parameter.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, 1085 Parameter.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES,
1035 !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); 1086 !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
1036 1087
@@ -1126,13 +1177,22 @@ public class ProblemPackageImpl extends EPackageImpl implements ProblemPackage {
1126 1177
1127 initEClass(argumentEClass, Argument.class, "Argument", !IS_ABSTRACT, !IS_INTERFACE, 1178 initEClass(argumentEClass, Argument.class, "Argument", !IS_ABSTRACT, !IS_INTERFACE,
1128 IS_GENERATED_INSTANCE_CLASS); 1179 IS_GENERATED_INSTANCE_CLASS);
1129 initEReference(getArgument_Variable(), this.getVariable(), null, "variable", null, 0, 1, Argument.class, 1180 initEReference(getArgument_VariableOrNode(), this.getVariableOrNode(), null, "variableOrNode", null, 0, 1,
1130 !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, 1181 Argument.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES,
1131 IS_UNIQUE, !IS_DERIVED, IS_ORDERED); 1182 !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
1132 initEReference(getArgument_SingletonVariable(), this.getImplicitVariable(), null, "singletonVariable", null, 0, 1183 initEReference(getArgument_SingletonVariable(), this.getImplicitVariable(), null, "singletonVariable", null, 0,
1133 1, Argument.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, 1184 1, Argument.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES,
1134 !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); 1185 !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
1135 1186
1187 initEClass(enumDeclarationEClass, EnumDeclaration.class, "EnumDeclaration", !IS_ABSTRACT, !IS_INTERFACE,
1188 IS_GENERATED_INSTANCE_CLASS);
1189 initEReference(getEnumDeclaration_Literals(), this.getNode(), null, "literals", null, 0, -1,
1190 EnumDeclaration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES,
1191 !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
1192
1193 initEClass(variableOrNodeEClass, VariableOrNode.class, "VariableOrNode", IS_ABSTRACT, !IS_INTERFACE,
1194 IS_GENERATED_INSTANCE_CLASS);
1195
1136 // Initialize enums and add enum literals 1196 // Initialize enums and add enum literals
1137 initEEnum(logicValueEEnum, LogicValue.class, "LogicValue"); 1197 initEEnum(logicValueEEnum, LogicValue.class, "LogicValue");
1138 addEEnumLiteral(logicValueEEnum, LogicValue.TRUE); 1198 addEEnumLiteral(logicValueEEnum, LogicValue.TRUE);
diff --git a/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/ReferenceDeclarationImpl.java b/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/ReferenceDeclarationImpl.java
index 424db23d..8df2715f 100644
--- a/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/ReferenceDeclarationImpl.java
+++ b/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/ReferenceDeclarationImpl.java
@@ -9,11 +9,10 @@ import org.eclipse.emf.ecore.EClass;
9import org.eclipse.emf.ecore.InternalEObject; 9import org.eclipse.emf.ecore.InternalEObject;
10 10
11import org.eclipse.emf.ecore.impl.ENotificationImpl; 11import org.eclipse.emf.ecore.impl.ENotificationImpl;
12
13import org.eclipse.viatra.solver.language.model.problem.ClassDeclaration;
14import org.eclipse.viatra.solver.language.model.problem.Multiplicity; 12import org.eclipse.viatra.solver.language.model.problem.Multiplicity;
15import org.eclipse.viatra.solver.language.model.problem.ProblemPackage; 13import org.eclipse.viatra.solver.language.model.problem.ProblemPackage;
16import org.eclipse.viatra.solver.language.model.problem.ReferenceDeclaration; 14import org.eclipse.viatra.solver.language.model.problem.ReferenceDeclaration;
15import org.eclipse.viatra.solver.language.model.problem.Relation;
17 16
18/** 17/**
19 * <!-- begin-user-doc --> 18 * <!-- begin-user-doc -->
@@ -40,7 +39,7 @@ public class ReferenceDeclarationImpl extends RelationImpl implements ReferenceD
40 * @generated 39 * @generated
41 * @ordered 40 * @ordered
42 */ 41 */
43 protected ClassDeclaration referenceType; 42 protected Relation referenceType;
44 43
45 /** 44 /**
46 * The cached value of the '{@link #getOpposite() <em>Opposite</em>}' reference. 45 * The cached value of the '{@link #getOpposite() <em>Opposite</em>}' reference.
@@ -106,10 +105,10 @@ public class ReferenceDeclarationImpl extends RelationImpl implements ReferenceD
106 * <!-- end-user-doc --> 105 * <!-- end-user-doc -->
107 * @generated 106 * @generated
108 */ 107 */
109 public ClassDeclaration getReferenceType() { 108 public Relation getReferenceType() {
110 if (referenceType != null && referenceType.eIsProxy()) { 109 if (referenceType != null && referenceType.eIsProxy()) {
111 InternalEObject oldReferenceType = (InternalEObject) referenceType; 110 InternalEObject oldReferenceType = (InternalEObject) referenceType;
112 referenceType = (ClassDeclaration) eResolveProxy(oldReferenceType); 111 referenceType = (Relation) eResolveProxy(oldReferenceType);
113 if (referenceType != oldReferenceType) { 112 if (referenceType != oldReferenceType) {
114 if (eNotificationRequired()) 113 if (eNotificationRequired())
115 eNotify(new ENotificationImpl(this, Notification.RESOLVE, 114 eNotify(new ENotificationImpl(this, Notification.RESOLVE,
@@ -124,7 +123,7 @@ public class ReferenceDeclarationImpl extends RelationImpl implements ReferenceD
124 * <!-- end-user-doc --> 123 * <!-- end-user-doc -->
125 * @generated 124 * @generated
126 */ 125 */
127 public ClassDeclaration basicGetReferenceType() { 126 public Relation basicGetReferenceType() {
128 return referenceType; 127 return referenceType;
129 } 128 }
130 129
@@ -133,8 +132,8 @@ public class ReferenceDeclarationImpl extends RelationImpl implements ReferenceD
133 * <!-- end-user-doc --> 132 * <!-- end-user-doc -->
134 * @generated 133 * @generated
135 */ 134 */
136 public void setReferenceType(ClassDeclaration newReferenceType) { 135 public void setReferenceType(Relation newReferenceType) {
137 ClassDeclaration oldReferenceType = referenceType; 136 Relation oldReferenceType = referenceType;
138 referenceType = newReferenceType; 137 referenceType = newReferenceType;
139 if (eNotificationRequired()) 138 if (eNotificationRequired())
140 eNotify(new ENotificationImpl(this, Notification.SET, ProblemPackage.REFERENCE_DECLARATION__REFERENCE_TYPE, 139 eNotify(new ENotificationImpl(this, Notification.SET, ProblemPackage.REFERENCE_DECLARATION__REFERENCE_TYPE,
@@ -300,7 +299,7 @@ public class ReferenceDeclarationImpl extends RelationImpl implements ReferenceD
300 public void eSet(int featureID, Object newValue) { 299 public void eSet(int featureID, Object newValue) {
301 switch (featureID) { 300 switch (featureID) {
302 case ProblemPackage.REFERENCE_DECLARATION__REFERENCE_TYPE: 301 case ProblemPackage.REFERENCE_DECLARATION__REFERENCE_TYPE:
303 setReferenceType((ClassDeclaration) newValue); 302 setReferenceType((Relation) newValue);
304 return; 303 return;
305 case ProblemPackage.REFERENCE_DECLARATION__OPPOSITE: 304 case ProblemPackage.REFERENCE_DECLARATION__OPPOSITE:
306 setOpposite((ReferenceDeclaration) newValue); 305 setOpposite((ReferenceDeclaration) newValue);
@@ -324,7 +323,7 @@ public class ReferenceDeclarationImpl extends RelationImpl implements ReferenceD
324 public void eUnset(int featureID) { 323 public void eUnset(int featureID) {
325 switch (featureID) { 324 switch (featureID) {
326 case ProblemPackage.REFERENCE_DECLARATION__REFERENCE_TYPE: 325 case ProblemPackage.REFERENCE_DECLARATION__REFERENCE_TYPE:
327 setReferenceType((ClassDeclaration) null); 326 setReferenceType((Relation) null);
328 return; 327 return;
329 case ProblemPackage.REFERENCE_DECLARATION__OPPOSITE: 328 case ProblemPackage.REFERENCE_DECLARATION__OPPOSITE:
330 setOpposite((ReferenceDeclaration) null); 329 setOpposite((ReferenceDeclaration) null);
diff --git a/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/VariableImpl.java b/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/VariableImpl.java
index 0a8cde48..645ac39c 100644
--- a/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/VariableImpl.java
+++ b/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/VariableImpl.java
@@ -14,7 +14,7 @@ import org.eclipse.viatra.solver.language.model.problem.Variable;
14 * 14 *
15 * @generated 15 * @generated
16 */ 16 */
17public abstract class VariableImpl extends NamedElementImpl implements Variable { 17public abstract class VariableImpl extends VariableOrNodeImpl implements Variable {
18 /** 18 /**
19 * <!-- begin-user-doc --> 19 * <!-- begin-user-doc -->
20 * <!-- end-user-doc --> 20 * <!-- end-user-doc -->
diff --git a/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/VariableOrNodeImpl.java b/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/VariableOrNodeImpl.java
new file mode 100644
index 00000000..4964a019
--- /dev/null
+++ b/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/VariableOrNodeImpl.java
@@ -0,0 +1,37 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.model.problem.impl;
4
5import org.eclipse.emf.ecore.EClass;
6
7import org.eclipse.viatra.solver.language.model.problem.ProblemPackage;
8import org.eclipse.viatra.solver.language.model.problem.VariableOrNode;
9
10/**
11 * <!-- begin-user-doc -->
12 * An implementation of the model object '<em><b>Variable Or Node</b></em>'.
13 * <!-- end-user-doc -->
14 *
15 * @generated
16 */
17public abstract class VariableOrNodeImpl extends NamedElementImpl implements VariableOrNode {
18 /**
19 * <!-- begin-user-doc -->
20 * <!-- end-user-doc -->
21 * @generated
22 */
23 protected VariableOrNodeImpl() {
24 super();
25 }
26
27 /**
28 * <!-- begin-user-doc -->
29 * <!-- end-user-doc -->
30 * @generated
31 */
32 @Override
33 protected EClass eStaticClass() {
34 return ProblemPackage.Literals.VARIABLE_OR_NODE;
35 }
36
37} //VariableOrNodeImpl
diff --git a/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/util/ProblemAdapterFactory.java b/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/util/ProblemAdapterFactory.java
index c41a4034..3fc3ca75 100644
--- a/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/util/ProblemAdapterFactory.java
+++ b/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/util/ProblemAdapterFactory.java
@@ -187,6 +187,16 @@ public class ProblemAdapterFactory extends AdapterFactoryImpl {
187 } 187 }
188 188
189 @Override 189 @Override
190 public Adapter caseEnumDeclaration(EnumDeclaration object) {
191 return createEnumDeclarationAdapter();
192 }
193
194 @Override
195 public Adapter caseVariableOrNode(VariableOrNode object) {
196 return createVariableOrNodeAdapter();
197 }
198
199 @Override
190 public Adapter defaultCase(EObject object) { 200 public Adapter defaultCase(EObject object) {
191 return createEObjectAdapter(); 201 return createEObjectAdapter();
192 } 202 }
@@ -542,6 +552,34 @@ public class ProblemAdapterFactory extends AdapterFactoryImpl {
542 } 552 }
543 553
544 /** 554 /**
555 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.model.problem.EnumDeclaration <em>Enum Declaration</em>}'.
556 * <!-- begin-user-doc -->
557 * This default implementation returns null so that we can easily ignore cases;
558 * it's useful to ignore a case when inheritance will catch all the cases anyway.
559 * <!-- end-user-doc -->
560 * @return the new adapter.
561 * @see org.eclipse.viatra.solver.language.model.problem.EnumDeclaration
562 * @generated
563 */
564 public Adapter createEnumDeclarationAdapter() {
565 return null;
566 }
567
568 /**
569 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.model.problem.VariableOrNode <em>Variable Or Node</em>}'.
570 * <!-- begin-user-doc -->
571 * This default implementation returns null so that we can easily ignore cases;
572 * it's useful to ignore a case when inheritance will catch all the cases anyway.
573 * <!-- end-user-doc -->
574 * @return the new adapter.
575 * @see org.eclipse.viatra.solver.language.model.problem.VariableOrNode
576 * @generated
577 */
578 public Adapter createVariableOrNodeAdapter() {
579 return null;
580 }
581
582 /**
545 * Creates a new adapter for the default case. 583 * Creates a new adapter for the default case.
546 * <!-- begin-user-doc --> 584 * <!-- begin-user-doc -->
547 * This default implementation returns null. 585 * This default implementation returns null.
diff --git a/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/util/ProblemSwitch.java b/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/util/ProblemSwitch.java
index 361b663c..b74718b5 100644
--- a/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/util/ProblemSwitch.java
+++ b/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/util/ProblemSwitch.java
@@ -134,6 +134,8 @@ public class ProblemSwitch<T> extends Switch<T> {
134 if (result == null) 134 if (result == null)
135 result = caseVariable(parameter); 135 result = caseVariable(parameter);
136 if (result == null) 136 if (result == null)
137 result = caseVariableOrNode(parameter);
138 if (result == null)
137 result = caseNamedElement(parameter); 139 result = caseNamedElement(parameter);
138 if (result == null) 140 if (result == null)
139 result = defaultCase(theEObject); 141 result = defaultCase(theEObject);
@@ -143,6 +145,8 @@ public class ProblemSwitch<T> extends Switch<T> {
143 Variable variable = (Variable) theEObject; 145 Variable variable = (Variable) theEObject;
144 T result = caseVariable(variable); 146 T result = caseVariable(variable);
145 if (result == null) 147 if (result == null)
148 result = caseVariableOrNode(variable);
149 if (result == null)
146 result = caseNamedElement(variable); 150 result = caseNamedElement(variable);
147 if (result == null) 151 if (result == null)
148 result = defaultCase(theEObject); 152 result = defaultCase(theEObject);
@@ -179,6 +183,8 @@ public class ProblemSwitch<T> extends Switch<T> {
179 if (result == null) 183 if (result == null)
180 result = caseVariable(implicitVariable); 184 result = caseVariable(implicitVariable);
181 if (result == null) 185 if (result == null)
186 result = caseVariableOrNode(implicitVariable);
187 if (result == null)
182 result = caseNamedElement(implicitVariable); 188 result = caseNamedElement(implicitVariable);
183 if (result == null) 189 if (result == null)
184 result = defaultCase(theEObject); 190 result = defaultCase(theEObject);
@@ -215,6 +221,8 @@ public class ProblemSwitch<T> extends Switch<T> {
215 Node node = (Node) theEObject; 221 Node node = (Node) theEObject;
216 T result = caseNode(node); 222 T result = caseNode(node);
217 if (result == null) 223 if (result == null)
224 result = caseVariableOrNode(node);
225 if (result == null)
218 result = caseNamedElement(node); 226 result = caseNamedElement(node);
219 if (result == null) 227 if (result == null)
220 result = defaultCase(theEObject); 228 result = defaultCase(theEObject);
@@ -284,6 +292,28 @@ public class ProblemSwitch<T> extends Switch<T> {
284 result = defaultCase(theEObject); 292 result = defaultCase(theEObject);
285 return result; 293 return result;
286 } 294 }
295 case ProblemPackage.ENUM_DECLARATION: {
296 EnumDeclaration enumDeclaration = (EnumDeclaration) theEObject;
297 T result = caseEnumDeclaration(enumDeclaration);
298 if (result == null)
299 result = caseRelation(enumDeclaration);
300 if (result == null)
301 result = caseStatement(enumDeclaration);
302 if (result == null)
303 result = caseNamedElement(enumDeclaration);
304 if (result == null)
305 result = defaultCase(theEObject);
306 return result;
307 }
308 case ProblemPackage.VARIABLE_OR_NODE: {
309 VariableOrNode variableOrNode = (VariableOrNode) theEObject;
310 T result = caseVariableOrNode(variableOrNode);
311 if (result == null)
312 result = caseNamedElement(variableOrNode);
313 if (result == null)
314 result = defaultCase(theEObject);
315 return result;
316 }
287 default: 317 default:
288 return defaultCase(theEObject); 318 return defaultCase(theEObject);
289 } 319 }
@@ -650,6 +680,36 @@ public class ProblemSwitch<T> extends Switch<T> {
650 } 680 }
651 681
652 /** 682 /**
683 * Returns the result of interpreting the object as an instance of '<em>Enum Declaration</em>'.
684 * <!-- begin-user-doc -->
685 * This implementation returns null;
686 * returning a non-null result will terminate the switch.
687 * <!-- end-user-doc -->
688 * @param object the target of the switch.
689 * @return the result of interpreting the object as an instance of '<em>Enum Declaration</em>'.
690 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
691 * @generated
692 */
693 public T caseEnumDeclaration(EnumDeclaration object) {
694 return null;
695 }
696
697 /**
698 * Returns the result of interpreting the object as an instance of '<em>Variable Or Node</em>'.
699 * <!-- begin-user-doc -->
700 * This implementation returns null;
701 * returning a non-null result will terminate the switch.
702 * <!-- end-user-doc -->
703 * @param object the target of the switch.
704 * @return the result of interpreting the object as an instance of '<em>Variable Or Node</em>'.
705 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
706 * @generated
707 */
708 public T caseVariableOrNode(VariableOrNode object) {
709 return null;
710 }
711
712 /**
653 * Returns the result of interpreting the object as an instance of '<em>EObject</em>'. 713 * Returns the result of interpreting the object as an instance of '<em>EObject</em>'.
654 * <!-- begin-user-doc --> 714 * <!-- begin-user-doc -->
655 * This implementation returns null; 715 * This implementation returns null;
diff --git a/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/resources/model/problem.ecore b/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/resources/model/problem.ecore
index dd52134b..99404f61 100644
--- a/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/resources/model/problem.ecore
+++ b/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/resources/model/problem.ecore
@@ -12,14 +12,14 @@
12 <eClassifiers xsi:type="ecore:EClass" name="ClassDeclaration" eSuperTypes="#//Relation #//Statement"> 12 <eClassifiers xsi:type="ecore:EClass" name="ClassDeclaration" eSuperTypes="#//Relation #//Statement">
13 <eStructuralFeatures xsi:type="ecore:EAttribute" name="abstract" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/> 13 <eStructuralFeatures xsi:type="ecore:EAttribute" name="abstract" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
14 <eStructuralFeatures xsi:type="ecore:EReference" name="superTypes" upperBound="-1" 14 <eStructuralFeatures xsi:type="ecore:EReference" name="superTypes" upperBound="-1"
15 eType="#//ClassDeclaration"/> 15 eType="#//Relation"/>
16 <eStructuralFeatures xsi:type="ecore:EReference" name="referenceDeclarations" 16 <eStructuralFeatures xsi:type="ecore:EReference" name="referenceDeclarations"
17 upperBound="-1" eType="#//ReferenceDeclaration" containment="true"/> 17 upperBound="-1" eType="#//ReferenceDeclaration" containment="true"/>
18 <eStructuralFeatures xsi:type="ecore:EReference" name="newNode" eType="#//Node" 18 <eStructuralFeatures xsi:type="ecore:EReference" name="newNode" eType="#//Node"
19 containment="true"/> 19 containment="true"/>
20 </eClassifiers> 20 </eClassifiers>
21 <eClassifiers xsi:type="ecore:EClass" name="ReferenceDeclaration" eSuperTypes="#//Relation"> 21 <eClassifiers xsi:type="ecore:EClass" name="ReferenceDeclaration" eSuperTypes="#//Relation">
22 <eStructuralFeatures xsi:type="ecore:EReference" name="referenceType" eType="#//ClassDeclaration"/> 22 <eStructuralFeatures xsi:type="ecore:EReference" name="referenceType" eType="#//Relation"/>
23 <eStructuralFeatures xsi:type="ecore:EReference" name="opposite" eType="#//ReferenceDeclaration"/> 23 <eStructuralFeatures xsi:type="ecore:EReference" name="opposite" eType="#//ReferenceDeclaration"/>
24 <eStructuralFeatures xsi:type="ecore:EAttribute" name="containment" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/> 24 <eStructuralFeatures xsi:type="ecore:EAttribute" name="containment" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
25 <eStructuralFeatures xsi:type="ecore:EReference" name="multiplicity" eType="#//Multiplicity" 25 <eStructuralFeatures xsi:type="ecore:EReference" name="multiplicity" eType="#//Multiplicity"
@@ -36,9 +36,9 @@
36 eType="#//Conjunction" containment="true"/> 36 eType="#//Conjunction" containment="true"/>
37 </eClassifiers> 37 </eClassifiers>
38 <eClassifiers xsi:type="ecore:EClass" name="Parameter" eSuperTypes="#//Variable"> 38 <eClassifiers xsi:type="ecore:EClass" name="Parameter" eSuperTypes="#//Variable">
39 <eStructuralFeatures xsi:type="ecore:EReference" name="parameterType" eType="#//ClassDeclaration"/> 39 <eStructuralFeatures xsi:type="ecore:EReference" name="parameterType" eType="#//Relation"/>
40 </eClassifiers> 40 </eClassifiers>
41 <eClassifiers xsi:type="ecore:EClass" name="Variable" abstract="true" eSuperTypes="#//NamedElement"/> 41 <eClassifiers xsi:type="ecore:EClass" name="Variable" abstract="true" eSuperTypes="#//VariableOrNode"/>
42 <eClassifiers xsi:type="ecore:EClass" name="Conjunction" eSuperTypes="#//ExistentialQuantifier"> 42 <eClassifiers xsi:type="ecore:EClass" name="Conjunction" eSuperTypes="#//ExistentialQuantifier">
43 <eStructuralFeatures xsi:type="ecore:EReference" name="literals" upperBound="-1" 43 <eStructuralFeatures xsi:type="ecore:EReference" name="literals" upperBound="-1"
44 eType="#//Literal" containment="true"/> 44 eType="#//Literal" containment="true"/>
@@ -65,7 +65,7 @@
65 eType="#//Node"/> 65 eType="#//Node"/>
66 <eStructuralFeatures xsi:type="ecore:EAttribute" name="value" eType="#//LogicValue"/> 66 <eStructuralFeatures xsi:type="ecore:EAttribute" name="value" eType="#//LogicValue"/>
67 </eClassifiers> 67 </eClassifiers>
68 <eClassifiers xsi:type="ecore:EClass" name="Node" eSuperTypes="#//NamedElement"/> 68 <eClassifiers xsi:type="ecore:EClass" name="Node" eSuperTypes="#//VariableOrNode"/>
69 <eClassifiers xsi:type="ecore:EEnum" name="LogicValue"> 69 <eClassifiers xsi:type="ecore:EEnum" name="LogicValue">
70 <eLiterals name="TRUE" literal="TRUE"/> 70 <eLiterals name="TRUE" literal="TRUE"/>
71 <eLiterals name="FALSE" value="1"/> 71 <eLiterals name="FALSE" value="1"/>
@@ -95,8 +95,13 @@
95 </eClassifiers> 95 </eClassifiers>
96 <eClassifiers xsi:type="ecore:EClass" name="UnboundedMultiplicity" eSuperTypes="#//Multiplicity"/> 96 <eClassifiers xsi:type="ecore:EClass" name="UnboundedMultiplicity" eSuperTypes="#//Multiplicity"/>
97 <eClassifiers xsi:type="ecore:EClass" name="Argument"> 97 <eClassifiers xsi:type="ecore:EClass" name="Argument">
98 <eStructuralFeatures xsi:type="ecore:EReference" name="variable" eType="#//Variable"/> 98 <eStructuralFeatures xsi:type="ecore:EReference" name="variableOrNode" eType="#//VariableOrNode"/>
99 <eStructuralFeatures xsi:type="ecore:EReference" name="singletonVariable" eType="#//ImplicitVariable" 99 <eStructuralFeatures xsi:type="ecore:EReference" name="singletonVariable" eType="#//ImplicitVariable"
100 containment="true"/> 100 containment="true"/>
101 </eClassifiers> 101 </eClassifiers>
102 <eClassifiers xsi:type="ecore:EClass" name="EnumDeclaration" eSuperTypes="#//Relation #//Statement">
103 <eStructuralFeatures xsi:type="ecore:EReference" name="literals" upperBound="-1"
104 eType="#//Node" containment="true"/>
105 </eClassifiers>
106 <eClassifiers xsi:type="ecore:EClass" name="VariableOrNode" abstract="true" eSuperTypes="#//NamedElement"/>
102</ecore:EPackage> 107</ecore:EPackage>
diff --git a/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/resources/model/problem.genmodel b/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/resources/model/problem.genmodel
index 379cb028..2eb9a988 100644
--- a/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/resources/model/problem.genmodel
+++ b/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/resources/model/problem.genmodel
@@ -86,8 +86,12 @@
86 </genClasses> 86 </genClasses>
87 <genClasses ecoreClass="problem.ecore#//UnboundedMultiplicity"/> 87 <genClasses ecoreClass="problem.ecore#//UnboundedMultiplicity"/>
88 <genClasses ecoreClass="problem.ecore#//Argument"> 88 <genClasses ecoreClass="problem.ecore#//Argument">
89 <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference problem.ecore#//Argument/variable"/> 89 <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference problem.ecore#//Argument/variableOrNode"/>
90 <genFeatures children="true" createChild="true" propertySortChoices="true" ecoreFeature="ecore:EReference problem.ecore#//Argument/singletonVariable"/> 90 <genFeatures children="true" createChild="true" propertySortChoices="true" ecoreFeature="ecore:EReference problem.ecore#//Argument/singletonVariable"/>
91 </genClasses> 91 </genClasses>
92 <genClasses ecoreClass="problem.ecore#//EnumDeclaration">
93 <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference problem.ecore#//EnumDeclaration/literals"/>
94 </genClasses>
95 <genClasses ecoreClass="problem.ecore#//VariableOrNode"/>
92 </genPackages> 96 </genPackages>
93</genmodel:GenModel> 97</genmodel:GenModel>