AIML experimental plugins
Change-Id: I7069f44d046099fc10997449afcebe54d0d697db
Signed-off-by: Shuai Li <shuai.li@cea.fr>
diff --git a/aiml/org.eclipse.papyrus.aiml.examples/.classpath b/aiml/org.eclipse.papyrus.aiml.examples/.classpath
new file mode 100644
index 0000000..43b9862
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.examples/.classpath
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+ <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8"/>
+ <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
+ <classpathentry kind="src" path="src"/>
+ <classpathentry kind="output" path="target/classes"/>
+</classpath>
diff --git a/aiml/org.eclipse.papyrus.aiml.examples/.project b/aiml/org.eclipse.papyrus.aiml.examples/.project
new file mode 100644
index 0000000..2941c7b
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.examples/.project
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>org.eclipse.papyrus.aiml.examples</name>
+ <comment></comment>
+ <projects>
+ </projects>
+ <buildSpec>
+ <buildCommand>
+ <name>org.eclipse.jdt.core.javabuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.eclipse.pde.ManifestBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.eclipse.pde.SchemaBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ </buildSpec>
+ <natures>
+ <nature>org.eclipse.jdt.core.javanature</nature>
+ <nature>org.eclipse.pde.PluginNature</nature>
+ </natures>
+</projectDescription>
diff --git a/aiml/org.eclipse.papyrus.aiml.examples/.settings/org.eclipse.jdt.core.prefs b/aiml/org.eclipse.papyrus.aiml.examples/.settings/org.eclipse.jdt.core.prefs
new file mode 100644
index 0000000..0fee6a9
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.examples/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,15 @@
+eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
+org.eclipse.jdt.core.compiler.codegen.methodParameters=do not generate
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8
+org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
+org.eclipse.jdt.core.compiler.compliance=1.8
+org.eclipse.jdt.core.compiler.debug.lineNumber=generate
+org.eclipse.jdt.core.compiler.debug.localVariable=generate
+org.eclipse.jdt.core.compiler.debug.sourceFile=generate
+org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
+org.eclipse.jdt.core.compiler.problem.enablePreviewFeatures=disabled
+org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
+org.eclipse.jdt.core.compiler.problem.reportPreviewFeatures=warning
+org.eclipse.jdt.core.compiler.release=disabled
+org.eclipse.jdt.core.compiler.source=1.8
diff --git a/aiml/org.eclipse.papyrus.aiml.examples/META-INF/MANIFEST.MF b/aiml/org.eclipse.papyrus.aiml.examples/META-INF/MANIFEST.MF
new file mode 100644
index 0000000..2e3bdbc
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.examples/META-INF/MANIFEST.MF
@@ -0,0 +1,16 @@
+Manifest-Version: 1.0
+Require-Bundle: org.eclipse.emf.common.ui,
+ org.eclipse.core.runtime,
+ org.eclipse.uml2.uml;bundle-version="5.0.0"
+Bundle-Vendor: %providerName
+Bundle-ActivationPolicy: lazy
+Bundle-ClassPath: .
+Bundle-Version: 0.7.0.qualifier
+Bundle-Localization: plugin
+Bundle-Name: %pluginName
+Bundle-Activator: org.eclipse.papyrus.aiml.examples.Activator
+Bundle-ManifestVersion: 2
+Bundle-SymbolicName: org.eclipse.papyrus.aiml.examples;singleton:=true
+Automatic-Module-Name: org.eclipse.papyrus.aiml.examples
+Bundle-RequiredExecutionEnvironment: JavaSE-1.8
+Export-Package: org.eclipse.papyrus.aiml.examples
diff --git a/aiml/org.eclipse.papyrus.aiml.examples/build.properties b/aiml/org.eclipse.papyrus.aiml.examples/build.properties
new file mode 100644
index 0000000..83dd377
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.examples/build.properties
@@ -0,0 +1,9 @@
+source.. = src/,\
+ src-gen/
+output.. = target/classes/
+bin.includes = META-INF/,\
+ .,\
+ plugin.xml,\
+ models/,\
+ plugin.properties
+src.includes = models/
diff --git a/aiml/org.eclipse.papyrus.aiml.examples/models/kerasmodel.di b/aiml/org.eclipse.papyrus.aiml.examples/models/kerasmodel.di
new file mode 100644
index 0000000..8c549ee
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.examples/models/kerasmodel.di
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<architecture:ArchitectureDescription xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:architecture="http://www.eclipse.org/papyrus/infra/core/architecture" contextId="org.eclipse.papyrus.infra.services.edit.TypeContext"/>
diff --git a/aiml/org.eclipse.papyrus.aiml.examples/models/kerasmodel.notation b/aiml/org.eclipse.papyrus.aiml.examples/models/kerasmodel.notation
new file mode 100644
index 0000000..baee8e9
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.examples/models/kerasmodel.notation
@@ -0,0 +1,105 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xmi:XMI xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:notation="http://www.eclipse.org/gmf/runtime/1.0.3/notation" xmlns:style="http://www.eclipse.org/papyrus/infra/gmfdiag/style" xmlns:uml="http://www.eclipse.org/uml2/5.0.0/UML">
+ <notation:Diagram xmi:id="_uO7LoJwiEeqtcKkMgfhA1A" type="PapyrusUMLClassDiagram" name="NewClassDiagram" measurementUnit="Pixel">
+ <children xmi:type="notation:Shape" xmi:id="_wki_MJwiEeqtcKkMgfhA1A" type="Class_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_wkmCgJwiEeqtcKkMgfhA1A" type="Class_NameLabel"/>
+ <children xmi:type="notation:DecorationNode" xmi:id="_wkmCgZwiEeqtcKkMgfhA1A" type="Class_FloatingNameLabel">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_wkmpkJwiEeqtcKkMgfhA1A" y="15"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_wknQoJwiEeqtcKkMgfhA1A" type="Class_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_wknQoZwiEeqtcKkMgfhA1A"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_wknQopwiEeqtcKkMgfhA1A"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_wknQo5wiEeqtcKkMgfhA1A"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_wknQpJwiEeqtcKkMgfhA1A"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_wknQpZwiEeqtcKkMgfhA1A" type="Class_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_wknQppwiEeqtcKkMgfhA1A"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_wknQp5wiEeqtcKkMgfhA1A"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_wknQqJwiEeqtcKkMgfhA1A"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_wknQqZwiEeqtcKkMgfhA1A"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_wknQqpwiEeqtcKkMgfhA1A" visible="false" type="Class_NestedClassifierCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_wknQq5wiEeqtcKkMgfhA1A"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_wknQrJwiEeqtcKkMgfhA1A"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_wknQrZwiEeqtcKkMgfhA1A"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_wknQrpwiEeqtcKkMgfhA1A"/>
+ </children>
+ <element xmi:type="uml:Class" href="kerasmodel.uml#_wkcRgJwiEeqtcKkMgfhA1A"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_wki_MZwiEeqtcKkMgfhA1A" x="240" y="80" width="181" height="121"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_2ppb5LMxEeqmquzwsvk0ug" type="StereotypeComment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_2ppb5bMxEeqmquzwsvk0ug"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_2ppb57MxEeqmquzwsvk0ug" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Class" href="kerasmodel.uml#_wkcRgJwiEeqtcKkMgfhA1A"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_2ppb5rMxEeqmquzwsvk0ug" x="440" y="80"/>
+ </children>
+ <styles xmi:type="notation:StringValueStyle" xmi:id="_uO7LoZwiEeqtcKkMgfhA1A" name="diagram_compatibility_version" stringValue="1.4.0"/>
+ <styles xmi:type="notation:DiagramStyle" xmi:id="_uO7LopwiEeqtcKkMgfhA1A"/>
+ <styles xmi:type="style:PapyrusDiagramStyle" xmi:id="_uO7Lo5wiEeqtcKkMgfhA1A" diagramKindId="org.eclipse.papyrus.uml.diagram.class">
+ <owner xmi:type="uml:Model" href="kerasmodel.uml#_sfXSgJwiEeqtcKkMgfhA1A"/>
+ </styles>
+ <element xmi:type="uml:Model" href="kerasmodel.uml#_sfXSgJwiEeqtcKkMgfhA1A"/>
+ <edges xmi:type="notation:Connector" xmi:id="_2ppb6LMxEeqmquzwsvk0ug" type="StereotypeCommentLink" source="_wki_MJwiEeqtcKkMgfhA1A" target="_2ppb5LMxEeqmquzwsvk0ug">
+ <styles xmi:type="notation:FontStyle" xmi:id="_2ppb6bMxEeqmquzwsvk0ug"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_2pqC8rMxEeqmquzwsvk0ug" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Class" href="kerasmodel.uml#_wkcRgJwiEeqtcKkMgfhA1A"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_2ppb6rMxEeqmquzwsvk0ug" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_2pqC8LMxEeqmquzwsvk0ug"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_2pqC8bMxEeqmquzwsvk0ug"/>
+ </edges>
+ </notation:Diagram>
+ <notation:Diagram xmi:id="_fUr44LM3Eeqmquzwsvk0ug" type="CompositeStructure" name="Composite" measurementUnit="Pixel">
+ <children xmi:type="notation:Shape" xmi:id="_gCKC4LM3Eeqmquzwsvk0ug" type="Class_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_gCLRALM3Eeqmquzwsvk0ug" type="Class_NameLabel"/>
+ <children xmi:type="notation:DecorationNode" xmi:id="_gCLRAbM3Eeqmquzwsvk0ug" type="Class_FloatingNameLabel">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_gCLRArM3Eeqmquzwsvk0ug" y="15"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_gCL4ELM3Eeqmquzwsvk0ug" type="Class_StructureCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_lIAiYLM3Eeqmquzwsvk0ug" type="Property_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_lIAiYrM3Eeqmquzwsvk0ug" type="Property_NameLabel"/>
+ <children xmi:type="notation:DecorationNode" xmi:id="_lIAiY7M3Eeqmquzwsvk0ug" type="Property_FloatingNameLabel">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_lIAiZLM3Eeqmquzwsvk0ug" y="15"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_lIAiZbM3Eeqmquzwsvk0ug" type="Property_StructureCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_lIAiZrM3Eeqmquzwsvk0ug"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_lIAiZ7M3Eeqmquzwsvk0ug"/>
+ </children>
+ <element xmi:type="uml:Property" href="kerasmodel.uml#_lH08MLM3Eeqmquzwsvk0ug"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_lIAiYbM3Eeqmquzwsvk0ug" x="57" y="57" height="61"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_gCL4EbM3Eeqmquzwsvk0ug"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_gCL4ErM3Eeqmquzwsvk0ug"/>
+ </children>
+ <element xmi:type="uml:Class" href="kerasmodel.uml#_wkcRgJwiEeqtcKkMgfhA1A"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_gCKC4bM3Eeqmquzwsvk0ug" x="77" y="40" width="564" height="321"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_gCRXpbM3Eeqmquzwsvk0ug" type="StereotypeComment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_gCRXprM3Eeqmquzwsvk0ug"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_gCRXqLM3Eeqmquzwsvk0ug" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Class" href="kerasmodel.uml#_wkcRgJwiEeqtcKkMgfhA1A"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_gCRXp7M3Eeqmquzwsvk0ug" x="200"/>
+ </children>
+ <styles xmi:type="notation:StringValueStyle" xmi:id="_fUr44bM3Eeqmquzwsvk0ug" name="diagram_compatibility_version" stringValue="1.4.0"/>
+ <styles xmi:type="notation:DiagramStyle" xmi:id="_fUr44rM3Eeqmquzwsvk0ug"/>
+ <styles xmi:type="style:PapyrusDiagramStyle" xmi:id="_fUr447M3Eeqmquzwsvk0ug" diagramKindId="org.eclipse.papyrus.uml.diagram.compositeStructure.root.package">
+ <owner xmi:type="uml:Model" href="kerasmodel.uml#_sfXSgJwiEeqtcKkMgfhA1A"/>
+ </styles>
+ <element xmi:type="uml:Model" href="kerasmodel.uml#_sfXSgJwiEeqtcKkMgfhA1A"/>
+ <edges xmi:type="notation:Connector" xmi:id="_gCR-sLM3Eeqmquzwsvk0ug" type="StereotypeCommentLink" source="_gCKC4LM3Eeqmquzwsvk0ug" target="_gCRXpbM3Eeqmquzwsvk0ug">
+ <styles xmi:type="notation:FontStyle" xmi:id="_gCR-sbM3Eeqmquzwsvk0ug"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_gCR-tbM3Eeqmquzwsvk0ug" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Class" href="kerasmodel.uml#_wkcRgJwiEeqtcKkMgfhA1A"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_gCR-srM3Eeqmquzwsvk0ug" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_gCR-s7M3Eeqmquzwsvk0ug"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_gCR-tLM3Eeqmquzwsvk0ug"/>
+ </edges>
+ </notation:Diagram>
+</xmi:XMI>
diff --git a/aiml/org.eclipse.papyrus.aiml.examples/models/kerasmodel.uml b/aiml/org.eclipse.papyrus.aiml.examples/models/kerasmodel.uml
new file mode 100644
index 0000000..77b7b85
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.examples/models/kerasmodel.uml
@@ -0,0 +1,128 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xmi:XMI xmi:version="20131001" xmlns:xmi="http://www.omg.org/spec/XMI/20131001" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:AIML.Convolution_layers="http://www.eclipse.org/papyrus/AIML/convolution/1" xmlns:AIML.Module="http://www.eclipse.org/papyrus/AIML/module/1" xmlns:Codegen="http://www.eclipse.org/papyrus/Codegen/1" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:uml="http://www.eclipse.org/uml2/5.0.0/UML" xsi:schemaLocation="http://www.eclipse.org/papyrus/AIML/convolution/1 http://www.eclipse.org/papyrus/AIML/1#//Convolution_layers http://www.eclipse.org/papyrus/AIML/module/1 http://www.eclipse.org/papyrus/AIML/1#//Module">
+ <uml:Model xmi:id="_sfXSgJwiEeqtcKkMgfhA1A" name="kerasmodel">
+ <packagedElement xmi:type="uml:Class" xmi:id="_wkcRgJwiEeqtcKkMgfhA1A" name="TestModule">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_lH08MLM3Eeqmquzwsvk0ug" name="l1" visibility="public" type="_iaXQYLM3Eeqmquzwsvk0ug"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_KvaJkJwjEeqtcKkMgfhA1A" name="python"/>
+ <packagedElement xmi:type="uml:Class" xmi:id="_iaXQYLM3Eeqmquzwsvk0ug" name="Layer1"/>
+ <profileApplication xmi:type="uml:ProfileApplication" xmi:id="_9PGM8J6YEeqMUqJDUIBTbw">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_9PHbEJ6YEeqMUqJDUIBTbw" source="http://www.eclipse.org/uml2/2.0.0/UML">
+ <references xmi:type="ecore:EPackage" href="http://www.eclipse.org/papyrus/AIML/1#/"/>
+ </eAnnotations>
+ <appliedProfile xmi:type="uml:Profile" href="pathmap://AIML_PROFILES/AIML.profile.uml#_IDYhIH13EeqSHNFOHg2_Jw"/>
+ </profileApplication>
+ <profileApplication xmi:type="uml:ProfileApplication" xmi:id="_9PICIJ6YEeqMUqJDUIBTbw">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_9PICIZ6YEeqMUqJDUIBTbw" source="http://www.eclipse.org/uml2/2.0.0/UML">
+ <references xmi:type="ecore:EPackage" href="http://www.eclipse.org/papyrus/AIML/1#//Module"/>
+ </eAnnotations>
+ <appliedProfile xmi:type="uml:Profile" href="pathmap://AIML_PROFILES/AIML.profile.uml#_u1dx8JT1Eeq5BK6mmo2rWg"/>
+ </profileApplication>
+ <profileApplication xmi:type="uml:ProfileApplication" xmi:id="_9PIpMJ6YEeqMUqJDUIBTbw">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_9PIpMZ6YEeqMUqJDUIBTbw" source="http://www.eclipse.org/uml2/2.0.0/UML">
+ <references xmi:type="ecore:EPackage" href="http://www.eclipse.org/papyrus/AIML/1#//Tensor"/>
+ </eAnnotations>
+ <appliedProfile xmi:type="uml:Profile" href="pathmap://AIML_PROFILES/AIML.profile.uml#_38DjAJT1Eeq5BK6mmo2rWg"/>
+ </profileApplication>
+ <profileApplication xmi:type="uml:ProfileApplication" xmi:id="_9PJQQJ6YEeqMUqJDUIBTbw">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_9PJQQZ6YEeqMUqJDUIBTbw" source="http://www.eclipse.org/uml2/2.0.0/UML">
+ <references xmi:type="ecore:EPackage" href="http://www.eclipse.org/papyrus/AIML/1#//Pooling_layers"/>
+ </eAnnotations>
+ <appliedProfile xmi:type="uml:Profile" href="pathmap://AIML_PROFILES/AIML.profile.uml#_Deu8AJT2Eeq5BK6mmo2rWg"/>
+ </profileApplication>
+ <profileApplication xmi:type="uml:ProfileApplication" xmi:id="_9PJ3UJ6YEeqMUqJDUIBTbw">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_9PJ3UZ6YEeqMUqJDUIBTbw" source="http://www.eclipse.org/uml2/2.0.0/UML">
+ <references xmi:type="ecore:EPackage" href="http://www.eclipse.org/papyrus/AIML/1#//Convolution_layers"/>
+ </eAnnotations>
+ <appliedProfile xmi:type="uml:Profile" href="pathmap://AIML_PROFILES/AIML.profile.uml#_Nr2NYJOPEeqnY_bZg2Ebjg"/>
+ </profileApplication>
+ <profileApplication xmi:type="uml:ProfileApplication" xmi:id="_9PKeYJ6YEeqMUqJDUIBTbw">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_9PKeYZ6YEeqMUqJDUIBTbw" source="http://www.eclipse.org/uml2/2.0.0/UML">
+ <references xmi:type="ecore:EPackage" href="http://www.eclipse.org/papyrus/AIML/1#//Padding_layers"/>
+ </eAnnotations>
+ <appliedProfile xmi:type="uml:Profile" href="pathmap://AIML_PROFILES/AIML.profile.uml#_2_xEcJT2Eeq5BK6mmo2rWg"/>
+ </profileApplication>
+ <profileApplication xmi:type="uml:ProfileApplication" xmi:id="_9PLFcJ6YEeqMUqJDUIBTbw">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_9PLFcZ6YEeqMUqJDUIBTbw" source="http://www.eclipse.org/uml2/2.0.0/UML">
+ <references xmi:type="ecore:EPackage" href="http://www.eclipse.org/papyrus/AIML/1#//NonLinearActivations"/>
+ </eAnnotations>
+ <appliedProfile xmi:type="uml:Profile" href="pathmap://AIML_PROFILES/AIML.profile.uml#_H7fbMJT2Eeq5BK6mmo2rWg"/>
+ </profileApplication>
+ <profileApplication xmi:type="uml:ProfileApplication" xmi:id="_9PLFcp6YEeqMUqJDUIBTbw">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_9PLsgJ6YEeqMUqJDUIBTbw" source="http://www.eclipse.org/uml2/2.0.0/UML">
+ <references xmi:type="ecore:EPackage" href="http://www.eclipse.org/papyrus/AIML/1#//SoftMinMaxActivations"/>
+ </eAnnotations>
+ <appliedProfile xmi:type="uml:Profile" href="pathmap://AIML_PROFILES/AIML.profile.uml#_K1H6wJT2Eeq5BK6mmo2rWg"/>
+ </profileApplication>
+ <profileApplication xmi:type="uml:ProfileApplication" xmi:id="_9PLsgZ6YEeqMUqJDUIBTbw">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_9PLsgp6YEeqMUqJDUIBTbw" source="http://www.eclipse.org/uml2/2.0.0/UML">
+ <references xmi:type="ecore:EPackage" href="http://www.eclipse.org/papyrus/AIML/1#//Normalization_layers"/>
+ </eAnnotations>
+ <appliedProfile xmi:type="uml:Profile" href="pathmap://AIML_PROFILES/AIML.profile.uml#_N5zMsJT2Eeq5BK6mmo2rWg"/>
+ </profileApplication>
+ <profileApplication xmi:type="uml:ProfileApplication" xmi:id="_9PLsg56YEeqMUqJDUIBTbw">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_9PMTkJ6YEeqMUqJDUIBTbw" source="http://www.eclipse.org/uml2/2.0.0/UML">
+ <references xmi:type="ecore:EPackage" href="http://www.eclipse.org/papyrus/AIML/1#//Recurrent_layers"/>
+ </eAnnotations>
+ <appliedProfile xmi:type="uml:Profile" href="pathmap://AIML_PROFILES/AIML.profile.uml#_RAjiQJT2Eeq5BK6mmo2rWg"/>
+ </profileApplication>
+ <profileApplication xmi:type="uml:ProfileApplication" xmi:id="_9PMTkZ6YEeqMUqJDUIBTbw">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_9PMTkp6YEeqMUqJDUIBTbw" source="http://www.eclipse.org/uml2/2.0.0/UML">
+ <references xmi:type="ecore:EPackage" href="http://www.eclipse.org/papyrus/AIML/1#//Transformer_layers"/>
+ </eAnnotations>
+ <appliedProfile xmi:type="uml:Profile" href="pathmap://AIML_PROFILES/AIML.profile.uml#_T8DDAJT2Eeq5BK6mmo2rWg"/>
+ </profileApplication>
+ <profileApplication xmi:type="uml:ProfileApplication" xmi:id="_9PMTk56YEeqMUqJDUIBTbw">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_9PM6oJ6YEeqMUqJDUIBTbw" source="http://www.eclipse.org/uml2/2.0.0/UML">
+ <references xmi:type="ecore:EPackage" href="http://www.eclipse.org/papyrus/AIML/1#//Linear_layers"/>
+ </eAnnotations>
+ <appliedProfile xmi:type="uml:Profile" href="pathmap://AIML_PROFILES/AIML.profile.uml#_WwqfsJT2Eeq5BK6mmo2rWg"/>
+ </profileApplication>
+ <profileApplication xmi:type="uml:ProfileApplication" xmi:id="_9PM6oZ6YEeqMUqJDUIBTbw">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_9PNhsJ6YEeqMUqJDUIBTbw" source="http://www.eclipse.org/uml2/2.0.0/UML">
+ <references xmi:type="ecore:EPackage" href="http://www.eclipse.org/papyrus/AIML/1#//Dropout_layers"/>
+ </eAnnotations>
+ <appliedProfile xmi:type="uml:Profile" href="pathmap://AIML_PROFILES/AIML.profile.uml#_ZUMzcJT2Eeq5BK6mmo2rWg"/>
+ </profileApplication>
+ <profileApplication xmi:type="uml:ProfileApplication" xmi:id="_9PNhsZ6YEeqMUqJDUIBTbw">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_9PNhsp6YEeqMUqJDUIBTbw" source="http://www.eclipse.org/uml2/2.0.0/UML">
+ <references xmi:type="ecore:EPackage" href="http://www.eclipse.org/papyrus/AIML/1#//Sparse_layers"/>
+ </eAnnotations>
+ <appliedProfile xmi:type="uml:Profile" href="pathmap://AIML_PROFILES/AIML.profile.uml#_cKwJ0JT2Eeq5BK6mmo2rWg"/>
+ </profileApplication>
+ <profileApplication xmi:type="uml:ProfileApplication" xmi:id="_9POIwJ6YEeqMUqJDUIBTbw">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_9POIwZ6YEeqMUqJDUIBTbw" source="http://www.eclipse.org/uml2/2.0.0/UML">
+ <references xmi:type="ecore:EPackage" href="http://www.eclipse.org/papyrus/AIML/1#//Distance_functions"/>
+ </eAnnotations>
+ <appliedProfile xmi:type="uml:Profile" href="pathmap://AIML_PROFILES/AIML.profile.uml#_fjUoIJT2Eeq5BK6mmo2rWg"/>
+ </profileApplication>
+ <profileApplication xmi:type="uml:ProfileApplication" xmi:id="_9POIwp6YEeqMUqJDUIBTbw">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_9POIw56YEeqMUqJDUIBTbw" source="http://www.eclipse.org/uml2/2.0.0/UML">
+ <references xmi:type="ecore:EPackage" href="http://www.eclipse.org/papyrus/AIML/1#//Loss_functions"/>
+ </eAnnotations>
+ <appliedProfile xmi:type="uml:Profile" href="pathmap://AIML_PROFILES/AIML.profile.uml#_nZcP0JT2Eeq5BK6mmo2rWg"/>
+ </profileApplication>
+ <profileApplication xmi:type="uml:ProfileApplication" xmi:id="_9POv0J6YEeqMUqJDUIBTbw">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_9POv0Z6YEeqMUqJDUIBTbw" source="http://www.eclipse.org/uml2/2.0.0/UML">
+ <references xmi:type="ecore:EPackage" href="http://www.eclipse.org/papyrus/AIML/1#//Vision_layers"/>
+ </eAnnotations>
+ <appliedProfile xmi:type="uml:Profile" href="pathmap://AIML_PROFILES/AIML.profile.uml#_q6FsEJT2Eeq5BK6mmo2rWg"/>
+ </profileApplication>
+ <profileApplication xmi:type="uml:ProfileApplication" xmi:id="_9POv0p6YEeqMUqJDUIBTbw">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_9PPW4J6YEeqMUqJDUIBTbw" source="http://www.eclipse.org/uml2/2.0.0/UML">
+ <references xmi:type="ecore:EPackage" href="http://www.eclipse.org/papyrus/AIML/1#//DataParallel_layers"/>
+ </eAnnotations>
+ <appliedProfile xmi:type="uml:Profile" href="pathmap://AIML_PROFILES/AIML.profile.uml#_wBUroJT2Eeq5BK6mmo2rWg"/>
+ </profileApplication>
+ <profileApplication xmi:type="uml:ProfileApplication" xmi:id="_WcUqYJ6ZEeqMUqJDUIBTbw">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_WcVRcJ6ZEeqMUqJDUIBTbw" source="http://www.eclipse.org/uml2/2.0.0/UML">
+ <references xmi:type="ecore:EPackage" href="http://www.eclipse.org/papyrus/Codegen/1#/"/>
+ </eAnnotations>
+ <appliedProfile xmi:type="uml:Profile" href="pathmap://Codegen_PROFILES/Codegen.profile.uml#_fPDsIBa-EearhdjjJ6cVzQ"/>
+ </profileApplication>
+ </uml:Model>
+ <Codegen:GeneratorHint xmi:id="_ggzKkJ6aEeqMUqJDUIBTbw" base_Element="_sfXSgJwiEeqtcKkMgfhA1A" language="_Q3RmYLMyEeqmquzwsvk0ug" generatorID="Keras"/>
+ <AIML.Module:Default_Container xmi:id="_2pbZcLMxEeqmquzwsvk0ug" base_Class="_wkcRgJwiEeqtcKkMgfhA1A"/>
+ <Codegen:Language xmi:id="_Q3RmYLMyEeqmquzwsvk0ug" base_Class="_KvaJkJwjEeqtcKkMgfhA1A"/>
+ <AIML.Convolution_layers:Conv1d xmi:id="_t2TIMLM3Eeqmquzwsvk0ug" base_Class="_iaXQYLM3Eeqmquzwsvk0ug"/>
+</xmi:XMI>
diff --git a/aiml/org.eclipse.papyrus.aiml.examples/plugin.properties b/aiml/org.eclipse.papyrus.aiml.examples/plugin.properties
new file mode 100644
index 0000000..5c6ffe7
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.examples/plugin.properties
@@ -0,0 +1,10 @@
+# Copyright (c) CEA LIST.
+#
+# This program and the accompanying materials are made
+# available under the terms of the Eclipse Public License 2.0
+# which is available at https://www.eclipse.org/legal/epl-2.0/
+#
+# SPDX-License-Identifier: EPL-2.0
+#
+pluginName=Papyrus AIML examples
+providerName=Eclipse Modeling Project
diff --git a/aiml/org.eclipse.papyrus.aiml.examples/plugin.xml b/aiml/org.eclipse.papyrus.aiml.examples/plugin.xml
new file mode 100644
index 0000000..048525f
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.examples/plugin.xml
@@ -0,0 +1,35 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?eclipse version="3.4"?>
+<plugin>
+ <extension
+ point="org.eclipse.emf.common.ui.examples">
+ <example
+ id="org.eclipse.papyrus.aiml.examples.kerasmodel"
+ wizardID="org.eclipse.papyrus.aiml.example">
+ <projectDescriptor
+ contentURI="models/"
+ description="AIML model example for Keras"
+ name="AIML Keras Model">
+ </projectDescriptor>
+ <fileToOpen
+ location="models/kerasmodel.di">
+ </fileToOpen>
+ </example>
+ </extension>
+
+ <extension
+ point="org.eclipse.ui.newWizards">
+ <wizard
+ category="org.eclipse.ui.Examples/org.eclipse.papyrus.examples"
+ class="org.eclipse.emf.common.ui.wizard.ExampleInstallerWizard"
+ finalPerspective="org.eclipse.papyrus.infra.core.perspective"
+ id="org.eclipse.papyrus.aiml.example"
+ name="AIML Examples"
+ preferredPerspectives="org.eclipse.papyrus.infra.core.perspective"
+ project="true">
+ <description>
+ Create a new Project that contains an example for AI Modeling based on Keras
+ </description>
+ </wizard>
+ </extension>
+</plugin>
diff --git a/aiml/org.eclipse.papyrus.aiml.examples/src/org/eclipse/papyrus/aiml/examples/Activator.java b/aiml/org.eclipse.papyrus.aiml.examples/src/org/eclipse/papyrus/aiml/examples/Activator.java
new file mode 100644
index 0000000..835d0eb
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.examples/src/org/eclipse/papyrus/aiml/examples/Activator.java
@@ -0,0 +1,38 @@
+/**
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ */
+package org.eclipse.papyrus.aiml.examples;
+
+import org.osgi.framework.BundleActivator;
+import org.osgi.framework.BundleContext;
+
+public class Activator implements BundleActivator {
+
+ private static BundleContext context;
+
+ static BundleContext getContext() {
+ return context;
+ }
+
+ /*
+ * (non-Javadoc)
+ * @see org.osgi.framework.BundleActivator#start(org.osgi.framework.BundleContext)
+ */
+ public void start(BundleContext bundleContext) throws Exception {
+ Activator.context = bundleContext;
+ }
+
+ /*
+ * (non-Javadoc)
+ * @see org.osgi.framework.BundleActivator#stop(org.osgi.framework.BundleContext)
+ */
+ public void stop(BundleContext bundleContext) throws Exception {
+ Activator.context = null;
+ }
+
+}
diff --git a/aiml/org.eclipse.papyrus.aiml.gen.keras/.classpath b/aiml/org.eclipse.papyrus.aiml.gen.keras/.classpath
new file mode 100644
index 0000000..2f5ffb2
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.gen.keras/.classpath
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+ <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8"/>
+ <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
+ <classpathentry kind="src" path="src"/>
+ <classpathentry kind="src" path="xtend-gen"/>
+ <classpathentry kind="output" path="target/classes"/>
+</classpath>
diff --git a/aiml/org.eclipse.papyrus.aiml.gen.keras/.project b/aiml/org.eclipse.papyrus.aiml.gen.keras/.project
new file mode 100644
index 0000000..7e976c4
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.gen.keras/.project
@@ -0,0 +1,39 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>org.eclipse.papyrus.aiml.gen.keras</name>
+ <comment></comment>
+ <projects>
+ </projects>
+ <buildSpec>
+ <buildCommand>
+ <name>org.eclipse.xtext.ui.shared.xtextBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.eclipse.jdt.core.javabuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.eclipse.pde.ManifestBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.eclipse.pde.SchemaBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.eclipse.m2e.core.maven2Builder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ </buildSpec>
+ <natures>
+ <nature>org.eclipse.m2e.core.maven2Nature</nature>
+ <nature>org.eclipse.jdt.core.javanature</nature>
+ <nature>org.eclipse.xtext.ui.shared.xtextNature</nature>
+ </natures>
+</projectDescription>
diff --git a/aiml/org.eclipse.papyrus.aiml.gen.keras/.settings/org.eclipse.jdt.core.prefs b/aiml/org.eclipse.papyrus.aiml.gen.keras/.settings/org.eclipse.jdt.core.prefs
new file mode 100644
index 0000000..0fee6a9
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.gen.keras/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,15 @@
+eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
+org.eclipse.jdt.core.compiler.codegen.methodParameters=do not generate
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8
+org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
+org.eclipse.jdt.core.compiler.compliance=1.8
+org.eclipse.jdt.core.compiler.debug.lineNumber=generate
+org.eclipse.jdt.core.compiler.debug.localVariable=generate
+org.eclipse.jdt.core.compiler.debug.sourceFile=generate
+org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
+org.eclipse.jdt.core.compiler.problem.enablePreviewFeatures=disabled
+org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
+org.eclipse.jdt.core.compiler.problem.reportPreviewFeatures=warning
+org.eclipse.jdt.core.compiler.release=disabled
+org.eclipse.jdt.core.compiler.source=1.8
diff --git a/aiml/org.eclipse.papyrus.aiml.gen.keras/META-INF/MANIFEST.MF b/aiml/org.eclipse.papyrus.aiml.gen.keras/META-INF/MANIFEST.MF
new file mode 100644
index 0000000..f47ce9f
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.gen.keras/META-INF/MANIFEST.MF
@@ -0,0 +1,24 @@
+Manifest-Version: 1.0
+Require-Bundle: org.eclipse.core.runtime,
+ org.eclipse.emf.ecore;visibility:=reexport,
+ org.eclipse.emf.ecore.xmi;visibility:=reexport,
+ org.eclipse.uml2.types;visibility:=reexport,
+ org.eclipse.uml2.uml;bundle-version="5.0.0";visibility:=reexport,
+ org.eclipse.papyrus.uml.properties;bundle-version="3.0.0",
+ org.eclipse.papyrus.aiml.profile;bundle-version="0.7.0",
+ org.eclipse.xtend.lib;bundle-version="2.2.0",
+ org.eclipse.papyrus.designer.languages.common.base;bundle-version="1.1.0",
+ org.eclipse.papyrus.designer.languages.common.extensionpoints;bundle-version="1.1.0",
+ org.eclipse.papyrus.designer.languages.common.profile;bundle-version="1.1.0"
+Export-Package: org.eclipse.papyrus.aiml.gen.keras
+Bundle-Vendor: %providerName
+Bundle-ActivationPolicy: lazy
+Bundle-ClassPath: .
+Bundle-Version: 0.7.0.qualifier
+Bundle-Localization: plugin
+Bundle-Name: %pluginName
+Bundle-Activator: org.eclipse.papyrus.aiml.gen.keras.Activator
+Bundle-ManifestVersion: 2
+Bundle-SymbolicName: org.eclipse.papyrus.aiml.gen.keras;singleton:=true
+Automatic-Module-Name: org.eclipse.papyrus.designer.languages.cpp.profile
+Bundle-RequiredExecutionEnvironment: JavaSE-1.8
diff --git a/aiml/org.eclipse.papyrus.aiml.gen.keras/build.properties b/aiml/org.eclipse.papyrus.aiml.gen.keras/build.properties
new file mode 100644
index 0000000..536f80e
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.gen.keras/build.properties
@@ -0,0 +1,10 @@
+source.. = src/,\
+ src-gen/
+output.. = target/classes/
+bin.includes = META-INF/,\
+ .,\
+ plugin.xml,\
+ profiles/,\
+ libraries/,\
+ plugin.properties,\
+ properties/
diff --git a/aiml/org.eclipse.papyrus.aiml.gen.keras/plugin.properties b/aiml/org.eclipse.papyrus.aiml.gen.keras/plugin.properties
new file mode 100644
index 0000000..4f00e9e
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.gen.keras/plugin.properties
@@ -0,0 +1,10 @@
+# Copyright (c) CEA LIST.
+#
+# This program and the accompanying materials are made
+# available under the terms of the Eclipse Public License 2.0
+# which is available at https://www.eclipse.org/legal/epl-2.0/
+#
+# SPDX-License-Identifier: EPL-2.0
+#
+pluginName=Papyrus AIML profile
+providerName=Eclipse Modeling Project
diff --git a/aiml/org.eclipse.papyrus.aiml.gen.keras/plugin.xml b/aiml/org.eclipse.papyrus.aiml.gen.keras/plugin.xml
new file mode 100644
index 0000000..e18fff1
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.gen.keras/plugin.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?eclipse version="3.2"?>
+<plugin>
+ <extension
+ point="org.eclipse.papyrus.designer.languages.common.extensionpoints.languageCodegen">
+ <generator
+ id="Keras"
+ class="org.eclipse.papyrus.aiml.gen.keras.KerasLangCodegen"
+ language="python">
+ </generator>
+ </extension>
+</plugin>
diff --git a/aiml/org.eclipse.papyrus.aiml.gen.keras/src/org/eclipse/papyrus/aiml/gen/keras/Activator.java b/aiml/org.eclipse.papyrus.aiml.gen.keras/src/org/eclipse/papyrus/aiml/gen/keras/Activator.java
new file mode 100644
index 0000000..1bd4ef5
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.gen.keras/src/org/eclipse/papyrus/aiml/gen/keras/Activator.java
@@ -0,0 +1,42 @@
+/**
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ */
+package org.eclipse.papyrus.aiml.gen.keras;
+
+import org.eclipse.papyrus.infra.core.log.LogHelper;
+import org.osgi.framework.BundleActivator;
+import org.osgi.framework.BundleContext;
+
+public class Activator implements BundleActivator {
+
+ private static BundleContext context;
+
+ public static LogHelper log;
+
+ static BundleContext getContext() {
+ return context;
+ }
+
+ /*
+ * (non-Javadoc)
+ * @see org.osgi.framework.BundleActivator#start(org.osgi.framework.BundleContext)
+ */
+ public void start(BundleContext bundleContext) throws Exception {
+ Activator.context = bundleContext;
+ log = new LogHelper(context.getBundle());
+ }
+
+ /*
+ * (non-Javadoc)
+ * @see org.osgi.framework.BundleActivator#stop(org.osgi.framework.BundleContext)
+ */
+ public void stop(BundleContext bundleContext) throws Exception {
+ Activator.context = null;
+ }
+
+}
diff --git a/aiml/org.eclipse.papyrus.aiml.gen.keras/src/org/eclipse/papyrus/aiml/gen/keras/GenCheck.xtend b/aiml/org.eclipse.papyrus.aiml.gen.keras/src/org/eclipse/papyrus/aiml/gen/keras/GenCheck.xtend
new file mode 100644
index 0000000..92899d9
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.gen.keras/src/org/eclipse/papyrus/aiml/gen/keras/GenCheck.xtend
@@ -0,0 +1,102 @@
+package org.eclipse.papyrus.aiml.gen.keras
+
+import org.eclipse.papyrus.aiml.profile.AIML.Module.Model
+import java.util.HashSet
+import org.eclipse.jface.dialogs.MessageDialog
+import org.eclipse.swt.widgets.Display
+
+class GenCheck {
+ /**
+ * return true if Null for each type
+ */
+ static def isNull(Object value) {
+ return value === null
+ }
+
+ /**
+ * return true if Null for each type
+ */
+ static def isFalseBoolean(Boolean value) {
+ return value.booleanValue === Boolean.FALSE
+ }
+ /**
+ * return true if Null or string value is empty
+ */
+ static def isNullOrEmptyForString(String value) {
+ return value === null || value.length == 0 || value === "null"
+ }
+
+ static def isZeroForString(String value) {
+ return value === "0.0" || value ==="0"
+ }
+
+ static def isZeroForStringL(String value) {
+ return value.equals("0.0") || value.equals("0")
+ }
+ /**
+ * return true if string value is equal to false
+ */
+ static def isFalseForString(String value) {
+ return value !== null && value.equals("false")
+ }
+
+ /**
+ * collect the number of layers in the model
+ */
+ static def findNbrOfLayer(Model l) {
+ var nbr_lay = 0
+ for (layer : l.base_Class.ownedAttributes) {
+ l.getClass().getSimpleName()
+ nbr_lay = nbr_lay + 1
+ }
+ return nbr_lay
+ }
+
+ static def findNbrOfInformationFLowPara(Model l) {
+ var nbrInformationFlowFinal = 0
+ var nbrInformationFlowByLayer = 0
+
+ for (layer : l.base_Class.ownedAttributes) {
+
+ nbrInformationFlowByLayer=layer.getTargetDirectedRelationships().length
+
+ if (nbrInformationFlowByLayer>nbrInformationFlowFinal){
+ nbrInformationFlowFinal=nbrInformationFlowByLayer
+ }
+
+ }
+
+ if (nbrInformationFlowFinal>1){
+ MessageDialog.openWarning(Display.current.activeShell, "Warning Message : InformationFlow ",
+ "NOT SUPPORTED : InformationFLow parallelization (Double entry) ");
+
+ return 0
+
+ } else {
+ return 1
+ }
+
+ }
+
+ static def findNbrOfInformationFLowMissing(ModuleInfo mi) {
+
+ System.err.println("module info list : " + mi.layersInput.toList)
+
+ var HashSet hs = new HashSet<String>();
+ hs.addAll(mi.layersInput.toList);
+ var int totalDuplicates = mi.layersInput.toList.size() - hs.size();
+
+ //MessageDialog.openWarning(Display.current.activeShell, "sdfsd", "warning ...");
+ //Activator.log.info("sdfsd");
+
+ if (totalDuplicates !== 0) {
+ MessageDialog.openWarning(Display.current.activeShell, "Warning Message : InformationFlow ",
+ "NOT SUPPORTED : Missing InformationFlow Connection");
+ return 0
+
+ } else {
+ return 1
+ }
+ }
+}
+
diff --git a/aiml/org.eclipse.papyrus.aiml.gen.keras/src/org/eclipse/papyrus/aiml/gen/keras/GenKeras.xtend b/aiml/org.eclipse.papyrus.aiml.gen.keras/src/org/eclipse/papyrus/aiml/gen/keras/GenKeras.xtend
new file mode 100644
index 0000000..405f0d9
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.gen.keras/src/org/eclipse/papyrus/aiml/gen/keras/GenKeras.xtend
@@ -0,0 +1,197 @@
+/*******************************************************************************
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse License 2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ * Abhishek Djeachandrane - Initial API and implementation
+ *******************************************************************************/
+
+package org.eclipse.papyrus.aiml.gen.keras;
+
+import org.eclipse.uml2.uml.Class;
+import static extension org.eclipse.uml2.uml.util.UMLUtil.getStereotypeApplication
+import org.eclipse.papyrus.aiml.profile.AIML.Module.Model
+import org.eclipse.papyrus.aiml.profile.AIML.Tensor.Tensor
+import org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution_layers
+import org.eclipse.papyrus.aiml.profile.AIML.Recurrent_layers.Recurrent_layers
+import org.eclipse.papyrus.aiml.profile.AIML.Recurrent_layers.LSTM
+import org.eclipse.papyrus.aiml.profile.AIML.Recurrent_layers.GRU
+import org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.Linear_layers
+import org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.Linear
+import org.eclipse.papyrus.aiml.gen.keras.ModelOps;
+
+
+class GenKeras {
+ static def genKeras(Class clazz) {
+ val module = clazz.getStereotypeApplication(Model)
+ if (module !== null) {
+ return module.genModule
+ } else {
+ return "";
+ }
+ }
+ /**
+ * Generate a model with different elements necessary for the compilation
+ */
+ static def genModule(Model module) '''
+ «module.genDefaultTemplate»
+
+ «module.genModuleInit»
+
+ «module.genModuleCall»
+
+ «module.genModuleCompilation»
+
+
+
+
+
+ '''
+
+ /**
+ * Generate the model instance and compilation
+ */
+ static def genModuleCompilation(Model module) '''
+ «module.base_Class.name.toFirstLower» = «module.base_Class.name»()
+ ««««»«ModelOps.modelAttributesToDisplayForCompilation(module)»
+ «var study=ModelOps.modelAttributesToCollectProperly(module)»
+ «study.attributesName.toList»
+ «study.attributesValue.toList»
+ «study.attributesType.toList»
+ «FOR n : study.attributesValue.toList»
+
+ «ENDFOR»
+ «var study2=ModelOps.modelAttributesToDisplayForCompilationProperly(module)»
+ «study2»
+ '''
+ /**
+ * Generate the basic template with importation in the head of the code
+ */
+ static def genDefaultTemplate(Model module) '''
+ # generated by Papyrus from module «module.base_Class.class»
+
+ import tensorflow as tf
+ from tensorflow import keras
+ inputs=[(1,2),(3,4)]
+ '''
+
+ /**
+ * Generate layer instance through modeling
+ */
+ static def genModuleInit(Model module) '''
+ class «module.base_Class.name»(tf.keras.Model):
+ def __init__(self):
+ super(MyModel, self).__init__()
+
+ «FOR layer : module.base_Class.ownedAttributes»
+ «val type = layer.type»
+ «val layerSt = type.getStereotypeApplication(Model)»
+ «genLayer(layerSt)»
+ «ENDFOR»
+ «FOR connector : module.base_Class.ownedConnectors»
+ «ENDFOR»
+ '''
+
+
+ /**
+ * Generate the code which consist to determine the data flow between layers
+ * @param l the model ...
+ */
+ static def genModuleCall(Model module) '''
+ def call(self, inputs):
+
+ «var nbr_lay = GenCheck.findNbrOfLayer(module)»
+ «var unsortedInformationFlowList = ModelOps.genInputOutputLayerArrayWithFlow(nbr_lay,module)»
+
+ «IF unsortedInformationFlowList instanceof ModuleInfo»
+ «var sortedInformationFlowList = ModelOps.genFlowOrder(nbr_lay, unsortedInformationFlowList)»
+ «FOR layer :sortedInformationFlowList.toList»
+ «var inputs = sortedInformationFlowList.toList.indexOf(layer)-1»
+ «IF inputs<0»
+ x«sortedInformationFlowList.toList.indexOf(layer)» = self.«layer»(input)
+ «ELSEIF inputs>=0 && inputs<sortedInformationFlowList.length-2»
+ x«sortedInformationFlowList.toList.indexOf(layer)» = self.«layer»(x«inputs»)
+ «ELSEIF inputs==sortedInformationFlowList.length-2»
+ output = self.«layer»(x«inputs»)
+ «ENDIF»
+ «ENDFOR»
+ «ENDIF»
+ return output
+ '''
+
+ /**
+ * Generate each layer according to the model
+ */
+ static def genLayer(Model layer) {
+ if (layer instanceof Convolution_layers) {
+ genConvolutionLayer(layer as Convolution_layers)
+ } else if (layer instanceof Recurrent_layers) {
+ genRecurrentLayer(layer as Recurrent_layers)
+ } else if (layer instanceof Linear_layers) {
+ genLinearLayer(layer as Linear_layers)
+ }
+ }
+ /**
+ * Generate each convolution layer according to the model
+ */
+ static def genConvolutionLayer(Convolution_layers convolutionLayer) '''
+ '''
+ /**
+ * Generate each linear layer according to the model
+ */
+ static def genLinearLayer(Linear_layers linearLayer) {
+ if (linearLayer instanceof Linear) {
+ genDense(linearLayer as Linear)
+ }
+ }
+ /**
+ * Generate each recurrent layer according to the model
+ */
+ static def genRecurrentLayer(Recurrent_layers recurrentLayer) {
+ if (recurrentLayer instanceof LSTM) {
+ genLstm(recurrentLayer as LSTM)
+ } else if (recurrentLayer instanceof GRU) {
+ genGru(recurrentLayer as GRU)
+ }
+ }
+ /**
+ * Generate each dense layer according to the model
+ */
+ static def genDense(Linear denseLayer) '''
+ self.«denseLayer.base_Class.name»=tf.keras.layers.Dense(«denseLayer.in_features»)
+ '''
+ /**
+ * Generate each LSTM layer according to the model
+ */
+ static def genLstm(LSTM lstmLayer) '''
+ «««»»«IF lstmLayer.return_sequences.equals(true)»
+ «««self.«lstmLayer.base_Class.name»=tf.keras.layers.«lstmLayer.eClass.name»(«lstmLayer.hidden_size»,input_shape=[«lstmLayer.input_size»],return_sequences=True)
+ ««««»»«ELSEIF lstmLayer.return_sequences.equals(false)»
+ ««««self.«lstmLayer.base_Class.name»=tf.keras.layers.«lstmLayer.eClass.name»(«lstmLayer.hidden_size»,input_shape=[«lstmLayer.input_size»],return_sequences=False)
+ ««««»»«ENDIF»
+ «var tt = RecurrentLayerOps.lstmAttributesToDisplay(lstmLayer)»
+ «tt»
+ '''
+ /**
+ * Generate each GRU layer according to the model
+ */
+ static def genGru(GRU gruLayer) '''
+ «««»»«gruLayer.eClass.name»
+ «««»«gruLayer.input_size»
+ «var tt = RecurrentLayerOps.lstmAttributesToDisplay(gruLayer)»
+ «tt»
+ '''
+ /**
+ * Generate each tensor according to the model
+ */
+ static def genTensor(Tensor tensor) '''
+ tensor ...
+ '''
+
+}
diff --git a/aiml/org.eclipse.papyrus.aiml.gen.keras/src/org/eclipse/papyrus/aiml/gen/keras/KerasLangCodegen.java b/aiml/org.eclipse.papyrus.aiml.gen.keras/src/org/eclipse/papyrus/aiml/gen/keras/KerasLangCodegen.java
new file mode 100644
index 0000000..a710c8f
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.gen.keras/src/org/eclipse/papyrus/aiml/gen/keras/KerasLangCodegen.java
@@ -0,0 +1,100 @@
+/*******************************************************************************
+ * Copyright (c) 2020 CEA LIST.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ * CEA LIST - ansgar.radermacher@cea.fr initial API and implementation
+ *******************************************************************************/
+
+package org.eclipse.papyrus.aiml.gen.keras;
+
+import org.eclipse.core.resources.IProject;
+import org.eclipse.core.runtime.IProgressMonitor;
+import org.eclipse.papyrus.aiml.gen.keras.transformation.KerasModelElementsCreator;
+import org.eclipse.papyrus.aiml.profile.AIML.Module.Default_Container;
+import org.eclipse.papyrus.designer.languages.common.base.ModelElementsCreator;
+import org.eclipse.papyrus.designer.languages.common.extensionpoints.ILangCodegen2;
+import org.eclipse.papyrus.designer.languages.common.extensionpoints.MethodInfo;
+import org.eclipse.papyrus.designer.languages.common.extensionpoints.SyncInformation;
+import org.eclipse.papyrus.uml.tools.utils.StereotypeUtil;
+import org.eclipse.uml2.uml.Classifier;
+import org.eclipse.uml2.uml.Element;
+import org.eclipse.uml2.uml.NamedElement;
+import org.eclipse.uml2.uml.PackageableElement;
+
+/**
+ * Keras language support
+ */
+public class KerasLangCodegen implements ILangCodegen2 {
+
+ protected ModelElementsCreator creator = null;
+
+ protected IProject lastProject = null;
+
+ @Override
+ public String getDescription() {
+ return "A generator for Keras/TensorFlow"; //$NON-NLS-1$
+ }
+
+ @Override
+ public boolean isEligible(Element modelElement) {
+ if (modelElement instanceof Classifier) {
+ return StereotypeUtil.isApplied(modelElement, Default_Container.class);
+ }
+ return false;
+ }
+
+ @Override
+ public String getSuffix(FILE_KIND fileKind) {
+ return "py"; //$NON-NLS-1$
+ }
+
+ @Override
+ public void generateCode(IProject project, PackageableElement element, IProgressMonitor monitor)
+ {
+ manageCreator(project, element);
+ creator.createPackageableElement(element, monitor);
+ }
+
+ @Override
+ public void cleanCode(IProject project, PackageableElement element, IProgressMonitor monitor) {
+ manageCreator(project, element);
+ creator.removePackageableElement(element, monitor);
+ }
+
+ @Override
+ public String getFileName(IProject project, NamedElement element) {
+ manageCreator(project, element);
+ return creator.getFileName(element);
+ }
+
+ @Override
+ public IProject getTargetProject(PackageableElement pe, boolean createIfMissing) {
+ return LocatePythonProject.getTargetProject(pe, createIfMissing);
+ }
+
+ protected void manageCreator(IProject project, Element element) {
+ if ((project == null) && (element instanceof PackageableElement)) {
+ project = getTargetProject((PackageableElement) element, false);
+ }
+ if ((creator == null) || (project != lastProject)) {
+ lastProject = project;
+ creator = new KerasModelElementsCreator(project);
+ }
+ }
+
+ @Override
+ public SyncInformation getSyncInformation(String methodName, String body) {
+ return null;
+ }
+
+ @Override
+ public MethodInfo getMethodInfo(NamedElement operationOrBehavior) {
+ return null;
+ }
+}
diff --git a/aiml/org.eclipse.papyrus.aiml.gen.keras/src/org/eclipse/papyrus/aiml/gen/keras/LayerInfo.java b/aiml/org.eclipse.papyrus.aiml.gen.keras/src/org/eclipse/papyrus/aiml/gen/keras/LayerInfo.java
new file mode 100644
index 0000000..f65f46e
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.gen.keras/src/org/eclipse/papyrus/aiml/gen/keras/LayerInfo.java
@@ -0,0 +1,13 @@
+package org.eclipse.papyrus.aiml.gen.keras;
+
+
+public class LayerInfo {
+ LayerInfo (int size) {
+ attributeNames = new String[size];
+ attributeValues = new String[size];
+ }
+ String[] attributeNames;
+ String[] attributeValues;
+}
+
+
diff --git a/aiml/org.eclipse.papyrus.aiml.gen.keras/src/org/eclipse/papyrus/aiml/gen/keras/LocatePythonProject.java b/aiml/org.eclipse.papyrus.aiml.gen.keras/src/org/eclipse/papyrus/aiml/gen/keras/LocatePythonProject.java
new file mode 100644
index 0000000..107e39b
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.gen.keras/src/org/eclipse/papyrus/aiml/gen/keras/LocatePythonProject.java
@@ -0,0 +1,131 @@
+/*******************************************************************************
+ * Copyright (c) 2006 - 2013 CEA LIST.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ * CEA LIST - initial API and implementation
+ *******************************************************************************/
+
+package org.eclipse.papyrus.aiml.gen.keras;
+
+import org.eclipse.core.resources.IProject;
+import org.eclipse.core.resources.IWorkspaceRoot;
+import org.eclipse.core.resources.ResourcesPlugin;
+import org.eclipse.core.runtime.CoreException;
+import org.eclipse.core.runtime.IProgressMonitor;
+import org.eclipse.core.runtime.NullProgressMonitor;
+import org.eclipse.jface.dialogs.MessageDialog;
+import org.eclipse.papyrus.designer.languages.common.base.TestInfo;
+import org.eclipse.papyrus.designer.languages.common.extensionpoints.ILangProjectSupport;
+import org.eclipse.papyrus.designer.languages.common.extensionpoints.LanguageProjectSupport;
+import org.eclipse.papyrus.uml.tools.utils.PackageUtil;
+import org.eclipse.swt.widgets.Display;
+import org.eclipse.uml2.uml.Package;
+import org.eclipse.uml2.uml.PackageableElement;
+import org.eclipse.uml2.uml.util.UMLUtil;
+
+public class LocatePythonProject {
+
+ private static final boolean Headless = TestInfo.runsHeadless();
+
+ /**
+ * Locate and return the target project for the given packageable element. Return null if
+ * no target project can be found.
+ *
+ * Ensures that the target project is correctly setup to contain generated C/C++ code. Does
+ * not create a new project, but may modify existing ones.
+ *
+ * @param pe
+ * a packageable element within a model
+ * @param createIfMissing
+ * if true, ask the user to apply the C++ nature if required.
+ * @return the associated project, if the C++ nature is applied.
+ */
+ public static IProject getTargetProject(PackageableElement pe, boolean createIfMissing) {
+ Package rootPkg = PackageUtil.getRootPackage(pe);
+
+ IWorkspaceRoot root = ResourcesPlugin.getWorkspace().getRoot();
+
+ org.eclipse.papyrus.designer.languages.common.profile.Codegen.Project projectStereo =
+ UMLUtil.getStereotypeApplication(rootPkg, org.eclipse.papyrus.designer.languages.common.profile.Codegen.Project.class);
+
+ String projectName;
+ if (projectStereo != null) {
+ projectName = projectStereo.getProjectName();
+ }
+ else {
+ projectName = "org.eclipse.papyrus.pygen." + rootPkg.getName(); //$NON-NLS-1$
+ }
+ IProject modelProject = root.getProject(projectName);
+
+ if (!modelProject.exists()) {
+ if (Headless)
+ {
+ try {
+ modelProject.create(null);
+ } catch (CoreException e) {
+ return null;
+ }
+ }
+ else {
+ boolean create = createIfMissing && openQuestion(
+ "Create python project?",
+ String.format("Create python project with name %s? ", projectName));
+ if (create) {
+ // TODO - there is no Python project support yet, projectSupport will always throw an exception
+ // => create PythonProjectSupport
+ try {
+ ILangProjectSupport projectSupport = LanguageProjectSupport.getProjectSupport("python"); //$NON-NLS-1$
+ modelProject = projectSupport.createProject(projectName);
+ projectSupport.setSettings(modelProject, projectSupport.initialConfigurationData());
+ if (modelProject == null) {
+ return null;
+ }
+ }
+ catch (Exception e) {
+ // create standard project
+ IProgressMonitor progressMonitor = new NullProgressMonitor();
+ try {
+ modelProject.create(progressMonitor);
+ } catch (CoreException ce) {
+ Activator.log.error(ce);
+ }
+ }
+ }
+ else {
+ return null;
+ }
+ }
+ }
+
+ // Make sure the target project is open. If it was just created then it is likely open,
+ // however if it is an old project then it could have been closed.
+ if (!modelProject.isOpen()) {
+ try {
+ modelProject.open(null);
+ } catch (CoreException e) {
+ return null;
+ }
+ }
+
+ // Make sure the target project has the python natures.
+ return modelProject;
+ }
+
+ private static boolean openQuestion(final String title, final String message)
+ {
+ final boolean[] ret = new boolean[] { false };
+ Display.getDefault().syncExec(new Runnable() {
+ @Override
+ public void run() {
+ ret[0] = MessageDialog.openQuestion(Display.getCurrent().getActiveShell(), title, message);
+ }
+ });
+ return ret[0];
+ }
+}
diff --git a/aiml/org.eclipse.papyrus.aiml.gen.keras/src/org/eclipse/papyrus/aiml/gen/keras/ModelOps.xtend b/aiml/org.eclipse.papyrus.aiml.gen.keras/src/org/eclipse/papyrus/aiml/gen/keras/ModelOps.xtend
new file mode 100644
index 0000000..5481f7b
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.gen.keras/src/org/eclipse/papyrus/aiml/gen/keras/ModelOps.xtend
@@ -0,0 +1,238 @@
+package org.eclipse.papyrus.aiml.gen.keras
+
+import org.eclipse.papyrus.aiml.profile.AIML.Module.Model
+import org.eclipse.papyrus.aiml.gen.keras.GenCheck
+import java.util.ArrayList
+import org.eclipse.uml2.uml.InformationFlow
+
+/**
+ * Composing each functions needed to compute the model : _init_ and _call_
+ */
+class ModelOps {
+ static def modelAttributesToCollectProperly(Model mod_val) {
+
+ var mi = new ModuleInfoAttributes()
+ for (value : mod_val.eClass.EAllAttributes) {
+
+ var attri_name = value.name
+ mi.attributesName.add(attri_name)
+ var attri_val = mod_val.eGet(value)
+ mi.attributesValue.add(attri_val)
+ var attri_type= value.EType
+ mi.attributesType.add(value.EType.instanceClassName)
+
+ if (attri_type.instanceClass.isAssignableFrom(Float)) {
+
+ }
+
+ }
+ //for (valu2 : mi.attributesValue){
+ //var attri_type= valu2.class.typeName
+ //mi.attributesType.add(valu2.class.typeName)
+ //}
+ return mi
+ }
+ /**
+ * Select model attributes to display for the compilation
+ */
+ static def modelAttributesToDisplayForCompilationProperly(Model mod) {
+
+ val attributes = ModelOps.modelAttributesToCollectProperly(mod) // Collect Attributes
+ var name_attrib = attributes.attributesName.toList
+ var val_attrib = attributes.attributesValue.toList
+ var String Display = mod.base_Class.name.toFirstLower + ".compile("
+
+ var increm = 0
+ for (step : val_attrib) {
+ if( !name_attrib.get(increm).equals("name")){
+ if ( step instanceof String ) {
+ System.out.println("String ok")
+
+
+ if (!GenCheck.isZeroForString(step) && !GenCheck.isNullOrEmptyForString(step) ) {
+ var String DisplayInit = name_attrib.get(increm)
+ var String DisplayStateZero = DisplayInit + '="' + step + '",'
+ Display = Display + DisplayStateZero
+ }
+ }else if ( step instanceof Boolean){
+ System.out.println("Boolean ok")
+
+ if (!GenCheck.isFalseBoolean(step) && !GenCheck.isNull(step)) {
+ System.out.println("RRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR")
+
+ var String DisplayInit = name_attrib.get(increm)
+ var String DisplayStateZero = DisplayInit + '="' + step + '",'
+ Display = Display + DisplayStateZero
+ }
+
+ }
+ }
+ increm+=1
+
+
+ }
+ Display = Display.substring(0, Display.length() - 1) + ")"
+
+ return Display
+ }
+ /**
+ * Collect model attributes for the compilation step
+ */
+ static def modelAttributesToCollect(Model mod_val) {
+ var type = mod_val.eClass.ESuperTypes
+ var l = 0
+
+ var String[] namelisted = newArrayOfSize(mod_val.eClass.EAllAttributes.length)
+ var vallisted = newArrayOfSize(mod_val.eClass.EAllAttributes.length)
+ var typelisted = newArrayOfSize(mod_val.eClass.EAllAttributes.length)
+ var String[][] shades = newArrayOfSize(mod_val.eClass.EAllAttributes.length,
+ mod_val.eClass.EAllAttributes.length)
+
+ for (valu : mod_val.eClass.EAllAttributes) {
+ l = l + 1
+ var d = l - 1
+
+ var attri_name = valu.name
+ namelisted.set(d, attri_name)
+
+ if (!GenCheck.isNullOrEmptyForString(String.valueOf(mod_val.eGet(valu)))) {
+ val attri_type = mod_val.eGet(valu).getClass().getSimpleName()
+ typelisted.set(d, attri_type)
+
+ var attri_val = mod_val.eGet(valu)
+ vallisted.set(d, String.valueOf(attri_val))
+
+ val String[][] shade = #[namelisted, vallisted]
+ shades = shade
+ } else {
+ // System.err.println(valu+"\n");
+ // System.out.println(mod_val.eGet(valu));
+ }
+ }
+ // System.err.println(shades.toList.get(0).toList)
+ return shades
+ }
+
+ /**
+ * Select model attributes to display for the compilation
+ */
+ static def modelAttributesToDisplayForCompilation(Model mod) {
+
+ val attributes = org.eclipse.papyrus.aiml.gen.keras.ModelOps.modelAttributesToCollect(mod) // Collect Attributes
+ var name_attrib = attributes.get(0).toList
+ var val_attrib = attributes.get(1).toList
+ var String Display = mod.base_Class.name.toFirstLower + ".compile("
+
+ for (step : val_attrib) {
+ if (!GenCheck.isZeroForString(step) || !GenCheck.isNullOrEmptyForString(step) || !name_attrib.get(val_attrib.indexOf(step)).equals("name")) {
+ var String DisplayInit = name_attrib.get(val_attrib.indexOf(step))
+ var String DisplayStateZero = DisplayInit + '="' + step + '",'
+ Display = Display + DisplayStateZero
+ }
+ }
+ Display = Display.substring(0, Display.length() - 1) + ")"
+
+ return Display
+ }
+
+ /**
+ * Collect information flow as following Input,Output -> [LayerName,Inputs,Outputs]
+ */
+ static def genInputOutputLayerArrayWithFlow(Integer nbr_lay, Model l) {
+ val mi = new ModuleInfo(nbr_lay);
+ // System.err.println(l.base_Class.ownedAttributes+"\n")
+ var int i = 0
+
+
+ for (layer : l.base_Class.ownedAttributes) {
+ var inputList = layer.getTargetDirectedRelationships()
+ var outputList = layer.getSourceDirectedRelationships()
+ System.err.println("name Connection : "+layer.name)
+
+ System.err.println("nbr Connection : "+layer.getTargetDirectedRelationships().length)
+ mi.layersName.set(i, layer.name)
+
+ for (input : inputList) {
+ val inFlow = input as InformationFlow
+
+ mi.layersInput.set(i, inFlow)
+ }
+
+ for (output : outputList) {
+
+ val outFlow = output as InformationFlow
+ mi.layersOutput.set(i, outFlow)
+ }
+ i = i + 1
+ }
+ i = 0
+ System.err.println(mi)
+ System.err.println(mi.layersInput.toList)
+
+ if(GenCheck.findNbrOfInformationFLowMissing(mi)!=0 && GenCheck.findNbrOfInformationFLowPara(l)!=0){
+ return mi
+ }else{
+ return 1
+ }
+
+
+ }
+
+ /**
+ * Sort layers according to informations flows
+ */
+ static def genFlowOrder(Integer nbr_lay, ModuleInfo mi) {
+
+
+ var index_first_layer = mi.genFlowOrderInit // genFlowOrderInit
+ var sorted_layer_indexs = new ArrayList
+ var sorted_layer_names = new ArrayList
+
+ sorted_layer_indexs.add(index_first_layer)
+
+ var i = 1
+ while (i < mi.layersName.toList.length) {
+ index_first_layer = genFlowOrderNext(mi, index_first_layer) // genFlowOrderNext
+ sorted_layer_indexs.add(index_first_layer)
+ i += 1
+ }
+
+ for (u : sorted_layer_indexs) {
+ sorted_layer_names.add(mi.layersName.toList.get(u))
+ System.out.println(mi.layersName.toList.get(u))
+ }
+ return sorted_layer_names
+
+ }
+
+ /**
+ * Collect the first layer according to the information flow
+ */
+ static def genFlowOrderInit(ModuleInfo mi) {
+ // var nbr_layer=mi.layersName.toList.length
+ // System.err.println(mi.layersName.toList.length)
+ var index_first_layer = 0
+
+ for (ell : mi.layersInput) {
+ if (ell === null) { // premiere couche
+ // System.err.println("deb : "+mi.layersName.toList.get(mi.layersInput.indexOf(ell)))
+ index_first_layer = mi.layersInput.indexOf(ell)
+ }
+ }
+ return index_first_layer
+ }
+
+ /**
+ * Collect following layers according to the information flow
+ */
+ static def genFlowOrderNext(ModuleInfo mi, Integer index_first_layer) {
+ var index_next_layer = index_first_layer
+
+ for (el : mi.layersInput) {
+ if (el === mi.layersOutput.toList.get(index_next_layer)) {
+ index_next_layer = mi.layersInput.indexOf(mi.layersOutput.toList.get(index_next_layer))
+ return index_next_layer
+ }
+ }
+ }
+}
diff --git a/aiml/org.eclipse.papyrus.aiml.gen.keras/src/org/eclipse/papyrus/aiml/gen/keras/ModuleInfo.java b/aiml/org.eclipse.papyrus.aiml.gen.keras/src/org/eclipse/papyrus/aiml/gen/keras/ModuleInfo.java
new file mode 100644
index 0000000..43e87b5
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.gen.keras/src/org/eclipse/papyrus/aiml/gen/keras/ModuleInfo.java
@@ -0,0 +1,14 @@
+package org.eclipse.papyrus.aiml.gen.keras;
+
+import org.eclipse.uml2.uml.InformationFlow;
+
+public class ModuleInfo {
+ ModuleInfo (int size) {
+ layersName = new String[size];
+ layersInput = new InformationFlow[size];
+ layersOutput = new InformationFlow[size];
+ }
+ String[] layersName;
+ InformationFlow[] layersInput;
+ InformationFlow[] layersOutput;
+}
diff --git a/aiml/org.eclipse.papyrus.aiml.gen.keras/src/org/eclipse/papyrus/aiml/gen/keras/ModuleInfoAttributes.java b/aiml/org.eclipse.papyrus.aiml.gen.keras/src/org/eclipse/papyrus/aiml/gen/keras/ModuleInfoAttributes.java
new file mode 100644
index 0000000..4c6e4c7
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.gen.keras/src/org/eclipse/papyrus/aiml/gen/keras/ModuleInfoAttributes.java
@@ -0,0 +1,19 @@
+package org.eclipse.papyrus.aiml.gen.keras;
+
+import java.util.ArrayList;
+import java.util.List;
+
+public class ModuleInfoAttributes {
+ ModuleInfoAttributes() {
+ attributesName = new ArrayList<String>();
+ attributesValue =new ArrayList<Object>();
+ attributesType = new ArrayList<String>();
+
+ }
+
+ List<String> attributesName;
+ List<Object> attributesValue;
+ List<String> attributesType;
+
+
+}
diff --git a/aiml/org.eclipse.papyrus.aiml.gen.keras/src/org/eclipse/papyrus/aiml/gen/keras/RecurrentLayerOps.xtend b/aiml/org.eclipse.papyrus.aiml.gen.keras/src/org/eclipse/papyrus/aiml/gen/keras/RecurrentLayerOps.xtend
new file mode 100644
index 0000000..d0f78cf
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.gen.keras/src/org/eclipse/papyrus/aiml/gen/keras/RecurrentLayerOps.xtend
@@ -0,0 +1,110 @@
+package org.eclipse.papyrus.aiml.gen.keras
+
+import org.eclipse.papyrus.aiml.profile.AIML.Recurrent_layers.Recurrent_layers
+
+class RecurrentLayerOps {
+
+
+ static def lstmAttributesToDisplay (Recurrent_layers lay_val){
+ var t = RecurrentLayerOps.lstmAttributesToCollect(lay_val)
+ var attributesNameList=t.attributeNames.toList
+ var attributesValueList=t.attributeValues.toList
+
+
+ var String DisplayInit="self."+lay_val.base_Class.name+"=tf.keras.layers."+lay_val.eClass.name // example : self.lstm1=tf.keras.layers.LSTM
+
+ var Display = "" // Initialization an empty String variable
+ var modificationState=0
+ var in=0
+ for(step : attributesValueList){
+ if( attributesNameList.get(in).equals("hidden_size")){
+ System.err.println(step)
+ var String DisplayHiddenSize = step+','
+ Display+=DisplayHiddenSize //à verifier += au lieu de d=d+a
+ modificationState++
+
+ }
+ in+=1
+ }
+
+ var ind =0
+ for(step : attributesValueList){
+
+ if( GenCheck.isZeroForStringL(step) || GenCheck.isNullOrEmptyForString(step) || GenCheck.isFalseForString(step) ){
+
+ //System.out.print("Rejected : "+attributesNameList.get(ind)+" = "+step+"\n")
+
+ }else{
+ //System.out.print("Valid : "+attributesNameList.get(ind)+" = "+step+"\n")
+
+ if(attributesNameList.get(ind).equals("name") || attributesNameList.get(ind).equals("hidden_size") || attributesNameList.get(ind).equals("num_layers")){
+ }else{
+ if(!attributesNameList.get(ind).endsWith("_pt")){ //filter PyTorch specific attributes
+
+
+ modificationState++
+ if(step.equals("true") || step.equals("false") ){ // correct Boolean value to python boolean with MAJ
+ var String DisplayInit1 = attributesNameList.get(ind)
+
+ if(step.equals("false")){
+ var newstep = "F"+step.substring(1, step.length())
+ var String DisplayStateZero1 = DisplayInit1+'='+newstep+','
+ Display=Display+DisplayStateZero1
+
+ }else{
+ var newstep = "T"+step.substring(1, step.length())
+ var String DisplayStateZero2 = DisplayInit1+'='+newstep+','
+ Display=Display+DisplayStateZero2
+ }
+
+ }else if(attributesNameList.get(ind).equals("input_size")){
+ var String DisplayInit3 = "input_shape"
+ var String DisplayStateZero3 = DisplayInit3+'=['+step+'],'
+ Display=Display+DisplayStateZero3
+
+ }else{
+ var String DisplayInit0 = attributesNameList.get(ind)
+ var String DisplayStateZero0 = DisplayInit0+'='+step+','
+ Display=Display+DisplayStateZero0
+ }
+ }
+ }
+ }
+ ind = ind + 1
+ }
+
+ var displayFinal=""
+
+ if (modificationState!=0){
+ displayFinal=DisplayInit+"("+Display.substring(0, Display.length() - 1)+")"
+ }else{
+ displayFinal=DisplayInit //Non optimal _ recuperer la valeur
+ }
+
+ return displayFinal
+ }
+
+ static def lstmAttributesToCollect (Recurrent_layers lay_val){
+
+ val nbrOfAttributes=lay_val.eClass.EAllAttributes.length // Get the quantity of attributes
+
+ var layerInformations = new LayerInfo(nbrOfAttributes) // Call LayerInformation Constructor to build 2D Array
+
+ var attributesNameList = layerInformations.attributeNames // Dispatch attributesNames from LayerInformation in a List
+ var attributesValueList = layerInformations.attributeValues // Dispatch attributesValues from LayerInformation in a List
+
+ var l=0 // Index initialization for the incremental loop
+ for (valu : lay_val.eClass.EAllAttributes){ // Loop which will collect Attribute Names and Attribute Values for Layers
+
+ var attri_name=valu.name // Variable instance for attribute name for each elements in the loop
+ attributesNameList.set(l,attri_name) // Add attribute name in the list
+
+ var attri_val=lay_val.eGet(valu) // Variable instance for attribute values for each elements in the loop and String conversion
+ attributesValueList.set(l,String.valueOf(attri_val)) // Add attribute value in the list
+
+ l=l+1 // Index incrementation +1 during loop
+
+ }
+ return layerInformations // return LayerInfo object [Name,Value]
+ }
+}
\ No newline at end of file
diff --git a/aiml/org.eclipse.papyrus.aiml.gen.keras/src/org/eclipse/papyrus/aiml/gen/keras/transformation/KerasModelElementsCreator.java b/aiml/org.eclipse.papyrus.aiml.gen.keras/src/org/eclipse/papyrus/aiml/gen/keras/transformation/KerasModelElementsCreator.java
new file mode 100644
index 0000000..c51265a
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.gen.keras/src/org/eclipse/papyrus/aiml/gen/keras/transformation/KerasModelElementsCreator.java
@@ -0,0 +1,71 @@
+/*******************************************************************************
+ * Copyright (c) 2016 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License 2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ * Ansgar Radermacher - Initial API and implementation
+ *******************************************************************************/
+
+package org.eclipse.papyrus.aiml.gen.keras.transformation;
+
+import org.eclipse.core.resources.IProject;
+import org.eclipse.core.runtime.IProgressMonitor;
+import org.eclipse.papyrus.aiml.gen.keras.GenKeras;
+import org.eclipse.papyrus.aiml.profile.AIML.Module.Model;
+import org.eclipse.papyrus.designer.languages.common.base.HierarchyLocationStrategy;
+import org.eclipse.papyrus.designer.languages.common.base.ModelElementsCreator;
+import org.eclipse.papyrus.designer.languages.common.base.file.FileSystemAccessFactory;
+import org.eclipse.uml2.uml.Class;
+import org.eclipse.uml2.uml.Classifier;
+import org.eclipse.uml2.uml.Element;
+import org.eclipse.uml2.uml.PackageableElement;
+import org.eclipse.uml2.uml.util.UMLUtil;
+
+public class KerasModelElementsCreator extends ModelElementsCreator {
+
+ private static final String PYTHON_LANG = "python"; //$NON-NLS-1$
+
+ private boolean done = false ;
+
+ public KerasModelElementsCreator(IProject project) {
+ this(project, PYTHON_LANG);
+ }
+
+ public KerasModelElementsCreator(IProject project, String language) {
+ super(FileSystemAccessFactory.create(project), new HierarchyLocationStrategy(), language);
+ this.project = project;
+ pythonExt = "py"; //$NON-NLS-1$
+ }
+
+ protected String pythonExt;
+
+ @Override
+ protected boolean noCodeGen(Element element) {
+ return false;
+ }
+
+ @Override
+ protected void createPackageableElementFile(PackageableElement pe, IProgressMonitor monitor) {
+ if (pe instanceof Classifier) {
+ Classifier classifier = (Classifier) pe;
+ final String fileName = locStrategy.getFileName(classifier) + "." + pythonExt; //$NON-NLS-1$
+ String result = ""; //$NON-NLS-1$
+ if (classifier instanceof Class) {
+ Model dc = UMLUtil.getStereotypeApplication(pe, Model.class);
+ if (!done && dc.getClass().getName().contains("Model") ) {
+ result = GenKeras.genKeras((Class) classifier).toString();
+ fileSystemAccess.generateFile(fileName, result);
+ done = true;
+ }else{
+ //System.err.print(dc);
+ }
+ }
+ }
+ }
+}
diff --git a/aiml/org.eclipse.papyrus.aiml.gen.keras/xtend-gen/org/eclipse/papyrus/aiml/gen/keras/GenCheck.java b/aiml/org.eclipse.papyrus.aiml.gen.keras/xtend-gen/org/eclipse/papyrus/aiml/gen/keras/GenCheck.java
new file mode 100644
index 0000000..dcd335b
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.gen.keras/xtend-gen/org/eclipse/papyrus/aiml/gen/keras/GenCheck.java
@@ -0,0 +1,107 @@
+package org.eclipse.papyrus.aiml.gen.keras;
+
+import java.util.HashSet;
+import java.util.List;
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.jface.dialogs.MessageDialog;
+import org.eclipse.papyrus.aiml.gen.keras.ModuleInfo;
+import org.eclipse.papyrus.aiml.profile.AIML.Module.Model;
+import org.eclipse.swt.widgets.Display;
+import org.eclipse.uml2.uml.InformationFlow;
+import org.eclipse.uml2.uml.Property;
+import org.eclipse.xtext.xbase.lib.Conversions;
+import org.eclipse.xtext.xbase.lib.IterableExtensions;
+
+@SuppressWarnings("all")
+public class GenCheck {
+ /**
+ * return true if Null for each type
+ */
+ public static boolean isNull(final Object value) {
+ return (value == null);
+ }
+
+ /**
+ * return true if Null for each type
+ */
+ public static boolean isFalseBoolean(final Boolean value) {
+ boolean _booleanValue = value.booleanValue();
+ return (Boolean.valueOf(_booleanValue) == Boolean.FALSE);
+ }
+
+ /**
+ * return true if Null or string value is empty
+ */
+ public static boolean isNullOrEmptyForString(final String value) {
+ return (((value == null) || (value.length() == 0)) || (value == "null"));
+ }
+
+ public static boolean isZeroForString(final String value) {
+ return ((value == "0.0") || (value == "0"));
+ }
+
+ public static boolean isZeroForStringL(final String value) {
+ return (value.equals("0.0") || value.equals("0"));
+ }
+
+ /**
+ * return true if string value is equal to false
+ */
+ public static boolean isFalseForString(final String value) {
+ return ((value != null) && value.equals("false"));
+ }
+
+ /**
+ * collect the number of layers in the model
+ */
+ public static int findNbrOfLayer(final Model l) {
+ int nbr_lay = 0;
+ EList<Property> _ownedAttributes = l.getBase_Class().getOwnedAttributes();
+ for (final Property layer : _ownedAttributes) {
+ {
+ l.getClass().getSimpleName();
+ nbr_lay = (nbr_lay + 1);
+ }
+ }
+ return nbr_lay;
+ }
+
+ public static int findNbrOfInformationFLowPara(final Model l) {
+ int nbrInformationFlowFinal = 0;
+ int nbrInformationFlowByLayer = 0;
+ EList<Property> _ownedAttributes = l.getBase_Class().getOwnedAttributes();
+ for (final Property layer : _ownedAttributes) {
+ {
+ nbrInformationFlowByLayer = ((Object[])Conversions.unwrapArray(layer.getTargetDirectedRelationships(), Object.class)).length;
+ if ((nbrInformationFlowByLayer > nbrInformationFlowFinal)) {
+ nbrInformationFlowFinal = nbrInformationFlowByLayer;
+ }
+ }
+ }
+ if ((nbrInformationFlowFinal > 1)) {
+ MessageDialog.openWarning(Display.getCurrent().getActiveShell(), "Warning Message : InformationFlow ",
+ "NOT SUPPORTED : InformationFLow parallelization (Double entry) ");
+ return 0;
+ } else {
+ return 1;
+ }
+ }
+
+ public static int findNbrOfInformationFLowMissing(final ModuleInfo mi) {
+ List<InformationFlow> _list = IterableExtensions.<InformationFlow>toList(((Iterable<InformationFlow>)Conversions.doWrapArray(mi.layersInput)));
+ String _plus = ("module info list : " + _list);
+ System.err.println(_plus);
+ HashSet hs = new HashSet<String>();
+ hs.addAll(IterableExtensions.<Object>toList(((Iterable<Object>)Conversions.doWrapArray(mi.layersInput))));
+ int _size = IterableExtensions.<InformationFlow>toList(((Iterable<InformationFlow>)Conversions.doWrapArray(mi.layersInput))).size();
+ int _size_1 = hs.size();
+ int totalDuplicates = (_size - _size_1);
+ if ((totalDuplicates != 0)) {
+ MessageDialog.openWarning(Display.getCurrent().getActiveShell(), "Warning Message : InformationFlow ",
+ "NOT SUPPORTED : Missing InformationFlow Connection");
+ return 0;
+ } else {
+ return 1;
+ }
+ }
+}
diff --git a/aiml/org.eclipse.papyrus.aiml.gen.keras/xtend-gen/org/eclipse/papyrus/aiml/gen/keras/GenKeras.java b/aiml/org.eclipse.papyrus.aiml.gen.keras/xtend-gen/org/eclipse/papyrus/aiml/gen/keras/GenKeras.java
new file mode 100644
index 0000000..8f93b08
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.gen.keras/xtend-gen/org/eclipse/papyrus/aiml/gen/keras/GenKeras.java
@@ -0,0 +1,362 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse License 2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ * Abhishek Djeachandrane - Initial API and implementation
+ */
+package org.eclipse.papyrus.aiml.gen.keras;
+
+import java.util.ArrayList;
+import java.util.List;
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.papyrus.aiml.gen.keras.GenCheck;
+import org.eclipse.papyrus.aiml.gen.keras.ModelOps;
+import org.eclipse.papyrus.aiml.gen.keras.ModuleInfo;
+import org.eclipse.papyrus.aiml.gen.keras.ModuleInfoAttributes;
+import org.eclipse.papyrus.aiml.gen.keras.RecurrentLayerOps;
+import org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution_layers;
+import org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.Linear;
+import org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.Linear_layers;
+import org.eclipse.papyrus.aiml.profile.AIML.Module.Model;
+import org.eclipse.papyrus.aiml.profile.AIML.Recurrent_layers.GRU;
+import org.eclipse.papyrus.aiml.profile.AIML.Recurrent_layers.LSTM;
+import org.eclipse.papyrus.aiml.profile.AIML.Recurrent_layers.Recurrent_layers;
+import org.eclipse.papyrus.aiml.profile.AIML.Tensor.Tensor;
+import org.eclipse.uml2.uml.Connector;
+import org.eclipse.uml2.uml.Property;
+import org.eclipse.uml2.uml.Type;
+import org.eclipse.uml2.uml.util.UMLUtil;
+import org.eclipse.xtend2.lib.StringConcatenation;
+import org.eclipse.xtext.xbase.lib.Conversions;
+import org.eclipse.xtext.xbase.lib.IterableExtensions;
+import org.eclipse.xtext.xbase.lib.StringExtensions;
+
+@SuppressWarnings("all")
+public class GenKeras {
+ public static CharSequence genKeras(final org.eclipse.uml2.uml.Class clazz) {
+ final Model module = UMLUtil.<Model>getStereotypeApplication(clazz, Model.class);
+ if ((module != null)) {
+ return GenKeras.genModule(module);
+ } else {
+ return "";
+ }
+ }
+
+ /**
+ * Generate a model with different elements necessary for the compilation
+ */
+ public static CharSequence genModule(final Model module) {
+ StringConcatenation _builder = new StringConcatenation();
+ CharSequence _genDefaultTemplate = GenKeras.genDefaultTemplate(module);
+ _builder.append(_genDefaultTemplate);
+ _builder.newLineIfNotEmpty();
+ _builder.newLine();
+ CharSequence _genModuleInit = GenKeras.genModuleInit(module);
+ _builder.append(_genModuleInit);
+ _builder.newLineIfNotEmpty();
+ _builder.newLine();
+ _builder.append("\t");
+ CharSequence _genModuleCall = GenKeras.genModuleCall(module);
+ _builder.append(_genModuleCall, "\t");
+ _builder.newLineIfNotEmpty();
+ _builder.newLine();
+ CharSequence _genModuleCompilation = GenKeras.genModuleCompilation(module);
+ _builder.append(_genModuleCompilation);
+ _builder.newLineIfNotEmpty();
+ _builder.newLine();
+ _builder.newLine();
+ _builder.newLine();
+ _builder.newLine();
+ _builder.newLine();
+ return _builder;
+ }
+
+ /**
+ * Generate the model instance and compilation
+ */
+ public static CharSequence genModuleCompilation(final Model module) {
+ StringConcatenation _builder = new StringConcatenation();
+ String _firstLower = StringExtensions.toFirstLower(module.getBase_Class().getName());
+ _builder.append(_firstLower);
+ _builder.append(" = ");
+ String _name = module.getBase_Class().getName();
+ _builder.append(_name);
+ _builder.append("()");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t\t");
+ ModuleInfoAttributes study = ModelOps.modelAttributesToCollectProperly(module);
+ _builder.newLineIfNotEmpty();
+ List<String> _list = IterableExtensions.<String>toList(study.attributesName);
+ _builder.append(_list);
+ _builder.newLineIfNotEmpty();
+ List<Object> _list_1 = IterableExtensions.<Object>toList(study.attributesValue);
+ _builder.append(_list_1);
+ _builder.newLineIfNotEmpty();
+ List<String> _list_2 = IterableExtensions.<String>toList(study.attributesType);
+ _builder.append(_list_2);
+ _builder.newLineIfNotEmpty();
+ {
+ List<Object> _list_3 = IterableExtensions.<Object>toList(study.attributesValue);
+ for(final Object n : _list_3) {
+ _builder.newLine();
+ }
+ }
+ String study2 = ModelOps.modelAttributesToDisplayForCompilationProperly(module);
+ _builder.newLineIfNotEmpty();
+ _builder.append(study2);
+ _builder.newLineIfNotEmpty();
+ return _builder;
+ }
+
+ /**
+ * Generate the basic template with importation in the head of the code
+ */
+ public static CharSequence genDefaultTemplate(final Model module) {
+ StringConcatenation _builder = new StringConcatenation();
+ _builder.append("# generated by Papyrus from module ");
+ Class<? extends org.eclipse.uml2.uml.Class> _class = module.getBase_Class().getClass();
+ _builder.append(_class);
+ _builder.newLineIfNotEmpty();
+ _builder.newLine();
+ _builder.append("import tensorflow as tf");
+ _builder.newLine();
+ _builder.append("from tensorflow import keras");
+ _builder.newLine();
+ _builder.append("inputs=[(1,2),(3,4)]");
+ _builder.newLine();
+ return _builder;
+ }
+
+ /**
+ * Generate layer instance through modeling
+ */
+ public static CharSequence genModuleInit(final Model module) {
+ StringConcatenation _builder = new StringConcatenation();
+ _builder.append("class ");
+ String _name = module.getBase_Class().getName();
+ _builder.append(_name);
+ _builder.append("(tf.keras.Model):");
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t");
+ _builder.append("def __init__(self):");
+ _builder.newLine();
+ _builder.append("\t\t");
+ _builder.append("super(MyModel, self).__init__()");
+ _builder.newLine();
+ _builder.append("\t\t");
+ _builder.newLine();
+ {
+ EList<Property> _ownedAttributes = module.getBase_Class().getOwnedAttributes();
+ for(final Property layer : _ownedAttributes) {
+ _builder.append("\t\t");
+ final Type type = layer.getType();
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t\t");
+ final Model layerSt = UMLUtil.<Model>getStereotypeApplication(type, Model.class);
+ _builder.newLineIfNotEmpty();
+ _builder.append("\t\t");
+ CharSequence _genLayer = GenKeras.genLayer(layerSt);
+ _builder.append(_genLayer, "\t\t");
+ _builder.newLineIfNotEmpty();
+ }
+ }
+ {
+ EList<Connector> _ownedConnectors = module.getBase_Class().getOwnedConnectors();
+ for(final Connector connector : _ownedConnectors) {
+ }
+ }
+ return _builder;
+ }
+
+ /**
+ * Generate the code which consist to determine the data flow between layers
+ * @param l the model ...
+ */
+ public static CharSequence genModuleCall(final Model module) {
+ StringConcatenation _builder = new StringConcatenation();
+ _builder.append("def call(self, inputs):");
+ _builder.newLine();
+ _builder.newLine();
+ int nbr_lay = GenCheck.findNbrOfLayer(module);
+ _builder.newLineIfNotEmpty();
+ Object unsortedInformationFlowList = ModelOps.genInputOutputLayerArrayWithFlow(Integer.valueOf(nbr_lay), module);
+ _builder.newLineIfNotEmpty();
+ _builder.newLine();
+ {
+ if ((unsortedInformationFlowList instanceof ModuleInfo)) {
+ ArrayList<String> sortedInformationFlowList = ModelOps.genFlowOrder(Integer.valueOf(nbr_lay), ((ModuleInfo)unsortedInformationFlowList));
+ _builder.newLineIfNotEmpty();
+ {
+ List<String> _list = IterableExtensions.<String>toList(sortedInformationFlowList);
+ for(final String layer : _list) {
+ _builder.append("\t");
+ int _indexOf = IterableExtensions.<String>toList(sortedInformationFlowList).indexOf(layer);
+ int inputs = (_indexOf - 1);
+ _builder.newLineIfNotEmpty();
+ {
+ if ((inputs < 0)) {
+ _builder.append("\t");
+ _builder.append("x");
+ int _indexOf_1 = IterableExtensions.<String>toList(sortedInformationFlowList).indexOf(layer);
+ _builder.append(_indexOf_1, "\t");
+ _builder.append(" = self.");
+ _builder.append(layer, "\t");
+ _builder.append("(input)");
+ _builder.newLineIfNotEmpty();
+ } else {
+ if (((inputs >= 0) && (inputs < (((Object[])Conversions.unwrapArray(sortedInformationFlowList, Object.class)).length - 2)))) {
+ _builder.append("\t");
+ _builder.append("x");
+ int _indexOf_2 = IterableExtensions.<String>toList(sortedInformationFlowList).indexOf(layer);
+ _builder.append(_indexOf_2, "\t");
+ _builder.append(" = self.");
+ _builder.append(layer, "\t");
+ _builder.append("(x");
+ _builder.append(inputs, "\t");
+ _builder.append(")");
+ _builder.newLineIfNotEmpty();
+ } else {
+ final ArrayList<String> _converted_sortedInformationFlowList = (ArrayList<String>)sortedInformationFlowList;
+ int _length = ((Object[])Conversions.unwrapArray(_converted_sortedInformationFlowList, Object.class)).length;
+ int _minus = (_length - 2);
+ boolean _equals = (inputs == _minus);
+ if (_equals) {
+ _builder.append("\t");
+ _builder.append("output = self.");
+ _builder.append(layer, "\t");
+ _builder.append("(x");
+ _builder.append(inputs, "\t");
+ _builder.append(")");
+ _builder.newLineIfNotEmpty();
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ _builder.append("\t");
+ _builder.append("return output\t\t");
+ _builder.newLine();
+ return _builder;
+ }
+
+ /**
+ * Generate each layer according to the model
+ */
+ public static CharSequence genLayer(final Model layer) {
+ CharSequence _xifexpression = null;
+ if ((layer instanceof Convolution_layers)) {
+ _xifexpression = GenKeras.genConvolutionLayer(((Convolution_layers) layer));
+ } else {
+ CharSequence _xifexpression_1 = null;
+ if ((layer instanceof Recurrent_layers)) {
+ _xifexpression_1 = GenKeras.genRecurrentLayer(((Recurrent_layers) layer));
+ } else {
+ CharSequence _xifexpression_2 = null;
+ if ((layer instanceof Linear_layers)) {
+ _xifexpression_2 = GenKeras.genLinearLayer(((Linear_layers) layer));
+ }
+ _xifexpression_1 = _xifexpression_2;
+ }
+ _xifexpression = _xifexpression_1;
+ }
+ return _xifexpression;
+ }
+
+ /**
+ * Generate each convolution layer according to the model
+ */
+ public static CharSequence genConvolutionLayer(final Convolution_layers convolutionLayer) {
+ StringConcatenation _builder = new StringConcatenation();
+ return _builder;
+ }
+
+ /**
+ * Generate each linear layer according to the model
+ */
+ public static CharSequence genLinearLayer(final Linear_layers linearLayer) {
+ CharSequence _xifexpression = null;
+ if ((linearLayer instanceof Linear)) {
+ _xifexpression = GenKeras.genDense(((Linear) linearLayer));
+ }
+ return _xifexpression;
+ }
+
+ /**
+ * Generate each recurrent layer according to the model
+ */
+ public static CharSequence genRecurrentLayer(final Recurrent_layers recurrentLayer) {
+ CharSequence _xifexpression = null;
+ if ((recurrentLayer instanceof LSTM)) {
+ _xifexpression = GenKeras.genLstm(((LSTM) recurrentLayer));
+ } else {
+ CharSequence _xifexpression_1 = null;
+ if ((recurrentLayer instanceof GRU)) {
+ _xifexpression_1 = GenKeras.genGru(((GRU) recurrentLayer));
+ }
+ _xifexpression = _xifexpression_1;
+ }
+ return _xifexpression;
+ }
+
+ /**
+ * Generate each dense layer according to the model
+ */
+ public static CharSequence genDense(final Linear denseLayer) {
+ StringConcatenation _builder = new StringConcatenation();
+ _builder.append("self.");
+ String _name = denseLayer.getBase_Class().getName();
+ _builder.append(_name);
+ _builder.append("=tf.keras.layers.Dense(");
+ int _in_features = denseLayer.getIn_features();
+ _builder.append(_in_features);
+ _builder.append(")");
+ _builder.newLineIfNotEmpty();
+ return _builder;
+ }
+
+ /**
+ * Generate each LSTM layer according to the model
+ */
+ public static CharSequence genLstm(final LSTM lstmLayer) {
+ StringConcatenation _builder = new StringConcatenation();
+ _builder.append("\t\t\t\t\t\t\t\t\t\t\t\t");
+ String tt = RecurrentLayerOps.lstmAttributesToDisplay(lstmLayer);
+ _builder.newLineIfNotEmpty();
+ _builder.append(tt);
+ _builder.newLineIfNotEmpty();
+ return _builder;
+ }
+
+ /**
+ * Generate each GRU layer according to the model
+ */
+ public static CharSequence genGru(final GRU gruLayer) {
+ StringConcatenation _builder = new StringConcatenation();
+ _builder.append("\t\t\t\t");
+ String tt = RecurrentLayerOps.lstmAttributesToDisplay(gruLayer);
+ _builder.newLineIfNotEmpty();
+ _builder.append(tt);
+ _builder.newLineIfNotEmpty();
+ return _builder;
+ }
+
+ /**
+ * Generate each tensor according to the model
+ */
+ public static CharSequence genTensor(final Tensor tensor) {
+ StringConcatenation _builder = new StringConcatenation();
+ _builder.append("tensor ...");
+ _builder.newLine();
+ return _builder;
+ }
+}
diff --git a/aiml/org.eclipse.papyrus.aiml.gen.keras/xtend-gen/org/eclipse/papyrus/aiml/gen/keras/ModelOps.java b/aiml/org.eclipse.papyrus.aiml.gen.keras/xtend-gen/org/eclipse/papyrus/aiml/gen/keras/ModelOps.java
new file mode 100644
index 0000000..39a3b71
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.gen.keras/xtend-gen/org/eclipse/papyrus/aiml/gen/keras/ModelOps.java
@@ -0,0 +1,245 @@
+package org.eclipse.papyrus.aiml.gen.keras;
+
+import java.util.ArrayList;
+import java.util.List;
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EClassifier;
+import org.eclipse.papyrus.aiml.gen.keras.GenCheck;
+import org.eclipse.papyrus.aiml.gen.keras.ModuleInfo;
+import org.eclipse.papyrus.aiml.gen.keras.ModuleInfoAttributes;
+import org.eclipse.papyrus.aiml.profile.AIML.Module.Model;
+import org.eclipse.uml2.uml.DirectedRelationship;
+import org.eclipse.uml2.uml.InformationFlow;
+import org.eclipse.uml2.uml.Property;
+import org.eclipse.xtext.xbase.lib.Conversions;
+import org.eclipse.xtext.xbase.lib.IterableExtensions;
+import org.eclipse.xtext.xbase.lib.StringExtensions;
+
+/**
+ * Composing each functions needed to compute the model : _init_ and _call_
+ */
+@SuppressWarnings("all")
+public class ModelOps {
+ public static ModuleInfoAttributes modelAttributesToCollectProperly(final Model mod_val) {
+ ModuleInfoAttributes mi = new ModuleInfoAttributes();
+ EList<EAttribute> _eAllAttributes = mod_val.eClass().getEAllAttributes();
+ for (final EAttribute value : _eAllAttributes) {
+ {
+ String attri_name = value.getName();
+ mi.attributesName.add(attri_name);
+ Object attri_val = mod_val.eGet(value);
+ mi.attributesValue.add(attri_val);
+ EClassifier attri_type = value.getEType();
+ mi.attributesType.add(value.getEType().getInstanceClassName());
+ boolean _isAssignableFrom = attri_type.getInstanceClass().isAssignableFrom(Float.class);
+ if (_isAssignableFrom) {
+ }
+ }
+ }
+ return mi;
+ }
+
+ /**
+ * Select model attributes to display for the compilation
+ */
+ public static String modelAttributesToDisplayForCompilationProperly(final Model mod) {
+ final ModuleInfoAttributes attributes = ModelOps.modelAttributesToCollectProperly(mod);
+ List<String> name_attrib = IterableExtensions.<String>toList(attributes.attributesName);
+ List<Object> val_attrib = IterableExtensions.<Object>toList(attributes.attributesValue);
+ String _firstLower = StringExtensions.toFirstLower(mod.getBase_Class().getName());
+ String Display = (_firstLower + ".compile(");
+ int increm = 0;
+ for (final Object step : val_attrib) {
+ {
+ boolean _equals = name_attrib.get(increm).equals("name");
+ boolean _not = (!_equals);
+ if (_not) {
+ if ((step instanceof String)) {
+ System.out.println("String ok");
+ if (((!GenCheck.isZeroForString(((String)step))) && (!GenCheck.isNullOrEmptyForString(((String)step))))) {
+ String DisplayInit = name_attrib.get(increm);
+ String DisplayStateZero = (((DisplayInit + "=\"") + ((String)step)) + "\",");
+ Display = (Display + DisplayStateZero);
+ }
+ } else {
+ if ((step instanceof Boolean)) {
+ System.out.println("Boolean ok");
+ if (((!GenCheck.isFalseBoolean(((Boolean)step))) && (!GenCheck.isNull(step)))) {
+ System.out.println("RRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR");
+ String DisplayInit_1 = name_attrib.get(increm);
+ String DisplayStateZero_1 = (((DisplayInit_1 + "=\"") + step) + "\",");
+ Display = (Display + DisplayStateZero_1);
+ }
+ }
+ }
+ }
+ int _increm = increm;
+ increm = (_increm + 1);
+ }
+ }
+ int _length = Display.length();
+ int _minus = (_length - 1);
+ String _substring = Display.substring(0, _minus);
+ String _plus = (_substring + ")");
+ Display = _plus;
+ return Display;
+ }
+
+ /**
+ * Collect model attributes for the compilation step
+ */
+ public static String[][] modelAttributesToCollect(final Model mod_val) {
+ EList<EClass> type = mod_val.eClass().getESuperTypes();
+ int l = 0;
+ String[] namelisted = new String[((Object[])Conversions.unwrapArray(mod_val.eClass().getEAllAttributes(), Object.class)).length];
+ String[] vallisted = new String[((Object[])Conversions.unwrapArray(mod_val.eClass().getEAllAttributes(), Object.class)).length];
+ String[] typelisted = new String[((Object[])Conversions.unwrapArray(mod_val.eClass().getEAllAttributes(), Object.class)).length];
+ String[][] shades = new String[((Object[])Conversions.unwrapArray(mod_val.eClass().getEAllAttributes(), Object.class)).length][
+ ((Object[])Conversions.unwrapArray(mod_val.eClass().getEAllAttributes(), Object.class)).length];
+ EList<EAttribute> _eAllAttributes = mod_val.eClass().getEAllAttributes();
+ for (final EAttribute valu : _eAllAttributes) {
+ {
+ l = (l + 1);
+ int d = (l - 1);
+ String attri_name = valu.getName();
+ namelisted[d] = attri_name;
+ boolean _isNullOrEmptyForString = GenCheck.isNullOrEmptyForString(String.valueOf(mod_val.eGet(valu)));
+ boolean _not = (!_isNullOrEmptyForString);
+ if (_not) {
+ final String attri_type = mod_val.eGet(valu).getClass().getSimpleName();
+ typelisted[d] = attri_type;
+ Object attri_val = mod_val.eGet(valu);
+ vallisted[d] = String.valueOf(attri_val);
+ final String[][] shade = { namelisted, vallisted };
+ shades = shade;
+ } else {
+ }
+ }
+ }
+ return shades;
+ }
+
+ /**
+ * Select model attributes to display for the compilation
+ */
+ public static String modelAttributesToDisplayForCompilation(final Model mod) {
+ final String[][] attributes = ModelOps.modelAttributesToCollect(mod);
+ List<String> name_attrib = IterableExtensions.<String>toList(((Iterable<String>)Conversions.doWrapArray(attributes[0])));
+ List<String> val_attrib = IterableExtensions.<String>toList(((Iterable<String>)Conversions.doWrapArray(attributes[1])));
+ String _firstLower = StringExtensions.toFirstLower(mod.getBase_Class().getName());
+ String Display = (_firstLower + ".compile(");
+ for (final String step : val_attrib) {
+ if ((((!GenCheck.isZeroForString(step)) || (!GenCheck.isNullOrEmptyForString(step))) || (!name_attrib.get(val_attrib.indexOf(step)).equals("name")))) {
+ String DisplayInit = name_attrib.get(val_attrib.indexOf(step));
+ String DisplayStateZero = (((DisplayInit + "=\"") + step) + "\",");
+ Display = (Display + DisplayStateZero);
+ }
+ }
+ int _length = Display.length();
+ int _minus = (_length - 1);
+ String _substring = Display.substring(0, _minus);
+ String _plus = (_substring + ")");
+ Display = _plus;
+ return Display;
+ }
+
+ /**
+ * Collect information flow as following Input,Output -> [LayerName,Inputs,Outputs]
+ */
+ public static Object genInputOutputLayerArrayWithFlow(final Integer nbr_lay, final Model l) {
+ final ModuleInfo mi = new ModuleInfo((nbr_lay).intValue());
+ int i = 0;
+ EList<Property> _ownedAttributes = l.getBase_Class().getOwnedAttributes();
+ for (final Property layer : _ownedAttributes) {
+ {
+ EList<DirectedRelationship> inputList = layer.getTargetDirectedRelationships();
+ EList<DirectedRelationship> outputList = layer.getSourceDirectedRelationships();
+ String _name = layer.getName();
+ String _plus = ("name Connection : " + _name);
+ System.err.println(_plus);
+ int _length = ((Object[])Conversions.unwrapArray(layer.getTargetDirectedRelationships(), Object.class)).length;
+ String _plus_1 = ("nbr Connection : " + Integer.valueOf(_length));
+ System.err.println(_plus_1);
+ mi.layersName[i] = layer.getName();
+ for (final DirectedRelationship input : inputList) {
+ {
+ final InformationFlow inFlow = ((InformationFlow) input);
+ mi.layersInput[i] = inFlow;
+ }
+ }
+ for (final DirectedRelationship output : outputList) {
+ {
+ final InformationFlow outFlow = ((InformationFlow) output);
+ mi.layersOutput[i] = outFlow;
+ }
+ }
+ i = (i + 1);
+ }
+ }
+ i = 0;
+ System.err.println(mi);
+ System.err.println(IterableExtensions.<InformationFlow>toList(((Iterable<InformationFlow>)Conversions.doWrapArray(mi.layersInput))));
+ if (((GenCheck.findNbrOfInformationFLowMissing(mi) != 0) && (GenCheck.findNbrOfInformationFLowPara(l) != 0))) {
+ return mi;
+ } else {
+ return Integer.valueOf(1);
+ }
+ }
+
+ /**
+ * Sort layers according to informations flows
+ */
+ public static ArrayList<String> genFlowOrder(final Integer nbr_lay, final ModuleInfo mi) {
+ int index_first_layer = ModelOps.genFlowOrderInit(mi);
+ ArrayList<Integer> sorted_layer_indexs = new ArrayList<Integer>();
+ ArrayList<String> sorted_layer_names = new ArrayList<String>();
+ sorted_layer_indexs.add(Integer.valueOf(index_first_layer));
+ int i = 1;
+ while ((i < ((Object[])Conversions.unwrapArray(IterableExtensions.<String>toList(((Iterable<String>)Conversions.doWrapArray(mi.layersName))), Object.class)).length)) {
+ {
+ index_first_layer = (ModelOps.genFlowOrderNext(mi, Integer.valueOf(index_first_layer))).intValue();
+ sorted_layer_indexs.add(Integer.valueOf(index_first_layer));
+ int _i = i;
+ i = (_i + 1);
+ }
+ }
+ for (final Integer u : sorted_layer_indexs) {
+ {
+ sorted_layer_names.add(IterableExtensions.<String>toList(((Iterable<String>)Conversions.doWrapArray(mi.layersName))).get((u).intValue()));
+ System.out.println(IterableExtensions.<String>toList(((Iterable<String>)Conversions.doWrapArray(mi.layersName))).get((u).intValue()));
+ }
+ }
+ return sorted_layer_names;
+ }
+
+ /**
+ * Collect the first layer according to the information flow
+ */
+ public static int genFlowOrderInit(final ModuleInfo mi) {
+ int index_first_layer = 0;
+ for (final InformationFlow ell : mi.layersInput) {
+ if ((ell == null)) {
+ index_first_layer = ((List<InformationFlow>)Conversions.doWrapArray(mi.layersInput)).indexOf(ell);
+ }
+ }
+ return index_first_layer;
+ }
+
+ /**
+ * Collect following layers according to the information flow
+ */
+ public static Integer genFlowOrderNext(final ModuleInfo mi, final Integer index_first_layer) {
+ Integer index_next_layer = index_first_layer;
+ for (final InformationFlow el : mi.layersInput) {
+ InformationFlow _get = IterableExtensions.<InformationFlow>toList(((Iterable<InformationFlow>)Conversions.doWrapArray(mi.layersOutput))).get((index_next_layer).intValue());
+ boolean _tripleEquals = (el == _get);
+ if (_tripleEquals) {
+ index_next_layer = Integer.valueOf(((List<InformationFlow>)Conversions.doWrapArray(mi.layersInput)).indexOf(IterableExtensions.<InformationFlow>toList(((Iterable<InformationFlow>)Conversions.doWrapArray(mi.layersOutput))).get((index_next_layer).intValue())));
+ return index_next_layer;
+ }
+ }
+ return null;
+ }
+}
diff --git a/aiml/org.eclipse.papyrus.aiml.gen.keras/xtend-gen/org/eclipse/papyrus/aiml/gen/keras/RecurrentLayerOps.java b/aiml/org.eclipse.papyrus.aiml.gen.keras/xtend-gen/org/eclipse/papyrus/aiml/gen/keras/RecurrentLayerOps.java
new file mode 100644
index 0000000..55d165d
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.gen.keras/xtend-gen/org/eclipse/papyrus/aiml/gen/keras/RecurrentLayerOps.java
@@ -0,0 +1,115 @@
+package org.eclipse.papyrus.aiml.gen.keras;
+
+import java.util.List;
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.papyrus.aiml.gen.keras.GenCheck;
+import org.eclipse.papyrus.aiml.gen.keras.LayerInfo;
+import org.eclipse.papyrus.aiml.profile.AIML.Recurrent_layers.Recurrent_layers;
+import org.eclipse.xtext.xbase.lib.Conversions;
+import org.eclipse.xtext.xbase.lib.IterableExtensions;
+
+@SuppressWarnings("all")
+public class RecurrentLayerOps {
+ public static String lstmAttributesToDisplay(final Recurrent_layers lay_val) {
+ LayerInfo t = RecurrentLayerOps.lstmAttributesToCollect(lay_val);
+ List<String> attributesNameList = IterableExtensions.<String>toList(((Iterable<String>)Conversions.doWrapArray(t.attributeNames)));
+ List<String> attributesValueList = IterableExtensions.<String>toList(((Iterable<String>)Conversions.doWrapArray(t.attributeValues)));
+ String _name = lay_val.getBase_Class().getName();
+ String _plus = ("self." + _name);
+ String _plus_1 = (_plus + "=tf.keras.layers.");
+ String _name_1 = lay_val.eClass().getName();
+ String DisplayInit = (_plus_1 + _name_1);
+ String Display = "";
+ int modificationState = 0;
+ int in = 0;
+ for (final String step : attributesValueList) {
+ {
+ boolean _equals = attributesNameList.get(in).equals("hidden_size");
+ if (_equals) {
+ System.err.println(step);
+ String DisplayHiddenSize = (step + ",");
+ String _Display = Display;
+ Display = (_Display + DisplayHiddenSize);
+ modificationState++;
+ }
+ int _in = in;
+ in = (_in + 1);
+ }
+ }
+ int ind = 0;
+ for (final String step_1 : attributesValueList) {
+ {
+ if (((GenCheck.isZeroForStringL(step_1) || GenCheck.isNullOrEmptyForString(step_1)) || GenCheck.isFalseForString(step_1))) {
+ } else {
+ if (((attributesNameList.get(ind).equals("name") || attributesNameList.get(ind).equals("hidden_size")) || attributesNameList.get(ind).equals("num_layers"))) {
+ } else {
+ boolean _endsWith = attributesNameList.get(ind).endsWith("_pt");
+ boolean _not = (!_endsWith);
+ if (_not) {
+ modificationState++;
+ if ((step_1.equals("true") || step_1.equals("false"))) {
+ String DisplayInit1 = attributesNameList.get(ind);
+ boolean _equals = step_1.equals("false");
+ if (_equals) {
+ String _substring = step_1.substring(1, step_1.length());
+ String newstep = ("F" + _substring);
+ String DisplayStateZero1 = (((DisplayInit1 + "=") + newstep) + ",");
+ Display = (Display + DisplayStateZero1);
+ } else {
+ String _substring_1 = step_1.substring(1, step_1.length());
+ String newstep_1 = ("T" + _substring_1);
+ String DisplayStateZero2 = (((DisplayInit1 + "=") + newstep_1) + ",");
+ Display = (Display + DisplayStateZero2);
+ }
+ } else {
+ boolean _equals_1 = attributesNameList.get(ind).equals("input_size");
+ if (_equals_1) {
+ String DisplayInit3 = "input_shape";
+ String DisplayStateZero3 = (((DisplayInit3 + "=[") + step_1) + "],");
+ Display = (Display + DisplayStateZero3);
+ } else {
+ String DisplayInit0 = attributesNameList.get(ind);
+ String DisplayStateZero0 = (((DisplayInit0 + "=") + step_1) + ",");
+ Display = (Display + DisplayStateZero0);
+ }
+ }
+ }
+ }
+ }
+ ind = (ind + 1);
+ }
+ }
+ String displayFinal = "";
+ if ((modificationState != 0)) {
+ int _length = Display.length();
+ int _minus = (_length - 1);
+ String _substring = Display.substring(0, _minus);
+ String _plus_2 = ((DisplayInit + "(") + _substring);
+ String _plus_3 = (_plus_2 + ")");
+ displayFinal = _plus_3;
+ } else {
+ displayFinal = DisplayInit;
+ }
+ return displayFinal;
+ }
+
+ public static LayerInfo lstmAttributesToCollect(final Recurrent_layers lay_val) {
+ final int nbrOfAttributes = ((Object[])Conversions.unwrapArray(lay_val.eClass().getEAllAttributes(), Object.class)).length;
+ LayerInfo layerInformations = new LayerInfo(nbrOfAttributes);
+ String[] attributesNameList = layerInformations.attributeNames;
+ String[] attributesValueList = layerInformations.attributeValues;
+ int l = 0;
+ EList<EAttribute> _eAllAttributes = lay_val.eClass().getEAllAttributes();
+ for (final EAttribute valu : _eAllAttributes) {
+ {
+ String attri_name = valu.getName();
+ attributesNameList[l] = attri_name;
+ Object attri_val = lay_val.eGet(valu);
+ attributesValueList[l] = String.valueOf(attri_val);
+ l = (l + 1);
+ }
+ }
+ return layerInformations;
+ }
+}
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/.classpath b/aiml/org.eclipse.papyrus.aiml.profile/.classpath
new file mode 100644
index 0000000..8d613a1
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/.classpath
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+ <classpathentry kind="src" path="src-gen"/>
+ <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8"/>
+ <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
+ <classpathentry kind="src" path="src"/>
+ <classpathentry kind="output" path="target/classes"/>
+</classpath>
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/.project b/aiml/org.eclipse.papyrus.aiml.profile/.project
new file mode 100644
index 0000000..c698101
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/.project
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>org.eclipse.papyrus.aiml.profile</name>
+ <comment></comment>
+ <projects>
+ </projects>
+ <buildSpec>
+ <buildCommand>
+ <name>org.eclipse.jdt.core.javabuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.eclipse.pde.ManifestBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.eclipse.pde.SchemaBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ </buildSpec>
+ <natures>
+ <nature>org.eclipse.jdt.core.javanature</nature>
+ <nature>org.eclipse.pde.PluginNature</nature>
+ </natures>
+</projectDescription>
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/.settings/org.eclipse.jdt.core.prefs b/aiml/org.eclipse.papyrus.aiml.profile/.settings/org.eclipse.jdt.core.prefs
new file mode 100644
index 0000000..0fee6a9
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,15 @@
+eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
+org.eclipse.jdt.core.compiler.codegen.methodParameters=do not generate
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8
+org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
+org.eclipse.jdt.core.compiler.compliance=1.8
+org.eclipse.jdt.core.compiler.debug.lineNumber=generate
+org.eclipse.jdt.core.compiler.debug.localVariable=generate
+org.eclipse.jdt.core.compiler.debug.sourceFile=generate
+org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
+org.eclipse.jdt.core.compiler.problem.enablePreviewFeatures=disabled
+org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
+org.eclipse.jdt.core.compiler.problem.reportPreviewFeatures=warning
+org.eclipse.jdt.core.compiler.release=disabled
+org.eclipse.jdt.core.compiler.source=1.8
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/META-INF/MANIFEST.MF b/aiml/org.eclipse.papyrus.aiml.profile/META-INF/MANIFEST.MF
new file mode 100644
index 0000000..8acfbf1
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/META-INF/MANIFEST.MF
@@ -0,0 +1,85 @@
+Manifest-Version: 1.0
+Require-Bundle: org.eclipse.core.runtime,
+ org.eclipse.emf.ecore;visibility:=reexport,
+ org.eclipse.emf.ecore.xmi;visibility:=reexport,
+ org.eclipse.uml2.types;visibility:=reexport,
+ org.eclipse.uml2.uml;bundle-version="5.0.0";visibility:=reexport,
+ org.eclipse.papyrus.uml.properties;bundle-version="3.0.0"
+Bundle-Vendor: %providerName
+Bundle-ActivationPolicy: lazy
+Bundle-ClassPath: .
+Bundle-Version: 0.7.0.qualifier
+Bundle-Localization: plugin
+Bundle-Name: %pluginName
+Bundle-Activator: org.eclipse.papyrus.aiml.profile.Activator
+Bundle-ManifestVersion: 2
+Bundle-SymbolicName: org.eclipse.papyrus.aiml.profile;singleton:=true
+Automatic-Module-Name: org.eclipse.papyrus.aiml.profile
+Bundle-RequiredExecutionEnvironment: JavaSE-1.8
+Export-Package: org.eclipse.papyrus.aiml.profile,
+ org.eclipse.papyrus.aiml.profile.AIML,
+ org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers,
+ org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl,
+ org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.util,
+ org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers,
+ org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers.impl,
+ org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers.util,
+ org.eclipse.papyrus.aiml.profile.AIML.Distance_functions,
+ org.eclipse.papyrus.aiml.profile.AIML.Distance_functions.impl,
+ org.eclipse.papyrus.aiml.profile.AIML.Distance_functions.util,
+ org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers,
+ org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.impl,
+ org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.util,
+ org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints,
+ org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.impl,
+ org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.util,
+ org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers,
+ org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.impl,
+ org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.util,
+ org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers,
+ org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers.impl,
+ org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers.util,
+ org.eclipse.papyrus.aiml.profile.AIML.Linear_layers,
+ org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.impl,
+ org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.util,
+ org.eclipse.papyrus.aiml.profile.AIML.Loss_functions,
+ org.eclipse.papyrus.aiml.profile.AIML.Loss_functions.impl,
+ org.eclipse.papyrus.aiml.profile.AIML.Loss_functions.util,
+ org.eclipse.papyrus.aiml.profile.AIML.Module,
+ org.eclipse.papyrus.aiml.profile.AIML.Module.impl,
+ org.eclipse.papyrus.aiml.profile.AIML.Module.util,
+ org.eclipse.papyrus.aiml.profile.AIML.NonLinearActivations,
+ org.eclipse.papyrus.aiml.profile.AIML.NonLinearActivations.impl,
+ org.eclipse.papyrus.aiml.profile.AIML.NonLinearActivations.util,
+ org.eclipse.papyrus.aiml.profile.AIML.Normalization_layers,
+ org.eclipse.papyrus.aiml.profile.AIML.Normalization_layers.impl,
+ org.eclipse.papyrus.aiml.profile.AIML.Normalization_layers.util,
+ org.eclipse.papyrus.aiml.profile.AIML.Padding_layers,
+ org.eclipse.papyrus.aiml.profile.AIML.Padding_layers.impl,
+ org.eclipse.papyrus.aiml.profile.AIML.Padding_layers.util,
+ org.eclipse.papyrus.aiml.profile.AIML.Pooling_layers,
+ org.eclipse.papyrus.aiml.profile.AIML.Pooling_layers.impl,
+ org.eclipse.papyrus.aiml.profile.AIML.Pooling_layers.util,
+ org.eclipse.papyrus.aiml.profile.AIML.Recurrent_layers,
+ org.eclipse.papyrus.aiml.profile.AIML.Recurrent_layers.impl,
+ org.eclipse.papyrus.aiml.profile.AIML.Recurrent_layers.util,
+ org.eclipse.papyrus.aiml.profile.AIML.SoftMinMaxActivations,
+ org.eclipse.papyrus.aiml.profile.AIML.SoftMinMaxActivations.impl,
+ org.eclipse.papyrus.aiml.profile.AIML.SoftMinMaxActivations.util,
+ org.eclipse.papyrus.aiml.profile.AIML.Sparse_layers,
+ org.eclipse.papyrus.aiml.profile.AIML.Sparse_layers.impl,
+ org.eclipse.papyrus.aiml.profile.AIML.Sparse_layers.util,
+ org.eclipse.papyrus.aiml.profile.AIML.Tensor,
+ org.eclipse.papyrus.aiml.profile.AIML.Tensor.impl,
+ org.eclipse.papyrus.aiml.profile.AIML.Tensor.util,
+ org.eclipse.papyrus.aiml.profile.AIML.Transformer_layers,
+ org.eclipse.papyrus.aiml.profile.AIML.Transformer_layers.impl,
+ org.eclipse.papyrus.aiml.profile.AIML.Transformer_layers.util,
+ org.eclipse.papyrus.aiml.profile.AIML.Vision_layers,
+ org.eclipse.papyrus.aiml.profile.AIML.Vision_layers.impl,
+ org.eclipse.papyrus.aiml.profile.AIML.Vision_layers.util,
+ org.eclipse.papyrus.aiml.profile.AIML.datatypes,
+ org.eclipse.papyrus.aiml.profile.AIML.datatypes.impl,
+ org.eclipse.papyrus.aiml.profile.AIML.datatypes.util,
+ org.eclipse.papyrus.aiml.profile.AIML.impl,
+ org.eclipse.papyrus.aiml.profile.AIML.util
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/build.properties b/aiml/org.eclipse.papyrus.aiml.profile/build.properties
new file mode 100644
index 0000000..d166f67
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/build.properties
@@ -0,0 +1,12 @@
+source.. = src/,\
+ src-gen/
+output.. = target/classes/
+bin.includes = META-INF/,\
+ .,\
+ plugin.xml,\
+ profiles/,\
+ libraries/,\
+ plugin.properties,\
+ properties/,\
+ icons/,\
+ profile/
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/icons/aiml-16x16.png b/aiml/org.eclipse.papyrus.aiml.profile/icons/aiml-16x16.png
new file mode 100644
index 0000000..61c8fc4
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/icons/aiml-16x16.png
Binary files differ
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/icons/aiml-16x16.svg b/aiml/org.eclipse.papyrus.aiml.profile/icons/aiml-16x16.svg
new file mode 100644
index 0000000..90a551d
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/icons/aiml-16x16.svg
@@ -0,0 +1,361 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ version="1.2"
+ width="300"
+ height="300"
+ id="svg2"
+ inkscape:version="0.92.3 (2405546, 2018-03-11)"
+ sodipodi:docname="aiml-16x16.svg"
+ inkscape:export-filename="C:\Users\sli\Documents\Work\Papyrus\Software Designer\papyrus-designer-hash_aldo.png"
+ inkscape:export-xdpi="299.91537"
+ inkscape:export-ydpi="299.91537">
+ <sodipodi:namedview
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1"
+ objecttolerance="10"
+ gridtolerance="10"
+ guidetolerance="10"
+ inkscape:pageopacity="0"
+ inkscape:pageshadow="2"
+ inkscape:window-width="1114"
+ inkscape:window-height="853"
+ id="namedview53"
+ showgrid="false"
+ inkscape:zoom="1.1451746"
+ inkscape:cx="171.26294"
+ inkscape:cy="32.995663"
+ inkscape:window-x="428"
+ inkscape:window-y="79"
+ inkscape:window-maximized="0"
+ inkscape:current-layer="2-7"
+ fit-margin-top="0"
+ fit-margin-left="0"
+ fit-margin-right="0"
+ fit-margin-bottom="0" />
+ <defs
+ id="defs4">
+ <linearGradient
+ id="linearGradient6078-7-52-5-7-4">
+ <stop
+ id="stop6080-1-3-6-4-2"
+ style="stop-color:#98bf0c;stop-opacity:1"
+ offset="0" />
+ <stop
+ id="stop6082-0-24-0-0-7"
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4487-2-17-7-1-4-93">
+ <stop
+ id="stop4489-8-40-2-1-8-1"
+ style="stop-color:#009bba;stop-opacity:1"
+ offset="0" />
+ <stop
+ id="stop4491-2-9-1-9-8-9"
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient5467-45-65">
+ <stop
+ style="stop-color:#1f211c;stop-opacity:1;"
+ offset="0"
+ id="stop5469-5-02" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="1"
+ id="stop5471-17-8" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3340">
+ <stop
+ style="stop-color:#1f211c;stop-opacity:1;"
+ offset="0"
+ id="stop3342" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="1"
+ id="stop3344" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6078-7-52-5-7-4"
+ id="linearGradient3122"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.86436155,0,0,0.86436155,-63.693388,67.13087)"
+ x1="306.31415"
+ y1="189.24405"
+ x2="282.51758"
+ y2="2.6277814" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4487-2-17-7-1-4-93"
+ id="linearGradient3124"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.86436155,0,0,0.86436155,-63.693395,67.13087)"
+ x1="336.48462"
+ y1="203.12489"
+ x2="335.16684"
+ y2="73.530258" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5467-45-65"
+ id="linearGradient3126"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.86436155,0,0,0.86436155,-63.693395,67.13087)"
+ x1="238.62624"
+ y1="155.18745"
+ x2="243.81149"
+ y2="91.254097" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5467-45-65"
+ id="linearGradient3128"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.4499202,0,0,0.4499202,95.285803,147.36302)"
+ x1="231.79408"
+ y1="67.509285"
+ x2="237.63275"
+ y2="26.82687" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6078-7-52-5-7-4-1"
+ id="linearGradient3350"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.86436155,0,0,0.86436155,-63.693388,67.13087)"
+ x1="306.31415"
+ y1="189.24405"
+ x2="282.51758"
+ y2="2.6277814" />
+ <linearGradient
+ id="linearGradient6078-7-52-5-7-4-1">
+ <stop
+ id="stop6080-1-3-6-4-2-7"
+ style="stop-color:#98bf0c;stop-opacity:1"
+ offset="0" />
+ <stop
+ id="stop6082-0-24-0-0-7-4"
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4487-2-17-7-1-4-93-0"
+ id="linearGradient3352"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.86436155,0,0,0.86436155,-63.693395,67.13087)"
+ x1="336.48462"
+ y1="203.12489"
+ x2="335.16684"
+ y2="73.530258" />
+ <linearGradient
+ id="linearGradient4487-2-17-7-1-4-93-0">
+ <stop
+ id="stop4489-8-40-2-1-8-1-9"
+ style="stop-color:#009bba;stop-opacity:1"
+ offset="0" />
+ <stop
+ id="stop4491-2-9-1-9-8-9-4"
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5467-45-65-8"
+ id="linearGradient3354"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.86436155,0,0,0.86436155,-63.693395,67.13087)"
+ x1="238.62624"
+ y1="155.18745"
+ x2="243.81149"
+ y2="91.254097" />
+ <linearGradient
+ id="linearGradient5467-45-65-8">
+ <stop
+ style="stop-color:#1f211c;stop-opacity:1;"
+ offset="0"
+ id="stop5469-5-02-8" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="1"
+ id="stop5471-17-8-2" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5467-45-65-8"
+ id="linearGradient3356"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.4499202,0,0,0.4499202,95.285803,147.36302)"
+ x1="231.79408"
+ y1="67.509285"
+ x2="237.63275"
+ y2="26.82687" />
+ <linearGradient
+ id="linearGradient3342">
+ <stop
+ style="stop-color:#1f211c;stop-opacity:1;"
+ offset="0"
+ id="stop3344-4" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="1"
+ id="stop3346" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5467-45-65-8"
+ id="linearGradient3090"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.93826246,0,0,0.87686743,849.58383,60.096489)"
+ x1="231.79408"
+ y1="67.509285"
+ x2="237.63275"
+ y2="26.82687" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5467-45-65-8"
+ id="linearGradient3093"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.8025374,0,0,1.6845887,518.049,-96.271149)"
+ x1="238.62624"
+ y1="155.18745"
+ x2="243.81149"
+ y2="91.254097" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4487-2-17-7-1-4-93-0"
+ id="linearGradient3096"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.8025374,0,0,1.6845887,518.049,-96.271149)"
+ x1="336.48462"
+ y1="203.12489"
+ x2="335.16684"
+ y2="73.530258" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6078-7-52-5-7-4-1"
+ id="linearGradient3099"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.8025374,0,0,1.6845887,518.04902,-96.271149)"
+ x1="306.31415"
+ y1="189.24405"
+ x2="282.51758"
+ y2="2.6277814" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6078-7-52-5-7-4"
+ id="linearGradient3143"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.86436155,0,0,0.86436155,-63.693388,67.13087)"
+ x1="306.31415"
+ y1="189.24405"
+ x2="282.51758"
+ y2="2.6277814" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4487-2-17-7-1-4-93"
+ id="linearGradient3145"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.86436155,0,0,0.86436155,-63.693395,67.13087)"
+ x1="336.48462"
+ y1="203.12489"
+ x2="335.16684"
+ y2="73.530258" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5467-45-65"
+ id="linearGradient3147"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.86436155,0,0,0.86436155,-63.693395,67.13087)"
+ x1="238.62624"
+ y1="155.18745"
+ x2="243.81149"
+ y2="91.254097" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5467-45-65"
+ id="linearGradient3149"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.4499202,0,0,0.4499202,95.285803,147.36302)"
+ x1="231.79408"
+ y1="67.509285"
+ x2="237.63275"
+ y2="26.82687" />
+ </defs>
+ <metadata
+ id="metadata7">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title />
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ transform="translate(886.32636,-288.59997)"
+ id="layer2" />
+ <g
+ transform="matrix(0.65065408,0,0,0.6957592,913.0888,601.14772)"
+ id="1-9"
+ style="fill:#9c9e9f;fill-opacity:1">
+ <g
+ id="2-7"
+ style="font-style:normal;font-weight:bold;font-size:90px;font-family:'Liberation Sans Narrow';text-align:start;text-anchor:start;fill:#9c9e9f">
+ <g
+ id="g3270-4"
+ transform="matrix(3.1393502,0,0,2.9339277,-1716.8867,-1337.6369)"
+ style="opacity:0.5">
+ <path
+ inkscape:connector-curvature="0"
+ style="fill:url(#linearGradient3143);fill-opacity:1;stroke:none"
+ id="path3031-7-5-1-8"
+ d="m 170.4552,273.89087 c -0.0552,-19.9253 8.25185,-38.93343 19.1893,-55.24878 3.10516,-5.3021 8.37808,-9.42582 9.68999,-15.65649 1.33582,-4.79102 -2.94424,-6.91969 -7.88207,-7.26702 -6.39659,-0.74146 -14.20202,-2.7884 -16.8149,-9.39191 -1.97367,-6.74391 2.46299,-13.85284 8.05544,-17.40115 6.22916,-3.97466 13.68382,-5.49426 20.9663,-5.95905 1.549,-0.0892 1.84332,-0.17206 5.46367,0.0494 6.95068,0.29055 13.48526,5.04236 15.30129,11.85471 2.64956,9.21682 0.81292,19.18629 -2.66253,27.93738 -4.26292,10.29718 -10.69502,19.54187 -17.8991,27.9818 -8.31731,11.08804 -11.4163,25.38509 -10.32509,39.05004 -7.81659,2.30834 -19.22891,4.14444 -23.0823,4.05106 z" />
+ <path
+ inkscape:connector-curvature="0"
+ style="fill:url(#linearGradient3145);fill-opacity:1;stroke:none"
+ id="path3029-6-0-4-6"
+ d="m 195.26467,269.26425 c -1.31017,-15.35067 3.07505,-31.53227 13.76603,-42.91607 7.80963,-10.01138 14.85775,-21.20841 17.40753,-33.81375 1.51623,-8.17574 1.71265,-17.79667 -4.10578,-24.42052 -1.0537,-1.26018 -5.74736,-3.76752 -1.68149,-2.30694 4.17722,1.16472 6.41874,3.69589 8.60337,6.72655 11.57621,14.91935 15.61555,35.47722 9.80943,53.52972 -6.29746,20.51829 -23.74144,36.4284 -43.79909,43.20101 z" />
+ <path
+ inkscape:connector-curvature="0"
+ style="fill:url(#linearGradient3147);fill-opacity:1;stroke:none"
+ id="path3045-1-9-0-2-5"
+ d="m 107.46748,235.60585 c 0.58313,-18.71257 10.28274,-37.03864 25.89626,-47.52231 12.38891,-8.51861 27.3572,-12.45393 42.18193,-13.80383 -2.54561,4.00525 -4.1248,9.45099 -1.78496,13.98335 1.34432,3.06808 5.46883,4.6021 4.98615,4.87012 -21.31259,0.0188 -43.31305,7.54678 -58.0799,23.34878 -5.5153,5.82742 -9.86615,12.6909 -13.15918,19.99075 -0.0477,-0.2862 -0.0354,-0.57766 -0.0404,-0.86686 z" />
+ <path
+ inkscape:connector-curvature="0"
+ style="fill:url(#linearGradient3149);fill-opacity:1;stroke:none"
+ id="path3027-4-0-3-0"
+ d="m 199.21723,178.2402 c -1.20476,-0.1342 -2.17052,-0.44343 -2.8576,-0.915 -0.30618,-0.21016 -0.64307,-0.57942 -0.78608,-0.86165 -0.11887,-0.23455 -0.13203,-0.30257 -0.13203,-0.68248 0,-0.37305 0.0144,-0.45154 0.12542,-0.67732 0.65619,-1.33614 3.13045,-2.22288 5.54456,-1.98709 1.39653,0.13641 2.5031,0.56228 3.17232,1.22092 0.4471,0.44004 0.57477,0.71625 0.57477,1.24362 0,0.53119 -0.12573,0.79896 -0.59612,1.2696 -0.87863,0.87908 -2.54914,1.42833 -4.29009,1.41058 -0.34204,-0.004 -0.68185,-0.0129 -0.75515,-0.0212 z" />
+ </g>
+ <text
+ xml:space="preserve"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:171.97537231px;line-height:0%;font-family:Arial;-inkscape-font-specification:Arial;text-align:start;letter-spacing:0px;word-spacing:0px;text-anchor:start;fill:#0099ba;fill-opacity:1;stroke:none;stroke-width:1.91083741"
+ x="-1286.4893"
+ y="-453.35599"
+ id="text3020-4-0"
+ transform="scale(1.0340806,0.9670426)"><tspan
+ sodipodi:role="line"
+ x="-1286.4893"
+ y="-453.35599"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:212.05375671px;line-height:1.25;font-family:'Aldo the Apache';-inkscape-font-specification:'Aldo the Apache, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;writing-mode:lr-tb;text-anchor:start;fill:#626262;fill-opacity:1;stroke-width:1.91083741"
+ id="tspan866-8">#AI</tspan></text>
+ </g>
+ <g
+ id="3-1"
+ style="font-style:normal;font-weight:normal;font-size:13.80000019px;font-family:Calibri;text-align:start;text-anchor:start;fill:#9c9e9f" />
+ </g>
+</svg>
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/plugin.properties b/aiml/org.eclipse.papyrus.aiml.profile/plugin.properties
new file mode 100644
index 0000000..4f00e9e
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/plugin.properties
@@ -0,0 +1,10 @@
+# Copyright (c) CEA LIST.
+#
+# This program and the accompanying materials are made
+# available under the terms of the Eclipse Public License 2.0
+# which is available at https://www.eclipse.org/legal/epl-2.0/
+#
+# SPDX-License-Identifier: EPL-2.0
+#
+pluginName=Papyrus AIML profile
+providerName=Eclipse Modeling Project
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/plugin.xml b/aiml/org.eclipse.papyrus.aiml.profile/plugin.xml
new file mode 100644
index 0000000..6af8411
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/plugin.xml
@@ -0,0 +1,291 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?eclipse version="3.2"?>
+<plugin>
+ <extension
+ point="org.eclipse.emf.ecore.uri_mapping">
+ <mapping
+ source="pathmap://AIML_PROFILES/"
+ target="platform:/plugin/org.eclipse.papyrus.aiml.profile/profile/"/>
+ </extension>
+
+ <extension
+ point="org.eclipse.papyrus.uml.extensionpoints.UMLProfile">
+ <profile
+ description="AI (neural network) profile"
+ iconpath="icons/aiml-16x16.png"
+ name="AIML"
+ path="pathmap://AIML_PROFILES/AIML.profile.uml"
+ provider="CEA LIST">
+ </profile>
+ </extension>
+
+ <extension
+ point="org.eclipse.uml2.uml.generated_package">
+ <profile
+ uri="http://www.eclipse.org/papyrus/AIML/1"
+ location="pathmap://AIML_PROFILES/AIML.profile.uml#_IDYhIH13EeqSHNFOHg2_Jw"/>
+ </extension>
+
+ <extension point="org.eclipse.emf.ecore.generated_package">
+ <!-- @generated AIML -->
+ <package
+ uri="http://www.eclipse.org/papyrus/AIML/1"
+ class="org.eclipse.papyrus.aiml.profile.AIML.AIMLPackage"
+ genModel="profile/AIML.genmodel"/>
+ </extension>
+
+ <extension
+ point="org.eclipse.uml2.uml.generated_package">
+ <profile
+ uri="http://www.eclipse.org/papyrus/AIML/module/1"
+ location="pathmap://AIML_PROFILES/AIML.profile.uml#_u1dx8JT1Eeq5BK6mmo2rWg"/>
+ </extension>
+
+ <extension point="org.eclipse.emf.ecore.generated_package">
+ <!-- @generated AIML -->
+ <package
+ uri="http://www.eclipse.org/papyrus/AIML/module/1"
+ class="org.eclipse.papyrus.aiml.profile.AIML.Module.ModulePackage"
+ genModel="profile/AIML.genmodel"/>
+ </extension>
+
+ <extension
+ point="org.eclipse.uml2.uml.generated_package">
+ <profile
+ uri="http://www.eclipse.org/papyrus/AIML/tensor/1"
+ location="pathmap://AIML_PROFILES/AIML.profile.uml#_38DjAJT1Eeq5BK6mmo2rWg"/>
+ </extension>
+
+ <extension point="org.eclipse.emf.ecore.generated_package">
+ <!-- @generated AIML -->
+ <package
+ uri="http://www.eclipse.org/papyrus/AIML/tensor/1"
+ class="org.eclipse.papyrus.aiml.profile.AIML.Tensor.TensorPackage"
+ genModel="profile/AIML.genmodel"/>
+ </extension>
+
+ <extension
+ point="org.eclipse.uml2.uml.generated_package">
+ <profile
+ uri="http://www.eclipse.org/papyrus/AIML/pooling/1"
+ location="pathmap://AIML_PROFILES/AIML.profile.uml#_Deu8AJT2Eeq5BK6mmo2rWg"/>
+ </extension>
+
+ <extension point="org.eclipse.emf.ecore.generated_package">
+ <!-- @generated AIML -->
+ <package
+ uri="http://www.eclipse.org/papyrus/AIML/pooling/1"
+ class="org.eclipse.papyrus.aiml.profile.AIML.Pooling_layers.Pooling_layersPackage"
+ genModel="profile/AIML.genmodel"/>
+ </extension>
+
+ <extension
+ point="org.eclipse.uml2.uml.generated_package">
+ <profile
+ uri="http://www.eclipse.org/papyrus/AIML/convolution/1"
+ location="pathmap://AIML_PROFILES/AIML.profile.uml#_Nr2NYJOPEeqnY_bZg2Ebjg"/>
+ </extension>
+
+ <extension point="org.eclipse.emf.ecore.generated_package">
+ <!-- @generated AIML -->
+ <package
+ uri="http://www.eclipse.org/papyrus/AIML/convolution/1"
+ class="org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution_layersPackage"
+ genModel="profile/AIML.genmodel"/>
+ </extension>
+
+ <extension
+ point="org.eclipse.uml2.uml.generated_package">
+ <profile
+ uri="http://www.eclipse.org/papyrus/AIML/padding/1"
+ location="pathmap://AIML_PROFILES/AIML.profile.uml#_2_xEcJT2Eeq5BK6mmo2rWg"/>
+ </extension>
+
+ <extension point="org.eclipse.emf.ecore.generated_package">
+ <!-- @generated AIML -->
+ <package
+ uri="http://www.eclipse.org/papyrus/AIML/padding/1"
+ class="org.eclipse.papyrus.aiml.profile.AIML.Padding_layers.Padding_layersPackage"
+ genModel="profile/AIML.genmodel"/>
+ </extension>
+
+ <extension
+ point="org.eclipse.uml2.uml.generated_package">
+ <profile
+ uri="http://www.eclipse.org/papyrus/AIML/nonlinear/1"
+ location="pathmap://AIML_PROFILES/AIML.profile.uml#_H7fbMJT2Eeq5BK6mmo2rWg"/>
+ </extension>
+
+ <extension point="org.eclipse.emf.ecore.generated_package">
+ <!-- @generated AIML -->
+ <package
+ uri="http://www.eclipse.org/papyrus/AIML/nonlinear/1"
+ class="org.eclipse.papyrus.aiml.profile.AIML.NonLinearActivations.NonLinearActivationsPackage"
+ genModel="profile/AIML.genmodel"/>
+ </extension>
+
+ <extension
+ point="org.eclipse.uml2.uml.generated_package">
+ <profile
+ uri="http://www.eclipse.org/papyrus/AIML/softminmax/1"
+ location="pathmap://AIML_PROFILES/AIML.profile.uml#_H7fbMJT2Eeq5BK6mmo2rWg"/>
+ </extension>
+
+ <extension point="org.eclipse.emf.ecore.generated_package">
+ <!-- @generated AIML -->
+ <package
+ uri="http://www.eclipse.org/papyrus/AIML/softminmax/1"
+ class="org.eclipse.papyrus.aiml.profile.AIML.SoftMinMaxActivations.SoftMinMaxActivationsPackage"
+ genModel="profile/AIML.genmodel"/>
+ </extension>
+
+ <extension
+ point="org.eclipse.uml2.uml.generated_package">
+ <profile
+ uri="http://www.eclipse.org/papyrus/AIML/normalization/1"
+ location="pathmap://AIML_PROFILES/AIML.profile.uml#_N5zMsJT2Eeq5BK6mmo2rWg"/>
+ </extension>
+
+ <extension point="org.eclipse.emf.ecore.generated_package">
+ <!-- @generated AIML -->
+ <package
+ uri="http://www.eclipse.org/papyrus/AIML/normalization/1"
+ class="org.eclipse.papyrus.aiml.profile.AIML.Normalization_layers.Normalization_layersPackage"
+ genModel="profile/AIML.genmodel"/>
+ </extension>
+
+ <extension
+ point="org.eclipse.uml2.uml.generated_package">
+ <profile
+ uri="http://www.eclipse.org/papyrus/AIML/recurrent/1"
+ location="pathmap://AIML_PROFILES/AIML.profile.uml#_RAjiQJT2Eeq5BK6mmo2rWg"/>
+ </extension>
+
+ <extension point="org.eclipse.emf.ecore.generated_package">
+ <!-- @generated AIML -->
+ <package
+ uri="http://www.eclipse.org/papyrus/AIML/recurrent/1"
+ class="org.eclipse.papyrus.aiml.profile.AIML.Recurrent_layers.Recurrent_layersPackage"
+ genModel="profile/AIML.genmodel"/>
+ </extension>
+
+ <extension
+ point="org.eclipse.uml2.uml.generated_package">
+ <profile
+ uri="http://www.eclipse.org/papyrus/AIML/transformer/1"
+ location="pathmap://AIML_PROFILES/AIML.profile.uml#_T8DDAJT2Eeq5BK6mmo2rWg"/>
+ </extension>
+
+ <extension point="org.eclipse.emf.ecore.generated_package">
+ <!-- @generated AIML -->
+ <package
+ uri="http://www.eclipse.org/papyrus/AIML/transformer/1"
+ class="org.eclipse.papyrus.aiml.profile.AIML.Transformer_layers.Transformer_layersPackage"
+ genModel="profile/AIML.genmodel"/>
+ </extension>
+
+ <extension
+ point="org.eclipse.uml2.uml.generated_package">
+ <profile
+ uri="http://www.eclipse.org/papyrus/AIML/linear/1"
+ location="pathmap://AIML_PROFILES/AIML.profile.uml#_WwqfsJT2Eeq5BK6mmo2rWg"/>
+ </extension>
+
+ <extension point="org.eclipse.emf.ecore.generated_package">
+ <!-- @generated AIML -->
+ <package
+ uri="http://www.eclipse.org/papyrus/AIML/linear/1"
+ class="org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.Linear_layersPackage"
+ genModel="profile/AIML.genmodel"/>
+ </extension>
+
+ <extension
+ point="org.eclipse.uml2.uml.generated_package">
+ <profile
+ uri="http://www.eclipse.org/papyrus/AIML/dropout/1"
+ location="pathmap://AIML_PROFILES/AIML.profile.uml#_ZUMzcJT2Eeq5BK6mmo2rWg"/>
+ </extension>
+
+ <extension point="org.eclipse.emf.ecore.generated_package">
+ <!-- @generated AIML -->
+ <package
+ uri="http://www.eclipse.org/papyrus/AIML/dropout/1"
+ class="org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.Dropout_layersPackage"
+ genModel="profile/AIML.genmodel"/>
+ </extension>
+
+ <extension
+ point="org.eclipse.uml2.uml.generated_package">
+ <profile
+ uri="http://www.eclipse.org/papyrus/AIML/sparse/1"
+ location="pathmap://AIML_PROFILES/AIML.profile.uml#_cKwJ0JT2Eeq5BK6mmo2rWg"/>
+ </extension>
+
+ <extension point="org.eclipse.emf.ecore.generated_package">
+ <!-- @generated AIML -->
+ <package
+ uri="http://www.eclipse.org/papyrus/AIML/sparse/1"
+ class="org.eclipse.papyrus.aiml.profile.AIML.Sparse_layers.Sparse_layersPackage"
+ genModel="profile/AIML.genmodel"/>
+ </extension>
+
+ <extension
+ point="org.eclipse.uml2.uml.generated_package">
+ <profile
+ uri="http://www.eclipse.org/papyrus/AIML/distance/1"
+ location="pathmap://AIML_PROFILES/AIML.profile.uml#_fjUoIJT2Eeq5BK6mmo2rWg"/>
+ </extension>
+
+ <extension point="org.eclipse.emf.ecore.generated_package">
+ <!-- @generated AIML -->
+ <package
+ uri="http://www.eclipse.org/papyrus/AIML/distance/1"
+ class="org.eclipse.papyrus.aiml.profile.AIML.Distance_functions.Distance_functionsPackage"
+ genModel="profile/AIML.genmodel"/>
+ </extension>
+
+ <extension
+ point="org.eclipse.uml2.uml.generated_package">
+ <profile
+ uri="http://www.eclipse.org/papyrus/AIML/loss/1"
+ location="pathmap://AIML_PROFILES/AIML.profile.uml#_nZcP0JT2Eeq5BK6mmo2rWg"/>
+ </extension>
+
+ <extension point="org.eclipse.emf.ecore.generated_package">
+ <!-- @generated AIML -->
+ <package
+ uri="http://www.eclipse.org/papyrus/AIML/loss/1"
+ class="org.eclipse.papyrus.aiml.profile.AIML.Loss_functions.Loss_functionsPackage"
+ genModel="profile/AIML.genmodel"/>
+ </extension>
+
+ <extension
+ point="org.eclipse.uml2.uml.generated_package">
+ <profile
+ uri="http://www.eclipse.org/papyrus/AIML/vision/1"
+ location="pathmap://AIML_PROFILES/AIML.profile.uml#_q6FsEJT2Eeq5BK6mmo2rWg"/>
+ </extension>
+
+ <extension point="org.eclipse.emf.ecore.generated_package">
+ <!-- @generated AIML -->
+ <package
+ uri="http://www.eclipse.org/papyrus/AIML/vision/1"
+ class="org.eclipse.papyrus.aiml.profile.AIML.Vision_layers.Vision_layersPackage"
+ genModel="profile/AIML.genmodel"/>
+ </extension>
+
+ <extension
+ point="org.eclipse.uml2.uml.generated_package">
+ <profile
+ uri="http://www.eclipse.org/papyrus/AIML/dataparallel/1"
+ location="pathmap://AIML_PROFILES/AIML.profile.uml#_wBUroJT2Eeq5BK6mmo2rWg"/>
+ </extension>
+
+ <extension point="org.eclipse.emf.ecore.generated_package">
+ <!-- @generated AIML -->
+ <package
+ uri="http://www.eclipse.org/papyrus/AIML/dataparallel/1"
+ class="org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers.DataParallel_layersPackage"
+ genModel="profile/AIML.genmodel"/>
+ </extension>
+</plugin>
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/profile/AIML.ecore b/aiml/org.eclipse.papyrus.aiml.profile/profile/AIML.ecore
new file mode 100644
index 0000000..f558ce0
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/profile/AIML.ecore
@@ -0,0 +1,845 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ecore:EPackage xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" name="AIML" nsURI="http://www.eclipse.org/papyrus/AIML/1" nsPrefix="AIML">
+ <eClassifiers xsi:type="ecore:EClass" name="SmoothL1Loss" eSuperTypes="#//Loss_functions/Loss_functions_1"/>
+ <eClassifiers xsi:type="ecore:EClass" name="SoftMarginLoss" eSuperTypes="#//Loss_functions/Loss_functions_1"/>
+ <eClassifiers xsi:type="ecore:EClass" name="MultiLabelSoftMarginLoss" eSuperTypes="#//Loss_functions/Loss_functions_1_2"/>
+ <eSubpackages name="Module" nsURI="http://www.eclipse.org/papyrus/AIML/module/1"
+ nsPrefix="AIML.Module">
+ <eClassifiers xsi:type="ecore:EClass" name="Model">
+ <eStructuralFeatures xsi:type="ecore:EReference" name="base_Class" ordered="false"
+ eType="ecore:EClass ../../org.eclipse.uml2.uml/model/UML.ecore#//Class"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" ordered="false"
+ lowerBound="1" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//String"
+ changeable="false" volatile="true" transient="true" derived="true"/>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="data" ordered="false"
+ lowerBound="1" eType="#//Tensor/Tensor"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="requires_grad" ordered="false"
+ eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Boolean"/>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="subModule" ordered="false"
+ upperBound="-1" eType="#//Module/Model"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="optimizer" ordered="false"
+ eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//String"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="loss" ordered="false"
+ eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//String"/>
+ </eClassifiers>
+ </eSubpackages>
+ <eSubpackages name="Tensor" nsURI="http://www.eclipse.org/papyrus/AIML/tensor/1"
+ nsPrefix="AIML.Tensor">
+ <eClassifiers xsi:type="ecore:EEnum" name="EDType">
+ <eLiterals name="float32"/>
+ <eLiterals name="float64" value="1"/>
+ <eLiterals name="float16" value="2"/>
+ <eLiterals name="uint8" value="3"/>
+ <eLiterals name="int8" value="4"/>
+ <eLiterals name="int16" value="5"/>
+ <eLiterals name="int32" value="6"/>
+ <eLiterals name="int64" value="7"/>
+ <eLiterals name="bool" value="8"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EEnum" name="ETensorTypes">
+ <eLiterals name="FloatTensor"/>
+ <eLiterals name="DoubleTensor" value="1"/>
+ <eLiterals name="HalfTensor" value="2"/>
+ <eLiterals name="ByteTensor" value="3"/>
+ <eLiterals name="CharTensor" value="4"/>
+ <eLiterals name="ShortTensor" value="5"/>
+ <eLiterals name="IntTensor" value="6"/>
+ <eLiterals name="LongTensor" value="7"/>
+ <eLiterals name="BoolTensor" value="8"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="Tensor">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="data" ordered="false"
+ upperBound="-1" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Real"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="dtype" ordered="false"
+ eType="#//Tensor/EDType"/>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="device" ordered="false"
+ eType="#//datatypes/Device"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="requires_grad" ordered="false"
+ eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Boolean"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="pin_memory" ordered="false"
+ eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Boolean"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="shape" ordered="false"
+ upperBound="-1" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Integer"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" ordered="false"
+ eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//String"/>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="base_Class" ordered="false"
+ eType="ecore:EClass ../../org.eclipse.uml2.uml/model/UML.ecore#//Class"/>
+ </eClassifiers>
+ </eSubpackages>
+ <eSubpackages name="datatypes" nsURI="http:///AIML/datatypes.ecore" nsPrefix="AIML.datatypes">
+ <eClassifiers xsi:type="ecore:EClass" name="Device">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="type" ordered="false"
+ lowerBound="1" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//String"/>
+ </eClassifiers>
+ </eSubpackages>
+ <eSubpackages name="Pooling_layers" nsURI="http://www.eclipse.org/papyrus/AIML/pooling/1"
+ nsPrefix="AIML.Pooling_layers">
+ <eClassifiers xsi:type="ecore:EClass" name="Pooling_layers" abstract="true" eSuperTypes="#//Module/Model"/>
+ <eClassifiers xsi:type="ecore:EClass" name="Pooling_layers_1" abstract="true"
+ eSuperTypes="#//Pooling_layers/Pooling_layers">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="kernel_size" ordered="false"
+ upperBound="-1" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Integer"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="Pooling_layers_2" abstract="true"
+ eSuperTypes="#//Pooling_layers/Pooling_layers">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="output_size" ordered="false"
+ upperBound="-1" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Integer"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="AdaptativeMaxPool" abstract="true"
+ eSuperTypes="#//Pooling_layers/Pooling_layers_2">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="return_indices" ordered="false"
+ lowerBound="1" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Boolean"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="AdaptativeMaxPool1d" eSuperTypes="#//Pooling_layers/AdaptativeMaxPool"/>
+ <eClassifiers xsi:type="ecore:EClass" name="AdaptativeMaxPool2d" eSuperTypes="#//Pooling_layers/AdaptativeMaxPool"/>
+ <eClassifiers xsi:type="ecore:EClass" name="AdaptativeMaxPool3d" eSuperTypes="#//Pooling_layers/AdaptativeMaxPool"/>
+ <eClassifiers xsi:type="ecore:EClass" name="AdaptiveAvgPool3d" eSuperTypes="#//Pooling_layers/Pooling_layers_2"/>
+ <eClassifiers xsi:type="ecore:EClass" name="AdaptiveAvgPool2d" eSuperTypes="#//Pooling_layers/Pooling_layers_2"/>
+ <eClassifiers xsi:type="ecore:EClass" name="AdaptiveAvgPool1d" eSuperTypes="#//Pooling_layers/Pooling_layers_2"/>
+ <eClassifiers xsi:type="ecore:EClass" name="Pooling_layers_1_1" abstract="true"
+ eSuperTypes="#//Pooling_layers/Pooling_layers_1">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="stride" ordered="false"
+ upperBound="-1" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Integer"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="MaxPool1d" eSuperTypes="#//Pooling_layers/MaxPool"/>
+ <eClassifiers xsi:type="ecore:EClass" name="MaxPool" abstract="true" eSuperTypes="#//Pooling_layers/Pooling_layers_1_1_1_1">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="dilation" ordered="false"
+ upperBound="-1" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Integer"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="return_indices" ordered="false"
+ eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Boolean"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="Pooling_layers_1_1_1_1" abstract="true"
+ eSuperTypes="#//Pooling_layers/Pooling_layers_1_1_1">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="ceil_mode" ordered="false"
+ eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Boolean"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="pool_size" ordered="false"
+ upperBound="-1" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Integer"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="Pooling_layers_1_1_1" abstract="true"
+ eSuperTypes="#//Pooling_layers/Pooling_layers_1_1">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="padding" ordered="false"
+ upperBound="-1" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Integer"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="padding_k" ordered="false"
+ eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//String"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="MaxUnpool1d" eSuperTypes="#//Pooling_layers/Pooling_layers_1_1_1"/>
+ <eClassifiers xsi:type="ecore:EClass" name="AvgPool1d" eSuperTypes="#//Pooling_layers/Pooling_layers_1_1_2_1"/>
+ <eClassifiers xsi:type="ecore:EClass" name="Pooling_layers_1_1_2_1" abstract="true"
+ eSuperTypes="#//Pooling_layers/Pooling_layers_1_1_1_1">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="count_include_pad" ordered="false"
+ eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Boolean"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="MaxUnpool2d" eSuperTypes="#//Pooling_layers/Pooling_layers_1_1_1"/>
+ <eClassifiers xsi:type="ecore:EClass" name="MaxUnpool3d" eSuperTypes="#//Pooling_layers/Pooling_layers_1_1_1"/>
+ <eClassifiers xsi:type="ecore:EClass" name="Pooling_layers_1_1_2" abstract="true"
+ eSuperTypes="#//Pooling_layers/Pooling_layers_1_1">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="ceil_mode" ordered="false"
+ eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Boolean"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="LPPool1d" eSuperTypes="#//Pooling_layers/Pooling_layers_1_1_2"/>
+ <eClassifiers xsi:type="ecore:EClass" name="LPPool2d" eSuperTypes="#//Pooling_layers/Pooling_layers_1_1_2"/>
+ <eClassifiers xsi:type="ecore:EClass" name="AvgPool2d3d" abstract="true" eSuperTypes="#//Pooling_layers/Pooling_layers_1_1_2_1">
+ <eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
+ <details key="originalName" value="AvgPool2d/3d"/>
+ </eAnnotations>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="divisor_override" ordered="false"
+ eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Integer"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="AvgPool2d" eSuperTypes="#//Pooling_layers/AvgPool2d3d"/>
+ <eClassifiers xsi:type="ecore:EClass" name="AvgPool3d" eSuperTypes="#//Pooling_layers/AvgPool2d3d"/>
+ <eClassifiers xsi:type="ecore:EClass" name="MaxPool2d" eSuperTypes="#//Pooling_layers/MaxPool"/>
+ <eClassifiers xsi:type="ecore:EClass" name="MaxPool3d" eSuperTypes="#//Pooling_layers/MaxPool"/>
+ <eClassifiers xsi:type="ecore:EClass" name="FractionalMaxPool2d" eSuperTypes="#//Pooling_layers/Pooling_layers_1">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="output_size" ordered="false"
+ upperBound="-1" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Integer"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="output_ratio" ordered="false"
+ upperBound="-1" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Integer"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="return_indices" ordered="false"
+ eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Boolean"/>
+ </eClassifiers>
+ </eSubpackages>
+ <eSubpackages name="Convolution_layers" nsURI="http://www.eclipse.org/papyrus/AIML/convolution/1"
+ nsPrefix="AIML.Convolution_layers">
+ <eClassifiers xsi:type="ecore:EClass" name="Convolution" abstract="true" eSuperTypes="#//Convolution_layers/Convolution_layers">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="in_channels" ordered="false"
+ eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Integer"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="groups" ordered="false"
+ eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Integer"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="biais" ordered="false"
+ eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Boolean"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="padding_mode" ordered="false"
+ eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//String"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="data_format" ordered="false"
+ eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//String"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="dilation_rate" ordered="false"
+ upperBound="-1" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Integer"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="activation" ordered="false"
+ eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//String"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="bias_initializer" ordered="false"
+ lowerBound="1" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//String"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="activity_regularizer"
+ ordered="false" lowerBound="1" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//String"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="bias_constraint" ordered="false"
+ lowerBound="1" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//String"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="bias_regularizer" ordered="false"
+ lowerBound="1" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//String"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="Convolution_layers" abstract="true"
+ eSuperTypes="#//Module/Model">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="kernel_size" ordered="false"
+ upperBound="-1" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Integer"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="stride" ordered="false"
+ upperBound="-1" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Integer"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="padding" ordered="false"
+ upperBound="-1" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Integer"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="dilation" ordered="false"
+ upperBound="-1" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Integer"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="Unfold" eSuperTypes="#//Convolution_layers/Convolution_layers"/>
+ <eClassifiers xsi:type="ecore:EClass" name="Fold" eSuperTypes="#//Convolution_layers/Convolution_layers">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="output_size" ordered="false"
+ upperBound="-1" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Integer"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="Conv2d" eSuperTypes="#//Convolution_layers/basic"/>
+ <eClassifiers xsi:type="ecore:EClass" name="basic" abstract="true" eSuperTypes="#//Convolution_layers/LayerWithFilter">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="kernel_initializer" ordered="false"
+ eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//String"/>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="kernel_constraint" ordered="false"
+ lowerBound="1" eType="#//Layer_weight_constraints/constraints"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="kernel_regularizer" ordered="false"
+ eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//String"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="LayerWithFilter" abstract="true" eSuperTypes="#//Convolution_layers/Convolution">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="out_channels" ordered="false"
+ lowerBound="1" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Integer"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="Conv3d" eSuperTypes="#//Convolution_layers/basic"/>
+ <eClassifiers xsi:type="ecore:EClass" name="ConvTranspose1d" eSuperTypes="#//Convolution_layers/LayerWithFilter"/>
+ <eClassifiers xsi:type="ecore:EClass" name="ConvTranspose2d" eSuperTypes="#//Convolution_layers/transpose"/>
+ <eClassifiers xsi:type="ecore:EClass" name="transpose" abstract="true" eSuperTypes="#//Convolution_layers/basic">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="output_padding" ordered="false"
+ upperBound="-1" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Integer"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="ConvTranspose3d" eSuperTypes="#//Convolution_layers/transpose"/>
+ <eClassifiers xsi:type="ecore:EClass" name="Conv1d" eSuperTypes="#//Convolution_layers/basic"/>
+ <eClassifiers xsi:type="ecore:EClass" name="Separable" abstract="true" eSuperTypes="#//Convolution_layers/LayerWithFilter">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="depth_multiplier" ordered="false"
+ upperBound="-1" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Integer"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="depthwise_initializer"
+ ordered="false" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//String"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="pointwise_initializer"
+ ordered="false" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//String"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="depthwise_regularizer"
+ ordered="false" lowerBound="1" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//String"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="poitnwise_regularizer"
+ ordered="false" lowerBound="1" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//String"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="depthwise_constraint"
+ ordered="false" lowerBound="1" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//String"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="pointwise_constraint"
+ ordered="false" lowerBound="1" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//String"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="SeparableConv2D" eSuperTypes="#//Convolution_layers/Separable"/>
+ <eClassifiers xsi:type="ecore:EClass" name="SeparableConv1D" eSuperTypes="#//Convolution_layers/Separable"/>
+ <eClassifiers xsi:type="ecore:EClass" name="DepthwiseConv2D" eSuperTypes="#//Convolution_layers/Convolution">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="depth_multiplier" ordered="false"
+ upperBound="-1" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Integer"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="depthwise_initializer"
+ ordered="false" lowerBound="1" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//String"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="depthwise_regularizer"
+ ordered="false" lowerBound="1" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//String"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="depthwise_constraint"
+ ordered="false" lowerBound="1" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//String"/>
+ </eClassifiers>
+ </eSubpackages>
+ <eSubpackages name="Layer_weight_constraints" nsURI="http:///AIML/Layer_weight_constraints.ecore"
+ nsPrefix="AIML.Layer_weight_constraints">
+ <eClassifiers xsi:type="ecore:EClass" name="min_max_norm" eSuperTypes="#//Layer_weight_constraints/NormWithMaxValue">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="min_value" ordered="false"
+ lowerBound="1" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Real"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="rate" ordered="false"
+ lowerBound="1" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Real"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="NormWithMaxValue" abstract="true"
+ eSuperTypes="#//Layer_weight_constraints/norm">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="max_value" ordered="false"
+ lowerBound="1" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Real"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="norm" abstract="true" eSuperTypes="#//Layer_weight_constraints/constraints">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="axis" ordered="false"
+ lowerBound="1" upperBound="-1" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Integer"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="max_norm" eSuperTypes="#//Layer_weight_constraints/NormWithMaxValue"/>
+ <eClassifiers xsi:type="ecore:EClass" name="non_neg" eSuperTypes="#//Layer_weight_constraints/constraints"/>
+ <eClassifiers xsi:type="ecore:EClass" name="radial_constraint" eSuperTypes="#//Layer_weight_constraints/constraints"/>
+ <eClassifiers xsi:type="ecore:EClass" name="unit_norm" eSuperTypes="#//Layer_weight_constraints/norm"/>
+ <eClassifiers xsi:type="ecore:EClass" name="constraints" abstract="true"/>
+ </eSubpackages>
+ <eSubpackages name="Padding_layers" nsURI="http://www.eclipse.org/papyrus/AIML/padding/1"
+ nsPrefix="AIML.Padding_layers">
+ <eClassifiers xsi:type="ecore:EClass" name="Padding_layers" abstract="true" eSuperTypes="#//Module/Model">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="padding" ordered="false"
+ upperBound="-1" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Integer"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="ReflectionPad1d" eSuperTypes="#//Padding_layers/Padding_layers"/>
+ <eClassifiers xsi:type="ecore:EClass" name="ReflectionPad2d" eSuperTypes="#//Padding_layers/Padding_layers"/>
+ <eClassifiers xsi:type="ecore:EClass" name="ReplicationPad1d" eSuperTypes="#//Padding_layers/Padding_layers"/>
+ <eClassifiers xsi:type="ecore:EClass" name="ReplicationPad2d" eSuperTypes="#//Padding_layers/Padding_layers"/>
+ <eClassifiers xsi:type="ecore:EClass" name="ReplicationPad3d" eSuperTypes="#//Padding_layers/Padding_layers"/>
+ <eClassifiers xsi:type="ecore:EClass" name="ZeroPad2d" eSuperTypes="#//Padding_layers/Padding_layers"/>
+ <eClassifiers xsi:type="ecore:EClass" name="ConstantPad1d" eSuperTypes="#//Padding_layers/Padding_layers"/>
+ <eClassifiers xsi:type="ecore:EClass" name="ConstantPad2d" eSuperTypes="#//Padding_layers/Padding_layers"/>
+ <eClassifiers xsi:type="ecore:EClass" name="ConstantPad3d" eSuperTypes="#//Padding_layers/Padding_layers"/>
+ </eSubpackages>
+ <eSubpackages name="NonLinearActivations" nsURI="http://www.eclipse.org/papyrus/AIML/nonlinear/1"
+ nsPrefix="AIML.NonLinearActivations">
+ <eClassifiers xsi:type="ecore:EClass" name="Nonlinear_activations_weightedsumnonlinearity"
+ abstract="true" eSuperTypes="#//Module/Model">
+ <eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
+ <details key="originalName" value="Non-linear_activations_(weighted sum, nonlinearity)"/>
+ </eAnnotations>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="ELU" eSuperTypes="#//NonLinearActivations/Nonlinear_activations_weightedsumnonlinearity_1">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="alpha" ordered="false"
+ eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Real"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="Nonlinear_activations_weightedsumnonlinearity_1"
+ abstract="true" eSuperTypes="#//NonLinearActivations/Nonlinear_activations_weightedsumnonlinearity">
+ <eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
+ <details key="originalName" value="Non-linear_activations_(weighted sum, nonlinearity)_1"/>
+ </eAnnotations>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="inplace" ordered="false"
+ eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Boolean"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="shrink" abstract="true" eSuperTypes="#//NonLinearActivations/Nonlinear_activations_weightedsumnonlinearity">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="lambd" ordered="false"
+ eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Real"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="LeakyReLU" eSuperTypes="#//NonLinearActivations/Nonlinear_activations_weightedsumnonlinearity_1">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="negative_slope" ordered="false"
+ eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Real"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="LogSigmoid" eSuperTypes="#//NonLinearActivations/Nonlinear_activations_weightedsumnonlinearity"/>
+ <eClassifiers xsi:type="ecore:EClass" name="MultiheadAttention" eSuperTypes="#//NonLinearActivations/Nonlinear_activations_weightedsumnonlinearity">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="embed_dim" ordered="false"
+ lowerBound="1" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Integer"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="num_heads" ordered="false"
+ lowerBound="1" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Integer"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="dropout" ordered="false"
+ eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Real"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="bias" ordered="false"
+ eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Boolean"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="add_bias_kv" ordered="false"
+ eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Boolean">
+ <eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
+ <details key="originalName" value="add_bias_kv "/>
+ </eAnnotations>
+ </eStructuralFeatures>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="add_zero_attn" ordered="false"
+ eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Boolean"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="kdim" ordered="false"
+ eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Integer"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="vdim" ordered="false"
+ eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Integer"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="PReLU" eSuperTypes="#//NonLinearActivations/Nonlinear_activations_weightedsumnonlinearity">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="num_parameters" ordered="false"
+ eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Integer"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="init" ordered="false"
+ eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Real"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="ReLU" eSuperTypes="#//NonLinearActivations/Nonlinear_activations_weightedsumnonlinearity_1"/>
+ <eClassifiers xsi:type="ecore:EClass" name="ReLU6" eSuperTypes="#//NonLinearActivations/Nonlinear_activations_weightedsumnonlinearity_1"/>
+ <eClassifiers xsi:type="ecore:EClass" name="SELU" eSuperTypes="#//NonLinearActivations/Nonlinear_activations_weightedsumnonlinearity_1"/>
+ <eClassifiers xsi:type="ecore:EClass" name="RReLU" eSuperTypes="#//NonLinearActivations/Nonlinear_activations_weightedsumnonlinearity_1">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="lower" ordered="false"
+ eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Real"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="upper" ordered="false"
+ eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Real"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="CELU" eSuperTypes="#//NonLinearActivations/Nonlinear_activations_weightedsumnonlinearity_1">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="alpha" ordered="false"
+ eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Real"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="GELU" eSuperTypes="#//NonLinearActivations/Nonlinear_activations_weightedsumnonlinearity"/>
+ <eClassifiers xsi:type="ecore:EClass" name="Sigmoid" eSuperTypes="#//NonLinearActivations/Nonlinear_activations_weightedsumnonlinearity"/>
+ <eClassifiers xsi:type="ecore:EClass" name="Softplus" eSuperTypes="#//NonLinearActivations/Nonlinear_activations_weightedsumnonlinearity">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="beta" ordered="false"
+ eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Real"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="threshold" ordered="false"
+ eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Real"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="Softshrink" eSuperTypes="#//NonLinearActivations/shrink"/>
+ <eClassifiers xsi:type="ecore:EClass" name="Hardshrink" eSuperTypes="#//NonLinearActivations/shrink"/>
+ <eClassifiers xsi:type="ecore:EClass" name="Softsign" eSuperTypes="#//NonLinearActivations/Nonlinear_activations_weightedsumnonlinearity"/>
+ <eClassifiers xsi:type="ecore:EClass" name="Tanhshrink" eSuperTypes="#//NonLinearActivations/Nonlinear_activations_weightedsumnonlinearity"/>
+ <eClassifiers xsi:type="ecore:EClass" name="Tanh" eSuperTypes="#//NonLinearActivations/Nonlinear_activations_weightedsumnonlinearity"/>
+ <eClassifiers xsi:type="ecore:EClass" name="Threshold" eSuperTypes="#//NonLinearActivations/Nonlinear_activations_weightedsumnonlinearity_1">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="threshold" ordered="false"
+ lowerBound="1" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Real"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="value" ordered="false"
+ lowerBound="1" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Integer"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="Hardtanh" eSuperTypes="#//NonLinearActivations/Nonlinear_activations_weightedsumnonlinearity_1">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="min_val" ordered="false"
+ eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Real"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="max_val" ordered="false"
+ eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Real"/>
+ </eClassifiers>
+ </eSubpackages>
+ <eSubpackages name="SoftMinMaxActivations" nsURI="http://www.eclipse.org/papyrus/AIML/softminmax/1"
+ nsPrefix="AIML.SoftMinMaxActivations">
+ <eClassifiers xsi:type="ecore:EClass" name="SoftMinMax" abstract="true" eSuperTypes="#//Module/Model"/>
+ <eClassifiers xsi:type="ecore:EClass" name="SoftMinMax_1" abstract="true" eSuperTypes="#//SoftMinMaxActivations/SoftMinMax">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="dim" ordered="false"
+ eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Integer"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="Softmin" eSuperTypes="#//SoftMinMaxActivations/SoftMinMax_1"/>
+ <eClassifiers xsi:type="ecore:EClass" name="Softmax" eSuperTypes="#//SoftMinMaxActivations/SoftMinMax_1"/>
+ <eClassifiers xsi:type="ecore:EClass" name="Softmax2d" eSuperTypes="#//SoftMinMaxActivations/SoftMinMax"/>
+ <eClassifiers xsi:type="ecore:EClass" name="LogSoftmax" eSuperTypes="#//SoftMinMaxActivations/SoftMinMax_1"/>
+ <eClassifiers xsi:type="ecore:EClass" name="AdaptiveLogSoftmaxWithLoss" eSuperTypes="#//SoftMinMaxActivations/SoftMinMax">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="in_features" ordered="false"
+ lowerBound="1" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Integer"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="n_classes" ordered="false"
+ lowerBound="1" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Integer"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="cutoffs" ordered="false"
+ upperBound="-1" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Integer"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="div_value" ordered="false"
+ eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Real"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="head_biais" ordered="false"
+ eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Boolean"/>
+ </eClassifiers>
+ </eSubpackages>
+ <eSubpackages name="Normalization_layers" nsURI="http://www.eclipse.org/papyrus/AIML/normalization/1"
+ nsPrefix="AIML.Normalization_layers">
+ <eClassifiers xsi:type="ecore:EClass" name="Normalization_layers" abstract="true"
+ eSuperTypes="#//Module/Model"/>
+ <eClassifiers xsi:type="ecore:EClass" name="Normalization_layers_1" abstract="true"
+ eSuperTypes="#//Normalization_layers/Normalization_layers">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="eps" ordered="false"
+ eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Real"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="LayerNorm" eSuperTypes="#//Normalization_layers/Normalization_layers_1">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="normalized_shape" ordered="false"
+ upperBound="-1" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Integer"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="elementwise_affine" ordered="false"
+ eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Boolean"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="LocalResponseNorm" eSuperTypes="#//Normalization_layers/Normalization_layers">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="size" ordered="false"
+ lowerBound="1" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Integer"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="alpha" ordered="false"
+ eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Real"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="beta" ordered="false"
+ eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Real"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="k" ordered="false" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Real"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="Normalization_layers_1_1" eSuperTypes="#//Normalization_layers/Normalization_layers_1">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="affine" ordered="false"
+ eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Boolean"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="Normalization_layers_1_1_1" abstract="true"
+ eSuperTypes="#//Normalization_layers/Normalization_layers_1_1">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="num_features" ordered="false"
+ lowerBound="1" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Integer"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="momentum" ordered="false"
+ eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Real"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="track_running_stats"
+ ordered="false" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Boolean">
+ <eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
+ <details key="originalName" value="track_running_stats "/>
+ </eAnnotations>
+ </eStructuralFeatures>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="GroupNorm" eSuperTypes="#//Normalization_layers/Normalization_layers_1_1">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="num_groups" ordered="false"
+ lowerBound="1" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Integer"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="num_channels" ordered="false"
+ lowerBound="1" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Integer"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="BatchNorm1d" eSuperTypes="#//Normalization_layers/Normalization_layers_1_1_1"/>
+ <eClassifiers xsi:type="ecore:EClass" name="BatchNorm2d" eSuperTypes="#//Normalization_layers/Normalization_layers_1_1_1"/>
+ <eClassifiers xsi:type="ecore:EClass" name="BatchNorm3d" eSuperTypes="#//Normalization_layers/Normalization_layers_1_1_1"/>
+ <eClassifiers xsi:type="ecore:EClass" name="SyncBatchNorm" eSuperTypes="#//Normalization_layers/Normalization_layers_1_1_1">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="process_group" ordered="false"
+ eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Integer">
+ <eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
+ <details key="originalName" value="process_group "/>
+ </eAnnotations>
+ </eStructuralFeatures>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="InstanceNorm1d" eSuperTypes="#//Normalization_layers/Normalization_layers_1_1_1"/>
+ <eClassifiers xsi:type="ecore:EClass" name="InstanceNorm2d" eSuperTypes="#//Normalization_layers/Normalization_layers_1_1_1"/>
+ <eClassifiers xsi:type="ecore:EClass" name="InstanceNorm3d" eSuperTypes="#//Normalization_layers/Normalization_layers_1_1_1"/>
+ </eSubpackages>
+ <eSubpackages name="Recurrent_layers" nsURI="http://www.eclipse.org/papyrus/AIML/recurrent/1"
+ nsPrefix="AIML.Recurrent_layers">
+ <eClassifiers xsi:type="ecore:EClass" name="Recurrent_layers" abstract="true"
+ eSuperTypes="#//Module/Model">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="input_size" ordered="false"
+ lowerBound="1" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Integer"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="hidden_size" ordered="false"
+ lowerBound="1" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Integer"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="bias_pt" ordered="false"
+ eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Boolean"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="Recurrent_layers_1" abstract="true"
+ eSuperTypes="#//Recurrent_layers/Recurrent_layers">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="num_layers" ordered="false"
+ eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Integer"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="batch_first_pt" ordered="false"
+ eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Boolean"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="dropout" ordered="false"
+ eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Real"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="bidirectional_pt" ordered="false"
+ eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Boolean"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="activation" ordered="false"
+ eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//String"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="recurrent_activation"
+ ordered="false" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//String"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="use_bias" ordered="false"
+ eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Boolean"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="kernel_initializer" ordered="false"
+ eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//String"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="recurrent_initializer"
+ ordered="false" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//String"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="bias_initializer" ordered="false"
+ eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//String"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="return_sequences" ordered="false"
+ eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Boolean"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="return_state" ordered="false"
+ eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Boolean"/>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="bidirectional_k" ordered="false"
+ eType="#//Recurrent_layers/Recurrent_layers_1"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="recurrent_dropout" ordered="false"
+ lowerBound="1" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Real"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="RNNCell" eSuperTypes="#//Recurrent_layers/Recurrent_layers">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="nonlinearity" ordered="false"
+ eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//String"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="LSTMCell" eSuperTypes="#//Recurrent_layers/Recurrent_layers"/>
+ <eClassifiers xsi:type="ecore:EClass" name="GRUCell" eSuperTypes="#//Recurrent_layers/Recurrent_layers"/>
+ <eClassifiers xsi:type="ecore:EClass" name="RNN" eSuperTypes="#//Recurrent_layers/Recurrent_layers_1">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="nonlinearity" ordered="false"
+ eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//String"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="LSTM" eSuperTypes="#//Recurrent_layers/Recurrent_layers_1"/>
+ <eClassifiers xsi:type="ecore:EClass" name="GRU" eSuperTypes="#//Recurrent_layers/Recurrent_layers_1"/>
+ </eSubpackages>
+ <eSubpackages name="Transformer_layers" nsURI="http://www.eclipse.org/papyrus/AIML/transformer/1"
+ nsPrefix="AIML.Transformer_layers">
+ <eClassifiers xsi:type="ecore:EClass" name="Transformer_layers" abstract="true"
+ eSuperTypes="#//Module/Model"/>
+ <eClassifiers xsi:type="ecore:EClass" name="Transformer_layers_1" abstract="true"
+ eSuperTypes="#//Transformer_layers/Transformer_layers">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="d_model" ordered="false"
+ eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Integer"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="nhead" ordered="false"
+ eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Integer"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="dim_feedforward" ordered="false"
+ eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Integer"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="dropout" ordered="false"
+ eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Real"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="activation" ordered="false"
+ eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//String"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="Transformer_layers_2" abstract="true"
+ eSuperTypes="#//Transformer_layers/Transformer_layers">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="num_layers" ordered="false"
+ lowerBound="1" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Integer"/>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="norm" ordered="false"
+ eType="#//Normalization_layers/LayerNorm"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="Transformer" eSuperTypes="#//Transformer_layers/Transformer_layers_1">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="num_encoder_layers" ordered="false"
+ lowerBound="1" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Integer">
+ <eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
+ <details key="originalName" value="num_encoder_layers "/>
+ </eAnnotations>
+ </eStructuralFeatures>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="num_decoder_layers" ordered="false"
+ lowerBound="1" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Integer">
+ <eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
+ <details key="originalName" value="num_decoder_layers "/>
+ </eAnnotations>
+ </eStructuralFeatures>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="custom_encoder" ordered="false"
+ lowerBound="1" eType="#//Transformer_layers/TransformerEncoder"/>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="custom_decoder" ordered="false"
+ lowerBound="1" eType="#//Transformer_layers/TransformerDecoder"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="TransformerEncoder" eSuperTypes="#//Transformer_layers/Transformer_layers_2">
+ <eStructuralFeatures xsi:type="ecore:EReference" name="encoder_layer" ordered="false"
+ lowerBound="1" eType="#//Transformer_layers/TransformerEncoderLayer"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="TransformerEncoderLayer" eSuperTypes="#//Transformer_layers/Transformer_layers_1"/>
+ <eClassifiers xsi:type="ecore:EClass" name="TransformerDecoder" eSuperTypes="#//Transformer_layers/Transformer_layers_2">
+ <eStructuralFeatures xsi:type="ecore:EReference" name="decoder_layer" ordered="false"
+ lowerBound="1" eType="#//Transformer_layers/TransformerDecoderLayer"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="TransformerDecoderLayer" eSuperTypes="#//Transformer_layers/Transformer_layers_1"/>
+ </eSubpackages>
+ <eSubpackages name="Linear_layers" nsURI="http://www.eclipse.org/papyrus/AIML/linear/1"
+ nsPrefix="AIML.Linear_layers">
+ <eClassifiers xsi:type="ecore:EClass" name="Linear_layers" abstract="true" eSuperTypes="#//Module/Model"/>
+ <eClassifiers xsi:type="ecore:EClass" name="Identity" eSuperTypes="#//Linear_layers/Linear_layers"/>
+ <eClassifiers xsi:type="ecore:EClass" name="Linear_layers_1" abstract="true" eSuperTypes="#//Linear_layers/Linear_layers">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="out_features" ordered="false"
+ lowerBound="1" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Integer"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="bias" ordered="false"
+ eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Boolean"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="Linear" eSuperTypes="#//Linear_layers/Linear_layers_1">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="in_features" ordered="false"
+ eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Integer"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="activation" ordered="false"
+ eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//String"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="kernel_initializer" ordered="false"
+ eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//String"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="bias_initializer" ordered="false"
+ eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//String"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="Bilinear" eSuperTypes="#//Linear_layers/Linear_layers_1">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="in1_features" ordered="false"
+ lowerBound="1" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Integer"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="in2_features" ordered="false"
+ lowerBound="1" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Integer"/>
+ </eClassifiers>
+ </eSubpackages>
+ <eSubpackages name="Dropout_layers" nsURI="http://www.eclipse.org/papyrus/AIML/dropout/1"
+ nsPrefix="AIML.Dropout_layers">
+ <eClassifiers xsi:type="ecore:EClass" name="Dropout_layers" abstract="true" eSuperTypes="#//Module/Model">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="p" ordered="false" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Real"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="inplace" ordered="false"
+ eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Boolean"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="noise_shape" ordered="false"
+ upperBound="-1" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Integer"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="seed" ordered="false"
+ eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Integer"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="Dropout" eSuperTypes="#//Dropout_layers/Dropout_layers"/>
+ <eClassifiers xsi:type="ecore:EClass" name="Dropout2d" eSuperTypes="#//Dropout_layers/Dropout_layers"/>
+ <eClassifiers xsi:type="ecore:EClass" name="Dropout3d" eSuperTypes="#//Dropout_layers/Dropout_layers"/>
+ <eClassifiers xsi:type="ecore:EClass" name="AlphaDropout" eSuperTypes="#//Dropout_layers/Dropout_layers"/>
+ </eSubpackages>
+ <eSubpackages name="Sparse_layers" nsURI="http://www.eclipse.org/papyrus/AIML/sparse/1"
+ nsPrefix="AIML.Sparse_layers">
+ <eClassifiers xsi:type="ecore:EClass" name="Sparse_layers" abstract="true" eSuperTypes="#//Module/Model">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="num_embeddings" ordered="false"
+ lowerBound="1" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Integer"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="embedding_dim" ordered="false"
+ lowerBound="1" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Integer"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="max_norm" ordered="false"
+ eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Real"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="norm_type" ordered="false"
+ eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Real">
+ <eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
+ <details key="originalName" value="norm_type "/>
+ </eAnnotations>
+ </eStructuralFeatures>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="sparse" ordered="false"
+ eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Boolean"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="scale_grad_by_freq" ordered="false"
+ eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Boolean"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="Embedding" eSuperTypes="#//Sparse_layers/Sparse_layers">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="padding_idx" ordered="false"
+ eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Integer"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="EmbeddingBag" eSuperTypes="#//Sparse_layers/Sparse_layers">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="mode" ordered="false"
+ eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//String"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="include_last_offset"
+ ordered="false" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Boolean"/>
+ </eClassifiers>
+ </eSubpackages>
+ <eSubpackages name="Distance_functions" nsURI="http://www.eclipse.org/papyrus/AIML/distance/1"
+ nsPrefix="AIML.Distance_functions">
+ <eClassifiers xsi:type="ecore:EClass" name="Distance_functions" abstract="true"
+ eSuperTypes="#//Module/Model">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="eps" ordered="false"
+ eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Real"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="CosineSimilarity" eSuperTypes="#//Distance_functions/Distance_functions">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="dim" ordered="false"
+ eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Integer"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="PairwiseDistance" eSuperTypes="#//Distance_functions/Distance_functions">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="p" ordered="false" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Real"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="keepdim" ordered="false"
+ eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Boolean"/>
+ </eClassifiers>
+ </eSubpackages>
+ <eSubpackages name="Loss_functions" nsURI="http://www.eclipse.org/papyrus/AIML/loss/1"
+ nsPrefix="AIML.Loss_functions">
+ <eClassifiers xsi:type="ecore:EClass" name="Loss_functions" abstract="true" eSuperTypes="#//Module/Model">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="reduction" ordered="false"
+ eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//String"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="Loss_functions_1" abstract="true"
+ eSuperTypes="#//Loss_functions/Loss_functions">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="size_average" ordered="false"
+ eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Boolean"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="reduce" ordered="false"
+ eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Boolean"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="L1Loss" eSuperTypes="#//Loss_functions/Loss_functions_1"/>
+ <eClassifiers xsi:type="ecore:EClass" name="MSELoss" eSuperTypes="#//Loss_functions/Loss_functions_1"/>
+ <eClassifiers xsi:type="ecore:EClass" name="CTCLoss" eSuperTypes="#//Loss_functions/Loss_functions">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="blank" ordered="false"
+ eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Integer"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="zero_infinity" ordered="false"
+ eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Boolean"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="KLDivLoss" eSuperTypes="#//Loss_functions/Loss_functions_1"/>
+ <eClassifiers xsi:type="ecore:EClass" name="MultiLabelMarginLoss" eSuperTypes="#//Loss_functions/Loss_functions_1"/>
+ <eClassifiers xsi:type="ecore:EClass" name="Loss_functions_1_1" eSuperTypes="#//Loss_functions/Loss_functions_1">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="margin" ordered="false"
+ eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Real"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="Loss_functions_1_2" eSuperTypes="#//Loss_functions/Loss_functions_1">
+ <eStructuralFeatures xsi:type="ecore:EReference" name="weight" ordered="false"
+ eType="#//Tensor/Tensor"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="CosineEmbeddingLoss" eSuperTypes="#//Loss_functions/Loss_functions_1_1"/>
+ <eClassifiers xsi:type="ecore:EClass" name="MarginRankingLoss" eSuperTypes="#//Loss_functions/Loss_functions_1_1"/>
+ <eClassifiers xsi:type="ecore:EClass" name="HingeEmbeddingLoss" eSuperTypes="#//Loss_functions/Loss_functions_1_1"/>
+ <eClassifiers xsi:type="ecore:EClass" name="BCELoss" eSuperTypes="#//Loss_functions/Loss_functions_1_2"/>
+ <eClassifiers xsi:type="ecore:EClass" name="Loss_functions_1_1_1" abstract="true"
+ eSuperTypes="#//Loss_functions/Loss_functions_1_1">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="p" ordered="false" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Integer"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="MultiMarginLoss" eSuperTypes="#//Loss_functions/Loss_functions_1_1_1">
+ <eStructuralFeatures xsi:type="ecore:EReference" name="weight" ordered="false"
+ eType="#//Tensor/Tensor"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="TripletMarginLoss" eSuperTypes="#//Loss_functions/Loss_functions_1_1_1">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="swap" ordered="false"
+ eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Boolean"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="Loss_functions_1_2_1" abstract="true"
+ eSuperTypes="#//Loss_functions/Loss_functions_1_2">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="ignore_index" ordered="false"
+ eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Integer"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="CrossEntropyLoss" eSuperTypes="#//Loss_functions/Loss_functions_1_2_1"/>
+ <eClassifiers xsi:type="ecore:EClass" name="NLLLoss" eSuperTypes="#//Loss_functions/Loss_functions_1_2_1"/>
+ <eClassifiers xsi:type="ecore:EClass" name="PoissonNLLLoss" eSuperTypes="#//Loss_functions/Loss_functions_1_2">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="log_input" ordered="false"
+ eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Boolean"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="full" ordered="false"
+ eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Boolean"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="eps" ordered="false"
+ lowerBound="1" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Real"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="BCEWithLogitsLoss" eSuperTypes="#//Loss_functions/Loss_functions_1_2">
+ <eStructuralFeatures xsi:type="ecore:EReference" name="pos_weight" ordered="false"
+ eType="#//Tensor/Tensor"/>
+ </eClassifiers>
+ </eSubpackages>
+ <eSubpackages name="Vision_layers" nsURI="http://www.eclipse.org/papyrus/AIML/vision/1"
+ nsPrefix="AIML.Vision_layers">
+ <eClassifiers xsi:type="ecore:EClass" name="Vision_layers" abstract="true" eSuperTypes="#//Module/Model"/>
+ <eClassifiers xsi:type="ecore:EClass" name="Vision_layers_1" abstract="true" eSuperTypes="#//Vision_layers/Vision_layers">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="size" ordered="false"
+ upperBound="-1" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Integer"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="scale_factor" ordered="false"
+ upperBound="-1" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Real"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="PixelShuffle" eSuperTypes="#//Vision_layers/Vision_layers">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="upscale_factor" ordered="false"
+ lowerBound="1" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Integer"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="Upsample" eSuperTypes="#//Vision_layers/Vision_layers_1">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="mode" ordered="false"
+ eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//String"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="align_corners" ordered="false"
+ eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Boolean"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="UpsamplingNearest2d" eSuperTypes="#//Vision_layers/Vision_layers_1"/>
+ <eClassifiers xsi:type="ecore:EClass" name="UpsamplingBilinear2d" eSuperTypes="#//Vision_layers/Vision_layers_1"/>
+ </eSubpackages>
+ <eSubpackages name="DataParallel_layers" nsURI="http://www.eclipse.org/papyrus/AIML/dataparallel/1"
+ nsPrefix="AIML.DataParallel_layers">
+ <eClassifiers xsi:type="ecore:EClass" name="DataParallel_layers" abstract="true"
+ eSuperTypes="#//Module/Model">
+ <eStructuralFeatures xsi:type="ecore:EReference" name="module" ordered="false"
+ lowerBound="1" eType="#//Module/Model"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="device_ids" ordered="false"
+ upperBound="-1" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Integer"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="output_device" ordered="false"
+ upperBound="-1" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Integer"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="DistributedDataParallel" eSuperTypes="#//DataParallel_layers/DataParallel_layers">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="broadcast_buffers" ordered="false"
+ eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Boolean"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="process_group" ordered="false"
+ eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Integer"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="bucket_cap_mb" ordered="false"
+ eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Integer"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="find_unsused_parameters"
+ ordered="false" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Boolean"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="check_reduction" ordered="false"
+ eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Boolean"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="DataParallel" eSuperTypes="#//DataParallel_layers/DataParallel_layers"/>
+ </eSubpackages>
+ <eSubpackages name="Layer_weight_regularizers" nsURI="http:///AIML/Layer_weight_regularizers.ecore"
+ nsPrefix="AIML.Layer_weight_regularizers">
+ <eClassifiers xsi:type="ecore:EClass" name="l1" eSuperTypes="#//Layer_weight_regularizers/ReguWithl1"/>
+ <eClassifiers xsi:type="ecore:EClass" name="ReguWithl1" abstract="true">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="l1" ordered="false" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Real"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="l2" eSuperTypes="#//Layer_weight_regularizers/ReguWithl2"/>
+ <eClassifiers xsi:type="ecore:EClass" name="ReguWithl2" abstract="true">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="l2" ordered="false" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Real"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="l1_l2" eSuperTypes="#//Layer_weight_regularizers/ReguWithl1 #//Layer_weight_regularizers/ReguWithl2"/>
+ </eSubpackages>
+ <eSubpackages name="Layer_weight_initializers" nsURI="http:///AIML/Layer_weight_initializers.ecore"
+ nsPrefix="AIML.Layer_weight_initializers">
+ <eClassifiers xsi:type="ecore:EClass" name="random_normal" eSuperTypes="#//Layer_weight_initializers/initializer_with_mean_stddev"/>
+ <eClassifiers xsi:type="ecore:EClass" name="initializer_with_mean_stddev" abstract="true"
+ eSuperTypes="#//Layer_weight_initializers/initializer_with_seed">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="mean" ordered="false"
+ lowerBound="1" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Real"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="stddev" ordered="false"
+ lowerBound="1" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Real"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="initializer_with_seed" abstract="true">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="seed" ordered="false"
+ lowerBound="1" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Integer"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="random_uniform" eSuperTypes="#//Layer_weight_initializers/initializer_with_seed">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="minval" ordered="false"
+ lowerBound="1" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Real"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="maxval" ordered="false"
+ lowerBound="1" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Real"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="truncated_normal" eSuperTypes="#//Layer_weight_initializers/initializer_with_mean_stddev"/>
+ <eClassifiers xsi:type="ecore:EClass" name="zeros"/>
+ <eClassifiers xsi:type="ecore:EClass" name="ones"/>
+ <eClassifiers xsi:type="ecore:EClass" name="glorot_normal" eSuperTypes="#//Layer_weight_initializers/initializer_with_seed"/>
+ <eClassifiers xsi:type="ecore:EClass" name="glorot_uniform" eSuperTypes="#//Layer_weight_initializers/initializer_with_seed"/>
+ <eClassifiers xsi:type="ecore:EClass" name="identity" eSuperTypes="#//Layer_weight_initializers/initializer_with_gain"/>
+ <eClassifiers xsi:type="ecore:EClass" name="initializer_with_gain" abstract="true">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="gain" ordered="false"
+ lowerBound="1" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Real"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="orthogonal" eSuperTypes="#//Layer_weight_initializers/initializer_with_gain #//Layer_weight_initializers/initializer_with_seed"/>
+ <eClassifiers xsi:type="ecore:EClass" name="constant">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="value" ordered="false"
+ lowerBound="1" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Real"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="variance_scaling" eSuperTypes="#//Layer_weight_initializers/initializer_with_seed">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="scale" ordered="false"
+ lowerBound="1" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Real"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="mode" ordered="false"
+ lowerBound="1" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//String"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="distribution" ordered="false"
+ lowerBound="1" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//String"/>
+ </eClassifiers>
+ </eSubpackages>
+</ecore:EPackage>
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/profile/AIML.genmodel b/aiml/org.eclipse.papyrus.aiml.profile/profile/AIML.genmodel
new file mode 100644
index 0000000..383f3f1
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/profile/AIML.genmodel
@@ -0,0 +1,643 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<genmodel:GenModel xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:genmodel="http://www.eclipse.org/uml2/2.2.0/GenModel"
+ copyrightText="Copyright (c) 2020 CEA LIST

All rights reserved. This program and the accompanying materials are
made available under the terms of the Eclipse Public License v2.0 which
accompanies this distribution, and is available at
https://www.eclipse.org/legal/epl-2.0/

SPDX-License-Identifier: EPL-2.0
"
+ modelDirectory="/org.eclipse.papyrus.aiml.profile/src-gen" modelPluginID="org.eclipse.papyrus.aiml.profile"
+ modelName="AIML" nonNLSMarkers="true" rootExtendsClass="org.eclipse.emf.ecore.impl.MinimalEObjectImpl$Container"
+ importerID="org.eclipse.uml2.uml.ecore.importer" complianceLevel="8.0" copyrightFields="false"
+ usedGenPackages="../../org.eclipse.emf.ecore/model/Ecore.genmodel#//ecore ../../org.eclipse.uml2.types/model/Types.genmodel#//types ../../org.eclipse.uml2.uml/model/UML.genmodel#//uml"
+ operationReflection="true" importOrganizing="true">
+ <genAnnotations source="http://www.eclipse.org/emf/2002/GenModel/importer/org.eclipse.uml2.uml.ecore.importer">
+ <details key="OPPOSITE_ROLE_NAMES" value="IGNORE"/>
+ <details key="DUPLICATE_FEATURES" value="DISCARD"/>
+ <details key="ANNOTATION_DETAILS" value="PROCESS"/>
+ <details key="PROPERTY_DEFAULT_EXPRESSIONS" value="IGNORE"/>
+ <details key="DUPLICATE_FEATURE_INHERITANCE" value="DISCARD"/>
+ <details key="COMMENTS" value="PROCESS"/>
+ <details key="DERIVED_FEATURES" value="PROCESS"/>
+ <details key="SUPER_CLASS_ORDER" value="PROCESS"/>
+ <details key="DUPLICATE_OPERATION_INHERITANCE" value="DISCARD"/>
+ <details key="REDEFINING_OPERATIONS" value="REPORT"/>
+ <details key="INVARIANT_CONSTRAINTS" value="PROCESS"/>
+ <details key="UNION_PROPERTIES" value="REPORT"/>
+ <details key="DUPLICATE_OPERATIONS" value="DISCARD"/>
+ <details key="NON_API_INVARIANTS" value="IGNORE"/>
+ <details key="CAMEL_CASE_NAMES" value="IGNORE"/>
+ <details key="SUBSETTING_PROPERTIES" value="REPORT"/>
+ <details key="OPERATION_BODIES" value="IGNORE"/>
+ <details key="ECORE_TAGGED_VALUES" value="PROCESS"/>
+ <details key="UNTYPED_PROPERTIES" value="REPORT"/>
+ <details key="REDEFINING_PROPERTIES" value="REPORT"/>
+ <details key="INVOCATION_DELEGATES" value="IGNORE"/>
+ <details key="VALIDATION_DELEGATES" value="IGNORE"/>
+ </genAnnotations>
+ <foreignModel>AIML.profile.uml</foreignModel>
+ <genPackages xsi:type="genmodel:GenPackage" prefix="AIML" basePackage="org.eclipse.papyrus.aiml.profile"
+ disposableProviderFactory="true" ecorePackage="AIML.ecore#/">
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//SmoothL1Loss"/>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//SoftMarginLoss"/>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//MultiLabelSoftMarginLoss"/>
+ <nestedGenPackages xsi:type="genmodel:GenPackage" prefix="Module" basePackage="org.eclipse.papyrus.aiml.profile.AIML"
+ disposableProviderFactory="true" ecorePackage="AIML.ecore#//Module">
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//Module/Model">
+ <genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
+ propertySortChoices="true" ecoreFeature="ecore:EReference AIML.ecore#//Module/Model/base_Class"/>
+ <genFeatures xsi:type="genmodel:GenFeature" property="Readonly" createChild="false"
+ ecoreFeature="ecore:EAttribute AIML.ecore#//Module/Model/name"/>
+ <genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
+ propertySortChoices="true" ecoreFeature="ecore:EReference AIML.ecore#//Module/Model/data"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Module/Model/requires_grad"/>
+ <genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
+ propertySortChoices="true" ecoreFeature="ecore:EReference AIML.ecore#//Module/Model/subModule"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Module/Model/optimizer"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Module/Model/loss"/>
+ </genClasses>
+ </nestedGenPackages>
+ <nestedGenPackages xsi:type="genmodel:GenPackage" prefix="Tensor" basePackage="org.eclipse.papyrus.aiml.profile.AIML"
+ disposableProviderFactory="true" ecorePackage="AIML.ecore#//Tensor">
+ <genEnums xsi:type="genmodel:GenEnum" typeSafeEnumCompatible="false" ecoreEnum="AIML.ecore#//Tensor/EDType">
+ <genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="AIML.ecore#//Tensor/EDType/float32"/>
+ <genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="AIML.ecore#//Tensor/EDType/float64"/>
+ <genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="AIML.ecore#//Tensor/EDType/float16"/>
+ <genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="AIML.ecore#//Tensor/EDType/uint8"/>
+ <genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="AIML.ecore#//Tensor/EDType/int8"/>
+ <genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="AIML.ecore#//Tensor/EDType/int16"/>
+ <genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="AIML.ecore#//Tensor/EDType/int32"/>
+ <genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="AIML.ecore#//Tensor/EDType/int64"/>
+ <genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="AIML.ecore#//Tensor/EDType/bool"/>
+ </genEnums>
+ <genEnums xsi:type="genmodel:GenEnum" typeSafeEnumCompatible="false" ecoreEnum="AIML.ecore#//Tensor/ETensorTypes">
+ <genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="AIML.ecore#//Tensor/ETensorTypes/FloatTensor"/>
+ <genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="AIML.ecore#//Tensor/ETensorTypes/DoubleTensor"/>
+ <genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="AIML.ecore#//Tensor/ETensorTypes/HalfTensor"/>
+ <genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="AIML.ecore#//Tensor/ETensorTypes/ByteTensor"/>
+ <genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="AIML.ecore#//Tensor/ETensorTypes/CharTensor"/>
+ <genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="AIML.ecore#//Tensor/ETensorTypes/ShortTensor"/>
+ <genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="AIML.ecore#//Tensor/ETensorTypes/IntTensor"/>
+ <genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="AIML.ecore#//Tensor/ETensorTypes/LongTensor"/>
+ <genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="AIML.ecore#//Tensor/ETensorTypes/BoolTensor"/>
+ </genEnums>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//Tensor/Tensor">
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Tensor/Tensor/data"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Tensor/Tensor/dtype"/>
+ <genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
+ propertySortChoices="true" ecoreFeature="ecore:EReference AIML.ecore#//Tensor/Tensor/device"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Tensor/Tensor/requires_grad"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Tensor/Tensor/pin_memory"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Tensor/Tensor/shape"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Tensor/Tensor/name"/>
+ <genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
+ propertySortChoices="true" ecoreFeature="ecore:EReference AIML.ecore#//Tensor/Tensor/base_Class"/>
+ </genClasses>
+ </nestedGenPackages>
+ <nestedGenPackages xsi:type="genmodel:GenPackage" prefix="Datatypes" basePackage="org.eclipse.papyrus.aiml.profile.AIML"
+ disposableProviderFactory="true" ecorePackage="AIML.ecore#//datatypes">
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//datatypes/Device">
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//datatypes/Device/type"/>
+ </genClasses>
+ </nestedGenPackages>
+ <nestedGenPackages xsi:type="genmodel:GenPackage" prefix="Pooling_layers" basePackage="org.eclipse.papyrus.aiml.profile.AIML"
+ disposableProviderFactory="true" ecorePackage="AIML.ecore#//Pooling_layers">
+ <genClasses xsi:type="genmodel:GenClass" image="false" ecoreClass="AIML.ecore#//Pooling_layers/Pooling_layers"/>
+ <genClasses xsi:type="genmodel:GenClass" image="false" ecoreClass="AIML.ecore#//Pooling_layers/Pooling_layers_1">
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Pooling_layers/Pooling_layers_1/kernel_size"/>
+ </genClasses>
+ <genClasses xsi:type="genmodel:GenClass" image="false" ecoreClass="AIML.ecore#//Pooling_layers/Pooling_layers_2">
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Pooling_layers/Pooling_layers_2/output_size"/>
+ </genClasses>
+ <genClasses xsi:type="genmodel:GenClass" image="false" ecoreClass="AIML.ecore#//Pooling_layers/AdaptativeMaxPool">
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Pooling_layers/AdaptativeMaxPool/return_indices"/>
+ </genClasses>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//Pooling_layers/AdaptativeMaxPool1d"/>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//Pooling_layers/AdaptativeMaxPool2d"/>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//Pooling_layers/AdaptativeMaxPool3d"/>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//Pooling_layers/AdaptiveAvgPool3d"/>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//Pooling_layers/AdaptiveAvgPool2d"/>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//Pooling_layers/AdaptiveAvgPool1d"/>
+ <genClasses xsi:type="genmodel:GenClass" image="false" ecoreClass="AIML.ecore#//Pooling_layers/Pooling_layers_1_1">
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Pooling_layers/Pooling_layers_1_1/stride"/>
+ </genClasses>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//Pooling_layers/MaxPool1d"/>
+ <genClasses xsi:type="genmodel:GenClass" image="false" ecoreClass="AIML.ecore#//Pooling_layers/MaxPool">
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Pooling_layers/MaxPool/dilation"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Pooling_layers/MaxPool/return_indices"/>
+ </genClasses>
+ <genClasses xsi:type="genmodel:GenClass" image="false" ecoreClass="AIML.ecore#//Pooling_layers/Pooling_layers_1_1_1_1">
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Pooling_layers/Pooling_layers_1_1_1_1/ceil_mode"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Pooling_layers/Pooling_layers_1_1_1_1/pool_size"/>
+ </genClasses>
+ <genClasses xsi:type="genmodel:GenClass" image="false" ecoreClass="AIML.ecore#//Pooling_layers/Pooling_layers_1_1_1">
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Pooling_layers/Pooling_layers_1_1_1/padding"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Pooling_layers/Pooling_layers_1_1_1/padding_k"/>
+ </genClasses>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//Pooling_layers/MaxUnpool1d"/>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//Pooling_layers/AvgPool1d"/>
+ <genClasses xsi:type="genmodel:GenClass" image="false" ecoreClass="AIML.ecore#//Pooling_layers/Pooling_layers_1_1_2_1">
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Pooling_layers/Pooling_layers_1_1_2_1/count_include_pad"/>
+ </genClasses>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//Pooling_layers/MaxUnpool2d"/>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//Pooling_layers/MaxUnpool3d"/>
+ <genClasses xsi:type="genmodel:GenClass" image="false" ecoreClass="AIML.ecore#//Pooling_layers/Pooling_layers_1_1_2">
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Pooling_layers/Pooling_layers_1_1_2/ceil_mode"/>
+ </genClasses>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//Pooling_layers/LPPool1d"/>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//Pooling_layers/LPPool2d"/>
+ <genClasses xsi:type="genmodel:GenClass" image="false" ecoreClass="AIML.ecore#//Pooling_layers/AvgPool2d3d">
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Pooling_layers/AvgPool2d3d/divisor_override"/>
+ </genClasses>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//Pooling_layers/AvgPool2d"/>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//Pooling_layers/AvgPool3d"/>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//Pooling_layers/MaxPool2d"/>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//Pooling_layers/MaxPool3d"/>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//Pooling_layers/FractionalMaxPool2d">
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Pooling_layers/FractionalMaxPool2d/output_size"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Pooling_layers/FractionalMaxPool2d/output_ratio"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Pooling_layers/FractionalMaxPool2d/return_indices"/>
+ </genClasses>
+ </nestedGenPackages>
+ <nestedGenPackages xsi:type="genmodel:GenPackage" prefix="Convolution_layers"
+ basePackage="org.eclipse.papyrus.aiml.profile.AIML" disposableProviderFactory="true"
+ ecorePackage="AIML.ecore#//Convolution_layers">
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//Convolution_layers/Convolution">
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Convolution_layers/Convolution/in_channels"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Convolution_layers/Convolution/groups"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Convolution_layers/Convolution/biais"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Convolution_layers/Convolution/padding_mode"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Convolution_layers/Convolution/data_format"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Convolution_layers/Convolution/dilation_rate"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Convolution_layers/Convolution/activation"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Convolution_layers/Convolution/bias_initializer"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Convolution_layers/Convolution/activity_regularizer"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Convolution_layers/Convolution/bias_constraint"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Convolution_layers/Convolution/bias_regularizer"/>
+ </genClasses>
+ <genClasses xsi:type="genmodel:GenClass" image="false" ecoreClass="AIML.ecore#//Convolution_layers/Convolution_layers">
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Convolution_layers/Convolution_layers/kernel_size"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Convolution_layers/Convolution_layers/stride"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Convolution_layers/Convolution_layers/padding"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Convolution_layers/Convolution_layers/dilation"/>
+ </genClasses>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//Convolution_layers/Unfold"/>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//Convolution_layers/Fold">
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Convolution_layers/Fold/output_size"/>
+ </genClasses>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//Convolution_layers/Conv2d"/>
+ <genClasses xsi:type="genmodel:GenClass" image="false" ecoreClass="AIML.ecore#//Convolution_layers/basic">
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Convolution_layers/basic/kernel_initializer"/>
+ <genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
+ propertySortChoices="true" ecoreFeature="ecore:EReference AIML.ecore#//Convolution_layers/basic/kernel_constraint"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Convolution_layers/basic/kernel_regularizer"/>
+ </genClasses>
+ <genClasses xsi:type="genmodel:GenClass" image="false" ecoreClass="AIML.ecore#//Convolution_layers/LayerWithFilter">
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Convolution_layers/LayerWithFilter/out_channels"/>
+ </genClasses>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//Convolution_layers/Conv3d"/>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//Convolution_layers/ConvTranspose1d"/>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//Convolution_layers/ConvTranspose2d"/>
+ <genClasses xsi:type="genmodel:GenClass" image="false" ecoreClass="AIML.ecore#//Convolution_layers/transpose">
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Convolution_layers/transpose/output_padding"/>
+ </genClasses>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//Convolution_layers/ConvTranspose3d"/>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//Convolution_layers/Conv1d"/>
+ <genClasses xsi:type="genmodel:GenClass" image="false" ecoreClass="AIML.ecore#//Convolution_layers/Separable">
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Convolution_layers/Separable/depth_multiplier"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Convolution_layers/Separable/depthwise_initializer"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Convolution_layers/Separable/pointwise_initializer"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Convolution_layers/Separable/depthwise_regularizer"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Convolution_layers/Separable/poitnwise_regularizer"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Convolution_layers/Separable/depthwise_constraint"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Convolution_layers/Separable/pointwise_constraint"/>
+ </genClasses>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//Convolution_layers/SeparableConv2D"/>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//Convolution_layers/SeparableConv1D"/>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//Convolution_layers/DepthwiseConv2D">
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Convolution_layers/DepthwiseConv2D/depth_multiplier"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Convolution_layers/DepthwiseConv2D/depthwise_initializer"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Convolution_layers/DepthwiseConv2D/depthwise_regularizer"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Convolution_layers/DepthwiseConv2D/depthwise_constraint"/>
+ </genClasses>
+ </nestedGenPackages>
+ <nestedGenPackages xsi:type="genmodel:GenPackage" prefix="Layer_weight_constraints"
+ basePackage="org.eclipse.papyrus.aiml.profile.AIML" disposableProviderFactory="true"
+ ecorePackage="AIML.ecore#//Layer_weight_constraints">
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//Layer_weight_constraints/min_max_norm">
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Layer_weight_constraints/min_max_norm/min_value"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Layer_weight_constraints/min_max_norm/rate"/>
+ </genClasses>
+ <genClasses xsi:type="genmodel:GenClass" image="false" ecoreClass="AIML.ecore#//Layer_weight_constraints/NormWithMaxValue">
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Layer_weight_constraints/NormWithMaxValue/max_value"/>
+ </genClasses>
+ <genClasses xsi:type="genmodel:GenClass" image="false" ecoreClass="AIML.ecore#//Layer_weight_constraints/norm">
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Layer_weight_constraints/norm/axis"/>
+ </genClasses>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//Layer_weight_constraints/max_norm"/>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//Layer_weight_constraints/non_neg"/>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//Layer_weight_constraints/radial_constraint"/>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//Layer_weight_constraints/unit_norm"/>
+ <genClasses xsi:type="genmodel:GenClass" image="false" ecoreClass="AIML.ecore#//Layer_weight_constraints/constraints"/>
+ </nestedGenPackages>
+ <nestedGenPackages xsi:type="genmodel:GenPackage" prefix="Padding_layers" basePackage="org.eclipse.papyrus.aiml.profile.AIML"
+ disposableProviderFactory="true" ecorePackage="AIML.ecore#//Padding_layers">
+ <genClasses xsi:type="genmodel:GenClass" image="false" ecoreClass="AIML.ecore#//Padding_layers/Padding_layers">
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Padding_layers/Padding_layers/padding"/>
+ </genClasses>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//Padding_layers/ReflectionPad1d"/>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//Padding_layers/ReflectionPad2d"/>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//Padding_layers/ReplicationPad1d"/>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//Padding_layers/ReplicationPad2d"/>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//Padding_layers/ReplicationPad3d"/>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//Padding_layers/ZeroPad2d"/>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//Padding_layers/ConstantPad1d"/>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//Padding_layers/ConstantPad2d"/>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//Padding_layers/ConstantPad3d"/>
+ </nestedGenPackages>
+ <nestedGenPackages xsi:type="genmodel:GenPackage" prefix="NonLinearActivations"
+ basePackage="org.eclipse.papyrus.aiml.profile.AIML" disposableProviderFactory="true"
+ ecorePackage="AIML.ecore#//NonLinearActivations">
+ <genClasses xsi:type="genmodel:GenClass" image="false" ecoreClass="AIML.ecore#//NonLinearActivations/Nonlinear_activations_weightedsumnonlinearity"/>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//NonLinearActivations/ELU">
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//NonLinearActivations/ELU/alpha"/>
+ </genClasses>
+ <genClasses xsi:type="genmodel:GenClass" image="false" ecoreClass="AIML.ecore#//NonLinearActivations/Nonlinear_activations_weightedsumnonlinearity_1">
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//NonLinearActivations/Nonlinear_activations_weightedsumnonlinearity_1/inplace"/>
+ </genClasses>
+ <genClasses xsi:type="genmodel:GenClass" image="false" ecoreClass="AIML.ecore#//NonLinearActivations/shrink">
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//NonLinearActivations/shrink/lambd"/>
+ </genClasses>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//NonLinearActivations/LeakyReLU">
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//NonLinearActivations/LeakyReLU/negative_slope"/>
+ </genClasses>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//NonLinearActivations/LogSigmoid"/>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//NonLinearActivations/MultiheadAttention">
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//NonLinearActivations/MultiheadAttention/embed_dim"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//NonLinearActivations/MultiheadAttention/num_heads"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//NonLinearActivations/MultiheadAttention/dropout"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//NonLinearActivations/MultiheadAttention/bias"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//NonLinearActivations/MultiheadAttention/add_bias_kv"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//NonLinearActivations/MultiheadAttention/add_zero_attn"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//NonLinearActivations/MultiheadAttention/kdim"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//NonLinearActivations/MultiheadAttention/vdim"/>
+ </genClasses>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//NonLinearActivations/PReLU">
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//NonLinearActivations/PReLU/num_parameters"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//NonLinearActivations/PReLU/init"/>
+ </genClasses>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//NonLinearActivations/ReLU"/>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//NonLinearActivations/ReLU6"/>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//NonLinearActivations/SELU"/>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//NonLinearActivations/RReLU">
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//NonLinearActivations/RReLU/lower"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//NonLinearActivations/RReLU/upper"/>
+ </genClasses>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//NonLinearActivations/CELU">
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//NonLinearActivations/CELU/alpha"/>
+ </genClasses>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//NonLinearActivations/GELU"/>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//NonLinearActivations/Sigmoid"/>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//NonLinearActivations/Softplus">
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//NonLinearActivations/Softplus/beta"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//NonLinearActivations/Softplus/threshold"/>
+ </genClasses>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//NonLinearActivations/Softshrink"/>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//NonLinearActivations/Hardshrink"/>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//NonLinearActivations/Softsign"/>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//NonLinearActivations/Tanhshrink"/>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//NonLinearActivations/Tanh"/>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//NonLinearActivations/Threshold">
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//NonLinearActivations/Threshold/threshold"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//NonLinearActivations/Threshold/value"/>
+ </genClasses>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//NonLinearActivations/Hardtanh">
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//NonLinearActivations/Hardtanh/min_val"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//NonLinearActivations/Hardtanh/max_val"/>
+ </genClasses>
+ </nestedGenPackages>
+ <nestedGenPackages xsi:type="genmodel:GenPackage" prefix="SoftMinMaxActivations"
+ basePackage="org.eclipse.papyrus.aiml.profile.AIML" disposableProviderFactory="true"
+ ecorePackage="AIML.ecore#//SoftMinMaxActivations">
+ <genClasses xsi:type="genmodel:GenClass" image="false" ecoreClass="AIML.ecore#//SoftMinMaxActivations/SoftMinMax"/>
+ <genClasses xsi:type="genmodel:GenClass" image="false" ecoreClass="AIML.ecore#//SoftMinMaxActivations/SoftMinMax_1">
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//SoftMinMaxActivations/SoftMinMax_1/dim"/>
+ </genClasses>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//SoftMinMaxActivations/Softmin"/>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//SoftMinMaxActivations/Softmax"/>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//SoftMinMaxActivations/Softmax2d"/>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//SoftMinMaxActivations/LogSoftmax"/>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//SoftMinMaxActivations/AdaptiveLogSoftmaxWithLoss">
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//SoftMinMaxActivations/AdaptiveLogSoftmaxWithLoss/in_features"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//SoftMinMaxActivations/AdaptiveLogSoftmaxWithLoss/n_classes"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//SoftMinMaxActivations/AdaptiveLogSoftmaxWithLoss/cutoffs"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//SoftMinMaxActivations/AdaptiveLogSoftmaxWithLoss/div_value"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//SoftMinMaxActivations/AdaptiveLogSoftmaxWithLoss/head_biais"/>
+ </genClasses>
+ </nestedGenPackages>
+ <nestedGenPackages xsi:type="genmodel:GenPackage" prefix="Normalization_layers"
+ basePackage="org.eclipse.papyrus.aiml.profile.AIML" disposableProviderFactory="true"
+ ecorePackage="AIML.ecore#//Normalization_layers">
+ <genClasses xsi:type="genmodel:GenClass" image="false" ecoreClass="AIML.ecore#//Normalization_layers/Normalization_layers"/>
+ <genClasses xsi:type="genmodel:GenClass" image="false" ecoreClass="AIML.ecore#//Normalization_layers/Normalization_layers_1">
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Normalization_layers/Normalization_layers_1/eps"/>
+ </genClasses>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//Normalization_layers/LayerNorm">
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Normalization_layers/LayerNorm/normalized_shape"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Normalization_layers/LayerNorm/elementwise_affine"/>
+ </genClasses>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//Normalization_layers/LocalResponseNorm">
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Normalization_layers/LocalResponseNorm/size"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Normalization_layers/LocalResponseNorm/alpha"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Normalization_layers/LocalResponseNorm/beta"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Normalization_layers/LocalResponseNorm/k"/>
+ </genClasses>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//Normalization_layers/Normalization_layers_1_1">
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Normalization_layers/Normalization_layers_1_1/affine"/>
+ </genClasses>
+ <genClasses xsi:type="genmodel:GenClass" image="false" ecoreClass="AIML.ecore#//Normalization_layers/Normalization_layers_1_1_1">
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Normalization_layers/Normalization_layers_1_1_1/num_features"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Normalization_layers/Normalization_layers_1_1_1/momentum"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Normalization_layers/Normalization_layers_1_1_1/track_running_stats"/>
+ </genClasses>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//Normalization_layers/GroupNorm">
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Normalization_layers/GroupNorm/num_groups"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Normalization_layers/GroupNorm/num_channels"/>
+ </genClasses>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//Normalization_layers/BatchNorm1d"/>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//Normalization_layers/BatchNorm2d"/>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//Normalization_layers/BatchNorm3d"/>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//Normalization_layers/SyncBatchNorm">
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Normalization_layers/SyncBatchNorm/process_group"/>
+ </genClasses>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//Normalization_layers/InstanceNorm1d"/>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//Normalization_layers/InstanceNorm2d"/>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//Normalization_layers/InstanceNorm3d"/>
+ </nestedGenPackages>
+ <nestedGenPackages xsi:type="genmodel:GenPackage" prefix="Recurrent_layers" basePackage="org.eclipse.papyrus.aiml.profile.AIML"
+ disposableProviderFactory="true" ecorePackage="AIML.ecore#//Recurrent_layers">
+ <genClasses xsi:type="genmodel:GenClass" image="false" ecoreClass="AIML.ecore#//Recurrent_layers/Recurrent_layers">
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Recurrent_layers/Recurrent_layers/input_size"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Recurrent_layers/Recurrent_layers/hidden_size"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Recurrent_layers/Recurrent_layers/bias_pt"/>
+ </genClasses>
+ <genClasses xsi:type="genmodel:GenClass" image="false" ecoreClass="AIML.ecore#//Recurrent_layers/Recurrent_layers_1">
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Recurrent_layers/Recurrent_layers_1/num_layers"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Recurrent_layers/Recurrent_layers_1/batch_first_pt"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Recurrent_layers/Recurrent_layers_1/dropout"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Recurrent_layers/Recurrent_layers_1/bidirectional_pt"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Recurrent_layers/Recurrent_layers_1/activation"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Recurrent_layers/Recurrent_layers_1/recurrent_activation"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Recurrent_layers/Recurrent_layers_1/use_bias"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Recurrent_layers/Recurrent_layers_1/kernel_initializer"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Recurrent_layers/Recurrent_layers_1/recurrent_initializer"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Recurrent_layers/Recurrent_layers_1/bias_initializer"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Recurrent_layers/Recurrent_layers_1/return_sequences"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Recurrent_layers/Recurrent_layers_1/return_state"/>
+ <genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
+ propertySortChoices="true" ecoreFeature="ecore:EReference AIML.ecore#//Recurrent_layers/Recurrent_layers_1/bidirectional_k"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Recurrent_layers/Recurrent_layers_1/recurrent_dropout"/>
+ </genClasses>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//Recurrent_layers/RNNCell">
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Recurrent_layers/RNNCell/nonlinearity"/>
+ </genClasses>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//Recurrent_layers/LSTMCell"/>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//Recurrent_layers/GRUCell"/>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//Recurrent_layers/RNN">
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Recurrent_layers/RNN/nonlinearity"/>
+ </genClasses>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//Recurrent_layers/LSTM"/>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//Recurrent_layers/GRU"/>
+ </nestedGenPackages>
+ <nestedGenPackages xsi:type="genmodel:GenPackage" prefix="Transformer_layers"
+ basePackage="org.eclipse.papyrus.aiml.profile.AIML" disposableProviderFactory="true"
+ ecorePackage="AIML.ecore#//Transformer_layers">
+ <genClasses xsi:type="genmodel:GenClass" image="false" ecoreClass="AIML.ecore#//Transformer_layers/Transformer_layers"/>
+ <genClasses xsi:type="genmodel:GenClass" image="false" ecoreClass="AIML.ecore#//Transformer_layers/Transformer_layers_1">
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Transformer_layers/Transformer_layers_1/d_model"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Transformer_layers/Transformer_layers_1/nhead"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Transformer_layers/Transformer_layers_1/dim_feedforward"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Transformer_layers/Transformer_layers_1/dropout"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Transformer_layers/Transformer_layers_1/activation"/>
+ </genClasses>
+ <genClasses xsi:type="genmodel:GenClass" image="false" ecoreClass="AIML.ecore#//Transformer_layers/Transformer_layers_2">
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Transformer_layers/Transformer_layers_2/num_layers"/>
+ <genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
+ propertySortChoices="true" ecoreFeature="ecore:EReference AIML.ecore#//Transformer_layers/Transformer_layers_2/norm"/>
+ </genClasses>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//Transformer_layers/Transformer">
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Transformer_layers/Transformer/num_encoder_layers"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Transformer_layers/Transformer/num_decoder_layers"/>
+ <genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
+ propertySortChoices="true" ecoreFeature="ecore:EReference AIML.ecore#//Transformer_layers/Transformer/custom_encoder"/>
+ <genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
+ propertySortChoices="true" ecoreFeature="ecore:EReference AIML.ecore#//Transformer_layers/Transformer/custom_decoder"/>
+ </genClasses>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//Transformer_layers/TransformerEncoder">
+ <genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
+ propertySortChoices="true" ecoreFeature="ecore:EReference AIML.ecore#//Transformer_layers/TransformerEncoder/encoder_layer"/>
+ </genClasses>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//Transformer_layers/TransformerEncoderLayer"/>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//Transformer_layers/TransformerDecoder">
+ <genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
+ propertySortChoices="true" ecoreFeature="ecore:EReference AIML.ecore#//Transformer_layers/TransformerDecoder/decoder_layer"/>
+ </genClasses>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//Transformer_layers/TransformerDecoderLayer"/>
+ </nestedGenPackages>
+ <nestedGenPackages xsi:type="genmodel:GenPackage" prefix="Linear_layers" basePackage="org.eclipse.papyrus.aiml.profile.AIML"
+ disposableProviderFactory="true" ecorePackage="AIML.ecore#//Linear_layers">
+ <genClasses xsi:type="genmodel:GenClass" image="false" ecoreClass="AIML.ecore#//Linear_layers/Linear_layers"/>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//Linear_layers/Identity"/>
+ <genClasses xsi:type="genmodel:GenClass" image="false" ecoreClass="AIML.ecore#//Linear_layers/Linear_layers_1">
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Linear_layers/Linear_layers_1/out_features"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Linear_layers/Linear_layers_1/bias"/>
+ </genClasses>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//Linear_layers/Linear">
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Linear_layers/Linear/in_features"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Linear_layers/Linear/activation"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Linear_layers/Linear/kernel_initializer"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Linear_layers/Linear/bias_initializer"/>
+ </genClasses>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//Linear_layers/Bilinear">
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Linear_layers/Bilinear/in1_features"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Linear_layers/Bilinear/in2_features"/>
+ </genClasses>
+ </nestedGenPackages>
+ <nestedGenPackages xsi:type="genmodel:GenPackage" prefix="Dropout_layers" basePackage="org.eclipse.papyrus.aiml.profile.AIML"
+ disposableProviderFactory="true" ecorePackage="AIML.ecore#//Dropout_layers">
+ <genClasses xsi:type="genmodel:GenClass" image="false" ecoreClass="AIML.ecore#//Dropout_layers/Dropout_layers">
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Dropout_layers/Dropout_layers/p"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Dropout_layers/Dropout_layers/inplace"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Dropout_layers/Dropout_layers/noise_shape"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Dropout_layers/Dropout_layers/seed"/>
+ </genClasses>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//Dropout_layers/Dropout"/>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//Dropout_layers/Dropout2d"/>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//Dropout_layers/Dropout3d"/>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//Dropout_layers/AlphaDropout"/>
+ </nestedGenPackages>
+ <nestedGenPackages xsi:type="genmodel:GenPackage" prefix="Sparse_layers" basePackage="org.eclipse.papyrus.aiml.profile.AIML"
+ disposableProviderFactory="true" ecorePackage="AIML.ecore#//Sparse_layers">
+ <genClasses xsi:type="genmodel:GenClass" image="false" ecoreClass="AIML.ecore#//Sparse_layers/Sparse_layers">
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Sparse_layers/Sparse_layers/num_embeddings"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Sparse_layers/Sparse_layers/embedding_dim"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Sparse_layers/Sparse_layers/max_norm"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Sparse_layers/Sparse_layers/norm_type"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Sparse_layers/Sparse_layers/sparse"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Sparse_layers/Sparse_layers/scale_grad_by_freq"/>
+ </genClasses>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//Sparse_layers/Embedding">
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Sparse_layers/Embedding/padding_idx"/>
+ </genClasses>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//Sparse_layers/EmbeddingBag">
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Sparse_layers/EmbeddingBag/mode"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Sparse_layers/EmbeddingBag/include_last_offset"/>
+ </genClasses>
+ </nestedGenPackages>
+ <nestedGenPackages xsi:type="genmodel:GenPackage" prefix="Distance_functions"
+ basePackage="org.eclipse.papyrus.aiml.profile.AIML" disposableProviderFactory="true"
+ ecorePackage="AIML.ecore#//Distance_functions">
+ <genClasses xsi:type="genmodel:GenClass" image="false" ecoreClass="AIML.ecore#//Distance_functions/Distance_functions">
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Distance_functions/Distance_functions/eps"/>
+ </genClasses>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//Distance_functions/CosineSimilarity">
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Distance_functions/CosineSimilarity/dim"/>
+ </genClasses>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//Distance_functions/PairwiseDistance">
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Distance_functions/PairwiseDistance/p"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Distance_functions/PairwiseDistance/keepdim"/>
+ </genClasses>
+ </nestedGenPackages>
+ <nestedGenPackages xsi:type="genmodel:GenPackage" prefix="Loss_functions" basePackage="org.eclipse.papyrus.aiml.profile.AIML"
+ disposableProviderFactory="true" ecorePackage="AIML.ecore#//Loss_functions">
+ <genClasses xsi:type="genmodel:GenClass" image="false" ecoreClass="AIML.ecore#//Loss_functions/Loss_functions">
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Loss_functions/Loss_functions/reduction"/>
+ </genClasses>
+ <genClasses xsi:type="genmodel:GenClass" image="false" ecoreClass="AIML.ecore#//Loss_functions/Loss_functions_1">
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Loss_functions/Loss_functions_1/size_average"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Loss_functions/Loss_functions_1/reduce"/>
+ </genClasses>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//Loss_functions/L1Loss"/>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//Loss_functions/MSELoss"/>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//Loss_functions/CTCLoss">
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Loss_functions/CTCLoss/blank"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Loss_functions/CTCLoss/zero_infinity"/>
+ </genClasses>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//Loss_functions/KLDivLoss"/>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//Loss_functions/MultiLabelMarginLoss"/>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//Loss_functions/Loss_functions_1_1">
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Loss_functions/Loss_functions_1_1/margin"/>
+ </genClasses>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//Loss_functions/Loss_functions_1_2">
+ <genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
+ propertySortChoices="true" ecoreFeature="ecore:EReference AIML.ecore#//Loss_functions/Loss_functions_1_2/weight"/>
+ </genClasses>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//Loss_functions/CosineEmbeddingLoss"/>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//Loss_functions/MarginRankingLoss"/>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//Loss_functions/HingeEmbeddingLoss"/>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//Loss_functions/BCELoss"/>
+ <genClasses xsi:type="genmodel:GenClass" image="false" ecoreClass="AIML.ecore#//Loss_functions/Loss_functions_1_1_1">
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Loss_functions/Loss_functions_1_1_1/p"/>
+ </genClasses>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//Loss_functions/MultiMarginLoss">
+ <genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
+ propertySortChoices="true" ecoreFeature="ecore:EReference AIML.ecore#//Loss_functions/MultiMarginLoss/weight"/>
+ </genClasses>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//Loss_functions/TripletMarginLoss">
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Loss_functions/TripletMarginLoss/swap"/>
+ </genClasses>
+ <genClasses xsi:type="genmodel:GenClass" image="false" ecoreClass="AIML.ecore#//Loss_functions/Loss_functions_1_2_1">
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Loss_functions/Loss_functions_1_2_1/ignore_index"/>
+ </genClasses>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//Loss_functions/CrossEntropyLoss"/>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//Loss_functions/NLLLoss"/>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//Loss_functions/PoissonNLLLoss">
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Loss_functions/PoissonNLLLoss/log_input"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Loss_functions/PoissonNLLLoss/full"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Loss_functions/PoissonNLLLoss/eps"/>
+ </genClasses>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//Loss_functions/BCEWithLogitsLoss">
+ <genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
+ propertySortChoices="true" ecoreFeature="ecore:EReference AIML.ecore#//Loss_functions/BCEWithLogitsLoss/pos_weight"/>
+ </genClasses>
+ </nestedGenPackages>
+ <nestedGenPackages xsi:type="genmodel:GenPackage" prefix="Vision_layers" basePackage="org.eclipse.papyrus.aiml.profile.AIML"
+ disposableProviderFactory="true" ecorePackage="AIML.ecore#//Vision_layers">
+ <genClasses xsi:type="genmodel:GenClass" image="false" ecoreClass="AIML.ecore#//Vision_layers/Vision_layers"/>
+ <genClasses xsi:type="genmodel:GenClass" image="false" ecoreClass="AIML.ecore#//Vision_layers/Vision_layers_1">
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Vision_layers/Vision_layers_1/size"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Vision_layers/Vision_layers_1/scale_factor"/>
+ </genClasses>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//Vision_layers/PixelShuffle">
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Vision_layers/PixelShuffle/upscale_factor"/>
+ </genClasses>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//Vision_layers/Upsample">
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Vision_layers/Upsample/mode"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Vision_layers/Upsample/align_corners"/>
+ </genClasses>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//Vision_layers/UpsamplingNearest2d"/>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//Vision_layers/UpsamplingBilinear2d"/>
+ </nestedGenPackages>
+ <nestedGenPackages xsi:type="genmodel:GenPackage" prefix="DataParallel_layers"
+ basePackage="org.eclipse.papyrus.aiml.profile.AIML" disposableProviderFactory="true"
+ ecorePackage="AIML.ecore#//DataParallel_layers">
+ <genClasses xsi:type="genmodel:GenClass" image="false" ecoreClass="AIML.ecore#//DataParallel_layers/DataParallel_layers">
+ <genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
+ propertySortChoices="true" ecoreFeature="ecore:EReference AIML.ecore#//DataParallel_layers/DataParallel_layers/module"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//DataParallel_layers/DataParallel_layers/device_ids"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//DataParallel_layers/DataParallel_layers/output_device"/>
+ </genClasses>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//DataParallel_layers/DistributedDataParallel">
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//DataParallel_layers/DistributedDataParallel/broadcast_buffers"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//DataParallel_layers/DistributedDataParallel/process_group"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//DataParallel_layers/DistributedDataParallel/bucket_cap_mb"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//DataParallel_layers/DistributedDataParallel/find_unsused_parameters"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//DataParallel_layers/DistributedDataParallel/check_reduction"/>
+ </genClasses>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//DataParallel_layers/DataParallel"/>
+ </nestedGenPackages>
+ <nestedGenPackages xsi:type="genmodel:GenPackage" prefix="Layer_weight_regularizers"
+ basePackage="org.eclipse.papyrus.aiml.profile.AIML" disposableProviderFactory="true"
+ ecorePackage="AIML.ecore#//Layer_weight_regularizers">
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//Layer_weight_regularizers/l1"/>
+ <genClasses xsi:type="genmodel:GenClass" image="false" ecoreClass="AIML.ecore#//Layer_weight_regularizers/ReguWithl1">
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Layer_weight_regularizers/ReguWithl1/l1"/>
+ </genClasses>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//Layer_weight_regularizers/l2"/>
+ <genClasses xsi:type="genmodel:GenClass" image="false" ecoreClass="AIML.ecore#//Layer_weight_regularizers/ReguWithl2">
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Layer_weight_regularizers/ReguWithl2/l2"/>
+ </genClasses>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//Layer_weight_regularizers/l1_l2"/>
+ </nestedGenPackages>
+ <nestedGenPackages xsi:type="genmodel:GenPackage" prefix="Layer_weight_initializers"
+ basePackage="org.eclipse.papyrus.aiml.profile.AIML" disposableProviderFactory="true"
+ ecorePackage="AIML.ecore#//Layer_weight_initializers">
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//Layer_weight_initializers/random_normal"/>
+ <genClasses xsi:type="genmodel:GenClass" image="false" ecoreClass="AIML.ecore#//Layer_weight_initializers/initializer_with_mean_stddev">
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Layer_weight_initializers/initializer_with_mean_stddev/mean"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Layer_weight_initializers/initializer_with_mean_stddev/stddev"/>
+ </genClasses>
+ <genClasses xsi:type="genmodel:GenClass" image="false" ecoreClass="AIML.ecore#//Layer_weight_initializers/initializer_with_seed">
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Layer_weight_initializers/initializer_with_seed/seed"/>
+ </genClasses>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//Layer_weight_initializers/random_uniform">
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Layer_weight_initializers/random_uniform/minval"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Layer_weight_initializers/random_uniform/maxval"/>
+ </genClasses>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//Layer_weight_initializers/truncated_normal"/>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//Layer_weight_initializers/zeros"/>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//Layer_weight_initializers/ones"/>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//Layer_weight_initializers/glorot_normal"/>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//Layer_weight_initializers/glorot_uniform"/>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//Layer_weight_initializers/identity"/>
+ <genClasses xsi:type="genmodel:GenClass" image="false" ecoreClass="AIML.ecore#//Layer_weight_initializers/initializer_with_gain">
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Layer_weight_initializers/initializer_with_gain/gain"/>
+ </genClasses>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//Layer_weight_initializers/orthogonal"/>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//Layer_weight_initializers/constant">
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Layer_weight_initializers/constant/value"/>
+ </genClasses>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="AIML.ecore#//Layer_weight_initializers/variance_scaling">
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Layer_weight_initializers/variance_scaling/scale"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Layer_weight_initializers/variance_scaling/mode"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute AIML.ecore#//Layer_weight_initializers/variance_scaling/distribution"/>
+ </genClasses>
+ </nestedGenPackages>
+ </genPackages>
+</genmodel:GenModel>
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/profile/AIML.profile.di b/aiml/org.eclipse.papyrus.aiml.profile/profile/AIML.profile.di
new file mode 100644
index 0000000..247ed5e
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/profile/AIML.profile.di
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<architecture:ArchitectureDescription xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:architecture="http://www.eclipse.org/papyrus/infra/core/architecture" contextId="org.eclipse.papyrus.uml.architecture.Profile"/>
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/profile/AIML.profile.notation b/aiml/org.eclipse.papyrus.aiml.profile/profile/AIML.profile.notation
new file mode 100644
index 0000000..a3e2ba0
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/profile/AIML.profile.notation
@@ -0,0 +1,13155 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xmi:XMI xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:css="http://www.eclipse.org/papyrus/infra/gmfdiag/css" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:notation="http://www.eclipse.org/gmf/runtime/1.0.3/notation" xmlns:style="http://www.eclipse.org/papyrus/infra/gmfdiag/style" xmlns:uml="http://www.eclipse.org/uml2/5.0.0/UML">
+ <notation:Diagram xmi:id="_tRe00H2KEeqSHNFOHg2_Jw" type="PapyrusUMLProfileDiagram" name="AIML" measurementUnit="Pixel">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_Qv6tsYvAEeqlnrZTj0aPoA" source="PapyrusCSSForceValue">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_Qv6tsovAEeqlnrZTj0aPoA" key="canonical" value="true"/>
+ </eAnnotations>
+ <children xmi:type="notation:Shape" xmi:id="_1ARFcH2KEeqSHNFOHg2_Jw" type="Class_MetaclassShape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_1AnqwH2KEeqSHNFOHg2_Jw" type="Class_MetaclassNameLabel"/>
+ <element xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Class"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_1ARFcX2KEeqSHNFOHg2_Jw" x="12300" y="-280" width="121"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_Nu8ksJOPEeqnY_bZg2Ebjg" type="Profile_Shape">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_N9c6wJOPEeqnY_bZg2Ebjg" source="PapyrusCSSForceValue">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_N9c6wZOPEeqnY_bZg2Ebjg" key="mutable" value="true"/>
+ </eAnnotations>
+ <children xmi:type="notation:DecorationNode" xmi:id="_Nu9y0JOPEeqnY_bZg2Ebjg" type="Profile_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_Nu9y0ZOPEeqnY_bZg2Ebjg" type="Profile_PackagedElementCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_Nu9y0pOPEeqnY_bZg2Ebjg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Nu9y05OPEeqnY_bZg2Ebjg"/>
+ </children>
+ <element xmi:type="uml:Profile" href="AIML.profile.uml#_Nr2NYJOPEeqnY_bZg2Ebjg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Nu8ksZOPEeqnY_bZg2Ebjg" x="4540" y="-4"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_BpSA0JT3Eeq5BK6mmo2rWg" type="Profile_Shape">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_CAV18JT3Eeq5BK6mmo2rWg" source="PapyrusCSSForceValue">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_CAV18ZT3Eeq5BK6mmo2rWg" key="mutable" value="true"/>
+ </eAnnotations>
+ <children xmi:type="notation:DecorationNode" xmi:id="_BpT2AJT3Eeq5BK6mmo2rWg" type="Profile_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_BpT2AZT3Eeq5BK6mmo2rWg" type="Profile_PackagedElementCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_BpT2ApT3Eeq5BK6mmo2rWg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_BpT2A5T3Eeq5BK6mmo2rWg"/>
+ </children>
+ <element xmi:type="uml:Profile" href="AIML.profile.uml#_u1dx8JT1Eeq5BK6mmo2rWg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_BpSn4JT3Eeq5BK6mmo2rWg"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_BpUdEJT3Eeq5BK6mmo2rWg" type="Profile_Shape">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_CAV18pT3Eeq5BK6mmo2rWg" source="PapyrusCSSForceValue">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_CAV185T3Eeq5BK6mmo2rWg" key="mutable" value="true"/>
+ </eAnnotations>
+ <children xmi:type="notation:DecorationNode" xmi:id="_BpUdEpT3Eeq5BK6mmo2rWg" type="Profile_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_BpUdE5T3Eeq5BK6mmo2rWg" type="Profile_PackagedElementCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_BpUdFJT3Eeq5BK6mmo2rWg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_BpUdFZT3Eeq5BK6mmo2rWg"/>
+ </children>
+ <element xmi:type="uml:Profile" href="AIML.profile.uml#_38DjAJT1Eeq5BK6mmo2rWg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_BpUdEZT3Eeq5BK6mmo2rWg" x="260"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_BpVEIJT3Eeq5BK6mmo2rWg" type="Profile_Shape">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_CAV19JT3Eeq5BK6mmo2rWg" source="PapyrusCSSForceValue">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_CAV19ZT3Eeq5BK6mmo2rWg" key="mutable" value="true"/>
+ </eAnnotations>
+ <children xmi:type="notation:DecorationNode" xmi:id="_BpVEIpT3Eeq5BK6mmo2rWg" type="Profile_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_BpVEI5T3Eeq5BK6mmo2rWg" type="Profile_PackagedElementCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_BpVEJJT3Eeq5BK6mmo2rWg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_BpVEJZT3Eeq5BK6mmo2rWg"/>
+ </children>
+ <element xmi:type="uml:Package" href="AIML.profile.uml#_-8tiUJT1Eeq5BK6mmo2rWg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_BpVEIZT3Eeq5BK6mmo2rWg" x="520"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_BpVEJpT3Eeq5BK6mmo2rWg" type="Profile_Shape">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_CAV19pT3Eeq5BK6mmo2rWg" source="PapyrusCSSForceValue">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_CAV195T3Eeq5BK6mmo2rWg" key="mutable" value="true"/>
+ </eAnnotations>
+ <children xmi:type="notation:DecorationNode" xmi:id="_BpVEKJT3Eeq5BK6mmo2rWg" type="Profile_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_BpVEKZT3Eeq5BK6mmo2rWg" type="Profile_PackagedElementCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_BpVEKpT3Eeq5BK6mmo2rWg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_BpVEK5T3Eeq5BK6mmo2rWg"/>
+ </children>
+ <element xmi:type="uml:Profile" href="AIML.profile.uml#_Deu8AJT2Eeq5BK6mmo2rWg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_BpVEJ5T3Eeq5BK6mmo2rWg" x="780"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_BpVrMJT3Eeq5BK6mmo2rWg" type="Profile_Shape">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_CAV1-JT3Eeq5BK6mmo2rWg" source="PapyrusCSSForceValue">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_CAV1-ZT3Eeq5BK6mmo2rWg" key="mutable" value="true"/>
+ </eAnnotations>
+ <children xmi:type="notation:DecorationNode" xmi:id="_BpVrMpT3Eeq5BK6mmo2rWg" type="Profile_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_BpVrM5T3Eeq5BK6mmo2rWg" type="Profile_PackagedElementCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_BpVrNJT3Eeq5BK6mmo2rWg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_BpVrNZT3Eeq5BK6mmo2rWg"/>
+ </children>
+ <element xmi:type="uml:Profile" href="AIML.profile.uml#_2_xEcJT2Eeq5BK6mmo2rWg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_BpVrMZT3Eeq5BK6mmo2rWg" x="1040"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_BpVrNpT3Eeq5BK6mmo2rWg" type="Profile_Shape">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_CAV1-pT3Eeq5BK6mmo2rWg" source="PapyrusCSSForceValue">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_CAV1-5T3Eeq5BK6mmo2rWg" key="mutable" value="true"/>
+ </eAnnotations>
+ <children xmi:type="notation:DecorationNode" xmi:id="_BpVrOJT3Eeq5BK6mmo2rWg" type="Profile_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_BpVrOZT3Eeq5BK6mmo2rWg" type="Profile_PackagedElementCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_BpVrOpT3Eeq5BK6mmo2rWg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_BpVrO5T3Eeq5BK6mmo2rWg"/>
+ </children>
+ <element xmi:type="uml:Profile" href="AIML.profile.uml#_H7fbMJT2Eeq5BK6mmo2rWg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_BpVrN5T3Eeq5BK6mmo2rWg" x="1300"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_BpWSQJT3Eeq5BK6mmo2rWg" type="Profile_Shape">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_CAV1_JT3Eeq5BK6mmo2rWg" source="PapyrusCSSForceValue">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_CAV1_ZT3Eeq5BK6mmo2rWg" key="mutable" value="true"/>
+ </eAnnotations>
+ <children xmi:type="notation:DecorationNode" xmi:id="_BpWSQpT3Eeq5BK6mmo2rWg" type="Profile_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_BpWSQ5T3Eeq5BK6mmo2rWg" type="Profile_PackagedElementCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_BpWSRJT3Eeq5BK6mmo2rWg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_BpWSRZT3Eeq5BK6mmo2rWg"/>
+ </children>
+ <element xmi:type="uml:Profile" href="AIML.profile.uml#_K1H6wJT2Eeq5BK6mmo2rWg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_BpWSQZT3Eeq5BK6mmo2rWg" x="1640"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_BpWSRpT3Eeq5BK6mmo2rWg" type="Profile_Shape">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_CAV1_pT3Eeq5BK6mmo2rWg" source="PapyrusCSSForceValue">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_CAV1_5T3Eeq5BK6mmo2rWg" key="mutable" value="true"/>
+ </eAnnotations>
+ <children xmi:type="notation:DecorationNode" xmi:id="_BpWSSJT3Eeq5BK6mmo2rWg" type="Profile_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_BpWSSZT3Eeq5BK6mmo2rWg" type="Profile_PackagedElementCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_BpWSSpT3Eeq5BK6mmo2rWg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_BpWSS5T3Eeq5BK6mmo2rWg"/>
+ </children>
+ <element xmi:type="uml:Profile" href="AIML.profile.uml#_N5zMsJT2Eeq5BK6mmo2rWg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_BpWSR5T3Eeq5BK6mmo2rWg" x="1900"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_BpW5UJT3Eeq5BK6mmo2rWg" type="Profile_Shape">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_CAV2AJT3Eeq5BK6mmo2rWg" source="PapyrusCSSForceValue">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_CAV2AZT3Eeq5BK6mmo2rWg" key="mutable" value="true"/>
+ </eAnnotations>
+ <children xmi:type="notation:DecorationNode" xmi:id="_BpW5UpT3Eeq5BK6mmo2rWg" type="Profile_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_BpW5U5T3Eeq5BK6mmo2rWg" type="Profile_PackagedElementCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_BpW5VJT3Eeq5BK6mmo2rWg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_BpW5VZT3Eeq5BK6mmo2rWg"/>
+ </children>
+ <element xmi:type="uml:Profile" href="AIML.profile.uml#_RAjiQJT2Eeq5BK6mmo2rWg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_BpW5UZT3Eeq5BK6mmo2rWg" x="2160"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_BpW5VpT3Eeq5BK6mmo2rWg" type="Profile_Shape">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_CAV2ApT3Eeq5BK6mmo2rWg" source="PapyrusCSSForceValue">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_CAV2A5T3Eeq5BK6mmo2rWg" key="mutable" value="true"/>
+ </eAnnotations>
+ <children xmi:type="notation:DecorationNode" xmi:id="_BpXgYJT3Eeq5BK6mmo2rWg" type="Profile_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_BpXgYZT3Eeq5BK6mmo2rWg" type="Profile_PackagedElementCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_BpXgYpT3Eeq5BK6mmo2rWg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_BpXgY5T3Eeq5BK6mmo2rWg"/>
+ </children>
+ <element xmi:type="uml:Profile" href="AIML.profile.uml#_T8DDAJT2Eeq5BK6mmo2rWg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_BpW5V5T3Eeq5BK6mmo2rWg" x="2420"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_BpXgZJT3Eeq5BK6mmo2rWg" type="Profile_Shape">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_CAV2BJT3Eeq5BK6mmo2rWg" source="PapyrusCSSForceValue">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_CAV2BZT3Eeq5BK6mmo2rWg" key="mutable" value="true"/>
+ </eAnnotations>
+ <children xmi:type="notation:DecorationNode" xmi:id="_BpXgZpT3Eeq5BK6mmo2rWg" type="Profile_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_BpXgZ5T3Eeq5BK6mmo2rWg" type="Profile_PackagedElementCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_BpXgaJT3Eeq5BK6mmo2rWg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_BpXgaZT3Eeq5BK6mmo2rWg"/>
+ </children>
+ <element xmi:type="uml:Profile" href="AIML.profile.uml#_WwqfsJT2Eeq5BK6mmo2rWg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_BpXgZZT3Eeq5BK6mmo2rWg" x="2680"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_BpYHcJT3Eeq5BK6mmo2rWg" type="Profile_Shape">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_CAV2BpT3Eeq5BK6mmo2rWg" source="PapyrusCSSForceValue">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_CAV2B5T3Eeq5BK6mmo2rWg" key="mutable" value="true"/>
+ </eAnnotations>
+ <children xmi:type="notation:DecorationNode" xmi:id="_BpYHcpT3Eeq5BK6mmo2rWg" type="Profile_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_BpYHc5T3Eeq5BK6mmo2rWg" type="Profile_PackagedElementCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_BpYHdJT3Eeq5BK6mmo2rWg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_BpYHdZT3Eeq5BK6mmo2rWg"/>
+ </children>
+ <element xmi:type="uml:Profile" href="AIML.profile.uml#_ZUMzcJT2Eeq5BK6mmo2rWg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_BpYHcZT3Eeq5BK6mmo2rWg" x="2940"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_BpYugJT3Eeq5BK6mmo2rWg" type="Profile_Shape">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_CAV2CJT3Eeq5BK6mmo2rWg" source="PapyrusCSSForceValue">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_CAV2CZT3Eeq5BK6mmo2rWg" key="mutable" value="true"/>
+ </eAnnotations>
+ <children xmi:type="notation:DecorationNode" xmi:id="_BpYugpT3Eeq5BK6mmo2rWg" type="Profile_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_BpYug5T3Eeq5BK6mmo2rWg" type="Profile_PackagedElementCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_BpYuhJT3Eeq5BK6mmo2rWg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_BpYuhZT3Eeq5BK6mmo2rWg"/>
+ </children>
+ <element xmi:type="uml:Profile" href="AIML.profile.uml#_cKwJ0JT2Eeq5BK6mmo2rWg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_BpYugZT3Eeq5BK6mmo2rWg" x="3200"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_BpYuhpT3Eeq5BK6mmo2rWg" type="Profile_Shape">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_CAV2CpT3Eeq5BK6mmo2rWg" source="PapyrusCSSForceValue">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_CAV2C5T3Eeq5BK6mmo2rWg" key="mutable" value="true"/>
+ </eAnnotations>
+ <children xmi:type="notation:DecorationNode" xmi:id="_BpYuiJT3Eeq5BK6mmo2rWg" type="Profile_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_BpYuiZT3Eeq5BK6mmo2rWg" type="Profile_PackagedElementCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_BpYuipT3Eeq5BK6mmo2rWg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_BpYui5T3Eeq5BK6mmo2rWg"/>
+ </children>
+ <element xmi:type="uml:Profile" href="AIML.profile.uml#_fjUoIJT2Eeq5BK6mmo2rWg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_BpYuh5T3Eeq5BK6mmo2rWg" x="3460"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_BpYujJT3Eeq5BK6mmo2rWg" type="Profile_Shape">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_CAV2DJT3Eeq5BK6mmo2rWg" source="PapyrusCSSForceValue">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_CAV2DZT3Eeq5BK6mmo2rWg" key="mutable" value="true"/>
+ </eAnnotations>
+ <children xmi:type="notation:DecorationNode" xmi:id="_BpYujpT3Eeq5BK6mmo2rWg" type="Profile_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_BpYuj5T3Eeq5BK6mmo2rWg" type="Profile_PackagedElementCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_BpYukJT3Eeq5BK6mmo2rWg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_BpYukZT3Eeq5BK6mmo2rWg"/>
+ </children>
+ <element xmi:type="uml:Profile" href="AIML.profile.uml#_nZcP0JT2Eeq5BK6mmo2rWg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_BpYujZT3Eeq5BK6mmo2rWg" x="3720"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_BpZVkJT3Eeq5BK6mmo2rWg" type="Profile_Shape">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_CAV2DpT3Eeq5BK6mmo2rWg" source="PapyrusCSSForceValue">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_CAV2D5T3Eeq5BK6mmo2rWg" key="mutable" value="true"/>
+ </eAnnotations>
+ <children xmi:type="notation:DecorationNode" xmi:id="_BpZVkpT3Eeq5BK6mmo2rWg" type="Profile_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_BpZVk5T3Eeq5BK6mmo2rWg" type="Profile_PackagedElementCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_BpZVlJT3Eeq5BK6mmo2rWg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_BpZVlZT3Eeq5BK6mmo2rWg"/>
+ </children>
+ <element xmi:type="uml:Profile" href="AIML.profile.uml#_q6FsEJT2Eeq5BK6mmo2rWg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_BpZVkZT3Eeq5BK6mmo2rWg" x="3980"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_BpZVlpT3Eeq5BK6mmo2rWg" type="Profile_Shape">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_CAV2EJT3Eeq5BK6mmo2rWg" source="PapyrusCSSForceValue">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_CAV2EZT3Eeq5BK6mmo2rWg" key="mutable" value="true"/>
+ </eAnnotations>
+ <children xmi:type="notation:DecorationNode" xmi:id="_BpZVmJT3Eeq5BK6mmo2rWg" type="Profile_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_BpZVmZT3Eeq5BK6mmo2rWg" type="Profile_PackagedElementCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_BpZVmpT3Eeq5BK6mmo2rWg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_BpZVm5T3Eeq5BK6mmo2rWg"/>
+ </children>
+ <element xmi:type="uml:Profile" href="AIML.profile.uml#_wBUroJT2Eeq5BK6mmo2rWg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_BpZVl5T3Eeq5BK6mmo2rWg" x="4240"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_f28t0JauEeq1-Ze45jZMTg" type="StereotypeComment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_f28t0ZauEeq1-Ze45jZMTg"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_f28t05auEeq1-Ze45jZMTg" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Class"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_f28t0pauEeq1-Ze45jZMTg" x="12640" y="-280"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_LLRQIK7wEeqhVOlV64dXmA" type="Stereotype_Shape">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_LUVskK7wEeqhVOlV64dXmA" source="PapyrusCSSForceValue">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_LUVska7wEeqhVOlV64dXmA" key="mutable" value="true"/>
+ </eAnnotations>
+ <children xmi:type="notation:DecorationNode" xmi:id="_LLTFUK7wEeqhVOlV64dXmA" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_LLTFUa7wEeqhVOlV64dXmA" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_LLTFUq7wEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_LLTFU67wEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_LLTFVK7wEeqhVOlV64dXmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LLTFVa7wEeqhVOlV64dXmA"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_LLTsYK7wEeqhVOlV64dXmA" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_LLTsYa7wEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_LLTsYq7wEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_LLTsY67wEeqhVOlV64dXmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LLTsZK7wEeqhVOlV64dXmA"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_hxbaEJm6Eeq0jfmjFzaebA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LLRQIa7wEeqhVOlV64dXmA"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_LLUTcK7wEeqhVOlV64dXmA" type="Stereotype_Shape">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_LUVskq7wEeqhVOlV64dXmA" source="PapyrusCSSForceValue">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_LUVsk67wEeqhVOlV64dXmA" key="mutable" value="true"/>
+ </eAnnotations>
+ <children xmi:type="notation:DecorationNode" xmi:id="_LLUTcq7wEeqhVOlV64dXmA" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_LLU6gK7wEeqhVOlV64dXmA" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_LLU6ga7wEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_LLU6gq7wEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_LLU6g67wEeqhVOlV64dXmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LLU6hK7wEeqhVOlV64dXmA"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_LLU6ha7wEeqhVOlV64dXmA" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_LLU6hq7wEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_LLU6h67wEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_LLU6iK7wEeqhVOlV64dXmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LLU6ia7wEeqhVOlV64dXmA"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_w1CjMJm6Eeq0jfmjFzaebA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LLUTca7wEeqhVOlV64dXmA" x="160"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_LLU6iq7wEeqhVOlV64dXmA" type="Stereotype_Shape">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_LUWToK7wEeqhVOlV64dXmA" source="PapyrusCSSForceValue">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_LUWToa7wEeqhVOlV64dXmA" key="mutable" value="true"/>
+ </eAnnotations>
+ <children xmi:type="notation:DecorationNode" xmi:id="_LLVhkK7wEeqhVOlV64dXmA" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_LLVhka7wEeqhVOlV64dXmA" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_LLVhkq7wEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_LLVhk67wEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_LLVhlK7wEeqhVOlV64dXmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LLVhla7wEeqhVOlV64dXmA"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_LLVhlq7wEeqhVOlV64dXmA" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_LLVhl67wEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_LLVhmK7wEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_LLVhma7wEeqhVOlV64dXmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LLVhmq7wEeqhVOlV64dXmA"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_DSn40Jm7Eeq0jfmjFzaebA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LLU6i67wEeqhVOlV64dXmA" x="320"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_LLVhm67wEeqhVOlV64dXmA" type="Profile_Shape">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_LUWToq7wEeqhVOlV64dXmA" source="PapyrusCSSForceValue">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_LUWTo67wEeqhVOlV64dXmA" key="mutable" value="true"/>
+ </eAnnotations>
+ <children xmi:type="notation:DecorationNode" xmi:id="_LLWIoK7wEeqhVOlV64dXmA" type="Profile_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_LLWIoa7wEeqhVOlV64dXmA" type="Profile_PackagedElementCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_LLWIoq7wEeqhVOlV64dXmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LLWIo67wEeqhVOlV64dXmA"/>
+ </children>
+ <element xmi:type="uml:Profile" href="AIML.profile.uml#_DtlO0KTlEeqmTOsCAzVBxg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LLVhnK7wEeqhVOlV64dXmA" x="540"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_LLWIpK7wEeqhVOlV64dXmA" type="Profile_Shape">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_LUWTpK7wEeqhVOlV64dXmA" source="PapyrusCSSForceValue">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_LUWTpa7wEeqhVOlV64dXmA" key="mutable" value="true"/>
+ </eAnnotations>
+ <children xmi:type="notation:DecorationNode" xmi:id="_LLWvsK7wEeqhVOlV64dXmA" type="Profile_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_LLWvsa7wEeqhVOlV64dXmA" type="Profile_PackagedElementCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_LLWvsq7wEeqhVOlV64dXmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LLWvs67wEeqhVOlV64dXmA"/>
+ </children>
+ <element xmi:type="uml:Profile" href="AIML.profile.uml#_X5a5MKTpEeqmTOsCAzVBxg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LLWIpa7wEeqhVOlV64dXmA" x="800"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_LLWvtK7wEeqhVOlV64dXmA" type="Profile_Shape">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_LUWTpq7wEeqhVOlV64dXmA" source="PapyrusCSSForceValue">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_LUWTp67wEeqhVOlV64dXmA" key="mutable" value="true"/>
+ </eAnnotations>
+ <children xmi:type="notation:DecorationNode" xmi:id="_LLXWwK7wEeqhVOlV64dXmA" type="Profile_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_LLXWwa7wEeqhVOlV64dXmA" type="Profile_PackagedElementCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_LLXWwq7wEeqhVOlV64dXmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LLXWw67wEeqhVOlV64dXmA"/>
+ </children>
+ <element xmi:type="uml:Profile" href="AIML.profile.uml#_ZgMWkKWVEeq2dLYfuMvqgg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LLWvta7wEeqhVOlV64dXmA" x="1060"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_MfpSsPmaEeqCRcDdPeQY2A" type="StereotypeComment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_MfpSsfmaEeqCRcDdPeQY2A"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_Mfp5wPmaEeqCRcDdPeQY2A" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Class"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_MfpSsvmaEeqCRcDdPeQY2A" x="12500" y="-280"/>
+ </children>
+ <styles xmi:type="notation:StringValueStyle" xmi:id="_tRe00X2KEeqSHNFOHg2_Jw" name="diagram_compatibility_version" stringValue="1.4.0"/>
+ <styles xmi:type="notation:DiagramStyle" xmi:id="_tRe00n2KEeqSHNFOHg2_Jw"/>
+ <styles xmi:type="style:PapyrusDiagramStyle" xmi:id="_tRe0032KEeqSHNFOHg2_Jw" diagramKindId="org.eclipse.papyrus.uml.diagram.profile">
+ <owner xmi:type="uml:Profile" href="AIML.profile.uml#_IDYhIH13EeqSHNFOHg2_Jw"/>
+ </styles>
+ <styles xmi:type="notation:CanonicalStyle" xmi:id="_Qv6tsIvAEeqlnrZTj0aPoA"/>
+ <element xmi:type="uml:Profile" href="AIML.profile.uml#_IDYhIH13EeqSHNFOHg2_Jw"/>
+ <edges xmi:type="notation:Connector" xmi:id="_Mfqg0PmaEeqCRcDdPeQY2A" type="StereotypeCommentLink" source="_1ARFcH2KEeqSHNFOHg2_Jw" target="_MfpSsPmaEeqCRcDdPeQY2A">
+ <styles xmi:type="notation:FontStyle" xmi:id="_Mfqg0fmaEeqCRcDdPeQY2A"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_Mfru8PmaEeqCRcDdPeQY2A" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Class"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_Mfqg0vmaEeqCRcDdPeQY2A" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_MfrH4PmaEeqCRcDdPeQY2A"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_MfrH4fmaEeqCRcDdPeQY2A"/>
+ </edges>
+ </notation:Diagram>
+ <notation:Diagram xmi:id="_m1nccI7UEeq0upQJ9r5s4Q" type="PapyrusUMLProfileDiagram" name="Convolution_layers" measurementUnit="Pixel">
+ <children xmi:type="notation:Shape" xmi:id="_J4Kf-I8nEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_J4Kf-Y8nEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_J4Kf-o8nEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_J4Kf-48nEeq5HrfdV5ATIg" source="PapyrusCSSForceValue">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_J4Kf_I8nEeq5HrfdV5ATIg" key="collapsed" value="true"/>
+ </eAnnotations>
+ <children xmi:type="notation:Shape" xmi:id="_J4Kf_Y8nEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_xLDlAH5nEeqSHNFOHg2_Jw"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_J4Kf_o8nEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_J4KgAY8nEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_PgB_YH5oEeqSHNFOHg2_Jw"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_J4KgAo8nEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_J4KgA48nEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_RrmfEH5oEeqSHNFOHg2_Jw"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_J4KgBI8nEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_J4KgBY8nEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_UPxE8H5oEeqSHNFOHg2_Jw"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_J4KgBo8nEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_NJbPgKG2EeqsNvCDUfZJVA" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_NJHtgKG2EeqsNvCDUfZJVA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_NJbPgaG2EeqsNvCDUfZJVA"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_OvP90KG2EeqsNvCDUfZJVA" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_Ou9p8KG2EeqsNvCDUfZJVA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_OvP90aG2EeqsNvCDUfZJVA"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_SXeowKG2EeqsNvCDUfZJVA" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_SXLt0KG2EeqsNvCDUfZJVA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_SXeowaG2EeqsNvCDUfZJVA"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_TH71UKG2EeqsNvCDUfZJVA" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_THvoEKG2EeqsNvCDUfZJVA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_TH71UaG2EeqsNvCDUfZJVA"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_UilOYKG2EeqsNvCDUfZJVA" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_UiUvsKG2EeqsNvCDUfZJVA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_UilOYaG2EeqsNvCDUfZJVA"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_koIVoKG2EeqsNvCDUfZJVA" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_kn6TMKG2EeqsNvCDUfZJVA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_koIVoaG2EeqsNvCDUfZJVA"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_bGnFMKStEeqmTOsCAzVBxg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_bGMOcKStEeqmTOsCAzVBxg"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_bGnFMaStEeqmTOsCAzVBxg"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_J4KgB48nEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_J4KgCI8nEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_J4KgCY8nEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_J4KgCo8nEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_J4KgC48nEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_J4KgDI8nEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_J4KgDY8nEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_J4KgDo8nEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_J4KgD48nEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_5DtswH2KEeqSHNFOHg2_Jw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_J4KgE48nEeq5HrfdV5ATIg" x="-1426" y="318"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_J4LuF48nEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_J4LuGI8nEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_J4LuGY8nEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_J4LuGo8nEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_J4LuG48nEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_J4LuHI8nEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_J4LuHY8nEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_J4LuHo8nEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_J4LuH48nEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_J4LuII8nEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_J4LuIY8nEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_J4LuIo8nEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_AfPLEIVKEeqvud4Ae2T3Lg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_J4LuJo8nEeq5HrfdV5ATIg" x="-1506" y="1258"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_J4MVII8nEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_J4MVIY8nEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_J4MVIo8nEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_J4MVI48nEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_J4MVJI8nEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_J4MVJY8nEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_J4MVJo8nEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_J4MVJ48nEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_J4MVKI8nEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_J4MVKY8nEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_J4MVKo8nEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_J4MVK48nEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_anKPYH5pEeqSHNFOHg2_Jw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_J4MVL48nEeq5HrfdV5ATIg" x="-820" y="320" width="217"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_J4OxYI8nEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_J4OxYY8nEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_J4OxYo8nEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_J4OxY48nEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_MKi_YH5qEeqSHNFOHg2_Jw"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_J4OxZI8nEeq5HrfdV5ATIg"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_J4OxZY8nEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_J4OxZo8nEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_J4OxZ48nEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_J4OxaI8nEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_J4OxaY8nEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_J4Oxao8nEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_J4Oxa48nEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_J4OxbI8nEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_J4OxbY8nEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_ISZCEH5qEeqSHNFOHg2_Jw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_J4OxcY8nEeq5HrfdV5ATIg" x="-1100" y="320" width="217"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_J4Oxc48nEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_J4OxdI8nEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_J4OxdY8nEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_J4Oxdo8nEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_J4Oxd48nEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_J4OxeI8nEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_J4OxeY8nEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_J4Oxeo8nEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_J4Oxe48nEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_J4OxfI8nEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_J4OxfY8nEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_J4Oxfo8nEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_2Ej78IVJEeqvud4Ae2T3Lg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_J4Oxgo8nEeq5HrfdV5ATIg" x="-2100" y="1140"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_J4PYcI8nEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_J4PYcY8nEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_J4PYco8nEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_J4PYc48nEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_J4PYdI8nEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_J4PYdY8nEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_J4PYdo8nEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_J4PYd48nEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_J4PYeI8nEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_J4PYeY8nEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_J4PYeo8nEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_J4PYe48nEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_6j6cIIVJEeqvud4Ae2T3Lg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_J4PYf48nEeq5HrfdV5ATIg" x="-1966" y="1138"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_J4PYgI8nEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_J4PYgY8nEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_J4PYgo8nEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_J4PYg48nEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_J4PYhI8nEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_J4PYhY8nEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_J4PYho8nEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_J4PYh48nEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_J4PYiI8nEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_J4PYiY8nEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_J4PYio8nEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_J4PYi48nEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_8w4C8IVJEeqvud4Ae2T3Lg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_J4PYj48nEeq5HrfdV5ATIg" x="-1500" y="940"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_J4P_iI8nEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_J4P_iY8nEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_J4P_io8nEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_J4P_i48nEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_J4P_jI8nEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_J4P_jY8nEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_J4P_jo8nEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_J4P_j48nEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_J4P_kI8nEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_J4P_kY8nEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_J4P_ko8nEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_J4P_k48nEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#__Er4oIVJEeqvud4Ae2T3Lg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_J4P_l48nEeq5HrfdV5ATIg" x="-1646" y="1258"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_J4QmkI8nEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_J4QmkY8nEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_J4Qmko8nEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_J4Qmk48nEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_ZsHuAH5qEeqSHNFOHg2_Jw"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_J4QmlI8nEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_J4QmlY8nEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_a-bqcH5qEeqSHNFOHg2_Jw"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_J4Qmlo8nEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_J4Qml48nEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_bcYxwH5qEeqSHNFOHg2_Jw"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_J4QmmI8nEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_J4QmmY8nEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_cR75sH5qEeqSHNFOHg2_Jw"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_J4Qmmo8nEeq5HrfdV5ATIg"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_J4QmnY8nEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_J4Qmno8nEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_J4Qmn48nEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_J4QmoI8nEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_J4QmoY8nEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_J4Qmoo8nEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_J4Qmo48nEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_J4QmpI8nEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_J4QmpY8nEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_YZ54MH5qEeqSHNFOHg2_Jw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_J4QmqY8nEeq5HrfdV5ATIg" x="-1080" y="20"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_RBuMMKG1EeqsNvCDUfZJVA" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_RBuzQKG1EeqsNvCDUfZJVA" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_RBuzQaG1EeqsNvCDUfZJVA" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_SpHn0KG1EeqsNvCDUfZJVA" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_SowbcKG1EeqsNvCDUfZJVA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_SpHn0aG1EeqsNvCDUfZJVA"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_RBuzQqG1EeqsNvCDUfZJVA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_RBuzQ6G1EeqsNvCDUfZJVA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_RBuzRKG1EeqsNvCDUfZJVA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_RBuzRaG1EeqsNvCDUfZJVA"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_RBuzRqG1EeqsNvCDUfZJVA" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_RBuzR6G1EeqsNvCDUfZJVA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_RBuzSKG1EeqsNvCDUfZJVA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_RBuzSaG1EeqsNvCDUfZJVA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_RBuzSqG1EeqsNvCDUfZJVA"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_RBqh0KG1EeqsNvCDUfZJVA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_RBuMMaG1EeqsNvCDUfZJVA" x="-1620" y="1120"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_5JYooKG1EeqsNvCDUfZJVA" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_5JZPsKG1EeqsNvCDUfZJVA" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_5JZPsaG1EeqsNvCDUfZJVA" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_7rjDYKG1EeqsNvCDUfZJVA" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_7rUZ4KG1EeqsNvCDUfZJVA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_7rjDYaG1EeqsNvCDUfZJVA"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_85y_MKG1EeqsNvCDUfZJVA" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_85lj0KG1EeqsNvCDUfZJVA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_85y_MaG1EeqsNvCDUfZJVA"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_alP7cKG2EeqsNvCDUfZJVA" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_ak_cwKG2EeqsNvCDUfZJVA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_alP7caG2EeqsNvCDUfZJVA"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_5JZPsqG1EeqsNvCDUfZJVA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_5JZPs6G1EeqsNvCDUfZJVA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_5JZPtKG1EeqsNvCDUfZJVA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_5JZPtaG1EeqsNvCDUfZJVA"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_5JZPtqG1EeqsNvCDUfZJVA" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_5JZPt6G1EeqsNvCDUfZJVA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_5JZPuKG1EeqsNvCDUfZJVA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_5JZPuaG1EeqsNvCDUfZJVA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_5JZPuqG1EeqsNvCDUfZJVA"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_5JUXMKG1EeqsNvCDUfZJVA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_5JYooaG1EeqsNvCDUfZJVA" x="-1840" y="920"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_g_XCsKG3EeqsNvCDUfZJVA" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_g_XpwKG3EeqsNvCDUfZJVA" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_g_XpwaG3EeqsNvCDUfZJVA" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_g_XpwqG3EeqsNvCDUfZJVA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_g_Xpw6G3EeqsNvCDUfZJVA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_g_XpxKG3EeqsNvCDUfZJVA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_g_XpxaG3EeqsNvCDUfZJVA"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_g_XpxqG3EeqsNvCDUfZJVA" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_g_Xpx6G3EeqsNvCDUfZJVA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_g_XpyKG3EeqsNvCDUfZJVA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_g_XpyaG3EeqsNvCDUfZJVA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_g_XpyqG3EeqsNvCDUfZJVA"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_g_SxQKG3EeqsNvCDUfZJVA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_g_XCsaG3EeqsNvCDUfZJVA" x="-2240" y="1140"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_d-nZEKG4EeqsNvCDUfZJVA" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_d-nZEqG4EeqsNvCDUfZJVA" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_d-nZE6G4EeqsNvCDUfZJVA" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_euFuMKG4EeqsNvCDUfZJVA" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_etxlIKG4EeqsNvCDUfZJVA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_euFuMaG4EeqsNvCDUfZJVA"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_gALoMKG4EeqsNvCDUfZJVA" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_f_57YKG4EeqsNvCDUfZJVA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_gALoMaG4EeqsNvCDUfZJVA"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_hwg9YKG4EeqsNvCDUfZJVA" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_hwRFwKG4EeqsNvCDUfZJVA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_hwg9YaG4EeqsNvCDUfZJVA"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_i2yB4KG4EeqsNvCDUfZJVA" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_i2jYYKG4EeqsNvCDUfZJVA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_i2yB4aG4EeqsNvCDUfZJVA"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_lGPjEKG4EeqsNvCDUfZJVA" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_lF9PMKG4EeqsNvCDUfZJVA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_lGPjEaG4EeqsNvCDUfZJVA"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_mtXR4KG4EeqsNvCDUfZJVA" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_mtJ2gKG4EeqsNvCDUfZJVA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_mtXR4aG4EeqsNvCDUfZJVA"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_oTOccKG4EeqsNvCDUfZJVA" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_oTAaAKG4EeqsNvCDUfZJVA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_oTOccaG4EeqsNvCDUfZJVA"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_d-nZFKG4EeqsNvCDUfZJVA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_d-nZFaG4EeqsNvCDUfZJVA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_d-nZFqG4EeqsNvCDUfZJVA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_d-nZF6G4EeqsNvCDUfZJVA"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_d-nZGKG4EeqsNvCDUfZJVA" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_d-nZGaG4EeqsNvCDUfZJVA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_d-nZGqG4EeqsNvCDUfZJVA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_d-nZG6G4EeqsNvCDUfZJVA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_d-nZHKG4EeqsNvCDUfZJVA"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_d-jusKG4EeqsNvCDUfZJVA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_d-nZEaG4EeqsNvCDUfZJVA" x="-1260" y="900"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_08WgIKG4EeqsNvCDUfZJVA" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_08WgIqG4EeqsNvCDUfZJVA" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_08WgI6G4EeqsNvCDUfZJVA" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_08WgJKG4EeqsNvCDUfZJVA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_08WgJaG4EeqsNvCDUfZJVA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_08WgJqG4EeqsNvCDUfZJVA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_08WgJ6G4EeqsNvCDUfZJVA"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_08WgKKG4EeqsNvCDUfZJVA" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_08WgKaG4EeqsNvCDUfZJVA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_08WgKqG4EeqsNvCDUfZJVA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_08WgK6G4EeqsNvCDUfZJVA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_08WgLKG4EeqsNvCDUfZJVA"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_08Tc0KG4EeqsNvCDUfZJVA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_08WgIaG4EeqsNvCDUfZJVA" x="-1100" y="1180"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_34N0UKG4EeqsNvCDUfZJVA" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_34N0UqG4EeqsNvCDUfZJVA" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_34N0U6G4EeqsNvCDUfZJVA" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_34N0VKG4EeqsNvCDUfZJVA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_34N0VaG4EeqsNvCDUfZJVA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_34N0VqG4EeqsNvCDUfZJVA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_34N0V6G4EeqsNvCDUfZJVA"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_34N0WKG4EeqsNvCDUfZJVA" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_34N0WaG4EeqsNvCDUfZJVA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_34N0WqG4EeqsNvCDUfZJVA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_34N0W6G4EeqsNvCDUfZJVA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_34N0XKG4EeqsNvCDUfZJVA"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_34MmMKG4EeqsNvCDUfZJVA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_34N0UaG4EeqsNvCDUfZJVA" x="-1260" y="1180"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_IqAhEKG6EeqsNvCDUfZJVA" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_IqAhEqG6EeqsNvCDUfZJVA" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_IqAhE6G6EeqsNvCDUfZJVA" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_SS5G4KG6EeqsNvCDUfZJVA" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_SSgFUKG6EeqsNvCDUfZJVA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_SS5G4aG6EeqsNvCDUfZJVA"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_ZHqmUKG6EeqsNvCDUfZJVA" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_ZHdK8KG6EeqsNvCDUfZJVA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_ZHqmUaG6EeqsNvCDUfZJVA"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_ch__MKG6EeqsNvCDUfZJVA" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_chtrUKG6EeqsNvCDUfZJVA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_ch__MaG6EeqsNvCDUfZJVA"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_ir0dIKG6EeqsNvCDUfZJVA" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_iro28KG6EeqsNvCDUfZJVA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_ir0dIaG6EeqsNvCDUfZJVA"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_IqAhFKG6EeqsNvCDUfZJVA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_IqAhFaG6EeqsNvCDUfZJVA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_IqAhFqG6EeqsNvCDUfZJVA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_IqAhF6G6EeqsNvCDUfZJVA"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_IqAhGKG6EeqsNvCDUfZJVA" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_IqAhGaG6EeqsNvCDUfZJVA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_IqAhGqG6EeqsNvCDUfZJVA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_IqAhG6G6EeqsNvCDUfZJVA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_IqAhHKG6EeqsNvCDUfZJVA"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_Ip7BgKG6EeqsNvCDUfZJVA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_IqAhEaG6EeqsNvCDUfZJVA" x="-1080" y="680"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_37SKcKStEeqmTOsCAzVBxg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_37SKcqStEeqmTOsCAzVBxg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_37SKc6StEeqmTOsCAzVBxg" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_Nbrw0KSuEeqmTOsCAzVBxg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_NbNPsKSuEeqmTOsCAzVBxg"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_Nbrw0aSuEeqmTOsCAzVBxg"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_37SKdKStEeqmTOsCAzVBxg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_37SxgKStEeqmTOsCAzVBxg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_37SxgaStEeqmTOsCAzVBxg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_37SxgqStEeqmTOsCAzVBxg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_37Sxg6StEeqmTOsCAzVBxg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_37SxhKStEeqmTOsCAzVBxg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_37SxhaStEeqmTOsCAzVBxg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_37SxhqStEeqmTOsCAzVBxg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_37Sxh6StEeqmTOsCAzVBxg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_37PHIKStEeqmTOsCAzVBxg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_37SKcaStEeqmTOsCAzVBxg" x="-1440" y="700"/>
+ </children>
+ <styles xmi:type="notation:StringValueStyle" xmi:id="_m1nccY7UEeq0upQJ9r5s4Q" name="diagram_compatibility_version" stringValue="1.4.0"/>
+ <styles xmi:type="notation:DiagramStyle" xmi:id="_m1ncco7UEeq0upQJ9r5s4Q"/>
+ <styles xmi:type="style:PapyrusDiagramStyle" xmi:id="_m1ncc47UEeq0upQJ9r5s4Q" diagramKindId="org.eclipse.papyrus.uml.diagram.profile">
+ <owner xmi:type="uml:Profile" href="AIML.profile.uml#_IDYhIH13EeqSHNFOHg2_Jw"/>
+ </styles>
+ <styles xmi:type="notation:EObjectListValueStyle" xmi:id="_4YbfkK8YEeqhVOlV64dXmA" name="css_stylesheets" eObjectListValue="_mci3oJm1Eeq8nv7tV9lOqQ"/>
+ <element xmi:type="uml:Profile" href="AIML.profile.uml#_IDYhIH13EeqSHNFOHg2_Jw"/>
+ <edges xmi:type="notation:Connector" xmi:id="_J4Kf8I8nEeq5HrfdV5ATIg" type="Generalization_Edge" source="_J4Kf-I8nEeq5HrfdV5ATIg" target="_J4QmkI8nEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_J4Kf8Y8nEeq5HrfdV5ATIg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_J4Kf8o8nEeq5HrfdV5ATIg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_J4Kf848nEeq5HrfdV5ATIg" x="1" y="58"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_J4Kf9I8nEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_JBpp4H5sEeqSHNFOHg2_Jw"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_J4Kf9Y8nEeq5HrfdV5ATIg" points="[-576, -350, -643984, -643984]$[-516, -399, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_J4Kf9o8nEeq5HrfdV5ATIg" id="(0.8248587570621468,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_J4Kf948nEeq5HrfdV5ATIg" id="(0.3081761006289308,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_J4P_gI8nEeq5HrfdV5ATIg" type="Generalization_Edge" source="_J4MVII8nEeq5HrfdV5ATIg" target="_J4QmkI8nEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_J4P_gY8nEeq5HrfdV5ATIg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_J4P_go8nEeq5HrfdV5ATIg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_J4P_g48nEeq5HrfdV5ATIg" x="-1" y="58"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_J4P_hI8nEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_Je4_gH5sEeqSHNFOHg2_Jw"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_J4P_hY8nEeq5HrfdV5ATIg" points="[-820, 320, -643984, -643984]$[-940, 171, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_J4P_ho8nEeq5HrfdV5ATIg" id="(0.0,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_J4P_h48nEeq5HrfdV5ATIg" id="(0.8860759493670886,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_J4P_mI8nEeq5HrfdV5ATIg" type="Generalization_Edge" source="_J4OxYI8nEeq5HrfdV5ATIg" target="_J4QmkI8nEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_J4P_mY8nEeq5HrfdV5ATIg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_J4P_mo8nEeq5HrfdV5ATIg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_J4P_m48nEeq5HrfdV5ATIg" y="59"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_J4P_nI8nEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_J9Ae4H5sEeqSHNFOHg2_Jw"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_J4P_nY8nEeq5HrfdV5ATIg" points="[-370, -270, -643984, -643984]$[-370, -379, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_J4P_no8nEeq5HrfdV5ATIg" id="(0.2764976958525346,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_J4P_n48nEeq5HrfdV5ATIg" id="(0.6329113924050633,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_QS5scKG3EeqsNvCDUfZJVA" type="Generalization_Edge" source="_J4P_iI8nEeq5HrfdV5ATIg" target="_RBuMMKG1EeqsNvCDUfZJVA">
+ <children xmi:type="notation:DecorationNode" xmi:id="_QS5sc6G3EeqsNvCDUfZJVA" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_w1-goKG4EeqsNvCDUfZJVA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_QS5sdKG3EeqsNvCDUfZJVA" x="-1" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_QS5scaG3EeqsNvCDUfZJVA"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_QScZcKG3EeqsNvCDUfZJVA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_QS5scqG3EeqsNvCDUfZJVA" points="[-1600, 1258, -643984, -643984]$[-1560, 1223, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_QThXgKG3EeqsNvCDUfZJVA" id="(0.4339622641509434,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_QThXgaG3EeqsNvCDUfZJVA" id="(0.2702702702702703,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_QuNvcKG3EeqsNvCDUfZJVA" type="Generalization_Edge" source="_J4LuF48nEeq5HrfdV5ATIg" target="_RBuMMKG1EeqsNvCDUfZJVA">
+ <children xmi:type="notation:DecorationNode" xmi:id="_QuNvc6G3EeqsNvCDUfZJVA" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_w3SIMKG4EeqsNvCDUfZJVA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_QuNvdKG3EeqsNvCDUfZJVA" x="-1" y="58"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_QuNvcaG3EeqsNvCDUfZJVA"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_Qt4YQKG3EeqsNvCDUfZJVA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_QuNvcqG3EeqsNvCDUfZJVA" points="[-1440, 1258, -643984, -643984]$[-1460, 1223, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_QuxJEKG3EeqsNvCDUfZJVA" id="(0.6226415094339622,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_QuxwIKG3EeqsNvCDUfZJVA" id="(0.7207207207207207,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_RMTZoKG3EeqsNvCDUfZJVA" type="Generalization_Edge" source="_RBuMMKG1EeqsNvCDUfZJVA" target="_5JYooKG1EeqsNvCDUfZJVA">
+ <children xmi:type="notation:DecorationNode" xmi:id="_RMTZo6G3EeqsNvCDUfZJVA" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_w2hTMKG4EeqsNvCDUfZJVA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_RMTZpKG3EeqsNvCDUfZJVA" y="59"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_RMTZoaG3EeqsNvCDUfZJVA"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_RL6_IKG3EeqsNvCDUfZJVA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_RMTZoqG3EeqsNvCDUfZJVA" points="[-1560, 1120, -643984, -643984]$[-1680, 1055, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_RMx6wKG3EeqsNvCDUfZJVA" id="(0.2702702702702703,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_RMx6waG3EeqsNvCDUfZJVA" id="(0.6986899563318777,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_pumqwKG3EeqsNvCDUfZJVA" type="Generalization_Edge" source="_J4PYcI8nEeq5HrfdV5ATIg" target="_5JYooKG1EeqsNvCDUfZJVA">
+ <children xmi:type="notation:DecorationNode" xmi:id="_pumqw6G3EeqsNvCDUfZJVA" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_w2v8sKG4EeqsNvCDUfZJVA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_pumqxKG3EeqsNvCDUfZJVA" y="59"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_pumqwaG3EeqsNvCDUfZJVA"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_pt11wKG3EeqsNvCDUfZJVA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_pumqwqG3EeqsNvCDUfZJVA" points="[-1900, 1138, -643984, -643984]$[-1760, 1055, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_pvL5kKG3EeqsNvCDUfZJVA" id="(0.66,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_pvL5kaG3EeqsNvCDUfZJVA" id="(0.34934497816593885,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_qNZfkKG3EeqsNvCDUfZJVA" type="Generalization_Edge" source="_J4Oxc48nEeq5HrfdV5ATIg" target="_5JYooKG1EeqsNvCDUfZJVA">
+ <children xmi:type="notation:DecorationNode" xmi:id="_qNbUwKG3EeqsNvCDUfZJVA" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_w2L8AKG4EeqsNvCDUfZJVA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_qNbUwaG3EeqsNvCDUfZJVA" x="1" y="58"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_qNZfkaG3EeqsNvCDUfZJVA"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_qNQVoKG3EeqsNvCDUfZJVA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_qNZfkqG3EeqsNvCDUfZJVA" points="[-2040, 1140, -643984, -643984]$[-1780, 1055, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_qN2LgKG3EeqsNvCDUfZJVA" id="(0.6,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_qN2LgaG3EeqsNvCDUfZJVA" id="(0.26200873362445415,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_q2CM4KG3EeqsNvCDUfZJVA" type="Generalization_Edge" source="_g_XCsKG3EeqsNvCDUfZJVA" target="_5JYooKG1EeqsNvCDUfZJVA">
+ <children xmi:type="notation:DecorationNode" xmi:id="_q2CM46G3EeqsNvCDUfZJVA" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_w25tsKG4EeqsNvCDUfZJVA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_q2CM5KG3EeqsNvCDUfZJVA" x="-1" y="59"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_q2CM4aG3EeqsNvCDUfZJVA"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_q1mIAKG3EeqsNvCDUfZJVA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_q2CM4qG3EeqsNvCDUfZJVA" points="[-2180, 1140, -643984, -643984]$[-1820, 1055, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_q2s7QKG3EeqsNvCDUfZJVA" id="(0.6,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_q2s7QaG3EeqsNvCDUfZJVA" id="(0.08733624454148471,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_Kvk74KG5EeqsNvCDUfZJVA" type="Generalization_Edge" source="_08WgIKG4EeqsNvCDUfZJVA" target="_d-nZEKG4EeqsNvCDUfZJVA">
+ <children xmi:type="notation:DecorationNode" xmi:id="_Kvk746G5EeqsNvCDUfZJVA" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_KDH5kKSuEeqmTOsCAzVBxg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_Kvk75KG5EeqsNvCDUfZJVA" x="-2" y="57"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_Kvk74aG5EeqsNvCDUfZJVA"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_KvNvgKG5EeqsNvCDUfZJVA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_Kvk74qG5EeqsNvCDUfZJVA" points="[-1020, 1180, -643984, -643984]$[-1080, 1099, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_KwHHYKG5EeqsNvCDUfZJVA" id="(0.7547169811320755,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_KwHHYaG5EeqsNvCDUfZJVA" id="(0.7171314741035857,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_L9lnIKG5EeqsNvCDUfZJVA" type="Generalization_Edge" source="_34N0UKG4EeqsNvCDUfZJVA" target="_d-nZEKG4EeqsNvCDUfZJVA">
+ <children xmi:type="notation:DecorationNode" xmi:id="_L9oqcKG5EeqsNvCDUfZJVA" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_KCtp4KSuEeqmTOsCAzVBxg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_L9oqcaG5EeqsNvCDUfZJVA" y="59"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_L9lnIaG5EeqsNvCDUfZJVA"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_L9aA8KG5EeqsNvCDUfZJVA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_L9lnIqG5EeqsNvCDUfZJVA" points="[-1200, 1180, -643984, -643984]$[-1180, 1099, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_L-DhMKG5EeqsNvCDUfZJVA" id="(0.5660377358490566,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_L-DhMaG5EeqsNvCDUfZJVA" id="(0.3187250996015936,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_Qv4FcKSuEeqmTOsCAzVBxg" type="Generalization_Edge" source="_5JYooKG1EeqsNvCDUfZJVA" target="_37SKcKStEeqmTOsCAzVBxg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_Qv4sgKSuEeqmTOsCAzVBxg" type="Generalization_StereotypeLabel">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_Qv4sgaSuEeqmTOsCAzVBxg" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_Qv4FcaSuEeqmTOsCAzVBxg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_QvZkUKSuEeqmTOsCAzVBxg"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_Qv4FcqSuEeqmTOsCAzVBxg" points="[-1660, 920, -643984, -643984]$[-1420, 803, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_QwfJcKSuEeqmTOsCAzVBxg" id="(0.7860262008733624,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_QwfJcaSuEeqmTOsCAzVBxg" id="(0.0966183574879227,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_RPARcKSuEeqmTOsCAzVBxg" type="Generalization_Edge" source="_J4PYgI8nEeq5HrfdV5ATIg" target="_37SKcKStEeqmTOsCAzVBxg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_RPARc6SuEeqmTOsCAzVBxg" type="Generalization_StereotypeLabel">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_RPARdKSuEeqmTOsCAzVBxg" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_RPARcaSuEeqmTOsCAzVBxg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_ROpsIKSuEeqmTOsCAzVBxg"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_RPARcqSuEeqmTOsCAzVBxg" points="[-1440, 940, -643984, -643984]$[-1380, 803, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_RPfZoKSuEeqmTOsCAzVBxg" id="(0.5660377358490566,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_RPfZoaSuEeqmTOsCAzVBxg" id="(0.2898550724637681,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_RwKdwKSuEeqmTOsCAzVBxg" type="Generalization_Edge" source="_d-nZEKG4EeqsNvCDUfZJVA" target="_37SKcKStEeqmTOsCAzVBxg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_RwKdw6SuEeqmTOsCAzVBxg" type="Generalization_StereotypeLabel">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_RwKdxKSuEeqmTOsCAzVBxg" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_RwKdwaSuEeqmTOsCAzVBxg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_Rvo5UKSuEeqmTOsCAzVBxg"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_RwKdwqSuEeqmTOsCAzVBxg" points="[-1180, 900, -643984, -643984]$[-1280, 803, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_RwvFgKSuEeqmTOsCAzVBxg" id="(0.3187250996015936,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_RwvFgaSuEeqmTOsCAzVBxg" id="(0.7729468599033816,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_SberoKSuEeqmTOsCAzVBxg" type="Generalization_Edge" source="_37SKcKStEeqmTOsCAzVBxg" target="_J4Kf-I8nEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_Sbero6SuEeqmTOsCAzVBxg" type="Generalization_StereotypeLabel">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_SberpKSuEeqmTOsCAzVBxg" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_SberoaSuEeqmTOsCAzVBxg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_SbB_sKSuEeqmTOsCAzVBxg"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_SberoqSuEeqmTOsCAzVBxg" points="[-1340, 700, -643984, -643984]$[-1340, 597, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_ScYqkKSuEeqmTOsCAzVBxg" id="(0.4830917874396135,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_ScYqkaSuEeqmTOsCAzVBxg" id="(0.3659574468085106,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_gwdNIKSuEeqmTOsCAzVBxg" type="Generalization_Edge" source="_IqAhEKG6EeqsNvCDUfZJVA" target="_J4Kf-I8nEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_gwdNI6SuEeqmTOsCAzVBxg" type="Generalization_StereotypeLabel">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_gwdNJKSuEeqmTOsCAzVBxg" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_gwdNIaSuEeqmTOsCAzVBxg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_gvxQoKSuEeqmTOsCAzVBxg"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_gwdNIqSuEeqmTOsCAzVBxg" points="[-1000, 680, -643984, -643984]$[-1220, 581, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_gxPQQKSuEeqmTOsCAzVBxg" id="(0.3187250996015936,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_gxPQQaSuEeqmTOsCAzVBxg" id="(0.8765957446808511,1.0)"/>
+ </edges>
+ </notation:Diagram>
+ <notation:Diagram xmi:id="_kJJLUI8lEeq5HrfdV5ATIg" type="PapyrusUMLProfileDiagram" name="Module" measurementUnit="Pixel">
+ <children xmi:type="notation:Shape" xmi:id="_m2CPYI8lEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_cqEVMI8mEeq5HrfdV5ATIg" source="PapyrusCSSForceValue">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_cqEVMY8mEeq5HrfdV5ATIg" key="canonical" value="true"/>
+ </eAnnotations>
+ <children xmi:type="notation:DecorationNode" xmi:id="_m2DdgI8lEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_m2EEkI8lEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_UzO1AKWREeq2dLYfuMvqgg" source="PapyrusCSSForceValue">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_UzO1AaWREeq2dLYfuMvqgg" key="mutable" value="true"/>
+ </eAnnotations>
+ <children xmi:type="notation:Shape" xmi:id="_sDX28I8lEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_7EMR4IhuEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_sDX28Y8lEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_sDZsII8lEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_7vDMwIhuEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_sDZsIY8lEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_sDaTMI8lEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_9DLHEIhuEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_sDaTMY8lEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_sDa6QI8lEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_ivxlgIvAEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_sDa6QY8lEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="__PMOkLYUEeq1Koq3J5meEA" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#__N7qULYUEeq1Koq3J5meEA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="__PM1oLYUEeq1Koq3J5meEA"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_AtTyYLYVEeq1Koq3J5meEA" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_AtDTsLYVEeq1Koq3J5meEA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_AtTyYbYVEeq1Koq3J5meEA"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_m2EEkY8lEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_m2EEko8lEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_m2EEk48lEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_m2EElI8lEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_m2EElY8lEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_m2EElo8lEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_m2EEl48lEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_m2EEmI8lEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_m2EEmY8lEeq5HrfdV5ATIg"/>
+ </children>
+ <styles xmi:type="notation:CanonicalStyle" xmi:id="_cqDuII8mEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_2E9coH2KEeqSHNFOHg2_Jw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_m2CPYY8lEeq5HrfdV5ATIg" x="376" y="313"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_nKeOUI8lEeq5HrfdV5ATIg" type="Class_MetaclassShape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_nKe1YI8lEeq5HrfdV5ATIg" type="Class_MetaclassNameLabel"/>
+ <element xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Class"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_nKeOUY8lEeq5HrfdV5ATIg" x="394" y="101"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_3vW_8LYUEeq1Koq3J5meEA" type="StereotypeComment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_3vW_8bYUEeq1Koq3J5meEA"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_3vXnALYUEeq1Koq3J5meEA" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Class"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_3vW_8rYUEeq1Koq3J5meEA" x="594" y="101"/>
+ </children>
+ <styles xmi:type="notation:StringValueStyle" xmi:id="_kJJLUY8lEeq5HrfdV5ATIg" name="diagram_compatibility_version" stringValue="1.4.0"/>
+ <styles xmi:type="notation:DiagramStyle" xmi:id="_kJJLUo8lEeq5HrfdV5ATIg"/>
+ <styles xmi:type="style:PapyrusDiagramStyle" xmi:id="_kJJLU48lEeq5HrfdV5ATIg" diagramKindId="org.eclipse.papyrus.uml.diagram.profile">
+ <owner xmi:type="uml:Profile" href="AIML.profile.uml#_IDYhIH13EeqSHNFOHg2_Jw"/>
+ </styles>
+ <styles xmi:type="notation:EObjectListValueStyle" xmi:id="_g_ZjoK8YEeqhVOlV64dXmA" name="css_stylesheets" eObjectListValue="_mci3oJm1Eeq8nv7tV9lOqQ"/>
+ <element xmi:type="uml:Profile" href="AIML.profile.uml#_IDYhIH13EeqSHNFOHg2_Jw"/>
+ <edges xmi:type="notation:Connector" xmi:id="_nLI8sI8lEeq5HrfdV5ATIg" type="Extension_Edge" source="_m2CPYI8lEeq5HrfdV5ATIg" target="_nKeOUI8lEeq5HrfdV5ATIg">
+ <styles xmi:type="notation:FontStyle" xmi:id="_nLI8sY8lEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Extension" href="AIML.profile.uml#_n3BRAH5rEeqSHNFOHg2_Jw"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_nLI8so8lEeq5HrfdV5ATIg" points="[376, 320, -643984, -643984]$[0, 0, -643984, -643984]"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_3vXnAbYUEeq1Koq3J5meEA" type="StereotypeCommentLink" source="_nKeOUI8lEeq5HrfdV5ATIg" target="_3vW_8LYUEeq1Koq3J5meEA">
+ <styles xmi:type="notation:FontStyle" xmi:id="_3vYOELYUEeq1Koq3J5meEA"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_3vY1ILYUEeq1Koq3J5meEA" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Class"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_3vYOEbYUEeq1Koq3J5meEA" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_3vYOErYUEeq1Koq3J5meEA"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_3vYOE7YUEeq1Koq3J5meEA"/>
+ </edges>
+ </notation:Diagram>
+ <notation:Diagram xmi:id="_xCeOMI8lEeq5HrfdV5ATIg" type="PapyrusUMLProfileDiagram" name="Tensor" measurementUnit="Pixel">
+ <children xmi:type="notation:Shape" xmi:id="_1c7AQI8lEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_jEYGMY8mEeq5HrfdV5ATIg" source="PapyrusCSSForceValue">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_jEYGMo8mEeq5HrfdV5ATIg" key="canonical" value="true"/>
+ </eAnnotations>
+ <children xmi:type="notation:DecorationNode" xmi:id="_1c7nUY8lEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_1c8OYI8lEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_jFWWkI8mEeq5HrfdV5ATIg" source="PapyrusCSSForceValue">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_jFWWkY8mEeq5HrfdV5ATIg" key="mutable" value="true"/>
+ </eAnnotations>
+ <children xmi:type="notation:Shape" xmi:id="_jEZ7YI8mEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_jFWWko8mEeq5HrfdV5ATIg" source="PapyrusCSSForceValue">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_jFWWk48mEeq5HrfdV5ATIg" key="mutable" value="true"/>
+ </eAnnotations>
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_mlHloIhuEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_jEZ7YY8mEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_jEaicI8mEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_jFWWlI8mEeq5HrfdV5ATIg" source="PapyrusCSSForceValue">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_jFWWlY8mEeq5HrfdV5ATIg" key="mutable" value="true"/>
+ </eAnnotations>
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_ncDNoIhuEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_jEaicY8mEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_jEbJgI8mEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_jFWWlo8mEeq5HrfdV5ATIg" source="PapyrusCSSForceValue">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_jFWWl48mEeq5HrfdV5ATIg" key="mutable" value="true"/>
+ </eAnnotations>
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_oUgfoIhuEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_jEbJgY8mEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_jEbJgo8mEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_jFWWmI8mEeq5HrfdV5ATIg" source="PapyrusCSSForceValue">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_jFWWmY8mEeq5HrfdV5ATIg" key="mutable" value="true"/>
+ </eAnnotations>
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_o5TOwIhuEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_jEbJg48mEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_jEbwkI8mEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_jFW9oI8mEeq5HrfdV5ATIg" source="PapyrusCSSForceValue">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_jFW9oY8mEeq5HrfdV5ATIg" key="mutable" value="true"/>
+ </eAnnotations>
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_pnJzQIhuEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_jEbwkY8mEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_wpWrsKWvEeq2dLYfuMvqgg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_wocFsKWvEeq2dLYfuMvqgg"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_wpWrsaWvEeq2dLYfuMvqgg"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_xtNVYKWvEeq2dLYfuMvqgg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_xs8PoKWvEeq2dLYfuMvqgg"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_xtNVYaWvEeq2dLYfuMvqgg"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_1c8OYY8lEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_1c8OYo8lEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_1c8OY48lEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_1c8OZI8lEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_1c8OZY8lEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_1c8OZo8lEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_1c8OZ48lEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_1c8OaI8lEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_1c8OaY8lEeq5HrfdV5ATIg"/>
+ </children>
+ <styles xmi:type="notation:CanonicalStyle" xmi:id="_jEYGMI8mEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_kkWnwIhuEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_1c7nUI8lEeq5HrfdV5ATIg" x="260" y="340"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_1dH0kI8lEeq5HrfdV5ATIg" type="Enumeration_Shape">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_kC_DgY8mEeq5HrfdV5ATIg" source="PapyrusCSSForceValue">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_kC_Dgo8mEeq5HrfdV5ATIg" key="canonical" value="true"/>
+ </eAnnotations>
+ <children xmi:type="notation:DecorationNode" xmi:id="_1dH0ko8lEeq5HrfdV5ATIg" type="Enumeration_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_1dIboI8lEeq5HrfdV5ATIg" type="Enumeration_LiteralCompartment">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_kEAXMI8mEeq5HrfdV5ATIg" source="PapyrusCSSForceValue">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_kEAXMY8mEeq5HrfdV5ATIg" key="mutable" value="true"/>
+ </eAnnotations>
+ <children xmi:type="notation:Shape" xmi:id="_kDARoI8mEeq5HrfdV5ATIg" type="EnumerationLiteral_LiteralLabel">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_kEAXMo8mEeq5HrfdV5ATIg" source="PapyrusCSSForceValue">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_kEAXM48mEeq5HrfdV5ATIg" key="mutable" value="true"/>
+ </eAnnotations>
+ <element xmi:type="uml:EnumerationLiteral" href="AIML.profile.uml#_GeF-8IvIEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_kDARoY8mEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_kDA4sI8mEeq5HrfdV5ATIg" type="EnumerationLiteral_LiteralLabel">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_kEAXNI8mEeq5HrfdV5ATIg" source="PapyrusCSSForceValue">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_kEAXNY8mEeq5HrfdV5ATIg" key="mutable" value="true"/>
+ </eAnnotations>
+ <element xmi:type="uml:EnumerationLiteral" href="AIML.profile.uml#_VdQs8IvIEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_kDA4sY8mEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_kDA4so8mEeq5HrfdV5ATIg" type="EnumerationLiteral_LiteralLabel">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_kEAXNo8mEeq5HrfdV5ATIg" source="PapyrusCSSForceValue">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_kEAXN48mEeq5HrfdV5ATIg" key="mutable" value="true"/>
+ </eAnnotations>
+ <element xmi:type="uml:EnumerationLiteral" href="AIML.profile.uml#_YIbSsIvIEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_kDA4s48mEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_kDBfwI8mEeq5HrfdV5ATIg" type="EnumerationLiteral_LiteralLabel">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_kEAXOI8mEeq5HrfdV5ATIg" source="PapyrusCSSForceValue">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_kEAXOY8mEeq5HrfdV5ATIg" key="mutable" value="true"/>
+ </eAnnotations>
+ <element xmi:type="uml:EnumerationLiteral" href="AIML.profile.uml#_bZFyMIvIEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_kDBfwY8mEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_kDCG0I8mEeq5HrfdV5ATIg" type="EnumerationLiteral_LiteralLabel">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_kEAXOo8mEeq5HrfdV5ATIg" source="PapyrusCSSForceValue">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_kEAXO48mEeq5HrfdV5ATIg" key="mutable" value="true"/>
+ </eAnnotations>
+ <element xmi:type="uml:EnumerationLiteral" href="AIML.profile.uml#_czCAoIvIEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_kDCG0Y8mEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_kDCG0o8mEeq5HrfdV5ATIg" type="EnumerationLiteral_LiteralLabel">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_kEAXPI8mEeq5HrfdV5ATIg" source="PapyrusCSSForceValue">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_kEAXPY8mEeq5HrfdV5ATIg" key="mutable" value="true"/>
+ </eAnnotations>
+ <element xmi:type="uml:EnumerationLiteral" href="AIML.profile.uml#_dzPgcIvIEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_kDCG048mEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_kDCt4I8mEeq5HrfdV5ATIg" type="EnumerationLiteral_LiteralLabel">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_kEAXPo8mEeq5HrfdV5ATIg" source="PapyrusCSSForceValue">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_kEAXP48mEeq5HrfdV5ATIg" key="mutable" value="true"/>
+ </eAnnotations>
+ <element xmi:type="uml:EnumerationLiteral" href="AIML.profile.uml#_ez5sMIvIEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_kDCt4Y8mEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_kDDU8I8mEeq5HrfdV5ATIg" type="EnumerationLiteral_LiteralLabel">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_kEA-QI8mEeq5HrfdV5ATIg" source="PapyrusCSSForceValue">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_kEA-QY8mEeq5HrfdV5ATIg" key="mutable" value="true"/>
+ </eAnnotations>
+ <element xmi:type="uml:EnumerationLiteral" href="AIML.profile.uml#_flb20IvIEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_kDDU8Y8mEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_kDDU8o8mEeq5HrfdV5ATIg" type="EnumerationLiteral_LiteralLabel">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_kEA-Qo8mEeq5HrfdV5ATIg" source="PapyrusCSSForceValue">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_kEA-Q48mEeq5HrfdV5ATIg" key="mutable" value="true"/>
+ </eAnnotations>
+ <element xmi:type="uml:EnumerationLiteral" href="AIML.profile.uml#_gV4cUIvIEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_kDDU848mEeq5HrfdV5ATIg"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_1dIboY8lEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_1dIboo8lEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_1dIbo48lEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_1dIbpI8lEeq5HrfdV5ATIg"/>
+ </children>
+ <styles xmi:type="notation:CanonicalStyle" xmi:id="_kC_DgI8mEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Enumeration" href="AIML.profile.uml#_D6R-YIvIEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_1dH0kY8lEeq5HrfdV5ATIg" x="500" y="320"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_1dQ-gI8lEeq5HrfdV5ATIg" type="Enumeration_Shape">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_ksodcY8mEeq5HrfdV5ATIg" source="PapyrusCSSForceValue">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_kspEgI8mEeq5HrfdV5ATIg" key="canonical" value="true"/>
+ </eAnnotations>
+ <children xmi:type="notation:DecorationNode" xmi:id="_1dRlkI8lEeq5HrfdV5ATIg" type="Enumeration_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_1dRlkY8lEeq5HrfdV5ATIg" type="Enumeration_LiteralCompartment">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_kt7d8I8mEeq5HrfdV5ATIg" source="PapyrusCSSForceValue">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_kt7d8Y8mEeq5HrfdV5ATIg" key="mutable" value="true"/>
+ </eAnnotations>
+ <children xmi:type="notation:Shape" xmi:id="_ksqSoI8mEeq5HrfdV5ATIg" type="EnumerationLiteral_LiteralLabel">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_kt7d8o8mEeq5HrfdV5ATIg" source="PapyrusCSSForceValue">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_kt7d848mEeq5HrfdV5ATIg" key="mutable" value="true"/>
+ </eAnnotations>
+ <element xmi:type="uml:EnumerationLiteral" href="AIML.profile.uml#_FE7PwIvMEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_ksqSoY8mEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_ksqSoo8mEeq5HrfdV5ATIg" type="EnumerationLiteral_LiteralLabel">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_kt7d9I8mEeq5HrfdV5ATIg" source="PapyrusCSSForceValue">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_kt7d9Y8mEeq5HrfdV5ATIg" key="mutable" value="true"/>
+ </eAnnotations>
+ <element xmi:type="uml:EnumerationLiteral" href="AIML.profile.uml#_GM6ykIvMEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_ksqSo48mEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_ksq5sI8mEeq5HrfdV5ATIg" type="EnumerationLiteral_LiteralLabel">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_kt7d9o8mEeq5HrfdV5ATIg" source="PapyrusCSSForceValue">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_kt7d948mEeq5HrfdV5ATIg" key="mutable" value="true"/>
+ </eAnnotations>
+ <element xmi:type="uml:EnumerationLiteral" href="AIML.profile.uml#_IXWp0IvMEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_ksq5sY8mEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_ksq5so8mEeq5HrfdV5ATIg" type="EnumerationLiteral_LiteralLabel">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_kt7d-I8mEeq5HrfdV5ATIg" source="PapyrusCSSForceValue">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_kt7d-Y8mEeq5HrfdV5ATIg" key="mutable" value="true"/>
+ </eAnnotations>
+ <element xmi:type="uml:EnumerationLiteral" href="AIML.profile.uml#_KEe6AIvMEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_ksq5s48mEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_ksq5tI8mEeq5HrfdV5ATIg" type="EnumerationLiteral_LiteralLabel">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_kt7d-o8mEeq5HrfdV5ATIg" source="PapyrusCSSForceValue">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_kt7d-48mEeq5HrfdV5ATIg" key="mutable" value="true"/>
+ </eAnnotations>
+ <element xmi:type="uml:EnumerationLiteral" href="AIML.profile.uml#_LzG_AIvMEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_ksq5tY8mEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_ksrgwI8mEeq5HrfdV5ATIg" type="EnumerationLiteral_LiteralLabel">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_kt7d_I8mEeq5HrfdV5ATIg" source="PapyrusCSSForceValue">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_kt8FAI8mEeq5HrfdV5ATIg" key="mutable" value="true"/>
+ </eAnnotations>
+ <element xmi:type="uml:EnumerationLiteral" href="AIML.profile.uml#_MmTWgIvMEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_ksrgwY8mEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_ksrgwo8mEeq5HrfdV5ATIg" type="EnumerationLiteral_LiteralLabel">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_kt8FAY8mEeq5HrfdV5ATIg" source="PapyrusCSSForceValue">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_kt8FAo8mEeq5HrfdV5ATIg" key="mutable" value="true"/>
+ </eAnnotations>
+ <element xmi:type="uml:EnumerationLiteral" href="AIML.profile.uml#_Ndwi8IvMEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_ksrgw48mEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_ksrgxI8mEeq5HrfdV5ATIg" type="EnumerationLiteral_LiteralLabel">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_kt8FA48mEeq5HrfdV5ATIg" source="PapyrusCSSForceValue">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_kt8FBI8mEeq5HrfdV5ATIg" key="mutable" value="true"/>
+ </eAnnotations>
+ <element xmi:type="uml:EnumerationLiteral" href="AIML.profile.uml#_OHKFQIvMEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_ksrgxY8mEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_kssH0I8mEeq5HrfdV5ATIg" type="EnumerationLiteral_LiteralLabel">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_kt8FBY8mEeq5HrfdV5ATIg" source="PapyrusCSSForceValue">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_kt8FBo8mEeq5HrfdV5ATIg" key="mutable" value="true"/>
+ </eAnnotations>
+ <element xmi:type="uml:EnumerationLiteral" href="AIML.profile.uml#_O3f9EIvMEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_kssH0Y8mEeq5HrfdV5ATIg"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_1dRlko8lEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_1dRlk48lEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_1dRllI8lEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_1dRllY8lEeq5HrfdV5ATIg"/>
+ </children>
+ <styles xmi:type="notation:CanonicalStyle" xmi:id="_ksodcI8mEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Enumeration" href="AIML.profile.uml#_AiQ84IvMEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_1dQ-gY8lEeq5HrfdV5ATIg" x="720" y="320"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_If4SAK8eEeqUEZ8AVVPlLA" type="Class_MetaclassShape">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_If7VUK8eEeqUEZ8AVVPlLA" source="Stereotype_Annotation">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_If7VUa8eEeqUEZ8AVVPlLA" key="StereotypeWithQualifiedNameList" value=""/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_If7VUq8eEeqUEZ8AVVPlLA" key="StereotypeList" value="StandardProfile::Metaclass"/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_If7VU68eEeqUEZ8AVVPlLA" key="Stereotype_Presentation_Kind" value="HorizontalStereo"/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_If7VVK8eEeqUEZ8AVVPlLA" key="PropStereoDisplay" value=""/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_If7VVa8eEeqUEZ8AVVPlLA" key="StereotypePropertyLocation" value="Compartment"/>
+ </eAnnotations>
+ <children xmi:type="notation:DecorationNode" xmi:id="_If6HMK8eEeqUEZ8AVVPlLA" type="Class_MetaclassNameLabel"/>
+ <element xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Class"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_If6HMa8eEeqUEZ8AVVPlLA" x="360" y="220"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_ThxeYLBsEeqpLKLYM3OEXg" type="StereotypeComment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_ThxeYbBsEeqpLKLYM3OEXg"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_ThxeY7BsEeqpLKLYM3OEXg" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Class"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ThxeYrBsEeqpLKLYM3OEXg" x="560" y="220"/>
+ </children>
+ <styles xmi:type="notation:StringValueStyle" xmi:id="_xCeOMY8lEeq5HrfdV5ATIg" name="diagram_compatibility_version" stringValue="1.4.0"/>
+ <styles xmi:type="notation:DiagramStyle" xmi:id="_xCeOMo8lEeq5HrfdV5ATIg"/>
+ <styles xmi:type="style:PapyrusDiagramStyle" xmi:id="_xCeOM48lEeq5HrfdV5ATIg" diagramKindId="org.eclipse.papyrus.uml.diagram.profile">
+ <owner xmi:type="uml:Profile" href="AIML.profile.uml#_IDYhIH13EeqSHNFOHg2_Jw"/>
+ </styles>
+ <element xmi:type="uml:Profile" href="AIML.profile.uml#_IDYhIH13EeqSHNFOHg2_Jw"/>
+ <edges xmi:type="notation:Connector" xmi:id="_JNlskK8eEeqUEZ8AVVPlLA" type="Extension_Edge" source="_1c7AQI8lEeq5HrfdV5ATIg" target="_If4SAK8eEeqUEZ8AVVPlLA">
+ <styles xmi:type="notation:FontStyle" xmi:id="_JNlska8eEeqUEZ8AVVPlLA"/>
+ <element xmi:type="uml:Extension" href="AIML.profile.uml#_JM3T0K8eEeqUEZ8AVVPlLA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_JNlskq8eEeqUEZ8AVVPlLA" points="[400, 340, -643984, -643984]$[400, 270, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_JORpEK8eEeqUEZ8AVVPlLA" id="(0.7291666666666666,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_JOSQIK8eEeqUEZ8AVVPlLA" id="(0.4,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_ThyFcLBsEeqpLKLYM3OEXg" type="StereotypeCommentLink" source="_If4SAK8eEeqUEZ8AVVPlLA" target="_ThxeYLBsEeqpLKLYM3OEXg">
+ <styles xmi:type="notation:FontStyle" xmi:id="_ThyFcbBsEeqpLKLYM3OEXg"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_ThzTkbBsEeqpLKLYM3OEXg" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Class"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_ThyFcrBsEeqpLKLYM3OEXg" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_ThysgLBsEeqpLKLYM3OEXg"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_ThzTkLBsEeqpLKLYM3OEXg"/>
+ </edges>
+ </notation:Diagram>
+ <notation:Diagram xmi:id="_M23iMI8mEeq5HrfdV5ATIg" type="PapyrusUMLProfileDiagram" name="Type of Data" measurementUnit="Pixel">
+ <children xmi:type="notation:Shape" xmi:id="_ZQV4UJbREeq1-Ze45jZMTg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_ZQWfYJbREeq1-Ze45jZMTg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_ZQWfYZbREeq1-Ze45jZMTg" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_mwGpEJbREeq1-Ze45jZMTg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_mveW8JbREeq1-Ze45jZMTg"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_mwGpEZbREeq1-Ze45jZMTg"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_ZQWfYpbREeq1-Ze45jZMTg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_ZQWfY5bREeq1-Ze45jZMTg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_ZQWfZJbREeq1-Ze45jZMTg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ZQWfZZbREeq1-Ze45jZMTg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_ZQXGcJbREeq1-Ze45jZMTg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_ZQXGcZbREeq1-Ze45jZMTg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_ZQXGcpbREeq1-Ze45jZMTg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_ZQXGc5bREeq1-Ze45jZMTg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ZQXGdJbREeq1-Ze45jZMTg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_ZQQYwJbREeq1-Ze45jZMTg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ZQV4UZbREeq1-Ze45jZMTg" x="380" y="360"/>
+ </children>
+ <styles xmi:type="notation:StringValueStyle" xmi:id="_M23iMY8mEeq5HrfdV5ATIg" name="diagram_compatibility_version" stringValue="1.4.0"/>
+ <styles xmi:type="notation:DiagramStyle" xmi:id="_M23iMo8mEeq5HrfdV5ATIg"/>
+ <styles xmi:type="style:PapyrusDiagramStyle" xmi:id="_M23iM48mEeq5HrfdV5ATIg" diagramKindId="org.eclipse.papyrus.uml.diagram.profile">
+ <owner xmi:type="uml:Profile" href="AIML.profile.uml#_IDYhIH13EeqSHNFOHg2_Jw"/>
+ </styles>
+ <element xmi:type="uml:Profile" href="AIML.profile.uml#_IDYhIH13EeqSHNFOHg2_Jw"/>
+ </notation:Diagram>
+ <notation:Diagram xmi:id="_ZJoe4I8nEeq5HrfdV5ATIg" type="PapyrusUMLProfileDiagram" name="Pooling_layers" measurementUnit="Pixel">
+ <children xmi:type="notation:Shape" xmi:id="_As8REI8oEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_As8REY8oEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_As8REo8oEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_As8RE48oEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_tPrdkIVXEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_As8RFI8oEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_As8RFY8oEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_uGxdoIVXEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_As8RFo8oEeq5HrfdV5ATIg"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_As8RF48oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_As8RGI8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_As8RGY8oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_As8RGo8oEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_As8RG48oEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_As8RHI8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_As8RHY8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_As8RHo8oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_As8RH48oEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_rL8rQIVXEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_As8RI48oEeq5HrfdV5ATIg" x="-100" y="820"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_As84II8oEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_As84IY8oEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_As84Io8oEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_As84I48oEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_Y5DYIIVWEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_As84JI8oEeq5HrfdV5ATIg"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_As84JY8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_As9fMI8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_As9fMY8oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_As9fMo8oEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_As9fM48oEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_As9fNI8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_As9fNY8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_As9fNo8oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_As9fN48oEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_TS3LsIVWEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_As9fO48oEeq5HrfdV5ATIg" x="400" y="980"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_As9fPI8oEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_As9fPY8oEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_As9fPo8oEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_As9fP48oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_As9fQI8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_As9fQY8oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_As9fQo8oEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_As9fQ48oEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_As9fRI8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_As9fRY8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_As9fRo8oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_As9fR48oEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_y5HSoIVUEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_As9fS48oEeq5HrfdV5ATIg" x="-160" y="640"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_As_UYI8oEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_As_UYY8oEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_As_UYo8oEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_As_UY48oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_As_UZI8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_As_UZY8oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_As_UZo8oEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_As_UZ48oEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_As_UaI8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_As_UaY8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_As_Uao8oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_As_Ua48oEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_vkD30IVTEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_As_Ub48oEeq5HrfdV5ATIg" x="960" y="540"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_AtAih48oEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_AtAiiI8oEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_AtAiiY8oEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_AtAiio8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_AtAii48oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_AtAijI8oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_AtAijY8oEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_AtAijo8oEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_AtAij48oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_AtAikI8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_AtAikY8oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_AtAiko8oEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_b9-hsIVWEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_AtAilo8oEeq5HrfdV5ATIg" x="420" y="1120"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_AtBwqI8oEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_AtBwqY8oEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_AtBwqo8oEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_AtBwq48oEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_mqeLgIVUEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_AtBwrI8oEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_jyM2MKZ3EeqIr7xwFiWQGQ" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_jxSQMKZ3EeqIr7xwFiWQGQ"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_jyM2MaZ3EeqIr7xwFiWQGQ"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_AtBwrY8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_AtBwro8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_AtBwr48oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_AtBwsI8oEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_AtBwsY8oEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_AtBwso8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_AtBws48oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_AtBwtI8oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_AtBwtY8oEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_h3EG4IVUEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_AtBwuY8oEeq5HrfdV5ATIg" x="-300" y="460"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_AtCXsI8oEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_AtCXsY8oEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_AtCXso8oEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_AtCXs48oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_AtCXtI8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_AtCXtY8oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_AtCXto8oEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_AtCXt48oEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_AtCXuI8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_AtCXuY8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_AtCXuo8oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_AtCXu48oEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_1WhB0IVXEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_AtCXv48oEeq5HrfdV5ATIg" x="-40" y="980"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_AtDl0I8oEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_AtDl0Y8oEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_AtDl0o8oEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_AtDl048oEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_K5-DkIVVEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_AtDl1I8oEeq5HrfdV5ATIg"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_AtDl1Y8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_AtDl1o8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_AtDl148oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_AtDl2I8oEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_AtDl2Y8oEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_AtDl2o8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_AtDl248oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_AtDl3I8oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_AtDl3Y8oEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_FjbcsIVVEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_AtDl4Y8oEeq5HrfdV5ATIg" x="380" y="480" width="181" height="81"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_AtEM948oEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_AtEM-I8oEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_AtEM-Y8oEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_AtEM-o8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_AtEM-48oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_AtEM_I8oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_AtEM_Y8oEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_AtEM_o8oEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_AtEM_48oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_AtENAI8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_AtENAY8oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_AtENAo8oEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_VqZVsIVUEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_AtEz8o8oEeq5HrfdV5ATIg" x="240" y="980"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_AtEz848oEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_AtEz9I8oEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_AtEz9Y8oEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_AtEz9o8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_AtEz948oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_AtEz-I8oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_AtEz-Y8oEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_AtEz-o8oEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_AtEz-48oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_AtEz_I8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_AtEz_Y8oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_AtEz_o8oEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_sAviEIVTEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_AtE0Ao8oEeq5HrfdV5ATIg" x="1240" y="540"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_AtE0A48oEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_AtE0BI8oEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_AtE0BY8oEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_AtE0Bo8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_AtE0B48oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_AtE0CI8oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_AtE0CY8oEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_AtE0Co8oEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_AtE0C48oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_AtE0DI8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_AtE0DY8oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_AtE0Do8oEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_wYbekIVUEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_AtE0Eo8oEeq5HrfdV5ATIg" x="-280" y="640"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_AtGCII8oEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_AtGCIY8oEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_AtGCIo8oEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_AtGCI48oEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_vvW-UIVSEeqvavUi0dxRAw"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_AtGCJI8oEeq5HrfdV5ATIg"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_AtGCJY8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_AtGCJo8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_AtGCJ48oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_AtGCKI8oEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_AtGCKY8oEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_AtGCKo8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_AtGCK48oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_AtGCLI8oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_AtGCLY8oEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_spFw8IVSEeqvavUi0dxRAw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_AtGCMY8oEeq5HrfdV5ATIg" x="1060" y="200"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_AtGpII8oEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_AtGpIY8oEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_AtGpIo8oEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_AtGpI48oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_AtGpJI8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_AtGpJY8oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_AtGpJo8oEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_AtGpJ48oEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_AtGpKI8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_AtGpKY8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_AtGpKo8oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_AtGpK48oEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_nMBrUIVSEeqvavUi0dxRAw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_AtGpL48oEeq5HrfdV5ATIg" x="480" y="40"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_AtHQMI8oEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_AtHQMY8oEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_AtHQMo8oEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_AtHQM48oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_AtHQNI8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_AtHQNY8oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_AtHQNo8oEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_AtHQN48oEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_AtHQOI8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_AtHQOY8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_AtHQOo8oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_AtHQO48oEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_dQfZ0IVTEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_AtHQP48oEeq5HrfdV5ATIg" x="1700" y="540"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_AtHQQY8oEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_AtHQQo8oEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_AtHQQ48oEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_AtHQRI8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_AtHQRY8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_AtHQRo8oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_AtHQR48oEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_AtHQSI8oEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_AtHQSY8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_AtHQSo8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_AtHQS48oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_AtHQTI8oEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_ddho4IVWEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_AtHQUI8oEeq5HrfdV5ATIg" x="580" y="1120"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_AtH3QI8oEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_AtH3QY8oEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_AtH3Qo8oEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_AtH3Q48oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_AtH3RI8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_AtH3RY8oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_AtH3Ro8oEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_AtH3R48oEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_AtH3SI8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_AtH3SY8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_AtH3So8oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_AtH3S48oEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_cdWFoIVTEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_AtH3T48oEeq5HrfdV5ATIg" x="1560" y="540"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_AtH3UI8oEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_AtH3UY8oEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_AtH3Uo8oEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_AtH3U48oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_AtH3VI8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_AtH3VY8oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_AtH3Vo8oEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_AtH3V48oEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_AtH3WI8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_AtH3WY8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_AtH3Wo8oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_AtH3W48oEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_QF-D0IVUEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_AtH3X48oEeq5HrfdV5ATIg" x="-160" y="980"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_AtIeUI8oEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_AtIeUY8oEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_AtIeUo8oEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_AtIeU48oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_AtIeVI8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_AtIeVY8oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_AtIeVo8oEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_AtIeV48oEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_AtIeWI8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_AtIeWY8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_AtIeWo8oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_AtIeW48oEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_XxquwIVVEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_AtIeX48oEeq5HrfdV5ATIg" x="320" y="620"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_AtIeaI8oEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_AtIeaY8oEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_AtIeao8oEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_AtIea48oEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_cdy_UIVYEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_AtIebI8oEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_AtIebY8oEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_dhzaAIVYEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_AtIebo8oEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_AtIeb48oEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_fG5IgIVYEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_AtIecI8oEeq5HrfdV5ATIg"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_AtIecY8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_AtIeco8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_AtIec48oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_AtIedI8oEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_AtIedY8oEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_AtIedo8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_AtIed48oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_AtIeeI8oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_AtIeeY8oEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_Y3zwEIVYEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_AtIefY8oEeq5HrfdV5ATIg" x="700" y="360"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_AtJFYI8oEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_AtJFYY8oEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_AtJFYo8oEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_AtJFY48oEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_Ayj5QIVWEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_AtJFZI8oEeq5HrfdV5ATIg"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_AtJFZY8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_AtJFZo8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_AtJFZ48oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_AtJFaI8oEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_AtJFaY8oEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_AtJFao8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_AtJFa48oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_AtJFbI8oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_AtJFbY8oEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_6bJEMIVVEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_AtJFcY8oEeq5HrfdV5ATIg" x="280" y="820" width="161" height="101"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_AtJseo8oEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_AtJse48oEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_AtJsfI8oEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_AtJsfY8oEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_CkDW8IVUEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_AtJsfo8oEeq5HrfdV5ATIg"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_AtJsf48oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_AtJsgI8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_AtJsgY8oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_AtJsgo8oEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_AtJsg48oEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_AtJshI8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_AtJshY8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_AtJsho8oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_AtJsh48oEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_qYSzAIVSEeqvavUi0dxRAw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_AtJsi48oEeq5HrfdV5ATIg" x="320" y="200"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_AtKTgI8oEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_AtKTgY8oEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_AtKTgo8oEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_AtKTg48oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_AtKThI8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_AtKThY8oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_AtKTho8oEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_AtKTh48oEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_AtKTiI8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_AtKTiY8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_AtKTio8oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_AtKTi48oEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_uVbhgIVTEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_AtKTj48oEeq5HrfdV5ATIg" x="1100" y="540"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_AtKTl48oEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_AtKTmI8oEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_AtKTmY8oEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_AtKTmo8oEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_KnpSkIVXEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_AtKTm48oEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_xB1gQKZ3EeqIr7xwFiWQGQ" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_xBPDUKZ3EeqIr7xwFiWQGQ"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_xB1gQaZ3EeqIr7xwFiWQGQ"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_AtKTnI8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_AtKTnY8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_AtKTno8oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_AtKTn48oEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_AtKToI8oEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_AtKToY8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_AtKToo8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_AtKTo48oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_AtKTpI8oEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_Cfb1UIVXEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_AtKTqI8oEeq5HrfdV5ATIg" y="640"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_AtKTqY8oEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_AtKTqo8oEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_AtKTq48oEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_AtK6kI8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_AtK6kY8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_AtK6ko8oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_AtK6k48oEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_AtK6lI8oEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_AtK6lY8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_AtK6lo8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_AtK6l48oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_AtK6mI8oEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_2J_tMIVXEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_AtK6nI8oEeq5HrfdV5ATIg" x="80" y="980"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_AtK6nY8oEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_AtK6no8oEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_AtK6n48oEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_AtK6oI8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_AtK6oY8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_AtK6oo8oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_AtK6o48oEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_AtK6pI8oEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_AtK6pY8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_AtK6po8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_AtK6p48oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_AtK6qI8oEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_aIzlQIVVEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_AtK6rI8oEeq5HrfdV5ATIg" x="440" y="620"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_AtK6rY8oEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_AtK6ro8oEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_AtK6r48oEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_AtK6sI8oEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_3JChoIVSEeqvavUi0dxRAw"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_AtK6sY8oEeq5HrfdV5ATIg"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_AtK6so8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_AtK6s48oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_AtK6tI8oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_AtK6tY8oEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_AtK6to8oEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_AtK6t48oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_AtK6uI8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_AtK6uY8oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_AtK6uo8oEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_x9fp0IVSEeqvavUi0dxRAw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_AtK6vo8oEeq5HrfdV5ATIg" x="1500" y="340"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_AtLhoI8oEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_AtLhoY8oEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_AtLhoo8oEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_AtLho48oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_AtLhpI8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_AtLhpY8oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_AtLhpo8oEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_AtLhp48oEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_AtLhqI8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_AtLhqY8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_AtLhqo8oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_AtLhq48oEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_Y8sCUIVTEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_AtLhr48oEeq5HrfdV5ATIg" x="1420" y="540"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_AtMIwI8oEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_AtMIwY8oEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_AtMIwo8oEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_AtMIw48oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_AtMIxI8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_AtMIxY8oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_AtMIxo8oEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_AtMIx48oEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_AtMIyI8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_AtMIyY8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_AtMIyo8oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_AtMIy48oEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_SVcMEIVUEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_AtMIz48oEeq5HrfdV5ATIg" x="-400" y="640"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_AtMI0I8oEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_AtMI0Y8oEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_AtMI0o8oEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_AtMI048oEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_K3ga4IVUEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_AtMI1I8oEeq5HrfdV5ATIg"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_AtMvwI8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_AtMvwY8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_AtMvwo8oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_AtMvw48oEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_AtMvxI8oEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_AtMvxY8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_AtMvxo8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_AtMvx48oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_AtMvyI8oEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_H6da8IVUEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_AtMvzI8oEeq5HrfdV5ATIg" x="20" y="320"/>
+ </children>
+ <styles xmi:type="notation:StringValueStyle" xmi:id="_ZJoe4Y8nEeq5HrfdV5ATIg" name="diagram_compatibility_version" stringValue="1.4.0"/>
+ <styles xmi:type="notation:DiagramStyle" xmi:id="_ZJoe4o8nEeq5HrfdV5ATIg"/>
+ <styles xmi:type="style:PapyrusDiagramStyle" xmi:id="_ZJoe448nEeq5HrfdV5ATIg" diagramKindId="org.eclipse.papyrus.uml.diagram.profile">
+ <owner xmi:type="uml:Profile" href="AIML.profile.uml#_IDYhIH13EeqSHNFOHg2_Jw"/>
+ </styles>
+ <styles xmi:type="notation:EObjectListValueStyle" xmi:id="_6vmLQK8YEeqhVOlV64dXmA" name="css_stylesheets" eObjectListValue="_mci3oJm1Eeq8nv7tV9lOqQ"/>
+ <element xmi:type="uml:Profile" href="AIML.profile.uml#_IDYhIH13EeqSHNFOHg2_Jw"/>
+ <edges xmi:type="notation:Connector" xmi:id="_As7C8I8oEeq5HrfdV5ATIg" type="Generalization_Edge" source="_AtCXsI8oEeq5HrfdV5ATIg" target="_As8REI8oEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_As7C8Y8oEeq5HrfdV5ATIg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_OGCZII8oEeq5HrfdV5ATIg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_As7C8o8oEeq5HrfdV5ATIg" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_As7C848oEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_6B2IgIVXEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_As7C9I8oEeq5HrfdV5ATIg" points="[10, 970, -643984, -643984]$[10, 929, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_As7C9Y8oEeq5HrfdV5ATIg" id="(0.6,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_As7C9o8oEeq5HrfdV5ATIg" id="(0.5687203791469194,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_As-GQY8oEeq5HrfdV5ATIg" type="Generalization_Edge" source="_AtEz848oEeq5HrfdV5ATIg" target="_AtGCII8oEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_As-GQo8oEeq5HrfdV5ATIg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_As-GQ48oEeq5HrfdV5ATIg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_As-GRI8oEeq5HrfdV5ATIg" y="59"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_As-GRY8oEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_7a4U0IVTEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_As-GRo8oEeq5HrfdV5ATIg" points="[1290, 530, -643984, -643984]$[1210, 293, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_As-GR48oEeq5HrfdV5ATIg" id="(0.5084745762711864,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_As-GSI8oEeq5HrfdV5ATIg" id="(0.8121827411167513,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_As-tUY8oEeq5HrfdV5ATIg" type="Generalization_Edge" source="_AtEM948oEeq5HrfdV5ATIg" target="_AtJFYI8oEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_As-tUo8oEeq5HrfdV5ATIg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_As-tU48oEeq5HrfdV5ATIg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_As-tVI8oEeq5HrfdV5ATIg" x="1" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_As-tVY8oEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_geEBsIVWEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_As-tVo8oEeq5HrfdV5ATIg" points="[190, 970, -643984, -643984]$[250, 911, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_As-tV48oEeq5HrfdV5ATIg" id="(0.6,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_As-tWI8oEeq5HrfdV5ATIg" id="(0.37267080745341613,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_As_7cI8oEeq5HrfdV5ATIg" type="Generalization_Edge" source="_AtBwqI8oEeq5HrfdV5ATIg" target="_AtMI0I8oEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_AtAigI8oEeq5HrfdV5ATIg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_AtAigY8oEeq5HrfdV5ATIg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_AtAigo8oEeq5HrfdV5ATIg" x="-1" y="59"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_AtAig48oEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_Ud9iUIVVEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_AtAihI8oEeq5HrfdV5ATIg" points="[-170, 450, -643984, -643984]$[30, 413, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_AtAihY8oEeq5HrfdV5ATIg" id="(0.7734806629834254,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_AtAiho8oEeq5HrfdV5ATIg" id="(0.4819277108433735,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_AtBJkI8oEeq5HrfdV5ATIg" type="Generalization_Edge" source="_AtGCII8oEeq5HrfdV5ATIg" target="_AtGpII8oEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_AtBJkY8oEeq5HrfdV5ATIg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_AtBJko8oEeq5HrfdV5ATIg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_AtBJk48oEeq5HrfdV5ATIg" x="-633" y="148"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_AtBJlI8oEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_CV1X8IVYEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_AtBJlY8oEeq5HrfdV5ATIg" points="[830, 170, -643984, -643984]$[550, 130, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_AtBJlo8oEeq5HrfdV5ATIg" id="(0.5076142131979695,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_AtBJl48oEeq5HrfdV5ATIg" id="(0.8,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_AtBJmY8oEeq5HrfdV5ATIg" type="Generalization_Edge" source="_AtLhoI8oEeq5HrfdV5ATIg" target="_AtK6rY8oEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_AtBJmo8oEeq5HrfdV5ATIg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_AtBJm48oEeq5HrfdV5ATIg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_AtBJnI8oEeq5HrfdV5ATIg" x="1" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_AtBJnY8oEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_g8dVQIVTEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_AtBJno8oEeq5HrfdV5ATIg" points="[1450, 530, -643984, -643984]$[1530, 433, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_AtBJn48oEeq5HrfdV5ATIg" id="(0.46153846153846156,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_AtBJoI8oEeq5HrfdV5ATIg" id="(0.1895734597156398,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_AtBwoI8oEeq5HrfdV5ATIg" type="Generalization_Edge" source="_AtDl0I8oEeq5HrfdV5ATIg" target="_AtMI0I8oEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_AtBwoY8oEeq5HrfdV5ATIg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_AtBwoo8oEeq5HrfdV5ATIg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_AtBwo48oEeq5HrfdV5ATIg" x="-155" y="96"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_AtBwpI8oEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_TaQCkIVVEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_AtBwpY8oEeq5HrfdV5ATIg" points="[390, 470, -643984, -643984]$[70, 413, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_AtBwpo8oEeq5HrfdV5ATIg" id="(0.4419889502762431,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_AtBwp48oEeq5HrfdV5ATIg" id="(0.7228915662650602,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_AtC-wI8oEeq5HrfdV5ATIg" type="Generalization_Edge" source="_AtIeaI8oEeq5HrfdV5ATIg" target="_AtJseo8oEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_AtC-wY8oEeq5HrfdV5ATIg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_AtC-wo8oEeq5HrfdV5ATIg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_AtC-w48oEeq5HrfdV5ATIg" x="1" y="59"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_AtC-xI8oEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_hzfRoIVYEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_AtC-xY8oEeq5HrfdV5ATIg" points="[770, 450, -643984, -643984]$[470, 293, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_AtC-xo8oEeq5HrfdV5ATIg" id="(0.2843601895734597,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_AtC-x48oEeq5HrfdV5ATIg" id="(0.8290155440414507,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_AtC-yI8oEeq5HrfdV5ATIg" type="Generalization_Edge" source="_AtKTqY8oEeq5HrfdV5ATIg" target="_As8REI8oEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_AtC-yY8oEeq5HrfdV5ATIg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_OGXwUI8oEeq5HrfdV5ATIg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_AtC-yo8oEeq5HrfdV5ATIg" x="-1" y="58"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_AtC-y48oEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_6loyEIVXEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_AtC-zI8oEeq5HrfdV5ATIg" points="[130, 970, -643984, -643984]$[70, 929, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_AtC-zY8oEeq5HrfdV5ATIg" id="(0.6,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_AtC-zo8oEeq5HrfdV5ATIg" id="(0.8530805687203792,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_AtEM4I8oEeq5HrfdV5ATIg" type="Generalization_Edge" source="_AtMIwI8oEeq5HrfdV5ATIg" target="_AtBwqI8oEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_AtEM4Y8oEeq5HrfdV5ATIg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_OHWAsI8oEeq5HrfdV5ATIg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_AtEM4o8oEeq5HrfdV5ATIg" y="59"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_AtEM448oEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_3UmmgIVUEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_AtEM5I8oEeq5HrfdV5ATIg" points="[-360, 1360, -643984, -643984]$[-280, 1283, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_AtEM5Y8oEeq5HrfdV5ATIg" id="(0.4,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_AtEM5o8oEeq5HrfdV5ATIg" id="(0.22099447513812154,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_AtEM6I8oEeq5HrfdV5ATIg" type="Generalization_Edge" source="_AtH3UI8oEeq5HrfdV5ATIg" target="_As8REI8oEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_AtEM6Y8oEeq5HrfdV5ATIg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_OFHMEI8oEeq5HrfdV5ATIg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_AtEM6o8oEeq5HrfdV5ATIg" x="1" y="58"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_AtEM648oEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_5a1L0IVXEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_AtEM7I8oEeq5HrfdV5ATIg" points="[-130, 970, -643984, -643984]$[-70, 929, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_AtEM7Y8oEeq5HrfdV5ATIg" id="(0.4,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_AtEM7o8oEeq5HrfdV5ATIg" id="(0.1895734597156398,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_AtEM748oEeq5HrfdV5ATIg" type="Generalization_Edge" source="_As_UYI8oEeq5HrfdV5ATIg" target="_AtGCII8oEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_AtEM8I8oEeq5HrfdV5ATIg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_AtEM8Y8oEeq5HrfdV5ATIg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_AtEM8o8oEeq5HrfdV5ATIg" y="59"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_AtEM848oEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_9Q2_AIVTEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_AtEM9I8oEeq5HrfdV5ATIg" points="[1010, 530, -643984, -643984]$[1090, 293, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_AtEM9Y8oEeq5HrfdV5ATIg" id="(0.5084745762711864,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_AtEM9o8oEeq5HrfdV5ATIg" id="(0.20304568527918782,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_AtFbAI8oEeq5HrfdV5ATIg" type="Generalization_Edge" source="_AtHQMI8oEeq5HrfdV5ATIg" target="_AtK6rY8oEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_AtFbAY8oEeq5HrfdV5ATIg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_AtFbAo8oEeq5HrfdV5ATIg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_AtFbA48oEeq5HrfdV5ATIg" x="-1" y="58"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_AtFbBI8oEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_iK5eUIVTEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_AtFbBY8oEeq5HrfdV5ATIg" points="[1770, 530, -643984, -643984]$[1670, 433, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_AtFbBo8oEeq5HrfdV5ATIg" id="(0.46153846153846156,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_AtFbB48oEeq5HrfdV5ATIg" id="(0.8530805687203792,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_AtFbCI8oEeq5HrfdV5ATIg" type="Generalization_Edge" source="_As8REI8oEeq5HrfdV5ATIg" target="_AtKTl48oEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_AtFbCY8oEeq5HrfdV5ATIg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_AtFbCo8oEeq5HrfdV5ATIg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_AtFbC48oEeq5HrfdV5ATIg" y="59"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_AtFbDI8oEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_zKvGwIVXEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_AtFbDY8oEeq5HrfdV5ATIg" points="[-30, 810, -643984, -643984]$[70, 733, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_AtFbDo8oEeq5HrfdV5ATIg" id="(0.6635071090047393,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_AtFbD48oEeq5HrfdV5ATIg" id="(0.418848167539267,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_AtFbEI8oEeq5HrfdV5ATIg" type="Generalization_Edge" source="_AtE0A48oEeq5HrfdV5ATIg" target="_AtBwqI8oEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_AtFbEY8oEeq5HrfdV5ATIg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_OFpXkI8oEeq5HrfdV5ATIg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_AtFbEo8oEeq5HrfdV5ATIg" y="59"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_AtFbE48oEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_2i3nkIVUEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_AtFbFI8oEeq5HrfdV5ATIg" points="[-250, 630, -643984, -643984]$[-230, 553, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_AtFbFY8oEeq5HrfdV5ATIg" id="(0.6,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_AtFbFo8oEeq5HrfdV5ATIg" id="(0.4419889502762431,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_AtGCEI8oEeq5HrfdV5ATIg" type="Generalization_Edge" source="_AtK6rY8oEeq5HrfdV5ATIg" target="_AtGCII8oEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_AtGCEY8oEeq5HrfdV5ATIg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_AtGCEo8oEeq5HrfdV5ATIg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_AtGCE48oEeq5HrfdV5ATIg" x="1" y="58"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_AtGCFI8oEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_i7emsIVTEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_AtGCFY8oEeq5HrfdV5ATIg" points="[1590, 330, -643984, -643984]$[1230, 293, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_AtGCFo8oEeq5HrfdV5ATIg" id="(0.47393364928909953,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_AtGCF48oEeq5HrfdV5ATIg" id="(0.9137055837563451,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_AtGCGI8oEeq5HrfdV5ATIg" type="Generalization_Edge" source="_AtK6nY8oEeq5HrfdV5ATIg" target="_AtDl0I8oEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_AtGCGY8oEeq5HrfdV5ATIg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_AtGCGo8oEeq5HrfdV5ATIg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_AtGCG48oEeq5HrfdV5ATIg" x="120" y="131"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_AtGCHI8oEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_dg9M0IVVEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_AtGCHY8oEeq5HrfdV5ATIg" points="[450, 610, -643984, -643984]$[450, 551, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_AtGCHo8oEeq5HrfdV5ATIg" id="(0.6,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_AtGCH48oEeq5HrfdV5ATIg" id="(0.4419889502762431,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_AtHQUY8oEeq5HrfdV5ATIg" type="Generalization_Edge" source="_AtJFYI8oEeq5HrfdV5ATIg" target="_AtKTl48oEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_AtHQUo8oEeq5HrfdV5ATIg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_AtHQU48oEeq5HrfdV5ATIg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_AtHQVI8oEeq5HrfdV5ATIg" y="59"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_AtHQVY8oEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_eWQLMIVXEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_AtHQVo8oEeq5HrfdV5ATIg" points="[10, 810, -643984, -643984]$[90, 733, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_AtHQV48oEeq5HrfdV5ATIg" id="(0.4968944099378882,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_AtHQWI8oEeq5HrfdV5ATIg" id="(0.837696335078534,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_AtIeYI8oEeq5HrfdV5ATIg" type="Generalization_Edge" source="_AtH3QI8oEeq5HrfdV5ATIg" target="_AtK6rY8oEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_AtIeYY8oEeq5HrfdV5ATIg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_AtIeYo8oEeq5HrfdV5ATIg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_AtIeY48oEeq5HrfdV5ATIg" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_AtIeZI8oEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_hguf8IVTEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_AtIeZY8oEeq5HrfdV5ATIg" points="[1610, 530, -643984, -643984]$[1610, 433, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_AtIeZo8oEeq5HrfdV5ATIg" id="(0.46153846153846156,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_AtIeZ48oEeq5HrfdV5ATIg" id="(0.5687203791469194,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_AtJFc48oEeq5HrfdV5ATIg" type="Generalization_Edge" source="_AtMI0I8oEeq5HrfdV5ATIg" target="_AtJseo8oEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_AtJFdI8oEeq5HrfdV5ATIg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_AtJFdY8oEeq5HrfdV5ATIg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_AtJFdo8oEeq5HrfdV5ATIg" y="59"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_AtJFd48oEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_2P_c8IVWEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_AtJFeI8oEeq5HrfdV5ATIg" points="[50, 310, -643984, -643984]$[130, 273, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_AtJFeY8oEeq5HrfdV5ATIg" id="(0.6024096385542169,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_AtJFeo8oEeq5HrfdV5ATIg" id="(0.41450777202072536,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_AtJFe48oEeq5HrfdV5ATIg" type="Generalization_Edge" source="_AtKTgI8oEeq5HrfdV5ATIg" target="_AtGCII8oEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_AtJFfI8oEeq5HrfdV5ATIg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_AtJFfY8oEeq5HrfdV5ATIg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_AtJFfo8oEeq5HrfdV5ATIg" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_AtJFf48oEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_8DbikIVTEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_AtJFgI8oEeq5HrfdV5ATIg" points="[1150, 530, -643984, -643984]$[1150, 293, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_AtJFgY8oEeq5HrfdV5ATIg" id="(0.5084745762711864,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_AtJFgo8oEeq5HrfdV5ATIg" id="(0.5076142131979695,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_AtJsco8oEeq5HrfdV5ATIg" type="Generalization_Edge" source="_AtIeUI8oEeq5HrfdV5ATIg" target="_AtDl0I8oEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_AtJsc48oEeq5HrfdV5ATIg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_AtJsdI8oEeq5HrfdV5ATIg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_AtJsdY8oEeq5HrfdV5ATIg" x="128" y="114"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_AtJsdo8oEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_dGXikIVVEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_AtJsd48oEeq5HrfdV5ATIg" points="[350, 610, -643984, -643984]$[350, 551, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_AtJseI8oEeq5HrfdV5ATIg" id="(0.8,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_AtJseY8oEeq5HrfdV5ATIg" id="(0.11049723756906077,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_AtKTkI8oEeq5HrfdV5ATIg" type="Generalization_Edge" source="_As9fPI8oEeq5HrfdV5ATIg" target="_AtBwqI8oEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_AtKTkY8oEeq5HrfdV5ATIg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_OG6i4I8oEeq5HrfdV5ATIg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_AtKTko8oEeq5HrfdV5ATIg" x="-1" y="58"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_AtKTk48oEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_2DdHsIVUEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_AtKTlI8oEeq5HrfdV5ATIg" points="[-110, 630, -643984, -643984]$[-170, 553, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_AtKTlY8oEeq5HrfdV5ATIg" id="(0.6,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_AtKTlo8oEeq5HrfdV5ATIg" id="(0.7734806629834254,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_AtLhsI8oEeq5HrfdV5ATIg" type="Generalization_Edge" source="_AtAih48oEeq5HrfdV5ATIg" target="_As84II8oEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_AtLhsY8oEeq5HrfdV5ATIg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_AtLhso8oEeq5HrfdV5ATIg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_AtLhs48oEeq5HrfdV5ATIg" x="67" y="98"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_AtLhtI8oEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_e4Tk0IVWEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_AtLhtY8oEeq5HrfdV5ATIg" points="[390, 1110, -643984, -643984]$[410, 1073, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_AtLhto8oEeq5HrfdV5ATIg" id="(0.6,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_AtLht48oEeq5HrfdV5ATIg" id="(0.36363636363636365,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_AtLhuI8oEeq5HrfdV5ATIg" type="Generalization_Edge" source="_AtKTl48oEeq5HrfdV5ATIg" target="_AtBwqI8oEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_AtLhuY8oEeq5HrfdV5ATIg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_OEwmwI8oEeq5HrfdV5ATIg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_AtLhuo8oEeq5HrfdV5ATIg" x="-1" y="59"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_AtLhu48oEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_V3zYMIVXEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_AtLhvI8oEeq5HrfdV5ATIg" points="[50, 630, -643984, -643984]$[-129, 510, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_AtLhvY8oEeq5HrfdV5ATIg" id="(0.31413612565445026,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_AtLhvo8oEeq5HrfdV5ATIg" id="(1.0,0.5825242718446602)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_AtMIsI8oEeq5HrfdV5ATIg" type="Generalization_Edge" source="_As84II8oEeq5HrfdV5ATIg" target="_AtJFYI8oEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_AtMIsY8oEeq5HrfdV5ATIg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_AtMIso8oEeq5HrfdV5ATIg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_AtMIs48oEeq5HrfdV5ATIg" y="59"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_AtMItI8oEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_f8tBEIVWEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_AtMItY8oEeq5HrfdV5ATIg" points="[410, 970, -643984, -643984]$[310, 911, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_AtMIto8oEeq5HrfdV5ATIg" id="(0.36363636363636365,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_AtMIt48oEeq5HrfdV5ATIg" id="(0.7453416149068323,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_AtMIuI8oEeq5HrfdV5ATIg" type="Generalization_Edge" source="_AtJseo8oEeq5HrfdV5ATIg" target="_AtGpII8oEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_AtMIuY8oEeq5HrfdV5ATIg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_AtMIuo8oEeq5HrfdV5ATIg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_AtMIu48oEeq5HrfdV5ATIg" y="59"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_AtMIvI8oEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_DTFDUIVYEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_AtMIvY8oEeq5HrfdV5ATIg" points="[170, 170, -643984, -643984]$[510, 130, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_AtMIvo8oEeq5HrfdV5ATIg" id="(0.6217616580310881,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_AtMIv48oEeq5HrfdV5ATIg" id="(0.4,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_AtMvzY8oEeq5HrfdV5ATIg" type="Generalization_Edge" source="_AtHQQY8oEeq5HrfdV5ATIg" target="_As84II8oEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_AtMvzo8oEeq5HrfdV5ATIg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_AtMvz48oEeq5HrfdV5ATIg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_AtMv0I8oEeq5HrfdV5ATIg" x="8" y="135"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_AtMv0Y8oEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_fQk64IVWEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_AtMv0o8oEeq5HrfdV5ATIg" points="[550, 1110, -643984, -643984]$[510, 1073, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_AtMv048oEeq5HrfdV5ATIg" id="(0.6,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_AtMv1I8oEeq5HrfdV5ATIg" id="(0.8181818181818182,1.0)"/>
+ </edges>
+ </notation:Diagram>
+ <notation:Diagram xmi:id="_dNXaEI8nEeq5HrfdV5ATIg" type="PapyrusUMLProfileDiagram" name="Padding_layers" measurementUnit="Pixel">
+ <children xmi:type="notation:Shape" xmi:id="_GBLx6Y8oEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_GBLx6o8oEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_GBLx648oEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_GBLx7I8oEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_UZswkIVZEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_GBLx7Y8oEeq5HrfdV5ATIg"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_GBLx7o8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_GBLx748oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_GBLx8I8oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_GBLx8Y8oEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_GBLx8o8oEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_GBLx848oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_GBLx9I8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_GBLx9Y8oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_GBLx9o8oEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_w6iwUIVYEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_GBLx-o8oEeq5HrfdV5ATIg" x="620" y="80"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_GBLyA48oEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_GBLyBI8oEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_GBLyBY8oEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_GBLyBo8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_GBLyB48oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_GBLyCI8oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_GBLyCY8oEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_GBLyCo8oEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_GBLyC48oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_GBLyDI8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_GBLyDY8oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_GBLyDo8oEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_mNvZ8IVZEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_GBLyEo8oEeq5HrfdV5ATIg" x="960" y="300"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_GBLyFI8oEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_GBLyFY8oEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_GBLyFo8oEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_GBLyF48oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_GBLyGI8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_GBLyGY8oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_GBLyGo8oEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_GBLyG48oEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_GBLyHI8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_GBLyHY8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_GBLyHo8oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_GBLyH48oEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_aphv4IVZEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_GBLyI48oEeq5HrfdV5ATIg" x="260" y="300"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_GBMY8Y8oEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_GBMY8o8oEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_GBMY848oEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_GBMY9I8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_GBMY9Y8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_GBMY9o8oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_GBMY948oEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_GBMY-I8oEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_GBMY-Y8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_GBMY-o8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_GBMY-48oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_GBMY_I8oEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_sNFGMIVZEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_GBMZAI8oEeq5HrfdV5ATIg" x="1220" y="300"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_GBMZAY8oEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_GBMZAo8oEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_GBMZA48oEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_GBMZBI8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_GBMZBY8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_GBMZBo8oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_GBMZB48oEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_GBMZCI8oEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_GBMZCY8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_GBMZCo8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_GBMZC48oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_GBMZDI8oEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_gxtPEIVZEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_GBMZEI8oEeq5HrfdV5ATIg" x="680" y="300"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_GBMZEY8oEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_GBMZEo8oEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_GBMZE48oEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_GBMZFI8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_GBMZFY8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_GBMZFo8oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_GBMZF48oEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_GBMZGI8oEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_GBMZGY8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_GBMZGo8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_GBMZG48oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_GBMZHI8oEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_okP-UIVZEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_GBMZII8oEeq5HrfdV5ATIg" x="1080" y="300"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_GBMZIY8oEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_GBMZIo8oEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_GBMZI48oEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_GBMZJI8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_GBMZJY8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_GBMZJo8oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_GBMZJ48oEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_GBMZKI8oEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_GBMZKY8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_GBMZKo8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_GBMZK48oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_GBMZLI8oEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_kjrr4IVZEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_GBMZMI8oEeq5HrfdV5ATIg" x="820" y="300"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_GBMZMY8oEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_GBMZMo8oEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_GBMZM48oEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_GBMZNI8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_GBMZNY8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_GBMZNo8oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_GBMZN48oEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_GBMZOI8oEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_GBMZOY8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_GBMZOo8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_GBMZO48oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_GBMZPI8oEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_YlZU8IVZEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_GBMZQI8oEeq5HrfdV5ATIg" x="120" y="300"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_GBMZSY8oEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_GBMZSo8oEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_GBMZS48oEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_GBMZTI8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_GBMZTY8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_GBMZTo8oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_GBMZT48oEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_GBMZUI8oEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_GBMZUY8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_GBMZUo8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_GBMZU48oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_GBMZVI8oEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_cIwG8IVZEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_GBMZWI8oEeq5HrfdV5ATIg" x="400" y="300"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_GBNAAI8oEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_GBNAAY8oEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_GBNAAo8oEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_GBNAA48oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_GBNABI8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_GBNABY8oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_GBNABo8oEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_GBNAB48oEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_GBNACI8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_GBNACY8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_GBNACo8oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_GBNAC48oEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_fdB7IIVZEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_GBNAD48oEeq5HrfdV5ATIg" x="540" y="300"/>
+ </children>
+ <styles xmi:type="notation:StringValueStyle" xmi:id="_dNXaEY8nEeq5HrfdV5ATIg" name="diagram_compatibility_version" stringValue="1.4.0"/>
+ <styles xmi:type="notation:DiagramStyle" xmi:id="_dNXaEo8nEeq5HrfdV5ATIg"/>
+ <styles xmi:type="style:PapyrusDiagramStyle" xmi:id="_dNXaE48nEeq5HrfdV5ATIg" diagramKindId="org.eclipse.papyrus.uml.diagram.profile">
+ <owner xmi:type="uml:Profile" href="AIML.profile.uml#_IDYhIH13EeqSHNFOHg2_Jw"/>
+ </styles>
+ <styles xmi:type="notation:EObjectListValueStyle" xmi:id="_8IfQ0K8YEeqhVOlV64dXmA" name="css_stylesheets" eObjectListValue="_mci3oJm1Eeq8nv7tV9lOqQ"/>
+ <element xmi:type="uml:Profile" href="AIML.profile.uml#_IDYhIH13EeqSHNFOHg2_Jw"/>
+ <edges xmi:type="notation:Connector" xmi:id="_GBLK0Y8oEeq5HrfdV5ATIg" type="Generalization_Edge" source="_GBMZIY8oEeq5HrfdV5ATIg" target="_GBLx6Y8oEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_GBLK0o8oEeq5HrfdV5ATIg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_GBLK048oEeq5HrfdV5ATIg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_GBLK1I8oEeq5HrfdV5ATIg" x="-1" y="58"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_GBLK1Y8oEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_5Tm3kIVZEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_GBLK1o8oEeq5HrfdV5ATIg" points="[870, 290, -643984, -643984]$[690, 173, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_GBLK148oEeq5HrfdV5ATIg" id="(0.6,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_GBLK2I8oEeq5HrfdV5ATIg" id="(0.54421768707483,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_GBLx4Y8oEeq5HrfdV5ATIg" type="Generalization_Edge" source="_GBMZMY8oEeq5HrfdV5ATIg" target="_GBLx6Y8oEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_GBLx4o8oEeq5HrfdV5ATIg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_GBLx448oEeq5HrfdV5ATIg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_GBLx5I8oEeq5HrfdV5ATIg" y="59"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_GBLx5Y8oEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_zJF2EIVZEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_GBLx5o8oEeq5HrfdV5ATIg" points="[150, 290, -643984, -643984]$[630, 173, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_GBLx548oEeq5HrfdV5ATIg" id="(0.4,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_GBLx6I8oEeq5HrfdV5ATIg" id="(0.1360544217687075,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_GBLx-48oEeq5HrfdV5ATIg" type="Generalization_Edge" source="_GBMZAY8oEeq5HrfdV5ATIg" target="_GBLx6Y8oEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_GBLx_I8oEeq5HrfdV5ATIg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_GBLx_Y8oEeq5HrfdV5ATIg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_GBLx_o8oEeq5HrfdV5ATIg" x="-1" y="58"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_GBLx_48oEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_4uA3MIVZEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_GBLyAI8oEeq5HrfdV5ATIg" points="[730, 290, -643984, -643984]$[650, 173, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_GBLyAY8oEeq5HrfdV5ATIg" id="(0.5714285714285714,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_GBLyAo8oEeq5HrfdV5ATIg" id="(0.272108843537415,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_GBLyJI8oEeq5HrfdV5ATIg" type="Generalization_Edge" source="_GBLyFI8oEeq5HrfdV5ATIg" target="_GBLx6Y8oEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_GBLyJY8oEeq5HrfdV5ATIg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_GBLyJo8oEeq5HrfdV5ATIg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_GBLyJ48oEeq5HrfdV5ATIg" x="-1" y="59"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_GBLyKI8oEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_0IHqIIVZEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_GBLyKY8oEeq5HrfdV5ATIg" points="[310, 290, -643984, -643984]$[630, 173, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_GBLyKo8oEeq5HrfdV5ATIg" id="(0.6,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_GBLyK48oEeq5HrfdV5ATIg" id="(0.1360544217687075,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_GBMZQY8oEeq5HrfdV5ATIg" type="Generalization_Edge" source="_GBLyA48oEeq5HrfdV5ATIg" target="_GBLx6Y8oEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_GBMZQo8oEeq5HrfdV5ATIg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_GBMZQ48oEeq5HrfdV5ATIg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_GBMZRI8oEeq5HrfdV5ATIg" x="-1" y="58"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_GBMZRY8oEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_6g_QsIVZEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_GBMZRo8oEeq5HrfdV5ATIg" points="[1010, 290, -643984, -643984]$[730, 173, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_GBMZR48oEeq5HrfdV5ATIg" id="(0.6,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_GBMZSI8oEeq5HrfdV5ATIg" id="(0.8163265306122449,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_GBNAEI8oEeq5HrfdV5ATIg" type="Generalization_Edge" source="_GBMY8Y8oEeq5HrfdV5ATIg" target="_GBLx6Y8oEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_GBNAEY8oEeq5HrfdV5ATIg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_GBNAEo8oEeq5HrfdV5ATIg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_GBNAE48oEeq5HrfdV5ATIg" x="1" y="58"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_GBNAFI8oEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_7vcA0IVZEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_GBNAFY8oEeq5HrfdV5ATIg" points="[1270, 290, -643984, -643984]$[730, 173, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_GBNAFo8oEeq5HrfdV5ATIg" id="(0.6,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_GBNAF48oEeq5HrfdV5ATIg" id="(0.8163265306122449,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_GBNAGI8oEeq5HrfdV5ATIg" type="Generalization_Edge" source="_GBNAAI8oEeq5HrfdV5ATIg" target="_GBLx6Y8oEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_GBNAGY8oEeq5HrfdV5ATIg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_GBNAGo8oEeq5HrfdV5ATIg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_GBNAG48oEeq5HrfdV5ATIg" y="59"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_GBNAHI8oEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_3Rpm4IVZEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_GBNAHY8oEeq5HrfdV5ATIg" points="[590, 290, -643984, -643984]$[650, 173, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_GBNAHo8oEeq5HrfdV5ATIg" id="(0.5714285714285714,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_GBNAH48oEeq5HrfdV5ATIg" id="(0.272108843537415,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_GBNAII8oEeq5HrfdV5ATIg" type="Generalization_Edge" source="_GBMZSY8oEeq5HrfdV5ATIg" target="_GBLx6Y8oEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_GBNAIY8oEeq5HrfdV5ATIg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_GBNAIo8oEeq5HrfdV5ATIg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_GBNAI48oEeq5HrfdV5ATIg" y="59"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_GBNAJI8oEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_2srRkIVZEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_GBNAJY8oEeq5HrfdV5ATIg" points="[450, 290, -643984, -643984]$[650, 173, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_GBNAJo8oEeq5HrfdV5ATIg" id="(0.5714285714285714,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_GBNAJ48oEeq5HrfdV5ATIg" id="(0.272108843537415,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_GBNAKI8oEeq5HrfdV5ATIg" type="Generalization_Edge" source="_GBMZEY8oEeq5HrfdV5ATIg" target="_GBLx6Y8oEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_GBNAKY8oEeq5HrfdV5ATIg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_GBNAKo8oEeq5HrfdV5ATIg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_GBNAK48oEeq5HrfdV5ATIg" x="1" y="58"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_GBNALI8oEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_7KBmoIVZEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_GBNALY8oEeq5HrfdV5ATIg" points="[1130, 290, -643984, -643984]$[730, 173, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_GBNALo8oEeq5HrfdV5ATIg" id="(0.6,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_GBNAL48oEeq5HrfdV5ATIg" id="(0.8163265306122449,1.0)"/>
+ </edges>
+ </notation:Diagram>
+ <notation:Diagram xmi:id="_qs6IYI8nEeq5HrfdV5ATIg" type="PapyrusUMLProfileDiagram" name="Non-linear_activations_(weighted sum, nonlinearity)" measurementUnit="Pixel">
+ <children xmi:type="notation:Shape" xmi:id="_dny20I8oEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_dny20Y8oEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_dny20o8oEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_dny2048oEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_vrowYIVcEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_dny21I8oEeq5HrfdV5ATIg"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_dny21Y8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_dny21o8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_dny2148oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_dny22I8oEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_dny22Y8oEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_dny22o8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_dny2248oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_dny23I8oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_dny23Y8oEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_uYqFkIVcEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_dny24Y8oEeq5HrfdV5ATIg" x="980" y="500"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_dny24o8oEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_dny2448oEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_dny25I8oEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_dny25Y8oEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_Ki9qEIVbEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_dny25o8oEeq5HrfdV5ATIg"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_dny2548oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_dny26I8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_dny26Y8oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_dny26o8oEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_dny2648oEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_dny27I8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_dny27Y8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_dny27o8oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_dny2748oEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_Im3JwIVbEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_dny2848oEeq5HrfdV5ATIg" x="700" y="320"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_dnzd6I8oEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_dnzd6Y8oEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_dnzd6o8oEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_dnzd648oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_dnzd7I8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_dnzd7Y8oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_dnzd7o8oEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_dnzd748oEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_dnzd8I8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_dnzd8Y8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_dnzd8o8oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_dnzd848oEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_-FB30IVcEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_dnzd948oEeq5HrfdV5ATIg" x="2080" y="340"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_dnzd-I8oEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_dnzd-Y8oEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_dnzd-o8oEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_dnzd-48oEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_MoLDEIVbEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_dnzd_I8oEeq5HrfdV5ATIg"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_dnzd_Y8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_dnzd_o8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_dnzd_48oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_dnzeAI8oEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_dnzeAY8oEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_dnzeAo8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_dnzeA48oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_dnzeBI8oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_dn0E8I8oEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_FFiYEIVbEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_dn0E9I8oEeq5HrfdV5ATIg" x="20" y="500"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_dn0E_Y8oEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_dn0E_o8oEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_dn0E_48oEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_dn0FAI8oEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_QsGykIVbEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_dn0FAY8oEeq5HrfdV5ATIg"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_dn0FAo8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_dn0FA48oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_dn0FBI8oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_dn0FBY8oEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_dn0FBo8oEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_dn0FB48oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_dn0FCI8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_dn0FCY8oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_dn0FCo8oEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_O0zSsIVbEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_dn0FDo8oEeq5HrfdV5ATIg" x="1660" y="320"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_dn0FFo8oEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_dn0FF48oEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_dn0FGI8oEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_dn0sAI8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_dn0sAY8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_dn0sAo8oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_dn0sA48oEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_dn0sBI8oEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_dn0sBY8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_dn0sBo8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_dn0sB48oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_dn0sCI8oEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_AwFawIVbEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_dn0sDI8oEeq5HrfdV5ATIg" x="1560" y="40"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_dn0sFI8oEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_dn0sFY8oEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_dn0sFo8oEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_dn0sF48oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_dn0sGI8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_dn0sGY8oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_dn0sGo8oEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_dn0sG48oEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_dn0sHI8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_dn0sHY8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_dn0sHo8oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_dn0sH48oEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_Tr5SkIVdEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_dn0sI48oEeq5HrfdV5ATIg" x="1640" y="500"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_dn0sK48oEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_dn0sLI8oEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_dn0sLY8oEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_dn0sLo8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_dn0sL48oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_dn0sMI8oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_dn0sMY8oEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_dn0sMo8oEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_dn0sM48oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_dn0sNI8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_dn0sNY8oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_dn0sNo8oEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_PQkzQIVcEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_dn0sOo8oEeq5HrfdV5ATIg" x="1200" y="500"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_dn1TII8oEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_dn1TIY8oEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_dn1TIo8oEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_dn1TI48oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_dn1TJI8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_dn1TJY8oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_dn1TJo8oEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_dn1TJ48oEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_dn1TKI8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_dn1TKY8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_dn1TKo8oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_dn1TK48oEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_kIQXUIVdEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_dn1TL48oEeq5HrfdV5ATIg" x="3080" y="340"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_dn2hMI8oEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_dn2hMY8oEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_dn2hMo8oEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_dn2hM48oEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_pyKbkIVcEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_dn2hNI8oEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_dn2hNY8oEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_qj-TAIVcEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_dn2hNo8oEeq5HrfdV5ATIg"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_dn2hN48oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_dn2hOI8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_dn2hOY8oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_dn2hOo8oEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_dn2hO48oEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_dn2hPI8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_dn2hPY8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_dn2hPo8oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_dn2hP48oEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_oPGGUIVcEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_dn2hQ48oEeq5HrfdV5ATIg" x="480" y="500"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_dn2hRI8oEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_dn2hRY8oEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_dn2hRo8oEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_dn2hR48oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_dn2hSI8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_dn2hSY8oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_dn2hSo8oEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_dn2hS48oEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_dn2hTI8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_dn2hTY8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_dn2hTo8oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_dn2hT48oEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_Q1o3IIVdEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_dn2hU48oEeq5HrfdV5ATIg" x="1774" y="497"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_dn3IQI8oEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_dn3IQY8oEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_dn3IQo8oEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_dn3IQ48oEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_FZhZIIVdEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_dn3IRI8oEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_dn3IRY8oEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_KHN3UIVdEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_dn3IRo8oEeq5HrfdV5ATIg"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_dn3IR48oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_dn3ISI8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_dn3ISY8oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_dn3ISo8oEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_dn3IS48oEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_dn3ITI8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_dn3ITY8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_dn3ITo8oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_dn3IT48oEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_AXPyEIVdEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_dn3IU48oEeq5HrfdV5ATIg" x="1880" y="340"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_dn3vXo8oEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_dn3vX48oEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_dn3vYI8oEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_dn3vYY8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_dn3vYo8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_dn3vY48oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_dn3vZI8oEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_dn3vZY8oEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_dn3vZo8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_dn3vZ48oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_dn3vaI8oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_dn3vaY8oEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_ef3LcIVdEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_dn3vbY8oEeq5HrfdV5ATIg" x="3220" y="340"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_dn3vbo8oEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_dn3vb48oEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_dn3vcI8oEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_dn3vcY8oEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_H7n-8IVcEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_dn3vco8oEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_dn3vc48oEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_J_NnUIVcEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_dn3vdI8oEeq5HrfdV5ATIg"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_dn3vdY8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_dn3vdo8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_dn3vd48oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_dn3veI8oEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_dn3veY8oEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_dn3veo8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_dn3ve48oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_dn3vfI8oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_dn3vfY8oEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_FyhkcIVcEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_dn3vgY8oEeq5HrfdV5ATIg" x="2680" y="340"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_dn3vg48oEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_dn3vhI8oEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_dn3vhY8oEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_dn3vho8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_dn3vh48oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_dn3viI8oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_dn3viY8oEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_dn3vio8oEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_dn3vi48oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_dn3vjI8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_dn3vjY8oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_dn3vjo8oEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_T9yJQIVcEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_dn3vko8oEeq5HrfdV5ATIg" x="1440" y="500"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_dn4WZ48oEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_dn4WaI8oEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_dn4WaY8oEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_dn4Wao8oEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_6bNcAIVdEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_dn4Wa48oEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_dn4WbI8oEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_7aGGIIVdEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_dn4WbY8oEeq5HrfdV5ATIg"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_dn4Wbo8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_dn4Wb48oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_dn4WcI8oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_dn4WcY8oEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_dn4Wco8oEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_dn4Wc48oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_dn4WdI8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_dn4WdY8oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_dn4Wdo8oEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_4wdxcIVdEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_dn4Weo8oEeq5HrfdV5ATIg" x="720" y="500"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_dn4Wg48oEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_dn4WhI8oEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_dn4WhY8oEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_dn4Who8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_dn4Wh48oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_dn4WiI8oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_dn4WiY8oEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_dn4Wio8oEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_dn4Wi48oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_dn4WjI8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_dn4WjY8oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_dn4Wjo8oEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#__HL4YIVcEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_dn4Wko8oEeq5HrfdV5ATIg" x="2200" y="340"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_dn49d48oEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_dn49eI8oEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_dn49eY8oEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_dn49eo8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_dn49e48oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_dn49fI8oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_dn49fY8oEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_dn49fo8oEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_dn49f48oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_dn49gI8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_dn49gY8oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_dn49go8oEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_Q694gIVcEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_dn49ho8oEeq5HrfdV5ATIg" x="1320" y="500"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_dn49iI8oEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_dn49iY8oEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_dn49io8oEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_dn49i48oEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_oCRnwIVbEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_dn49jI8oEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_dn49jY8oEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_pXDCUIVbEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_dn49jo8oEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_dn49j48oEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_qHZhMIVbEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_dn49kI8oEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_dn49kY8oEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_qxdK0IVbEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_dn49ko8oEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_dn49k48oEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_rp_8YIVbEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_dn49lI8oEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_dn49lY8oEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_uscZsIVbEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_dn49lo8oEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_dn49l48oEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_wd6XUIVbEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_dn49mI8oEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_dn49mY8oEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_w_bI8IVbEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_dn49mo8oEeq5HrfdV5ATIg"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_dn49m48oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_dn49nI8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_dn49nY8oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_dn49no8oEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_dn49n48oEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_dn49oI8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_dn49oY8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_dn49oo8oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_dn49o48oEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_mNXUkIVbEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_dn49p48oEeq5HrfdV5ATIg" x="2439" y="343"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_dn5kiI8oEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_dn5kiY8oEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_dn5kio8oEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_dn5ki48oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_dn5kjI8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_dn5kjY8oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_dn5kjo8oEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_dn5kj48oEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_dn5kkI8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_dn5kkY8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_dn5kko8oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_dn5kk48oEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_hnumMIVbEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_dn5kl48oEeq5HrfdV5ATIg" x="2320" y="340"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_dn5kmI8oEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_dn5kmY8oEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_dn5kmo8oEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_dn5km48oEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_VlPEsIVbEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_dn5knI8oEeq5HrfdV5ATIg"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_dn5knY8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_dn5kno8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_dn5kn48oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_dn5koI8oEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_dn5koY8oEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_dn5koo8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_dn5ko48oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_dn5kpI8oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_dn5kpY8oEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_T1MDYIVbEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_dn5kqY8oEeq5HrfdV5ATIg" x="220" y="500"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_dn5kqo8oEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_dn5kq48oEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_dn5krI8oEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_dn5krY8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_dn5kro8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_dn5kr48oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_dn5ksI8oEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_dn5ksY8oEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_dn5kso8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_dn5ks48oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_dn5ktI8oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_dn5ktY8oEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_dgIz0IVdEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_dn5kuY8oEeq5HrfdV5ATIg" x="2940" y="340"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_ymR5wJa5Eeq1-Ze45jZMTg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_ymWLMJa5Eeq1-Ze45jZMTg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_ymWLMZa5Eeq1-Ze45jZMTg" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_3IDb0Ja5Eeq1-Ze45jZMTg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_3HW4QJa5Eeq1-Ze45jZMTg"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_3IDb0Za5Eeq1-Ze45jZMTg"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_62CJcJa5Eeq1-Ze45jZMTg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_60q3gJa5Eeq1-Ze45jZMTg"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_62CJcZa5Eeq1-Ze45jZMTg"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_ymWLMpa5Eeq1-Ze45jZMTg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_ymWLM5a5Eeq1-Ze45jZMTg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_ymWLNJa5Eeq1-Ze45jZMTg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ymWLNZa5Eeq1-Ze45jZMTg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_ymWLNpa5Eeq1-Ze45jZMTg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_ymWLN5a5Eeq1-Ze45jZMTg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_ymWLOJa5Eeq1-Ze45jZMTg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_ymWLOZa5Eeq1-Ze45jZMTg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ymWLOpa5Eeq1-Ze45jZMTg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_ymNBQJa5Eeq1-Ze45jZMTg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ymR5wZa5Eeq1-Ze45jZMTg" x="-240" y="500"/>
+ </children>
+ <styles xmi:type="notation:StringValueStyle" xmi:id="_qs6IYY8nEeq5HrfdV5ATIg" name="diagram_compatibility_version" stringValue="1.4.0"/>
+ <styles xmi:type="notation:DiagramStyle" xmi:id="_qs6IYo8nEeq5HrfdV5ATIg"/>
+ <styles xmi:type="style:PapyrusDiagramStyle" xmi:id="_qs6IY48nEeq5HrfdV5ATIg" diagramKindId="org.eclipse.papyrus.uml.diagram.profile">
+ <owner xmi:type="uml:Profile" href="AIML.profile.uml#_IDYhIH13EeqSHNFOHg2_Jw"/>
+ </styles>
+ <styles xmi:type="notation:EObjectListValueStyle" xmi:id="_9hsfcK8YEeqhVOlV64dXmA" name="css_stylesheets" eObjectListValue="_mci3oJm1Eeq8nv7tV9lOqQ"/>
+ <element xmi:type="uml:Profile" href="AIML.profile.uml#_IDYhIH13EeqSHNFOHg2_Jw"/>
+ <edges xmi:type="notation:Connector" xmi:id="_dnxosI8oEeq5HrfdV5ATIg" type="Generalization_Edge" source="_dn4WZ48oEeq5HrfdV5ATIg" target="_dny24o8oEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_dnxosY8oEeq5HrfdV5ATIg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_dnyPwI8oEeq5HrfdV5ATIg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_dnyPwY8oEeq5HrfdV5ATIg" x="1" y="58"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_dnyPwo8oEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_8qf-EIVdEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_dnyPw48oEeq5HrfdV5ATIg" points="[810, 490, -643984, -643984]$[870, 413, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_dnyPxI8oEeq5HrfdV5ATIg" id="(0.5347593582887701,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_dnyPxY8oEeq5HrfdV5ATIg" id="(0.5980066445182725,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_dnzd4I8oEeq5HrfdV5ATIg" type="Generalization_Edge" source="_dn4Wg48oEeq5HrfdV5ATIg" target="_dn0FFo8oEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_dnzd4Y8oEeq5HrfdV5ATIg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_lzyA0I8oEeq5HrfdV5ATIg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_dnzd4o8oEeq5HrfdV5ATIg" y="59"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_dnzd448oEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_heXHcIVeEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_dnzd5I8oEeq5HrfdV5ATIg" points="[2230, 330, -643984, -643984]$[1750, 130, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_dnzd5Y8oEeq5HrfdV5ATIg" id="(0.4,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_dnzd5o8oEeq5HrfdV5ATIg" id="(0.6920415224913494,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_dn0E9Y8oEeq5HrfdV5ATIg" type="Generalization_Edge" source="_dn2hRI8oEeq5HrfdV5ATIg" target="_dn0E_Y8oEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_dn0E9o8oEeq5HrfdV5ATIg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_dn0E948oEeq5HrfdV5ATIg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_dn0E-I8oEeq5HrfdV5ATIg" x="-1" y="58"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_dn0E-Y8oEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_WoPu8IVdEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_dn0E-o8oEeq5HrfdV5ATIg" points="[1810, 487, -643984, -643984]$[1750, 413, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_dn0E-48oEeq5HrfdV5ATIg" id="(0.46,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_dn0E_I8oEeq5HrfdV5ATIg" id="(0.5847953216374269,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_dn0FD48oEeq5HrfdV5ATIg" type="Generalization_Edge" source="_dnzd6I8oEeq5HrfdV5ATIg" target="_dn0FFo8oEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_dn0FEI8oEeq5HrfdV5ATIg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_lzGrYI8oEeq5HrfdV5ATIg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_dn0FEY8oEeq5HrfdV5ATIg" x="-1" y="58"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_dn0FEo8oEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_SfSgEIVeEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_dn0FE48oEeq5HrfdV5ATIg" points="[2110, 330, -643984, -643984]$[1650, 130, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_dn0FFI8oEeq5HrfdV5ATIg" id="(0.4,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_dn0FFY8oEeq5HrfdV5ATIg" id="(0.3460207612456747,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_dn0sDY8oEeq5HrfdV5ATIg" type="Generalization_Edge" source="_dn1TII8oEeq5HrfdV5ATIg" target="_dn0FFo8oEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_dn0sDo8oEeq5HrfdV5ATIg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_l1zaEI8oEeq5HrfdV5ATIg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_dn0sD48oEeq5HrfdV5ATIg" x="-1" y="58"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_dn0sEI8oEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_dbS6oIVeEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_dn0sEY8oEeq5HrfdV5ATIg" points="[3110, 330, -643984, -643984]$[1810, 130, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_dn0sEo8oEeq5HrfdV5ATIg" id="(0.4,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_dn0sE48oEeq5HrfdV5ATIg" id="(0.8996539792387543,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_dn0sJI8oEeq5HrfdV5ATIg" type="Generalization_Edge" source="_dn49iI8oEeq5HrfdV5ATIg" target="_dn0FFo8oEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_dn0sJY8oEeq5HrfdV5ATIg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_l0J0QI8oEeq5HrfdV5ATIg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_dn0sJo8oEeq5HrfdV5ATIg" y="59"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_dn0sJ48oEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_gMwVoIVeEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_dn0sKI8oEeq5HrfdV5ATIg" points="[2510, 333, -643984, -643984]$[1790, 130, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_dn0sKY8oEeq5HrfdV5ATIg" id="(0.38571428571428573,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_dn0sKo8oEeq5HrfdV5ATIg" id="(0.8304498269896193,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_dn1TEI8oEeq5HrfdV5ATIg" type="Generalization_Edge" source="_dn0sFI8oEeq5HrfdV5ATIg" target="_dn0E_Y8oEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_dn1TEY8oEeq5HrfdV5ATIg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_dn1TEo8oEeq5HrfdV5ATIg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_dn1TE48oEeq5HrfdV5ATIg" x="1" y="59"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_dn1TFI8oEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_WKteYIVdEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_dn1TFY8oEeq5HrfdV5ATIg" points="[1670, 490, -643984, -643984]$[1710, 413, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_dn1TFo8oEeq5HrfdV5ATIg" id="(0.4,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_dn1TF48oEeq5HrfdV5ATIg" id="(0.3508771929824561,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_dn1TGI8oEeq5HrfdV5ATIg" type="Generalization_Edge" source="_dn0E_Y8oEeq5HrfdV5ATIg" target="_dn0FFo8oEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_dn1TGY8oEeq5HrfdV5ATIg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_l0hAoI8oEeq5HrfdV5ATIg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_dn1TGo8oEeq5HrfdV5ATIg" x="-1" y="58"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_dn1TG48oEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_Kab40IVeEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_dn1THI8oEeq5HrfdV5ATIg" points="[1730, 310, -643984, -643984]$[1590, 130, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_dn1THY8oEeq5HrfdV5ATIg" id="(0.4678362573099415,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_dn1THo8oEeq5HrfdV5ATIg" id="(0.1384083044982699,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_dn1TMI8oEeq5HrfdV5ATIg" type="Generalization_Edge" source="_dn49d48oEeq5HrfdV5ATIg" target="_dny24o8oEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_dn1TMY8oEeq5HrfdV5ATIg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_dn1TMo8oEeq5HrfdV5ATIg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_dn1TM48oEeq5HrfdV5ATIg" x="1" y="58"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_dn1TNI8oEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_XLnXMIVcEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_dn1TNY8oEeq5HrfdV5ATIg" points="[1250, 490, -643984, -643984]$[950, 413, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_dn1TNo8oEeq5HrfdV5ATIg" id="(0.6,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_dn1TN48oEeq5HrfdV5ATIg" id="(0.8637873754152824,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_dn16II8oEeq5HrfdV5ATIg" type="Generalization_Edge" source="_dnzd-I8oEeq5HrfdV5ATIg" target="_dny24o8oEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_dn16IY8oEeq5HrfdV5ATIg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_dn16Io8oEeq5HrfdV5ATIg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_dn16I48oEeq5HrfdV5ATIg" x="1" y="58"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_dn16JI8oEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_ckA0sIVbEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_dn16JY8oEeq5HrfdV5ATIg" points="[170, 490, -643984, -643984]$[230, 413, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_dn16Jo8oEeq5HrfdV5ATIg" id="(0.6024096385542169,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_dn16J48oEeq5HrfdV5ATIg" id="(0.0664451827242525,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_dn16KI8oEeq5HrfdV5ATIg" type="Generalization_Edge" source="_dn5kqo8oEeq5HrfdV5ATIg" target="_dn0FFo8oEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_dn16KY8oEeq5HrfdV5ATIg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_l2mEQI8oEeq5HrfdV5ATIg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_dn16Ko8oEeq5HrfdV5ATIg" x="-1" y="58"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_dn16K48oEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_esL6wIVeEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_dn16LI8oEeq5HrfdV5ATIg" points="[2970, 330, -643984, -643984]$[1810, 130, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_dn16LY8oEeq5HrfdV5ATIg" id="(0.4,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_dn16Lo8oEeq5HrfdV5ATIg" id="(0.8996539792387543,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_dn16L48oEeq5HrfdV5ATIg" type="Generalization_Edge" source="_dny24o8oEeq5HrfdV5ATIg" target="_dn0FFo8oEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_dn16MI8oEeq5HrfdV5ATIg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_dn16MY8oEeq5HrfdV5ATIg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_dn16Mo8oEeq5HrfdV5ATIg" y="59"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_dn16M48oEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_dfBEYIVbEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_dn16NI8oEeq5HrfdV5ATIg" points="[310, 310, -643984, -643984]$[390, 270, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_dn16NY8oEeq5HrfdV5ATIg" id="(0.5980066445182725,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_dn16No8oEeq5HrfdV5ATIg" id="(0.0,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_dn16N48oEeq5HrfdV5ATIg" type="Generalization_Edge" source="_dny20I8oEeq5HrfdV5ATIg" target="_dny24o8oEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_dn16OI8oEeq5HrfdV5ATIg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_dn16OY8oEeq5HrfdV5ATIg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_dn16Oo8oEeq5HrfdV5ATIg" x="-1" y="59"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_dn16O48oEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_ymuBcIVcEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_dn16PI8oEeq5HrfdV5ATIg" points="[1070, 490, -643984, -643984]$[910, 413, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_dn16PY8oEeq5HrfdV5ATIg" id="(0.6024096385542169,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_dn16Po8oEeq5HrfdV5ATIg" id="(0.7308970099667774,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_dn16P48oEeq5HrfdV5ATIg" type="Generalization_Edge" source="_dn5kmI8oEeq5HrfdV5ATIg" target="_dny24o8oEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_dn16QI8oEeq5HrfdV5ATIg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_dn16QY8oEeq5HrfdV5ATIg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_dn16Qo8oEeq5HrfdV5ATIg" x="-1" y="58"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_dn16Q48oEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_dEj9AIVbEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_dn16RI8oEeq5HrfdV5ATIg" points="[410, 490, -643984, -643984]$[370, 413, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_dn16RY8oEeq5HrfdV5ATIg" id="(0.18604651162790697,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_dn16Ro8oEeq5HrfdV5ATIg" id="(0.39867109634551495,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_dn2hVY8oEeq5HrfdV5ATIg" type="Generalization_Edge" source="_dn3vXo8oEeq5HrfdV5ATIg" target="_dn0FFo8oEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_dn2hVo8oEeq5HrfdV5ATIg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_l2MboI8oEeq5HrfdV5ATIg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_dn2hV48oEeq5HrfdV5ATIg" x="-1" y="58"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_dn2hWI8oEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_bY_rsIVeEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_dn2hWY8oEeq5HrfdV5ATIg" points="[3270, 330, -643984, -643984]$[1810, 130, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_dn2hWo8oEeq5HrfdV5ATIg" id="(0.6,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_dn2hW48oEeq5HrfdV5ATIg" id="(0.8996539792387543,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_dn3IVI8oEeq5HrfdV5ATIg" type="Generalization_Edge" source="_dn2hMI8oEeq5HrfdV5ATIg" target="_dny24o8oEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_dn3vUI8oEeq5HrfdV5ATIg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_dn3vUY8oEeq5HrfdV5ATIg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_dn3vUo8oEeq5HrfdV5ATIg" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_dn3vU48oEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_yH-P8IVcEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_dn3vVI8oEeq5HrfdV5ATIg" points="[570, 490, -643984, -643984]$[570, 413, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_dn3vVY8oEeq5HrfdV5ATIg" id="(0.5952380952380952,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_dn3vVo8oEeq5HrfdV5ATIg" id="(0.53156146179402,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_dn3vV48oEeq5HrfdV5ATIg" type="Generalization_Edge" source="_dn3vbo8oEeq5HrfdV5ATIg" target="_dn0FFo8oEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_dn3vWI8oEeq5HrfdV5ATIg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_lzee0I8oEeq5HrfdV5ATIg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_dn3vWY8oEeq5HrfdV5ATIg" x="-1" y="58"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_dn3vWo8oEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_fZNY0IVeEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_dn3vW48oEeq5HrfdV5ATIg" points="[2750, 330, -643984, -643984]$[1810, 130, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_dn3vXI8oEeq5HrfdV5ATIg" id="(0.35398230088495575,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_dn3vXY8oEeq5HrfdV5ATIg" id="(0.8996539792387543,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_dn4WYI8oEeq5HrfdV5ATIg" type="Generalization_Edge" source="_dn3IQI8oEeq5HrfdV5ATIg" target="_dn0FFo8oEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_dn4WYY8oEeq5HrfdV5ATIg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_l1WHEI8oEeq5HrfdV5ATIg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_dn4WYo8oEeq5HrfdV5ATIg" x="-1" y="58"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_dn4WY48oEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_LicCsIVeEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_dn4WZI8oEeq5HrfdV5ATIg" points="[1910, 330, -643984, -643984]$[1630, 130, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_dn4WZY8oEeq5HrfdV5ATIg" id="(0.21390374331550802,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_dn4WZo8oEeq5HrfdV5ATIg" id="(0.2768166089965398,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_dn4We48oEeq5HrfdV5ATIg" type="Generalization_Edge" source="_dn0sK48oEeq5HrfdV5ATIg" target="_dny24o8oEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_dn4WfI8oEeq5HrfdV5ATIg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_dn4WfY8oEeq5HrfdV5ATIg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_dn4Wfo8oEeq5HrfdV5ATIg" x="-1" y="59"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_dn4Wf48oEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_WsaSsIVcEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_dn4WgI8oEeq5HrfdV5ATIg" points="[1110, 490, -643984, -643984]$[950, 413, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_dn4WgY8oEeq5HrfdV5ATIg" id="(0.4,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_dn4Wgo8oEeq5HrfdV5ATIg" id="(0.8637873754152824,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_dn49cI8oEeq5HrfdV5ATIg" type="Generalization_Edge" source="_dn5kiI8oEeq5HrfdV5ATIg" target="_dn0FFo8oEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_dn49cY8oEeq5HrfdV5ATIg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_l06pQI8oEeq5HrfdV5ATIg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_dn49co8oEeq5HrfdV5ATIg" x="-1" y="58"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_dn49c48oEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_g0PMYIVeEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_dn49dI8oEeq5HrfdV5ATIg" points="[2350, 330, -643984, -643984]$[1770, 130, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_dn49dY8oEeq5HrfdV5ATIg" id="(0.4,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_dn49do8oEeq5HrfdV5ATIg" id="(0.7612456747404844,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_dn5kgI8oEeq5HrfdV5ATIg" type="Generalization_Edge" source="_dn3vg48oEeq5HrfdV5ATIg" target="_dny24o8oEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_dn5kgY8oEeq5HrfdV5ATIg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_dn5kgo8oEeq5HrfdV5ATIg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_dn5kg48oEeq5HrfdV5ATIg" x="-37" y="65"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_dn5khI8oEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_X3PuIIVcEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_dn5khY8oEeq5HrfdV5ATIg" points="[1330, 490, -643984, -643984]$[950, 413, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_dn5kho8oEeq5HrfdV5ATIg" id="(0.2,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_dn5kh48oEeq5HrfdV5ATIg" id="(0.8637873754152824,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_CX7NkJa6Eeq1-Ze45jZMTg" type="Generalization_Edge" source="_ymR5wJa5Eeq1-Ze45jZMTg" target="_dny24o8oEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_CX70oJa6Eeq1-Ze45jZMTg" type="Generalization_StereotypeLabel">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_CX70oZa6Eeq1-Ze45jZMTg" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_CX7NkZa6Eeq1-Ze45jZMTg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_CXDD0Ja6Eeq1-Ze45jZMTg"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_CX7Nkpa6Eeq1-Ze45jZMTg" points="[-160, 500, -643984, -643984]$[700, 420, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_CYzXUJa6Eeq1-Ze45jZMTg" id="(0.6106870229007634,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_CYzXUZa6Eeq1-Ze45jZMTg" id="(0.0,0.970873786407767)"/>
+ </edges>
+ </notation:Diagram>
+ <notation:Diagram xmi:id="_yrnO4I8oEeq5HrfdV5ATIg" type="PapyrusUMLProfileDiagram" name="Non-linear_activations_(other)" measurementUnit="Pixel">
+ <children xmi:type="notation:Shape" xmi:id="_1B_QeI8oEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_1B_QeY8oEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_1B_Qeo8oEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_1B_Qe48oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_1B_QfI8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_1B_QfY8oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_1B_Qfo8oEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_1B_Qf48oEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_1B_QgI8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_1B_QgY8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_1B_Qgo8oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_1B_Qg48oEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_lbyw4IVfEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_1B_Qh48oEeq5HrfdV5ATIg" x="-840" y="380"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_1B_QiI8oEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_1B_QiY8oEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_1B_Qio8oEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_1B_Qi48oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_1B_QjI8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_1B_QjY8oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_1B_Qjo8oEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_1B_Qj48oEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_1B_QkI8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_1B_QkY8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_1B_Qko8oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_1B_Qk48oEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_qeP-IIVfEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_1B_Ql48oEeq5HrfdV5ATIg" x="-600" y="380"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_1B_3cI8oEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_1B_3cY8oEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_1B_3co8oEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_1B_3c48oEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_zzHbwIVfEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_1B_3dI8oEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_1B_3dY8oEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_09lDwIVfEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_1B_3do8oEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_1B_3d48oEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_1jP8oIVfEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_1B_3eI8oEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_1B_3eY8oEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_2sVroIVfEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_1B_3eo8oEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_1B_3e48oEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_3ZGrAIVfEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_1B_3fI8oEeq5HrfdV5ATIg"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_1B_3fY8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_1B_3fo8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_1B_3f48oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_1B_3gI8oEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_1B_3gY8oEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_1B_3go8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_1B_3g48oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_1B_3hI8oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_1B_3hY8oEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_vpbpkIVfEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_1B_3iY8oEeq5HrfdV5ATIg" x="-260" y="180"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_1B_3io8oEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_1B_3i48oEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_1B_3jI8oEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_1B_3jY8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_1B_3jo8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_1B_3j48oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_1B_3kI8oEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_1B_3kY8oEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_1B_3ko8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_1B_3k48oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_1B_3lI8oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_1B_3lY8oEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_nBjNwIVfEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_1B_3mY8oEeq5HrfdV5ATIg" x="-720" y="380"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_1B_3oo8oEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_1B_3o48oEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_1B_3pI8oEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_1B_3pY8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_1B_3po8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_1B_3p48oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_1B_3qI8oEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_1B_3qY8oEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_1B_3qo8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_1B_3q48oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_1B_3rI8oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_1B_3rY8oEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_HyCdwIVfEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_1B_3sY8oEeq5HrfdV5ATIg" x="-640"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_1CAeg48oEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_1CAehI8oEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_1CAehY8oEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_1CAeho8oEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_f3_xIIVfEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_1CAeh48oEeq5HrfdV5ATIg"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_1CAeiI8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_1CAeiY8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_1CAeio8oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_1CAei48oEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_1CAejI8oEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_1CAejY8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_1CAejo8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_1CAej48oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_1CAekI8oEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_en-TsIVfEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_1CAelI8oEeq5HrfdV5ATIg" x="-740" y="180"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_1CBFkI8oEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_1CBFkY8oEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_1CBFko8oEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_1CBFk48oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_1CBFlI8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_1CBFlY8oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_1CBFlo8oEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_1CBFl48oEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_1CBFmI8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_1CBFmY8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_1CBFmo8oEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_1CBFm48oEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_n_v7YIVfEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_1CBFn48oEeq5HrfdV5ATIg" x="-420" y="180"/>
+ </children>
+ <styles xmi:type="notation:StringValueStyle" xmi:id="_yrnO4Y8oEeq5HrfdV5ATIg" name="diagram_compatibility_version" stringValue="1.4.0"/>
+ <styles xmi:type="notation:DiagramStyle" xmi:id="_yrnO4o8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="style:PapyrusDiagramStyle" xmi:id="_yrnO448oEeq5HrfdV5ATIg" diagramKindId="org.eclipse.papyrus.uml.diagram.profile">
+ <owner xmi:type="uml:Profile" href="AIML.profile.uml#_IDYhIH13EeqSHNFOHg2_Jw"/>
+ </styles>
+ <styles xmi:type="notation:EObjectListValueStyle" xmi:id="_-mK0MK8YEeqhVOlV64dXmA" name="css_stylesheets" eObjectListValue="_mci3oJm1Eeq8nv7tV9lOqQ"/>
+ <element xmi:type="uml:Profile" href="AIML.profile.uml#_IDYhIH13EeqSHNFOHg2_Jw"/>
+ <edges xmi:type="notation:Connector" xmi:id="_1B_QYI8oEeq5HrfdV5ATIg" type="Generalization_Edge" source="_1B_3cI8oEeq5HrfdV5ATIg" target="_1B_3oo8oEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_1B_QYY8oEeq5HrfdV5ATIg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_1B_QYo8oEeq5HrfdV5ATIg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_1B_QY48oEeq5HrfdV5ATIg" x="-1" y="58"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_1B_QZI8oEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_8okZgIVfEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_1B_QZY8oEeq5HrfdV5ATIg" points="[-170, 170, -643984, -643984]$[-510, 90, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_1B_QZo8oEeq5HrfdV5ATIg" id="(0.5154639175257731,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_1B_QZ48oEeq5HrfdV5ATIg" id="(0.8092485549132948,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_1B_QaI8oEeq5HrfdV5ATIg" type="Generalization_Edge" source="_1B_QeI8oEeq5HrfdV5ATIg" target="_1CAeg48oEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_1B_QaY8oEeq5HrfdV5ATIg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_1B_Qao8oEeq5HrfdV5ATIg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_1B_Qa48oEeq5HrfdV5ATIg" x="24" y="118"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_1B_QbI8oEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#__rKAwIVfEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_1B_QbY8oEeq5HrfdV5ATIg" points="[-790, 370, -643984, -643984]$[-710, 273, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_1B_Qbo8oEeq5HrfdV5ATIg" id="(0.6,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_1B_Qb48oEeq5HrfdV5ATIg" id="(0.21621621621621623,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_1B_QcI8oEeq5HrfdV5ATIg" type="Generalization_Edge" source="_1B_QiI8oEeq5HrfdV5ATIg" target="_1CAeg48oEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_1B_QcY8oEeq5HrfdV5ATIg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_1B_Qco8oEeq5HrfdV5ATIg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_1B_Qc48oEeq5HrfdV5ATIg" x="-1" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_1B_QdI8oEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_-m_OAIVfEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_1B_QdY8oEeq5HrfdV5ATIg" points="[-550, 370, -643984, -643984]$[-610, 273, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_1B_Qdo8oEeq5HrfdV5ATIg" id="(0.6,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_1B_Qd48oEeq5HrfdV5ATIg" id="(0.7567567567567568,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_1B_QmI8oEeq5HrfdV5ATIg" type="Generalization_Edge" source="_1CBFkI8oEeq5HrfdV5ATIg" target="_1B_3oo8oEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_1B_QmY8oEeq5HrfdV5ATIg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_1B_Qmo8oEeq5HrfdV5ATIg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_1B_Qm48oEeq5HrfdV5ATIg" x="-1" y="58"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_1B_QnI8oEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_9EA_YIVfEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_1B_QnY8oEeq5HrfdV5ATIg" points="[-390, 170, -643984, -643984]$[-530, 90, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_1B_Qno8oEeq5HrfdV5ATIg" id="(0.4,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_1B_Qn48oEeq5HrfdV5ATIg" id="(0.6936416184971098,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_1B_3mo8oEeq5HrfdV5ATIg" type="Generalization_Edge" source="_1B_3io8oEeq5HrfdV5ATIg" target="_1CAeg48oEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_1B_3m48oEeq5HrfdV5ATIg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_1B_3nI8oEeq5HrfdV5ATIg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_1B_3nY8oEeq5HrfdV5ATIg" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_1B_3no8oEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#__G9ukIVfEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_1B_3n48oEeq5HrfdV5ATIg" points="[-670, 370, -643984, -643984]$[-670, 273, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_1B_3oI8oEeq5HrfdV5ATIg" id="(0.6,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_1B_3oY8oEeq5HrfdV5ATIg" id="(0.43243243243243246,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_1CAelY8oEeq5HrfdV5ATIg" type="Generalization_Edge" source="_1CAeg48oEeq5HrfdV5ATIg" target="_1B_3oo8oEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_1CAelo8oEeq5HrfdV5ATIg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_1CAel48oEeq5HrfdV5ATIg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_1CAemI8oEeq5HrfdV5ATIg" x="1" y="59"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_1CAemY8oEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_98A-YIVfEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_1CAemo8oEeq5HrfdV5ATIg" points="[-630, 170, -643984, -643984]$[-610, 90, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_1CAem48oEeq5HrfdV5ATIg" id="(0.6486486486486487,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_1CAenI8oEeq5HrfdV5ATIg" id="(0.23121387283236994,1.0)"/>
+ </edges>
+ </notation:Diagram>
+ <notation:Diagram xmi:id="_9sdGII8oEeq5HrfdV5ATIg" type="PapyrusUMLProfileDiagram" name="Normalization_layers" measurementUnit="Pixel">
+ <children xmi:type="notation:Shape" xmi:id="_CqmbII8pEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_CqmbIY8pEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_CqmbIo8pEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_CqmbI48pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_CqmbJI8pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_CqmbJY8pEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_CqmbJo8pEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_CqmbJ48pEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_CqmbKI8pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_CqmbKY8pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_CqmbKo8pEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_CqmbK48pEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_GDAowIViEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_CqmbL48pEeq5HrfdV5ATIg" x="780" y="-380"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_CqnCMY8pEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_CqnCMo8pEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_CqnCM48pEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_CqnCNI8pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_CqnCNY8pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_CqnCNo8pEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_CqnCN48pEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_CqnCOI8pEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_CqnCOY8pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_CqnCOo8pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_CqnCO48pEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_CqnCPI8pEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_ws_i4IVgEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_CqnCQI8pEeq5HrfdV5ATIg" x="200" y="-1120"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_CqnCT48pEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_CqnCUI8pEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_CqnCUY8pEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_CqnCUo8pEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_iVdAIIVhEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_CqnCU48pEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_CqnCVI8pEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_ygFbsIVhEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_CqnCVY8pEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_CqnCVo8pEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_2tKgIIVhEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_CqnCV48pEeq5HrfdV5ATIg"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_CqnCWI8pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_CqnCWY8pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_CqnCWo8pEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_CqnCW48pEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_CqnCXI8pEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_CqnCXY8pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_CqnCXo8pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_CqnCX48pEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_CqnCYI8pEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_fbbfAIVhEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_CqnCZI8pEeq5HrfdV5ATIg" x="940" y="-600"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_CqnCZo8pEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_CqnCZ48pEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_CqnCaI8pEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_CqnCaY8pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_CqnCao8pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_CqnCa48pEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_CqnCbI8pEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_CqnCbY8pEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_CqnCbo8pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_CqnCb48pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_CqnCcI8pEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_CqnCcY8pEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_ELXxsIViEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_CqnCdY8pEeq5HrfdV5ATIg" x="640" y="-380"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_CqnpQI8pEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_CqnpQY8pEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_CqnpQo8pEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_CqnpQ48pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_CqnpRI8pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_CqnpRY8pEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_CqnpRo8pEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_CqnpR48pEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_CqnpSI8pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_CqnpSY8pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_CqnpSo8pEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_CqnpS48pEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_OF6vQIViEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_CqnpT48pEeq5HrfdV5ATIg" x="1200" y="-380"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_CqnpUI8pEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_CqnpUY8pEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_CqnpUo8pEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_CqnpU48pEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_gvtxYIVhEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_CqnpVI8pEeq5HrfdV5ATIg"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_CqnpVY8pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_CqnpVo8pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_CqnpV48pEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_CqnpWI8pEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_CqnpWY8pEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_CqnpWo8pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_CqnpW48pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_CqnpXI8pEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_CqnpXY8pEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_bf7SwIVhEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_CqnpYY8pEeq5HrfdV5ATIg" x="320" y="-760"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_CqnpcI8pEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_CqnpcY8pEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_Cqnpco8pEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_Cqnpc48pEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_Qt56oIVhEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_CqnpdI8pEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_CqnpdY8pEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_RjEoEIVhEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_Cqnpdo8pEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_Cqnpd48pEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_SBd0QIVhEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_CqnpeI8pEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_CqnpeY8pEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_SVdHQIVhEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_Cqnpeo8pEeq5HrfdV5ATIg"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_Cqnpe48pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_CqnpfI8pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_CqnpfY8pEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Cqnpfo8pEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_Cqnpf48pEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_CqnpgI8pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_CqnpgY8pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_Cqnpgo8pEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Cqnpg48pEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_ILIBQIVhEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Cqnph48pEeq5HrfdV5ATIg" x="520" y="-960"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_CqoQUI8pEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_CqoQUY8pEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_CqoQUo8pEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_CqoQU48pEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_4_83kIVgEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_CqoQVI8pEeq5HrfdV5ATIg"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_CqoQVY8pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_CqoQVo8pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_CqoQV48pEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_CqoQWI8pEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_CqoQWY8pEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_CqoQWo8pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_CqoQW48pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_CqoQXI8pEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_CqoQXY8pEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_2ZKbgIVgEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_CqoQYY8pEeq5HrfdV5ATIg" x="60" y="-940"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_CqoQbI8pEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_CqoQbY8pEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_CqoQbo8pEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_CqoQb48pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_CqoQcI8pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_CqoQcY8pEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_CqoQco8pEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_CqoQc48pEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_CqoQdI8pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_CqoQdY8pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_CqoQdo8pEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_CqoQd48pEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_RKVigIViEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_CqoQe48pEeq5HrfdV5ATIg" x="1320" y="-380"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_CqoQi48pEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_CqoQjI8pEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_CqoQjY8pEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_CqoQjo8pEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_mNNU0IVhEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_CqoQj48pEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_CqoQkI8pEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_njZrsIVhEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_CqoQkY8pEeq5HrfdV5ATIg"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_CqoQko8pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_CqoQk48pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_CqoQlI8pEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_CqoQlY8pEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_CqoQlo8pEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_CqoQl48pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_CqoQmI8pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_CqoQmY8pEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_CqoQmo8pEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_kVSw8IVhEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_CqoQno8pEeq5HrfdV5ATIg" x="260" y="-600"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_Cqo3Z48pEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_Cqo3aI8pEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_Cqo3aY8pEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_Cqo3ao8pEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_KI-OAIVhEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_Cqo3a48pEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_Cqo3bI8pEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_OsXgsIVhEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_Cqo3bY8pEeq5HrfdV5ATIg"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_Cqo3bo8pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_Cqo3b48pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_Cqo3cI8pEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Cqo3cY8pEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_Cqo3co8pEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_Cqo3c48pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_Cqo3dI8pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_Cqo3dY8pEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Cqo3do8pEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_GstigIVhEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Cqo3eo8pEeq5HrfdV5ATIg" y="-760"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_Cqo3i48pEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_Cqo3jI8pEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_Cqo3jY8pEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_Cqo3jo8pEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_K2rMEIViEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_Cqo3j48pEeq5HrfdV5ATIg"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_Cqo3kI8pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_Cqo3kY8pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_Cqo3ko8pEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Cqo3k48pEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_Cqo3lI8pEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_Cqo3lY8pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_Cqo3lo8pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_Cqo3l48pEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Cqo3mI8pEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_Ikef8IViEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Cqo3nI8pEeq5HrfdV5ATIg" x="940" y="-380"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_Cqpefo8pEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_Cqpef48pEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_CqpegI8pEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_CqpegY8pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_Cqpego8pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_Cqpeg48pEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_CqpehI8pEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_CqpehY8pEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_Cqpeho8pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_Cqpeh48pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_CqpeiI8pEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_CqpeiY8pEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_BDZUIIViEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_CqpejY8pEeq5HrfdV5ATIg" x="500" y="-380"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_Cqpelo8pEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_Cqpel48pEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_CqpemI8pEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_CqpemY8pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_Cqpemo8pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_Cqpem48pEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_CqpenI8pEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_CqpenY8pEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_Cqpeno8pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_Cqpen48pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_CqpeoI8pEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_CqpeoY8pEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_SiGmsIViEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_CqpepY8pEeq5HrfdV5ATIg" x="1440" y="-380"/>
+ </children>
+ <styles xmi:type="notation:StringValueStyle" xmi:id="_9sdGIY8oEeq5HrfdV5ATIg" name="diagram_compatibility_version" stringValue="1.4.0"/>
+ <styles xmi:type="notation:DiagramStyle" xmi:id="_9sdGIo8oEeq5HrfdV5ATIg"/>
+ <styles xmi:type="style:PapyrusDiagramStyle" xmi:id="_9sdGI48oEeq5HrfdV5ATIg" diagramKindId="org.eclipse.papyrus.uml.diagram.profile">
+ <owner xmi:type="uml:Profile" href="AIML.profile.uml#_IDYhIH13EeqSHNFOHg2_Jw"/>
+ </styles>
+ <styles xmi:type="notation:EObjectListValueStyle" xmi:id="_AF9zAK8ZEeqhVOlV64dXmA" name="css_stylesheets" eObjectListValue="_mci3oJm1Eeq8nv7tV9lOqQ"/>
+ <element xmi:type="uml:Profile" href="AIML.profile.uml#_IDYhIH13EeqSHNFOHg2_Jw"/>
+ <edges xmi:type="notation:Connector" xmi:id="_CqnCQY8pEeq5HrfdV5ATIg" type="Generalization_Edge" source="_CqmbII8pEeq5HrfdV5ATIg" target="_CqnCT48pEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_CqnCQo8pEeq5HrfdV5ATIg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_LHoR0I8pEeq5HrfdV5ATIg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_CqnCQ48pEeq5HrfdV5ATIg" x="1" y="59"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_CqnCRI8pEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_ZlFhQIViEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_CqnCRY8pEeq5HrfdV5ATIg" points="[810, -390, -643984, -643984]$[970, -475, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_CqnCRo8pEeq5HrfdV5ATIg" id="(0.4,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_CqnCR48pEeq5HrfdV5ATIg" id="(0.1652892561983471,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_CqnCSI8pEeq5HrfdV5ATIg" type="Generalization_Edge" source="_CqoQbI8pEeq5HrfdV5ATIg" target="_CqnCT48pEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_CqnCSY8pEeq5HrfdV5ATIg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_LIf0gI8pEeq5HrfdV5ATIg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_CqnCSo8pEeq5HrfdV5ATIg" x="-1" y="58"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_CqnCS48pEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_a9amIIViEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_CqnCTI8pEeq5HrfdV5ATIg" points="[1370, -390, -643984, -643984]$[1130, -475, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_CqnCTY8pEeq5HrfdV5ATIg" id="(0.594059405940594,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_CqnCTo8pEeq5HrfdV5ATIg" id="(0.8264462809917356,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_CqnpYo8pEeq5HrfdV5ATIg" type="Generalization_Edge" source="_CqnCZo8pEeq5HrfdV5ATIg" target="_CqnCT48pEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_CqnpY48pEeq5HrfdV5ATIg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_LHbdgI8pEeq5HrfdV5ATIg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_CqnpZI8pEeq5HrfdV5ATIg" x="1" y="58"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_CqnpZY8pEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_YkOhMIViEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_CqnpZo8pEeq5HrfdV5ATIg" points="[670, -390, -643984, -643984]$[970, -475, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_CqnpZ48pEeq5HrfdV5ATIg" id="(0.4,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_CqnpaI8pEeq5HrfdV5ATIg" id="(0.1652892561983471,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_CqnpaY8pEeq5HrfdV5ATIg" type="Generalization_Edge" source="_Cqpefo8pEeq5HrfdV5ATIg" target="_CqnCT48pEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_Cqnpao8pEeq5HrfdV5ATIg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_LHSTkI8pEeq5HrfdV5ATIg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_Cqnpa48pEeq5HrfdV5ATIg" x="1" y="58"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_CqnpbI8pEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_XsCU8IViEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_CqnpbY8pEeq5HrfdV5ATIg" points="[510, -390, -643984, -643984]$[950, -475, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Cqnpbo8pEeq5HrfdV5ATIg" id="(0.2,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Cqnpb48pEeq5HrfdV5ATIg" id="(0.08264462809917356,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_CqoQZI8pEeq5HrfdV5ATIg" type="Generalization_Edge" source="_CqnCT48pEeq5HrfdV5ATIg" target="_CqnpUI8pEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_CqoQZY8pEeq5HrfdV5ATIg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_CqoQZo8pEeq5HrfdV5ATIg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_CqoQZ48pEeq5HrfdV5ATIg" y="59"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_CqoQaI8pEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_67JjgIVhEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_CqoQaY8pEeq5HrfdV5ATIg" points="[590, -610, -643984, -643984]$[450, -667, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_CqoQao8pEeq5HrfdV5ATIg" id="(0.3305785123966942,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_CqoQa48pEeq5HrfdV5ATIg" id="(0.8383233532934131,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_CqoQfI8pEeq5HrfdV5ATIg" type="Generalization_Edge" source="_CqoQUI8pEeq5HrfdV5ATIg" target="_CqnCMY8pEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_CqoQfY8pEeq5HrfdV5ATIg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_LIz9kI8pEeq5HrfdV5ATIg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_CqoQfo8pEeq5HrfdV5ATIg" x="1" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_CqoQf48pEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_UxrSEIVhEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_CqoQgI8pEeq5HrfdV5ATIg" points="[170, -950, -643984, -643984]$[210, -1030, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_CqoQgY8pEeq5HrfdV5ATIg" id="(0.7741935483870968,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_CqoQgo8pEeq5HrfdV5ATIg" id="(0.16129032258064516,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_CqoQhI8pEeq5HrfdV5ATIg" type="Generalization_Edge" source="_Cqo3Z48pEeq5HrfdV5ATIg" target="_CqoQUI8pEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_CqoQhY8pEeq5HrfdV5ATIg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_LJGRcI8pEeq5HrfdV5ATIg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_CqoQho8pEeq5HrfdV5ATIg" x="1" y="58"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_CqoQh48pEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_WYnasIVhEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_CqoQiI8pEeq5HrfdV5ATIg" points="[10, -770, -643984, -643984]$[70, -847, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_CqoQiY8pEeq5HrfdV5ATIg" id="(0.08403361344537816,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_CqoQio8pEeq5HrfdV5ATIg" id="(0.12903225806451613,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_Cqo3YI8pEeq5HrfdV5ATIg" type="Generalization_Edge" source="_CqnpUI8pEeq5HrfdV5ATIg" target="_CqoQUI8pEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_Cqo3YY8pEeq5HrfdV5ATIg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_LJw_0I8pEeq5HrfdV5ATIg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_Cqo3Yo8pEeq5HrfdV5ATIg" x="-1" y="58"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_Cqo3Y48pEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_sCPOgIVhEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_Cqo3ZI8pEeq5HrfdV5ATIg" points="[330, -770, -643984, -643984]$[170, -847, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Cqo3ZY8pEeq5HrfdV5ATIg" id="(0.11976047904191617,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Cqo3Zo8pEeq5HrfdV5ATIg" id="(0.7741935483870968,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_Cqo3fY8pEeq5HrfdV5ATIg" type="Generalization_Edge" source="_Cqo3i48pEeq5HrfdV5ATIg" target="_CqnCT48pEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_Cqo3fo8pEeq5HrfdV5ATIg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_LH2UQI8pEeq5HrfdV5ATIg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_Cqo3f48pEeq5HrfdV5ATIg" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_Cqo3gI8pEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_aLhPIIViEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_Cqo3gY8pEeq5HrfdV5ATIg" points="[1050, -390, -643984, -643984]$[1050, -475, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Cqo3go8pEeq5HrfdV5ATIg" id="(0.5529953917050692,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Cqo3g48pEeq5HrfdV5ATIg" id="(0.49586776859504134,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_Cqo3hI8pEeq5HrfdV5ATIg" type="Generalization_Edge" source="_CqoQi48pEeq5HrfdV5ATIg" target="_CqnpUI8pEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_Cqo3hY8pEeq5HrfdV5ATIg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_LJcPsI8pEeq5HrfdV5ATIg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_Cqo3ho8pEeq5HrfdV5ATIg" x="1" y="59"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_Cqo3h48pEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_qWp2cIVhEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_Cqo3iI8pEeq5HrfdV5ATIg" points="[410, -610, -643984, -643984]$[410, -667, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Cqo3iY8pEeq5HrfdV5ATIg" id="(0.2803738317757009,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Cqo3io8pEeq5HrfdV5ATIg" id="(0.11976047904191617,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_CqpecI8pEeq5HrfdV5ATIg" type="Generalization_Edge" source="_CqnpQI8pEeq5HrfdV5ATIg" target="_CqnCT48pEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_CqpecY8pEeq5HrfdV5ATIg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_LIEWsI8pEeq5HrfdV5ATIg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_Cqpeco8pEeq5HrfdV5ATIg" y="59"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_Cqpec48pEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_alo_UIViEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_CqpedI8pEeq5HrfdV5ATIg" points="[1230, -390, -643984, -643984]$[1090, -475, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_CqpedY8pEeq5HrfdV5ATIg" id="(0.39603960396039606,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Cqpedo8pEeq5HrfdV5ATIg" id="(0.6611570247933884,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_Cqped48pEeq5HrfdV5ATIg" type="Generalization_Edge" source="_Cqpelo8pEeq5HrfdV5ATIg" target="_CqnCT48pEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_CqpeeI8pEeq5HrfdV5ATIg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_LHGtYI8pEeq5HrfdV5ATIg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_CqpeeY8pEeq5HrfdV5ATIg" x="1" y="58"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_Cqpeeo8pEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_baXn4IViEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_Cqpee48pEeq5HrfdV5ATIg" points="[1470, -390, -643984, -643984]$[1130, -475, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_CqpefI8pEeq5HrfdV5ATIg" id="(0.39603960396039606,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_CqpefY8pEeq5HrfdV5ATIg" id="(0.8264462809917356,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_Cqpejo8pEeq5HrfdV5ATIg" type="Generalization_Edge" source="_CqnpcI8pEeq5HrfdV5ATIg" target="_CqnCMY8pEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_Cqpej48pEeq5HrfdV5ATIg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_CqpekI8pEeq5HrfdV5ATIg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_CqpekY8pEeq5HrfdV5ATIg" x="-1" y="58"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_Cqpeko8pEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_UQtTAIVhEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_Cqpek48pEeq5HrfdV5ATIg" points="[450, -970, -643984, -643984]$[290, -1030, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_CqpelI8pEeq5HrfdV5ATIg" id="(0.24096385542168675,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_CqpelY8pEeq5HrfdV5ATIg" id="(0.8064516129032258,1.0)"/>
+ </edges>
+ </notation:Diagram>
+ <notation:Diagram xmi:id="_SKxkcI8pEeq5HrfdV5ATIg" type="PapyrusUMLProfileDiagram" name="Recurrent_layers" measurementUnit="Pixel">
+ <children xmi:type="notation:Shape" xmi:id="_usfGEK8VEeqhVOlV64dXmA" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_usfGEa8VEeqhVOlV64dXmA" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_usfGEq8VEeqhVOlV64dXmA" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_usfGE68VEeqhVOlV64dXmA" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_AP36kIVkEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_usfGFK8VEeqhVOlV64dXmA"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_usfGFa8VEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_usfGFq8VEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_usfGF68VEeqhVOlV64dXmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_usfGGK8VEeqhVOlV64dXmA"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_usfGGa8VEeqhVOlV64dXmA" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_usfGGq8VEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_usfGG68VEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_usfGHK8VEeqhVOlV64dXmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_usfGHa8VEeqhVOlV64dXmA"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_-5MbgIVjEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_usfGIa8VEeqhVOlV64dXmA" x="460" y="220"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_ushiUK8VEeqhVOlV64dXmA" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_ushiUa8VEeqhVOlV64dXmA" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_ushiUq8VEeqhVOlV64dXmA" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_ushiU68VEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_ushiVK8VEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_ushiVa8VEeqhVOlV64dXmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ushiVq8VEeqhVOlV64dXmA"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_ushiV68VEeqhVOlV64dXmA" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_ushiWK8VEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_ushiWa8VEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_ushiWq8VEeqhVOlV64dXmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ushiW68VEeqhVOlV64dXmA"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_CfAEkIVkEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ushiX68VEeqhVOlV64dXmA" x="720" y="220"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_ushiYK8VEeqhVOlV64dXmA" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_ushiYa8VEeqhVOlV64dXmA" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_ushiYq8VEeqhVOlV64dXmA" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_ushiY68VEeqhVOlV64dXmA" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_495hwIVjEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_ushiZK8VEeqhVOlV64dXmA"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_ushiZa8VEeqhVOlV64dXmA" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_6la5MIVjEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_ushiZq8VEeqhVOlV64dXmA"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_ushiZ68VEeqhVOlV64dXmA" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_7-lrkIVjEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_ushiaK8VEeqhVOlV64dXmA"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_ushiaa8VEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_ushiaq8VEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_ushia68VEeqhVOlV64dXmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ushibK8VEeqhVOlV64dXmA"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_ushiba8VEeqhVOlV64dXmA" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_ushibq8VEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_ushib68VEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_ushicK8VEeqhVOlV64dXmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ushica8VEeqhVOlV64dXmA"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_tHLn4IViEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ushida8VEeqhVOlV64dXmA" x="420" y="20"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_ushidq8VEeqhVOlV64dXmA" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_ushid68VEeqhVOlV64dXmA" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_ushieK8VEeqhVOlV64dXmA" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_ushiea8VEeqhVOlV64dXmA" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_iaV_0IVkEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_ushieq8VEeqhVOlV64dXmA"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_ushie68VEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_ushifK8VEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_ushifa8VEeqhVOlV64dXmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ushifq8VEeqhVOlV64dXmA"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_ushif68VEeqhVOlV64dXmA" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_ushigK8VEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_ushiga8VEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_ushigq8VEeqhVOlV64dXmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ushig68VEeqhVOlV64dXmA"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_f3AgYIVkEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ushih68VEeqhVOlV64dXmA" x="50" y="530"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_usiJYK8VEeqhVOlV64dXmA" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_usiJYa8VEeqhVOlV64dXmA" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_usiJYq8VEeqhVOlV64dXmA" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_usiJY68VEeqhVOlV64dXmA" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_Mgv2UIVkEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_usiJZK8VEeqhVOlV64dXmA"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_usiJZa8VEeqhVOlV64dXmA" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_NmsKsIVkEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_usiJZq8VEeqhVOlV64dXmA"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_usiJZ68VEeqhVOlV64dXmA" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_bIpT0IVkEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_usiJaK8VEeqhVOlV64dXmA"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_usiJaa8VEeqhVOlV64dXmA" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_dH_VYIVkEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_usiJaq8VEeqhVOlV64dXmA"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_usiJa68VEeqhVOlV64dXmA" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_GM1kwKaAEeqIr7xwFiWQGQ"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_usiJbK8VEeqhVOlV64dXmA"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_usiJba8VEeqhVOlV64dXmA" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_M26QEKaAEeqIr7xwFiWQGQ"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_usiJbq8VEeqhVOlV64dXmA"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_usiJb68VEeqhVOlV64dXmA" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_OalCQKaAEeqIr7xwFiWQGQ"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_usiJcK8VEeqhVOlV64dXmA"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_usiJca8VEeqhVOlV64dXmA" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_PFb9IKaAEeqIr7xwFiWQGQ"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_usiJcq8VEeqhVOlV64dXmA"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_usiJc68VEeqhVOlV64dXmA" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_TQ4C0KaAEeqIr7xwFiWQGQ"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_usiJdK8VEeqhVOlV64dXmA"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_usiJda8VEeqhVOlV64dXmA" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_uo4gUKaBEeqIr7xwFiWQGQ"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_usiJdq8VEeqhVOlV64dXmA"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_usiJd68VEeqhVOlV64dXmA" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_zjmG0KaBEeqIr7xwFiWQGQ"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_usiJeK8VEeqhVOlV64dXmA"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_usiJea8VEeqhVOlV64dXmA" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_0y_SIKaBEeqIr7xwFiWQGQ"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_usiJeq8VEeqhVOlV64dXmA"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_usiJe68VEeqhVOlV64dXmA" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_7QlAoKaBEeqIr7xwFiWQGQ"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_usiJfK8VEeqhVOlV64dXmA"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_usiJfa8VEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_usiJfq8VEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_usiJf68VEeqhVOlV64dXmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_usiJgK8VEeqhVOlV64dXmA"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_usiJga8VEeqhVOlV64dXmA" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_usiJgq8VEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_usiJg68VEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_usiJhK8VEeqhVOlV64dXmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_usiJha8VEeqhVOlV64dXmA"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_w_eSoIVjEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_usiJia8VEeqhVOlV64dXmA" x="190" y="190"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_usjXgK8VEeqhVOlV64dXmA" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_usjXga8VEeqhVOlV64dXmA" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_usjXgq8VEeqhVOlV64dXmA" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_usjXg68VEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_usjXhK8VEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_usjXha8VEeqhVOlV64dXmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_usjXhq8VEeqhVOlV64dXmA"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_usjXh68VEeqhVOlV64dXmA" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_usjXiK8VEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_usjXia8VEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_usjXiq8VEeqhVOlV64dXmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_usjXi68VEeqhVOlV64dXmA"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_EdBQcIVkEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_usjXj68VEeqhVOlV64dXmA" x="860" y="220"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_usjXkK8VEeqhVOlV64dXmA" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_usjXka8VEeqhVOlV64dXmA" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_usjXkq8VEeqhVOlV64dXmA" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_usjXk68VEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_usjXlK8VEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_usjXla8VEeqhVOlV64dXmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_usjXlq8VEeqhVOlV64dXmA"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_usjXl68VEeqhVOlV64dXmA" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_usjXmK8VEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_usjXma8VEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_usjXmq8VEeqhVOlV64dXmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_usjXm68VEeqhVOlV64dXmA"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_kOLU8IVkEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_usjXn68VEeqhVOlV64dXmA" x="290" y="530"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_usjXoK8VEeqhVOlV64dXmA" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_usjXoa8VEeqhVOlV64dXmA" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_usjXoq8VEeqhVOlV64dXmA" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_usjXo68VEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_usjXpK8VEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_usjXpa8VEeqhVOlV64dXmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_usjXpq8VEeqhVOlV64dXmA"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_usjXp68VEeqhVOlV64dXmA" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_usjXqK8VEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_usjXqa8VEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_usjXqq8VEeqhVOlV64dXmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_usjXq68VEeqhVOlV64dXmA"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_l8ROcIVkEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_usjXr68VEeqhVOlV64dXmA" x="430" y="530"/>
+ </children>
+ <styles xmi:type="notation:StringValueStyle" xmi:id="_SKxkcY8pEeq5HrfdV5ATIg" name="diagram_compatibility_version" stringValue="1.4.0"/>
+ <styles xmi:type="notation:DiagramStyle" xmi:id="_SKxkco8pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="style:PapyrusDiagramStyle" xmi:id="_SKxkc48pEeq5HrfdV5ATIg" diagramKindId="org.eclipse.papyrus.uml.diagram.profile">
+ <owner xmi:type="uml:Profile" href="AIML.profile.uml#_IDYhIH13EeqSHNFOHg2_Jw"/>
+ </styles>
+ <styles xmi:type="notation:EObjectListValueStyle" xmi:id="_BUBhkK8ZEeqhVOlV64dXmA" name="css_stylesheets" eObjectListValue="_mci3oJm1Eeq8nv7tV9lOqQ"/>
+ <element xmi:type="uml:Profile" href="AIML.profile.uml#_IDYhIH13EeqSHNFOHg2_Jw"/>
+ <edges xmi:type="notation:Connector" xmi:id="_usiJiq8VEeqhVOlV64dXmA" type="Generalization_Edge" source="_usjXoK8VEeqhVOlV64dXmA" target="_usiJYK8VEeqhVOlV64dXmA">
+ <children xmi:type="notation:DecorationNode" xmi:id="_usiJi68VEeqhVOlV64dXmA" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_usiJjK8VEeqhVOlV64dXmA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_usiJja8VEeqhVOlV64dXmA" x="-2" y="57"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_usiJjq8VEeqhVOlV64dXmA"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_qv_cIIVkEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_usiJj68VEeqhVOlV64dXmA" points="[430, 410, -643984, -643984]$[330, 341, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_usiJkK8VEeqhVOlV64dXmA" id="(0.4,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_usiJka8VEeqhVOlV64dXmA" id="(0.8264462809917356,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_usiJkq8VEeqhVOlV64dXmA" type="Generalization_Edge" source="_usjXkK8VEeqhVOlV64dXmA" target="_usiJYK8VEeqhVOlV64dXmA">
+ <children xmi:type="notation:DecorationNode" xmi:id="_usiJk68VEeqhVOlV64dXmA" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_usiJlK8VEeqhVOlV64dXmA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_usiJla8VEeqhVOlV64dXmA" x="-1" y="58"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_usiJlq8VEeqhVOlV64dXmA"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_p2PwsIVkEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_usiJl68VEeqhVOlV64dXmA" points="[310, 410, -643984, -643984]$[290, 341, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_usiJmK8VEeqhVOlV64dXmA" id="(0.4,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_usiJma8VEeqhVOlV64dXmA" id="(0.5785123966942148,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_usiwcK8VEeqhVOlV64dXmA" type="Generalization_Edge" source="_ushiUK8VEeqhVOlV64dXmA" target="_ushiYK8VEeqhVOlV64dXmA">
+ <children xmi:type="notation:DecorationNode" xmi:id="_usiwca8VEeqhVOlV64dXmA" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_usiwcq8VEeqhVOlV64dXmA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_usiwc68VEeqhVOlV64dXmA" x="-2" y="57"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_usiwdK8VEeqhVOlV64dXmA"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_sMLGQIVkEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_usiwda8VEeqhVOlV64dXmA" points="[730, 190, -643984, -643984]$[550, 125, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_usiwdq8VEeqhVOlV64dXmA" id="(0.4,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_usiwd68VEeqhVOlV64dXmA" id="(0.8080808080808081,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_usiweK8VEeqhVOlV64dXmA" type="Generalization_Edge" source="_ushidq8VEeqhVOlV64dXmA" target="_usiJYK8VEeqhVOlV64dXmA">
+ <children xmi:type="notation:DecorationNode" xmi:id="_usiwea8VEeqhVOlV64dXmA" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_usiweq8VEeqhVOlV64dXmA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_usiwe68VEeqhVOlV64dXmA" y="59"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_usiwfK8VEeqhVOlV64dXmA"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_pXFIcIVkEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_usiwfa8VEeqhVOlV64dXmA" points="[150, 410, -643984, -643984]$[230, 341, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_usiwfq8VEeqhVOlV64dXmA" id="(0.6976744186046512,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_usiwf68VEeqhVOlV64dXmA" id="(0.3305785123966942,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_usj-kK8VEeqhVOlV64dXmA" type="Generalization_Edge" source="_usiJYK8VEeqhVOlV64dXmA" target="_ushiYK8VEeqhVOlV64dXmA">
+ <children xmi:type="notation:DecorationNode" xmi:id="_usj-ka8VEeqhVOlV64dXmA" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_usj-kq8VEeqhVOlV64dXmA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_usj-k68VEeqhVOlV64dXmA" y="59"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_usj-lK8VEeqhVOlV64dXmA"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_tTUUgIVkEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_usj-la8VEeqhVOlV64dXmA" points="[270, 190, -643984, -643984]$[450, 125, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_usj-lq8VEeqhVOlV64dXmA" id="(0.49586776859504134,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_usj-l68VEeqhVOlV64dXmA" id="(0.3048780487804878,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_usj-mK8VEeqhVOlV64dXmA" type="Generalization_Edge" source="_usjXgK8VEeqhVOlV64dXmA" target="_ushiYK8VEeqhVOlV64dXmA">
+ <children xmi:type="notation:DecorationNode" xmi:id="_usj-ma8VEeqhVOlV64dXmA" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_usj-mq8VEeqhVOlV64dXmA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_usj-m68VEeqhVOlV64dXmA" x="1" y="58"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_usj-nK8VEeqhVOlV64dXmA"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_svnxkIVkEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_usj-na8VEeqhVOlV64dXmA" points="[870, 190, -643984, -643984]$[570, 125, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_usj-nq8VEeqhVOlV64dXmA" id="(0.4,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_usj-n68VEeqhVOlV64dXmA" id="(0.9090909090909091,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_usj-oK8VEeqhVOlV64dXmA" type="Generalization_Edge" source="_usfGEK8VEeqhVOlV64dXmA" target="_ushiYK8VEeqhVOlV64dXmA">
+ <children xmi:type="notation:DecorationNode" xmi:id="_usj-oa8VEeqhVOlV64dXmA" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_usj-oq8VEeqhVOlV64dXmA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_usj-o68VEeqhVOlV64dXmA" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_usj-pK8VEeqhVOlV64dXmA"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_rjgjwIVkEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_usj-pa8VEeqhVOlV64dXmA" points="[530, 190, -643984, -643984]$[530, 125, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_usj-pq8VEeqhVOlV64dXmA" id="(0.5,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_usj-p68VEeqhVOlV64dXmA" id="(0.7070707070707071,1.0)"/>
+ </edges>
+ </notation:Diagram>
+ <notation:Diagram xmi:id="_WSK3oI8pEeq5HrfdV5ATIg" type="PapyrusUMLProfileDiagram" name="Transformer_layers" measurementUnit="Pixel">
+ <children xmi:type="notation:Shape" xmi:id="_efoBQI8pEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_efoBQY8pEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_efoBQo8pEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_efoBQ48pEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_MA0HIIVmEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_efoBRI8pEeq5HrfdV5ATIg"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_efoBRY8pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_efoBRo8pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_efoBR48pEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_efoBSI8pEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_efoBSY8pEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_efoBSo8pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_efoBS48pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_efoBTI8pEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_efoBTY8pEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_Ku6aYIVmEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_efoBUY8pEeq5HrfdV5ATIg" x="11030" y="1150"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_efooX48pEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_efooYI8pEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_efooYY8pEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_efooYo8pEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_sbCMMIVlEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_efooY48pEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_efooZI8pEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_tmddgIVlEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_efooZY8pEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_efooZo8pEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_uFbRcIVlEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_efooZ48pEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_efooaI8pEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_v6pGoIVlEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_efooaY8pEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_efooao8pEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_wuIZEIVlEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_efooa48pEeq5HrfdV5ATIg"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_efoobI8pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_efoobY8pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_efoobo8pEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_efoob48pEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_efoocI8pEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_efoocY8pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_efooco8pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_efooc48pEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_efoodI8pEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_gsKxUIVlEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_efooeI8pEeq5HrfdV5ATIg" x="10350" y="890"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_efpPYI8pEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_efpPYY8pEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_efpPYo8pEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_efpPY48pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_efpPZI8pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_efpPZY8pEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_efpPZo8pEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_efpPZ48pEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_efpPaI8pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_efpPaY8pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_efpPao8pEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_efpPa48pEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_-aqagIVlEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_efpPb48pEeq5HrfdV5ATIg" x="10370" y="1150"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_efpPeI8pEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_efpPeY8pEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_efpPeo8pEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_efpPe48pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_efpPfI8pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_efpPfY8pEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_efpPfo8pEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_efpPf48pEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_efpPgI8pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_efpPgY8pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_efpPgo8pEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_efpPg48pEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_zItakIVkEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_efpPh48pEeq5HrfdV5ATIg" x="10669" y="694"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_efpPiI8pEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_efpPiY8pEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_efpPio8pEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_efpPi48pEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_mZVvgIVlEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_efpPjI8pEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_efpPjY8pEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_oByUAIVlEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_efpPjo8pEeq5HrfdV5ATIg"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_efpPj48pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_efpPkI8pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_efpPkY8pEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_efpPko8pEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_efpPk48pEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_efpPlI8pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_efpPlY8pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_efpPlo8pEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_efpPl48pEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_kfJ6wIVlEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_efpPm48pEeq5HrfdV5ATIg" x="10850" y="890"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_efpPpY8pEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_efpPpo8pEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_efpPp48pEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_efpPqI8pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_efpPqY8pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_efpPqo8pEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_efpPq48pEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_efpPrI8pEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_efpPrY8pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_efpPro8pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_efpPr48pEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_efpPsI8pEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_AIIo8IVmEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_efp2cI8pEeq5HrfdV5ATIg" x="10550" y="1150"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_efp2f48pEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_efp2gI8pEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_efp2gY8pEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_efp2go8pEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_2FyaQIVlEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_efp2g48pEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_efp2hI8pEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_4EeUgIVlEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_efp2hY8pEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_efp2ho8pEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_606b0IVlEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_efp2h48pEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_efp2iI8pEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_8LVcMIVlEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_efp2iY8pEeq5HrfdV5ATIg"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_efp2io8pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_efp2i48pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_efp2jI8pEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_efp2jY8pEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_efp2jo8pEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_efp2j48pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_efp2kI8pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_efp2kY8pEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_efp2ko8pEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_0gXUkIVlEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_efp2lo8pEeq5HrfdV5ATIg" x="10090" y="1150"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_efp2l48pEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_efp2mI8pEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_efp2mY8pEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_efp2mo8pEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_Nai6MIVmEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_efp2m48pEeq5HrfdV5ATIg"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_efp2nI8pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_efp2nY8pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_efp2no8pEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_efp2n48pEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_efp2oI8pEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_efp2oY8pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_efp2oo8pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_efp2o48pEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_efp2pI8pEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_JjphIIVmEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_efp2qI8pEeq5HrfdV5ATIg" x="10750" y="1150"/>
+ </children>
+ <styles xmi:type="notation:StringValueStyle" xmi:id="_WSK3oY8pEeq5HrfdV5ATIg" name="diagram_compatibility_version" stringValue="1.4.0"/>
+ <styles xmi:type="notation:DiagramStyle" xmi:id="_WSK3oo8pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="style:PapyrusDiagramStyle" xmi:id="_WSK3o48pEeq5HrfdV5ATIg" diagramKindId="org.eclipse.papyrus.uml.diagram.profile">
+ <owner xmi:type="uml:Profile" href="AIML.profile.uml#_IDYhIH13EeqSHNFOHg2_Jw"/>
+ </styles>
+ <styles xmi:type="notation:EObjectListValueStyle" xmi:id="_DJMTcK8ZEeqhVOlV64dXmA" name="css_stylesheets" eObjectListValue="_mci3oJm1Eeq8nv7tV9lOqQ"/>
+ <element xmi:type="uml:Profile" href="AIML.profile.uml#_IDYhIH13EeqSHNFOHg2_Jw"/>
+ <edges xmi:type="notation:Connector" xmi:id="_efooUI8pEeq5HrfdV5ATIg" type="Generalization_Edge" source="_efpPYI8pEeq5HrfdV5ATIg" target="_efooX48pEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_efooUY8pEeq5HrfdV5ATIg" type="Generalization_StereotypeLabel">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_efooUo8pEeq5HrfdV5ATIg" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_efooU48pEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_GrExgIVmEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_efooVI8pEeq5HrfdV5ATIg" points="[10420, 1140, -643984, -643984]$[10420, 1047, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_efooVY8pEeq5HrfdV5ATIg" id="(0.40540540540540543,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_efooVo8pEeq5HrfdV5ATIg" id="(0.3524229074889868,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_efooV48pEeq5HrfdV5ATIg" type="Generalization_Edge" source="_efp2f48pEeq5HrfdV5ATIg" target="_efooX48pEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_efooWI8pEeq5HrfdV5ATIg" type="Generalization_StereotypeLabel">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_efooWY8pEeq5HrfdV5ATIg" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_efooWo8pEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_GMzhIIVmEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_efooW48pEeq5HrfdV5ATIg" points="[10220, 1140, -643984, -643984]$[10380, 1047, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_efooXI8pEeq5HrfdV5ATIg" id="(0.5645161290322581,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_efooXY8pEeq5HrfdV5ATIg" id="(0.1762114537444934,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_efooeY8pEeq5HrfdV5ATIg" type="Generalization_Edge" source="_efooX48pEeq5HrfdV5ATIg" target="_efpPeI8pEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_efooeo8pEeq5HrfdV5ATIg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_efooe48pEeq5HrfdV5ATIg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_efoofI8pEeq5HrfdV5ATIg" y="59"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_efoofY8pEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_SF09kIVmEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_efoofo8pEeq5HrfdV5ATIg" points="[10500, 880, -643984, -643984]$[10700, 800, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_efoof48pEeq5HrfdV5ATIg" id="(0.7048458149779736,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_efoogI8pEeq5HrfdV5ATIg" id="(0.36283185840707965,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_efpPcY8pEeq5HrfdV5ATIg" type="Generalization_Edge" source="_efp2l48pEeq5HrfdV5ATIg" target="_efpPiI8pEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_efpPco8pEeq5HrfdV5ATIg" type="Generalization_StereotypeLabel">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_efpPc48pEeq5HrfdV5ATIg" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_efpPdI8pEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_P0nv8IVmEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_efpPdY8pEeq5HrfdV5ATIg" points="[10860, 1140, -643984, -643984]$[10920, 999, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_efpPdo8pEeq5HrfdV5ATIg" id="(0.5714285714285714,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_efpPd48pEeq5HrfdV5ATIg" id="(0.40609137055837563,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_efpPnI8pEeq5HrfdV5ATIg" type="Generalization_Edge" source="_efpPiI8pEeq5HrfdV5ATIg" target="_efpPeI8pEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_efpPnY8pEeq5HrfdV5ATIg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_efpPno8pEeq5HrfdV5ATIg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_efpPn48pEeq5HrfdV5ATIg" x="-1" y="58"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_efpPoI8pEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_RehtAIVmEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_efpPoY8pEeq5HrfdV5ATIg" points="[10940, 880, -643984, -643984]$[10740, 800, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_efpPoo8pEeq5HrfdV5ATIg" id="(0.5076142131979695,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_efpPo48pEeq5HrfdV5ATIg" id="(0.7168141592920354,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_efp2cY8pEeq5HrfdV5ATIg" type="Generalization_Edge" source="_efpPpY8pEeq5HrfdV5ATIg" target="_efooX48pEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_efp2co8pEeq5HrfdV5ATIg" type="Generalization_StereotypeLabel">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_efp2c48pEeq5HrfdV5ATIg" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_efp2dI8pEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_HJqyAIVmEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_efp2dY8pEeq5HrfdV5ATIg" points="[10580, 1140, -643984, -643984]$[10500, 1047, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_efp2do8pEeq5HrfdV5ATIg" id="(0.272108843537415,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_efp2d48pEeq5HrfdV5ATIg" id="(0.7048458149779736,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_efp2eI8pEeq5HrfdV5ATIg" type="Generalization_Edge" source="_efoBQI8pEeq5HrfdV5ATIg" target="_efpPiI8pEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_efp2eY8pEeq5HrfdV5ATIg" type="Generalization_StereotypeLabel">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_efp2eo8pEeq5HrfdV5ATIg" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_efp2e48pEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_QhQMcIVmEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_efp2fI8pEeq5HrfdV5ATIg" points="[11120, 1140, -643984, -643984]$[10980, 999, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_efp2fY8pEeq5HrfdV5ATIg" id="(0.47619047619047616,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_efp2fo8pEeq5HrfdV5ATIg" id="(0.7106598984771574,1.0)"/>
+ </edges>
+ </notation:Diagram>
+ <notation:Diagram xmi:id="_hjW4AI8pEeq5HrfdV5ATIg" type="PapyrusUMLProfileDiagram" name="Linear_layers" measurementUnit="Pixel">
+ <children xmi:type="notation:Shape" xmi:id="_jxs-4I8pEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_jxs-4Y8pEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_jxs-4o8pEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_jxs-448pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_jxs-5I8pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_jxs-5Y8pEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_jxs-5o8pEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_jxs-548pEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_jxs-6I8pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_jxs-6Y8pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_jxs-6o8pEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_jxs-648pEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_c_eM8IhhEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_jxs-748pEeq5HrfdV5ATIg" x="11970" y="930"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_jxuNB48pEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_jxuNCI8pEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_jxuNCY8pEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_jxuNCo8pEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_snPzEIhhEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_jxuNC48pEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_1xPYAKZeEeqIr7xwFiWQGQ" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_1w4LoKZeEeqIr7xwFiWQGQ"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_1xPYAaZeEeqIr7xwFiWQGQ"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_eKSGEKZkEeqIr7xwFiWQGQ" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_eJ6SoKZkEeqIr7xwFiWQGQ"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_eKSGEaZkEeqIr7xwFiWQGQ"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_f9-RQKZkEeqIr7xwFiWQGQ" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_f9qvQKZkEeqIr7xwFiWQGQ"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_f9-RQaZkEeqIr7xwFiWQGQ"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_jxuNDI8pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_jxuNDY8pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_jxuNDo8pEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_jxuND48pEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_jxuNEI8pEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_jxuNEY8pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_jxuNEo8pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_jxuNE48pEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_jxuNFI8pEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_ozz9sIhhEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_jxuNGI8pEeq5HrfdV5ATIg" x="11370" y="1210"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_jxu0J48pEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_jxu0KI8pEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_jxu0KY8pEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_jxu0Ko8pEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_lYOnoIhhEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_jxvbII8pEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_jxvbIY8pEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_m2y3YIhhEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_jxvbIo8pEeq5HrfdV5ATIg"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_jxvbI48pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_jxvbJI8pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_jxvbJY8pEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_jxvbJo8pEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_jxvbJ48pEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_jxvbKI8pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_jxvbKY8pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_jxvbKo8pEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_jxvbK48pEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_hGyAkIhhEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_jxvbL48pEeq5HrfdV5ATIg" x="11550" y="930"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_jxvbMI8pEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_jxvbMY8pEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_jxvbMo8pEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_jxvbM48pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_jxvbNI8pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_jxvbNY8pEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_jxvbNo8pEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_jxvbN48pEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_jxvbOI8pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_jxvbOY8pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_jxvbOo8pEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_jxvbO48pEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_ThvuQIhhEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_jxvbP48pEeq5HrfdV5ATIg" x="11710" y="690"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_jxvbQI8pEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_jxvbQY8pEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_jxvbQo8pEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_jxvbQ48pEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_u5YNwIhhEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_jxvbRI8pEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_jxvbRY8pEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_wboqsIhhEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_jxvbRo8pEeq5HrfdV5ATIg"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_jxvbR48pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_jxvbSI8pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_jxvbSY8pEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_jxvbSo8pEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_jxvbS48pEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_jxvbTI8pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_jxvbTY8pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_jxvbTo8pEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_jxvbT48pEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_pJFqIIhhEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_jxvbU48pEeq5HrfdV5ATIg" x="11750" y="1210"/>
+ </children>
+ <styles xmi:type="notation:StringValueStyle" xmi:id="_hjW4AY8pEeq5HrfdV5ATIg" name="diagram_compatibility_version" stringValue="1.4.0"/>
+ <styles xmi:type="notation:DiagramStyle" xmi:id="_hjW4Ao8pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="style:PapyrusDiagramStyle" xmi:id="_hjW4A48pEeq5HrfdV5ATIg" diagramKindId="org.eclipse.papyrus.uml.diagram.profile">
+ <owner xmi:type="uml:Profile" href="AIML.profile.uml#_IDYhIH13EeqSHNFOHg2_Jw"/>
+ </styles>
+ <styles xmi:type="notation:EObjectListValueStyle" xmi:id="_EIEWgK8ZEeqhVOlV64dXmA" name="css_stylesheets" eObjectListValue="_mci3oJm1Eeq8nv7tV9lOqQ"/>
+ <element xmi:type="uml:Profile" href="AIML.profile.uml#_IDYhIH13EeqSHNFOHg2_Jw"/>
+ <edges xmi:type="notation:Connector" xmi:id="_jxuNAI8pEeq5HrfdV5ATIg" type="Generalization_Edge" source="_jxvbQI8pEeq5HrfdV5ATIg" target="_jxu0J48pEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_jxuNAY8pEeq5HrfdV5ATIg" type="Generalization_StereotypeLabel">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_jxuNAo8pEeq5HrfdV5ATIg" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_jxuNA48pEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_4ugf0IhhEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_jxuNBI8pEeq5HrfdV5ATIg" points="[11820, 1200, -643984, -643984]$[11700, 1039, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_jxuNBY8pEeq5HrfdV5ATIg" id="(0.4,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_jxuNBo8pEeq5HrfdV5ATIg" id="(0.7920792079207921,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_jxu0Eo8pEeq5HrfdV5ATIg" type="Generalization_Edge" source="_jxs-4I8pEeq5HrfdV5ATIg" target="_jxvbMI8pEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_jxu0E48pEeq5HrfdV5ATIg" type="Generalization_StereotypeLabel">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_jxu0FI8pEeq5HrfdV5ATIg" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_jxu0FY8pEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_5QYd0IhhEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_jxu0Fo8pEeq5HrfdV5ATIg" points="[12000, 920, -643984, -643984]$[11780, 780, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_jxu0F48pEeq5HrfdV5ATIg" id="(0.4,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_jxu0GI8pEeq5HrfdV5ATIg" id="(0.8,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_jxu0GY8pEeq5HrfdV5ATIg" type="Generalization_Edge" source="_jxu0J48pEeq5HrfdV5ATIg" target="_jxvbMI8pEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_jxu0Go8pEeq5HrfdV5ATIg" type="Generalization_StereotypeLabel">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_jxu0G48pEeq5HrfdV5ATIg" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_jxu0HI8pEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_58n4wIhhEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_jxu0HY8pEeq5HrfdV5ATIg" points="[11660, 920, -643984, -643984]$[11720, 780, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_jxu0Ho8pEeq5HrfdV5ATIg" id="(0.594059405940594,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_jxu0H48pEeq5HrfdV5ATIg" id="(0.2,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_jxu0II8pEeq5HrfdV5ATIg" type="Generalization_Edge" source="_jxuNB48pEeq5HrfdV5ATIg" target="_jxu0J48pEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_jxu0IY8pEeq5HrfdV5ATIg" type="Generalization_StereotypeLabel">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_jxu0Io8pEeq5HrfdV5ATIg" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_jxu0I48pEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_4MFvQIhhEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_jxu0JI8pEeq5HrfdV5ATIg" points="[11520, 1200, -643984, -643984]$[11600, 1039, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_jxu0JY8pEeq5HrfdV5ATIg" id="(0.8247422680412371,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_jxu0Jo8pEeq5HrfdV5ATIg" id="(0.297029702970297,1.0)"/>
+ </edges>
+ </notation:Diagram>
+ <notation:Diagram xmi:id="_mvx5kI8pEeq5HrfdV5ATIg" type="PapyrusUMLProfileDiagram" name="Dropout_layers" measurementUnit="Pixel">
+ <children xmi:type="notation:Shape" xmi:id="_ouSNoY8pEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_ouSNoo8pEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_ouSNo48pEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_ouSNpI8pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_ouSNpY8pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_ouSNpo8pEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ouSNp48pEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_ouSNqI8pEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_ouSNqY8pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_ouSNqo8pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_ouSNq48pEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ouSNrI8pEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_O7XjkIhiEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ouSNsI8pEeq5HrfdV5ATIg" x="-380" y="280"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_ouSNuY8pEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_ouSNuo8pEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_ouSNu48pEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_ouSNvI8pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_ouSNvY8pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_ouSNvo8pEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ouSNv48pEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_ouSNwI8pEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_ouSNwY8pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_ouSNwo8pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_ouSNw48pEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ouSNxI8pEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_QF418IhiEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ouSNyI8pEeq5HrfdV5ATIg" x="40" y="280"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_ouS0t48pEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_ouS0uI8pEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_ouS0uY8pEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_ouS0uo8pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_ouS0u48pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_ouS0vI8pEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ouS0vY8pEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_ouS0vo8pEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_ouS0v48pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_ouS0wI8pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_ouS0wY8pEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ouS0wo8pEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_Proi4IhiEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ouS0xo8pEeq5HrfdV5ATIg" x="-100" y="280"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_ouS0x48pEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_ouS0yI8pEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_ouS0yY8pEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_ouS0yo8pEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_L5uXgIhiEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_ouS0y48pEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_ouS0zI8pEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_Mxr6QIhiEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_ouS0zY8pEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_k8lLIKcmEeqkzM30xo7jnw" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_k7wEsKcmEeqkzM30xo7jnw"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_k8lLIacmEeqkzM30xo7jnw"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_m_34kKcmEeqkzM30xo7jnw" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_m_lksKcmEeqkzM30xo7jnw"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_m_34kacmEeqkzM30xo7jnw"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_ouS0zo8pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_ouS0z48pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_ouS00I8pEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ouS00Y8pEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_ouS00o8pEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_ouS0048pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_ouS01I8pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_ouS01Y8pEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ouS01o8pEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_JJr40IhiEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ouS02o8pEeq5HrfdV5ATIg" x="-220" y="20"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_ouS0248pEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_ouS03I8pEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_ouS03Y8pEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_ouS03o8pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_ouS0348pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_ouS04I8pEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ouS04Y8pEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_ouS04o8pEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_ouS0448pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_ouS05I8pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_ouS05Y8pEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ouS05o8pEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_PMP4MIhiEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ouS06o8pEeq5HrfdV5ATIg" x="-240" y="280"/>
+ </children>
+ <styles xmi:type="notation:StringValueStyle" xmi:id="_mvx5kY8pEeq5HrfdV5ATIg" name="diagram_compatibility_version" stringValue="1.4.0"/>
+ <styles xmi:type="notation:DiagramStyle" xmi:id="_mvx5ko8pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="style:PapyrusDiagramStyle" xmi:id="_mvx5k48pEeq5HrfdV5ATIg" diagramKindId="org.eclipse.papyrus.uml.diagram.profile">
+ <owner xmi:type="uml:Profile" href="AIML.profile.uml#_IDYhIH13EeqSHNFOHg2_Jw"/>
+ </styles>
+ <styles xmi:type="notation:EObjectListValueStyle" xmi:id="_tG8kQK8YEeqhVOlV64dXmA" name="css_stylesheets" eObjectListValue="_mci3oJm1Eeq8nv7tV9lOqQ"/>
+ <element xmi:type="uml:Profile" href="AIML.profile.uml#_IDYhIH13EeqSHNFOHg2_Jw"/>
+ <edges xmi:type="notation:Connector" xmi:id="_ouSNsY8pEeq5HrfdV5ATIg" type="Generalization_Edge" source="_ouSNoY8pEeq5HrfdV5ATIg" target="_ouS0x48pEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_ouSNso8pEeq5HrfdV5ATIg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_FDJJYI81Eeq5HrfdV5ATIg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_ouSNs48pEeq5HrfdV5ATIg" y="59"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_ouSNtI8pEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_rp92AIhiEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_ouSNtY8pEeq5HrfdV5ATIg" points="[-350, 270, -643984, -643984]$[-210, 129, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_ouSNto8pEeq5HrfdV5ATIg" id="(0.4,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_ouSNt48pEeq5HrfdV5ATIg" id="(0.11428571428571428,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_ouS0sI8pEeq5HrfdV5ATIg" type="Generalization_Edge" source="_ouS0248pEeq5HrfdV5ATIg" target="_ouS0x48pEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_ouS0sY8pEeq5HrfdV5ATIg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_FDFfAI81Eeq5HrfdV5ATIg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_ouS0so8pEeq5HrfdV5ATIg" y="59"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_ouS0s48pEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_sKSU0IhiEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_ouS0tI8pEeq5HrfdV5ATIg" points="[-190, 270, -643984, -643984]$[-190, 129, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_ouS0tY8pEeq5HrfdV5ATIg" id="(0.6,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_ouS0to8pEeq5HrfdV5ATIg" id="(0.22857142857142856,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_ouS0648pEeq5HrfdV5ATIg" type="Generalization_Edge" source="_ouS0t48pEeq5HrfdV5ATIg" target="_ouS0x48pEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_ouS07I8pEeq5HrfdV5ATIg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_FDMzwI81Eeq5HrfdV5ATIg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_ouS07Y8pEeq5HrfdV5ATIg" y="59"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_ouS07o8pEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_srztgIhiEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_ouS0748pEeq5HrfdV5ATIg" points="[-50, 270, -643984, -643984]$[-90, 129, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_ouS08I8pEeq5HrfdV5ATIg" id="(0.2,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_ouS08Y8pEeq5HrfdV5ATIg" id="(0.8,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_ouS08o8pEeq5HrfdV5ATIg" type="Generalization_Edge" source="_ouSNuY8pEeq5HrfdV5ATIg" target="_ouS0x48pEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_ouS0848pEeq5HrfdV5ATIg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_FDQeII81Eeq5HrfdV5ATIg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_ouS09I8pEeq5HrfdV5ATIg" x="-1" y="58"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_ouS09Y8pEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_t3zmkIhiEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_ouS09o8pEeq5HrfdV5ATIg" points="[70, 270, -643984, -643984]$[-70, 129, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_ouS0948pEeq5HrfdV5ATIg" id="(0.4,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_ouS0-I8pEeq5HrfdV5ATIg" id="(0.9142857142857143,1.0)"/>
+ </edges>
+ </notation:Diagram>
+ <notation:Diagram xmi:id="_rsBxII8pEeq5HrfdV5ATIg" type="PapyrusUMLProfileDiagram" name="Sparse_layers" measurementUnit="Pixel">
+ <children xmi:type="notation:Shape" xmi:id="_y6OdMI8pEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_y6OdMY8pEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_y6OdMo8pEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_y6OdM48pEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_ytrT4IhjEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_y6OdNI8pEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_y6OdNY8pEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_z2sxcIhjEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_y6OdNo8pEeq5HrfdV5ATIg"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_y6OdN48pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_y6OdOI8pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_y6OdOY8pEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_y6OdOo8pEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_y6OdO48pEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_y6OdPI8pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_y6OdPY8pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_y6OdPo8pEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_y6OdP48pEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_kIoWEIhjEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_y6OdQ48pEeq5HrfdV5ATIg" x="13050" y="950"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_y6OdRI8pEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_y6OdRY8pEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_y6OdRo8pEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_y6OdR48pEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_w7GjAIhjEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_y6OdSI8pEeq5HrfdV5ATIg"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_y6OdSY8pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_y6OdSo8pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_y6OdS48pEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_y6OdTI8pEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_y6OdTY8pEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_y6OdTo8pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_y6OdT48pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_y6OdUI8pEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_y6OdUY8pEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_HDvqkIhjEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_y6OdVY8pEeq5HrfdV5ATIg" x="12810" y="950"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_y6OdVo8pEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_y6OdV48pEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_y6OdWI8pEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_y6OdWY8pEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_nWwe8IhjEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_y6OdWo8pEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_y6OdW48pEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_p2G2QIhjEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_y6OdXI8pEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_y6OdXY8pEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_sIOC0IhjEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_y6OdXo8pEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_y6OdX48pEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_tKafoIhjEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_y6OdYI8pEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_y6OdYY8pEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_vicuAIhjEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_y6OdYo8pEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_UjqNsJm5Eeq0jfmjFzaebA" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_UjbkMJm5Eeq0jfmjFzaebA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_UjqNsZm5Eeq0jfmjFzaebA"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_y6OdY48pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_y6OdZI8pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_y6OdZY8pEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_y6OdZo8pEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_y6OdZ48pEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_y6OdaI8pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_y6OdaY8pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_y6Odao8pEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_y6Oda48pEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_AdGtwIhjEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_y6Odb48pEeq5HrfdV5ATIg" x="12930" y="690"/>
+ </children>
+ <styles xmi:type="notation:StringValueStyle" xmi:id="_rsBxIY8pEeq5HrfdV5ATIg" name="diagram_compatibility_version" stringValue="1.4.0"/>
+ <styles xmi:type="notation:DiagramStyle" xmi:id="_rsBxIo8pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="style:PapyrusDiagramStyle" xmi:id="_rsBxI48pEeq5HrfdV5ATIg" diagramKindId="org.eclipse.papyrus.uml.diagram.profile">
+ <owner xmi:type="uml:Profile" href="AIML.profile.uml#_IDYhIH13EeqSHNFOHg2_Jw"/>
+ </styles>
+ <styles xmi:type="notation:EObjectListValueStyle" xmi:id="_ulEvIK8YEeqhVOlV64dXmA" name="css_stylesheets" eObjectListValue="_mci3oJm1Eeq8nv7tV9lOqQ"/>
+ <element xmi:type="uml:Profile" href="AIML.profile.uml#_IDYhIH13EeqSHNFOHg2_Jw"/>
+ <edges xmi:type="notation:Connector" xmi:id="_y6N2II8pEeq5HrfdV5ATIg" type="Generalization_Edge" source="_y6OdRI8pEeq5HrfdV5ATIg" target="_y6OdVo8pEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_y6N2IY8pEeq5HrfdV5ATIg" type="Generalization_StereotypeLabel">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_y6N2Io8pEeq5HrfdV5ATIg" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_y6N2I48pEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_7zj6UIhjEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_y6N2JI8pEeq5HrfdV5ATIg" points="[12920, 940, -643984, -643984]$[12980, 847, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_y6N2JY8pEeq5HrfdV5ATIg" id="(0.594059405940594,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_y6N2Jo8pEeq5HrfdV5ATIg" id="(0.2575107296137339,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_y6PEQI8pEeq5HrfdV5ATIg" type="Generalization_Edge" source="_y6OdMI8pEeq5HrfdV5ATIg" target="_y6OdVo8pEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_y6PEQY8pEeq5HrfdV5ATIg" type="Generalization_StereotypeLabel">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_y6PEQo8pEeq5HrfdV5ATIg" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_y6PEQ48pEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_8S-aMIhjEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_y6PERI8pEeq5HrfdV5ATIg" points="[13160, 940, -643984, -643984]$[13080, 847, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_y6PERY8pEeq5HrfdV5ATIg" id="(0.5128205128205128,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_y6PERo8pEeq5HrfdV5ATIg" id="(0.6866952789699571,1.0)"/>
+ </edges>
+ </notation:Diagram>
+ <notation:Diagram xmi:id="_uj59MI8pEeq5HrfdV5ATIg" type="PapyrusUMLProfileDiagram" name="Distance_functions" measurementUnit="Pixel">
+ <children xmi:type="notation:Shape" xmi:id="_128F_o8pEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_128F_48pEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_128GAI8pEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_128GAY8pEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_D1Gu4IhkEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_128GAo8pEeq5HrfdV5ATIg"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_128GA48pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_128GBI8pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_128GBY8pEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_128GBo8pEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_128GB48pEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_128GCI8pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_128GCY8pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_128GCo8pEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_128GC48pEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_9-4iYIhjEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_128GD48pEeq5HrfdV5ATIg" x="13550" y="690"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_128GEI8pEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_128GEY8pEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_128GEo8pEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_128GE48pEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_Km4ksIhkEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_128GFI8pEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_128GFY8pEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_LieqQIhkEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_128GFo8pEeq5HrfdV5ATIg"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_128GF48pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_128GGI8pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_128GGY8pEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_128GGo8pEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_128GG48pEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_128GHI8pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_128GHY8pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_128GHo8pEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_128GH48pEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_F-SB4IhkEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_128GI48pEeq5HrfdV5ATIg" x="13690" y="950"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_128tAY8pEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_128tAo8pEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_128tA48pEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_128tBI8pEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_JmnagIhkEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_128tBY8pEeq5HrfdV5ATIg"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_128tBo8pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_128tB48pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_128tCI8pEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_128tCY8pEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_128tCo8pEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_128tC48pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_128tDI8pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_128tDY8pEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_128tDo8pEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_Ff9uMIhkEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_128tEo8pEeq5HrfdV5ATIg" x="13450" y="950"/>
+ </children>
+ <styles xmi:type="notation:StringValueStyle" xmi:id="_uj59MY8pEeq5HrfdV5ATIg" name="diagram_compatibility_version" stringValue="1.4.0"/>
+ <styles xmi:type="notation:DiagramStyle" xmi:id="_uj59Mo8pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="style:PapyrusDiagramStyle" xmi:id="_uj59M48pEeq5HrfdV5ATIg" diagramKindId="org.eclipse.papyrus.uml.diagram.profile">
+ <owner xmi:type="uml:Profile" href="AIML.profile.uml#_IDYhIH13EeqSHNFOHg2_Jw"/>
+ </styles>
+ <styles xmi:type="notation:EObjectListValueStyle" xmi:id="_vzoM8K8YEeqhVOlV64dXmA" name="css_stylesheets" eObjectListValue="_mci3oJm1Eeq8nv7tV9lOqQ"/>
+ <element xmi:type="uml:Profile" href="AIML.profile.uml#_IDYhIH13EeqSHNFOHg2_Jw"/>
+ <edges xmi:type="notation:Connector" xmi:id="_128F8I8pEeq5HrfdV5ATIg" type="Generalization_Edge" source="_128GEI8pEeq5HrfdV5ATIg" target="_128F_o8pEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_128F8Y8pEeq5HrfdV5ATIg" type="Generalization_StereotypeLabel">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_128F8o8pEeq5HrfdV5ATIg" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_128F848pEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_RFcjkIhkEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_128F9I8pEeq5HrfdV5ATIg" points="[13720, 940, -643984, -643984]$[13660, 783, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_128F9Y8pEeq5HrfdV5ATIg" id="(0.2185792349726776,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_128F9o8pEeq5HrfdV5ATIg" id="(0.7741935483870968,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_128F948pEeq5HrfdV5ATIg" type="Generalization_Edge" source="_128tAY8pEeq5HrfdV5ATIg" target="_128F_o8pEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_128F-I8pEeq5HrfdV5ATIg" type="Generalization_StereotypeLabel">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_128F-Y8pEeq5HrfdV5ATIg" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_128F-o8pEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_QjaNgIhkEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_128F-48pEeq5HrfdV5ATIg" points="[13540, 940, -643984, -643984]$[13580, 783, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_128F_I8pEeq5HrfdV5ATIg" id="(0.6329113924050633,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_128F_Y8pEeq5HrfdV5ATIg" id="(0.25806451612903225,1.0)"/>
+ </edges>
+ </notation:Diagram>
+ <notation:Diagram xmi:id="_5sQxsI8pEeq5HrfdV5ATIg" type="PapyrusUMLProfileDiagram" name="Loss_functions" measurementUnit="Pixel">
+ <children xmi:type="notation:Shape" xmi:id="_LajYYI8qEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_LajYYY8qEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_LajYYo8qEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_LajYY48qEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_LajYZI8qEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_LajYZY8qEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LajYZo8qEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_LajYZ48qEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_LajYaI8qEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_LajYaY8qEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_LajYao8qEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LajYa48qEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_oavnUIhqEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LajYb48qEeq5HrfdV5ATIg" x="2800" y="780"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_Laj_eo8qEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_Laj_e48qEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_Laj_fI8qEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_Laj_fY8qEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_4J95QIhqEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_Laj_fo8qEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_Laj_f48qEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_5TNZQIhqEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_Laj_gI8qEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_Laj_gY8qEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_6KGlAIhqEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_Laj_go8qEeq5HrfdV5ATIg"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_Laj_g48qEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_Laj_hI8qEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_Laj_hY8qEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Laj_ho8qEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_Laj_h48qEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_Laj_iI8qEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_Laj_iY8qEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_Laj_io8qEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Laj_i48qEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_0iSA4IhqEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Laj_j48qEeq5HrfdV5ATIg" x="2160" y="560"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_Laj_kY8qEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_Laj_ko8qEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_Laj_k48qEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_Laj_lI8qEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_Hr6rkIhoEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_Laj_lY8qEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_Laj_lo8qEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_KRcjYIhoEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_Laj_l48qEeq5HrfdV5ATIg"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_Laj_mI8qEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_Laj_mY8qEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_Laj_mo8qEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Laj_m48qEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_Laj_nI8qEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_Laj_nY8qEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_Laj_no8qEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_Laj_n48qEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Laj_oI8qEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_F2VqAIhoEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Laj_pI8qEeq5HrfdV5ATIg" x="1100" y="60"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_Laj_vY8qEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_Laj_vo8qEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_Laj_v48qEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_Laj_wI8qEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_Laj_wY8qEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_Laj_wo8qEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Laj_w48qEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_Laj_xI8qEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_Laj_xY8qEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_Laj_xo8qEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_Laj_x48qEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Laj_yI8qEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_sYrucIhoEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Laj_zI8qEeq5HrfdV5ATIg" x="960" y="320"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_LakmiI8qEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_LakmiY8qEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_Lakmio8qEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_Lakmi48qEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_fsyDkIhoEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_LakmjI8qEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_LakmjY8qEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_g54v4IhoEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_Lakmjo8qEeq5HrfdV5ATIg"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_Lakmj48qEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_LakmkI8qEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_LakmkY8qEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Lakmko8qEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_Lakmk48qEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_LakmlI8qEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_LakmlY8qEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_Lakmlo8qEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Lakml48qEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_dgekEIhoEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Lakmm48qEeq5HrfdV5ATIg" x="20" y="60"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_LakmpI8qEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_LakmpY8qEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_Lakmpo8qEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_Lakmp48qEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_LakmqI8qEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_LakmqY8qEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Lakmqo8qEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_Lakmq48qEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_LakmrI8qEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_LakmrY8qEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_Lakmro8qEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Lakmr48qEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_UW5JYIhoEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Lakms48qEeq5HrfdV5ATIg" x="660" y="320"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_LakmtI8qEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_LakmtY8qEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_Lakmto8qEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_Lakmt48qEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_qCV-oIhnEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_LakmuI8qEeq5HrfdV5ATIg"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_LakmuY8qEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_Lakmuo8qEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_Lakmu48qEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LakmvI8qEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_LakmvY8qEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_Lakmvo8qEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_Lakmv48qEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_LakmwI8qEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LakmwY8qEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_oNze4IhnEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LakmxY8qEeq5HrfdV5ATIg" x="500" y="-180"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_Lakmxo8qEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_Lakmx48qEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_LakmyI8qEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_LakmyY8qEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_e4iGsIhpEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_Lakmyo8qEeq5HrfdV5ATIg"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_Lakmy48qEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_LakmzI8qEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_LakmzY8qEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Lakmzo8qEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_Lakmz48qEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_Lakm0I8qEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_Lakm0Y8qEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_Lakm0o8qEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Lakm048qEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_cSDMoIhpEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Lakm148qEeq5HrfdV5ATIg" x="2500" y="320"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_LalNkI8qEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_LalNkY8qEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_LalNko8qEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_LalNk48qEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_LalNlI8qEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_LalNlY8qEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LalNlo8qEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_LalNl48qEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_LalNmI8qEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_LalNmY8qEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_LalNmo8qEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LalNm48qEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_yCiS4IhoEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LalNn48qEeq5HrfdV5ATIg" x="1100" y="320"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_LalNoI8qEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_LalNoY8qEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_LalNoo8qEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_LalNo48qEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_2xgRgIhqEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_LalNpI8qEeq5HrfdV5ATIg"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_LalNpY8qEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_LalNpo8qEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_LalNp48qEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LalNqI8qEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_LalNqY8qEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_LalNqo8qEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_LalNq48qEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_LalNrI8qEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LalNrY8qEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_1ml9kIhqEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LalNsY8qEeq5HrfdV5ATIg" x="2400" y="560"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_LalNuo8qEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_LalNu48qEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_LalNvI8qEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_LalNvY8qEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_LalNvo8qEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_LalNv48qEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LalNwI8qEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_LalNwY8qEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_LalNwo8qEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_LalNw48qEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_LalNxI8qEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LalNxY8qEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_v673wIhpEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LalNyY8qEeq5HrfdV5ATIg" x="1580" y="520"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_LalN248qEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_LalN3I8qEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_LalN3Y8qEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_LalN3o8qEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_LlDOYIhqEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_LalN348qEeq5HrfdV5ATIg"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_LalN4I8qEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_LalN4Y8qEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_LalN4o8qEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LalN448qEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_LalN5I8qEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_LalN5Y8qEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_LalN5o8qEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_LalN548qEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LalN6I8qEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_J1LMMIhqEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LalN7I8qEeq5HrfdV5ATIg" x="1920" y="760"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_LalN7Y8qEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_LalN7o8qEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_LalN748qEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_LalN8I8qEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_LalN8Y8qEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_LalN8o8qEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LalN848qEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_LalN9I8qEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_LalN9Y8qEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_LalN9o8qEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_LalN948qEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LalN-I8qEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_XkZnMIhoEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LalN_I8qEeq5HrfdV5ATIg" x="800" y="320"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_Lal0oI8qEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_Lal0oY8qEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_Lal0oo8qEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_Lal0o48qEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_dvGZcIhpEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_Lal0pI8qEeq5HrfdV5ATIg"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_Lal0pY8qEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_Lal0po8qEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_Lal0p48qEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Lal0qI8qEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_Lal0qY8qEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_Lal0qo8qEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_Lal0q48qEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_Lal0rI8qEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Lal0rY8qEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_TXEOoIhpEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Lal0sY8qEeq5HrfdV5ATIg" x="1520" y="320"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_Lal0u48qEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_Lal0vI8qEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_Lal0vY8qEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_Lal0vo8qEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_NFUHQIhqEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_Lal0v48qEeq5HrfdV5ATIg"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_Lal0wI8qEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_Lal0wY8qEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_Lal0wo8qEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Lal0w48qEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_Lal0xI8qEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_Lal0xY8qEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_Lal0xo8qEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_Lal0x48qEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Lal0yI8qEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_JaQx0IhqEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Lal0zI8qEeq5HrfdV5ATIg" x="1720" y="760"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_Lal01Y8qEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_Lal01o8qEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_Lal0148qEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_Lal02I8qEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_Lal02Y8qEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_Lal02o8qEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Lal0248qEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_Lal03I8qEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_Lal03Y8qEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_Lal03o8qEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_Lal0348qEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Lal04I8qEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_6OX2cIhpEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Lal05I8qEeq5HrfdV5ATIg" x="2640" y="560"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_Lal07Y8qEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_Lal07o8qEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_Lal0748qEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_Lal08I8qEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_kXdYEIhqEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_Lal08Y8qEeq5HrfdV5ATIg"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_Lal08o8qEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_Lal0848qEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_Lal09I8qEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Lal09Y8qEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_Lal09o8qEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_Lal0948qEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_Lal0-I8qEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_Lal0-Y8qEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Lal0-o8qEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_hqxIUIhqEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Lal0_o8qEeq5HrfdV5ATIg" x="2800" y="560"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_Lal0_48qEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_Lal1AI8qEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_Lal1AY8qEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_Lal1Ao8qEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_Lal1A48qEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_Lal1BI8qEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Lal1BY8qEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_Lal1Bo8qEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_Lal1B48qEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_Lal1CI8qEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_Lal1CY8qEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Lal1Co8qEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_pWuucIhqEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Lal1Do8qEeq5HrfdV5ATIg" x="2940" y="780"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_Lal1F48qEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_Lal1GI8qEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_Lal1GY8qEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_Lal1Go8qEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_HB3XEIhqEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_Lal1G48qEeq5HrfdV5ATIg"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_Lal1HI8qEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_Lal1HY8qEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_Lal1Ho8qEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Lal1H48qEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_Lal1II8qEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_Lal1IY8qEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_Lal1Io8qEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_Lal1I48qEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Lal1JI8qEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_DrSc0IhqEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Lal1KI8qEeq5HrfdV5ATIg" x="1800" y="520"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_LambyI8qEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_LambyY8qEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_Lambyo8qEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_Lamby48qEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_LambzI8qEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_LambzY8qEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Lambzo8qEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_Lambz48qEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_Lamb0I8qEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_Lamb0Y8qEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_Lamb0o8qEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Lamb048qEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_o24mMIhpEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Lamb148qEeq5HrfdV5ATIg" x="1280" y="520"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_LanCwI8qEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_LanCwY8qEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_LanCwo8qEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_LanCw48qEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_LanCxI8qEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_LanCxY8qEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LanCxo8qEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_LanCx48qEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_LanCyI8qEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_LanCyY8qEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_LanCyo8qEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LanCy48qEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_uaWOwIhpEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LanCz48qEeq5HrfdV5ATIg" x="1440" y="520"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_hxfEcJm6Eeq0jfmjFzaebA" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_hxfrgJm6Eeq0jfmjFzaebA" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_hxfrgZm6Eeq0jfmjFzaebA" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_hxfrgpm6Eeq0jfmjFzaebA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_hxfrg5m6Eeq0jfmjFzaebA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_hxfrhJm6Eeq0jfmjFzaebA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_hxfrhZm6Eeq0jfmjFzaebA"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_hxfrhpm6Eeq0jfmjFzaebA" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_hxfrh5m6Eeq0jfmjFzaebA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_hxfriJm6Eeq0jfmjFzaebA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_hxfriZm6Eeq0jfmjFzaebA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_hxfripm6Eeq0jfmjFzaebA"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_hxbaEJm6Eeq0jfmjFzaebA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_hxfEcZm6Eeq0jfmjFzaebA" x="520" y="320"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_w1FmgJm6Eeq0jfmjFzaebA" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_w1GNkJm6Eeq0jfmjFzaebA" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_w1GNkZm6Eeq0jfmjFzaebA" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_w1GNkpm6Eeq0jfmjFzaebA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_w1GNk5m6Eeq0jfmjFzaebA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_w1GNlJm6Eeq0jfmjFzaebA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_w1GNlZm6Eeq0jfmjFzaebA"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_w1GNlpm6Eeq0jfmjFzaebA" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_w1GNl5m6Eeq0jfmjFzaebA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_w1GNmJm6Eeq0jfmjFzaebA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_w1GNmZm6Eeq0jfmjFzaebA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_w1GNmpm6Eeq0jfmjFzaebA"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_w1CjMJm6Eeq0jfmjFzaebA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_w1FmgZm6Eeq0jfmjFzaebA" x="380" y="320"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_DSsxUJm7Eeq0jfmjFzaebA" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_DStYYJm7Eeq0jfmjFzaebA" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_DStYYZm7Eeq0jfmjFzaebA" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_DStYYpm7Eeq0jfmjFzaebA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_DStYY5m7Eeq0jfmjFzaebA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_DStYZJm7Eeq0jfmjFzaebA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_DStYZZm7Eeq0jfmjFzaebA"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_DStYZpm7Eeq0jfmjFzaebA" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_DStYZ5m7Eeq0jfmjFzaebA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_DStYaJm7Eeq0jfmjFzaebA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_DStYaZm7Eeq0jfmjFzaebA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_DStYapm7Eeq0jfmjFzaebA"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_DSn40Jm7Eeq0jfmjFzaebA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_DSsxUZm7Eeq0jfmjFzaebA" x="1980" y="560"/>
+ </children>
+ <styles xmi:type="notation:StringValueStyle" xmi:id="_5sQxsY8pEeq5HrfdV5ATIg" name="diagram_compatibility_version" stringValue="1.4.0"/>
+ <styles xmi:type="notation:DiagramStyle" xmi:id="_5sQxso8pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="style:PapyrusDiagramStyle" xmi:id="_5sQxs48pEeq5HrfdV5ATIg" diagramKindId="org.eclipse.papyrus.uml.diagram.profile">
+ <owner xmi:type="uml:Profile" href="AIML.profile.uml#_IDYhIH13EeqSHNFOHg2_Jw"/>
+ </styles>
+ <styles xmi:type="notation:EObjectListValueStyle" xmi:id="_xUzEwK8YEeqhVOlV64dXmA" name="css_stylesheets" eObjectListValue="_mci3oJm1Eeq8nv7tV9lOqQ"/>
+ <element xmi:type="uml:Profile" href="AIML.profile.uml#_IDYhIH13EeqSHNFOHg2_Jw"/>
+ <edges xmi:type="notation:Connector" xmi:id="_LajYcI8qEeq5HrfdV5ATIg" type="Generalization_Edge" source="_LalN7Y8qEeq5HrfdV5ATIg" target="_Laj_kY8qEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_LajYcY8qEeq5HrfdV5ATIg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_LajYco8qEeq5HrfdV5ATIg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_LajYc48qEeq5HrfdV5ATIg" y="59"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_LajYdI8qEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_PLRRsIhrEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_LajYdY8qEeq5HrfdV5ATIg" points="[595, 315, -643984, -643984]$[915, 173, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_LajYdo8qEeq5HrfdV5ATIg" id="(0.4,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_LajYd48qEeq5HrfdV5ATIg" id="(0.297029702970297,0.9971988795518194)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_Laj_cY8qEeq5HrfdV5ATIg" type="Generalization_Edge" source="_LalNuo8qEeq5HrfdV5ATIg" target="_Lal0oI8qEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_Laj_co8qEeq5HrfdV5ATIg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_Laj_c48qEeq5HrfdV5ATIg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_Laj_dI8qEeq5HrfdV5ATIg" y="59"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_Laj_dY8qEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_0GpqQIhpEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_Laj_do8qEeq5HrfdV5ATIg" points="[1355, 515, -643984, -643984]$[1215, 418, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Laj_d48qEeq5HrfdV5ATIg" id="(0.15503875968992248,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Laj_eI8qEeq5HrfdV5ATIg" id="(0.34285714285714286,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_Laj_pY8qEeq5HrfdV5ATIg" type="Generalization_Edge" source="_LalNkI8qEeq5HrfdV5ATIg" target="_Laj_kY8qEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_Laj_po8qEeq5HrfdV5ATIg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_Laj_p48qEeq5HrfdV5ATIg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_Laj_qI8qEeq5HrfdV5ATIg" y="59"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_Laj_qY8qEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_OBMEMIhrEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_Laj_qo8qEeq5HrfdV5ATIg" points="[935, 315, -643984, -643984]$[955, 173, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Laj_q48qEeq5HrfdV5ATIg" id="(0.6153846153846154,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Laj_rI8qEeq5HrfdV5ATIg" id="(0.49504950495049505,0.9971988795518194)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_Laj_rY8qEeq5HrfdV5ATIg" type="Generalization_Edge" source="_Lal1F48qEeq5HrfdV5ATIg" target="_Lal0oI8qEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_Laj_ro8qEeq5HrfdV5ATIg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_Laj_r48qEeq5HrfdV5ATIg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_Laj_sI8qEeq5HrfdV5ATIg" x="-1" y="58"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_Laj_sY8qEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_UcGuoIhqEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_Laj_so8qEeq5HrfdV5ATIg" points="[1575, 515, -643984, -643984]$[1415, 418, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Laj_s48qEeq5HrfdV5ATIg" id="(0.1388888888888889,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Laj_tI8qEeq5HrfdV5ATIg" id="(0.8,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_Laj_tY8qEeq5HrfdV5ATIg" type="Generalization_Edge" source="_LajYYI8qEeq5HrfdV5ATIg" target="_Lal07Y8qEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_Laj_to8qEeq5HrfdV5ATIg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_Laj_t48qEeq5HrfdV5ATIg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_Laj_uI8qEeq5HrfdV5ATIg" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_Laj_uY8qEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_rT8pEIhqEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_Laj_uo8qEeq5HrfdV5ATIg" points="[2490, 775, -643984, -643984]$[2490, 658, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Laj_u48qEeq5HrfdV5ATIg" id="(0.5660377358490566,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Laj_vI8qEeq5HrfdV5ATIg" id="(0.2926829268292683,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_Laj_zY8qEeq5HrfdV5ATIg" type="Generalization_Edge" source="_Laj_eo8qEeq5HrfdV5ATIg" target="_Lakmxo8qEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_Laj_zo8qEeq5HrfdV5ATIg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_Laj_z48qEeq5HrfdV5ATIg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_Laj_0I8qEeq5HrfdV5ATIg" y="58"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_Laj_0Y8qEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_H58ZIIhrEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_Laj_0o8qEeq5HrfdV5ATIg" points="[2055, 555, -643984, -643984]$[2275, 417, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Laj_048qEeq5HrfdV5ATIg" id="(0.7486631016042781,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Laj_1I8qEeq5HrfdV5ATIg" id="(0.11560693641618497,0.9967637540453059)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_LakmgI8qEeq5HrfdV5ATIg" type="Generalization_Edge" source="_Laj_vY8qEeq5HrfdV5ATIg" target="_Laj_kY8qEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_LakmgY8qEeq5HrfdV5ATIg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_Lakmgo8qEeq5HrfdV5ATIg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_Lakmg48qEeq5HrfdV5ATIg" x="1" y="58"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_LakmhI8qEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_Ojop8IhrEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_LakmhY8qEeq5HrfdV5ATIg" points="[795, 315, -643984, -643984]$[935, 173, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Lakmho8qEeq5HrfdV5ATIg" id="(0.8,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Lakmh48qEeq5HrfdV5ATIg" id="(0.39603960396039606,0.9971988795518194)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_LakmnI8qEeq5HrfdV5ATIg" type="Generalization_Edge" source="_Lal01Y8qEeq5HrfdV5ATIg" target="_Lakmxo8qEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_LakmnY8qEeq5HrfdV5ATIg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_Lakmno8qEeq5HrfdV5ATIg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_Lakmn48qEeq5HrfdV5ATIg" x="-1" y="57"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_LakmoI8qEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_7bTjoIhpEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_LakmoY8qEeq5HrfdV5ATIg" points="[2430, 575, -643984, -643984]$[2310, 418, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Lakmoo8qEeq5HrfdV5ATIg" id="(0.4,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Lakmo48qEeq5HrfdV5ATIg" id="(0.8092485549132948,0.9805825242718447)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_Lakm2I8qEeq5HrfdV5ATIg" type="Generalization_Edge" source="_Lakmxo8qEeq5HrfdV5ATIg" target="_Laj_kY8qEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_Lakm2Y8qEeq5HrfdV5ATIg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_Lakm2o8qEeq5HrfdV5ATIg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_Lakm248qEeq5HrfdV5ATIg" x="1" y="58"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_Lakm3I8qEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_L6mLIIhrEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_Lakm3Y8qEeq5HrfdV5ATIg" points="[2275, 315, -643984, -643984]$[1035, 173, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Lakm3o8qEeq5HrfdV5ATIg" id="(0.11560693641618497,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Lakm348qEeq5HrfdV5ATIg" id="(0.8910891089108911,0.9971988795518194)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_LalNso8qEeq5HrfdV5ATIg" type="Generalization_Edge" source="_Lal0oI8qEeq5HrfdV5ATIg" target="_Laj_kY8qEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_LalNs48qEeq5HrfdV5ATIg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_LalNtI8qEeq5HrfdV5ATIg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_LalNtY8qEeq5HrfdV5ATIg" y="59"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_LalNto8qEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_KmOZMIhrEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_LalNt48qEeq5HrfdV5ATIg" points="[1315, 315, -643984, -643984]$[1015, 173, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_LalNuI8qEeq5HrfdV5ATIg" id="(0.22857142857142856,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_LalNuY8qEeq5HrfdV5ATIg" id="(0.7920792079207921,0.9971988795518194)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_LalNyo8qEeq5HrfdV5ATIg" type="Generalization_Edge" source="_LakmiI8qEeq5HrfdV5ATIg" target="_LakmtI8qEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_LalNy48qEeq5HrfdV5ATIg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_8aQoAI80Eeq5HrfdV5ATIg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_LalNzI8qEeq5HrfdV5ATIg" x="-1" y="59"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_LalNzY8qEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_YDZI8IhrEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_LalNzo8qEeq5HrfdV5ATIg" points="[130, 50, -643984, -643984]$[550, -88, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_LalNz48qEeq5HrfdV5ATIg" id="(0.5970149253731343,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_LalN0I8qEeq5HrfdV5ATIg" id="(0.3191489361702128,0.996763754045307)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_LalN0Y8qEeq5HrfdV5ATIg" type="Generalization_Edge" source="_Lal0u48qEeq5HrfdV5ATIg" target="_Lal1F48qEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_LalN0o8qEeq5HrfdV5ATIg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_LalN048qEeq5HrfdV5ATIg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_LalN1I8qEeq5HrfdV5ATIg" x="1" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_LalN1Y8qEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_THXJQIhqEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_LalN1o8qEeq5HrfdV5ATIg" points="[1535, 755, -643984, -643984]$[1595, 618, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_LalN148qEeq5HrfdV5ATIg" id="(0.3468208092485549,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_LalN2I8qEeq5HrfdV5ATIg" id="(0.2777777777777778,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_LalN_Y8qEeq5HrfdV5ATIg" type="Generalization_Edge" source="_LambyI8qEeq5HrfdV5ATIg" target="_Lal0oI8qEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_LalN_o8qEeq5HrfdV5ATIg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_LalN_48qEeq5HrfdV5ATIg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_LalOAI8qEeq5HrfdV5ATIg" y="59"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_LalOAY8qEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_sErX4IhpEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_LalOAo8qEeq5HrfdV5ATIg" points="[1155, 515, -643984, -643984]$[1175, 418, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_LalOA48qEeq5HrfdV5ATIg" id="(0.45112781954887216,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_LalOBI8qEeq5HrfdV5ATIg" id="(0.11428571428571428,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_Lal0s48qEeq5HrfdV5ATIg" type="Generalization_Edge" source="_LalNoI8qEeq5HrfdV5ATIg" target="_Lakmxo8qEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_Lal0tI8qEeq5HrfdV5ATIg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_Lal0tY8qEeq5HrfdV5ATIg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_Lal0to8qEeq5HrfdV5ATIg" x="1" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_Lal0t48qEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_HRZLYIhrEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_Lal0uI8qEeq5HrfdV5ATIg" points="[2275, 555, -643984, -643984]$[2335, 417, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Lal0uY8qEeq5HrfdV5ATIg" id="(0.6091370558375635,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Lal0uo8qEeq5HrfdV5ATIg" id="(0.4624277456647399,0.9967637540453059)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_Lal0zY8qEeq5HrfdV5ATIg" type="Generalization_Edge" source="_Lal0_48qEeq5HrfdV5ATIg" target="_Lal07Y8qEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_Lal0zo8qEeq5HrfdV5ATIg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_Lal0z48qEeq5HrfdV5ATIg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_Lal00I8qEeq5HrfdV5ATIg" x="-1" y="58"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_Lal00Y8qEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_qQK34IhqEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_Lal00o8qEeq5HrfdV5ATIg" points="[2650, 795, -643984, -643984]$[2590, 658, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Lal0048qEeq5HrfdV5ATIg" id="(0.4,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Lal01I8qEeq5HrfdV5ATIg" id="(0.7804878048780488,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_Lal05Y8qEeq5HrfdV5ATIg" type="Generalization_Edge" source="_LakmpI8qEeq5HrfdV5ATIg" target="_Laj_kY8qEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_Lal05o8qEeq5HrfdV5ATIg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_Lal0548qEeq5HrfdV5ATIg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_Lal06I8qEeq5HrfdV5ATIg" y="59"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_Lal06Y8qEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_PzV-UIhrEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_Lal06o8qEeq5HrfdV5ATIg" points="[475, 315, -643984, -643984]$[875, 173, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Lal0648qEeq5HrfdV5ATIg" id="(0.6,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Lal07I8qEeq5HrfdV5ATIg" id="(0.09900990099009901,0.9971988795518194)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_Lal1D48qEeq5HrfdV5ATIg" type="Generalization_Edge" source="_LanCwI8qEeq5HrfdV5ATIg" target="_Lal0oI8qEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_Lal1EI8qEeq5HrfdV5ATIg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_Lal1EY8qEeq5HrfdV5ATIg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_Lal1Eo8qEeq5HrfdV5ATIg" x="-1" y="59"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_Lal1E48qEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_zEGoIIhpEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_Lal1FI8qEeq5HrfdV5ATIg" points="[1235, 515, -643984, -643984]$[1195, 418, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Lal1FY8qEeq5HrfdV5ATIg" id="(0.3418803418803419,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Lal1Fo8qEeq5HrfdV5ATIg" id="(0.22857142857142856,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_LambsI8qEeq5HrfdV5ATIg" type="Generalization_Edge" source="_Laj_kY8qEeq5HrfdV5ATIg" target="_LakmtI8qEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_LambsY8qEeq5HrfdV5ATIg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_8ass4I80Eeq5HrfdV5ATIg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_Lambso8qEeq5HrfdV5ATIg" x="-1" y="58"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_Lambs48qEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_YyIeQIhrEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_LambtI8qEeq5HrfdV5ATIg" points="[1150, 50, -643984, -643984]$[630, -88, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_LambtY8qEeq5HrfdV5ATIg" id="(0.297029702970297,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Lambto8qEeq5HrfdV5ATIg" id="(0.7446808510638298,0.996763754045307)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_LambuI8qEeq5HrfdV5ATIg" type="Generalization_Edge" source="_LalN248qEeq5HrfdV5ATIg" target="_Lal1F48qEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_LambuY8qEeq5HrfdV5ATIg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_Lambuo8qEeq5HrfdV5ATIg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_Lambu48qEeq5HrfdV5ATIg" x="-1" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_LambvI8qEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_ToeSQIhqEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_LambvY8qEeq5HrfdV5ATIg" points="[1715, 755, -643984, -643984]$[1655, 618, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Lambvo8qEeq5HrfdV5ATIg" id="(0.24390243902439024,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Lambv48qEeq5HrfdV5ATIg" id="(0.6944444444444444,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_LambwI8qEeq5HrfdV5ATIg" type="Generalization_Edge" source="_Lal07Y8qEeq5HrfdV5ATIg" target="_Lakmxo8qEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_LambwY8qEeq5HrfdV5ATIg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_Lambwo8qEeq5HrfdV5ATIg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_Lambw48qEeq5HrfdV5ATIg" x="-1" y="58"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_LambxI8qEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_uCkygIhqEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_LambxY8qEeq5HrfdV5ATIg" points="[2490, 555, -643984, -643984]$[2410, 418, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Lambxo8qEeq5HrfdV5ATIg" id="(0.2926829268292683,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Lambx48qEeq5HrfdV5ATIg" id="(0.9942196531791907,0.970873786407767)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_mJdKQJm6Eeq0jfmjFzaebA" type="Generalization_Edge" source="_hxfEcJm6Eeq0jfmjFzaebA" target="_Laj_kY8qEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_mJdKQ5m6Eeq0jfmjFzaebA" type="Generalization_StereotypeLabel">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_mJdKRJm6Eeq0jfmjFzaebA" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_mJdKQZm6Eeq0jfmjFzaebA"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_mI2tUJm6Eeq0jfmjFzaebA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_mJdKQpm6Eeq0jfmjFzaebA" points="[600, 320, -643984, -643984]$[1100, 171, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_mKpdEJm6Eeq0jfmjFzaebA" id="(0.8,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_mKpdEZm6Eeq0jfmjFzaebA" id="(0.0,0.9327731092436975)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_0s93AJm6Eeq0jfmjFzaebA" type="Generalization_Edge" source="_w1FmgJm6Eeq0jfmjFzaebA" target="_Laj_kY8qEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_0s93A5m6Eeq0jfmjFzaebA" type="Generalization_StereotypeLabel">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_0s93BJm6Eeq0jfmjFzaebA" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_0s93AZm6Eeq0jfmjFzaebA"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_0seHwJm6Eeq0jfmjFzaebA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_0s93Apm6Eeq0jfmjFzaebA" points="[460, 320, -643984, -643984]$[1100, 169, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_0uEDMJm6Eeq0jfmjFzaebA" id="(0.8,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_0uEDMZm6Eeq0jfmjFzaebA" id="(0.0,0.9159663865546218)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_HyzfcJm7Eeq0jfmjFzaebA" type="Generalization_Edge" source="_DSsxUJm7Eeq0jfmjFzaebA" target="_Lakmxo8qEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_Hy0GgJm7Eeq0jfmjFzaebA" type="Generalization_StereotypeLabel">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_Hy0GgZm7Eeq0jfmjFzaebA" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_HyzfcZm7Eeq0jfmjFzaebA"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_HyWzgJm7Eeq0jfmjFzaebA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_Hyzfcpm7Eeq0jfmjFzaebA" points="[2100, 560, -643984, -643984]$[2500, 400, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Hz0zIJm7Eeq0jfmjFzaebA" id="(0.7947019867549668,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Hz0zIZm7Eeq0jfmjFzaebA" id="(0.0,0.7766990291262136)"/>
+ </edges>
+ </notation:Diagram>
+ <notation:Diagram xmi:id="_8ZhpMI8pEeq5HrfdV5ATIg" type="PapyrusUMLProfileDiagram" name="Vision_layers" measurementUnit="Pixel">
+ <children xmi:type="notation:Shape" xmi:id="_D9vorY8qEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_D9voro8qEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_D9vor48qEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_D9vosI8qEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_-r78AIhrEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_D9vosY8qEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_D9voso8qEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#___G0EIhrEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_D9vos48qEeq5HrfdV5ATIg"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_D9votI8qEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_D9votY8qEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_D9voto8qEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_D9vot48qEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_D9vouI8qEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_D9vouY8qEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_D9vouo8qEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_D9vou48qEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_D9vovI8qEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_9D3yAIhrEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_D9vowI8qEeq5HrfdV5ATIg" x="17490" y="1090"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_D9vow48qEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_D9voxI8qEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_D9voxY8qEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_D9voxo8qEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_D9vox48qEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_D9voyI8qEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_D9voyY8qEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_D9voyo8qEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_D9voy48qEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_D9vozI8qEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_D9vozY8qEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_D9vozo8qEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_FiUlAIhsEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_D9vo0o8qEeq5HrfdV5ATIg" x="17890" y="1090"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_D9wPoI8qEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_D9wPoY8qEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_D9wPoo8qEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_D9wPo48qEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_D9wPpI8qEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_D9wPpY8qEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_D9wPpo8qEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_D9wPp48qEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_D9wPqI8qEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_D9wPqY8qEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_D9wPqo8qEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_D9wPq48qEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_ExzHAIhsEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_D9wPr48qEeq5HrfdV5ATIg" x="17730" y="1090"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_D9wPsI8qEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_D9wPsY8qEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_D9wPso8qEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_D9wPs48qEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_D9wPtI8qEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_D9wPtY8qEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_D9wPto8qEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_D9wPt48qEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_D9wPuI8qEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_D9wPuY8qEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_D9wPuo8qEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_D9wPu48qEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_iLwgEIhrEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_D9wPv48qEeq5HrfdV5ATIg" x="17830" y="690"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_D9wPwI8qEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_D9wPwY8qEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_D9wPwo8qEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_D9wPw48qEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_507w0IhrEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_D9wPxI8qEeq5HrfdV5ATIg"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_D9wPxY8qEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_D9wPxo8qEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_D9wPx48qEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_D9wPyI8qEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_D9wPyY8qEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_D9wPyo8qEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_D9wPy48qEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_D9wPzI8qEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_D9wPzY8qEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_2p5YMIhrEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_D9wP0Y8qEeq5HrfdV5ATIg" x="17970" y="870"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_D9wP0o8qEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_D9wP048qEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_D9wP1I8qEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_D9wP1Y8qEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_xJ4sQIhrEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_D9wP1o8qEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_D9wP148qEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_yEO0oIhrEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_D9wP2I8qEeq5HrfdV5ATIg"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_D9wP2Y8qEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_D9wP2o8qEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_D9wP248qEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_D9wP3I8qEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_D9wP3Y8qEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_D9wP3o8qEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_D9wP348qEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_D9wP4I8qEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_D9wP4Y8qEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_t32TwIhrEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_D9wP5Y8qEeq5HrfdV5ATIg" x="17610" y="870"/>
+ </children>
+ <styles xmi:type="notation:StringValueStyle" xmi:id="_8ZhpMY8pEeq5HrfdV5ATIg" name="diagram_compatibility_version" stringValue="1.4.0"/>
+ <styles xmi:type="notation:DiagramStyle" xmi:id="_8ZhpMo8pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="style:PapyrusDiagramStyle" xmi:id="_8ZhpM48pEeq5HrfdV5ATIg" diagramKindId="org.eclipse.papyrus.uml.diagram.profile">
+ <owner xmi:type="uml:Profile" href="AIML.profile.uml#_IDYhIH13EeqSHNFOHg2_Jw"/>
+ </styles>
+ <styles xmi:type="notation:EObjectListValueStyle" xmi:id="_y_tHYK8YEeqhVOlV64dXmA" name="css_stylesheets" eObjectListValue="_mci3oJm1Eeq8nv7tV9lOqQ"/>
+ <element xmi:type="uml:Profile" href="AIML.profile.uml#_IDYhIH13EeqSHNFOHg2_Jw"/>
+ <edges xmi:type="notation:Connector" xmi:id="_D9vBgI8qEeq5HrfdV5ATIg" type="Generalization_Edge" source="_D9wP0o8qEeq5HrfdV5ATIg" target="_D9wPsI8qEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_D9vBgY8qEeq5HrfdV5ATIg" type="Generalization_StereotypeLabel">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_D9vBgo8qEeq5HrfdV5ATIg" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_D9vBg48qEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_MhVlkIhsEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_D9vBhI8qEeq5HrfdV5ATIg" points="[17740, 860, -643984, -643984]$[17860, 780, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_D9vBhY8qEeq5HrfdV5ATIg" id="(0.7035175879396985,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_D9vBho8qEeq5HrfdV5ATIg" id="(0.4,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_D9vokY8qEeq5HrfdV5ATIg" type="Generalization_Edge" source="_D9wPwI8qEeq5HrfdV5ATIg" target="_D9wPsI8qEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_D9voko8qEeq5HrfdV5ATIg" type="Generalization_StereotypeLabel">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_D9vok48qEeq5HrfdV5ATIg" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_D9volI8qEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_L7Zm8IhsEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_D9volY8qEeq5HrfdV5ATIg" points="[18060, 860, -643984, -643984]$[17900, 780, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_D9volo8qEeq5HrfdV5ATIg" id="(0.4694835680751174,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_D9vol48qEeq5HrfdV5ATIg" id="(0.8,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_D9vomI8qEeq5HrfdV5ATIg" type="Generalization_Edge" source="_D9wPoI8qEeq5HrfdV5ATIg" target="_D9wP0o8qEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_D9vomY8qEeq5HrfdV5ATIg" type="Generalization_StereotypeLabel">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_D9vomo8qEeq5HrfdV5ATIg" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_D9vom48qEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_KqD64IhsEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_D9vonI8qEeq5HrfdV5ATIg" points="[17780, 1080, -643984, -643984]$[17700, 978, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_D9vonY8qEeq5HrfdV5ATIg" id="(0.46153846153846156,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_D9vono8qEeq5HrfdV5ATIg" id="(0.5025125628140703,0.9971988795518204)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_D9von48qEeq5HrfdV5ATIg" type="Generalization_Edge" source="_D9vorY8qEeq5HrfdV5ATIg" target="_D9wP0o8qEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_D9vooI8qEeq5HrfdV5ATIg" type="Generalization_StereotypeLabel">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_D9vooY8qEeq5HrfdV5ATIg" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_D9vooo8qEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_KFjfoIhsEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_D9voo48qEeq5HrfdV5ATIg" points="[17620, 1080, -643984, -643984]$[17640, 978, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_D9vopI8qEeq5HrfdV5ATIg" id="(0.6763285024154589,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_D9vopY8qEeq5HrfdV5ATIg" id="(0.20100502512562815,0.9971988795518204)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_D9vopo8qEeq5HrfdV5ATIg" type="Generalization_Edge" source="_D9vow48qEeq5HrfdV5ATIg" target="_D9wP0o8qEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_D9vop48qEeq5HrfdV5ATIg" type="Generalization_StereotypeLabel">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_D9voqI8qEeq5HrfdV5ATIg" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_D9voqY8qEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_LUKn0IhsEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_D9voqo8qEeq5HrfdV5ATIg" points="[17940, 1080, -643984, -643984]$[17760, 978, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_D9voq48qEeq5HrfdV5ATIg" id="(0.46511627906976744,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_D9vorI8qEeq5HrfdV5ATIg" id="(0.8040201005025126,0.9971988795518204)"/>
+ </edges>
+ </notation:Diagram>
+ <notation:Diagram xmi:id="_-5u8II8pEeq5HrfdV5ATIg" type="PapyrusUMLProfileDiagram" name="DataParallel_layers_(multi-GPU, distributed)" measurementUnit="Pixel">
+ <children xmi:type="notation:Shape" xmi:id="_BNa2B48qEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_BNa2CI8qEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_BNa2CY8qEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_BNa2Co8qEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_BNa2C48qEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_BNa2DI8qEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_BNa2DY8qEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_BNa2Do8qEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_BNa2D48qEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_BNa2EI8qEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_BNa2EY8qEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_BNa2Eo8qEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_2bnZsIhtEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_BNa2Fo8qEeq5HrfdV5ATIg" x="18650" y="950"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_BNa2F48qEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_BNa2GI8qEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_BNa2GY8qEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_BNa2Go8qEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_rBanQIhtEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_BNa2G48qEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_BNa2HI8qEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_r6Q60IhtEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_BNa2HY8qEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_BNa2Ho8qEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_stpfkIhtEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_BNa2H48qEeq5HrfdV5ATIg"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_BNa2II8qEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_BNa2IY8qEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_BNa2Io8qEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_BNa2I48qEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_BNa2JI8qEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_BNa2JY8qEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_BNa2Jo8qEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_BNa2J48qEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_BNa2KI8qEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_jq9XEIhtEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_BNa2LI8qEeq5HrfdV5ATIg" x="18370" y="690"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_BNa2LY8qEeq5HrfdV5ATIg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_BNa2Lo8qEeq5HrfdV5ATIg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_BNa2L48qEeq5HrfdV5ATIg" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_BNa2MI8qEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_vpBrkIhtEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_BNa2MY8qEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_BNa2Mo8qEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_xG4JoIhtEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_BNa2M48qEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_BNa2NI8qEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_yJonIIhtEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_BNa2NY8qEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_BNa2No8qEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_zcpuMIhtEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_BNa2N48qEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_BNa2OI8qEeq5HrfdV5ATIg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_1KdT0IhtEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_BNa2OY8qEeq5HrfdV5ATIg"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_BNa2Oo8qEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_BNa2O48qEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_BNa2PI8qEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_BNa2PY8qEeq5HrfdV5ATIg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_BNa2Po8qEeq5HrfdV5ATIg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_BNa2P48qEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_BNa2QI8qEeq5HrfdV5ATIg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_BNa2QY8qEeq5HrfdV5ATIg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_BNa2Qo8qEeq5HrfdV5ATIg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_tsGr4IhtEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_BNa2Ro8qEeq5HrfdV5ATIg" x="18310" y="950"/>
+ </children>
+ <styles xmi:type="notation:StringValueStyle" xmi:id="_-5u8IY8pEeq5HrfdV5ATIg" name="diagram_compatibility_version" stringValue="1.4.0"/>
+ <styles xmi:type="notation:DiagramStyle" xmi:id="_-5u8Io8pEeq5HrfdV5ATIg"/>
+ <styles xmi:type="style:PapyrusDiagramStyle" xmi:id="_-5u8I48pEeq5HrfdV5ATIg" diagramKindId="org.eclipse.papyrus.uml.diagram.profile">
+ <owner xmi:type="uml:Profile" href="AIML.profile.uml#_IDYhIH13EeqSHNFOHg2_Jw"/>
+ </styles>
+ <styles xmi:type="notation:EObjectListValueStyle" xmi:id="_z8xzoK8YEeqhVOlV64dXmA" name="css_stylesheets" eObjectListValue="_mci3oJm1Eeq8nv7tV9lOqQ"/>
+ <element xmi:type="uml:Profile" href="AIML.profile.uml#_IDYhIH13EeqSHNFOHg2_Jw"/>
+ <edges xmi:type="notation:Connector" xmi:id="_BNaO8I8qEeq5HrfdV5ATIg" type="Generalization_Edge" source="_BNa2LY8qEeq5HrfdV5ATIg" target="_BNa2F48qEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_BNaO8Y8qEeq5HrfdV5ATIg" type="Generalization_StereotypeLabel">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_BNaO8o8qEeq5HrfdV5ATIg" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_BNaO848qEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_5KbJUIhtEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_BNaO9I8qEeq5HrfdV5ATIg" points="[18420, 940, -643984, -643984]$[18440, 814, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_BNaO9Y8qEeq5HrfdV5ATIg" id="(0.44280442804428044,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_BNaO9o8qEeq5HrfdV5ATIg" id="(0.3225806451612903,0.9975308641975306)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_BNa2AI8qEeq5HrfdV5ATIg" type="Generalization_Edge" source="_BNa2B48qEeq5HrfdV5ATIg" target="_BNa2F48qEeq5HrfdV5ATIg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_BNa2AY8qEeq5HrfdV5ATIg" type="Generalization_StereotypeLabel">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_BNa2Ao8qEeq5HrfdV5ATIg" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_BNa2A48qEeq5HrfdV5ATIg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_4pLdcIhtEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_BNa2BI8qEeq5HrfdV5ATIg" points="[18680, 940, -643984, -643984]$[18560, 814, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_BNa2BY8qEeq5HrfdV5ATIg" id="(0.30303030303030304,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_BNa2Bo8qEeq5HrfdV5ATIg" id="(0.8064516129032258,0.9975308641975306)"/>
+ </edges>
+ </notation:Diagram>
+ <notation:Diagram xmi:id="_3Dkw8JT3Eeq5BK6mmo2rWg" type="PapyrusUMLProfileDiagram" name="Convolution_layers" measurementUnit="Pixel">
+ <children xmi:type="notation:Shape" xmi:id="_O7mR6K8WEeqhVOlV64dXmA" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_O7mR6a8WEeqhVOlV64dXmA" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_O7mR6q8WEeqhVOlV64dXmA" visible="false" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_O7mR668WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_O7mR7K8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_O7mR7a8WEeqhVOlV64dXmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_O7mR7q8WEeqhVOlV64dXmA"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_O7mR768WEeqhVOlV64dXmA" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_O7mR8K8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_O7mR8a8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_O7mR8q8WEeqhVOlV64dXmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_O7mR868WEeqhVOlV64dXmA"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_AfPLEIVKEeqvud4Ae2T3Lg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_O7mR968WEeqhVOlV64dXmA" x="580" y="800" width="121" height="61"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_O7mR-K8WEeqhVOlV64dXmA" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_O7mR-a8WEeqhVOlV64dXmA" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_O7mR-q8WEeqhVOlV64dXmA" visible="false" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_O7mR-68WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_O7mR_K8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_O7mR_a8WEeqhVOlV64dXmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_O7mR_q8WEeqhVOlV64dXmA"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_O7mR_68WEeqhVOlV64dXmA" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_O7mSAK8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_O7mSAa8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_O7mSAq8WEeqhVOlV64dXmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_O7mSA68WEeqhVOlV64dXmA"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_6j6cIIVJEeqvud4Ae2T3Lg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_O7mSB68WEeqhVOlV64dXmA" x="300" y="800" height="61"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_O7m48K8WEeqhVOlV64dXmA" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_O7m48a8WEeqhVOlV64dXmA" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_O7m48q8WEeqhVOlV64dXmA" visible="false" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_O7m4868WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_O7m49K8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_O7m49a8WEeqhVOlV64dXmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_O7m49q8WEeqhVOlV64dXmA"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_O7m4968WEeqhVOlV64dXmA" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_O7m4-K8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_O7m4-a8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_O7m4-q8WEeqhVOlV64dXmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_O7m4-68WEeqhVOlV64dXmA"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_2Ej78IVJEeqvud4Ae2T3Lg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_O7m4_68WEeqhVOlV64dXmA" x="160" y="800" height="61"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_O7m5AK8WEeqhVOlV64dXmA" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_O7m5Aa8WEeqhVOlV64dXmA" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_O7m5Aq8WEeqhVOlV64dXmA" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_O7m5A68WEeqhVOlV64dXmA" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_NbNPsKSuEeqmTOsCAzVBxg"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_O7m5BK8WEeqhVOlV64dXmA"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_O7m5Ba8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_O7m5Bq8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_O7m5B68WEeqhVOlV64dXmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_O7m5CK8WEeqhVOlV64dXmA"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_O7m5Ca8WEeqhVOlV64dXmA" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_O7m5Cq8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_O7m5C68WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_O7m5DK8WEeqhVOlV64dXmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_O7m5Da8WEeqhVOlV64dXmA"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_37PHIKStEeqmTOsCAzVBxg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_O7m5Ea8WEeqhVOlV64dXmA" x="480" y="420" width="241" height="61"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_O7m5Iq8WEeqhVOlV64dXmA" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_O7m5I68WEeqhVOlV64dXmA" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_O7m5JK8WEeqhVOlV64dXmA" visible="false" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_O7m5Ja8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_O7m5Jq8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_O7m5J68WEeqhVOlV64dXmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_O7m5KK8WEeqhVOlV64dXmA"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_O7m5Ka8WEeqhVOlV64dXmA" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_O7m5Kq8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_O7m5K68WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_O7m5LK8WEeqhVOlV64dXmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_O7m5La8WEeqhVOlV64dXmA"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_08Tc0KG4EeqsNvCDUfZJVA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_O7m5Ma8WEeqhVOlV64dXmA" x="920" y="800" width="121" height="58"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_O7m5Mq8WEeqhVOlV64dXmA" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_O7m5M68WEeqhVOlV64dXmA" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_O7m5NK8WEeqhVOlV64dXmA" visible="false" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_O7m5Na8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_O7m5Nq8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_O7m5N68WEeqhVOlV64dXmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_O7m5OK8WEeqhVOlV64dXmA"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_O7m5Oa8WEeqhVOlV64dXmA" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_O7m5Oq8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_O7m5O68WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_O7m5PK8WEeqhVOlV64dXmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_O7m5Pa8WEeqhVOlV64dXmA"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#__Er4oIVJEeqvud4Ae2T3Lg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_O7m5Qa8WEeqhVOlV64dXmA" x="440" y="800" width="121" height="61"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_O7ngJa8WEeqhVOlV64dXmA" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_O7ngJq8WEeqhVOlV64dXmA" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_O7ngJ68WEeqhVOlV64dXmA" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_O7ngKK8WEeqhVOlV64dXmA" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_SowbcKG1EeqsNvCDUfZJVA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_O7ngKa8WEeqhVOlV64dXmA"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_O7ngKq8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_O7ngK68WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_O7ngLK8WEeqhVOlV64dXmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_O7ngLa8WEeqhVOlV64dXmA"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_O7ngLq8WEeqhVOlV64dXmA" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_O7ngL68WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_O7ngMK8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_O7ngMa8WEeqhVOlV64dXmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_O7ngMq8WEeqhVOlV64dXmA"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_RBqh0KG1EeqsNvCDUfZJVA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_O7ngNq8WEeqhVOlV64dXmA" x="440" y="700" width="261" height="61"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_O7ngN68WEeqhVOlV64dXmA" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_O7ngOK8WEeqhVOlV64dXmA" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_O7ngOa8WEeqhVOlV64dXmA" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_O7ngOq8WEeqhVOlV64dXmA" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_etxlIKG4EeqsNvCDUfZJVA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_O7ngO68WEeqhVOlV64dXmA"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_O7ngPK8WEeqhVOlV64dXmA" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_f_57YKG4EeqsNvCDUfZJVA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_O7ngPa8WEeqhVOlV64dXmA"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_O7ngPq8WEeqhVOlV64dXmA" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_hwRFwKG4EeqsNvCDUfZJVA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_O7ngP68WEeqhVOlV64dXmA"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_O7ngQK8WEeqhVOlV64dXmA" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_i2jYYKG4EeqsNvCDUfZJVA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_O7ngQa8WEeqhVOlV64dXmA"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_O7ngQq8WEeqhVOlV64dXmA" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_lF9PMKG4EeqsNvCDUfZJVA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_O7ngQ68WEeqhVOlV64dXmA"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_O7ngRK8WEeqhVOlV64dXmA" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_mtJ2gKG4EeqsNvCDUfZJVA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_O7ngRa8WEeqhVOlV64dXmA"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_O7ngRq8WEeqhVOlV64dXmA" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_oTAaAKG4EeqsNvCDUfZJVA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_O7ngR68WEeqhVOlV64dXmA"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_O7ngSK8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_O7ngSa8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_O7ngSq8WEeqhVOlV64dXmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_O7ngS68WEeqhVOlV64dXmA"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_O7ngTK8WEeqhVOlV64dXmA" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_O7ngTa8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_O7ngTq8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_O7ngT68WEeqhVOlV64dXmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_O7ngUK8WEeqhVOlV64dXmA"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_d-jusKG4EeqsNvCDUfZJVA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_O7ngVK8WEeqhVOlV64dXmA" x="780" y="560" width="261" height="161"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_O7oHEK8WEeqhVOlV64dXmA" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_O7oHEa8WEeqhVOlV64dXmA" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_O7oHEq8WEeqhVOlV64dXmA" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_O7oHE68WEeqhVOlV64dXmA" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_7rUZ4KG1EeqsNvCDUfZJVA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_O7oHFK8WEeqhVOlV64dXmA"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_O7oHFa8WEeqhVOlV64dXmA" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_85lj0KG1EeqsNvCDUfZJVA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_O7oHFq8WEeqhVOlV64dXmA"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_O7oHF68WEeqhVOlV64dXmA" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_ak_cwKG2EeqsNvCDUfZJVA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_O7oHGK8WEeqhVOlV64dXmA"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_O7oHGa8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_O7oHGq8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_O7oHG68WEeqhVOlV64dXmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_O7oHHK8WEeqhVOlV64dXmA"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_O7oHHa8WEeqhVOlV64dXmA" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_O7oHHq8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_O7oHH68WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_O7oHIK8WEeqhVOlV64dXmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_O7oHIa8WEeqhVOlV64dXmA"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_5JUXMKG1EeqsNvCDUfZJVA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_O7oHJa8WEeqhVOlV64dXmA" x="260" y="560" width="241" height="101"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_O7oHJq8WEeqhVOlV64dXmA" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_O7oHJ68WEeqhVOlV64dXmA" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_O7oHKK8WEeqhVOlV64dXmA" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_O7oHKa8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_O7oHKq8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_O7oHK68WEeqhVOlV64dXmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_O7oHLK8WEeqhVOlV64dXmA"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_O7oHLa8WEeqhVOlV64dXmA" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_O7oHLq8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_O7oHL68WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_O7oHMK8WEeqhVOlV64dXmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_O7oHMa8WEeqhVOlV64dXmA"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_8w4C8IVJEeqvud4Ae2T3Lg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_O7oHNa8WEeqhVOlV64dXmA" x="540" y="560"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_O7oHNq8WEeqhVOlV64dXmA" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_O7oHN68WEeqhVOlV64dXmA" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_O7oHOK8WEeqhVOlV64dXmA" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_O7oHOa8WEeqhVOlV64dXmA" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_MKi_YH5qEeqSHNFOHg2_Jw"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_O7oHOq8WEeqhVOlV64dXmA"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_O7oHO68WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_O7oHPK8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_O7oHPa8WEeqhVOlV64dXmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_O7oHPq8WEeqhVOlV64dXmA"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_O7oHP68WEeqhVOlV64dXmA" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_O7oHQK8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_O7oHQa8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_O7oHQq8WEeqhVOlV64dXmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_O7oHQ68WEeqhVOlV64dXmA"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_ISZCEH5qEeqSHNFOHg2_Jw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_O7oHR68WEeqhVOlV64dXmA" x="60" y="220" width="181" height="61"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_O7oHSK8WEeqhVOlV64dXmA" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_O7oHSa8WEeqhVOlV64dXmA" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_O7oHSq8WEeqhVOlV64dXmA" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_O7oHS68WEeqhVOlV64dXmA" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_ZsHuAH5qEeqSHNFOHg2_Jw"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_O7oHTK8WEeqhVOlV64dXmA"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_O7oHTa8WEeqhVOlV64dXmA" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_a-bqcH5qEeqSHNFOHg2_Jw"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_O7oHTq8WEeqhVOlV64dXmA"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_O7oHT68WEeqhVOlV64dXmA" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_bcYxwH5qEeqSHNFOHg2_Jw"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_O7oHUK8WEeqhVOlV64dXmA"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_O7oHUa8WEeqhVOlV64dXmA" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_cR75sH5qEeqSHNFOHg2_Jw"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_O7oHUq8WEeqhVOlV64dXmA"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_O7oHU68WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_O7oHVK8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_O7oHVa8WEeqhVOlV64dXmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_O7oHVq8WEeqhVOlV64dXmA"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_O7oHV68WEeqhVOlV64dXmA" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_O7oHWK8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_O7oHWa8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_O7oHWq8WEeqhVOlV64dXmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_O7oHW68WEeqhVOlV64dXmA"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_YZ54MH5qEeqSHNFOHg2_Jw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_O7oHX68WEeqhVOlV64dXmA" x="60" y="20" width="381" height="121"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_O7oHYK8WEeqhVOlV64dXmA" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_O7oHYa8WEeqhVOlV64dXmA" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_O7oHYq8WEeqhVOlV64dXmA" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_O7oHY68WEeqhVOlV64dXmA" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_SSgFUKG6EeqsNvCDUfZJVA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_O7oHZK8WEeqhVOlV64dXmA"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_O7oHZa8WEeqhVOlV64dXmA" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_ZHdK8KG6EeqsNvCDUfZJVA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_O7ouIK8WEeqhVOlV64dXmA"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_O7ouIa8WEeqhVOlV64dXmA" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_chtrUKG6EeqsNvCDUfZJVA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_O7ouIq8WEeqhVOlV64dXmA"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_O7ouI68WEeqhVOlV64dXmA" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_iro28KG6EeqsNvCDUfZJVA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_O7ouJK8WEeqhVOlV64dXmA"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_O7ouJa8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_O7ouJq8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_O7ouJ68WEeqhVOlV64dXmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_O7ouKK8WEeqhVOlV64dXmA"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_O7ouKa8WEeqhVOlV64dXmA" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_O7ouKq8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_O7ouK68WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_O7ouLK8WEeqhVOlV64dXmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_O7ouLa8WEeqhVOlV64dXmA"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_Ip7BgKG6EeqsNvCDUfZJVA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_O7ouMa8WEeqhVOlV64dXmA" x="780" y="340" width="261"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_O7ouMq8WEeqhVOlV64dXmA" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_O7ouM68WEeqhVOlV64dXmA" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_O7ouNK8WEeqhVOlV64dXmA" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_O7ouNa8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_O7ouNq8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_O7ouN68WEeqhVOlV64dXmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_O7ouOK8WEeqhVOlV64dXmA"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_O7ouOa8WEeqhVOlV64dXmA" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_O7ouOq8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_O7ouO68WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_O7ouPK8WEeqhVOlV64dXmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_O7ouPa8WEeqhVOlV64dXmA"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_anKPYH5pEeqSHNFOHg2_Jw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_O7ouQa8WEeqhVOlV64dXmA" x="280" y="220" width="161" height="61"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_O7ouYa8WEeqhVOlV64dXmA" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_O7ouYq8WEeqhVOlV64dXmA" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_O7ouY68WEeqhVOlV64dXmA" visible="false" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_O7ouZK8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_O7ouZa8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_O7ouZq8WEeqhVOlV64dXmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_O7ouZ68WEeqhVOlV64dXmA"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_O7ouaK8WEeqhVOlV64dXmA" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_O7ouaa8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_O7ouaq8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_O7oua68WEeqhVOlV64dXmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_O7oubK8WEeqhVOlV64dXmA"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_34MmMKG4EeqsNvCDUfZJVA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_O7oucK8WEeqhVOlV64dXmA" x="780" y="800" height="61"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_O7ouca8WEeqhVOlV64dXmA" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_O7oucq8WEeqhVOlV64dXmA" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_O7ouc68WEeqhVOlV64dXmA" visible="false" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_O7oudK8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_O7ouda8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_O7oudq8WEeqhVOlV64dXmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_O7oud68WEeqhVOlV64dXmA"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_O7oueK8WEeqhVOlV64dXmA" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_O7ouea8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_O7oueq8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_O7oue68WEeqhVOlV64dXmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_O7oufK8WEeqhVOlV64dXmA"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_g_SxQKG3EeqsNvCDUfZJVA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_O7ougK8WEeqhVOlV64dXmA" x="40" y="800" height="61"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_O7pVOK8WEeqhVOlV64dXmA" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_O7pVOa8WEeqhVOlV64dXmA" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_O7pVOq8WEeqhVOlV64dXmA" type="Stereotype_AttributeCompartment">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_O7pVO68WEeqhVOlV64dXmA" source="PapyrusCSSForceValue">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_O7pVPK8WEeqhVOlV64dXmA" key="collapsed" value="true"/>
+ </eAnnotations>
+ <children xmi:type="notation:Shape" xmi:id="_O7pVPa8WEeqhVOlV64dXmA" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_xLDlAH5nEeqSHNFOHg2_Jw"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_O7pVPq8WEeqhVOlV64dXmA"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_O7pVP68WEeqhVOlV64dXmA" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_PgB_YH5oEeqSHNFOHg2_Jw"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_O7pVQK8WEeqhVOlV64dXmA"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_O7pVQa8WEeqhVOlV64dXmA" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_RrmfEH5oEeqSHNFOHg2_Jw"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_O7pVQq8WEeqhVOlV64dXmA"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_O7pVQ68WEeqhVOlV64dXmA" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_UPxE8H5oEeqSHNFOHg2_Jw"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_O7pVRK8WEeqhVOlV64dXmA"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_O7pVRa8WEeqhVOlV64dXmA" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_NJHtgKG2EeqsNvCDUfZJVA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_O7pVRq8WEeqhVOlV64dXmA"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_O7pVR68WEeqhVOlV64dXmA" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_Ou9p8KG2EeqsNvCDUfZJVA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_O7pVSK8WEeqhVOlV64dXmA"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_O7pVSa8WEeqhVOlV64dXmA" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_SXLt0KG2EeqsNvCDUfZJVA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_O7pVSq8WEeqhVOlV64dXmA"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_O7pVS68WEeqhVOlV64dXmA" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_THvoEKG2EeqsNvCDUfZJVA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_O7pVTK8WEeqhVOlV64dXmA"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_O7pVTa8WEeqhVOlV64dXmA" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_UiUvsKG2EeqsNvCDUfZJVA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_O7pVTq8WEeqhVOlV64dXmA"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_O7pVT68WEeqhVOlV64dXmA" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_kn6TMKG2EeqsNvCDUfZJVA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_O7pVUK8WEeqhVOlV64dXmA"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_O7pVUa8WEeqhVOlV64dXmA" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_bGMOcKStEeqmTOsCAzVBxg"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_O7pVUq8WEeqhVOlV64dXmA"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_O7pVU68WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_O7pVVK8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_O7pVVa8WEeqhVOlV64dXmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_O7pVVq8WEeqhVOlV64dXmA"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_O7pVV68WEeqhVOlV64dXmA" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_O7pVWK8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_O7pVWa8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_O7pVWq8WEeqhVOlV64dXmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_O7pVW68WEeqhVOlV64dXmA"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_5DtswH2KEeqSHNFOHg2_Jw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_O7pVX68WEeqhVOlV64dXmA" x="480" y="160" width="241" height="221"/>
+ </children>
+ <styles xmi:type="notation:StringValueStyle" xmi:id="_3DkxwZT3Eeq5BK6mmo2rWg" name="diagram_compatibility_version" stringValue="1.4.0"/>
+ <styles xmi:type="notation:DiagramStyle" xmi:id="_3DkxwpT3Eeq5BK6mmo2rWg"/>
+ <styles xmi:type="style:PapyrusDiagramStyle" xmi:id="_3Dkxw5T3Eeq5BK6mmo2rWg" diagramKindId="org.eclipse.papyrus.uml.diagram.profile">
+ <owner xmi:type="uml:Profile" href="AIML.profile.uml#_Nr2NYJOPEeqnY_bZg2Ebjg"/>
+ </styles>
+ <styles xmi:type="notation:EObjectListValueStyle" xmi:id="_KngOIJnbEeqZJ7Fgbu454w" name="css_stylesheets" eObjectListValue="_mci3oJm1Eeq8nv7tV9lOqQ"/>
+ <edges xmi:type="notation:Connector" xmi:id="_3DkxxJT3Eeq5BK6mmo2rWg" type="Generalization_Edge">
+ <children xmi:type="notation:DecorationNode" xmi:id="_3DkxxZT3Eeq5BK6mmo2rWg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_3DkxxpT3Eeq5BK6mmo2rWg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_3Dkxx5T3Eeq5BK6mmo2rWg" y="59"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_3DkxyJT3Eeq5BK6mmo2rWg"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_3DkxyZT3Eeq5BK6mmo2rWg" points="[-676, 628, -643984, -643984]$[-716, 418, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_3DkxypT3Eeq5BK6mmo2rWg" id="(0.6,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_3Dkxy5T3Eeq5BK6mmo2rWg" id="(0.7373271889400922,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_3DkxzJT3Eeq5BK6mmo2rWg" type="Generalization_Edge">
+ <children xmi:type="notation:DecorationNode" xmi:id="_3DkxzZT3Eeq5BK6mmo2rWg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_3DkxzpT3Eeq5BK6mmo2rWg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_3Dkxz5T3Eeq5BK6mmo2rWg" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_3Dkx0JT3Eeq5BK6mmo2rWg"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_3Dkx0ZT3Eeq5BK6mmo2rWg" points="[-1356, 628, -643984, -643984]$[-1336, 475, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_3Dkx0pT3Eeq5BK6mmo2rWg" id="(0.6,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_3Dkx05T3Eeq5BK6mmo2rWg" id="(0.4608294930875576,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_3Dkx1JT3Eeq5BK6mmo2rWg" type="Generalization_Edge">
+ <children xmi:type="notation:DecorationNode" xmi:id="_3Dkx1ZT3Eeq5BK6mmo2rWg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_3Dkx1pT3Eeq5BK6mmo2rWg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_3Dkx15T3Eeq5BK6mmo2rWg" x="1" y="58"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_3Dkx2JT3Eeq5BK6mmo2rWg"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_3Dkx2ZT3Eeq5BK6mmo2rWg" points="[-1760, 1362, -643984, -643984]$[-1440, 1207, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_3Dkx2pT3Eeq5BK6mmo2rWg" id="(0.54,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_3Dkx25T3Eeq5BK6mmo2rWg" id="(0.4608294930875576,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_3Dkx3JT3Eeq5BK6mmo2rWg" type="Generalization_Edge">
+ <children xmi:type="notation:DecorationNode" xmi:id="_3Dkx3ZT3Eeq5BK6mmo2rWg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_3Dkx3pT3Eeq5BK6mmo2rWg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_3Dkx35T3Eeq5BK6mmo2rWg" x="1" y="58"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_3Dkx4JT3Eeq5BK6mmo2rWg"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_3Dkx4ZT3Eeq5BK6mmo2rWg" points="[-576, -350, -643984, -643984]$[-516, -399, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_3Dkx4pT3Eeq5BK6mmo2rWg" id="(0.8248587570621468,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_3Dkx45T3Eeq5BK6mmo2rWg" id="(0.3081761006289308,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_3Dkx5JT3Eeq5BK6mmo2rWg" type="Generalization_Edge">
+ <children xmi:type="notation:DecorationNode" xmi:id="_3Dkx5ZT3Eeq5BK6mmo2rWg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_3Dkx5pT3Eeq5BK6mmo2rWg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_3Dkx55T3Eeq5BK6mmo2rWg" x="-1" y="58"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_3Dkx6JT3Eeq5BK6mmo2rWg"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_3Dkx6ZT3Eeq5BK6mmo2rWg" points="[-1216, 628, -643984, -643984]$[-1336, 475, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_3Dkx6pT3Eeq5BK6mmo2rWg" id="(0.5660377358490566,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_3Dkx65T3Eeq5BK6mmo2rWg" id="(0.4608294930875576,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_3Dkx7JT3Eeq5BK6mmo2rWg" type="Generalization_Edge">
+ <children xmi:type="notation:DecorationNode" xmi:id="_3Dkx7ZT3Eeq5BK6mmo2rWg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_3Dkx7pT3Eeq5BK6mmo2rWg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_3Dkx75T3Eeq5BK6mmo2rWg" x="-1" y="57"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_3Dkx8JT3Eeq5BK6mmo2rWg"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_3Dkx8ZT3Eeq5BK6mmo2rWg" points="[-916, 628, -643984, -643984]$[-1356, 475, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_3Dkx8pT3Eeq5BK6mmo2rWg" id="(0.7547169811320755,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_3Dkx85T3Eeq5BK6mmo2rWg" id="(0.3686635944700461,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_3Dkx9JT3Eeq5BK6mmo2rWg" type="Generalization_Edge">
+ <children xmi:type="notation:DecorationNode" xmi:id="_3Dkx9ZT3Eeq5BK6mmo2rWg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_3Dkx9pT3Eeq5BK6mmo2rWg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_3Dkx95T3Eeq5BK6mmo2rWg" x="-1" y="58"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_3Dkx-JT3Eeq5BK6mmo2rWg"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_3Dkx-ZT3Eeq5BK6mmo2rWg" points="[-1096, 628, -643984, -643984]$[-1336, 475, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_3Dkx-pT3Eeq5BK6mmo2rWg" id="(0.37735849056603776,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_3Dkx-5T3Eeq5BK6mmo2rWg" id="(0.4608294930875576,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_3Dkx_JT3Eeq5BK6mmo2rWg" type="Generalization_Edge">
+ <children xmi:type="notation:DecorationNode" xmi:id="_3Dkx_ZT3Eeq5BK6mmo2rWg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_3Dkx_pT3Eeq5BK6mmo2rWg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_3Dkx_5T3Eeq5BK6mmo2rWg" y="58"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_3DkyAJT3Eeq5BK6mmo2rWg"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_3DkyAZT3Eeq5BK6mmo2rWg" points="[-1640, 1360, -643984, -643984]$[-1440, 1207, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_3DkyApT3Eeq5BK6mmo2rWg" id="(0.4,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_3DkyA5T3Eeq5BK6mmo2rWg" id="(0.4858757062146893,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_3DkyBJT3Eeq5BK6mmo2rWg" type="Generalization_Edge">
+ <children xmi:type="notation:DecorationNode" xmi:id="_3DkyBZT3Eeq5BK6mmo2rWg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_3DkyBpT3Eeq5BK6mmo2rWg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_3DkyB5T3Eeq5BK6mmo2rWg" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_3DkyCJT3Eeq5BK6mmo2rWg"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_3DkyCZT3Eeq5BK6mmo2rWg" points="[-416, 628, -643984, -643984]$[-416, 411, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_3DkyCpT3Eeq5BK6mmo2rWg" id="(0.6,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_3DkyC5T3Eeq5BK6mmo2rWg" id="(0.7373271889400922,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_3DkyDJT3Eeq5BK6mmo2rWg" type="Generalization_Edge">
+ <children xmi:type="notation:DecorationNode" xmi:id="_3DkyDZT3Eeq5BK6mmo2rWg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_3DkyDpT3Eeq5BK6mmo2rWg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_3DkyD5T3Eeq5BK6mmo2rWg" x="-1" y="58"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_3DkyEJT3Eeq5BK6mmo2rWg"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_3DkyEZT3Eeq5BK6mmo2rWg" points="[-576, 310, -643984, -643984]$[-670, 270, -643984, -643984]$[-959, 161, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_3DkyEpT3Eeq5BK6mmo2rWg" id="(0.0,0.02)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_3DkyE5T3Eeq5BK6mmo2rWg" id="(0.8238993710691824,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_3DkyFJT3Eeq5BK6mmo2rWg" type="Generalization_Edge">
+ <children xmi:type="notation:DecorationNode" xmi:id="_3DkyFZT3Eeq5BK6mmo2rWg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_3DkyFpT3Eeq5BK6mmo2rWg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_3DkyF5T3Eeq5BK6mmo2rWg" y="59"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_3DkyGJT3Eeq5BK6mmo2rWg"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_3DkyGZT3Eeq5BK6mmo2rWg" points="[-370, -270, -643984, -643984]$[-370, -379, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_3DkyGpT3Eeq5BK6mmo2rWg" id="(0.30414746543778803,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_3DkyG5T3Eeq5BK6mmo2rWg" id="(0.6163522012578616,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_O7lq0K8WEeqhVOlV64dXmA" type="Generalization_Edge" source="_O7oHYK8WEeqhVOlV64dXmA" target="_O7pVOK8WEeqhVOlV64dXmA">
+ <children xmi:type="notation:DecorationNode" xmi:id="_O7lq0a8WEeqhVOlV64dXmA" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="__xikQPjcEeq6c-2opUmylw" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_O7lq0q8WEeqhVOlV64dXmA" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_O7lq068WEeqhVOlV64dXmA"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_gvxQoKSuEeqmTOsCAzVBxg"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_O7lq1K8WEeqhVOlV64dXmA" points="[780, 360, -643984, -643984]$[681, 360, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_O7lq1a8WEeqhVOlV64dXmA" id="(0.0,0.136986301369863)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_O7lq1q8WEeqhVOlV64dXmA" id="(1.0,0.9049773755656109)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_O7mR4K8WEeqhVOlV64dXmA" type="Generalization_Edge" source="_O7oHNq8WEeqhVOlV64dXmA" target="_O7oHSK8WEeqhVOlV64dXmA" routing="Rectilinear">
+ <children xmi:type="notation:DecorationNode" xmi:id="_O7mR4a8WEeqhVOlV64dXmA" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_O7mR4q8WEeqhVOlV64dXmA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_O7mR468WEeqhVOlV64dXmA" y="59"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_O7mR5K8WEeqhVOlV64dXmA"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_J9Ae4H5sEeqSHNFOHg2_Jw"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_O7mR5a8WEeqhVOlV64dXmA" points="[160, 220, -643984, -643984]$[160, 180, -643984, -643984]$[160, 141, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_O7mR5q8WEeqhVOlV64dXmA" id="(0.5524861878453039,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_O7mR568WEeqhVOlV64dXmA" id="(0.26246719160104987,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_O7mSCK8WEeqhVOlV64dXmA" type="Generalization_Edge" source="_O7ngJa8WEeqhVOlV64dXmA" target="_O7oHEK8WEeqhVOlV64dXmA">
+ <children xmi:type="notation:DecorationNode" xmi:id="_O7mSCa8WEeqhVOlV64dXmA" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_O7mSCq8WEeqhVOlV64dXmA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_O7mSC68WEeqhVOlV64dXmA" y="59"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_O7mSDK8WEeqhVOlV64dXmA"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_RL6_IKG3EeqsNvCDUfZJVA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_O7mSDa8WEeqhVOlV64dXmA" points="[460, 880, -643984, -643984]$[460, 820, -643984, -643984]$[460, 781, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_O7mSDq8WEeqhVOlV64dXmA" id="(0.07662835249042145,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_O7mSD68WEeqhVOlV64dXmA" id="(0.8298755186721992,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_O7mSEK8WEeqhVOlV64dXmA" type="Generalization_Edge" source="_O7ouYa8WEeqhVOlV64dXmA" target="_O7ngN68WEeqhVOlV64dXmA">
+ <children xmi:type="notation:DecorationNode" xmi:id="_O7mSEa8WEeqhVOlV64dXmA" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_O7mSEq8WEeqhVOlV64dXmA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_O7mSE68WEeqhVOlV64dXmA" y="59"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_O7mSFK8WEeqhVOlV64dXmA"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_L9aA8KG5EeqsNvCDUfZJVA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_O7mSFa8WEeqhVOlV64dXmA" points="[880, 800, -643984, -643984]$[880, 760, -643984, -643984]$[840, 760, -643984, -643984]$[840, 721, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_O7mSFq8WEeqhVOlV64dXmA" id="(0.5309734513274337,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_O7mSF68WEeqhVOlV64dXmA" id="(0.22988505747126436,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_O7m5Eq8WEeqhVOlV64dXmA" type="Generalization_Edge" source="_O7pVOK8WEeqhVOlV64dXmA" target="_O7oHSK8WEeqhVOlV64dXmA" routing="Rectilinear">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_GcXyoPjfEeq6c-2opUmylw" source="PapyrusCSSForceValue">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_GcXyofjfEeq6c-2opUmylw" key="routing" value="true"/>
+ </eAnnotations>
+ <children xmi:type="notation:DecorationNode" xmi:id="_O7m5E68WEeqhVOlV64dXmA" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_O7m5FK8WEeqhVOlV64dXmA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_O7m5Fa8WEeqhVOlV64dXmA" x="1" y="58"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_O7m5Fq8WEeqhVOlV64dXmA"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_JBpp4H5sEeqSHNFOHg2_Jw"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_O7m5F68WEeqhVOlV64dXmA" points="[560, 160, -643984, -643984]$[560, 100, -643984, -643984]$[900, 100, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_O7m5GK8WEeqhVOlV64dXmA" id="(0.4979253112033195,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_O7m5Ga8WEeqhVOlV64dXmA" id="(1.0,0.6611570247933884)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_O7m5Gq8WEeqhVOlV64dXmA" type="Generalization_Edge" source="_O7mR6K8WEeqhVOlV64dXmA" target="_O7ngJa8WEeqhVOlV64dXmA">
+ <children xmi:type="notation:DecorationNode" xmi:id="_O7m5G68WEeqhVOlV64dXmA" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_O7m5HK8WEeqhVOlV64dXmA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_O7m5Ha8WEeqhVOlV64dXmA" x="-1" y="58"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_O7m5Hq8WEeqhVOlV64dXmA"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_Qt4YQKG3EeqsNvCDUfZJVA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_O7m5H68WEeqhVOlV64dXmA" points="[640, 920, -643984, -643984]$[640, 860, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_O7m5IK8WEeqhVOlV64dXmA" id="(0.49586776859504134,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_O7m5Ia8WEeqhVOlV64dXmA" id="(0.7662835249042146,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_O7ngAK8WEeqhVOlV64dXmA" type="Generalization_Edge" source="_O7ouMq8WEeqhVOlV64dXmA" target="_O7oHSK8WEeqhVOlV64dXmA" routing="Rectilinear">
+ <children xmi:type="notation:DecorationNode" xmi:id="_O7ngAa8WEeqhVOlV64dXmA" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_O7ngAq8WEeqhVOlV64dXmA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_O7ngA68WEeqhVOlV64dXmA" x="-1" y="58"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_O7ngBK8WEeqhVOlV64dXmA"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_Je4_gH5sEeqSHNFOHg2_Jw"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_O7ngBa8WEeqhVOlV64dXmA" points="[360, 220, -643984, -643984]$[360, 141, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_O7ngBq8WEeqhVOlV64dXmA" id="(0.4968944099378882,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_O7ngB68WEeqhVOlV64dXmA" id="(0.7874015748031497,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_O7ngCK8WEeqhVOlV64dXmA" type="Generalization_Edge" source="_O7ouca8WEeqhVOlV64dXmA" target="_O7oHEK8WEeqhVOlV64dXmA">
+ <children xmi:type="notation:DecorationNode" xmi:id="_O7ngCa8WEeqhVOlV64dXmA" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_O7ngCq8WEeqhVOlV64dXmA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_O7ngC68WEeqhVOlV64dXmA" x="-1" y="59"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_O7ngDK8WEeqhVOlV64dXmA"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_q1mIAKG3EeqsNvCDUfZJVA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_O7ngDa8WEeqhVOlV64dXmA" points="[80, 800, -643984, -643984]$[80, 720, -643984, -643984]$[320, 720, -643984, -643984]$[320, 661, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_O7ngDq8WEeqhVOlV64dXmA" id="(0.4,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_O7ngD68WEeqhVOlV64dXmA" id="(0.24896265560165975,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_O7ngEK8WEeqhVOlV64dXmA" type="Generalization_Edge" source="_O7oHEK8WEeqhVOlV64dXmA" target="_O7m5AK8WEeqhVOlV64dXmA" routing="Tree">
+ <children xmi:type="notation:DecorationNode" xmi:id="_O7ngEa8WEeqhVOlV64dXmA" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_JDepsPjdEeq6c-2opUmylw" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_O7ngEq8WEeqhVOlV64dXmA" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_O7ngE68WEeqhVOlV64dXmA"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_QvZkUKSuEeqmTOsCAzVBxg"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_O7ngFK8WEeqhVOlV64dXmA" points="[340, 770, -643984, -643984]$[340, 640, -643984, -643984]$[680, 640, -643984, -643984]$[680, 560, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_O7ngFa8WEeqhVOlV64dXmA" id="(0.33195020746887965,1.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_O7ngFq8WEeqhVOlV64dXmA" id="(0.8298755186721992,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_O7ngF68WEeqhVOlV64dXmA" type="Generalization_Edge" source="_O7ngN68WEeqhVOlV64dXmA" target="_O7m5AK8WEeqhVOlV64dXmA" routing="Tree">
+ <children xmi:type="notation:DecorationNode" xmi:id="_O7ngGK8WEeqhVOlV64dXmA" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_JE1UkPjdEeq6c-2opUmylw" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_O7ngGa8WEeqhVOlV64dXmA" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_O7ngGq8WEeqhVOlV64dXmA"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_Rvo5UKSuEeqmTOsCAzVBxg"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_O7ngG68WEeqhVOlV64dXmA" points="[920, 560, -643984, -643984]$[920, 520, -643984, -643984]$[600, 520, -643984, -643984]$[600, 481, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_O7ngHK8WEeqhVOlV64dXmA" id="(0.5363984674329502,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_O7ngHa8WEeqhVOlV64dXmA" id="(0.4979253112033195,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_O7ngHq8WEeqhVOlV64dXmA" type="Generalization_Edge" source="_O7m5AK8WEeqhVOlV64dXmA" target="_O7pVOK8WEeqhVOlV64dXmA">
+ <children xmi:type="notation:DecorationNode" xmi:id="_O7ngH68WEeqhVOlV64dXmA" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="__yEIsPjcEeq6c-2opUmylw" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_O7ngIK8WEeqhVOlV64dXmA" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_O7ngIa8WEeqhVOlV64dXmA"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_SbB_sKSuEeqmTOsCAzVBxg"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_O7ngIq8WEeqhVOlV64dXmA" points="[660, 420, -643984, -643984]$[660, 400, -643984, -643984]$[680, 400, -643984, -643984]$[680, 381, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_O7ngI68WEeqhVOlV64dXmA" id="(0.4979253112033195,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_O7ngJK8WEeqhVOlV64dXmA" id="(0.4979253112033195,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_O7ouQq8WEeqhVOlV64dXmA" type="Generalization_Edge" source="_O7mR-K8WEeqhVOlV64dXmA" target="_O7oHEK8WEeqhVOlV64dXmA">
+ <children xmi:type="notation:DecorationNode" xmi:id="_O7ouQ68WEeqhVOlV64dXmA" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_O7ouRK8WEeqhVOlV64dXmA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_O7ouRa8WEeqhVOlV64dXmA" y="59"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_O7ouRq8WEeqhVOlV64dXmA"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_pt11wKG3EeqsNvCDUfZJVA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_O7ouR68WEeqhVOlV64dXmA" points="[360, 800, -643984, -643984]$[360, 720, -643984, -643984]$[320, 720, -643984, -643984]$[320, 661, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_O7ouSK8WEeqhVOlV64dXmA" id="(0.6,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_O7ouSa8WEeqhVOlV64dXmA" id="(0.24896265560165975,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_O7ouSq8WEeqhVOlV64dXmA" type="Generalization_Edge" source="_O7oHJq8WEeqhVOlV64dXmA" target="_O7m5AK8WEeqhVOlV64dXmA" routing="Tree">
+ <children xmi:type="notation:DecorationNode" xmi:id="_O7ouS68WEeqhVOlV64dXmA" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_JFW5APjdEeq6c-2opUmylw" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_O7ouTK8WEeqhVOlV64dXmA" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_O7ouTa8WEeqhVOlV64dXmA"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_ROpsIKSuEeqmTOsCAzVBxg"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_O7ouTq8WEeqhVOlV64dXmA" points="[600, 560, -643984, -643984]$[600, 520, -643984, -643984]$[720, 520, -643984, -643984]$[720, 481, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_O7ouT68WEeqhVOlV64dXmA" id="(0.5357142857142857,1.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_O7ouUK8WEeqhVOlV64dXmA" id="(0.8298755186721992,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_O7ouUa8WEeqhVOlV64dXmA" type="Generalization_Edge" source="_O7m48K8WEeqhVOlV64dXmA" target="_O7oHEK8WEeqhVOlV64dXmA">
+ <children xmi:type="notation:DecorationNode" xmi:id="_O7ouUq8WEeqhVOlV64dXmA" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_O7ouU68WEeqhVOlV64dXmA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_O7ouVK8WEeqhVOlV64dXmA" x="1" y="58"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_O7ouVa8WEeqhVOlV64dXmA"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_qNQVoKG3EeqsNvCDUfZJVA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_O7ouVq8WEeqhVOlV64dXmA" points="[200, 800, -643984, -643984]$[200, 720, -643984, -643984]$[320, 720, -643984, -643984]$[320, 661, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_O7ouV68WEeqhVOlV64dXmA" id="(0.4,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_O7ouWK8WEeqhVOlV64dXmA" id="(0.24896265560165975,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_O7ouWa8WEeqhVOlV64dXmA" type="Generalization_Edge" source="_O7m5Iq8WEeqhVOlV64dXmA" target="_O7ngN68WEeqhVOlV64dXmA">
+ <children xmi:type="notation:DecorationNode" xmi:id="_O7ouWq8WEeqhVOlV64dXmA" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_O7ouW68WEeqhVOlV64dXmA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_O7ouXK8WEeqhVOlV64dXmA" x="-2" y="57"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_O7ouXa8WEeqhVOlV64dXmA"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_KvNvgKG5EeqsNvCDUfZJVA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_O7ouXq8WEeqhVOlV64dXmA" points="[1020, 800, -643984, -643984]$[1020, 760, -643984, -643984]$[980, 760, -643984, -643984]$[980, 721, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_O7ouX68WEeqhVOlV64dXmA" id="(0.49586776859504134,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_O7ouYK8WEeqhVOlV64dXmA" id="(0.7662835249042146,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_O7pVMK8WEeqhVOlV64dXmA" type="Generalization_Edge" source="_O7m5Mq8WEeqhVOlV64dXmA" target="_O7ngJa8WEeqhVOlV64dXmA">
+ <children xmi:type="notation:DecorationNode" xmi:id="_O7pVMa8WEeqhVOlV64dXmA" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_O7pVMq8WEeqhVOlV64dXmA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_O7pVM68WEeqhVOlV64dXmA" x="-1" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_O7pVNK8WEeqhVOlV64dXmA"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_QScZcKG3EeqsNvCDUfZJVA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_O7pVNa8WEeqhVOlV64dXmA" points="[500, 920, -643984, -643984]$[500, 860, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_O7pVNq8WEeqhVOlV64dXmA" id="(0.49586776859504134,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_O7pVN68WEeqhVOlV64dXmA" id="(0.22988505747126436,1.0)"/>
+ </edges>
+ </notation:Diagram>
+ <notation:Diagram xmi:id="_xkHZcJUJEeqWd_6S3mbYXg" type="PapyrusUMLProfileDiagram" name="Module" measurementUnit="Pixel">
+ <children xmi:type="notation:Shape" xmi:id="_h8FXiKD4Eeqvvbr3PHPJ5Q" type="Stereotype_Shape">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_h8FXiaD4Eeqvvbr3PHPJ5Q" source="PapyrusCSSForceValue">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_h8FXiqD4Eeqvvbr3PHPJ5Q" key="canonical" value="true"/>
+ </eAnnotations>
+ <children xmi:type="notation:DecorationNode" xmi:id="_h8FXi6D4Eeqvvbr3PHPJ5Q" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_h8FXjKD4Eeqvvbr3PHPJ5Q" type="Stereotype_AttributeCompartment">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_BDTAYOawEeq2yMJqys2DtQ" source="PapyrusCSSForceValue">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_BDTncOawEeq2yMJqys2DtQ" key="mutable" value="true"/>
+ </eAnnotations>
+ <children xmi:type="notation:Shape" xmi:id="_h8FXjaD4Eeqvvbr3PHPJ5Q" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_7EMR4IhuEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_h8FXjqD4Eeqvvbr3PHPJ5Q"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_h8FXj6D4Eeqvvbr3PHPJ5Q" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_7vDMwIhuEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_h8FXkKD4Eeqvvbr3PHPJ5Q"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_h8FXkaD4Eeqvvbr3PHPJ5Q" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_9DLHEIhuEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_h8FXkqD4Eeqvvbr3PHPJ5Q"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_h8FXk6D4Eeqvvbr3PHPJ5Q" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_ivxlgIvAEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_h8FXlKD4Eeqvvbr3PHPJ5Q"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_A_YwwOawEeq2yMJqys2DtQ" type="Property_ClassAttributeLabel">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_BDTnceawEeq2yMJqys2DtQ" source="PapyrusCSSForceValue">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_BDTncuawEeq2yMJqys2DtQ" key="mutable" value="true"/>
+ </eAnnotations>
+ <element xmi:type="uml:Property" href="AIML.profile.uml#__N7qULYUEeq1Koq3J5meEA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_A_YwweawEeq2yMJqys2DtQ"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_A_YwwuawEeq2yMJqys2DtQ" type="Property_ClassAttributeLabel">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_BDTnc-awEeq2yMJqys2DtQ" source="PapyrusCSSForceValue">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_BDTndOawEeq2yMJqys2DtQ" key="mutable" value="true"/>
+ </eAnnotations>
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_AtDTsLYVEeq1Koq3J5meEA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_A_Yww-awEeq2yMJqys2DtQ"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_h8FXlaD4Eeqvvbr3PHPJ5Q"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_h8FXlqD4Eeqvvbr3PHPJ5Q"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_h8FXl6D4Eeqvvbr3PHPJ5Q"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_h8FXmKD4Eeqvvbr3PHPJ5Q"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_h8FXmaD4Eeqvvbr3PHPJ5Q" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_h8FXmqD4Eeqvvbr3PHPJ5Q"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_h8FXm6D4Eeqvvbr3PHPJ5Q"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_h8FXnKD4Eeqvvbr3PHPJ5Q"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_h8FXnaD4Eeqvvbr3PHPJ5Q"/>
+ </children>
+ <styles xmi:type="notation:CanonicalStyle" xmi:id="_h8FXnqD4Eeqvvbr3PHPJ5Q"/>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_2E9coH2KEeqSHNFOHg2_Jw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_h8FXoqD4Eeqvvbr3PHPJ5Q" x="386" y="323"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_h8FXpKD4Eeqvvbr3PHPJ5Q" type="Class_MetaclassShape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_h8FXpaD4Eeqvvbr3PHPJ5Q" type="Class_MetaclassNameLabel"/>
+ <element xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Class"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_h8FXtKD4Eeqvvbr3PHPJ5Q" x="404" y="111"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_Ti8EYPmcEeqCRcDdPeQY2A" type="StereotypeComment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_Ti8EYfmcEeqCRcDdPeQY2A"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_Ti8EY_mcEeqCRcDdPeQY2A" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Class"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Ti8EYvmcEeqCRcDdPeQY2A" x="604" y="111"/>
+ </children>
+ <styles xmi:type="notation:StringValueStyle" xmi:id="_xkHZcZUJEeqWd_6S3mbYXg" name="diagram_compatibility_version" stringValue="1.4.0"/>
+ <styles xmi:type="notation:DiagramStyle" xmi:id="_xkHZcpUJEeqWd_6S3mbYXg"/>
+ <styles xmi:type="style:PapyrusDiagramStyle" xmi:id="_xkHZc5UJEeqWd_6S3mbYXg" diagramKindId="org.eclipse.papyrus.uml.diagram.profile">
+ <owner xmi:type="uml:Profile" href="AIML.profile.uml#_u1dx8JT1Eeq5BK6mmo2rWg"/>
+ </styles>
+ <element xmi:type="uml:Profile" href="AIML.profile.uml#_u1dx8JT1Eeq5BK6mmo2rWg"/>
+ <edges xmi:type="notation:Connector" xmi:id="_h8KP-KD4Eeqvvbr3PHPJ5Q" type="Extension_Edge" source="_h8FXiKD4Eeqvvbr3PHPJ5Q" target="_h8FXpKD4Eeqvvbr3PHPJ5Q">
+ <styles xmi:type="notation:FontStyle" xmi:id="_h8KP-aD4Eeqvvbr3PHPJ5Q"/>
+ <element xmi:type="uml:Extension" href="AIML.profile.uml#_n3BRAH5rEeqSHNFOHg2_Jw"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_h8KP-qD4Eeqvvbr3PHPJ5Q" points="[376, 320, -643984, -643984]$[0, 0, -643984, -643984]"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_Ti8EZPmcEeqCRcDdPeQY2A" type="StereotypeCommentLink" source="_h8FXpKD4Eeqvvbr3PHPJ5Q" target="_Ti8EYPmcEeqCRcDdPeQY2A">
+ <styles xmi:type="notation:FontStyle" xmi:id="_Ti8EZfmcEeqCRcDdPeQY2A"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_Ti8EafmcEeqCRcDdPeQY2A" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Class"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_Ti8EZvmcEeqCRcDdPeQY2A" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Ti8EZ_mcEeqCRcDdPeQY2A"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Ti8EaPmcEeqCRcDdPeQY2A"/>
+ </edges>
+ </notation:Diagram>
+ <notation:Diagram xmi:id="_yrEacJUJEeqWd_6S3mbYXg" type="PapyrusUMLProfileDiagram" name="Tensor" measurementUnit="Pixel">
+ <children xmi:type="notation:Shape" xmi:id="_XZMIMJUKEeqWd_6S3mbYXg" type="Stereotype_Shape">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_XZMIMZUKEeqWd_6S3mbYXg" source="PapyrusCSSForceValue">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_XZMIMpUKEeqWd_6S3mbYXg" key="canonical" value="true"/>
+ </eAnnotations>
+ <children xmi:type="notation:DecorationNode" xmi:id="_XZMIM5UKEeqWd_6S3mbYXg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_XZMINJUKEeqWd_6S3mbYXg" type="Stereotype_AttributeCompartment">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_XZMINZUKEeqWd_6S3mbYXg" source="PapyrusCSSForceValue">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_XZMINpUKEeqWd_6S3mbYXg" key="mutable" value="true"/>
+ </eAnnotations>
+ <children xmi:type="notation:Shape" xmi:id="_XZMIN5UKEeqWd_6S3mbYXg" type="Property_ClassAttributeLabel">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_XZMIOJUKEeqWd_6S3mbYXg" source="PapyrusCSSForceValue">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_XZMIOZUKEeqWd_6S3mbYXg" key="mutable" value="true"/>
+ </eAnnotations>
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_mlHloIhuEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_XZMIOpUKEeqWd_6S3mbYXg"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_XZMIO5UKEeqWd_6S3mbYXg" type="Property_ClassAttributeLabel">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_XZMIPJUKEeqWd_6S3mbYXg" source="PapyrusCSSForceValue">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_XZMIPZUKEeqWd_6S3mbYXg" key="mutable" value="true"/>
+ </eAnnotations>
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_ncDNoIhuEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_XZMIPpUKEeqWd_6S3mbYXg"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_XZMIP5UKEeqWd_6S3mbYXg" type="Property_ClassAttributeLabel">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_XZMIQJUKEeqWd_6S3mbYXg" source="PapyrusCSSForceValue">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_XZMIQZUKEeqWd_6S3mbYXg" key="mutable" value="true"/>
+ </eAnnotations>
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_oUgfoIhuEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_XZMIQpUKEeqWd_6S3mbYXg"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_XZMIQ5UKEeqWd_6S3mbYXg" type="Property_ClassAttributeLabel">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_XZMIRJUKEeqWd_6S3mbYXg" source="PapyrusCSSForceValue">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_XZMIRZUKEeqWd_6S3mbYXg" key="mutable" value="true"/>
+ </eAnnotations>
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_o5TOwIhuEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_XZMIRpUKEeqWd_6S3mbYXg"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_XZMIR5UKEeqWd_6S3mbYXg" type="Property_ClassAttributeLabel">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_XZMISJUKEeqWd_6S3mbYXg" source="PapyrusCSSForceValue">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_XZMISZUKEeqWd_6S3mbYXg" key="mutable" value="true"/>
+ </eAnnotations>
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_pnJzQIhuEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_XZMISpUKEeqWd_6S3mbYXg"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_MZFSoK7mEeqHv_gpM7iTmA" type="Property_ClassAttributeLabel">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_MgvZ0K7mEeqHv_gpM7iTmA" source="PapyrusCSSForceValue">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_MgwA4K7mEeqHv_gpM7iTmA" key="mutable" value="true"/>
+ </eAnnotations>
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_wocFsKWvEeq2dLYfuMvqgg"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_MZFSoa7mEeqHv_gpM7iTmA"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_MZHu4K7mEeqHv_gpM7iTmA" type="Property_ClassAttributeLabel">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_MgwA4a7mEeqHv_gpM7iTmA" source="PapyrusCSSForceValue">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_MgwA4q7mEeqHv_gpM7iTmA" key="mutable" value="true"/>
+ </eAnnotations>
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_xs8PoKWvEeq2dLYfuMvqgg"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_MZHu4a7mEeqHv_gpM7iTmA"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_XZMIS5UKEeqWd_6S3mbYXg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_XZMITJUKEeqWd_6S3mbYXg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_XZMITZUKEeqWd_6S3mbYXg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_XZMITpUKEeqWd_6S3mbYXg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_XZMIT5UKEeqWd_6S3mbYXg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_XZMIUJUKEeqWd_6S3mbYXg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_XZMIUZUKEeqWd_6S3mbYXg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_XZMIUpUKEeqWd_6S3mbYXg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_XZMIU5UKEeqWd_6S3mbYXg"/>
+ </children>
+ <styles xmi:type="notation:CanonicalStyle" xmi:id="_XZMIVJUKEeqWd_6S3mbYXg"/>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_kkWnwIhuEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_XZMIWJUKEeqWd_6S3mbYXg" x="270" y="350"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_XZN9YJUKEeqWd_6S3mbYXg" type="Enumeration_Shape">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_XZN9YZUKEeqWd_6S3mbYXg" source="PapyrusCSSForceValue">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_XZN9YpUKEeqWd_6S3mbYXg" key="canonical" value="true"/>
+ </eAnnotations>
+ <children xmi:type="notation:DecorationNode" xmi:id="_XZN9Y5UKEeqWd_6S3mbYXg" type="Enumeration_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_XZN9ZJUKEeqWd_6S3mbYXg" type="Enumeration_LiteralCompartment">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_XZN9ZZUKEeqWd_6S3mbYXg" source="PapyrusCSSForceValue">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_XZN9ZpUKEeqWd_6S3mbYXg" key="mutable" value="true"/>
+ </eAnnotations>
+ <children xmi:type="notation:Shape" xmi:id="_XZN9Z5UKEeqWd_6S3mbYXg" type="EnumerationLiteral_LiteralLabel">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_XZN9aJUKEeqWd_6S3mbYXg" source="PapyrusCSSForceValue">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_XZN9aZUKEeqWd_6S3mbYXg" key="mutable" value="true"/>
+ </eAnnotations>
+ <element xmi:type="uml:EnumerationLiteral" href="AIML.profile.uml#_GeF-8IvIEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_XZN9apUKEeqWd_6S3mbYXg"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_XZN9a5UKEeqWd_6S3mbYXg" type="EnumerationLiteral_LiteralLabel">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_XZN9bJUKEeqWd_6S3mbYXg" source="PapyrusCSSForceValue">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_XZN9bZUKEeqWd_6S3mbYXg" key="mutable" value="true"/>
+ </eAnnotations>
+ <element xmi:type="uml:EnumerationLiteral" href="AIML.profile.uml#_VdQs8IvIEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_XZN9bpUKEeqWd_6S3mbYXg"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_XZN9b5UKEeqWd_6S3mbYXg" type="EnumerationLiteral_LiteralLabel">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_XZN9cJUKEeqWd_6S3mbYXg" source="PapyrusCSSForceValue">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_XZN9cZUKEeqWd_6S3mbYXg" key="mutable" value="true"/>
+ </eAnnotations>
+ <element xmi:type="uml:EnumerationLiteral" href="AIML.profile.uml#_YIbSsIvIEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_XZN9cpUKEeqWd_6S3mbYXg"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_XZN9c5UKEeqWd_6S3mbYXg" type="EnumerationLiteral_LiteralLabel">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_XZN9dJUKEeqWd_6S3mbYXg" source="PapyrusCSSForceValue">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_XZN9dZUKEeqWd_6S3mbYXg" key="mutable" value="true"/>
+ </eAnnotations>
+ <element xmi:type="uml:EnumerationLiteral" href="AIML.profile.uml#_bZFyMIvIEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_XZN9dpUKEeqWd_6S3mbYXg"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_XZN9d5UKEeqWd_6S3mbYXg" type="EnumerationLiteral_LiteralLabel">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_XZN9eJUKEeqWd_6S3mbYXg" source="PapyrusCSSForceValue">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_XZN9eZUKEeqWd_6S3mbYXg" key="mutable" value="true"/>
+ </eAnnotations>
+ <element xmi:type="uml:EnumerationLiteral" href="AIML.profile.uml#_czCAoIvIEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_XZN9epUKEeqWd_6S3mbYXg"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_XZN9e5UKEeqWd_6S3mbYXg" type="EnumerationLiteral_LiteralLabel">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_XZN9fJUKEeqWd_6S3mbYXg" source="PapyrusCSSForceValue">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_XZN9fZUKEeqWd_6S3mbYXg" key="mutable" value="true"/>
+ </eAnnotations>
+ <element xmi:type="uml:EnumerationLiteral" href="AIML.profile.uml#_dzPgcIvIEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_XZN9fpUKEeqWd_6S3mbYXg"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_XZN9f5UKEeqWd_6S3mbYXg" type="EnumerationLiteral_LiteralLabel">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_XZN9gJUKEeqWd_6S3mbYXg" source="PapyrusCSSForceValue">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_XZN9gZUKEeqWd_6S3mbYXg" key="mutable" value="true"/>
+ </eAnnotations>
+ <element xmi:type="uml:EnumerationLiteral" href="AIML.profile.uml#_ez5sMIvIEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_XZN9gpUKEeqWd_6S3mbYXg"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_XZN9g5UKEeqWd_6S3mbYXg" type="EnumerationLiteral_LiteralLabel">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_XZN9hJUKEeqWd_6S3mbYXg" source="PapyrusCSSForceValue">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_XZN9hZUKEeqWd_6S3mbYXg" key="mutable" value="true"/>
+ </eAnnotations>
+ <element xmi:type="uml:EnumerationLiteral" href="AIML.profile.uml#_flb20IvIEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_XZN9hpUKEeqWd_6S3mbYXg"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_XZN9h5UKEeqWd_6S3mbYXg" type="EnumerationLiteral_LiteralLabel">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_XZN9iJUKEeqWd_6S3mbYXg" source="PapyrusCSSForceValue">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_XZN9iZUKEeqWd_6S3mbYXg" key="mutable" value="true"/>
+ </eAnnotations>
+ <element xmi:type="uml:EnumerationLiteral" href="AIML.profile.uml#_gV4cUIvIEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_XZN9ipUKEeqWd_6S3mbYXg"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_XZN9i5UKEeqWd_6S3mbYXg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_XZN9jJUKEeqWd_6S3mbYXg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_XZN9jZUKEeqWd_6S3mbYXg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_XZN9jpUKEeqWd_6S3mbYXg"/>
+ </children>
+ <styles xmi:type="notation:CanonicalStyle" xmi:id="_XZN9j5UKEeqWd_6S3mbYXg"/>
+ <element xmi:type="uml:Enumeration" href="AIML.profile.uml#_D6R-YIvIEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_XZN9k5UKEeqWd_6S3mbYXg" x="510" y="330"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_XZPLgJUKEeqWd_6S3mbYXg" type="Enumeration_Shape">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_XZPLgZUKEeqWd_6S3mbYXg" source="PapyrusCSSForceValue">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_XZPLgpUKEeqWd_6S3mbYXg" key="canonical" value="true"/>
+ </eAnnotations>
+ <children xmi:type="notation:DecorationNode" xmi:id="_XZPLg5UKEeqWd_6S3mbYXg" type="Enumeration_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_XZPLhJUKEeqWd_6S3mbYXg" type="Enumeration_LiteralCompartment">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_XZPLhZUKEeqWd_6S3mbYXg" source="PapyrusCSSForceValue">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_XZPLhpUKEeqWd_6S3mbYXg" key="mutable" value="true"/>
+ </eAnnotations>
+ <children xmi:type="notation:Shape" xmi:id="_XZPLh5UKEeqWd_6S3mbYXg" type="EnumerationLiteral_LiteralLabel">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_XZPLiJUKEeqWd_6S3mbYXg" source="PapyrusCSSForceValue">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_XZPLiZUKEeqWd_6S3mbYXg" key="mutable" value="true"/>
+ </eAnnotations>
+ <element xmi:type="uml:EnumerationLiteral" href="AIML.profile.uml#_FE7PwIvMEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_XZPLipUKEeqWd_6S3mbYXg"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_XZPLi5UKEeqWd_6S3mbYXg" type="EnumerationLiteral_LiteralLabel">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_XZPLjJUKEeqWd_6S3mbYXg" source="PapyrusCSSForceValue">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_XZPLjZUKEeqWd_6S3mbYXg" key="mutable" value="true"/>
+ </eAnnotations>
+ <element xmi:type="uml:EnumerationLiteral" href="AIML.profile.uml#_GM6ykIvMEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_XZPLjpUKEeqWd_6S3mbYXg"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_XZPLj5UKEeqWd_6S3mbYXg" type="EnumerationLiteral_LiteralLabel">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_XZPLkJUKEeqWd_6S3mbYXg" source="PapyrusCSSForceValue">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_XZPLkZUKEeqWd_6S3mbYXg" key="mutable" value="true"/>
+ </eAnnotations>
+ <element xmi:type="uml:EnumerationLiteral" href="AIML.profile.uml#_IXWp0IvMEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_XZPLkpUKEeqWd_6S3mbYXg"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_XZPLk5UKEeqWd_6S3mbYXg" type="EnumerationLiteral_LiteralLabel">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_XZPLlJUKEeqWd_6S3mbYXg" source="PapyrusCSSForceValue">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_XZPLlZUKEeqWd_6S3mbYXg" key="mutable" value="true"/>
+ </eAnnotations>
+ <element xmi:type="uml:EnumerationLiteral" href="AIML.profile.uml#_KEe6AIvMEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_XZPLlpUKEeqWd_6S3mbYXg"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_XZPLl5UKEeqWd_6S3mbYXg" type="EnumerationLiteral_LiteralLabel">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_XZPLmJUKEeqWd_6S3mbYXg" source="PapyrusCSSForceValue">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_XZPLmZUKEeqWd_6S3mbYXg" key="mutable" value="true"/>
+ </eAnnotations>
+ <element xmi:type="uml:EnumerationLiteral" href="AIML.profile.uml#_LzG_AIvMEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_XZPLmpUKEeqWd_6S3mbYXg"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_XZPLm5UKEeqWd_6S3mbYXg" type="EnumerationLiteral_LiteralLabel">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_XZPLnJUKEeqWd_6S3mbYXg" source="PapyrusCSSForceValue">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_XZPLnZUKEeqWd_6S3mbYXg" key="mutable" value="true"/>
+ </eAnnotations>
+ <element xmi:type="uml:EnumerationLiteral" href="AIML.profile.uml#_MmTWgIvMEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_XZPLnpUKEeqWd_6S3mbYXg"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_XZPLn5UKEeqWd_6S3mbYXg" type="EnumerationLiteral_LiteralLabel">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_XZPLoJUKEeqWd_6S3mbYXg" source="PapyrusCSSForceValue">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_XZPLoZUKEeqWd_6S3mbYXg" key="mutable" value="true"/>
+ </eAnnotations>
+ <element xmi:type="uml:EnumerationLiteral" href="AIML.profile.uml#_Ndwi8IvMEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_XZPLopUKEeqWd_6S3mbYXg"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_XZPLo5UKEeqWd_6S3mbYXg" type="EnumerationLiteral_LiteralLabel">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_XZPLpJUKEeqWd_6S3mbYXg" source="PapyrusCSSForceValue">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_XZPLpZUKEeqWd_6S3mbYXg" key="mutable" value="true"/>
+ </eAnnotations>
+ <element xmi:type="uml:EnumerationLiteral" href="AIML.profile.uml#_OHKFQIvMEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_XZPLppUKEeqWd_6S3mbYXg"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_XZPLp5UKEeqWd_6S3mbYXg" type="EnumerationLiteral_LiteralLabel">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_XZPLqJUKEeqWd_6S3mbYXg" source="PapyrusCSSForceValue">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_XZPLqZUKEeqWd_6S3mbYXg" key="mutable" value="true"/>
+ </eAnnotations>
+ <element xmi:type="uml:EnumerationLiteral" href="AIML.profile.uml#_O3f9EIvMEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_XZPLqpUKEeqWd_6S3mbYXg"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_XZPLq5UKEeqWd_6S3mbYXg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_XZPLrJUKEeqWd_6S3mbYXg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_XZPLrZUKEeqWd_6S3mbYXg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_XZPLrpUKEeqWd_6S3mbYXg"/>
+ </children>
+ <styles xmi:type="notation:CanonicalStyle" xmi:id="_XZPLr5UKEeqWd_6S3mbYXg"/>
+ <element xmi:type="uml:Enumeration" href="AIML.profile.uml#_AiQ84IvMEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_XZPLs5UKEeqWd_6S3mbYXg" x="730" y="330"/>
+ </children>
+ <styles xmi:type="notation:StringValueStyle" xmi:id="_yrEacZUJEeqWd_6S3mbYXg" name="diagram_compatibility_version" stringValue="1.4.0"/>
+ <styles xmi:type="notation:DiagramStyle" xmi:id="_yrEacpUJEeqWd_6S3mbYXg"/>
+ <styles xmi:type="style:PapyrusDiagramStyle" xmi:id="_yrEac5UJEeqWd_6S3mbYXg" diagramKindId="org.eclipse.papyrus.uml.diagram.profile">
+ <owner xmi:type="uml:Profile" href="AIML.profile.uml#_38DjAJT1Eeq5BK6mmo2rWg"/>
+ </styles>
+ <element xmi:type="uml:Profile" href="AIML.profile.uml#_38DjAJT1Eeq5BK6mmo2rWg"/>
+ </notation:Diagram>
+ <notation:Diagram xmi:id="_0Oxo4JUJEeqWd_6S3mbYXg" type="PapyrusUMLProfileDiagram" name="Type of Data" measurementUnit="Pixel">
+ <styles xmi:type="notation:StringValueStyle" xmi:id="_0Oxo4ZUJEeqWd_6S3mbYXg" name="diagram_compatibility_version" stringValue="1.4.0"/>
+ <styles xmi:type="notation:DiagramStyle" xmi:id="_0Oxo4pUJEeqWd_6S3mbYXg"/>
+ <styles xmi:type="style:PapyrusDiagramStyle" xmi:id="_0Oxo45UJEeqWd_6S3mbYXg" diagramKindId="org.eclipse.papyrus.uml.diagram.profile">
+ <owner xmi:type="uml:Package" href="AIML.profile.uml#_-8tiUJT1Eeq5BK6mmo2rWg"/>
+ </styles>
+ <element xmi:type="uml:Package" href="AIML.profile.uml#_-8tiUJT1Eeq5BK6mmo2rWg"/>
+ </notation:Diagram>
+ <notation:Diagram xmi:id="_10d0UJUJEeqWd_6S3mbYXg" type="PapyrusUMLProfileDiagram" name="Pooling_layers" measurementUnit="Pixel">
+ <children xmi:type="notation:Shape" xmi:id="_8sExCK8WEeqhVOlV64dXmA" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_8sExCa8WEeqhVOlV64dXmA" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_8sExCq8WEeqhVOlV64dXmA" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_8sExC68WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_8sExDK8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_8sExDa8WEeqhVOlV64dXmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8sExDq8WEeqhVOlV64dXmA"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_8sExD68WEeqhVOlV64dXmA" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_8sExEK8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_8sExEa8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_8sExEq8WEeqhVOlV64dXmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8sExE68WEeqhVOlV64dXmA"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_vkD30IVTEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8sExF68WEeqhVOlV64dXmA" x="970" y="550"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_8sExGK8WEeqhVOlV64dXmA" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_8sExGa8WEeqhVOlV64dXmA" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_8sExGq8WEeqhVOlV64dXmA" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_8sExG68WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_8sExHK8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_8sExHa8WEeqhVOlV64dXmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8sExHq8WEeqhVOlV64dXmA"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_8sExH68WEeqhVOlV64dXmA" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_8sExIK8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_8sExIa8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_8sExIq8WEeqhVOlV64dXmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8sExI68WEeqhVOlV64dXmA"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_nMBrUIVSEeqvavUi0dxRAw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8sExJ68WEeqhVOlV64dXmA" x="490" y="50"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_8sExKK8WEeqhVOlV64dXmA" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_8sExKa8WEeqhVOlV64dXmA" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_8sExKq8WEeqhVOlV64dXmA" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_8sExK68WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_8sExLK8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_8sExLa8WEeqhVOlV64dXmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8sExLq8WEeqhVOlV64dXmA"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_8sExL68WEeqhVOlV64dXmA" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_8sExMK8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_8sExMa8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_8sExMq8WEeqhVOlV64dXmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8sExM68WEeqhVOlV64dXmA"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_sAviEIVTEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8sExN68WEeqhVOlV64dXmA" x="1250" y="550"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_8sFYAK8WEeqhVOlV64dXmA" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_8sFYAa8WEeqhVOlV64dXmA" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_8sFYAq8WEeqhVOlV64dXmA" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_8sFYA68WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_8sFYBK8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_8sFYBa8WEeqhVOlV64dXmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8sFYBq8WEeqhVOlV64dXmA"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_8sFYB68WEeqhVOlV64dXmA" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_8sFYCK8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_8sFYCa8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_8sFYCq8WEeqhVOlV64dXmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8sFYC68WEeqhVOlV64dXmA"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_QF-D0IVUEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8sFYD68WEeqhVOlV64dXmA" x="-150" y="990"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_8sFYGK8WEeqhVOlV64dXmA" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_8sFYGa8WEeqhVOlV64dXmA" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_8sFYGq8WEeqhVOlV64dXmA" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_8sFYG68WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_8sFYHK8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_8sFYHa8WEeqhVOlV64dXmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8sFYHq8WEeqhVOlV64dXmA"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_8sFYH68WEeqhVOlV64dXmA" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_8sFYIK8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_8sFYIa8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_8sFYIq8WEeqhVOlV64dXmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8sFYI68WEeqhVOlV64dXmA"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_Y8sCUIVTEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8sFYJ68WEeqhVOlV64dXmA" x="1430" y="550"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_8sFYOK8WEeqhVOlV64dXmA" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_8sFYOa8WEeqhVOlV64dXmA" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_8sFYOq8WEeqhVOlV64dXmA" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_8sFYO68WEeqhVOlV64dXmA" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_tPrdkIVXEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_8sFYPK8WEeqhVOlV64dXmA"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_8sFYPa8WEeqhVOlV64dXmA" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_uGxdoIVXEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_8sFYPq8WEeqhVOlV64dXmA"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_8sFYP68WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_8sFYQK8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_8sFYQa8WEeqhVOlV64dXmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8sFYQq8WEeqhVOlV64dXmA"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_8sFYQ68WEeqhVOlV64dXmA" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_8sFYRK8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_8sFYRa8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_8sFYRq8WEeqhVOlV64dXmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8sFYR68WEeqhVOlV64dXmA"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_rL8rQIVXEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8sFYS68WEeqhVOlV64dXmA" x="-90" y="830"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_8sFYXK8WEeqhVOlV64dXmA" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_8sFYXa8WEeqhVOlV64dXmA" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_8sFYXq8WEeqhVOlV64dXmA" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_8sFYX68WEeqhVOlV64dXmA" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_vvW-UIVSEeqvavUi0dxRAw"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_8sFYYK8WEeqhVOlV64dXmA"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_8sFYYa8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_8sFYYq8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_8sFYY68WEeqhVOlV64dXmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8sFYZK8WEeqhVOlV64dXmA"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_8sFYZa8WEeqhVOlV64dXmA" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_8sFYZq8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_8sFYZ68WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_8sFYaK8WEeqhVOlV64dXmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8sFYaa8WEeqhVOlV64dXmA"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_spFw8IVSEeqvavUi0dxRAw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8sFYba8WEeqhVOlV64dXmA" x="1070" y="210"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_8sF_F68WEeqhVOlV64dXmA" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_8sF_GK8WEeqhVOlV64dXmA" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_8sF_Ga8WEeqhVOlV64dXmA" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_8sF_Gq8WEeqhVOlV64dXmA" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_CkDW8IVUEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_8sF_G68WEeqhVOlV64dXmA"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_8sF_HK8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_8sF_Ha8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_8sF_Hq8WEeqhVOlV64dXmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8sF_H68WEeqhVOlV64dXmA"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_8sF_IK8WEeqhVOlV64dXmA" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_8sF_Ia8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_8sF_Iq8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_8sF_I68WEeqhVOlV64dXmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8sF_JK8WEeqhVOlV64dXmA"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_qYSzAIVSEeqvavUi0dxRAw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8sF_KK8WEeqhVOlV64dXmA" x="330" y="210"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_8sF_Ma8WEeqhVOlV64dXmA" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_8sF_Mq8WEeqhVOlV64dXmA" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_8sF_M68WEeqhVOlV64dXmA" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_8sF_NK8WEeqhVOlV64dXmA" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_K3ga4IVUEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_8sF_Na8WEeqhVOlV64dXmA"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_8sF_Nq8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_8sF_N68WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_8sF_OK8WEeqhVOlV64dXmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8sF_Oa8WEeqhVOlV64dXmA"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_8sF_Oq8WEeqhVOlV64dXmA" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_8sF_O68WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_8sF_PK8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_8sF_Pa8WEeqhVOlV64dXmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8sF_Pq8WEeqhVOlV64dXmA"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_H6da8IVUEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8sF_Qq8WEeqhVOlV64dXmA" x="30" y="330"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_8sF_S68WEeqhVOlV64dXmA" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_8sF_TK8WEeqhVOlV64dXmA" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_8sF_Ta8WEeqhVOlV64dXmA" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_8sF_Tq8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_8sF_T68WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_8sF_UK8WEeqhVOlV64dXmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8sF_Ua8WEeqhVOlV64dXmA"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_8sF_Uq8WEeqhVOlV64dXmA" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_8sF_U68WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_8sF_VK8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_8sF_Va8WEeqhVOlV64dXmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8sF_Vq8WEeqhVOlV64dXmA"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_cdWFoIVTEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8sF_Wq8WEeqhVOlV64dXmA" x="1570" y="550"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_8sF_Y68WEeqhVOlV64dXmA" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_8sF_ZK8WEeqhVOlV64dXmA" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_8sF_Za8WEeqhVOlV64dXmA" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_8sF_Zq8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_8sF_Z68WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_8sF_aK8WEeqhVOlV64dXmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8sF_aa8WEeqhVOlV64dXmA"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_8sF_aq8WEeqhVOlV64dXmA" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_8sF_a68WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_8sF_bK8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_8sF_ba8WEeqhVOlV64dXmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8sF_bq8WEeqhVOlV64dXmA"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_2J_tMIVXEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8sF_cq8WEeqhVOlV64dXmA" x="90" y="990"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_8sF_c68WEeqhVOlV64dXmA" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_8sF_dK8WEeqhVOlV64dXmA" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_8sF_da8WEeqhVOlV64dXmA" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_8sF_dq8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_8sF_d68WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_8sF_eK8WEeqhVOlV64dXmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8sF_ea8WEeqhVOlV64dXmA"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_8sF_eq8WEeqhVOlV64dXmA" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_8sF_e68WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_8sF_fK8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_8sF_fa8WEeqhVOlV64dXmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8sF_fq8WEeqhVOlV64dXmA"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_XxquwIVVEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8sF_gq8WEeqhVOlV64dXmA" x="330" y="630"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_8sF_g68WEeqhVOlV64dXmA" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_8sF_hK8WEeqhVOlV64dXmA" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_8sF_ha8WEeqhVOlV64dXmA" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_8sF_hq8WEeqhVOlV64dXmA" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_cdy_UIVYEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_8sF_h68WEeqhVOlV64dXmA"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_8sF_iK8WEeqhVOlV64dXmA" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_dhzaAIVYEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_8sF_ia8WEeqhVOlV64dXmA"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_8sF_iq8WEeqhVOlV64dXmA" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_fG5IgIVYEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_8sF_i68WEeqhVOlV64dXmA"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_8sF_jK8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_8sF_ja8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_8sF_jq8WEeqhVOlV64dXmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8sF_j68WEeqhVOlV64dXmA"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_8sF_kK8WEeqhVOlV64dXmA" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_8sF_ka8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_8sF_kq8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_8sF_k68WEeqhVOlV64dXmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8sF_lK8WEeqhVOlV64dXmA"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_Y3zwEIVYEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8sF_mK8WEeqhVOlV64dXmA" x="710" y="370"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_8sGmIK8WEeqhVOlV64dXmA" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_8sGmIa8WEeqhVOlV64dXmA" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_8sGmIq8WEeqhVOlV64dXmA" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_8sGmI68WEeqhVOlV64dXmA" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_Y5DYIIVWEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_8sGmJK8WEeqhVOlV64dXmA"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_8sGmJa8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_8sGmJq8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_8sGmJ68WEeqhVOlV64dXmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8sGmKK8WEeqhVOlV64dXmA"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_8sGmKa8WEeqhVOlV64dXmA" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_8sGmKq8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_8sGmK68WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_8sGmLK8WEeqhVOlV64dXmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8sGmLa8WEeqhVOlV64dXmA"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_TS3LsIVWEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8sGmMa8WEeqhVOlV64dXmA" x="410" y="990"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_8sGmSq8WEeqhVOlV64dXmA" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_8sGmS68WEeqhVOlV64dXmA" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_8sGmTK8WEeqhVOlV64dXmA" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_8sGmTa8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_8sGmTq8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_8sGmT68WEeqhVOlV64dXmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8sGmUK8WEeqhVOlV64dXmA"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_8sGmUa8WEeqhVOlV64dXmA" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_8sGmUq8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_8sGmU68WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_8sGmVK8WEeqhVOlV64dXmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8sGmVa8WEeqhVOlV64dXmA"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_b9-hsIVWEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8sGmWa8WEeqhVOlV64dXmA" x="430" y="1130"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_8sGmWq8WEeqhVOlV64dXmA" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_8sGmW68WEeqhVOlV64dXmA" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_8sGmXK8WEeqhVOlV64dXmA" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_8sGmXa8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_8sGmXq8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_8sGmX68WEeqhVOlV64dXmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8sGmYK8WEeqhVOlV64dXmA"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_8sGmYa8WEeqhVOlV64dXmA" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_8sGmYq8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_8sGmY68WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_8sGmZK8WEeqhVOlV64dXmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8sGmZa8WEeqhVOlV64dXmA"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_uVbhgIVTEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8sGmaa8WEeqhVOlV64dXmA" x="1110" y="550"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_8sGmaq8WEeqhVOlV64dXmA" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_8sGma68WEeqhVOlV64dXmA" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_8sGmbK8WEeqhVOlV64dXmA" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_8sGmba8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_8sGmbq8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_8sGmb68WEeqhVOlV64dXmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8sGmcK8WEeqhVOlV64dXmA"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_8sGmca8WEeqhVOlV64dXmA" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_8sGmcq8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_8sGmc68WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_8sGmdK8WEeqhVOlV64dXmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8sGmda8WEeqhVOlV64dXmA"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_ddho4IVWEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8sGmea8WEeqhVOlV64dXmA" x="590" y="1130"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_8sGmeq8WEeqhVOlV64dXmA" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_8sGme68WEeqhVOlV64dXmA" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_8sGmfK8WEeqhVOlV64dXmA" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_8sGmfa8WEeqhVOlV64dXmA" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_mqeLgIVUEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_8sGmfq8WEeqhVOlV64dXmA"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_8sGmf68WEeqhVOlV64dXmA" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_jxSQMKZ3EeqIr7xwFiWQGQ"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_8sGmgK8WEeqhVOlV64dXmA"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_8sGmga8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_8sGmgq8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_8sGmg68WEeqhVOlV64dXmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8sGmhK8WEeqhVOlV64dXmA"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_8sGmha8WEeqhVOlV64dXmA" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_8sGmhq8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_8sGmh68WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_8sGmiK8WEeqhVOlV64dXmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8sGmia8WEeqhVOlV64dXmA"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_h3EG4IVUEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8sGmja8WEeqhVOlV64dXmA" x="-290" y="470"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_8sGmjq8WEeqhVOlV64dXmA" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_8sGmj68WEeqhVOlV64dXmA" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_8sGmkK8WEeqhVOlV64dXmA" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_8sGmka8WEeqhVOlV64dXmA" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_Ayj5QIVWEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_8sGmkq8WEeqhVOlV64dXmA"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_8sGmk68WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_8sGmlK8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_8sGmla8WEeqhVOlV64dXmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8sGmlq8WEeqhVOlV64dXmA"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_8sGml68WEeqhVOlV64dXmA" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_8sGmmK8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_8sGmma8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_8sGmmq8WEeqhVOlV64dXmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8sGmm68WEeqhVOlV64dXmA"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_6bJEMIVVEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8sGmn68WEeqhVOlV64dXmA" x="290" y="830" width="161" height="101"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_8sHNUK8WEeqhVOlV64dXmA" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_8sHNUa8WEeqhVOlV64dXmA" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_8sHNUq8WEeqhVOlV64dXmA" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_8sHNU68WEeqhVOlV64dXmA" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_KnpSkIVXEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_8sHNVK8WEeqhVOlV64dXmA"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_8sHNVa8WEeqhVOlV64dXmA" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_xBPDUKZ3EeqIr7xwFiWQGQ"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_8sHNVq8WEeqhVOlV64dXmA"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_8sHNV68WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_8sHNWK8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_8sHNWa8WEeqhVOlV64dXmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8sHNWq8WEeqhVOlV64dXmA"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_8sHNW68WEeqhVOlV64dXmA" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_8sHNXK8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_8sHNXa8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_8sHNXq8WEeqhVOlV64dXmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8sHNX68WEeqhVOlV64dXmA"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_Cfb1UIVXEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8sHNY68WEeqhVOlV64dXmA" x="10" y="650"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_8sHNdK8WEeqhVOlV64dXmA" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_8sHNda8WEeqhVOlV64dXmA" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_8sHNdq8WEeqhVOlV64dXmA" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_8sHNd68WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_8sHNeK8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_8sHNea8WEeqhVOlV64dXmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8sHNeq8WEeqhVOlV64dXmA"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_8sHNe68WEeqhVOlV64dXmA" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_8sHNfK8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_8sHNfa8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_8sHNfq8WEeqhVOlV64dXmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8sHNf68WEeqhVOlV64dXmA"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_1WhB0IVXEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8sHNg68WEeqhVOlV64dXmA" x="-30" y="990"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_8sHNhK8WEeqhVOlV64dXmA" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_8sH0QK8WEeqhVOlV64dXmA" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_8sH0Qa8WEeqhVOlV64dXmA" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_8sH0Qq8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_8sH0Q68WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_8sH0RK8WEeqhVOlV64dXmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8sH0Ra8WEeqhVOlV64dXmA"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_8sH0Rq8WEeqhVOlV64dXmA" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_8sH0R68WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_8sH0SK8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_8sH0Sa8WEeqhVOlV64dXmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8sH0Sq8WEeqhVOlV64dXmA"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_y5HSoIVUEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8sH0Tq8WEeqhVOlV64dXmA" x="-150" y="650"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_8sH0T68WEeqhVOlV64dXmA" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_8sH0UK8WEeqhVOlV64dXmA" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_8sH0Ua8WEeqhVOlV64dXmA" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_8sH0Uq8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_8sH0U68WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_8sH0VK8WEeqhVOlV64dXmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8sH0Va8WEeqhVOlV64dXmA"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_8sH0Vq8WEeqhVOlV64dXmA" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_8sH0V68WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_8sH0WK8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_8sH0Wa8WEeqhVOlV64dXmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8sH0Wq8WEeqhVOlV64dXmA"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_wYbekIVUEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8sH0Xq8WEeqhVOlV64dXmA" x="-270" y="650"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_8sH0X68WEeqhVOlV64dXmA" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_8sH0YK8WEeqhVOlV64dXmA" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_8sH0Ya8WEeqhVOlV64dXmA" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_8sH0Yq8WEeqhVOlV64dXmA" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_3JChoIVSEeqvavUi0dxRAw"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_8sH0Y68WEeqhVOlV64dXmA"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_8sH0ZK8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_8sH0Za8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_8sH0Zq8WEeqhVOlV64dXmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8sH0Z68WEeqhVOlV64dXmA"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_8sH0aK8WEeqhVOlV64dXmA" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_8sH0aa8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_8sH0aq8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_8sH0a68WEeqhVOlV64dXmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8sH0bK8WEeqhVOlV64dXmA"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_x9fp0IVSEeqvavUi0dxRAw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8sH0cK8WEeqhVOlV64dXmA" x="1510" y="350"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_8sH0ea8WEeqhVOlV64dXmA" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_8sH0eq8WEeqhVOlV64dXmA" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_8sH0e68WEeqhVOlV64dXmA" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_8sH0fK8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_8sH0fa8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_8sH0fq8WEeqhVOlV64dXmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8sH0f68WEeqhVOlV64dXmA"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_8sH0gK8WEeqhVOlV64dXmA" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_8sH0ga8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_8sH0gq8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_8sH0g68WEeqhVOlV64dXmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8sH0hK8WEeqhVOlV64dXmA"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_aIzlQIVVEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8sH0iK8WEeqhVOlV64dXmA" x="450" y="630"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_8sH0ia8WEeqhVOlV64dXmA" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_8sH0iq8WEeqhVOlV64dXmA" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_8sH0i68WEeqhVOlV64dXmA" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_8sH0jK8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_8sH0ja8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_8sH0jq8WEeqhVOlV64dXmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8sH0j68WEeqhVOlV64dXmA"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_8sH0kK8WEeqhVOlV64dXmA" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_8sH0ka8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_8sH0kq8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_8sH0k68WEeqhVOlV64dXmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8sH0lK8WEeqhVOlV64dXmA"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_dQfZ0IVTEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8sH0mK8WEeqhVOlV64dXmA" x="1710" y="550"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_8sIbWK8WEeqhVOlV64dXmA" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_8sIbWa8WEeqhVOlV64dXmA" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_8sIbWq8WEeqhVOlV64dXmA" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_8sIbW68WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_8sIbXK8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_8sIbXa8WEeqhVOlV64dXmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8sIbXq8WEeqhVOlV64dXmA"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_8sIbX68WEeqhVOlV64dXmA" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_8sIbYK8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_8sIbYa8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_8sIbYq8WEeqhVOlV64dXmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8sIbY68WEeqhVOlV64dXmA"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_VqZVsIVUEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8sIbZ68WEeqhVOlV64dXmA" x="250" y="990"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_8sIbeK8WEeqhVOlV64dXmA" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_8sIbea8WEeqhVOlV64dXmA" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_8sIbeq8WEeqhVOlV64dXmA" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_8sIbe68WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_8sIbfK8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_8sIbfa8WEeqhVOlV64dXmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8sIbfq8WEeqhVOlV64dXmA"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_8sIbf68WEeqhVOlV64dXmA" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_8sIbgK8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_8sIbga8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_8sIbgq8WEeqhVOlV64dXmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8sIbg68WEeqhVOlV64dXmA"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_SVcMEIVUEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8sIbh68WEeqhVOlV64dXmA" x="-390" y="650"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_8sIbiK8WEeqhVOlV64dXmA" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_8sIbia8WEeqhVOlV64dXmA" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_8sIbiq8WEeqhVOlV64dXmA" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_8sIbi68WEeqhVOlV64dXmA" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_K5-DkIVVEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_8sIbjK8WEeqhVOlV64dXmA"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_8sIbja8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_8sIbjq8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_8sIbj68WEeqhVOlV64dXmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8sIbkK8WEeqhVOlV64dXmA"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_8sIbka8WEeqhVOlV64dXmA" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_8sIbkq8WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_8sIbk68WEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_8sIblK8WEeqhVOlV64dXmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8sIbla8WEeqhVOlV64dXmA"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_FjbcsIVVEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8sIbma8WEeqhVOlV64dXmA" x="390" y="490" width="181" height="81"/>
+ </children>
+ <styles xmi:type="notation:StringValueStyle" xmi:id="_10d0UZUJEeqWd_6S3mbYXg" name="diagram_compatibility_version" stringValue="1.4.0"/>
+ <styles xmi:type="notation:DiagramStyle" xmi:id="_10d0UpUJEeqWd_6S3mbYXg"/>
+ <styles xmi:type="style:PapyrusDiagramStyle" xmi:id="_10d0U5UJEeqWd_6S3mbYXg" diagramKindId="org.eclipse.papyrus.uml.diagram.profile">
+ <owner xmi:type="uml:Profile" href="AIML.profile.uml#_Deu8AJT2Eeq5BK6mmo2rWg"/>
+ </styles>
+ <styles xmi:type="notation:EObjectListValueStyle" xmi:id="_7YfQoJm2Eeq8nv7tV9lOqQ" name="css_stylesheets" eObjectListValue="_mci3oJm1Eeq8nv7tV9lOqQ"/>
+ <element xmi:type="uml:Profile" href="AIML.profile.uml#_Deu8AJT2Eeq5BK6mmo2rWg"/>
+ <edges xmi:type="notation:Connector" xmi:id="_8sEJ4K8WEeqhVOlV64dXmA" type="Generalization_Edge" source="_8sExKK8WEeqhVOlV64dXmA" target="_8sFYXK8WEeqhVOlV64dXmA">
+ <children xmi:type="notation:DecorationNode" xmi:id="_8sEJ4a8WEeqhVOlV64dXmA" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_8sEJ4q8WEeqhVOlV64dXmA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_8sEJ468WEeqhVOlV64dXmA" y="59"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_8sEJ5K8WEeqhVOlV64dXmA"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_7a4U0IVTEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_8sEJ5a8WEeqhVOlV64dXmA" points="[1290, 530, -643984, -643984]$[1210, 293, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_8sEJ5q8WEeqhVOlV64dXmA" id="(0.5084745762711864,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_8sEJ568WEeqhVOlV64dXmA" id="(0.8121827411167513,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_8sEw8K8WEeqhVOlV64dXmA" type="Generalization_Edge" source="_8sIbiK8WEeqhVOlV64dXmA" target="_8sF_Ma8WEeqhVOlV64dXmA">
+ <children xmi:type="notation:DecorationNode" xmi:id="_8sEw8a8WEeqhVOlV64dXmA" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_8sEw8q8WEeqhVOlV64dXmA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_8sEw868WEeqhVOlV64dXmA" x="-155" y="96"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_8sEw9K8WEeqhVOlV64dXmA"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_TaQCkIVVEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_8sEw9a8WEeqhVOlV64dXmA" points="[390, 470, -643984, -643984]$[70, 413, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_8sEw9q8WEeqhVOlV64dXmA" id="(0.4419889502762431,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_8sEw968WEeqhVOlV64dXmA" id="(0.7228915662650602,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_8sEw-K8WEeqhVOlV64dXmA" type="Generalization_Edge" source="_8sIbWK8WEeqhVOlV64dXmA" target="_8sGmjq8WEeqhVOlV64dXmA">
+ <children xmi:type="notation:DecorationNode" xmi:id="_8sEw-a8WEeqhVOlV64dXmA" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_8sEw-q8WEeqhVOlV64dXmA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_8sEw-68WEeqhVOlV64dXmA" x="1" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_8sEw_K8WEeqhVOlV64dXmA"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_geEBsIVWEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_8sEw_a8WEeqhVOlV64dXmA" points="[190, 970, -643984, -643984]$[250, 911, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_8sEw_q8WEeqhVOlV64dXmA" id="(0.6,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_8sEw_68WEeqhVOlV64dXmA" id="(0.37267080745341613,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_8sExAK8WEeqhVOlV64dXmA" type="Generalization_Edge" source="_8sH0T68WEeqhVOlV64dXmA" target="_8sGmeq8WEeqhVOlV64dXmA">
+ <children xmi:type="notation:DecorationNode" xmi:id="_8sExAa8WEeqhVOlV64dXmA" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_8sExAq8WEeqhVOlV64dXmA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_8sExA68WEeqhVOlV64dXmA" y="59"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_8sExBK8WEeqhVOlV64dXmA"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_2i3nkIVUEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_8sExBa8WEeqhVOlV64dXmA" points="[-250, 630, -643984, -643984]$[-230, 553, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_8sExBq8WEeqhVOlV64dXmA" id="(0.6,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_8sExB68WEeqhVOlV64dXmA" id="(0.4419889502762431,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_8sExOK8WEeqhVOlV64dXmA" type="Generalization_Edge" source="_8sF_c68WEeqhVOlV64dXmA" target="_8sIbiK8WEeqhVOlV64dXmA">
+ <children xmi:type="notation:DecorationNode" xmi:id="_8sExOa8WEeqhVOlV64dXmA" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_8sExOq8WEeqhVOlV64dXmA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_8sExO68WEeqhVOlV64dXmA" x="128" y="114"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_8sExPK8WEeqhVOlV64dXmA"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_dGXikIVVEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_8sExPa8WEeqhVOlV64dXmA" points="[350, 610, -643984, -643984]$[350, 551, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_8sExPq8WEeqhVOlV64dXmA" id="(0.8,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_8sExP68WEeqhVOlV64dXmA" id="(0.11049723756906077,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_8sFYEK8WEeqhVOlV64dXmA" type="Generalization_Edge" source="_8sGmjq8WEeqhVOlV64dXmA" target="_8sHNUK8WEeqhVOlV64dXmA">
+ <children xmi:type="notation:DecorationNode" xmi:id="_8sFYEa8WEeqhVOlV64dXmA" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_8sFYEq8WEeqhVOlV64dXmA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_8sFYE68WEeqhVOlV64dXmA" y="59"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_8sFYFK8WEeqhVOlV64dXmA"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_eWQLMIVXEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_8sFYFa8WEeqhVOlV64dXmA" points="[10, 810, -643984, -643984]$[90, 733, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_8sFYFq8WEeqhVOlV64dXmA" id="(0.4968944099378882,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_8sFYF68WEeqhVOlV64dXmA" id="(0.837696335078534,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_8sFYKK8WEeqhVOlV64dXmA" type="Generalization_Edge" source="_8sF_S68WEeqhVOlV64dXmA" target="_8sH0X68WEeqhVOlV64dXmA">
+ <children xmi:type="notation:DecorationNode" xmi:id="_8sFYKa8WEeqhVOlV64dXmA" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_8sFYKq8WEeqhVOlV64dXmA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_8sFYK68WEeqhVOlV64dXmA" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_8sFYLK8WEeqhVOlV64dXmA"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_hguf8IVTEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_8sFYLa8WEeqhVOlV64dXmA" points="[1610, 530, -643984, -643984]$[1610, 433, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_8sFYLq8WEeqhVOlV64dXmA" id="(0.46153846153846156,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_8sFYL68WEeqhVOlV64dXmA" id="(0.5687203791469194,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_8sFYMK8WEeqhVOlV64dXmA" type="Generalization_Edge" source="_8sGmSq8WEeqhVOlV64dXmA" target="_8sGmIK8WEeqhVOlV64dXmA">
+ <children xmi:type="notation:DecorationNode" xmi:id="_8sFYMa8WEeqhVOlV64dXmA" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_8sFYMq8WEeqhVOlV64dXmA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_8sFYM68WEeqhVOlV64dXmA" x="67" y="98"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_8sFYNK8WEeqhVOlV64dXmA"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_e4Tk0IVWEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_8sFYNa8WEeqhVOlV64dXmA" points="[390, 1110, -643984, -643984]$[410, 1073, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_8sFYNq8WEeqhVOlV64dXmA" id="(0.6,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_8sFYN68WEeqhVOlV64dXmA" id="(0.36363636363636365,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_8sFYTK8WEeqhVOlV64dXmA" type="Generalization_Edge" source="_8sGmWq8WEeqhVOlV64dXmA" target="_8sFYXK8WEeqhVOlV64dXmA">
+ <children xmi:type="notation:DecorationNode" xmi:id="_8sFYTa8WEeqhVOlV64dXmA" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_8sFYTq8WEeqhVOlV64dXmA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_8sFYT68WEeqhVOlV64dXmA" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_8sFYUK8WEeqhVOlV64dXmA"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_8DbikIVTEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_8sFYUa8WEeqhVOlV64dXmA" points="[1150, 530, -643984, -643984]$[1150, 293, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_8sFYUq8WEeqhVOlV64dXmA" id="(0.5084745762711864,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_8sFYU68WEeqhVOlV64dXmA" id="(0.5076142131979695,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_8sFYVK8WEeqhVOlV64dXmA" type="Generalization_Edge" source="_8sFYAK8WEeqhVOlV64dXmA" target="_8sFYOK8WEeqhVOlV64dXmA">
+ <children xmi:type="notation:DecorationNode" xmi:id="_8sFYVa8WEeqhVOlV64dXmA" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_8sFYVq8WEeqhVOlV64dXmA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_8sFYV68WEeqhVOlV64dXmA" x="1" y="58"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_8sFYWK8WEeqhVOlV64dXmA"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_5a1L0IVXEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_8sFYWa8WEeqhVOlV64dXmA" points="[-130, 970, -643984, -643984]$[-70, 929, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_8sFYWq8WEeqhVOlV64dXmA" id="(0.4,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_8sFYW68WEeqhVOlV64dXmA" id="(0.1895734597156398,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_8sFYbq8WEeqhVOlV64dXmA" type="Generalization_Edge" source="_8sF_Y68WEeqhVOlV64dXmA" target="_8sFYOK8WEeqhVOlV64dXmA">
+ <children xmi:type="notation:DecorationNode" xmi:id="_8sF_EK8WEeqhVOlV64dXmA" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_8sF_Ea8WEeqhVOlV64dXmA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_8sF_Eq8WEeqhVOlV64dXmA" x="-1" y="58"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_8sF_E68WEeqhVOlV64dXmA"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_6loyEIVXEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_8sF_FK8WEeqhVOlV64dXmA" points="[130, 970, -643984, -643984]$[70, 929, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_8sF_Fa8WEeqhVOlV64dXmA" id="(0.6,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_8sF_Fq8WEeqhVOlV64dXmA" id="(0.8530805687203792,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_8sF_Ka8WEeqhVOlV64dXmA" type="Generalization_Edge" source="_8sFYOK8WEeqhVOlV64dXmA" target="_8sHNUK8WEeqhVOlV64dXmA">
+ <children xmi:type="notation:DecorationNode" xmi:id="_8sF_Kq8WEeqhVOlV64dXmA" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_8sF_K68WEeqhVOlV64dXmA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_8sF_LK8WEeqhVOlV64dXmA" y="59"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_8sF_La8WEeqhVOlV64dXmA"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_zKvGwIVXEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_8sF_Lq8WEeqhVOlV64dXmA" points="[-30, 810, -643984, -643984]$[70, 733, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_8sF_L68WEeqhVOlV64dXmA" id="(0.6635071090047393,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_8sF_MK8WEeqhVOlV64dXmA" id="(0.418848167539267,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_8sF_Q68WEeqhVOlV64dXmA" type="Generalization_Edge" source="_8sGmeq8WEeqhVOlV64dXmA" target="_8sF_Ma8WEeqhVOlV64dXmA">
+ <children xmi:type="notation:DecorationNode" xmi:id="_8sF_RK8WEeqhVOlV64dXmA" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_8sF_Ra8WEeqhVOlV64dXmA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_8sF_Rq8WEeqhVOlV64dXmA" x="-1" y="59"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_8sF_R68WEeqhVOlV64dXmA"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_Ud9iUIVVEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_8sF_SK8WEeqhVOlV64dXmA" points="[-170, 450, -643984, -643984]$[30, 413, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_8sF_Sa8WEeqhVOlV64dXmA" id="(0.7734806629834254,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_8sF_Sq8WEeqhVOlV64dXmA" id="(0.4819277108433735,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_8sF_W68WEeqhVOlV64dXmA" type="Generalization_Edge" source="_8sF_g68WEeqhVOlV64dXmA" target="_8sF_F68WEeqhVOlV64dXmA">
+ <children xmi:type="notation:DecorationNode" xmi:id="_8sF_XK8WEeqhVOlV64dXmA" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_8sF_Xa8WEeqhVOlV64dXmA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_8sF_Xq8WEeqhVOlV64dXmA" x="1" y="59"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_8sF_X68WEeqhVOlV64dXmA"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_hzfRoIVYEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_8sF_YK8WEeqhVOlV64dXmA" points="[770, 450, -643984, -643984]$[470, 293, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_8sF_Ya8WEeqhVOlV64dXmA" id="(0.2843601895734597,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_8sF_Yq8WEeqhVOlV64dXmA" id="(0.8290155440414507,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_8sGmMq8WEeqhVOlV64dXmA" type="Generalization_Edge" source="_8sGmaq8WEeqhVOlV64dXmA" target="_8sGmIK8WEeqhVOlV64dXmA">
+ <children xmi:type="notation:DecorationNode" xmi:id="_8sGmM68WEeqhVOlV64dXmA" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_8sGmNK8WEeqhVOlV64dXmA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_8sGmNa8WEeqhVOlV64dXmA" x="8" y="135"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_8sGmNq8WEeqhVOlV64dXmA"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_fQk64IVWEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_8sGmN68WEeqhVOlV64dXmA" points="[550, 1110, -643984, -643984]$[510, 1073, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_8sGmOK8WEeqhVOlV64dXmA" id="(0.6,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_8sGmOa8WEeqhVOlV64dXmA" id="(0.8181818181818182,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_8sGmOq8WEeqhVOlV64dXmA" type="Generalization_Edge" source="_8sF_F68WEeqhVOlV64dXmA" target="_8sExGK8WEeqhVOlV64dXmA">
+ <children xmi:type="notation:DecorationNode" xmi:id="_8sGmO68WEeqhVOlV64dXmA" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_8sGmPK8WEeqhVOlV64dXmA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_8sGmPa8WEeqhVOlV64dXmA" y="59"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_8sGmPq8WEeqhVOlV64dXmA"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_DTFDUIVYEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_8sGmP68WEeqhVOlV64dXmA" points="[170, 170, -643984, -643984]$[510, 130, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_8sGmQK8WEeqhVOlV64dXmA" id="(0.6217616580310881,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_8sGmQa8WEeqhVOlV64dXmA" id="(0.4,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_8sGmQq8WEeqhVOlV64dXmA" type="Generalization_Edge" source="_8sExCK8WEeqhVOlV64dXmA" target="_8sFYXK8WEeqhVOlV64dXmA">
+ <children xmi:type="notation:DecorationNode" xmi:id="_8sGmQ68WEeqhVOlV64dXmA" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_8sGmRK8WEeqhVOlV64dXmA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_8sGmRa8WEeqhVOlV64dXmA" y="59"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_8sGmRq8WEeqhVOlV64dXmA"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_9Q2_AIVTEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_8sGmR68WEeqhVOlV64dXmA" points="[1010, 530, -643984, -643984]$[1090, 293, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_8sGmSK8WEeqhVOlV64dXmA" id="(0.5084745762711864,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_8sGmSa8WEeqhVOlV64dXmA" id="(0.20304568527918782,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_8sHNMK8WEeqhVOlV64dXmA" type="Generalization_Edge" source="_8sH0X68WEeqhVOlV64dXmA" target="_8sFYXK8WEeqhVOlV64dXmA">
+ <children xmi:type="notation:DecorationNode" xmi:id="_8sHNMa8WEeqhVOlV64dXmA" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_8sHNMq8WEeqhVOlV64dXmA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_8sHNM68WEeqhVOlV64dXmA" x="1" y="58"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_8sHNNK8WEeqhVOlV64dXmA"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_i7emsIVTEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_8sHNNa8WEeqhVOlV64dXmA" points="[1590, 330, -643984, -643984]$[1230, 293, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_8sHNNq8WEeqhVOlV64dXmA" id="(0.47393364928909953,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_8sHNN68WEeqhVOlV64dXmA" id="(0.9137055837563451,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_8sHNOK8WEeqhVOlV64dXmA" type="Generalization_Edge" source="_8sFYGK8WEeqhVOlV64dXmA" target="_8sH0X68WEeqhVOlV64dXmA">
+ <children xmi:type="notation:DecorationNode" xmi:id="_8sHNOa8WEeqhVOlV64dXmA" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_8sHNOq8WEeqhVOlV64dXmA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_8sHNO68WEeqhVOlV64dXmA" x="1" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_8sHNPK8WEeqhVOlV64dXmA"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_g8dVQIVTEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_8sHNPa8WEeqhVOlV64dXmA" points="[1450, 530, -643984, -643984]$[1530, 433, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_8sHNPq8WEeqhVOlV64dXmA" id="(0.46153846153846156,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_8sHNP68WEeqhVOlV64dXmA" id="(0.1895734597156398,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_8sHNQK8WEeqhVOlV64dXmA" type="Generalization_Edge" source="_8sHNhK8WEeqhVOlV64dXmA" target="_8sGmeq8WEeqhVOlV64dXmA">
+ <children xmi:type="notation:DecorationNode" xmi:id="_8sHNQa8WEeqhVOlV64dXmA" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_8sHNQq8WEeqhVOlV64dXmA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_8sHNQ68WEeqhVOlV64dXmA" x="-1" y="58"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_8sHNRK8WEeqhVOlV64dXmA"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_2DdHsIVUEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_8sHNRa8WEeqhVOlV64dXmA" points="[-110, 630, -643984, -643984]$[-170, 553, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_8sHNRq8WEeqhVOlV64dXmA" id="(0.6,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_8sHNR68WEeqhVOlV64dXmA" id="(0.7734806629834254,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_8sHNSK8WEeqhVOlV64dXmA" type="Generalization_Edge" source="_8sGmIK8WEeqhVOlV64dXmA" target="_8sGmjq8WEeqhVOlV64dXmA">
+ <children xmi:type="notation:DecorationNode" xmi:id="_8sHNSa8WEeqhVOlV64dXmA" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_8sHNSq8WEeqhVOlV64dXmA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_8sHNS68WEeqhVOlV64dXmA" y="59"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_8sHNTK8WEeqhVOlV64dXmA"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_f8tBEIVWEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_8sHNTa8WEeqhVOlV64dXmA" points="[410, 970, -643984, -643984]$[310, 911, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_8sHNTq8WEeqhVOlV64dXmA" id="(0.36363636363636365,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_8sHNT68WEeqhVOlV64dXmA" id="(0.7453416149068323,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_8sHNZK8WEeqhVOlV64dXmA" type="Generalization_Edge" source="_8sF_Ma8WEeqhVOlV64dXmA" target="_8sF_F68WEeqhVOlV64dXmA">
+ <children xmi:type="notation:DecorationNode" xmi:id="_8sHNZa8WEeqhVOlV64dXmA" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_8sHNZq8WEeqhVOlV64dXmA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_8sHNZ68WEeqhVOlV64dXmA" y="59"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_8sHNaK8WEeqhVOlV64dXmA"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_2P_c8IVWEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_8sHNaa8WEeqhVOlV64dXmA" points="[50, 310, -643984, -643984]$[130, 273, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_8sHNaq8WEeqhVOlV64dXmA" id="(0.6024096385542169,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_8sHNa68WEeqhVOlV64dXmA" id="(0.41450777202072536,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_8sHNbK8WEeqhVOlV64dXmA" type="Generalization_Edge" source="_8sIbeK8WEeqhVOlV64dXmA" target="_8sGmeq8WEeqhVOlV64dXmA">
+ <children xmi:type="notation:DecorationNode" xmi:id="_8sHNba8WEeqhVOlV64dXmA" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_8sHNbq8WEeqhVOlV64dXmA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_8sHNb68WEeqhVOlV64dXmA" y="59"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_8sHNcK8WEeqhVOlV64dXmA"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_3UmmgIVUEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_8sHNca8WEeqhVOlV64dXmA" points="[-360, 1360, -643984, -643984]$[-280, 1283, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_8sHNcq8WEeqhVOlV64dXmA" id="(0.4,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_8sHNc68WEeqhVOlV64dXmA" id="(0.22099447513812154,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_8sH0ca8WEeqhVOlV64dXmA" type="Generalization_Edge" source="_8sHNUK8WEeqhVOlV64dXmA" target="_8sGmeq8WEeqhVOlV64dXmA">
+ <children xmi:type="notation:DecorationNode" xmi:id="_8sH0cq8WEeqhVOlV64dXmA" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_8sH0c68WEeqhVOlV64dXmA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_8sH0dK8WEeqhVOlV64dXmA" x="-1" y="59"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_8sH0da8WEeqhVOlV64dXmA"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_V3zYMIVXEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_8sH0dq8WEeqhVOlV64dXmA" points="[50, 630, -643984, -643984]$[-129, 510, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_8sH0d68WEeqhVOlV64dXmA" id="(0.31413612565445026,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_8sH0eK8WEeqhVOlV64dXmA" id="(1.0,0.5825242718446602)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_8sIbUK8WEeqhVOlV64dXmA" type="Generalization_Edge" source="_8sH0ia8WEeqhVOlV64dXmA" target="_8sH0X68WEeqhVOlV64dXmA">
+ <children xmi:type="notation:DecorationNode" xmi:id="_8sIbUa8WEeqhVOlV64dXmA" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_8sIbUq8WEeqhVOlV64dXmA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_8sIbU68WEeqhVOlV64dXmA" x="-1" y="58"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_8sIbVK8WEeqhVOlV64dXmA"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_iK5eUIVTEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_8sIbVa8WEeqhVOlV64dXmA" points="[1770, 530, -643984, -643984]$[1670, 433, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_8sIbVq8WEeqhVOlV64dXmA" id="(0.46153846153846156,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_8sIbV68WEeqhVOlV64dXmA" id="(0.8530805687203792,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_8sIbaK8WEeqhVOlV64dXmA" type="Generalization_Edge" source="_8sHNdK8WEeqhVOlV64dXmA" target="_8sFYOK8WEeqhVOlV64dXmA">
+ <children xmi:type="notation:DecorationNode" xmi:id="_8sIbaa8WEeqhVOlV64dXmA" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_8sIbaq8WEeqhVOlV64dXmA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_8sIba68WEeqhVOlV64dXmA" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_8sIbbK8WEeqhVOlV64dXmA"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_6B2IgIVXEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_8sIbba8WEeqhVOlV64dXmA" points="[10, 970, -643984, -643984]$[10, 929, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_8sIbbq8WEeqhVOlV64dXmA" id="(0.6,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_8sIbb68WEeqhVOlV64dXmA" id="(0.5687203791469194,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_8sIbcK8WEeqhVOlV64dXmA" type="Generalization_Edge" source="_8sH0ea8WEeqhVOlV64dXmA" target="_8sIbiK8WEeqhVOlV64dXmA">
+ <children xmi:type="notation:DecorationNode" xmi:id="_8sIbca8WEeqhVOlV64dXmA" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_8sIbcq8WEeqhVOlV64dXmA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_8sIbc68WEeqhVOlV64dXmA" x="120" y="131"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_8sIbdK8WEeqhVOlV64dXmA"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_dg9M0IVVEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_8sIbda8WEeqhVOlV64dXmA" points="[450, 610, -643984, -643984]$[450, 551, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_8sIbdq8WEeqhVOlV64dXmA" id="(0.6,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_8sIbd68WEeqhVOlV64dXmA" id="(0.4419889502762431,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_8sIbmq8WEeqhVOlV64dXmA" type="Generalization_Edge" source="_8sFYXK8WEeqhVOlV64dXmA" target="_8sExGK8WEeqhVOlV64dXmA">
+ <children xmi:type="notation:DecorationNode" xmi:id="_8sIbm68WEeqhVOlV64dXmA" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_8sIbnK8WEeqhVOlV64dXmA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_8sIbna8WEeqhVOlV64dXmA" x="-633" y="148"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_8sIbnq8WEeqhVOlV64dXmA"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_CV1X8IVYEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_8sIbn68WEeqhVOlV64dXmA" points="[830, 170, -643984, -643984]$[550, 130, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_8sIboK8WEeqhVOlV64dXmA" id="(0.5076142131979695,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_8sIboa8WEeqhVOlV64dXmA" id="(0.8,1.0)"/>
+ </edges>
+ </notation:Diagram>
+ <notation:Diagram xmi:id="_3ORf4JUJEeqWd_6S3mbYXg" type="PapyrusUMLProfileDiagram" name="Padding_layers" measurementUnit="Pixel">
+ <children xmi:type="notation:Shape" xmi:id="_cE3XsJULEeqfMc95BD27pw" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_cE3XsZULEeqfMc95BD27pw" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_cE3XspULEeqfMc95BD27pw" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_cE3Xs5ULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_cE3XtJULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_cE3XtZULEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_cE3XtpULEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_cE3Xt5ULEeqfMc95BD27pw" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_cE3XuJULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_cE3XuZULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_cE3XupULEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_cE3Xu5ULEeqfMc95BD27pw"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_okP-UIVZEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_cE3Xv5ULEeqfMc95BD27pw" x="1090" y="310"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_cE3-wJULEeqfMc95BD27pw" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_cE3-wZULEeqfMc95BD27pw" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_cE3-wpULEeqfMc95BD27pw" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_cE3-w5ULEeqfMc95BD27pw" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_UZswkIVZEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_cE3-xJULEeqfMc95BD27pw"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_cE3-xZULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_cE3-xpULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_cE3-x5ULEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_cE3-yJULEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_cE3-yZULEeqfMc95BD27pw" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_cE3-ypULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_cE3-y5ULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_cE3-zJULEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_cE3-zZULEeqfMc95BD27pw"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_w6iwUIVYEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_cE3-0ZULEeqfMc95BD27pw" x="630" y="90"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_cE4l0JULEeqfMc95BD27pw" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_cE4l0ZULEeqfMc95BD27pw" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_cE4l0pULEeqfMc95BD27pw" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_cE4l05ULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_cE4l1JULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_cE4l1ZULEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_cE4l1pULEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_cE4l15ULEeqfMc95BD27pw" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_cE4l2JULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_cE4l2ZULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_cE4l2pULEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_cE4l25ULEeqfMc95BD27pw"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_cIwG8IVZEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_cE4l35ULEeqfMc95BD27pw" x="410" y="310"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_cE5z8ZULEeqfMc95BD27pw" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_cE5z8pULEeqfMc95BD27pw" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_cE5z85ULEeqfMc95BD27pw" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_cE5z9JULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_cE5z9ZULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_cE5z9pULEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_cE5z95ULEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_cE5z-JULEeqfMc95BD27pw" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_cE5z-ZULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_cE5z-pULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_cE5z-5ULEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_cE5z_JULEeqfMc95BD27pw"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_fdB7IIVZEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_cE50AJULEeqfMc95BD27pw" x="550" y="310"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_cE50AZULEeqfMc95BD27pw" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_cE50ApULEeqfMc95BD27pw" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_cE50A5ULEeqfMc95BD27pw" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_cE50BJULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_cE50BZULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_cE50BpULEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_cE50B5ULEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_cE50CJULEeqfMc95BD27pw" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_cE50CZULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_cE50CpULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_cE50C5ULEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_cE50DJULEeqfMc95BD27pw"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_aphv4IVZEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_cE50EJULEeqfMc95BD27pw" x="270" y="310"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_cE6bAJULEeqfMc95BD27pw" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_cE6bAZULEeqfMc95BD27pw" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_cE6bApULEeqfMc95BD27pw" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_cE6bA5ULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_cE6bBJULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_cE6bBZULEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_cE6bBpULEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_cE6bB5ULEeqfMc95BD27pw" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_cE6bCJULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_cE6bCZULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_cE6bCpULEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_cE6bC5ULEeqfMc95BD27pw"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_sNFGMIVZEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_cE6bD5ULEeqfMc95BD27pw" x="1230" y="310"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_cE7CIJULEeqfMc95BD27pw" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_cE7CIZULEeqfMc95BD27pw" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_cE7CIpULEeqfMc95BD27pw" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_cE7CI5ULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_cE7CJJULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_cE7CJZULEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_cE7CJpULEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_cE7CJ5ULEeqfMc95BD27pw" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_cE7CKJULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_cE7CKZULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_cE7CKpULEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_cE7CK5ULEeqfMc95BD27pw"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_gxtPEIVZEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_cE7CL5ULEeqfMc95BD27pw" x="690" y="310"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_cE7pIJULEeqfMc95BD27pw" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_cE7pIZULEeqfMc95BD27pw" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_cE7pIpULEeqfMc95BD27pw" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_cE7pI5ULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_cE7pJJULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_cE7pJZULEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_cE7pJpULEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_cE7pJ5ULEeqfMc95BD27pw" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_cE7pKJULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_cE7pKZULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_cE7pKpULEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_cE7pK5ULEeqfMc95BD27pw"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_kjrr4IVZEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_cE7pL5ULEeqfMc95BD27pw" x="830" y="310"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_cE7pOZULEeqfMc95BD27pw" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_cE7pOpULEeqfMc95BD27pw" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_cE7pO5ULEeqfMc95BD27pw" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_cE7pPJULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_cE7pPZULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_cE7pPpULEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_cE7pP5ULEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_cE7pQJULEeqfMc95BD27pw" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_cE7pQZULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_cE7pQpULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_cE7pQ5ULEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_cE7pRJULEeqfMc95BD27pw"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_mNvZ8IVZEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_cE7pSJULEeqfMc95BD27pw" x="970" y="310"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_cE83QZULEeqfMc95BD27pw" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_cE83QpULEeqfMc95BD27pw" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_cE83Q5ULEeqfMc95BD27pw" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_cE83RJULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_cE83RZULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_cE83RpULEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_cE83R5ULEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_cE83SJULEeqfMc95BD27pw" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_cE83SZULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_cE83SpULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_cE83S5ULEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_cE83TJULEeqfMc95BD27pw"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_YlZU8IVZEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_cE83UJULEeqfMc95BD27pw" x="130" y="310"/>
+ </children>
+ <styles xmi:type="notation:StringValueStyle" xmi:id="_3ORf4ZUJEeqWd_6S3mbYXg" name="diagram_compatibility_version" stringValue="1.4.0"/>
+ <styles xmi:type="notation:DiagramStyle" xmi:id="_3ORf4pUJEeqWd_6S3mbYXg"/>
+ <styles xmi:type="style:PapyrusDiagramStyle" xmi:id="_3ORf45UJEeqWd_6S3mbYXg" diagramKindId="org.eclipse.papyrus.uml.diagram.profile">
+ <owner xmi:type="uml:Profile" href="AIML.profile.uml#_2_xEcJT2Eeq5BK6mmo2rWg"/>
+ </styles>
+ <element xmi:type="uml:Profile" href="AIML.profile.uml#_2_xEcJT2Eeq5BK6mmo2rWg"/>
+ <edges xmi:type="notation:Connector" xmi:id="_cE5M4JULEeqfMc95BD27pw" type="Generalization_Edge" source="_cE4l0JULEeqfMc95BD27pw" target="_cE3-wJULEeqfMc95BD27pw">
+ <children xmi:type="notation:DecorationNode" xmi:id="_cE5M4ZULEeqfMc95BD27pw" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_cE5M4pULEeqfMc95BD27pw" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_cE5M45ULEeqfMc95BD27pw" y="59"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_cE5M5JULEeqfMc95BD27pw"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_2srRkIVZEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_cE5M5ZULEeqfMc95BD27pw" points="[450, 290, -643984, -643984]$[650, 173, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_cE5M5pULEeqfMc95BD27pw" id="(0.5714285714285714,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_cE5M55ULEeqfMc95BD27pw" id="(0.272108843537415,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_cE5M6ZULEeqfMc95BD27pw" type="Generalization_Edge" source="_cE3XsJULEeqfMc95BD27pw" target="_cE3-wJULEeqfMc95BD27pw">
+ <children xmi:type="notation:DecorationNode" xmi:id="_cE5M6pULEeqfMc95BD27pw" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_cE5M65ULEeqfMc95BD27pw" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_cE5M7JULEeqfMc95BD27pw" x="1" y="58"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_cE5M7ZULEeqfMc95BD27pw"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_7KBmoIVZEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_cE5M7pULEeqfMc95BD27pw" points="[1130, 290, -643984, -643984]$[730, 173, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_cE5M75ULEeqfMc95BD27pw" id="(0.6,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_cE5M8JULEeqfMc95BD27pw" id="(0.8163265306122449,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_cE6bEJULEeqfMc95BD27pw" type="Generalization_Edge" source="_cE5z8ZULEeqfMc95BD27pw" target="_cE3-wJULEeqfMc95BD27pw">
+ <children xmi:type="notation:DecorationNode" xmi:id="_cE6bEZULEeqfMc95BD27pw" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_cE6bEpULEeqfMc95BD27pw" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_cE6bE5ULEeqfMc95BD27pw" y="59"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_cE6bFJULEeqfMc95BD27pw"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_3Rpm4IVZEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_cE6bFZULEeqfMc95BD27pw" points="[590, 290, -643984, -643984]$[650, 173, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_cE6bFpULEeqfMc95BD27pw" id="(0.5714285714285714,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_cE6bF5ULEeqfMc95BD27pw" id="(0.272108843537415,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_cE7CEJULEeqfMc95BD27pw" type="Generalization_Edge" source="_cE50AZULEeqfMc95BD27pw" target="_cE3-wJULEeqfMc95BD27pw">
+ <children xmi:type="notation:DecorationNode" xmi:id="_cE7CEZULEeqfMc95BD27pw" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_cE7CEpULEeqfMc95BD27pw" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_cE7CE5ULEeqfMc95BD27pw" x="-1" y="59"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_cE7CFJULEeqfMc95BD27pw"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_0IHqIIVZEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_cE7CFZULEeqfMc95BD27pw" points="[310, 290, -643984, -643984]$[630, 173, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_cE7CFpULEeqfMc95BD27pw" id="(0.6,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_cE7CF5ULEeqfMc95BD27pw" id="(0.1360544217687075,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_cE7CGJULEeqfMc95BD27pw" type="Generalization_Edge" source="_cE83QZULEeqfMc95BD27pw" target="_cE3-wJULEeqfMc95BD27pw">
+ <children xmi:type="notation:DecorationNode" xmi:id="_cE7CGZULEeqfMc95BD27pw" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_cE7CGpULEeqfMc95BD27pw" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_cE7CG5ULEeqfMc95BD27pw" y="59"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_cE7CHJULEeqfMc95BD27pw"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_zJF2EIVZEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_cE7CHZULEeqfMc95BD27pw" points="[150, 290, -643984, -643984]$[630, 173, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_cE7CHpULEeqfMc95BD27pw" id="(0.4,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_cE7CH5ULEeqfMc95BD27pw" id="(0.1360544217687075,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_cE7pMJULEeqfMc95BD27pw" type="Generalization_Edge" source="_cE7pOZULEeqfMc95BD27pw" target="_cE3-wJULEeqfMc95BD27pw">
+ <children xmi:type="notation:DecorationNode" xmi:id="_cE7pMZULEeqfMc95BD27pw" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_cE7pMpULEeqfMc95BD27pw" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_cE7pM5ULEeqfMc95BD27pw" x="-1" y="58"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_cE7pNJULEeqfMc95BD27pw"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_6g_QsIVZEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_cE7pNZULEeqfMc95BD27pw" points="[1010, 290, -643984, -643984]$[730, 173, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_cE7pNpULEeqfMc95BD27pw" id="(0.6,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_cE7pN5ULEeqfMc95BD27pw" id="(0.8163265306122449,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_cE8QMJULEeqfMc95BD27pw" type="Generalization_Edge" source="_cE7CIJULEeqfMc95BD27pw" target="_cE3-wJULEeqfMc95BD27pw">
+ <children xmi:type="notation:DecorationNode" xmi:id="_cE8QMZULEeqfMc95BD27pw" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_cE8QMpULEeqfMc95BD27pw" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_cE8QM5ULEeqfMc95BD27pw" x="-1" y="58"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_cE8QNJULEeqfMc95BD27pw"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_4uA3MIVZEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_cE8QNZULEeqfMc95BD27pw" points="[730, 290, -643984, -643984]$[650, 173, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_cE8QNpULEeqfMc95BD27pw" id="(0.5714285714285714,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_cE8QN5ULEeqfMc95BD27pw" id="(0.272108843537415,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_cE8QOJULEeqfMc95BD27pw" type="Generalization_Edge" source="_cE7pIJULEeqfMc95BD27pw" target="_cE3-wJULEeqfMc95BD27pw">
+ <children xmi:type="notation:DecorationNode" xmi:id="_cE8QOZULEeqfMc95BD27pw" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_cE8QOpULEeqfMc95BD27pw" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_cE8QO5ULEeqfMc95BD27pw" x="-1" y="58"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_cE8QPJULEeqfMc95BD27pw"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_5Tm3kIVZEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_cE8QPZULEeqfMc95BD27pw" points="[870, 290, -643984, -643984]$[690, 173, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_cE8QPpULEeqfMc95BD27pw" id="(0.6,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_cE8QP5ULEeqfMc95BD27pw" id="(0.54421768707483,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_cE8QQJULEeqfMc95BD27pw" type="Generalization_Edge" source="_cE6bAJULEeqfMc95BD27pw" target="_cE3-wJULEeqfMc95BD27pw">
+ <children xmi:type="notation:DecorationNode" xmi:id="_cE8QQZULEeqfMc95BD27pw" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_cE8QQpULEeqfMc95BD27pw" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_cE8QQ5ULEeqfMc95BD27pw" x="1" y="58"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_cE8QRJULEeqfMc95BD27pw"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_7vcA0IVZEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_cE8QRZULEeqfMc95BD27pw" points="[1270, 290, -643984, -643984]$[730, 173, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_cE8QRpULEeqfMc95BD27pw" id="(0.6,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_cE8QR5ULEeqfMc95BD27pw" id="(0.8163265306122449,1.0)"/>
+ </edges>
+ </notation:Diagram>
+ <notation:Diagram xmi:id="_43OasJUJEeqWd_6S3mbYXg" type="PapyrusUMLProfileDiagram" name="Non-linear_activations_(weighted sum, nonlinearity)" measurementUnit="Pixel">
+ <children xmi:type="notation:Shape" xmi:id="_kUJtUJULEeqfMc95BD27pw" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_kUJtUZULEeqfMc95BD27pw" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_kUJtUpULEeqfMc95BD27pw" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_kUJtU5ULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_kUJtVJULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_kUJtVZULEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_kUJtVpULEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_kUJtV5ULEeqfMc95BD27pw" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_kUJtWJULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_kUJtWZULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_kUJtWpULEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_kUJtW5ULEeqfMc95BD27pw"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_-FB30IVcEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_kUJtX5ULEeqfMc95BD27pw" x="2090" y="350"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_kUK7eJULEeqfMc95BD27pw" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_kUK7eZULEeqfMc95BD27pw" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_kUK7epULEeqfMc95BD27pw" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_kUK7e5ULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_kUK7fJULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_kUK7fZULEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_kUK7fpULEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_kUK7f5ULEeqfMc95BD27pw" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_kUK7gJULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_kUK7gZULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_kUK7gpULEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_kUK7g5ULEeqfMc95BD27pw"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_T9yJQIVcEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_kUK7h5ULEeqfMc95BD27pw" x="1450" y="510"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_kULiiJULEeqfMc95BD27pw" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_kULiiZULEeqfMc95BD27pw" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_kULiipULEeqfMc95BD27pw" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_kULii5ULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_kULijJULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_kULijZULEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_kULijpULEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_kULij5ULEeqfMc95BD27pw" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_kULikJULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_kULikZULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_kULikpULEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_kULik5ULEeqfMc95BD27pw"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_ef3LcIVdEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_kULil5ULEeqfMc95BD27pw" x="3230" y="350"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_kUMJmJULEeqfMc95BD27pw" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_kUMJmZULEeqfMc95BD27pw" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_kUMJmpULEeqfMc95BD27pw" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_kUMJm5ULEeqfMc95BD27pw" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_MoLDEIVbEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_kUMJnJULEeqfMc95BD27pw"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_kUMJnZULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_kUMJnpULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_kUMJn5ULEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_kUMJoJULEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_kUMJoZULEeqfMc95BD27pw" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_kUMJopULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_kUMJo5ULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_kUMJpJULEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_kUMJpZULEeqfMc95BD27pw"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_FFiYEIVbEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_kUMJqZULEeqfMc95BD27pw" x="30" y="510"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_kUMJqpULEeqfMc95BD27pw" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_kUMJq5ULEeqfMc95BD27pw" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_kUMJrJULEeqfMc95BD27pw" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_kUMJrZULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_kUMJrpULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_kUMJr5ULEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_kUMJsJULEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_kUMJsZULEeqfMc95BD27pw" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_kUMJspULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_kUMJs5ULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_kUMJtJULEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_kUMJtZULEeqfMc95BD27pw"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_Q694gIVcEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_kUMJuZULEeqfMc95BD27pw" x="1330" y="510"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_kUMwoJULEeqfMc95BD27pw" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_kUMwoZULEeqfMc95BD27pw" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_kUMwopULEeqfMc95BD27pw" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_kUMwo5ULEeqfMc95BD27pw" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_H7n-8IVcEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_kUMwpJULEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_kUMwpZULEeqfMc95BD27pw" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_J_NnUIVcEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_kUMwppULEeqfMc95BD27pw"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_kUMwp5ULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_kUMwqJULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_kUMwqZULEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_kUMwqpULEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_kUMwq5ULEeqfMc95BD27pw" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_kUMwrJULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_kUMwrZULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_kUMwrpULEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_kUMwr5ULEeqfMc95BD27pw"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_FyhkcIVcEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_kUMws5ULEeqfMc95BD27pw" x="2690" y="350"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_kUNXsJULEeqfMc95BD27pw" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_kUNXsZULEeqfMc95BD27pw" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_kUNXspULEeqfMc95BD27pw" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_kUNXs5ULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_kUNXtJULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_kUNXtZULEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_kUNXtpULEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_kUNXt5ULEeqfMc95BD27pw" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_kUNXuJULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_kUNXuZULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_kUNXupULEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_kUNXu5ULEeqfMc95BD27pw"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_dgIz0IVdEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_kUNXv5ULEeqfMc95BD27pw" x="2950" y="350"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_kUN-wJULEeqfMc95BD27pw" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_kUN-wZULEeqfMc95BD27pw" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_kUN-wpULEeqfMc95BD27pw" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_kUN-w5ULEeqfMc95BD27pw" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_QsGykIVbEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_kUN-xJULEeqfMc95BD27pw"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_kUN-xZULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_kUN-xpULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_kUN-x5ULEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_kUN-yJULEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_kUN-yZULEeqfMc95BD27pw" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_kUN-ypULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_kUN-y5ULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_kUN-zJULEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_kUN-zZULEeqfMc95BD27pw"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_O0zSsIVbEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_kUN-0ZULEeqfMc95BD27pw" x="1670" y="330"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_kUN-65ULEeqfMc95BD27pw" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_kUN-7JULEeqfMc95BD27pw" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_kUN-7ZULEeqfMc95BD27pw" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_kUN-7pULEeqfMc95BD27pw" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_vrowYIVcEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_kUN-75ULEeqfMc95BD27pw"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_kUN-8JULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_kUN-8ZULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_kUN-8pULEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_kUN-85ULEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_kUN-9JULEeqfMc95BD27pw" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_kUN-9ZULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_kUN-9pULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_kUN-95ULEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_kUN--JULEeqfMc95BD27pw"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_uYqFkIVcEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_kUN-_JULEeqfMc95BD27pw" x="990" y="510"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_kUN-_ZULEeqfMc95BD27pw" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_kUN-_pULEeqfMc95BD27pw" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_kUN-_5ULEeqfMc95BD27pw" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_kUN_AJULEeqfMc95BD27pw" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_FZhZIIVdEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_kUN_AZULEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_kUN_ApULEeqfMc95BD27pw" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_KHN3UIVdEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_kUN_A5ULEeqfMc95BD27pw"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_kUN_BJULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_kUN_BZULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_kUN_BpULEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_kUN_B5ULEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_kUN_CJULEeqfMc95BD27pw" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_kUN_CZULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_kUN_CpULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_kUN_C5ULEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_kUN_DJULEeqfMc95BD27pw"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_AXPyEIVdEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_kUN_EJULEeqfMc95BD27pw" x="1890" y="350"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_kUOl2JULEeqfMc95BD27pw" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_kUOl2ZULEeqfMc95BD27pw" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_kUOl2pULEeqfMc95BD27pw" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_kUOl25ULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_kUOl3JULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_kUOl3ZULEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_kUOl3pULEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_kUOl35ULEeqfMc95BD27pw" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_kUOl4JULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_kUOl4ZULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_kUOl4pULEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_kUOl45ULEeqfMc95BD27pw"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_hnumMIVbEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_kUOl55ULEeqfMc95BD27pw" x="2330" y="350"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_kUOl6JULEeqfMc95BD27pw" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_kUOl6ZULEeqfMc95BD27pw" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_kUOl6pULEeqfMc95BD27pw" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_kUOl65ULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_kUOl7JULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_kUOl7ZULEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_kUOl7pULEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_kUOl75ULEeqfMc95BD27pw" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_kUOl8JULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_kUOl8ZULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_kUOl8pULEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_kUOl85ULEeqfMc95BD27pw"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_PQkzQIVcEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_kUOl95ULEeqfMc95BD27pw" x="1210" y="510"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_kUOmAJULEeqfMc95BD27pw" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_kUOmAZULEeqfMc95BD27pw" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_kUOmApULEeqfMc95BD27pw" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_kUOmA5ULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_kUOmBJULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_kUOmBZULEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_kUOmBpULEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_kUOmB5ULEeqfMc95BD27pw" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_kUOmCJULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_kUOmCZULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_kUOmCpULEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_kUOmC5ULEeqfMc95BD27pw"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#__HL4YIVcEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_kUOmD5ULEeqfMc95BD27pw" x="2210" y="350"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_kUOmEZULEeqfMc95BD27pw" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_kUOmEpULEeqfMc95BD27pw" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_kUOmE5ULEeqfMc95BD27pw" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_kUOmFJULEeqfMc95BD27pw" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_pyKbkIVcEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_kUOmFZULEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_kUOmFpULEeqfMc95BD27pw" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_qj-TAIVcEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_kUOmF5ULEeqfMc95BD27pw"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_kUOmGJULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_kUOmGZULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_kUOmGpULEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_kUOmG5ULEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_kUOmHJULEeqfMc95BD27pw" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_kUOmHZULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_kUOmHpULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_kUOmH5ULEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_kUOmIJULEeqfMc95BD27pw"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_oPGGUIVcEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_kUOmJJULEeqfMc95BD27pw" x="490" y="510"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_kUPM4JULEeqfMc95BD27pw" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_kUPM4ZULEeqfMc95BD27pw" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_kUPM4pULEeqfMc95BD27pw" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_kUPM45ULEeqfMc95BD27pw" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_oCRnwIVbEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_kUPM5JULEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_kUPM5ZULEeqfMc95BD27pw" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_pXDCUIVbEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_kUPM5pULEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_kUPM55ULEeqfMc95BD27pw" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_qHZhMIVbEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_kUPM6JULEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_kUPM6ZULEeqfMc95BD27pw" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_qxdK0IVbEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_kUPM6pULEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_kUPM65ULEeqfMc95BD27pw" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_rp_8YIVbEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_kUPM7JULEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_kUPM7ZULEeqfMc95BD27pw" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_uscZsIVbEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_kUPM7pULEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_kUPM75ULEeqfMc95BD27pw" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_wd6XUIVbEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_kUPM8JULEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_kUPM8ZULEeqfMc95BD27pw" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_w_bI8IVbEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_kUPM8pULEeqfMc95BD27pw"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_kUPM85ULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_kUPM9JULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_kUPM9ZULEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_kUPM9pULEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_kUPM95ULEeqfMc95BD27pw" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_kUPM-JULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_kUPM-ZULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_kUPM-pULEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_kUPM-5ULEeqfMc95BD27pw"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_mNXUkIVbEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_kUPM_5ULEeqfMc95BD27pw" x="2449" y="353"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_kUPz8JULEeqfMc95BD27pw" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_kUPz8ZULEeqfMc95BD27pw" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_kUPz8pULEeqfMc95BD27pw" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_kUPz85ULEeqfMc95BD27pw" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_Ki9qEIVbEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_kUPz9JULEeqfMc95BD27pw"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_kUPz9ZULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_kUPz9pULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_kUPz95ULEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_kUPz-JULEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_kUPz-ZULEeqfMc95BD27pw" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_kUPz-pULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_kUPz-5ULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_kUPz_JULEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_kUPz_ZULEeqfMc95BD27pw"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_Im3JwIVbEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_kUP0AZULEeqfMc95BD27pw" x="710" y="330"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_kUP0ApULEeqfMc95BD27pw" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_kUP0A5ULEeqfMc95BD27pw" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_kUP0BJULEeqfMc95BD27pw" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_kUP0BZULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_kUP0BpULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_kUP0B5ULEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_kUP0CJULEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_kUP0CZULEeqfMc95BD27pw" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_kUP0CpULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_kUP0C5ULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_kUP0DJULEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_kUP0DZULEeqfMc95BD27pw"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_Tr5SkIVdEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_kUP0EZULEeqfMc95BD27pw" x="1650" y="510"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_kUP0GpULEeqfMc95BD27pw" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_kUP0G5ULEeqfMc95BD27pw" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_kUP0HJULEeqfMc95BD27pw" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_kUP0HZULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_kUP0HpULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_kUP0H5ULEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_kUP0IJULEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_kUP0IZULEeqfMc95BD27pw" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_kUP0IpULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_kUP0I5ULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_kUP0JJULEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_kUP0JZULEeqfMc95BD27pw"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_AwFawIVbEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_kUP0KZULEeqfMc95BD27pw" x="1570" y="50"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_kUQbAJULEeqfMc95BD27pw" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_kUQbAZULEeqfMc95BD27pw" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_kUQbApULEeqfMc95BD27pw" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_kUQbA5ULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_kUQbBJULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_kUQbBZULEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_kUQbBpULEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_kUQbB5ULEeqfMc95BD27pw" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_kUQbCJULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_kUQbCZULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_kUQbCpULEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_kUQbC5ULEeqfMc95BD27pw"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_kIQXUIVdEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_kUQbD5ULEeqfMc95BD27pw" x="3090" y="350"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_kUQbGZULEeqfMc95BD27pw" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_kUQbGpULEeqfMc95BD27pw" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_kUQbG5ULEeqfMc95BD27pw" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_kUQbHJULEeqfMc95BD27pw" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_6bNcAIVdEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_kUQbHZULEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_kUQbHpULEeqfMc95BD27pw" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_7aGGIIVdEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_kUQbH5ULEeqfMc95BD27pw"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_kUQbIJULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_kUQbIZULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_kUQbIpULEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_kUQbI5ULEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_kUQbJJULEeqfMc95BD27pw" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_kUQbJZULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_kUQbJpULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_kUQbJ5ULEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_kUQbKJULEeqfMc95BD27pw"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_4wdxcIVdEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_kUQbLJULEeqfMc95BD27pw" x="730" y="510"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_kUQbLpULEeqfMc95BD27pw" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_kUQbL5ULEeqfMc95BD27pw" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_kUQbMJULEeqfMc95BD27pw" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_kUQbMZULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_kUQbMpULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_kUQbM5ULEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_kUQbNJULEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_kUQbNZULEeqfMc95BD27pw" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_kUQbNpULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_kUQbN5ULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_kUQbOJULEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_kUQbOZULEeqfMc95BD27pw"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_Q1o3IIVdEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_kUQbPZULEeqfMc95BD27pw" x="1784" y="507"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_kURCEJULEeqfMc95BD27pw" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_kURCEZULEeqfMc95BD27pw" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_kURCEpULEeqfMc95BD27pw" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_kURCE5ULEeqfMc95BD27pw" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_VlPEsIVbEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_kURCFJULEeqfMc95BD27pw"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_kURCFZULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_kURCFpULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_kURCF5ULEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_kURCGJULEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_kURCGZULEeqfMc95BD27pw" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_kURCGpULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_kURCG5ULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_kURCHJULEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_kURCHZULEeqfMc95BD27pw"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_T1MDYIVbEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_kURCIZULEeqfMc95BD27pw" x="230" y="510"/>
+ </children>
+ <styles xmi:type="notation:StringValueStyle" xmi:id="_43OasZUJEeqWd_6S3mbYXg" name="diagram_compatibility_version" stringValue="1.4.0"/>
+ <styles xmi:type="notation:DiagramStyle" xmi:id="_43OaspUJEeqWd_6S3mbYXg"/>
+ <styles xmi:type="style:PapyrusDiagramStyle" xmi:id="_43Oas5UJEeqWd_6S3mbYXg" diagramKindId="org.eclipse.papyrus.uml.diagram.profile">
+ <owner xmi:type="uml:Profile" href="AIML.profile.uml#_H7fbMJT2Eeq5BK6mmo2rWg"/>
+ </styles>
+ <styles xmi:type="notation:EObjectListValueStyle" xmi:id="_C6QOkJnbEeqZJ7Fgbu454w" name="css_stylesheets" eObjectListValue="_mci3oJm1Eeq8nv7tV9lOqQ"/>
+ <element xmi:type="uml:Profile" href="AIML.profile.uml#_H7fbMJT2Eeq5BK6mmo2rWg"/>
+ <edges xmi:type="notation:Connector" xmi:id="_kUIfMJULEeqfMc95BD27pw" type="Generalization_Edge" source="_kUN-wJULEeqfMc95BD27pw" target="_kUP0GpULEeqfMc95BD27pw">
+ <children xmi:type="notation:DecorationNode" xmi:id="_kUIfMZULEeqfMc95BD27pw" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_kUIfMpULEeqfMc95BD27pw" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_kUIfM5ULEeqfMc95BD27pw" x="-1" y="58"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_kUIfNJULEeqfMc95BD27pw"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_Kab40IVeEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_kUIfNZULEeqfMc95BD27pw" points="[1730, 310, -643984, -643984]$[1590, 130, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_kUIfNpULEeqfMc95BD27pw" id="(0.4678362573099415,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_kUIfN5ULEeqfMc95BD27pw" id="(0.1384083044982699,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_kUKUYJULEeqfMc95BD27pw" type="Generalization_Edge" source="_kUQbAJULEeqfMc95BD27pw" target="_kUP0GpULEeqfMc95BD27pw">
+ <children xmi:type="notation:DecorationNode" xmi:id="_kUKUYZULEeqfMc95BD27pw" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_kUKUYpULEeqfMc95BD27pw" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_kUKUY5ULEeqfMc95BD27pw" x="-1" y="58"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_kUKUZJULEeqfMc95BD27pw"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_dbS6oIVeEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_kUKUZZULEeqfMc95BD27pw" points="[3110, 330, -643984, -643984]$[1810, 130, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_kUKUZpULEeqfMc95BD27pw" id="(0.4,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_kUKUZ5ULEeqfMc95BD27pw" id="(0.8996539792387543,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_kUK7cJULEeqfMc95BD27pw" type="Generalization_Edge" source="_kUMwoJULEeqfMc95BD27pw" target="_kUP0GpULEeqfMc95BD27pw">
+ <children xmi:type="notation:DecorationNode" xmi:id="_kUK7cZULEeqfMc95BD27pw" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_kUK7cpULEeqfMc95BD27pw" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_kUK7c5ULEeqfMc95BD27pw" x="-1" y="58"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_kUK7dJULEeqfMc95BD27pw"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_fZNY0IVeEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_kUK7dZULEeqfMc95BD27pw" points="[2750, 330, -643984, -643984]$[1810, 130, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_kUK7dpULEeqfMc95BD27pw" id="(0.35398230088495575,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_kUK7d5ULEeqfMc95BD27pw" id="(0.8996539792387543,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_kULigJULEeqfMc95BD27pw" type="Generalization_Edge" source="_kULiiJULEeqfMc95BD27pw" target="_kUP0GpULEeqfMc95BD27pw">
+ <children xmi:type="notation:DecorationNode" xmi:id="_kULigZULEeqfMc95BD27pw" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_kULigpULEeqfMc95BD27pw" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_kULig5ULEeqfMc95BD27pw" x="-1" y="58"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_kULihJULEeqfMc95BD27pw"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_bY_rsIVeEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_kULihZULEeqfMc95BD27pw" points="[3270, 330, -643984, -643984]$[1810, 130, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_kULihpULEeqfMc95BD27pw" id="(0.6,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_kULih5ULEeqfMc95BD27pw" id="(0.8996539792387543,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_kUMJkJULEeqfMc95BD27pw" type="Generalization_Edge" source="_kUMJmJULEeqfMc95BD27pw" target="_kUPz8JULEeqfMc95BD27pw">
+ <children xmi:type="notation:DecorationNode" xmi:id="_kUMJkZULEeqfMc95BD27pw" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_kUMJkpULEeqfMc95BD27pw" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_kUMJk5ULEeqfMc95BD27pw" x="1" y="58"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_kUMJlJULEeqfMc95BD27pw"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_ckA0sIVbEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_kUMJlZULEeqfMc95BD27pw" points="[170, 490, -643984, -643984]$[230, 413, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_kUMJlpULEeqfMc95BD27pw" id="(0.6024096385542169,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_kUMJl5ULEeqfMc95BD27pw" id="(0.0664451827242525,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_kUMwtZULEeqfMc95BD27pw" type="Generalization_Edge" source="_kURCEJULEeqfMc95BD27pw" target="_kUPz8JULEeqfMc95BD27pw">
+ <children xmi:type="notation:DecorationNode" xmi:id="_kUMwtpULEeqfMc95BD27pw" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_kUMwt5ULEeqfMc95BD27pw" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_kUMwuJULEeqfMc95BD27pw" x="-1" y="58"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_kUMwuZULEeqfMc95BD27pw"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_dEj9AIVbEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_kUMwupULEeqfMc95BD27pw" points="[410, 490, -643984, -643984]$[370, 413, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_kUMwu5ULEeqfMc95BD27pw" id="(0.18604651162790697,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_kUMwvJULEeqfMc95BD27pw" id="(0.39867109634551495,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_kUNXwJULEeqfMc95BD27pw" type="Generalization_Edge" source="_kUNXsJULEeqfMc95BD27pw" target="_kUP0GpULEeqfMc95BD27pw">
+ <children xmi:type="notation:DecorationNode" xmi:id="_kUNXwZULEeqfMc95BD27pw" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_kUNXwpULEeqfMc95BD27pw" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_kUNXw5ULEeqfMc95BD27pw" x="-1" y="58"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_kUNXxJULEeqfMc95BD27pw"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_esL6wIVeEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_kUNXxZULEeqfMc95BD27pw" points="[2970, 330, -643984, -643984]$[1810, 130, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_kUNXxpULEeqfMc95BD27pw" id="(0.4,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_kUNXx5ULEeqfMc95BD27pw" id="(0.8996539792387543,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_kUNXyJULEeqfMc95BD27pw" type="Generalization_Edge" source="_kUK7eJULEeqfMc95BD27pw" target="_kUPz8JULEeqfMc95BD27pw">
+ <children xmi:type="notation:DecorationNode" xmi:id="_kUNXyZULEeqfMc95BD27pw" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_kUNXypULEeqfMc95BD27pw" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_kUNXy5ULEeqfMc95BD27pw" x="-37" y="65"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_kUNXzJULEeqfMc95BD27pw"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_X3PuIIVcEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_kUNXzZULEeqfMc95BD27pw" points="[1330, 490, -643984, -643984]$[950, 413, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_kUNXzpULEeqfMc95BD27pw" id="(0.2,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_kUNXz5ULEeqfMc95BD27pw" id="(0.8637873754152824,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_kUNX0JULEeqfMc95BD27pw" type="Generalization_Edge" source="_kUPM4JULEeqfMc95BD27pw" target="_kUP0GpULEeqfMc95BD27pw">
+ <children xmi:type="notation:DecorationNode" xmi:id="_kUNX0ZULEeqfMc95BD27pw" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_kUNX0pULEeqfMc95BD27pw" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_kUNX05ULEeqfMc95BD27pw" y="59"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_kUNX1JULEeqfMc95BD27pw"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_gMwVoIVeEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_kUNX1ZULEeqfMc95BD27pw" points="[2510, 333, -643984, -643984]$[1790, 130, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_kUNX1pULEeqfMc95BD27pw" id="(0.38571428571428573,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_kUNX15ULEeqfMc95BD27pw" id="(0.8304498269896193,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_kUNX2JULEeqfMc95BD27pw" type="Generalization_Edge" source="_kUJtUJULEeqfMc95BD27pw" target="_kUP0GpULEeqfMc95BD27pw">
+ <children xmi:type="notation:DecorationNode" xmi:id="_kUNX2ZULEeqfMc95BD27pw" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_kUNX2pULEeqfMc95BD27pw" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_kUNX25ULEeqfMc95BD27pw" x="-1" y="58"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_kUNX3JULEeqfMc95BD27pw"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_SfSgEIVeEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_kUNX3ZULEeqfMc95BD27pw" points="[2110, 330, -643984, -643984]$[1650, 130, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_kUNX3pULEeqfMc95BD27pw" id="(0.4,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_kUNX35ULEeqfMc95BD27pw" id="(0.3460207612456747,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_kUN-0pULEeqfMc95BD27pw" type="Generalization_Edge" source="_kUMJqpULEeqfMc95BD27pw" target="_kUPz8JULEeqfMc95BD27pw">
+ <children xmi:type="notation:DecorationNode" xmi:id="_kUN-05ULEeqfMc95BD27pw" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_kUN-1JULEeqfMc95BD27pw" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_kUN-1ZULEeqfMc95BD27pw" x="1" y="58"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_kUN-1pULEeqfMc95BD27pw"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_XLnXMIVcEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_kUN-15ULEeqfMc95BD27pw" points="[1250, 490, -643984, -643984]$[950, 413, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_kUN-2JULEeqfMc95BD27pw" id="(0.6,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_kUN-2ZULEeqfMc95BD27pw" id="(0.8637873754152824,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_kUN-2pULEeqfMc95BD27pw" type="Generalization_Edge" source="_kUOmEZULEeqfMc95BD27pw" target="_kUPz8JULEeqfMc95BD27pw">
+ <children xmi:type="notation:DecorationNode" xmi:id="_kUN-25ULEeqfMc95BD27pw" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_kUN-3JULEeqfMc95BD27pw" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_kUN-3ZULEeqfMc95BD27pw" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_kUN-3pULEeqfMc95BD27pw"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_yH-P8IVcEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_kUN-35ULEeqfMc95BD27pw" points="[570, 490, -643984, -643984]$[570, 413, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_kUN-4JULEeqfMc95BD27pw" id="(0.5952380952380952,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_kUN-4ZULEeqfMc95BD27pw" id="(0.53156146179402,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_kUN-45ULEeqfMc95BD27pw" type="Generalization_Edge" source="_kUOmAJULEeqfMc95BD27pw" target="_kUP0GpULEeqfMc95BD27pw">
+ <children xmi:type="notation:DecorationNode" xmi:id="_kUN-5JULEeqfMc95BD27pw" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_kUN-5ZULEeqfMc95BD27pw" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_kUN-5pULEeqfMc95BD27pw" y="59"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_kUN-55ULEeqfMc95BD27pw"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_heXHcIVeEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_kUN-6JULEeqfMc95BD27pw" points="[2230, 330, -643984, -643984]$[1750, 130, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_kUN-6ZULEeqfMc95BD27pw" id="(0.4,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_kUN-6pULEeqfMc95BD27pw" id="(0.6920415224913494,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_kUOl0JULEeqfMc95BD27pw" type="Generalization_Edge" source="_kUQbLpULEeqfMc95BD27pw" target="_kUN-wJULEeqfMc95BD27pw">
+ <children xmi:type="notation:DecorationNode" xmi:id="_kUOl0ZULEeqfMc95BD27pw" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_kUOl0pULEeqfMc95BD27pw" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_kUOl05ULEeqfMc95BD27pw" x="-1" y="58"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_kUOl1JULEeqfMc95BD27pw"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_WoPu8IVdEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_kUOl1ZULEeqfMc95BD27pw" points="[1810, 487, -643984, -643984]$[1750, 413, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_kUOl1pULEeqfMc95BD27pw" id="(0.46,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_kUOl15ULEeqfMc95BD27pw" id="(0.5847953216374269,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_kUOl-JULEeqfMc95BD27pw" type="Generalization_Edge" source="_kUOl2JULEeqfMc95BD27pw" target="_kUP0GpULEeqfMc95BD27pw">
+ <children xmi:type="notation:DecorationNode" xmi:id="_kUOl-ZULEeqfMc95BD27pw" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_kUOl-pULEeqfMc95BD27pw" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_kUOl-5ULEeqfMc95BD27pw" x="-1" y="58"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_kUOl_JULEeqfMc95BD27pw"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_g0PMYIVeEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_kUOl_ZULEeqfMc95BD27pw" points="[2350, 330, -643984, -643984]$[1770, 130, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_kUOl_pULEeqfMc95BD27pw" id="(0.4,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_kUOl_5ULEeqfMc95BD27pw" id="(0.7612456747404844,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_kUPNAJULEeqfMc95BD27pw" type="Generalization_Edge" source="_kUN-_ZULEeqfMc95BD27pw" target="_kUP0GpULEeqfMc95BD27pw">
+ <children xmi:type="notation:DecorationNode" xmi:id="_kUPNAZULEeqfMc95BD27pw" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_kUPNApULEeqfMc95BD27pw" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_kUPNA5ULEeqfMc95BD27pw" x="-1" y="58"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_kUPNBJULEeqfMc95BD27pw"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_LicCsIVeEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_kUPNBZULEeqfMc95BD27pw" points="[1910, 330, -643984, -643984]$[1630, 130, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_kUPNBpULEeqfMc95BD27pw" id="(0.21390374331550802,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_kUPNB5ULEeqfMc95BD27pw" id="(0.2768166089965398,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_kUPNCZULEeqfMc95BD27pw" type="Generalization_Edge" source="_kUPz8JULEeqfMc95BD27pw" target="_kUP0GpULEeqfMc95BD27pw">
+ <children xmi:type="notation:DecorationNode" xmi:id="_kUPNCpULEeqfMc95BD27pw" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_kUPNC5ULEeqfMc95BD27pw" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_kUPNDJULEeqfMc95BD27pw" y="59"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_kUPNDZULEeqfMc95BD27pw"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_dfBEYIVbEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_kUPNDpULEeqfMc95BD27pw" points="[310, 310, -643984, -643984]$[390, 270, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_kUPND5ULEeqfMc95BD27pw" id="(0.5980066445182725,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_kUPNEJULEeqfMc95BD27pw" id="(0.0,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_kUPNEZULEeqfMc95BD27pw" type="Generalization_Edge" source="_kUP0ApULEeqfMc95BD27pw" target="_kUN-wJULEeqfMc95BD27pw">
+ <children xmi:type="notation:DecorationNode" xmi:id="_kUPNEpULEeqfMc95BD27pw" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_kUPNE5ULEeqfMc95BD27pw" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_kUPNFJULEeqfMc95BD27pw" x="1" y="59"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_kUPNFZULEeqfMc95BD27pw"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_WKteYIVdEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_kUPNFpULEeqfMc95BD27pw" points="[1670, 490, -643984, -643984]$[1710, 413, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_kUPNF5ULEeqfMc95BD27pw" id="(0.4,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_kUPNGJULEeqfMc95BD27pw" id="(0.3508771929824561,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_kUPNGpULEeqfMc95BD27pw" type="Generalization_Edge" source="_kUQbGZULEeqfMc95BD27pw" target="_kUPz8JULEeqfMc95BD27pw">
+ <children xmi:type="notation:DecorationNode" xmi:id="_kUPNG5ULEeqfMc95BD27pw" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_kUPNHJULEeqfMc95BD27pw" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_kUPNHZULEeqfMc95BD27pw" x="1" y="58"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_kUPNHpULEeqfMc95BD27pw"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_8qf-EIVdEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_kUPNH5ULEeqfMc95BD27pw" points="[810, 490, -643984, -643984]$[870, 413, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_kUPNIJULEeqfMc95BD27pw" id="(0.5347593582887701,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_kUPNIZULEeqfMc95BD27pw" id="(0.5980066445182725,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_kUP0EpULEeqfMc95BD27pw" type="Generalization_Edge" source="_kUN-65ULEeqfMc95BD27pw" target="_kUPz8JULEeqfMc95BD27pw">
+ <children xmi:type="notation:DecorationNode" xmi:id="_kUP0E5ULEeqfMc95BD27pw" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_kUP0FJULEeqfMc95BD27pw" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_kUP0FZULEeqfMc95BD27pw" x="-1" y="59"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_kUP0FpULEeqfMc95BD27pw"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_ymuBcIVcEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_kUP0F5ULEeqfMc95BD27pw" points="[1070, 490, -643984, -643984]$[910, 413, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_kUP0GJULEeqfMc95BD27pw" id="(0.6024096385542169,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_kUP0GZULEeqfMc95BD27pw" id="(0.7308970099667774,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_kUQbEJULEeqfMc95BD27pw" type="Generalization_Edge" source="_kUOl6JULEeqfMc95BD27pw" target="_kUPz8JULEeqfMc95BD27pw">
+ <children xmi:type="notation:DecorationNode" xmi:id="_kUQbEZULEeqfMc95BD27pw" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_kUQbEpULEeqfMc95BD27pw" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_kUQbE5ULEeqfMc95BD27pw" x="-1" y="59"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_kUQbFJULEeqfMc95BD27pw"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_WsaSsIVcEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_kUQbFZULEeqfMc95BD27pw" points="[1110, 490, -643984, -643984]$[950, 413, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_kUQbFpULEeqfMc95BD27pw" id="(0.4,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_kUQbF5ULEeqfMc95BD27pw" id="(0.8637873754152824,1.0)"/>
+ </edges>
+ </notation:Diagram>
+ <notation:Diagram xmi:id="_6JCn4JUJEeqWd_6S3mbYXg" type="PapyrusUMLProfileDiagram" name="Non-linear_activations_(other)" measurementUnit="Pixel">
+ <children xmi:type="notation:Shape" xmi:id="_y2OPoJULEeqfMc95BD27pw" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_y2OPoZULEeqfMc95BD27pw" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_y2OPopULEeqfMc95BD27pw" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_y2OPo5ULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_y2OPpJULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_y2OPpZULEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_y2OPppULEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_y2OPp5ULEeqfMc95BD27pw" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_y2OPqJULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_y2OPqZULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_y2OPqpULEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_y2OPq5ULEeqfMc95BD27pw"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_n_v7YIVfEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_y2OPr5ULEeqfMc95BD27pw" x="-410" y="190"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_y2PdwJULEeqfMc95BD27pw" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_y2PdwZULEeqfMc95BD27pw" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_y2PdwpULEeqfMc95BD27pw" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_y2Pdw5ULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_y2PdxJULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_y2PdxZULEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_y2PdxpULEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_y2Pdx5ULEeqfMc95BD27pw" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_y2PdyJULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_y2PdyZULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_y2PdypULEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_y2Pdy5ULEeqfMc95BD27pw"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_lbyw4IVfEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_y2Pdz5ULEeqfMc95BD27pw" x="-830" y="390"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_y2Qr4JULEeqfMc95BD27pw" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_y2Qr4ZULEeqfMc95BD27pw" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_y2Qr4pULEeqfMc95BD27pw" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_y2Qr45ULEeqfMc95BD27pw" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_zzHbwIVfEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_y2Qr5JULEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_y2Qr5ZULEeqfMc95BD27pw" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_09lDwIVfEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_y2Qr5pULEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_y2Qr55ULEeqfMc95BD27pw" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_1jP8oIVfEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_y2Qr6JULEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_y2Qr6ZULEeqfMc95BD27pw" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_2sVroIVfEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_y2Qr6pULEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_y2Qr65ULEeqfMc95BD27pw" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_3ZGrAIVfEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_y2Qr7JULEeqfMc95BD27pw"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_y2Qr7ZULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_y2Qr7pULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_y2Qr75ULEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_y2Qr8JULEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_y2Qr8ZULEeqfMc95BD27pw" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_y2Qr8pULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_y2Qr85ULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_y2Qr9JULEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_y2Qr9ZULEeqfMc95BD27pw"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_vpbpkIVfEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_y2Qr-ZULEeqfMc95BD27pw" x="-250" y="190"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_y2R6CZULEeqfMc95BD27pw" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_y2R6CpULEeqfMc95BD27pw" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_y2R6C5ULEeqfMc95BD27pw" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_y2R6DJULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_y2R6DZULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_y2R6DpULEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_y2R6D5ULEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_y2R6EJULEeqfMc95BD27pw" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_y2R6EZULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_y2R6EpULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_y2R6E5ULEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_y2R6FJULEeqfMc95BD27pw"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_nBjNwIVfEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_y2R6GJULEeqfMc95BD27pw" x="-710" y="390"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_y2ShEJULEeqfMc95BD27pw" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_y2ShEZULEeqfMc95BD27pw" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_y2ShEpULEeqfMc95BD27pw" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_y2ShE5ULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_y2ShFJULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_y2ShFZULEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_y2ShFpULEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_y2ShF5ULEeqfMc95BD27pw" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_y2ShGJULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_y2ShGZULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_y2ShGpULEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_y2ShG5ULEeqfMc95BD27pw"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_HyCdwIVfEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_y2ShH5ULEeqfMc95BD27pw" x="-630" y="10"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_y2TIKJULEeqfMc95BD27pw" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_y2TIKZULEeqfMc95BD27pw" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_y2TIKpULEeqfMc95BD27pw" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_y2TIK5ULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_y2TILJULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_y2TILZULEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_y2TILpULEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_y2TIL5ULEeqfMc95BD27pw" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_y2TIMJULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_y2TIMZULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_y2TIMpULEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_y2TIM5ULEeqfMc95BD27pw"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_qeP-IIVfEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_y2TIN5ULEeqfMc95BD27pw" x="-590" y="390"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_y2TvMJULEeqfMc95BD27pw" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_y2TvMZULEeqfMc95BD27pw" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_y2TvMpULEeqfMc95BD27pw" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_y2TvM5ULEeqfMc95BD27pw" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_f3_xIIVfEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_y2TvNJULEeqfMc95BD27pw"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_y2TvNZULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_y2TvNpULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_y2TvN5ULEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_y2TvOJULEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_y2TvOZULEeqfMc95BD27pw" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_y2TvOpULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_y2TvO5ULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_y2TvPJULEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_y2TvPZULEeqfMc95BD27pw"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_en-TsIVfEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_y2TvQZULEeqfMc95BD27pw" x="-730" y="190"/>
+ </children>
+ <styles xmi:type="notation:StringValueStyle" xmi:id="_6JCn4ZUJEeqWd_6S3mbYXg" name="diagram_compatibility_version" stringValue="1.4.0"/>
+ <styles xmi:type="notation:DiagramStyle" xmi:id="_6JCn4pUJEeqWd_6S3mbYXg"/>
+ <styles xmi:type="style:PapyrusDiagramStyle" xmi:id="_6JCn45UJEeqWd_6S3mbYXg" diagramKindId="org.eclipse.papyrus.uml.diagram.profile">
+ <owner xmi:type="uml:Profile" href="AIML.profile.uml#_K1H6wJT2Eeq5BK6mmo2rWg"/>
+ </styles>
+ <element xmi:type="uml:Profile" href="AIML.profile.uml#_K1H6wJT2Eeq5BK6mmo2rWg"/>
+ <edges xmi:type="notation:Connector" xmi:id="_y2QE0JULEeqfMc95BD27pw" type="Generalization_Edge" source="_y2TvMJULEeqfMc95BD27pw" target="_y2ShEJULEeqfMc95BD27pw">
+ <children xmi:type="notation:DecorationNode" xmi:id="_y2QE0ZULEeqfMc95BD27pw" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_y2QE0pULEeqfMc95BD27pw" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_y2QE05ULEeqfMc95BD27pw" x="1" y="59"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_y2QE1JULEeqfMc95BD27pw"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_98A-YIVfEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_y2QE1ZULEeqfMc95BD27pw" points="[-630, 170, -643984, -643984]$[-610, 90, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_y2QE1pULEeqfMc95BD27pw" id="(0.6486486486486487,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_y2QE15ULEeqfMc95BD27pw" id="(0.23121387283236994,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_y2RS8JULEeqfMc95BD27pw" type="Generalization_Edge" source="_y2Qr4JULEeqfMc95BD27pw" target="_y2ShEJULEeqfMc95BD27pw">
+ <children xmi:type="notation:DecorationNode" xmi:id="_y2RS8ZULEeqfMc95BD27pw" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_y2RS8pULEeqfMc95BD27pw" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_y2RS85ULEeqfMc95BD27pw" x="-1" y="58"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_y2RS9JULEeqfMc95BD27pw"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_8okZgIVfEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_y2RS9ZULEeqfMc95BD27pw" points="[-170, 170, -643984, -643984]$[-510, 90, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_y2RS9pULEeqfMc95BD27pw" id="(0.5154639175257731,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_y2RS95ULEeqfMc95BD27pw" id="(0.8092485549132948,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_y2RS-JULEeqfMc95BD27pw" type="Generalization_Edge" source="_y2TIKJULEeqfMc95BD27pw" target="_y2TvMJULEeqfMc95BD27pw">
+ <children xmi:type="notation:DecorationNode" xmi:id="_y2RS-ZULEeqfMc95BD27pw" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_y2RS-pULEeqfMc95BD27pw" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_y2RS-5ULEeqfMc95BD27pw" x="-1" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_y2RS_JULEeqfMc95BD27pw"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_-m_OAIVfEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_y2RS_ZULEeqfMc95BD27pw" points="[-550, 370, -643984, -643984]$[-610, 273, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_y2RS_pULEeqfMc95BD27pw" id="(0.6,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_y2RS_5ULEeqfMc95BD27pw" id="(0.7567567567567568,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_y2R6AJULEeqfMc95BD27pw" type="Generalization_Edge" source="_y2PdwJULEeqfMc95BD27pw" target="_y2TvMJULEeqfMc95BD27pw">
+ <children xmi:type="notation:DecorationNode" xmi:id="_y2R6AZULEeqfMc95BD27pw" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_y2R6ApULEeqfMc95BD27pw" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_y2R6A5ULEeqfMc95BD27pw" x="24" y="118"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_y2R6BJULEeqfMc95BD27pw"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#__rKAwIVfEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_y2R6BZULEeqfMc95BD27pw" points="[-790, 370, -643984, -643984]$[-710, 273, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_y2R6BpULEeqfMc95BD27pw" id="(0.6,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_y2R6B5ULEeqfMc95BD27pw" id="(0.21621621621621623,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_y2TIIJULEeqfMc95BD27pw" type="Generalization_Edge" source="_y2OPoJULEeqfMc95BD27pw" target="_y2ShEJULEeqfMc95BD27pw">
+ <children xmi:type="notation:DecorationNode" xmi:id="_y2TIIZULEeqfMc95BD27pw" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_y2TIIpULEeqfMc95BD27pw" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_y2TII5ULEeqfMc95BD27pw" x="-1" y="58"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_y2TIJJULEeqfMc95BD27pw"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_9EA_YIVfEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_y2TIJZULEeqfMc95BD27pw" points="[-390, 170, -643984, -643984]$[-530, 90, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_y2TIJpULEeqfMc95BD27pw" id="(0.4,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_y2TIJ5ULEeqfMc95BD27pw" id="(0.6936416184971098,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_y2TIOJULEeqfMc95BD27pw" type="Generalization_Edge" source="_y2R6CZULEeqfMc95BD27pw" target="_y2TvMJULEeqfMc95BD27pw">
+ <children xmi:type="notation:DecorationNode" xmi:id="_y2TIOZULEeqfMc95BD27pw" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_y2TIOpULEeqfMc95BD27pw" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_y2TIO5ULEeqfMc95BD27pw" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_y2TIPJULEeqfMc95BD27pw"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#__G9ukIVfEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_y2TIPZULEeqfMc95BD27pw" points="[-670, 370, -643984, -643984]$[-670, 273, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_y2TIPpULEeqfMc95BD27pw" id="(0.6,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_y2TIP5ULEeqfMc95BD27pw" id="(0.43243243243243246,1.0)"/>
+ </edges>
+ </notation:Diagram>
+ <notation:Diagram xmi:id="_7PFC4JUJEeqWd_6S3mbYXg" type="PapyrusUMLProfileDiagram" name="Normalization_layers" measurementUnit="Pixel">
+ <children xmi:type="notation:Shape" xmi:id="__By0oJULEeqfMc95BD27pw" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="__By0oZULEeqfMc95BD27pw" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="__By0opULEeqfMc95BD27pw" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="__By0o5ULEeqfMc95BD27pw" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_KI-OAIVhEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="__By0pJULEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="__By0pZULEeqfMc95BD27pw" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_OsXgsIVhEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="__By0ppULEeqfMc95BD27pw"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="__By0p5ULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="__By0qJULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="__By0qZULEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="__By0qpULEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="__By0q5ULEeqfMc95BD27pw" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="__By0rJULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="__By0rZULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="__By0rpULEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="__By0r5ULEeqfMc95BD27pw"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_GstigIVhEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="__By0s5ULEeqfMc95BD27pw" x="10" y="-750"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="__B0p0JULEeqfMc95BD27pw" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="__B0p0ZULEeqfMc95BD27pw" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="__B0p0pULEeqfMc95BD27pw" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="__B0p05ULEeqfMc95BD27pw" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_iVdAIIVhEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="__B0p1JULEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="__B0p1ZULEeqfMc95BD27pw" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_ygFbsIVhEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="__B0p1pULEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="__B0p15ULEeqfMc95BD27pw" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_2tKgIIVhEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="__B0p2JULEeqfMc95BD27pw"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="__B0p2ZULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="__B0p2pULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="__B0p25ULEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="__B0p3JULEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="__B0p3ZULEeqfMc95BD27pw" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="__B0p3pULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="__B0p35ULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="__B0p4JULEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="__B0p4ZULEeqfMc95BD27pw"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_fbbfAIVhEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="__B0p5ZULEeqfMc95BD27pw" x="950" y="-590"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="__B0p5pULEeqfMc95BD27pw" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="__B0p55ULEeqfMc95BD27pw" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="__B0p6JULEeqfMc95BD27pw" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="__B0p6ZULEeqfMc95BD27pw" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_gvtxYIVhEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="__B0p6pULEeqfMc95BD27pw"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="__B0p65ULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="__B0p7JULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="__B0p7ZULEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="__B0p7pULEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="__B0p75ULEeqfMc95BD27pw" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="__B0p8JULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="__B0p8ZULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="__B0p8pULEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="__B0p85ULEeqfMc95BD27pw"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_bf7SwIVhEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="__B0p95ULEeqfMc95BD27pw" x="330" y="-750"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="__B1Q6ZULEeqfMc95BD27pw" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="__B1Q6pULEeqfMc95BD27pw" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="__B1Q65ULEeqfMc95BD27pw" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="__B1Q7JULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="__B1Q7ZULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="__B1Q7pULEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="__B1Q75ULEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="__B1Q8JULEeqfMc95BD27pw" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="__B1Q8ZULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="__B1Q8pULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="__B1Q85ULEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="__B1Q9JULEeqfMc95BD27pw"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_BDZUIIViEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="__B1Q-JULEeqfMc95BD27pw" x="510" y="-370"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="__B138JULEeqfMc95BD27pw" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="__B138ZULEeqfMc95BD27pw" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="__B138pULEeqfMc95BD27pw" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="__B1385ULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="__B139JULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="__B139ZULEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="__B139pULEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="__B1395ULEeqfMc95BD27pw" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="__B13-JULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="__B13-ZULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="__B13-pULEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="__B13-5ULEeqfMc95BD27pw"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_OF6vQIViEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="__B13_5ULEeqfMc95BD27pw" x="1210" y="-370"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="__B14AJULEeqfMc95BD27pw" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="__B14AZULEeqfMc95BD27pw" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="__B14ApULEeqfMc95BD27pw" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="__B14A5ULEeqfMc95BD27pw" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_mNNU0IVhEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="__B14BJULEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="__B14BZULEeqfMc95BD27pw" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_njZrsIVhEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="__B14BpULEeqfMc95BD27pw"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="__B14B5ULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="__B14CJULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="__B14CZULEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="__B14CpULEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="__B14C5ULEeqfMc95BD27pw" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="__B14DJULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="__B14DZULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="__B14DpULEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="__B14D5ULEeqfMc95BD27pw"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_kVSw8IVhEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="__B14E5ULEeqfMc95BD27pw" x="270" y="-590"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="__B14FJULEeqfMc95BD27pw" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="__B14FZULEeqfMc95BD27pw" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="__B14FpULEeqfMc95BD27pw" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="__B14F5ULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="__B14GJULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="__B14GZULEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="__B14GpULEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="__B14G5ULEeqfMc95BD27pw" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="__B14HJULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="__B14HZULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="__B14HpULEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="__B14H5ULEeqfMc95BD27pw"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_SiGmsIViEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="__B14I5ULEeqfMc95BD27pw" x="1450" y="-370"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="__B2fApULEeqfMc95BD27pw" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="__B2fA5ULEeqfMc95BD27pw" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="__B2fBJULEeqfMc95BD27pw" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="__B2fBZULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="__B2fBpULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="__B2fB5ULEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="__B2fCJULEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="__B2fCZULEeqfMc95BD27pw" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="__B2fCpULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="__B2fC5ULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="__B2fDJULEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="__B2fDZULEeqfMc95BD27pw"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_ws_i4IVgEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="__B2fEZULEeqfMc95BD27pw" x="210" y="-1110"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="__B3GEZULEeqfMc95BD27pw" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="__B3GEpULEeqfMc95BD27pw" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="__B3GE5ULEeqfMc95BD27pw" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="__B3GFJULEeqfMc95BD27pw" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_K2rMEIViEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="__B3GFZULEeqfMc95BD27pw"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="__B3GFpULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="__B3GF5ULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="__B3GGJULEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="__B3GGZULEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="__B3GGpULEeqfMc95BD27pw" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="__B3GG5ULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="__B3GHJULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="__B3GHZULEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="__B3GHpULEeqfMc95BD27pw"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_Ikef8IViEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="__B3GIpULEeqfMc95BD27pw" x="950" y="-370"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="__B3tKJULEeqfMc95BD27pw" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="__B3tKZULEeqfMc95BD27pw" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="__B3tKpULEeqfMc95BD27pw" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="__B3tK5ULEeqfMc95BD27pw" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_Qt56oIVhEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="__B3tLJULEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="__B3tLZULEeqfMc95BD27pw" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_RjEoEIVhEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="__B3tLpULEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="__B3tL5ULEeqfMc95BD27pw" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_SBd0QIVhEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="__B3tMJULEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="__B3tMZULEeqfMc95BD27pw" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_SVdHQIVhEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="__B3tMpULEeqfMc95BD27pw"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="__B3tM5ULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="__B3tNJULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="__B3tNZULEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="__B3tNpULEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="__B3tN5ULEeqfMc95BD27pw" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="__B3tOJULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="__B3tOZULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="__B3tOpULEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="__B3tO5ULEeqfMc95BD27pw"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_ILIBQIVhEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="__B3tP5ULEeqfMc95BD27pw" x="530" y="-950"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="__B5iUJULEeqfMc95BD27pw" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="__B5iUZULEeqfMc95BD27pw" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="__B5iUpULEeqfMc95BD27pw" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="__B5iU5ULEeqfMc95BD27pw" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_4_83kIVgEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="__B5iVJULEeqfMc95BD27pw"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="__B5iVZULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="__B5iVpULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="__B5iV5ULEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="__B5iWJULEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="__B5iWZULEeqfMc95BD27pw" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="__B5iWpULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="__B5iW5ULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="__B5iXJULEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="__B5iXZULEeqfMc95BD27pw"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_2ZKbgIVgEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="__B5iYZULEeqfMc95BD27pw" x="70" y="-930"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="__B5iYpULEeqfMc95BD27pw" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="__B5iY5ULEeqfMc95BD27pw" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="__B5iZJULEeqfMc95BD27pw" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="__B5iZZULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="__B5iZpULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="__B5iZ5ULEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="__B5iaJULEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="__B5iaZULEeqfMc95BD27pw" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="__B5iapULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="__B5ia5ULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="__B5ibJULEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="__B5ibZULEeqfMc95BD27pw"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_GDAowIViEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="__B5icZULEeqfMc95BD27pw" x="790" y="-370"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="__B6JgZULEeqfMc95BD27pw" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="__B6JgpULEeqfMc95BD27pw" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="__B6Jg5ULEeqfMc95BD27pw" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="__B6JhJULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="__B6JhZULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="__B6JhpULEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="__B6Jh5ULEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="__B6JiJULEeqfMc95BD27pw" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="__B6JiZULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="__B6JipULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="__B6Ji5ULEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="__B6JjJULEeqfMc95BD27pw"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_ELXxsIViEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="__B6JkJULEeqfMc95BD27pw" x="650" y="-370"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="__B6weZULEeqfMc95BD27pw" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="__B6wepULEeqfMc95BD27pw" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="__B6we5ULEeqfMc95BD27pw" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="__B6wfJULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="__B6wfZULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="__B6wfpULEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="__B6wf5ULEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="__B6wgJULEeqfMc95BD27pw" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="__B6wgZULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="__B6wgpULEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="__B6wg5ULEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="__B6whJULEeqfMc95BD27pw"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_RKVigIViEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="__B6wiJULEeqfMc95BD27pw" x="1330" y="-370"/>
+ </children>
+ <styles xmi:type="notation:StringValueStyle" xmi:id="_7PFC4ZUJEeqWd_6S3mbYXg" name="diagram_compatibility_version" stringValue="1.4.0"/>
+ <styles xmi:type="notation:DiagramStyle" xmi:id="_7PFC4pUJEeqWd_6S3mbYXg"/>
+ <styles xmi:type="style:PapyrusDiagramStyle" xmi:id="_7PFC45UJEeqWd_6S3mbYXg" diagramKindId="org.eclipse.papyrus.uml.diagram.profile">
+ <owner xmi:type="uml:Profile" href="AIML.profile.uml#_N5zMsJT2Eeq5BK6mmo2rWg"/>
+ </styles>
+ <element xmi:type="uml:Profile" href="AIML.profile.uml#_N5zMsJT2Eeq5BK6mmo2rWg"/>
+ <edges xmi:type="notation:Connector" xmi:id="__B0CwJULEeqfMc95BD27pw" type="Generalization_Edge" source="__B0p5pULEeqfMc95BD27pw" target="__B5iUJULEeqfMc95BD27pw">
+ <children xmi:type="notation:DecorationNode" xmi:id="__B0CwZULEeqfMc95BD27pw" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="__B0CwpULEeqfMc95BD27pw" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="__B0Cw5ULEeqfMc95BD27pw" x="-1" y="58"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="__B0CxJULEeqfMc95BD27pw"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_sCPOgIVhEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="__B0CxZULEeqfMc95BD27pw" points="[330, -770, -643984, -643984]$[170, -847, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="__B0CxpULEeqfMc95BD27pw" id="(0.11976047904191617,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="__B0Cx5ULEeqfMc95BD27pw" id="(0.7741935483870968,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="__B1Q4ZULEeqfMc95BD27pw" type="Generalization_Edge" source="__B138JULEeqfMc95BD27pw" target="__B0p0JULEeqfMc95BD27pw">
+ <children xmi:type="notation:DecorationNode" xmi:id="__B1Q4pULEeqfMc95BD27pw" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="__B1Q45ULEeqfMc95BD27pw" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="__B1Q5JULEeqfMc95BD27pw" y="59"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="__B1Q5ZULEeqfMc95BD27pw"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_alo_UIViEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="__B1Q5pULEeqfMc95BD27pw" points="[1230, -390, -643984, -643984]$[1090, -475, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="__B1Q55ULEeqfMc95BD27pw" id="(0.39603960396039606,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="__B1Q6JULEeqfMc95BD27pw" id="(0.6611570247933884,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="__B2fEpULEeqfMc95BD27pw" type="Generalization_Edge" source="__By0oJULEeqfMc95BD27pw" target="__B5iUJULEeqfMc95BD27pw">
+ <children xmi:type="notation:DecorationNode" xmi:id="__B2fE5ULEeqfMc95BD27pw" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="__B2fFJULEeqfMc95BD27pw" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="__B2fFZULEeqfMc95BD27pw" x="1" y="58"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="__B2fFpULEeqfMc95BD27pw"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_WYnasIVhEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="__B2fF5ULEeqfMc95BD27pw" points="[10, -770, -643984, -643984]$[70, -847, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="__B2fGJULEeqfMc95BD27pw" id="(0.08403361344537816,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="__B2fGZULEeqfMc95BD27pw" id="(0.12903225806451613,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="__B3tIJULEeqfMc95BD27pw" type="Generalization_Edge" source="__B6weZULEeqfMc95BD27pw" target="__B0p0JULEeqfMc95BD27pw">
+ <children xmi:type="notation:DecorationNode" xmi:id="__B3tIZULEeqfMc95BD27pw" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="__B3tIpULEeqfMc95BD27pw" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="__B3tI5ULEeqfMc95BD27pw" x="-1" y="58"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="__B3tJJULEeqfMc95BD27pw"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_a9amIIViEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="__B3tJZULEeqfMc95BD27pw" points="[1370, -390, -643984, -643984]$[1130, -475, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="__B3tJpULEeqfMc95BD27pw" id="(0.594059405940594,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="__B3tJ5ULEeqfMc95BD27pw" id="(0.8264462809917356,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="__B4UMJULEeqfMc95BD27pw" type="Generalization_Edge" source="__B5iYpULEeqfMc95BD27pw" target="__B0p0JULEeqfMc95BD27pw">
+ <children xmi:type="notation:DecorationNode" xmi:id="__B4UMZULEeqfMc95BD27pw" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="__B4UMpULEeqfMc95BD27pw" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="__B4UM5ULEeqfMc95BD27pw" x="1" y="59"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="__B4UNJULEeqfMc95BD27pw"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_ZlFhQIViEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="__B4UNZULEeqfMc95BD27pw" points="[810, -390, -643984, -643984]$[970, -475, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="__B4UNpULEeqfMc95BD27pw" id="(0.4,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="__B4UN5ULEeqfMc95BD27pw" id="(0.1652892561983471,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="__B47QJULEeqfMc95BD27pw" type="Generalization_Edge" source="__B0p0JULEeqfMc95BD27pw" target="__B0p5pULEeqfMc95BD27pw">
+ <children xmi:type="notation:DecorationNode" xmi:id="__B47QZULEeqfMc95BD27pw" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="__B47QpULEeqfMc95BD27pw" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="__B47Q5ULEeqfMc95BD27pw" y="59"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="__B47RJULEeqfMc95BD27pw"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_67JjgIVhEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="__B47RZULEeqfMc95BD27pw" points="[590, -610, -643984, -643984]$[450, -667, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="__B47RpULEeqfMc95BD27pw" id="(0.3305785123966942,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="__B47R5ULEeqfMc95BD27pw" id="(0.8383233532934131,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="__B47SZULEeqfMc95BD27pw" type="Generalization_Edge" source="__B5iUJULEeqfMc95BD27pw" target="__B2fApULEeqfMc95BD27pw">
+ <children xmi:type="notation:DecorationNode" xmi:id="__B47SpULEeqfMc95BD27pw" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="__B47S5ULEeqfMc95BD27pw" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="__B47TJULEeqfMc95BD27pw" x="1" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="__B47TZULEeqfMc95BD27pw"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_UxrSEIVhEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="__B47TpULEeqfMc95BD27pw" points="[170, -950, -643984, -643984]$[210, -1030, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="__B47T5ULEeqfMc95BD27pw" id="(0.7741935483870968,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="__B47UJULEeqfMc95BD27pw" id="(0.16129032258064516,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="__B5icpULEeqfMc95BD27pw" type="Generalization_Edge" source="__B1Q6ZULEeqfMc95BD27pw" target="__B0p0JULEeqfMc95BD27pw">
+ <children xmi:type="notation:DecorationNode" xmi:id="__B5ic5ULEeqfMc95BD27pw" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="__B5idJULEeqfMc95BD27pw" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="__B5idZULEeqfMc95BD27pw" x="1" y="58"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="__B5idpULEeqfMc95BD27pw"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_XsCU8IViEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="__B5id5ULEeqfMc95BD27pw" points="[510, -390, -643984, -643984]$[950, -475, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="__B5ieJULEeqfMc95BD27pw" id="(0.2,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="__B5ieZULEeqfMc95BD27pw" id="(0.08264462809917356,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="__B6JYJULEeqfMc95BD27pw" type="Generalization_Edge" source="__B3GEZULEeqfMc95BD27pw" target="__B0p0JULEeqfMc95BD27pw">
+ <children xmi:type="notation:DecorationNode" xmi:id="__B6JYZULEeqfMc95BD27pw" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="__B6JYpULEeqfMc95BD27pw" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="__B6JY5ULEeqfMc95BD27pw" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="__B6JZJULEeqfMc95BD27pw"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_aLhPIIViEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="__B6JZZULEeqfMc95BD27pw" points="[1050, -390, -643984, -643984]$[1050, -475, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="__B6JZpULEeqfMc95BD27pw" id="(0.5529953917050692,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="__B6JZ5ULEeqfMc95BD27pw" id="(0.49586776859504134,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="__B6JaJULEeqfMc95BD27pw" type="Generalization_Edge" source="__B14AJULEeqfMc95BD27pw" target="__B0p5pULEeqfMc95BD27pw">
+ <children xmi:type="notation:DecorationNode" xmi:id="__B6JaZULEeqfMc95BD27pw" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="__B6JapULEeqfMc95BD27pw" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="__B6Ja5ULEeqfMc95BD27pw" x="1" y="59"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="__B6JbJULEeqfMc95BD27pw"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_qWp2cIVhEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="__B6JbZULEeqfMc95BD27pw" points="[410, -610, -643984, -643984]$[410, -667, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="__B6JbpULEeqfMc95BD27pw" id="(0.2803738317757009,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="__B6Jb5ULEeqfMc95BD27pw" id="(0.11976047904191617,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="__B6JcZULEeqfMc95BD27pw" type="Generalization_Edge" source="__B14FJULEeqfMc95BD27pw" target="__B0p0JULEeqfMc95BD27pw">
+ <children xmi:type="notation:DecorationNode" xmi:id="__B6JcpULEeqfMc95BD27pw" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="__B6Jc5ULEeqfMc95BD27pw" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="__B6JdJULEeqfMc95BD27pw" x="1" y="58"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="__B6JdZULEeqfMc95BD27pw"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_baXn4IViEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="__B6JdpULEeqfMc95BD27pw" points="[1470, -390, -643984, -643984]$[1130, -475, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="__B6Jd5ULEeqfMc95BD27pw" id="(0.39603960396039606,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="__B6JeJULEeqfMc95BD27pw" id="(0.8264462809917356,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="__B6JeZULEeqfMc95BD27pw" type="Generalization_Edge" source="__B3tKJULEeqfMc95BD27pw" target="__B2fApULEeqfMc95BD27pw">
+ <children xmi:type="notation:DecorationNode" xmi:id="__B6JepULEeqfMc95BD27pw" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="__B6Je5ULEeqfMc95BD27pw" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="__B6JfJULEeqfMc95BD27pw" x="-1" y="58"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="__B6JfZULEeqfMc95BD27pw"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_UQtTAIVhEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="__B6JfpULEeqfMc95BD27pw" points="[450, -970, -643984, -643984]$[290, -1030, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="__B6Jf5ULEeqfMc95BD27pw" id="(0.24096385542168675,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="__B6JgJULEeqfMc95BD27pw" id="(0.8064516129032258,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="__B6wcZULEeqfMc95BD27pw" type="Generalization_Edge" source="__B6JgZULEeqfMc95BD27pw" target="__B0p0JULEeqfMc95BD27pw">
+ <children xmi:type="notation:DecorationNode" xmi:id="__B6wcpULEeqfMc95BD27pw" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="__B6wc5ULEeqfMc95BD27pw" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="__B6wdJULEeqfMc95BD27pw" x="1" y="58"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="__B6wdZULEeqfMc95BD27pw"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_YkOhMIViEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="__B6wdpULEeqfMc95BD27pw" points="[670, -390, -643984, -643984]$[970, -475, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="__B6wd5ULEeqfMc95BD27pw" id="(0.4,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="__B6weJULEeqfMc95BD27pw" id="(0.1652892561983471,1.0)"/>
+ </edges>
+ </notation:Diagram>
+ <notation:Diagram xmi:id="_8k-e0JUJEeqWd_6S3mbYXg" type="PapyrusUMLProfileDiagram" name="Recurrent_layers" measurementUnit="Pixel">
+ <children xmi:type="notation:Shape" xmi:id="_IBabAJUMEeqfMc95BD27pw" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_IBabAZUMEeqfMc95BD27pw" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_IBabApUMEeqfMc95BD27pw" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_IBabA5UMEeqfMc95BD27pw" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_AP36kIVkEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_IBabBJUMEeqfMc95BD27pw"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_IBabBZUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_IBabBpUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_IBabB5UMEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_IBabCJUMEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_IBabCZUMEeqfMc95BD27pw" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_IBabCpUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_IBabC5UMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_IBabDJUMEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_IBabDZUMEeqfMc95BD27pw"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_-5MbgIVjEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_IBabEZUMEeqfMc95BD27pw" x="450" y="210"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_IBbpIJUMEeqfMc95BD27pw" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_IBbpIZUMEeqfMc95BD27pw" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_IBbpIpUMEeqfMc95BD27pw" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_IBbpI5UMEeqfMc95BD27pw" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_495hwIVjEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_IBbpJJUMEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_IBbpJZUMEeqfMc95BD27pw" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_6la5MIVjEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_IBbpJpUMEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_IBbpJ5UMEeqfMc95BD27pw" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_7-lrkIVjEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_IBbpKJUMEeqfMc95BD27pw"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_IBbpKZUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_IBbpKpUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_IBbpK5UMEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_IBbpLJUMEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_IBbpLZUMEeqfMc95BD27pw" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_IBbpLpUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_IBbpL5UMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_IBbpMJUMEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_IBbpMZUMEeqfMc95BD27pw"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_tHLn4IViEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_IBbpNZUMEeqfMc95BD27pw" x="410" y="10"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_IBcQMJUMEeqfMc95BD27pw" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_IBcQMZUMEeqfMc95BD27pw" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_IBcQMpUMEeqfMc95BD27pw" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_IBcQM5UMEeqfMc95BD27pw" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_iaV_0IVkEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_IBcQNJUMEeqfMc95BD27pw"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_IBcQNZUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_IBcQNpUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_IBcQN5UMEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_IBcQOJUMEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_IBcQOZUMEeqfMc95BD27pw" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_IBcQOpUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_IBcQO5UMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_IBcQPJUMEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_IBcQPZUMEeqfMc95BD27pw"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_f3AgYIVkEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_IBcQQZUMEeqfMc95BD27pw" x="40" y="520"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_IBc3SJUMEeqfMc95BD27pw" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_IBc3SZUMEeqfMc95BD27pw" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_IBc3SpUMEeqfMc95BD27pw" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_IBc3S5UMEeqfMc95BD27pw" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_Mgv2UIVkEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_IBc3TJUMEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_IBc3TZUMEeqfMc95BD27pw" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_NmsKsIVkEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_IBc3TpUMEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_IBc3T5UMEeqfMc95BD27pw" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_bIpT0IVkEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_IBc3UJUMEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_IBc3UZUMEeqfMc95BD27pw" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_dH_VYIVkEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_IBc3UpUMEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_GNDAIKaAEeqIr7xwFiWQGQ" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_GM1kwKaAEeqIr7xwFiWQGQ"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_GNDAIaaAEeqIr7xwFiWQGQ"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_M3Mj8KaAEeqIr7xwFiWQGQ" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_M26QEKaAEeqIr7xwFiWQGQ"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_M3Mj8aaAEeqIr7xwFiWQGQ"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_OaydoKaAEeqIr7xwFiWQGQ" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_OalCQKaAEeqIr7xwFiWQGQ"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_OaydoaaAEeqIr7xwFiWQGQ"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_PFwtQKaAEeqIr7xwFiWQGQ" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_PFb9IKaAEeqIr7xwFiWQGQ"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_PFwtQaaAEeqIr7xwFiWQGQ"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_TRIhgKaAEeqIr7xwFiWQGQ" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_TQ4C0KaAEeqIr7xwFiWQGQ"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_TRIhgaaAEeqIr7xwFiWQGQ"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_upKNIKaBEeqIr7xwFiWQGQ" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_uo4gUKaBEeqIr7xwFiWQGQ"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_upKNIaaBEeqIr7xwFiWQGQ"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_zj8sIKaBEeqIr7xwFiWQGQ" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_zjmG0KaBEeqIr7xwFiWQGQ"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_zj8sIaaBEeqIr7xwFiWQGQ"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_0zS0IKaBEeqIr7xwFiWQGQ" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_0y_SIKaBEeqIr7xwFiWQGQ"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_0zS0IaaBEeqIr7xwFiWQGQ"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_7RCToKaBEeqIr7xwFiWQGQ" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_7QlAoKaBEeqIr7xwFiWQGQ"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_7RCToaaBEeqIr7xwFiWQGQ"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_ugwuwOauEeq2yMJqys2DtQ" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_ugELMOauEeq2yMJqys2DtQ"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_ugwuweauEeq2yMJqys2DtQ"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_IBc3U5UMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_IBc3VJUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_IBc3VZUMEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_IBc3VpUMEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_IBc3V5UMEeqfMc95BD27pw" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_IBc3WJUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_IBc3WZUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_IBc3WpUMEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_IBc3W5UMEeqfMc95BD27pw"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_w_eSoIVjEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_IBc3X5UMEeqfMc95BD27pw" x="180" y="180"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_IBdeUJUMEeqfMc95BD27pw" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_IBdeUZUMEeqfMc95BD27pw" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_IBdeUpUMEeqfMc95BD27pw" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_IBdeU5UMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_IBdeVJUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_IBdeVZUMEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_IBdeVpUMEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_IBdeV5UMEeqfMc95BD27pw" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_IBdeWJUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_IBdeWZUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_IBdeWpUMEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_IBdeW5UMEeqfMc95BD27pw"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_l8ROcIVkEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_IBdeX5UMEeqfMc95BD27pw" x="420" y="520"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_IBeFYJUMEeqfMc95BD27pw" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_IBeFYZUMEeqfMc95BD27pw" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_IBeFYpUMEeqfMc95BD27pw" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_IBeFY5UMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_IBeFZJUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_IBeFZZUMEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_IBeFZpUMEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_IBeFZ5UMEeqfMc95BD27pw" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_IBeFaJUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_IBeFaZUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_IBeFapUMEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_IBeFa5UMEeqfMc95BD27pw"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_EdBQcIVkEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_IBeFb5UMEeqfMc95BD27pw" x="850" y="210"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_IBescJUMEeqfMc95BD27pw" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_IBescZUMEeqfMc95BD27pw" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_IBescpUMEeqfMc95BD27pw" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_IBesc5UMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_IBesdJUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_IBesdZUMEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_IBesdpUMEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_IBesd5UMEeqfMc95BD27pw" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_IBeseJUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_IBeseZUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_IBesepUMEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_IBese5UMEeqfMc95BD27pw"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_CfAEkIVkEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_IBesf5UMEeqfMc95BD27pw" x="710" y="210"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_IBfTj5UMEeqfMc95BD27pw" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_IBfTkJUMEeqfMc95BD27pw" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_IBfTkZUMEeqfMc95BD27pw" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_IBfTkpUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_IBfTk5UMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_IBfTlJUMEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_IBfTlZUMEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_IBfTlpUMEeqfMc95BD27pw" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_IBfTl5UMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_IBfTmJUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_IBfTmZUMEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_IBfTmpUMEeqfMc95BD27pw"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_kOLU8IVkEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_IBfTnpUMEeqfMc95BD27pw" x="280" y="520"/>
+ </children>
+ <styles xmi:type="notation:StringValueStyle" xmi:id="_8k-e0ZUJEeqWd_6S3mbYXg" name="diagram_compatibility_version" stringValue="1.4.0"/>
+ <styles xmi:type="notation:DiagramStyle" xmi:id="_8k-e0pUJEeqWd_6S3mbYXg"/>
+ <styles xmi:type="style:PapyrusDiagramStyle" xmi:id="_8k-e05UJEeqWd_6S3mbYXg" diagramKindId="org.eclipse.papyrus.uml.diagram.profile">
+ <owner xmi:type="uml:Profile" href="AIML.profile.uml#_RAjiQJT2Eeq5BK6mmo2rWg"/>
+ </styles>
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_GVw4cPmcEeqCRcDdPeQY2A" name="rulergrid.viewgrid"/>
+ <element xmi:type="uml:Profile" href="AIML.profile.uml#_RAjiQJT2Eeq5BK6mmo2rWg"/>
+ <edges xmi:type="notation:Connector" xmi:id="_IBcQQpUMEeqfMc95BD27pw" type="Generalization_Edge" source="_IBeFYJUMEeqfMc95BD27pw" target="_IBbpIJUMEeqfMc95BD27pw">
+ <children xmi:type="notation:DecorationNode" xmi:id="_IBcQQ5UMEeqfMc95BD27pw" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_IBcQRJUMEeqfMc95BD27pw" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_IBcQRZUMEeqfMc95BD27pw" x="1" y="58"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_IBcQRpUMEeqfMc95BD27pw"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_svnxkIVkEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_IBcQR5UMEeqfMc95BD27pw" points="[870, 190, -643984, -643984]$[570, 125, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_IBcQSJUMEeqfMc95BD27pw" id="(0.4,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_IBcQSZUMEeqfMc95BD27pw" id="(0.9090909090909091,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_IBc3QJUMEeqfMc95BD27pw" type="Generalization_Edge" source="_IBdeUJUMEeqfMc95BD27pw" target="_IBc3SJUMEeqfMc95BD27pw">
+ <children xmi:type="notation:DecorationNode" xmi:id="_IBc3QZUMEeqfMc95BD27pw" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_IBc3QpUMEeqfMc95BD27pw" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_IBc3Q5UMEeqfMc95BD27pw" x="-2" y="57"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_IBc3RJUMEeqfMc95BD27pw"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_qv_cIIVkEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_IBc3RZUMEeqfMc95BD27pw" points="[430, 410, -643984, -643984]$[330, 341, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_IBc3RpUMEeqfMc95BD27pw" id="(0.4,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_IBc3R5UMEeqfMc95BD27pw" id="(0.8264462809917356,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_IBesgJUMEeqfMc95BD27pw" type="Generalization_Edge" source="_IBescJUMEeqfMc95BD27pw" target="_IBbpIJUMEeqfMc95BD27pw">
+ <children xmi:type="notation:DecorationNode" xmi:id="_IBesgZUMEeqfMc95BD27pw" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_IBesgpUMEeqfMc95BD27pw" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_IBesg5UMEeqfMc95BD27pw" x="-2" y="57"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_IBeshJUMEeqfMc95BD27pw"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_sMLGQIVkEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_IBeshZUMEeqfMc95BD27pw" points="[730, 190, -643984, -643984]$[550, 125, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_IBeshpUMEeqfMc95BD27pw" id="(0.4,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_IBesh5UMEeqfMc95BD27pw" id="(0.8080808080808081,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_IBesiJUMEeqfMc95BD27pw" type="Generalization_Edge" source="_IBfTj5UMEeqfMc95BD27pw" target="_IBc3SJUMEeqfMc95BD27pw">
+ <children xmi:type="notation:DecorationNode" xmi:id="_IBesiZUMEeqfMc95BD27pw" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_IBesipUMEeqfMc95BD27pw" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_IBesi5UMEeqfMc95BD27pw" x="-1" y="58"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_IBesjJUMEeqfMc95BD27pw"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_p2PwsIVkEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_IBesjZUMEeqfMc95BD27pw" points="[310, 410, -643984, -643984]$[290, 341, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_IBesjpUMEeqfMc95BD27pw" id="(0.4,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_IBesj5UMEeqfMc95BD27pw" id="(0.5785123966942148,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_IBeskJUMEeqfMc95BD27pw" type="Generalization_Edge" source="_IBcQMJUMEeqfMc95BD27pw" target="_IBc3SJUMEeqfMc95BD27pw">
+ <children xmi:type="notation:DecorationNode" xmi:id="_IBeskZUMEeqfMc95BD27pw" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_IBeskpUMEeqfMc95BD27pw" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_IBesk5UMEeqfMc95BD27pw" y="59"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_IBeslJUMEeqfMc95BD27pw"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_pXFIcIVkEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_IBeslZUMEeqfMc95BD27pw" points="[150, 410, -643984, -643984]$[230, 341, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_IBeslpUMEeqfMc95BD27pw" id="(0.6976744186046512,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_IBesl5UMEeqfMc95BD27pw" id="(0.3305785123966942,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_IBesmJUMEeqfMc95BD27pw" type="Generalization_Edge" source="_IBc3SJUMEeqfMc95BD27pw" target="_IBbpIJUMEeqfMc95BD27pw">
+ <children xmi:type="notation:DecorationNode" xmi:id="_IBfTgJUMEeqfMc95BD27pw" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_IBfTgZUMEeqfMc95BD27pw" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_IBfTgpUMEeqfMc95BD27pw" y="59"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_IBfTg5UMEeqfMc95BD27pw"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_tTUUgIVkEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_IBfThJUMEeqfMc95BD27pw" points="[270, 190, -643984, -643984]$[450, 125, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_IBfThZUMEeqfMc95BD27pw" id="(0.49586776859504134,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_IBfThpUMEeqfMc95BD27pw" id="(0.3048780487804878,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_IBfTh5UMEeqfMc95BD27pw" type="Generalization_Edge" source="_IBabAJUMEeqfMc95BD27pw" target="_IBbpIJUMEeqfMc95BD27pw">
+ <children xmi:type="notation:DecorationNode" xmi:id="_IBfTiJUMEeqfMc95BD27pw" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_IBfTiZUMEeqfMc95BD27pw" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_IBfTipUMEeqfMc95BD27pw" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_IBfTi5UMEeqfMc95BD27pw"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_rjgjwIVkEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_IBfTjJUMEeqfMc95BD27pw" points="[530, 190, -643984, -643984]$[530, 125, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_IBfTjZUMEeqfMc95BD27pw" id="(0.5,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_IBfTjpUMEeqfMc95BD27pw" id="(0.7070707070707071,1.0)"/>
+ </edges>
+ </notation:Diagram>
+ <notation:Diagram xmi:id="_90F9UJUJEeqWd_6S3mbYXg" type="PapyrusUMLProfileDiagram" name="Transformer_layers" measurementUnit="Pixel">
+ <children xmi:type="notation:Shape" xmi:id="_QyNiR5UMEeqfMc95BD27pw" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_QyNiSJUMEeqfMc95BD27pw" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_QyNiSZUMEeqfMc95BD27pw" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_QyNiSpUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_QyNiS5UMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_QyNiTJUMEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_QyNiTZUMEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_QyNiTpUMEeqfMc95BD27pw" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_QyNiT5UMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_QyNiUJUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_QyNiUZUMEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_QyNiUpUMEeqfMc95BD27pw"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_-aqagIVlEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_QyNiVpUMEeqfMc95BD27pw" x="10380" y="1160"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_QyNiX5UMEeqfMc95BD27pw" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_QyNiYJUMEeqfMc95BD27pw" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_QyNiYZUMEeqfMc95BD27pw" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_QyNiYpUMEeqfMc95BD27pw" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_Nai6MIVmEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_QyNiY5UMEeqfMc95BD27pw"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_QyNiZJUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_QyNiZZUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_QyNiZpUMEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_QyNiZ5UMEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_QyNiaJUMEeqfMc95BD27pw" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_QyNiaZUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_QyNiapUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_QyNia5UMEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_QyNibJUMEeqfMc95BD27pw"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_JjphIIVmEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_QyNicJUMEeqfMc95BD27pw" x="10760" y="1160"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_QyNieJUMEeqfMc95BD27pw" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_QyNieZUMEeqfMc95BD27pw" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_QyNiepUMEeqfMc95BD27pw" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_QyNie5UMEeqfMc95BD27pw" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_sbCMMIVlEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_QyNifJUMEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_QyNifZUMEeqfMc95BD27pw" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_tmddgIVlEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_QyNifpUMEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_QyNif5UMEeqfMc95BD27pw" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_uFbRcIVlEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_QyNigJUMEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_QyNigZUMEeqfMc95BD27pw" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_v6pGoIVlEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_QyNigpUMEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_QyNig5UMEeqfMc95BD27pw" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_wuIZEIVlEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_QyNihJUMEeqfMc95BD27pw"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_QyNihZUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_QyNihpUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_QyNih5UMEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_QyNiiJUMEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_QyNiiZUMEeqfMc95BD27pw" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_QyNiipUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_QyNii5UMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_QyNijJUMEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_QyNijZUMEeqfMc95BD27pw"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_gsKxUIVlEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_QyNikZUMEeqfMc95BD27pw" x="10360" y="900"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_QyNik5UMEeqfMc95BD27pw" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_QyNilJUMEeqfMc95BD27pw" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_QyNilZUMEeqfMc95BD27pw" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_QyNilpUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_QyNil5UMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_QyNimJUMEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_QyNimZUMEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_QyNimpUMEeqfMc95BD27pw" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_QyNim5UMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_QyNinJUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_QyNinZUMEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_QyNinpUMEeqfMc95BD27pw"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_zItakIVkEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_QyNiopUMEeqfMc95BD27pw" x="10679" y="704"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_QyOJUJUMEeqfMc95BD27pw" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_QyOJUZUMEeqfMc95BD27pw" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_QyOJUpUMEeqfMc95BD27pw" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_QyOJU5UMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_QyOJVJUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_QyOJVZUMEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_QyOJVpUMEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_QyOJV5UMEeqfMc95BD27pw" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_QyOJWJUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_QyOJWZUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_QyOJWpUMEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_QyOJW5UMEeqfMc95BD27pw"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_AIIo8IVmEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_QyOJX5UMEeqfMc95BD27pw" x="10560" y="1160"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_QyOJYJUMEeqfMc95BD27pw" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_QyOJYZUMEeqfMc95BD27pw" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_QyOJYpUMEeqfMc95BD27pw" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_QyOJY5UMEeqfMc95BD27pw" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_mZVvgIVlEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_QyOJZJUMEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_QyOJZZUMEeqfMc95BD27pw" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_oByUAIVlEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_QyOJZpUMEeqfMc95BD27pw"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_QyOJZ5UMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_QyOJaJUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_QyOJaZUMEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_QyOJapUMEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_QyOJa5UMEeqfMc95BD27pw" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_QyOJbJUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_QyOJbZUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_QyOJbpUMEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_QyOJb5UMEeqfMc95BD27pw"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_kfJ6wIVlEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_QyOJc5UMEeqfMc95BD27pw" x="10860" y="900"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_QyOJdJUMEeqfMc95BD27pw" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_QyOJdZUMEeqfMc95BD27pw" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_QyOJdpUMEeqfMc95BD27pw" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_QyOJd5UMEeqfMc95BD27pw" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_2FyaQIVlEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_QyOJeJUMEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_QyOJeZUMEeqfMc95BD27pw" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_4EeUgIVlEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_QyOJepUMEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_QyOJe5UMEeqfMc95BD27pw" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_606b0IVlEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_QyOJfJUMEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_QyOJfZUMEeqfMc95BD27pw" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_8LVcMIVlEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_QyOJfpUMEeqfMc95BD27pw"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_QyOJf5UMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_QyOJgJUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_QyOJgZUMEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_QyOJgpUMEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_QyOJg5UMEeqfMc95BD27pw" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_QyOJhJUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_QyOJhZUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_QyOJhpUMEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_QyOJh5UMEeqfMc95BD27pw"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_0gXUkIVlEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_QyOJi5UMEeqfMc95BD27pw" x="10100" y="1160"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_QyOJjJUMEeqfMc95BD27pw" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_QyOJjZUMEeqfMc95BD27pw" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_QyOJjpUMEeqfMc95BD27pw" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_QyOJj5UMEeqfMc95BD27pw" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_MA0HIIVmEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_QyOJkJUMEeqfMc95BD27pw"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_QyOJkZUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_QyOJkpUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_QyOJk5UMEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_QyOJlJUMEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_QyOJlZUMEeqfMc95BD27pw" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_QyOJlpUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_QyOJl5UMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_QyOJmJUMEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_QyOJmZUMEeqfMc95BD27pw"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_Ku6aYIVmEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_QyOJnZUMEeqfMc95BD27pw" x="11040" y="1160"/>
+ </children>
+ <styles xmi:type="notation:StringValueStyle" xmi:id="_90F9UZUJEeqWd_6S3mbYXg" name="diagram_compatibility_version" stringValue="1.4.0"/>
+ <styles xmi:type="notation:DiagramStyle" xmi:id="_90F9UpUJEeqWd_6S3mbYXg"/>
+ <styles xmi:type="style:PapyrusDiagramStyle" xmi:id="_90F9U5UJEeqWd_6S3mbYXg" diagramKindId="org.eclipse.papyrus.uml.diagram.profile">
+ <owner xmi:type="uml:Profile" href="AIML.profile.uml#_T8DDAJT2Eeq5BK6mmo2rWg"/>
+ </styles>
+ <element xmi:type="uml:Profile" href="AIML.profile.uml#_T8DDAJT2Eeq5BK6mmo2rWg"/>
+ <edges xmi:type="notation:Connector" xmi:id="_QyM7MJUMEeqfMc95BD27pw" type="Generalization_Edge" source="_QyOJdJUMEeqfMc95BD27pw" target="_QyNieJUMEeqfMc95BD27pw">
+ <children xmi:type="notation:DecorationNode" xmi:id="_QyM7MZUMEeqfMc95BD27pw" type="Generalization_StereotypeLabel">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_QyM7MpUMEeqfMc95BD27pw" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_QyM7M5UMEeqfMc95BD27pw"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_GMzhIIVmEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_QyM7NJUMEeqfMc95BD27pw" points="[10220, 1140, -643984, -643984]$[10380, 1047, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_QyM7NZUMEeqfMc95BD27pw" id="(0.5645161290322581,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_QyM7NpUMEeqfMc95BD27pw" id="(0.1762114537444934,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_QyNiQJUMEeqfMc95BD27pw" type="Generalization_Edge" source="_QyOJjJUMEeqfMc95BD27pw" target="_QyOJYJUMEeqfMc95BD27pw">
+ <children xmi:type="notation:DecorationNode" xmi:id="_QyNiQZUMEeqfMc95BD27pw" type="Generalization_StereotypeLabel">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_QyNiQpUMEeqfMc95BD27pw" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_QyNiQ5UMEeqfMc95BD27pw"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_QhQMcIVmEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_QyNiRJUMEeqfMc95BD27pw" points="[11120, 1140, -643984, -643984]$[10980, 999, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_QyNiRZUMEeqfMc95BD27pw" id="(0.47619047619047616,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_QyNiRpUMEeqfMc95BD27pw" id="(0.7106598984771574,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_QyNiV5UMEeqfMc95BD27pw" type="Generalization_Edge" source="_QyNieJUMEeqfMc95BD27pw" target="_QyNik5UMEeqfMc95BD27pw">
+ <children xmi:type="notation:DecorationNode" xmi:id="_QyNiWJUMEeqfMc95BD27pw" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_QyNiWZUMEeqfMc95BD27pw" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_QyNiWpUMEeqfMc95BD27pw" y="59"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_QyNiW5UMEeqfMc95BD27pw"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_SF09kIVmEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_QyNiXJUMEeqfMc95BD27pw" points="[10500, 880, -643984, -643984]$[10700, 800, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_QyNiXZUMEeqfMc95BD27pw" id="(0.7048458149779736,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_QyNiXpUMEeqfMc95BD27pw" id="(0.36283185840707965,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_QyNicZUMEeqfMc95BD27pw" type="Generalization_Edge" source="_QyNiR5UMEeqfMc95BD27pw" target="_QyNieJUMEeqfMc95BD27pw">
+ <children xmi:type="notation:DecorationNode" xmi:id="_QyNicpUMEeqfMc95BD27pw" type="Generalization_StereotypeLabel">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_QyNic5UMEeqfMc95BD27pw" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_QyNidJUMEeqfMc95BD27pw"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_GrExgIVmEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_QyNidZUMEeqfMc95BD27pw" points="[10420, 1140, -643984, -643984]$[10420, 1047, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_QyNidpUMEeqfMc95BD27pw" id="(0.40540540540540543,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_QyNid5UMEeqfMc95BD27pw" id="(0.3524229074889868,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_QyOJnpUMEeqfMc95BD27pw" type="Generalization_Edge" source="_QyOJYJUMEeqfMc95BD27pw" target="_QyNik5UMEeqfMc95BD27pw">
+ <children xmi:type="notation:DecorationNode" xmi:id="_QyOJn5UMEeqfMc95BD27pw" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_QyOJoJUMEeqfMc95BD27pw" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_QyOJoZUMEeqfMc95BD27pw" x="-1" y="58"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_QyOJopUMEeqfMc95BD27pw"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_RehtAIVmEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_QyOJo5UMEeqfMc95BD27pw" points="[10940, 880, -643984, -643984]$[10740, 800, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_QyOJpJUMEeqfMc95BD27pw" id="(0.5076142131979695,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_QyOJpZUMEeqfMc95BD27pw" id="(0.7168141592920354,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_QyOJp5UMEeqfMc95BD27pw" type="Generalization_Edge" source="_QyNiX5UMEeqfMc95BD27pw" target="_QyOJYJUMEeqfMc95BD27pw">
+ <children xmi:type="notation:DecorationNode" xmi:id="_QyOJqJUMEeqfMc95BD27pw" type="Generalization_StereotypeLabel">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_QyOJqZUMEeqfMc95BD27pw" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_QyOJqpUMEeqfMc95BD27pw"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_P0nv8IVmEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_QyOJq5UMEeqfMc95BD27pw" points="[10860, 1140, -643984, -643984]$[10920, 999, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_QyOJrJUMEeqfMc95BD27pw" id="(0.5714285714285714,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_QyOJrZUMEeqfMc95BD27pw" id="(0.40609137055837563,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_QyOJrpUMEeqfMc95BD27pw" type="Generalization_Edge" source="_QyOJUJUMEeqfMc95BD27pw" target="_QyNieJUMEeqfMc95BD27pw">
+ <children xmi:type="notation:DecorationNode" xmi:id="_QyOJr5UMEeqfMc95BD27pw" type="Generalization_StereotypeLabel">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_QyOJsJUMEeqfMc95BD27pw" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_QyOJsZUMEeqfMc95BD27pw"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_HJqyAIVmEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_QyOJspUMEeqfMc95BD27pw" points="[10580, 1140, -643984, -643984]$[10500, 1047, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_QyOJs5UMEeqfMc95BD27pw" id="(0.272108843537415,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_QyOJtJUMEeqfMc95BD27pw" id="(0.7048458149779736,1.0)"/>
+ </edges>
+ </notation:Diagram>
+ <notation:Diagram xmi:id="__VnacJUJEeqWd_6S3mbYXg" type="PapyrusUMLProfileDiagram" name="Linear_layers" measurementUnit="Pixel">
+ <children xmi:type="notation:Shape" xmi:id="_e_03gJUMEeqfMc95BD27pw" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_e_03gZUMEeqfMc95BD27pw" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_e_03gpUMEeqfMc95BD27pw" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_e_03g5UMEeqfMc95BD27pw" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_snPzEIhhEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_e_03hJUMEeqfMc95BD27pw"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_e_03hZUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_e_03hpUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_e_03h5UMEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_e_03iJUMEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_e_03iZUMEeqfMc95BD27pw" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_e_03ipUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_e_03i5UMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_e_03jJUMEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_e_03jZUMEeqfMc95BD27pw"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_ozz9sIhhEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_e_03kZUMEeqfMc95BD27pw" x="11380" y="1220"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_e_03kpUMEeqfMc95BD27pw" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_e_03k5UMEeqfMc95BD27pw" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_e_03lJUMEeqfMc95BD27pw" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_e_03lZUMEeqfMc95BD27pw" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_u5YNwIhhEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_e_03lpUMEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_e_03l5UMEeqfMc95BD27pw" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_wboqsIhhEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_e_03mJUMEeqfMc95BD27pw"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_e_03mZUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_e_03mpUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_e_03m5UMEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_e_03nJUMEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_e_03nZUMEeqfMc95BD27pw" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_e_03npUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_e_03n5UMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_e_03oJUMEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_e_03oZUMEeqfMc95BD27pw"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_pJFqIIhhEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_e_03pZUMEeqfMc95BD27pw" x="11760" y="1220"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_e_03ppUMEeqfMc95BD27pw" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_e_03p5UMEeqfMc95BD27pw" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_e_03qJUMEeqfMc95BD27pw" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_e_03qZUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_e_03qpUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_e_03q5UMEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_e_03rJUMEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_e_03rZUMEeqfMc95BD27pw" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_e_03rpUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_e_03r5UMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_e_03sJUMEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_e_03sZUMEeqfMc95BD27pw"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_c_eM8IhhEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_e_03tZUMEeqfMc95BD27pw" x="11980" y="940"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_e_1ekJUMEeqfMc95BD27pw" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_e_1ekZUMEeqfMc95BD27pw" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_e_1ekpUMEeqfMc95BD27pw" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_e_1ek5UMEeqfMc95BD27pw" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_lYOnoIhhEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_e_1elJUMEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_e_1elZUMEeqfMc95BD27pw" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_m2y3YIhhEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_e_1elpUMEeqfMc95BD27pw"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_e_1el5UMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_e_1emJUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_e_1emZUMEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_e_1empUMEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_e_1em5UMEeqfMc95BD27pw" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_e_1enJUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_e_1enZUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_e_1enpUMEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_e_1en5UMEeqfMc95BD27pw"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_hGyAkIhhEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_e_1eo5UMEeqfMc95BD27pw" x="11560" y="940"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_e_1epJUMEeqfMc95BD27pw" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_e_1epZUMEeqfMc95BD27pw" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_e_1eppUMEeqfMc95BD27pw" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_e_1ep5UMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_e_1eqJUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_e_1eqZUMEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_e_1eqpUMEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_e_1eq5UMEeqfMc95BD27pw" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_e_1erJUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_e_1erZUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_e_1erpUMEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_e_1er5UMEeqfMc95BD27pw"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_ThvuQIhhEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_e_1es5UMEeqfMc95BD27pw" x="11720" y="700"/>
+ </children>
+ <styles xmi:type="notation:StringValueStyle" xmi:id="__VnacZUJEeqWd_6S3mbYXg" name="diagram_compatibility_version" stringValue="1.4.0"/>
+ <styles xmi:type="notation:DiagramStyle" xmi:id="__VnacpUJEeqWd_6S3mbYXg"/>
+ <styles xmi:type="style:PapyrusDiagramStyle" xmi:id="__Vnac5UJEeqWd_6S3mbYXg" diagramKindId="org.eclipse.papyrus.uml.diagram.profile">
+ <owner xmi:type="uml:Profile" href="AIML.profile.uml#_WwqfsJT2Eeq5BK6mmo2rWg"/>
+ </styles>
+ <element xmi:type="uml:Profile" href="AIML.profile.uml#_WwqfsJT2Eeq5BK6mmo2rWg"/>
+ <edges xmi:type="notation:Connector" xmi:id="_e_zpYJUMEeqfMc95BD27pw" type="Generalization_Edge" source="_e_03ppUMEeqfMc95BD27pw" target="_e_1epJUMEeqfMc95BD27pw">
+ <children xmi:type="notation:DecorationNode" xmi:id="_e_zpYZUMEeqfMc95BD27pw" type="Generalization_StereotypeLabel">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_e_zpYpUMEeqfMc95BD27pw" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_e_zpY5UMEeqfMc95BD27pw"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_5QYd0IhhEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_e_zpZJUMEeqfMc95BD27pw" points="[12000, 920, -643984, -643984]$[11780, 780, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_e_zpZZUMEeqfMc95BD27pw" id="(0.4,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_e_zpZpUMEeqfMc95BD27pw" id="(0.8,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_e_0QcZUMEeqfMc95BD27pw" type="Generalization_Edge" source="_e_03kpUMEeqfMc95BD27pw" target="_e_1ekJUMEeqfMc95BD27pw">
+ <children xmi:type="notation:DecorationNode" xmi:id="_e_0QcpUMEeqfMc95BD27pw" type="Generalization_StereotypeLabel">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_e_0Qc5UMEeqfMc95BD27pw" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_e_0QdJUMEeqfMc95BD27pw"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_4ugf0IhhEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_e_0QdZUMEeqfMc95BD27pw" points="[11820, 1200, -643984, -643984]$[11700, 1039, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_e_0QdpUMEeqfMc95BD27pw" id="(0.4,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_e_0Qd5UMEeqfMc95BD27pw" id="(0.7920792079207921,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_e_0QeJUMEeqfMc95BD27pw" type="Generalization_Edge" source="_e_03gJUMEeqfMc95BD27pw" target="_e_1ekJUMEeqfMc95BD27pw">
+ <children xmi:type="notation:DecorationNode" xmi:id="_e_0QeZUMEeqfMc95BD27pw" type="Generalization_StereotypeLabel">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_e_0QepUMEeqfMc95BD27pw" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_e_0Qe5UMEeqfMc95BD27pw"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_4MFvQIhhEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_e_0QfJUMEeqfMc95BD27pw" points="[11520, 1200, -643984, -643984]$[11600, 1039, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_e_0QfZUMEeqfMc95BD27pw" id="(0.8247422680412371,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_e_0QfpUMEeqfMc95BD27pw" id="(0.297029702970297,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_e_0Qf5UMEeqfMc95BD27pw" type="Generalization_Edge" source="_e_1ekJUMEeqfMc95BD27pw" target="_e_1epJUMEeqfMc95BD27pw">
+ <children xmi:type="notation:DecorationNode" xmi:id="_e_0QgJUMEeqfMc95BD27pw" type="Generalization_StereotypeLabel">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_e_0QgZUMEeqfMc95BD27pw" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_e_0QgpUMEeqfMc95BD27pw"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_58n4wIhhEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_e_0Qg5UMEeqfMc95BD27pw" points="[11660, 920, -643984, -643984]$[11720, 780, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_e_0QhJUMEeqfMc95BD27pw" id="(0.594059405940594,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_e_0QhZUMEeqfMc95BD27pw" id="(0.2,1.0)"/>
+ </edges>
+ </notation:Diagram>
+ <notation:Diagram xmi:id="_Ahgl0JUKEeqWd_6S3mbYXg" type="PapyrusUMLProfileDiagram" name="Dropout_layers" measurementUnit="Pixel">
+ <children xmi:type="notation:Shape" xmi:id="_MzKwUK8XEeqhVOlV64dXmA" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_MzKwUa8XEeqhVOlV64dXmA" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_MzKwUq8XEeqhVOlV64dXmA" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_MzKwU68XEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_MzKwVK8XEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_MzKwVa8XEeqhVOlV64dXmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_MzKwVq8XEeqhVOlV64dXmA"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_MzKwV68XEeqhVOlV64dXmA" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_MzKwWK8XEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_MzKwWa8XEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_MzKwWq8XEeqhVOlV64dXmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_MzKwW68XEeqhVOlV64dXmA"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_QF418IhiEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_MzKwX68XEeqhVOlV64dXmA" x="50" y="290"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_MzLXYK8XEeqhVOlV64dXmA" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_MzLXYa8XEeqhVOlV64dXmA" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_MzLXYq8XEeqhVOlV64dXmA" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_MzLXY68XEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_MzLXZK8XEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_MzLXZa8XEeqhVOlV64dXmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_MzLXZq8XEeqhVOlV64dXmA"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_MzLXZ68XEeqhVOlV64dXmA" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_MzLXaK8XEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_MzLXaa8XEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_MzLXaq8XEeqhVOlV64dXmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_MzLXa68XEeqhVOlV64dXmA"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_O7XjkIhiEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_MzLXb68XEeqhVOlV64dXmA" x="-370" y="290"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_MzLXcK8XEeqhVOlV64dXmA" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_MzLXca8XEeqhVOlV64dXmA" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_MzLXcq8XEeqhVOlV64dXmA" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_MzLXc68XEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_MzLXdK8XEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_MzLXda8XEeqhVOlV64dXmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_MzLXdq8XEeqhVOlV64dXmA"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_MzLXd68XEeqhVOlV64dXmA" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_MzLXeK8XEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_MzLXea8XEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_MzLXeq8XEeqhVOlV64dXmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_MzLXe68XEeqhVOlV64dXmA"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_Proi4IhiEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_MzLXf68XEeqhVOlV64dXmA" x="-90" y="290"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_MzLXiK8XEeqhVOlV64dXmA" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_MzLXia8XEeqhVOlV64dXmA" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_MzLXiq8XEeqhVOlV64dXmA" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_MzLXi68XEeqhVOlV64dXmA" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_L5uXgIhiEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_MzLXjK8XEeqhVOlV64dXmA"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_MzLXja8XEeqhVOlV64dXmA" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_Mxr6QIhiEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_MzLXjq8XEeqhVOlV64dXmA"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_MzLXj68XEeqhVOlV64dXmA" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_k7wEsKcmEeqkzM30xo7jnw"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_MzLXkK8XEeqhVOlV64dXmA"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_MzLXka8XEeqhVOlV64dXmA" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_m_lksKcmEeqkzM30xo7jnw"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_MzLXkq8XEeqhVOlV64dXmA"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_MzLXk68XEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_MzLXlK8XEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_MzLXla8XEeqhVOlV64dXmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_MzLXlq8XEeqhVOlV64dXmA"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_MzLXl68XEeqhVOlV64dXmA" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_MzLXmK8XEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_MzLXma8XEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_MzLXmq8XEeqhVOlV64dXmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_MzLXm68XEeqhVOlV64dXmA"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_JJr40IhiEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_MzLXn68XEeqhVOlV64dXmA" x="-210" y="30"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_MzLXoK8XEeqhVOlV64dXmA" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_MzLXoa8XEeqhVOlV64dXmA" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_MzLXoq8XEeqhVOlV64dXmA" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_MzLXo68XEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_MzLXpK8XEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_MzLXpa8XEeqhVOlV64dXmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_MzLXpq8XEeqhVOlV64dXmA"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_MzLXp68XEeqhVOlV64dXmA" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_MzLXqK8XEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_MzLXqa8XEeqhVOlV64dXmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_MzLXqq8XEeqhVOlV64dXmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_MzLXq68XEeqhVOlV64dXmA"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_PMP4MIhiEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_MzLXr68XEeqhVOlV64dXmA" x="-230" y="290"/>
+ </children>
+ <styles xmi:type="notation:StringValueStyle" xmi:id="_Ahgl0ZUKEeqWd_6S3mbYXg" name="diagram_compatibility_version" stringValue="1.4.0"/>
+ <styles xmi:type="notation:DiagramStyle" xmi:id="_Ahgl0pUKEeqWd_6S3mbYXg"/>
+ <styles xmi:type="style:PapyrusDiagramStyle" xmi:id="_Ahgl05UKEeqWd_6S3mbYXg" diagramKindId="org.eclipse.papyrus.uml.diagram.profile">
+ <owner xmi:type="uml:Profile" href="AIML.profile.uml#_ZUMzcJT2Eeq5BK6mmo2rWg"/>
+ </styles>
+ <element xmi:type="uml:Profile" href="AIML.profile.uml#_ZUMzcJT2Eeq5BK6mmo2rWg"/>
+ <edges xmi:type="notation:Connector" xmi:id="_MzLXgK8XEeqhVOlV64dXmA" type="Generalization_Edge" source="_MzLXYK8XEeqhVOlV64dXmA" target="_MzLXiK8XEeqhVOlV64dXmA">
+ <children xmi:type="notation:DecorationNode" xmi:id="_MzLXga8XEeqhVOlV64dXmA" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_MzLXgq8XEeqhVOlV64dXmA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_MzLXg68XEeqhVOlV64dXmA" y="59"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_MzLXhK8XEeqhVOlV64dXmA"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_rp92AIhiEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_MzLXha8XEeqhVOlV64dXmA" points="[-350, 270, -643984, -643984]$[-210, 129, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_MzLXhq8XEeqhVOlV64dXmA" id="(0.4,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_MzLXh68XEeqhVOlV64dXmA" id="(0.11428571428571428,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_MzL-cK8XEeqhVOlV64dXmA" type="Generalization_Edge" source="_MzKwUK8XEeqhVOlV64dXmA" target="_MzLXiK8XEeqhVOlV64dXmA">
+ <children xmi:type="notation:DecorationNode" xmi:id="_MzL-ca8XEeqhVOlV64dXmA" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_MzL-cq8XEeqhVOlV64dXmA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_MzL-c68XEeqhVOlV64dXmA" x="-1" y="58"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_MzL-dK8XEeqhVOlV64dXmA"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_t3zmkIhiEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_MzL-da8XEeqhVOlV64dXmA" points="[70, 270, -643984, -643984]$[-70, 129, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_MzL-dq8XEeqhVOlV64dXmA" id="(0.4,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_MzL-d68XEeqhVOlV64dXmA" id="(0.9142857142857143,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_MzL-eK8XEeqhVOlV64dXmA" type="Generalization_Edge" source="_MzLXoK8XEeqhVOlV64dXmA" target="_MzLXiK8XEeqhVOlV64dXmA">
+ <children xmi:type="notation:DecorationNode" xmi:id="_MzL-ea8XEeqhVOlV64dXmA" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_MzL-eq8XEeqhVOlV64dXmA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_MzL-e68XEeqhVOlV64dXmA" y="59"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_MzL-fK8XEeqhVOlV64dXmA"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_sKSU0IhiEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_MzL-fa8XEeqhVOlV64dXmA" points="[-190, 270, -643984, -643984]$[-190, 129, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_MzL-fq8XEeqhVOlV64dXmA" id="(0.6,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_MzL-f68XEeqhVOlV64dXmA" id="(0.22857142857142856,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_MzL-gK8XEeqhVOlV64dXmA" type="Generalization_Edge" source="_MzLXcK8XEeqhVOlV64dXmA" target="_MzLXiK8XEeqhVOlV64dXmA">
+ <children xmi:type="notation:DecorationNode" xmi:id="_MzL-ga8XEeqhVOlV64dXmA" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_MzL-gq8XEeqhVOlV64dXmA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_MzL-g68XEeqhVOlV64dXmA" y="59"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_MzL-hK8XEeqhVOlV64dXmA"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_srztgIhiEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_MzL-ha8XEeqhVOlV64dXmA" points="[-50, 270, -643984, -643984]$[-90, 129, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_MzL-hq8XEeqhVOlV64dXmA" id="(0.2,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_MzL-h68XEeqhVOlV64dXmA" id="(0.8,1.0)"/>
+ </edges>
+ </notation:Diagram>
+ <notation:Diagram xmi:id="_B1wb8JUKEeqWd_6S3mbYXg" type="PapyrusUMLProfileDiagram" name="Sparse_layers" measurementUnit="Pixel">
+ <children xmi:type="notation:Shape" xmi:id="_nXg7MJUMEeqfMc95BD27pw" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_nXg7MZUMEeqfMc95BD27pw" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_nXg7MpUMEeqfMc95BD27pw" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_nXg7M5UMEeqfMc95BD27pw" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_nWwe8IhjEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_nXg7NJUMEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_nXg7NZUMEeqfMc95BD27pw" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_p2G2QIhjEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_nXg7NpUMEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_nXg7N5UMEeqfMc95BD27pw" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_sIOC0IhjEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_nXg7OJUMEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_nXg7OZUMEeqfMc95BD27pw" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_tKafoIhjEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_nXg7OpUMEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_nXg7O5UMEeqfMc95BD27pw" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_vicuAIhjEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_nXg7PJUMEeqfMc95BD27pw"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_nXg7PZUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_nXg7PpUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_nXg7P5UMEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_nXg7QJUMEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_nXg7QZUMEeqfMc95BD27pw" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_nXg7QpUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_nXg7Q5UMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_nXg7RJUMEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_nXg7RZUMEeqfMc95BD27pw"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_AdGtwIhjEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_nXg7SZUMEeqfMc95BD27pw" x="12940" y="700"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_nXhiQJUMEeqfMc95BD27pw" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_nXhiQZUMEeqfMc95BD27pw" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_nXhiQpUMEeqfMc95BD27pw" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_nXhiQ5UMEeqfMc95BD27pw" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_ytrT4IhjEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_nXhiRJUMEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_nXhiRZUMEeqfMc95BD27pw" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_z2sxcIhjEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_nXhiRpUMEeqfMc95BD27pw"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_nXhiR5UMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_nXhiSJUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_nXhiSZUMEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_nXhiSpUMEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_nXhiS5UMEeqfMc95BD27pw" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_nXhiTJUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_nXhiTZUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_nXhiTpUMEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_nXhiT5UMEeqfMc95BD27pw"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_kIoWEIhjEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_nXhiU5UMEeqfMc95BD27pw" x="13060" y="960"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_nXhiVJUMEeqfMc95BD27pw" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_nXhiVZUMEeqfMc95BD27pw" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_nXhiVpUMEeqfMc95BD27pw" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_nXhiV5UMEeqfMc95BD27pw" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_w7GjAIhjEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_nXhiWJUMEeqfMc95BD27pw"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_nXhiWZUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_nXhiWpUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_nXhiW5UMEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_nXhiXJUMEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_nXhiXZUMEeqfMc95BD27pw" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_nXhiXpUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_nXhiX5UMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_nXhiYJUMEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_nXhiYZUMEeqfMc95BD27pw"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_HDvqkIhjEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_nXhiZZUMEeqfMc95BD27pw" x="12820" y="960"/>
+ </children>
+ <styles xmi:type="notation:StringValueStyle" xmi:id="_B1wb8ZUKEeqWd_6S3mbYXg" name="diagram_compatibility_version" stringValue="1.4.0"/>
+ <styles xmi:type="notation:DiagramStyle" xmi:id="_B1wb8pUKEeqWd_6S3mbYXg"/>
+ <styles xmi:type="style:PapyrusDiagramStyle" xmi:id="_B1wb85UKEeqWd_6S3mbYXg" diagramKindId="org.eclipse.papyrus.uml.diagram.profile">
+ <owner xmi:type="uml:Profile" href="AIML.profile.uml#_cKwJ0JT2Eeq5BK6mmo2rWg"/>
+ </styles>
+ <element xmi:type="uml:Profile" href="AIML.profile.uml#_cKwJ0JT2Eeq5BK6mmo2rWg"/>
+ <edges xmi:type="notation:Connector" xmi:id="_nXgUIJUMEeqfMc95BD27pw" type="Generalization_Edge" source="_nXhiVJUMEeqfMc95BD27pw" target="_nXg7MJUMEeqfMc95BD27pw">
+ <children xmi:type="notation:DecorationNode" xmi:id="_nXgUIZUMEeqfMc95BD27pw" type="Generalization_StereotypeLabel">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_nXgUIpUMEeqfMc95BD27pw" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_nXgUI5UMEeqfMc95BD27pw"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_7zj6UIhjEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_nXgUJJUMEeqfMc95BD27pw" points="[12920, 940, -643984, -643984]$[12980, 847, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_nXgUJZUMEeqfMc95BD27pw" id="(0.594059405940594,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_nXgUJpUMEeqfMc95BD27pw" id="(0.2575107296137339,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_nXhiaJUMEeqfMc95BD27pw" type="Generalization_Edge" source="_nXhiQJUMEeqfMc95BD27pw" target="_nXg7MJUMEeqfMc95BD27pw">
+ <children xmi:type="notation:DecorationNode" xmi:id="_nXhiaZUMEeqfMc95BD27pw" type="Generalization_StereotypeLabel">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_nXhiapUMEeqfMc95BD27pw" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_nXhia5UMEeqfMc95BD27pw"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_8S-aMIhjEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_nXhibJUMEeqfMc95BD27pw" points="[13160, 940, -643984, -643984]$[13080, 847, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_nXhibZUMEeqfMc95BD27pw" id="(0.5128205128205128,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_nXhibpUMEeqfMc95BD27pw" id="(0.6866952789699571,1.0)"/>
+ </edges>
+ </notation:Diagram>
+ <notation:Diagram xmi:id="_D1T44JUKEeqWd_6S3mbYXg" type="PapyrusUMLProfileDiagram" name="Distance_functions" measurementUnit="Pixel">
+ <children xmi:type="notation:Shape" xmi:id="_r-GEwJUMEeqfMc95BD27pw" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_r-GEwZUMEeqfMc95BD27pw" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_r-GEwpUMEeqfMc95BD27pw" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_r-GEw5UMEeqfMc95BD27pw" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_Km4ksIhkEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_r-GExJUMEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_r-GExZUMEeqfMc95BD27pw" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_LieqQIhkEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_r-GExpUMEeqfMc95BD27pw"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_r-GEx5UMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_r-GEyJUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_r-GEyZUMEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_r-GEypUMEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_r-GEy5UMEeqfMc95BD27pw" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_r-GEzJUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_r-GEzZUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_r-GEzpUMEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_r-GEz5UMEeqfMc95BD27pw"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_F-SB4IhkEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_r-GE05UMEeqfMc95BD27pw" x="13700" y="960"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_r-Gr0JUMEeqfMc95BD27pw" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_r-Gr0ZUMEeqfMc95BD27pw" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_r-Gr0pUMEeqfMc95BD27pw" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_r-Gr05UMEeqfMc95BD27pw" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_D1Gu4IhkEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_r-Gr1JUMEeqfMc95BD27pw"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_r-Gr1ZUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_r-Gr1pUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_r-Gr15UMEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_r-Gr2JUMEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_r-Gr2ZUMEeqfMc95BD27pw" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_r-Gr2pUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_r-Gr25UMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_r-Gr3JUMEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_r-Gr3ZUMEeqfMc95BD27pw"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_9-4iYIhjEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_r-Gr4ZUMEeqfMc95BD27pw" x="13560" y="700"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_r-Gr8JUMEeqfMc95BD27pw" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_r-Gr8ZUMEeqfMc95BD27pw" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_r-Gr8pUMEeqfMc95BD27pw" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_r-Gr85UMEeqfMc95BD27pw" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_JmnagIhkEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_r-Gr9JUMEeqfMc95BD27pw"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_r-Gr9ZUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_r-Gr9pUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_r-Gr95UMEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_r-Gr-JUMEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_r-Gr-ZUMEeqfMc95BD27pw" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_r-Gr-pUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_r-Gr-5UMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_r-Gr_JUMEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_r-Gr_ZUMEeqfMc95BD27pw"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_Ff9uMIhkEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_r-GsAZUMEeqfMc95BD27pw" x="13460" y="960"/>
+ </children>
+ <styles xmi:type="notation:StringValueStyle" xmi:id="_D1T44ZUKEeqWd_6S3mbYXg" name="diagram_compatibility_version" stringValue="1.4.0"/>
+ <styles xmi:type="notation:DiagramStyle" xmi:id="_D1T44pUKEeqWd_6S3mbYXg"/>
+ <styles xmi:type="style:PapyrusDiagramStyle" xmi:id="_D1T445UKEeqWd_6S3mbYXg" diagramKindId="org.eclipse.papyrus.uml.diagram.profile">
+ <owner xmi:type="uml:Profile" href="AIML.profile.uml#_fjUoIJT2Eeq5BK6mmo2rWg"/>
+ </styles>
+ <element xmi:type="uml:Profile" href="AIML.profile.uml#_fjUoIJT2Eeq5BK6mmo2rWg"/>
+ <edges xmi:type="notation:Connector" xmi:id="_r-Gr4pUMEeqfMc95BD27pw" type="Generalization_Edge" source="_r-Gr8JUMEeqfMc95BD27pw" target="_r-Gr0JUMEeqfMc95BD27pw">
+ <children xmi:type="notation:DecorationNode" xmi:id="_r-Gr45UMEeqfMc95BD27pw" type="Generalization_StereotypeLabel">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_r-Gr5JUMEeqfMc95BD27pw" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_r-Gr5ZUMEeqfMc95BD27pw"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_QjaNgIhkEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_r-Gr5pUMEeqfMc95BD27pw" points="[13540, 940, -643984, -643984]$[13580, 783, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_r-Gr55UMEeqfMc95BD27pw" id="(0.6329113924050633,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_r-Gr6JUMEeqfMc95BD27pw" id="(0.25806451612903225,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_r-Gr6ZUMEeqfMc95BD27pw" type="Generalization_Edge" source="_r-GEwJUMEeqfMc95BD27pw" target="_r-Gr0JUMEeqfMc95BD27pw">
+ <children xmi:type="notation:DecorationNode" xmi:id="_r-Gr6pUMEeqfMc95BD27pw" type="Generalization_StereotypeLabel">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_r-Gr65UMEeqfMc95BD27pw" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_r-Gr7JUMEeqfMc95BD27pw"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_RFcjkIhkEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_r-Gr7ZUMEeqfMc95BD27pw" points="[13720, 940, -643984, -643984]$[13660, 783, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_r-Gr7pUMEeqfMc95BD27pw" id="(0.2185792349726776,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_r-Gr75UMEeqfMc95BD27pw" id="(0.7741935483870968,1.0)"/>
+ </edges>
+ </notation:Diagram>
+ <notation:Diagram xmi:id="_FJrq0JUKEeqWd_6S3mbYXg" type="PapyrusUMLProfileDiagram" name="Loss_functions" measurementUnit="Pixel">
+ <children xmi:type="notation:Shape" xmi:id="_w8sFsJUMEeqfMc95BD27pw" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_w8sFsZUMEeqfMc95BD27pw" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_w8sFspUMEeqfMc95BD27pw" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_w8sFs5UMEeqfMc95BD27pw" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_qCV-oIhnEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_w8sFtJUMEeqfMc95BD27pw"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_w8sFtZUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_w8sFtpUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_w8sFt5UMEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_w8sFuJUMEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_w8sFuZUMEeqfMc95BD27pw" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_w8sFupUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_w8sFu5UMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_w8sFvJUMEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_w8sFvZUMEeqfMc95BD27pw"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_oNze4IhnEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_w8t64JUMEeqfMc95BD27pw" x="510" y="-170"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_w8t64ZUMEeqfMc95BD27pw" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_w8t64pUMEeqfMc95BD27pw" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_w8t645UMEeqfMc95BD27pw" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_w8t65JUMEeqfMc95BD27pw" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_2xgRgIhqEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_w8t65ZUMEeqfMc95BD27pw"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_w8t65pUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_w8t655UMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_w8t66JUMEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_w8t66ZUMEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_w8t66pUMEeqfMc95BD27pw" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_w8t665UMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_w8t67JUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_w8t67ZUMEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_w8t67pUMEeqfMc95BD27pw"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_1ml9kIhqEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_w8t68pUMEeqfMc95BD27pw" x="2410" y="570"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_w8uh8JUMEeqfMc95BD27pw" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_w8uh8ZUMEeqfMc95BD27pw" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_w8uh8pUMEeqfMc95BD27pw" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_w8uh85UMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_w8uh9JUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_w8uh9ZUMEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_w8uh9pUMEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_w8uh95UMEeqfMc95BD27pw" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_w8uh-JUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_w8uh-ZUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_w8uh-pUMEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_w8uh-5UMEeqfMc95BD27pw"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_XkZnMIhoEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_w8uh_5UMEeqfMc95BD27pw" x="810" y="330"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_w8vJCJUMEeqfMc95BD27pw" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_w8vJCZUMEeqfMc95BD27pw" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_w8vJCpUMEeqfMc95BD27pw" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_w8vJC5UMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_w8vJDJUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_w8vJDZUMEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_w8vJDpUMEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_w8vJD5UMEeqfMc95BD27pw" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_w8vJEJUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_w8vJEZUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_w8vJEpUMEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_w8vJE5UMEeqfMc95BD27pw"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_uaWOwIhpEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_w8vJF5UMEeqfMc95BD27pw" x="1450" y="530"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_w8vwEpUMEeqfMc95BD27pw" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_w8vwE5UMEeqfMc95BD27pw" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_w8vwFJUMEeqfMc95BD27pw" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_w8vwFZUMEeqfMc95BD27pw" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_4J95QIhqEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_w8vwFpUMEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_w8vwF5UMEeqfMc95BD27pw" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_5TNZQIhqEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_w8vwGJUMEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_w8vwGZUMEeqfMc95BD27pw" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_6KGlAIhqEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_w8vwGpUMEeqfMc95BD27pw"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_w8vwG5UMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_w8vwHJUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_w8vwHZUMEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_w8vwHpUMEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_w8vwH5UMEeqfMc95BD27pw" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_w8vwIJUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_w8vwIZUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_w8vwIpUMEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_w8vwI5UMEeqfMc95BD27pw"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_0iSA4IhqEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_w8vwJ5UMEeqfMc95BD27pw" x="2170" y="570"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_w8wXIpUMEeqfMc95BD27pw" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_w8wXI5UMEeqfMc95BD27pw" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_w8wXJJUMEeqfMc95BD27pw" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_w8wXJZUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_w8wXJpUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_w8wXJ5UMEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_w8wXKJUMEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_w8wXKZUMEeqfMc95BD27pw" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_w8wXKpUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_w8wXK5UMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_w8wXLJUMEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_w8wXLZUMEeqfMc95BD27pw"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_6OX2cIhpEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_w8wXMZUMEeqfMc95BD27pw" x="2650" y="570"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_w8w-MJUMEeqfMc95BD27pw" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_w8w-MZUMEeqfMc95BD27pw" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_w8w-MpUMEeqfMc95BD27pw" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_w8w-M5UMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_w8w-NJUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_w8w-NZUMEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_w8w-NpUMEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_w8w-N5UMEeqfMc95BD27pw" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_w8w-OJUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_w8w-OZUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_w8w-OpUMEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_w8w-O5UMEeqfMc95BD27pw"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_o24mMIhpEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_w8w-P5UMEeqfMc95BD27pw" x="1290" y="530"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_w8w-QJUMEeqfMc95BD27pw" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_w8w-QZUMEeqfMc95BD27pw" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_w8w-QpUMEeqfMc95BD27pw" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_w8w-Q5UMEeqfMc95BD27pw" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_Hr6rkIhoEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_w8w-RJUMEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_w8w-RZUMEeqfMc95BD27pw" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_KRcjYIhoEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_w8w-RpUMEeqfMc95BD27pw"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_w8w-R5UMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_w8w-SJUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_w8w-SZUMEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_w8w-SpUMEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_w8w-S5UMEeqfMc95BD27pw" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_w8w-TJUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_w8w-TZUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_w8w-TpUMEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_w8w-T5UMEeqfMc95BD27pw"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_F2VqAIhoEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_w8w-U5UMEeqfMc95BD27pw" x="1110" y="70"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_w8xlSJUMEeqfMc95BD27pw" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_w8xlSZUMEeqfMc95BD27pw" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_w8xlSpUMEeqfMc95BD27pw" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_w8xlS5UMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_w8xlTJUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_w8xlTZUMEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_w8xlTpUMEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_w8xlT5UMEeqfMc95BD27pw" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_w8xlUJUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_w8xlUZUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_w8xlUpUMEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_w8xlU5UMEeqfMc95BD27pw"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_v673wIhpEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_w8yMU5UMEeqfMc95BD27pw" x="1590" y="530"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_w8yMXJUMEeqfMc95BD27pw" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_w8yMXZUMEeqfMc95BD27pw" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_w8yMXpUMEeqfMc95BD27pw" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_w8yMX5UMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_w8yMYJUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_w8yMYZUMEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_w8yMYpUMEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_w8yMY5UMEeqfMc95BD27pw" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_w8yMZJUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_w8yMZZUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_w8yMZpUMEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_w8yMZ5UMEeqfMc95BD27pw"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_UW5JYIhoEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_w8yMa5UMEeqfMc95BD27pw" x="670" y="330"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_w8zacJUMEeqfMc95BD27pw" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_w8zacZUMEeqfMc95BD27pw" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_w8zacpUMEeqfMc95BD27pw" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_w8zac5UMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_w8zadJUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_w8zadZUMEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_w8zadpUMEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_w8zad5UMEeqfMc95BD27pw" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_w8zaeJUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_w8zaeZUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_w8zaepUMEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_w8zae5UMEeqfMc95BD27pw"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_yCiS4IhoEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_w8zaf5UMEeqfMc95BD27pw" x="1110" y="330"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_w80BgJUMEeqfMc95BD27pw" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_w80BgZUMEeqfMc95BD27pw" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_w80BgpUMEeqfMc95BD27pw" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_w80Bg5UMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_w80BhJUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_w80BhZUMEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_w80BhpUMEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_w80Bh5UMEeqfMc95BD27pw" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_w80BiJUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_w80BiZUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_w80BipUMEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_w80Bi5UMEeqfMc95BD27pw"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_pWuucIhqEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_w80Bj5UMEeqfMc95BD27pw" x="2950" y="790"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_w80BkJUMEeqfMc95BD27pw" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_w80BkZUMEeqfMc95BD27pw" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_w80BkpUMEeqfMc95BD27pw" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_w80okJUMEeqfMc95BD27pw" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_e4iGsIhpEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_w80okZUMEeqfMc95BD27pw"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_w80okpUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_w80ok5UMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_w80olJUMEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_w80olZUMEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_w80olpUMEeqfMc95BD27pw" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_w80ol5UMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_w80omJUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_w80omZUMEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_w80ompUMEeqfMc95BD27pw"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_cSDMoIhpEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_w80onpUMEeqfMc95BD27pw" x="2510" y="330"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_w81PoJUMEeqfMc95BD27pw" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_w81PoZUMEeqfMc95BD27pw" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_w81PopUMEeqfMc95BD27pw" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_w81Po5UMEeqfMc95BD27pw" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_HB3XEIhqEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_w81PpJUMEeqfMc95BD27pw"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_w81PpZUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_w81PppUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_w81Pp5UMEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_w81PqJUMEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_w81PqZUMEeqfMc95BD27pw" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_w81PqpUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_w81Pq5UMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_w81PrJUMEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_w81PrZUMEeqfMc95BD27pw"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_DrSc0IhqEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_w81PsZUMEeqfMc95BD27pw" x="1810" y="530"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_w812sZUMEeqfMc95BD27pw" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_w812spUMEeqfMc95BD27pw" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_w812s5UMEeqfMc95BD27pw" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_w812tJUMEeqfMc95BD27pw" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_NFUHQIhqEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_w812tZUMEeqfMc95BD27pw"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_w812tpUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_w812t5UMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_w812uJUMEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_w812uZUMEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_w812upUMEeqfMc95BD27pw" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_w812u5UMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_w812vJUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_w812vZUMEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_w812vpUMEeqfMc95BD27pw"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_JaQx0IhqEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_w812wpUMEeqfMc95BD27pw" x="1730" y="770"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_w83E2pUMEeqfMc95BD27pw" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_w83E25UMEeqfMc95BD27pw" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_w83E3JUMEeqfMc95BD27pw" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_w83E3ZUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_w83E3pUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_w83E35UMEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_w83E4JUMEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_w83E4ZUMEeqfMc95BD27pw" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_w83E4pUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_w83E45UMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_w83E5JUMEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_w83E5ZUMEeqfMc95BD27pw"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_sYrucIhoEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_w83E6ZUMEeqfMc95BD27pw" x="970" y="330"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_w84S-JUMEeqfMc95BD27pw" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_w84S-ZUMEeqfMc95BD27pw" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_w84S-pUMEeqfMc95BD27pw" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_w84S-5UMEeqfMc95BD27pw" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_LlDOYIhqEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_w84S_JUMEeqfMc95BD27pw"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_w84S_ZUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_w84S_pUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_w84S_5UMEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_w84TAJUMEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_w84TAZUMEeqfMc95BD27pw" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_w84TApUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_w84TA5UMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_w84TBJUMEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_w84TBZUMEeqfMc95BD27pw"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_J1LMMIhqEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_w84TCZUMEeqfMc95BD27pw" x="1930" y="770"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_w846AZUMEeqfMc95BD27pw" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_w846ApUMEeqfMc95BD27pw" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_w846A5UMEeqfMc95BD27pw" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_w846BJUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_w846BZUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_w846BpUMEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_w846B5UMEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_w846CJUMEeqfMc95BD27pw" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_w846CZUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_w846CpUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_w846C5UMEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_w846DJUMEeqfMc95BD27pw"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_oavnUIhqEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_w846EJUMEeqfMc95BD27pw" x="2810" y="790"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_w85hEJUMEeqfMc95BD27pw" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_w85hEZUMEeqfMc95BD27pw" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_w85hEpUMEeqfMc95BD27pw" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_w85hE5UMEeqfMc95BD27pw" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_dvGZcIhpEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_w85hFJUMEeqfMc95BD27pw"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_w85hFZUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_w85hFpUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_w85hF5UMEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_w85hGJUMEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_w85hGZUMEeqfMc95BD27pw" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_w85hGpUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_w85hG5UMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_w85hHJUMEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_w85hHZUMEeqfMc95BD27pw"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_TXEOoIhpEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_w85hIZUMEeqfMc95BD27pw" x="1530" y="330"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_w86IIJUMEeqfMc95BD27pw" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_w86IIZUMEeqfMc95BD27pw" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_w86IIpUMEeqfMc95BD27pw" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_w86II5UMEeqfMc95BD27pw" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_fsyDkIhoEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_w86IJJUMEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_w86IJZUMEeqfMc95BD27pw" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_g54v4IhoEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_w86IJpUMEeqfMc95BD27pw"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_w86IJ5UMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_w86IKJUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_w86IKZUMEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_w86IKpUMEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_w86IK5UMEeqfMc95BD27pw" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_w86ILJUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_w86ILZUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_w86ILpUMEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_w86IL5UMEeqfMc95BD27pw"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_dgekEIhoEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_w86IM5UMEeqfMc95BD27pw" x="30" y="70"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_w86vMpUMEeqfMc95BD27pw" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_w86vM5UMEeqfMc95BD27pw" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_w86vNJUMEeqfMc95BD27pw" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_w86vNZUMEeqfMc95BD27pw" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_kXdYEIhqEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_w86vNpUMEeqfMc95BD27pw"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_w86vN5UMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_w86vOJUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_w86vOZUMEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_w86vOpUMEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_w86vO5UMEeqfMc95BD27pw" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_w86vPJUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_w86vPZUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_w86vPpUMEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_w86vP5UMEeqfMc95BD27pw"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_hqxIUIhqEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_w86vQ5UMEeqfMc95BD27pw" x="2810" y="570"/>
+ </children>
+ <styles xmi:type="notation:StringValueStyle" xmi:id="_FJrq0ZUKEeqWd_6S3mbYXg" name="diagram_compatibility_version" stringValue="1.4.0"/>
+ <styles xmi:type="notation:DiagramStyle" xmi:id="_FJrq0pUKEeqWd_6S3mbYXg"/>
+ <styles xmi:type="style:PapyrusDiagramStyle" xmi:id="_FJrq05UKEeqWd_6S3mbYXg" diagramKindId="org.eclipse.papyrus.uml.diagram.profile">
+ <owner xmi:type="uml:Profile" href="AIML.profile.uml#_nZcP0JT2Eeq5BK6mmo2rWg"/>
+ </styles>
+ <styles xmi:type="notation:EObjectListValueStyle" xmi:id="_Ej3QgJm2Eeq8nv7tV9lOqQ" name="css_stylesheets" eObjectListValue="_mci3oJm1Eeq8nv7tV9lOqQ"/>
+ <element xmi:type="uml:Profile" href="AIML.profile.uml#_nZcP0JT2Eeq5BK6mmo2rWg"/>
+ <edges xmi:type="notation:Connector" xmi:id="_w8q3kJUMEeqfMc95BD27pw" type="Generalization_Edge" source="_w8w-MJUMEeqfMc95BD27pw" target="_w85hEJUMEeqfMc95BD27pw">
+ <children xmi:type="notation:DecorationNode" xmi:id="_w8q3kZUMEeqfMc95BD27pw" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_w8q3kpUMEeqfMc95BD27pw" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_w8reoJUMEeqfMc95BD27pw" y="59"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_w8reoZUMEeqfMc95BD27pw"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_sErX4IhpEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_w8reopUMEeqfMc95BD27pw" points="[1155, 515, -643984, -643984]$[1175, 418, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_w8reo5UMEeqfMc95BD27pw" id="(0.45112781954887216,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_w8repJUMEeqfMc95BD27pw" id="(0.11428571428571428,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_w8vJAJUMEeqfMc95BD27pw" type="Generalization_Edge" source="_w85hEJUMEeqfMc95BD27pw" target="_w8w-QJUMEeqfMc95BD27pw">
+ <children xmi:type="notation:DecorationNode" xmi:id="_w8vJAZUMEeqfMc95BD27pw" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_w8vJApUMEeqfMc95BD27pw" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_w8vJA5UMEeqfMc95BD27pw" y="59"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_w8vJBJUMEeqfMc95BD27pw"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_KmOZMIhrEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_w8vJBZUMEeqfMc95BD27pw" points="[1315, 315, -643984, -643984]$[1015, 173, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_w8vJBpUMEeqfMc95BD27pw" id="(0.22857142857142856,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_w8vJB5UMEeqfMc95BD27pw" id="(0.7920792079207921,0.9971988795518194)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_w8xlQJUMEeqfMc95BD27pw" type="Generalization_Edge" source="_w8vJCJUMEeqfMc95BD27pw" target="_w85hEJUMEeqfMc95BD27pw">
+ <children xmi:type="notation:DecorationNode" xmi:id="_w8xlQZUMEeqfMc95BD27pw" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_w8xlQpUMEeqfMc95BD27pw" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_w8xlQ5UMEeqfMc95BD27pw" x="-1" y="59"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_w8xlRJUMEeqfMc95BD27pw"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_zEGoIIhpEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_w8xlRZUMEeqfMc95BD27pw" points="[1235, 515, -643984, -643984]$[1195, 418, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_w8xlRpUMEeqfMc95BD27pw" id="(0.3418803418803419,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_w8xlR5UMEeqfMc95BD27pw" id="(0.22857142857142856,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_w8yMVJUMEeqfMc95BD27pw" type="Generalization_Edge" source="_w86vMpUMEeqfMc95BD27pw" target="_w80BkJUMEeqfMc95BD27pw">
+ <children xmi:type="notation:DecorationNode" xmi:id="_w8yMVZUMEeqfMc95BD27pw" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_w8yMVpUMEeqfMc95BD27pw" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_w8yMV5UMEeqfMc95BD27pw" x="-1" y="58"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_w8yMWJUMEeqfMc95BD27pw"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_uCkygIhqEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_w8yMWZUMEeqfMc95BD27pw" points="[2490, 555, -643984, -643984]$[2410, 418, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_w8yMWpUMEeqfMc95BD27pw" id="(0.2926829268292683,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_w8yMW5UMEeqfMc95BD27pw" id="(0.9942196531791907,0.970873786407767)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_w8yzYJUMEeqfMc95BD27pw" type="Generalization_Edge" source="_w86IIJUMEeqfMc95BD27pw" target="_w8sFsJUMEeqfMc95BD27pw">
+ <children xmi:type="notation:DecorationNode" xmi:id="_w8yzYZUMEeqfMc95BD27pw" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_w8yzYpUMEeqfMc95BD27pw" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_w8yzY5UMEeqfMc95BD27pw" x="-1" y="59"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_w8yzZJUMEeqfMc95BD27pw"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_YDZI8IhrEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_w8yzZZUMEeqfMc95BD27pw" points="[130, 50, -643984, -643984]$[550, -88, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_w8yzZpUMEeqfMc95BD27pw" id="(0.5970149253731343,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_w8yzZ5UMEeqfMc95BD27pw" id="(0.3191489361702128,0.996763754045307)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_w8yzaJUMEeqfMc95BD27pw" type="Generalization_Edge" source="_w80BgJUMEeqfMc95BD27pw" target="_w86vMpUMEeqfMc95BD27pw">
+ <children xmi:type="notation:DecorationNode" xmi:id="_w8yzaZUMEeqfMc95BD27pw" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_w8yzapUMEeqfMc95BD27pw" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_w8yza5UMEeqfMc95BD27pw" x="-1" y="58"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_w8yzbJUMEeqfMc95BD27pw"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_qQK34IhqEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_w8yzbZUMEeqfMc95BD27pw" points="[2650, 795, -643984, -643984]$[2590, 658, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_w8yzbpUMEeqfMc95BD27pw" id="(0.4,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_w8yzb5UMEeqfMc95BD27pw" id="(0.7804878048780488,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_w8zagJUMEeqfMc95BD27pw" type="Generalization_Edge" source="_w81PoJUMEeqfMc95BD27pw" target="_w85hEJUMEeqfMc95BD27pw">
+ <children xmi:type="notation:DecorationNode" xmi:id="_w8zagZUMEeqfMc95BD27pw" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_w8zagpUMEeqfMc95BD27pw" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_w8zag5UMEeqfMc95BD27pw" x="-1" y="58"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_w8zahJUMEeqfMc95BD27pw"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_UcGuoIhqEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_w8zahZUMEeqfMc95BD27pw" points="[1575, 515, -643984, -643984]$[1415, 418, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_w8zahpUMEeqfMc95BD27pw" id="(0.1388888888888889,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_w8zah5UMEeqfMc95BD27pw" id="(0.8,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_w80on5UMEeqfMc95BD27pw" type="Generalization_Edge" source="_w83E2pUMEeqfMc95BD27pw" target="_w8w-QJUMEeqfMc95BD27pw">
+ <children xmi:type="notation:DecorationNode" xmi:id="_w80ooJUMEeqfMc95BD27pw" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_w80ooZUMEeqfMc95BD27pw" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_w80oopUMEeqfMc95BD27pw" x="1" y="58"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_w80oo5UMEeqfMc95BD27pw"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_Ojop8IhrEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_w80opJUMEeqfMc95BD27pw" points="[795, 315, -643984, -643984]$[935, 173, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_w80opZUMEeqfMc95BD27pw" id="(0.8,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_w80oppUMEeqfMc95BD27pw" id="(0.39603960396039606,0.9971988795518194)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_w81PspUMEeqfMc95BD27pw" type="Generalization_Edge" source="_w8vwEpUMEeqfMc95BD27pw" target="_w80BkJUMEeqfMc95BD27pw">
+ <children xmi:type="notation:DecorationNode" xmi:id="_w81Ps5UMEeqfMc95BD27pw" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_w81PtJUMEeqfMc95BD27pw" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_w81PtZUMEeqfMc95BD27pw" y="58"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_w81PtpUMEeqfMc95BD27pw"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_H58ZIIhrEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_w81Pt5UMEeqfMc95BD27pw" points="[2055, 555, -643984, -643984]$[2275, 417, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_w81PuJUMEeqfMc95BD27pw" id="(0.7486631016042781,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_w81PuZUMEeqfMc95BD27pw" id="(0.11560693641618497,0.9967637540453059)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_w82dwZUMEeqfMc95BD27pw" type="Generalization_Edge" source="_w846AZUMEeqfMc95BD27pw" target="_w86vMpUMEeqfMc95BD27pw">
+ <children xmi:type="notation:DecorationNode" xmi:id="_w82dwpUMEeqfMc95BD27pw" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_w82dw5UMEeqfMc95BD27pw" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_w82dxJUMEeqfMc95BD27pw" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_w82dxZUMEeqfMc95BD27pw"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_rT8pEIhqEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_w82dxpUMEeqfMc95BD27pw" points="[2490, 775, -643984, -643984]$[2490, 658, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_w82dx5UMEeqfMc95BD27pw" id="(0.5660377358490566,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_w82dyJUMEeqfMc95BD27pw" id="(0.2926829268292683,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_w82dyZUMEeqfMc95BD27pw" type="Generalization_Edge" source="_w8w-QJUMEeqfMc95BD27pw" target="_w8sFsJUMEeqfMc95BD27pw">
+ <children xmi:type="notation:DecorationNode" xmi:id="_w82dypUMEeqfMc95BD27pw" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_w82dy5UMEeqfMc95BD27pw" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_w82dzJUMEeqfMc95BD27pw" x="-1" y="58"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_w82dzZUMEeqfMc95BD27pw"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_YyIeQIhrEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_w82dzpUMEeqfMc95BD27pw" points="[1150, 50, -643984, -643984]$[630, -88, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_w82dz5UMEeqfMc95BD27pw" id="(0.297029702970297,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_w82d0JUMEeqfMc95BD27pw" id="(0.7446808510638298,0.996763754045307)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_w83E0pUMEeqfMc95BD27pw" type="Generalization_Edge" source="_w812sZUMEeqfMc95BD27pw" target="_w81PoJUMEeqfMc95BD27pw">
+ <children xmi:type="notation:DecorationNode" xmi:id="_w83E05UMEeqfMc95BD27pw" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_w83E1JUMEeqfMc95BD27pw" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_w83E1ZUMEeqfMc95BD27pw" x="1" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_w83E1pUMEeqfMc95BD27pw"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_THXJQIhqEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_w83E15UMEeqfMc95BD27pw" points="[1535, 755, -643984, -643984]$[1595, 618, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_w83E2JUMEeqfMc95BD27pw" id="(0.3468208092485549,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_w83E2ZUMEeqfMc95BD27pw" id="(0.2777777777777778,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_w83r4JUMEeqfMc95BD27pw" type="Generalization_Edge" source="_w8yMXJUMEeqfMc95BD27pw" target="_w8w-QJUMEeqfMc95BD27pw">
+ <children xmi:type="notation:DecorationNode" xmi:id="_w83r4ZUMEeqfMc95BD27pw" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_w83r4pUMEeqfMc95BD27pw" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_w83r45UMEeqfMc95BD27pw" y="59"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_w83r5JUMEeqfMc95BD27pw"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_PzV-UIhrEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_w83r5ZUMEeqfMc95BD27pw" points="[475, 315, -643984, -643984]$[875, 173, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_w83r5pUMEeqfMc95BD27pw" id="(0.6,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_w83r55UMEeqfMc95BD27pw" id="(0.09900990099009901,0.9971988795518194)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_w83r6JUMEeqfMc95BD27pw" type="Generalization_Edge" source="_w84S-JUMEeqfMc95BD27pw" target="_w81PoJUMEeqfMc95BD27pw">
+ <children xmi:type="notation:DecorationNode" xmi:id="_w83r6ZUMEeqfMc95BD27pw" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_w83r6pUMEeqfMc95BD27pw" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_w83r65UMEeqfMc95BD27pw" x="-1" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_w83r7JUMEeqfMc95BD27pw"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_ToeSQIhqEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_w83r7ZUMEeqfMc95BD27pw" points="[1715, 755, -643984, -643984]$[1655, 618, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_w83r7pUMEeqfMc95BD27pw" id="(0.24390243902439024,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_w83r75UMEeqfMc95BD27pw" id="(0.6944444444444444,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_w83r8JUMEeqfMc95BD27pw" type="Generalization_Edge" source="_w80BkJUMEeqfMc95BD27pw" target="_w8w-QJUMEeqfMc95BD27pw">
+ <children xmi:type="notation:DecorationNode" xmi:id="_w83r8ZUMEeqfMc95BD27pw" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_w83r8pUMEeqfMc95BD27pw" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_w83r85UMEeqfMc95BD27pw" x="1" y="58"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_w83r9JUMEeqfMc95BD27pw"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_L6mLIIhrEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_w83r9ZUMEeqfMc95BD27pw" points="[2275, 315, -643984, -643984]$[1035, 173, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_w83r9pUMEeqfMc95BD27pw" id="(0.11560693641618497,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_w83r95UMEeqfMc95BD27pw" id="(0.8910891089108911,0.9971988795518194)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_w84S8JUMEeqfMc95BD27pw" type="Generalization_Edge" source="_w8xlSJUMEeqfMc95BD27pw" target="_w85hEJUMEeqfMc95BD27pw">
+ <children xmi:type="notation:DecorationNode" xmi:id="_w84S8ZUMEeqfMc95BD27pw" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_w84S8pUMEeqfMc95BD27pw" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_w84S85UMEeqfMc95BD27pw" y="59"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_w84S9JUMEeqfMc95BD27pw"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_0GpqQIhpEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_w84S9ZUMEeqfMc95BD27pw" points="[1355, 515, -643984, -643984]$[1215, 418, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_w84S9pUMEeqfMc95BD27pw" id="(0.15503875968992248,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_w84S95UMEeqfMc95BD27pw" id="(0.34285714285714286,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_w846EZUMEeqfMc95BD27pw" type="Generalization_Edge" source="_w8zacJUMEeqfMc95BD27pw" target="_w8w-QJUMEeqfMc95BD27pw">
+ <children xmi:type="notation:DecorationNode" xmi:id="_w846EpUMEeqfMc95BD27pw" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_w846E5UMEeqfMc95BD27pw" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_w846FJUMEeqfMc95BD27pw" y="59"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_w846FZUMEeqfMc95BD27pw"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_OBMEMIhrEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_w846FpUMEeqfMc95BD27pw" points="[935, 315, -643984, -643984]$[955, 173, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_w846F5UMEeqfMc95BD27pw" id="(0.6153846153846154,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_w846GJUMEeqfMc95BD27pw" id="(0.49504950495049505,0.9971988795518194)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_w86INJUMEeqfMc95BD27pw" type="Generalization_Edge" source="_w8uh8JUMEeqfMc95BD27pw" target="_w8w-QJUMEeqfMc95BD27pw">
+ <children xmi:type="notation:DecorationNode" xmi:id="_w86INZUMEeqfMc95BD27pw" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_w86INpUMEeqfMc95BD27pw" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_w86IN5UMEeqfMc95BD27pw" y="59"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_w86IOJUMEeqfMc95BD27pw"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_PLRRsIhrEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_w86IOZUMEeqfMc95BD27pw" points="[595, 315, -643984, -643984]$[915, 173, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_w86vMJUMEeqfMc95BD27pw" id="(0.4,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_w86vMZUMEeqfMc95BD27pw" id="(0.297029702970297,0.9971988795518194)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_w87WQJUMEeqfMc95BD27pw" type="Generalization_Edge" source="_w8wXIpUMEeqfMc95BD27pw" target="_w80BkJUMEeqfMc95BD27pw">
+ <children xmi:type="notation:DecorationNode" xmi:id="_w87WQZUMEeqfMc95BD27pw" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_w87WQpUMEeqfMc95BD27pw" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_w87WQ5UMEeqfMc95BD27pw" x="-1" y="57"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_w87WRJUMEeqfMc95BD27pw"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_7bTjoIhpEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_w87WRZUMEeqfMc95BD27pw" points="[2430, 575, -643984, -643984]$[2310, 418, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_w87WRpUMEeqfMc95BD27pw" id="(0.4,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_w87WR5UMEeqfMc95BD27pw" id="(0.8092485549132948,0.9805825242718447)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_w87WSJUMEeqfMc95BD27pw" type="Generalization_Edge" source="_w8t64ZUMEeqfMc95BD27pw" target="_w80BkJUMEeqfMc95BD27pw">
+ <children xmi:type="notation:DecorationNode" xmi:id="_w87WSZUMEeqfMc95BD27pw" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_w87WSpUMEeqfMc95BD27pw" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_w87WS5UMEeqfMc95BD27pw" x="1" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_w87WTJUMEeqfMc95BD27pw"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_HRZLYIhrEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_w87WTZUMEeqfMc95BD27pw" points="[2275, 555, -643984, -643984]$[2335, 417, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_w87WTpUMEeqfMc95BD27pw" id="(0.6091370558375635,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_w87WT5UMEeqfMc95BD27pw" id="(0.4624277456647399,0.9967637540453059)"/>
+ </edges>
+ </notation:Diagram>
+ <notation:Diagram xmi:id="_GhIl8JUKEeqWd_6S3mbYXg" type="PapyrusUMLProfileDiagram" name="Vision_layers" measurementUnit="Pixel">
+ <children xmi:type="notation:Shape" xmi:id="_2LXKAJUMEeqfMc95BD27pw" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_2LXKAZUMEeqfMc95BD27pw" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_2LXKApUMEeqfMc95BD27pw" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_2LXKA5UMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_2LXKBJUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_2LXKBZUMEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_2LXKBpUMEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_2LXKB5UMEeqfMc95BD27pw" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_2LXKCJUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_2LXKCZUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_2LXKCpUMEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_2LXKC5UMEeqfMc95BD27pw"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_iLwgEIhrEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_2LXKD5UMEeqfMc95BD27pw" x="280" y="40" width="569"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_2LYYIJUMEeqfMc95BD27pw" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_2LYYIZUMEeqfMc95BD27pw" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_2LYYIpUMEeqfMc95BD27pw" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_2LYYI5UMEeqfMc95BD27pw" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_507w0IhrEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_2LYYJJUMEeqfMc95BD27pw"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_2LYYJZUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_2LYYJpUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_2LYYJ5UMEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_2LYYKJUMEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_2LYYKZUMEeqfMc95BD27pw" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_2LYYKpUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_2LYYK5UMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_2LYYLJUMEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_2LYYLZUMEeqfMc95BD27pw"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_2p5YMIhrEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_2LYYMZUMEeqfMc95BD27pw" x="640" y="220"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_2LYYOZUMEeqfMc95BD27pw" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_2LYYOpUMEeqfMc95BD27pw" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_2LYYO5UMEeqfMc95BD27pw" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_2LYYPJUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_2LYYPZUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_2LYYPpUMEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_2LYYP5UMEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_2LYYQJUMEeqfMc95BD27pw" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_2LYYQZUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_2LYYQpUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_2LYYQ5UMEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_2LYYRJUMEeqfMc95BD27pw"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_ExzHAIhsEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_2LYYSJUMEeqfMc95BD27pw" x="340" y="400"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_2LY_MJUMEeqfMc95BD27pw" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_2LY_MZUMEeqfMc95BD27pw" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_2LY_MpUMEeqfMc95BD27pw" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_2LY_M5UMEeqfMc95BD27pw" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_-r78AIhrEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_2LY_NJUMEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_2LY_NZUMEeqfMc95BD27pw" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#___G0EIhrEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_2LY_NpUMEeqfMc95BD27pw"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_2LY_N5UMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_2LY_OJUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_2LY_OZUMEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_2LY_OpUMEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_2LY_O5UMEeqfMc95BD27pw" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_2LY_PJUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_2LY_PZUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_2LY_PpUMEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_2LY_P5UMEeqfMc95BD27pw"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_9D3yAIhrEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_2LY_Q5UMEeqfMc95BD27pw" x="100" y="400"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_2LZmTpUMEeqfMc95BD27pw" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_2LZmT5UMEeqfMc95BD27pw" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_2LZmUJUMEeqfMc95BD27pw" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_2LZmUZUMEeqfMc95BD27pw" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_xJ4sQIhrEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_2LZmUpUMEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_2LZmU5UMEeqfMc95BD27pw" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_yEO0oIhrEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_2LZmVJUMEeqfMc95BD27pw"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_2LZmVZUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_2LZmVpUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_2LZmV5UMEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_2LZmWJUMEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_2LZmWZUMEeqfMc95BD27pw" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_2LZmWpUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_2LZmW5UMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_2LZmXJUMEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_2LZmXZUMEeqfMc95BD27pw"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_t32TwIhrEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_2LZmYZUMEeqfMc95BD27pw" x="280" y="220" width="201" height="101"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_2LZmY5UMEeqfMc95BD27pw" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_2LZmZJUMEeqfMc95BD27pw" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_2LZmZZUMEeqfMc95BD27pw" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_2LZmZpUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_2LZmZ5UMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_2LaNUJUMEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_2LaNUZUMEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_2LaNUpUMEeqfMc95BD27pw" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_2LaNU5UMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_2LaNVJUMEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_2LaNVZUMEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_2LaNVpUMEeqfMc95BD27pw"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_FiUlAIhsEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_2LaNWpUMEeqfMc95BD27pw" x="520" y="400"/>
+ </children>
+ <styles xmi:type="notation:StringValueStyle" xmi:id="_GhIl8ZUKEeqWd_6S3mbYXg" name="diagram_compatibility_version" stringValue="1.4.0"/>
+ <styles xmi:type="notation:DiagramStyle" xmi:id="_GhIl8pUKEeqWd_6S3mbYXg"/>
+ <styles xmi:type="style:PapyrusDiagramStyle" xmi:id="_GhIl85UKEeqWd_6S3mbYXg" diagramKindId="org.eclipse.papyrus.uml.diagram.profile">
+ <owner xmi:type="uml:Profile" href="AIML.profile.uml#_q6FsEJT2Eeq5BK6mmo2rWg"/>
+ </styles>
+ <styles xmi:type="notation:EObjectListValueStyle" xmi:id="_mciQkJm1Eeq8nv7tV9lOqQ" name="css_stylesheets" eObjectListValue="_mci3oJm1Eeq8nv7tV9lOqQ"/>
+ <element xmi:type="uml:Profile" href="AIML.profile.uml#_q6FsEJT2Eeq5BK6mmo2rWg"/>
+ <edges xmi:type="notation:Connector" xmi:id="_2LYYMpUMEeqfMc95BD27pw" type="Generalization_Edge" source="_2LY_MJUMEeqfMc95BD27pw" target="_2LZmTpUMEeqfMc95BD27pw">
+ <children xmi:type="notation:DecorationNode" xmi:id="_2LYYM5UMEeqfMc95BD27pw" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_t_FRcJm0Eeq8nv7tV9lOqQ" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_2LYYNJUMEeqfMc95BD27pw" y="59"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_2LYYNZUMEeqfMc95BD27pw"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_KFjfoIhsEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_2LYYNpUMEeqfMc95BD27pw" points="[280, 400, -643984, -643984]$[280, 360, -643984, -643984]$[320, 360, -643984, -643984]$[320, 321, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_2LYYN5UMEeqfMc95BD27pw" id="(0.6862745098039216,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_2LYYOJUMEeqfMc95BD27pw" id="(0.19900497512437812,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_2LY_RZUMEeqfMc95BD27pw" type="Generalization_Edge" source="_2LZmTpUMEeqfMc95BD27pw" target="_2LXKAJUMEeqfMc95BD27pw">
+ <children xmi:type="notation:DecorationNode" xmi:id="_2LY_RpUMEeqfMc95BD27pw" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_t-8ukJm0Eeq8nv7tV9lOqQ" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_2LY_R5UMEeqfMc95BD27pw" x="-1" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_2LY_SJUMEeqfMc95BD27pw"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_MhVlkIhsEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_2LY_SZUMEeqfMc95BD27pw" points="[12680, 615, -643984, -643984]$[12800, 535, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_2LY_SpUMEeqfMc95BD27pw" id="(0.4975124378109453,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_2LY_S5UMEeqfMc95BD27pw" id="(0.1757469244288225,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_2LY_TJUMEeqfMc95BD27pw" type="Generalization_Edge" source="_2LZmY5UMEeqfMc95BD27pw" target="_2LZmTpUMEeqfMc95BD27pw">
+ <children xmi:type="notation:DecorationNode" xmi:id="_2LY_TZUMEeqfMc95BD27pw" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_t_MmMJm0Eeq8nv7tV9lOqQ" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_2LY_TpUMEeqfMc95BD27pw" x="-2" y="57"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_2LY_T5UMEeqfMc95BD27pw"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_LUKn0IhsEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_2LY_UJUMEeqfMc95BD27pw" points="[660, 400, -643984, -643984]$[660, 360, -643984, -643984]$[460, 360, -643984, -643984]$[460, 321, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_2LY_UZUMEeqfMc95BD27pw" id="(0.4166666666666667,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_2LY_UpUMEeqfMc95BD27pw" id="(0.8955223880597015,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_2LZmQJUMEeqfMc95BD27pw" type="Generalization_Edge" source="_2LYYIJUMEeqfMc95BD27pw" target="_2LXKAJUMEeqfMc95BD27pw">
+ <children xmi:type="notation:DecorationNode" xmi:id="_2LZmQZUMEeqfMc95BD27pw" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_t_e6EJm0Eeq8nv7tV9lOqQ" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_2LZmQpUMEeqfMc95BD27pw" x="-1" y="58"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_2LZmQ5UMEeqfMc95BD27pw"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_L7Zm8IhsEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_2LZmRJUMEeqfMc95BD27pw" points="[13000, 615, -643984, -643984]$[12840, 535, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_2LZmRZUMEeqfMc95BD27pw" id="(0.4807692307692308,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_2LZmRpUMEeqfMc95BD27pw" id="(0.8084358523725835,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_2LZmR5UMEeqfMc95BD27pw" type="Generalization_Edge" source="_2LYYOZUMEeqfMc95BD27pw" target="_2LZmTpUMEeqfMc95BD27pw">
+ <children xmi:type="notation:DecorationNode" xmi:id="_2LZmSJUMEeqfMc95BD27pw" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_t_UiAJm0Eeq8nv7tV9lOqQ" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_2LZmSZUMEeqfMc95BD27pw" x="-1" y="58"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_2LZmSpUMEeqfMc95BD27pw"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_KqD64IhsEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_2LZmS5UMEeqfMc95BD27pw" points="[460, 400, -643984, -643984]$[460, 360, -643984, -643984]$[400, 360, -643984, -643984]$[400, 321, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_2LZmTJUMEeqfMc95BD27pw" id="(0.410958904109589,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_2LZmTZUMEeqfMc95BD27pw" id="(0.5970149253731343,1.0)"/>
+ </edges>
+ </notation:Diagram>
+ <notation:Diagram xmi:id="_ITCocJUKEeqWd_6S3mbYXg" type="PapyrusUMLProfileDiagram" name="DataParallel_layers_(multi-GPU, distributed)" measurementUnit="Pixel">
+ <children xmi:type="notation:Shape" xmi:id="_B_Hr8ZUNEeqfMc95BD27pw" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_B_Hr8pUNEeqfMc95BD27pw" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_B_Hr85UNEeqfMc95BD27pw" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_B_Hr9JUNEeqfMc95BD27pw" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_rBanQIhtEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_B_Hr9ZUNEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_B_Hr9pUNEeqfMc95BD27pw" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_r6Q60IhtEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_B_Hr95UNEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_B_Hr-JUNEeqfMc95BD27pw" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_stpfkIhtEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_B_Hr-ZUNEeqfMc95BD27pw"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_B_Hr-pUNEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_B_Hr-5UNEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_B_Hr_JUNEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_B_Hr_ZUNEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_B_Hr_pUNEeqfMc95BD27pw" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_B_Hr_5UNEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_B_HsAJUNEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_B_HsAZUNEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_B_HsApUNEeqfMc95BD27pw"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_jq9XEIhtEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_B_HsBpUNEeqfMc95BD27pw" x="120" y="60" width="541"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_B_ITAJUNEeqfMc95BD27pw" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_B_ITAZUNEeqfMc95BD27pw" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_B_ITApUNEeqfMc95BD27pw" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_B_ITA5UNEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_B_ITBJUNEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_B_ITBZUNEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_B_ITBpUNEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_B_ITB5UNEeqfMc95BD27pw" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_B_ITCJUNEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_B_ITCZUNEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_B_ITCpUNEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_B_ITC5UNEeqfMc95BD27pw"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_2bnZsIhtEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_B_ITD5UNEeqfMc95BD27pw" x="500" y="280" width="161"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_B_ITEJUNEeqfMc95BD27pw" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_B_ITEZUNEeqfMc95BD27pw" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_B_ITEpUNEeqfMc95BD27pw" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_B_ITE5UNEeqfMc95BD27pw" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_vpBrkIhtEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_B_ITFJUNEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_B_ITFZUNEeqfMc95BD27pw" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_xG4JoIhtEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_B_ITFpUNEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_B_ITF5UNEeqfMc95BD27pw" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_yJonIIhtEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_B_ITGJUNEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_B_ITGZUNEeqfMc95BD27pw" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_zcpuMIhtEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_B_ITGpUNEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_B_ITG5UNEeqfMc95BD27pw" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_1KdT0IhtEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_B_ITHJUNEeqfMc95BD27pw"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_B_ITHZUNEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_B_ITHpUNEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_B_ITH5UNEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_B_ITIJUNEeqfMc95BD27pw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_B_ITIZUNEeqfMc95BD27pw" visible="false" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_B_ITIpUNEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_B_ITI5UNEeqfMc95BD27pw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_B_ITJJUNEeqfMc95BD27pw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_B_ITJZUNEeqfMc95BD27pw"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_tsGr4IhtEeqlnrZTj0aPoA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_B_ITKZUNEeqfMc95BD27pw" x="120" y="280" width="281" height="141"/>
+ </children>
+ <styles xmi:type="notation:StringValueStyle" xmi:id="_ITCocZUKEeqWd_6S3mbYXg" name="diagram_compatibility_version" stringValue="1.4.0"/>
+ <styles xmi:type="notation:DiagramStyle" xmi:id="_ITCocpUKEeqWd_6S3mbYXg"/>
+ <styles xmi:type="style:PapyrusDiagramStyle" xmi:id="_ITCoc5UKEeqWd_6S3mbYXg" diagramKindId="org.eclipse.papyrus.uml.diagram.profile">
+ <owner xmi:type="uml:Profile" href="AIML.profile.uml#_wBUroJT2Eeq5BK6mmo2rWg"/>
+ </styles>
+ <styles xmi:type="notation:EObjectListValueStyle" xmi:id="_B6gooJm2Eeq8nv7tV9lOqQ" name="css_stylesheets" eObjectListValue="_mci3oJm1Eeq8nv7tV9lOqQ"/>
+ <element xmi:type="uml:Profile" href="AIML.profile.uml#_wBUroJT2Eeq5BK6mmo2rWg"/>
+ <edges xmi:type="notation:Connector" xmi:id="_B_Gd0JUNEeqfMc95BD27pw" type="Generalization_Edge" source="_B_ITAJUNEeqfMc95BD27pw" target="_B_Hr8ZUNEeqfMc95BD27pw">
+ <children xmi:type="notation:DecorationNode" xmi:id="_B_Gd0ZUNEeqfMc95BD27pw" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_M4hgQJm0Eeq8nv7tV9lOqQ" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_B_Gd0pUNEeqfMc95BD27pw" x="-1" y="57"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_B_Gd05UNEeqfMc95BD27pw"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_4pLdcIhtEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_B_Gd1JUNEeqfMc95BD27pw" points="[11560, 775, -643984, -643984]$[11440, 649, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_B_Gd1ZUNEeqfMc95BD27pw" id="(0.4968944099378882,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_B_Gd1pUNEeqfMc95BD27pw" id="(0.8502772643253235,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_B_HE4JUNEeqfMc95BD27pw" type="Generalization_Edge" source="_B_ITEJUNEeqfMc95BD27pw" target="_B_Hr8ZUNEeqfMc95BD27pw">
+ <children xmi:type="notation:DecorationNode" xmi:id="_B_HE4ZUNEeqfMc95BD27pw" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_M4pcEJm0Eeq8nv7tV9lOqQ" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_B_HE4pUNEeqfMc95BD27pw" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_B_HE45UNEeqfMc95BD27pw"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_5KbJUIhtEeqlnrZTj0aPoA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_B_HE5JUNEeqfMc95BD27pw" points="[11300, 775, -643984, -643984]$[11320, 649, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_B_HE5ZUNEeqfMc95BD27pw" id="(0.498220640569395,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_B_HE5pUNEeqfMc95BD27pw" id="(0.2587800369685767,1.0)"/>
+ </edges>
+ </notation:Diagram>
+ <css:EmbeddedStyleSheet xmi:id="_mci3oJm1Eeq8nv7tV9lOqQ" label="OnlyAttributes" content="Stereotype > Compartment[kind="operations"] {
 visible: false;
}

Generalization {
	routing : Rectilinear;
}

Extension {
	routing : Rectilinear;
}"/>
+ <notation:Diagram xmi:id="_IJYokKThEeqmTOsCAzVBxg" type="PapyrusUMLProfileDiagram" name="Layer_weight_constraints" measurementUnit="Pixel">
+ <children xmi:type="notation:Shape" xmi:id="_Q5hogKThEeqmTOsCAzVBxg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_Q5iPkKThEeqmTOsCAzVBxg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_Q5iPkaThEeqmTOsCAzVBxg" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_EPESoKTiEeqmTOsCAzVBxg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_EO8W0KTiEeqmTOsCAzVBxg"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_EPESoaTiEeqmTOsCAzVBxg"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_H-KakKTiEeqmTOsCAzVBxg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_H-FiEKTiEeqmTOsCAzVBxg"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_H-KakaTiEeqmTOsCAzVBxg"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_Q5iPkqThEeqmTOsCAzVBxg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_Q5iPk6ThEeqmTOsCAzVBxg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_Q5iPlKThEeqmTOsCAzVBxg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Q5iPlaThEeqmTOsCAzVBxg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_Q5iPlqThEeqmTOsCAzVBxg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_Q5iPl6ThEeqmTOsCAzVBxg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_Q5iPmKThEeqmTOsCAzVBxg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_Q5iPmaThEeqmTOsCAzVBxg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Q5iPmqThEeqmTOsCAzVBxg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_Q5gaYKThEeqmTOsCAzVBxg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Q5hogaThEeqmTOsCAzVBxg" x="140" y="680"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_SFrSkKThEeqmTOsCAzVBxg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_SFrSkqThEeqmTOsCAzVBxg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_SFr5oKThEeqmTOsCAzVBxg" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_SFr5oaThEeqmTOsCAzVBxg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_SFr5oqThEeqmTOsCAzVBxg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_SFr5o6ThEeqmTOsCAzVBxg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_SFr5pKThEeqmTOsCAzVBxg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_SFr5paThEeqmTOsCAzVBxg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_SFr5pqThEeqmTOsCAzVBxg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_SFr5p6ThEeqmTOsCAzVBxg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_SFr5qKThEeqmTOsCAzVBxg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_SFr5qaThEeqmTOsCAzVBxg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_SFqEcKThEeqmTOsCAzVBxg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_SFrSkaThEeqmTOsCAzVBxg" y="680"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_oe5-YKThEeqmTOsCAzVBxg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_oe6lcKThEeqmTOsCAzVBxg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_oe6lcaThEeqmTOsCAzVBxg" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_oe6lcqThEeqmTOsCAzVBxg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_oe6lc6ThEeqmTOsCAzVBxg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_oe6ldKThEeqmTOsCAzVBxg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_oe6ldaThEeqmTOsCAzVBxg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_oe7MgKThEeqmTOsCAzVBxg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_oe7MgaThEeqmTOsCAzVBxg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_oe7MgqThEeqmTOsCAzVBxg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_oe7Mg6ThEeqmTOsCAzVBxg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_oe7MhKThEeqmTOsCAzVBxg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_oe1s8KThEeqmTOsCAzVBxg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_oe5-YaThEeqmTOsCAzVBxg" x="540" y="460"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_p5hiQKThEeqmTOsCAzVBxg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_p5iJUKThEeqmTOsCAzVBxg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_p5iJUaThEeqmTOsCAzVBxg" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_p5iJUqThEeqmTOsCAzVBxg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_p5iJU6ThEeqmTOsCAzVBxg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_p5iJVKThEeqmTOsCAzVBxg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_p5iJVaThEeqmTOsCAzVBxg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_p5iJVqThEeqmTOsCAzVBxg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_p5iJV6ThEeqmTOsCAzVBxg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_p5iJWKThEeqmTOsCAzVBxg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_p5iJWaThEeqmTOsCAzVBxg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_p5iJWqThEeqmTOsCAzVBxg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_p5ftEKThEeqmTOsCAzVBxg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_p5hiQaThEeqmTOsCAzVBxg" x="420" y="460"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_s2-K0KThEeqmTOsCAzVBxg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_s2-x4KThEeqmTOsCAzVBxg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_s2-x4aThEeqmTOsCAzVBxg" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_s2-x4qThEeqmTOsCAzVBxg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_s2-x46ThEeqmTOsCAzVBxg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_s2-x5KThEeqmTOsCAzVBxg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_s2-x5aThEeqmTOsCAzVBxg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_s2-x5qThEeqmTOsCAzVBxg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_s2-x56ThEeqmTOsCAzVBxg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_s2-x6KThEeqmTOsCAzVBxg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_s2-x6aThEeqmTOsCAzVBxg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_s2-x6qThEeqmTOsCAzVBxg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_s288sKThEeqmTOsCAzVBxg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_s2-K0aThEeqmTOsCAzVBxg" x="300" y="460"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_T5M-UKTkEeqmTOsCAzVBxg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_T5NlYKTkEeqmTOsCAzVBxg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_T5NlYaTkEeqmTOsCAzVBxg" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_YMPg0KTkEeqmTOsCAzVBxg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_YMFv0KTkEeqmTOsCAzVBxg"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_YMPg0aTkEeqmTOsCAzVBxg"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_T5NlYqTkEeqmTOsCAzVBxg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_T5NlY6TkEeqmTOsCAzVBxg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_T5NlZKTkEeqmTOsCAzVBxg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_T5NlZaTkEeqmTOsCAzVBxg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_T5NlZqTkEeqmTOsCAzVBxg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_T5NlZ6TkEeqmTOsCAzVBxg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_T5NlaKTkEeqmTOsCAzVBxg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_T5NlaaTkEeqmTOsCAzVBxg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_T5NlaqTkEeqmTOsCAzVBxg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_T5LJIKTkEeqmTOsCAzVBxg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_T5M-UaTkEeqmTOsCAzVBxg" x="160" y="240"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_cxYf8KTkEeqmTOsCAzVBxg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_cxYf8qTkEeqmTOsCAzVBxg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_cxYf86TkEeqmTOsCAzVBxg" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_hrnlUKTkEeqmTOsCAzVBxg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_hrd0UKTkEeqmTOsCAzVBxg"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_hrnlUaTkEeqmTOsCAzVBxg"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_cxYf9KTkEeqmTOsCAzVBxg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_cxYf9aTkEeqmTOsCAzVBxg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_cxYf9qTkEeqmTOsCAzVBxg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_cxYf96TkEeqmTOsCAzVBxg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_cxYf-KTkEeqmTOsCAzVBxg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_cxYf-aTkEeqmTOsCAzVBxg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_cxYf-qTkEeqmTOsCAzVBxg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_cxYf-6TkEeqmTOsCAzVBxg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_cxYf_KTkEeqmTOsCAzVBxg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_cxXR0KTkEeqmTOsCAzVBxg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_cxYf8aTkEeqmTOsCAzVBxg" x="20" y="480"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_sQ2WIKZ6EeqIr7xwFiWQGQ" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_sQ6AgKZ6EeqIr7xwFiWQGQ" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_sQ6nkKZ6EeqIr7xwFiWQGQ" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_sQ6nkaZ6EeqIr7xwFiWQGQ"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_sQ6nkqZ6EeqIr7xwFiWQGQ"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_sQ6nk6Z6EeqIr7xwFiWQGQ"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_sQ6nlKZ6EeqIr7xwFiWQGQ"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_sQ6nlaZ6EeqIr7xwFiWQGQ" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_sQ6nlqZ6EeqIr7xwFiWQGQ"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_sQ6nl6Z6EeqIr7xwFiWQGQ"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_sQ6nmKZ6EeqIr7xwFiWQGQ"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_sQ6nmaZ6EeqIr7xwFiWQGQ"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_sQtMMKZ6EeqIr7xwFiWQGQ"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_sQ2WIaZ6EeqIr7xwFiWQGQ" x="340" y="40"/>
+ </children>
+ <styles xmi:type="notation:StringValueStyle" xmi:id="_IJYokaThEeqmTOsCAzVBxg" name="diagram_compatibility_version" stringValue="1.4.0"/>
+ <styles xmi:type="notation:DiagramStyle" xmi:id="_IJYokqThEeqmTOsCAzVBxg"/>
+ <styles xmi:type="style:PapyrusDiagramStyle" xmi:id="_IJYok6ThEeqmTOsCAzVBxg" diagramKindId="org.eclipse.papyrus.uml.diagram.profile">
+ <owner xmi:type="uml:Profile" href="AIML.profile.uml#_IDYhIH13EeqSHNFOHg2_Jw"/>
+ </styles>
+ <styles xmi:type="notation:EObjectListValueStyle" xmi:id="_02nlsK8YEeqhVOlV64dXmA" name="css_stylesheets" eObjectListValue="_mci3oJm1Eeq8nv7tV9lOqQ"/>
+ <element xmi:type="uml:Profile" href="AIML.profile.uml#_IDYhIH13EeqSHNFOHg2_Jw"/>
+ <edges xmi:type="notation:Connector" xmi:id="_ZkbbwKTkEeqmTOsCAzVBxg" type="Generalization_Edge" source="_s2-K0KThEeqmTOsCAzVBxg" target="_T5M-UKTkEeqmTOsCAzVBxg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_Zkbbw6TkEeqmTOsCAzVBxg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_Z-gvsKTkEeqmTOsCAzVBxg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_ZkbbxKTkEeqmTOsCAzVBxg" x="-1" y="58"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_ZkbbwaTkEeqmTOsCAzVBxg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_ZkPOgKTkEeqmTOsCAzVBxg"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_ZkbbwqTkEeqmTOsCAzVBxg" points="[560, 460, -643984, -643984]$[400, 443, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Zko3IKTkEeqmTOsCAzVBxg" id="(0.2,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Zko3IaTkEeqmTOsCAzVBxg" id="(0.5970149253731343,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_vNWsAKTkEeqmTOsCAzVBxg" type="Generalization_Edge" source="_Q5hogKThEeqmTOsCAzVBxg" target="_cxYf8KTkEeqmTOsCAzVBxg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_vNWsA6TkEeqmTOsCAzVBxg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_y4PpYKTkEeqmTOsCAzVBxg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_vNWsBKTkEeqmTOsCAzVBxg" x="-1" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_vNWsAaTkEeqmTOsCAzVBxg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_vNIpkKTkEeqmTOsCAzVBxg"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_vNWsAqTkEeqmTOsCAzVBxg" points="[200, 680, -643984, -643984]$[140, 583, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_vNo_4KTkEeqmTOsCAzVBxg" id="(0.4225352112676056,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_vNpm8KTkEeqmTOsCAzVBxg" id="(0.8333333333333334,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_vv4KQKTkEeqmTOsCAzVBxg" type="Generalization_Edge" source="_SFrSkKThEeqmTOsCAzVBxg" target="_cxYf8KTkEeqmTOsCAzVBxg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_vv4KQ6TkEeqmTOsCAzVBxg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_y4W-IKTkEeqmTOsCAzVBxg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_vv4KRKTkEeqmTOsCAzVBxg" y="59"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_vv4KQaTkEeqmTOsCAzVBxg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_vvr9AKTkEeqmTOsCAzVBxg"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_vv4KQqTkEeqmTOsCAzVBxg" points="[60, 680, -643984, -643984]$[80, 583, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_vwE-kKTkEeqmTOsCAzVBxg" id="(0.6,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_vwE-kaTkEeqmTOsCAzVBxg" id="(0.4166666666666667,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_1Q8mIKTkEeqmTOsCAzVBxg" type="Generalization_Edge" source="_cxYf8KTkEeqmTOsCAzVBxg" target="_T5M-UKTkEeqmTOsCAzVBxg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_1Q9NMKTkEeqmTOsCAzVBxg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_wMXwgKZ6EeqIr7xwFiWQGQ" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_1Q9NMaTkEeqmTOsCAzVBxg" y="59"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_1Q8mIaTkEeqmTOsCAzVBxg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_1Qw_8KTkEeqmTOsCAzVBxg"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_1Q8mIqTkEeqmTOsCAzVBxg" points="[140, 480, -643984, -643984]$[200, 343, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_1RKokKTkEeqmTOsCAzVBxg" id="(0.8333333333333334,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_1RKokaTkEeqmTOsCAzVBxg" id="(0.29850746268656714,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_ymr20KZ6EeqIr7xwFiWQGQ" type="Generalization_Edge" source="_T5M-UKTkEeqmTOsCAzVBxg" target="_sQ2WIKZ6EeqIr7xwFiWQGQ">
+ <children xmi:type="notation:DecorationNode" xmi:id="_ymr206Z6EeqIr7xwFiWQGQ" type="Generalization_StereotypeLabel">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_ymr21KZ6EeqIr7xwFiWQGQ" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_ymr20aZ6EeqIr7xwFiWQGQ"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_ymebcKZ6EeqIr7xwFiWQGQ"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_ymr20qZ6EeqIr7xwFiWQGQ" points="[240, 240, -643984, -643984]$[380, 140, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_ynOCUKZ6EeqIr7xwFiWQGQ" id="(0.5970149253731343,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_ynOCUaZ6EeqIr7xwFiWQGQ" id="(0.4,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_zMcPQKZ6EeqIr7xwFiWQGQ" type="Generalization_Edge" source="_p5hiQKThEeqmTOsCAzVBxg" target="_sQ2WIKZ6EeqIr7xwFiWQGQ">
+ <children xmi:type="notation:DecorationNode" xmi:id="_zMc2UKZ6EeqIr7xwFiWQGQ" type="Generalization_StereotypeLabel">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_zMc2UaZ6EeqIr7xwFiWQGQ" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_zMcPQaZ6EeqIr7xwFiWQGQ"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_zMJUUKZ6EeqIr7xwFiWQGQ"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_zMcPQqZ6EeqIr7xwFiWQGQ" points="[480, 460, -643984, -643984]$[400, 140, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_zM_o4KZ6EeqIr7xwFiWQGQ" id="(0.6,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_zM_o4aZ6EeqIr7xwFiWQGQ" id="(0.6,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_z1-7gKZ6EeqIr7xwFiWQGQ" type="Generalization_Edge" source="_oe5-YKThEeqmTOsCAzVBxg" target="_sQ2WIKZ6EeqIr7xwFiWQGQ">
+ <children xmi:type="notation:DecorationNode" xmi:id="_z1_ikKZ6EeqIr7xwFiWQGQ" type="Generalization_StereotypeLabel">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_z1_ikaZ6EeqIr7xwFiWQGQ" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_z1-7gaZ6EeqIr7xwFiWQGQ"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_z11KgKZ6EeqIr7xwFiWQGQ"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_z1-7gqZ6EeqIr7xwFiWQGQ" points="[600, 460, -643984, -643984]$[400, 140, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_z2RPYKZ6EeqIr7xwFiWQGQ" id="(0.6,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_z2RPYaZ6EeqIr7xwFiWQGQ" id="(0.6,1.0)"/>
+ </edges>
+ </notation:Diagram>
+ <notation:Diagram xmi:id="_W-_1IKTlEeqmTOsCAzVBxg" type="PapyrusUMLProfileDiagram" name="Layer_weight_constraints" measurementUnit="Pixel">
+ <children xmi:type="notation:Shape" xmi:id="_9z2S0KZ6EeqIr7xwFiWQGQ" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_9z2S0aZ6EeqIr7xwFiWQGQ" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_9z2S0qZ6EeqIr7xwFiWQGQ" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_9z2S06Z6EeqIr7xwFiWQGQ"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_9z2S1KZ6EeqIr7xwFiWQGQ"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_9z2S1aZ6EeqIr7xwFiWQGQ"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_9z2S1qZ6EeqIr7xwFiWQGQ"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_9z2S16Z6EeqIr7xwFiWQGQ" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_9z2S2KZ6EeqIr7xwFiWQGQ"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_9z2S2aZ6EeqIr7xwFiWQGQ"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_9z2S2qZ6EeqIr7xwFiWQGQ"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_9z2S26Z6EeqIr7xwFiWQGQ"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_SFqEcKThEeqmTOsCAzVBxg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_9z2S36Z6EeqIr7xwFiWQGQ" x="10" y="690"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_9z254KZ6EeqIr7xwFiWQGQ" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_9z254aZ6EeqIr7xwFiWQGQ" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_9z254qZ6EeqIr7xwFiWQGQ" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_9z2546Z6EeqIr7xwFiWQGQ"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_9z255KZ6EeqIr7xwFiWQGQ"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_9z255aZ6EeqIr7xwFiWQGQ"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_9z255qZ6EeqIr7xwFiWQGQ"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_9z2556Z6EeqIr7xwFiWQGQ" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_9z256KZ6EeqIr7xwFiWQGQ"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_9z256aZ6EeqIr7xwFiWQGQ"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_9z256qZ6EeqIr7xwFiWQGQ"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_9z2566Z6EeqIr7xwFiWQGQ"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_p5ftEKThEeqmTOsCAzVBxg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_9z2576Z6EeqIr7xwFiWQGQ" x="430" y="470"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_9z258KZ6EeqIr7xwFiWQGQ" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_9z258aZ6EeqIr7xwFiWQGQ" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_9z258qZ6EeqIr7xwFiWQGQ" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_9z2586Z6EeqIr7xwFiWQGQ"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_9z259KZ6EeqIr7xwFiWQGQ"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_9z259aZ6EeqIr7xwFiWQGQ"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_9z259qZ6EeqIr7xwFiWQGQ"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_9z2596Z6EeqIr7xwFiWQGQ" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_9z25-KZ6EeqIr7xwFiWQGQ"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_9z25-aZ6EeqIr7xwFiWQGQ"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_9z25-qZ6EeqIr7xwFiWQGQ"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_9z25-6Z6EeqIr7xwFiWQGQ"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_oe1s8KThEeqmTOsCAzVBxg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_9z25_6Z6EeqIr7xwFiWQGQ" x="550" y="470"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_9z4IAKZ6EeqIr7xwFiWQGQ" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_9z4IAaZ6EeqIr7xwFiWQGQ" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_9z4IAqZ6EeqIr7xwFiWQGQ" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_9z4IA6Z6EeqIr7xwFiWQGQ" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_hrd0UKTkEeqmTOsCAzVBxg"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_9z4IBKZ6EeqIr7xwFiWQGQ"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_9z4IBaZ6EeqIr7xwFiWQGQ"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_9z4IBqZ6EeqIr7xwFiWQGQ"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_9z4IB6Z6EeqIr7xwFiWQGQ"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_9z4ICKZ6EeqIr7xwFiWQGQ"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_9z4ICaZ6EeqIr7xwFiWQGQ" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_9z4ICqZ6EeqIr7xwFiWQGQ"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_9z4IC6Z6EeqIr7xwFiWQGQ"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_9z4IDKZ6EeqIr7xwFiWQGQ"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_9z4IDaZ6EeqIr7xwFiWQGQ"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_cxXR0KTkEeqmTOsCAzVBxg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_9z4IEaZ6EeqIr7xwFiWQGQ" x="30" y="490"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_9z4IFKZ6EeqIr7xwFiWQGQ" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_9z4IFaZ6EeqIr7xwFiWQGQ" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_9z4IFqZ6EeqIr7xwFiWQGQ" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_9z4IF6Z6EeqIr7xwFiWQGQ"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_9z4IGKZ6EeqIr7xwFiWQGQ"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_9z4IGaZ6EeqIr7xwFiWQGQ"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_9z4IGqZ6EeqIr7xwFiWQGQ"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_9z4IG6Z6EeqIr7xwFiWQGQ" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_9z4IHKZ6EeqIr7xwFiWQGQ"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_9z4IHaZ6EeqIr7xwFiWQGQ"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_9z4IHqZ6EeqIr7xwFiWQGQ"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_9z4IH6Z6EeqIr7xwFiWQGQ"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_s288sKThEeqmTOsCAzVBxg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_9z4II6Z6EeqIr7xwFiWQGQ" x="310" y="470"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_9z4vEaZ6EeqIr7xwFiWQGQ" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_9z4vEqZ6EeqIr7xwFiWQGQ" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_9z4vE6Z6EeqIr7xwFiWQGQ" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_9z4vFKZ6EeqIr7xwFiWQGQ" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_YMFv0KTkEeqmTOsCAzVBxg"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_9z4vFaZ6EeqIr7xwFiWQGQ"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_9z4vFqZ6EeqIr7xwFiWQGQ"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_9z4vF6Z6EeqIr7xwFiWQGQ"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_9z4vGKZ6EeqIr7xwFiWQGQ"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_9z4vGaZ6EeqIr7xwFiWQGQ"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_9z4vGqZ6EeqIr7xwFiWQGQ" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_9z4vG6Z6EeqIr7xwFiWQGQ"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_9z4vHKZ6EeqIr7xwFiWQGQ"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_9z4vHaZ6EeqIr7xwFiWQGQ"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_9z4vHqZ6EeqIr7xwFiWQGQ"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_T5LJIKTkEeqmTOsCAzVBxg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_9z4vIqZ6EeqIr7xwFiWQGQ" x="170" y="250"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_9z4vLKZ6EeqIr7xwFiWQGQ" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_9z4vLaZ6EeqIr7xwFiWQGQ" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_9z4vLqZ6EeqIr7xwFiWQGQ" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_9z4vL6Z6EeqIr7xwFiWQGQ" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_EO8W0KTiEeqmTOsCAzVBxg"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_9z4vMKZ6EeqIr7xwFiWQGQ"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_9z4vMaZ6EeqIr7xwFiWQGQ" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_H-FiEKTiEeqmTOsCAzVBxg"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_9z4vMqZ6EeqIr7xwFiWQGQ"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_9z4vM6Z6EeqIr7xwFiWQGQ"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_9z4vNKZ6EeqIr7xwFiWQGQ"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_9z4vNaZ6EeqIr7xwFiWQGQ"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_9z4vNqZ6EeqIr7xwFiWQGQ"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_9z4vN6Z6EeqIr7xwFiWQGQ" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_9z4vOKZ6EeqIr7xwFiWQGQ"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_9z4vOaZ6EeqIr7xwFiWQGQ"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_9z4vOqZ6EeqIr7xwFiWQGQ"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_9z4vO6Z6EeqIr7xwFiWQGQ"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_Q5gaYKThEeqmTOsCAzVBxg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_9z4vP6Z6EeqIr7xwFiWQGQ" x="150" y="690"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_9z5WIKZ6EeqIr7xwFiWQGQ" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_9z5WIaZ6EeqIr7xwFiWQGQ" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_9z5WIqZ6EeqIr7xwFiWQGQ" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_9z5WI6Z6EeqIr7xwFiWQGQ"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_9z5WJKZ6EeqIr7xwFiWQGQ"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_9z5WJaZ6EeqIr7xwFiWQGQ"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_9z5WJqZ6EeqIr7xwFiWQGQ"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_9z5WJ6Z6EeqIr7xwFiWQGQ" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_9z5WKKZ6EeqIr7xwFiWQGQ"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_9z5WKaZ6EeqIr7xwFiWQGQ"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_9z5WKqZ6EeqIr7xwFiWQGQ"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_9z5WK6Z6EeqIr7xwFiWQGQ"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_sQtMMKZ6EeqIr7xwFiWQGQ"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_9z5WL6Z6EeqIr7xwFiWQGQ" x="350" y="50"/>
+ </children>
+ <styles xmi:type="notation:StringValueStyle" xmi:id="_W-_1IaTlEeqmTOsCAzVBxg" name="diagram_compatibility_version" stringValue="1.4.0"/>
+ <styles xmi:type="notation:DiagramStyle" xmi:id="_W-_1IqTlEeqmTOsCAzVBxg"/>
+ <styles xmi:type="style:PapyrusDiagramStyle" xmi:id="_W-_1I6TlEeqmTOsCAzVBxg" diagramKindId="org.eclipse.papyrus.uml.diagram.profile">
+ <owner xmi:type="uml:Profile" href="AIML.profile.uml#_DtlO0KTlEeqmTOsCAzVBxg"/>
+ </styles>
+ <element xmi:type="uml:Profile" href="AIML.profile.uml#_DtlO0KTlEeqmTOsCAzVBxg"/>
+ <edges xmi:type="notation:Connector" xmi:id="_9z2S4KZ6EeqIr7xwFiWQGQ" type="Generalization_Edge" source="_9z258KZ6EeqIr7xwFiWQGQ" target="_9z5WIKZ6EeqIr7xwFiWQGQ">
+ <children xmi:type="notation:DecorationNode" xmi:id="_9z2S4aZ6EeqIr7xwFiWQGQ" type="Generalization_StereotypeLabel">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_9z2S4qZ6EeqIr7xwFiWQGQ" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_9z2S46Z6EeqIr7xwFiWQGQ"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_z11KgKZ6EeqIr7xwFiWQGQ"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_9z2S5KZ6EeqIr7xwFiWQGQ" points="[600, 460, -643984, -643984]$[400, 140, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_9z2S5aZ6EeqIr7xwFiWQGQ" id="(0.6,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_9z2S5qZ6EeqIr7xwFiWQGQ" id="(0.6,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_9z3g8KZ6EeqIr7xwFiWQGQ" type="Generalization_Edge" source="_9z4vLKZ6EeqIr7xwFiWQGQ" target="_9z4IAKZ6EeqIr7xwFiWQGQ">
+ <children xmi:type="notation:DecorationNode" xmi:id="_9z3g8aZ6EeqIr7xwFiWQGQ" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_9z3g8qZ6EeqIr7xwFiWQGQ" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_9z3g86Z6EeqIr7xwFiWQGQ" x="-1" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_9z3g9KZ6EeqIr7xwFiWQGQ"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_vNIpkKTkEeqmTOsCAzVBxg"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_9z3g9aZ6EeqIr7xwFiWQGQ" points="[200, 680, -643984, -643984]$[140, 583, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_9z3g9qZ6EeqIr7xwFiWQGQ" id="(0.4225352112676056,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_9z3g96Z6EeqIr7xwFiWQGQ" id="(0.8333333333333334,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_9z3g-KZ6EeqIr7xwFiWQGQ" type="Generalization_Edge" source="_9z254KZ6EeqIr7xwFiWQGQ" target="_9z5WIKZ6EeqIr7xwFiWQGQ">
+ <children xmi:type="notation:DecorationNode" xmi:id="_9z3g-aZ6EeqIr7xwFiWQGQ" type="Generalization_StereotypeLabel">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_9z3g-qZ6EeqIr7xwFiWQGQ" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_9z3g-6Z6EeqIr7xwFiWQGQ"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_zMJUUKZ6EeqIr7xwFiWQGQ"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_9z3g_KZ6EeqIr7xwFiWQGQ" points="[480, 460, -643984, -643984]$[400, 140, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_9z3g_aZ6EeqIr7xwFiWQGQ" id="(0.6,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_9z3g_qZ6EeqIr7xwFiWQGQ" id="(0.6,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_9z3g_6Z6EeqIr7xwFiWQGQ" type="Generalization_Edge" source="_9z4vEaZ6EeqIr7xwFiWQGQ" target="_9z5WIKZ6EeqIr7xwFiWQGQ">
+ <children xmi:type="notation:DecorationNode" xmi:id="_9z3hAKZ6EeqIr7xwFiWQGQ" type="Generalization_StereotypeLabel">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_9z3hAaZ6EeqIr7xwFiWQGQ" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_9z3hAqZ6EeqIr7xwFiWQGQ"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_ymebcKZ6EeqIr7xwFiWQGQ"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_9z3hA6Z6EeqIr7xwFiWQGQ" points="[240, 240, -643984, -643984]$[380, 140, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_9z3hBKZ6EeqIr7xwFiWQGQ" id="(0.5970149253731343,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_9z3hBaZ6EeqIr7xwFiWQGQ" id="(0.4,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_9z3hBqZ6EeqIr7xwFiWQGQ" type="Generalization_Edge" source="_9z2S0KZ6EeqIr7xwFiWQGQ" target="_9z4IAKZ6EeqIr7xwFiWQGQ">
+ <children xmi:type="notation:DecorationNode" xmi:id="_9z3hB6Z6EeqIr7xwFiWQGQ" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_9z3hCKZ6EeqIr7xwFiWQGQ" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_9z3hCaZ6EeqIr7xwFiWQGQ" y="59"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_9z3hCqZ6EeqIr7xwFiWQGQ"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_vvr9AKTkEeqmTOsCAzVBxg"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_9z3hC6Z6EeqIr7xwFiWQGQ" points="[60, 680, -643984, -643984]$[80, 583, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_9z3hDKZ6EeqIr7xwFiWQGQ" id="(0.6,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_9z3hDaZ6EeqIr7xwFiWQGQ" id="(0.4166666666666667,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_9z4vJKZ6EeqIr7xwFiWQGQ" type="Generalization_Edge" source="_9z4IFKZ6EeqIr7xwFiWQGQ" target="_9z4vEaZ6EeqIr7xwFiWQGQ">
+ <children xmi:type="notation:DecorationNode" xmi:id="_9z4vJaZ6EeqIr7xwFiWQGQ" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_9z4vJqZ6EeqIr7xwFiWQGQ" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_9z4vJ6Z6EeqIr7xwFiWQGQ" x="-1" y="58"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_9z4vKKZ6EeqIr7xwFiWQGQ"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_ZkPOgKTkEeqmTOsCAzVBxg"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_9z4vKaZ6EeqIr7xwFiWQGQ" points="[560, 460, -643984, -643984]$[400, 443, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_9z4vKqZ6EeqIr7xwFiWQGQ" id="(0.2,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_9z4vK6Z6EeqIr7xwFiWQGQ" id="(0.5970149253731343,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_9z4vQKZ6EeqIr7xwFiWQGQ" type="Generalization_Edge" source="_9z4IAKZ6EeqIr7xwFiWQGQ" target="_9z4vEaZ6EeqIr7xwFiWQGQ">
+ <children xmi:type="notation:DecorationNode" xmi:id="_9z4vQaZ6EeqIr7xwFiWQGQ" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_9z4vQqZ6EeqIr7xwFiWQGQ" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_9z4vQ6Z6EeqIr7xwFiWQGQ" y="59"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_9z4vRKZ6EeqIr7xwFiWQGQ"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_1Qw_8KTkEeqmTOsCAzVBxg"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_9z4vRaZ6EeqIr7xwFiWQGQ" points="[140, 480, -643984, -643984]$[200, 343, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_9z4vRqZ6EeqIr7xwFiWQGQ" id="(0.8333333333333334,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_9z4vR6Z6EeqIr7xwFiWQGQ" id="(0.29850746268656714,1.0)"/>
+ </edges>
+ </notation:Diagram>
+ <notation:Diagram xmi:id="_wSAfkKTnEeqmTOsCAzVBxg" type="PapyrusUMLProfileDiagram" name="Layer_weight_regularizers" measurementUnit="Pixel">
+ <children xmi:type="notation:Shape" xmi:id="_0kKRQKTnEeqmTOsCAzVBxg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_0kK4UKTnEeqmTOsCAzVBxg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_0kK4UaTnEeqmTOsCAzVBxg" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_0kK4UqTnEeqmTOsCAzVBxg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_0kK4U6TnEeqmTOsCAzVBxg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_0kK4VKTnEeqmTOsCAzVBxg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_0kK4VaTnEeqmTOsCAzVBxg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_0kK4VqTnEeqmTOsCAzVBxg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_0kK4V6TnEeqmTOsCAzVBxg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_0kK4WKTnEeqmTOsCAzVBxg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_0kK4WaTnEeqmTOsCAzVBxg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_0kK4WqTnEeqmTOsCAzVBxg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_0kGm4KTnEeqmTOsCAzVBxg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_0kKRQaTnEeqmTOsCAzVBxg" x="40" y="380"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_PhR_AKToEeqmTOsCAzVBxg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_PhSmEaToEeqmTOsCAzVBxg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_PhSmEqToEeqmTOsCAzVBxg" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_PhSmE6ToEeqmTOsCAzVBxg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_PhSmFKToEeqmTOsCAzVBxg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_PhSmFaToEeqmTOsCAzVBxg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_PhSmFqToEeqmTOsCAzVBxg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_PhSmF6ToEeqmTOsCAzVBxg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_PhSmGKToEeqmTOsCAzVBxg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_PhSmGaToEeqmTOsCAzVBxg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_PhSmGqToEeqmTOsCAzVBxg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_PhSmG6ToEeqmTOsCAzVBxg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_PhQJ0KToEeqmTOsCAzVBxg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_PhSmEKToEeqmTOsCAzVBxg" x="380" y="380"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_QuL3AKToEeqmTOsCAzVBxg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_QuL3AqToEeqmTOsCAzVBxg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_QuL3A6ToEeqmTOsCAzVBxg" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_QuL3BKToEeqmTOsCAzVBxg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_QuL3BaToEeqmTOsCAzVBxg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_QuL3BqToEeqmTOsCAzVBxg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_QuL3B6ToEeqmTOsCAzVBxg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_QuL3CKToEeqmTOsCAzVBxg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_QuL3CaToEeqmTOsCAzVBxg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_QuL3CqToEeqmTOsCAzVBxg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_QuL3C6ToEeqmTOsCAzVBxg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_QuL3DKToEeqmTOsCAzVBxg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_QuKB0KToEeqmTOsCAzVBxg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_QuL3AaToEeqmTOsCAzVBxg" x="220" y="380"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_smfaoKToEeqmTOsCAzVBxg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_smgBsKToEeqmTOsCAzVBxg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_smgBsaToEeqmTOsCAzVBxg" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_yJ9qQKToEeqmTOsCAzVBxg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_yJ2VgKToEeqmTOsCAzVBxg"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_yJ9qQaToEeqmTOsCAzVBxg"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_smgBsqToEeqmTOsCAzVBxg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_smgBs6ToEeqmTOsCAzVBxg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_smgBtKToEeqmTOsCAzVBxg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_smgBtaToEeqmTOsCAzVBxg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_smgBtqToEeqmTOsCAzVBxg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_smgBt6ToEeqmTOsCAzVBxg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_smgBuKToEeqmTOsCAzVBxg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_smgBuaToEeqmTOsCAzVBxg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_smgBuqToEeqmTOsCAzVBxg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_smezkKToEeqmTOsCAzVBxg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_smfaoaToEeqmTOsCAzVBxg" x="140" y="220"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_vbyMwKToEeqmTOsCAzVBxg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_vbyMwqToEeqmTOsCAzVBxg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_vbyMw6ToEeqmTOsCAzVBxg" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_zAfpoKToEeqmTOsCAzVBxg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_zAXt0KToEeqmTOsCAzVBxg"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_zAfpoaToEeqmTOsCAzVBxg"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_vbyMxKToEeqmTOsCAzVBxg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_vbyMxaToEeqmTOsCAzVBxg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_vbyMxqToEeqmTOsCAzVBxg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_vbyMx6ToEeqmTOsCAzVBxg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_vbyMyKToEeqmTOsCAzVBxg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_vbyMyaToEeqmTOsCAzVBxg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_vbyMyqToEeqmTOsCAzVBxg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_vbyMy6ToEeqmTOsCAzVBxg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_vbyMzKToEeqmTOsCAzVBxg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_vbw-oKToEeqmTOsCAzVBxg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_vbyMwaToEeqmTOsCAzVBxg" x="360" y="220"/>
+ </children>
+ <styles xmi:type="notation:StringValueStyle" xmi:id="_wSAfkaTnEeqmTOsCAzVBxg" name="diagram_compatibility_version" stringValue="1.4.0"/>
+ <styles xmi:type="notation:DiagramStyle" xmi:id="_wSAfkqTnEeqmTOsCAzVBxg"/>
+ <styles xmi:type="style:PapyrusDiagramStyle" xmi:id="_wSAfk6TnEeqmTOsCAzVBxg" diagramKindId="org.eclipse.papyrus.uml.diagram.profile">
+ <owner xmi:type="uml:Profile" href="AIML.profile.uml#_IDYhIH13EeqSHNFOHg2_Jw"/>
+ </styles>
+ <styles xmi:type="notation:EObjectListValueStyle" xmi:id="_2EVWAK8YEeqhVOlV64dXmA" name="css_stylesheets" eObjectListValue="_mci3oJm1Eeq8nv7tV9lOqQ"/>
+ <element xmi:type="uml:Profile" href="AIML.profile.uml#_IDYhIH13EeqSHNFOHg2_Jw"/>
+ <edges xmi:type="notation:Connector" xmi:id="_8VxW8KToEeqmTOsCAzVBxg" type="Generalization_Edge" source="_0kKRQKTnEeqmTOsCAzVBxg" target="_smfaoKToEeqmTOsCAzVBxg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_8Vx-AKToEeqmTOsCAzVBxg" type="Generalization_StereotypeLabel">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_8Vx-AaToEeqmTOsCAzVBxg" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_8VxW8aToEeqmTOsCAzVBxg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_8VmX0KToEeqmTOsCAzVBxg"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_8VxW8qToEeqmTOsCAzVBxg" points="[120, 380, -643984, -643984]$[180, 323, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_8WCcsKToEeqmTOsCAzVBxg" id="(0.8,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_8WCcsaToEeqmTOsCAzVBxg" id="(0.4,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_8pp8QKToEeqmTOsCAzVBxg" type="Generalization_Edge" source="_PhR_AKToEeqmTOsCAzVBxg" target="_vbyMwKToEeqmTOsCAzVBxg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_8pp8Q6ToEeqmTOsCAzVBxg" type="Generalization_StereotypeLabel">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_8pp8RKToEeqmTOsCAzVBxg" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_8pp8QaToEeqmTOsCAzVBxg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_8pjOkKToEeqmTOsCAzVBxg"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_8pp8QqToEeqmTOsCAzVBxg" points="[440, 380, -643984, -643984]$[400, 323, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_8p1icKToEeqmTOsCAzVBxg" id="(0.6,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_8p1icaToEeqmTOsCAzVBxg" id="(0.4,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_98O-cKToEeqmTOsCAzVBxg" type="Generalization_Edge" source="_QuL3AKToEeqmTOsCAzVBxg" target="_smfaoKToEeqmTOsCAzVBxg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_98O-c6ToEeqmTOsCAzVBxg" type="Generalization_StereotypeLabel">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_98O-dKToEeqmTOsCAzVBxg" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_98O-caToEeqmTOsCAzVBxg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_98EmYKToEeqmTOsCAzVBxg"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_98O-cqToEeqmTOsCAzVBxg" points="[260, 380, -643984, -643984]$[200, 323, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_98Z9kKToEeqmTOsCAzVBxg" id="(0.4,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_98Z9kaToEeqmTOsCAzVBxg" id="(0.6,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_-X18YKToEeqmTOsCAzVBxg" type="Generalization_Edge" source="_QuL3AKToEeqmTOsCAzVBxg" target="_vbyMwKToEeqmTOsCAzVBxg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_-X2jcKToEeqmTOsCAzVBxg" type="Generalization_StereotypeLabel">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_-X2jcaToEeqmTOsCAzVBxg" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_-X18YaToEeqmTOsCAzVBxg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_-XpvIKToEeqmTOsCAzVBxg"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_-X18YqToEeqmTOsCAzVBxg" points="[280, 380, -643984, -643984]$[380, 323, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_-YF0AKToEeqmTOsCAzVBxg" id="(0.6,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_-YF0AaToEeqmTOsCAzVBxg" id="(0.2,1.0)"/>
+ </edges>
+ </notation:Diagram>
+ <notation:Diagram xmi:id="_crFRYKTpEeqmTOsCAzVBxg" type="PapyrusUMLProfileDiagram" name="Layer_weight_regularizers" measurementUnit="Pixel">
+ <children xmi:type="notation:Shape" xmi:id="_f-SukKTpEeqmTOsCAzVBxg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_f-SukaTpEeqmTOsCAzVBxg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_f-SukqTpEeqmTOsCAzVBxg" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_f-Suk6TpEeqmTOsCAzVBxg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_f-SulKTpEeqmTOsCAzVBxg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_f-SulaTpEeqmTOsCAzVBxg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_f-SulqTpEeqmTOsCAzVBxg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_f-Sul6TpEeqmTOsCAzVBxg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_f-SumKTpEeqmTOsCAzVBxg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_f-SumaTpEeqmTOsCAzVBxg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_f-SumqTpEeqmTOsCAzVBxg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_f-Sum6TpEeqmTOsCAzVBxg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_PhQJ0KToEeqmTOsCAzVBxg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_f-Sun6TpEeqmTOsCAzVBxg" x="390" y="390"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_f-TVoKTpEeqmTOsCAzVBxg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_f-TVoaTpEeqmTOsCAzVBxg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_f-TVoqTpEeqmTOsCAzVBxg" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_f-TVo6TpEeqmTOsCAzVBxg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_zAXt0KToEeqmTOsCAzVBxg"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_f-TVpKTpEeqmTOsCAzVBxg"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_f-TVpaTpEeqmTOsCAzVBxg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_f-TVpqTpEeqmTOsCAzVBxg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_f-TVp6TpEeqmTOsCAzVBxg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_f-TVqKTpEeqmTOsCAzVBxg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_f-TVqaTpEeqmTOsCAzVBxg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_f-TVqqTpEeqmTOsCAzVBxg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_f-TVq6TpEeqmTOsCAzVBxg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_f-TVrKTpEeqmTOsCAzVBxg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_f-TVraTpEeqmTOsCAzVBxg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_vbw-oKToEeqmTOsCAzVBxg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_f-TVsaTpEeqmTOsCAzVBxg" x="370" y="230"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_f-T8sKTpEeqmTOsCAzVBxg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_f-T8saTpEeqmTOsCAzVBxg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_f-T8sqTpEeqmTOsCAzVBxg" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_f-T8s6TpEeqmTOsCAzVBxg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_f-T8tKTpEeqmTOsCAzVBxg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_f-T8taTpEeqmTOsCAzVBxg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_f-T8tqTpEeqmTOsCAzVBxg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_f-T8t6TpEeqmTOsCAzVBxg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_f-T8uKTpEeqmTOsCAzVBxg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_f-T8uaTpEeqmTOsCAzVBxg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_f-T8uqTpEeqmTOsCAzVBxg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_f-T8u6TpEeqmTOsCAzVBxg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_0kGm4KTnEeqmTOsCAzVBxg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_f-T8v6TpEeqmTOsCAzVBxg" x="50" y="390"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_f-Ujx6TpEeqmTOsCAzVBxg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_f-UjyKTpEeqmTOsCAzVBxg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_f-UjyaTpEeqmTOsCAzVBxg" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_f-UjyqTpEeqmTOsCAzVBxg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_yJ2VgKToEeqmTOsCAzVBxg"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_f-Ujy6TpEeqmTOsCAzVBxg"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_f-UjzKTpEeqmTOsCAzVBxg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_f-UjzaTpEeqmTOsCAzVBxg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_f-UjzqTpEeqmTOsCAzVBxg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_f-Ujz6TpEeqmTOsCAzVBxg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_f-Uj0KTpEeqmTOsCAzVBxg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_f-Uj0aTpEeqmTOsCAzVBxg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_f-Uj0qTpEeqmTOsCAzVBxg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_f-Uj06TpEeqmTOsCAzVBxg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_f-Uj1KTpEeqmTOsCAzVBxg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_smezkKToEeqmTOsCAzVBxg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_f-Uj2KTpEeqmTOsCAzVBxg" x="150" y="230"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_f-Uj6KTpEeqmTOsCAzVBxg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_f-Uj6aTpEeqmTOsCAzVBxg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_f-Uj6qTpEeqmTOsCAzVBxg" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_f-Uj66TpEeqmTOsCAzVBxg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_f-Uj7KTpEeqmTOsCAzVBxg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_f-Uj7aTpEeqmTOsCAzVBxg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_f-Uj7qTpEeqmTOsCAzVBxg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_f-Uj76TpEeqmTOsCAzVBxg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_f-Uj8KTpEeqmTOsCAzVBxg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_f-VK0KTpEeqmTOsCAzVBxg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_f-VK0aTpEeqmTOsCAzVBxg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_f-VK0qTpEeqmTOsCAzVBxg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_QuKB0KToEeqmTOsCAzVBxg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_f-VK1qTpEeqmTOsCAzVBxg" x="230" y="390"/>
+ </children>
+ <styles xmi:type="notation:StringValueStyle" xmi:id="_crFRYaTpEeqmTOsCAzVBxg" name="diagram_compatibility_version" stringValue="1.4.0"/>
+ <styles xmi:type="notation:DiagramStyle" xmi:id="_crFRYqTpEeqmTOsCAzVBxg"/>
+ <styles xmi:type="style:PapyrusDiagramStyle" xmi:id="_crFRY6TpEeqmTOsCAzVBxg" diagramKindId="org.eclipse.papyrus.uml.diagram.profile">
+ <owner xmi:type="uml:Profile" href="AIML.profile.uml#_X5a5MKTpEeqmTOsCAzVBxg"/>
+ </styles>
+ <element xmi:type="uml:Profile" href="AIML.profile.uml#_X5a5MKTpEeqmTOsCAzVBxg"/>
+ <edges xmi:type="notation:Connector" xmi:id="_f-T8wKTpEeqmTOsCAzVBxg" type="Generalization_Edge" source="_f-T8sKTpEeqmTOsCAzVBxg" target="_f-Ujx6TpEeqmTOsCAzVBxg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_f-T8waTpEeqmTOsCAzVBxg" type="Generalization_StereotypeLabel">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_f-T8wqTpEeqmTOsCAzVBxg" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_f-T8w6TpEeqmTOsCAzVBxg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_8VmX0KToEeqmTOsCAzVBxg"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_f-T8xKTpEeqmTOsCAzVBxg" points="[120, 380, -643984, -643984]$[180, 323, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_f-T8xaTpEeqmTOsCAzVBxg" id="(0.8,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_f-T8xqTpEeqmTOsCAzVBxg" id="(0.4,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_f-UjwKTpEeqmTOsCAzVBxg" type="Generalization_Edge" source="_f-Uj6KTpEeqmTOsCAzVBxg" target="_f-TVoKTpEeqmTOsCAzVBxg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_f-UjwaTpEeqmTOsCAzVBxg" type="Generalization_StereotypeLabel">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_f-UjwqTpEeqmTOsCAzVBxg" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_f-Ujw6TpEeqmTOsCAzVBxg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_-XpvIKToEeqmTOsCAzVBxg"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_f-UjxKTpEeqmTOsCAzVBxg" points="[280, 380, -643984, -643984]$[380, 323, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_f-UjxaTpEeqmTOsCAzVBxg" id="(0.6,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_f-UjxqTpEeqmTOsCAzVBxg" id="(0.2,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_f-Uj2qTpEeqmTOsCAzVBxg" type="Generalization_Edge" source="_f-Uj6KTpEeqmTOsCAzVBxg" target="_f-Ujx6TpEeqmTOsCAzVBxg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_f-Uj26TpEeqmTOsCAzVBxg" type="Generalization_StereotypeLabel">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_f-Uj3KTpEeqmTOsCAzVBxg" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_f-Uj3aTpEeqmTOsCAzVBxg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_98EmYKToEeqmTOsCAzVBxg"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_f-Uj3qTpEeqmTOsCAzVBxg" points="[260, 380, -643984, -643984]$[200, 323, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_f-Uj36TpEeqmTOsCAzVBxg" id="(0.4,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_f-Uj4KTpEeqmTOsCAzVBxg" id="(0.6,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_f-Uj4aTpEeqmTOsCAzVBxg" type="Generalization_Edge" source="_f-SukKTpEeqmTOsCAzVBxg" target="_f-TVoKTpEeqmTOsCAzVBxg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_f-Uj4qTpEeqmTOsCAzVBxg" type="Generalization_StereotypeLabel">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_f-Uj46TpEeqmTOsCAzVBxg" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_f-Uj5KTpEeqmTOsCAzVBxg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_8pjOkKToEeqmTOsCAzVBxg"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_f-Uj5aTpEeqmTOsCAzVBxg" points="[440, 380, -643984, -643984]$[400, 323, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_f-Uj5qTpEeqmTOsCAzVBxg" id="(0.6,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_f-Uj56TpEeqmTOsCAzVBxg" id="(0.4,1.0)"/>
+ </edges>
+ </notation:Diagram>
+ <notation:Diagram xmi:id="_zDd5UKWREeq2dLYfuMvqgg" type="PapyrusUMLProfileDiagram" name="Layer_weight_initializers" measurementUnit="Pixel">
+ <children xmi:type="notation:Shape" xmi:id="_-KB-EKWREeq2dLYfuMvqgg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_-KDzQKWREeq2dLYfuMvqgg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_-KDzQaWREeq2dLYfuMvqgg" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_-KDzQqWREeq2dLYfuMvqgg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_-KDzQ6WREeq2dLYfuMvqgg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_-KDzRKWREeq2dLYfuMvqgg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_-KDzRaWREeq2dLYfuMvqgg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_-KDzRqWREeq2dLYfuMvqgg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_-KDzR6WREeq2dLYfuMvqgg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_-KDzSKWREeq2dLYfuMvqgg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_-KDzSaWREeq2dLYfuMvqgg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_-KDzSqWREeq2dLYfuMvqgg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_-JzUkKWREeq2dLYfuMvqgg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_-KB-EaWREeq2dLYfuMvqgg" x="1620" y="400"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_Gws48KWSEeq2dLYfuMvqgg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_GwtgAKWSEeq2dLYfuMvqgg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_GwtgAaWSEeq2dLYfuMvqgg" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_IifmsKWSEeq2dLYfuMvqgg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_IiUAgKWSEeq2dLYfuMvqgg"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_IifmsaWSEeq2dLYfuMvqgg"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_JNhgsKWSEeq2dLYfuMvqgg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_JNazAKWSEeq2dLYfuMvqgg"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_JNhgsaWSEeq2dLYfuMvqgg"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_GwtgAqWSEeq2dLYfuMvqgg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_GwtgA6WSEeq2dLYfuMvqgg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_GwtgBKWSEeq2dLYfuMvqgg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_GwtgBaWSEeq2dLYfuMvqgg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_GwuHEKWSEeq2dLYfuMvqgg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_GwuHEaWSEeq2dLYfuMvqgg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_GwuHEqWSEeq2dLYfuMvqgg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_GwuHE6WSEeq2dLYfuMvqgg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_GwuHFKWSEeq2dLYfuMvqgg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_GwoAcKWSEeq2dLYfuMvqgg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Gws48aWSEeq2dLYfuMvqgg" x="1000" y="220"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_Keup4KWSEeq2dLYfuMvqgg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_KevQ8KWSEeq2dLYfuMvqgg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_Kev4AKWSEeq2dLYfuMvqgg" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_Kev4AaWSEeq2dLYfuMvqgg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_Kev4AqWSEeq2dLYfuMvqgg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_Kev4A6WSEeq2dLYfuMvqgg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Kev4BKWSEeq2dLYfuMvqgg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_Kev4BaWSEeq2dLYfuMvqgg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_Kev4BqWSEeq2dLYfuMvqgg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_Kev4B6WSEeq2dLYfuMvqgg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_Kev4CKWSEeq2dLYfuMvqgg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Kev4CaWSEeq2dLYfuMvqgg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_KermkKWSEeq2dLYfuMvqgg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Keup4aWSEeq2dLYfuMvqgg" x="1360" y="400"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_OfGvEKWSEeq2dLYfuMvqgg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_OfGvEqWSEeq2dLYfuMvqgg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_OfHWIKWSEeq2dLYfuMvqgg" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_OfHWIaWSEeq2dLYfuMvqgg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_OfHWIqWSEeq2dLYfuMvqgg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_OfHWI6WSEeq2dLYfuMvqgg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_OfHWJKWSEeq2dLYfuMvqgg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_OfHWJaWSEeq2dLYfuMvqgg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_OfHWJqWSEeq2dLYfuMvqgg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_OfHWJ6WSEeq2dLYfuMvqgg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_OfHWKKWSEeq2dLYfuMvqgg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_OfHWKaWSEeq2dLYfuMvqgg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_OfDEsKWSEeq2dLYfuMvqgg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_OfGvEaWSEeq2dLYfuMvqgg" x="-180" y="40"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_ZE3z4KWSEeq2dLYfuMvqgg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_ZE3z4qWSEeq2dLYfuMvqgg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_ZE4a8KWSEeq2dLYfuMvqgg" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_ZE4a8aWSEeq2dLYfuMvqgg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_ZE4a8qWSEeq2dLYfuMvqgg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_ZE4a86WSEeq2dLYfuMvqgg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ZE4a9KWSEeq2dLYfuMvqgg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_ZE4a9aWSEeq2dLYfuMvqgg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_ZE4a9qWSEeq2dLYfuMvqgg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_ZE4a96WSEeq2dLYfuMvqgg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_ZE4a-KWSEeq2dLYfuMvqgg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ZE4a-aWSEeq2dLYfuMvqgg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_ZEzicKWSEeq2dLYfuMvqgg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ZE3z4aWSEeq2dLYfuMvqgg" x="-340" y="40"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_e62IwKWSEeq2dLYfuMvqgg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_e62v0KWSEeq2dLYfuMvqgg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_e62v0aWSEeq2dLYfuMvqgg" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_e62v0qWSEeq2dLYfuMvqgg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_e62v06WSEeq2dLYfuMvqgg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_e62v1KWSEeq2dLYfuMvqgg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_e62v1aWSEeq2dLYfuMvqgg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_e62v1qWSEeq2dLYfuMvqgg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_e62v16WSEeq2dLYfuMvqgg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_e62v2KWSEeq2dLYfuMvqgg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_e62v2aWSEeq2dLYfuMvqgg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_e62v2qWSEeq2dLYfuMvqgg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_e6wCIKWSEeq2dLYfuMvqgg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_e62IwaWSEeq2dLYfuMvqgg" x="1800" y="220"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_hxV0wKWSEeq2dLYfuMvqgg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_hxV0wqWSEeq2dLYfuMvqgg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_hxWb0KWSEeq2dLYfuMvqgg" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_hxWb0aWSEeq2dLYfuMvqgg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_hxWb0qWSEeq2dLYfuMvqgg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_hxWb06WSEeq2dLYfuMvqgg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_hxWb1KWSEeq2dLYfuMvqgg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_hxWb1aWSEeq2dLYfuMvqgg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_hxWb1qWSEeq2dLYfuMvqgg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_hxWb16WSEeq2dLYfuMvqgg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_hxWb2KWSEeq2dLYfuMvqgg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_hxWb2aWSEeq2dLYfuMvqgg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_hxQVMKWSEeq2dLYfuMvqgg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_hxV0waWSEeq2dLYfuMvqgg" x="1220" y="220"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_lmhWkKWSEeq2dLYfuMvqgg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_lmhWkqWSEeq2dLYfuMvqgg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_lmhWk6WSEeq2dLYfuMvqgg" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_lmhWlKWSEeq2dLYfuMvqgg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_lmhWlaWSEeq2dLYfuMvqgg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_lmhWlqWSEeq2dLYfuMvqgg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_lmhWl6WSEeq2dLYfuMvqgg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_lmhWmKWSEeq2dLYfuMvqgg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_lmhWmaWSEeq2dLYfuMvqgg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_lmhWmqWSEeq2dLYfuMvqgg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_lmhWm6WSEeq2dLYfuMvqgg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_lmhWnKWSEeq2dLYfuMvqgg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_lmeTQKWSEeq2dLYfuMvqgg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_lmhWkaWSEeq2dLYfuMvqgg" x="400" y="200"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_nCTYEKWSEeq2dLYfuMvqgg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_nCTYEqWSEeq2dLYfuMvqgg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_nCTYE6WSEeq2dLYfuMvqgg" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_nCTYFKWSEeq2dLYfuMvqgg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_nCTYFaWSEeq2dLYfuMvqgg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_nCTYFqWSEeq2dLYfuMvqgg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_nCTYF6WSEeq2dLYfuMvqgg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_nCTYGKWSEeq2dLYfuMvqgg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_nCTYGaWSEeq2dLYfuMvqgg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_nCTYGqWSEeq2dLYfuMvqgg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_nCTYG6WSEeq2dLYfuMvqgg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_nCTYHKWSEeq2dLYfuMvqgg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_nCPGoKWSEeq2dLYfuMvqgg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_nCTYEaWSEeq2dLYfuMvqgg" x="540" y="200"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_oi62QKWSEeq2dLYfuMvqgg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_oi7dUKWSEeq2dLYfuMvqgg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_oi7dUaWSEeq2dLYfuMvqgg" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_xJGB4KWSEeq2dLYfuMvqgg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_xIu1gKWSEeq2dLYfuMvqgg"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_xJGB4aWSEeq2dLYfuMvqgg"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_oi7dUqWSEeq2dLYfuMvqgg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_oi7dU6WSEeq2dLYfuMvqgg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_oi7dVKWSEeq2dLYfuMvqgg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_oi7dVaWSEeq2dLYfuMvqgg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_oi7dVqWSEeq2dLYfuMvqgg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_oi7dV6WSEeq2dLYfuMvqgg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_oi7dWKWSEeq2dLYfuMvqgg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_oi7dWaWSEeq2dLYfuMvqgg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_oi7dWqWSEeq2dLYfuMvqgg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_oi19wKWSEeq2dLYfuMvqgg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_oi62QaWSEeq2dLYfuMvqgg" x="-20" y="40"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_yti3MKWSEeq2dLYfuMvqgg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_yti3MqWSEeq2dLYfuMvqgg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_yti3M6WSEeq2dLYfuMvqgg" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_z0xlAKWSEeq2dLYfuMvqgg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_z0htYKWSEeq2dLYfuMvqgg"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_z0xlAaWSEeq2dLYfuMvqgg"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_0X_m0KWSEeq2dLYfuMvqgg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_0XpokKWSEeq2dLYfuMvqgg"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_0X_m0aWSEeq2dLYfuMvqgg"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_0qo2AKWSEeq2dLYfuMvqgg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_0qcowKWSEeq2dLYfuMvqgg"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_0qo2AaWSEeq2dLYfuMvqgg"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_yti3NKWSEeq2dLYfuMvqgg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_yti3NaWSEeq2dLYfuMvqgg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_yti3NqWSEeq2dLYfuMvqgg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_yti3N6WSEeq2dLYfuMvqgg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_ytjeQKWSEeq2dLYfuMvqgg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_ytjeQaWSEeq2dLYfuMvqgg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_ytjeQqWSEeq2dLYfuMvqgg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_ytjeQ6WSEeq2dLYfuMvqgg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ytjeRKWSEeq2dLYfuMvqgg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_ytfM0KWSEeq2dLYfuMvqgg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_yti3MaWSEeq2dLYfuMvqgg" x="780" y="220"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_IHyLMKWTEeq2dLYfuMvqgg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_IHyLMqWTEeq2dLYfuMvqgg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_IHyLM6WTEeq2dLYfuMvqgg" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_L5KyIKWTEeq2dLYfuMvqgg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_L46TcKWTEeq2dLYfuMvqgg"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_L5KyIaWTEeq2dLYfuMvqgg"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_IHyLNKWTEeq2dLYfuMvqgg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_IHyLNaWTEeq2dLYfuMvqgg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_IHyLNqWTEeq2dLYfuMvqgg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_IHyLN6WTEeq2dLYfuMvqgg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_IHyLOKWTEeq2dLYfuMvqgg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_IHyLOaWTEeq2dLYfuMvqgg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_IHyLOqWTEeq2dLYfuMvqgg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_IHyLO6WTEeq2dLYfuMvqgg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_IHyLPKWTEeq2dLYfuMvqgg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_IHtSsKWTEeq2dLYfuMvqgg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_IHyLMaWTEeq2dLYfuMvqgg" x="400"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_OIV_cKWTEeq2dLYfuMvqgg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_OIWmgKWTEeq2dLYfuMvqgg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_OIWmgaWTEeq2dLYfuMvqgg" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_R5J-oKWTEeq2dLYfuMvqgg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_R4qPYKWTEeq2dLYfuMvqgg"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_R5J-oaWTEeq2dLYfuMvqgg"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_OIWmgqWTEeq2dLYfuMvqgg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_OIWmg6WTEeq2dLYfuMvqgg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_OIWmhKWTEeq2dLYfuMvqgg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_OIWmhaWTEeq2dLYfuMvqgg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_OIWmhqWTEeq2dLYfuMvqgg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_OIWmh6WTEeq2dLYfuMvqgg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_OIWmiKWTEeq2dLYfuMvqgg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_OIWmiaWTEeq2dLYfuMvqgg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_OIWmiqWTEeq2dLYfuMvqgg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_OISVEKWTEeq2dLYfuMvqgg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_OIV_caWTEeq2dLYfuMvqgg" x="980" y="-20"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_iKZYgKWTEeq2dLYfuMvqgg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_iKZ_kKWTEeq2dLYfuMvqgg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_iKZ_kaWTEeq2dLYfuMvqgg" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_lIObkKWTEeq2dLYfuMvqgg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_lHusUKWTEeq2dLYfuMvqgg"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_lIObkaWTEeq2dLYfuMvqgg"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_lmo14KWTEeq2dLYfuMvqgg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_lmazcKWTEeq2dLYfuMvqgg"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_lmo14aWTEeq2dLYfuMvqgg"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_iKZ_kqWTEeq2dLYfuMvqgg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_iKZ_k6WTEeq2dLYfuMvqgg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_iKZ_lKWTEeq2dLYfuMvqgg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_iKZ_laWTEeq2dLYfuMvqgg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_iKZ_lqWTEeq2dLYfuMvqgg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_iKZ_l6WTEeq2dLYfuMvqgg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_iKZ_mKWTEeq2dLYfuMvqgg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_iKZ_maWTEeq2dLYfuMvqgg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_iKZ_mqWTEeq2dLYfuMvqgg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_iKWVMKWTEeq2dLYfuMvqgg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_iKZYgaWTEeq2dLYfuMvqgg" x="1480" y="220"/>
+ </children>
+ <styles xmi:type="notation:StringValueStyle" xmi:id="_zDd5UaWREeq2dLYfuMvqgg" name="diagram_compatibility_version" stringValue="1.4.0"/>
+ <styles xmi:type="notation:DiagramStyle" xmi:id="_zDd5UqWREeq2dLYfuMvqgg"/>
+ <styles xmi:type="style:PapyrusDiagramStyle" xmi:id="_zDd5U6WREeq2dLYfuMvqgg" diagramKindId="org.eclipse.papyrus.uml.diagram.profile">
+ <owner xmi:type="uml:Profile" href="AIML.profile.uml#_IDYhIH13EeqSHNFOHg2_Jw"/>
+ </styles>
+ <styles xmi:type="notation:EObjectListValueStyle" xmi:id="_3GTJUK8YEeqhVOlV64dXmA" name="css_stylesheets" eObjectListValue="_mci3oJm1Eeq8nv7tV9lOqQ"/>
+ <element xmi:type="uml:Profile" href="AIML.profile.uml#_IDYhIH13EeqSHNFOHg2_Jw"/>
+ <edges xmi:type="notation:Connector" xmi:id="_YcE5EKWTEeq2dLYfuMvqgg" type="Generalization_Edge" source="_hxV0wKWSEeq2dLYfuMvqgg" target="_OIV_cKWTEeq2dLYfuMvqgg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_YcE5E6WTEeq2dLYfuMvqgg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_3MJUAKWTEeq2dLYfuMvqgg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_YcE5FKWTEeq2dLYfuMvqgg" x="1" y="59"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_YcE5EaWTEeq2dLYfuMvqgg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_YbtssKWTEeq2dLYfuMvqgg"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_YcE5EqWTEeq2dLYfuMvqgg" points="[1160, 160, -643984, -643984]$[1180, 103, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Yc-Q8KWTEeq2dLYfuMvqgg" id="(0.7453416149068323,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Yc-Q8aWTEeq2dLYfuMvqgg" id="(0.7453416149068323,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_aA9zQKWTEeq2dLYfuMvqgg" type="Generalization_Edge" source="_Gws48KWSEeq2dLYfuMvqgg" target="_OIV_cKWTEeq2dLYfuMvqgg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_aA9zQ6WTEeq2dLYfuMvqgg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_Koc7sKWUEeq2dLYfuMvqgg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_aA9zRKWTEeq2dLYfuMvqgg" x="1" y="58"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_aA9zQaWTEeq2dLYfuMvqgg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_aApDIKWTEeq2dLYfuMvqgg"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_aA9zQqWTEeq2dLYfuMvqgg" points="[940, 160, -643984, -643984]$[1140, 103, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_aBW00KWTEeq2dLYfuMvqgg" id="(0.8,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_aBW00aWTEeq2dLYfuMvqgg" id="(0.6211180124223602,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_dNI0UKWTEeq2dLYfuMvqgg" type="Generalization_Edge" source="_e62IwKWSEeq2dLYfuMvqgg" target="_OIV_cKWTEeq2dLYfuMvqgg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_dNJbYKWTEeq2dLYfuMvqgg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_HWmJYKWUEeq2dLYfuMvqgg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_dNJbYaWTEeq2dLYfuMvqgg" x="-1" y="58"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_dNI0UaWTEeq2dLYfuMvqgg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_dM91MKWTEeq2dLYfuMvqgg"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_dNI0UqWTEeq2dLYfuMvqgg" points="[1480, 200, -643984, -643984]$[1240, 103, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_dNn8gKWTEeq2dLYfuMvqgg" id="(0.37267080745341613,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_dNn8gaWTEeq2dLYfuMvqgg" id="(0.8695652173913043,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_nvD68KWTEeq2dLYfuMvqgg" type="Generalization_Edge" source="_-KB-EKWREeq2dLYfuMvqgg" target="_iKZYgKWTEeq2dLYfuMvqgg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_nvD686WTEeq2dLYfuMvqgg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_FMZisKWUEeq2dLYfuMvqgg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_nvD69KWTEeq2dLYfuMvqgg" x="-1" y="58"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_nvD68aWTEeq2dLYfuMvqgg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_nuodIKWTEeq2dLYfuMvqgg"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_nvD68qWTEeq2dLYfuMvqgg" points="[1680, 400, -643984, -643984]$[1620, 339, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_nvoisKWTEeq2dLYfuMvqgg" id="(0.3488372093023256,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_nvoisaWTEeq2dLYfuMvqgg" id="(0.813953488372093,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_oMmykKWTEeq2dLYfuMvqgg" type="Generalization_Edge" source="_Keup4KWSEeq2dLYfuMvqgg" target="_iKZYgKWTEeq2dLYfuMvqgg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_oMmyk6WTEeq2dLYfuMvqgg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_FMm-EKWUEeq2dLYfuMvqgg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_oMnZoKWTEeq2dLYfuMvqgg" y="59"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_oMmykaWTEeq2dLYfuMvqgg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_oMXiAKWTEeq2dLYfuMvqgg"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_oMmykqWTEeq2dLYfuMvqgg" points="[1480, 400, -643984, -643984]$[1520, 339, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_oM-mAKWTEeq2dLYfuMvqgg" id="(0.6976744186046512,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_oM-mAaWTEeq2dLYfuMvqgg" id="(0.23255813953488372,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_4drNUKWTEeq2dLYfuMvqgg" type="Generalization_Edge" source="_yti3MKWSEeq2dLYfuMvqgg" target="_OIV_cKWTEeq2dLYfuMvqgg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_4drNU6WTEeq2dLYfuMvqgg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_LQucoKWUEeq2dLYfuMvqgg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_4dr0YKWTEeq2dLYfuMvqgg" x="-1" y="59"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_4drNUaWTEeq2dLYfuMvqgg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_4dWdMKWTEeq2dLYfuMvqgg"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_4drNUqWTEeq2dLYfuMvqgg" points="[740, 160, -643984, -643984]$[1120, 103, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_4egTwKWTEeq2dLYfuMvqgg" id="(0.8080808080808081,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_4eg60KWTEeq2dLYfuMvqgg" id="(0.4968944099378882,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_DYiYYKWUEeq2dLYfuMvqgg" type="Generalization_Edge" source="_lmhWkKWSEeq2dLYfuMvqgg" target="_IHyLMKWTEeq2dLYfuMvqgg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_DYi_cKWUEeq2dLYfuMvqgg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_PX4fQKWUEeq2dLYfuMvqgg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_DYi_caWUEeq2dLYfuMvqgg" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_DYiYYaWUEeq2dLYfuMvqgg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_DYQrkKWUEeq2dLYfuMvqgg"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_DYiYYqWUEeq2dLYfuMvqgg" points="[440, 200, -643984, -643984]$[440, 143, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_DY8oEKWUEeq2dLYfuMvqgg" id="(0.4,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_DY9PIKWUEeq2dLYfuMvqgg" id="(0.25,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_MGr0QKWUEeq2dLYfuMvqgg" type="Generalization_Edge" source="_iKZYgKWTEeq2dLYfuMvqgg" target="_OIV_cKWTEeq2dLYfuMvqgg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_MGr0Q6WUEeq2dLYfuMvqgg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_Ol620KWUEeq2dLYfuMvqgg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_MGr0RKWUEeq2dLYfuMvqgg" x="-1" y="58"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_MGr0QaWUEeq2dLYfuMvqgg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_MGbVkKWUEeq2dLYfuMvqgg"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_MGr0QqWUEeq2dLYfuMvqgg" points="[1540, 220, -643984, -643984]$[1200, 103, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_MHEOwKWUEeq2dLYfuMvqgg" id="(0.3488372093023256,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_MHEOwaWUEeq2dLYfuMvqgg" id="(0.7453416149068323,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_Q3bmcKWUEeq2dLYfuMvqgg" type="Generalization_Edge" source="_nCTYEKWSEeq2dLYfuMvqgg" target="_IHyLMKWTEeq2dLYfuMvqgg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_Q3bmc6WUEeq2dLYfuMvqgg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_WILHUKWUEeq2dLYfuMvqgg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_Q3bmdKWUEeq2dLYfuMvqgg" x="-1" y="58"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_Q3bmcaWUEeq2dLYfuMvqgg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_Q3KgsKWUEeq2dLYfuMvqgg"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_Q3bmcqWUEeq2dLYfuMvqgg" points="[600, 200, -643984, -643984]$[520, 103, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Q37VsKWUEeq2dLYfuMvqgg" id="(0.37267080745341613,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Q378wKWUEeq2dLYfuMvqgg" id="(0.75,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_WydacKWUEeq2dLYfuMvqgg" type="Generalization_Edge" source="_nCTYEKWSEeq2dLYfuMvqgg" target="_OIV_cKWTEeq2dLYfuMvqgg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_Wydac6WUEeq2dLYfuMvqgg" type="Generalization_StereotypeLabel">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_WydadKWUEeq2dLYfuMvqgg" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_WydacaWUEeq2dLYfuMvqgg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_WyCjsKWUEeq2dLYfuMvqgg"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_WydacqWUEeq2dLYfuMvqgg" points="[660, 200, -643984, -643984]$[1000, 83, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Wy-X0KWUEeq2dLYfuMvqgg" id="(0.7453416149068323,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Wy-X0aWUEeq2dLYfuMvqgg" id="(0.12422360248447205,1.0)"/>
+ </edges>
+ </notation:Diagram>
+ <notation:Diagram xmi:id="_bdoToKWVEeq2dLYfuMvqgg" type="PapyrusUMLProfileDiagram" name="Layer_weight_initializers" measurementUnit="Pixel">
+ <children xmi:type="notation:Shape" xmi:id="_gtKTkKWVEeq2dLYfuMvqgg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_gtKTkaWVEeq2dLYfuMvqgg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_gtKTkqWVEeq2dLYfuMvqgg" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_gtKTk6WVEeq2dLYfuMvqgg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_z0htYKWSEeq2dLYfuMvqgg"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_gtKTlKWVEeq2dLYfuMvqgg"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_gtKTlaWVEeq2dLYfuMvqgg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_0XpokKWSEeq2dLYfuMvqgg"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_gtKTlqWVEeq2dLYfuMvqgg"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_gtKTl6WVEeq2dLYfuMvqgg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_0qcowKWSEeq2dLYfuMvqgg"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_gtKTmKWVEeq2dLYfuMvqgg"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_gtKTmaWVEeq2dLYfuMvqgg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_gtKTmqWVEeq2dLYfuMvqgg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_gtKTm6WVEeq2dLYfuMvqgg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_gtKTnKWVEeq2dLYfuMvqgg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_gtKTnaWVEeq2dLYfuMvqgg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_gtKTnqWVEeq2dLYfuMvqgg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_gtKTn6WVEeq2dLYfuMvqgg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_gtKToKWVEeq2dLYfuMvqgg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_gtKToaWVEeq2dLYfuMvqgg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_ytfM0KWSEeq2dLYfuMvqgg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_gtKTpaWVEeq2dLYfuMvqgg" x="790" y="230"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_gtKTpqWVEeq2dLYfuMvqgg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_gtK6oKWVEeq2dLYfuMvqgg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_gtK6oaWVEeq2dLYfuMvqgg" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_gtK6oqWVEeq2dLYfuMvqgg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_gtK6o6WVEeq2dLYfuMvqgg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_gtK6pKWVEeq2dLYfuMvqgg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_gtK6paWVEeq2dLYfuMvqgg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_gtK6pqWVEeq2dLYfuMvqgg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_gtK6p6WVEeq2dLYfuMvqgg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_gtK6qKWVEeq2dLYfuMvqgg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_gtK6qaWVEeq2dLYfuMvqgg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_gtK6qqWVEeq2dLYfuMvqgg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_OfDEsKWSEeq2dLYfuMvqgg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_gtK6rqWVEeq2dLYfuMvqgg" x="-170" y="50"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_gtMIwKWVEeq2dLYfuMvqgg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_gtMIwaWVEeq2dLYfuMvqgg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_gtMIwqWVEeq2dLYfuMvqgg" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_gtMIw6WVEeq2dLYfuMvqgg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_gtMIxKWVEeq2dLYfuMvqgg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_gtMIxaWVEeq2dLYfuMvqgg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_gtMIxqWVEeq2dLYfuMvqgg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_gtMIx6WVEeq2dLYfuMvqgg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_gtMIyKWVEeq2dLYfuMvqgg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_gtMIyaWVEeq2dLYfuMvqgg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_gtMIyqWVEeq2dLYfuMvqgg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_gtMIy6WVEeq2dLYfuMvqgg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_KermkKWSEeq2dLYfuMvqgg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_gtMIz6WVEeq2dLYfuMvqgg" x="1370" y="410"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_gtMv0KWVEeq2dLYfuMvqgg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_gtMv0aWVEeq2dLYfuMvqgg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_gtMv0qWVEeq2dLYfuMvqgg" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_gtMv06WVEeq2dLYfuMvqgg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_L46TcKWTEeq2dLYfuMvqgg"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_gtMv1KWVEeq2dLYfuMvqgg"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_gtMv1aWVEeq2dLYfuMvqgg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_gtMv1qWVEeq2dLYfuMvqgg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_gtMv16WVEeq2dLYfuMvqgg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_gtMv2KWVEeq2dLYfuMvqgg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_gtMv2aWVEeq2dLYfuMvqgg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_gtMv2qWVEeq2dLYfuMvqgg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_gtMv26WVEeq2dLYfuMvqgg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_gtMv3KWVEeq2dLYfuMvqgg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_gtMv3aWVEeq2dLYfuMvqgg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_IHtSsKWTEeq2dLYfuMvqgg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_gtMv4aWVEeq2dLYfuMvqgg" x="410" y="10"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_gtPMEKWVEeq2dLYfuMvqgg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_gtPMEaWVEeq2dLYfuMvqgg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_gtPMEqWVEeq2dLYfuMvqgg" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_gtPME6WVEeq2dLYfuMvqgg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_xIu1gKWSEeq2dLYfuMvqgg"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_gtPMFKWVEeq2dLYfuMvqgg"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_gtPMFaWVEeq2dLYfuMvqgg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_gtPMFqWVEeq2dLYfuMvqgg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_gtPMF6WVEeq2dLYfuMvqgg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_gtPMGKWVEeq2dLYfuMvqgg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_gtPMGaWVEeq2dLYfuMvqgg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_gtPMGqWVEeq2dLYfuMvqgg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_gtPMG6WVEeq2dLYfuMvqgg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_gtPMHKWVEeq2dLYfuMvqgg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_gtPMHaWVEeq2dLYfuMvqgg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_oi19wKWSEeq2dLYfuMvqgg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_gtPMIaWVEeq2dLYfuMvqgg" x="-10" y="50"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_gtPzIKWVEeq2dLYfuMvqgg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_gtPzIaWVEeq2dLYfuMvqgg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_gtPzIqWVEeq2dLYfuMvqgg" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_gtPzI6WVEeq2dLYfuMvqgg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_gtPzJKWVEeq2dLYfuMvqgg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_gtPzJaWVEeq2dLYfuMvqgg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_gtPzJqWVEeq2dLYfuMvqgg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_gtPzJ6WVEeq2dLYfuMvqgg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_gtPzKKWVEeq2dLYfuMvqgg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_gtPzKaWVEeq2dLYfuMvqgg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_gtPzKqWVEeq2dLYfuMvqgg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_gtPzK6WVEeq2dLYfuMvqgg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_e6wCIKWSEeq2dLYfuMvqgg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_gtPzL6WVEeq2dLYfuMvqgg" x="1810" y="230"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_gtQaMKWVEeq2dLYfuMvqgg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_gtQaMaWVEeq2dLYfuMvqgg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_gtQaMqWVEeq2dLYfuMvqgg" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_gtQaM6WVEeq2dLYfuMvqgg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_gtQaNKWVEeq2dLYfuMvqgg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_gtQaNaWVEeq2dLYfuMvqgg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_gtQaNqWVEeq2dLYfuMvqgg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_gtQaN6WVEeq2dLYfuMvqgg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_gtQaOKWVEeq2dLYfuMvqgg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_gtQaOaWVEeq2dLYfuMvqgg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_gtQaOqWVEeq2dLYfuMvqgg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_gtQaO6WVEeq2dLYfuMvqgg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_nCPGoKWSEeq2dLYfuMvqgg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_gtQaP6WVEeq2dLYfuMvqgg" x="550" y="210"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_gtRBSKWVEeq2dLYfuMvqgg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_gtRBSaWVEeq2dLYfuMvqgg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_gtRBSqWVEeq2dLYfuMvqgg" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_gtRBS6WVEeq2dLYfuMvqgg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_gtRBTKWVEeq2dLYfuMvqgg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_gtRBTaWVEeq2dLYfuMvqgg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_gtRBTqWVEeq2dLYfuMvqgg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_gtRBT6WVEeq2dLYfuMvqgg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_gtRBUKWVEeq2dLYfuMvqgg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_gtRBUaWVEeq2dLYfuMvqgg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_gtRBUqWVEeq2dLYfuMvqgg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_gtRBU6WVEeq2dLYfuMvqgg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_hxQVMKWSEeq2dLYfuMvqgg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_gtRBV6WVEeq2dLYfuMvqgg" x="1230" y="230"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_gtRoUqWVEeq2dLYfuMvqgg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_gtRoU6WVEeq2dLYfuMvqgg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_gtSPYKWVEeq2dLYfuMvqgg" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_gtSPYaWVEeq2dLYfuMvqgg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_gtSPYqWVEeq2dLYfuMvqgg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_gtSPY6WVEeq2dLYfuMvqgg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_gtSPZKWVEeq2dLYfuMvqgg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_gtSPZaWVEeq2dLYfuMvqgg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_gtSPZqWVEeq2dLYfuMvqgg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_gtSPZ6WVEeq2dLYfuMvqgg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_gtSPaKWVEeq2dLYfuMvqgg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_gtSPaaWVEeq2dLYfuMvqgg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_ZEzicKWSEeq2dLYfuMvqgg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_gtSPbaWVEeq2dLYfuMvqgg" x="-330" y="50"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_gtS2cKWVEeq2dLYfuMvqgg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_gtS2caWVEeq2dLYfuMvqgg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_gtS2cqWVEeq2dLYfuMvqgg" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_gtS2c6WVEeq2dLYfuMvqgg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_IiUAgKWSEeq2dLYfuMvqgg"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_gtS2dKWVEeq2dLYfuMvqgg"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_gtS2daWVEeq2dLYfuMvqgg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_JNazAKWSEeq2dLYfuMvqgg"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_gtS2dqWVEeq2dLYfuMvqgg"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_gtS2d6WVEeq2dLYfuMvqgg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_gtS2eKWVEeq2dLYfuMvqgg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_gtS2eaWVEeq2dLYfuMvqgg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_gtS2eqWVEeq2dLYfuMvqgg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_gtS2e6WVEeq2dLYfuMvqgg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_gtS2fKWVEeq2dLYfuMvqgg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_gtS2faWVEeq2dLYfuMvqgg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_gtS2fqWVEeq2dLYfuMvqgg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_gtS2f6WVEeq2dLYfuMvqgg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_GwoAcKWSEeq2dLYfuMvqgg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_gtS2g6WVEeq2dLYfuMvqgg" x="1010" y="230"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_gtTdgKWVEeq2dLYfuMvqgg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_gtTdgaWVEeq2dLYfuMvqgg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_gtTdgqWVEeq2dLYfuMvqgg" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_gtTdg6WVEeq2dLYfuMvqgg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_R4qPYKWTEeq2dLYfuMvqgg"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_gtTdhKWVEeq2dLYfuMvqgg"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_gtTdhaWVEeq2dLYfuMvqgg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_gtTdhqWVEeq2dLYfuMvqgg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_gtTdh6WVEeq2dLYfuMvqgg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_gtTdiKWVEeq2dLYfuMvqgg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_gtTdiaWVEeq2dLYfuMvqgg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_gtTdiqWVEeq2dLYfuMvqgg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_gtTdi6WVEeq2dLYfuMvqgg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_gtTdjKWVEeq2dLYfuMvqgg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_gtTdjaWVEeq2dLYfuMvqgg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_OISVEKWTEeq2dLYfuMvqgg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_gtTdkaWVEeq2dLYfuMvqgg" x="990" y="-10"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_gtUEkKWVEeq2dLYfuMvqgg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_gtUEkaWVEeq2dLYfuMvqgg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_gtUEkqWVEeq2dLYfuMvqgg" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_gtUEk6WVEeq2dLYfuMvqgg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_gtUElKWVEeq2dLYfuMvqgg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_gtUElaWVEeq2dLYfuMvqgg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_gtUElqWVEeq2dLYfuMvqgg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_gtUEl6WVEeq2dLYfuMvqgg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_gtUEmKWVEeq2dLYfuMvqgg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_gtUEmaWVEeq2dLYfuMvqgg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_gtUEmqWVEeq2dLYfuMvqgg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_gtUEm6WVEeq2dLYfuMvqgg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_lmeTQKWSEeq2dLYfuMvqgg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_gtUEn6WVEeq2dLYfuMvqgg" x="410" y="210"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_gtUroKWVEeq2dLYfuMvqgg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_gtUroaWVEeq2dLYfuMvqgg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_gtUroqWVEeq2dLYfuMvqgg" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_gtUro6WVEeq2dLYfuMvqgg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_gtUrpKWVEeq2dLYfuMvqgg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_gtUrpaWVEeq2dLYfuMvqgg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_gtUrpqWVEeq2dLYfuMvqgg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_gtUrp6WVEeq2dLYfuMvqgg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_gtUrqKWVEeq2dLYfuMvqgg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_gtUrqaWVEeq2dLYfuMvqgg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_gtUrqqWVEeq2dLYfuMvqgg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_gtUrq6WVEeq2dLYfuMvqgg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_-JzUkKWREeq2dLYfuMvqgg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_gtUrr6WVEeq2dLYfuMvqgg" x="1630" y="410"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_gtVSsKWVEeq2dLYfuMvqgg" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_gtVSsaWVEeq2dLYfuMvqgg" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_gtVSsqWVEeq2dLYfuMvqgg" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_gtVSs6WVEeq2dLYfuMvqgg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_lHusUKWTEeq2dLYfuMvqgg"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_gtVStKWVEeq2dLYfuMvqgg"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_gtVStaWVEeq2dLYfuMvqgg" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="AIML.profile.uml#_lmazcKWTEeq2dLYfuMvqgg"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_gtVStqWVEeq2dLYfuMvqgg"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_gtVSt6WVEeq2dLYfuMvqgg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_gtVSuKWVEeq2dLYfuMvqgg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_gtVSuaWVEeq2dLYfuMvqgg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_gtVSuqWVEeq2dLYfuMvqgg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_gtVSu6WVEeq2dLYfuMvqgg" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_gtVSvKWVEeq2dLYfuMvqgg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_gtVSvaWVEeq2dLYfuMvqgg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_gtVSvqWVEeq2dLYfuMvqgg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_gtVSv6WVEeq2dLYfuMvqgg"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="AIML.profile.uml#_iKWVMKWTEeq2dLYfuMvqgg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_gtVSw6WVEeq2dLYfuMvqgg" x="1490" y="230"/>
+ </children>
+ <styles xmi:type="notation:StringValueStyle" xmi:id="_bdoToaWVEeq2dLYfuMvqgg" name="diagram_compatibility_version" stringValue="1.4.0"/>
+ <styles xmi:type="notation:DiagramStyle" xmi:id="_bdoToqWVEeq2dLYfuMvqgg"/>
+ <styles xmi:type="style:PapyrusDiagramStyle" xmi:id="_bdoTo6WVEeq2dLYfuMvqgg" diagramKindId="org.eclipse.papyrus.uml.diagram.profile">
+ <owner xmi:type="uml:Profile" href="AIML.profile.uml#_ZgMWkKWVEeq2dLYfuMvqgg"/>
+ </styles>
+ <element xmi:type="uml:Profile" href="AIML.profile.uml#_ZgMWkKWVEeq2dLYfuMvqgg"/>
+ <edges xmi:type="notation:Connector" xmi:id="_gtIeYKWVEeq2dLYfuMvqgg" type="Generalization_Edge" source="_gtKTkKWVEeq2dLYfuMvqgg" target="_gtTdgKWVEeq2dLYfuMvqgg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_gtIeYaWVEeq2dLYfuMvqgg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_gtIeYqWVEeq2dLYfuMvqgg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_gtIeY6WVEeq2dLYfuMvqgg" x="-1" y="59"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_gtIeZKWVEeq2dLYfuMvqgg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_4dWdMKWTEeq2dLYfuMvqgg"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_gtIeZaWVEeq2dLYfuMvqgg" points="[740, 160, -643984, -643984]$[1120, 103, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_gtIeZqWVEeq2dLYfuMvqgg" id="(0.8080808080808081,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_gtIeZ6WVEeq2dLYfuMvqgg" id="(0.4968944099378882,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_gtK6r6WVEeq2dLYfuMvqgg" type="Generalization_Edge" source="_gtS2cKWVEeq2dLYfuMvqgg" target="_gtTdgKWVEeq2dLYfuMvqgg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_gtK6sKWVEeq2dLYfuMvqgg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_gtK6saWVEeq2dLYfuMvqgg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_gtK6sqWVEeq2dLYfuMvqgg" x="1" y="58"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_gtK6s6WVEeq2dLYfuMvqgg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_aApDIKWTEeq2dLYfuMvqgg"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_gtK6tKWVEeq2dLYfuMvqgg" points="[940, 160, -643984, -643984]$[1140, 103, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_gtK6taWVEeq2dLYfuMvqgg" id="(0.8,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_gtK6tqWVEeq2dLYfuMvqgg" id="(0.6211180124223602,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_gtLhsKWVEeq2dLYfuMvqgg" type="Generalization_Edge" source="_gtUroKWVEeq2dLYfuMvqgg" target="_gtVSsKWVEeq2dLYfuMvqgg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_gtLhsaWVEeq2dLYfuMvqgg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_gtLhsqWVEeq2dLYfuMvqgg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_gtLhs6WVEeq2dLYfuMvqgg" x="-1" y="58"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_gtLhtKWVEeq2dLYfuMvqgg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_nuodIKWTEeq2dLYfuMvqgg"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_gtLhtaWVEeq2dLYfuMvqgg" points="[1680, 400, -643984, -643984]$[1620, 339, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_gtLhtqWVEeq2dLYfuMvqgg" id="(0.3488372093023256,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_gtLht6WVEeq2dLYfuMvqgg" id="(0.813953488372093,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_gtOlAaWVEeq2dLYfuMvqgg" type="Generalization_Edge" source="_gtMIwKWVEeq2dLYfuMvqgg" target="_gtVSsKWVEeq2dLYfuMvqgg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_gtOlAqWVEeq2dLYfuMvqgg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_gtOlA6WVEeq2dLYfuMvqgg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_gtOlBKWVEeq2dLYfuMvqgg" y="59"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_gtOlBaWVEeq2dLYfuMvqgg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_oMXiAKWTEeq2dLYfuMvqgg"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_gtOlBqWVEeq2dLYfuMvqgg" points="[1480, 400, -643984, -643984]$[1520, 339, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_gtOlB6WVEeq2dLYfuMvqgg" id="(0.6976744186046512,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_gtOlCKWVEeq2dLYfuMvqgg" id="(0.23255813953488372,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_gtPMIqWVEeq2dLYfuMvqgg" type="Generalization_Edge" source="_gtPzIKWVEeq2dLYfuMvqgg" target="_gtTdgKWVEeq2dLYfuMvqgg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_gtPMI6WVEeq2dLYfuMvqgg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_gtPMJKWVEeq2dLYfuMvqgg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_gtPMJaWVEeq2dLYfuMvqgg" x="-1" y="58"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_gtPMJqWVEeq2dLYfuMvqgg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_dM91MKWTEeq2dLYfuMvqgg"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_gtPMJ6WVEeq2dLYfuMvqgg" points="[1480, 200, -643984, -643984]$[1240, 103, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_gtPMKKWVEeq2dLYfuMvqgg" id="(0.37267080745341613,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_gtPMKaWVEeq2dLYfuMvqgg" id="(0.8695652173913043,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_gtRBQKWVEeq2dLYfuMvqgg" type="Generalization_Edge" source="_gtVSsKWVEeq2dLYfuMvqgg" target="_gtTdgKWVEeq2dLYfuMvqgg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_gtRBQaWVEeq2dLYfuMvqgg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_gtRBQqWVEeq2dLYfuMvqgg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_gtRBQ6WVEeq2dLYfuMvqgg" x="-1" y="58"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_gtRBRKWVEeq2dLYfuMvqgg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_MGbVkKWUEeq2dLYfuMvqgg"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_gtRBRaWVEeq2dLYfuMvqgg" points="[1540, 220, -643984, -643984]$[1200, 103, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_gtRBRqWVEeq2dLYfuMvqgg" id="(0.3488372093023256,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_gtRBR6WVEeq2dLYfuMvqgg" id="(0.7453416149068323,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_gtSPbqWVEeq2dLYfuMvqgg" type="Generalization_Edge" source="_gtQaMKWVEeq2dLYfuMvqgg" target="_gtTdgKWVEeq2dLYfuMvqgg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_gtSPb6WVEeq2dLYfuMvqgg" type="Generalization_StereotypeLabel">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_gtSPcKWVEeq2dLYfuMvqgg" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_gtSPcaWVEeq2dLYfuMvqgg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_WyCjsKWUEeq2dLYfuMvqgg"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_gtSPcqWVEeq2dLYfuMvqgg" points="[660, 200, -643984, -643984]$[1000, 83, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_gtSPc6WVEeq2dLYfuMvqgg" id="(0.7453416149068323,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_gtSPdKWVEeq2dLYfuMvqgg" id="(0.12422360248447205,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_gtS2hKWVEeq2dLYfuMvqgg" type="Generalization_Edge" source="_gtQaMKWVEeq2dLYfuMvqgg" target="_gtMv0KWVEeq2dLYfuMvqgg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_gtS2haWVEeq2dLYfuMvqgg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_gtS2hqWVEeq2dLYfuMvqgg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_gtS2h6WVEeq2dLYfuMvqgg" x="-1" y="58"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_gtS2iKWVEeq2dLYfuMvqgg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_Q3KgsKWUEeq2dLYfuMvqgg"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_gtS2iaWVEeq2dLYfuMvqgg" points="[600, 200, -643984, -643984]$[520, 103, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_gtS2iqWVEeq2dLYfuMvqgg" id="(0.37267080745341613,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_gtS2i6WVEeq2dLYfuMvqgg" id="(0.75,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_gtTdkqWVEeq2dLYfuMvqgg" type="Generalization_Edge" source="_gtUEkKWVEeq2dLYfuMvqgg" target="_gtMv0KWVEeq2dLYfuMvqgg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_gtTdk6WVEeq2dLYfuMvqgg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_gtTdlKWVEeq2dLYfuMvqgg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_gtTdlaWVEeq2dLYfuMvqgg" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_gtTdlqWVEeq2dLYfuMvqgg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_DYQrkKWUEeq2dLYfuMvqgg"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_gtTdl6WVEeq2dLYfuMvqgg" points="[440, 200, -643984, -643984]$[440, 143, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_gtTdmKWVEeq2dLYfuMvqgg" id="(0.4,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_gtTdmaWVEeq2dLYfuMvqgg" id="(0.25,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_gtUrsKWVEeq2dLYfuMvqgg" type="Generalization_Edge" source="_gtRBSKWVEeq2dLYfuMvqgg" target="_gtTdgKWVEeq2dLYfuMvqgg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_gtUrsaWVEeq2dLYfuMvqgg" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_gtUrsqWVEeq2dLYfuMvqgg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_gtUrs6WVEeq2dLYfuMvqgg" x="1" y="59"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_gtUrtKWVEeq2dLYfuMvqgg"/>
+ <element xmi:type="uml:Generalization" href="AIML.profile.uml#_YbtssKWTEeq2dLYfuMvqgg"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_gtUrtaWVEeq2dLYfuMvqgg" points="[1160, 160, -643984, -643984]$[1180, 103, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_gtUrtqWVEeq2dLYfuMvqgg" id="(0.7453416149068323,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_gtUrt6WVEeq2dLYfuMvqgg" id="(0.7453416149068323,1.0)"/>
+ </edges>
+ </notation:Diagram>
+</xmi:XMI>
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/profile/AIML.profile.uml b/aiml/org.eclipse.papyrus.aiml.profile/profile/AIML.profile.uml
new file mode 100644
index 0000000..8562d8a
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/profile/AIML.profile.uml
@@ -0,0 +1,1445 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<uml:Profile xmi:version="20131001" xmlns:xmi="http://www.omg.org/spec/XMI/20131001" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:uml="http://www.eclipse.org/uml2/5.0.0/UML" xmi:id="_IDYhIH13EeqSHNFOHg2_Jw" name="AIML" URI="http://www.eclipse.org/papyrus/AIML/1" metaclassReference="_IfyLYK8eEeqUEZ8AVVPlLA">
+ <elementImport xmi:type="uml:ElementImport" xmi:id="_IfyLYK8eEeqUEZ8AVVPlLA" alias="Class">
+ <importedElement xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Class"/>
+ </elementImport>
+ <packageImport xmi:type="uml:PackageImport" xmi:id="_ImVdMH13EeqSHNFOHg2_Jw">
+ <importedPackage xmi:type="uml:Model" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#_0"/>
+ </packageImport>
+ <packageImport xmi:type="uml:PackageImport" xmi:id="_ImfOMH13EeqSHNFOHg2_Jw">
+ <importedPackage xmi:type="uml:Model" href="pathmap://UML_METAMODELS/UML.metamodel.uml#_0"/>
+ </packageImport>
+ <packagedElement xmi:type="uml:Profile" xmi:id="_u1dx8JT1Eeq5BK6mmo2rWg" name="Module" URI="http://www.eclipse.org/papyrus/AIML/module/1">
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_2E9coH2KEeqSHNFOHg2_Jw" name="Model">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_n3H-sH5rEeqSHNFOHg2_Jw" name="base_Class" association="_n3BRAH5rEeqSHNFOHg2_Jw">
+ <type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Class"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_n3H-sX5rEeqSHNFOHg2_Jw"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_7EMR4IhuEeqlnrZTj0aPoA" name="name" isReadOnly="true" isDerived="true">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_7vDMwIhuEeqlnrZTj0aPoA" name="data" type="_kkWnwIhuEeqlnrZTj0aPoA"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_9DLHEIhuEeqlnrZTj0aPoA" name="requires_grad">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_1-bYgJmyEeq0jfmjFzaebA"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ivxlgIvAEeqlnrZTj0aPoA" name="subModule" type="_2E9coH2KEeqSHNFOHg2_Jw">
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_8M2poJmyEeq0jfmjFzaebA"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_eOQdAJm0Eeq0jfmjFzaebA" value="*"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="__N7qULYUEeq1Koq3J5meEA" name="optimizer">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_ZOwH4LYVEeq1Koq3J5meEA"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_AtDTsLYVEeq1Koq3J5meEA" name="loss">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_YfAtALYVEeq1Koq3J5meEA"/>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Extension" xmi:id="_n3BRAH5rEeqSHNFOHg2_Jw" name="E_Model_Class1" memberEnd="_n3HXoH5rEeqSHNFOHg2_Jw _n3H-sH5rEeqSHNFOHg2_Jw">
+ <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_n3HXoH5rEeqSHNFOHg2_Jw" name="extension_Model" type="_2E9coH2KEeqSHNFOHg2_Jw" aggregation="composite" association="_n3BRAH5rEeqSHNFOHg2_Jw"/>
+ </packagedElement>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Profile" xmi:id="_38DjAJT1Eeq5BK6mmo2rWg" name="Tensor" URI="http://www.eclipse.org/papyrus/AIML/tensor/1">
+ <packagedElement xmi:type="uml:Enumeration" xmi:id="_D6R-YIvIEeqlnrZTj0aPoA" name="EDType">
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_GeF-8IvIEeqlnrZTj0aPoA" name="float32"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_VdQs8IvIEeqlnrZTj0aPoA" name="float64"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_YIbSsIvIEeqlnrZTj0aPoA" name="float16"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_bZFyMIvIEeqlnrZTj0aPoA" name="uint8"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_czCAoIvIEeqlnrZTj0aPoA" name="int8"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_dzPgcIvIEeqlnrZTj0aPoA" name="int16"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_ez5sMIvIEeqlnrZTj0aPoA" name="int32"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_flb20IvIEeqlnrZTj0aPoA" name="int64"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_gV4cUIvIEeqlnrZTj0aPoA" name="bool"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Enumeration" xmi:id="_AiQ84IvMEeqlnrZTj0aPoA" name="ETensorTypes">
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_FE7PwIvMEeqlnrZTj0aPoA" name="FloatTensor"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_GM6ykIvMEeqlnrZTj0aPoA" name="DoubleTensor"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_IXWp0IvMEeqlnrZTj0aPoA" name="HalfTensor"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_KEe6AIvMEeqlnrZTj0aPoA" name="ByteTensor"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_LzG_AIvMEeqlnrZTj0aPoA" name="CharTensor"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_MmTWgIvMEeqlnrZTj0aPoA" name="ShortTensor"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_Ndwi8IvMEeqlnrZTj0aPoA" name="IntTensor"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_OHKFQIvMEeqlnrZTj0aPoA" name="LongTensor"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_O3f9EIvMEeqlnrZTj0aPoA" name="BoolTensor"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_kkWnwIhuEeqlnrZTj0aPoA" name="Tensor">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_mlHloIhuEeqlnrZTj0aPoA" name="data">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Real"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Yr_CcJefEeq1-Ze45jZMTg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_YsJagJefEeq1-Ze45jZMTg" value="*"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ncDNoIhuEeqlnrZTj0aPoA" name="dtype" visibility="public" type="_D6R-YIvIEeqlnrZTj0aPoA">
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_k0KfwJegEeq1-Ze45jZMTg"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_oUgfoIhuEeqlnrZTj0aPoA" name="device" type="_ZQQYwJbREeq1-Ze45jZMTg">
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_HrXUUJmzEeq0jfmjFzaebA"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_o5TOwIhuEeqlnrZTj0aPoA" name="requires_grad">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_JBGYMJmzEeq0jfmjFzaebA"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_pnJzQIhuEeqlnrZTj0aPoA" name="pin_memory">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_XzSaIJmzEeq0jfmjFzaebA"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_wocFsKWvEeq2dLYfuMvqgg" name="shape">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Integer"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_HJeCoKWwEeq2dLYfuMvqgg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_NBT_wKWwEeq2dLYfuMvqgg" value="*"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_xs8PoKWvEeq2dLYfuMvqgg" name="name">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_IBXT8KWwEeq2dLYfuMvqgg"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_JM8zYK8eEeqUEZ8AVVPlLA" name="base_Class" association="_JM3T0K8eEeqUEZ8AVVPlLA">
+ <type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Class"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_JM8zYa8eEeqUEZ8AVVPlLA"/>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Extension" xmi:id="_JM3T0K8eEeqUEZ8AVVPlLA" name="E_Tensor_Class4" memberEnd="_JM7lQK8eEeqUEZ8AVVPlLA _JM8zYK8eEeqUEZ8AVVPlLA">
+ <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_JM7lQK8eEeqUEZ8AVVPlLA" name="extension_Tensor" type="_kkWnwIhuEeqlnrZTj0aPoA" aggregation="composite" association="_JM3T0K8eEeqUEZ8AVVPlLA"/>
+ </packagedElement>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Package" xmi:id="_-8tiUJT1Eeq5BK6mmo2rWg" name="datatypes">
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_ZQQYwJbREeq1-Ze45jZMTg" name="Device">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_mveW8JbREeq1-Ze45jZMTg" name="type">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/>
+ </ownedAttribute>
+ </packagedElement>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Profile" xmi:id="_Deu8AJT2Eeq5BK6mmo2rWg" name="Pooling_layers" URI="http://www.eclipse.org/papyrus/AIML/pooling/1">
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_nMBrUIVSEeqvavUi0dxRAw" name="Pooling_layers" isAbstract="true">
+ <generalization xmi:type="uml:Generalization" xmi:id="_rCc7kIVYEeqlnrZTj0aPoA" general="_2E9coH2KEeqSHNFOHg2_Jw"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_qYSzAIVSEeqvavUi0dxRAw" name="Pooling_layers_1" isAbstract="true">
+ <generalization xmi:type="uml:Generalization" xmi:id="_DTFDUIVYEeqlnrZTj0aPoA" general="_nMBrUIVSEeqvavUi0dxRAw"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_CkDW8IVUEeqlnrZTj0aPoA" name="kernel_size">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Integer"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_SeW74I82Eeq5HrfdV5ATIg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_LZYuYJa3Eeq1-Ze45jZMTg" value="*"/>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_spFw8IVSEeqvavUi0dxRAw" name="Pooling_layers_2" isAbstract="true">
+ <generalization xmi:type="uml:Generalization" xmi:id="_CV1X8IVYEeqlnrZTj0aPoA" general="_nMBrUIVSEeqvavUi0dxRAw"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_vvW-UIVSEeqvavUi0dxRAw" name="output_size">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Integer"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_7E6k4Ja3Eeq1-Ze45jZMTg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_7DawEJa3Eeq1-Ze45jZMTg" value="*"/>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_x9fp0IVSEeqvavUi0dxRAw" name="AdaptativeMaxPool" isAbstract="true">
+ <generalization xmi:type="uml:Generalization" xmi:id="_i7emsIVTEeqlnrZTj0aPoA" general="_spFw8IVSEeqvavUi0dxRAw"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_3JChoIVSEeqvavUi0dxRAw" name="return_indices">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_Y8sCUIVTEeqlnrZTj0aPoA" name="AdaptativeMaxPool1d">
+ <generalization xmi:type="uml:Generalization" xmi:id="_g8dVQIVTEeqlnrZTj0aPoA" general="_x9fp0IVSEeqvavUi0dxRAw"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_cdWFoIVTEeqlnrZTj0aPoA" name="AdaptativeMaxPool2d">
+ <generalization xmi:type="uml:Generalization" xmi:id="_hguf8IVTEeqlnrZTj0aPoA" general="_x9fp0IVSEeqvavUi0dxRAw"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_dQfZ0IVTEeqlnrZTj0aPoA" name="AdaptativeMaxPool3d">
+ <generalization xmi:type="uml:Generalization" xmi:id="_iK5eUIVTEeqlnrZTj0aPoA" general="_x9fp0IVSEeqvavUi0dxRAw"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_sAviEIVTEeqlnrZTj0aPoA" name="AdaptiveAvgPool3d">
+ <generalization xmi:type="uml:Generalization" xmi:id="_7a4U0IVTEeqlnrZTj0aPoA" general="_spFw8IVSEeqvavUi0dxRAw"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_uVbhgIVTEeqlnrZTj0aPoA" name="AdaptiveAvgPool2d">
+ <generalization xmi:type="uml:Generalization" xmi:id="_8DbikIVTEeqlnrZTj0aPoA" general="_spFw8IVSEeqvavUi0dxRAw"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_vkD30IVTEeqlnrZTj0aPoA" name="AdaptiveAvgPool1d">
+ <generalization xmi:type="uml:Generalization" xmi:id="_9Q2_AIVTEeqlnrZTj0aPoA" general="_spFw8IVSEeqvavUi0dxRAw"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_H6da8IVUEeqlnrZTj0aPoA" name="Pooling_layers_1_1" isAbstract="true">
+ <generalization xmi:type="uml:Generalization" xmi:id="_2P_c8IVWEeqlnrZTj0aPoA" general="_qYSzAIVSEeqvavUi0dxRAw"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_K3ga4IVUEeqlnrZTj0aPoA" name="stride">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Integer"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_NKGeEJa3Eeq1-Ze45jZMTg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_NIPc4Ja3Eeq1-Ze45jZMTg" value="*"/>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_QF-D0IVUEeqlnrZTj0aPoA" name="MaxPool1d">
+ <generalization xmi:type="uml:Generalization" xmi:id="_5a1L0IVXEeqlnrZTj0aPoA" general="_rL8rQIVXEeqlnrZTj0aPoA"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_SVcMEIVUEeqlnrZTj0aPoA" name="MaxUnpool1d">
+ <generalization xmi:type="uml:Generalization" xmi:id="_3UmmgIVUEeqlnrZTj0aPoA" general="_h3EG4IVUEeqlnrZTj0aPoA"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_VqZVsIVUEeqlnrZTj0aPoA" name="AvgPool1d">
+ <generalization xmi:type="uml:Generalization" xmi:id="_geEBsIVWEeqlnrZTj0aPoA" general="_6bJEMIVVEeqlnrZTj0aPoA"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_h3EG4IVUEeqlnrZTj0aPoA" name="Pooling_layers_1_1_1" isAbstract="true">
+ <generalization xmi:type="uml:Generalization" xmi:id="_Ud9iUIVVEeqlnrZTj0aPoA" general="_H6da8IVUEeqlnrZTj0aPoA"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_mqeLgIVUEeqlnrZTj0aPoA" name="padding">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Integer"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_O_n1QJa3Eeq1-Ze45jZMTg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_O9_dkJa3Eeq1-Ze45jZMTg" value="*"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_jxSQMKZ3EeqIr7xwFiWQGQ" name="padding_k">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_lhqBoKZ3EeqIr7xwFiWQGQ"/>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_wYbekIVUEeqlnrZTj0aPoA" name="MaxUnpool2d">
+ <generalization xmi:type="uml:Generalization" xmi:id="_2i3nkIVUEeqlnrZTj0aPoA" general="_h3EG4IVUEeqlnrZTj0aPoA"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_y5HSoIVUEeqlnrZTj0aPoA" name="MaxUnpool3d">
+ <generalization xmi:type="uml:Generalization" xmi:id="_2DdHsIVUEeqlnrZTj0aPoA" general="_h3EG4IVUEeqlnrZTj0aPoA"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_FjbcsIVVEeqlnrZTj0aPoA" name="Pooling_layers_1_1_2" isAbstract="true">
+ <generalization xmi:type="uml:Generalization" xmi:id="_TaQCkIVVEeqlnrZTj0aPoA" general="_H6da8IVUEeqlnrZTj0aPoA"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_K5-DkIVVEeqlnrZTj0aPoA" name="ceil_mode">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_gpkMYJm1Eeq0jfmjFzaebA"/>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_XxquwIVVEeqlnrZTj0aPoA" name="LPPool1d">
+ <generalization xmi:type="uml:Generalization" xmi:id="_dGXikIVVEeqlnrZTj0aPoA" general="_FjbcsIVVEeqlnrZTj0aPoA"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_aIzlQIVVEeqlnrZTj0aPoA" name="LPPool2d">
+ <generalization xmi:type="uml:Generalization" xmi:id="_dg9M0IVVEeqlnrZTj0aPoA" general="_FjbcsIVVEeqlnrZTj0aPoA"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_6bJEMIVVEeqlnrZTj0aPoA" name="Pooling_layers_1_1_2_1" isAbstract="true">
+ <generalization xmi:type="uml:Generalization" xmi:id="_eWQLMIVXEeqlnrZTj0aPoA" general="_Cfb1UIVXEeqlnrZTj0aPoA"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Ayj5QIVWEeqlnrZTj0aPoA" name="count_include_pad">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_X90kQJm1Eeq0jfmjFzaebA"/>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_TS3LsIVWEeqlnrZTj0aPoA" name="AvgPool2d/3d" isAbstract="true">
+ <generalization xmi:type="uml:Generalization" xmi:id="_f8tBEIVWEeqlnrZTj0aPoA" general="_6bJEMIVVEeqlnrZTj0aPoA"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Y5DYIIVWEeqlnrZTj0aPoA" name="divisor_override">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Integer"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_a-aAYJm1Eeq0jfmjFzaebA"/>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_b9-hsIVWEeqlnrZTj0aPoA" name="AvgPool2d">
+ <generalization xmi:type="uml:Generalization" xmi:id="_e4Tk0IVWEeqlnrZTj0aPoA" general="_TS3LsIVWEeqlnrZTj0aPoA"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_ddho4IVWEeqlnrZTj0aPoA" name="AvgPool3d">
+ <generalization xmi:type="uml:Generalization" xmi:id="_fQk64IVWEeqlnrZTj0aPoA" general="_TS3LsIVWEeqlnrZTj0aPoA"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_Cfb1UIVXEeqlnrZTj0aPoA" name="Pooling_layers_1_1_1_1" isAbstract="true">
+ <generalization xmi:type="uml:Generalization" xmi:id="_V3zYMIVXEeqlnrZTj0aPoA" general="_h3EG4IVUEeqlnrZTj0aPoA"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_KnpSkIVXEeqlnrZTj0aPoA" name="ceil_mode">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MPD3EJm1Eeq0jfmjFzaebA"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_xBPDUKZ3EeqIr7xwFiWQGQ" name="pool_size">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Integer"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_1Sv70KZ3EeqIr7xwFiWQGQ"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_1S8wIKZ3EeqIr7xwFiWQGQ" value="*"/>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_rL8rQIVXEeqlnrZTj0aPoA" name="MaxPool" isAbstract="true">
+ <generalization xmi:type="uml:Generalization" xmi:id="_zKvGwIVXEeqlnrZTj0aPoA" general="_Cfb1UIVXEeqlnrZTj0aPoA"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_tPrdkIVXEeqlnrZTj0aPoA" name="dilation" visibility="public">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Integer"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_SBIecJa3Eeq1-Ze45jZMTg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_SBRoYJa3Eeq1-Ze45jZMTg" value="*"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_uGxdoIVXEeqlnrZTj0aPoA" name="return_indices">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_TAuYIJm1Eeq0jfmjFzaebA"/>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_1WhB0IVXEeqlnrZTj0aPoA" name="MaxPool2d">
+ <generalization xmi:type="uml:Generalization" xmi:id="_6B2IgIVXEeqlnrZTj0aPoA" general="_rL8rQIVXEeqlnrZTj0aPoA"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_2J_tMIVXEeqlnrZTj0aPoA" name="MaxPool3d">
+ <generalization xmi:type="uml:Generalization" xmi:id="_6loyEIVXEeqlnrZTj0aPoA" general="_rL8rQIVXEeqlnrZTj0aPoA"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_Y3zwEIVYEeqlnrZTj0aPoA" name="FractionalMaxPool2d">
+ <generalization xmi:type="uml:Generalization" xmi:id="_hzfRoIVYEeqlnrZTj0aPoA" general="_qYSzAIVSEeqvavUi0dxRAw"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_cdy_UIVYEeqlnrZTj0aPoA" name="output_size" visibility="public">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Integer"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_zyjKgJa3Eeq1-Ze45jZMTg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_zxKqcJa3Eeq1-Ze45jZMTg" value="*"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_dhzaAIVYEeqlnrZTj0aPoA" name="output_ratio">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Integer"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_1TXdAJa3Eeq1-Ze45jZMTg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_1MSkoJa3Eeq1-Ze45jZMTg" value="*"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_fG5IgIVYEeqlnrZTj0aPoA" name="return_indices">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_thHtoJm1Eeq0jfmjFzaebA"/>
+ </ownedAttribute>
+ </packagedElement>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Profile" xmi:id="_Nr2NYJOPEeqnY_bZg2Ebjg" name="Convolution_layers" URI="http://www.eclipse.org/papyrus/AIML/convolution/1">
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_5DtswH2KEeqSHNFOHg2_Jw" name="Convolution" isAbstract="true">
+ <generalization xmi:type="uml:Generalization" xmi:id="_JBpp4H5sEeqSHNFOHg2_Jw" general="_YZ54MH5qEeqSHNFOHg2_Jw"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_xLDlAH5nEeqSHNFOHg2_Jw" name="in_channels">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Integer"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_qBKXMKGzEeqsNvCDUfZJVA"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_PgB_YH5oEeqSHNFOHg2_Jw" name="groups">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Integer"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_pV3qoJm0Eeq0jfmjFzaebA"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_RrmfEH5oEeqSHNFOHg2_Jw" name="biais">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_q7b6QJm0Eeq0jfmjFzaebA"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_UPxE8H5oEeqSHNFOHg2_Jw" name="padding_mode">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_nCc2gJm0Eeq0jfmjFzaebA"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_NJHtgKG2EeqsNvCDUfZJVA" name="data_format">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_khfcsKTYEeqmTOsCAzVBxg"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Ou9p8KG2EeqsNvCDUfZJVA" name="dilation_rate">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Integer"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_goNTcKTXEeqmTOsCAzVBxg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_goSL8KTXEeqmTOsCAzVBxg" value="*"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_SXLt0KG2EeqsNvCDUfZJVA" name="activation">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_HIOnMKTZEeqmTOsCAzVBxg"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_THvoEKG2EeqsNvCDUfZJVA" name="bias_initializer">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_UiUvsKG2EeqsNvCDUfZJVA" name="activity_regularizer">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_kn6TMKG2EeqsNvCDUfZJVA" name="bias_constraint">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_bGMOcKStEeqmTOsCAzVBxg" name="bias_regularizer">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_anKPYH5pEeqSHNFOHg2_Jw" name="Unfold">
+ <generalization xmi:type="uml:Generalization" xmi:id="_Je4_gH5sEeqSHNFOHg2_Jw" general="_YZ54MH5qEeqSHNFOHg2_Jw"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_ISZCEH5qEeqSHNFOHg2_Jw" name="Fold">
+ <generalization xmi:type="uml:Generalization" xmi:id="_J9Ae4H5sEeqSHNFOHg2_Jw" general="_YZ54MH5qEeqSHNFOHg2_Jw"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MKi_YH5qEeqSHNFOHg2_Jw" name="output_size">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Integer"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_SOf3wIL9Eeqvud4Ae2T3Lg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_jtJCoJa2Eeq1-Ze45jZMTg" value="*"/>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_YZ54MH5qEeqSHNFOHg2_Jw" name="Convolution_layers" isAbstract="true">
+ <generalization xmi:type="uml:Generalization" xmi:id="_s5vukH5sEeqSHNFOHg2_Jw" general="_2E9coH2KEeqSHNFOHg2_Jw"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsHuAH5qEeqSHNFOHg2_Jw" name="kernel_size" visibility="public">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Integer"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_okd2EIvCEeqlnrZTj0aPoA"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_LFNqoJa2Eeq1-Ze45jZMTg" value="*"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_a-bqcH5qEeqSHNFOHg2_Jw" name="stride">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Integer"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_kN1DwI81Eeq5HrfdV5ATIg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_7V1QIJm0Eeq0jfmjFzaebA" value="*"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_bcYxwH5qEeqSHNFOHg2_Jw" name="padding">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Integer"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_pAoEYI81Eeq5HrfdV5ATIg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_U_9cgJa2Eeq1-Ze45jZMTg" value="*"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_cR75sH5qEeqSHNFOHg2_Jw" name="dilation" visibility="public">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Integer"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_ruNsAI81Eeq5HrfdV5ATIg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_XIcL8Ja2Eeq1-Ze45jZMTg" value="*"/>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_2Ej78IVJEeqvud4Ae2T3Lg" name="Conv2d">
+ <generalization xmi:type="uml:Generalization" xmi:id="_qNQVoKG3EeqsNvCDUfZJVA" general="_5JUXMKG1EeqsNvCDUfZJVA"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_6j6cIIVJEeqvud4Ae2T3Lg" name="Conv3d">
+ <generalization xmi:type="uml:Generalization" xmi:id="_pt11wKG3EeqsNvCDUfZJVA" general="_5JUXMKG1EeqsNvCDUfZJVA"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_8w4C8IVJEeqvud4Ae2T3Lg" name="ConvTranspose1d">
+ <generalization xmi:type="uml:Generalization" xmi:id="_ROpsIKSuEeqmTOsCAzVBxg" general="_37PHIKStEeqmTOsCAzVBxg"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="__Er4oIVJEeqvud4Ae2T3Lg" name="ConvTranspose2d">
+ <generalization xmi:type="uml:Generalization" xmi:id="_QScZcKG3EeqsNvCDUfZJVA" general="_RBqh0KG1EeqsNvCDUfZJVA"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_AfPLEIVKEeqvud4Ae2T3Lg" name="ConvTranspose3d">
+ <generalization xmi:type="uml:Generalization" xmi:id="_Qt4YQKG3EeqsNvCDUfZJVA" general="_RBqh0KG1EeqsNvCDUfZJVA"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_RBqh0KG1EeqsNvCDUfZJVA" name="transpose" isAbstract="true">
+ <generalization xmi:type="uml:Generalization" xmi:id="_RL6_IKG3EeqsNvCDUfZJVA" general="_5JUXMKG1EeqsNvCDUfZJVA"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_SowbcKG1EeqsNvCDUfZJVA" name="output_padding">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Integer"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_TFtJAKTdEeqmTOsCAzVBxg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_TFxacKTdEeqmTOsCAzVBxg" value="*"/>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_5JUXMKG1EeqsNvCDUfZJVA" name="basic" isAbstract="true">
+ <generalization xmi:type="uml:Generalization" xmi:id="_QvZkUKSuEeqmTOsCAzVBxg" general="_37PHIKStEeqmTOsCAzVBxg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_7rUZ4KG1EeqsNvCDUfZJVA" name="kernel_initializer">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_21W9AKTVEeqmTOsCAzVBxg"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_85lj0KG1EeqsNvCDUfZJVA" name="kernel_constraint" type="_sQtMMKZ6EeqIr7xwFiWQGQ"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ak_cwKG2EeqsNvCDUfZJVA" name="kernel_regularizer">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_lYtRMKTbEeqmTOsCAzVBxg"/>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_g_SxQKG3EeqsNvCDUfZJVA" name="Conv1d">
+ <generalization xmi:type="uml:Generalization" xmi:id="_q1mIAKG3EeqsNvCDUfZJVA" general="_5JUXMKG1EeqsNvCDUfZJVA"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_d-jusKG4EeqsNvCDUfZJVA" name="Separable" isAbstract="true">
+ <generalization xmi:type="uml:Generalization" xmi:id="_Rvo5UKSuEeqmTOsCAzVBxg" general="_37PHIKStEeqmTOsCAzVBxg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_etxlIKG4EeqsNvCDUfZJVA" name="depth_multiplier">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Integer"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_S7qjkKTaEeqmTOsCAzVBxg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_S7tm4KTaEeqmTOsCAzVBxg" value="*"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_f_57YKG4EeqsNvCDUfZJVA" name="depthwise_initializer">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_mEnKYKTaEeqmTOsCAzVBxg"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_hwRFwKG4EeqsNvCDUfZJVA" name="pointwise_initializer">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_kqpt0KTaEeqmTOsCAzVBxg"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_i2jYYKG4EeqsNvCDUfZJVA" name="depthwise_regularizer">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_lF9PMKG4EeqsNvCDUfZJVA" name="poitnwise_regularizer">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_mtJ2gKG4EeqsNvCDUfZJVA" name="depthwise_constraint">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_oTAaAKG4EeqsNvCDUfZJVA" name="pointwise_constraint">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_08Tc0KG4EeqsNvCDUfZJVA" name="SeparableConv2D">
+ <generalization xmi:type="uml:Generalization" xmi:id="_KvNvgKG5EeqsNvCDUfZJVA" general="_d-jusKG4EeqsNvCDUfZJVA"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_34MmMKG4EeqsNvCDUfZJVA" name="SeparableConv1D">
+ <generalization xmi:type="uml:Generalization" xmi:id="_L9aA8KG5EeqsNvCDUfZJVA" general="_d-jusKG4EeqsNvCDUfZJVA"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_Ip7BgKG6EeqsNvCDUfZJVA" name="DepthwiseConv2D">
+ <generalization xmi:type="uml:Generalization" xmi:id="_gvxQoKSuEeqmTOsCAzVBxg" general="_5DtswH2KEeqSHNFOHg2_Jw"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_SSgFUKG6EeqsNvCDUfZJVA" name="depth_multiplier">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Integer"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fDw2cKTdEeqmTOsCAzVBxg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_fD1u8KTdEeqmTOsCAzVBxg" value="*"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZHdK8KG6EeqsNvCDUfZJVA" name="depthwise_initializer">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_chtrUKG6EeqsNvCDUfZJVA" name="depthwise_regularizer">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_iro28KG6EeqsNvCDUfZJVA" name="depthwise_constraint">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_37PHIKStEeqmTOsCAzVBxg" name="LayerWithFilter" isAbstract="true">
+ <generalization xmi:type="uml:Generalization" xmi:id="_SbB_sKSuEeqmTOsCAzVBxg" general="_5DtswH2KEeqSHNFOHg2_Jw"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_NbNPsKSuEeqmTOsCAzVBxg" name="out_channels" visibility="public">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Integer"/>
+ </ownedAttribute>
+ </packagedElement>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Profile" xmi:id="_2_xEcJT2Eeq5BK6mmo2rWg" name="Padding_layers" URI="http://www.eclipse.org/papyrus/AIML/padding/1">
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_w6iwUIVYEeqlnrZTj0aPoA" name="Padding_layers" isAbstract="true">
+ <generalization xmi:type="uml:Generalization" xmi:id="_zb6SIIVeEeqlnrZTj0aPoA" general="_2E9coH2KEeqSHNFOHg2_Jw"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_UZswkIVZEeqlnrZTj0aPoA" name="padding">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Integer"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_nu1jQJOREeqnY_bZg2Ebjg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_nvC-oJOREeqnY_bZg2Ebjg" value="*"/>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_YlZU8IVZEeqlnrZTj0aPoA" name="ReflectionPad1d">
+ <generalization xmi:type="uml:Generalization" xmi:id="_zJF2EIVZEeqlnrZTj0aPoA" general="_w6iwUIVYEeqlnrZTj0aPoA"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_aphv4IVZEeqlnrZTj0aPoA" name="ReflectionPad2d">
+ <generalization xmi:type="uml:Generalization" xmi:id="_0IHqIIVZEeqlnrZTj0aPoA" general="_w6iwUIVYEeqlnrZTj0aPoA"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_cIwG8IVZEeqlnrZTj0aPoA" name="ReplicationPad1d">
+ <generalization xmi:type="uml:Generalization" xmi:id="_2srRkIVZEeqlnrZTj0aPoA" general="_w6iwUIVYEeqlnrZTj0aPoA"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_fdB7IIVZEeqlnrZTj0aPoA" name="ReplicationPad2d">
+ <generalization xmi:type="uml:Generalization" xmi:id="_3Rpm4IVZEeqlnrZTj0aPoA" general="_w6iwUIVYEeqlnrZTj0aPoA"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_gxtPEIVZEeqlnrZTj0aPoA" name="ReplicationPad3d">
+ <generalization xmi:type="uml:Generalization" xmi:id="_4uA3MIVZEeqlnrZTj0aPoA" general="_w6iwUIVYEeqlnrZTj0aPoA"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_kjrr4IVZEeqlnrZTj0aPoA" name="ZeroPad2d">
+ <generalization xmi:type="uml:Generalization" xmi:id="_5Tm3kIVZEeqlnrZTj0aPoA" general="_w6iwUIVYEeqlnrZTj0aPoA"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_mNvZ8IVZEeqlnrZTj0aPoA" name="ConstantPad1d">
+ <generalization xmi:type="uml:Generalization" xmi:id="_6g_QsIVZEeqlnrZTj0aPoA" general="_w6iwUIVYEeqlnrZTj0aPoA"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_okP-UIVZEeqlnrZTj0aPoA" name="ConstantPad2d">
+ <generalization xmi:type="uml:Generalization" xmi:id="_7KBmoIVZEeqlnrZTj0aPoA" general="_w6iwUIVYEeqlnrZTj0aPoA"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_sNFGMIVZEeqlnrZTj0aPoA" name="ConstantPad3d">
+ <generalization xmi:type="uml:Generalization" xmi:id="_7vcA0IVZEeqlnrZTj0aPoA" general="_w6iwUIVYEeqlnrZTj0aPoA"/>
+ </packagedElement>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Profile" xmi:id="_H7fbMJT2Eeq5BK6mmo2rWg" name="NonLinearActivations" URI="http://www.eclipse.org/papyrus/AIML/nonlinear/1">
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_AwFawIVbEeqlnrZTj0aPoA" name="Non-linear_activations_(weighted sum, nonlinearity)" isAbstract="true">
+ <generalization xmi:type="uml:Generalization" xmi:id="_21Ud8IVeEeqlnrZTj0aPoA" general="_2E9coH2KEeqSHNFOHg2_Jw"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_FFiYEIVbEeqlnrZTj0aPoA" name="ELU">
+ <generalization xmi:type="uml:Generalization" xmi:id="_ckA0sIVbEeqlnrZTj0aPoA" general="_Im3JwIVbEeqlnrZTj0aPoA"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MoLDEIVbEeqlnrZTj0aPoA" name="alpha">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Real"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_98TtsJm1Eeq0jfmjFzaebA"/>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_Im3JwIVbEeqlnrZTj0aPoA" name="Non-linear_activations_(weighted sum, nonlinearity)_1" isAbstract="true">
+ <generalization xmi:type="uml:Generalization" xmi:id="_dfBEYIVbEeqlnrZTj0aPoA" general="_AwFawIVbEeqlnrZTj0aPoA"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Ki9qEIVbEeqlnrZTj0aPoA" name="inplace">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="__5jdgJm1Eeq0jfmjFzaebA"/>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_O0zSsIVbEeqlnrZTj0aPoA" name="shrink" isAbstract="true">
+ <generalization xmi:type="uml:Generalization" xmi:id="_Kab40IVeEeqlnrZTj0aPoA" general="_AwFawIVbEeqlnrZTj0aPoA"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_QsGykIVbEeqlnrZTj0aPoA" name="lambd">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Real"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_EmVVsJm2Eeq0jfmjFzaebA"/>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_T1MDYIVbEeqlnrZTj0aPoA" name="LeakyReLU">
+ <generalization xmi:type="uml:Generalization" xmi:id="_dEj9AIVbEeqlnrZTj0aPoA" general="_Im3JwIVbEeqlnrZTj0aPoA"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_VlPEsIVbEeqlnrZTj0aPoA" name="negative_slope">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Real"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M9Ch8Jm2Eeq0jfmjFzaebA"/>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_hnumMIVbEeqlnrZTj0aPoA" name="LogSigmoid">
+ <generalization xmi:type="uml:Generalization" xmi:id="_g0PMYIVeEeqlnrZTj0aPoA" general="_AwFawIVbEeqlnrZTj0aPoA"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_mNXUkIVbEeqlnrZTj0aPoA" name="MultiheadAttention">
+ <generalization xmi:type="uml:Generalization" xmi:id="_gMwVoIVeEeqlnrZTj0aPoA" general="_AwFawIVbEeqlnrZTj0aPoA"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_oCRnwIVbEeqlnrZTj0aPoA" name="embed_dim">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Integer"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_pXDCUIVbEeqlnrZTj0aPoA" name="num_heads">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Integer"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_qHZhMIVbEeqlnrZTj0aPoA" name="dropout">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Real"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_UfYSAJm2Eeq0jfmjFzaebA"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_qxdK0IVbEeqlnrZTj0aPoA" name="bias">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_VpCBsJm2Eeq0jfmjFzaebA"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_rp_8YIVbEeqlnrZTj0aPoA" name="add_bias_kv ">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_aQ0sMJm2Eeq0jfmjFzaebA"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_uscZsIVbEeqlnrZTj0aPoA" name="add_zero_attn">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_a7QwUJm2Eeq0jfmjFzaebA"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_wd6XUIVbEeqlnrZTj0aPoA" name="kdim">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Integer"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_h7FCIJm2Eeq0jfmjFzaebA"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_w_bI8IVbEeqlnrZTj0aPoA" name="vdim">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Integer"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_jWzZQJm2Eeq0jfmjFzaebA"/>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_FyhkcIVcEeqlnrZTj0aPoA" name="PReLU">
+ <generalization xmi:type="uml:Generalization" xmi:id="_fZNY0IVeEeqlnrZTj0aPoA" general="_AwFawIVbEeqlnrZTj0aPoA"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_H7n-8IVcEeqlnrZTj0aPoA" name="num_parameters">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Integer"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_n_dmcJm2Eeq0jfmjFzaebA"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_J_NnUIVcEeqlnrZTj0aPoA" name="init">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Real"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_ot4LoJm2Eeq0jfmjFzaebA"/>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_PQkzQIVcEeqlnrZTj0aPoA" name="ReLU">
+ <generalization xmi:type="uml:Generalization" xmi:id="_WsaSsIVcEeqlnrZTj0aPoA" general="_Im3JwIVbEeqlnrZTj0aPoA"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_Q694gIVcEeqlnrZTj0aPoA" name="ReLU6">
+ <generalization xmi:type="uml:Generalization" xmi:id="_XLnXMIVcEeqlnrZTj0aPoA" general="_Im3JwIVbEeqlnrZTj0aPoA"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_T9yJQIVcEeqlnrZTj0aPoA" name="SELU">
+ <generalization xmi:type="uml:Generalization" xmi:id="_X3PuIIVcEeqlnrZTj0aPoA" general="_Im3JwIVbEeqlnrZTj0aPoA"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_oPGGUIVcEeqlnrZTj0aPoA" name="RReLU">
+ <generalization xmi:type="uml:Generalization" xmi:id="_yH-P8IVcEeqlnrZTj0aPoA" general="_Im3JwIVbEeqlnrZTj0aPoA"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_pyKbkIVcEeqlnrZTj0aPoA" name="lower">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Real"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_vYFZ0Jm2Eeq0jfmjFzaebA"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_qj-TAIVcEeqlnrZTj0aPoA" name="upper">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Real"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_v48EIJm2Eeq0jfmjFzaebA"/>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_uYqFkIVcEeqlnrZTj0aPoA" name="CELU">
+ <generalization xmi:type="uml:Generalization" xmi:id="_ymuBcIVcEeqlnrZTj0aPoA" general="_Im3JwIVbEeqlnrZTj0aPoA"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_vrowYIVcEeqlnrZTj0aPoA" name="alpha">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Real"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_2RN00Jm2Eeq0jfmjFzaebA"/>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_-FB30IVcEeqlnrZTj0aPoA" name="GELU">
+ <generalization xmi:type="uml:Generalization" xmi:id="_SfSgEIVeEeqlnrZTj0aPoA" general="_AwFawIVbEeqlnrZTj0aPoA"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="__HL4YIVcEeqlnrZTj0aPoA" name="Sigmoid">
+ <generalization xmi:type="uml:Generalization" xmi:id="_heXHcIVeEeqlnrZTj0aPoA" general="_AwFawIVbEeqlnrZTj0aPoA"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_AXPyEIVdEeqlnrZTj0aPoA" name="Softplus">
+ <generalization xmi:type="uml:Generalization" xmi:id="_LicCsIVeEeqlnrZTj0aPoA" general="_AwFawIVbEeqlnrZTj0aPoA"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_FZhZIIVdEeqlnrZTj0aPoA" name="beta">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Real"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_6rtDIJm2Eeq0jfmjFzaebA"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_KHN3UIVdEeqlnrZTj0aPoA" name="threshold">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Real"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_7RoasJm2Eeq0jfmjFzaebA"/>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_Q1o3IIVdEeqlnrZTj0aPoA" name="Softshrink">
+ <generalization xmi:type="uml:Generalization" xmi:id="_WoPu8IVdEeqlnrZTj0aPoA" general="_O0zSsIVbEeqlnrZTj0aPoA"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_Tr5SkIVdEeqlnrZTj0aPoA" name="Hardshrink">
+ <generalization xmi:type="uml:Generalization" xmi:id="_WKteYIVdEeqlnrZTj0aPoA" general="_O0zSsIVbEeqlnrZTj0aPoA"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_dgIz0IVdEeqlnrZTj0aPoA" name="Softsign">
+ <generalization xmi:type="uml:Generalization" xmi:id="_esL6wIVeEeqlnrZTj0aPoA" general="_AwFawIVbEeqlnrZTj0aPoA"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_ef3LcIVdEeqlnrZTj0aPoA" name="Tanhshrink">
+ <generalization xmi:type="uml:Generalization" xmi:id="_bY_rsIVeEeqlnrZTj0aPoA" general="_AwFawIVbEeqlnrZTj0aPoA"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_kIQXUIVdEeqlnrZTj0aPoA" name="Tanh">
+ <generalization xmi:type="uml:Generalization" xmi:id="_dbS6oIVeEeqlnrZTj0aPoA" general="_AwFawIVbEeqlnrZTj0aPoA"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_4wdxcIVdEeqlnrZTj0aPoA" name="Threshold">
+ <generalization xmi:type="uml:Generalization" xmi:id="_8qf-EIVdEeqlnrZTj0aPoA" general="_Im3JwIVbEeqlnrZTj0aPoA"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_6bNcAIVdEeqlnrZTj0aPoA" name="threshold">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Real"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_7aGGIIVdEeqlnrZTj0aPoA" name="value">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Integer"/>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_ymNBQJa5Eeq1-Ze45jZMTg" name="Hardtanh">
+ <generalization xmi:type="uml:Generalization" xmi:id="_CXDD0Ja6Eeq1-Ze45jZMTg" general="_Im3JwIVbEeqlnrZTj0aPoA"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_3HW4QJa5Eeq1-Ze45jZMTg" name="min_val">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Real"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_JS4kYJm2Eeq0jfmjFzaebA"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_60q3gJa5Eeq1-Ze45jZMTg" name="max_val">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Real"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_KluFQJm2Eeq0jfmjFzaebA"/>
+ </ownedAttribute>
+ </packagedElement>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Profile" xmi:id="_K1H6wJT2Eeq5BK6mmo2rWg" name="SoftMinMaxActivations" URI="http://www.eclipse.org/papyrus/AIML/softminmax/1">
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_HyCdwIVfEeqlnrZTj0aPoA" name="SoftMinMax" isAbstract="true">
+ <generalization xmi:type="uml:Generalization" xmi:id="_LHL_MIVgEeqlnrZTj0aPoA" general="_2E9coH2KEeqSHNFOHg2_Jw"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_en-TsIVfEeqlnrZTj0aPoA" name="SoftMinMax_1" isAbstract="true">
+ <generalization xmi:type="uml:Generalization" xmi:id="_98A-YIVfEeqlnrZTj0aPoA" general="_HyCdwIVfEeqlnrZTj0aPoA"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_f3_xIIVfEeqlnrZTj0aPoA" name="dim">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Integer"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_ZoGp4Jm3Eeq0jfmjFzaebA"/>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_lbyw4IVfEeqlnrZTj0aPoA" name="Softmin">
+ <generalization xmi:type="uml:Generalization" xmi:id="__rKAwIVfEeqlnrZTj0aPoA" general="_en-TsIVfEeqlnrZTj0aPoA"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_nBjNwIVfEeqlnrZTj0aPoA" name="Softmax">
+ <generalization xmi:type="uml:Generalization" xmi:id="__G9ukIVfEeqlnrZTj0aPoA" general="_en-TsIVfEeqlnrZTj0aPoA"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_n_v7YIVfEeqlnrZTj0aPoA" name="Softmax2d">
+ <generalization xmi:type="uml:Generalization" xmi:id="_9EA_YIVfEeqlnrZTj0aPoA" general="_HyCdwIVfEeqlnrZTj0aPoA"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_qeP-IIVfEeqlnrZTj0aPoA" name="LogSoftmax">
+ <generalization xmi:type="uml:Generalization" xmi:id="_-m_OAIVfEeqlnrZTj0aPoA" general="_en-TsIVfEeqlnrZTj0aPoA"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_vpbpkIVfEeqlnrZTj0aPoA" name="AdaptiveLogSoftmaxWithLoss">
+ <generalization xmi:type="uml:Generalization" xmi:id="_8okZgIVfEeqlnrZTj0aPoA" general="_HyCdwIVfEeqlnrZTj0aPoA"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_zzHbwIVfEeqlnrZTj0aPoA" name="in_features">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Integer"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_09lDwIVfEeqlnrZTj0aPoA" name="n_classes">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Integer"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_1jP8oIVfEeqlnrZTj0aPoA" name="cutoffs">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Integer"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_PeizoJa8Eeq1-Ze45jZMTg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Peo6QJa8Eeq1-Ze45jZMTg" value="*"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_2sVroIVfEeqlnrZTj0aPoA" name="div_value">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Real"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g9ne4Jm3Eeq0jfmjFzaebA"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_3ZGrAIVfEeqlnrZTj0aPoA" name="head_biais">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hkG3IJm3Eeq0jfmjFzaebA"/>
+ </ownedAttribute>
+ </packagedElement>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Profile" xmi:id="_N5zMsJT2Eeq5BK6mmo2rWg" name="Normalization_layers" URI="http://www.eclipse.org/papyrus/AIML/normalization/1">
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_ws_i4IVgEeqlnrZTj0aPoA" name="Normalization_layers" isAbstract="true">
+ <generalization xmi:type="uml:Generalization" xmi:id="_l2TbQIViEeqlnrZTj0aPoA" general="_2E9coH2KEeqSHNFOHg2_Jw"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_2ZKbgIVgEeqlnrZTj0aPoA" name="Normalization_layers_1" isAbstract="true">
+ <generalization xmi:type="uml:Generalization" xmi:id="_UxrSEIVhEeqlnrZTj0aPoA" general="_ws_i4IVgEeqlnrZTj0aPoA"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_4_83kIVgEeqlnrZTj0aPoA" name="eps">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Real"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_w8xDMJm3Eeq0jfmjFzaebA"/>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_GstigIVhEeqlnrZTj0aPoA" name="LayerNorm">
+ <generalization xmi:type="uml:Generalization" xmi:id="_WYnasIVhEeqlnrZTj0aPoA" general="_2ZKbgIVgEeqlnrZTj0aPoA"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_KI-OAIVhEeqlnrZTj0aPoA" name="normalized_shape">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Integer"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_EiCX4Ja-Eeq1-Ze45jZMTg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_EiGpUJa-Eeq1-Ze45jZMTg" value="*"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_OsXgsIVhEeqlnrZTj0aPoA" name="elementwise_affine">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_A4e5AJm4Eeq0jfmjFzaebA"/>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_ILIBQIVhEeqlnrZTj0aPoA" name="LocalResponseNorm">
+ <generalization xmi:type="uml:Generalization" xmi:id="_UQtTAIVhEeqlnrZTj0aPoA" general="_ws_i4IVgEeqlnrZTj0aPoA"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Qt56oIVhEeqlnrZTj0aPoA" name="size">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Integer"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_RjEoEIVhEeqlnrZTj0aPoA" name="alpha">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Real"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Ja0GcJm4Eeq0jfmjFzaebA"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_SBd0QIVhEeqlnrZTj0aPoA" name="beta">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Real"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_KkqDYJm4Eeq0jfmjFzaebA"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_SVdHQIVhEeqlnrZTj0aPoA" name="k">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Real"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_NPhHIJm4Eeq0jfmjFzaebA"/>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_bf7SwIVhEeqlnrZTj0aPoA" name="Normalization_layers_1_1">
+ <generalization xmi:type="uml:Generalization" xmi:id="_sCPOgIVhEeqlnrZTj0aPoA" general="_2ZKbgIVgEeqlnrZTj0aPoA"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gvtxYIVhEeqlnrZTj0aPoA" name="affine">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_ut1GcJm3Eeq0jfmjFzaebA"/>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_fbbfAIVhEeqlnrZTj0aPoA" name="Normalization_layers_1_1_1" isAbstract="true">
+ <generalization xmi:type="uml:Generalization" xmi:id="_67JjgIVhEeqlnrZTj0aPoA" general="_bf7SwIVhEeqlnrZTj0aPoA"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_iVdAIIVhEeqlnrZTj0aPoA" name="num_features">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Integer"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ygFbsIVhEeqlnrZTj0aPoA" name="momentum">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Real"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_rCxxAJm3Eeq0jfmjFzaebA"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_2tKgIIVhEeqlnrZTj0aPoA" name="track_running_stats ">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_sTlRkJm3Eeq0jfmjFzaebA"/>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_kVSw8IVhEeqlnrZTj0aPoA" name="GroupNorm">
+ <generalization xmi:type="uml:Generalization" xmi:id="_qWp2cIVhEeqlnrZTj0aPoA" general="_bf7SwIVhEeqlnrZTj0aPoA"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_mNNU0IVhEeqlnrZTj0aPoA" name="num_groups">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Integer"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_njZrsIVhEeqlnrZTj0aPoA" name="num_channels">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Integer"/>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_BDZUIIViEeqlnrZTj0aPoA" name="BatchNorm1d">
+ <generalization xmi:type="uml:Generalization" xmi:id="_XsCU8IViEeqlnrZTj0aPoA" general="_fbbfAIVhEeqlnrZTj0aPoA"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_ELXxsIViEeqlnrZTj0aPoA" name="BatchNorm2d">
+ <generalization xmi:type="uml:Generalization" xmi:id="_YkOhMIViEeqlnrZTj0aPoA" general="_fbbfAIVhEeqlnrZTj0aPoA"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_GDAowIViEeqlnrZTj0aPoA" name="BatchNorm3d">
+ <generalization xmi:type="uml:Generalization" xmi:id="_ZlFhQIViEeqlnrZTj0aPoA" general="_fbbfAIVhEeqlnrZTj0aPoA"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_Ikef8IViEeqlnrZTj0aPoA" name="SyncBatchNorm">
+ <generalization xmi:type="uml:Generalization" xmi:id="_aLhPIIViEeqlnrZTj0aPoA" general="_fbbfAIVhEeqlnrZTj0aPoA"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_K2rMEIViEeqlnrZTj0aPoA" name="process_group ">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Integer"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_kXoF4Ja9Eeq1-Ze45jZMTg"/>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_OF6vQIViEeqlnrZTj0aPoA" name="InstanceNorm1d">
+ <generalization xmi:type="uml:Generalization" xmi:id="_alo_UIViEeqlnrZTj0aPoA" general="_fbbfAIVhEeqlnrZTj0aPoA"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_RKVigIViEeqlnrZTj0aPoA" name="InstanceNorm2d">
+ <generalization xmi:type="uml:Generalization" xmi:id="_a9amIIViEeqlnrZTj0aPoA" general="_fbbfAIVhEeqlnrZTj0aPoA"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_SiGmsIViEeqlnrZTj0aPoA" name="InstanceNorm3d">
+ <generalization xmi:type="uml:Generalization" xmi:id="_baXn4IViEeqlnrZTj0aPoA" general="_fbbfAIVhEeqlnrZTj0aPoA"/>
+ </packagedElement>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Profile" xmi:id="_RAjiQJT2Eeq5BK6mmo2rWg" name="Recurrent_layers" URI="http://www.eclipse.org/papyrus/AIML/recurrent/1">
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_tHLn4IViEeqlnrZTj0aPoA" name="Recurrent_layers" isAbstract="true">
+ <generalization xmi:type="uml:Generalization" xmi:id="_wK-eIIVkEeqlnrZTj0aPoA" general="_2E9coH2KEeqSHNFOHg2_Jw"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_495hwIVjEeqlnrZTj0aPoA" name="input_size">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Integer"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_6la5MIVjEeqlnrZTj0aPoA" name="hidden_size">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Integer"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_7-lrkIVjEeqlnrZTj0aPoA" name="bias_pt">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Wl610Jm4Eeq0jfmjFzaebA"/>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_w_eSoIVjEeqlnrZTj0aPoA" name="Recurrent_layers_1" isAbstract="true">
+ <generalization xmi:type="uml:Generalization" xmi:id="_tTUUgIVkEeqlnrZTj0aPoA" general="_tHLn4IViEeqlnrZTj0aPoA"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Mgv2UIVkEeqlnrZTj0aPoA" name="num_layers">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Integer"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_TrfFAJm4Eeq0jfmjFzaebA"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_NmsKsIVkEeqlnrZTj0aPoA" name="batch_first_pt">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_X3E7sJm4Eeq0jfmjFzaebA"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_bIpT0IVkEeqlnrZTj0aPoA" name="dropout">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Real"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Y93koJm4Eeq0jfmjFzaebA"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_dH_VYIVkEeqlnrZTj0aPoA" name="bidirectional_pt">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_aMeFwJm4Eeq0jfmjFzaebA"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_GM1kwKaAEeqIr7xwFiWQGQ" name="activation">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_LrZ0UKaCEeqIr7xwFiWQGQ"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M26QEKaAEeqIr7xwFiWQGQ" name="recurrent_activation">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_K3rRUKaCEeqIr7xwFiWQGQ"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_OalCQKaAEeqIr7xwFiWQGQ" name="use_bias">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_GrLbsKaCEeqIr7xwFiWQGQ"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_PFb9IKaAEeqIr7xwFiWQGQ" name="kernel_initializer">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_HS90cKaCEeqIr7xwFiWQGQ"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_TQ4C0KaAEeqIr7xwFiWQGQ" name="recurrent_initializer">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_H5oL0KaCEeqIr7xwFiWQGQ"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_uo4gUKaBEeqIr7xwFiWQGQ" name="bias_initializer">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_IYw-4KaCEeqIr7xwFiWQGQ"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_zjmG0KaBEeqIr7xwFiWQGQ" name="return_sequences">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_AcN_EKaCEeqIr7xwFiWQGQ"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_0y_SIKaBEeqIr7xwFiWQGQ" name="return_state">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="__7OK0KaBEeqIr7xwFiWQGQ"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_7QlAoKaBEeqIr7xwFiWQGQ" name="bidirectional_k" type="_w_eSoIVjEeqlnrZTj0aPoA">
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="__B1EsKaBEeqIr7xwFiWQGQ"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ugELMOauEeq2yMJqys2DtQ" name="recurrent_dropout">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Real"/>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_-5MbgIVjEeqlnrZTj0aPoA" name="RNNCell">
+ <generalization xmi:type="uml:Generalization" xmi:id="_rjgjwIVkEeqlnrZTj0aPoA" general="_tHLn4IViEeqlnrZTj0aPoA"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_AP36kIVkEeqlnrZTj0aPoA" name="nonlinearity">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_eMdwcJm4Eeq0jfmjFzaebA"/>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_CfAEkIVkEeqlnrZTj0aPoA" name="LSTMCell">
+ <generalization xmi:type="uml:Generalization" xmi:id="_sMLGQIVkEeqlnrZTj0aPoA" general="_tHLn4IViEeqlnrZTj0aPoA"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_EdBQcIVkEeqlnrZTj0aPoA" name="GRUCell">
+ <generalization xmi:type="uml:Generalization" xmi:id="_svnxkIVkEeqlnrZTj0aPoA" general="_tHLn4IViEeqlnrZTj0aPoA"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_f3AgYIVkEeqlnrZTj0aPoA" name="RNN">
+ <generalization xmi:type="uml:Generalization" xmi:id="_pXFIcIVkEeqlnrZTj0aPoA" general="_w_eSoIVjEeqlnrZTj0aPoA"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_iaV_0IVkEeqlnrZTj0aPoA" name="nonlinearity">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_U0sIwJm4Eeq0jfmjFzaebA"/>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_kOLU8IVkEeqlnrZTj0aPoA" name="LSTM">
+ <generalization xmi:type="uml:Generalization" xmi:id="_p2PwsIVkEeqlnrZTj0aPoA" general="_w_eSoIVjEeqlnrZTj0aPoA"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_l8ROcIVkEeqlnrZTj0aPoA" name="GRU">
+ <generalization xmi:type="uml:Generalization" xmi:id="_qv_cIIVkEeqlnrZTj0aPoA" general="_w_eSoIVjEeqlnrZTj0aPoA"/>
+ </packagedElement>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Profile" xmi:id="_T8DDAJT2Eeq5BK6mmo2rWg" name="Transformer_layers" URI="http://www.eclipse.org/papyrus/AIML/transformer/1">
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_zItakIVkEeqlnrZTj0aPoA" name="Transformer_layers" isAbstract="true">
+ <generalization xmi:type="uml:Generalization" xmi:id="_boLdkIVmEeqlnrZTj0aPoA" general="_2E9coH2KEeqSHNFOHg2_Jw"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_gsKxUIVlEeqlnrZTj0aPoA" name="Transformer_layers_1" isAbstract="true">
+ <generalization xmi:type="uml:Generalization" xmi:id="_SF09kIVmEeqlnrZTj0aPoA" general="_zItakIVkEeqlnrZTj0aPoA"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_sbCMMIVlEeqlnrZTj0aPoA" name="d_model">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Integer"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_ji0xIJm4Eeq0jfmjFzaebA"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_tmddgIVlEeqlnrZTj0aPoA" name="nhead">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Integer"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_kiISAJm4Eeq0jfmjFzaebA"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_uFbRcIVlEeqlnrZTj0aPoA" name="dim_feedforward">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Integer"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_l1McYJm4Eeq0jfmjFzaebA"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_v6pGoIVlEeqlnrZTj0aPoA" name="dropout">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Real"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_nHZEEJm4Eeq0jfmjFzaebA"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_wuIZEIVlEeqlnrZTj0aPoA" name="activation">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_oOnK0Jm4Eeq0jfmjFzaebA"/>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_kfJ6wIVlEeqlnrZTj0aPoA" name="Transformer_layers_2" isAbstract="true">
+ <generalization xmi:type="uml:Generalization" xmi:id="_RehtAIVmEeqlnrZTj0aPoA" general="_zItakIVkEeqlnrZTj0aPoA"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_mZVvgIVlEeqlnrZTj0aPoA" name="num_layers">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Integer"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_oByUAIVlEeqlnrZTj0aPoA" name="norm" type="_GstigIVhEeqlnrZTj0aPoA">
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_QmjgMJkPEeqONqmgJcdSKw"/>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_0gXUkIVlEeqlnrZTj0aPoA" name="Transformer">
+ <generalization xmi:type="uml:Generalization" xmi:id="_GMzhIIVmEeqlnrZTj0aPoA" general="_gsKxUIVlEeqlnrZTj0aPoA"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_2FyaQIVlEeqlnrZTj0aPoA" name="num_encoder_layers ">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Integer"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_4EeUgIVlEeqlnrZTj0aPoA" name="num_decoder_layers ">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Integer"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_606b0IVlEeqlnrZTj0aPoA" name="custom_encoder" type="_JjphIIVmEeqlnrZTj0aPoA"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_8LVcMIVlEeqlnrZTj0aPoA" name="custom_decoder" type="_Ku6aYIVmEeqlnrZTj0aPoA"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_-aqagIVlEeqlnrZTj0aPoA" name="TransformerDecoderLayer">
+ <generalization xmi:type="uml:Generalization" xmi:id="_GrExgIVmEeqlnrZTj0aPoA" general="_gsKxUIVlEeqlnrZTj0aPoA"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_AIIo8IVmEeqlnrZTj0aPoA" name="TransformerEncoderLayer">
+ <generalization xmi:type="uml:Generalization" xmi:id="_HJqyAIVmEeqlnrZTj0aPoA" general="_gsKxUIVlEeqlnrZTj0aPoA"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_JjphIIVmEeqlnrZTj0aPoA" name="TransformerEncoder">
+ <generalization xmi:type="uml:Generalization" xmi:id="_P0nv8IVmEeqlnrZTj0aPoA" general="_kfJ6wIVlEeqlnrZTj0aPoA"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Nai6MIVmEeqlnrZTj0aPoA" name="encoder_layer" type="_AIIo8IVmEeqlnrZTj0aPoA"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_Ku6aYIVmEeqlnrZTj0aPoA" name="TransformerDecoder">
+ <generalization xmi:type="uml:Generalization" xmi:id="_QhQMcIVmEeqlnrZTj0aPoA" general="_kfJ6wIVlEeqlnrZTj0aPoA"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MA0HIIVmEeqlnrZTj0aPoA" name="decoder_layer" type="_-aqagIVlEeqlnrZTj0aPoA"/>
+ </packagedElement>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Profile" xmi:id="_WwqfsJT2Eeq5BK6mmo2rWg" name="Linear_layers" URI="http://www.eclipse.org/papyrus/AIML/linear/1">
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_ThvuQIhhEeqlnrZTj0aPoA" name="Linear_layers" isAbstract="true">
+ <generalization xmi:type="uml:Generalization" xmi:id="_-em2MIhhEeqlnrZTj0aPoA" general="_2E9coH2KEeqSHNFOHg2_Jw"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_c_eM8IhhEeqlnrZTj0aPoA" name="Identity">
+ <generalization xmi:type="uml:Generalization" xmi:id="_5QYd0IhhEeqlnrZTj0aPoA" general="_ThvuQIhhEeqlnrZTj0aPoA"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_hGyAkIhhEeqlnrZTj0aPoA" name="Linear_layers_1" isAbstract="true">
+ <generalization xmi:type="uml:Generalization" xmi:id="_58n4wIhhEeqlnrZTj0aPoA" general="_ThvuQIhhEeqlnrZTj0aPoA"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_lYOnoIhhEeqlnrZTj0aPoA" name="out_features">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Integer"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_m2y3YIhhEeqlnrZTj0aPoA" name="bias">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_CJq-oJm5Eeq0jfmjFzaebA"/>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_ozz9sIhhEeqlnrZTj0aPoA" name="Linear">
+ <generalization xmi:type="uml:Generalization" xmi:id="_4MFvQIhhEeqlnrZTj0aPoA" general="_hGyAkIhhEeqlnrZTj0aPoA"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_snPzEIhhEeqlnrZTj0aPoA" name="in_features">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Integer"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_p0kxsKZeEeqIr7xwFiWQGQ"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_1w4LoKZeEeqIr7xwFiWQGQ" name="activation">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_4qNwQKZeEeqIr7xwFiWQGQ"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_eJ6SoKZkEeqIr7xwFiWQGQ" name="kernel_initializer">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_kdiM0KZkEeqIr7xwFiWQGQ"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_f9qvQKZkEeqIr7xwFiWQGQ" name="bias_initializer">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_lFPGAKZkEeqIr7xwFiWQGQ"/>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_pJFqIIhhEeqlnrZTj0aPoA" name="Bilinear">
+ <generalization xmi:type="uml:Generalization" xmi:id="_4ugf0IhhEeqlnrZTj0aPoA" general="_hGyAkIhhEeqlnrZTj0aPoA"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_u5YNwIhhEeqlnrZTj0aPoA" name="in1_features">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Integer"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_wboqsIhhEeqlnrZTj0aPoA" name="in2_features">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Integer"/>
+ </ownedAttribute>
+ </packagedElement>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Profile" xmi:id="_ZUMzcJT2Eeq5BK6mmo2rWg" name="Dropout_layers" URI="http://www.eclipse.org/papyrus/AIML/dropout/1">
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_JJr40IhiEeqlnrZTj0aPoA" name="Dropout_layers" isAbstract="true">
+ <generalization xmi:type="uml:Generalization" xmi:id="_yLebMIhiEeqlnrZTj0aPoA" general="_2E9coH2KEeqSHNFOHg2_Jw"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_L5uXgIhiEeqlnrZTj0aPoA" name="p">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Real"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_HnWvUJm5Eeq0jfmjFzaebA"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Mxr6QIhiEeqlnrZTj0aPoA" name="inplace">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_IwBAgJm5Eeq0jfmjFzaebA"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_k7wEsKcmEeqkzM30xo7jnw" name="noise_shape">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Integer"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_pP1wEKcmEeqkzM30xo7jnw"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_tivIoKcmEeqkzM30xo7jnw" value="*"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_m_lksKcmEeqkzM30xo7jnw" name="seed">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Integer"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_oaD-oKcmEeqkzM30xo7jnw"/>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_O7XjkIhiEeqlnrZTj0aPoA" name="Dropout">
+ <generalization xmi:type="uml:Generalization" xmi:id="_rp92AIhiEeqlnrZTj0aPoA" general="_JJr40IhiEeqlnrZTj0aPoA"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_PMP4MIhiEeqlnrZTj0aPoA" name="Dropout2d">
+ <generalization xmi:type="uml:Generalization" xmi:id="_sKSU0IhiEeqlnrZTj0aPoA" general="_JJr40IhiEeqlnrZTj0aPoA"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_Proi4IhiEeqlnrZTj0aPoA" name="Dropout3d">
+ <generalization xmi:type="uml:Generalization" xmi:id="_srztgIhiEeqlnrZTj0aPoA" general="_JJr40IhiEeqlnrZTj0aPoA"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_QF418IhiEeqlnrZTj0aPoA" name="AlphaDropout">
+ <generalization xmi:type="uml:Generalization" xmi:id="_t3zmkIhiEeqlnrZTj0aPoA" general="_JJr40IhiEeqlnrZTj0aPoA"/>
+ </packagedElement>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Profile" xmi:id="_cKwJ0JT2Eeq5BK6mmo2rWg" name="Sparse_layers" URI="http://www.eclipse.org/papyrus/AIML/sparse/1">
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_AdGtwIhjEeqlnrZTj0aPoA" name="Sparse_layers" isAbstract="true">
+ <generalization xmi:type="uml:Generalization" xmi:id="_LRL6YIhuEeqlnrZTj0aPoA" general="_2E9coH2KEeqSHNFOHg2_Jw"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_nWwe8IhjEeqlnrZTj0aPoA" name="num_embeddings">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Integer"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_p2G2QIhjEeqlnrZTj0aPoA" name="embedding_dim">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Integer"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_sIOC0IhjEeqlnrZTj0aPoA" name="max_norm">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Real"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_bTBBoJm5Eeq0jfmjFzaebA"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_tKafoIhjEeqlnrZTj0aPoA" name="norm_type ">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Real"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Z3v9gJm5Eeq0jfmjFzaebA"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_vicuAIhjEeqlnrZTj0aPoA" name="sparse">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_cMUoMJm5Eeq0jfmjFzaebA"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_UjbkMJm5Eeq0jfmjFzaebA" name="scale_grad_by_freq">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Yh-dYJm5Eeq0jfmjFzaebA"/>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_HDvqkIhjEeqlnrZTj0aPoA" name="Embedding">
+ <generalization xmi:type="uml:Generalization" xmi:id="_7zj6UIhjEeqlnrZTj0aPoA" general="_AdGtwIhjEeqlnrZTj0aPoA"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_w7GjAIhjEeqlnrZTj0aPoA" name="padding_idx">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Integer"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_OQu3EJm5Eeq0jfmjFzaebA"/>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_kIoWEIhjEeqlnrZTj0aPoA" name="EmbeddingBag">
+ <generalization xmi:type="uml:Generalization" xmi:id="_8S-aMIhjEeqlnrZTj0aPoA" general="_AdGtwIhjEeqlnrZTj0aPoA"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ytrT4IhjEeqlnrZTj0aPoA" name="mode">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fOtbIJm5Eeq0jfmjFzaebA"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_z2sxcIhjEeqlnrZTj0aPoA" name="include_last_offset">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_eRKNwJm5Eeq0jfmjFzaebA"/>
+ </ownedAttribute>
+ </packagedElement>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Profile" xmi:id="_fjUoIJT2Eeq5BK6mmo2rWg" name="Distance_functions" URI="http://www.eclipse.org/papyrus/AIML/distance/1">
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_9-4iYIhjEeqlnrZTj0aPoA" name="Distance_functions" isAbstract="true">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MC8HcIhuEeqlnrZTj0aPoA" general="_2E9coH2KEeqSHNFOHg2_Jw"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_D1Gu4IhkEeqlnrZTj0aPoA" name="eps">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Real"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_ibLXIJm5Eeq0jfmjFzaebA"/>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_Ff9uMIhkEeqlnrZTj0aPoA" name="CosineSimilarity">
+ <generalization xmi:type="uml:Generalization" xmi:id="_QjaNgIhkEeqlnrZTj0aPoA" general="_9-4iYIhjEeqlnrZTj0aPoA"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_JmnagIhkEeqlnrZTj0aPoA" name="dim">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Integer"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_j5bd0Jm5Eeq0jfmjFzaebA"/>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_F-SB4IhkEeqlnrZTj0aPoA" name="PairwiseDistance">
+ <generalization xmi:type="uml:Generalization" xmi:id="_RFcjkIhkEeqlnrZTj0aPoA" general="_9-4iYIhjEeqlnrZTj0aPoA"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Km4ksIhkEeqlnrZTj0aPoA" name="p">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Real"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_lHLDUJm5Eeq0jfmjFzaebA"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_LieqQIhkEeqlnrZTj0aPoA" name="keepdim">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_m257kJm5Eeq0jfmjFzaebA"/>
+ </ownedAttribute>
+ </packagedElement>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Profile" xmi:id="_nZcP0JT2Eeq5BK6mmo2rWg" name="Loss_functions" URI="http://www.eclipse.org/papyrus/AIML/loss/1">
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_oNze4IhnEeqlnrZTj0aPoA" name="Loss_functions" isAbstract="true">
+ <generalization xmi:type="uml:Generalization" xmi:id="_N1r3cIhuEeqlnrZTj0aPoA" general="_2E9coH2KEeqSHNFOHg2_Jw"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_qCV-oIhnEeqlnrZTj0aPoA" name="reduction">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_uln6wJm5Eeq0jfmjFzaebA"/>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_F2VqAIhoEeqlnrZTj0aPoA" name="Loss_functions_1" isAbstract="true">
+ <generalization xmi:type="uml:Generalization" xmi:id="_YyIeQIhrEeqlnrZTj0aPoA" general="_oNze4IhnEeqlnrZTj0aPoA"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Hr6rkIhoEeqlnrZTj0aPoA" name="size_average">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_rdnoAJm5Eeq0jfmjFzaebA"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_KRcjYIhoEeqlnrZTj0aPoA" name="reduce">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_5DoKsJm5Eeq0jfmjFzaebA"/>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_UW5JYIhoEeqlnrZTj0aPoA" name="L1Loss">
+ <generalization xmi:type="uml:Generalization" xmi:id="_PzV-UIhrEeqlnrZTj0aPoA" general="_F2VqAIhoEeqlnrZTj0aPoA"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_XkZnMIhoEeqlnrZTj0aPoA" name="MSELoss">
+ <generalization xmi:type="uml:Generalization" xmi:id="_PLRRsIhrEeqlnrZTj0aPoA" general="_F2VqAIhoEeqlnrZTj0aPoA"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_dgekEIhoEeqlnrZTj0aPoA" name="CTCLoss">
+ <generalization xmi:type="uml:Generalization" xmi:id="_YDZI8IhrEeqlnrZTj0aPoA" general="_oNze4IhnEeqlnrZTj0aPoA"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_fsyDkIhoEeqlnrZTj0aPoA" name="blank">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Integer"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_9WJIwJm5Eeq0jfmjFzaebA"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_g54v4IhoEeqlnrZTj0aPoA" name="zero_infinity">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_-SKFEJm5Eeq0jfmjFzaebA"/>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_sYrucIhoEeqlnrZTj0aPoA" name="KLDivLoss">
+ <generalization xmi:type="uml:Generalization" xmi:id="_Ojop8IhrEeqlnrZTj0aPoA" general="_F2VqAIhoEeqlnrZTj0aPoA"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_yCiS4IhoEeqlnrZTj0aPoA" name="MultiLabelMarginLoss">
+ <generalization xmi:type="uml:Generalization" xmi:id="_OBMEMIhrEeqlnrZTj0aPoA" general="_F2VqAIhoEeqlnrZTj0aPoA"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_TXEOoIhpEeqlnrZTj0aPoA" name="Loss_functions_1_1">
+ <generalization xmi:type="uml:Generalization" xmi:id="_KmOZMIhrEeqlnrZTj0aPoA" general="_F2VqAIhoEeqlnrZTj0aPoA"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_dvGZcIhpEeqlnrZTj0aPoA" name="margin">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Real"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_WdeZkJm6Eeq0jfmjFzaebA"/>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_cSDMoIhpEeqlnrZTj0aPoA" name="Loss_functions_1_2">
+ <generalization xmi:type="uml:Generalization" xmi:id="_L6mLIIhrEeqlnrZTj0aPoA" general="_F2VqAIhoEeqlnrZTj0aPoA"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_e4iGsIhpEeqlnrZTj0aPoA" name="weight" type="_kkWnwIhuEeqlnrZTj0aPoA">
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_2lla8Jm5Eeq0jfmjFzaebA"/>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_o24mMIhpEeqlnrZTj0aPoA" name="CosineEmbeddingLoss">
+ <generalization xmi:type="uml:Generalization" xmi:id="_sErX4IhpEeqlnrZTj0aPoA" general="_TXEOoIhpEeqlnrZTj0aPoA"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_uaWOwIhpEeqlnrZTj0aPoA" name="MarginRankingLoss">
+ <generalization xmi:type="uml:Generalization" xmi:id="_zEGoIIhpEeqlnrZTj0aPoA" general="_TXEOoIhpEeqlnrZTj0aPoA"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_v673wIhpEeqlnrZTj0aPoA" name="HingeEmbeddingLoss">
+ <generalization xmi:type="uml:Generalization" xmi:id="_0GpqQIhpEeqlnrZTj0aPoA" general="_TXEOoIhpEeqlnrZTj0aPoA"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_6OX2cIhpEeqlnrZTj0aPoA" name="BCELoss">
+ <generalization xmi:type="uml:Generalization" xmi:id="_7bTjoIhpEeqlnrZTj0aPoA" general="_cSDMoIhpEeqlnrZTj0aPoA"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_DrSc0IhqEeqlnrZTj0aPoA" name="Loss_functions_1_1_1" isAbstract="true">
+ <generalization xmi:type="uml:Generalization" xmi:id="_UcGuoIhqEeqlnrZTj0aPoA" general="_TXEOoIhpEeqlnrZTj0aPoA"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_HB3XEIhqEeqlnrZTj0aPoA" name="p">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Integer"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_kKr7AJm7Eeq0jfmjFzaebA"/>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_JaQx0IhqEeqlnrZTj0aPoA" name="MultiMarginLoss">
+ <generalization xmi:type="uml:Generalization" xmi:id="_THXJQIhqEeqlnrZTj0aPoA" general="_DrSc0IhqEeqlnrZTj0aPoA"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_NFUHQIhqEeqlnrZTj0aPoA" name="weight" type="_kkWnwIhuEeqlnrZTj0aPoA">
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_l5gNQJm7Eeq0jfmjFzaebA"/>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_J1LMMIhqEeqlnrZTj0aPoA" name="TripletMarginLoss">
+ <generalization xmi:type="uml:Generalization" xmi:id="_ToeSQIhqEeqlnrZTj0aPoA" general="_DrSc0IhqEeqlnrZTj0aPoA"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_LlDOYIhqEeqlnrZTj0aPoA" name="swap">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_oP2ZkJm7Eeq0jfmjFzaebA"/>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_hqxIUIhqEeqlnrZTj0aPoA" name="Loss_functions_1_2_1" isAbstract="true">
+ <generalization xmi:type="uml:Generalization" xmi:id="_uCkygIhqEeqlnrZTj0aPoA" general="_cSDMoIhpEeqlnrZTj0aPoA"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_kXdYEIhqEeqlnrZTj0aPoA" name="ignore_index">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Integer"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_1CvIIJm5Eeq0jfmjFzaebA"/>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_oavnUIhqEeqlnrZTj0aPoA" name="CrossEntropyLoss">
+ <generalization xmi:type="uml:Generalization" xmi:id="_rT8pEIhqEeqlnrZTj0aPoA" general="_hqxIUIhqEeqlnrZTj0aPoA"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_pWuucIhqEeqlnrZTj0aPoA" name="NLLLoss">
+ <generalization xmi:type="uml:Generalization" xmi:id="_qQK34IhqEeqlnrZTj0aPoA" general="_hqxIUIhqEeqlnrZTj0aPoA"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_0iSA4IhqEeqlnrZTj0aPoA" name="PoissonNLLLoss">
+ <generalization xmi:type="uml:Generalization" xmi:id="_H58ZIIhrEeqlnrZTj0aPoA" general="_cSDMoIhpEeqlnrZTj0aPoA"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_4J95QIhqEeqlnrZTj0aPoA" name="log_input">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_GinfYJm6Eeq0jfmjFzaebA"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_5TNZQIhqEeqlnrZTj0aPoA" name="full">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Hc-14Jm6Eeq0jfmjFzaebA"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_6KGlAIhqEeqlnrZTj0aPoA" name="eps">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Real"/>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_1ml9kIhqEeqlnrZTj0aPoA" name="BCEWithLogitsLoss">
+ <generalization xmi:type="uml:Generalization" xmi:id="_HRZLYIhrEeqlnrZTj0aPoA" general="_cSDMoIhpEeqlnrZTj0aPoA"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_2xgRgIhqEeqlnrZTj0aPoA" name="pos_weight" type="_kkWnwIhuEeqlnrZTj0aPoA">
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_ScaX4Jm6Eeq0jfmjFzaebA"/>
+ </ownedAttribute>
+ </packagedElement>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Profile" xmi:id="_q6FsEJT2Eeq5BK6mmo2rWg" name="Vision_layers" URI="http://www.eclipse.org/papyrus/AIML/vision/1">
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_iLwgEIhrEeqlnrZTj0aPoA" name="Vision_layers" isAbstract="true">
+ <generalization xmi:type="uml:Generalization" xmi:id="_SZKCoIhuEeqlnrZTj0aPoA" general="_2E9coH2KEeqSHNFOHg2_Jw"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_t32TwIhrEeqlnrZTj0aPoA" name="Vision_layers_1" isAbstract="true">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MhVlkIhsEeqlnrZTj0aPoA" general="_iLwgEIhrEeqlnrZTj0aPoA"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_xJ4sQIhrEeqlnrZTj0aPoA" name="size" visibility="public">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Integer"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fHduoJbPEeq1-Ze45jZMTg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_fHtmQJbPEeq1-Ze45jZMTg" value="*"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_yEO0oIhrEeqlnrZTj0aPoA" name="scale_factor">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Real"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_gjTagJbPEeq1-Ze45jZMTg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_gjhc8JbPEeq1-Ze45jZMTg" value="*"/>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_2p5YMIhrEeqlnrZTj0aPoA" name="PixelShuffle">
+ <generalization xmi:type="uml:Generalization" xmi:id="_L7Zm8IhsEeqlnrZTj0aPoA" general="_iLwgEIhrEeqlnrZTj0aPoA"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_507w0IhrEeqlnrZTj0aPoA" name="upscale_factor">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Integer"/>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_9D3yAIhrEeqlnrZTj0aPoA" name="Upsample">
+ <generalization xmi:type="uml:Generalization" xmi:id="_KFjfoIhsEeqlnrZTj0aPoA" general="_t32TwIhrEeqlnrZTj0aPoA"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_-r78AIhrEeqlnrZTj0aPoA" name="mode">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_yqxgUJm7Eeq0jfmjFzaebA"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="___G0EIhrEeqlnrZTj0aPoA" name="align_corners">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_ziJNMJm7Eeq0jfmjFzaebA"/>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_ExzHAIhsEeqlnrZTj0aPoA" name="UpsamplingNearest2d">
+ <generalization xmi:type="uml:Generalization" xmi:id="_KqD64IhsEeqlnrZTj0aPoA" general="_t32TwIhrEeqlnrZTj0aPoA"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_FiUlAIhsEeqlnrZTj0aPoA" name="UpsamplingBilinear2d">
+ <generalization xmi:type="uml:Generalization" xmi:id="_LUKn0IhsEeqlnrZTj0aPoA" general="_t32TwIhrEeqlnrZTj0aPoA"/>
+ </packagedElement>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Profile" xmi:id="_wBUroJT2Eeq5BK6mmo2rWg" name="DataParallel_layers" URI="http://www.eclipse.org/papyrus/AIML/dataparallel/1">
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_jq9XEIhtEeqlnrZTj0aPoA" name="DataParallel_layers" isAbstract="true">
+ <generalization xmi:type="uml:Generalization" xmi:id="_VjFoAIhuEeqlnrZTj0aPoA" general="_2E9coH2KEeqSHNFOHg2_Jw"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_rBanQIhtEeqlnrZTj0aPoA" name="module" type="_2E9coH2KEeqSHNFOHg2_Jw"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_r6Q60IhtEeqlnrZTj0aPoA" name="device_ids">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Integer"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_PiyykJkOEeqONqmgJcdSKw"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_PjFGcJkOEeqONqmgJcdSKw" value="*"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_stpfkIhtEeqlnrZTj0aPoA" name="output_device">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Integer"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_R3Z5gJkOEeqONqmgJcdSKw"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_ZVyWoJkOEeqONqmgJcdSKw" value="*"/>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_tsGr4IhtEeqlnrZTj0aPoA" name="DistributedDataParallel">
+ <generalization xmi:type="uml:Generalization" xmi:id="_5KbJUIhtEeqlnrZTj0aPoA" general="_jq9XEIhtEeqlnrZTj0aPoA"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_vpBrkIhtEeqlnrZTj0aPoA" name="broadcast_buffers">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_c0yPAJm8Eeq0jfmjFzaebA"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_xG4JoIhtEeqlnrZTj0aPoA" name="process_group">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Integer"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_anoZAJkOEeqONqmgJcdSKw"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_yJonIIhtEeqlnrZTj0aPoA" name="bucket_cap_mb">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Integer"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fOEakJm8Eeq0jfmjFzaebA"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_zcpuMIhtEeqlnrZTj0aPoA" name="find_unsused_parameters">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_gQrHEJm8Eeq0jfmjFzaebA"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_1KdT0IhtEeqlnrZTj0aPoA" name="check_reduction">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hPrF8Jm8Eeq0jfmjFzaebA"/>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_2bnZsIhtEeqlnrZTj0aPoA" name="DataParallel">
+ <generalization xmi:type="uml:Generalization" xmi:id="_4pLdcIhtEeqlnrZTj0aPoA" general="_jq9XEIhtEeqlnrZTj0aPoA"/>
+ </packagedElement>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_hxbaEJm6Eeq0jfmjFzaebA" name="SmoothL1Loss">
+ <generalization xmi:type="uml:Generalization" xmi:id="_mI2tUJm6Eeq0jfmjFzaebA" general="_F2VqAIhoEeqlnrZTj0aPoA"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_w1CjMJm6Eeq0jfmjFzaebA" name="SoftMarginLoss">
+ <generalization xmi:type="uml:Generalization" xmi:id="_0seHwJm6Eeq0jfmjFzaebA" general="_F2VqAIhoEeqlnrZTj0aPoA"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_DSn40Jm7Eeq0jfmjFzaebA" name="MultiLabelSoftMarginLoss">
+ <generalization xmi:type="uml:Generalization" xmi:id="_HyWzgJm7Eeq0jfmjFzaebA" general="_cSDMoIhpEeqlnrZTj0aPoA"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Profile" xmi:id="_DtlO0KTlEeqmTOsCAzVBxg" name="Layer_weight_constraints">
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_Q5gaYKThEeqmTOsCAzVBxg" name="min_max_norm">
+ <generalization xmi:type="uml:Generalization" xmi:id="_vNIpkKTkEeqmTOsCAzVBxg" general="_cxXR0KTkEeqmTOsCAzVBxg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_EO8W0KTiEeqmTOsCAzVBxg" name="min_value">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Real"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_H-FiEKTiEeqmTOsCAzVBxg" name="rate">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Real"/>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_SFqEcKThEeqmTOsCAzVBxg" name="max_norm">
+ <generalization xmi:type="uml:Generalization" xmi:id="_vvr9AKTkEeqmTOsCAzVBxg" general="_cxXR0KTkEeqmTOsCAzVBxg"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_oe1s8KThEeqmTOsCAzVBxg" name="non_neg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_z11KgKZ6EeqIr7xwFiWQGQ" general="_sQtMMKZ6EeqIr7xwFiWQGQ"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_p5ftEKThEeqmTOsCAzVBxg" name="radial_constraint">
+ <generalization xmi:type="uml:Generalization" xmi:id="_zMJUUKZ6EeqIr7xwFiWQGQ" general="_sQtMMKZ6EeqIr7xwFiWQGQ"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_s288sKThEeqmTOsCAzVBxg" name="unit_norm">
+ <generalization xmi:type="uml:Generalization" xmi:id="_ZkPOgKTkEeqmTOsCAzVBxg" general="_T5LJIKTkEeqmTOsCAzVBxg"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_T5LJIKTkEeqmTOsCAzVBxg" name="norm" isAbstract="true">
+ <generalization xmi:type="uml:Generalization" xmi:id="_ymebcKZ6EeqIr7xwFiWQGQ" general="_sQtMMKZ6EeqIr7xwFiWQGQ"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_YMFv0KTkEeqmTOsCAzVBxg" name="axis">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Integer"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_ao6-oKTkEeqmTOsCAzVBxg" value="*"/>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_cxXR0KTkEeqmTOsCAzVBxg" name="NormWithMaxValue" isAbstract="true">
+ <generalization xmi:type="uml:Generalization" xmi:id="_1Qw_8KTkEeqmTOsCAzVBxg" general="_T5LJIKTkEeqmTOsCAzVBxg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_hrd0UKTkEeqmTOsCAzVBxg" name="max_value">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Real"/>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_sQtMMKZ6EeqIr7xwFiWQGQ" name="constraints" isAbstract="true"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Profile" xmi:id="_X5a5MKTpEeqmTOsCAzVBxg" name="Layer_weight_regularizers">
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_0kGm4KTnEeqmTOsCAzVBxg" name="l1">
+ <generalization xmi:type="uml:Generalization" xmi:id="_8VmX0KToEeqmTOsCAzVBxg" general="_smezkKToEeqmTOsCAzVBxg"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_PhQJ0KToEeqmTOsCAzVBxg" name="l2">
+ <generalization xmi:type="uml:Generalization" xmi:id="_8pjOkKToEeqmTOsCAzVBxg" general="_vbw-oKToEeqmTOsCAzVBxg"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_QuKB0KToEeqmTOsCAzVBxg" name="l1_l2">
+ <generalization xmi:type="uml:Generalization" xmi:id="_98EmYKToEeqmTOsCAzVBxg" general="_smezkKToEeqmTOsCAzVBxg"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_-XpvIKToEeqmTOsCAzVBxg" general="_vbw-oKToEeqmTOsCAzVBxg"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_smezkKToEeqmTOsCAzVBxg" name="ReguWithl1" isAbstract="true">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_yJ2VgKToEeqmTOsCAzVBxg" name="l1">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Real"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_C21QMKTpEeqmTOsCAzVBxg"/>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_vbw-oKToEeqmTOsCAzVBxg" name="ReguWithl2" isAbstract="true">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_zAXt0KToEeqmTOsCAzVBxg" name="l2">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Real"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_IgwtIKTpEeqmTOsCAzVBxg"/>
+ </ownedAttribute>
+ </packagedElement>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Profile" xmi:id="_ZgMWkKWVEeq2dLYfuMvqgg" name="Layer_weight_initializers">
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_-JzUkKWREeq2dLYfuMvqgg" name="random_normal">
+ <generalization xmi:type="uml:Generalization" xmi:id="_nuodIKWTEeq2dLYfuMvqgg" general="_iKWVMKWTEeq2dLYfuMvqgg"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_GwoAcKWSEeq2dLYfuMvqgg" name="random_uniform">
+ <generalization xmi:type="uml:Generalization" xmi:id="_aApDIKWTEeq2dLYfuMvqgg" general="_OISVEKWTEeq2dLYfuMvqgg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_IiUAgKWSEeq2dLYfuMvqgg" name="minval">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Real"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_JNazAKWSEeq2dLYfuMvqgg" name="maxval">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Real"/>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_KermkKWSEeq2dLYfuMvqgg" name="truncated_normal">
+ <generalization xmi:type="uml:Generalization" xmi:id="_oMXiAKWTEeq2dLYfuMvqgg" general="_iKWVMKWTEeq2dLYfuMvqgg"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_OfDEsKWSEeq2dLYfuMvqgg" name="zeros"/>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_ZEzicKWSEeq2dLYfuMvqgg" name="ones"/>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_e6wCIKWSEeq2dLYfuMvqgg" name="glorot_normal">
+ <generalization xmi:type="uml:Generalization" xmi:id="_dM91MKWTEeq2dLYfuMvqgg" general="_OISVEKWTEeq2dLYfuMvqgg"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_hxQVMKWSEeq2dLYfuMvqgg" name="glorot_uniform">
+ <generalization xmi:type="uml:Generalization" xmi:id="_YbtssKWTEeq2dLYfuMvqgg" general="_OISVEKWTEeq2dLYfuMvqgg"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_lmeTQKWSEeq2dLYfuMvqgg" name="identity">
+ <generalization xmi:type="uml:Generalization" xmi:id="_DYQrkKWUEeq2dLYfuMvqgg" general="_IHtSsKWTEeq2dLYfuMvqgg"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_nCPGoKWSEeq2dLYfuMvqgg" name="orthogonal">
+ <generalization xmi:type="uml:Generalization" xmi:id="_Q3KgsKWUEeq2dLYfuMvqgg" general="_IHtSsKWTEeq2dLYfuMvqgg"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_WyCjsKWUEeq2dLYfuMvqgg" general="_OISVEKWTEeq2dLYfuMvqgg"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_oi19wKWSEeq2dLYfuMvqgg" name="constant">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_xIu1gKWSEeq2dLYfuMvqgg" name="value">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Real"/>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_ytfM0KWSEeq2dLYfuMvqgg" name="variance_scaling">
+ <generalization xmi:type="uml:Generalization" xmi:id="_4dWdMKWTEeq2dLYfuMvqgg" general="_OISVEKWTEeq2dLYfuMvqgg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_z0htYKWSEeq2dLYfuMvqgg" name="scale">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Real"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_0XpokKWSEeq2dLYfuMvqgg" name="mode">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_0qcowKWSEeq2dLYfuMvqgg" name="distribution">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_IHtSsKWTEeq2dLYfuMvqgg" name="initializer_with_gain" isAbstract="true">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_L46TcKWTEeq2dLYfuMvqgg" name="gain">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Real"/>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_OISVEKWTEeq2dLYfuMvqgg" name="initializer_with_seed" isAbstract="true">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_R4qPYKWTEeq2dLYfuMvqgg" name="seed">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Integer"/>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_iKWVMKWTEeq2dLYfuMvqgg" name="initializer_with_mean_stddev" isAbstract="true">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MGbVkKWUEeq2dLYfuMvqgg" general="_OISVEKWTEeq2dLYfuMvqgg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_lHusUKWTEeq2dLYfuMvqgg" name="mean">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Real"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_lmazcKWTEeq2dLYfuMvqgg" name="stddev">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Real"/>
+ </ownedAttribute>
+ </packagedElement>
+ </packagedElement>
+ <profileApplication xmi:type="uml:ProfileApplication" xmi:id="_shl-AH5QEeqSHNFOHg2_Jw">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_shqPcH5QEeqSHNFOHg2_Jw" source="http://www.eclipse.org/uml2/2.0.0/UML">
+ <references xmi:type="ecore:EPackage" href="pathmap://PAPYRUS_ACTIONLANGUAGE_PROFILE/ActionLanguage-Profile.profile.uml#_Kv8EIKFXEeS_KNX0nfvIVQ"/>
+ </eAnnotations>
+ <appliedProfile xmi:type="uml:Profile" href="pathmap://PAPYRUS_ACTIONLANGUAGE_PROFILE/ActionLanguage-Profile.profile.uml#ActionLanguage"/>
+ </profileApplication>
+</uml:Profile>
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/AIMLFactory.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/AIMLFactory.java
new file mode 100644
index 0000000..e4c8ea4
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/AIMLFactory.java
@@ -0,0 +1,69 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML;
+
+import org.eclipse.emf.ecore.EFactory;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Factory</b> for the model.
+ * It provides a create method for each non-abstract class of the model.
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.AIMLPackage
+ * @generated
+ */
+public interface AIMLFactory extends EFactory {
+ /**
+ * The singleton instance of the factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ AIMLFactory eINSTANCE = org.eclipse.papyrus.aiml.profile.AIML.impl.AIMLFactoryImpl.init();
+
+ /**
+ * Returns a new object of class '<em>Smooth L1 Loss</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Smooth L1 Loss</em>'.
+ * @generated
+ */
+ SmoothL1Loss createSmoothL1Loss();
+
+ /**
+ * Returns a new object of class '<em>Soft Margin Loss</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Soft Margin Loss</em>'.
+ * @generated
+ */
+ SoftMarginLoss createSoftMarginLoss();
+
+ /**
+ * Returns a new object of class '<em>Multi Label Soft Margin Loss</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Multi Label Soft Margin Loss</em>'.
+ * @generated
+ */
+ MultiLabelSoftMarginLoss createMultiLabelSoftMarginLoss();
+
+ /**
+ * Returns the package supported by this factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the package supported by this factory.
+ * @generated
+ */
+ AIMLPackage getAIMLPackage();
+
+} //AIMLFactory
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/AIMLPackage.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/AIMLPackage.java
new file mode 100644
index 0000000..d833263
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/AIMLPackage.java
@@ -0,0 +1,517 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Loss_functions.Loss_functionsPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Package</b> for the model.
+ * It contains accessors for the meta objects to represent
+ * <ul>
+ * <li>each class,</li>
+ * <li>each feature of each class,</li>
+ * <li>each operation of each class,</li>
+ * <li>each enum,</li>
+ * <li>and each data type</li>
+ * </ul>
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.AIMLFactory
+ * @model kind="package"
+ * @generated
+ */
+public interface AIMLPackage extends EPackage {
+ /**
+ * The package name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNAME = "AIML"; //$NON-NLS-1$
+
+ /**
+ * The package namespace URI.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNS_URI = "http://www.eclipse.org/papyrus/AIML/1"; //$NON-NLS-1$
+
+ /**
+ * The package namespace name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNS_PREFIX = "AIML"; //$NON-NLS-1$
+
+ /**
+ * The singleton instance of the package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ AIMLPackage eINSTANCE = org.eclipse.papyrus.aiml.profile.AIML.impl.AIMLPackageImpl.init();
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.aiml.profile.AIML.impl.SmoothL1LossImpl <em>Smooth L1 Loss</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.impl.SmoothL1LossImpl
+ * @see org.eclipse.papyrus.aiml.profile.AIML.impl.AIMLPackageImpl#getSmoothL1Loss()
+ * @generated
+ */
+ int SMOOTH_L1_LOSS = 0;
+
+ /**
+ * The feature id for the '<em><b>Base Class</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SMOOTH_L1_LOSS__BASE_CLASS = Loss_functionsPackage.LOSS_FUNCTIONS_1__BASE_CLASS;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SMOOTH_L1_LOSS__NAME = Loss_functionsPackage.LOSS_FUNCTIONS_1__NAME;
+
+ /**
+ * The feature id for the '<em><b>Data</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SMOOTH_L1_LOSS__DATA = Loss_functionsPackage.LOSS_FUNCTIONS_1__DATA;
+
+ /**
+ * The feature id for the '<em><b>Requires grad</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SMOOTH_L1_LOSS__REQUIRES_GRAD = Loss_functionsPackage.LOSS_FUNCTIONS_1__REQUIRES_GRAD;
+
+ /**
+ * The feature id for the '<em><b>Sub Module</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SMOOTH_L1_LOSS__SUB_MODULE = Loss_functionsPackage.LOSS_FUNCTIONS_1__SUB_MODULE;
+
+ /**
+ * The feature id for the '<em><b>Optimizer</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SMOOTH_L1_LOSS__OPTIMIZER = Loss_functionsPackage.LOSS_FUNCTIONS_1__OPTIMIZER;
+
+ /**
+ * The feature id for the '<em><b>Loss</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SMOOTH_L1_LOSS__LOSS = Loss_functionsPackage.LOSS_FUNCTIONS_1__LOSS;
+
+ /**
+ * The feature id for the '<em><b>Reduction</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SMOOTH_L1_LOSS__REDUCTION = Loss_functionsPackage.LOSS_FUNCTIONS_1__REDUCTION;
+
+ /**
+ * The feature id for the '<em><b>Size average</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SMOOTH_L1_LOSS__SIZE_AVERAGE = Loss_functionsPackage.LOSS_FUNCTIONS_1__SIZE_AVERAGE;
+
+ /**
+ * The feature id for the '<em><b>Reduce</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SMOOTH_L1_LOSS__REDUCE = Loss_functionsPackage.LOSS_FUNCTIONS_1__REDUCE;
+
+ /**
+ * The number of structural features of the '<em>Smooth L1 Loss</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SMOOTH_L1_LOSS_FEATURE_COUNT = Loss_functionsPackage.LOSS_FUNCTIONS_1_FEATURE_COUNT + 0;
+
+ /**
+ * The number of operations of the '<em>Smooth L1 Loss</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SMOOTH_L1_LOSS_OPERATION_COUNT = Loss_functionsPackage.LOSS_FUNCTIONS_1_OPERATION_COUNT + 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.aiml.profile.AIML.impl.SoftMarginLossImpl <em>Soft Margin Loss</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.impl.SoftMarginLossImpl
+ * @see org.eclipse.papyrus.aiml.profile.AIML.impl.AIMLPackageImpl#getSoftMarginLoss()
+ * @generated
+ */
+ int SOFT_MARGIN_LOSS = 1;
+
+ /**
+ * The feature id for the '<em><b>Base Class</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SOFT_MARGIN_LOSS__BASE_CLASS = Loss_functionsPackage.LOSS_FUNCTIONS_1__BASE_CLASS;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SOFT_MARGIN_LOSS__NAME = Loss_functionsPackage.LOSS_FUNCTIONS_1__NAME;
+
+ /**
+ * The feature id for the '<em><b>Data</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SOFT_MARGIN_LOSS__DATA = Loss_functionsPackage.LOSS_FUNCTIONS_1__DATA;
+
+ /**
+ * The feature id for the '<em><b>Requires grad</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SOFT_MARGIN_LOSS__REQUIRES_GRAD = Loss_functionsPackage.LOSS_FUNCTIONS_1__REQUIRES_GRAD;
+
+ /**
+ * The feature id for the '<em><b>Sub Module</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SOFT_MARGIN_LOSS__SUB_MODULE = Loss_functionsPackage.LOSS_FUNCTIONS_1__SUB_MODULE;
+
+ /**
+ * The feature id for the '<em><b>Optimizer</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SOFT_MARGIN_LOSS__OPTIMIZER = Loss_functionsPackage.LOSS_FUNCTIONS_1__OPTIMIZER;
+
+ /**
+ * The feature id for the '<em><b>Loss</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SOFT_MARGIN_LOSS__LOSS = Loss_functionsPackage.LOSS_FUNCTIONS_1__LOSS;
+
+ /**
+ * The feature id for the '<em><b>Reduction</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SOFT_MARGIN_LOSS__REDUCTION = Loss_functionsPackage.LOSS_FUNCTIONS_1__REDUCTION;
+
+ /**
+ * The feature id for the '<em><b>Size average</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SOFT_MARGIN_LOSS__SIZE_AVERAGE = Loss_functionsPackage.LOSS_FUNCTIONS_1__SIZE_AVERAGE;
+
+ /**
+ * The feature id for the '<em><b>Reduce</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SOFT_MARGIN_LOSS__REDUCE = Loss_functionsPackage.LOSS_FUNCTIONS_1__REDUCE;
+
+ /**
+ * The number of structural features of the '<em>Soft Margin Loss</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SOFT_MARGIN_LOSS_FEATURE_COUNT = Loss_functionsPackage.LOSS_FUNCTIONS_1_FEATURE_COUNT + 0;
+
+ /**
+ * The number of operations of the '<em>Soft Margin Loss</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SOFT_MARGIN_LOSS_OPERATION_COUNT = Loss_functionsPackage.LOSS_FUNCTIONS_1_OPERATION_COUNT + 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.aiml.profile.AIML.impl.MultiLabelSoftMarginLossImpl <em>Multi Label Soft Margin Loss</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.impl.MultiLabelSoftMarginLossImpl
+ * @see org.eclipse.papyrus.aiml.profile.AIML.impl.AIMLPackageImpl#getMultiLabelSoftMarginLoss()
+ * @generated
+ */
+ int MULTI_LABEL_SOFT_MARGIN_LOSS = 2;
+
+ /**
+ * The feature id for the '<em><b>Base Class</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int MULTI_LABEL_SOFT_MARGIN_LOSS__BASE_CLASS = Loss_functionsPackage.LOSS_FUNCTIONS_12__BASE_CLASS;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int MULTI_LABEL_SOFT_MARGIN_LOSS__NAME = Loss_functionsPackage.LOSS_FUNCTIONS_12__NAME;
+
+ /**
+ * The feature id for the '<em><b>Data</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int MULTI_LABEL_SOFT_MARGIN_LOSS__DATA = Loss_functionsPackage.LOSS_FUNCTIONS_12__DATA;
+
+ /**
+ * The feature id for the '<em><b>Requires grad</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int MULTI_LABEL_SOFT_MARGIN_LOSS__REQUIRES_GRAD = Loss_functionsPackage.LOSS_FUNCTIONS_12__REQUIRES_GRAD;
+
+ /**
+ * The feature id for the '<em><b>Sub Module</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int MULTI_LABEL_SOFT_MARGIN_LOSS__SUB_MODULE = Loss_functionsPackage.LOSS_FUNCTIONS_12__SUB_MODULE;
+
+ /**
+ * The feature id for the '<em><b>Optimizer</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int MULTI_LABEL_SOFT_MARGIN_LOSS__OPTIMIZER = Loss_functionsPackage.LOSS_FUNCTIONS_12__OPTIMIZER;
+
+ /**
+ * The feature id for the '<em><b>Loss</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int MULTI_LABEL_SOFT_MARGIN_LOSS__LOSS = Loss_functionsPackage.LOSS_FUNCTIONS_12__LOSS;
+
+ /**
+ * The feature id for the '<em><b>Reduction</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int MULTI_LABEL_SOFT_MARGIN_LOSS__REDUCTION = Loss_functionsPackage.LOSS_FUNCTIONS_12__REDUCTION;
+
+ /**
+ * The feature id for the '<em><b>Size average</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int MULTI_LABEL_SOFT_MARGIN_LOSS__SIZE_AVERAGE = Loss_functionsPackage.LOSS_FUNCTIONS_12__SIZE_AVERAGE;
+
+ /**
+ * The feature id for the '<em><b>Reduce</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int MULTI_LABEL_SOFT_MARGIN_LOSS__REDUCE = Loss_functionsPackage.LOSS_FUNCTIONS_12__REDUCE;
+
+ /**
+ * The feature id for the '<em><b>Weight</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int MULTI_LABEL_SOFT_MARGIN_LOSS__WEIGHT = Loss_functionsPackage.LOSS_FUNCTIONS_12__WEIGHT;
+
+ /**
+ * The number of structural features of the '<em>Multi Label Soft Margin Loss</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int MULTI_LABEL_SOFT_MARGIN_LOSS_FEATURE_COUNT = Loss_functionsPackage.LOSS_FUNCTIONS_12_FEATURE_COUNT + 0;
+
+ /**
+ * The number of operations of the '<em>Multi Label Soft Margin Loss</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int MULTI_LABEL_SOFT_MARGIN_LOSS_OPERATION_COUNT = Loss_functionsPackage.LOSS_FUNCTIONS_12_OPERATION_COUNT + 0;
+
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.aiml.profile.AIML.SmoothL1Loss <em>Smooth L1 Loss</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Smooth L1 Loss</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.SmoothL1Loss
+ * @generated
+ */
+ EClass getSmoothL1Loss();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.aiml.profile.AIML.SoftMarginLoss <em>Soft Margin Loss</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Soft Margin Loss</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.SoftMarginLoss
+ * @generated
+ */
+ EClass getSoftMarginLoss();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.aiml.profile.AIML.MultiLabelSoftMarginLoss <em>Multi Label Soft Margin Loss</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Multi Label Soft Margin Loss</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.MultiLabelSoftMarginLoss
+ * @generated
+ */
+ EClass getMultiLabelSoftMarginLoss();
+
+ /**
+ * Returns the factory that creates the instances of the model.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the factory that creates the instances of the model.
+ * @generated
+ */
+ AIMLFactory getAIMLFactory();
+
+ /**
+ * <!-- begin-user-doc -->
+ * Defines literals for the meta objects that represent
+ * <ul>
+ * <li>each class,</li>
+ * <li>each feature of each class,</li>
+ * <li>each operation of each class,</li>
+ * <li>each enum,</li>
+ * <li>and each data type</li>
+ * </ul>
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ interface Literals {
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.aiml.profile.AIML.impl.SmoothL1LossImpl <em>Smooth L1 Loss</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.impl.SmoothL1LossImpl
+ * @see org.eclipse.papyrus.aiml.profile.AIML.impl.AIMLPackageImpl#getSmoothL1Loss()
+ * @generated
+ */
+ EClass SMOOTH_L1_LOSS = eINSTANCE.getSmoothL1Loss();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.aiml.profile.AIML.impl.SoftMarginLossImpl <em>Soft Margin Loss</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.impl.SoftMarginLossImpl
+ * @see org.eclipse.papyrus.aiml.profile.AIML.impl.AIMLPackageImpl#getSoftMarginLoss()
+ * @generated
+ */
+ EClass SOFT_MARGIN_LOSS = eINSTANCE.getSoftMarginLoss();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.aiml.profile.AIML.impl.MultiLabelSoftMarginLossImpl <em>Multi Label Soft Margin Loss</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.impl.MultiLabelSoftMarginLossImpl
+ * @see org.eclipse.papyrus.aiml.profile.AIML.impl.AIMLPackageImpl#getMultiLabelSoftMarginLoss()
+ * @generated
+ */
+ EClass MULTI_LABEL_SOFT_MARGIN_LOSS = eINSTANCE.getMultiLabelSoftMarginLoss();
+
+ }
+
+} //AIMLPackage
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Convolution_layers/Conv1d.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Convolution_layers/Conv1d.java
new file mode 100644
index 0000000..6433c44
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Convolution_layers/Conv1d.java
@@ -0,0 +1,26 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Conv1d</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution_layersPackage#getConv1d()
+ * @model
+ * @generated
+ */
+public interface Conv1d extends basic {
+} // Conv1d
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Convolution_layers/Conv2d.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Convolution_layers/Conv2d.java
new file mode 100644
index 0000000..25e0c48
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Convolution_layers/Conv2d.java
@@ -0,0 +1,26 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Conv2d</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution_layersPackage#getConv2d()
+ * @model
+ * @generated
+ */
+public interface Conv2d extends basic {
+} // Conv2d
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Convolution_layers/Conv3d.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Convolution_layers/Conv3d.java
new file mode 100644
index 0000000..7c0059d
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Convolution_layers/Conv3d.java
@@ -0,0 +1,26 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Conv3d</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution_layersPackage#getConv3d()
+ * @model
+ * @generated
+ */
+public interface Conv3d extends basic {
+} // Conv3d
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Convolution_layers/ConvTranspose1d.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Convolution_layers/ConvTranspose1d.java
new file mode 100644
index 0000000..ba82c9c
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Convolution_layers/ConvTranspose1d.java
@@ -0,0 +1,26 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Conv Transpose1d</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution_layersPackage#getConvTranspose1d()
+ * @model
+ * @generated
+ */
+public interface ConvTranspose1d extends LayerWithFilter {
+} // ConvTranspose1d
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Convolution_layers/ConvTranspose2d.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Convolution_layers/ConvTranspose2d.java
new file mode 100644
index 0000000..9533a06
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Convolution_layers/ConvTranspose2d.java
@@ -0,0 +1,26 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Conv Transpose2d</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution_layersPackage#getConvTranspose2d()
+ * @model
+ * @generated
+ */
+public interface ConvTranspose2d extends transpose {
+} // ConvTranspose2d
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Convolution_layers/ConvTranspose3d.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Convolution_layers/ConvTranspose3d.java
new file mode 100644
index 0000000..5e72e67
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Convolution_layers/ConvTranspose3d.java
@@ -0,0 +1,26 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Conv Transpose3d</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution_layersPackage#getConvTranspose3d()
+ * @model
+ * @generated
+ */
+public interface ConvTranspose3d extends transpose {
+} // ConvTranspose3d
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Convolution_layers/Convolution.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Convolution_layers/Convolution.java
new file mode 100644
index 0000000..40c8f10
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Convolution_layers/Convolution.java
@@ -0,0 +1,319 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Convolution</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution#getIn_channels <em>In channels</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution#getGroups <em>Groups</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution#isBiais <em>Biais</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution#getPadding_mode <em>Padding mode</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution#getData_format <em>Data format</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution#getDilation_rate <em>Dilation rate</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution#getActivation <em>Activation</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution#getBias_initializer <em>Bias initializer</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution#getActivity_regularizer <em>Activity regularizer</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution#getBias_constraint <em>Bias constraint</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution#getBias_regularizer <em>Bias regularizer</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution_layersPackage#getConvolution()
+ * @model abstract="true"
+ * @generated
+ */
+public interface Convolution extends Convolution_layers {
+ /**
+ * Returns the value of the '<em><b>In channels</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>In channels</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>In channels</em>' attribute.
+ * @see #setIn_channels(int)
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution_layersPackage#getConvolution_In_channels()
+ * @model dataType="org.eclipse.uml2.types.Integer" ordered="false"
+ * @generated
+ */
+ int getIn_channels();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution#getIn_channels <em>In channels</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>In channels</em>' attribute.
+ * @see #getIn_channels()
+ * @generated
+ */
+ void setIn_channels(int value);
+
+ /**
+ * Returns the value of the '<em><b>Groups</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Groups</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Groups</em>' attribute.
+ * @see #setGroups(int)
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution_layersPackage#getConvolution_Groups()
+ * @model dataType="org.eclipse.uml2.types.Integer" ordered="false"
+ * @generated
+ */
+ int getGroups();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution#getGroups <em>Groups</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Groups</em>' attribute.
+ * @see #getGroups()
+ * @generated
+ */
+ void setGroups(int value);
+
+ /**
+ * Returns the value of the '<em><b>Biais</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Biais</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Biais</em>' attribute.
+ * @see #setBiais(boolean)
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution_layersPackage#getConvolution_Biais()
+ * @model dataType="org.eclipse.uml2.types.Boolean" ordered="false"
+ * @generated
+ */
+ boolean isBiais();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution#isBiais <em>Biais</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Biais</em>' attribute.
+ * @see #isBiais()
+ * @generated
+ */
+ void setBiais(boolean value);
+
+ /**
+ * Returns the value of the '<em><b>Padding mode</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Padding mode</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Padding mode</em>' attribute.
+ * @see #setPadding_mode(String)
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution_layersPackage#getConvolution_Padding_mode()
+ * @model dataType="org.eclipse.uml2.types.String" ordered="false"
+ * @generated
+ */
+ String getPadding_mode();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution#getPadding_mode <em>Padding mode</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Padding mode</em>' attribute.
+ * @see #getPadding_mode()
+ * @generated
+ */
+ void setPadding_mode(String value);
+
+ /**
+ * Returns the value of the '<em><b>Data format</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Data format</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Data format</em>' attribute.
+ * @see #setData_format(String)
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution_layersPackage#getConvolution_Data_format()
+ * @model dataType="org.eclipse.uml2.types.String" ordered="false"
+ * @generated
+ */
+ String getData_format();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution#getData_format <em>Data format</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Data format</em>' attribute.
+ * @see #getData_format()
+ * @generated
+ */
+ void setData_format(String value);
+
+ /**
+ * Returns the value of the '<em><b>Dilation rate</b></em>' attribute list.
+ * The list contents are of type {@link java.lang.Integer}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Dilation rate</em>' attribute list isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Dilation rate</em>' attribute list.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution_layersPackage#getConvolution_Dilation_rate()
+ * @model dataType="org.eclipse.uml2.types.Integer" ordered="false"
+ * @generated
+ */
+ EList<Integer> getDilation_rate();
+
+ /**
+ * Returns the value of the '<em><b>Activation</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Activation</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Activation</em>' attribute.
+ * @see #setActivation(String)
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution_layersPackage#getConvolution_Activation()
+ * @model dataType="org.eclipse.uml2.types.String" ordered="false"
+ * @generated
+ */
+ String getActivation();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution#getActivation <em>Activation</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Activation</em>' attribute.
+ * @see #getActivation()
+ * @generated
+ */
+ void setActivation(String value);
+
+ /**
+ * Returns the value of the '<em><b>Bias initializer</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Bias initializer</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Bias initializer</em>' attribute.
+ * @see #setBias_initializer(String)
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution_layersPackage#getConvolution_Bias_initializer()
+ * @model dataType="org.eclipse.uml2.types.String" required="true" ordered="false"
+ * @generated
+ */
+ String getBias_initializer();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution#getBias_initializer <em>Bias initializer</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Bias initializer</em>' attribute.
+ * @see #getBias_initializer()
+ * @generated
+ */
+ void setBias_initializer(String value);
+
+ /**
+ * Returns the value of the '<em><b>Activity regularizer</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Activity regularizer</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Activity regularizer</em>' attribute.
+ * @see #setActivity_regularizer(String)
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution_layersPackage#getConvolution_Activity_regularizer()
+ * @model dataType="org.eclipse.uml2.types.String" required="true" ordered="false"
+ * @generated
+ */
+ String getActivity_regularizer();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution#getActivity_regularizer <em>Activity regularizer</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Activity regularizer</em>' attribute.
+ * @see #getActivity_regularizer()
+ * @generated
+ */
+ void setActivity_regularizer(String value);
+
+ /**
+ * Returns the value of the '<em><b>Bias constraint</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Bias constraint</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Bias constraint</em>' attribute.
+ * @see #setBias_constraint(String)
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution_layersPackage#getConvolution_Bias_constraint()
+ * @model dataType="org.eclipse.uml2.types.String" required="true" ordered="false"
+ * @generated
+ */
+ String getBias_constraint();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution#getBias_constraint <em>Bias constraint</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Bias constraint</em>' attribute.
+ * @see #getBias_constraint()
+ * @generated
+ */
+ void setBias_constraint(String value);
+
+ /**
+ * Returns the value of the '<em><b>Bias regularizer</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Bias regularizer</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Bias regularizer</em>' attribute.
+ * @see #setBias_regularizer(String)
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution_layersPackage#getConvolution_Bias_regularizer()
+ * @model dataType="org.eclipse.uml2.types.String" required="true" ordered="false"
+ * @generated
+ */
+ String getBias_regularizer();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution#getBias_regularizer <em>Bias regularizer</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Bias regularizer</em>' attribute.
+ * @see #getBias_regularizer()
+ * @generated
+ */
+ void setBias_regularizer(String value);
+
+} // Convolution
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Convolution_layers/Convolution_layers.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Convolution_layers/Convolution_layers.java
new file mode 100644
index 0000000..e94b5b9
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Convolution_layers/Convolution_layers.java
@@ -0,0 +1,101 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers;
+
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.papyrus.aiml.profile.AIML.Module.Model;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Convolution layers</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution_layers#getKernel_size <em>Kernel size</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution_layers#getStride <em>Stride</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution_layers#getPadding <em>Padding</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution_layers#getDilation <em>Dilation</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution_layersPackage#getConvolution_layers()
+ * @model abstract="true"
+ * @generated
+ */
+public interface Convolution_layers extends Model {
+ /**
+ * Returns the value of the '<em><b>Kernel size</b></em>' attribute list.
+ * The list contents are of type {@link java.lang.Integer}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Kernel size</em>' attribute list isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Kernel size</em>' attribute list.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution_layersPackage#getConvolution_layers_Kernel_size()
+ * @model dataType="org.eclipse.uml2.types.Integer" ordered="false"
+ * @generated
+ */
+ EList<Integer> getKernel_size();
+
+ /**
+ * Returns the value of the '<em><b>Stride</b></em>' attribute list.
+ * The list contents are of type {@link java.lang.Integer}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Stride</em>' attribute list isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Stride</em>' attribute list.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution_layersPackage#getConvolution_layers_Stride()
+ * @model dataType="org.eclipse.uml2.types.Integer" ordered="false"
+ * @generated
+ */
+ EList<Integer> getStride();
+
+ /**
+ * Returns the value of the '<em><b>Padding</b></em>' attribute list.
+ * The list contents are of type {@link java.lang.Integer}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Padding</em>' attribute list isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Padding</em>' attribute list.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution_layersPackage#getConvolution_layers_Padding()
+ * @model dataType="org.eclipse.uml2.types.Integer" ordered="false"
+ * @generated
+ */
+ EList<Integer> getPadding();
+
+ /**
+ * Returns the value of the '<em><b>Dilation</b></em>' attribute list.
+ * The list contents are of type {@link java.lang.Integer}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Dilation</em>' attribute list isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Dilation</em>' attribute list.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution_layersPackage#getConvolution_layers_Dilation()
+ * @model dataType="org.eclipse.uml2.types.Integer" ordered="false"
+ * @generated
+ */
+ EList<Integer> getDilation();
+
+} // Convolution_layers
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Convolution_layers/Convolution_layersFactory.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Convolution_layers/Convolution_layersFactory.java
new file mode 100644
index 0000000..2376154
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Convolution_layers/Convolution_layersFactory.java
@@ -0,0 +1,141 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers;
+
+import org.eclipse.emf.ecore.EFactory;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Factory</b> for the model.
+ * It provides a create method for each non-abstract class of the model.
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution_layersPackage
+ * @generated
+ */
+public interface Convolution_layersFactory extends EFactory {
+ /**
+ * The singleton instance of the factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ Convolution_layersFactory eINSTANCE = org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.Convolution_layersFactoryImpl.init();
+
+ /**
+ * Returns a new object of class '<em>Unfold</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Unfold</em>'.
+ * @generated
+ */
+ Unfold createUnfold();
+
+ /**
+ * Returns a new object of class '<em>Fold</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Fold</em>'.
+ * @generated
+ */
+ Fold createFold();
+
+ /**
+ * Returns a new object of class '<em>Conv2d</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Conv2d</em>'.
+ * @generated
+ */
+ Conv2d createConv2d();
+
+ /**
+ * Returns a new object of class '<em>Conv3d</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Conv3d</em>'.
+ * @generated
+ */
+ Conv3d createConv3d();
+
+ /**
+ * Returns a new object of class '<em>Conv Transpose1d</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Conv Transpose1d</em>'.
+ * @generated
+ */
+ ConvTranspose1d createConvTranspose1d();
+
+ /**
+ * Returns a new object of class '<em>Conv Transpose2d</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Conv Transpose2d</em>'.
+ * @generated
+ */
+ ConvTranspose2d createConvTranspose2d();
+
+ /**
+ * Returns a new object of class '<em>Conv Transpose3d</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Conv Transpose3d</em>'.
+ * @generated
+ */
+ ConvTranspose3d createConvTranspose3d();
+
+ /**
+ * Returns a new object of class '<em>Conv1d</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Conv1d</em>'.
+ * @generated
+ */
+ Conv1d createConv1d();
+
+ /**
+ * Returns a new object of class '<em>Separable Conv2 D</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Separable Conv2 D</em>'.
+ * @generated
+ */
+ SeparableConv2D createSeparableConv2D();
+
+ /**
+ * Returns a new object of class '<em>Separable Conv1 D</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Separable Conv1 D</em>'.
+ * @generated
+ */
+ SeparableConv1D createSeparableConv1D();
+
+ /**
+ * Returns a new object of class '<em>Depthwise Conv2 D</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Depthwise Conv2 D</em>'.
+ * @generated
+ */
+ DepthwiseConv2D createDepthwiseConv2D();
+
+ /**
+ * Returns the package supported by this factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the package supported by this factory.
+ * @generated
+ */
+ Convolution_layersPackage getConvolution_layersPackage();
+
+} //Convolution_layersFactory
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Convolution_layers/Convolution_layersPackage.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Convolution_layers/Convolution_layersPackage.java
new file mode 100644
index 0000000..d6a1aaf
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Convolution_layers/Convolution_layersPackage.java
@@ -0,0 +1,5147 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers;
+
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EReference;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Module.ModulePackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Package</b> for the model.
+ * It contains accessors for the meta objects to represent
+ * <ul>
+ * <li>each class,</li>
+ * <li>each feature of each class,</li>
+ * <li>each operation of each class,</li>
+ * <li>each enum,</li>
+ * <li>and each data type</li>
+ * </ul>
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution_layersFactory
+ * @model kind="package"
+ * @generated
+ */
+public interface Convolution_layersPackage extends EPackage {
+ /**
+ * The package name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNAME = "Convolution_layers"; //$NON-NLS-1$
+
+ /**
+ * The package namespace URI.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNS_URI = "http://www.eclipse.org/papyrus/AIML/convolution/1"; //$NON-NLS-1$
+
+ /**
+ * The package namespace name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNS_PREFIX = "AIML.Convolution_layers"; //$NON-NLS-1$
+
+ /**
+ * The singleton instance of the package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ Convolution_layersPackage eINSTANCE = org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.Convolution_layersPackageImpl.init();
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.Convolution_layersImpl <em>Convolution layers</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.Convolution_layersImpl
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.Convolution_layersPackageImpl#getConvolution_layers()
+ * @generated
+ */
+ int CONVOLUTION_LAYERS = 1;
+
+ /**
+ * The feature id for the '<em><b>Base Class</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONVOLUTION_LAYERS__BASE_CLASS = ModulePackage.MODEL__BASE_CLASS;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONVOLUTION_LAYERS__NAME = ModulePackage.MODEL__NAME;
+
+ /**
+ * The feature id for the '<em><b>Data</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONVOLUTION_LAYERS__DATA = ModulePackage.MODEL__DATA;
+
+ /**
+ * The feature id for the '<em><b>Requires grad</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONVOLUTION_LAYERS__REQUIRES_GRAD = ModulePackage.MODEL__REQUIRES_GRAD;
+
+ /**
+ * The feature id for the '<em><b>Sub Module</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONVOLUTION_LAYERS__SUB_MODULE = ModulePackage.MODEL__SUB_MODULE;
+
+ /**
+ * The feature id for the '<em><b>Optimizer</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONVOLUTION_LAYERS__OPTIMIZER = ModulePackage.MODEL__OPTIMIZER;
+
+ /**
+ * The feature id for the '<em><b>Loss</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONVOLUTION_LAYERS__LOSS = ModulePackage.MODEL__LOSS;
+
+ /**
+ * The feature id for the '<em><b>Kernel size</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONVOLUTION_LAYERS__KERNEL_SIZE = ModulePackage.MODEL_FEATURE_COUNT + 0;
+
+ /**
+ * The feature id for the '<em><b>Stride</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONVOLUTION_LAYERS__STRIDE = ModulePackage.MODEL_FEATURE_COUNT + 1;
+
+ /**
+ * The feature id for the '<em><b>Padding</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONVOLUTION_LAYERS__PADDING = ModulePackage.MODEL_FEATURE_COUNT + 2;
+
+ /**
+ * The feature id for the '<em><b>Dilation</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONVOLUTION_LAYERS__DILATION = ModulePackage.MODEL_FEATURE_COUNT + 3;
+
+ /**
+ * The number of structural features of the '<em>Convolution layers</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONVOLUTION_LAYERS_FEATURE_COUNT = ModulePackage.MODEL_FEATURE_COUNT + 4;
+
+ /**
+ * The number of operations of the '<em>Convolution layers</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONVOLUTION_LAYERS_OPERATION_COUNT = ModulePackage.MODEL_OPERATION_COUNT + 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.ConvolutionImpl <em>Convolution</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.ConvolutionImpl
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.Convolution_layersPackageImpl#getConvolution()
+ * @generated
+ */
+ int CONVOLUTION = 0;
+
+ /**
+ * The feature id for the '<em><b>Base Class</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONVOLUTION__BASE_CLASS = CONVOLUTION_LAYERS__BASE_CLASS;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONVOLUTION__NAME = CONVOLUTION_LAYERS__NAME;
+
+ /**
+ * The feature id for the '<em><b>Data</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONVOLUTION__DATA = CONVOLUTION_LAYERS__DATA;
+
+ /**
+ * The feature id for the '<em><b>Requires grad</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONVOLUTION__REQUIRES_GRAD = CONVOLUTION_LAYERS__REQUIRES_GRAD;
+
+ /**
+ * The feature id for the '<em><b>Sub Module</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONVOLUTION__SUB_MODULE = CONVOLUTION_LAYERS__SUB_MODULE;
+
+ /**
+ * The feature id for the '<em><b>Optimizer</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONVOLUTION__OPTIMIZER = CONVOLUTION_LAYERS__OPTIMIZER;
+
+ /**
+ * The feature id for the '<em><b>Loss</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONVOLUTION__LOSS = CONVOLUTION_LAYERS__LOSS;
+
+ /**
+ * The feature id for the '<em><b>Kernel size</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONVOLUTION__KERNEL_SIZE = CONVOLUTION_LAYERS__KERNEL_SIZE;
+
+ /**
+ * The feature id for the '<em><b>Stride</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONVOLUTION__STRIDE = CONVOLUTION_LAYERS__STRIDE;
+
+ /**
+ * The feature id for the '<em><b>Padding</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONVOLUTION__PADDING = CONVOLUTION_LAYERS__PADDING;
+
+ /**
+ * The feature id for the '<em><b>Dilation</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONVOLUTION__DILATION = CONVOLUTION_LAYERS__DILATION;
+
+ /**
+ * The feature id for the '<em><b>In channels</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONVOLUTION__IN_CHANNELS = CONVOLUTION_LAYERS_FEATURE_COUNT + 0;
+
+ /**
+ * The feature id for the '<em><b>Groups</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONVOLUTION__GROUPS = CONVOLUTION_LAYERS_FEATURE_COUNT + 1;
+
+ /**
+ * The feature id for the '<em><b>Biais</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONVOLUTION__BIAIS = CONVOLUTION_LAYERS_FEATURE_COUNT + 2;
+
+ /**
+ * The feature id for the '<em><b>Padding mode</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONVOLUTION__PADDING_MODE = CONVOLUTION_LAYERS_FEATURE_COUNT + 3;
+
+ /**
+ * The feature id for the '<em><b>Data format</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONVOLUTION__DATA_FORMAT = CONVOLUTION_LAYERS_FEATURE_COUNT + 4;
+
+ /**
+ * The feature id for the '<em><b>Dilation rate</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONVOLUTION__DILATION_RATE = CONVOLUTION_LAYERS_FEATURE_COUNT + 5;
+
+ /**
+ * The feature id for the '<em><b>Activation</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONVOLUTION__ACTIVATION = CONVOLUTION_LAYERS_FEATURE_COUNT + 6;
+
+ /**
+ * The feature id for the '<em><b>Bias initializer</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONVOLUTION__BIAS_INITIALIZER = CONVOLUTION_LAYERS_FEATURE_COUNT + 7;
+
+ /**
+ * The feature id for the '<em><b>Activity regularizer</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONVOLUTION__ACTIVITY_REGULARIZER = CONVOLUTION_LAYERS_FEATURE_COUNT + 8;
+
+ /**
+ * The feature id for the '<em><b>Bias constraint</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONVOLUTION__BIAS_CONSTRAINT = CONVOLUTION_LAYERS_FEATURE_COUNT + 9;
+
+ /**
+ * The feature id for the '<em><b>Bias regularizer</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONVOLUTION__BIAS_REGULARIZER = CONVOLUTION_LAYERS_FEATURE_COUNT + 10;
+
+ /**
+ * The number of structural features of the '<em>Convolution</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONVOLUTION_FEATURE_COUNT = CONVOLUTION_LAYERS_FEATURE_COUNT + 11;
+
+ /**
+ * The number of operations of the '<em>Convolution</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONVOLUTION_OPERATION_COUNT = CONVOLUTION_LAYERS_OPERATION_COUNT + 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.UnfoldImpl <em>Unfold</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.UnfoldImpl
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.Convolution_layersPackageImpl#getUnfold()
+ * @generated
+ */
+ int UNFOLD = 2;
+
+ /**
+ * The feature id for the '<em><b>Base Class</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int UNFOLD__BASE_CLASS = CONVOLUTION_LAYERS__BASE_CLASS;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int UNFOLD__NAME = CONVOLUTION_LAYERS__NAME;
+
+ /**
+ * The feature id for the '<em><b>Data</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int UNFOLD__DATA = CONVOLUTION_LAYERS__DATA;
+
+ /**
+ * The feature id for the '<em><b>Requires grad</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int UNFOLD__REQUIRES_GRAD = CONVOLUTION_LAYERS__REQUIRES_GRAD;
+
+ /**
+ * The feature id for the '<em><b>Sub Module</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int UNFOLD__SUB_MODULE = CONVOLUTION_LAYERS__SUB_MODULE;
+
+ /**
+ * The feature id for the '<em><b>Optimizer</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int UNFOLD__OPTIMIZER = CONVOLUTION_LAYERS__OPTIMIZER;
+
+ /**
+ * The feature id for the '<em><b>Loss</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int UNFOLD__LOSS = CONVOLUTION_LAYERS__LOSS;
+
+ /**
+ * The feature id for the '<em><b>Kernel size</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int UNFOLD__KERNEL_SIZE = CONVOLUTION_LAYERS__KERNEL_SIZE;
+
+ /**
+ * The feature id for the '<em><b>Stride</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int UNFOLD__STRIDE = CONVOLUTION_LAYERS__STRIDE;
+
+ /**
+ * The feature id for the '<em><b>Padding</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int UNFOLD__PADDING = CONVOLUTION_LAYERS__PADDING;
+
+ /**
+ * The feature id for the '<em><b>Dilation</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int UNFOLD__DILATION = CONVOLUTION_LAYERS__DILATION;
+
+ /**
+ * The number of structural features of the '<em>Unfold</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int UNFOLD_FEATURE_COUNT = CONVOLUTION_LAYERS_FEATURE_COUNT + 0;
+
+ /**
+ * The number of operations of the '<em>Unfold</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int UNFOLD_OPERATION_COUNT = CONVOLUTION_LAYERS_OPERATION_COUNT + 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.FoldImpl <em>Fold</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.FoldImpl
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.Convolution_layersPackageImpl#getFold()
+ * @generated
+ */
+ int FOLD = 3;
+
+ /**
+ * The feature id for the '<em><b>Base Class</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FOLD__BASE_CLASS = CONVOLUTION_LAYERS__BASE_CLASS;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FOLD__NAME = CONVOLUTION_LAYERS__NAME;
+
+ /**
+ * The feature id for the '<em><b>Data</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FOLD__DATA = CONVOLUTION_LAYERS__DATA;
+
+ /**
+ * The feature id for the '<em><b>Requires grad</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FOLD__REQUIRES_GRAD = CONVOLUTION_LAYERS__REQUIRES_GRAD;
+
+ /**
+ * The feature id for the '<em><b>Sub Module</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FOLD__SUB_MODULE = CONVOLUTION_LAYERS__SUB_MODULE;
+
+ /**
+ * The feature id for the '<em><b>Optimizer</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FOLD__OPTIMIZER = CONVOLUTION_LAYERS__OPTIMIZER;
+
+ /**
+ * The feature id for the '<em><b>Loss</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FOLD__LOSS = CONVOLUTION_LAYERS__LOSS;
+
+ /**
+ * The feature id for the '<em><b>Kernel size</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FOLD__KERNEL_SIZE = CONVOLUTION_LAYERS__KERNEL_SIZE;
+
+ /**
+ * The feature id for the '<em><b>Stride</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FOLD__STRIDE = CONVOLUTION_LAYERS__STRIDE;
+
+ /**
+ * The feature id for the '<em><b>Padding</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FOLD__PADDING = CONVOLUTION_LAYERS__PADDING;
+
+ /**
+ * The feature id for the '<em><b>Dilation</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FOLD__DILATION = CONVOLUTION_LAYERS__DILATION;
+
+ /**
+ * The feature id for the '<em><b>Output size</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FOLD__OUTPUT_SIZE = CONVOLUTION_LAYERS_FEATURE_COUNT + 0;
+
+ /**
+ * The number of structural features of the '<em>Fold</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FOLD_FEATURE_COUNT = CONVOLUTION_LAYERS_FEATURE_COUNT + 1;
+
+ /**
+ * The number of operations of the '<em>Fold</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FOLD_OPERATION_COUNT = CONVOLUTION_LAYERS_OPERATION_COUNT + 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.LayerWithFilterImpl <em>Layer With Filter</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.LayerWithFilterImpl
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.Convolution_layersPackageImpl#getLayerWithFilter()
+ * @generated
+ */
+ int LAYER_WITH_FILTER = 6;
+
+ /**
+ * The feature id for the '<em><b>Base Class</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LAYER_WITH_FILTER__BASE_CLASS = CONVOLUTION__BASE_CLASS;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LAYER_WITH_FILTER__NAME = CONVOLUTION__NAME;
+
+ /**
+ * The feature id for the '<em><b>Data</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LAYER_WITH_FILTER__DATA = CONVOLUTION__DATA;
+
+ /**
+ * The feature id for the '<em><b>Requires grad</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LAYER_WITH_FILTER__REQUIRES_GRAD = CONVOLUTION__REQUIRES_GRAD;
+
+ /**
+ * The feature id for the '<em><b>Sub Module</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LAYER_WITH_FILTER__SUB_MODULE = CONVOLUTION__SUB_MODULE;
+
+ /**
+ * The feature id for the '<em><b>Optimizer</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LAYER_WITH_FILTER__OPTIMIZER = CONVOLUTION__OPTIMIZER;
+
+ /**
+ * The feature id for the '<em><b>Loss</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LAYER_WITH_FILTER__LOSS = CONVOLUTION__LOSS;
+
+ /**
+ * The feature id for the '<em><b>Kernel size</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LAYER_WITH_FILTER__KERNEL_SIZE = CONVOLUTION__KERNEL_SIZE;
+
+ /**
+ * The feature id for the '<em><b>Stride</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LAYER_WITH_FILTER__STRIDE = CONVOLUTION__STRIDE;
+
+ /**
+ * The feature id for the '<em><b>Padding</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LAYER_WITH_FILTER__PADDING = CONVOLUTION__PADDING;
+
+ /**
+ * The feature id for the '<em><b>Dilation</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LAYER_WITH_FILTER__DILATION = CONVOLUTION__DILATION;
+
+ /**
+ * The feature id for the '<em><b>In channels</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LAYER_WITH_FILTER__IN_CHANNELS = CONVOLUTION__IN_CHANNELS;
+
+ /**
+ * The feature id for the '<em><b>Groups</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LAYER_WITH_FILTER__GROUPS = CONVOLUTION__GROUPS;
+
+ /**
+ * The feature id for the '<em><b>Biais</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LAYER_WITH_FILTER__BIAIS = CONVOLUTION__BIAIS;
+
+ /**
+ * The feature id for the '<em><b>Padding mode</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LAYER_WITH_FILTER__PADDING_MODE = CONVOLUTION__PADDING_MODE;
+
+ /**
+ * The feature id for the '<em><b>Data format</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LAYER_WITH_FILTER__DATA_FORMAT = CONVOLUTION__DATA_FORMAT;
+
+ /**
+ * The feature id for the '<em><b>Dilation rate</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LAYER_WITH_FILTER__DILATION_RATE = CONVOLUTION__DILATION_RATE;
+
+ /**
+ * The feature id for the '<em><b>Activation</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LAYER_WITH_FILTER__ACTIVATION = CONVOLUTION__ACTIVATION;
+
+ /**
+ * The feature id for the '<em><b>Bias initializer</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LAYER_WITH_FILTER__BIAS_INITIALIZER = CONVOLUTION__BIAS_INITIALIZER;
+
+ /**
+ * The feature id for the '<em><b>Activity regularizer</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LAYER_WITH_FILTER__ACTIVITY_REGULARIZER = CONVOLUTION__ACTIVITY_REGULARIZER;
+
+ /**
+ * The feature id for the '<em><b>Bias constraint</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LAYER_WITH_FILTER__BIAS_CONSTRAINT = CONVOLUTION__BIAS_CONSTRAINT;
+
+ /**
+ * The feature id for the '<em><b>Bias regularizer</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LAYER_WITH_FILTER__BIAS_REGULARIZER = CONVOLUTION__BIAS_REGULARIZER;
+
+ /**
+ * The feature id for the '<em><b>Out channels</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LAYER_WITH_FILTER__OUT_CHANNELS = CONVOLUTION_FEATURE_COUNT + 0;
+
+ /**
+ * The number of structural features of the '<em>Layer With Filter</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LAYER_WITH_FILTER_FEATURE_COUNT = CONVOLUTION_FEATURE_COUNT + 1;
+
+ /**
+ * The number of operations of the '<em>Layer With Filter</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LAYER_WITH_FILTER_OPERATION_COUNT = CONVOLUTION_OPERATION_COUNT + 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.basicImpl <em>basic</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.basicImpl
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.Convolution_layersPackageImpl#getbasic()
+ * @generated
+ */
+ int BASIC = 5;
+
+ /**
+ * The feature id for the '<em><b>Base Class</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int BASIC__BASE_CLASS = LAYER_WITH_FILTER__BASE_CLASS;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int BASIC__NAME = LAYER_WITH_FILTER__NAME;
+
+ /**
+ * The feature id for the '<em><b>Data</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int BASIC__DATA = LAYER_WITH_FILTER__DATA;
+
+ /**
+ * The feature id for the '<em><b>Requires grad</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int BASIC__REQUIRES_GRAD = LAYER_WITH_FILTER__REQUIRES_GRAD;
+
+ /**
+ * The feature id for the '<em><b>Sub Module</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int BASIC__SUB_MODULE = LAYER_WITH_FILTER__SUB_MODULE;
+
+ /**
+ * The feature id for the '<em><b>Optimizer</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int BASIC__OPTIMIZER = LAYER_WITH_FILTER__OPTIMIZER;
+
+ /**
+ * The feature id for the '<em><b>Loss</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int BASIC__LOSS = LAYER_WITH_FILTER__LOSS;
+
+ /**
+ * The feature id for the '<em><b>Kernel size</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int BASIC__KERNEL_SIZE = LAYER_WITH_FILTER__KERNEL_SIZE;
+
+ /**
+ * The feature id for the '<em><b>Stride</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int BASIC__STRIDE = LAYER_WITH_FILTER__STRIDE;
+
+ /**
+ * The feature id for the '<em><b>Padding</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int BASIC__PADDING = LAYER_WITH_FILTER__PADDING;
+
+ /**
+ * The feature id for the '<em><b>Dilation</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int BASIC__DILATION = LAYER_WITH_FILTER__DILATION;
+
+ /**
+ * The feature id for the '<em><b>In channels</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int BASIC__IN_CHANNELS = LAYER_WITH_FILTER__IN_CHANNELS;
+
+ /**
+ * The feature id for the '<em><b>Groups</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int BASIC__GROUPS = LAYER_WITH_FILTER__GROUPS;
+
+ /**
+ * The feature id for the '<em><b>Biais</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int BASIC__BIAIS = LAYER_WITH_FILTER__BIAIS;
+
+ /**
+ * The feature id for the '<em><b>Padding mode</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int BASIC__PADDING_MODE = LAYER_WITH_FILTER__PADDING_MODE;
+
+ /**
+ * The feature id for the '<em><b>Data format</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int BASIC__DATA_FORMAT = LAYER_WITH_FILTER__DATA_FORMAT;
+
+ /**
+ * The feature id for the '<em><b>Dilation rate</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int BASIC__DILATION_RATE = LAYER_WITH_FILTER__DILATION_RATE;
+
+ /**
+ * The feature id for the '<em><b>Activation</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int BASIC__ACTIVATION = LAYER_WITH_FILTER__ACTIVATION;
+
+ /**
+ * The feature id for the '<em><b>Bias initializer</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int BASIC__BIAS_INITIALIZER = LAYER_WITH_FILTER__BIAS_INITIALIZER;
+
+ /**
+ * The feature id for the '<em><b>Activity regularizer</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int BASIC__ACTIVITY_REGULARIZER = LAYER_WITH_FILTER__ACTIVITY_REGULARIZER;
+
+ /**
+ * The feature id for the '<em><b>Bias constraint</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int BASIC__BIAS_CONSTRAINT = LAYER_WITH_FILTER__BIAS_CONSTRAINT;
+
+ /**
+ * The feature id for the '<em><b>Bias regularizer</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int BASIC__BIAS_REGULARIZER = LAYER_WITH_FILTER__BIAS_REGULARIZER;
+
+ /**
+ * The feature id for the '<em><b>Out channels</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int BASIC__OUT_CHANNELS = LAYER_WITH_FILTER__OUT_CHANNELS;
+
+ /**
+ * The feature id for the '<em><b>Kernel initializer</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int BASIC__KERNEL_INITIALIZER = LAYER_WITH_FILTER_FEATURE_COUNT + 0;
+
+ /**
+ * The feature id for the '<em><b>Kernel constraint</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int BASIC__KERNEL_CONSTRAINT = LAYER_WITH_FILTER_FEATURE_COUNT + 1;
+
+ /**
+ * The feature id for the '<em><b>Kernel regularizer</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int BASIC__KERNEL_REGULARIZER = LAYER_WITH_FILTER_FEATURE_COUNT + 2;
+
+ /**
+ * The number of structural features of the '<em>basic</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int BASIC_FEATURE_COUNT = LAYER_WITH_FILTER_FEATURE_COUNT + 3;
+
+ /**
+ * The number of operations of the '<em>basic</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int BASIC_OPERATION_COUNT = LAYER_WITH_FILTER_OPERATION_COUNT + 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.Conv2dImpl <em>Conv2d</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.Conv2dImpl
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.Convolution_layersPackageImpl#getConv2d()
+ * @generated
+ */
+ int CONV2D = 4;
+
+ /**
+ * The feature id for the '<em><b>Base Class</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV2D__BASE_CLASS = BASIC__BASE_CLASS;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV2D__NAME = BASIC__NAME;
+
+ /**
+ * The feature id for the '<em><b>Data</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV2D__DATA = BASIC__DATA;
+
+ /**
+ * The feature id for the '<em><b>Requires grad</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV2D__REQUIRES_GRAD = BASIC__REQUIRES_GRAD;
+
+ /**
+ * The feature id for the '<em><b>Sub Module</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV2D__SUB_MODULE = BASIC__SUB_MODULE;
+
+ /**
+ * The feature id for the '<em><b>Optimizer</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV2D__OPTIMIZER = BASIC__OPTIMIZER;
+
+ /**
+ * The feature id for the '<em><b>Loss</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV2D__LOSS = BASIC__LOSS;
+
+ /**
+ * The feature id for the '<em><b>Kernel size</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV2D__KERNEL_SIZE = BASIC__KERNEL_SIZE;
+
+ /**
+ * The feature id for the '<em><b>Stride</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV2D__STRIDE = BASIC__STRIDE;
+
+ /**
+ * The feature id for the '<em><b>Padding</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV2D__PADDING = BASIC__PADDING;
+
+ /**
+ * The feature id for the '<em><b>Dilation</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV2D__DILATION = BASIC__DILATION;
+
+ /**
+ * The feature id for the '<em><b>In channels</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV2D__IN_CHANNELS = BASIC__IN_CHANNELS;
+
+ /**
+ * The feature id for the '<em><b>Groups</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV2D__GROUPS = BASIC__GROUPS;
+
+ /**
+ * The feature id for the '<em><b>Biais</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV2D__BIAIS = BASIC__BIAIS;
+
+ /**
+ * The feature id for the '<em><b>Padding mode</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV2D__PADDING_MODE = BASIC__PADDING_MODE;
+
+ /**
+ * The feature id for the '<em><b>Data format</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV2D__DATA_FORMAT = BASIC__DATA_FORMAT;
+
+ /**
+ * The feature id for the '<em><b>Dilation rate</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV2D__DILATION_RATE = BASIC__DILATION_RATE;
+
+ /**
+ * The feature id for the '<em><b>Activation</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV2D__ACTIVATION = BASIC__ACTIVATION;
+
+ /**
+ * The feature id for the '<em><b>Bias initializer</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV2D__BIAS_INITIALIZER = BASIC__BIAS_INITIALIZER;
+
+ /**
+ * The feature id for the '<em><b>Activity regularizer</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV2D__ACTIVITY_REGULARIZER = BASIC__ACTIVITY_REGULARIZER;
+
+ /**
+ * The feature id for the '<em><b>Bias constraint</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV2D__BIAS_CONSTRAINT = BASIC__BIAS_CONSTRAINT;
+
+ /**
+ * The feature id for the '<em><b>Bias regularizer</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV2D__BIAS_REGULARIZER = BASIC__BIAS_REGULARIZER;
+
+ /**
+ * The feature id for the '<em><b>Out channels</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV2D__OUT_CHANNELS = BASIC__OUT_CHANNELS;
+
+ /**
+ * The feature id for the '<em><b>Kernel initializer</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV2D__KERNEL_INITIALIZER = BASIC__KERNEL_INITIALIZER;
+
+ /**
+ * The feature id for the '<em><b>Kernel constraint</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV2D__KERNEL_CONSTRAINT = BASIC__KERNEL_CONSTRAINT;
+
+ /**
+ * The feature id for the '<em><b>Kernel regularizer</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV2D__KERNEL_REGULARIZER = BASIC__KERNEL_REGULARIZER;
+
+ /**
+ * The number of structural features of the '<em>Conv2d</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV2D_FEATURE_COUNT = BASIC_FEATURE_COUNT + 0;
+
+ /**
+ * The number of operations of the '<em>Conv2d</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV2D_OPERATION_COUNT = BASIC_OPERATION_COUNT + 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.Conv3dImpl <em>Conv3d</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.Conv3dImpl
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.Convolution_layersPackageImpl#getConv3d()
+ * @generated
+ */
+ int CONV3D = 7;
+
+ /**
+ * The feature id for the '<em><b>Base Class</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV3D__BASE_CLASS = BASIC__BASE_CLASS;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV3D__NAME = BASIC__NAME;
+
+ /**
+ * The feature id for the '<em><b>Data</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV3D__DATA = BASIC__DATA;
+
+ /**
+ * The feature id for the '<em><b>Requires grad</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV3D__REQUIRES_GRAD = BASIC__REQUIRES_GRAD;
+
+ /**
+ * The feature id for the '<em><b>Sub Module</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV3D__SUB_MODULE = BASIC__SUB_MODULE;
+
+ /**
+ * The feature id for the '<em><b>Optimizer</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV3D__OPTIMIZER = BASIC__OPTIMIZER;
+
+ /**
+ * The feature id for the '<em><b>Loss</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV3D__LOSS = BASIC__LOSS;
+
+ /**
+ * The feature id for the '<em><b>Kernel size</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV3D__KERNEL_SIZE = BASIC__KERNEL_SIZE;
+
+ /**
+ * The feature id for the '<em><b>Stride</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV3D__STRIDE = BASIC__STRIDE;
+
+ /**
+ * The feature id for the '<em><b>Padding</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV3D__PADDING = BASIC__PADDING;
+
+ /**
+ * The feature id for the '<em><b>Dilation</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV3D__DILATION = BASIC__DILATION;
+
+ /**
+ * The feature id for the '<em><b>In channels</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV3D__IN_CHANNELS = BASIC__IN_CHANNELS;
+
+ /**
+ * The feature id for the '<em><b>Groups</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV3D__GROUPS = BASIC__GROUPS;
+
+ /**
+ * The feature id for the '<em><b>Biais</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV3D__BIAIS = BASIC__BIAIS;
+
+ /**
+ * The feature id for the '<em><b>Padding mode</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV3D__PADDING_MODE = BASIC__PADDING_MODE;
+
+ /**
+ * The feature id for the '<em><b>Data format</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV3D__DATA_FORMAT = BASIC__DATA_FORMAT;
+
+ /**
+ * The feature id for the '<em><b>Dilation rate</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV3D__DILATION_RATE = BASIC__DILATION_RATE;
+
+ /**
+ * The feature id for the '<em><b>Activation</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV3D__ACTIVATION = BASIC__ACTIVATION;
+
+ /**
+ * The feature id for the '<em><b>Bias initializer</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV3D__BIAS_INITIALIZER = BASIC__BIAS_INITIALIZER;
+
+ /**
+ * The feature id for the '<em><b>Activity regularizer</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV3D__ACTIVITY_REGULARIZER = BASIC__ACTIVITY_REGULARIZER;
+
+ /**
+ * The feature id for the '<em><b>Bias constraint</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV3D__BIAS_CONSTRAINT = BASIC__BIAS_CONSTRAINT;
+
+ /**
+ * The feature id for the '<em><b>Bias regularizer</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV3D__BIAS_REGULARIZER = BASIC__BIAS_REGULARIZER;
+
+ /**
+ * The feature id for the '<em><b>Out channels</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV3D__OUT_CHANNELS = BASIC__OUT_CHANNELS;
+
+ /**
+ * The feature id for the '<em><b>Kernel initializer</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV3D__KERNEL_INITIALIZER = BASIC__KERNEL_INITIALIZER;
+
+ /**
+ * The feature id for the '<em><b>Kernel constraint</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV3D__KERNEL_CONSTRAINT = BASIC__KERNEL_CONSTRAINT;
+
+ /**
+ * The feature id for the '<em><b>Kernel regularizer</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV3D__KERNEL_REGULARIZER = BASIC__KERNEL_REGULARIZER;
+
+ /**
+ * The number of structural features of the '<em>Conv3d</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV3D_FEATURE_COUNT = BASIC_FEATURE_COUNT + 0;
+
+ /**
+ * The number of operations of the '<em>Conv3d</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV3D_OPERATION_COUNT = BASIC_OPERATION_COUNT + 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.ConvTranspose1dImpl <em>Conv Transpose1d</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.ConvTranspose1dImpl
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.Convolution_layersPackageImpl#getConvTranspose1d()
+ * @generated
+ */
+ int CONV_TRANSPOSE1D = 8;
+
+ /**
+ * The feature id for the '<em><b>Base Class</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV_TRANSPOSE1D__BASE_CLASS = LAYER_WITH_FILTER__BASE_CLASS;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV_TRANSPOSE1D__NAME = LAYER_WITH_FILTER__NAME;
+
+ /**
+ * The feature id for the '<em><b>Data</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV_TRANSPOSE1D__DATA = LAYER_WITH_FILTER__DATA;
+
+ /**
+ * The feature id for the '<em><b>Requires grad</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV_TRANSPOSE1D__REQUIRES_GRAD = LAYER_WITH_FILTER__REQUIRES_GRAD;
+
+ /**
+ * The feature id for the '<em><b>Sub Module</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV_TRANSPOSE1D__SUB_MODULE = LAYER_WITH_FILTER__SUB_MODULE;
+
+ /**
+ * The feature id for the '<em><b>Optimizer</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV_TRANSPOSE1D__OPTIMIZER = LAYER_WITH_FILTER__OPTIMIZER;
+
+ /**
+ * The feature id for the '<em><b>Loss</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV_TRANSPOSE1D__LOSS = LAYER_WITH_FILTER__LOSS;
+
+ /**
+ * The feature id for the '<em><b>Kernel size</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV_TRANSPOSE1D__KERNEL_SIZE = LAYER_WITH_FILTER__KERNEL_SIZE;
+
+ /**
+ * The feature id for the '<em><b>Stride</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV_TRANSPOSE1D__STRIDE = LAYER_WITH_FILTER__STRIDE;
+
+ /**
+ * The feature id for the '<em><b>Padding</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV_TRANSPOSE1D__PADDING = LAYER_WITH_FILTER__PADDING;
+
+ /**
+ * The feature id for the '<em><b>Dilation</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV_TRANSPOSE1D__DILATION = LAYER_WITH_FILTER__DILATION;
+
+ /**
+ * The feature id for the '<em><b>In channels</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV_TRANSPOSE1D__IN_CHANNELS = LAYER_WITH_FILTER__IN_CHANNELS;
+
+ /**
+ * The feature id for the '<em><b>Groups</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV_TRANSPOSE1D__GROUPS = LAYER_WITH_FILTER__GROUPS;
+
+ /**
+ * The feature id for the '<em><b>Biais</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV_TRANSPOSE1D__BIAIS = LAYER_WITH_FILTER__BIAIS;
+
+ /**
+ * The feature id for the '<em><b>Padding mode</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV_TRANSPOSE1D__PADDING_MODE = LAYER_WITH_FILTER__PADDING_MODE;
+
+ /**
+ * The feature id for the '<em><b>Data format</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV_TRANSPOSE1D__DATA_FORMAT = LAYER_WITH_FILTER__DATA_FORMAT;
+
+ /**
+ * The feature id for the '<em><b>Dilation rate</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV_TRANSPOSE1D__DILATION_RATE = LAYER_WITH_FILTER__DILATION_RATE;
+
+ /**
+ * The feature id for the '<em><b>Activation</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV_TRANSPOSE1D__ACTIVATION = LAYER_WITH_FILTER__ACTIVATION;
+
+ /**
+ * The feature id for the '<em><b>Bias initializer</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV_TRANSPOSE1D__BIAS_INITIALIZER = LAYER_WITH_FILTER__BIAS_INITIALIZER;
+
+ /**
+ * The feature id for the '<em><b>Activity regularizer</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV_TRANSPOSE1D__ACTIVITY_REGULARIZER = LAYER_WITH_FILTER__ACTIVITY_REGULARIZER;
+
+ /**
+ * The feature id for the '<em><b>Bias constraint</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV_TRANSPOSE1D__BIAS_CONSTRAINT = LAYER_WITH_FILTER__BIAS_CONSTRAINT;
+
+ /**
+ * The feature id for the '<em><b>Bias regularizer</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV_TRANSPOSE1D__BIAS_REGULARIZER = LAYER_WITH_FILTER__BIAS_REGULARIZER;
+
+ /**
+ * The feature id for the '<em><b>Out channels</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV_TRANSPOSE1D__OUT_CHANNELS = LAYER_WITH_FILTER__OUT_CHANNELS;
+
+ /**
+ * The number of structural features of the '<em>Conv Transpose1d</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV_TRANSPOSE1D_FEATURE_COUNT = LAYER_WITH_FILTER_FEATURE_COUNT + 0;
+
+ /**
+ * The number of operations of the '<em>Conv Transpose1d</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV_TRANSPOSE1D_OPERATION_COUNT = LAYER_WITH_FILTER_OPERATION_COUNT + 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.transposeImpl <em>transpose</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.transposeImpl
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.Convolution_layersPackageImpl#gettranspose()
+ * @generated
+ */
+ int TRANSPOSE = 10;
+
+ /**
+ * The feature id for the '<em><b>Base Class</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TRANSPOSE__BASE_CLASS = BASIC__BASE_CLASS;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TRANSPOSE__NAME = BASIC__NAME;
+
+ /**
+ * The feature id for the '<em><b>Data</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TRANSPOSE__DATA = BASIC__DATA;
+
+ /**
+ * The feature id for the '<em><b>Requires grad</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TRANSPOSE__REQUIRES_GRAD = BASIC__REQUIRES_GRAD;
+
+ /**
+ * The feature id for the '<em><b>Sub Module</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TRANSPOSE__SUB_MODULE = BASIC__SUB_MODULE;
+
+ /**
+ * The feature id for the '<em><b>Optimizer</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TRANSPOSE__OPTIMIZER = BASIC__OPTIMIZER;
+
+ /**
+ * The feature id for the '<em><b>Loss</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TRANSPOSE__LOSS = BASIC__LOSS;
+
+ /**
+ * The feature id for the '<em><b>Kernel size</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TRANSPOSE__KERNEL_SIZE = BASIC__KERNEL_SIZE;
+
+ /**
+ * The feature id for the '<em><b>Stride</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TRANSPOSE__STRIDE = BASIC__STRIDE;
+
+ /**
+ * The feature id for the '<em><b>Padding</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TRANSPOSE__PADDING = BASIC__PADDING;
+
+ /**
+ * The feature id for the '<em><b>Dilation</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TRANSPOSE__DILATION = BASIC__DILATION;
+
+ /**
+ * The feature id for the '<em><b>In channels</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TRANSPOSE__IN_CHANNELS = BASIC__IN_CHANNELS;
+
+ /**
+ * The feature id for the '<em><b>Groups</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TRANSPOSE__GROUPS = BASIC__GROUPS;
+
+ /**
+ * The feature id for the '<em><b>Biais</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TRANSPOSE__BIAIS = BASIC__BIAIS;
+
+ /**
+ * The feature id for the '<em><b>Padding mode</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TRANSPOSE__PADDING_MODE = BASIC__PADDING_MODE;
+
+ /**
+ * The feature id for the '<em><b>Data format</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TRANSPOSE__DATA_FORMAT = BASIC__DATA_FORMAT;
+
+ /**
+ * The feature id for the '<em><b>Dilation rate</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TRANSPOSE__DILATION_RATE = BASIC__DILATION_RATE;
+
+ /**
+ * The feature id for the '<em><b>Activation</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TRANSPOSE__ACTIVATION = BASIC__ACTIVATION;
+
+ /**
+ * The feature id for the '<em><b>Bias initializer</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TRANSPOSE__BIAS_INITIALIZER = BASIC__BIAS_INITIALIZER;
+
+ /**
+ * The feature id for the '<em><b>Activity regularizer</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TRANSPOSE__ACTIVITY_REGULARIZER = BASIC__ACTIVITY_REGULARIZER;
+
+ /**
+ * The feature id for the '<em><b>Bias constraint</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TRANSPOSE__BIAS_CONSTRAINT = BASIC__BIAS_CONSTRAINT;
+
+ /**
+ * The feature id for the '<em><b>Bias regularizer</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TRANSPOSE__BIAS_REGULARIZER = BASIC__BIAS_REGULARIZER;
+
+ /**
+ * The feature id for the '<em><b>Out channels</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TRANSPOSE__OUT_CHANNELS = BASIC__OUT_CHANNELS;
+
+ /**
+ * The feature id for the '<em><b>Kernel initializer</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TRANSPOSE__KERNEL_INITIALIZER = BASIC__KERNEL_INITIALIZER;
+
+ /**
+ * The feature id for the '<em><b>Kernel constraint</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TRANSPOSE__KERNEL_CONSTRAINT = BASIC__KERNEL_CONSTRAINT;
+
+ /**
+ * The feature id for the '<em><b>Kernel regularizer</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TRANSPOSE__KERNEL_REGULARIZER = BASIC__KERNEL_REGULARIZER;
+
+ /**
+ * The feature id for the '<em><b>Output padding</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TRANSPOSE__OUTPUT_PADDING = BASIC_FEATURE_COUNT + 0;
+
+ /**
+ * The number of structural features of the '<em>transpose</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TRANSPOSE_FEATURE_COUNT = BASIC_FEATURE_COUNT + 1;
+
+ /**
+ * The number of operations of the '<em>transpose</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TRANSPOSE_OPERATION_COUNT = BASIC_OPERATION_COUNT + 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.ConvTranspose2dImpl <em>Conv Transpose2d</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.ConvTranspose2dImpl
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.Convolution_layersPackageImpl#getConvTranspose2d()
+ * @generated
+ */
+ int CONV_TRANSPOSE2D = 9;
+
+ /**
+ * The feature id for the '<em><b>Base Class</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV_TRANSPOSE2D__BASE_CLASS = TRANSPOSE__BASE_CLASS;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV_TRANSPOSE2D__NAME = TRANSPOSE__NAME;
+
+ /**
+ * The feature id for the '<em><b>Data</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV_TRANSPOSE2D__DATA = TRANSPOSE__DATA;
+
+ /**
+ * The feature id for the '<em><b>Requires grad</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV_TRANSPOSE2D__REQUIRES_GRAD = TRANSPOSE__REQUIRES_GRAD;
+
+ /**
+ * The feature id for the '<em><b>Sub Module</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV_TRANSPOSE2D__SUB_MODULE = TRANSPOSE__SUB_MODULE;
+
+ /**
+ * The feature id for the '<em><b>Optimizer</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV_TRANSPOSE2D__OPTIMIZER = TRANSPOSE__OPTIMIZER;
+
+ /**
+ * The feature id for the '<em><b>Loss</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV_TRANSPOSE2D__LOSS = TRANSPOSE__LOSS;
+
+ /**
+ * The feature id for the '<em><b>Kernel size</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV_TRANSPOSE2D__KERNEL_SIZE = TRANSPOSE__KERNEL_SIZE;
+
+ /**
+ * The feature id for the '<em><b>Stride</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV_TRANSPOSE2D__STRIDE = TRANSPOSE__STRIDE;
+
+ /**
+ * The feature id for the '<em><b>Padding</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV_TRANSPOSE2D__PADDING = TRANSPOSE__PADDING;
+
+ /**
+ * The feature id for the '<em><b>Dilation</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV_TRANSPOSE2D__DILATION = TRANSPOSE__DILATION;
+
+ /**
+ * The feature id for the '<em><b>In channels</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV_TRANSPOSE2D__IN_CHANNELS = TRANSPOSE__IN_CHANNELS;
+
+ /**
+ * The feature id for the '<em><b>Groups</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV_TRANSPOSE2D__GROUPS = TRANSPOSE__GROUPS;
+
+ /**
+ * The feature id for the '<em><b>Biais</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV_TRANSPOSE2D__BIAIS = TRANSPOSE__BIAIS;
+
+ /**
+ * The feature id for the '<em><b>Padding mode</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV_TRANSPOSE2D__PADDING_MODE = TRANSPOSE__PADDING_MODE;
+
+ /**
+ * The feature id for the '<em><b>Data format</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV_TRANSPOSE2D__DATA_FORMAT = TRANSPOSE__DATA_FORMAT;
+
+ /**
+ * The feature id for the '<em><b>Dilation rate</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV_TRANSPOSE2D__DILATION_RATE = TRANSPOSE__DILATION_RATE;
+
+ /**
+ * The feature id for the '<em><b>Activation</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV_TRANSPOSE2D__ACTIVATION = TRANSPOSE__ACTIVATION;
+
+ /**
+ * The feature id for the '<em><b>Bias initializer</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV_TRANSPOSE2D__BIAS_INITIALIZER = TRANSPOSE__BIAS_INITIALIZER;
+
+ /**
+ * The feature id for the '<em><b>Activity regularizer</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV_TRANSPOSE2D__ACTIVITY_REGULARIZER = TRANSPOSE__ACTIVITY_REGULARIZER;
+
+ /**
+ * The feature id for the '<em><b>Bias constraint</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV_TRANSPOSE2D__BIAS_CONSTRAINT = TRANSPOSE__BIAS_CONSTRAINT;
+
+ /**
+ * The feature id for the '<em><b>Bias regularizer</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV_TRANSPOSE2D__BIAS_REGULARIZER = TRANSPOSE__BIAS_REGULARIZER;
+
+ /**
+ * The feature id for the '<em><b>Out channels</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV_TRANSPOSE2D__OUT_CHANNELS = TRANSPOSE__OUT_CHANNELS;
+
+ /**
+ * The feature id for the '<em><b>Kernel initializer</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV_TRANSPOSE2D__KERNEL_INITIALIZER = TRANSPOSE__KERNEL_INITIALIZER;
+
+ /**
+ * The feature id for the '<em><b>Kernel constraint</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV_TRANSPOSE2D__KERNEL_CONSTRAINT = TRANSPOSE__KERNEL_CONSTRAINT;
+
+ /**
+ * The feature id for the '<em><b>Kernel regularizer</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV_TRANSPOSE2D__KERNEL_REGULARIZER = TRANSPOSE__KERNEL_REGULARIZER;
+
+ /**
+ * The feature id for the '<em><b>Output padding</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV_TRANSPOSE2D__OUTPUT_PADDING = TRANSPOSE__OUTPUT_PADDING;
+
+ /**
+ * The number of structural features of the '<em>Conv Transpose2d</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV_TRANSPOSE2D_FEATURE_COUNT = TRANSPOSE_FEATURE_COUNT + 0;
+
+ /**
+ * The number of operations of the '<em>Conv Transpose2d</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV_TRANSPOSE2D_OPERATION_COUNT = TRANSPOSE_OPERATION_COUNT + 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.ConvTranspose3dImpl <em>Conv Transpose3d</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.ConvTranspose3dImpl
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.Convolution_layersPackageImpl#getConvTranspose3d()
+ * @generated
+ */
+ int CONV_TRANSPOSE3D = 11;
+
+ /**
+ * The feature id for the '<em><b>Base Class</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV_TRANSPOSE3D__BASE_CLASS = TRANSPOSE__BASE_CLASS;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV_TRANSPOSE3D__NAME = TRANSPOSE__NAME;
+
+ /**
+ * The feature id for the '<em><b>Data</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV_TRANSPOSE3D__DATA = TRANSPOSE__DATA;
+
+ /**
+ * The feature id for the '<em><b>Requires grad</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV_TRANSPOSE3D__REQUIRES_GRAD = TRANSPOSE__REQUIRES_GRAD;
+
+ /**
+ * The feature id for the '<em><b>Sub Module</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV_TRANSPOSE3D__SUB_MODULE = TRANSPOSE__SUB_MODULE;
+
+ /**
+ * The feature id for the '<em><b>Optimizer</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV_TRANSPOSE3D__OPTIMIZER = TRANSPOSE__OPTIMIZER;
+
+ /**
+ * The feature id for the '<em><b>Loss</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV_TRANSPOSE3D__LOSS = TRANSPOSE__LOSS;
+
+ /**
+ * The feature id for the '<em><b>Kernel size</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV_TRANSPOSE3D__KERNEL_SIZE = TRANSPOSE__KERNEL_SIZE;
+
+ /**
+ * The feature id for the '<em><b>Stride</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV_TRANSPOSE3D__STRIDE = TRANSPOSE__STRIDE;
+
+ /**
+ * The feature id for the '<em><b>Padding</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV_TRANSPOSE3D__PADDING = TRANSPOSE__PADDING;
+
+ /**
+ * The feature id for the '<em><b>Dilation</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV_TRANSPOSE3D__DILATION = TRANSPOSE__DILATION;
+
+ /**
+ * The feature id for the '<em><b>In channels</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV_TRANSPOSE3D__IN_CHANNELS = TRANSPOSE__IN_CHANNELS;
+
+ /**
+ * The feature id for the '<em><b>Groups</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV_TRANSPOSE3D__GROUPS = TRANSPOSE__GROUPS;
+
+ /**
+ * The feature id for the '<em><b>Biais</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV_TRANSPOSE3D__BIAIS = TRANSPOSE__BIAIS;
+
+ /**
+ * The feature id for the '<em><b>Padding mode</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV_TRANSPOSE3D__PADDING_MODE = TRANSPOSE__PADDING_MODE;
+
+ /**
+ * The feature id for the '<em><b>Data format</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV_TRANSPOSE3D__DATA_FORMAT = TRANSPOSE__DATA_FORMAT;
+
+ /**
+ * The feature id for the '<em><b>Dilation rate</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV_TRANSPOSE3D__DILATION_RATE = TRANSPOSE__DILATION_RATE;
+
+ /**
+ * The feature id for the '<em><b>Activation</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV_TRANSPOSE3D__ACTIVATION = TRANSPOSE__ACTIVATION;
+
+ /**
+ * The feature id for the '<em><b>Bias initializer</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV_TRANSPOSE3D__BIAS_INITIALIZER = TRANSPOSE__BIAS_INITIALIZER;
+
+ /**
+ * The feature id for the '<em><b>Activity regularizer</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV_TRANSPOSE3D__ACTIVITY_REGULARIZER = TRANSPOSE__ACTIVITY_REGULARIZER;
+
+ /**
+ * The feature id for the '<em><b>Bias constraint</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV_TRANSPOSE3D__BIAS_CONSTRAINT = TRANSPOSE__BIAS_CONSTRAINT;
+
+ /**
+ * The feature id for the '<em><b>Bias regularizer</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV_TRANSPOSE3D__BIAS_REGULARIZER = TRANSPOSE__BIAS_REGULARIZER;
+
+ /**
+ * The feature id for the '<em><b>Out channels</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV_TRANSPOSE3D__OUT_CHANNELS = TRANSPOSE__OUT_CHANNELS;
+
+ /**
+ * The feature id for the '<em><b>Kernel initializer</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV_TRANSPOSE3D__KERNEL_INITIALIZER = TRANSPOSE__KERNEL_INITIALIZER;
+
+ /**
+ * The feature id for the '<em><b>Kernel constraint</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV_TRANSPOSE3D__KERNEL_CONSTRAINT = TRANSPOSE__KERNEL_CONSTRAINT;
+
+ /**
+ * The feature id for the '<em><b>Kernel regularizer</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV_TRANSPOSE3D__KERNEL_REGULARIZER = TRANSPOSE__KERNEL_REGULARIZER;
+
+ /**
+ * The feature id for the '<em><b>Output padding</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV_TRANSPOSE3D__OUTPUT_PADDING = TRANSPOSE__OUTPUT_PADDING;
+
+ /**
+ * The number of structural features of the '<em>Conv Transpose3d</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV_TRANSPOSE3D_FEATURE_COUNT = TRANSPOSE_FEATURE_COUNT + 0;
+
+ /**
+ * The number of operations of the '<em>Conv Transpose3d</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV_TRANSPOSE3D_OPERATION_COUNT = TRANSPOSE_OPERATION_COUNT + 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.Conv1dImpl <em>Conv1d</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.Conv1dImpl
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.Convolution_layersPackageImpl#getConv1d()
+ * @generated
+ */
+ int CONV1D = 12;
+
+ /**
+ * The feature id for the '<em><b>Base Class</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV1D__BASE_CLASS = BASIC__BASE_CLASS;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV1D__NAME = BASIC__NAME;
+
+ /**
+ * The feature id for the '<em><b>Data</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV1D__DATA = BASIC__DATA;
+
+ /**
+ * The feature id for the '<em><b>Requires grad</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV1D__REQUIRES_GRAD = BASIC__REQUIRES_GRAD;
+
+ /**
+ * The feature id for the '<em><b>Sub Module</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV1D__SUB_MODULE = BASIC__SUB_MODULE;
+
+ /**
+ * The feature id for the '<em><b>Optimizer</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV1D__OPTIMIZER = BASIC__OPTIMIZER;
+
+ /**
+ * The feature id for the '<em><b>Loss</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV1D__LOSS = BASIC__LOSS;
+
+ /**
+ * The feature id for the '<em><b>Kernel size</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV1D__KERNEL_SIZE = BASIC__KERNEL_SIZE;
+
+ /**
+ * The feature id for the '<em><b>Stride</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV1D__STRIDE = BASIC__STRIDE;
+
+ /**
+ * The feature id for the '<em><b>Padding</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV1D__PADDING = BASIC__PADDING;
+
+ /**
+ * The feature id for the '<em><b>Dilation</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV1D__DILATION = BASIC__DILATION;
+
+ /**
+ * The feature id for the '<em><b>In channels</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV1D__IN_CHANNELS = BASIC__IN_CHANNELS;
+
+ /**
+ * The feature id for the '<em><b>Groups</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV1D__GROUPS = BASIC__GROUPS;
+
+ /**
+ * The feature id for the '<em><b>Biais</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV1D__BIAIS = BASIC__BIAIS;
+
+ /**
+ * The feature id for the '<em><b>Padding mode</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV1D__PADDING_MODE = BASIC__PADDING_MODE;
+
+ /**
+ * The feature id for the '<em><b>Data format</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV1D__DATA_FORMAT = BASIC__DATA_FORMAT;
+
+ /**
+ * The feature id for the '<em><b>Dilation rate</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV1D__DILATION_RATE = BASIC__DILATION_RATE;
+
+ /**
+ * The feature id for the '<em><b>Activation</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV1D__ACTIVATION = BASIC__ACTIVATION;
+
+ /**
+ * The feature id for the '<em><b>Bias initializer</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV1D__BIAS_INITIALIZER = BASIC__BIAS_INITIALIZER;
+
+ /**
+ * The feature id for the '<em><b>Activity regularizer</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV1D__ACTIVITY_REGULARIZER = BASIC__ACTIVITY_REGULARIZER;
+
+ /**
+ * The feature id for the '<em><b>Bias constraint</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV1D__BIAS_CONSTRAINT = BASIC__BIAS_CONSTRAINT;
+
+ /**
+ * The feature id for the '<em><b>Bias regularizer</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV1D__BIAS_REGULARIZER = BASIC__BIAS_REGULARIZER;
+
+ /**
+ * The feature id for the '<em><b>Out channels</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV1D__OUT_CHANNELS = BASIC__OUT_CHANNELS;
+
+ /**
+ * The feature id for the '<em><b>Kernel initializer</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV1D__KERNEL_INITIALIZER = BASIC__KERNEL_INITIALIZER;
+
+ /**
+ * The feature id for the '<em><b>Kernel constraint</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV1D__KERNEL_CONSTRAINT = BASIC__KERNEL_CONSTRAINT;
+
+ /**
+ * The feature id for the '<em><b>Kernel regularizer</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV1D__KERNEL_REGULARIZER = BASIC__KERNEL_REGULARIZER;
+
+ /**
+ * The number of structural features of the '<em>Conv1d</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV1D_FEATURE_COUNT = BASIC_FEATURE_COUNT + 0;
+
+ /**
+ * The number of operations of the '<em>Conv1d</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONV1D_OPERATION_COUNT = BASIC_OPERATION_COUNT + 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.SeparableImpl <em>Separable</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.SeparableImpl
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.Convolution_layersPackageImpl#getSeparable()
+ * @generated
+ */
+ int SEPARABLE = 13;
+
+ /**
+ * The feature id for the '<em><b>Base Class</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SEPARABLE__BASE_CLASS = LAYER_WITH_FILTER__BASE_CLASS;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SEPARABLE__NAME = LAYER_WITH_FILTER__NAME;
+
+ /**
+ * The feature id for the '<em><b>Data</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SEPARABLE__DATA = LAYER_WITH_FILTER__DATA;
+
+ /**
+ * The feature id for the '<em><b>Requires grad</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SEPARABLE__REQUIRES_GRAD = LAYER_WITH_FILTER__REQUIRES_GRAD;
+
+ /**
+ * The feature id for the '<em><b>Sub Module</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SEPARABLE__SUB_MODULE = LAYER_WITH_FILTER__SUB_MODULE;
+
+ /**
+ * The feature id for the '<em><b>Optimizer</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SEPARABLE__OPTIMIZER = LAYER_WITH_FILTER__OPTIMIZER;
+
+ /**
+ * The feature id for the '<em><b>Loss</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SEPARABLE__LOSS = LAYER_WITH_FILTER__LOSS;
+
+ /**
+ * The feature id for the '<em><b>Kernel size</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SEPARABLE__KERNEL_SIZE = LAYER_WITH_FILTER__KERNEL_SIZE;
+
+ /**
+ * The feature id for the '<em><b>Stride</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SEPARABLE__STRIDE = LAYER_WITH_FILTER__STRIDE;
+
+ /**
+ * The feature id for the '<em><b>Padding</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SEPARABLE__PADDING = LAYER_WITH_FILTER__PADDING;
+
+ /**
+ * The feature id for the '<em><b>Dilation</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SEPARABLE__DILATION = LAYER_WITH_FILTER__DILATION;
+
+ /**
+ * The feature id for the '<em><b>In channels</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SEPARABLE__IN_CHANNELS = LAYER_WITH_FILTER__IN_CHANNELS;
+
+ /**
+ * The feature id for the '<em><b>Groups</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SEPARABLE__GROUPS = LAYER_WITH_FILTER__GROUPS;
+
+ /**
+ * The feature id for the '<em><b>Biais</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SEPARABLE__BIAIS = LAYER_WITH_FILTER__BIAIS;
+
+ /**
+ * The feature id for the '<em><b>Padding mode</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SEPARABLE__PADDING_MODE = LAYER_WITH_FILTER__PADDING_MODE;
+
+ /**
+ * The feature id for the '<em><b>Data format</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SEPARABLE__DATA_FORMAT = LAYER_WITH_FILTER__DATA_FORMAT;
+
+ /**
+ * The feature id for the '<em><b>Dilation rate</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SEPARABLE__DILATION_RATE = LAYER_WITH_FILTER__DILATION_RATE;
+
+ /**
+ * The feature id for the '<em><b>Activation</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SEPARABLE__ACTIVATION = LAYER_WITH_FILTER__ACTIVATION;
+
+ /**
+ * The feature id for the '<em><b>Bias initializer</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SEPARABLE__BIAS_INITIALIZER = LAYER_WITH_FILTER__BIAS_INITIALIZER;
+
+ /**
+ * The feature id for the '<em><b>Activity regularizer</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SEPARABLE__ACTIVITY_REGULARIZER = LAYER_WITH_FILTER__ACTIVITY_REGULARIZER;
+
+ /**
+ * The feature id for the '<em><b>Bias constraint</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SEPARABLE__BIAS_CONSTRAINT = LAYER_WITH_FILTER__BIAS_CONSTRAINT;
+
+ /**
+ * The feature id for the '<em><b>Bias regularizer</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SEPARABLE__BIAS_REGULARIZER = LAYER_WITH_FILTER__BIAS_REGULARIZER;
+
+ /**
+ * The feature id for the '<em><b>Out channels</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SEPARABLE__OUT_CHANNELS = LAYER_WITH_FILTER__OUT_CHANNELS;
+
+ /**
+ * The feature id for the '<em><b>Depth multiplier</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SEPARABLE__DEPTH_MULTIPLIER = LAYER_WITH_FILTER_FEATURE_COUNT + 0;
+
+ /**
+ * The feature id for the '<em><b>Depthwise initializer</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SEPARABLE__DEPTHWISE_INITIALIZER = LAYER_WITH_FILTER_FEATURE_COUNT + 1;
+
+ /**
+ * The feature id for the '<em><b>Pointwise initializer</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SEPARABLE__POINTWISE_INITIALIZER = LAYER_WITH_FILTER_FEATURE_COUNT + 2;
+
+ /**
+ * The feature id for the '<em><b>Depthwise regularizer</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SEPARABLE__DEPTHWISE_REGULARIZER = LAYER_WITH_FILTER_FEATURE_COUNT + 3;
+
+ /**
+ * The feature id for the '<em><b>Poitnwise regularizer</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SEPARABLE__POITNWISE_REGULARIZER = LAYER_WITH_FILTER_FEATURE_COUNT + 4;
+
+ /**
+ * The feature id for the '<em><b>Depthwise constraint</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SEPARABLE__DEPTHWISE_CONSTRAINT = LAYER_WITH_FILTER_FEATURE_COUNT + 5;
+
+ /**
+ * The feature id for the '<em><b>Pointwise constraint</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SEPARABLE__POINTWISE_CONSTRAINT = LAYER_WITH_FILTER_FEATURE_COUNT + 6;
+
+ /**
+ * The number of structural features of the '<em>Separable</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SEPARABLE_FEATURE_COUNT = LAYER_WITH_FILTER_FEATURE_COUNT + 7;
+
+ /**
+ * The number of operations of the '<em>Separable</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SEPARABLE_OPERATION_COUNT = LAYER_WITH_FILTER_OPERATION_COUNT + 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.SeparableConv2DImpl <em>Separable Conv2 D</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.SeparableConv2DImpl
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.Convolution_layersPackageImpl#getSeparableConv2D()
+ * @generated
+ */
+ int SEPARABLE_CONV2_D = 14;
+
+ /**
+ * The feature id for the '<em><b>Base Class</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SEPARABLE_CONV2_D__BASE_CLASS = SEPARABLE__BASE_CLASS;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SEPARABLE_CONV2_D__NAME = SEPARABLE__NAME;
+
+ /**
+ * The feature id for the '<em><b>Data</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SEPARABLE_CONV2_D__DATA = SEPARABLE__DATA;
+
+ /**
+ * The feature id for the '<em><b>Requires grad</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SEPARABLE_CONV2_D__REQUIRES_GRAD = SEPARABLE__REQUIRES_GRAD;
+
+ /**
+ * The feature id for the '<em><b>Sub Module</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SEPARABLE_CONV2_D__SUB_MODULE = SEPARABLE__SUB_MODULE;
+
+ /**
+ * The feature id for the '<em><b>Optimizer</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SEPARABLE_CONV2_D__OPTIMIZER = SEPARABLE__OPTIMIZER;
+
+ /**
+ * The feature id for the '<em><b>Loss</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SEPARABLE_CONV2_D__LOSS = SEPARABLE__LOSS;
+
+ /**
+ * The feature id for the '<em><b>Kernel size</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SEPARABLE_CONV2_D__KERNEL_SIZE = SEPARABLE__KERNEL_SIZE;
+
+ /**
+ * The feature id for the '<em><b>Stride</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SEPARABLE_CONV2_D__STRIDE = SEPARABLE__STRIDE;
+
+ /**
+ * The feature id for the '<em><b>Padding</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SEPARABLE_CONV2_D__PADDING = SEPARABLE__PADDING;
+
+ /**
+ * The feature id for the '<em><b>Dilation</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SEPARABLE_CONV2_D__DILATION = SEPARABLE__DILATION;
+
+ /**
+ * The feature id for the '<em><b>In channels</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SEPARABLE_CONV2_D__IN_CHANNELS = SEPARABLE__IN_CHANNELS;
+
+ /**
+ * The feature id for the '<em><b>Groups</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SEPARABLE_CONV2_D__GROUPS = SEPARABLE__GROUPS;
+
+ /**
+ * The feature id for the '<em><b>Biais</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SEPARABLE_CONV2_D__BIAIS = SEPARABLE__BIAIS;
+
+ /**
+ * The feature id for the '<em><b>Padding mode</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SEPARABLE_CONV2_D__PADDING_MODE = SEPARABLE__PADDING_MODE;
+
+ /**
+ * The feature id for the '<em><b>Data format</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SEPARABLE_CONV2_D__DATA_FORMAT = SEPARABLE__DATA_FORMAT;
+
+ /**
+ * The feature id for the '<em><b>Dilation rate</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SEPARABLE_CONV2_D__DILATION_RATE = SEPARABLE__DILATION_RATE;
+
+ /**
+ * The feature id for the '<em><b>Activation</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SEPARABLE_CONV2_D__ACTIVATION = SEPARABLE__ACTIVATION;
+
+ /**
+ * The feature id for the '<em><b>Bias initializer</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SEPARABLE_CONV2_D__BIAS_INITIALIZER = SEPARABLE__BIAS_INITIALIZER;
+
+ /**
+ * The feature id for the '<em><b>Activity regularizer</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SEPARABLE_CONV2_D__ACTIVITY_REGULARIZER = SEPARABLE__ACTIVITY_REGULARIZER;
+
+ /**
+ * The feature id for the '<em><b>Bias constraint</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SEPARABLE_CONV2_D__BIAS_CONSTRAINT = SEPARABLE__BIAS_CONSTRAINT;
+
+ /**
+ * The feature id for the '<em><b>Bias regularizer</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SEPARABLE_CONV2_D__BIAS_REGULARIZER = SEPARABLE__BIAS_REGULARIZER;
+
+ /**
+ * The feature id for the '<em><b>Out channels</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SEPARABLE_CONV2_D__OUT_CHANNELS = SEPARABLE__OUT_CHANNELS;
+
+ /**
+ * The feature id for the '<em><b>Depth multiplier</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SEPARABLE_CONV2_D__DEPTH_MULTIPLIER = SEPARABLE__DEPTH_MULTIPLIER;
+
+ /**
+ * The feature id for the '<em><b>Depthwise initializer</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SEPARABLE_CONV2_D__DEPTHWISE_INITIALIZER = SEPARABLE__DEPTHWISE_INITIALIZER;
+
+ /**
+ * The feature id for the '<em><b>Pointwise initializer</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SEPARABLE_CONV2_D__POINTWISE_INITIALIZER = SEPARABLE__POINTWISE_INITIALIZER;
+
+ /**
+ * The feature id for the '<em><b>Depthwise regularizer</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SEPARABLE_CONV2_D__DEPTHWISE_REGULARIZER = SEPARABLE__DEPTHWISE_REGULARIZER;
+
+ /**
+ * The feature id for the '<em><b>Poitnwise regularizer</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SEPARABLE_CONV2_D__POITNWISE_REGULARIZER = SEPARABLE__POITNWISE_REGULARIZER;
+
+ /**
+ * The feature id for the '<em><b>Depthwise constraint</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SEPARABLE_CONV2_D__DEPTHWISE_CONSTRAINT = SEPARABLE__DEPTHWISE_CONSTRAINT;
+
+ /**
+ * The feature id for the '<em><b>Pointwise constraint</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SEPARABLE_CONV2_D__POINTWISE_CONSTRAINT = SEPARABLE__POINTWISE_CONSTRAINT;
+
+ /**
+ * The number of structural features of the '<em>Separable Conv2 D</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SEPARABLE_CONV2_D_FEATURE_COUNT = SEPARABLE_FEATURE_COUNT + 0;
+
+ /**
+ * The number of operations of the '<em>Separable Conv2 D</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SEPARABLE_CONV2_D_OPERATION_COUNT = SEPARABLE_OPERATION_COUNT + 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.SeparableConv1DImpl <em>Separable Conv1 D</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.SeparableConv1DImpl
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.Convolution_layersPackageImpl#getSeparableConv1D()
+ * @generated
+ */
+ int SEPARABLE_CONV1_D = 15;
+
+ /**
+ * The feature id for the '<em><b>Base Class</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SEPARABLE_CONV1_D__BASE_CLASS = SEPARABLE__BASE_CLASS;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SEPARABLE_CONV1_D__NAME = SEPARABLE__NAME;
+
+ /**
+ * The feature id for the '<em><b>Data</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SEPARABLE_CONV1_D__DATA = SEPARABLE__DATA;
+
+ /**
+ * The feature id for the '<em><b>Requires grad</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SEPARABLE_CONV1_D__REQUIRES_GRAD = SEPARABLE__REQUIRES_GRAD;
+
+ /**
+ * The feature id for the '<em><b>Sub Module</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SEPARABLE_CONV1_D__SUB_MODULE = SEPARABLE__SUB_MODULE;
+
+ /**
+ * The feature id for the '<em><b>Optimizer</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SEPARABLE_CONV1_D__OPTIMIZER = SEPARABLE__OPTIMIZER;
+
+ /**
+ * The feature id for the '<em><b>Loss</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SEPARABLE_CONV1_D__LOSS = SEPARABLE__LOSS;
+
+ /**
+ * The feature id for the '<em><b>Kernel size</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SEPARABLE_CONV1_D__KERNEL_SIZE = SEPARABLE__KERNEL_SIZE;
+
+ /**
+ * The feature id for the '<em><b>Stride</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SEPARABLE_CONV1_D__STRIDE = SEPARABLE__STRIDE;
+
+ /**
+ * The feature id for the '<em><b>Padding</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SEPARABLE_CONV1_D__PADDING = SEPARABLE__PADDING;
+
+ /**
+ * The feature id for the '<em><b>Dilation</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SEPARABLE_CONV1_D__DILATION = SEPARABLE__DILATION;
+
+ /**
+ * The feature id for the '<em><b>In channels</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SEPARABLE_CONV1_D__IN_CHANNELS = SEPARABLE__IN_CHANNELS;
+
+ /**
+ * The feature id for the '<em><b>Groups</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SEPARABLE_CONV1_D__GROUPS = SEPARABLE__GROUPS;
+
+ /**
+ * The feature id for the '<em><b>Biais</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SEPARABLE_CONV1_D__BIAIS = SEPARABLE__BIAIS;
+
+ /**
+ * The feature id for the '<em><b>Padding mode</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SEPARABLE_CONV1_D__PADDING_MODE = SEPARABLE__PADDING_MODE;
+
+ /**
+ * The feature id for the '<em><b>Data format</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SEPARABLE_CONV1_D__DATA_FORMAT = SEPARABLE__DATA_FORMAT;
+
+ /**
+ * The feature id for the '<em><b>Dilation rate</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SEPARABLE_CONV1_D__DILATION_RATE = SEPARABLE__DILATION_RATE;
+
+ /**
+ * The feature id for the '<em><b>Activation</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SEPARABLE_CONV1_D__ACTIVATION = SEPARABLE__ACTIVATION;
+
+ /**
+ * The feature id for the '<em><b>Bias initializer</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SEPARABLE_CONV1_D__BIAS_INITIALIZER = SEPARABLE__BIAS_INITIALIZER;
+
+ /**
+ * The feature id for the '<em><b>Activity regularizer</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SEPARABLE_CONV1_D__ACTIVITY_REGULARIZER = SEPARABLE__ACTIVITY_REGULARIZER;
+
+ /**
+ * The feature id for the '<em><b>Bias constraint</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SEPARABLE_CONV1_D__BIAS_CONSTRAINT = SEPARABLE__BIAS_CONSTRAINT;
+
+ /**
+ * The feature id for the '<em><b>Bias regularizer</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SEPARABLE_CONV1_D__BIAS_REGULARIZER = SEPARABLE__BIAS_REGULARIZER;
+
+ /**
+ * The feature id for the '<em><b>Out channels</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SEPARABLE_CONV1_D__OUT_CHANNELS = SEPARABLE__OUT_CHANNELS;
+
+ /**
+ * The feature id for the '<em><b>Depth multiplier</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SEPARABLE_CONV1_D__DEPTH_MULTIPLIER = SEPARABLE__DEPTH_MULTIPLIER;
+
+ /**
+ * The feature id for the '<em><b>Depthwise initializer</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SEPARABLE_CONV1_D__DEPTHWISE_INITIALIZER = SEPARABLE__DEPTHWISE_INITIALIZER;
+
+ /**
+ * The feature id for the '<em><b>Pointwise initializer</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SEPARABLE_CONV1_D__POINTWISE_INITIALIZER = SEPARABLE__POINTWISE_INITIALIZER;
+
+ /**
+ * The feature id for the '<em><b>Depthwise regularizer</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SEPARABLE_CONV1_D__DEPTHWISE_REGULARIZER = SEPARABLE__DEPTHWISE_REGULARIZER;
+
+ /**
+ * The feature id for the '<em><b>Poitnwise regularizer</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SEPARABLE_CONV1_D__POITNWISE_REGULARIZER = SEPARABLE__POITNWISE_REGULARIZER;
+
+ /**
+ * The feature id for the '<em><b>Depthwise constraint</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SEPARABLE_CONV1_D__DEPTHWISE_CONSTRAINT = SEPARABLE__DEPTHWISE_CONSTRAINT;
+
+ /**
+ * The feature id for the '<em><b>Pointwise constraint</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SEPARABLE_CONV1_D__POINTWISE_CONSTRAINT = SEPARABLE__POINTWISE_CONSTRAINT;
+
+ /**
+ * The number of structural features of the '<em>Separable Conv1 D</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SEPARABLE_CONV1_D_FEATURE_COUNT = SEPARABLE_FEATURE_COUNT + 0;
+
+ /**
+ * The number of operations of the '<em>Separable Conv1 D</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SEPARABLE_CONV1_D_OPERATION_COUNT = SEPARABLE_OPERATION_COUNT + 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.DepthwiseConv2DImpl <em>Depthwise Conv2 D</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.DepthwiseConv2DImpl
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.Convolution_layersPackageImpl#getDepthwiseConv2D()
+ * @generated
+ */
+ int DEPTHWISE_CONV2_D = 16;
+
+ /**
+ * The feature id for the '<em><b>Base Class</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DEPTHWISE_CONV2_D__BASE_CLASS = CONVOLUTION__BASE_CLASS;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DEPTHWISE_CONV2_D__NAME = CONVOLUTION__NAME;
+
+ /**
+ * The feature id for the '<em><b>Data</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DEPTHWISE_CONV2_D__DATA = CONVOLUTION__DATA;
+
+ /**
+ * The feature id for the '<em><b>Requires grad</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DEPTHWISE_CONV2_D__REQUIRES_GRAD = CONVOLUTION__REQUIRES_GRAD;
+
+ /**
+ * The feature id for the '<em><b>Sub Module</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DEPTHWISE_CONV2_D__SUB_MODULE = CONVOLUTION__SUB_MODULE;
+
+ /**
+ * The feature id for the '<em><b>Optimizer</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DEPTHWISE_CONV2_D__OPTIMIZER = CONVOLUTION__OPTIMIZER;
+
+ /**
+ * The feature id for the '<em><b>Loss</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DEPTHWISE_CONV2_D__LOSS = CONVOLUTION__LOSS;
+
+ /**
+ * The feature id for the '<em><b>Kernel size</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DEPTHWISE_CONV2_D__KERNEL_SIZE = CONVOLUTION__KERNEL_SIZE;
+
+ /**
+ * The feature id for the '<em><b>Stride</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DEPTHWISE_CONV2_D__STRIDE = CONVOLUTION__STRIDE;
+
+ /**
+ * The feature id for the '<em><b>Padding</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DEPTHWISE_CONV2_D__PADDING = CONVOLUTION__PADDING;
+
+ /**
+ * The feature id for the '<em><b>Dilation</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DEPTHWISE_CONV2_D__DILATION = CONVOLUTION__DILATION;
+
+ /**
+ * The feature id for the '<em><b>In channels</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DEPTHWISE_CONV2_D__IN_CHANNELS = CONVOLUTION__IN_CHANNELS;
+
+ /**
+ * The feature id for the '<em><b>Groups</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DEPTHWISE_CONV2_D__GROUPS = CONVOLUTION__GROUPS;
+
+ /**
+ * The feature id for the '<em><b>Biais</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DEPTHWISE_CONV2_D__BIAIS = CONVOLUTION__BIAIS;
+
+ /**
+ * The feature id for the '<em><b>Padding mode</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DEPTHWISE_CONV2_D__PADDING_MODE = CONVOLUTION__PADDING_MODE;
+
+ /**
+ * The feature id for the '<em><b>Data format</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DEPTHWISE_CONV2_D__DATA_FORMAT = CONVOLUTION__DATA_FORMAT;
+
+ /**
+ * The feature id for the '<em><b>Dilation rate</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DEPTHWISE_CONV2_D__DILATION_RATE = CONVOLUTION__DILATION_RATE;
+
+ /**
+ * The feature id for the '<em><b>Activation</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DEPTHWISE_CONV2_D__ACTIVATION = CONVOLUTION__ACTIVATION;
+
+ /**
+ * The feature id for the '<em><b>Bias initializer</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DEPTHWISE_CONV2_D__BIAS_INITIALIZER = CONVOLUTION__BIAS_INITIALIZER;
+
+ /**
+ * The feature id for the '<em><b>Activity regularizer</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DEPTHWISE_CONV2_D__ACTIVITY_REGULARIZER = CONVOLUTION__ACTIVITY_REGULARIZER;
+
+ /**
+ * The feature id for the '<em><b>Bias constraint</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DEPTHWISE_CONV2_D__BIAS_CONSTRAINT = CONVOLUTION__BIAS_CONSTRAINT;
+
+ /**
+ * The feature id for the '<em><b>Bias regularizer</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DEPTHWISE_CONV2_D__BIAS_REGULARIZER = CONVOLUTION__BIAS_REGULARIZER;
+
+ /**
+ * The feature id for the '<em><b>Depth multiplier</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DEPTHWISE_CONV2_D__DEPTH_MULTIPLIER = CONVOLUTION_FEATURE_COUNT + 0;
+
+ /**
+ * The feature id for the '<em><b>Depthwise initializer</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DEPTHWISE_CONV2_D__DEPTHWISE_INITIALIZER = CONVOLUTION_FEATURE_COUNT + 1;
+
+ /**
+ * The feature id for the '<em><b>Depthwise regularizer</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DEPTHWISE_CONV2_D__DEPTHWISE_REGULARIZER = CONVOLUTION_FEATURE_COUNT + 2;
+
+ /**
+ * The feature id for the '<em><b>Depthwise constraint</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DEPTHWISE_CONV2_D__DEPTHWISE_CONSTRAINT = CONVOLUTION_FEATURE_COUNT + 3;
+
+ /**
+ * The number of structural features of the '<em>Depthwise Conv2 D</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DEPTHWISE_CONV2_D_FEATURE_COUNT = CONVOLUTION_FEATURE_COUNT + 4;
+
+ /**
+ * The number of operations of the '<em>Depthwise Conv2 D</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DEPTHWISE_CONV2_D_OPERATION_COUNT = CONVOLUTION_OPERATION_COUNT + 0;
+
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution <em>Convolution</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Convolution</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution
+ * @generated
+ */
+ EClass getConvolution();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution#getIn_channels <em>In channels</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>In channels</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution#getIn_channels()
+ * @see #getConvolution()
+ * @generated
+ */
+ EAttribute getConvolution_In_channels();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution#getGroups <em>Groups</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Groups</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution#getGroups()
+ * @see #getConvolution()
+ * @generated
+ */
+ EAttribute getConvolution_Groups();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution#isBiais <em>Biais</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Biais</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution#isBiais()
+ * @see #getConvolution()
+ * @generated
+ */
+ EAttribute getConvolution_Biais();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution#getPadding_mode <em>Padding mode</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Padding mode</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution#getPadding_mode()
+ * @see #getConvolution()
+ * @generated
+ */
+ EAttribute getConvolution_Padding_mode();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution#getData_format <em>Data format</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Data format</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution#getData_format()
+ * @see #getConvolution()
+ * @generated
+ */
+ EAttribute getConvolution_Data_format();
+
+ /**
+ * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution#getDilation_rate <em>Dilation rate</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute list '<em>Dilation rate</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution#getDilation_rate()
+ * @see #getConvolution()
+ * @generated
+ */
+ EAttribute getConvolution_Dilation_rate();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution#getActivation <em>Activation</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Activation</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution#getActivation()
+ * @see #getConvolution()
+ * @generated
+ */
+ EAttribute getConvolution_Activation();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution#getBias_initializer <em>Bias initializer</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Bias initializer</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution#getBias_initializer()
+ * @see #getConvolution()
+ * @generated
+ */
+ EAttribute getConvolution_Bias_initializer();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution#getActivity_regularizer <em>Activity regularizer</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Activity regularizer</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution#getActivity_regularizer()
+ * @see #getConvolution()
+ * @generated
+ */
+ EAttribute getConvolution_Activity_regularizer();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution#getBias_constraint <em>Bias constraint</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Bias constraint</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution#getBias_constraint()
+ * @see #getConvolution()
+ * @generated
+ */
+ EAttribute getConvolution_Bias_constraint();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution#getBias_regularizer <em>Bias regularizer</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Bias regularizer</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution#getBias_regularizer()
+ * @see #getConvolution()
+ * @generated
+ */
+ EAttribute getConvolution_Bias_regularizer();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution_layers <em>Convolution layers</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Convolution layers</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution_layers
+ * @generated
+ */
+ EClass getConvolution_layers();
+
+ /**
+ * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution_layers#getKernel_size <em>Kernel size</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute list '<em>Kernel size</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution_layers#getKernel_size()
+ * @see #getConvolution_layers()
+ * @generated
+ */
+ EAttribute getConvolution_layers_Kernel_size();
+
+ /**
+ * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution_layers#getStride <em>Stride</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute list '<em>Stride</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution_layers#getStride()
+ * @see #getConvolution_layers()
+ * @generated
+ */
+ EAttribute getConvolution_layers_Stride();
+
+ /**
+ * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution_layers#getPadding <em>Padding</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute list '<em>Padding</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution_layers#getPadding()
+ * @see #getConvolution_layers()
+ * @generated
+ */
+ EAttribute getConvolution_layers_Padding();
+
+ /**
+ * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution_layers#getDilation <em>Dilation</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute list '<em>Dilation</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution_layers#getDilation()
+ * @see #getConvolution_layers()
+ * @generated
+ */
+ EAttribute getConvolution_layers_Dilation();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Unfold <em>Unfold</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Unfold</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Unfold
+ * @generated
+ */
+ EClass getUnfold();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Fold <em>Fold</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Fold</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Fold
+ * @generated
+ */
+ EClass getFold();
+
+ /**
+ * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Fold#getOutput_size <em>Output size</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute list '<em>Output size</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Fold#getOutput_size()
+ * @see #getFold()
+ * @generated
+ */
+ EAttribute getFold_Output_size();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Conv2d <em>Conv2d</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Conv2d</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Conv2d
+ * @generated
+ */
+ EClass getConv2d();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.basic <em>basic</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>basic</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.basic
+ * @generated
+ */
+ EClass getbasic();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.basic#getKernel_initializer <em>Kernel initializer</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Kernel initializer</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.basic#getKernel_initializer()
+ * @see #getbasic()
+ * @generated
+ */
+ EAttribute getbasic_Kernel_initializer();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.basic#getKernel_constraint <em>Kernel constraint</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Kernel constraint</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.basic#getKernel_constraint()
+ * @see #getbasic()
+ * @generated
+ */
+ EReference getbasic_Kernel_constraint();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.basic#getKernel_regularizer <em>Kernel regularizer</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Kernel regularizer</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.basic#getKernel_regularizer()
+ * @see #getbasic()
+ * @generated
+ */
+ EAttribute getbasic_Kernel_regularizer();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.LayerWithFilter <em>Layer With Filter</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Layer With Filter</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.LayerWithFilter
+ * @generated
+ */
+ EClass getLayerWithFilter();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.LayerWithFilter#getOut_channels <em>Out channels</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Out channels</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.LayerWithFilter#getOut_channels()
+ * @see #getLayerWithFilter()
+ * @generated
+ */
+ EAttribute getLayerWithFilter_Out_channels();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Conv3d <em>Conv3d</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Conv3d</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Conv3d
+ * @generated
+ */
+ EClass getConv3d();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.ConvTranspose1d <em>Conv Transpose1d</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Conv Transpose1d</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.ConvTranspose1d
+ * @generated
+ */
+ EClass getConvTranspose1d();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.ConvTranspose2d <em>Conv Transpose2d</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Conv Transpose2d</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.ConvTranspose2d
+ * @generated
+ */
+ EClass getConvTranspose2d();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.transpose <em>transpose</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>transpose</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.transpose
+ * @generated
+ */
+ EClass gettranspose();
+
+ /**
+ * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.transpose#getOutput_padding <em>Output padding</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute list '<em>Output padding</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.transpose#getOutput_padding()
+ * @see #gettranspose()
+ * @generated
+ */
+ EAttribute gettranspose_Output_padding();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.ConvTranspose3d <em>Conv Transpose3d</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Conv Transpose3d</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.ConvTranspose3d
+ * @generated
+ */
+ EClass getConvTranspose3d();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Conv1d <em>Conv1d</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Conv1d</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Conv1d
+ * @generated
+ */
+ EClass getConv1d();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Separable <em>Separable</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Separable</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Separable
+ * @generated
+ */
+ EClass getSeparable();
+
+ /**
+ * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Separable#getDepth_multiplier <em>Depth multiplier</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute list '<em>Depth multiplier</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Separable#getDepth_multiplier()
+ * @see #getSeparable()
+ * @generated
+ */
+ EAttribute getSeparable_Depth_multiplier();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Separable#getDepthwise_initializer <em>Depthwise initializer</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Depthwise initializer</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Separable#getDepthwise_initializer()
+ * @see #getSeparable()
+ * @generated
+ */
+ EAttribute getSeparable_Depthwise_initializer();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Separable#getPointwise_initializer <em>Pointwise initializer</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Pointwise initializer</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Separable#getPointwise_initializer()
+ * @see #getSeparable()
+ * @generated
+ */
+ EAttribute getSeparable_Pointwise_initializer();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Separable#getDepthwise_regularizer <em>Depthwise regularizer</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Depthwise regularizer</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Separable#getDepthwise_regularizer()
+ * @see #getSeparable()
+ * @generated
+ */
+ EAttribute getSeparable_Depthwise_regularizer();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Separable#getPoitnwise_regularizer <em>Poitnwise regularizer</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Poitnwise regularizer</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Separable#getPoitnwise_regularizer()
+ * @see #getSeparable()
+ * @generated
+ */
+ EAttribute getSeparable_Poitnwise_regularizer();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Separable#getDepthwise_constraint <em>Depthwise constraint</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Depthwise constraint</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Separable#getDepthwise_constraint()
+ * @see #getSeparable()
+ * @generated
+ */
+ EAttribute getSeparable_Depthwise_constraint();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Separable#getPointwise_constraint <em>Pointwise constraint</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Pointwise constraint</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Separable#getPointwise_constraint()
+ * @see #getSeparable()
+ * @generated
+ */
+ EAttribute getSeparable_Pointwise_constraint();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.SeparableConv2D <em>Separable Conv2 D</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Separable Conv2 D</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.SeparableConv2D
+ * @generated
+ */
+ EClass getSeparableConv2D();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.SeparableConv1D <em>Separable Conv1 D</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Separable Conv1 D</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.SeparableConv1D
+ * @generated
+ */
+ EClass getSeparableConv1D();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.DepthwiseConv2D <em>Depthwise Conv2 D</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Depthwise Conv2 D</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.DepthwiseConv2D
+ * @generated
+ */
+ EClass getDepthwiseConv2D();
+
+ /**
+ * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.DepthwiseConv2D#getDepth_multiplier <em>Depth multiplier</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute list '<em>Depth multiplier</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.DepthwiseConv2D#getDepth_multiplier()
+ * @see #getDepthwiseConv2D()
+ * @generated
+ */
+ EAttribute getDepthwiseConv2D_Depth_multiplier();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.DepthwiseConv2D#getDepthwise_initializer <em>Depthwise initializer</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Depthwise initializer</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.DepthwiseConv2D#getDepthwise_initializer()
+ * @see #getDepthwiseConv2D()
+ * @generated
+ */
+ EAttribute getDepthwiseConv2D_Depthwise_initializer();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.DepthwiseConv2D#getDepthwise_regularizer <em>Depthwise regularizer</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Depthwise regularizer</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.DepthwiseConv2D#getDepthwise_regularizer()
+ * @see #getDepthwiseConv2D()
+ * @generated
+ */
+ EAttribute getDepthwiseConv2D_Depthwise_regularizer();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.DepthwiseConv2D#getDepthwise_constraint <em>Depthwise constraint</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Depthwise constraint</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.DepthwiseConv2D#getDepthwise_constraint()
+ * @see #getDepthwiseConv2D()
+ * @generated
+ */
+ EAttribute getDepthwiseConv2D_Depthwise_constraint();
+
+ /**
+ * Returns the factory that creates the instances of the model.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the factory that creates the instances of the model.
+ * @generated
+ */
+ Convolution_layersFactory getConvolution_layersFactory();
+
+ /**
+ * <!-- begin-user-doc -->
+ * Defines literals for the meta objects that represent
+ * <ul>
+ * <li>each class,</li>
+ * <li>each feature of each class,</li>
+ * <li>each operation of each class,</li>
+ * <li>each enum,</li>
+ * <li>and each data type</li>
+ * </ul>
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ interface Literals {
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.ConvolutionImpl <em>Convolution</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.ConvolutionImpl
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.Convolution_layersPackageImpl#getConvolution()
+ * @generated
+ */
+ EClass CONVOLUTION = eINSTANCE.getConvolution();
+
+ /**
+ * The meta object literal for the '<em><b>In channels</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute CONVOLUTION__IN_CHANNELS = eINSTANCE.getConvolution_In_channels();
+
+ /**
+ * The meta object literal for the '<em><b>Groups</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute CONVOLUTION__GROUPS = eINSTANCE.getConvolution_Groups();
+
+ /**
+ * The meta object literal for the '<em><b>Biais</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute CONVOLUTION__BIAIS = eINSTANCE.getConvolution_Biais();
+
+ /**
+ * The meta object literal for the '<em><b>Padding mode</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute CONVOLUTION__PADDING_MODE = eINSTANCE.getConvolution_Padding_mode();
+
+ /**
+ * The meta object literal for the '<em><b>Data format</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute CONVOLUTION__DATA_FORMAT = eINSTANCE.getConvolution_Data_format();
+
+ /**
+ * The meta object literal for the '<em><b>Dilation rate</b></em>' attribute list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute CONVOLUTION__DILATION_RATE = eINSTANCE.getConvolution_Dilation_rate();
+
+ /**
+ * The meta object literal for the '<em><b>Activation</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute CONVOLUTION__ACTIVATION = eINSTANCE.getConvolution_Activation();
+
+ /**
+ * The meta object literal for the '<em><b>Bias initializer</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute CONVOLUTION__BIAS_INITIALIZER = eINSTANCE.getConvolution_Bias_initializer();
+
+ /**
+ * The meta object literal for the '<em><b>Activity regularizer</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute CONVOLUTION__ACTIVITY_REGULARIZER = eINSTANCE.getConvolution_Activity_regularizer();
+
+ /**
+ * The meta object literal for the '<em><b>Bias constraint</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute CONVOLUTION__BIAS_CONSTRAINT = eINSTANCE.getConvolution_Bias_constraint();
+
+ /**
+ * The meta object literal for the '<em><b>Bias regularizer</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute CONVOLUTION__BIAS_REGULARIZER = eINSTANCE.getConvolution_Bias_regularizer();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.Convolution_layersImpl <em>Convolution layers</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.Convolution_layersImpl
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.Convolution_layersPackageImpl#getConvolution_layers()
+ * @generated
+ */
+ EClass CONVOLUTION_LAYERS = eINSTANCE.getConvolution_layers();
+
+ /**
+ * The meta object literal for the '<em><b>Kernel size</b></em>' attribute list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute CONVOLUTION_LAYERS__KERNEL_SIZE = eINSTANCE.getConvolution_layers_Kernel_size();
+
+ /**
+ * The meta object literal for the '<em><b>Stride</b></em>' attribute list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute CONVOLUTION_LAYERS__STRIDE = eINSTANCE.getConvolution_layers_Stride();
+
+ /**
+ * The meta object literal for the '<em><b>Padding</b></em>' attribute list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute CONVOLUTION_LAYERS__PADDING = eINSTANCE.getConvolution_layers_Padding();
+
+ /**
+ * The meta object literal for the '<em><b>Dilation</b></em>' attribute list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute CONVOLUTION_LAYERS__DILATION = eINSTANCE.getConvolution_layers_Dilation();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.UnfoldImpl <em>Unfold</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.UnfoldImpl
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.Convolution_layersPackageImpl#getUnfold()
+ * @generated
+ */
+ EClass UNFOLD = eINSTANCE.getUnfold();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.FoldImpl <em>Fold</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.FoldImpl
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.Convolution_layersPackageImpl#getFold()
+ * @generated
+ */
+ EClass FOLD = eINSTANCE.getFold();
+
+ /**
+ * The meta object literal for the '<em><b>Output size</b></em>' attribute list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute FOLD__OUTPUT_SIZE = eINSTANCE.getFold_Output_size();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.Conv2dImpl <em>Conv2d</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.Conv2dImpl
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.Convolution_layersPackageImpl#getConv2d()
+ * @generated
+ */
+ EClass CONV2D = eINSTANCE.getConv2d();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.basicImpl <em>basic</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.basicImpl
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.Convolution_layersPackageImpl#getbasic()
+ * @generated
+ */
+ EClass BASIC = eINSTANCE.getbasic();
+
+ /**
+ * The meta object literal for the '<em><b>Kernel initializer</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute BASIC__KERNEL_INITIALIZER = eINSTANCE.getbasic_Kernel_initializer();
+
+ /**
+ * The meta object literal for the '<em><b>Kernel constraint</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference BASIC__KERNEL_CONSTRAINT = eINSTANCE.getbasic_Kernel_constraint();
+
+ /**
+ * The meta object literal for the '<em><b>Kernel regularizer</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute BASIC__KERNEL_REGULARIZER = eINSTANCE.getbasic_Kernel_regularizer();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.LayerWithFilterImpl <em>Layer With Filter</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.LayerWithFilterImpl
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.Convolution_layersPackageImpl#getLayerWithFilter()
+ * @generated
+ */
+ EClass LAYER_WITH_FILTER = eINSTANCE.getLayerWithFilter();
+
+ /**
+ * The meta object literal for the '<em><b>Out channels</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute LAYER_WITH_FILTER__OUT_CHANNELS = eINSTANCE.getLayerWithFilter_Out_channels();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.Conv3dImpl <em>Conv3d</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.Conv3dImpl
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.Convolution_layersPackageImpl#getConv3d()
+ * @generated
+ */
+ EClass CONV3D = eINSTANCE.getConv3d();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.ConvTranspose1dImpl <em>Conv Transpose1d</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.ConvTranspose1dImpl
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.Convolution_layersPackageImpl#getConvTranspose1d()
+ * @generated
+ */
+ EClass CONV_TRANSPOSE1D = eINSTANCE.getConvTranspose1d();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.ConvTranspose2dImpl <em>Conv Transpose2d</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.ConvTranspose2dImpl
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.Convolution_layersPackageImpl#getConvTranspose2d()
+ * @generated
+ */
+ EClass CONV_TRANSPOSE2D = eINSTANCE.getConvTranspose2d();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.transposeImpl <em>transpose</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.transposeImpl
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.Convolution_layersPackageImpl#gettranspose()
+ * @generated
+ */
+ EClass TRANSPOSE = eINSTANCE.gettranspose();
+
+ /**
+ * The meta object literal for the '<em><b>Output padding</b></em>' attribute list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute TRANSPOSE__OUTPUT_PADDING = eINSTANCE.gettranspose_Output_padding();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.ConvTranspose3dImpl <em>Conv Transpose3d</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.ConvTranspose3dImpl
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.Convolution_layersPackageImpl#getConvTranspose3d()
+ * @generated
+ */
+ EClass CONV_TRANSPOSE3D = eINSTANCE.getConvTranspose3d();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.Conv1dImpl <em>Conv1d</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.Conv1dImpl
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.Convolution_layersPackageImpl#getConv1d()
+ * @generated
+ */
+ EClass CONV1D = eINSTANCE.getConv1d();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.SeparableImpl <em>Separable</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.SeparableImpl
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.Convolution_layersPackageImpl#getSeparable()
+ * @generated
+ */
+ EClass SEPARABLE = eINSTANCE.getSeparable();
+
+ /**
+ * The meta object literal for the '<em><b>Depth multiplier</b></em>' attribute list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute SEPARABLE__DEPTH_MULTIPLIER = eINSTANCE.getSeparable_Depth_multiplier();
+
+ /**
+ * The meta object literal for the '<em><b>Depthwise initializer</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute SEPARABLE__DEPTHWISE_INITIALIZER = eINSTANCE.getSeparable_Depthwise_initializer();
+
+ /**
+ * The meta object literal for the '<em><b>Pointwise initializer</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute SEPARABLE__POINTWISE_INITIALIZER = eINSTANCE.getSeparable_Pointwise_initializer();
+
+ /**
+ * The meta object literal for the '<em><b>Depthwise regularizer</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute SEPARABLE__DEPTHWISE_REGULARIZER = eINSTANCE.getSeparable_Depthwise_regularizer();
+
+ /**
+ * The meta object literal for the '<em><b>Poitnwise regularizer</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute SEPARABLE__POITNWISE_REGULARIZER = eINSTANCE.getSeparable_Poitnwise_regularizer();
+
+ /**
+ * The meta object literal for the '<em><b>Depthwise constraint</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute SEPARABLE__DEPTHWISE_CONSTRAINT = eINSTANCE.getSeparable_Depthwise_constraint();
+
+ /**
+ * The meta object literal for the '<em><b>Pointwise constraint</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute SEPARABLE__POINTWISE_CONSTRAINT = eINSTANCE.getSeparable_Pointwise_constraint();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.SeparableConv2DImpl <em>Separable Conv2 D</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.SeparableConv2DImpl
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.Convolution_layersPackageImpl#getSeparableConv2D()
+ * @generated
+ */
+ EClass SEPARABLE_CONV2_D = eINSTANCE.getSeparableConv2D();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.SeparableConv1DImpl <em>Separable Conv1 D</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.SeparableConv1DImpl
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.Convolution_layersPackageImpl#getSeparableConv1D()
+ * @generated
+ */
+ EClass SEPARABLE_CONV1_D = eINSTANCE.getSeparableConv1D();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.DepthwiseConv2DImpl <em>Depthwise Conv2 D</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.DepthwiseConv2DImpl
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.Convolution_layersPackageImpl#getDepthwiseConv2D()
+ * @generated
+ */
+ EClass DEPTHWISE_CONV2_D = eINSTANCE.getDepthwiseConv2D();
+
+ /**
+ * The meta object literal for the '<em><b>Depth multiplier</b></em>' attribute list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute DEPTHWISE_CONV2_D__DEPTH_MULTIPLIER = eINSTANCE.getDepthwiseConv2D_Depth_multiplier();
+
+ /**
+ * The meta object literal for the '<em><b>Depthwise initializer</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute DEPTHWISE_CONV2_D__DEPTHWISE_INITIALIZER = eINSTANCE.getDepthwiseConv2D_Depthwise_initializer();
+
+ /**
+ * The meta object literal for the '<em><b>Depthwise regularizer</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute DEPTHWISE_CONV2_D__DEPTHWISE_REGULARIZER = eINSTANCE.getDepthwiseConv2D_Depthwise_regularizer();
+
+ /**
+ * The meta object literal for the '<em><b>Depthwise constraint</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute DEPTHWISE_CONV2_D__DEPTHWISE_CONSTRAINT = eINSTANCE.getDepthwiseConv2D_Depthwise_constraint();
+
+ }
+
+} //Convolution_layersPackage
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Convolution_layers/DepthwiseConv2D.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Convolution_layers/DepthwiseConv2D.java
new file mode 100644
index 0000000..40f9dc4
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Convolution_layers/DepthwiseConv2D.java
@@ -0,0 +1,130 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Depthwise Conv2 D</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.DepthwiseConv2D#getDepth_multiplier <em>Depth multiplier</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.DepthwiseConv2D#getDepthwise_initializer <em>Depthwise initializer</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.DepthwiseConv2D#getDepthwise_regularizer <em>Depthwise regularizer</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.DepthwiseConv2D#getDepthwise_constraint <em>Depthwise constraint</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution_layersPackage#getDepthwiseConv2D()
+ * @model
+ * @generated
+ */
+public interface DepthwiseConv2D extends Convolution {
+ /**
+ * Returns the value of the '<em><b>Depth multiplier</b></em>' attribute list.
+ * The list contents are of type {@link java.lang.Integer}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Depth multiplier</em>' attribute list isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Depth multiplier</em>' attribute list.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution_layersPackage#getDepthwiseConv2D_Depth_multiplier()
+ * @model dataType="org.eclipse.uml2.types.Integer" ordered="false"
+ * @generated
+ */
+ EList<Integer> getDepth_multiplier();
+
+ /**
+ * Returns the value of the '<em><b>Depthwise initializer</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Depthwise initializer</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Depthwise initializer</em>' attribute.
+ * @see #setDepthwise_initializer(String)
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution_layersPackage#getDepthwiseConv2D_Depthwise_initializer()
+ * @model dataType="org.eclipse.uml2.types.String" required="true" ordered="false"
+ * @generated
+ */
+ String getDepthwise_initializer();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.DepthwiseConv2D#getDepthwise_initializer <em>Depthwise initializer</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Depthwise initializer</em>' attribute.
+ * @see #getDepthwise_initializer()
+ * @generated
+ */
+ void setDepthwise_initializer(String value);
+
+ /**
+ * Returns the value of the '<em><b>Depthwise regularizer</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Depthwise regularizer</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Depthwise regularizer</em>' attribute.
+ * @see #setDepthwise_regularizer(String)
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution_layersPackage#getDepthwiseConv2D_Depthwise_regularizer()
+ * @model dataType="org.eclipse.uml2.types.String" required="true" ordered="false"
+ * @generated
+ */
+ String getDepthwise_regularizer();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.DepthwiseConv2D#getDepthwise_regularizer <em>Depthwise regularizer</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Depthwise regularizer</em>' attribute.
+ * @see #getDepthwise_regularizer()
+ * @generated
+ */
+ void setDepthwise_regularizer(String value);
+
+ /**
+ * Returns the value of the '<em><b>Depthwise constraint</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Depthwise constraint</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Depthwise constraint</em>' attribute.
+ * @see #setDepthwise_constraint(String)
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution_layersPackage#getDepthwiseConv2D_Depthwise_constraint()
+ * @model dataType="org.eclipse.uml2.types.String" required="true" ordered="false"
+ * @generated
+ */
+ String getDepthwise_constraint();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.DepthwiseConv2D#getDepthwise_constraint <em>Depthwise constraint</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Depthwise constraint</em>' attribute.
+ * @see #getDepthwise_constraint()
+ * @generated
+ */
+ void setDepthwise_constraint(String value);
+
+} // DepthwiseConv2D
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Convolution_layers/Fold.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Convolution_layers/Fold.java
new file mode 100644
index 0000000..3347752
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Convolution_layers/Fold.java
@@ -0,0 +1,49 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Fold</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Fold#getOutput_size <em>Output size</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution_layersPackage#getFold()
+ * @model
+ * @generated
+ */
+public interface Fold extends Convolution_layers {
+ /**
+ * Returns the value of the '<em><b>Output size</b></em>' attribute list.
+ * The list contents are of type {@link java.lang.Integer}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Output size</em>' attribute list isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Output size</em>' attribute list.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution_layersPackage#getFold_Output_size()
+ * @model dataType="org.eclipse.uml2.types.Integer" ordered="false"
+ * @generated
+ */
+ EList<Integer> getOutput_size();
+
+} // Fold
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Convolution_layers/LayerWithFilter.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Convolution_layers/LayerWithFilter.java
new file mode 100644
index 0000000..0816f57
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Convolution_layers/LayerWithFilter.java
@@ -0,0 +1,58 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Layer With Filter</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.LayerWithFilter#getOut_channels <em>Out channels</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution_layersPackage#getLayerWithFilter()
+ * @model abstract="true"
+ * @generated
+ */
+public interface LayerWithFilter extends Convolution {
+ /**
+ * Returns the value of the '<em><b>Out channels</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Out channels</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Out channels</em>' attribute.
+ * @see #setOut_channels(int)
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution_layersPackage#getLayerWithFilter_Out_channels()
+ * @model dataType="org.eclipse.uml2.types.Integer" required="true" ordered="false"
+ * @generated
+ */
+ int getOut_channels();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.LayerWithFilter#getOut_channels <em>Out channels</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Out channels</em>' attribute.
+ * @see #getOut_channels()
+ * @generated
+ */
+ void setOut_channels(int value);
+
+} // LayerWithFilter
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Convolution_layers/Separable.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Convolution_layers/Separable.java
new file mode 100644
index 0000000..352c464
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Convolution_layers/Separable.java
@@ -0,0 +1,211 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Separable</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Separable#getDepth_multiplier <em>Depth multiplier</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Separable#getDepthwise_initializer <em>Depthwise initializer</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Separable#getPointwise_initializer <em>Pointwise initializer</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Separable#getDepthwise_regularizer <em>Depthwise regularizer</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Separable#getPoitnwise_regularizer <em>Poitnwise regularizer</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Separable#getDepthwise_constraint <em>Depthwise constraint</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Separable#getPointwise_constraint <em>Pointwise constraint</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution_layersPackage#getSeparable()
+ * @model abstract="true"
+ * @generated
+ */
+public interface Separable extends LayerWithFilter {
+ /**
+ * Returns the value of the '<em><b>Depth multiplier</b></em>' attribute list.
+ * The list contents are of type {@link java.lang.Integer}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Depth multiplier</em>' attribute list isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Depth multiplier</em>' attribute list.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution_layersPackage#getSeparable_Depth_multiplier()
+ * @model dataType="org.eclipse.uml2.types.Integer" ordered="false"
+ * @generated
+ */
+ EList<Integer> getDepth_multiplier();
+
+ /**
+ * Returns the value of the '<em><b>Depthwise initializer</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Depthwise initializer</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Depthwise initializer</em>' attribute.
+ * @see #setDepthwise_initializer(String)
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution_layersPackage#getSeparable_Depthwise_initializer()
+ * @model dataType="org.eclipse.uml2.types.String" ordered="false"
+ * @generated
+ */
+ String getDepthwise_initializer();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Separable#getDepthwise_initializer <em>Depthwise initializer</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Depthwise initializer</em>' attribute.
+ * @see #getDepthwise_initializer()
+ * @generated
+ */
+ void setDepthwise_initializer(String value);
+
+ /**
+ * Returns the value of the '<em><b>Pointwise initializer</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Pointwise initializer</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Pointwise initializer</em>' attribute.
+ * @see #setPointwise_initializer(String)
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution_layersPackage#getSeparable_Pointwise_initializer()
+ * @model dataType="org.eclipse.uml2.types.String" ordered="false"
+ * @generated
+ */
+ String getPointwise_initializer();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Separable#getPointwise_initializer <em>Pointwise initializer</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Pointwise initializer</em>' attribute.
+ * @see #getPointwise_initializer()
+ * @generated
+ */
+ void setPointwise_initializer(String value);
+
+ /**
+ * Returns the value of the '<em><b>Depthwise regularizer</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Depthwise regularizer</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Depthwise regularizer</em>' attribute.
+ * @see #setDepthwise_regularizer(String)
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution_layersPackage#getSeparable_Depthwise_regularizer()
+ * @model dataType="org.eclipse.uml2.types.String" required="true" ordered="false"
+ * @generated
+ */
+ String getDepthwise_regularizer();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Separable#getDepthwise_regularizer <em>Depthwise regularizer</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Depthwise regularizer</em>' attribute.
+ * @see #getDepthwise_regularizer()
+ * @generated
+ */
+ void setDepthwise_regularizer(String value);
+
+ /**
+ * Returns the value of the '<em><b>Poitnwise regularizer</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Poitnwise regularizer</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Poitnwise regularizer</em>' attribute.
+ * @see #setPoitnwise_regularizer(String)
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution_layersPackage#getSeparable_Poitnwise_regularizer()
+ * @model dataType="org.eclipse.uml2.types.String" required="true" ordered="false"
+ * @generated
+ */
+ String getPoitnwise_regularizer();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Separable#getPoitnwise_regularizer <em>Poitnwise regularizer</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Poitnwise regularizer</em>' attribute.
+ * @see #getPoitnwise_regularizer()
+ * @generated
+ */
+ void setPoitnwise_regularizer(String value);
+
+ /**
+ * Returns the value of the '<em><b>Depthwise constraint</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Depthwise constraint</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Depthwise constraint</em>' attribute.
+ * @see #setDepthwise_constraint(String)
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution_layersPackage#getSeparable_Depthwise_constraint()
+ * @model dataType="org.eclipse.uml2.types.String" required="true" ordered="false"
+ * @generated
+ */
+ String getDepthwise_constraint();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Separable#getDepthwise_constraint <em>Depthwise constraint</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Depthwise constraint</em>' attribute.
+ * @see #getDepthwise_constraint()
+ * @generated
+ */
+ void setDepthwise_constraint(String value);
+
+ /**
+ * Returns the value of the '<em><b>Pointwise constraint</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Pointwise constraint</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Pointwise constraint</em>' attribute.
+ * @see #setPointwise_constraint(String)
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution_layersPackage#getSeparable_Pointwise_constraint()
+ * @model dataType="org.eclipse.uml2.types.String" required="true" ordered="false"
+ * @generated
+ */
+ String getPointwise_constraint();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Separable#getPointwise_constraint <em>Pointwise constraint</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Pointwise constraint</em>' attribute.
+ * @see #getPointwise_constraint()
+ * @generated
+ */
+ void setPointwise_constraint(String value);
+
+} // Separable
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Convolution_layers/SeparableConv1D.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Convolution_layers/SeparableConv1D.java
new file mode 100644
index 0000000..adf445b
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Convolution_layers/SeparableConv1D.java
@@ -0,0 +1,26 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Separable Conv1 D</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution_layersPackage#getSeparableConv1D()
+ * @model
+ * @generated
+ */
+public interface SeparableConv1D extends Separable {
+} // SeparableConv1D
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Convolution_layers/SeparableConv2D.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Convolution_layers/SeparableConv2D.java
new file mode 100644
index 0000000..7058fd2
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Convolution_layers/SeparableConv2D.java
@@ -0,0 +1,26 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Separable Conv2 D</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution_layersPackage#getSeparableConv2D()
+ * @model
+ * @generated
+ */
+public interface SeparableConv2D extends Separable {
+} // SeparableConv2D
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Convolution_layers/Unfold.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Convolution_layers/Unfold.java
new file mode 100644
index 0000000..c9cef55
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Convolution_layers/Unfold.java
@@ -0,0 +1,26 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Unfold</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution_layersPackage#getUnfold()
+ * @model
+ * @generated
+ */
+public interface Unfold extends Convolution_layers {
+} // Unfold
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Convolution_layers/basic.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Convolution_layers/basic.java
new file mode 100644
index 0000000..daee835
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Convolution_layers/basic.java
@@ -0,0 +1,113 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.constraints;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>basic</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.basic#getKernel_initializer <em>Kernel initializer</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.basic#getKernel_constraint <em>Kernel constraint</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.basic#getKernel_regularizer <em>Kernel regularizer</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution_layersPackage#getbasic()
+ * @model abstract="true"
+ * @generated
+ */
+public interface basic extends LayerWithFilter {
+ /**
+ * Returns the value of the '<em><b>Kernel initializer</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Kernel initializer</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Kernel initializer</em>' attribute.
+ * @see #setKernel_initializer(String)
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution_layersPackage#getbasic_Kernel_initializer()
+ * @model dataType="org.eclipse.uml2.types.String" ordered="false"
+ * @generated
+ */
+ String getKernel_initializer();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.basic#getKernel_initializer <em>Kernel initializer</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Kernel initializer</em>' attribute.
+ * @see #getKernel_initializer()
+ * @generated
+ */
+ void setKernel_initializer(String value);
+
+ /**
+ * Returns the value of the '<em><b>Kernel constraint</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Kernel constraint</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Kernel constraint</em>' reference.
+ * @see #setKernel_constraint(constraints)
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution_layersPackage#getbasic_Kernel_constraint()
+ * @model required="true" ordered="false"
+ * @generated
+ */
+ constraints getKernel_constraint();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.basic#getKernel_constraint <em>Kernel constraint</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Kernel constraint</em>' reference.
+ * @see #getKernel_constraint()
+ * @generated
+ */
+ void setKernel_constraint(constraints value);
+
+ /**
+ * Returns the value of the '<em><b>Kernel regularizer</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Kernel regularizer</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Kernel regularizer</em>' attribute.
+ * @see #setKernel_regularizer(String)
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution_layersPackage#getbasic_Kernel_regularizer()
+ * @model dataType="org.eclipse.uml2.types.String" ordered="false"
+ * @generated
+ */
+ String getKernel_regularizer();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.basic#getKernel_regularizer <em>Kernel regularizer</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Kernel regularizer</em>' attribute.
+ * @see #getKernel_regularizer()
+ * @generated
+ */
+ void setKernel_regularizer(String value);
+
+} // basic
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Convolution_layers/impl/Conv1dImpl.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Convolution_layers/impl/Conv1dImpl.java
new file mode 100644
index 0000000..75ee6b7
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Convolution_layers/impl/Conv1dImpl.java
@@ -0,0 +1,46 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Conv1d;
+import org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution_layersPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Conv1d</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class Conv1dImpl extends basicImpl implements Conv1d {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected Conv1dImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return Convolution_layersPackage.Literals.CONV1D;
+ }
+
+} //Conv1dImpl
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Convolution_layers/impl/Conv2dImpl.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Convolution_layers/impl/Conv2dImpl.java
new file mode 100644
index 0000000..04eb2f1
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Convolution_layers/impl/Conv2dImpl.java
@@ -0,0 +1,46 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Conv2d;
+import org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution_layersPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Conv2d</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class Conv2dImpl extends basicImpl implements Conv2d {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected Conv2dImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return Convolution_layersPackage.Literals.CONV2D;
+ }
+
+} //Conv2dImpl
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Convolution_layers/impl/Conv3dImpl.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Convolution_layers/impl/Conv3dImpl.java
new file mode 100644
index 0000000..f6a0e99
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Convolution_layers/impl/Conv3dImpl.java
@@ -0,0 +1,46 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Conv3d;
+import org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution_layersPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Conv3d</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class Conv3dImpl extends basicImpl implements Conv3d {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected Conv3dImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return Convolution_layersPackage.Literals.CONV3D;
+ }
+
+} //Conv3dImpl
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Convolution_layers/impl/ConvTranspose1dImpl.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Convolution_layers/impl/ConvTranspose1dImpl.java
new file mode 100644
index 0000000..e6b0a29
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Convolution_layers/impl/ConvTranspose1dImpl.java
@@ -0,0 +1,46 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.ConvTranspose1d;
+import org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution_layersPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Conv Transpose1d</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class ConvTranspose1dImpl extends LayerWithFilterImpl implements ConvTranspose1d {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected ConvTranspose1dImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return Convolution_layersPackage.Literals.CONV_TRANSPOSE1D;
+ }
+
+} //ConvTranspose1dImpl
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Convolution_layers/impl/ConvTranspose2dImpl.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Convolution_layers/impl/ConvTranspose2dImpl.java
new file mode 100644
index 0000000..5e7aabc
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Convolution_layers/impl/ConvTranspose2dImpl.java
@@ -0,0 +1,46 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.ConvTranspose2d;
+import org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution_layersPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Conv Transpose2d</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class ConvTranspose2dImpl extends transposeImpl implements ConvTranspose2d {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected ConvTranspose2dImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return Convolution_layersPackage.Literals.CONV_TRANSPOSE2D;
+ }
+
+} //ConvTranspose2dImpl
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Convolution_layers/impl/ConvTranspose3dImpl.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Convolution_layers/impl/ConvTranspose3dImpl.java
new file mode 100644
index 0000000..310635d
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Convolution_layers/impl/ConvTranspose3dImpl.java
@@ -0,0 +1,46 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.ConvTranspose3d;
+import org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution_layersPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Conv Transpose3d</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class ConvTranspose3dImpl extends transposeImpl implements ConvTranspose3d {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected ConvTranspose3dImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return Convolution_layersPackage.Literals.CONV_TRANSPOSE3D;
+ }
+
+} //ConvTranspose3dImpl
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Convolution_layers/impl/ConvolutionImpl.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Convolution_layers/impl/ConvolutionImpl.java
new file mode 100644
index 0000000..b369c96
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Convolution_layers/impl/ConvolutionImpl.java
@@ -0,0 +1,721 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+import org.eclipse.emf.ecore.util.EDataTypeUniqueEList;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution;
+import org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution_layersPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Convolution</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.ConvolutionImpl#getIn_channels <em>In channels</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.ConvolutionImpl#getGroups <em>Groups</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.ConvolutionImpl#isBiais <em>Biais</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.ConvolutionImpl#getPadding_mode <em>Padding mode</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.ConvolutionImpl#getData_format <em>Data format</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.ConvolutionImpl#getDilation_rate <em>Dilation rate</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.ConvolutionImpl#getActivation <em>Activation</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.ConvolutionImpl#getBias_initializer <em>Bias initializer</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.ConvolutionImpl#getActivity_regularizer <em>Activity regularizer</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.ConvolutionImpl#getBias_constraint <em>Bias constraint</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.ConvolutionImpl#getBias_regularizer <em>Bias regularizer</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public abstract class ConvolutionImpl extends Convolution_layersImpl implements Convolution {
+ /**
+ * The default value of the '{@link #getIn_channels() <em>In channels</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getIn_channels()
+ * @generated
+ * @ordered
+ */
+ protected static final int IN_CHANNELS_EDEFAULT = 0;
+
+ /**
+ * The cached value of the '{@link #getIn_channels() <em>In channels</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getIn_channels()
+ * @generated
+ * @ordered
+ */
+ protected int in_channels = IN_CHANNELS_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getGroups() <em>Groups</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getGroups()
+ * @generated
+ * @ordered
+ */
+ protected static final int GROUPS_EDEFAULT = 0;
+
+ /**
+ * The cached value of the '{@link #getGroups() <em>Groups</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getGroups()
+ * @generated
+ * @ordered
+ */
+ protected int groups = GROUPS_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #isBiais() <em>Biais</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #isBiais()
+ * @generated
+ * @ordered
+ */
+ protected static final boolean BIAIS_EDEFAULT = false;
+
+ /**
+ * The cached value of the '{@link #isBiais() <em>Biais</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #isBiais()
+ * @generated
+ * @ordered
+ */
+ protected boolean biais = BIAIS_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getPadding_mode() <em>Padding mode</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getPadding_mode()
+ * @generated
+ * @ordered
+ */
+ protected static final String PADDING_MODE_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getPadding_mode() <em>Padding mode</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getPadding_mode()
+ * @generated
+ * @ordered
+ */
+ protected String padding_mode = PADDING_MODE_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getData_format() <em>Data format</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getData_format()
+ * @generated
+ * @ordered
+ */
+ protected static final String DATA_FORMAT_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getData_format() <em>Data format</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getData_format()
+ * @generated
+ * @ordered
+ */
+ protected String data_format = DATA_FORMAT_EDEFAULT;
+
+ /**
+ * The cached value of the '{@link #getDilation_rate() <em>Dilation rate</em>}' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getDilation_rate()
+ * @generated
+ * @ordered
+ */
+ protected EList<Integer> dilation_rate;
+
+ /**
+ * The default value of the '{@link #getActivation() <em>Activation</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getActivation()
+ * @generated
+ * @ordered
+ */
+ protected static final String ACTIVATION_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getActivation() <em>Activation</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getActivation()
+ * @generated
+ * @ordered
+ */
+ protected String activation = ACTIVATION_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getBias_initializer() <em>Bias initializer</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getBias_initializer()
+ * @generated
+ * @ordered
+ */
+ protected static final String BIAS_INITIALIZER_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getBias_initializer() <em>Bias initializer</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getBias_initializer()
+ * @generated
+ * @ordered
+ */
+ protected String bias_initializer = BIAS_INITIALIZER_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getActivity_regularizer() <em>Activity regularizer</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getActivity_regularizer()
+ * @generated
+ * @ordered
+ */
+ protected static final String ACTIVITY_REGULARIZER_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getActivity_regularizer() <em>Activity regularizer</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getActivity_regularizer()
+ * @generated
+ * @ordered
+ */
+ protected String activity_regularizer = ACTIVITY_REGULARIZER_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getBias_constraint() <em>Bias constraint</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getBias_constraint()
+ * @generated
+ * @ordered
+ */
+ protected static final String BIAS_CONSTRAINT_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getBias_constraint() <em>Bias constraint</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getBias_constraint()
+ * @generated
+ * @ordered
+ */
+ protected String bias_constraint = BIAS_CONSTRAINT_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getBias_regularizer() <em>Bias regularizer</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getBias_regularizer()
+ * @generated
+ * @ordered
+ */
+ protected static final String BIAS_REGULARIZER_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getBias_regularizer() <em>Bias regularizer</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getBias_regularizer()
+ * @generated
+ * @ordered
+ */
+ protected String bias_regularizer = BIAS_REGULARIZER_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected ConvolutionImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return Convolution_layersPackage.Literals.CONVOLUTION;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public int getIn_channels() {
+ return in_channels;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void setIn_channels(int newIn_channels) {
+ int oldIn_channels = in_channels;
+ in_channels = newIn_channels;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, Convolution_layersPackage.CONVOLUTION__IN_CHANNELS, oldIn_channels, in_channels));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public int getGroups() {
+ return groups;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void setGroups(int newGroups) {
+ int oldGroups = groups;
+ groups = newGroups;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, Convolution_layersPackage.CONVOLUTION__GROUPS, oldGroups, groups));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean isBiais() {
+ return biais;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void setBiais(boolean newBiais) {
+ boolean oldBiais = biais;
+ biais = newBiais;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, Convolution_layersPackage.CONVOLUTION__BIAIS, oldBiais, biais));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String getPadding_mode() {
+ return padding_mode;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void setPadding_mode(String newPadding_mode) {
+ String oldPadding_mode = padding_mode;
+ padding_mode = newPadding_mode;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, Convolution_layersPackage.CONVOLUTION__PADDING_MODE, oldPadding_mode, padding_mode));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String getData_format() {
+ return data_format;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void setData_format(String newData_format) {
+ String oldData_format = data_format;
+ data_format = newData_format;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, Convolution_layersPackage.CONVOLUTION__DATA_FORMAT, oldData_format, data_format));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EList<Integer> getDilation_rate() {
+ if (dilation_rate == null) {
+ dilation_rate = new EDataTypeUniqueEList<Integer>(Integer.class, this, Convolution_layersPackage.CONVOLUTION__DILATION_RATE);
+ }
+ return dilation_rate;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String getActivation() {
+ return activation;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void setActivation(String newActivation) {
+ String oldActivation = activation;
+ activation = newActivation;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, Convolution_layersPackage.CONVOLUTION__ACTIVATION, oldActivation, activation));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String getBias_initializer() {
+ return bias_initializer;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void setBias_initializer(String newBias_initializer) {
+ String oldBias_initializer = bias_initializer;
+ bias_initializer = newBias_initializer;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, Convolution_layersPackage.CONVOLUTION__BIAS_INITIALIZER, oldBias_initializer, bias_initializer));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String getActivity_regularizer() {
+ return activity_regularizer;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void setActivity_regularizer(String newActivity_regularizer) {
+ String oldActivity_regularizer = activity_regularizer;
+ activity_regularizer = newActivity_regularizer;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, Convolution_layersPackage.CONVOLUTION__ACTIVITY_REGULARIZER, oldActivity_regularizer, activity_regularizer));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String getBias_constraint() {
+ return bias_constraint;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void setBias_constraint(String newBias_constraint) {
+ String oldBias_constraint = bias_constraint;
+ bias_constraint = newBias_constraint;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, Convolution_layersPackage.CONVOLUTION__BIAS_CONSTRAINT, oldBias_constraint, bias_constraint));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String getBias_regularizer() {
+ return bias_regularizer;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void setBias_regularizer(String newBias_regularizer) {
+ String oldBias_regularizer = bias_regularizer;
+ bias_regularizer = newBias_regularizer;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, Convolution_layersPackage.CONVOLUTION__BIAS_REGULARIZER, oldBias_regularizer, bias_regularizer));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case Convolution_layersPackage.CONVOLUTION__IN_CHANNELS:
+ return getIn_channels();
+ case Convolution_layersPackage.CONVOLUTION__GROUPS:
+ return getGroups();
+ case Convolution_layersPackage.CONVOLUTION__BIAIS:
+ return isBiais();
+ case Convolution_layersPackage.CONVOLUTION__PADDING_MODE:
+ return getPadding_mode();
+ case Convolution_layersPackage.CONVOLUTION__DATA_FORMAT:
+ return getData_format();
+ case Convolution_layersPackage.CONVOLUTION__DILATION_RATE:
+ return getDilation_rate();
+ case Convolution_layersPackage.CONVOLUTION__ACTIVATION:
+ return getActivation();
+ case Convolution_layersPackage.CONVOLUTION__BIAS_INITIALIZER:
+ return getBias_initializer();
+ case Convolution_layersPackage.CONVOLUTION__ACTIVITY_REGULARIZER:
+ return getActivity_regularizer();
+ case Convolution_layersPackage.CONVOLUTION__BIAS_CONSTRAINT:
+ return getBias_constraint();
+ case Convolution_layersPackage.CONVOLUTION__BIAS_REGULARIZER:
+ return getBias_regularizer();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @SuppressWarnings("unchecked")
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case Convolution_layersPackage.CONVOLUTION__IN_CHANNELS:
+ setIn_channels((Integer)newValue);
+ return;
+ case Convolution_layersPackage.CONVOLUTION__GROUPS:
+ setGroups((Integer)newValue);
+ return;
+ case Convolution_layersPackage.CONVOLUTION__BIAIS:
+ setBiais((Boolean)newValue);
+ return;
+ case Convolution_layersPackage.CONVOLUTION__PADDING_MODE:
+ setPadding_mode((String)newValue);
+ return;
+ case Convolution_layersPackage.CONVOLUTION__DATA_FORMAT:
+ setData_format((String)newValue);
+ return;
+ case Convolution_layersPackage.CONVOLUTION__DILATION_RATE:
+ getDilation_rate().clear();
+ getDilation_rate().addAll((Collection<? extends Integer>)newValue);
+ return;
+ case Convolution_layersPackage.CONVOLUTION__ACTIVATION:
+ setActivation((String)newValue);
+ return;
+ case Convolution_layersPackage.CONVOLUTION__BIAS_INITIALIZER:
+ setBias_initializer((String)newValue);
+ return;
+ case Convolution_layersPackage.CONVOLUTION__ACTIVITY_REGULARIZER:
+ setActivity_regularizer((String)newValue);
+ return;
+ case Convolution_layersPackage.CONVOLUTION__BIAS_CONSTRAINT:
+ setBias_constraint((String)newValue);
+ return;
+ case Convolution_layersPackage.CONVOLUTION__BIAS_REGULARIZER:
+ setBias_regularizer((String)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case Convolution_layersPackage.CONVOLUTION__IN_CHANNELS:
+ setIn_channels(IN_CHANNELS_EDEFAULT);
+ return;
+ case Convolution_layersPackage.CONVOLUTION__GROUPS:
+ setGroups(GROUPS_EDEFAULT);
+ return;
+ case Convolution_layersPackage.CONVOLUTION__BIAIS:
+ setBiais(BIAIS_EDEFAULT);
+ return;
+ case Convolution_layersPackage.CONVOLUTION__PADDING_MODE:
+ setPadding_mode(PADDING_MODE_EDEFAULT);
+ return;
+ case Convolution_layersPackage.CONVOLUTION__DATA_FORMAT:
+ setData_format(DATA_FORMAT_EDEFAULT);
+ return;
+ case Convolution_layersPackage.CONVOLUTION__DILATION_RATE:
+ getDilation_rate().clear();
+ return;
+ case Convolution_layersPackage.CONVOLUTION__ACTIVATION:
+ setActivation(ACTIVATION_EDEFAULT);
+ return;
+ case Convolution_layersPackage.CONVOLUTION__BIAS_INITIALIZER:
+ setBias_initializer(BIAS_INITIALIZER_EDEFAULT);
+ return;
+ case Convolution_layersPackage.CONVOLUTION__ACTIVITY_REGULARIZER:
+ setActivity_regularizer(ACTIVITY_REGULARIZER_EDEFAULT);
+ return;
+ case Convolution_layersPackage.CONVOLUTION__BIAS_CONSTRAINT:
+ setBias_constraint(BIAS_CONSTRAINT_EDEFAULT);
+ return;
+ case Convolution_layersPackage.CONVOLUTION__BIAS_REGULARIZER:
+ setBias_regularizer(BIAS_REGULARIZER_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case Convolution_layersPackage.CONVOLUTION__IN_CHANNELS:
+ return in_channels != IN_CHANNELS_EDEFAULT;
+ case Convolution_layersPackage.CONVOLUTION__GROUPS:
+ return groups != GROUPS_EDEFAULT;
+ case Convolution_layersPackage.CONVOLUTION__BIAIS:
+ return biais != BIAIS_EDEFAULT;
+ case Convolution_layersPackage.CONVOLUTION__PADDING_MODE:
+ return PADDING_MODE_EDEFAULT == null ? padding_mode != null : !PADDING_MODE_EDEFAULT.equals(padding_mode);
+ case Convolution_layersPackage.CONVOLUTION__DATA_FORMAT:
+ return DATA_FORMAT_EDEFAULT == null ? data_format != null : !DATA_FORMAT_EDEFAULT.equals(data_format);
+ case Convolution_layersPackage.CONVOLUTION__DILATION_RATE:
+ return dilation_rate != null && !dilation_rate.isEmpty();
+ case Convolution_layersPackage.CONVOLUTION__ACTIVATION:
+ return ACTIVATION_EDEFAULT == null ? activation != null : !ACTIVATION_EDEFAULT.equals(activation);
+ case Convolution_layersPackage.CONVOLUTION__BIAS_INITIALIZER:
+ return BIAS_INITIALIZER_EDEFAULT == null ? bias_initializer != null : !BIAS_INITIALIZER_EDEFAULT.equals(bias_initializer);
+ case Convolution_layersPackage.CONVOLUTION__ACTIVITY_REGULARIZER:
+ return ACTIVITY_REGULARIZER_EDEFAULT == null ? activity_regularizer != null : !ACTIVITY_REGULARIZER_EDEFAULT.equals(activity_regularizer);
+ case Convolution_layersPackage.CONVOLUTION__BIAS_CONSTRAINT:
+ return BIAS_CONSTRAINT_EDEFAULT == null ? bias_constraint != null : !BIAS_CONSTRAINT_EDEFAULT.equals(bias_constraint);
+ case Convolution_layersPackage.CONVOLUTION__BIAS_REGULARIZER:
+ return BIAS_REGULARIZER_EDEFAULT == null ? bias_regularizer != null : !BIAS_REGULARIZER_EDEFAULT.equals(bias_regularizer);
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuilder result = new StringBuilder(super.toString());
+ result.append(" (in_channels: "); //$NON-NLS-1$
+ result.append(in_channels);
+ result.append(", groups: "); //$NON-NLS-1$
+ result.append(groups);
+ result.append(", biais: "); //$NON-NLS-1$
+ result.append(biais);
+ result.append(", padding_mode: "); //$NON-NLS-1$
+ result.append(padding_mode);
+ result.append(", data_format: "); //$NON-NLS-1$
+ result.append(data_format);
+ result.append(", dilation_rate: "); //$NON-NLS-1$
+ result.append(dilation_rate);
+ result.append(", activation: "); //$NON-NLS-1$
+ result.append(activation);
+ result.append(", bias_initializer: "); //$NON-NLS-1$
+ result.append(bias_initializer);
+ result.append(", activity_regularizer: "); //$NON-NLS-1$
+ result.append(activity_regularizer);
+ result.append(", bias_constraint: "); //$NON-NLS-1$
+ result.append(bias_constraint);
+ result.append(", bias_regularizer: "); //$NON-NLS-1$
+ result.append(bias_regularizer);
+ result.append(')');
+ return result.toString();
+ }
+
+} //ConvolutionImpl
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Convolution_layers/impl/Convolution_layersFactoryImpl.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Convolution_layers/impl/Convolution_layersFactoryImpl.java
new file mode 100644
index 0000000..2ca89fe
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Convolution_layers/impl/Convolution_layersFactoryImpl.java
@@ -0,0 +1,226 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+
+import org.eclipse.emf.ecore.impl.EFactoryImpl;
+
+import org.eclipse.emf.ecore.plugin.EcorePlugin;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.*;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model <b>Factory</b>.
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class Convolution_layersFactoryImpl extends EFactoryImpl implements Convolution_layersFactory {
+ /**
+ * Creates the default factory implementation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static Convolution_layersFactory init() {
+ try {
+ Convolution_layersFactory theConvolution_layersFactory = (Convolution_layersFactory)EPackage.Registry.INSTANCE.getEFactory(Convolution_layersPackage.eNS_URI);
+ if (theConvolution_layersFactory != null) {
+ return theConvolution_layersFactory;
+ }
+ }
+ catch (Exception exception) {
+ EcorePlugin.INSTANCE.log(exception);
+ }
+ return new Convolution_layersFactoryImpl();
+ }
+
+ /**
+ * Creates an instance of the factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Convolution_layersFactoryImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EObject create(EClass eClass) {
+ switch (eClass.getClassifierID()) {
+ case Convolution_layersPackage.UNFOLD: return createUnfold();
+ case Convolution_layersPackage.FOLD: return createFold();
+ case Convolution_layersPackage.CONV2D: return createConv2d();
+ case Convolution_layersPackage.CONV3D: return createConv3d();
+ case Convolution_layersPackage.CONV_TRANSPOSE1D: return createConvTranspose1d();
+ case Convolution_layersPackage.CONV_TRANSPOSE2D: return createConvTranspose2d();
+ case Convolution_layersPackage.CONV_TRANSPOSE3D: return createConvTranspose3d();
+ case Convolution_layersPackage.CONV1D: return createConv1d();
+ case Convolution_layersPackage.SEPARABLE_CONV2_D: return createSeparableConv2D();
+ case Convolution_layersPackage.SEPARABLE_CONV1_D: return createSeparableConv1D();
+ case Convolution_layersPackage.DEPTHWISE_CONV2_D: return createDepthwiseConv2D();
+ default:
+ throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier"); //$NON-NLS-1$ //$NON-NLS-2$
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Unfold createUnfold() {
+ UnfoldImpl unfold = new UnfoldImpl();
+ return unfold;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Fold createFold() {
+ FoldImpl fold = new FoldImpl();
+ return fold;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Conv2d createConv2d() {
+ Conv2dImpl conv2d = new Conv2dImpl();
+ return conv2d;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Conv3d createConv3d() {
+ Conv3dImpl conv3d = new Conv3dImpl();
+ return conv3d;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public ConvTranspose1d createConvTranspose1d() {
+ ConvTranspose1dImpl convTranspose1d = new ConvTranspose1dImpl();
+ return convTranspose1d;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public ConvTranspose2d createConvTranspose2d() {
+ ConvTranspose2dImpl convTranspose2d = new ConvTranspose2dImpl();
+ return convTranspose2d;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public ConvTranspose3d createConvTranspose3d() {
+ ConvTranspose3dImpl convTranspose3d = new ConvTranspose3dImpl();
+ return convTranspose3d;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Conv1d createConv1d() {
+ Conv1dImpl conv1d = new Conv1dImpl();
+ return conv1d;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public SeparableConv2D createSeparableConv2D() {
+ SeparableConv2DImpl separableConv2D = new SeparableConv2DImpl();
+ return separableConv2D;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public SeparableConv1D createSeparableConv1D() {
+ SeparableConv1DImpl separableConv1D = new SeparableConv1DImpl();
+ return separableConv1D;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public DepthwiseConv2D createDepthwiseConv2D() {
+ DepthwiseConv2DImpl depthwiseConv2D = new DepthwiseConv2DImpl();
+ return depthwiseConv2D;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Convolution_layersPackage getConvolution_layersPackage() {
+ return (Convolution_layersPackage)getEPackage();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @deprecated
+ * @generated
+ */
+ @Deprecated
+ public static Convolution_layersPackage getPackage() {
+ return Convolution_layersPackage.eINSTANCE;
+ }
+
+} //Convolution_layersFactoryImpl
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Convolution_layers/impl/Convolution_layersImpl.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Convolution_layers/impl/Convolution_layersImpl.java
new file mode 100644
index 0000000..f0a0269
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Convolution_layers/impl/Convolution_layersImpl.java
@@ -0,0 +1,269 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.util.EDataTypeUniqueEList;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution_layers;
+import org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution_layersPackage;
+import org.eclipse.papyrus.aiml.profile.AIML.Module.impl.ModelImpl;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Convolution layers</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.Convolution_layersImpl#getKernel_size <em>Kernel size</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.Convolution_layersImpl#getStride <em>Stride</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.Convolution_layersImpl#getPadding <em>Padding</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.Convolution_layersImpl#getDilation <em>Dilation</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public abstract class Convolution_layersImpl extends ModelImpl implements Convolution_layers {
+ /**
+ * The cached value of the '{@link #getKernel_size() <em>Kernel size</em>}' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getKernel_size()
+ * @generated
+ * @ordered
+ */
+ protected EList<Integer> kernel_size;
+
+ /**
+ * The cached value of the '{@link #getStride() <em>Stride</em>}' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getStride()
+ * @generated
+ * @ordered
+ */
+ protected EList<Integer> stride;
+
+ /**
+ * The cached value of the '{@link #getPadding() <em>Padding</em>}' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getPadding()
+ * @generated
+ * @ordered
+ */
+ protected EList<Integer> padding;
+
+ /**
+ * The cached value of the '{@link #getDilation() <em>Dilation</em>}' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getDilation()
+ * @generated
+ * @ordered
+ */
+ protected EList<Integer> dilation;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected Convolution_layersImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return Convolution_layersPackage.Literals.CONVOLUTION_LAYERS;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EList<Integer> getKernel_size() {
+ if (kernel_size == null) {
+ kernel_size = new EDataTypeUniqueEList<Integer>(Integer.class, this, Convolution_layersPackage.CONVOLUTION_LAYERS__KERNEL_SIZE);
+ }
+ return kernel_size;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EList<Integer> getStride() {
+ if (stride == null) {
+ stride = new EDataTypeUniqueEList<Integer>(Integer.class, this, Convolution_layersPackage.CONVOLUTION_LAYERS__STRIDE);
+ }
+ return stride;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EList<Integer> getPadding() {
+ if (padding == null) {
+ padding = new EDataTypeUniqueEList<Integer>(Integer.class, this, Convolution_layersPackage.CONVOLUTION_LAYERS__PADDING);
+ }
+ return padding;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EList<Integer> getDilation() {
+ if (dilation == null) {
+ dilation = new EDataTypeUniqueEList<Integer>(Integer.class, this, Convolution_layersPackage.CONVOLUTION_LAYERS__DILATION);
+ }
+ return dilation;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case Convolution_layersPackage.CONVOLUTION_LAYERS__KERNEL_SIZE:
+ return getKernel_size();
+ case Convolution_layersPackage.CONVOLUTION_LAYERS__STRIDE:
+ return getStride();
+ case Convolution_layersPackage.CONVOLUTION_LAYERS__PADDING:
+ return getPadding();
+ case Convolution_layersPackage.CONVOLUTION_LAYERS__DILATION:
+ return getDilation();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @SuppressWarnings("unchecked")
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case Convolution_layersPackage.CONVOLUTION_LAYERS__KERNEL_SIZE:
+ getKernel_size().clear();
+ getKernel_size().addAll((Collection<? extends Integer>)newValue);
+ return;
+ case Convolution_layersPackage.CONVOLUTION_LAYERS__STRIDE:
+ getStride().clear();
+ getStride().addAll((Collection<? extends Integer>)newValue);
+ return;
+ case Convolution_layersPackage.CONVOLUTION_LAYERS__PADDING:
+ getPadding().clear();
+ getPadding().addAll((Collection<? extends Integer>)newValue);
+ return;
+ case Convolution_layersPackage.CONVOLUTION_LAYERS__DILATION:
+ getDilation().clear();
+ getDilation().addAll((Collection<? extends Integer>)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case Convolution_layersPackage.CONVOLUTION_LAYERS__KERNEL_SIZE:
+ getKernel_size().clear();
+ return;
+ case Convolution_layersPackage.CONVOLUTION_LAYERS__STRIDE:
+ getStride().clear();
+ return;
+ case Convolution_layersPackage.CONVOLUTION_LAYERS__PADDING:
+ getPadding().clear();
+ return;
+ case Convolution_layersPackage.CONVOLUTION_LAYERS__DILATION:
+ getDilation().clear();
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case Convolution_layersPackage.CONVOLUTION_LAYERS__KERNEL_SIZE:
+ return kernel_size != null && !kernel_size.isEmpty();
+ case Convolution_layersPackage.CONVOLUTION_LAYERS__STRIDE:
+ return stride != null && !stride.isEmpty();
+ case Convolution_layersPackage.CONVOLUTION_LAYERS__PADDING:
+ return padding != null && !padding.isEmpty();
+ case Convolution_layersPackage.CONVOLUTION_LAYERS__DILATION:
+ return dilation != null && !dilation.isEmpty();
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuilder result = new StringBuilder(super.toString());
+ result.append(" (kernel_size: "); //$NON-NLS-1$
+ result.append(kernel_size);
+ result.append(", stride: "); //$NON-NLS-1$
+ result.append(stride);
+ result.append(", padding: "); //$NON-NLS-1$
+ result.append(padding);
+ result.append(", dilation: "); //$NON-NLS-1$
+ result.append(dilation);
+ result.append(')');
+ return result.toString();
+ }
+
+} //Convolution_layersImpl
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Convolution_layers/impl/Convolution_layersPackageImpl.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Convolution_layers/impl/Convolution_layersPackageImpl.java
new file mode 100644
index 0000000..6682399
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Convolution_layers/impl/Convolution_layersPackageImpl.java
@@ -0,0 +1,1113 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl;
+
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EReference;
+import org.eclipse.emf.ecore.EcorePackage;
+
+import org.eclipse.emf.ecore.impl.EPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.AIMLPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Conv1d;
+import org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Conv2d;
+import org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Conv3d;
+import org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.ConvTranspose1d;
+import org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.ConvTranspose2d;
+import org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.ConvTranspose3d;
+import org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution;
+import org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution_layers;
+import org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution_layersFactory;
+import org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution_layersPackage;
+import org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.DepthwiseConv2D;
+import org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Fold;
+import org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.LayerWithFilter;
+import org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Separable;
+import org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.SeparableConv1D;
+import org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.SeparableConv2D;
+import org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Unfold;
+import org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.basic;
+import org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.transpose;
+
+import org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers.DataParallel_layersPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers.impl.DataParallel_layersPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Distance_functions.Distance_functionsPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Distance_functions.impl.Distance_functionsPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.Dropout_layersPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.impl.Dropout_layersPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.Layer_weight_constraintsPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.impl.Layer_weight_constraintsPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.Layer_weight_initializersPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.impl.Layer_weight_initializersPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers.Layer_weight_regularizersPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers.impl.Layer_weight_regularizersPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.Linear_layersPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.impl.Linear_layersPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Loss_functions.Loss_functionsPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Loss_functions.impl.Loss_functionsPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Module.ModulePackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Module.impl.ModulePackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.NonLinearActivations.NonLinearActivationsPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.NonLinearActivations.impl.NonLinearActivationsPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Normalization_layers.Normalization_layersPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Normalization_layers.impl.Normalization_layersPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Padding_layers.Padding_layersPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Padding_layers.impl.Padding_layersPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Pooling_layers.Pooling_layersPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Pooling_layers.impl.Pooling_layersPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Recurrent_layers.Recurrent_layersPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Recurrent_layers.impl.Recurrent_layersPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.SoftMinMaxActivations.SoftMinMaxActivationsPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.SoftMinMaxActivations.impl.SoftMinMaxActivationsPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Sparse_layers.Sparse_layersPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Sparse_layers.impl.Sparse_layersPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Tensor.TensorPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Tensor.impl.TensorPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Transformer_layers.Transformer_layersPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Transformer_layers.impl.Transformer_layersPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Vision_layers.Vision_layersPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Vision_layers.impl.Vision_layersPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.datatypes.DatatypesPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.datatypes.impl.DatatypesPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.impl.AIMLPackageImpl;
+
+import org.eclipse.uml2.types.TypesPackage;
+
+import org.eclipse.uml2.uml.UMLPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model <b>Package</b>.
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class Convolution_layersPackageImpl extends EPackageImpl implements Convolution_layersPackage {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass convolutionEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass convolution_layersEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass unfoldEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass foldEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass conv2dEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass basicEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass layerWithFilterEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass conv3dEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass convTranspose1dEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass convTranspose2dEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass transposeEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass convTranspose3dEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass conv1dEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass separableEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass separableConv2DEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass separableConv1DEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass depthwiseConv2DEClass = null;
+
+ /**
+ * Creates an instance of the model <b>Package</b>, registered with
+ * {@link org.eclipse.emf.ecore.EPackage.Registry EPackage.Registry} by the package
+ * package URI value.
+ * <p>Note: the correct way to create the package is via the static
+ * factory method {@link #init init()}, which also performs
+ * initialization of the package, or returns the registered package,
+ * if one already exists.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.emf.ecore.EPackage.Registry
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution_layersPackage#eNS_URI
+ * @see #init()
+ * @generated
+ */
+ private Convolution_layersPackageImpl() {
+ super(eNS_URI, Convolution_layersFactory.eINSTANCE);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private static boolean isInited = false;
+
+ /**
+ * Creates, registers, and initializes the <b>Package</b> for this model, and for any others upon which it depends.
+ *
+ * <p>This method is used to initialize {@link Convolution_layersPackage#eINSTANCE} when that field is accessed.
+ * Clients should not invoke it directly. Instead, they should simply access that field to obtain the package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #eNS_URI
+ * @see #createPackageContents()
+ * @see #initializePackageContents()
+ * @generated
+ */
+ public static Convolution_layersPackage init() {
+ if (isInited) return (Convolution_layersPackage)EPackage.Registry.INSTANCE.getEPackage(Convolution_layersPackage.eNS_URI);
+
+ // Obtain or create and register package
+ Object registeredConvolution_layersPackage = EPackage.Registry.INSTANCE.get(eNS_URI);
+ Convolution_layersPackageImpl theConvolution_layersPackage = registeredConvolution_layersPackage instanceof Convolution_layersPackageImpl ? (Convolution_layersPackageImpl)registeredConvolution_layersPackage : new Convolution_layersPackageImpl();
+
+ isInited = true;
+
+ // Initialize simple dependencies
+ EcorePackage.eINSTANCE.eClass();
+ TypesPackage.eINSTANCE.eClass();
+ UMLPackage.eINSTANCE.eClass();
+
+ // Obtain or create and register interdependencies
+ Object registeredPackage = EPackage.Registry.INSTANCE.getEPackage(AIMLPackage.eNS_URI);
+ AIMLPackageImpl theAIMLPackage = (AIMLPackageImpl)(registeredPackage instanceof AIMLPackageImpl ? registeredPackage : AIMLPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(ModulePackage.eNS_URI);
+ ModulePackageImpl theModulePackage = (ModulePackageImpl)(registeredPackage instanceof ModulePackageImpl ? registeredPackage : ModulePackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(TensorPackage.eNS_URI);
+ TensorPackageImpl theTensorPackage = (TensorPackageImpl)(registeredPackage instanceof TensorPackageImpl ? registeredPackage : TensorPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(DatatypesPackage.eNS_URI);
+ DatatypesPackageImpl theDatatypesPackage = (DatatypesPackageImpl)(registeredPackage instanceof DatatypesPackageImpl ? registeredPackage : DatatypesPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Pooling_layersPackage.eNS_URI);
+ Pooling_layersPackageImpl thePooling_layersPackage = (Pooling_layersPackageImpl)(registeredPackage instanceof Pooling_layersPackageImpl ? registeredPackage : Pooling_layersPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Layer_weight_constraintsPackage.eNS_URI);
+ Layer_weight_constraintsPackageImpl theLayer_weight_constraintsPackage = (Layer_weight_constraintsPackageImpl)(registeredPackage instanceof Layer_weight_constraintsPackageImpl ? registeredPackage : Layer_weight_constraintsPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Padding_layersPackage.eNS_URI);
+ Padding_layersPackageImpl thePadding_layersPackage = (Padding_layersPackageImpl)(registeredPackage instanceof Padding_layersPackageImpl ? registeredPackage : Padding_layersPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(NonLinearActivationsPackage.eNS_URI);
+ NonLinearActivationsPackageImpl theNonLinearActivationsPackage = (NonLinearActivationsPackageImpl)(registeredPackage instanceof NonLinearActivationsPackageImpl ? registeredPackage : NonLinearActivationsPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(SoftMinMaxActivationsPackage.eNS_URI);
+ SoftMinMaxActivationsPackageImpl theSoftMinMaxActivationsPackage = (SoftMinMaxActivationsPackageImpl)(registeredPackage instanceof SoftMinMaxActivationsPackageImpl ? registeredPackage : SoftMinMaxActivationsPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Normalization_layersPackage.eNS_URI);
+ Normalization_layersPackageImpl theNormalization_layersPackage = (Normalization_layersPackageImpl)(registeredPackage instanceof Normalization_layersPackageImpl ? registeredPackage : Normalization_layersPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Recurrent_layersPackage.eNS_URI);
+ Recurrent_layersPackageImpl theRecurrent_layersPackage = (Recurrent_layersPackageImpl)(registeredPackage instanceof Recurrent_layersPackageImpl ? registeredPackage : Recurrent_layersPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Transformer_layersPackage.eNS_URI);
+ Transformer_layersPackageImpl theTransformer_layersPackage = (Transformer_layersPackageImpl)(registeredPackage instanceof Transformer_layersPackageImpl ? registeredPackage : Transformer_layersPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Linear_layersPackage.eNS_URI);
+ Linear_layersPackageImpl theLinear_layersPackage = (Linear_layersPackageImpl)(registeredPackage instanceof Linear_layersPackageImpl ? registeredPackage : Linear_layersPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Dropout_layersPackage.eNS_URI);
+ Dropout_layersPackageImpl theDropout_layersPackage = (Dropout_layersPackageImpl)(registeredPackage instanceof Dropout_layersPackageImpl ? registeredPackage : Dropout_layersPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Sparse_layersPackage.eNS_URI);
+ Sparse_layersPackageImpl theSparse_layersPackage = (Sparse_layersPackageImpl)(registeredPackage instanceof Sparse_layersPackageImpl ? registeredPackage : Sparse_layersPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Distance_functionsPackage.eNS_URI);
+ Distance_functionsPackageImpl theDistance_functionsPackage = (Distance_functionsPackageImpl)(registeredPackage instanceof Distance_functionsPackageImpl ? registeredPackage : Distance_functionsPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Loss_functionsPackage.eNS_URI);
+ Loss_functionsPackageImpl theLoss_functionsPackage = (Loss_functionsPackageImpl)(registeredPackage instanceof Loss_functionsPackageImpl ? registeredPackage : Loss_functionsPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Vision_layersPackage.eNS_URI);
+ Vision_layersPackageImpl theVision_layersPackage = (Vision_layersPackageImpl)(registeredPackage instanceof Vision_layersPackageImpl ? registeredPackage : Vision_layersPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(DataParallel_layersPackage.eNS_URI);
+ DataParallel_layersPackageImpl theDataParallel_layersPackage = (DataParallel_layersPackageImpl)(registeredPackage instanceof DataParallel_layersPackageImpl ? registeredPackage : DataParallel_layersPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Layer_weight_regularizersPackage.eNS_URI);
+ Layer_weight_regularizersPackageImpl theLayer_weight_regularizersPackage = (Layer_weight_regularizersPackageImpl)(registeredPackage instanceof Layer_weight_regularizersPackageImpl ? registeredPackage : Layer_weight_regularizersPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Layer_weight_initializersPackage.eNS_URI);
+ Layer_weight_initializersPackageImpl theLayer_weight_initializersPackage = (Layer_weight_initializersPackageImpl)(registeredPackage instanceof Layer_weight_initializersPackageImpl ? registeredPackage : Layer_weight_initializersPackage.eINSTANCE);
+
+ // Create package meta-data objects
+ theConvolution_layersPackage.createPackageContents();
+ theAIMLPackage.createPackageContents();
+ theModulePackage.createPackageContents();
+ theTensorPackage.createPackageContents();
+ theDatatypesPackage.createPackageContents();
+ thePooling_layersPackage.createPackageContents();
+ theLayer_weight_constraintsPackage.createPackageContents();
+ thePadding_layersPackage.createPackageContents();
+ theNonLinearActivationsPackage.createPackageContents();
+ theSoftMinMaxActivationsPackage.createPackageContents();
+ theNormalization_layersPackage.createPackageContents();
+ theRecurrent_layersPackage.createPackageContents();
+ theTransformer_layersPackage.createPackageContents();
+ theLinear_layersPackage.createPackageContents();
+ theDropout_layersPackage.createPackageContents();
+ theSparse_layersPackage.createPackageContents();
+ theDistance_functionsPackage.createPackageContents();
+ theLoss_functionsPackage.createPackageContents();
+ theVision_layersPackage.createPackageContents();
+ theDataParallel_layersPackage.createPackageContents();
+ theLayer_weight_regularizersPackage.createPackageContents();
+ theLayer_weight_initializersPackage.createPackageContents();
+
+ // Initialize created meta-data
+ theConvolution_layersPackage.initializePackageContents();
+ theAIMLPackage.initializePackageContents();
+ theModulePackage.initializePackageContents();
+ theTensorPackage.initializePackageContents();
+ theDatatypesPackage.initializePackageContents();
+ thePooling_layersPackage.initializePackageContents();
+ theLayer_weight_constraintsPackage.initializePackageContents();
+ thePadding_layersPackage.initializePackageContents();
+ theNonLinearActivationsPackage.initializePackageContents();
+ theSoftMinMaxActivationsPackage.initializePackageContents();
+ theNormalization_layersPackage.initializePackageContents();
+ theRecurrent_layersPackage.initializePackageContents();
+ theTransformer_layersPackage.initializePackageContents();
+ theLinear_layersPackage.initializePackageContents();
+ theDropout_layersPackage.initializePackageContents();
+ theSparse_layersPackage.initializePackageContents();
+ theDistance_functionsPackage.initializePackageContents();
+ theLoss_functionsPackage.initializePackageContents();
+ theVision_layersPackage.initializePackageContents();
+ theDataParallel_layersPackage.initializePackageContents();
+ theLayer_weight_regularizersPackage.initializePackageContents();
+ theLayer_weight_initializersPackage.initializePackageContents();
+
+ // Mark meta-data to indicate it can't be changed
+ theConvolution_layersPackage.freeze();
+
+ // Update the registry and return the package
+ EPackage.Registry.INSTANCE.put(Convolution_layersPackage.eNS_URI, theConvolution_layersPackage);
+ return theConvolution_layersPackage;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EClass getConvolution() {
+ return convolutionEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EAttribute getConvolution_In_channels() {
+ return (EAttribute)convolutionEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EAttribute getConvolution_Groups() {
+ return (EAttribute)convolutionEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EAttribute getConvolution_Biais() {
+ return (EAttribute)convolutionEClass.getEStructuralFeatures().get(2);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EAttribute getConvolution_Padding_mode() {
+ return (EAttribute)convolutionEClass.getEStructuralFeatures().get(3);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EAttribute getConvolution_Data_format() {
+ return (EAttribute)convolutionEClass.getEStructuralFeatures().get(4);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EAttribute getConvolution_Dilation_rate() {
+ return (EAttribute)convolutionEClass.getEStructuralFeatures().get(5);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EAttribute getConvolution_Activation() {
+ return (EAttribute)convolutionEClass.getEStructuralFeatures().get(6);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EAttribute getConvolution_Bias_initializer() {
+ return (EAttribute)convolutionEClass.getEStructuralFeatures().get(7);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EAttribute getConvolution_Activity_regularizer() {
+ return (EAttribute)convolutionEClass.getEStructuralFeatures().get(8);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EAttribute getConvolution_Bias_constraint() {
+ return (EAttribute)convolutionEClass.getEStructuralFeatures().get(9);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EAttribute getConvolution_Bias_regularizer() {
+ return (EAttribute)convolutionEClass.getEStructuralFeatures().get(10);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EClass getConvolution_layers() {
+ return convolution_layersEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EAttribute getConvolution_layers_Kernel_size() {
+ return (EAttribute)convolution_layersEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EAttribute getConvolution_layers_Stride() {
+ return (EAttribute)convolution_layersEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EAttribute getConvolution_layers_Padding() {
+ return (EAttribute)convolution_layersEClass.getEStructuralFeatures().get(2);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EAttribute getConvolution_layers_Dilation() {
+ return (EAttribute)convolution_layersEClass.getEStructuralFeatures().get(3);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EClass getUnfold() {
+ return unfoldEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EClass getFold() {
+ return foldEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EAttribute getFold_Output_size() {
+ return (EAttribute)foldEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EClass getConv2d() {
+ return conv2dEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EClass getbasic() {
+ return basicEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EAttribute getbasic_Kernel_initializer() {
+ return (EAttribute)basicEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EReference getbasic_Kernel_constraint() {
+ return (EReference)basicEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EAttribute getbasic_Kernel_regularizer() {
+ return (EAttribute)basicEClass.getEStructuralFeatures().get(2);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EClass getLayerWithFilter() {
+ return layerWithFilterEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EAttribute getLayerWithFilter_Out_channels() {
+ return (EAttribute)layerWithFilterEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EClass getConv3d() {
+ return conv3dEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EClass getConvTranspose1d() {
+ return convTranspose1dEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EClass getConvTranspose2d() {
+ return convTranspose2dEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EClass gettranspose() {
+ return transposeEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EAttribute gettranspose_Output_padding() {
+ return (EAttribute)transposeEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EClass getConvTranspose3d() {
+ return convTranspose3dEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EClass getConv1d() {
+ return conv1dEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EClass getSeparable() {
+ return separableEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EAttribute getSeparable_Depth_multiplier() {
+ return (EAttribute)separableEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EAttribute getSeparable_Depthwise_initializer() {
+ return (EAttribute)separableEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EAttribute getSeparable_Pointwise_initializer() {
+ return (EAttribute)separableEClass.getEStructuralFeatures().get(2);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EAttribute getSeparable_Depthwise_regularizer() {
+ return (EAttribute)separableEClass.getEStructuralFeatures().get(3);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EAttribute getSeparable_Poitnwise_regularizer() {
+ return (EAttribute)separableEClass.getEStructuralFeatures().get(4);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EAttribute getSeparable_Depthwise_constraint() {
+ return (EAttribute)separableEClass.getEStructuralFeatures().get(5);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EAttribute getSeparable_Pointwise_constraint() {
+ return (EAttribute)separableEClass.getEStructuralFeatures().get(6);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EClass getSeparableConv2D() {
+ return separableConv2DEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EClass getSeparableConv1D() {
+ return separableConv1DEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EClass getDepthwiseConv2D() {
+ return depthwiseConv2DEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EAttribute getDepthwiseConv2D_Depth_multiplier() {
+ return (EAttribute)depthwiseConv2DEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EAttribute getDepthwiseConv2D_Depthwise_initializer() {
+ return (EAttribute)depthwiseConv2DEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EAttribute getDepthwiseConv2D_Depthwise_regularizer() {
+ return (EAttribute)depthwiseConv2DEClass.getEStructuralFeatures().get(2);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EAttribute getDepthwiseConv2D_Depthwise_constraint() {
+ return (EAttribute)depthwiseConv2DEClass.getEStructuralFeatures().get(3);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Convolution_layersFactory getConvolution_layersFactory() {
+ return (Convolution_layersFactory)getEFactoryInstance();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private boolean isCreated = false;
+
+ /**
+ * Creates the meta-model objects for the package. This method is
+ * guarded to have no affect on any invocation but its first.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void createPackageContents() {
+ if (isCreated) return;
+ isCreated = true;
+
+ // Create classes and their features
+ convolutionEClass = createEClass(CONVOLUTION);
+ createEAttribute(convolutionEClass, CONVOLUTION__IN_CHANNELS);
+ createEAttribute(convolutionEClass, CONVOLUTION__GROUPS);
+ createEAttribute(convolutionEClass, CONVOLUTION__BIAIS);
+ createEAttribute(convolutionEClass, CONVOLUTION__PADDING_MODE);
+ createEAttribute(convolutionEClass, CONVOLUTION__DATA_FORMAT);
+ createEAttribute(convolutionEClass, CONVOLUTION__DILATION_RATE);
+ createEAttribute(convolutionEClass, CONVOLUTION__ACTIVATION);
+ createEAttribute(convolutionEClass, CONVOLUTION__BIAS_INITIALIZER);
+ createEAttribute(convolutionEClass, CONVOLUTION__ACTIVITY_REGULARIZER);
+ createEAttribute(convolutionEClass, CONVOLUTION__BIAS_CONSTRAINT);
+ createEAttribute(convolutionEClass, CONVOLUTION__BIAS_REGULARIZER);
+
+ convolution_layersEClass = createEClass(CONVOLUTION_LAYERS);
+ createEAttribute(convolution_layersEClass, CONVOLUTION_LAYERS__KERNEL_SIZE);
+ createEAttribute(convolution_layersEClass, CONVOLUTION_LAYERS__STRIDE);
+ createEAttribute(convolution_layersEClass, CONVOLUTION_LAYERS__PADDING);
+ createEAttribute(convolution_layersEClass, CONVOLUTION_LAYERS__DILATION);
+
+ unfoldEClass = createEClass(UNFOLD);
+
+ foldEClass = createEClass(FOLD);
+ createEAttribute(foldEClass, FOLD__OUTPUT_SIZE);
+
+ conv2dEClass = createEClass(CONV2D);
+
+ basicEClass = createEClass(BASIC);
+ createEAttribute(basicEClass, BASIC__KERNEL_INITIALIZER);
+ createEReference(basicEClass, BASIC__KERNEL_CONSTRAINT);
+ createEAttribute(basicEClass, BASIC__KERNEL_REGULARIZER);
+
+ layerWithFilterEClass = createEClass(LAYER_WITH_FILTER);
+ createEAttribute(layerWithFilterEClass, LAYER_WITH_FILTER__OUT_CHANNELS);
+
+ conv3dEClass = createEClass(CONV3D);
+
+ convTranspose1dEClass = createEClass(CONV_TRANSPOSE1D);
+
+ convTranspose2dEClass = createEClass(CONV_TRANSPOSE2D);
+
+ transposeEClass = createEClass(TRANSPOSE);
+ createEAttribute(transposeEClass, TRANSPOSE__OUTPUT_PADDING);
+
+ convTranspose3dEClass = createEClass(CONV_TRANSPOSE3D);
+
+ conv1dEClass = createEClass(CONV1D);
+
+ separableEClass = createEClass(SEPARABLE);
+ createEAttribute(separableEClass, SEPARABLE__DEPTH_MULTIPLIER);
+ createEAttribute(separableEClass, SEPARABLE__DEPTHWISE_INITIALIZER);
+ createEAttribute(separableEClass, SEPARABLE__POINTWISE_INITIALIZER);
+ createEAttribute(separableEClass, SEPARABLE__DEPTHWISE_REGULARIZER);
+ createEAttribute(separableEClass, SEPARABLE__POITNWISE_REGULARIZER);
+ createEAttribute(separableEClass, SEPARABLE__DEPTHWISE_CONSTRAINT);
+ createEAttribute(separableEClass, SEPARABLE__POINTWISE_CONSTRAINT);
+
+ separableConv2DEClass = createEClass(SEPARABLE_CONV2_D);
+
+ separableConv1DEClass = createEClass(SEPARABLE_CONV1_D);
+
+ depthwiseConv2DEClass = createEClass(DEPTHWISE_CONV2_D);
+ createEAttribute(depthwiseConv2DEClass, DEPTHWISE_CONV2_D__DEPTH_MULTIPLIER);
+ createEAttribute(depthwiseConv2DEClass, DEPTHWISE_CONV2_D__DEPTHWISE_INITIALIZER);
+ createEAttribute(depthwiseConv2DEClass, DEPTHWISE_CONV2_D__DEPTHWISE_REGULARIZER);
+ createEAttribute(depthwiseConv2DEClass, DEPTHWISE_CONV2_D__DEPTHWISE_CONSTRAINT);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private boolean isInitialized = false;
+
+ /**
+ * Complete the initialization of the package and its meta-model. This
+ * method is guarded to have no affect on any invocation but its first.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void initializePackageContents() {
+ if (isInitialized) return;
+ isInitialized = true;
+
+ // Initialize package
+ setName(eNAME);
+ setNsPrefix(eNS_PREFIX);
+ setNsURI(eNS_URI);
+
+ // Obtain other dependent packages
+ TypesPackage theTypesPackage = (TypesPackage)EPackage.Registry.INSTANCE.getEPackage(TypesPackage.eNS_URI);
+ ModulePackage theModulePackage = (ModulePackage)EPackage.Registry.INSTANCE.getEPackage(ModulePackage.eNS_URI);
+ Layer_weight_constraintsPackage theLayer_weight_constraintsPackage = (Layer_weight_constraintsPackage)EPackage.Registry.INSTANCE.getEPackage(Layer_weight_constraintsPackage.eNS_URI);
+
+ // Create type parameters
+
+ // Set bounds for type parameters
+
+ // Add supertypes to classes
+ convolutionEClass.getESuperTypes().add(this.getConvolution_layers());
+ convolution_layersEClass.getESuperTypes().add(theModulePackage.getModel());
+ unfoldEClass.getESuperTypes().add(this.getConvolution_layers());
+ foldEClass.getESuperTypes().add(this.getConvolution_layers());
+ conv2dEClass.getESuperTypes().add(this.getbasic());
+ basicEClass.getESuperTypes().add(this.getLayerWithFilter());
+ layerWithFilterEClass.getESuperTypes().add(this.getConvolution());
+ conv3dEClass.getESuperTypes().add(this.getbasic());
+ convTranspose1dEClass.getESuperTypes().add(this.getLayerWithFilter());
+ convTranspose2dEClass.getESuperTypes().add(this.gettranspose());
+ transposeEClass.getESuperTypes().add(this.getbasic());
+ convTranspose3dEClass.getESuperTypes().add(this.gettranspose());
+ conv1dEClass.getESuperTypes().add(this.getbasic());
+ separableEClass.getESuperTypes().add(this.getLayerWithFilter());
+ separableConv2DEClass.getESuperTypes().add(this.getSeparable());
+ separableConv1DEClass.getESuperTypes().add(this.getSeparable());
+ depthwiseConv2DEClass.getESuperTypes().add(this.getConvolution());
+
+ // Initialize classes, features, and operations; add parameters
+ initEClass(convolutionEClass, Convolution.class, "Convolution", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ initEAttribute(getConvolution_In_channels(), theTypesPackage.getInteger(), "in_channels", null, 0, 1, Convolution.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+ initEAttribute(getConvolution_Groups(), theTypesPackage.getInteger(), "groups", null, 0, 1, Convolution.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+ initEAttribute(getConvolution_Biais(), theTypesPackage.getBoolean(), "biais", null, 0, 1, Convolution.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+ initEAttribute(getConvolution_Padding_mode(), theTypesPackage.getString(), "padding_mode", null, 0, 1, Convolution.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+ initEAttribute(getConvolution_Data_format(), theTypesPackage.getString(), "data_format", null, 0, 1, Convolution.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+ initEAttribute(getConvolution_Dilation_rate(), theTypesPackage.getInteger(), "dilation_rate", null, 0, -1, Convolution.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+ initEAttribute(getConvolution_Activation(), theTypesPackage.getString(), "activation", null, 0, 1, Convolution.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+ initEAttribute(getConvolution_Bias_initializer(), theTypesPackage.getString(), "bias_initializer", null, 1, 1, Convolution.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+ initEAttribute(getConvolution_Activity_regularizer(), theTypesPackage.getString(), "activity_regularizer", null, 1, 1, Convolution.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+ initEAttribute(getConvolution_Bias_constraint(), theTypesPackage.getString(), "bias_constraint", null, 1, 1, Convolution.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+ initEAttribute(getConvolution_Bias_regularizer(), theTypesPackage.getString(), "bias_regularizer", null, 1, 1, Convolution.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+
+ initEClass(convolution_layersEClass, Convolution_layers.class, "Convolution_layers", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ initEAttribute(getConvolution_layers_Kernel_size(), theTypesPackage.getInteger(), "kernel_size", null, 0, -1, Convolution_layers.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+ initEAttribute(getConvolution_layers_Stride(), theTypesPackage.getInteger(), "stride", null, 0, -1, Convolution_layers.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+ initEAttribute(getConvolution_layers_Padding(), theTypesPackage.getInteger(), "padding", null, 0, -1, Convolution_layers.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+ initEAttribute(getConvolution_layers_Dilation(), theTypesPackage.getInteger(), "dilation", null, 0, -1, Convolution_layers.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+
+ initEClass(unfoldEClass, Unfold.class, "Unfold", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+
+ initEClass(foldEClass, Fold.class, "Fold", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ initEAttribute(getFold_Output_size(), theTypesPackage.getInteger(), "output_size", null, 0, -1, Fold.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+
+ initEClass(conv2dEClass, Conv2d.class, "Conv2d", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+
+ initEClass(basicEClass, basic.class, "basic", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ initEAttribute(getbasic_Kernel_initializer(), theTypesPackage.getString(), "kernel_initializer", null, 0, 1, basic.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+ initEReference(getbasic_Kernel_constraint(), theLayer_weight_constraintsPackage.getconstraints(), null, "kernel_constraint", null, 1, 1, basic.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+ initEAttribute(getbasic_Kernel_regularizer(), theTypesPackage.getString(), "kernel_regularizer", null, 0, 1, basic.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+
+ initEClass(layerWithFilterEClass, LayerWithFilter.class, "LayerWithFilter", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ initEAttribute(getLayerWithFilter_Out_channels(), theTypesPackage.getInteger(), "out_channels", null, 1, 1, LayerWithFilter.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+
+ initEClass(conv3dEClass, Conv3d.class, "Conv3d", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+
+ initEClass(convTranspose1dEClass, ConvTranspose1d.class, "ConvTranspose1d", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+
+ initEClass(convTranspose2dEClass, ConvTranspose2d.class, "ConvTranspose2d", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+
+ initEClass(transposeEClass, transpose.class, "transpose", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ initEAttribute(gettranspose_Output_padding(), theTypesPackage.getInteger(), "output_padding", null, 0, -1, transpose.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+
+ initEClass(convTranspose3dEClass, ConvTranspose3d.class, "ConvTranspose3d", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+
+ initEClass(conv1dEClass, Conv1d.class, "Conv1d", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+
+ initEClass(separableEClass, Separable.class, "Separable", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ initEAttribute(getSeparable_Depth_multiplier(), theTypesPackage.getInteger(), "depth_multiplier", null, 0, -1, Separable.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+ initEAttribute(getSeparable_Depthwise_initializer(), theTypesPackage.getString(), "depthwise_initializer", null, 0, 1, Separable.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+ initEAttribute(getSeparable_Pointwise_initializer(), theTypesPackage.getString(), "pointwise_initializer", null, 0, 1, Separable.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+ initEAttribute(getSeparable_Depthwise_regularizer(), theTypesPackage.getString(), "depthwise_regularizer", null, 1, 1, Separable.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+ initEAttribute(getSeparable_Poitnwise_regularizer(), theTypesPackage.getString(), "poitnwise_regularizer", null, 1, 1, Separable.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+ initEAttribute(getSeparable_Depthwise_constraint(), theTypesPackage.getString(), "depthwise_constraint", null, 1, 1, Separable.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+ initEAttribute(getSeparable_Pointwise_constraint(), theTypesPackage.getString(), "pointwise_constraint", null, 1, 1, Separable.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+
+ initEClass(separableConv2DEClass, SeparableConv2D.class, "SeparableConv2D", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+
+ initEClass(separableConv1DEClass, SeparableConv1D.class, "SeparableConv1D", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+
+ initEClass(depthwiseConv2DEClass, DepthwiseConv2D.class, "DepthwiseConv2D", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ initEAttribute(getDepthwiseConv2D_Depth_multiplier(), theTypesPackage.getInteger(), "depth_multiplier", null, 0, -1, DepthwiseConv2D.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+ initEAttribute(getDepthwiseConv2D_Depthwise_initializer(), theTypesPackage.getString(), "depthwise_initializer", null, 1, 1, DepthwiseConv2D.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+ initEAttribute(getDepthwiseConv2D_Depthwise_regularizer(), theTypesPackage.getString(), "depthwise_regularizer", null, 1, 1, DepthwiseConv2D.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+ initEAttribute(getDepthwiseConv2D_Depthwise_constraint(), theTypesPackage.getString(), "depthwise_constraint", null, 1, 1, DepthwiseConv2D.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+ }
+
+} //Convolution_layersPackageImpl
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Convolution_layers/impl/DepthwiseConv2DImpl.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Convolution_layers/impl/DepthwiseConv2DImpl.java
new file mode 100644
index 0000000..4c634fb
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Convolution_layers/impl/DepthwiseConv2DImpl.java
@@ -0,0 +1,329 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+import org.eclipse.emf.ecore.util.EDataTypeUniqueEList;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution_layersPackage;
+import org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.DepthwiseConv2D;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Depthwise Conv2 D</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.DepthwiseConv2DImpl#getDepth_multiplier <em>Depth multiplier</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.DepthwiseConv2DImpl#getDepthwise_initializer <em>Depthwise initializer</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.DepthwiseConv2DImpl#getDepthwise_regularizer <em>Depthwise regularizer</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.DepthwiseConv2DImpl#getDepthwise_constraint <em>Depthwise constraint</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class DepthwiseConv2DImpl extends ConvolutionImpl implements DepthwiseConv2D {
+ /**
+ * The cached value of the '{@link #getDepth_multiplier() <em>Depth multiplier</em>}' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getDepth_multiplier()
+ * @generated
+ * @ordered
+ */
+ protected EList<Integer> depth_multiplier;
+
+ /**
+ * The default value of the '{@link #getDepthwise_initializer() <em>Depthwise initializer</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getDepthwise_initializer()
+ * @generated
+ * @ordered
+ */
+ protected static final String DEPTHWISE_INITIALIZER_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getDepthwise_initializer() <em>Depthwise initializer</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getDepthwise_initializer()
+ * @generated
+ * @ordered
+ */
+ protected String depthwise_initializer = DEPTHWISE_INITIALIZER_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getDepthwise_regularizer() <em>Depthwise regularizer</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getDepthwise_regularizer()
+ * @generated
+ * @ordered
+ */
+ protected static final String DEPTHWISE_REGULARIZER_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getDepthwise_regularizer() <em>Depthwise regularizer</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getDepthwise_regularizer()
+ * @generated
+ * @ordered
+ */
+ protected String depthwise_regularizer = DEPTHWISE_REGULARIZER_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getDepthwise_constraint() <em>Depthwise constraint</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getDepthwise_constraint()
+ * @generated
+ * @ordered
+ */
+ protected static final String DEPTHWISE_CONSTRAINT_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getDepthwise_constraint() <em>Depthwise constraint</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getDepthwise_constraint()
+ * @generated
+ * @ordered
+ */
+ protected String depthwise_constraint = DEPTHWISE_CONSTRAINT_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected DepthwiseConv2DImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return Convolution_layersPackage.Literals.DEPTHWISE_CONV2_D;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EList<Integer> getDepth_multiplier() {
+ if (depth_multiplier == null) {
+ depth_multiplier = new EDataTypeUniqueEList<Integer>(Integer.class, this, Convolution_layersPackage.DEPTHWISE_CONV2_D__DEPTH_MULTIPLIER);
+ }
+ return depth_multiplier;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String getDepthwise_initializer() {
+ return depthwise_initializer;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void setDepthwise_initializer(String newDepthwise_initializer) {
+ String oldDepthwise_initializer = depthwise_initializer;
+ depthwise_initializer = newDepthwise_initializer;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, Convolution_layersPackage.DEPTHWISE_CONV2_D__DEPTHWISE_INITIALIZER, oldDepthwise_initializer, depthwise_initializer));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String getDepthwise_regularizer() {
+ return depthwise_regularizer;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void setDepthwise_regularizer(String newDepthwise_regularizer) {
+ String oldDepthwise_regularizer = depthwise_regularizer;
+ depthwise_regularizer = newDepthwise_regularizer;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, Convolution_layersPackage.DEPTHWISE_CONV2_D__DEPTHWISE_REGULARIZER, oldDepthwise_regularizer, depthwise_regularizer));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String getDepthwise_constraint() {
+ return depthwise_constraint;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void setDepthwise_constraint(String newDepthwise_constraint) {
+ String oldDepthwise_constraint = depthwise_constraint;
+ depthwise_constraint = newDepthwise_constraint;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, Convolution_layersPackage.DEPTHWISE_CONV2_D__DEPTHWISE_CONSTRAINT, oldDepthwise_constraint, depthwise_constraint));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case Convolution_layersPackage.DEPTHWISE_CONV2_D__DEPTH_MULTIPLIER:
+ return getDepth_multiplier();
+ case Convolution_layersPackage.DEPTHWISE_CONV2_D__DEPTHWISE_INITIALIZER:
+ return getDepthwise_initializer();
+ case Convolution_layersPackage.DEPTHWISE_CONV2_D__DEPTHWISE_REGULARIZER:
+ return getDepthwise_regularizer();
+ case Convolution_layersPackage.DEPTHWISE_CONV2_D__DEPTHWISE_CONSTRAINT:
+ return getDepthwise_constraint();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @SuppressWarnings("unchecked")
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case Convolution_layersPackage.DEPTHWISE_CONV2_D__DEPTH_MULTIPLIER:
+ getDepth_multiplier().clear();
+ getDepth_multiplier().addAll((Collection<? extends Integer>)newValue);
+ return;
+ case Convolution_layersPackage.DEPTHWISE_CONV2_D__DEPTHWISE_INITIALIZER:
+ setDepthwise_initializer((String)newValue);
+ return;
+ case Convolution_layersPackage.DEPTHWISE_CONV2_D__DEPTHWISE_REGULARIZER:
+ setDepthwise_regularizer((String)newValue);
+ return;
+ case Convolution_layersPackage.DEPTHWISE_CONV2_D__DEPTHWISE_CONSTRAINT:
+ setDepthwise_constraint((String)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case Convolution_layersPackage.DEPTHWISE_CONV2_D__DEPTH_MULTIPLIER:
+ getDepth_multiplier().clear();
+ return;
+ case Convolution_layersPackage.DEPTHWISE_CONV2_D__DEPTHWISE_INITIALIZER:
+ setDepthwise_initializer(DEPTHWISE_INITIALIZER_EDEFAULT);
+ return;
+ case Convolution_layersPackage.DEPTHWISE_CONV2_D__DEPTHWISE_REGULARIZER:
+ setDepthwise_regularizer(DEPTHWISE_REGULARIZER_EDEFAULT);
+ return;
+ case Convolution_layersPackage.DEPTHWISE_CONV2_D__DEPTHWISE_CONSTRAINT:
+ setDepthwise_constraint(DEPTHWISE_CONSTRAINT_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case Convolution_layersPackage.DEPTHWISE_CONV2_D__DEPTH_MULTIPLIER:
+ return depth_multiplier != null && !depth_multiplier.isEmpty();
+ case Convolution_layersPackage.DEPTHWISE_CONV2_D__DEPTHWISE_INITIALIZER:
+ return DEPTHWISE_INITIALIZER_EDEFAULT == null ? depthwise_initializer != null : !DEPTHWISE_INITIALIZER_EDEFAULT.equals(depthwise_initializer);
+ case Convolution_layersPackage.DEPTHWISE_CONV2_D__DEPTHWISE_REGULARIZER:
+ return DEPTHWISE_REGULARIZER_EDEFAULT == null ? depthwise_regularizer != null : !DEPTHWISE_REGULARIZER_EDEFAULT.equals(depthwise_regularizer);
+ case Convolution_layersPackage.DEPTHWISE_CONV2_D__DEPTHWISE_CONSTRAINT:
+ return DEPTHWISE_CONSTRAINT_EDEFAULT == null ? depthwise_constraint != null : !DEPTHWISE_CONSTRAINT_EDEFAULT.equals(depthwise_constraint);
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuilder result = new StringBuilder(super.toString());
+ result.append(" (depth_multiplier: "); //$NON-NLS-1$
+ result.append(depth_multiplier);
+ result.append(", depthwise_initializer: "); //$NON-NLS-1$
+ result.append(depthwise_initializer);
+ result.append(", depthwise_regularizer: "); //$NON-NLS-1$
+ result.append(depthwise_regularizer);
+ result.append(", depthwise_constraint: "); //$NON-NLS-1$
+ result.append(depthwise_constraint);
+ result.append(')');
+ return result.toString();
+ }
+
+} //DepthwiseConv2DImpl
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Convolution_layers/impl/FoldImpl.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Convolution_layers/impl/FoldImpl.java
new file mode 100644
index 0000000..23a81f2
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Convolution_layers/impl/FoldImpl.java
@@ -0,0 +1,157 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.util.EDataTypeUniqueEList;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution_layersPackage;
+import org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Fold;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Fold</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.FoldImpl#getOutput_size <em>Output size</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class FoldImpl extends Convolution_layersImpl implements Fold {
+ /**
+ * The cached value of the '{@link #getOutput_size() <em>Output size</em>}' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getOutput_size()
+ * @generated
+ * @ordered
+ */
+ protected EList<Integer> output_size;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected FoldImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return Convolution_layersPackage.Literals.FOLD;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EList<Integer> getOutput_size() {
+ if (output_size == null) {
+ output_size = new EDataTypeUniqueEList<Integer>(Integer.class, this, Convolution_layersPackage.FOLD__OUTPUT_SIZE);
+ }
+ return output_size;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case Convolution_layersPackage.FOLD__OUTPUT_SIZE:
+ return getOutput_size();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @SuppressWarnings("unchecked")
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case Convolution_layersPackage.FOLD__OUTPUT_SIZE:
+ getOutput_size().clear();
+ getOutput_size().addAll((Collection<? extends Integer>)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case Convolution_layersPackage.FOLD__OUTPUT_SIZE:
+ getOutput_size().clear();
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case Convolution_layersPackage.FOLD__OUTPUT_SIZE:
+ return output_size != null && !output_size.isEmpty();
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuilder result = new StringBuilder(super.toString());
+ result.append(" (output_size: "); //$NON-NLS-1$
+ result.append(output_size);
+ result.append(')');
+ return result.toString();
+ }
+
+} //FoldImpl
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Convolution_layers/impl/LayerWithFilterImpl.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Convolution_layers/impl/LayerWithFilterImpl.java
new file mode 100644
index 0000000..f7ee965
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Convolution_layers/impl/LayerWithFilterImpl.java
@@ -0,0 +1,173 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution_layersPackage;
+import org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.LayerWithFilter;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Layer With Filter</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.LayerWithFilterImpl#getOut_channels <em>Out channels</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public abstract class LayerWithFilterImpl extends ConvolutionImpl implements LayerWithFilter {
+ /**
+ * The default value of the '{@link #getOut_channels() <em>Out channels</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getOut_channels()
+ * @generated
+ * @ordered
+ */
+ protected static final int OUT_CHANNELS_EDEFAULT = 0;
+
+ /**
+ * The cached value of the '{@link #getOut_channels() <em>Out channels</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getOut_channels()
+ * @generated
+ * @ordered
+ */
+ protected int out_channels = OUT_CHANNELS_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected LayerWithFilterImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return Convolution_layersPackage.Literals.LAYER_WITH_FILTER;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public int getOut_channels() {
+ return out_channels;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void setOut_channels(int newOut_channels) {
+ int oldOut_channels = out_channels;
+ out_channels = newOut_channels;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, Convolution_layersPackage.LAYER_WITH_FILTER__OUT_CHANNELS, oldOut_channels, out_channels));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case Convolution_layersPackage.LAYER_WITH_FILTER__OUT_CHANNELS:
+ return getOut_channels();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case Convolution_layersPackage.LAYER_WITH_FILTER__OUT_CHANNELS:
+ setOut_channels((Integer)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case Convolution_layersPackage.LAYER_WITH_FILTER__OUT_CHANNELS:
+ setOut_channels(OUT_CHANNELS_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case Convolution_layersPackage.LAYER_WITH_FILTER__OUT_CHANNELS:
+ return out_channels != OUT_CHANNELS_EDEFAULT;
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuilder result = new StringBuilder(super.toString());
+ result.append(" (out_channels: "); //$NON-NLS-1$
+ result.append(out_channels);
+ result.append(')');
+ return result.toString();
+ }
+
+} //LayerWithFilterImpl
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Convolution_layers/impl/SeparableConv1DImpl.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Convolution_layers/impl/SeparableConv1DImpl.java
new file mode 100644
index 0000000..0ac0d08
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Convolution_layers/impl/SeparableConv1DImpl.java
@@ -0,0 +1,46 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution_layersPackage;
+import org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.SeparableConv1D;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Separable Conv1 D</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class SeparableConv1DImpl extends SeparableImpl implements SeparableConv1D {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected SeparableConv1DImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return Convolution_layersPackage.Literals.SEPARABLE_CONV1_D;
+ }
+
+} //SeparableConv1DImpl
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Convolution_layers/impl/SeparableConv2DImpl.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Convolution_layers/impl/SeparableConv2DImpl.java
new file mode 100644
index 0000000..a047ad8
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Convolution_layers/impl/SeparableConv2DImpl.java
@@ -0,0 +1,46 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution_layersPackage;
+import org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.SeparableConv2D;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Separable Conv2 D</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class SeparableConv2DImpl extends SeparableImpl implements SeparableConv2D {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected SeparableConv2DImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return Convolution_layersPackage.Literals.SEPARABLE_CONV2_D;
+ }
+
+} //SeparableConv2DImpl
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Convolution_layers/impl/SeparableImpl.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Convolution_layers/impl/SeparableImpl.java
new file mode 100644
index 0000000..a1f92ff
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Convolution_layers/impl/SeparableImpl.java
@@ -0,0 +1,497 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+import org.eclipse.emf.ecore.util.EDataTypeUniqueEList;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution_layersPackage;
+import org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Separable;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Separable</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.SeparableImpl#getDepth_multiplier <em>Depth multiplier</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.SeparableImpl#getDepthwise_initializer <em>Depthwise initializer</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.SeparableImpl#getPointwise_initializer <em>Pointwise initializer</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.SeparableImpl#getDepthwise_regularizer <em>Depthwise regularizer</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.SeparableImpl#getPoitnwise_regularizer <em>Poitnwise regularizer</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.SeparableImpl#getDepthwise_constraint <em>Depthwise constraint</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.SeparableImpl#getPointwise_constraint <em>Pointwise constraint</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public abstract class SeparableImpl extends LayerWithFilterImpl implements Separable {
+ /**
+ * The cached value of the '{@link #getDepth_multiplier() <em>Depth multiplier</em>}' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getDepth_multiplier()
+ * @generated
+ * @ordered
+ */
+ protected EList<Integer> depth_multiplier;
+
+ /**
+ * The default value of the '{@link #getDepthwise_initializer() <em>Depthwise initializer</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getDepthwise_initializer()
+ * @generated
+ * @ordered
+ */
+ protected static final String DEPTHWISE_INITIALIZER_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getDepthwise_initializer() <em>Depthwise initializer</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getDepthwise_initializer()
+ * @generated
+ * @ordered
+ */
+ protected String depthwise_initializer = DEPTHWISE_INITIALIZER_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getPointwise_initializer() <em>Pointwise initializer</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getPointwise_initializer()
+ * @generated
+ * @ordered
+ */
+ protected static final String POINTWISE_INITIALIZER_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getPointwise_initializer() <em>Pointwise initializer</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getPointwise_initializer()
+ * @generated
+ * @ordered
+ */
+ protected String pointwise_initializer = POINTWISE_INITIALIZER_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getDepthwise_regularizer() <em>Depthwise regularizer</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getDepthwise_regularizer()
+ * @generated
+ * @ordered
+ */
+ protected static final String DEPTHWISE_REGULARIZER_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getDepthwise_regularizer() <em>Depthwise regularizer</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getDepthwise_regularizer()
+ * @generated
+ * @ordered
+ */
+ protected String depthwise_regularizer = DEPTHWISE_REGULARIZER_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getPoitnwise_regularizer() <em>Poitnwise regularizer</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getPoitnwise_regularizer()
+ * @generated
+ * @ordered
+ */
+ protected static final String POITNWISE_REGULARIZER_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getPoitnwise_regularizer() <em>Poitnwise regularizer</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getPoitnwise_regularizer()
+ * @generated
+ * @ordered
+ */
+ protected String poitnwise_regularizer = POITNWISE_REGULARIZER_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getDepthwise_constraint() <em>Depthwise constraint</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getDepthwise_constraint()
+ * @generated
+ * @ordered
+ */
+ protected static final String DEPTHWISE_CONSTRAINT_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getDepthwise_constraint() <em>Depthwise constraint</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getDepthwise_constraint()
+ * @generated
+ * @ordered
+ */
+ protected String depthwise_constraint = DEPTHWISE_CONSTRAINT_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getPointwise_constraint() <em>Pointwise constraint</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getPointwise_constraint()
+ * @generated
+ * @ordered
+ */
+ protected static final String POINTWISE_CONSTRAINT_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getPointwise_constraint() <em>Pointwise constraint</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getPointwise_constraint()
+ * @generated
+ * @ordered
+ */
+ protected String pointwise_constraint = POINTWISE_CONSTRAINT_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected SeparableImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return Convolution_layersPackage.Literals.SEPARABLE;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EList<Integer> getDepth_multiplier() {
+ if (depth_multiplier == null) {
+ depth_multiplier = new EDataTypeUniqueEList<Integer>(Integer.class, this, Convolution_layersPackage.SEPARABLE__DEPTH_MULTIPLIER);
+ }
+ return depth_multiplier;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String getDepthwise_initializer() {
+ return depthwise_initializer;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void setDepthwise_initializer(String newDepthwise_initializer) {
+ String oldDepthwise_initializer = depthwise_initializer;
+ depthwise_initializer = newDepthwise_initializer;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, Convolution_layersPackage.SEPARABLE__DEPTHWISE_INITIALIZER, oldDepthwise_initializer, depthwise_initializer));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String getPointwise_initializer() {
+ return pointwise_initializer;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void setPointwise_initializer(String newPointwise_initializer) {
+ String oldPointwise_initializer = pointwise_initializer;
+ pointwise_initializer = newPointwise_initializer;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, Convolution_layersPackage.SEPARABLE__POINTWISE_INITIALIZER, oldPointwise_initializer, pointwise_initializer));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String getDepthwise_regularizer() {
+ return depthwise_regularizer;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void setDepthwise_regularizer(String newDepthwise_regularizer) {
+ String oldDepthwise_regularizer = depthwise_regularizer;
+ depthwise_regularizer = newDepthwise_regularizer;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, Convolution_layersPackage.SEPARABLE__DEPTHWISE_REGULARIZER, oldDepthwise_regularizer, depthwise_regularizer));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String getPoitnwise_regularizer() {
+ return poitnwise_regularizer;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void setPoitnwise_regularizer(String newPoitnwise_regularizer) {
+ String oldPoitnwise_regularizer = poitnwise_regularizer;
+ poitnwise_regularizer = newPoitnwise_regularizer;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, Convolution_layersPackage.SEPARABLE__POITNWISE_REGULARIZER, oldPoitnwise_regularizer, poitnwise_regularizer));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String getDepthwise_constraint() {
+ return depthwise_constraint;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void setDepthwise_constraint(String newDepthwise_constraint) {
+ String oldDepthwise_constraint = depthwise_constraint;
+ depthwise_constraint = newDepthwise_constraint;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, Convolution_layersPackage.SEPARABLE__DEPTHWISE_CONSTRAINT, oldDepthwise_constraint, depthwise_constraint));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String getPointwise_constraint() {
+ return pointwise_constraint;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void setPointwise_constraint(String newPointwise_constraint) {
+ String oldPointwise_constraint = pointwise_constraint;
+ pointwise_constraint = newPointwise_constraint;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, Convolution_layersPackage.SEPARABLE__POINTWISE_CONSTRAINT, oldPointwise_constraint, pointwise_constraint));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case Convolution_layersPackage.SEPARABLE__DEPTH_MULTIPLIER:
+ return getDepth_multiplier();
+ case Convolution_layersPackage.SEPARABLE__DEPTHWISE_INITIALIZER:
+ return getDepthwise_initializer();
+ case Convolution_layersPackage.SEPARABLE__POINTWISE_INITIALIZER:
+ return getPointwise_initializer();
+ case Convolution_layersPackage.SEPARABLE__DEPTHWISE_REGULARIZER:
+ return getDepthwise_regularizer();
+ case Convolution_layersPackage.SEPARABLE__POITNWISE_REGULARIZER:
+ return getPoitnwise_regularizer();
+ case Convolution_layersPackage.SEPARABLE__DEPTHWISE_CONSTRAINT:
+ return getDepthwise_constraint();
+ case Convolution_layersPackage.SEPARABLE__POINTWISE_CONSTRAINT:
+ return getPointwise_constraint();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @SuppressWarnings("unchecked")
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case Convolution_layersPackage.SEPARABLE__DEPTH_MULTIPLIER:
+ getDepth_multiplier().clear();
+ getDepth_multiplier().addAll((Collection<? extends Integer>)newValue);
+ return;
+ case Convolution_layersPackage.SEPARABLE__DEPTHWISE_INITIALIZER:
+ setDepthwise_initializer((String)newValue);
+ return;
+ case Convolution_layersPackage.SEPARABLE__POINTWISE_INITIALIZER:
+ setPointwise_initializer((String)newValue);
+ return;
+ case Convolution_layersPackage.SEPARABLE__DEPTHWISE_REGULARIZER:
+ setDepthwise_regularizer((String)newValue);
+ return;
+ case Convolution_layersPackage.SEPARABLE__POITNWISE_REGULARIZER:
+ setPoitnwise_regularizer((String)newValue);
+ return;
+ case Convolution_layersPackage.SEPARABLE__DEPTHWISE_CONSTRAINT:
+ setDepthwise_constraint((String)newValue);
+ return;
+ case Convolution_layersPackage.SEPARABLE__POINTWISE_CONSTRAINT:
+ setPointwise_constraint((String)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case Convolution_layersPackage.SEPARABLE__DEPTH_MULTIPLIER:
+ getDepth_multiplier().clear();
+ return;
+ case Convolution_layersPackage.SEPARABLE__DEPTHWISE_INITIALIZER:
+ setDepthwise_initializer(DEPTHWISE_INITIALIZER_EDEFAULT);
+ return;
+ case Convolution_layersPackage.SEPARABLE__POINTWISE_INITIALIZER:
+ setPointwise_initializer(POINTWISE_INITIALIZER_EDEFAULT);
+ return;
+ case Convolution_layersPackage.SEPARABLE__DEPTHWISE_REGULARIZER:
+ setDepthwise_regularizer(DEPTHWISE_REGULARIZER_EDEFAULT);
+ return;
+ case Convolution_layersPackage.SEPARABLE__POITNWISE_REGULARIZER:
+ setPoitnwise_regularizer(POITNWISE_REGULARIZER_EDEFAULT);
+ return;
+ case Convolution_layersPackage.SEPARABLE__DEPTHWISE_CONSTRAINT:
+ setDepthwise_constraint(DEPTHWISE_CONSTRAINT_EDEFAULT);
+ return;
+ case Convolution_layersPackage.SEPARABLE__POINTWISE_CONSTRAINT:
+ setPointwise_constraint(POINTWISE_CONSTRAINT_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case Convolution_layersPackage.SEPARABLE__DEPTH_MULTIPLIER:
+ return depth_multiplier != null && !depth_multiplier.isEmpty();
+ case Convolution_layersPackage.SEPARABLE__DEPTHWISE_INITIALIZER:
+ return DEPTHWISE_INITIALIZER_EDEFAULT == null ? depthwise_initializer != null : !DEPTHWISE_INITIALIZER_EDEFAULT.equals(depthwise_initializer);
+ case Convolution_layersPackage.SEPARABLE__POINTWISE_INITIALIZER:
+ return POINTWISE_INITIALIZER_EDEFAULT == null ? pointwise_initializer != null : !POINTWISE_INITIALIZER_EDEFAULT.equals(pointwise_initializer);
+ case Convolution_layersPackage.SEPARABLE__DEPTHWISE_REGULARIZER:
+ return DEPTHWISE_REGULARIZER_EDEFAULT == null ? depthwise_regularizer != null : !DEPTHWISE_REGULARIZER_EDEFAULT.equals(depthwise_regularizer);
+ case Convolution_layersPackage.SEPARABLE__POITNWISE_REGULARIZER:
+ return POITNWISE_REGULARIZER_EDEFAULT == null ? poitnwise_regularizer != null : !POITNWISE_REGULARIZER_EDEFAULT.equals(poitnwise_regularizer);
+ case Convolution_layersPackage.SEPARABLE__DEPTHWISE_CONSTRAINT:
+ return DEPTHWISE_CONSTRAINT_EDEFAULT == null ? depthwise_constraint != null : !DEPTHWISE_CONSTRAINT_EDEFAULT.equals(depthwise_constraint);
+ case Convolution_layersPackage.SEPARABLE__POINTWISE_CONSTRAINT:
+ return POINTWISE_CONSTRAINT_EDEFAULT == null ? pointwise_constraint != null : !POINTWISE_CONSTRAINT_EDEFAULT.equals(pointwise_constraint);
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuilder result = new StringBuilder(super.toString());
+ result.append(" (depth_multiplier: "); //$NON-NLS-1$
+ result.append(depth_multiplier);
+ result.append(", depthwise_initializer: "); //$NON-NLS-1$
+ result.append(depthwise_initializer);
+ result.append(", pointwise_initializer: "); //$NON-NLS-1$
+ result.append(pointwise_initializer);
+ result.append(", depthwise_regularizer: "); //$NON-NLS-1$
+ result.append(depthwise_regularizer);
+ result.append(", poitnwise_regularizer: "); //$NON-NLS-1$
+ result.append(poitnwise_regularizer);
+ result.append(", depthwise_constraint: "); //$NON-NLS-1$
+ result.append(depthwise_constraint);
+ result.append(", pointwise_constraint: "); //$NON-NLS-1$
+ result.append(pointwise_constraint);
+ result.append(')');
+ return result.toString();
+ }
+
+} //SeparableImpl
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Convolution_layers/impl/UnfoldImpl.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Convolution_layers/impl/UnfoldImpl.java
new file mode 100644
index 0000000..b53d99e
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Convolution_layers/impl/UnfoldImpl.java
@@ -0,0 +1,46 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution_layersPackage;
+import org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Unfold;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Unfold</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class UnfoldImpl extends Convolution_layersImpl implements Unfold {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected UnfoldImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return Convolution_layersPackage.Literals.UNFOLD;
+ }
+
+} //UnfoldImpl
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Convolution_layers/impl/basicImpl.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Convolution_layers/impl/basicImpl.java
new file mode 100644
index 0000000..2924efc
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Convolution_layers/impl/basicImpl.java
@@ -0,0 +1,294 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution_layersPackage;
+import org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.basic;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.constraints;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>basic</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.basicImpl#getKernel_initializer <em>Kernel initializer</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.basicImpl#getKernel_constraint <em>Kernel constraint</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.basicImpl#getKernel_regularizer <em>Kernel regularizer</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public abstract class basicImpl extends LayerWithFilterImpl implements basic {
+ /**
+ * The default value of the '{@link #getKernel_initializer() <em>Kernel initializer</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getKernel_initializer()
+ * @generated
+ * @ordered
+ */
+ protected static final String KERNEL_INITIALIZER_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getKernel_initializer() <em>Kernel initializer</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getKernel_initializer()
+ * @generated
+ * @ordered
+ */
+ protected String kernel_initializer = KERNEL_INITIALIZER_EDEFAULT;
+
+ /**
+ * The cached value of the '{@link #getKernel_constraint() <em>Kernel constraint</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getKernel_constraint()
+ * @generated
+ * @ordered
+ */
+ protected constraints kernel_constraint;
+
+ /**
+ * The default value of the '{@link #getKernel_regularizer() <em>Kernel regularizer</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getKernel_regularizer()
+ * @generated
+ * @ordered
+ */
+ protected static final String KERNEL_REGULARIZER_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getKernel_regularizer() <em>Kernel regularizer</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getKernel_regularizer()
+ * @generated
+ * @ordered
+ */
+ protected String kernel_regularizer = KERNEL_REGULARIZER_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected basicImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return Convolution_layersPackage.Literals.BASIC;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String getKernel_initializer() {
+ return kernel_initializer;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void setKernel_initializer(String newKernel_initializer) {
+ String oldKernel_initializer = kernel_initializer;
+ kernel_initializer = newKernel_initializer;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, Convolution_layersPackage.BASIC__KERNEL_INITIALIZER, oldKernel_initializer, kernel_initializer));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public constraints getKernel_constraint() {
+ if (kernel_constraint != null && kernel_constraint.eIsProxy()) {
+ InternalEObject oldKernel_constraint = (InternalEObject)kernel_constraint;
+ kernel_constraint = (constraints)eResolveProxy(oldKernel_constraint);
+ if (kernel_constraint != oldKernel_constraint) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, Convolution_layersPackage.BASIC__KERNEL_CONSTRAINT, oldKernel_constraint, kernel_constraint));
+ }
+ }
+ return kernel_constraint;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public constraints basicGetKernel_constraint() {
+ return kernel_constraint;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void setKernel_constraint(constraints newKernel_constraint) {
+ constraints oldKernel_constraint = kernel_constraint;
+ kernel_constraint = newKernel_constraint;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, Convolution_layersPackage.BASIC__KERNEL_CONSTRAINT, oldKernel_constraint, kernel_constraint));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String getKernel_regularizer() {
+ return kernel_regularizer;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void setKernel_regularizer(String newKernel_regularizer) {
+ String oldKernel_regularizer = kernel_regularizer;
+ kernel_regularizer = newKernel_regularizer;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, Convolution_layersPackage.BASIC__KERNEL_REGULARIZER, oldKernel_regularizer, kernel_regularizer));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case Convolution_layersPackage.BASIC__KERNEL_INITIALIZER:
+ return getKernel_initializer();
+ case Convolution_layersPackage.BASIC__KERNEL_CONSTRAINT:
+ if (resolve) return getKernel_constraint();
+ return basicGetKernel_constraint();
+ case Convolution_layersPackage.BASIC__KERNEL_REGULARIZER:
+ return getKernel_regularizer();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case Convolution_layersPackage.BASIC__KERNEL_INITIALIZER:
+ setKernel_initializer((String)newValue);
+ return;
+ case Convolution_layersPackage.BASIC__KERNEL_CONSTRAINT:
+ setKernel_constraint((constraints)newValue);
+ return;
+ case Convolution_layersPackage.BASIC__KERNEL_REGULARIZER:
+ setKernel_regularizer((String)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case Convolution_layersPackage.BASIC__KERNEL_INITIALIZER:
+ setKernel_initializer(KERNEL_INITIALIZER_EDEFAULT);
+ return;
+ case Convolution_layersPackage.BASIC__KERNEL_CONSTRAINT:
+ setKernel_constraint((constraints)null);
+ return;
+ case Convolution_layersPackage.BASIC__KERNEL_REGULARIZER:
+ setKernel_regularizer(KERNEL_REGULARIZER_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case Convolution_layersPackage.BASIC__KERNEL_INITIALIZER:
+ return KERNEL_INITIALIZER_EDEFAULT == null ? kernel_initializer != null : !KERNEL_INITIALIZER_EDEFAULT.equals(kernel_initializer);
+ case Convolution_layersPackage.BASIC__KERNEL_CONSTRAINT:
+ return kernel_constraint != null;
+ case Convolution_layersPackage.BASIC__KERNEL_REGULARIZER:
+ return KERNEL_REGULARIZER_EDEFAULT == null ? kernel_regularizer != null : !KERNEL_REGULARIZER_EDEFAULT.equals(kernel_regularizer);
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuilder result = new StringBuilder(super.toString());
+ result.append(" (kernel_initializer: "); //$NON-NLS-1$
+ result.append(kernel_initializer);
+ result.append(", kernel_regularizer: "); //$NON-NLS-1$
+ result.append(kernel_regularizer);
+ result.append(')');
+ return result.toString();
+ }
+
+} //basicImpl
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Convolution_layers/impl/transposeImpl.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Convolution_layers/impl/transposeImpl.java
new file mode 100644
index 0000000..7e1170b
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Convolution_layers/impl/transposeImpl.java
@@ -0,0 +1,157 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.util.EDataTypeUniqueEList;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution_layersPackage;
+import org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.transpose;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>transpose</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.transposeImpl#getOutput_padding <em>Output padding</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public abstract class transposeImpl extends basicImpl implements transpose {
+ /**
+ * The cached value of the '{@link #getOutput_padding() <em>Output padding</em>}' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getOutput_padding()
+ * @generated
+ * @ordered
+ */
+ protected EList<Integer> output_padding;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected transposeImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return Convolution_layersPackage.Literals.TRANSPOSE;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EList<Integer> getOutput_padding() {
+ if (output_padding == null) {
+ output_padding = new EDataTypeUniqueEList<Integer>(Integer.class, this, Convolution_layersPackage.TRANSPOSE__OUTPUT_PADDING);
+ }
+ return output_padding;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case Convolution_layersPackage.TRANSPOSE__OUTPUT_PADDING:
+ return getOutput_padding();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @SuppressWarnings("unchecked")
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case Convolution_layersPackage.TRANSPOSE__OUTPUT_PADDING:
+ getOutput_padding().clear();
+ getOutput_padding().addAll((Collection<? extends Integer>)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case Convolution_layersPackage.TRANSPOSE__OUTPUT_PADDING:
+ getOutput_padding().clear();
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case Convolution_layersPackage.TRANSPOSE__OUTPUT_PADDING:
+ return output_padding != null && !output_padding.isEmpty();
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuilder result = new StringBuilder(super.toString());
+ result.append(" (output_padding: "); //$NON-NLS-1$
+ result.append(output_padding);
+ result.append(')');
+ return result.toString();
+ }
+
+} //transposeImpl
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Convolution_layers/transpose.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Convolution_layers/transpose.java
new file mode 100644
index 0000000..fd6dcf0
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Convolution_layers/transpose.java
@@ -0,0 +1,49 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>transpose</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.transpose#getOutput_padding <em>Output padding</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution_layersPackage#gettranspose()
+ * @model abstract="true"
+ * @generated
+ */
+public interface transpose extends basic {
+ /**
+ * Returns the value of the '<em><b>Output padding</b></em>' attribute list.
+ * The list contents are of type {@link java.lang.Integer}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Output padding</em>' attribute list isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Output padding</em>' attribute list.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution_layersPackage#gettranspose_Output_padding()
+ * @model dataType="org.eclipse.uml2.types.Integer" ordered="false"
+ * @generated
+ */
+ EList<Integer> getOutput_padding();
+
+} // transpose
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Convolution_layers/util/Convolution_layersAdapterFactory.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Convolution_layers/util/Convolution_layersAdapterFactory.java
new file mode 100644
index 0000000..5f30a4e
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Convolution_layers/util/Convolution_layersAdapterFactory.java
@@ -0,0 +1,436 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.util;
+
+import org.eclipse.emf.common.notify.Adapter;
+import org.eclipse.emf.common.notify.Notifier;
+
+import org.eclipse.emf.common.notify.impl.AdapterFactoryImpl;
+
+import org.eclipse.emf.ecore.EObject;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.*;
+import org.eclipse.papyrus.aiml.profile.AIML.Module.Model;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Adapter Factory</b> for the model.
+ * It provides an adapter <code>createXXX</code> method for each class of the model.
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution_layersPackage
+ * @generated
+ */
+public class Convolution_layersAdapterFactory extends AdapterFactoryImpl {
+ /**
+ * The cached model package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected static Convolution_layersPackage modelPackage;
+
+ /**
+ * Creates an instance of the adapter factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Convolution_layersAdapterFactory() {
+ if (modelPackage == null) {
+ modelPackage = Convolution_layersPackage.eINSTANCE;
+ }
+ }
+
+ /**
+ * Returns whether this factory is applicable for the type of the object.
+ * <!-- begin-user-doc -->
+ * This implementation returns <code>true</code> if the object is either the model's package or is an instance object of the model.
+ * <!-- end-user-doc -->
+ * @return whether this factory is applicable for the type of the object.
+ * @generated
+ */
+ @Override
+ public boolean isFactoryForType(Object object) {
+ if (object == modelPackage) {
+ return true;
+ }
+ if (object instanceof EObject) {
+ return ((EObject)object).eClass().getEPackage() == modelPackage;
+ }
+ return false;
+ }
+
+ /**
+ * The switch that delegates to the <code>createXXX</code> methods.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected Convolution_layersSwitch<Adapter> modelSwitch =
+ new Convolution_layersSwitch<Adapter>() {
+ @Override
+ public Adapter caseConvolution(Convolution object) {
+ return createConvolutionAdapter();
+ }
+ @Override
+ public Adapter caseConvolution_layers(Convolution_layers object) {
+ return createConvolution_layersAdapter();
+ }
+ @Override
+ public Adapter caseUnfold(Unfold object) {
+ return createUnfoldAdapter();
+ }
+ @Override
+ public Adapter caseFold(Fold object) {
+ return createFoldAdapter();
+ }
+ @Override
+ public Adapter caseConv2d(Conv2d object) {
+ return createConv2dAdapter();
+ }
+ @Override
+ public Adapter casebasic(basic object) {
+ return createbasicAdapter();
+ }
+ @Override
+ public Adapter caseLayerWithFilter(LayerWithFilter object) {
+ return createLayerWithFilterAdapter();
+ }
+ @Override
+ public Adapter caseConv3d(Conv3d object) {
+ return createConv3dAdapter();
+ }
+ @Override
+ public Adapter caseConvTranspose1d(ConvTranspose1d object) {
+ return createConvTranspose1dAdapter();
+ }
+ @Override
+ public Adapter caseConvTranspose2d(ConvTranspose2d object) {
+ return createConvTranspose2dAdapter();
+ }
+ @Override
+ public Adapter casetranspose(transpose object) {
+ return createtransposeAdapter();
+ }
+ @Override
+ public Adapter caseConvTranspose3d(ConvTranspose3d object) {
+ return createConvTranspose3dAdapter();
+ }
+ @Override
+ public Adapter caseConv1d(Conv1d object) {
+ return createConv1dAdapter();
+ }
+ @Override
+ public Adapter caseSeparable(Separable object) {
+ return createSeparableAdapter();
+ }
+ @Override
+ public Adapter caseSeparableConv2D(SeparableConv2D object) {
+ return createSeparableConv2DAdapter();
+ }
+ @Override
+ public Adapter caseSeparableConv1D(SeparableConv1D object) {
+ return createSeparableConv1DAdapter();
+ }
+ @Override
+ public Adapter caseDepthwiseConv2D(DepthwiseConv2D object) {
+ return createDepthwiseConv2DAdapter();
+ }
+ @Override
+ public Adapter caseModel(Model object) {
+ return createModelAdapter();
+ }
+ @Override
+ public Adapter defaultCase(EObject object) {
+ return createEObjectAdapter();
+ }
+ };
+
+ /**
+ * Creates an adapter for the <code>target</code>.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param target the object to adapt.
+ * @return the adapter for the <code>target</code>.
+ * @generated
+ */
+ @Override
+ public Adapter createAdapter(Notifier target) {
+ return modelSwitch.doSwitch((EObject)target);
+ }
+
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution <em>Convolution</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution
+ * @generated
+ */
+ public Adapter createConvolutionAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution_layers <em>Convolution layers</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution_layers
+ * @generated
+ */
+ public Adapter createConvolution_layersAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Unfold <em>Unfold</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Unfold
+ * @generated
+ */
+ public Adapter createUnfoldAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Fold <em>Fold</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Fold
+ * @generated
+ */
+ public Adapter createFoldAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Conv2d <em>Conv2d</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Conv2d
+ * @generated
+ */
+ public Adapter createConv2dAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.basic <em>basic</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.basic
+ * @generated
+ */
+ public Adapter createbasicAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.LayerWithFilter <em>Layer With Filter</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.LayerWithFilter
+ * @generated
+ */
+ public Adapter createLayerWithFilterAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Conv3d <em>Conv3d</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Conv3d
+ * @generated
+ */
+ public Adapter createConv3dAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.ConvTranspose1d <em>Conv Transpose1d</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.ConvTranspose1d
+ * @generated
+ */
+ public Adapter createConvTranspose1dAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.ConvTranspose2d <em>Conv Transpose2d</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.ConvTranspose2d
+ * @generated
+ */
+ public Adapter createConvTranspose2dAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.transpose <em>transpose</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.transpose
+ * @generated
+ */
+ public Adapter createtransposeAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.ConvTranspose3d <em>Conv Transpose3d</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.ConvTranspose3d
+ * @generated
+ */
+ public Adapter createConvTranspose3dAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Conv1d <em>Conv1d</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Conv1d
+ * @generated
+ */
+ public Adapter createConv1dAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Separable <em>Separable</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Separable
+ * @generated
+ */
+ public Adapter createSeparableAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.SeparableConv2D <em>Separable Conv2 D</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.SeparableConv2D
+ * @generated
+ */
+ public Adapter createSeparableConv2DAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.SeparableConv1D <em>Separable Conv1 D</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.SeparableConv1D
+ * @generated
+ */
+ public Adapter createSeparableConv1DAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.DepthwiseConv2D <em>Depthwise Conv2 D</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.DepthwiseConv2D
+ * @generated
+ */
+ public Adapter createDepthwiseConv2DAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.aiml.profile.AIML.Module.Model <em>Model</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Module.Model
+ * @generated
+ */
+ public Adapter createModelAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for the default case.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @generated
+ */
+ public Adapter createEObjectAdapter() {
+ return null;
+ }
+
+} //Convolution_layersAdapterFactory
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Convolution_layers/util/Convolution_layersSwitch.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Convolution_layers/util/Convolution_layersSwitch.java
new file mode 100644
index 0000000..e891157
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Convolution_layers/util/Convolution_layersSwitch.java
@@ -0,0 +1,538 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.util;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+
+import org.eclipse.emf.ecore.util.Switch;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.*;
+import org.eclipse.papyrus.aiml.profile.AIML.Module.Model;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Switch</b> for the model's inheritance hierarchy.
+ * It supports the call {@link #doSwitch(EObject) doSwitch(object)}
+ * to invoke the <code>caseXXX</code> method for each class of the model,
+ * starting with the actual class of the object
+ * and proceeding up the inheritance hierarchy
+ * until a non-null result is returned,
+ * which is the result of the switch.
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution_layersPackage
+ * @generated
+ */
+public class Convolution_layersSwitch<T> extends Switch<T> {
+ /**
+ * The cached model package
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected static Convolution_layersPackage modelPackage;
+
+ /**
+ * Creates an instance of the switch.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Convolution_layersSwitch() {
+ if (modelPackage == null) {
+ modelPackage = Convolution_layersPackage.eINSTANCE;
+ }
+ }
+
+ /**
+ * Checks whether this is a switch for the given package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param ePackage the package in question.
+ * @return whether this is a switch for the given package.
+ * @generated
+ */
+ @Override
+ protected boolean isSwitchFor(EPackage ePackage) {
+ return ePackage == modelPackage;
+ }
+
+ /**
+ * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the first non-null result returned by a <code>caseXXX</code> call.
+ * @generated
+ */
+ @Override
+ protected T doSwitch(int classifierID, EObject theEObject) {
+ switch (classifierID) {
+ case Convolution_layersPackage.CONVOLUTION: {
+ Convolution convolution = (Convolution)theEObject;
+ T result = caseConvolution(convolution);
+ if (result == null) result = caseConvolution_layers(convolution);
+ if (result == null) result = caseModel(convolution);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case Convolution_layersPackage.CONVOLUTION_LAYERS: {
+ Convolution_layers convolution_layers = (Convolution_layers)theEObject;
+ T result = caseConvolution_layers(convolution_layers);
+ if (result == null) result = caseModel(convolution_layers);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case Convolution_layersPackage.UNFOLD: {
+ Unfold unfold = (Unfold)theEObject;
+ T result = caseUnfold(unfold);
+ if (result == null) result = caseConvolution_layers(unfold);
+ if (result == null) result = caseModel(unfold);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case Convolution_layersPackage.FOLD: {
+ Fold fold = (Fold)theEObject;
+ T result = caseFold(fold);
+ if (result == null) result = caseConvolution_layers(fold);
+ if (result == null) result = caseModel(fold);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case Convolution_layersPackage.CONV2D: {
+ Conv2d conv2d = (Conv2d)theEObject;
+ T result = caseConv2d(conv2d);
+ if (result == null) result = casebasic(conv2d);
+ if (result == null) result = caseLayerWithFilter(conv2d);
+ if (result == null) result = caseConvolution(conv2d);
+ if (result == null) result = caseConvolution_layers(conv2d);
+ if (result == null) result = caseModel(conv2d);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case Convolution_layersPackage.BASIC: {
+ basic basic = (basic)theEObject;
+ T result = casebasic(basic);
+ if (result == null) result = caseLayerWithFilter(basic);
+ if (result == null) result = caseConvolution(basic);
+ if (result == null) result = caseConvolution_layers(basic);
+ if (result == null) result = caseModel(basic);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case Convolution_layersPackage.LAYER_WITH_FILTER: {
+ LayerWithFilter layerWithFilter = (LayerWithFilter)theEObject;
+ T result = caseLayerWithFilter(layerWithFilter);
+ if (result == null) result = caseConvolution(layerWithFilter);
+ if (result == null) result = caseConvolution_layers(layerWithFilter);
+ if (result == null) result = caseModel(layerWithFilter);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case Convolution_layersPackage.CONV3D: {
+ Conv3d conv3d = (Conv3d)theEObject;
+ T result = caseConv3d(conv3d);
+ if (result == null) result = casebasic(conv3d);
+ if (result == null) result = caseLayerWithFilter(conv3d);
+ if (result == null) result = caseConvolution(conv3d);
+ if (result == null) result = caseConvolution_layers(conv3d);
+ if (result == null) result = caseModel(conv3d);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case Convolution_layersPackage.CONV_TRANSPOSE1D: {
+ ConvTranspose1d convTranspose1d = (ConvTranspose1d)theEObject;
+ T result = caseConvTranspose1d(convTranspose1d);
+ if (result == null) result = caseLayerWithFilter(convTranspose1d);
+ if (result == null) result = caseConvolution(convTranspose1d);
+ if (result == null) result = caseConvolution_layers(convTranspose1d);
+ if (result == null) result = caseModel(convTranspose1d);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case Convolution_layersPackage.CONV_TRANSPOSE2D: {
+ ConvTranspose2d convTranspose2d = (ConvTranspose2d)theEObject;
+ T result = caseConvTranspose2d(convTranspose2d);
+ if (result == null) result = casetranspose(convTranspose2d);
+ if (result == null) result = casebasic(convTranspose2d);
+ if (result == null) result = caseLayerWithFilter(convTranspose2d);
+ if (result == null) result = caseConvolution(convTranspose2d);
+ if (result == null) result = caseConvolution_layers(convTranspose2d);
+ if (result == null) result = caseModel(convTranspose2d);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case Convolution_layersPackage.TRANSPOSE: {
+ transpose transpose = (transpose)theEObject;
+ T result = casetranspose(transpose);
+ if (result == null) result = casebasic(transpose);
+ if (result == null) result = caseLayerWithFilter(transpose);
+ if (result == null) result = caseConvolution(transpose);
+ if (result == null) result = caseConvolution_layers(transpose);
+ if (result == null) result = caseModel(transpose);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case Convolution_layersPackage.CONV_TRANSPOSE3D: {
+ ConvTranspose3d convTranspose3d = (ConvTranspose3d)theEObject;
+ T result = caseConvTranspose3d(convTranspose3d);
+ if (result == null) result = casetranspose(convTranspose3d);
+ if (result == null) result = casebasic(convTranspose3d);
+ if (result == null) result = caseLayerWithFilter(convTranspose3d);
+ if (result == null) result = caseConvolution(convTranspose3d);
+ if (result == null) result = caseConvolution_layers(convTranspose3d);
+ if (result == null) result = caseModel(convTranspose3d);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case Convolution_layersPackage.CONV1D: {
+ Conv1d conv1d = (Conv1d)theEObject;
+ T result = caseConv1d(conv1d);
+ if (result == null) result = casebasic(conv1d);
+ if (result == null) result = caseLayerWithFilter(conv1d);
+ if (result == null) result = caseConvolution(conv1d);
+ if (result == null) result = caseConvolution_layers(conv1d);
+ if (result == null) result = caseModel(conv1d);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case Convolution_layersPackage.SEPARABLE: {
+ Separable separable = (Separable)theEObject;
+ T result = caseSeparable(separable);
+ if (result == null) result = caseLayerWithFilter(separable);
+ if (result == null) result = caseConvolution(separable);
+ if (result == null) result = caseConvolution_layers(separable);
+ if (result == null) result = caseModel(separable);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case Convolution_layersPackage.SEPARABLE_CONV2_D: {
+ SeparableConv2D separableConv2D = (SeparableConv2D)theEObject;
+ T result = caseSeparableConv2D(separableConv2D);
+ if (result == null) result = caseSeparable(separableConv2D);
+ if (result == null) result = caseLayerWithFilter(separableConv2D);
+ if (result == null) result = caseConvolution(separableConv2D);
+ if (result == null) result = caseConvolution_layers(separableConv2D);
+ if (result == null) result = caseModel(separableConv2D);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case Convolution_layersPackage.SEPARABLE_CONV1_D: {
+ SeparableConv1D separableConv1D = (SeparableConv1D)theEObject;
+ T result = caseSeparableConv1D(separableConv1D);
+ if (result == null) result = caseSeparable(separableConv1D);
+ if (result == null) result = caseLayerWithFilter(separableConv1D);
+ if (result == null) result = caseConvolution(separableConv1D);
+ if (result == null) result = caseConvolution_layers(separableConv1D);
+ if (result == null) result = caseModel(separableConv1D);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case Convolution_layersPackage.DEPTHWISE_CONV2_D: {
+ DepthwiseConv2D depthwiseConv2D = (DepthwiseConv2D)theEObject;
+ T result = caseDepthwiseConv2D(depthwiseConv2D);
+ if (result == null) result = caseConvolution(depthwiseConv2D);
+ if (result == null) result = caseConvolution_layers(depthwiseConv2D);
+ if (result == null) result = caseModel(depthwiseConv2D);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ default: return defaultCase(theEObject);
+ }
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Convolution</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Convolution</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseConvolution(Convolution object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Convolution layers</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Convolution layers</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseConvolution_layers(Convolution_layers object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Unfold</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Unfold</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseUnfold(Unfold object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Fold</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Fold</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseFold(Fold object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Conv2d</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Conv2d</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseConv2d(Conv2d object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>basic</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>basic</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T casebasic(basic object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Layer With Filter</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Layer With Filter</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseLayerWithFilter(LayerWithFilter object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Conv3d</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Conv3d</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseConv3d(Conv3d object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Conv Transpose1d</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Conv Transpose1d</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseConvTranspose1d(ConvTranspose1d object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Conv Transpose2d</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Conv Transpose2d</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseConvTranspose2d(ConvTranspose2d object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>transpose</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>transpose</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T casetranspose(transpose object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Conv Transpose3d</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Conv Transpose3d</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseConvTranspose3d(ConvTranspose3d object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Conv1d</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Conv1d</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseConv1d(Conv1d object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Separable</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Separable</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseSeparable(Separable object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Separable Conv2 D</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Separable Conv2 D</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseSeparableConv2D(SeparableConv2D object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Separable Conv1 D</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Separable Conv1 D</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseSeparableConv1D(SeparableConv1D object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Depthwise Conv2 D</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Depthwise Conv2 D</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseDepthwiseConv2D(DepthwiseConv2D object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Model</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Model</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseModel(Model object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>EObject</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch, but this is the last case anyway.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>EObject</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject)
+ * @generated
+ */
+ @Override
+ public T defaultCase(EObject object) {
+ return null;
+ }
+
+} //Convolution_layersSwitch
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/DataParallel_layers/DataParallel.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/DataParallel_layers/DataParallel.java
new file mode 100644
index 0000000..4c41b3f
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/DataParallel_layers/DataParallel.java
@@ -0,0 +1,26 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Data Parallel</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers.DataParallel_layersPackage#getDataParallel()
+ * @model
+ * @generated
+ */
+public interface DataParallel extends DataParallel_layers {
+} // DataParallel
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/DataParallel_layers/DataParallel_layers.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/DataParallel_layers/DataParallel_layers.java
new file mode 100644
index 0000000..a4fea2e
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/DataParallel_layers/DataParallel_layers.java
@@ -0,0 +1,94 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers;
+
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.papyrus.aiml.profile.AIML.Module.Model;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Data Parallel layers</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers.DataParallel_layers#getModule <em>Module</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers.DataParallel_layers#getDevice_ids <em>Device ids</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers.DataParallel_layers#getOutput_device <em>Output device</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers.DataParallel_layersPackage#getDataParallel_layers()
+ * @model abstract="true"
+ * @generated
+ */
+public interface DataParallel_layers extends Model {
+ /**
+ * Returns the value of the '<em><b>Module</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Module</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Module</em>' reference.
+ * @see #setModule(Model)
+ * @see org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers.DataParallel_layersPackage#getDataParallel_layers_Module()
+ * @model required="true" ordered="false"
+ * @generated
+ */
+ Model getModule();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers.DataParallel_layers#getModule <em>Module</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Module</em>' reference.
+ * @see #getModule()
+ * @generated
+ */
+ void setModule(Model value);
+
+ /**
+ * Returns the value of the '<em><b>Device ids</b></em>' attribute list.
+ * The list contents are of type {@link java.lang.Integer}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Device ids</em>' attribute list isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Device ids</em>' attribute list.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers.DataParallel_layersPackage#getDataParallel_layers_Device_ids()
+ * @model dataType="org.eclipse.uml2.types.Integer" ordered="false"
+ * @generated
+ */
+ EList<Integer> getDevice_ids();
+
+ /**
+ * Returns the value of the '<em><b>Output device</b></em>' attribute list.
+ * The list contents are of type {@link java.lang.Integer}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Output device</em>' attribute list isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Output device</em>' attribute list.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers.DataParallel_layersPackage#getDataParallel_layers_Output_device()
+ * @model dataType="org.eclipse.uml2.types.Integer" ordered="false"
+ * @generated
+ */
+ EList<Integer> getOutput_device();
+
+} // DataParallel_layers
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/DataParallel_layers/DataParallel_layersFactory.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/DataParallel_layers/DataParallel_layersFactory.java
new file mode 100644
index 0000000..25da7a5
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/DataParallel_layers/DataParallel_layersFactory.java
@@ -0,0 +1,60 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers;
+
+import org.eclipse.emf.ecore.EFactory;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Factory</b> for the model.
+ * It provides a create method for each non-abstract class of the model.
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers.DataParallel_layersPackage
+ * @generated
+ */
+public interface DataParallel_layersFactory extends EFactory {
+ /**
+ * The singleton instance of the factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ DataParallel_layersFactory eINSTANCE = org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers.impl.DataParallel_layersFactoryImpl.init();
+
+ /**
+ * Returns a new object of class '<em>Distributed Data Parallel</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Distributed Data Parallel</em>'.
+ * @generated
+ */
+ DistributedDataParallel createDistributedDataParallel();
+
+ /**
+ * Returns a new object of class '<em>Data Parallel</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Data Parallel</em>'.
+ * @generated
+ */
+ DataParallel createDataParallel();
+
+ /**
+ * Returns the package supported by this factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the package supported by this factory.
+ * @generated
+ */
+ DataParallel_layersPackage getDataParallel_layersPackage();
+
+} //DataParallel_layersFactory
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/DataParallel_layers/DataParallel_layersPackage.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/DataParallel_layers/DataParallel_layersPackage.java
new file mode 100644
index 0000000..f4e558b
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/DataParallel_layers/DataParallel_layersPackage.java
@@ -0,0 +1,707 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers;
+
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EReference;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Module.ModulePackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Package</b> for the model.
+ * It contains accessors for the meta objects to represent
+ * <ul>
+ * <li>each class,</li>
+ * <li>each feature of each class,</li>
+ * <li>each operation of each class,</li>
+ * <li>each enum,</li>
+ * <li>and each data type</li>
+ * </ul>
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers.DataParallel_layersFactory
+ * @model kind="package"
+ * @generated
+ */
+public interface DataParallel_layersPackage extends EPackage {
+ /**
+ * The package name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNAME = "DataParallel_layers"; //$NON-NLS-1$
+
+ /**
+ * The package namespace URI.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNS_URI = "http://www.eclipse.org/papyrus/AIML/dataparallel/1"; //$NON-NLS-1$
+
+ /**
+ * The package namespace name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNS_PREFIX = "AIML.DataParallel_layers"; //$NON-NLS-1$
+
+ /**
+ * The singleton instance of the package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ DataParallel_layersPackage eINSTANCE = org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers.impl.DataParallel_layersPackageImpl.init();
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers.impl.DataParallel_layersImpl <em>Data Parallel layers</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers.impl.DataParallel_layersImpl
+ * @see org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers.impl.DataParallel_layersPackageImpl#getDataParallel_layers()
+ * @generated
+ */
+ int DATA_PARALLEL_LAYERS = 0;
+
+ /**
+ * The feature id for the '<em><b>Base Class</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DATA_PARALLEL_LAYERS__BASE_CLASS = ModulePackage.MODEL__BASE_CLASS;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DATA_PARALLEL_LAYERS__NAME = ModulePackage.MODEL__NAME;
+
+ /**
+ * The feature id for the '<em><b>Data</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DATA_PARALLEL_LAYERS__DATA = ModulePackage.MODEL__DATA;
+
+ /**
+ * The feature id for the '<em><b>Requires grad</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DATA_PARALLEL_LAYERS__REQUIRES_GRAD = ModulePackage.MODEL__REQUIRES_GRAD;
+
+ /**
+ * The feature id for the '<em><b>Sub Module</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DATA_PARALLEL_LAYERS__SUB_MODULE = ModulePackage.MODEL__SUB_MODULE;
+
+ /**
+ * The feature id for the '<em><b>Optimizer</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DATA_PARALLEL_LAYERS__OPTIMIZER = ModulePackage.MODEL__OPTIMIZER;
+
+ /**
+ * The feature id for the '<em><b>Loss</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DATA_PARALLEL_LAYERS__LOSS = ModulePackage.MODEL__LOSS;
+
+ /**
+ * The feature id for the '<em><b>Module</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DATA_PARALLEL_LAYERS__MODULE = ModulePackage.MODEL_FEATURE_COUNT + 0;
+
+ /**
+ * The feature id for the '<em><b>Device ids</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DATA_PARALLEL_LAYERS__DEVICE_IDS = ModulePackage.MODEL_FEATURE_COUNT + 1;
+
+ /**
+ * The feature id for the '<em><b>Output device</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DATA_PARALLEL_LAYERS__OUTPUT_DEVICE = ModulePackage.MODEL_FEATURE_COUNT + 2;
+
+ /**
+ * The number of structural features of the '<em>Data Parallel layers</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DATA_PARALLEL_LAYERS_FEATURE_COUNT = ModulePackage.MODEL_FEATURE_COUNT + 3;
+
+ /**
+ * The number of operations of the '<em>Data Parallel layers</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DATA_PARALLEL_LAYERS_OPERATION_COUNT = ModulePackage.MODEL_OPERATION_COUNT + 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers.impl.DistributedDataParallelImpl <em>Distributed Data Parallel</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers.impl.DistributedDataParallelImpl
+ * @see org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers.impl.DataParallel_layersPackageImpl#getDistributedDataParallel()
+ * @generated
+ */
+ int DISTRIBUTED_DATA_PARALLEL = 1;
+
+ /**
+ * The feature id for the '<em><b>Base Class</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DISTRIBUTED_DATA_PARALLEL__BASE_CLASS = DATA_PARALLEL_LAYERS__BASE_CLASS;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DISTRIBUTED_DATA_PARALLEL__NAME = DATA_PARALLEL_LAYERS__NAME;
+
+ /**
+ * The feature id for the '<em><b>Data</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DISTRIBUTED_DATA_PARALLEL__DATA = DATA_PARALLEL_LAYERS__DATA;
+
+ /**
+ * The feature id for the '<em><b>Requires grad</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DISTRIBUTED_DATA_PARALLEL__REQUIRES_GRAD = DATA_PARALLEL_LAYERS__REQUIRES_GRAD;
+
+ /**
+ * The feature id for the '<em><b>Sub Module</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DISTRIBUTED_DATA_PARALLEL__SUB_MODULE = DATA_PARALLEL_LAYERS__SUB_MODULE;
+
+ /**
+ * The feature id for the '<em><b>Optimizer</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DISTRIBUTED_DATA_PARALLEL__OPTIMIZER = DATA_PARALLEL_LAYERS__OPTIMIZER;
+
+ /**
+ * The feature id for the '<em><b>Loss</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DISTRIBUTED_DATA_PARALLEL__LOSS = DATA_PARALLEL_LAYERS__LOSS;
+
+ /**
+ * The feature id for the '<em><b>Module</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DISTRIBUTED_DATA_PARALLEL__MODULE = DATA_PARALLEL_LAYERS__MODULE;
+
+ /**
+ * The feature id for the '<em><b>Device ids</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DISTRIBUTED_DATA_PARALLEL__DEVICE_IDS = DATA_PARALLEL_LAYERS__DEVICE_IDS;
+
+ /**
+ * The feature id for the '<em><b>Output device</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DISTRIBUTED_DATA_PARALLEL__OUTPUT_DEVICE = DATA_PARALLEL_LAYERS__OUTPUT_DEVICE;
+
+ /**
+ * The feature id for the '<em><b>Broadcast buffers</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DISTRIBUTED_DATA_PARALLEL__BROADCAST_BUFFERS = DATA_PARALLEL_LAYERS_FEATURE_COUNT + 0;
+
+ /**
+ * The feature id for the '<em><b>Process group</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DISTRIBUTED_DATA_PARALLEL__PROCESS_GROUP = DATA_PARALLEL_LAYERS_FEATURE_COUNT + 1;
+
+ /**
+ * The feature id for the '<em><b>Bucket cap mb</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DISTRIBUTED_DATA_PARALLEL__BUCKET_CAP_MB = DATA_PARALLEL_LAYERS_FEATURE_COUNT + 2;
+
+ /**
+ * The feature id for the '<em><b>Find unsused parameters</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DISTRIBUTED_DATA_PARALLEL__FIND_UNSUSED_PARAMETERS = DATA_PARALLEL_LAYERS_FEATURE_COUNT + 3;
+
+ /**
+ * The feature id for the '<em><b>Check reduction</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DISTRIBUTED_DATA_PARALLEL__CHECK_REDUCTION = DATA_PARALLEL_LAYERS_FEATURE_COUNT + 4;
+
+ /**
+ * The number of structural features of the '<em>Distributed Data Parallel</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DISTRIBUTED_DATA_PARALLEL_FEATURE_COUNT = DATA_PARALLEL_LAYERS_FEATURE_COUNT + 5;
+
+ /**
+ * The number of operations of the '<em>Distributed Data Parallel</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DISTRIBUTED_DATA_PARALLEL_OPERATION_COUNT = DATA_PARALLEL_LAYERS_OPERATION_COUNT + 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers.impl.DataParallelImpl <em>Data Parallel</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers.impl.DataParallelImpl
+ * @see org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers.impl.DataParallel_layersPackageImpl#getDataParallel()
+ * @generated
+ */
+ int DATA_PARALLEL = 2;
+
+ /**
+ * The feature id for the '<em><b>Base Class</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DATA_PARALLEL__BASE_CLASS = DATA_PARALLEL_LAYERS__BASE_CLASS;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DATA_PARALLEL__NAME = DATA_PARALLEL_LAYERS__NAME;
+
+ /**
+ * The feature id for the '<em><b>Data</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DATA_PARALLEL__DATA = DATA_PARALLEL_LAYERS__DATA;
+
+ /**
+ * The feature id for the '<em><b>Requires grad</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DATA_PARALLEL__REQUIRES_GRAD = DATA_PARALLEL_LAYERS__REQUIRES_GRAD;
+
+ /**
+ * The feature id for the '<em><b>Sub Module</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DATA_PARALLEL__SUB_MODULE = DATA_PARALLEL_LAYERS__SUB_MODULE;
+
+ /**
+ * The feature id for the '<em><b>Optimizer</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DATA_PARALLEL__OPTIMIZER = DATA_PARALLEL_LAYERS__OPTIMIZER;
+
+ /**
+ * The feature id for the '<em><b>Loss</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DATA_PARALLEL__LOSS = DATA_PARALLEL_LAYERS__LOSS;
+
+ /**
+ * The feature id for the '<em><b>Module</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DATA_PARALLEL__MODULE = DATA_PARALLEL_LAYERS__MODULE;
+
+ /**
+ * The feature id for the '<em><b>Device ids</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DATA_PARALLEL__DEVICE_IDS = DATA_PARALLEL_LAYERS__DEVICE_IDS;
+
+ /**
+ * The feature id for the '<em><b>Output device</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DATA_PARALLEL__OUTPUT_DEVICE = DATA_PARALLEL_LAYERS__OUTPUT_DEVICE;
+
+ /**
+ * The number of structural features of the '<em>Data Parallel</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DATA_PARALLEL_FEATURE_COUNT = DATA_PARALLEL_LAYERS_FEATURE_COUNT + 0;
+
+ /**
+ * The number of operations of the '<em>Data Parallel</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DATA_PARALLEL_OPERATION_COUNT = DATA_PARALLEL_LAYERS_OPERATION_COUNT + 0;
+
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers.DataParallel_layers <em>Data Parallel layers</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Data Parallel layers</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers.DataParallel_layers
+ * @generated
+ */
+ EClass getDataParallel_layers();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers.DataParallel_layers#getModule <em>Module</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Module</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers.DataParallel_layers#getModule()
+ * @see #getDataParallel_layers()
+ * @generated
+ */
+ EReference getDataParallel_layers_Module();
+
+ /**
+ * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers.DataParallel_layers#getDevice_ids <em>Device ids</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute list '<em>Device ids</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers.DataParallel_layers#getDevice_ids()
+ * @see #getDataParallel_layers()
+ * @generated
+ */
+ EAttribute getDataParallel_layers_Device_ids();
+
+ /**
+ * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers.DataParallel_layers#getOutput_device <em>Output device</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute list '<em>Output device</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers.DataParallel_layers#getOutput_device()
+ * @see #getDataParallel_layers()
+ * @generated
+ */
+ EAttribute getDataParallel_layers_Output_device();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers.DistributedDataParallel <em>Distributed Data Parallel</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Distributed Data Parallel</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers.DistributedDataParallel
+ * @generated
+ */
+ EClass getDistributedDataParallel();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers.DistributedDataParallel#isBroadcast_buffers <em>Broadcast buffers</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Broadcast buffers</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers.DistributedDataParallel#isBroadcast_buffers()
+ * @see #getDistributedDataParallel()
+ * @generated
+ */
+ EAttribute getDistributedDataParallel_Broadcast_buffers();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers.DistributedDataParallel#getProcess_group <em>Process group</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Process group</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers.DistributedDataParallel#getProcess_group()
+ * @see #getDistributedDataParallel()
+ * @generated
+ */
+ EAttribute getDistributedDataParallel_Process_group();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers.DistributedDataParallel#getBucket_cap_mb <em>Bucket cap mb</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Bucket cap mb</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers.DistributedDataParallel#getBucket_cap_mb()
+ * @see #getDistributedDataParallel()
+ * @generated
+ */
+ EAttribute getDistributedDataParallel_Bucket_cap_mb();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers.DistributedDataParallel#isFind_unsused_parameters <em>Find unsused parameters</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Find unsused parameters</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers.DistributedDataParallel#isFind_unsused_parameters()
+ * @see #getDistributedDataParallel()
+ * @generated
+ */
+ EAttribute getDistributedDataParallel_Find_unsused_parameters();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers.DistributedDataParallel#isCheck_reduction <em>Check reduction</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Check reduction</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers.DistributedDataParallel#isCheck_reduction()
+ * @see #getDistributedDataParallel()
+ * @generated
+ */
+ EAttribute getDistributedDataParallel_Check_reduction();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers.DataParallel <em>Data Parallel</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Data Parallel</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers.DataParallel
+ * @generated
+ */
+ EClass getDataParallel();
+
+ /**
+ * Returns the factory that creates the instances of the model.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the factory that creates the instances of the model.
+ * @generated
+ */
+ DataParallel_layersFactory getDataParallel_layersFactory();
+
+ /**
+ * <!-- begin-user-doc -->
+ * Defines literals for the meta objects that represent
+ * <ul>
+ * <li>each class,</li>
+ * <li>each feature of each class,</li>
+ * <li>each operation of each class,</li>
+ * <li>each enum,</li>
+ * <li>and each data type</li>
+ * </ul>
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ interface Literals {
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers.impl.DataParallel_layersImpl <em>Data Parallel layers</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers.impl.DataParallel_layersImpl
+ * @see org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers.impl.DataParallel_layersPackageImpl#getDataParallel_layers()
+ * @generated
+ */
+ EClass DATA_PARALLEL_LAYERS = eINSTANCE.getDataParallel_layers();
+
+ /**
+ * The meta object literal for the '<em><b>Module</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference DATA_PARALLEL_LAYERS__MODULE = eINSTANCE.getDataParallel_layers_Module();
+
+ /**
+ * The meta object literal for the '<em><b>Device ids</b></em>' attribute list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute DATA_PARALLEL_LAYERS__DEVICE_IDS = eINSTANCE.getDataParallel_layers_Device_ids();
+
+ /**
+ * The meta object literal for the '<em><b>Output device</b></em>' attribute list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute DATA_PARALLEL_LAYERS__OUTPUT_DEVICE = eINSTANCE.getDataParallel_layers_Output_device();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers.impl.DistributedDataParallelImpl <em>Distributed Data Parallel</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers.impl.DistributedDataParallelImpl
+ * @see org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers.impl.DataParallel_layersPackageImpl#getDistributedDataParallel()
+ * @generated
+ */
+ EClass DISTRIBUTED_DATA_PARALLEL = eINSTANCE.getDistributedDataParallel();
+
+ /**
+ * The meta object literal for the '<em><b>Broadcast buffers</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute DISTRIBUTED_DATA_PARALLEL__BROADCAST_BUFFERS = eINSTANCE.getDistributedDataParallel_Broadcast_buffers();
+
+ /**
+ * The meta object literal for the '<em><b>Process group</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute DISTRIBUTED_DATA_PARALLEL__PROCESS_GROUP = eINSTANCE.getDistributedDataParallel_Process_group();
+
+ /**
+ * The meta object literal for the '<em><b>Bucket cap mb</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute DISTRIBUTED_DATA_PARALLEL__BUCKET_CAP_MB = eINSTANCE.getDistributedDataParallel_Bucket_cap_mb();
+
+ /**
+ * The meta object literal for the '<em><b>Find unsused parameters</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute DISTRIBUTED_DATA_PARALLEL__FIND_UNSUSED_PARAMETERS = eINSTANCE.getDistributedDataParallel_Find_unsused_parameters();
+
+ /**
+ * The meta object literal for the '<em><b>Check reduction</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute DISTRIBUTED_DATA_PARALLEL__CHECK_REDUCTION = eINSTANCE.getDistributedDataParallel_Check_reduction();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers.impl.DataParallelImpl <em>Data Parallel</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers.impl.DataParallelImpl
+ * @see org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers.impl.DataParallel_layersPackageImpl#getDataParallel()
+ * @generated
+ */
+ EClass DATA_PARALLEL = eINSTANCE.getDataParallel();
+
+ }
+
+} //DataParallel_layersPackage
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/DataParallel_layers/DistributedDataParallel.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/DataParallel_layers/DistributedDataParallel.java
new file mode 100644
index 0000000..0587fce
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/DataParallel_layers/DistributedDataParallel.java
@@ -0,0 +1,166 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Distributed Data Parallel</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers.DistributedDataParallel#isBroadcast_buffers <em>Broadcast buffers</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers.DistributedDataParallel#getProcess_group <em>Process group</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers.DistributedDataParallel#getBucket_cap_mb <em>Bucket cap mb</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers.DistributedDataParallel#isFind_unsused_parameters <em>Find unsused parameters</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers.DistributedDataParallel#isCheck_reduction <em>Check reduction</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers.DataParallel_layersPackage#getDistributedDataParallel()
+ * @model
+ * @generated
+ */
+public interface DistributedDataParallel extends DataParallel_layers {
+ /**
+ * Returns the value of the '<em><b>Broadcast buffers</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Broadcast buffers</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Broadcast buffers</em>' attribute.
+ * @see #setBroadcast_buffers(boolean)
+ * @see org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers.DataParallel_layersPackage#getDistributedDataParallel_Broadcast_buffers()
+ * @model dataType="org.eclipse.uml2.types.Boolean" ordered="false"
+ * @generated
+ */
+ boolean isBroadcast_buffers();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers.DistributedDataParallel#isBroadcast_buffers <em>Broadcast buffers</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Broadcast buffers</em>' attribute.
+ * @see #isBroadcast_buffers()
+ * @generated
+ */
+ void setBroadcast_buffers(boolean value);
+
+ /**
+ * Returns the value of the '<em><b>Process group</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Process group</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Process group</em>' attribute.
+ * @see #setProcess_group(int)
+ * @see org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers.DataParallel_layersPackage#getDistributedDataParallel_Process_group()
+ * @model dataType="org.eclipse.uml2.types.Integer" ordered="false"
+ * @generated
+ */
+ int getProcess_group();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers.DistributedDataParallel#getProcess_group <em>Process group</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Process group</em>' attribute.
+ * @see #getProcess_group()
+ * @generated
+ */
+ void setProcess_group(int value);
+
+ /**
+ * Returns the value of the '<em><b>Bucket cap mb</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Bucket cap mb</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Bucket cap mb</em>' attribute.
+ * @see #setBucket_cap_mb(int)
+ * @see org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers.DataParallel_layersPackage#getDistributedDataParallel_Bucket_cap_mb()
+ * @model dataType="org.eclipse.uml2.types.Integer" ordered="false"
+ * @generated
+ */
+ int getBucket_cap_mb();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers.DistributedDataParallel#getBucket_cap_mb <em>Bucket cap mb</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Bucket cap mb</em>' attribute.
+ * @see #getBucket_cap_mb()
+ * @generated
+ */
+ void setBucket_cap_mb(int value);
+
+ /**
+ * Returns the value of the '<em><b>Find unsused parameters</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Find unsused parameters</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Find unsused parameters</em>' attribute.
+ * @see #setFind_unsused_parameters(boolean)
+ * @see org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers.DataParallel_layersPackage#getDistributedDataParallel_Find_unsused_parameters()
+ * @model dataType="org.eclipse.uml2.types.Boolean" ordered="false"
+ * @generated
+ */
+ boolean isFind_unsused_parameters();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers.DistributedDataParallel#isFind_unsused_parameters <em>Find unsused parameters</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Find unsused parameters</em>' attribute.
+ * @see #isFind_unsused_parameters()
+ * @generated
+ */
+ void setFind_unsused_parameters(boolean value);
+
+ /**
+ * Returns the value of the '<em><b>Check reduction</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Check reduction</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Check reduction</em>' attribute.
+ * @see #setCheck_reduction(boolean)
+ * @see org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers.DataParallel_layersPackage#getDistributedDataParallel_Check_reduction()
+ * @model dataType="org.eclipse.uml2.types.Boolean" ordered="false"
+ * @generated
+ */
+ boolean isCheck_reduction();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers.DistributedDataParallel#isCheck_reduction <em>Check reduction</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Check reduction</em>' attribute.
+ * @see #isCheck_reduction()
+ * @generated
+ */
+ void setCheck_reduction(boolean value);
+
+} // DistributedDataParallel
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/DataParallel_layers/impl/DataParallelImpl.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/DataParallel_layers/impl/DataParallelImpl.java
new file mode 100644
index 0000000..8921c53
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/DataParallel_layers/impl/DataParallelImpl.java
@@ -0,0 +1,46 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers.DataParallel;
+import org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers.DataParallel_layersPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Data Parallel</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class DataParallelImpl extends DataParallel_layersImpl implements DataParallel {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected DataParallelImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return DataParallel_layersPackage.Literals.DATA_PARALLEL;
+ }
+
+} //DataParallelImpl
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/DataParallel_layers/impl/DataParallel_layersFactoryImpl.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/DataParallel_layers/impl/DataParallel_layersFactoryImpl.java
new file mode 100644
index 0000000..2a23d3c
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/DataParallel_layers/impl/DataParallel_layersFactoryImpl.java
@@ -0,0 +1,118 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers.impl;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+
+import org.eclipse.emf.ecore.impl.EFactoryImpl;
+
+import org.eclipse.emf.ecore.plugin.EcorePlugin;
+
+import org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers.*;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model <b>Factory</b>.
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class DataParallel_layersFactoryImpl extends EFactoryImpl implements DataParallel_layersFactory {
+ /**
+ * Creates the default factory implementation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static DataParallel_layersFactory init() {
+ try {
+ DataParallel_layersFactory theDataParallel_layersFactory = (DataParallel_layersFactory)EPackage.Registry.INSTANCE.getEFactory(DataParallel_layersPackage.eNS_URI);
+ if (theDataParallel_layersFactory != null) {
+ return theDataParallel_layersFactory;
+ }
+ }
+ catch (Exception exception) {
+ EcorePlugin.INSTANCE.log(exception);
+ }
+ return new DataParallel_layersFactoryImpl();
+ }
+
+ /**
+ * Creates an instance of the factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public DataParallel_layersFactoryImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EObject create(EClass eClass) {
+ switch (eClass.getClassifierID()) {
+ case DataParallel_layersPackage.DISTRIBUTED_DATA_PARALLEL: return createDistributedDataParallel();
+ case DataParallel_layersPackage.DATA_PARALLEL: return createDataParallel();
+ default:
+ throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier"); //$NON-NLS-1$ //$NON-NLS-2$
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public DistributedDataParallel createDistributedDataParallel() {
+ DistributedDataParallelImpl distributedDataParallel = new DistributedDataParallelImpl();
+ return distributedDataParallel;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public DataParallel createDataParallel() {
+ DataParallelImpl dataParallel = new DataParallelImpl();
+ return dataParallel;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public DataParallel_layersPackage getDataParallel_layersPackage() {
+ return (DataParallel_layersPackage)getEPackage();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @deprecated
+ * @generated
+ */
+ @Deprecated
+ public static DataParallel_layersPackage getPackage() {
+ return DataParallel_layersPackage.eINSTANCE;
+ }
+
+} //DataParallel_layersFactoryImpl
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/DataParallel_layers/impl/DataParallel_layersImpl.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/DataParallel_layers/impl/DataParallel_layersImpl.java
new file mode 100644
index 0000000..bd9678d
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/DataParallel_layers/impl/DataParallel_layersImpl.java
@@ -0,0 +1,263 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+import org.eclipse.emf.ecore.util.EDataTypeUniqueEList;
+
+import org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers.DataParallel_layers;
+import org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers.DataParallel_layersPackage;
+import org.eclipse.papyrus.aiml.profile.AIML.Module.Model;
+import org.eclipse.papyrus.aiml.profile.AIML.Module.impl.ModelImpl;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Data Parallel layers</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers.impl.DataParallel_layersImpl#getModule <em>Module</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers.impl.DataParallel_layersImpl#getDevice_ids <em>Device ids</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers.impl.DataParallel_layersImpl#getOutput_device <em>Output device</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public abstract class DataParallel_layersImpl extends ModelImpl implements DataParallel_layers {
+ /**
+ * The cached value of the '{@link #getModule() <em>Module</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getModule()
+ * @generated
+ * @ordered
+ */
+ protected Model module;
+
+ /**
+ * The cached value of the '{@link #getDevice_ids() <em>Device ids</em>}' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getDevice_ids()
+ * @generated
+ * @ordered
+ */
+ protected EList<Integer> device_ids;
+
+ /**
+ * The cached value of the '{@link #getOutput_device() <em>Output device</em>}' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getOutput_device()
+ * @generated
+ * @ordered
+ */
+ protected EList<Integer> output_device;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected DataParallel_layersImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return DataParallel_layersPackage.Literals.DATA_PARALLEL_LAYERS;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Model getModule() {
+ if (module != null && module.eIsProxy()) {
+ InternalEObject oldModule = (InternalEObject)module;
+ module = (Model)eResolveProxy(oldModule);
+ if (module != oldModule) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, DataParallel_layersPackage.DATA_PARALLEL_LAYERS__MODULE, oldModule, module));
+ }
+ }
+ return module;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Model basicGetModule() {
+ return module;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void setModule(Model newModule) {
+ Model oldModule = module;
+ module = newModule;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, DataParallel_layersPackage.DATA_PARALLEL_LAYERS__MODULE, oldModule, module));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EList<Integer> getDevice_ids() {
+ if (device_ids == null) {
+ device_ids = new EDataTypeUniqueEList<Integer>(Integer.class, this, DataParallel_layersPackage.DATA_PARALLEL_LAYERS__DEVICE_IDS);
+ }
+ return device_ids;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EList<Integer> getOutput_device() {
+ if (output_device == null) {
+ output_device = new EDataTypeUniqueEList<Integer>(Integer.class, this, DataParallel_layersPackage.DATA_PARALLEL_LAYERS__OUTPUT_DEVICE);
+ }
+ return output_device;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case DataParallel_layersPackage.DATA_PARALLEL_LAYERS__MODULE:
+ if (resolve) return getModule();
+ return basicGetModule();
+ case DataParallel_layersPackage.DATA_PARALLEL_LAYERS__DEVICE_IDS:
+ return getDevice_ids();
+ case DataParallel_layersPackage.DATA_PARALLEL_LAYERS__OUTPUT_DEVICE:
+ return getOutput_device();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @SuppressWarnings("unchecked")
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case DataParallel_layersPackage.DATA_PARALLEL_LAYERS__MODULE:
+ setModule((Model)newValue);
+ return;
+ case DataParallel_layersPackage.DATA_PARALLEL_LAYERS__DEVICE_IDS:
+ getDevice_ids().clear();
+ getDevice_ids().addAll((Collection<? extends Integer>)newValue);
+ return;
+ case DataParallel_layersPackage.DATA_PARALLEL_LAYERS__OUTPUT_DEVICE:
+ getOutput_device().clear();
+ getOutput_device().addAll((Collection<? extends Integer>)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case DataParallel_layersPackage.DATA_PARALLEL_LAYERS__MODULE:
+ setModule((Model)null);
+ return;
+ case DataParallel_layersPackage.DATA_PARALLEL_LAYERS__DEVICE_IDS:
+ getDevice_ids().clear();
+ return;
+ case DataParallel_layersPackage.DATA_PARALLEL_LAYERS__OUTPUT_DEVICE:
+ getOutput_device().clear();
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case DataParallel_layersPackage.DATA_PARALLEL_LAYERS__MODULE:
+ return module != null;
+ case DataParallel_layersPackage.DATA_PARALLEL_LAYERS__DEVICE_IDS:
+ return device_ids != null && !device_ids.isEmpty();
+ case DataParallel_layersPackage.DATA_PARALLEL_LAYERS__OUTPUT_DEVICE:
+ return output_device != null && !output_device.isEmpty();
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuilder result = new StringBuilder(super.toString());
+ result.append(" (device_ids: "); //$NON-NLS-1$
+ result.append(device_ids);
+ result.append(", output_device: "); //$NON-NLS-1$
+ result.append(output_device);
+ result.append(')');
+ return result.toString();
+ }
+
+} //DataParallel_layersImpl
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/DataParallel_layers/impl/DataParallel_layersPackageImpl.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/DataParallel_layers/impl/DataParallel_layersPackageImpl.java
new file mode 100644
index 0000000..1c7be47
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/DataParallel_layers/impl/DataParallel_layersPackageImpl.java
@@ -0,0 +1,502 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers.impl;
+
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EReference;
+import org.eclipse.emf.ecore.EcorePackage;
+
+import org.eclipse.emf.ecore.impl.EPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.AIMLPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution_layersPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.Convolution_layersPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers.DataParallel;
+import org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers.DataParallel_layers;
+import org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers.DataParallel_layersFactory;
+import org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers.DataParallel_layersPackage;
+import org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers.DistributedDataParallel;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Distance_functions.Distance_functionsPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Distance_functions.impl.Distance_functionsPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.Dropout_layersPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.impl.Dropout_layersPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.Layer_weight_constraintsPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.impl.Layer_weight_constraintsPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.Layer_weight_initializersPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.impl.Layer_weight_initializersPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers.Layer_weight_regularizersPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers.impl.Layer_weight_regularizersPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.Linear_layersPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.impl.Linear_layersPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Loss_functions.Loss_functionsPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Loss_functions.impl.Loss_functionsPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Module.ModulePackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Module.impl.ModulePackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.NonLinearActivations.NonLinearActivationsPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.NonLinearActivations.impl.NonLinearActivationsPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Normalization_layers.Normalization_layersPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Normalization_layers.impl.Normalization_layersPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Padding_layers.Padding_layersPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Padding_layers.impl.Padding_layersPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Pooling_layers.Pooling_layersPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Pooling_layers.impl.Pooling_layersPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Recurrent_layers.Recurrent_layersPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Recurrent_layers.impl.Recurrent_layersPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.SoftMinMaxActivations.SoftMinMaxActivationsPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.SoftMinMaxActivations.impl.SoftMinMaxActivationsPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Sparse_layers.Sparse_layersPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Sparse_layers.impl.Sparse_layersPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Tensor.TensorPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Tensor.impl.TensorPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Transformer_layers.Transformer_layersPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Transformer_layers.impl.Transformer_layersPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Vision_layers.Vision_layersPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Vision_layers.impl.Vision_layersPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.datatypes.DatatypesPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.datatypes.impl.DatatypesPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.impl.AIMLPackageImpl;
+
+import org.eclipse.uml2.types.TypesPackage;
+
+import org.eclipse.uml2.uml.UMLPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model <b>Package</b>.
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class DataParallel_layersPackageImpl extends EPackageImpl implements DataParallel_layersPackage {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass dataParallel_layersEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass distributedDataParallelEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass dataParallelEClass = null;
+
+ /**
+ * Creates an instance of the model <b>Package</b>, registered with
+ * {@link org.eclipse.emf.ecore.EPackage.Registry EPackage.Registry} by the package
+ * package URI value.
+ * <p>Note: the correct way to create the package is via the static
+ * factory method {@link #init init()}, which also performs
+ * initialization of the package, or returns the registered package,
+ * if one already exists.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.emf.ecore.EPackage.Registry
+ * @see org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers.DataParallel_layersPackage#eNS_URI
+ * @see #init()
+ * @generated
+ */
+ private DataParallel_layersPackageImpl() {
+ super(eNS_URI, DataParallel_layersFactory.eINSTANCE);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private static boolean isInited = false;
+
+ /**
+ * Creates, registers, and initializes the <b>Package</b> for this model, and for any others upon which it depends.
+ *
+ * <p>This method is used to initialize {@link DataParallel_layersPackage#eINSTANCE} when that field is accessed.
+ * Clients should not invoke it directly. Instead, they should simply access that field to obtain the package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #eNS_URI
+ * @see #createPackageContents()
+ * @see #initializePackageContents()
+ * @generated
+ */
+ public static DataParallel_layersPackage init() {
+ if (isInited) return (DataParallel_layersPackage)EPackage.Registry.INSTANCE.getEPackage(DataParallel_layersPackage.eNS_URI);
+
+ // Obtain or create and register package
+ Object registeredDataParallel_layersPackage = EPackage.Registry.INSTANCE.get(eNS_URI);
+ DataParallel_layersPackageImpl theDataParallel_layersPackage = registeredDataParallel_layersPackage instanceof DataParallel_layersPackageImpl ? (DataParallel_layersPackageImpl)registeredDataParallel_layersPackage : new DataParallel_layersPackageImpl();
+
+ isInited = true;
+
+ // Initialize simple dependencies
+ EcorePackage.eINSTANCE.eClass();
+ TypesPackage.eINSTANCE.eClass();
+ UMLPackage.eINSTANCE.eClass();
+
+ // Obtain or create and register interdependencies
+ Object registeredPackage = EPackage.Registry.INSTANCE.getEPackage(AIMLPackage.eNS_URI);
+ AIMLPackageImpl theAIMLPackage = (AIMLPackageImpl)(registeredPackage instanceof AIMLPackageImpl ? registeredPackage : AIMLPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(ModulePackage.eNS_URI);
+ ModulePackageImpl theModulePackage = (ModulePackageImpl)(registeredPackage instanceof ModulePackageImpl ? registeredPackage : ModulePackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(TensorPackage.eNS_URI);
+ TensorPackageImpl theTensorPackage = (TensorPackageImpl)(registeredPackage instanceof TensorPackageImpl ? registeredPackage : TensorPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(DatatypesPackage.eNS_URI);
+ DatatypesPackageImpl theDatatypesPackage = (DatatypesPackageImpl)(registeredPackage instanceof DatatypesPackageImpl ? registeredPackage : DatatypesPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Pooling_layersPackage.eNS_URI);
+ Pooling_layersPackageImpl thePooling_layersPackage = (Pooling_layersPackageImpl)(registeredPackage instanceof Pooling_layersPackageImpl ? registeredPackage : Pooling_layersPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Convolution_layersPackage.eNS_URI);
+ Convolution_layersPackageImpl theConvolution_layersPackage = (Convolution_layersPackageImpl)(registeredPackage instanceof Convolution_layersPackageImpl ? registeredPackage : Convolution_layersPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Layer_weight_constraintsPackage.eNS_URI);
+ Layer_weight_constraintsPackageImpl theLayer_weight_constraintsPackage = (Layer_weight_constraintsPackageImpl)(registeredPackage instanceof Layer_weight_constraintsPackageImpl ? registeredPackage : Layer_weight_constraintsPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Padding_layersPackage.eNS_URI);
+ Padding_layersPackageImpl thePadding_layersPackage = (Padding_layersPackageImpl)(registeredPackage instanceof Padding_layersPackageImpl ? registeredPackage : Padding_layersPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(NonLinearActivationsPackage.eNS_URI);
+ NonLinearActivationsPackageImpl theNonLinearActivationsPackage = (NonLinearActivationsPackageImpl)(registeredPackage instanceof NonLinearActivationsPackageImpl ? registeredPackage : NonLinearActivationsPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(SoftMinMaxActivationsPackage.eNS_URI);
+ SoftMinMaxActivationsPackageImpl theSoftMinMaxActivationsPackage = (SoftMinMaxActivationsPackageImpl)(registeredPackage instanceof SoftMinMaxActivationsPackageImpl ? registeredPackage : SoftMinMaxActivationsPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Normalization_layersPackage.eNS_URI);
+ Normalization_layersPackageImpl theNormalization_layersPackage = (Normalization_layersPackageImpl)(registeredPackage instanceof Normalization_layersPackageImpl ? registeredPackage : Normalization_layersPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Recurrent_layersPackage.eNS_URI);
+ Recurrent_layersPackageImpl theRecurrent_layersPackage = (Recurrent_layersPackageImpl)(registeredPackage instanceof Recurrent_layersPackageImpl ? registeredPackage : Recurrent_layersPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Transformer_layersPackage.eNS_URI);
+ Transformer_layersPackageImpl theTransformer_layersPackage = (Transformer_layersPackageImpl)(registeredPackage instanceof Transformer_layersPackageImpl ? registeredPackage : Transformer_layersPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Linear_layersPackage.eNS_URI);
+ Linear_layersPackageImpl theLinear_layersPackage = (Linear_layersPackageImpl)(registeredPackage instanceof Linear_layersPackageImpl ? registeredPackage : Linear_layersPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Dropout_layersPackage.eNS_URI);
+ Dropout_layersPackageImpl theDropout_layersPackage = (Dropout_layersPackageImpl)(registeredPackage instanceof Dropout_layersPackageImpl ? registeredPackage : Dropout_layersPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Sparse_layersPackage.eNS_URI);
+ Sparse_layersPackageImpl theSparse_layersPackage = (Sparse_layersPackageImpl)(registeredPackage instanceof Sparse_layersPackageImpl ? registeredPackage : Sparse_layersPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Distance_functionsPackage.eNS_URI);
+ Distance_functionsPackageImpl theDistance_functionsPackage = (Distance_functionsPackageImpl)(registeredPackage instanceof Distance_functionsPackageImpl ? registeredPackage : Distance_functionsPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Loss_functionsPackage.eNS_URI);
+ Loss_functionsPackageImpl theLoss_functionsPackage = (Loss_functionsPackageImpl)(registeredPackage instanceof Loss_functionsPackageImpl ? registeredPackage : Loss_functionsPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Vision_layersPackage.eNS_URI);
+ Vision_layersPackageImpl theVision_layersPackage = (Vision_layersPackageImpl)(registeredPackage instanceof Vision_layersPackageImpl ? registeredPackage : Vision_layersPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Layer_weight_regularizersPackage.eNS_URI);
+ Layer_weight_regularizersPackageImpl theLayer_weight_regularizersPackage = (Layer_weight_regularizersPackageImpl)(registeredPackage instanceof Layer_weight_regularizersPackageImpl ? registeredPackage : Layer_weight_regularizersPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Layer_weight_initializersPackage.eNS_URI);
+ Layer_weight_initializersPackageImpl theLayer_weight_initializersPackage = (Layer_weight_initializersPackageImpl)(registeredPackage instanceof Layer_weight_initializersPackageImpl ? registeredPackage : Layer_weight_initializersPackage.eINSTANCE);
+
+ // Create package meta-data objects
+ theDataParallel_layersPackage.createPackageContents();
+ theAIMLPackage.createPackageContents();
+ theModulePackage.createPackageContents();
+ theTensorPackage.createPackageContents();
+ theDatatypesPackage.createPackageContents();
+ thePooling_layersPackage.createPackageContents();
+ theConvolution_layersPackage.createPackageContents();
+ theLayer_weight_constraintsPackage.createPackageContents();
+ thePadding_layersPackage.createPackageContents();
+ theNonLinearActivationsPackage.createPackageContents();
+ theSoftMinMaxActivationsPackage.createPackageContents();
+ theNormalization_layersPackage.createPackageContents();
+ theRecurrent_layersPackage.createPackageContents();
+ theTransformer_layersPackage.createPackageContents();
+ theLinear_layersPackage.createPackageContents();
+ theDropout_layersPackage.createPackageContents();
+ theSparse_layersPackage.createPackageContents();
+ theDistance_functionsPackage.createPackageContents();
+ theLoss_functionsPackage.createPackageContents();
+ theVision_layersPackage.createPackageContents();
+ theLayer_weight_regularizersPackage.createPackageContents();
+ theLayer_weight_initializersPackage.createPackageContents();
+
+ // Initialize created meta-data
+ theDataParallel_layersPackage.initializePackageContents();
+ theAIMLPackage.initializePackageContents();
+ theModulePackage.initializePackageContents();
+ theTensorPackage.initializePackageContents();
+ theDatatypesPackage.initializePackageContents();
+ thePooling_layersPackage.initializePackageContents();
+ theConvolution_layersPackage.initializePackageContents();
+ theLayer_weight_constraintsPackage.initializePackageContents();
+ thePadding_layersPackage.initializePackageContents();
+ theNonLinearActivationsPackage.initializePackageContents();
+ theSoftMinMaxActivationsPackage.initializePackageContents();
+ theNormalization_layersPackage.initializePackageContents();
+ theRecurrent_layersPackage.initializePackageContents();
+ theTransformer_layersPackage.initializePackageContents();
+ theLinear_layersPackage.initializePackageContents();
+ theDropout_layersPackage.initializePackageContents();
+ theSparse_layersPackage.initializePackageContents();
+ theDistance_functionsPackage.initializePackageContents();
+ theLoss_functionsPackage.initializePackageContents();
+ theVision_layersPackage.initializePackageContents();
+ theLayer_weight_regularizersPackage.initializePackageContents();
+ theLayer_weight_initializersPackage.initializePackageContents();
+
+ // Mark meta-data to indicate it can't be changed
+ theDataParallel_layersPackage.freeze();
+
+ // Update the registry and return the package
+ EPackage.Registry.INSTANCE.put(DataParallel_layersPackage.eNS_URI, theDataParallel_layersPackage);
+ return theDataParallel_layersPackage;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EClass getDataParallel_layers() {
+ return dataParallel_layersEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EReference getDataParallel_layers_Module() {
+ return (EReference)dataParallel_layersEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EAttribute getDataParallel_layers_Device_ids() {
+ return (EAttribute)dataParallel_layersEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EAttribute getDataParallel_layers_Output_device() {
+ return (EAttribute)dataParallel_layersEClass.getEStructuralFeatures().get(2);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EClass getDistributedDataParallel() {
+ return distributedDataParallelEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EAttribute getDistributedDataParallel_Broadcast_buffers() {
+ return (EAttribute)distributedDataParallelEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EAttribute getDistributedDataParallel_Process_group() {
+ return (EAttribute)distributedDataParallelEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EAttribute getDistributedDataParallel_Bucket_cap_mb() {
+ return (EAttribute)distributedDataParallelEClass.getEStructuralFeatures().get(2);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EAttribute getDistributedDataParallel_Find_unsused_parameters() {
+ return (EAttribute)distributedDataParallelEClass.getEStructuralFeatures().get(3);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EAttribute getDistributedDataParallel_Check_reduction() {
+ return (EAttribute)distributedDataParallelEClass.getEStructuralFeatures().get(4);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EClass getDataParallel() {
+ return dataParallelEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public DataParallel_layersFactory getDataParallel_layersFactory() {
+ return (DataParallel_layersFactory)getEFactoryInstance();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private boolean isCreated = false;
+
+ /**
+ * Creates the meta-model objects for the package. This method is
+ * guarded to have no affect on any invocation but its first.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void createPackageContents() {
+ if (isCreated) return;
+ isCreated = true;
+
+ // Create classes and their features
+ dataParallel_layersEClass = createEClass(DATA_PARALLEL_LAYERS);
+ createEReference(dataParallel_layersEClass, DATA_PARALLEL_LAYERS__MODULE);
+ createEAttribute(dataParallel_layersEClass, DATA_PARALLEL_LAYERS__DEVICE_IDS);
+ createEAttribute(dataParallel_layersEClass, DATA_PARALLEL_LAYERS__OUTPUT_DEVICE);
+
+ distributedDataParallelEClass = createEClass(DISTRIBUTED_DATA_PARALLEL);
+ createEAttribute(distributedDataParallelEClass, DISTRIBUTED_DATA_PARALLEL__BROADCAST_BUFFERS);
+ createEAttribute(distributedDataParallelEClass, DISTRIBUTED_DATA_PARALLEL__PROCESS_GROUP);
+ createEAttribute(distributedDataParallelEClass, DISTRIBUTED_DATA_PARALLEL__BUCKET_CAP_MB);
+ createEAttribute(distributedDataParallelEClass, DISTRIBUTED_DATA_PARALLEL__FIND_UNSUSED_PARAMETERS);
+ createEAttribute(distributedDataParallelEClass, DISTRIBUTED_DATA_PARALLEL__CHECK_REDUCTION);
+
+ dataParallelEClass = createEClass(DATA_PARALLEL);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private boolean isInitialized = false;
+
+ /**
+ * Complete the initialization of the package and its meta-model. This
+ * method is guarded to have no affect on any invocation but its first.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void initializePackageContents() {
+ if (isInitialized) return;
+ isInitialized = true;
+
+ // Initialize package
+ setName(eNAME);
+ setNsPrefix(eNS_PREFIX);
+ setNsURI(eNS_URI);
+
+ // Obtain other dependent packages
+ ModulePackage theModulePackage = (ModulePackage)EPackage.Registry.INSTANCE.getEPackage(ModulePackage.eNS_URI);
+ TypesPackage theTypesPackage = (TypesPackage)EPackage.Registry.INSTANCE.getEPackage(TypesPackage.eNS_URI);
+
+ // Create type parameters
+
+ // Set bounds for type parameters
+
+ // Add supertypes to classes
+ dataParallel_layersEClass.getESuperTypes().add(theModulePackage.getModel());
+ distributedDataParallelEClass.getESuperTypes().add(this.getDataParallel_layers());
+ dataParallelEClass.getESuperTypes().add(this.getDataParallel_layers());
+
+ // Initialize classes, features, and operations; add parameters
+ initEClass(dataParallel_layersEClass, DataParallel_layers.class, "DataParallel_layers", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ initEReference(getDataParallel_layers_Module(), theModulePackage.getModel(), null, "module", null, 1, 1, DataParallel_layers.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+ initEAttribute(getDataParallel_layers_Device_ids(), theTypesPackage.getInteger(), "device_ids", null, 0, -1, DataParallel_layers.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+ initEAttribute(getDataParallel_layers_Output_device(), theTypesPackage.getInteger(), "output_device", null, 0, -1, DataParallel_layers.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+
+ initEClass(distributedDataParallelEClass, DistributedDataParallel.class, "DistributedDataParallel", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ initEAttribute(getDistributedDataParallel_Broadcast_buffers(), theTypesPackage.getBoolean(), "broadcast_buffers", null, 0, 1, DistributedDataParallel.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+ initEAttribute(getDistributedDataParallel_Process_group(), theTypesPackage.getInteger(), "process_group", null, 0, 1, DistributedDataParallel.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+ initEAttribute(getDistributedDataParallel_Bucket_cap_mb(), theTypesPackage.getInteger(), "bucket_cap_mb", null, 0, 1, DistributedDataParallel.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+ initEAttribute(getDistributedDataParallel_Find_unsused_parameters(), theTypesPackage.getBoolean(), "find_unsused_parameters", null, 0, 1, DistributedDataParallel.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+ initEAttribute(getDistributedDataParallel_Check_reduction(), theTypesPackage.getBoolean(), "check_reduction", null, 0, 1, DistributedDataParallel.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+
+ initEClass(dataParallelEClass, DataParallel.class, "DataParallel", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ }
+
+} //DataParallel_layersPackageImpl
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/DataParallel_layers/impl/DistributedDataParallelImpl.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/DataParallel_layers/impl/DistributedDataParallelImpl.java
new file mode 100644
index 0000000..3a74902
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/DataParallel_layers/impl/DistributedDataParallelImpl.java
@@ -0,0 +1,397 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers.DataParallel_layersPackage;
+import org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers.DistributedDataParallel;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Distributed Data Parallel</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers.impl.DistributedDataParallelImpl#isBroadcast_buffers <em>Broadcast buffers</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers.impl.DistributedDataParallelImpl#getProcess_group <em>Process group</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers.impl.DistributedDataParallelImpl#getBucket_cap_mb <em>Bucket cap mb</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers.impl.DistributedDataParallelImpl#isFind_unsused_parameters <em>Find unsused parameters</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers.impl.DistributedDataParallelImpl#isCheck_reduction <em>Check reduction</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class DistributedDataParallelImpl extends DataParallel_layersImpl implements DistributedDataParallel {
+ /**
+ * The default value of the '{@link #isBroadcast_buffers() <em>Broadcast buffers</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #isBroadcast_buffers()
+ * @generated
+ * @ordered
+ */
+ protected static final boolean BROADCAST_BUFFERS_EDEFAULT = false;
+
+ /**
+ * The cached value of the '{@link #isBroadcast_buffers() <em>Broadcast buffers</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #isBroadcast_buffers()
+ * @generated
+ * @ordered
+ */
+ protected boolean broadcast_buffers = BROADCAST_BUFFERS_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getProcess_group() <em>Process group</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getProcess_group()
+ * @generated
+ * @ordered
+ */
+ protected static final int PROCESS_GROUP_EDEFAULT = 0;
+
+ /**
+ * The cached value of the '{@link #getProcess_group() <em>Process group</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getProcess_group()
+ * @generated
+ * @ordered
+ */
+ protected int process_group = PROCESS_GROUP_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getBucket_cap_mb() <em>Bucket cap mb</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getBucket_cap_mb()
+ * @generated
+ * @ordered
+ */
+ protected static final int BUCKET_CAP_MB_EDEFAULT = 0;
+
+ /**
+ * The cached value of the '{@link #getBucket_cap_mb() <em>Bucket cap mb</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getBucket_cap_mb()
+ * @generated
+ * @ordered
+ */
+ protected int bucket_cap_mb = BUCKET_CAP_MB_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #isFind_unsused_parameters() <em>Find unsused parameters</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #isFind_unsused_parameters()
+ * @generated
+ * @ordered
+ */
+ protected static final boolean FIND_UNSUSED_PARAMETERS_EDEFAULT = false;
+
+ /**
+ * The cached value of the '{@link #isFind_unsused_parameters() <em>Find unsused parameters</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #isFind_unsused_parameters()
+ * @generated
+ * @ordered
+ */
+ protected boolean find_unsused_parameters = FIND_UNSUSED_PARAMETERS_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #isCheck_reduction() <em>Check reduction</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #isCheck_reduction()
+ * @generated
+ * @ordered
+ */
+ protected static final boolean CHECK_REDUCTION_EDEFAULT = false;
+
+ /**
+ * The cached value of the '{@link #isCheck_reduction() <em>Check reduction</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #isCheck_reduction()
+ * @generated
+ * @ordered
+ */
+ protected boolean check_reduction = CHECK_REDUCTION_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected DistributedDataParallelImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return DataParallel_layersPackage.Literals.DISTRIBUTED_DATA_PARALLEL;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean isBroadcast_buffers() {
+ return broadcast_buffers;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void setBroadcast_buffers(boolean newBroadcast_buffers) {
+ boolean oldBroadcast_buffers = broadcast_buffers;
+ broadcast_buffers = newBroadcast_buffers;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, DataParallel_layersPackage.DISTRIBUTED_DATA_PARALLEL__BROADCAST_BUFFERS, oldBroadcast_buffers, broadcast_buffers));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public int getProcess_group() {
+ return process_group;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void setProcess_group(int newProcess_group) {
+ int oldProcess_group = process_group;
+ process_group = newProcess_group;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, DataParallel_layersPackage.DISTRIBUTED_DATA_PARALLEL__PROCESS_GROUP, oldProcess_group, process_group));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public int getBucket_cap_mb() {
+ return bucket_cap_mb;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void setBucket_cap_mb(int newBucket_cap_mb) {
+ int oldBucket_cap_mb = bucket_cap_mb;
+ bucket_cap_mb = newBucket_cap_mb;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, DataParallel_layersPackage.DISTRIBUTED_DATA_PARALLEL__BUCKET_CAP_MB, oldBucket_cap_mb, bucket_cap_mb));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean isFind_unsused_parameters() {
+ return find_unsused_parameters;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void setFind_unsused_parameters(boolean newFind_unsused_parameters) {
+ boolean oldFind_unsused_parameters = find_unsused_parameters;
+ find_unsused_parameters = newFind_unsused_parameters;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, DataParallel_layersPackage.DISTRIBUTED_DATA_PARALLEL__FIND_UNSUSED_PARAMETERS, oldFind_unsused_parameters, find_unsused_parameters));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean isCheck_reduction() {
+ return check_reduction;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void setCheck_reduction(boolean newCheck_reduction) {
+ boolean oldCheck_reduction = check_reduction;
+ check_reduction = newCheck_reduction;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, DataParallel_layersPackage.DISTRIBUTED_DATA_PARALLEL__CHECK_REDUCTION, oldCheck_reduction, check_reduction));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case DataParallel_layersPackage.DISTRIBUTED_DATA_PARALLEL__BROADCAST_BUFFERS:
+ return isBroadcast_buffers();
+ case DataParallel_layersPackage.DISTRIBUTED_DATA_PARALLEL__PROCESS_GROUP:
+ return getProcess_group();
+ case DataParallel_layersPackage.DISTRIBUTED_DATA_PARALLEL__BUCKET_CAP_MB:
+ return getBucket_cap_mb();
+ case DataParallel_layersPackage.DISTRIBUTED_DATA_PARALLEL__FIND_UNSUSED_PARAMETERS:
+ return isFind_unsused_parameters();
+ case DataParallel_layersPackage.DISTRIBUTED_DATA_PARALLEL__CHECK_REDUCTION:
+ return isCheck_reduction();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case DataParallel_layersPackage.DISTRIBUTED_DATA_PARALLEL__BROADCAST_BUFFERS:
+ setBroadcast_buffers((Boolean)newValue);
+ return;
+ case DataParallel_layersPackage.DISTRIBUTED_DATA_PARALLEL__PROCESS_GROUP:
+ setProcess_group((Integer)newValue);
+ return;
+ case DataParallel_layersPackage.DISTRIBUTED_DATA_PARALLEL__BUCKET_CAP_MB:
+ setBucket_cap_mb((Integer)newValue);
+ return;
+ case DataParallel_layersPackage.DISTRIBUTED_DATA_PARALLEL__FIND_UNSUSED_PARAMETERS:
+ setFind_unsused_parameters((Boolean)newValue);
+ return;
+ case DataParallel_layersPackage.DISTRIBUTED_DATA_PARALLEL__CHECK_REDUCTION:
+ setCheck_reduction((Boolean)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case DataParallel_layersPackage.DISTRIBUTED_DATA_PARALLEL__BROADCAST_BUFFERS:
+ setBroadcast_buffers(BROADCAST_BUFFERS_EDEFAULT);
+ return;
+ case DataParallel_layersPackage.DISTRIBUTED_DATA_PARALLEL__PROCESS_GROUP:
+ setProcess_group(PROCESS_GROUP_EDEFAULT);
+ return;
+ case DataParallel_layersPackage.DISTRIBUTED_DATA_PARALLEL__BUCKET_CAP_MB:
+ setBucket_cap_mb(BUCKET_CAP_MB_EDEFAULT);
+ return;
+ case DataParallel_layersPackage.DISTRIBUTED_DATA_PARALLEL__FIND_UNSUSED_PARAMETERS:
+ setFind_unsused_parameters(FIND_UNSUSED_PARAMETERS_EDEFAULT);
+ return;
+ case DataParallel_layersPackage.DISTRIBUTED_DATA_PARALLEL__CHECK_REDUCTION:
+ setCheck_reduction(CHECK_REDUCTION_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case DataParallel_layersPackage.DISTRIBUTED_DATA_PARALLEL__BROADCAST_BUFFERS:
+ return broadcast_buffers != BROADCAST_BUFFERS_EDEFAULT;
+ case DataParallel_layersPackage.DISTRIBUTED_DATA_PARALLEL__PROCESS_GROUP:
+ return process_group != PROCESS_GROUP_EDEFAULT;
+ case DataParallel_layersPackage.DISTRIBUTED_DATA_PARALLEL__BUCKET_CAP_MB:
+ return bucket_cap_mb != BUCKET_CAP_MB_EDEFAULT;
+ case DataParallel_layersPackage.DISTRIBUTED_DATA_PARALLEL__FIND_UNSUSED_PARAMETERS:
+ return find_unsused_parameters != FIND_UNSUSED_PARAMETERS_EDEFAULT;
+ case DataParallel_layersPackage.DISTRIBUTED_DATA_PARALLEL__CHECK_REDUCTION:
+ return check_reduction != CHECK_REDUCTION_EDEFAULT;
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuilder result = new StringBuilder(super.toString());
+ result.append(" (broadcast_buffers: "); //$NON-NLS-1$
+ result.append(broadcast_buffers);
+ result.append(", process_group: "); //$NON-NLS-1$
+ result.append(process_group);
+ result.append(", bucket_cap_mb: "); //$NON-NLS-1$
+ result.append(bucket_cap_mb);
+ result.append(", find_unsused_parameters: "); //$NON-NLS-1$
+ result.append(find_unsused_parameters);
+ result.append(", check_reduction: "); //$NON-NLS-1$
+ result.append(check_reduction);
+ result.append(')');
+ return result.toString();
+ }
+
+} //DistributedDataParallelImpl
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/DataParallel_layers/util/DataParallel_layersAdapterFactory.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/DataParallel_layers/util/DataParallel_layersAdapterFactory.java
new file mode 100644
index 0000000..5670f4b
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/DataParallel_layers/util/DataParallel_layersAdapterFactory.java
@@ -0,0 +1,184 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers.util;
+
+import org.eclipse.emf.common.notify.Adapter;
+import org.eclipse.emf.common.notify.Notifier;
+
+import org.eclipse.emf.common.notify.impl.AdapterFactoryImpl;
+
+import org.eclipse.emf.ecore.EObject;
+
+import org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers.*;
+import org.eclipse.papyrus.aiml.profile.AIML.Module.Model;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Adapter Factory</b> for the model.
+ * It provides an adapter <code>createXXX</code> method for each class of the model.
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers.DataParallel_layersPackage
+ * @generated
+ */
+public class DataParallel_layersAdapterFactory extends AdapterFactoryImpl {
+ /**
+ * The cached model package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected static DataParallel_layersPackage modelPackage;
+
+ /**
+ * Creates an instance of the adapter factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public DataParallel_layersAdapterFactory() {
+ if (modelPackage == null) {
+ modelPackage = DataParallel_layersPackage.eINSTANCE;
+ }
+ }
+
+ /**
+ * Returns whether this factory is applicable for the type of the object.
+ * <!-- begin-user-doc -->
+ * This implementation returns <code>true</code> if the object is either the model's package or is an instance object of the model.
+ * <!-- end-user-doc -->
+ * @return whether this factory is applicable for the type of the object.
+ * @generated
+ */
+ @Override
+ public boolean isFactoryForType(Object object) {
+ if (object == modelPackage) {
+ return true;
+ }
+ if (object instanceof EObject) {
+ return ((EObject)object).eClass().getEPackage() == modelPackage;
+ }
+ return false;
+ }
+
+ /**
+ * The switch that delegates to the <code>createXXX</code> methods.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected DataParallel_layersSwitch<Adapter> modelSwitch =
+ new DataParallel_layersSwitch<Adapter>() {
+ @Override
+ public Adapter caseDataParallel_layers(DataParallel_layers object) {
+ return createDataParallel_layersAdapter();
+ }
+ @Override
+ public Adapter caseDistributedDataParallel(DistributedDataParallel object) {
+ return createDistributedDataParallelAdapter();
+ }
+ @Override
+ public Adapter caseDataParallel(DataParallel object) {
+ return createDataParallelAdapter();
+ }
+ @Override
+ public Adapter caseModel(Model object) {
+ return createModelAdapter();
+ }
+ @Override
+ public Adapter defaultCase(EObject object) {
+ return createEObjectAdapter();
+ }
+ };
+
+ /**
+ * Creates an adapter for the <code>target</code>.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param target the object to adapt.
+ * @return the adapter for the <code>target</code>.
+ * @generated
+ */
+ @Override
+ public Adapter createAdapter(Notifier target) {
+ return modelSwitch.doSwitch((EObject)target);
+ }
+
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers.DataParallel_layers <em>Data Parallel layers</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers.DataParallel_layers
+ * @generated
+ */
+ public Adapter createDataParallel_layersAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers.DistributedDataParallel <em>Distributed Data Parallel</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers.DistributedDataParallel
+ * @generated
+ */
+ public Adapter createDistributedDataParallelAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers.DataParallel <em>Data Parallel</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers.DataParallel
+ * @generated
+ */
+ public Adapter createDataParallelAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.aiml.profile.AIML.Module.Model <em>Model</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Module.Model
+ * @generated
+ */
+ public Adapter createModelAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for the default case.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @generated
+ */
+ public Adapter createEObjectAdapter() {
+ return null;
+ }
+
+} //DataParallel_layersAdapterFactory
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/DataParallel_layers/util/DataParallel_layersSwitch.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/DataParallel_layers/util/DataParallel_layersSwitch.java
new file mode 100644
index 0000000..3dfcb1d
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/DataParallel_layers/util/DataParallel_layersSwitch.java
@@ -0,0 +1,182 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers.util;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+
+import org.eclipse.emf.ecore.util.Switch;
+
+import org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers.*;
+import org.eclipse.papyrus.aiml.profile.AIML.Module.Model;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Switch</b> for the model's inheritance hierarchy.
+ * It supports the call {@link #doSwitch(EObject) doSwitch(object)}
+ * to invoke the <code>caseXXX</code> method for each class of the model,
+ * starting with the actual class of the object
+ * and proceeding up the inheritance hierarchy
+ * until a non-null result is returned,
+ * which is the result of the switch.
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers.DataParallel_layersPackage
+ * @generated
+ */
+public class DataParallel_layersSwitch<T> extends Switch<T> {
+ /**
+ * The cached model package
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected static DataParallel_layersPackage modelPackage;
+
+ /**
+ * Creates an instance of the switch.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public DataParallel_layersSwitch() {
+ if (modelPackage == null) {
+ modelPackage = DataParallel_layersPackage.eINSTANCE;
+ }
+ }
+
+ /**
+ * Checks whether this is a switch for the given package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param ePackage the package in question.
+ * @return whether this is a switch for the given package.
+ * @generated
+ */
+ @Override
+ protected boolean isSwitchFor(EPackage ePackage) {
+ return ePackage == modelPackage;
+ }
+
+ /**
+ * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the first non-null result returned by a <code>caseXXX</code> call.
+ * @generated
+ */
+ @Override
+ protected T doSwitch(int classifierID, EObject theEObject) {
+ switch (classifierID) {
+ case DataParallel_layersPackage.DATA_PARALLEL_LAYERS: {
+ DataParallel_layers dataParallel_layers = (DataParallel_layers)theEObject;
+ T result = caseDataParallel_layers(dataParallel_layers);
+ if (result == null) result = caseModel(dataParallel_layers);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case DataParallel_layersPackage.DISTRIBUTED_DATA_PARALLEL: {
+ DistributedDataParallel distributedDataParallel = (DistributedDataParallel)theEObject;
+ T result = caseDistributedDataParallel(distributedDataParallel);
+ if (result == null) result = caseDataParallel_layers(distributedDataParallel);
+ if (result == null) result = caseModel(distributedDataParallel);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case DataParallel_layersPackage.DATA_PARALLEL: {
+ DataParallel dataParallel = (DataParallel)theEObject;
+ T result = caseDataParallel(dataParallel);
+ if (result == null) result = caseDataParallel_layers(dataParallel);
+ if (result == null) result = caseModel(dataParallel);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ default: return defaultCase(theEObject);
+ }
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Data Parallel layers</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Data Parallel layers</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseDataParallel_layers(DataParallel_layers object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Distributed Data Parallel</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Distributed Data Parallel</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseDistributedDataParallel(DistributedDataParallel object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Data Parallel</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Data Parallel</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseDataParallel(DataParallel object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Model</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Model</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseModel(Model object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>EObject</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch, but this is the last case anyway.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>EObject</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject)
+ * @generated
+ */
+ @Override
+ public T defaultCase(EObject object) {
+ return null;
+ }
+
+} //DataParallel_layersSwitch
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Distance_functions/CosineSimilarity.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Distance_functions/CosineSimilarity.java
new file mode 100644
index 0000000..3ba897d
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Distance_functions/CosineSimilarity.java
@@ -0,0 +1,58 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Distance_functions;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Cosine Similarity</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Distance_functions.CosineSimilarity#getDim <em>Dim</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Distance_functions.Distance_functionsPackage#getCosineSimilarity()
+ * @model
+ * @generated
+ */
+public interface CosineSimilarity extends Distance_functions {
+ /**
+ * Returns the value of the '<em><b>Dim</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Dim</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Dim</em>' attribute.
+ * @see #setDim(int)
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Distance_functions.Distance_functionsPackage#getCosineSimilarity_Dim()
+ * @model dataType="org.eclipse.uml2.types.Integer" ordered="false"
+ * @generated
+ */
+ int getDim();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.aiml.profile.AIML.Distance_functions.CosineSimilarity#getDim <em>Dim</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Dim</em>' attribute.
+ * @see #getDim()
+ * @generated
+ */
+ void setDim(int value);
+
+} // CosineSimilarity
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Distance_functions/Distance_functions.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Distance_functions/Distance_functions.java
new file mode 100644
index 0000000..0e869a8
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Distance_functions/Distance_functions.java
@@ -0,0 +1,59 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Distance_functions;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Module.Model;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Distance functions</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Distance_functions.Distance_functions#getEps <em>Eps</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Distance_functions.Distance_functionsPackage#getDistance_functions()
+ * @model abstract="true"
+ * @generated
+ */
+public interface Distance_functions extends Model {
+ /**
+ * Returns the value of the '<em><b>Eps</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Eps</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Eps</em>' attribute.
+ * @see #setEps(double)
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Distance_functions.Distance_functionsPackage#getDistance_functions_Eps()
+ * @model dataType="org.eclipse.uml2.types.Real" ordered="false"
+ * @generated
+ */
+ double getEps();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.aiml.profile.AIML.Distance_functions.Distance_functions#getEps <em>Eps</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Eps</em>' attribute.
+ * @see #getEps()
+ * @generated
+ */
+ void setEps(double value);
+
+} // Distance_functions
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Distance_functions/Distance_functionsFactory.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Distance_functions/Distance_functionsFactory.java
new file mode 100644
index 0000000..70bb555
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Distance_functions/Distance_functionsFactory.java
@@ -0,0 +1,60 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Distance_functions;
+
+import org.eclipse.emf.ecore.EFactory;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Factory</b> for the model.
+ * It provides a create method for each non-abstract class of the model.
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Distance_functions.Distance_functionsPackage
+ * @generated
+ */
+public interface Distance_functionsFactory extends EFactory {
+ /**
+ * The singleton instance of the factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ Distance_functionsFactory eINSTANCE = org.eclipse.papyrus.aiml.profile.AIML.Distance_functions.impl.Distance_functionsFactoryImpl.init();
+
+ /**
+ * Returns a new object of class '<em>Cosine Similarity</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Cosine Similarity</em>'.
+ * @generated
+ */
+ CosineSimilarity createCosineSimilarity();
+
+ /**
+ * Returns a new object of class '<em>Pairwise Distance</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Pairwise Distance</em>'.
+ * @generated
+ */
+ PairwiseDistance createPairwiseDistance();
+
+ /**
+ * Returns the package supported by this factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the package supported by this factory.
+ * @generated
+ */
+ Distance_functionsPackage getDistance_functionsPackage();
+
+} //Distance_functionsFactory
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Distance_functions/Distance_functionsPackage.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Distance_functions/Distance_functionsPackage.java
new file mode 100644
index 0000000..a3826bf
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Distance_functions/Distance_functionsPackage.java
@@ -0,0 +1,558 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Distance_functions;
+
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Module.ModulePackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Package</b> for the model.
+ * It contains accessors for the meta objects to represent
+ * <ul>
+ * <li>each class,</li>
+ * <li>each feature of each class,</li>
+ * <li>each operation of each class,</li>
+ * <li>each enum,</li>
+ * <li>and each data type</li>
+ * </ul>
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Distance_functions.Distance_functionsFactory
+ * @model kind="package"
+ * @generated
+ */
+public interface Distance_functionsPackage extends EPackage {
+ /**
+ * The package name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNAME = "Distance_functions"; //$NON-NLS-1$
+
+ /**
+ * The package namespace URI.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNS_URI = "http://www.eclipse.org/papyrus/AIML/distance/1"; //$NON-NLS-1$
+
+ /**
+ * The package namespace name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNS_PREFIX = "AIML.Distance_functions"; //$NON-NLS-1$
+
+ /**
+ * The singleton instance of the package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ Distance_functionsPackage eINSTANCE = org.eclipse.papyrus.aiml.profile.AIML.Distance_functions.impl.Distance_functionsPackageImpl.init();
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.aiml.profile.AIML.Distance_functions.impl.Distance_functionsImpl <em>Distance functions</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Distance_functions.impl.Distance_functionsImpl
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Distance_functions.impl.Distance_functionsPackageImpl#getDistance_functions()
+ * @generated
+ */
+ int DISTANCE_FUNCTIONS = 0;
+
+ /**
+ * The feature id for the '<em><b>Base Class</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DISTANCE_FUNCTIONS__BASE_CLASS = ModulePackage.MODEL__BASE_CLASS;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DISTANCE_FUNCTIONS__NAME = ModulePackage.MODEL__NAME;
+
+ /**
+ * The feature id for the '<em><b>Data</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DISTANCE_FUNCTIONS__DATA = ModulePackage.MODEL__DATA;
+
+ /**
+ * The feature id for the '<em><b>Requires grad</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DISTANCE_FUNCTIONS__REQUIRES_GRAD = ModulePackage.MODEL__REQUIRES_GRAD;
+
+ /**
+ * The feature id for the '<em><b>Sub Module</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DISTANCE_FUNCTIONS__SUB_MODULE = ModulePackage.MODEL__SUB_MODULE;
+
+ /**
+ * The feature id for the '<em><b>Optimizer</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DISTANCE_FUNCTIONS__OPTIMIZER = ModulePackage.MODEL__OPTIMIZER;
+
+ /**
+ * The feature id for the '<em><b>Loss</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DISTANCE_FUNCTIONS__LOSS = ModulePackage.MODEL__LOSS;
+
+ /**
+ * The feature id for the '<em><b>Eps</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DISTANCE_FUNCTIONS__EPS = ModulePackage.MODEL_FEATURE_COUNT + 0;
+
+ /**
+ * The number of structural features of the '<em>Distance functions</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DISTANCE_FUNCTIONS_FEATURE_COUNT = ModulePackage.MODEL_FEATURE_COUNT + 1;
+
+ /**
+ * The number of operations of the '<em>Distance functions</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DISTANCE_FUNCTIONS_OPERATION_COUNT = ModulePackage.MODEL_OPERATION_COUNT + 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.aiml.profile.AIML.Distance_functions.impl.CosineSimilarityImpl <em>Cosine Similarity</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Distance_functions.impl.CosineSimilarityImpl
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Distance_functions.impl.Distance_functionsPackageImpl#getCosineSimilarity()
+ * @generated
+ */
+ int COSINE_SIMILARITY = 1;
+
+ /**
+ * The feature id for the '<em><b>Base Class</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int COSINE_SIMILARITY__BASE_CLASS = DISTANCE_FUNCTIONS__BASE_CLASS;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int COSINE_SIMILARITY__NAME = DISTANCE_FUNCTIONS__NAME;
+
+ /**
+ * The feature id for the '<em><b>Data</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int COSINE_SIMILARITY__DATA = DISTANCE_FUNCTIONS__DATA;
+
+ /**
+ * The feature id for the '<em><b>Requires grad</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int COSINE_SIMILARITY__REQUIRES_GRAD = DISTANCE_FUNCTIONS__REQUIRES_GRAD;
+
+ /**
+ * The feature id for the '<em><b>Sub Module</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int COSINE_SIMILARITY__SUB_MODULE = DISTANCE_FUNCTIONS__SUB_MODULE;
+
+ /**
+ * The feature id for the '<em><b>Optimizer</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int COSINE_SIMILARITY__OPTIMIZER = DISTANCE_FUNCTIONS__OPTIMIZER;
+
+ /**
+ * The feature id for the '<em><b>Loss</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int COSINE_SIMILARITY__LOSS = DISTANCE_FUNCTIONS__LOSS;
+
+ /**
+ * The feature id for the '<em><b>Eps</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int COSINE_SIMILARITY__EPS = DISTANCE_FUNCTIONS__EPS;
+
+ /**
+ * The feature id for the '<em><b>Dim</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int COSINE_SIMILARITY__DIM = DISTANCE_FUNCTIONS_FEATURE_COUNT + 0;
+
+ /**
+ * The number of structural features of the '<em>Cosine Similarity</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int COSINE_SIMILARITY_FEATURE_COUNT = DISTANCE_FUNCTIONS_FEATURE_COUNT + 1;
+
+ /**
+ * The number of operations of the '<em>Cosine Similarity</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int COSINE_SIMILARITY_OPERATION_COUNT = DISTANCE_FUNCTIONS_OPERATION_COUNT + 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.aiml.profile.AIML.Distance_functions.impl.PairwiseDistanceImpl <em>Pairwise Distance</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Distance_functions.impl.PairwiseDistanceImpl
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Distance_functions.impl.Distance_functionsPackageImpl#getPairwiseDistance()
+ * @generated
+ */
+ int PAIRWISE_DISTANCE = 2;
+
+ /**
+ * The feature id for the '<em><b>Base Class</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int PAIRWISE_DISTANCE__BASE_CLASS = DISTANCE_FUNCTIONS__BASE_CLASS;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int PAIRWISE_DISTANCE__NAME = DISTANCE_FUNCTIONS__NAME;
+
+ /**
+ * The feature id for the '<em><b>Data</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int PAIRWISE_DISTANCE__DATA = DISTANCE_FUNCTIONS__DATA;
+
+ /**
+ * The feature id for the '<em><b>Requires grad</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int PAIRWISE_DISTANCE__REQUIRES_GRAD = DISTANCE_FUNCTIONS__REQUIRES_GRAD;
+
+ /**
+ * The feature id for the '<em><b>Sub Module</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int PAIRWISE_DISTANCE__SUB_MODULE = DISTANCE_FUNCTIONS__SUB_MODULE;
+
+ /**
+ * The feature id for the '<em><b>Optimizer</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int PAIRWISE_DISTANCE__OPTIMIZER = DISTANCE_FUNCTIONS__OPTIMIZER;
+
+ /**
+ * The feature id for the '<em><b>Loss</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int PAIRWISE_DISTANCE__LOSS = DISTANCE_FUNCTIONS__LOSS;
+
+ /**
+ * The feature id for the '<em><b>Eps</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int PAIRWISE_DISTANCE__EPS = DISTANCE_FUNCTIONS__EPS;
+
+ /**
+ * The feature id for the '<em><b>P</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int PAIRWISE_DISTANCE__P = DISTANCE_FUNCTIONS_FEATURE_COUNT + 0;
+
+ /**
+ * The feature id for the '<em><b>Keepdim</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int PAIRWISE_DISTANCE__KEEPDIM = DISTANCE_FUNCTIONS_FEATURE_COUNT + 1;
+
+ /**
+ * The number of structural features of the '<em>Pairwise Distance</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int PAIRWISE_DISTANCE_FEATURE_COUNT = DISTANCE_FUNCTIONS_FEATURE_COUNT + 2;
+
+ /**
+ * The number of operations of the '<em>Pairwise Distance</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int PAIRWISE_DISTANCE_OPERATION_COUNT = DISTANCE_FUNCTIONS_OPERATION_COUNT + 0;
+
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.aiml.profile.AIML.Distance_functions.Distance_functions <em>Distance functions</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Distance functions</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Distance_functions.Distance_functions
+ * @generated
+ */
+ EClass getDistance_functions();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.aiml.profile.AIML.Distance_functions.Distance_functions#getEps <em>Eps</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Eps</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Distance_functions.Distance_functions#getEps()
+ * @see #getDistance_functions()
+ * @generated
+ */
+ EAttribute getDistance_functions_Eps();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.aiml.profile.AIML.Distance_functions.CosineSimilarity <em>Cosine Similarity</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Cosine Similarity</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Distance_functions.CosineSimilarity
+ * @generated
+ */
+ EClass getCosineSimilarity();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.aiml.profile.AIML.Distance_functions.CosineSimilarity#getDim <em>Dim</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Dim</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Distance_functions.CosineSimilarity#getDim()
+ * @see #getCosineSimilarity()
+ * @generated
+ */
+ EAttribute getCosineSimilarity_Dim();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.aiml.profile.AIML.Distance_functions.PairwiseDistance <em>Pairwise Distance</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Pairwise Distance</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Distance_functions.PairwiseDistance
+ * @generated
+ */
+ EClass getPairwiseDistance();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.aiml.profile.AIML.Distance_functions.PairwiseDistance#getP <em>P</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>P</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Distance_functions.PairwiseDistance#getP()
+ * @see #getPairwiseDistance()
+ * @generated
+ */
+ EAttribute getPairwiseDistance_P();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.aiml.profile.AIML.Distance_functions.PairwiseDistance#isKeepdim <em>Keepdim</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Keepdim</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Distance_functions.PairwiseDistance#isKeepdim()
+ * @see #getPairwiseDistance()
+ * @generated
+ */
+ EAttribute getPairwiseDistance_Keepdim();
+
+ /**
+ * Returns the factory that creates the instances of the model.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the factory that creates the instances of the model.
+ * @generated
+ */
+ Distance_functionsFactory getDistance_functionsFactory();
+
+ /**
+ * <!-- begin-user-doc -->
+ * Defines literals for the meta objects that represent
+ * <ul>
+ * <li>each class,</li>
+ * <li>each feature of each class,</li>
+ * <li>each operation of each class,</li>
+ * <li>each enum,</li>
+ * <li>and each data type</li>
+ * </ul>
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ interface Literals {
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.aiml.profile.AIML.Distance_functions.impl.Distance_functionsImpl <em>Distance functions</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Distance_functions.impl.Distance_functionsImpl
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Distance_functions.impl.Distance_functionsPackageImpl#getDistance_functions()
+ * @generated
+ */
+ EClass DISTANCE_FUNCTIONS = eINSTANCE.getDistance_functions();
+
+ /**
+ * The meta object literal for the '<em><b>Eps</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute DISTANCE_FUNCTIONS__EPS = eINSTANCE.getDistance_functions_Eps();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.aiml.profile.AIML.Distance_functions.impl.CosineSimilarityImpl <em>Cosine Similarity</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Distance_functions.impl.CosineSimilarityImpl
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Distance_functions.impl.Distance_functionsPackageImpl#getCosineSimilarity()
+ * @generated
+ */
+ EClass COSINE_SIMILARITY = eINSTANCE.getCosineSimilarity();
+
+ /**
+ * The meta object literal for the '<em><b>Dim</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute COSINE_SIMILARITY__DIM = eINSTANCE.getCosineSimilarity_Dim();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.aiml.profile.AIML.Distance_functions.impl.PairwiseDistanceImpl <em>Pairwise Distance</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Distance_functions.impl.PairwiseDistanceImpl
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Distance_functions.impl.Distance_functionsPackageImpl#getPairwiseDistance()
+ * @generated
+ */
+ EClass PAIRWISE_DISTANCE = eINSTANCE.getPairwiseDistance();
+
+ /**
+ * The meta object literal for the '<em><b>P</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute PAIRWISE_DISTANCE__P = eINSTANCE.getPairwiseDistance_P();
+
+ /**
+ * The meta object literal for the '<em><b>Keepdim</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute PAIRWISE_DISTANCE__KEEPDIM = eINSTANCE.getPairwiseDistance_Keepdim();
+
+ }
+
+} //Distance_functionsPackage
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Distance_functions/PairwiseDistance.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Distance_functions/PairwiseDistance.java
new file mode 100644
index 0000000..ad0a2a1
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Distance_functions/PairwiseDistance.java
@@ -0,0 +1,85 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Distance_functions;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Pairwise Distance</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Distance_functions.PairwiseDistance#getP <em>P</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Distance_functions.PairwiseDistance#isKeepdim <em>Keepdim</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Distance_functions.Distance_functionsPackage#getPairwiseDistance()
+ * @model
+ * @generated
+ */
+public interface PairwiseDistance extends Distance_functions {
+ /**
+ * Returns the value of the '<em><b>P</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>P</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>P</em>' attribute.
+ * @see #setP(double)
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Distance_functions.Distance_functionsPackage#getPairwiseDistance_P()
+ * @model dataType="org.eclipse.uml2.types.Real" ordered="false"
+ * @generated
+ */
+ double getP();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.aiml.profile.AIML.Distance_functions.PairwiseDistance#getP <em>P</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>P</em>' attribute.
+ * @see #getP()
+ * @generated
+ */
+ void setP(double value);
+
+ /**
+ * Returns the value of the '<em><b>Keepdim</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Keepdim</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Keepdim</em>' attribute.
+ * @see #setKeepdim(boolean)
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Distance_functions.Distance_functionsPackage#getPairwiseDistance_Keepdim()
+ * @model dataType="org.eclipse.uml2.types.Boolean" ordered="false"
+ * @generated
+ */
+ boolean isKeepdim();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.aiml.profile.AIML.Distance_functions.PairwiseDistance#isKeepdim <em>Keepdim</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Keepdim</em>' attribute.
+ * @see #isKeepdim()
+ * @generated
+ */
+ void setKeepdim(boolean value);
+
+} // PairwiseDistance
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Distance_functions/impl/CosineSimilarityImpl.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Distance_functions/impl/CosineSimilarityImpl.java
new file mode 100644
index 0000000..e875fd4
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Distance_functions/impl/CosineSimilarityImpl.java
@@ -0,0 +1,173 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Distance_functions.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Distance_functions.CosineSimilarity;
+import org.eclipse.papyrus.aiml.profile.AIML.Distance_functions.Distance_functionsPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Cosine Similarity</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Distance_functions.impl.CosineSimilarityImpl#getDim <em>Dim</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class CosineSimilarityImpl extends Distance_functionsImpl implements CosineSimilarity {
+ /**
+ * The default value of the '{@link #getDim() <em>Dim</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getDim()
+ * @generated
+ * @ordered
+ */
+ protected static final int DIM_EDEFAULT = 0;
+
+ /**
+ * The cached value of the '{@link #getDim() <em>Dim</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getDim()
+ * @generated
+ * @ordered
+ */
+ protected int dim = DIM_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected CosineSimilarityImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return Distance_functionsPackage.Literals.COSINE_SIMILARITY;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public int getDim() {
+ return dim;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void setDim(int newDim) {
+ int oldDim = dim;
+ dim = newDim;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, Distance_functionsPackage.COSINE_SIMILARITY__DIM, oldDim, dim));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case Distance_functionsPackage.COSINE_SIMILARITY__DIM:
+ return getDim();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case Distance_functionsPackage.COSINE_SIMILARITY__DIM:
+ setDim((Integer)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case Distance_functionsPackage.COSINE_SIMILARITY__DIM:
+ setDim(DIM_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case Distance_functionsPackage.COSINE_SIMILARITY__DIM:
+ return dim != DIM_EDEFAULT;
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuilder result = new StringBuilder(super.toString());
+ result.append(" (dim: "); //$NON-NLS-1$
+ result.append(dim);
+ result.append(')');
+ return result.toString();
+ }
+
+} //CosineSimilarityImpl
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Distance_functions/impl/Distance_functionsFactoryImpl.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Distance_functions/impl/Distance_functionsFactoryImpl.java
new file mode 100644
index 0000000..ed36a6a
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Distance_functions/impl/Distance_functionsFactoryImpl.java
@@ -0,0 +1,118 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Distance_functions.impl;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+
+import org.eclipse.emf.ecore.impl.EFactoryImpl;
+
+import org.eclipse.emf.ecore.plugin.EcorePlugin;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Distance_functions.*;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model <b>Factory</b>.
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class Distance_functionsFactoryImpl extends EFactoryImpl implements Distance_functionsFactory {
+ /**
+ * Creates the default factory implementation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static Distance_functionsFactory init() {
+ try {
+ Distance_functionsFactory theDistance_functionsFactory = (Distance_functionsFactory)EPackage.Registry.INSTANCE.getEFactory(Distance_functionsPackage.eNS_URI);
+ if (theDistance_functionsFactory != null) {
+ return theDistance_functionsFactory;
+ }
+ }
+ catch (Exception exception) {
+ EcorePlugin.INSTANCE.log(exception);
+ }
+ return new Distance_functionsFactoryImpl();
+ }
+
+ /**
+ * Creates an instance of the factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Distance_functionsFactoryImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EObject create(EClass eClass) {
+ switch (eClass.getClassifierID()) {
+ case Distance_functionsPackage.COSINE_SIMILARITY: return createCosineSimilarity();
+ case Distance_functionsPackage.PAIRWISE_DISTANCE: return createPairwiseDistance();
+ default:
+ throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier"); //$NON-NLS-1$ //$NON-NLS-2$
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public CosineSimilarity createCosineSimilarity() {
+ CosineSimilarityImpl cosineSimilarity = new CosineSimilarityImpl();
+ return cosineSimilarity;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public PairwiseDistance createPairwiseDistance() {
+ PairwiseDistanceImpl pairwiseDistance = new PairwiseDistanceImpl();
+ return pairwiseDistance;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Distance_functionsPackage getDistance_functionsPackage() {
+ return (Distance_functionsPackage)getEPackage();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @deprecated
+ * @generated
+ */
+ @Deprecated
+ public static Distance_functionsPackage getPackage() {
+ return Distance_functionsPackage.eINSTANCE;
+ }
+
+} //Distance_functionsFactoryImpl
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Distance_functions/impl/Distance_functionsImpl.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Distance_functions/impl/Distance_functionsImpl.java
new file mode 100644
index 0000000..d657868
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Distance_functions/impl/Distance_functionsImpl.java
@@ -0,0 +1,174 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Distance_functions.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Distance_functions.Distance_functions;
+import org.eclipse.papyrus.aiml.profile.AIML.Distance_functions.Distance_functionsPackage;
+import org.eclipse.papyrus.aiml.profile.AIML.Module.impl.ModelImpl;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Distance functions</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Distance_functions.impl.Distance_functionsImpl#getEps <em>Eps</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public abstract class Distance_functionsImpl extends ModelImpl implements Distance_functions {
+ /**
+ * The default value of the '{@link #getEps() <em>Eps</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getEps()
+ * @generated
+ * @ordered
+ */
+ protected static final double EPS_EDEFAULT = 0.0;
+
+ /**
+ * The cached value of the '{@link #getEps() <em>Eps</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getEps()
+ * @generated
+ * @ordered
+ */
+ protected double eps = EPS_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected Distance_functionsImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return Distance_functionsPackage.Literals.DISTANCE_FUNCTIONS;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public double getEps() {
+ return eps;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void setEps(double newEps) {
+ double oldEps = eps;
+ eps = newEps;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, Distance_functionsPackage.DISTANCE_FUNCTIONS__EPS, oldEps, eps));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case Distance_functionsPackage.DISTANCE_FUNCTIONS__EPS:
+ return getEps();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case Distance_functionsPackage.DISTANCE_FUNCTIONS__EPS:
+ setEps((Double)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case Distance_functionsPackage.DISTANCE_FUNCTIONS__EPS:
+ setEps(EPS_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case Distance_functionsPackage.DISTANCE_FUNCTIONS__EPS:
+ return eps != EPS_EDEFAULT;
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuilder result = new StringBuilder(super.toString());
+ result.append(" (eps: "); //$NON-NLS-1$
+ result.append(eps);
+ result.append(')');
+ return result.toString();
+ }
+
+} //Distance_functionsImpl
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Distance_functions/impl/Distance_functionsPackageImpl.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Distance_functions/impl/Distance_functionsPackageImpl.java
new file mode 100644
index 0000000..1399efc
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Distance_functions/impl/Distance_functionsPackageImpl.java
@@ -0,0 +1,453 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Distance_functions.impl;
+
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EcorePackage;
+
+import org.eclipse.emf.ecore.impl.EPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.AIMLPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution_layersPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.Convolution_layersPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers.DataParallel_layersPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers.impl.DataParallel_layersPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Distance_functions.CosineSimilarity;
+import org.eclipse.papyrus.aiml.profile.AIML.Distance_functions.Distance_functions;
+import org.eclipse.papyrus.aiml.profile.AIML.Distance_functions.Distance_functionsFactory;
+import org.eclipse.papyrus.aiml.profile.AIML.Distance_functions.Distance_functionsPackage;
+import org.eclipse.papyrus.aiml.profile.AIML.Distance_functions.PairwiseDistance;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.Dropout_layersPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.impl.Dropout_layersPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.Layer_weight_constraintsPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.impl.Layer_weight_constraintsPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.Layer_weight_initializersPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.impl.Layer_weight_initializersPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers.Layer_weight_regularizersPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers.impl.Layer_weight_regularizersPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.Linear_layersPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.impl.Linear_layersPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Loss_functions.Loss_functionsPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Loss_functions.impl.Loss_functionsPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Module.ModulePackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Module.impl.ModulePackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.NonLinearActivations.NonLinearActivationsPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.NonLinearActivations.impl.NonLinearActivationsPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Normalization_layers.Normalization_layersPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Normalization_layers.impl.Normalization_layersPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Padding_layers.Padding_layersPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Padding_layers.impl.Padding_layersPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Pooling_layers.Pooling_layersPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Pooling_layers.impl.Pooling_layersPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Recurrent_layers.Recurrent_layersPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Recurrent_layers.impl.Recurrent_layersPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.SoftMinMaxActivations.SoftMinMaxActivationsPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.SoftMinMaxActivations.impl.SoftMinMaxActivationsPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Sparse_layers.Sparse_layersPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Sparse_layers.impl.Sparse_layersPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Tensor.TensorPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Tensor.impl.TensorPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Transformer_layers.Transformer_layersPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Transformer_layers.impl.Transformer_layersPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Vision_layers.Vision_layersPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Vision_layers.impl.Vision_layersPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.datatypes.DatatypesPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.datatypes.impl.DatatypesPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.impl.AIMLPackageImpl;
+
+import org.eclipse.uml2.types.TypesPackage;
+
+import org.eclipse.uml2.uml.UMLPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model <b>Package</b>.
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class Distance_functionsPackageImpl extends EPackageImpl implements Distance_functionsPackage {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass distance_functionsEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass cosineSimilarityEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass pairwiseDistanceEClass = null;
+
+ /**
+ * Creates an instance of the model <b>Package</b>, registered with
+ * {@link org.eclipse.emf.ecore.EPackage.Registry EPackage.Registry} by the package
+ * package URI value.
+ * <p>Note: the correct way to create the package is via the static
+ * factory method {@link #init init()}, which also performs
+ * initialization of the package, or returns the registered package,
+ * if one already exists.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.emf.ecore.EPackage.Registry
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Distance_functions.Distance_functionsPackage#eNS_URI
+ * @see #init()
+ * @generated
+ */
+ private Distance_functionsPackageImpl() {
+ super(eNS_URI, Distance_functionsFactory.eINSTANCE);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private static boolean isInited = false;
+
+ /**
+ * Creates, registers, and initializes the <b>Package</b> for this model, and for any others upon which it depends.
+ *
+ * <p>This method is used to initialize {@link Distance_functionsPackage#eINSTANCE} when that field is accessed.
+ * Clients should not invoke it directly. Instead, they should simply access that field to obtain the package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #eNS_URI
+ * @see #createPackageContents()
+ * @see #initializePackageContents()
+ * @generated
+ */
+ public static Distance_functionsPackage init() {
+ if (isInited) return (Distance_functionsPackage)EPackage.Registry.INSTANCE.getEPackage(Distance_functionsPackage.eNS_URI);
+
+ // Obtain or create and register package
+ Object registeredDistance_functionsPackage = EPackage.Registry.INSTANCE.get(eNS_URI);
+ Distance_functionsPackageImpl theDistance_functionsPackage = registeredDistance_functionsPackage instanceof Distance_functionsPackageImpl ? (Distance_functionsPackageImpl)registeredDistance_functionsPackage : new Distance_functionsPackageImpl();
+
+ isInited = true;
+
+ // Initialize simple dependencies
+ EcorePackage.eINSTANCE.eClass();
+ TypesPackage.eINSTANCE.eClass();
+ UMLPackage.eINSTANCE.eClass();
+
+ // Obtain or create and register interdependencies
+ Object registeredPackage = EPackage.Registry.INSTANCE.getEPackage(AIMLPackage.eNS_URI);
+ AIMLPackageImpl theAIMLPackage = (AIMLPackageImpl)(registeredPackage instanceof AIMLPackageImpl ? registeredPackage : AIMLPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(ModulePackage.eNS_URI);
+ ModulePackageImpl theModulePackage = (ModulePackageImpl)(registeredPackage instanceof ModulePackageImpl ? registeredPackage : ModulePackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(TensorPackage.eNS_URI);
+ TensorPackageImpl theTensorPackage = (TensorPackageImpl)(registeredPackage instanceof TensorPackageImpl ? registeredPackage : TensorPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(DatatypesPackage.eNS_URI);
+ DatatypesPackageImpl theDatatypesPackage = (DatatypesPackageImpl)(registeredPackage instanceof DatatypesPackageImpl ? registeredPackage : DatatypesPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Pooling_layersPackage.eNS_URI);
+ Pooling_layersPackageImpl thePooling_layersPackage = (Pooling_layersPackageImpl)(registeredPackage instanceof Pooling_layersPackageImpl ? registeredPackage : Pooling_layersPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Convolution_layersPackage.eNS_URI);
+ Convolution_layersPackageImpl theConvolution_layersPackage = (Convolution_layersPackageImpl)(registeredPackage instanceof Convolution_layersPackageImpl ? registeredPackage : Convolution_layersPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Layer_weight_constraintsPackage.eNS_URI);
+ Layer_weight_constraintsPackageImpl theLayer_weight_constraintsPackage = (Layer_weight_constraintsPackageImpl)(registeredPackage instanceof Layer_weight_constraintsPackageImpl ? registeredPackage : Layer_weight_constraintsPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Padding_layersPackage.eNS_URI);
+ Padding_layersPackageImpl thePadding_layersPackage = (Padding_layersPackageImpl)(registeredPackage instanceof Padding_layersPackageImpl ? registeredPackage : Padding_layersPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(NonLinearActivationsPackage.eNS_URI);
+ NonLinearActivationsPackageImpl theNonLinearActivationsPackage = (NonLinearActivationsPackageImpl)(registeredPackage instanceof NonLinearActivationsPackageImpl ? registeredPackage : NonLinearActivationsPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(SoftMinMaxActivationsPackage.eNS_URI);
+ SoftMinMaxActivationsPackageImpl theSoftMinMaxActivationsPackage = (SoftMinMaxActivationsPackageImpl)(registeredPackage instanceof SoftMinMaxActivationsPackageImpl ? registeredPackage : SoftMinMaxActivationsPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Normalization_layersPackage.eNS_URI);
+ Normalization_layersPackageImpl theNormalization_layersPackage = (Normalization_layersPackageImpl)(registeredPackage instanceof Normalization_layersPackageImpl ? registeredPackage : Normalization_layersPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Recurrent_layersPackage.eNS_URI);
+ Recurrent_layersPackageImpl theRecurrent_layersPackage = (Recurrent_layersPackageImpl)(registeredPackage instanceof Recurrent_layersPackageImpl ? registeredPackage : Recurrent_layersPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Transformer_layersPackage.eNS_URI);
+ Transformer_layersPackageImpl theTransformer_layersPackage = (Transformer_layersPackageImpl)(registeredPackage instanceof Transformer_layersPackageImpl ? registeredPackage : Transformer_layersPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Linear_layersPackage.eNS_URI);
+ Linear_layersPackageImpl theLinear_layersPackage = (Linear_layersPackageImpl)(registeredPackage instanceof Linear_layersPackageImpl ? registeredPackage : Linear_layersPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Dropout_layersPackage.eNS_URI);
+ Dropout_layersPackageImpl theDropout_layersPackage = (Dropout_layersPackageImpl)(registeredPackage instanceof Dropout_layersPackageImpl ? registeredPackage : Dropout_layersPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Sparse_layersPackage.eNS_URI);
+ Sparse_layersPackageImpl theSparse_layersPackage = (Sparse_layersPackageImpl)(registeredPackage instanceof Sparse_layersPackageImpl ? registeredPackage : Sparse_layersPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Loss_functionsPackage.eNS_URI);
+ Loss_functionsPackageImpl theLoss_functionsPackage = (Loss_functionsPackageImpl)(registeredPackage instanceof Loss_functionsPackageImpl ? registeredPackage : Loss_functionsPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Vision_layersPackage.eNS_URI);
+ Vision_layersPackageImpl theVision_layersPackage = (Vision_layersPackageImpl)(registeredPackage instanceof Vision_layersPackageImpl ? registeredPackage : Vision_layersPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(DataParallel_layersPackage.eNS_URI);
+ DataParallel_layersPackageImpl theDataParallel_layersPackage = (DataParallel_layersPackageImpl)(registeredPackage instanceof DataParallel_layersPackageImpl ? registeredPackage : DataParallel_layersPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Layer_weight_regularizersPackage.eNS_URI);
+ Layer_weight_regularizersPackageImpl theLayer_weight_regularizersPackage = (Layer_weight_regularizersPackageImpl)(registeredPackage instanceof Layer_weight_regularizersPackageImpl ? registeredPackage : Layer_weight_regularizersPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Layer_weight_initializersPackage.eNS_URI);
+ Layer_weight_initializersPackageImpl theLayer_weight_initializersPackage = (Layer_weight_initializersPackageImpl)(registeredPackage instanceof Layer_weight_initializersPackageImpl ? registeredPackage : Layer_weight_initializersPackage.eINSTANCE);
+
+ // Create package meta-data objects
+ theDistance_functionsPackage.createPackageContents();
+ theAIMLPackage.createPackageContents();
+ theModulePackage.createPackageContents();
+ theTensorPackage.createPackageContents();
+ theDatatypesPackage.createPackageContents();
+ thePooling_layersPackage.createPackageContents();
+ theConvolution_layersPackage.createPackageContents();
+ theLayer_weight_constraintsPackage.createPackageContents();
+ thePadding_layersPackage.createPackageContents();
+ theNonLinearActivationsPackage.createPackageContents();
+ theSoftMinMaxActivationsPackage.createPackageContents();
+ theNormalization_layersPackage.createPackageContents();
+ theRecurrent_layersPackage.createPackageContents();
+ theTransformer_layersPackage.createPackageContents();
+ theLinear_layersPackage.createPackageContents();
+ theDropout_layersPackage.createPackageContents();
+ theSparse_layersPackage.createPackageContents();
+ theLoss_functionsPackage.createPackageContents();
+ theVision_layersPackage.createPackageContents();
+ theDataParallel_layersPackage.createPackageContents();
+ theLayer_weight_regularizersPackage.createPackageContents();
+ theLayer_weight_initializersPackage.createPackageContents();
+
+ // Initialize created meta-data
+ theDistance_functionsPackage.initializePackageContents();
+ theAIMLPackage.initializePackageContents();
+ theModulePackage.initializePackageContents();
+ theTensorPackage.initializePackageContents();
+ theDatatypesPackage.initializePackageContents();
+ thePooling_layersPackage.initializePackageContents();
+ theConvolution_layersPackage.initializePackageContents();
+ theLayer_weight_constraintsPackage.initializePackageContents();
+ thePadding_layersPackage.initializePackageContents();
+ theNonLinearActivationsPackage.initializePackageContents();
+ theSoftMinMaxActivationsPackage.initializePackageContents();
+ theNormalization_layersPackage.initializePackageContents();
+ theRecurrent_layersPackage.initializePackageContents();
+ theTransformer_layersPackage.initializePackageContents();
+ theLinear_layersPackage.initializePackageContents();
+ theDropout_layersPackage.initializePackageContents();
+ theSparse_layersPackage.initializePackageContents();
+ theLoss_functionsPackage.initializePackageContents();
+ theVision_layersPackage.initializePackageContents();
+ theDataParallel_layersPackage.initializePackageContents();
+ theLayer_weight_regularizersPackage.initializePackageContents();
+ theLayer_weight_initializersPackage.initializePackageContents();
+
+ // Mark meta-data to indicate it can't be changed
+ theDistance_functionsPackage.freeze();
+
+ // Update the registry and return the package
+ EPackage.Registry.INSTANCE.put(Distance_functionsPackage.eNS_URI, theDistance_functionsPackage);
+ return theDistance_functionsPackage;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EClass getDistance_functions() {
+ return distance_functionsEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EAttribute getDistance_functions_Eps() {
+ return (EAttribute)distance_functionsEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EClass getCosineSimilarity() {
+ return cosineSimilarityEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EAttribute getCosineSimilarity_Dim() {
+ return (EAttribute)cosineSimilarityEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EClass getPairwiseDistance() {
+ return pairwiseDistanceEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EAttribute getPairwiseDistance_P() {
+ return (EAttribute)pairwiseDistanceEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EAttribute getPairwiseDistance_Keepdim() {
+ return (EAttribute)pairwiseDistanceEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Distance_functionsFactory getDistance_functionsFactory() {
+ return (Distance_functionsFactory)getEFactoryInstance();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private boolean isCreated = false;
+
+ /**
+ * Creates the meta-model objects for the package. This method is
+ * guarded to have no affect on any invocation but its first.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void createPackageContents() {
+ if (isCreated) return;
+ isCreated = true;
+
+ // Create classes and their features
+ distance_functionsEClass = createEClass(DISTANCE_FUNCTIONS);
+ createEAttribute(distance_functionsEClass, DISTANCE_FUNCTIONS__EPS);
+
+ cosineSimilarityEClass = createEClass(COSINE_SIMILARITY);
+ createEAttribute(cosineSimilarityEClass, COSINE_SIMILARITY__DIM);
+
+ pairwiseDistanceEClass = createEClass(PAIRWISE_DISTANCE);
+ createEAttribute(pairwiseDistanceEClass, PAIRWISE_DISTANCE__P);
+ createEAttribute(pairwiseDistanceEClass, PAIRWISE_DISTANCE__KEEPDIM);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private boolean isInitialized = false;
+
+ /**
+ * Complete the initialization of the package and its meta-model. This
+ * method is guarded to have no affect on any invocation but its first.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void initializePackageContents() {
+ if (isInitialized) return;
+ isInitialized = true;
+
+ // Initialize package
+ setName(eNAME);
+ setNsPrefix(eNS_PREFIX);
+ setNsURI(eNS_URI);
+
+ // Obtain other dependent packages
+ ModulePackage theModulePackage = (ModulePackage)EPackage.Registry.INSTANCE.getEPackage(ModulePackage.eNS_URI);
+ TypesPackage theTypesPackage = (TypesPackage)EPackage.Registry.INSTANCE.getEPackage(TypesPackage.eNS_URI);
+
+ // Create type parameters
+
+ // Set bounds for type parameters
+
+ // Add supertypes to classes
+ distance_functionsEClass.getESuperTypes().add(theModulePackage.getModel());
+ cosineSimilarityEClass.getESuperTypes().add(this.getDistance_functions());
+ pairwiseDistanceEClass.getESuperTypes().add(this.getDistance_functions());
+
+ // Initialize classes, features, and operations; add parameters
+ initEClass(distance_functionsEClass, Distance_functions.class, "Distance_functions", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ initEAttribute(getDistance_functions_Eps(), theTypesPackage.getReal(), "eps", null, 0, 1, Distance_functions.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+
+ initEClass(cosineSimilarityEClass, CosineSimilarity.class, "CosineSimilarity", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ initEAttribute(getCosineSimilarity_Dim(), theTypesPackage.getInteger(), "dim", null, 0, 1, CosineSimilarity.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+
+ initEClass(pairwiseDistanceEClass, PairwiseDistance.class, "PairwiseDistance", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ initEAttribute(getPairwiseDistance_P(), theTypesPackage.getReal(), "p", null, 0, 1, PairwiseDistance.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+ initEAttribute(getPairwiseDistance_Keepdim(), theTypesPackage.getBoolean(), "keepdim", null, 0, 1, PairwiseDistance.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+ }
+
+} //Distance_functionsPackageImpl
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Distance_functions/impl/PairwiseDistanceImpl.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Distance_functions/impl/PairwiseDistanceImpl.java
new file mode 100644
index 0000000..db6db4d
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Distance_functions/impl/PairwiseDistanceImpl.java
@@ -0,0 +1,229 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Distance_functions.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Distance_functions.Distance_functionsPackage;
+import org.eclipse.papyrus.aiml.profile.AIML.Distance_functions.PairwiseDistance;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Pairwise Distance</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Distance_functions.impl.PairwiseDistanceImpl#getP <em>P</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Distance_functions.impl.PairwiseDistanceImpl#isKeepdim <em>Keepdim</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class PairwiseDistanceImpl extends Distance_functionsImpl implements PairwiseDistance {
+ /**
+ * The default value of the '{@link #getP() <em>P</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getP()
+ * @generated
+ * @ordered
+ */
+ protected static final double P_EDEFAULT = 0.0;
+
+ /**
+ * The cached value of the '{@link #getP() <em>P</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getP()
+ * @generated
+ * @ordered
+ */
+ protected double p = P_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #isKeepdim() <em>Keepdim</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #isKeepdim()
+ * @generated
+ * @ordered
+ */
+ protected static final boolean KEEPDIM_EDEFAULT = false;
+
+ /**
+ * The cached value of the '{@link #isKeepdim() <em>Keepdim</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #isKeepdim()
+ * @generated
+ * @ordered
+ */
+ protected boolean keepdim = KEEPDIM_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected PairwiseDistanceImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return Distance_functionsPackage.Literals.PAIRWISE_DISTANCE;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public double getP() {
+ return p;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void setP(double newP) {
+ double oldP = p;
+ p = newP;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, Distance_functionsPackage.PAIRWISE_DISTANCE__P, oldP, p));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean isKeepdim() {
+ return keepdim;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void setKeepdim(boolean newKeepdim) {
+ boolean oldKeepdim = keepdim;
+ keepdim = newKeepdim;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, Distance_functionsPackage.PAIRWISE_DISTANCE__KEEPDIM, oldKeepdim, keepdim));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case Distance_functionsPackage.PAIRWISE_DISTANCE__P:
+ return getP();
+ case Distance_functionsPackage.PAIRWISE_DISTANCE__KEEPDIM:
+ return isKeepdim();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case Distance_functionsPackage.PAIRWISE_DISTANCE__P:
+ setP((Double)newValue);
+ return;
+ case Distance_functionsPackage.PAIRWISE_DISTANCE__KEEPDIM:
+ setKeepdim((Boolean)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case Distance_functionsPackage.PAIRWISE_DISTANCE__P:
+ setP(P_EDEFAULT);
+ return;
+ case Distance_functionsPackage.PAIRWISE_DISTANCE__KEEPDIM:
+ setKeepdim(KEEPDIM_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case Distance_functionsPackage.PAIRWISE_DISTANCE__P:
+ return p != P_EDEFAULT;
+ case Distance_functionsPackage.PAIRWISE_DISTANCE__KEEPDIM:
+ return keepdim != KEEPDIM_EDEFAULT;
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuilder result = new StringBuilder(super.toString());
+ result.append(" (p: "); //$NON-NLS-1$
+ result.append(p);
+ result.append(", keepdim: "); //$NON-NLS-1$
+ result.append(keepdim);
+ result.append(')');
+ return result.toString();
+ }
+
+} //PairwiseDistanceImpl
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Distance_functions/util/Distance_functionsAdapterFactory.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Distance_functions/util/Distance_functionsAdapterFactory.java
new file mode 100644
index 0000000..f004452
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Distance_functions/util/Distance_functionsAdapterFactory.java
@@ -0,0 +1,184 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Distance_functions.util;
+
+import org.eclipse.emf.common.notify.Adapter;
+import org.eclipse.emf.common.notify.Notifier;
+
+import org.eclipse.emf.common.notify.impl.AdapterFactoryImpl;
+
+import org.eclipse.emf.ecore.EObject;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Distance_functions.*;
+import org.eclipse.papyrus.aiml.profile.AIML.Module.Model;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Adapter Factory</b> for the model.
+ * It provides an adapter <code>createXXX</code> method for each class of the model.
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Distance_functions.Distance_functionsPackage
+ * @generated
+ */
+public class Distance_functionsAdapterFactory extends AdapterFactoryImpl {
+ /**
+ * The cached model package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected static Distance_functionsPackage modelPackage;
+
+ /**
+ * Creates an instance of the adapter factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Distance_functionsAdapterFactory() {
+ if (modelPackage == null) {
+ modelPackage = Distance_functionsPackage.eINSTANCE;
+ }
+ }
+
+ /**
+ * Returns whether this factory is applicable for the type of the object.
+ * <!-- begin-user-doc -->
+ * This implementation returns <code>true</code> if the object is either the model's package or is an instance object of the model.
+ * <!-- end-user-doc -->
+ * @return whether this factory is applicable for the type of the object.
+ * @generated
+ */
+ @Override
+ public boolean isFactoryForType(Object object) {
+ if (object == modelPackage) {
+ return true;
+ }
+ if (object instanceof EObject) {
+ return ((EObject)object).eClass().getEPackage() == modelPackage;
+ }
+ return false;
+ }
+
+ /**
+ * The switch that delegates to the <code>createXXX</code> methods.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected Distance_functionsSwitch<Adapter> modelSwitch =
+ new Distance_functionsSwitch<Adapter>() {
+ @Override
+ public Adapter caseDistance_functions(Distance_functions object) {
+ return createDistance_functionsAdapter();
+ }
+ @Override
+ public Adapter caseCosineSimilarity(CosineSimilarity object) {
+ return createCosineSimilarityAdapter();
+ }
+ @Override
+ public Adapter casePairwiseDistance(PairwiseDistance object) {
+ return createPairwiseDistanceAdapter();
+ }
+ @Override
+ public Adapter caseModel(Model object) {
+ return createModelAdapter();
+ }
+ @Override
+ public Adapter defaultCase(EObject object) {
+ return createEObjectAdapter();
+ }
+ };
+
+ /**
+ * Creates an adapter for the <code>target</code>.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param target the object to adapt.
+ * @return the adapter for the <code>target</code>.
+ * @generated
+ */
+ @Override
+ public Adapter createAdapter(Notifier target) {
+ return modelSwitch.doSwitch((EObject)target);
+ }
+
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.aiml.profile.AIML.Distance_functions.Distance_functions <em>Distance functions</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Distance_functions.Distance_functions
+ * @generated
+ */
+ public Adapter createDistance_functionsAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.aiml.profile.AIML.Distance_functions.CosineSimilarity <em>Cosine Similarity</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Distance_functions.CosineSimilarity
+ * @generated
+ */
+ public Adapter createCosineSimilarityAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.aiml.profile.AIML.Distance_functions.PairwiseDistance <em>Pairwise Distance</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Distance_functions.PairwiseDistance
+ * @generated
+ */
+ public Adapter createPairwiseDistanceAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.aiml.profile.AIML.Module.Model <em>Model</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Module.Model
+ * @generated
+ */
+ public Adapter createModelAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for the default case.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @generated
+ */
+ public Adapter createEObjectAdapter() {
+ return null;
+ }
+
+} //Distance_functionsAdapterFactory
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Distance_functions/util/Distance_functionsSwitch.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Distance_functions/util/Distance_functionsSwitch.java
new file mode 100644
index 0000000..e1d1fd8
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Distance_functions/util/Distance_functionsSwitch.java
@@ -0,0 +1,182 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Distance_functions.util;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+
+import org.eclipse.emf.ecore.util.Switch;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Distance_functions.*;
+import org.eclipse.papyrus.aiml.profile.AIML.Module.Model;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Switch</b> for the model's inheritance hierarchy.
+ * It supports the call {@link #doSwitch(EObject) doSwitch(object)}
+ * to invoke the <code>caseXXX</code> method for each class of the model,
+ * starting with the actual class of the object
+ * and proceeding up the inheritance hierarchy
+ * until a non-null result is returned,
+ * which is the result of the switch.
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Distance_functions.Distance_functionsPackage
+ * @generated
+ */
+public class Distance_functionsSwitch<T> extends Switch<T> {
+ /**
+ * The cached model package
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected static Distance_functionsPackage modelPackage;
+
+ /**
+ * Creates an instance of the switch.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Distance_functionsSwitch() {
+ if (modelPackage == null) {
+ modelPackage = Distance_functionsPackage.eINSTANCE;
+ }
+ }
+
+ /**
+ * Checks whether this is a switch for the given package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param ePackage the package in question.
+ * @return whether this is a switch for the given package.
+ * @generated
+ */
+ @Override
+ protected boolean isSwitchFor(EPackage ePackage) {
+ return ePackage == modelPackage;
+ }
+
+ /**
+ * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the first non-null result returned by a <code>caseXXX</code> call.
+ * @generated
+ */
+ @Override
+ protected T doSwitch(int classifierID, EObject theEObject) {
+ switch (classifierID) {
+ case Distance_functionsPackage.DISTANCE_FUNCTIONS: {
+ Distance_functions distance_functions = (Distance_functions)theEObject;
+ T result = caseDistance_functions(distance_functions);
+ if (result == null) result = caseModel(distance_functions);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case Distance_functionsPackage.COSINE_SIMILARITY: {
+ CosineSimilarity cosineSimilarity = (CosineSimilarity)theEObject;
+ T result = caseCosineSimilarity(cosineSimilarity);
+ if (result == null) result = caseDistance_functions(cosineSimilarity);
+ if (result == null) result = caseModel(cosineSimilarity);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case Distance_functionsPackage.PAIRWISE_DISTANCE: {
+ PairwiseDistance pairwiseDistance = (PairwiseDistance)theEObject;
+ T result = casePairwiseDistance(pairwiseDistance);
+ if (result == null) result = caseDistance_functions(pairwiseDistance);
+ if (result == null) result = caseModel(pairwiseDistance);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ default: return defaultCase(theEObject);
+ }
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Distance functions</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Distance functions</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseDistance_functions(Distance_functions object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Cosine Similarity</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Cosine Similarity</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseCosineSimilarity(CosineSimilarity object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Pairwise Distance</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Pairwise Distance</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T casePairwiseDistance(PairwiseDistance object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Model</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Model</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseModel(Model object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>EObject</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch, but this is the last case anyway.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>EObject</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject)
+ * @generated
+ */
+ @Override
+ public T defaultCase(EObject object) {
+ return null;
+ }
+
+} //Distance_functionsSwitch
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Dropout_layers/AlphaDropout.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Dropout_layers/AlphaDropout.java
new file mode 100644
index 0000000..353704f
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Dropout_layers/AlphaDropout.java
@@ -0,0 +1,26 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Alpha Dropout</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.Dropout_layersPackage#getAlphaDropout()
+ * @model
+ * @generated
+ */
+public interface AlphaDropout extends Dropout_layers {
+} // AlphaDropout
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Dropout_layers/Dropout.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Dropout_layers/Dropout.java
new file mode 100644
index 0000000..627656e
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Dropout_layers/Dropout.java
@@ -0,0 +1,26 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Dropout</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.Dropout_layersPackage#getDropout()
+ * @model
+ * @generated
+ */
+public interface Dropout extends Dropout_layers {
+} // Dropout
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Dropout_layers/Dropout2d.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Dropout_layers/Dropout2d.java
new file mode 100644
index 0000000..5b781af
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Dropout_layers/Dropout2d.java
@@ -0,0 +1,26 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Dropout2d</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.Dropout_layersPackage#getDropout2d()
+ * @model
+ * @generated
+ */
+public interface Dropout2d extends Dropout_layers {
+} // Dropout2d
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Dropout_layers/Dropout3d.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Dropout_layers/Dropout3d.java
new file mode 100644
index 0000000..9eac538
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Dropout_layers/Dropout3d.java
@@ -0,0 +1,26 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Dropout3d</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.Dropout_layersPackage#getDropout3d()
+ * @model
+ * @generated
+ */
+public interface Dropout3d extends Dropout_layers {
+} // Dropout3d
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Dropout_layers/Dropout_layers.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Dropout_layers/Dropout_layers.java
new file mode 100644
index 0000000..f33f3e1
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Dropout_layers/Dropout_layers.java
@@ -0,0 +1,131 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers;
+
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.papyrus.aiml.profile.AIML.Module.Model;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Dropout layers</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.Dropout_layers#getP <em>P</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.Dropout_layers#isInplace <em>Inplace</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.Dropout_layers#getNoise_shape <em>Noise shape</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.Dropout_layers#getSeed <em>Seed</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.Dropout_layersPackage#getDropout_layers()
+ * @model abstract="true"
+ * @generated
+ */
+public interface Dropout_layers extends Model {
+ /**
+ * Returns the value of the '<em><b>P</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>P</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>P</em>' attribute.
+ * @see #setP(double)
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.Dropout_layersPackage#getDropout_layers_P()
+ * @model dataType="org.eclipse.uml2.types.Real" ordered="false"
+ * @generated
+ */
+ double getP();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.Dropout_layers#getP <em>P</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>P</em>' attribute.
+ * @see #getP()
+ * @generated
+ */
+ void setP(double value);
+
+ /**
+ * Returns the value of the '<em><b>Inplace</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Inplace</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Inplace</em>' attribute.
+ * @see #setInplace(boolean)
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.Dropout_layersPackage#getDropout_layers_Inplace()
+ * @model dataType="org.eclipse.uml2.types.Boolean" ordered="false"
+ * @generated
+ */
+ boolean isInplace();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.Dropout_layers#isInplace <em>Inplace</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Inplace</em>' attribute.
+ * @see #isInplace()
+ * @generated
+ */
+ void setInplace(boolean value);
+
+ /**
+ * Returns the value of the '<em><b>Noise shape</b></em>' attribute list.
+ * The list contents are of type {@link java.lang.Integer}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Noise shape</em>' attribute list isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Noise shape</em>' attribute list.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.Dropout_layersPackage#getDropout_layers_Noise_shape()
+ * @model dataType="org.eclipse.uml2.types.Integer" ordered="false"
+ * @generated
+ */
+ EList<Integer> getNoise_shape();
+
+ /**
+ * Returns the value of the '<em><b>Seed</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Seed</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Seed</em>' attribute.
+ * @see #setSeed(int)
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.Dropout_layersPackage#getDropout_layers_Seed()
+ * @model dataType="org.eclipse.uml2.types.Integer" ordered="false"
+ * @generated
+ */
+ int getSeed();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.Dropout_layers#getSeed <em>Seed</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Seed</em>' attribute.
+ * @see #getSeed()
+ * @generated
+ */
+ void setSeed(int value);
+
+} // Dropout_layers
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Dropout_layers/Dropout_layersFactory.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Dropout_layers/Dropout_layersFactory.java
new file mode 100644
index 0000000..94161d9
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Dropout_layers/Dropout_layersFactory.java
@@ -0,0 +1,78 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers;
+
+import org.eclipse.emf.ecore.EFactory;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Factory</b> for the model.
+ * It provides a create method for each non-abstract class of the model.
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.Dropout_layersPackage
+ * @generated
+ */
+public interface Dropout_layersFactory extends EFactory {
+ /**
+ * The singleton instance of the factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ Dropout_layersFactory eINSTANCE = org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.impl.Dropout_layersFactoryImpl.init();
+
+ /**
+ * Returns a new object of class '<em>Dropout</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Dropout</em>'.
+ * @generated
+ */
+ Dropout createDropout();
+
+ /**
+ * Returns a new object of class '<em>Dropout2d</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Dropout2d</em>'.
+ * @generated
+ */
+ Dropout2d createDropout2d();
+
+ /**
+ * Returns a new object of class '<em>Dropout3d</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Dropout3d</em>'.
+ * @generated
+ */
+ Dropout3d createDropout3d();
+
+ /**
+ * Returns a new object of class '<em>Alpha Dropout</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Alpha Dropout</em>'.
+ * @generated
+ */
+ AlphaDropout createAlphaDropout();
+
+ /**
+ * Returns the package supported by this factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the package supported by this factory.
+ * @generated
+ */
+ Dropout_layersPackage getDropout_layersPackage();
+
+} //Dropout_layersFactory
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Dropout_layers/Dropout_layersPackage.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Dropout_layers/Dropout_layersPackage.java
new file mode 100644
index 0000000..a29291b
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Dropout_layers/Dropout_layersPackage.java
@@ -0,0 +1,906 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers;
+
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Module.ModulePackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Package</b> for the model.
+ * It contains accessors for the meta objects to represent
+ * <ul>
+ * <li>each class,</li>
+ * <li>each feature of each class,</li>
+ * <li>each operation of each class,</li>
+ * <li>each enum,</li>
+ * <li>and each data type</li>
+ * </ul>
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.Dropout_layersFactory
+ * @model kind="package"
+ * @generated
+ */
+public interface Dropout_layersPackage extends EPackage {
+ /**
+ * The package name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNAME = "Dropout_layers"; //$NON-NLS-1$
+
+ /**
+ * The package namespace URI.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNS_URI = "http://www.eclipse.org/papyrus/AIML/dropout/1"; //$NON-NLS-1$
+
+ /**
+ * The package namespace name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNS_PREFIX = "AIML.Dropout_layers"; //$NON-NLS-1$
+
+ /**
+ * The singleton instance of the package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ Dropout_layersPackage eINSTANCE = org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.impl.Dropout_layersPackageImpl.init();
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.impl.Dropout_layersImpl <em>Dropout layers</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.impl.Dropout_layersImpl
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.impl.Dropout_layersPackageImpl#getDropout_layers()
+ * @generated
+ */
+ int DROPOUT_LAYERS = 0;
+
+ /**
+ * The feature id for the '<em><b>Base Class</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DROPOUT_LAYERS__BASE_CLASS = ModulePackage.MODEL__BASE_CLASS;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DROPOUT_LAYERS__NAME = ModulePackage.MODEL__NAME;
+
+ /**
+ * The feature id for the '<em><b>Data</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DROPOUT_LAYERS__DATA = ModulePackage.MODEL__DATA;
+
+ /**
+ * The feature id for the '<em><b>Requires grad</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DROPOUT_LAYERS__REQUIRES_GRAD = ModulePackage.MODEL__REQUIRES_GRAD;
+
+ /**
+ * The feature id for the '<em><b>Sub Module</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DROPOUT_LAYERS__SUB_MODULE = ModulePackage.MODEL__SUB_MODULE;
+
+ /**
+ * The feature id for the '<em><b>Optimizer</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DROPOUT_LAYERS__OPTIMIZER = ModulePackage.MODEL__OPTIMIZER;
+
+ /**
+ * The feature id for the '<em><b>Loss</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DROPOUT_LAYERS__LOSS = ModulePackage.MODEL__LOSS;
+
+ /**
+ * The feature id for the '<em><b>P</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DROPOUT_LAYERS__P = ModulePackage.MODEL_FEATURE_COUNT + 0;
+
+ /**
+ * The feature id for the '<em><b>Inplace</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DROPOUT_LAYERS__INPLACE = ModulePackage.MODEL_FEATURE_COUNT + 1;
+
+ /**
+ * The feature id for the '<em><b>Noise shape</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DROPOUT_LAYERS__NOISE_SHAPE = ModulePackage.MODEL_FEATURE_COUNT + 2;
+
+ /**
+ * The feature id for the '<em><b>Seed</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DROPOUT_LAYERS__SEED = ModulePackage.MODEL_FEATURE_COUNT + 3;
+
+ /**
+ * The number of structural features of the '<em>Dropout layers</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DROPOUT_LAYERS_FEATURE_COUNT = ModulePackage.MODEL_FEATURE_COUNT + 4;
+
+ /**
+ * The number of operations of the '<em>Dropout layers</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DROPOUT_LAYERS_OPERATION_COUNT = ModulePackage.MODEL_OPERATION_COUNT + 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.impl.DropoutImpl <em>Dropout</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.impl.DropoutImpl
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.impl.Dropout_layersPackageImpl#getDropout()
+ * @generated
+ */
+ int DROPOUT = 1;
+
+ /**
+ * The feature id for the '<em><b>Base Class</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DROPOUT__BASE_CLASS = DROPOUT_LAYERS__BASE_CLASS;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DROPOUT__NAME = DROPOUT_LAYERS__NAME;
+
+ /**
+ * The feature id for the '<em><b>Data</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DROPOUT__DATA = DROPOUT_LAYERS__DATA;
+
+ /**
+ * The feature id for the '<em><b>Requires grad</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DROPOUT__REQUIRES_GRAD = DROPOUT_LAYERS__REQUIRES_GRAD;
+
+ /**
+ * The feature id for the '<em><b>Sub Module</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DROPOUT__SUB_MODULE = DROPOUT_LAYERS__SUB_MODULE;
+
+ /**
+ * The feature id for the '<em><b>Optimizer</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DROPOUT__OPTIMIZER = DROPOUT_LAYERS__OPTIMIZER;
+
+ /**
+ * The feature id for the '<em><b>Loss</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DROPOUT__LOSS = DROPOUT_LAYERS__LOSS;
+
+ /**
+ * The feature id for the '<em><b>P</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DROPOUT__P = DROPOUT_LAYERS__P;
+
+ /**
+ * The feature id for the '<em><b>Inplace</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DROPOUT__INPLACE = DROPOUT_LAYERS__INPLACE;
+
+ /**
+ * The feature id for the '<em><b>Noise shape</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DROPOUT__NOISE_SHAPE = DROPOUT_LAYERS__NOISE_SHAPE;
+
+ /**
+ * The feature id for the '<em><b>Seed</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DROPOUT__SEED = DROPOUT_LAYERS__SEED;
+
+ /**
+ * The number of structural features of the '<em>Dropout</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DROPOUT_FEATURE_COUNT = DROPOUT_LAYERS_FEATURE_COUNT + 0;
+
+ /**
+ * The number of operations of the '<em>Dropout</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DROPOUT_OPERATION_COUNT = DROPOUT_LAYERS_OPERATION_COUNT + 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.impl.Dropout2dImpl <em>Dropout2d</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.impl.Dropout2dImpl
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.impl.Dropout_layersPackageImpl#getDropout2d()
+ * @generated
+ */
+ int DROPOUT2D = 2;
+
+ /**
+ * The feature id for the '<em><b>Base Class</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DROPOUT2D__BASE_CLASS = DROPOUT_LAYERS__BASE_CLASS;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DROPOUT2D__NAME = DROPOUT_LAYERS__NAME;
+
+ /**
+ * The feature id for the '<em><b>Data</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DROPOUT2D__DATA = DROPOUT_LAYERS__DATA;
+
+ /**
+ * The feature id for the '<em><b>Requires grad</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DROPOUT2D__REQUIRES_GRAD = DROPOUT_LAYERS__REQUIRES_GRAD;
+
+ /**
+ * The feature id for the '<em><b>Sub Module</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DROPOUT2D__SUB_MODULE = DROPOUT_LAYERS__SUB_MODULE;
+
+ /**
+ * The feature id for the '<em><b>Optimizer</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DROPOUT2D__OPTIMIZER = DROPOUT_LAYERS__OPTIMIZER;
+
+ /**
+ * The feature id for the '<em><b>Loss</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DROPOUT2D__LOSS = DROPOUT_LAYERS__LOSS;
+
+ /**
+ * The feature id for the '<em><b>P</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DROPOUT2D__P = DROPOUT_LAYERS__P;
+
+ /**
+ * The feature id for the '<em><b>Inplace</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DROPOUT2D__INPLACE = DROPOUT_LAYERS__INPLACE;
+
+ /**
+ * The feature id for the '<em><b>Noise shape</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DROPOUT2D__NOISE_SHAPE = DROPOUT_LAYERS__NOISE_SHAPE;
+
+ /**
+ * The feature id for the '<em><b>Seed</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DROPOUT2D__SEED = DROPOUT_LAYERS__SEED;
+
+ /**
+ * The number of structural features of the '<em>Dropout2d</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DROPOUT2D_FEATURE_COUNT = DROPOUT_LAYERS_FEATURE_COUNT + 0;
+
+ /**
+ * The number of operations of the '<em>Dropout2d</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DROPOUT2D_OPERATION_COUNT = DROPOUT_LAYERS_OPERATION_COUNT + 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.impl.Dropout3dImpl <em>Dropout3d</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.impl.Dropout3dImpl
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.impl.Dropout_layersPackageImpl#getDropout3d()
+ * @generated
+ */
+ int DROPOUT3D = 3;
+
+ /**
+ * The feature id for the '<em><b>Base Class</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DROPOUT3D__BASE_CLASS = DROPOUT_LAYERS__BASE_CLASS;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DROPOUT3D__NAME = DROPOUT_LAYERS__NAME;
+
+ /**
+ * The feature id for the '<em><b>Data</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DROPOUT3D__DATA = DROPOUT_LAYERS__DATA;
+
+ /**
+ * The feature id for the '<em><b>Requires grad</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DROPOUT3D__REQUIRES_GRAD = DROPOUT_LAYERS__REQUIRES_GRAD;
+
+ /**
+ * The feature id for the '<em><b>Sub Module</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DROPOUT3D__SUB_MODULE = DROPOUT_LAYERS__SUB_MODULE;
+
+ /**
+ * The feature id for the '<em><b>Optimizer</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DROPOUT3D__OPTIMIZER = DROPOUT_LAYERS__OPTIMIZER;
+
+ /**
+ * The feature id for the '<em><b>Loss</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DROPOUT3D__LOSS = DROPOUT_LAYERS__LOSS;
+
+ /**
+ * The feature id for the '<em><b>P</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DROPOUT3D__P = DROPOUT_LAYERS__P;
+
+ /**
+ * The feature id for the '<em><b>Inplace</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DROPOUT3D__INPLACE = DROPOUT_LAYERS__INPLACE;
+
+ /**
+ * The feature id for the '<em><b>Noise shape</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DROPOUT3D__NOISE_SHAPE = DROPOUT_LAYERS__NOISE_SHAPE;
+
+ /**
+ * The feature id for the '<em><b>Seed</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DROPOUT3D__SEED = DROPOUT_LAYERS__SEED;
+
+ /**
+ * The number of structural features of the '<em>Dropout3d</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DROPOUT3D_FEATURE_COUNT = DROPOUT_LAYERS_FEATURE_COUNT + 0;
+
+ /**
+ * The number of operations of the '<em>Dropout3d</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DROPOUT3D_OPERATION_COUNT = DROPOUT_LAYERS_OPERATION_COUNT + 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.impl.AlphaDropoutImpl <em>Alpha Dropout</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.impl.AlphaDropoutImpl
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.impl.Dropout_layersPackageImpl#getAlphaDropout()
+ * @generated
+ */
+ int ALPHA_DROPOUT = 4;
+
+ /**
+ * The feature id for the '<em><b>Base Class</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ALPHA_DROPOUT__BASE_CLASS = DROPOUT_LAYERS__BASE_CLASS;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ALPHA_DROPOUT__NAME = DROPOUT_LAYERS__NAME;
+
+ /**
+ * The feature id for the '<em><b>Data</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ALPHA_DROPOUT__DATA = DROPOUT_LAYERS__DATA;
+
+ /**
+ * The feature id for the '<em><b>Requires grad</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ALPHA_DROPOUT__REQUIRES_GRAD = DROPOUT_LAYERS__REQUIRES_GRAD;
+
+ /**
+ * The feature id for the '<em><b>Sub Module</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ALPHA_DROPOUT__SUB_MODULE = DROPOUT_LAYERS__SUB_MODULE;
+
+ /**
+ * The feature id for the '<em><b>Optimizer</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ALPHA_DROPOUT__OPTIMIZER = DROPOUT_LAYERS__OPTIMIZER;
+
+ /**
+ * The feature id for the '<em><b>Loss</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ALPHA_DROPOUT__LOSS = DROPOUT_LAYERS__LOSS;
+
+ /**
+ * The feature id for the '<em><b>P</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ALPHA_DROPOUT__P = DROPOUT_LAYERS__P;
+
+ /**
+ * The feature id for the '<em><b>Inplace</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ALPHA_DROPOUT__INPLACE = DROPOUT_LAYERS__INPLACE;
+
+ /**
+ * The feature id for the '<em><b>Noise shape</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ALPHA_DROPOUT__NOISE_SHAPE = DROPOUT_LAYERS__NOISE_SHAPE;
+
+ /**
+ * The feature id for the '<em><b>Seed</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ALPHA_DROPOUT__SEED = DROPOUT_LAYERS__SEED;
+
+ /**
+ * The number of structural features of the '<em>Alpha Dropout</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ALPHA_DROPOUT_FEATURE_COUNT = DROPOUT_LAYERS_FEATURE_COUNT + 0;
+
+ /**
+ * The number of operations of the '<em>Alpha Dropout</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ALPHA_DROPOUT_OPERATION_COUNT = DROPOUT_LAYERS_OPERATION_COUNT + 0;
+
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.Dropout_layers <em>Dropout layers</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Dropout layers</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.Dropout_layers
+ * @generated
+ */
+ EClass getDropout_layers();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.Dropout_layers#getP <em>P</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>P</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.Dropout_layers#getP()
+ * @see #getDropout_layers()
+ * @generated
+ */
+ EAttribute getDropout_layers_P();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.Dropout_layers#isInplace <em>Inplace</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Inplace</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.Dropout_layers#isInplace()
+ * @see #getDropout_layers()
+ * @generated
+ */
+ EAttribute getDropout_layers_Inplace();
+
+ /**
+ * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.Dropout_layers#getNoise_shape <em>Noise shape</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute list '<em>Noise shape</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.Dropout_layers#getNoise_shape()
+ * @see #getDropout_layers()
+ * @generated
+ */
+ EAttribute getDropout_layers_Noise_shape();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.Dropout_layers#getSeed <em>Seed</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Seed</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.Dropout_layers#getSeed()
+ * @see #getDropout_layers()
+ * @generated
+ */
+ EAttribute getDropout_layers_Seed();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.Dropout <em>Dropout</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Dropout</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.Dropout
+ * @generated
+ */
+ EClass getDropout();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.Dropout2d <em>Dropout2d</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Dropout2d</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.Dropout2d
+ * @generated
+ */
+ EClass getDropout2d();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.Dropout3d <em>Dropout3d</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Dropout3d</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.Dropout3d
+ * @generated
+ */
+ EClass getDropout3d();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.AlphaDropout <em>Alpha Dropout</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Alpha Dropout</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.AlphaDropout
+ * @generated
+ */
+ EClass getAlphaDropout();
+
+ /**
+ * Returns the factory that creates the instances of the model.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the factory that creates the instances of the model.
+ * @generated
+ */
+ Dropout_layersFactory getDropout_layersFactory();
+
+ /**
+ * <!-- begin-user-doc -->
+ * Defines literals for the meta objects that represent
+ * <ul>
+ * <li>each class,</li>
+ * <li>each feature of each class,</li>
+ * <li>each operation of each class,</li>
+ * <li>each enum,</li>
+ * <li>and each data type</li>
+ * </ul>
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ interface Literals {
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.impl.Dropout_layersImpl <em>Dropout layers</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.impl.Dropout_layersImpl
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.impl.Dropout_layersPackageImpl#getDropout_layers()
+ * @generated
+ */
+ EClass DROPOUT_LAYERS = eINSTANCE.getDropout_layers();
+
+ /**
+ * The meta object literal for the '<em><b>P</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute DROPOUT_LAYERS__P = eINSTANCE.getDropout_layers_P();
+
+ /**
+ * The meta object literal for the '<em><b>Inplace</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute DROPOUT_LAYERS__INPLACE = eINSTANCE.getDropout_layers_Inplace();
+
+ /**
+ * The meta object literal for the '<em><b>Noise shape</b></em>' attribute list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute DROPOUT_LAYERS__NOISE_SHAPE = eINSTANCE.getDropout_layers_Noise_shape();
+
+ /**
+ * The meta object literal for the '<em><b>Seed</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute DROPOUT_LAYERS__SEED = eINSTANCE.getDropout_layers_Seed();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.impl.DropoutImpl <em>Dropout</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.impl.DropoutImpl
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.impl.Dropout_layersPackageImpl#getDropout()
+ * @generated
+ */
+ EClass DROPOUT = eINSTANCE.getDropout();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.impl.Dropout2dImpl <em>Dropout2d</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.impl.Dropout2dImpl
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.impl.Dropout_layersPackageImpl#getDropout2d()
+ * @generated
+ */
+ EClass DROPOUT2D = eINSTANCE.getDropout2d();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.impl.Dropout3dImpl <em>Dropout3d</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.impl.Dropout3dImpl
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.impl.Dropout_layersPackageImpl#getDropout3d()
+ * @generated
+ */
+ EClass DROPOUT3D = eINSTANCE.getDropout3d();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.impl.AlphaDropoutImpl <em>Alpha Dropout</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.impl.AlphaDropoutImpl
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.impl.Dropout_layersPackageImpl#getAlphaDropout()
+ * @generated
+ */
+ EClass ALPHA_DROPOUT = eINSTANCE.getAlphaDropout();
+
+ }
+
+} //Dropout_layersPackage
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Dropout_layers/impl/AlphaDropoutImpl.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Dropout_layers/impl/AlphaDropoutImpl.java
new file mode 100644
index 0000000..730909a
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Dropout_layers/impl/AlphaDropoutImpl.java
@@ -0,0 +1,46 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.AlphaDropout;
+import org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.Dropout_layersPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Alpha Dropout</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class AlphaDropoutImpl extends Dropout_layersImpl implements AlphaDropout {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected AlphaDropoutImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return Dropout_layersPackage.Literals.ALPHA_DROPOUT;
+ }
+
+} //AlphaDropoutImpl
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Dropout_layers/impl/Dropout2dImpl.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Dropout_layers/impl/Dropout2dImpl.java
new file mode 100644
index 0000000..01cfacb
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Dropout_layers/impl/Dropout2dImpl.java
@@ -0,0 +1,46 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.Dropout2d;
+import org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.Dropout_layersPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Dropout2d</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class Dropout2dImpl extends Dropout_layersImpl implements Dropout2d {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected Dropout2dImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return Dropout_layersPackage.Literals.DROPOUT2D;
+ }
+
+} //Dropout2dImpl
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Dropout_layers/impl/Dropout3dImpl.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Dropout_layers/impl/Dropout3dImpl.java
new file mode 100644
index 0000000..102c533
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Dropout_layers/impl/Dropout3dImpl.java
@@ -0,0 +1,46 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.Dropout3d;
+import org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.Dropout_layersPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Dropout3d</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class Dropout3dImpl extends Dropout_layersImpl implements Dropout3d {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected Dropout3dImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return Dropout_layersPackage.Literals.DROPOUT3D;
+ }
+
+} //Dropout3dImpl
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Dropout_layers/impl/DropoutImpl.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Dropout_layers/impl/DropoutImpl.java
new file mode 100644
index 0000000..dbd6d7e
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Dropout_layers/impl/DropoutImpl.java
@@ -0,0 +1,46 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.Dropout;
+import org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.Dropout_layersPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Dropout</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class DropoutImpl extends Dropout_layersImpl implements Dropout {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected DropoutImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return Dropout_layersPackage.Literals.DROPOUT;
+ }
+
+} //DropoutImpl
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Dropout_layers/impl/Dropout_layersFactoryImpl.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Dropout_layers/impl/Dropout_layersFactoryImpl.java
new file mode 100644
index 0000000..cf8810d
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Dropout_layers/impl/Dropout_layersFactoryImpl.java
@@ -0,0 +1,142 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.impl;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+
+import org.eclipse.emf.ecore.impl.EFactoryImpl;
+
+import org.eclipse.emf.ecore.plugin.EcorePlugin;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.*;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model <b>Factory</b>.
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class Dropout_layersFactoryImpl extends EFactoryImpl implements Dropout_layersFactory {
+ /**
+ * Creates the default factory implementation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static Dropout_layersFactory init() {
+ try {
+ Dropout_layersFactory theDropout_layersFactory = (Dropout_layersFactory)EPackage.Registry.INSTANCE.getEFactory(Dropout_layersPackage.eNS_URI);
+ if (theDropout_layersFactory != null) {
+ return theDropout_layersFactory;
+ }
+ }
+ catch (Exception exception) {
+ EcorePlugin.INSTANCE.log(exception);
+ }
+ return new Dropout_layersFactoryImpl();
+ }
+
+ /**
+ * Creates an instance of the factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Dropout_layersFactoryImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EObject create(EClass eClass) {
+ switch (eClass.getClassifierID()) {
+ case Dropout_layersPackage.DROPOUT: return createDropout();
+ case Dropout_layersPackage.DROPOUT2D: return createDropout2d();
+ case Dropout_layersPackage.DROPOUT3D: return createDropout3d();
+ case Dropout_layersPackage.ALPHA_DROPOUT: return createAlphaDropout();
+ default:
+ throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier"); //$NON-NLS-1$ //$NON-NLS-2$
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Dropout createDropout() {
+ DropoutImpl dropout = new DropoutImpl();
+ return dropout;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Dropout2d createDropout2d() {
+ Dropout2dImpl dropout2d = new Dropout2dImpl();
+ return dropout2d;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Dropout3d createDropout3d() {
+ Dropout3dImpl dropout3d = new Dropout3dImpl();
+ return dropout3d;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public AlphaDropout createAlphaDropout() {
+ AlphaDropoutImpl alphaDropout = new AlphaDropoutImpl();
+ return alphaDropout;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Dropout_layersPackage getDropout_layersPackage() {
+ return (Dropout_layersPackage)getEPackage();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @deprecated
+ * @generated
+ */
+ @Deprecated
+ public static Dropout_layersPackage getPackage() {
+ return Dropout_layersPackage.eINSTANCE;
+ }
+
+} //Dropout_layersFactoryImpl
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Dropout_layers/impl/Dropout_layersImpl.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Dropout_layers/impl/Dropout_layersImpl.java
new file mode 100644
index 0000000..8702ac9
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Dropout_layers/impl/Dropout_layersImpl.java
@@ -0,0 +1,330 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+import org.eclipse.emf.ecore.util.EDataTypeUniqueEList;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.Dropout_layers;
+import org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.Dropout_layersPackage;
+import org.eclipse.papyrus.aiml.profile.AIML.Module.impl.ModelImpl;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Dropout layers</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.impl.Dropout_layersImpl#getP <em>P</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.impl.Dropout_layersImpl#isInplace <em>Inplace</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.impl.Dropout_layersImpl#getNoise_shape <em>Noise shape</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.impl.Dropout_layersImpl#getSeed <em>Seed</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public abstract class Dropout_layersImpl extends ModelImpl implements Dropout_layers {
+ /**
+ * The default value of the '{@link #getP() <em>P</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getP()
+ * @generated
+ * @ordered
+ */
+ protected static final double P_EDEFAULT = 0.0;
+
+ /**
+ * The cached value of the '{@link #getP() <em>P</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getP()
+ * @generated
+ * @ordered
+ */
+ protected double p = P_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #isInplace() <em>Inplace</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #isInplace()
+ * @generated
+ * @ordered
+ */
+ protected static final boolean INPLACE_EDEFAULT = false;
+
+ /**
+ * The cached value of the '{@link #isInplace() <em>Inplace</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #isInplace()
+ * @generated
+ * @ordered
+ */
+ protected boolean inplace = INPLACE_EDEFAULT;
+
+ /**
+ * The cached value of the '{@link #getNoise_shape() <em>Noise shape</em>}' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getNoise_shape()
+ * @generated
+ * @ordered
+ */
+ protected EList<Integer> noise_shape;
+
+ /**
+ * The default value of the '{@link #getSeed() <em>Seed</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getSeed()
+ * @generated
+ * @ordered
+ */
+ protected static final int SEED_EDEFAULT = 0;
+
+ /**
+ * The cached value of the '{@link #getSeed() <em>Seed</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getSeed()
+ * @generated
+ * @ordered
+ */
+ protected int seed = SEED_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected Dropout_layersImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return Dropout_layersPackage.Literals.DROPOUT_LAYERS;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public double getP() {
+ return p;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void setP(double newP) {
+ double oldP = p;
+ p = newP;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, Dropout_layersPackage.DROPOUT_LAYERS__P, oldP, p));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean isInplace() {
+ return inplace;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void setInplace(boolean newInplace) {
+ boolean oldInplace = inplace;
+ inplace = newInplace;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, Dropout_layersPackage.DROPOUT_LAYERS__INPLACE, oldInplace, inplace));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EList<Integer> getNoise_shape() {
+ if (noise_shape == null) {
+ noise_shape = new EDataTypeUniqueEList<Integer>(Integer.class, this, Dropout_layersPackage.DROPOUT_LAYERS__NOISE_SHAPE);
+ }
+ return noise_shape;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public int getSeed() {
+ return seed;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void setSeed(int newSeed) {
+ int oldSeed = seed;
+ seed = newSeed;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, Dropout_layersPackage.DROPOUT_LAYERS__SEED, oldSeed, seed));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case Dropout_layersPackage.DROPOUT_LAYERS__P:
+ return getP();
+ case Dropout_layersPackage.DROPOUT_LAYERS__INPLACE:
+ return isInplace();
+ case Dropout_layersPackage.DROPOUT_LAYERS__NOISE_SHAPE:
+ return getNoise_shape();
+ case Dropout_layersPackage.DROPOUT_LAYERS__SEED:
+ return getSeed();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @SuppressWarnings("unchecked")
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case Dropout_layersPackage.DROPOUT_LAYERS__P:
+ setP((Double)newValue);
+ return;
+ case Dropout_layersPackage.DROPOUT_LAYERS__INPLACE:
+ setInplace((Boolean)newValue);
+ return;
+ case Dropout_layersPackage.DROPOUT_LAYERS__NOISE_SHAPE:
+ getNoise_shape().clear();
+ getNoise_shape().addAll((Collection<? extends Integer>)newValue);
+ return;
+ case Dropout_layersPackage.DROPOUT_LAYERS__SEED:
+ setSeed((Integer)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case Dropout_layersPackage.DROPOUT_LAYERS__P:
+ setP(P_EDEFAULT);
+ return;
+ case Dropout_layersPackage.DROPOUT_LAYERS__INPLACE:
+ setInplace(INPLACE_EDEFAULT);
+ return;
+ case Dropout_layersPackage.DROPOUT_LAYERS__NOISE_SHAPE:
+ getNoise_shape().clear();
+ return;
+ case Dropout_layersPackage.DROPOUT_LAYERS__SEED:
+ setSeed(SEED_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case Dropout_layersPackage.DROPOUT_LAYERS__P:
+ return p != P_EDEFAULT;
+ case Dropout_layersPackage.DROPOUT_LAYERS__INPLACE:
+ return inplace != INPLACE_EDEFAULT;
+ case Dropout_layersPackage.DROPOUT_LAYERS__NOISE_SHAPE:
+ return noise_shape != null && !noise_shape.isEmpty();
+ case Dropout_layersPackage.DROPOUT_LAYERS__SEED:
+ return seed != SEED_EDEFAULT;
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuilder result = new StringBuilder(super.toString());
+ result.append(" (p: "); //$NON-NLS-1$
+ result.append(p);
+ result.append(", inplace: "); //$NON-NLS-1$
+ result.append(inplace);
+ result.append(", noise_shape: "); //$NON-NLS-1$
+ result.append(noise_shape);
+ result.append(", seed: "); //$NON-NLS-1$
+ result.append(seed);
+ result.append(')');
+ return result.toString();
+ }
+
+} //Dropout_layersImpl
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Dropout_layers/impl/Dropout_layersPackageImpl.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Dropout_layers/impl/Dropout_layersPackageImpl.java
new file mode 100644
index 0000000..22378aa
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Dropout_layers/impl/Dropout_layersPackageImpl.java
@@ -0,0 +1,499 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.impl;
+
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EcorePackage;
+
+import org.eclipse.emf.ecore.impl.EPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.AIMLPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution_layersPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.Convolution_layersPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers.DataParallel_layersPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers.impl.DataParallel_layersPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Distance_functions.Distance_functionsPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Distance_functions.impl.Distance_functionsPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.AlphaDropout;
+import org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.Dropout;
+import org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.Dropout2d;
+import org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.Dropout3d;
+import org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.Dropout_layers;
+import org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.Dropout_layersFactory;
+import org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.Dropout_layersPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.Layer_weight_constraintsPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.impl.Layer_weight_constraintsPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.Layer_weight_initializersPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.impl.Layer_weight_initializersPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers.Layer_weight_regularizersPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers.impl.Layer_weight_regularizersPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.Linear_layersPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.impl.Linear_layersPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Loss_functions.Loss_functionsPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Loss_functions.impl.Loss_functionsPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Module.ModulePackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Module.impl.ModulePackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.NonLinearActivations.NonLinearActivationsPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.NonLinearActivations.impl.NonLinearActivationsPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Normalization_layers.Normalization_layersPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Normalization_layers.impl.Normalization_layersPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Padding_layers.Padding_layersPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Padding_layers.impl.Padding_layersPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Pooling_layers.Pooling_layersPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Pooling_layers.impl.Pooling_layersPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Recurrent_layers.Recurrent_layersPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Recurrent_layers.impl.Recurrent_layersPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.SoftMinMaxActivations.SoftMinMaxActivationsPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.SoftMinMaxActivations.impl.SoftMinMaxActivationsPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Sparse_layers.Sparse_layersPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Sparse_layers.impl.Sparse_layersPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Tensor.TensorPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Tensor.impl.TensorPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Transformer_layers.Transformer_layersPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Transformer_layers.impl.Transformer_layersPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Vision_layers.Vision_layersPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Vision_layers.impl.Vision_layersPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.datatypes.DatatypesPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.datatypes.impl.DatatypesPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.impl.AIMLPackageImpl;
+
+import org.eclipse.uml2.types.TypesPackage;
+
+import org.eclipse.uml2.uml.UMLPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model <b>Package</b>.
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class Dropout_layersPackageImpl extends EPackageImpl implements Dropout_layersPackage {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass dropout_layersEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass dropoutEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass dropout2dEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass dropout3dEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass alphaDropoutEClass = null;
+
+ /**
+ * Creates an instance of the model <b>Package</b>, registered with
+ * {@link org.eclipse.emf.ecore.EPackage.Registry EPackage.Registry} by the package
+ * package URI value.
+ * <p>Note: the correct way to create the package is via the static
+ * factory method {@link #init init()}, which also performs
+ * initialization of the package, or returns the registered package,
+ * if one already exists.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.emf.ecore.EPackage.Registry
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.Dropout_layersPackage#eNS_URI
+ * @see #init()
+ * @generated
+ */
+ private Dropout_layersPackageImpl() {
+ super(eNS_URI, Dropout_layersFactory.eINSTANCE);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private static boolean isInited = false;
+
+ /**
+ * Creates, registers, and initializes the <b>Package</b> for this model, and for any others upon which it depends.
+ *
+ * <p>This method is used to initialize {@link Dropout_layersPackage#eINSTANCE} when that field is accessed.
+ * Clients should not invoke it directly. Instead, they should simply access that field to obtain the package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #eNS_URI
+ * @see #createPackageContents()
+ * @see #initializePackageContents()
+ * @generated
+ */
+ public static Dropout_layersPackage init() {
+ if (isInited) return (Dropout_layersPackage)EPackage.Registry.INSTANCE.getEPackage(Dropout_layersPackage.eNS_URI);
+
+ // Obtain or create and register package
+ Object registeredDropout_layersPackage = EPackage.Registry.INSTANCE.get(eNS_URI);
+ Dropout_layersPackageImpl theDropout_layersPackage = registeredDropout_layersPackage instanceof Dropout_layersPackageImpl ? (Dropout_layersPackageImpl)registeredDropout_layersPackage : new Dropout_layersPackageImpl();
+
+ isInited = true;
+
+ // Initialize simple dependencies
+ EcorePackage.eINSTANCE.eClass();
+ TypesPackage.eINSTANCE.eClass();
+ UMLPackage.eINSTANCE.eClass();
+
+ // Obtain or create and register interdependencies
+ Object registeredPackage = EPackage.Registry.INSTANCE.getEPackage(AIMLPackage.eNS_URI);
+ AIMLPackageImpl theAIMLPackage = (AIMLPackageImpl)(registeredPackage instanceof AIMLPackageImpl ? registeredPackage : AIMLPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(ModulePackage.eNS_URI);
+ ModulePackageImpl theModulePackage = (ModulePackageImpl)(registeredPackage instanceof ModulePackageImpl ? registeredPackage : ModulePackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(TensorPackage.eNS_URI);
+ TensorPackageImpl theTensorPackage = (TensorPackageImpl)(registeredPackage instanceof TensorPackageImpl ? registeredPackage : TensorPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(DatatypesPackage.eNS_URI);
+ DatatypesPackageImpl theDatatypesPackage = (DatatypesPackageImpl)(registeredPackage instanceof DatatypesPackageImpl ? registeredPackage : DatatypesPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Pooling_layersPackage.eNS_URI);
+ Pooling_layersPackageImpl thePooling_layersPackage = (Pooling_layersPackageImpl)(registeredPackage instanceof Pooling_layersPackageImpl ? registeredPackage : Pooling_layersPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Convolution_layersPackage.eNS_URI);
+ Convolution_layersPackageImpl theConvolution_layersPackage = (Convolution_layersPackageImpl)(registeredPackage instanceof Convolution_layersPackageImpl ? registeredPackage : Convolution_layersPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Layer_weight_constraintsPackage.eNS_URI);
+ Layer_weight_constraintsPackageImpl theLayer_weight_constraintsPackage = (Layer_weight_constraintsPackageImpl)(registeredPackage instanceof Layer_weight_constraintsPackageImpl ? registeredPackage : Layer_weight_constraintsPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Padding_layersPackage.eNS_URI);
+ Padding_layersPackageImpl thePadding_layersPackage = (Padding_layersPackageImpl)(registeredPackage instanceof Padding_layersPackageImpl ? registeredPackage : Padding_layersPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(NonLinearActivationsPackage.eNS_URI);
+ NonLinearActivationsPackageImpl theNonLinearActivationsPackage = (NonLinearActivationsPackageImpl)(registeredPackage instanceof NonLinearActivationsPackageImpl ? registeredPackage : NonLinearActivationsPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(SoftMinMaxActivationsPackage.eNS_URI);
+ SoftMinMaxActivationsPackageImpl theSoftMinMaxActivationsPackage = (SoftMinMaxActivationsPackageImpl)(registeredPackage instanceof SoftMinMaxActivationsPackageImpl ? registeredPackage : SoftMinMaxActivationsPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Normalization_layersPackage.eNS_URI);
+ Normalization_layersPackageImpl theNormalization_layersPackage = (Normalization_layersPackageImpl)(registeredPackage instanceof Normalization_layersPackageImpl ? registeredPackage : Normalization_layersPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Recurrent_layersPackage.eNS_URI);
+ Recurrent_layersPackageImpl theRecurrent_layersPackage = (Recurrent_layersPackageImpl)(registeredPackage instanceof Recurrent_layersPackageImpl ? registeredPackage : Recurrent_layersPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Transformer_layersPackage.eNS_URI);
+ Transformer_layersPackageImpl theTransformer_layersPackage = (Transformer_layersPackageImpl)(registeredPackage instanceof Transformer_layersPackageImpl ? registeredPackage : Transformer_layersPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Linear_layersPackage.eNS_URI);
+ Linear_layersPackageImpl theLinear_layersPackage = (Linear_layersPackageImpl)(registeredPackage instanceof Linear_layersPackageImpl ? registeredPackage : Linear_layersPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Sparse_layersPackage.eNS_URI);
+ Sparse_layersPackageImpl theSparse_layersPackage = (Sparse_layersPackageImpl)(registeredPackage instanceof Sparse_layersPackageImpl ? registeredPackage : Sparse_layersPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Distance_functionsPackage.eNS_URI);
+ Distance_functionsPackageImpl theDistance_functionsPackage = (Distance_functionsPackageImpl)(registeredPackage instanceof Distance_functionsPackageImpl ? registeredPackage : Distance_functionsPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Loss_functionsPackage.eNS_URI);
+ Loss_functionsPackageImpl theLoss_functionsPackage = (Loss_functionsPackageImpl)(registeredPackage instanceof Loss_functionsPackageImpl ? registeredPackage : Loss_functionsPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Vision_layersPackage.eNS_URI);
+ Vision_layersPackageImpl theVision_layersPackage = (Vision_layersPackageImpl)(registeredPackage instanceof Vision_layersPackageImpl ? registeredPackage : Vision_layersPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(DataParallel_layersPackage.eNS_URI);
+ DataParallel_layersPackageImpl theDataParallel_layersPackage = (DataParallel_layersPackageImpl)(registeredPackage instanceof DataParallel_layersPackageImpl ? registeredPackage : DataParallel_layersPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Layer_weight_regularizersPackage.eNS_URI);
+ Layer_weight_regularizersPackageImpl theLayer_weight_regularizersPackage = (Layer_weight_regularizersPackageImpl)(registeredPackage instanceof Layer_weight_regularizersPackageImpl ? registeredPackage : Layer_weight_regularizersPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Layer_weight_initializersPackage.eNS_URI);
+ Layer_weight_initializersPackageImpl theLayer_weight_initializersPackage = (Layer_weight_initializersPackageImpl)(registeredPackage instanceof Layer_weight_initializersPackageImpl ? registeredPackage : Layer_weight_initializersPackage.eINSTANCE);
+
+ // Create package meta-data objects
+ theDropout_layersPackage.createPackageContents();
+ theAIMLPackage.createPackageContents();
+ theModulePackage.createPackageContents();
+ theTensorPackage.createPackageContents();
+ theDatatypesPackage.createPackageContents();
+ thePooling_layersPackage.createPackageContents();
+ theConvolution_layersPackage.createPackageContents();
+ theLayer_weight_constraintsPackage.createPackageContents();
+ thePadding_layersPackage.createPackageContents();
+ theNonLinearActivationsPackage.createPackageContents();
+ theSoftMinMaxActivationsPackage.createPackageContents();
+ theNormalization_layersPackage.createPackageContents();
+ theRecurrent_layersPackage.createPackageContents();
+ theTransformer_layersPackage.createPackageContents();
+ theLinear_layersPackage.createPackageContents();
+ theSparse_layersPackage.createPackageContents();
+ theDistance_functionsPackage.createPackageContents();
+ theLoss_functionsPackage.createPackageContents();
+ theVision_layersPackage.createPackageContents();
+ theDataParallel_layersPackage.createPackageContents();
+ theLayer_weight_regularizersPackage.createPackageContents();
+ theLayer_weight_initializersPackage.createPackageContents();
+
+ // Initialize created meta-data
+ theDropout_layersPackage.initializePackageContents();
+ theAIMLPackage.initializePackageContents();
+ theModulePackage.initializePackageContents();
+ theTensorPackage.initializePackageContents();
+ theDatatypesPackage.initializePackageContents();
+ thePooling_layersPackage.initializePackageContents();
+ theConvolution_layersPackage.initializePackageContents();
+ theLayer_weight_constraintsPackage.initializePackageContents();
+ thePadding_layersPackage.initializePackageContents();
+ theNonLinearActivationsPackage.initializePackageContents();
+ theSoftMinMaxActivationsPackage.initializePackageContents();
+ theNormalization_layersPackage.initializePackageContents();
+ theRecurrent_layersPackage.initializePackageContents();
+ theTransformer_layersPackage.initializePackageContents();
+ theLinear_layersPackage.initializePackageContents();
+ theSparse_layersPackage.initializePackageContents();
+ theDistance_functionsPackage.initializePackageContents();
+ theLoss_functionsPackage.initializePackageContents();
+ theVision_layersPackage.initializePackageContents();
+ theDataParallel_layersPackage.initializePackageContents();
+ theLayer_weight_regularizersPackage.initializePackageContents();
+ theLayer_weight_initializersPackage.initializePackageContents();
+
+ // Mark meta-data to indicate it can't be changed
+ theDropout_layersPackage.freeze();
+
+ // Update the registry and return the package
+ EPackage.Registry.INSTANCE.put(Dropout_layersPackage.eNS_URI, theDropout_layersPackage);
+ return theDropout_layersPackage;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EClass getDropout_layers() {
+ return dropout_layersEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EAttribute getDropout_layers_P() {
+ return (EAttribute)dropout_layersEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EAttribute getDropout_layers_Inplace() {
+ return (EAttribute)dropout_layersEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EAttribute getDropout_layers_Noise_shape() {
+ return (EAttribute)dropout_layersEClass.getEStructuralFeatures().get(2);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EAttribute getDropout_layers_Seed() {
+ return (EAttribute)dropout_layersEClass.getEStructuralFeatures().get(3);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EClass getDropout() {
+ return dropoutEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EClass getDropout2d() {
+ return dropout2dEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EClass getDropout3d() {
+ return dropout3dEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EClass getAlphaDropout() {
+ return alphaDropoutEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Dropout_layersFactory getDropout_layersFactory() {
+ return (Dropout_layersFactory)getEFactoryInstance();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private boolean isCreated = false;
+
+ /**
+ * Creates the meta-model objects for the package. This method is
+ * guarded to have no affect on any invocation but its first.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void createPackageContents() {
+ if (isCreated) return;
+ isCreated = true;
+
+ // Create classes and their features
+ dropout_layersEClass = createEClass(DROPOUT_LAYERS);
+ createEAttribute(dropout_layersEClass, DROPOUT_LAYERS__P);
+ createEAttribute(dropout_layersEClass, DROPOUT_LAYERS__INPLACE);
+ createEAttribute(dropout_layersEClass, DROPOUT_LAYERS__NOISE_SHAPE);
+ createEAttribute(dropout_layersEClass, DROPOUT_LAYERS__SEED);
+
+ dropoutEClass = createEClass(DROPOUT);
+
+ dropout2dEClass = createEClass(DROPOUT2D);
+
+ dropout3dEClass = createEClass(DROPOUT3D);
+
+ alphaDropoutEClass = createEClass(ALPHA_DROPOUT);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private boolean isInitialized = false;
+
+ /**
+ * Complete the initialization of the package and its meta-model. This
+ * method is guarded to have no affect on any invocation but its first.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void initializePackageContents() {
+ if (isInitialized) return;
+ isInitialized = true;
+
+ // Initialize package
+ setName(eNAME);
+ setNsPrefix(eNS_PREFIX);
+ setNsURI(eNS_URI);
+
+ // Obtain other dependent packages
+ ModulePackage theModulePackage = (ModulePackage)EPackage.Registry.INSTANCE.getEPackage(ModulePackage.eNS_URI);
+ TypesPackage theTypesPackage = (TypesPackage)EPackage.Registry.INSTANCE.getEPackage(TypesPackage.eNS_URI);
+
+ // Create type parameters
+
+ // Set bounds for type parameters
+
+ // Add supertypes to classes
+ dropout_layersEClass.getESuperTypes().add(theModulePackage.getModel());
+ dropoutEClass.getESuperTypes().add(this.getDropout_layers());
+ dropout2dEClass.getESuperTypes().add(this.getDropout_layers());
+ dropout3dEClass.getESuperTypes().add(this.getDropout_layers());
+ alphaDropoutEClass.getESuperTypes().add(this.getDropout_layers());
+
+ // Initialize classes, features, and operations; add parameters
+ initEClass(dropout_layersEClass, Dropout_layers.class, "Dropout_layers", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ initEAttribute(getDropout_layers_P(), theTypesPackage.getReal(), "p", null, 0, 1, Dropout_layers.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+ initEAttribute(getDropout_layers_Inplace(), theTypesPackage.getBoolean(), "inplace", null, 0, 1, Dropout_layers.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+ initEAttribute(getDropout_layers_Noise_shape(), theTypesPackage.getInteger(), "noise_shape", null, 0, -1, Dropout_layers.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+ initEAttribute(getDropout_layers_Seed(), theTypesPackage.getInteger(), "seed", null, 0, 1, Dropout_layers.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+
+ initEClass(dropoutEClass, Dropout.class, "Dropout", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+
+ initEClass(dropout2dEClass, Dropout2d.class, "Dropout2d", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+
+ initEClass(dropout3dEClass, Dropout3d.class, "Dropout3d", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+
+ initEClass(alphaDropoutEClass, AlphaDropout.class, "AlphaDropout", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ }
+
+} //Dropout_layersPackageImpl
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Dropout_layers/util/Dropout_layersAdapterFactory.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Dropout_layers/util/Dropout_layersAdapterFactory.java
new file mode 100644
index 0000000..7bc7576
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Dropout_layers/util/Dropout_layersAdapterFactory.java
@@ -0,0 +1,220 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.util;
+
+import org.eclipse.emf.common.notify.Adapter;
+import org.eclipse.emf.common.notify.Notifier;
+
+import org.eclipse.emf.common.notify.impl.AdapterFactoryImpl;
+
+import org.eclipse.emf.ecore.EObject;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.*;
+import org.eclipse.papyrus.aiml.profile.AIML.Module.Model;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Adapter Factory</b> for the model.
+ * It provides an adapter <code>createXXX</code> method for each class of the model.
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.Dropout_layersPackage
+ * @generated
+ */
+public class Dropout_layersAdapterFactory extends AdapterFactoryImpl {
+ /**
+ * The cached model package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected static Dropout_layersPackage modelPackage;
+
+ /**
+ * Creates an instance of the adapter factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Dropout_layersAdapterFactory() {
+ if (modelPackage == null) {
+ modelPackage = Dropout_layersPackage.eINSTANCE;
+ }
+ }
+
+ /**
+ * Returns whether this factory is applicable for the type of the object.
+ * <!-- begin-user-doc -->
+ * This implementation returns <code>true</code> if the object is either the model's package or is an instance object of the model.
+ * <!-- end-user-doc -->
+ * @return whether this factory is applicable for the type of the object.
+ * @generated
+ */
+ @Override
+ public boolean isFactoryForType(Object object) {
+ if (object == modelPackage) {
+ return true;
+ }
+ if (object instanceof EObject) {
+ return ((EObject)object).eClass().getEPackage() == modelPackage;
+ }
+ return false;
+ }
+
+ /**
+ * The switch that delegates to the <code>createXXX</code> methods.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected Dropout_layersSwitch<Adapter> modelSwitch =
+ new Dropout_layersSwitch<Adapter>() {
+ @Override
+ public Adapter caseDropout_layers(Dropout_layers object) {
+ return createDropout_layersAdapter();
+ }
+ @Override
+ public Adapter caseDropout(Dropout object) {
+ return createDropoutAdapter();
+ }
+ @Override
+ public Adapter caseDropout2d(Dropout2d object) {
+ return createDropout2dAdapter();
+ }
+ @Override
+ public Adapter caseDropout3d(Dropout3d object) {
+ return createDropout3dAdapter();
+ }
+ @Override
+ public Adapter caseAlphaDropout(AlphaDropout object) {
+ return createAlphaDropoutAdapter();
+ }
+ @Override
+ public Adapter caseModel(Model object) {
+ return createModelAdapter();
+ }
+ @Override
+ public Adapter defaultCase(EObject object) {
+ return createEObjectAdapter();
+ }
+ };
+
+ /**
+ * Creates an adapter for the <code>target</code>.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param target the object to adapt.
+ * @return the adapter for the <code>target</code>.
+ * @generated
+ */
+ @Override
+ public Adapter createAdapter(Notifier target) {
+ return modelSwitch.doSwitch((EObject)target);
+ }
+
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.Dropout_layers <em>Dropout layers</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.Dropout_layers
+ * @generated
+ */
+ public Adapter createDropout_layersAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.Dropout <em>Dropout</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.Dropout
+ * @generated
+ */
+ public Adapter createDropoutAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.Dropout2d <em>Dropout2d</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.Dropout2d
+ * @generated
+ */
+ public Adapter createDropout2dAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.Dropout3d <em>Dropout3d</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.Dropout3d
+ * @generated
+ */
+ public Adapter createDropout3dAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.AlphaDropout <em>Alpha Dropout</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.AlphaDropout
+ * @generated
+ */
+ public Adapter createAlphaDropoutAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.aiml.profile.AIML.Module.Model <em>Model</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Module.Model
+ * @generated
+ */
+ public Adapter createModelAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for the default case.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @generated
+ */
+ public Adapter createEObjectAdapter() {
+ return null;
+ }
+
+} //Dropout_layersAdapterFactory
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Dropout_layers/util/Dropout_layersSwitch.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Dropout_layers/util/Dropout_layersSwitch.java
new file mode 100644
index 0000000..ba3ae1a
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Dropout_layers/util/Dropout_layersSwitch.java
@@ -0,0 +1,228 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.util;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+
+import org.eclipse.emf.ecore.util.Switch;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.*;
+import org.eclipse.papyrus.aiml.profile.AIML.Module.Model;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Switch</b> for the model's inheritance hierarchy.
+ * It supports the call {@link #doSwitch(EObject) doSwitch(object)}
+ * to invoke the <code>caseXXX</code> method for each class of the model,
+ * starting with the actual class of the object
+ * and proceeding up the inheritance hierarchy
+ * until a non-null result is returned,
+ * which is the result of the switch.
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.Dropout_layersPackage
+ * @generated
+ */
+public class Dropout_layersSwitch<T> extends Switch<T> {
+ /**
+ * The cached model package
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected static Dropout_layersPackage modelPackage;
+
+ /**
+ * Creates an instance of the switch.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Dropout_layersSwitch() {
+ if (modelPackage == null) {
+ modelPackage = Dropout_layersPackage.eINSTANCE;
+ }
+ }
+
+ /**
+ * Checks whether this is a switch for the given package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param ePackage the package in question.
+ * @return whether this is a switch for the given package.
+ * @generated
+ */
+ @Override
+ protected boolean isSwitchFor(EPackage ePackage) {
+ return ePackage == modelPackage;
+ }
+
+ /**
+ * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the first non-null result returned by a <code>caseXXX</code> call.
+ * @generated
+ */
+ @Override
+ protected T doSwitch(int classifierID, EObject theEObject) {
+ switch (classifierID) {
+ case Dropout_layersPackage.DROPOUT_LAYERS: {
+ Dropout_layers dropout_layers = (Dropout_layers)theEObject;
+ T result = caseDropout_layers(dropout_layers);
+ if (result == null) result = caseModel(dropout_layers);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case Dropout_layersPackage.DROPOUT: {
+ Dropout dropout = (Dropout)theEObject;
+ T result = caseDropout(dropout);
+ if (result == null) result = caseDropout_layers(dropout);
+ if (result == null) result = caseModel(dropout);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case Dropout_layersPackage.DROPOUT2D: {
+ Dropout2d dropout2d = (Dropout2d)theEObject;
+ T result = caseDropout2d(dropout2d);
+ if (result == null) result = caseDropout_layers(dropout2d);
+ if (result == null) result = caseModel(dropout2d);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case Dropout_layersPackage.DROPOUT3D: {
+ Dropout3d dropout3d = (Dropout3d)theEObject;
+ T result = caseDropout3d(dropout3d);
+ if (result == null) result = caseDropout_layers(dropout3d);
+ if (result == null) result = caseModel(dropout3d);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case Dropout_layersPackage.ALPHA_DROPOUT: {
+ AlphaDropout alphaDropout = (AlphaDropout)theEObject;
+ T result = caseAlphaDropout(alphaDropout);
+ if (result == null) result = caseDropout_layers(alphaDropout);
+ if (result == null) result = caseModel(alphaDropout);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ default: return defaultCase(theEObject);
+ }
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Dropout layers</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Dropout layers</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseDropout_layers(Dropout_layers object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Dropout</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Dropout</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseDropout(Dropout object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Dropout2d</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Dropout2d</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseDropout2d(Dropout2d object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Dropout3d</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Dropout3d</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseDropout3d(Dropout3d object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Alpha Dropout</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Alpha Dropout</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseAlphaDropout(AlphaDropout object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Model</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Model</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseModel(Model object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>EObject</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch, but this is the last case anyway.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>EObject</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject)
+ * @generated
+ */
+ @Override
+ public T defaultCase(EObject object) {
+ return null;
+ }
+
+} //Dropout_layersSwitch
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_constraints/Layer_weight_constraintsFactory.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_constraints/Layer_weight_constraintsFactory.java
new file mode 100644
index 0000000..8fb8633
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_constraints/Layer_weight_constraintsFactory.java
@@ -0,0 +1,87 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints;
+
+import org.eclipse.emf.ecore.EFactory;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Factory</b> for the model.
+ * It provides a create method for each non-abstract class of the model.
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.Layer_weight_constraintsPackage
+ * @generated
+ */
+public interface Layer_weight_constraintsFactory extends EFactory {
+ /**
+ * The singleton instance of the factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ Layer_weight_constraintsFactory eINSTANCE = org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.impl.Layer_weight_constraintsFactoryImpl.init();
+
+ /**
+ * Returns a new object of class '<em>min max norm</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>min max norm</em>'.
+ * @generated
+ */
+ min_max_norm createmin_max_norm();
+
+ /**
+ * Returns a new object of class '<em>max norm</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>max norm</em>'.
+ * @generated
+ */
+ max_norm createmax_norm();
+
+ /**
+ * Returns a new object of class '<em>non neg</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>non neg</em>'.
+ * @generated
+ */
+ non_neg createnon_neg();
+
+ /**
+ * Returns a new object of class '<em>radial constraint</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>radial constraint</em>'.
+ * @generated
+ */
+ radial_constraint createradial_constraint();
+
+ /**
+ * Returns a new object of class '<em>unit norm</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>unit norm</em>'.
+ * @generated
+ */
+ unit_norm createunit_norm();
+
+ /**
+ * Returns the package supported by this factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the package supported by this factory.
+ * @generated
+ */
+ Layer_weight_constraintsPackage getLayer_weight_constraintsPackage();
+
+} //Layer_weight_constraintsFactory
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_constraints/Layer_weight_constraintsPackage.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_constraints/Layer_weight_constraintsPackage.java
new file mode 100644
index 0000000..86ad8a8
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_constraints/Layer_weight_constraintsPackage.java
@@ -0,0 +1,643 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints;
+
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Package</b> for the model.
+ * It contains accessors for the meta objects to represent
+ * <ul>
+ * <li>each class,</li>
+ * <li>each feature of each class,</li>
+ * <li>each operation of each class,</li>
+ * <li>each enum,</li>
+ * <li>and each data type</li>
+ * </ul>
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.Layer_weight_constraintsFactory
+ * @model kind="package"
+ * @generated
+ */
+public interface Layer_weight_constraintsPackage extends EPackage {
+ /**
+ * The package name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNAME = "Layer_weight_constraints"; //$NON-NLS-1$
+
+ /**
+ * The package namespace URI.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNS_URI = "http:///AIML/Layer_weight_constraints.ecore"; //$NON-NLS-1$
+
+ /**
+ * The package namespace name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNS_PREFIX = "AIML.Layer_weight_constraints"; //$NON-NLS-1$
+
+ /**
+ * The singleton instance of the package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ Layer_weight_constraintsPackage eINSTANCE = org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.impl.Layer_weight_constraintsPackageImpl.init();
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.impl.constraintsImpl <em>constraints</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.impl.constraintsImpl
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.impl.Layer_weight_constraintsPackageImpl#getconstraints()
+ * @generated
+ */
+ int CONSTRAINTS = 7;
+
+ /**
+ * The number of structural features of the '<em>constraints</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONSTRAINTS_FEATURE_COUNT = 0;
+
+ /**
+ * The number of operations of the '<em>constraints</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONSTRAINTS_OPERATION_COUNT = 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.impl.normImpl <em>norm</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.impl.normImpl
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.impl.Layer_weight_constraintsPackageImpl#getnorm()
+ * @generated
+ */
+ int NORM = 2;
+
+ /**
+ * The feature id for the '<em><b>Axis</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int NORM__AXIS = CONSTRAINTS_FEATURE_COUNT + 0;
+
+ /**
+ * The number of structural features of the '<em>norm</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int NORM_FEATURE_COUNT = CONSTRAINTS_FEATURE_COUNT + 1;
+
+ /**
+ * The number of operations of the '<em>norm</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int NORM_OPERATION_COUNT = CONSTRAINTS_OPERATION_COUNT + 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.impl.NormWithMaxValueImpl <em>Norm With Max Value</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.impl.NormWithMaxValueImpl
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.impl.Layer_weight_constraintsPackageImpl#getNormWithMaxValue()
+ * @generated
+ */
+ int NORM_WITH_MAX_VALUE = 1;
+
+ /**
+ * The feature id for the '<em><b>Axis</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int NORM_WITH_MAX_VALUE__AXIS = NORM__AXIS;
+
+ /**
+ * The feature id for the '<em><b>Max value</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int NORM_WITH_MAX_VALUE__MAX_VALUE = NORM_FEATURE_COUNT + 0;
+
+ /**
+ * The number of structural features of the '<em>Norm With Max Value</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int NORM_WITH_MAX_VALUE_FEATURE_COUNT = NORM_FEATURE_COUNT + 1;
+
+ /**
+ * The number of operations of the '<em>Norm With Max Value</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int NORM_WITH_MAX_VALUE_OPERATION_COUNT = NORM_OPERATION_COUNT + 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.impl.min_max_normImpl <em>min max norm</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.impl.min_max_normImpl
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.impl.Layer_weight_constraintsPackageImpl#getmin_max_norm()
+ * @generated
+ */
+ int MIN_MAX_NORM = 0;
+
+ /**
+ * The feature id for the '<em><b>Axis</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int MIN_MAX_NORM__AXIS = NORM_WITH_MAX_VALUE__AXIS;
+
+ /**
+ * The feature id for the '<em><b>Max value</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int MIN_MAX_NORM__MAX_VALUE = NORM_WITH_MAX_VALUE__MAX_VALUE;
+
+ /**
+ * The feature id for the '<em><b>Min value</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int MIN_MAX_NORM__MIN_VALUE = NORM_WITH_MAX_VALUE_FEATURE_COUNT + 0;
+
+ /**
+ * The feature id for the '<em><b>Rate</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int MIN_MAX_NORM__RATE = NORM_WITH_MAX_VALUE_FEATURE_COUNT + 1;
+
+ /**
+ * The number of structural features of the '<em>min max norm</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int MIN_MAX_NORM_FEATURE_COUNT = NORM_WITH_MAX_VALUE_FEATURE_COUNT + 2;
+
+ /**
+ * The number of operations of the '<em>min max norm</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int MIN_MAX_NORM_OPERATION_COUNT = NORM_WITH_MAX_VALUE_OPERATION_COUNT + 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.impl.max_normImpl <em>max norm</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.impl.max_normImpl
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.impl.Layer_weight_constraintsPackageImpl#getmax_norm()
+ * @generated
+ */
+ int MAX_NORM = 3;
+
+ /**
+ * The feature id for the '<em><b>Axis</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int MAX_NORM__AXIS = NORM_WITH_MAX_VALUE__AXIS;
+
+ /**
+ * The feature id for the '<em><b>Max value</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int MAX_NORM__MAX_VALUE = NORM_WITH_MAX_VALUE__MAX_VALUE;
+
+ /**
+ * The number of structural features of the '<em>max norm</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int MAX_NORM_FEATURE_COUNT = NORM_WITH_MAX_VALUE_FEATURE_COUNT + 0;
+
+ /**
+ * The number of operations of the '<em>max norm</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int MAX_NORM_OPERATION_COUNT = NORM_WITH_MAX_VALUE_OPERATION_COUNT + 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.impl.non_negImpl <em>non neg</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.impl.non_negImpl
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.impl.Layer_weight_constraintsPackageImpl#getnon_neg()
+ * @generated
+ */
+ int NON_NEG = 4;
+
+ /**
+ * The number of structural features of the '<em>non neg</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int NON_NEG_FEATURE_COUNT = CONSTRAINTS_FEATURE_COUNT + 0;
+
+ /**
+ * The number of operations of the '<em>non neg</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int NON_NEG_OPERATION_COUNT = CONSTRAINTS_OPERATION_COUNT + 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.impl.radial_constraintImpl <em>radial constraint</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.impl.radial_constraintImpl
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.impl.Layer_weight_constraintsPackageImpl#getradial_constraint()
+ * @generated
+ */
+ int RADIAL_CONSTRAINT = 5;
+
+ /**
+ * The number of structural features of the '<em>radial constraint</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int RADIAL_CONSTRAINT_FEATURE_COUNT = CONSTRAINTS_FEATURE_COUNT + 0;
+
+ /**
+ * The number of operations of the '<em>radial constraint</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int RADIAL_CONSTRAINT_OPERATION_COUNT = CONSTRAINTS_OPERATION_COUNT + 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.impl.unit_normImpl <em>unit norm</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.impl.unit_normImpl
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.impl.Layer_weight_constraintsPackageImpl#getunit_norm()
+ * @generated
+ */
+ int UNIT_NORM = 6;
+
+ /**
+ * The feature id for the '<em><b>Axis</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int UNIT_NORM__AXIS = NORM__AXIS;
+
+ /**
+ * The number of structural features of the '<em>unit norm</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int UNIT_NORM_FEATURE_COUNT = NORM_FEATURE_COUNT + 0;
+
+ /**
+ * The number of operations of the '<em>unit norm</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int UNIT_NORM_OPERATION_COUNT = NORM_OPERATION_COUNT + 0;
+
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.min_max_norm <em>min max norm</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>min max norm</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.min_max_norm
+ * @generated
+ */
+ EClass getmin_max_norm();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.min_max_norm#getMin_value <em>Min value</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Min value</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.min_max_norm#getMin_value()
+ * @see #getmin_max_norm()
+ * @generated
+ */
+ EAttribute getmin_max_norm_Min_value();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.min_max_norm#getRate <em>Rate</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Rate</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.min_max_norm#getRate()
+ * @see #getmin_max_norm()
+ * @generated
+ */
+ EAttribute getmin_max_norm_Rate();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.NormWithMaxValue <em>Norm With Max Value</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Norm With Max Value</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.NormWithMaxValue
+ * @generated
+ */
+ EClass getNormWithMaxValue();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.NormWithMaxValue#getMax_value <em>Max value</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Max value</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.NormWithMaxValue#getMax_value()
+ * @see #getNormWithMaxValue()
+ * @generated
+ */
+ EAttribute getNormWithMaxValue_Max_value();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.norm <em>norm</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>norm</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.norm
+ * @generated
+ */
+ EClass getnorm();
+
+ /**
+ * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.norm#getAxis <em>Axis</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute list '<em>Axis</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.norm#getAxis()
+ * @see #getnorm()
+ * @generated
+ */
+ EAttribute getnorm_Axis();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.max_norm <em>max norm</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>max norm</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.max_norm
+ * @generated
+ */
+ EClass getmax_norm();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.non_neg <em>non neg</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>non neg</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.non_neg
+ * @generated
+ */
+ EClass getnon_neg();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.radial_constraint <em>radial constraint</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>radial constraint</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.radial_constraint
+ * @generated
+ */
+ EClass getradial_constraint();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.unit_norm <em>unit norm</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>unit norm</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.unit_norm
+ * @generated
+ */
+ EClass getunit_norm();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.constraints <em>constraints</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>constraints</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.constraints
+ * @generated
+ */
+ EClass getconstraints();
+
+ /**
+ * Returns the factory that creates the instances of the model.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the factory that creates the instances of the model.
+ * @generated
+ */
+ Layer_weight_constraintsFactory getLayer_weight_constraintsFactory();
+
+ /**
+ * <!-- begin-user-doc -->
+ * Defines literals for the meta objects that represent
+ * <ul>
+ * <li>each class,</li>
+ * <li>each feature of each class,</li>
+ * <li>each operation of each class,</li>
+ * <li>each enum,</li>
+ * <li>and each data type</li>
+ * </ul>
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ interface Literals {
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.impl.min_max_normImpl <em>min max norm</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.impl.min_max_normImpl
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.impl.Layer_weight_constraintsPackageImpl#getmin_max_norm()
+ * @generated
+ */
+ EClass MIN_MAX_NORM = eINSTANCE.getmin_max_norm();
+
+ /**
+ * The meta object literal for the '<em><b>Min value</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute MIN_MAX_NORM__MIN_VALUE = eINSTANCE.getmin_max_norm_Min_value();
+
+ /**
+ * The meta object literal for the '<em><b>Rate</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute MIN_MAX_NORM__RATE = eINSTANCE.getmin_max_norm_Rate();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.impl.NormWithMaxValueImpl <em>Norm With Max Value</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.impl.NormWithMaxValueImpl
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.impl.Layer_weight_constraintsPackageImpl#getNormWithMaxValue()
+ * @generated
+ */
+ EClass NORM_WITH_MAX_VALUE = eINSTANCE.getNormWithMaxValue();
+
+ /**
+ * The meta object literal for the '<em><b>Max value</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute NORM_WITH_MAX_VALUE__MAX_VALUE = eINSTANCE.getNormWithMaxValue_Max_value();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.impl.normImpl <em>norm</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.impl.normImpl
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.impl.Layer_weight_constraintsPackageImpl#getnorm()
+ * @generated
+ */
+ EClass NORM = eINSTANCE.getnorm();
+
+ /**
+ * The meta object literal for the '<em><b>Axis</b></em>' attribute list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute NORM__AXIS = eINSTANCE.getnorm_Axis();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.impl.max_normImpl <em>max norm</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.impl.max_normImpl
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.impl.Layer_weight_constraintsPackageImpl#getmax_norm()
+ * @generated
+ */
+ EClass MAX_NORM = eINSTANCE.getmax_norm();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.impl.non_negImpl <em>non neg</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.impl.non_negImpl
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.impl.Layer_weight_constraintsPackageImpl#getnon_neg()
+ * @generated
+ */
+ EClass NON_NEG = eINSTANCE.getnon_neg();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.impl.radial_constraintImpl <em>radial constraint</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.impl.radial_constraintImpl
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.impl.Layer_weight_constraintsPackageImpl#getradial_constraint()
+ * @generated
+ */
+ EClass RADIAL_CONSTRAINT = eINSTANCE.getradial_constraint();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.impl.unit_normImpl <em>unit norm</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.impl.unit_normImpl
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.impl.Layer_weight_constraintsPackageImpl#getunit_norm()
+ * @generated
+ */
+ EClass UNIT_NORM = eINSTANCE.getunit_norm();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.impl.constraintsImpl <em>constraints</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.impl.constraintsImpl
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.impl.Layer_weight_constraintsPackageImpl#getconstraints()
+ * @generated
+ */
+ EClass CONSTRAINTS = eINSTANCE.getconstraints();
+
+ }
+
+} //Layer_weight_constraintsPackage
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_constraints/NormWithMaxValue.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_constraints/NormWithMaxValue.java
new file mode 100644
index 0000000..ff7ebd6
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_constraints/NormWithMaxValue.java
@@ -0,0 +1,58 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Norm With Max Value</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.NormWithMaxValue#getMax_value <em>Max value</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.Layer_weight_constraintsPackage#getNormWithMaxValue()
+ * @model abstract="true"
+ * @generated
+ */
+public interface NormWithMaxValue extends norm {
+ /**
+ * Returns the value of the '<em><b>Max value</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Max value</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Max value</em>' attribute.
+ * @see #setMax_value(double)
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.Layer_weight_constraintsPackage#getNormWithMaxValue_Max_value()
+ * @model dataType="org.eclipse.uml2.types.Real" required="true" ordered="false"
+ * @generated
+ */
+ double getMax_value();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.NormWithMaxValue#getMax_value <em>Max value</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Max value</em>' attribute.
+ * @see #getMax_value()
+ * @generated
+ */
+ void setMax_value(double value);
+
+} // NormWithMaxValue
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_constraints/constraints.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_constraints/constraints.java
new file mode 100644
index 0000000..6b54d6f
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_constraints/constraints.java
@@ -0,0 +1,27 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>constraints</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.Layer_weight_constraintsPackage#getconstraints()
+ * @model abstract="true"
+ * @generated
+ */
+public interface constraints extends EObject {
+} // constraints
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_constraints/impl/Layer_weight_constraintsFactoryImpl.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_constraints/impl/Layer_weight_constraintsFactoryImpl.java
new file mode 100644
index 0000000..5b09109
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_constraints/impl/Layer_weight_constraintsFactoryImpl.java
@@ -0,0 +1,154 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.impl;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+
+import org.eclipse.emf.ecore.impl.EFactoryImpl;
+
+import org.eclipse.emf.ecore.plugin.EcorePlugin;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.*;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model <b>Factory</b>.
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class Layer_weight_constraintsFactoryImpl extends EFactoryImpl implements Layer_weight_constraintsFactory {
+ /**
+ * Creates the default factory implementation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static Layer_weight_constraintsFactory init() {
+ try {
+ Layer_weight_constraintsFactory theLayer_weight_constraintsFactory = (Layer_weight_constraintsFactory)EPackage.Registry.INSTANCE.getEFactory(Layer_weight_constraintsPackage.eNS_URI);
+ if (theLayer_weight_constraintsFactory != null) {
+ return theLayer_weight_constraintsFactory;
+ }
+ }
+ catch (Exception exception) {
+ EcorePlugin.INSTANCE.log(exception);
+ }
+ return new Layer_weight_constraintsFactoryImpl();
+ }
+
+ /**
+ * Creates an instance of the factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Layer_weight_constraintsFactoryImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EObject create(EClass eClass) {
+ switch (eClass.getClassifierID()) {
+ case Layer_weight_constraintsPackage.MIN_MAX_NORM: return createmin_max_norm();
+ case Layer_weight_constraintsPackage.MAX_NORM: return createmax_norm();
+ case Layer_weight_constraintsPackage.NON_NEG: return createnon_neg();
+ case Layer_weight_constraintsPackage.RADIAL_CONSTRAINT: return createradial_constraint();
+ case Layer_weight_constraintsPackage.UNIT_NORM: return createunit_norm();
+ default:
+ throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier"); //$NON-NLS-1$ //$NON-NLS-2$
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public min_max_norm createmin_max_norm() {
+ min_max_normImpl min_max_norm = new min_max_normImpl();
+ return min_max_norm;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public max_norm createmax_norm() {
+ max_normImpl max_norm = new max_normImpl();
+ return max_norm;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public non_neg createnon_neg() {
+ non_negImpl non_neg = new non_negImpl();
+ return non_neg;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public radial_constraint createradial_constraint() {
+ radial_constraintImpl radial_constraint = new radial_constraintImpl();
+ return radial_constraint;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public unit_norm createunit_norm() {
+ unit_normImpl unit_norm = new unit_normImpl();
+ return unit_norm;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Layer_weight_constraintsPackage getLayer_weight_constraintsPackage() {
+ return (Layer_weight_constraintsPackage)getEPackage();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @deprecated
+ * @generated
+ */
+ @Deprecated
+ public static Layer_weight_constraintsPackage getPackage() {
+ return Layer_weight_constraintsPackage.eINSTANCE;
+ }
+
+} //Layer_weight_constraintsFactoryImpl
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_constraints/impl/Layer_weight_constraintsPackageImpl.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_constraints/impl/Layer_weight_constraintsPackageImpl.java
new file mode 100644
index 0000000..c746295
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_constraints/impl/Layer_weight_constraintsPackageImpl.java
@@ -0,0 +1,566 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.impl;
+
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EcorePackage;
+
+import org.eclipse.emf.ecore.impl.EPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.AIMLPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution_layersPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.Convolution_layersPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers.DataParallel_layersPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers.impl.DataParallel_layersPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Distance_functions.Distance_functionsPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Distance_functions.impl.Distance_functionsPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.Dropout_layersPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.impl.Dropout_layersPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.Layer_weight_constraintsFactory;
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.Layer_weight_constraintsPackage;
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.NormWithMaxValue;
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.constraints;
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.max_norm;
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.min_max_norm;
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.non_neg;
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.norm;
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.radial_constraint;
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.unit_norm;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.Layer_weight_initializersPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.impl.Layer_weight_initializersPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers.Layer_weight_regularizersPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers.impl.Layer_weight_regularizersPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.Linear_layersPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.impl.Linear_layersPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Loss_functions.Loss_functionsPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Loss_functions.impl.Loss_functionsPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Module.ModulePackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Module.impl.ModulePackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.NonLinearActivations.NonLinearActivationsPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.NonLinearActivations.impl.NonLinearActivationsPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Normalization_layers.Normalization_layersPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Normalization_layers.impl.Normalization_layersPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Padding_layers.Padding_layersPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Padding_layers.impl.Padding_layersPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Pooling_layers.Pooling_layersPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Pooling_layers.impl.Pooling_layersPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Recurrent_layers.Recurrent_layersPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Recurrent_layers.impl.Recurrent_layersPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.SoftMinMaxActivations.SoftMinMaxActivationsPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.SoftMinMaxActivations.impl.SoftMinMaxActivationsPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Sparse_layers.Sparse_layersPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Sparse_layers.impl.Sparse_layersPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Tensor.TensorPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Tensor.impl.TensorPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Transformer_layers.Transformer_layersPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Transformer_layers.impl.Transformer_layersPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Vision_layers.Vision_layersPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Vision_layers.impl.Vision_layersPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.datatypes.DatatypesPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.datatypes.impl.DatatypesPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.impl.AIMLPackageImpl;
+
+import org.eclipse.uml2.types.TypesPackage;
+
+import org.eclipse.uml2.uml.UMLPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model <b>Package</b>.
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class Layer_weight_constraintsPackageImpl extends EPackageImpl implements Layer_weight_constraintsPackage {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass min_max_normEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass normWithMaxValueEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass normEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass max_normEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass non_negEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass radial_constraintEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass unit_normEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass constraintsEClass = null;
+
+ /**
+ * Creates an instance of the model <b>Package</b>, registered with
+ * {@link org.eclipse.emf.ecore.EPackage.Registry EPackage.Registry} by the package
+ * package URI value.
+ * <p>Note: the correct way to create the package is via the static
+ * factory method {@link #init init()}, which also performs
+ * initialization of the package, or returns the registered package,
+ * if one already exists.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.emf.ecore.EPackage.Registry
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.Layer_weight_constraintsPackage#eNS_URI
+ * @see #init()
+ * @generated
+ */
+ private Layer_weight_constraintsPackageImpl() {
+ super(eNS_URI, Layer_weight_constraintsFactory.eINSTANCE);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private static boolean isInited = false;
+
+ /**
+ * Creates, registers, and initializes the <b>Package</b> for this model, and for any others upon which it depends.
+ *
+ * <p>This method is used to initialize {@link Layer_weight_constraintsPackage#eINSTANCE} when that field is accessed.
+ * Clients should not invoke it directly. Instead, they should simply access that field to obtain the package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #eNS_URI
+ * @see #createPackageContents()
+ * @see #initializePackageContents()
+ * @generated
+ */
+ public static Layer_weight_constraintsPackage init() {
+ if (isInited) return (Layer_weight_constraintsPackage)EPackage.Registry.INSTANCE.getEPackage(Layer_weight_constraintsPackage.eNS_URI);
+
+ // Obtain or create and register package
+ Object registeredLayer_weight_constraintsPackage = EPackage.Registry.INSTANCE.get(eNS_URI);
+ Layer_weight_constraintsPackageImpl theLayer_weight_constraintsPackage = registeredLayer_weight_constraintsPackage instanceof Layer_weight_constraintsPackageImpl ? (Layer_weight_constraintsPackageImpl)registeredLayer_weight_constraintsPackage : new Layer_weight_constraintsPackageImpl();
+
+ isInited = true;
+
+ // Initialize simple dependencies
+ EcorePackage.eINSTANCE.eClass();
+ TypesPackage.eINSTANCE.eClass();
+ UMLPackage.eINSTANCE.eClass();
+
+ // Obtain or create and register interdependencies
+ Object registeredPackage = EPackage.Registry.INSTANCE.getEPackage(AIMLPackage.eNS_URI);
+ AIMLPackageImpl theAIMLPackage = (AIMLPackageImpl)(registeredPackage instanceof AIMLPackageImpl ? registeredPackage : AIMLPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(ModulePackage.eNS_URI);
+ ModulePackageImpl theModulePackage = (ModulePackageImpl)(registeredPackage instanceof ModulePackageImpl ? registeredPackage : ModulePackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(TensorPackage.eNS_URI);
+ TensorPackageImpl theTensorPackage = (TensorPackageImpl)(registeredPackage instanceof TensorPackageImpl ? registeredPackage : TensorPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(DatatypesPackage.eNS_URI);
+ DatatypesPackageImpl theDatatypesPackage = (DatatypesPackageImpl)(registeredPackage instanceof DatatypesPackageImpl ? registeredPackage : DatatypesPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Pooling_layersPackage.eNS_URI);
+ Pooling_layersPackageImpl thePooling_layersPackage = (Pooling_layersPackageImpl)(registeredPackage instanceof Pooling_layersPackageImpl ? registeredPackage : Pooling_layersPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Convolution_layersPackage.eNS_URI);
+ Convolution_layersPackageImpl theConvolution_layersPackage = (Convolution_layersPackageImpl)(registeredPackage instanceof Convolution_layersPackageImpl ? registeredPackage : Convolution_layersPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Padding_layersPackage.eNS_URI);
+ Padding_layersPackageImpl thePadding_layersPackage = (Padding_layersPackageImpl)(registeredPackage instanceof Padding_layersPackageImpl ? registeredPackage : Padding_layersPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(NonLinearActivationsPackage.eNS_URI);
+ NonLinearActivationsPackageImpl theNonLinearActivationsPackage = (NonLinearActivationsPackageImpl)(registeredPackage instanceof NonLinearActivationsPackageImpl ? registeredPackage : NonLinearActivationsPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(SoftMinMaxActivationsPackage.eNS_URI);
+ SoftMinMaxActivationsPackageImpl theSoftMinMaxActivationsPackage = (SoftMinMaxActivationsPackageImpl)(registeredPackage instanceof SoftMinMaxActivationsPackageImpl ? registeredPackage : SoftMinMaxActivationsPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Normalization_layersPackage.eNS_URI);
+ Normalization_layersPackageImpl theNormalization_layersPackage = (Normalization_layersPackageImpl)(registeredPackage instanceof Normalization_layersPackageImpl ? registeredPackage : Normalization_layersPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Recurrent_layersPackage.eNS_URI);
+ Recurrent_layersPackageImpl theRecurrent_layersPackage = (Recurrent_layersPackageImpl)(registeredPackage instanceof Recurrent_layersPackageImpl ? registeredPackage : Recurrent_layersPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Transformer_layersPackage.eNS_URI);
+ Transformer_layersPackageImpl theTransformer_layersPackage = (Transformer_layersPackageImpl)(registeredPackage instanceof Transformer_layersPackageImpl ? registeredPackage : Transformer_layersPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Linear_layersPackage.eNS_URI);
+ Linear_layersPackageImpl theLinear_layersPackage = (Linear_layersPackageImpl)(registeredPackage instanceof Linear_layersPackageImpl ? registeredPackage : Linear_layersPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Dropout_layersPackage.eNS_URI);
+ Dropout_layersPackageImpl theDropout_layersPackage = (Dropout_layersPackageImpl)(registeredPackage instanceof Dropout_layersPackageImpl ? registeredPackage : Dropout_layersPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Sparse_layersPackage.eNS_URI);
+ Sparse_layersPackageImpl theSparse_layersPackage = (Sparse_layersPackageImpl)(registeredPackage instanceof Sparse_layersPackageImpl ? registeredPackage : Sparse_layersPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Distance_functionsPackage.eNS_URI);
+ Distance_functionsPackageImpl theDistance_functionsPackage = (Distance_functionsPackageImpl)(registeredPackage instanceof Distance_functionsPackageImpl ? registeredPackage : Distance_functionsPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Loss_functionsPackage.eNS_URI);
+ Loss_functionsPackageImpl theLoss_functionsPackage = (Loss_functionsPackageImpl)(registeredPackage instanceof Loss_functionsPackageImpl ? registeredPackage : Loss_functionsPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Vision_layersPackage.eNS_URI);
+ Vision_layersPackageImpl theVision_layersPackage = (Vision_layersPackageImpl)(registeredPackage instanceof Vision_layersPackageImpl ? registeredPackage : Vision_layersPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(DataParallel_layersPackage.eNS_URI);
+ DataParallel_layersPackageImpl theDataParallel_layersPackage = (DataParallel_layersPackageImpl)(registeredPackage instanceof DataParallel_layersPackageImpl ? registeredPackage : DataParallel_layersPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Layer_weight_regularizersPackage.eNS_URI);
+ Layer_weight_regularizersPackageImpl theLayer_weight_regularizersPackage = (Layer_weight_regularizersPackageImpl)(registeredPackage instanceof Layer_weight_regularizersPackageImpl ? registeredPackage : Layer_weight_regularizersPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Layer_weight_initializersPackage.eNS_URI);
+ Layer_weight_initializersPackageImpl theLayer_weight_initializersPackage = (Layer_weight_initializersPackageImpl)(registeredPackage instanceof Layer_weight_initializersPackageImpl ? registeredPackage : Layer_weight_initializersPackage.eINSTANCE);
+
+ // Create package meta-data objects
+ theLayer_weight_constraintsPackage.createPackageContents();
+ theAIMLPackage.createPackageContents();
+ theModulePackage.createPackageContents();
+ theTensorPackage.createPackageContents();
+ theDatatypesPackage.createPackageContents();
+ thePooling_layersPackage.createPackageContents();
+ theConvolution_layersPackage.createPackageContents();
+ thePadding_layersPackage.createPackageContents();
+ theNonLinearActivationsPackage.createPackageContents();
+ theSoftMinMaxActivationsPackage.createPackageContents();
+ theNormalization_layersPackage.createPackageContents();
+ theRecurrent_layersPackage.createPackageContents();
+ theTransformer_layersPackage.createPackageContents();
+ theLinear_layersPackage.createPackageContents();
+ theDropout_layersPackage.createPackageContents();
+ theSparse_layersPackage.createPackageContents();
+ theDistance_functionsPackage.createPackageContents();
+ theLoss_functionsPackage.createPackageContents();
+ theVision_layersPackage.createPackageContents();
+ theDataParallel_layersPackage.createPackageContents();
+ theLayer_weight_regularizersPackage.createPackageContents();
+ theLayer_weight_initializersPackage.createPackageContents();
+
+ // Initialize created meta-data
+ theLayer_weight_constraintsPackage.initializePackageContents();
+ theAIMLPackage.initializePackageContents();
+ theModulePackage.initializePackageContents();
+ theTensorPackage.initializePackageContents();
+ theDatatypesPackage.initializePackageContents();
+ thePooling_layersPackage.initializePackageContents();
+ theConvolution_layersPackage.initializePackageContents();
+ thePadding_layersPackage.initializePackageContents();
+ theNonLinearActivationsPackage.initializePackageContents();
+ theSoftMinMaxActivationsPackage.initializePackageContents();
+ theNormalization_layersPackage.initializePackageContents();
+ theRecurrent_layersPackage.initializePackageContents();
+ theTransformer_layersPackage.initializePackageContents();
+ theLinear_layersPackage.initializePackageContents();
+ theDropout_layersPackage.initializePackageContents();
+ theSparse_layersPackage.initializePackageContents();
+ theDistance_functionsPackage.initializePackageContents();
+ theLoss_functionsPackage.initializePackageContents();
+ theVision_layersPackage.initializePackageContents();
+ theDataParallel_layersPackage.initializePackageContents();
+ theLayer_weight_regularizersPackage.initializePackageContents();
+ theLayer_weight_initializersPackage.initializePackageContents();
+
+ // Mark meta-data to indicate it can't be changed
+ theLayer_weight_constraintsPackage.freeze();
+
+ // Update the registry and return the package
+ EPackage.Registry.INSTANCE.put(Layer_weight_constraintsPackage.eNS_URI, theLayer_weight_constraintsPackage);
+ return theLayer_weight_constraintsPackage;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EClass getmin_max_norm() {
+ return min_max_normEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EAttribute getmin_max_norm_Min_value() {
+ return (EAttribute)min_max_normEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EAttribute getmin_max_norm_Rate() {
+ return (EAttribute)min_max_normEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EClass getNormWithMaxValue() {
+ return normWithMaxValueEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EAttribute getNormWithMaxValue_Max_value() {
+ return (EAttribute)normWithMaxValueEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EClass getnorm() {
+ return normEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EAttribute getnorm_Axis() {
+ return (EAttribute)normEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EClass getmax_norm() {
+ return max_normEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EClass getnon_neg() {
+ return non_negEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EClass getradial_constraint() {
+ return radial_constraintEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EClass getunit_norm() {
+ return unit_normEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EClass getconstraints() {
+ return constraintsEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Layer_weight_constraintsFactory getLayer_weight_constraintsFactory() {
+ return (Layer_weight_constraintsFactory)getEFactoryInstance();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private boolean isCreated = false;
+
+ /**
+ * Creates the meta-model objects for the package. This method is
+ * guarded to have no affect on any invocation but its first.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void createPackageContents() {
+ if (isCreated) return;
+ isCreated = true;
+
+ // Create classes and their features
+ min_max_normEClass = createEClass(MIN_MAX_NORM);
+ createEAttribute(min_max_normEClass, MIN_MAX_NORM__MIN_VALUE);
+ createEAttribute(min_max_normEClass, MIN_MAX_NORM__RATE);
+
+ normWithMaxValueEClass = createEClass(NORM_WITH_MAX_VALUE);
+ createEAttribute(normWithMaxValueEClass, NORM_WITH_MAX_VALUE__MAX_VALUE);
+
+ normEClass = createEClass(NORM);
+ createEAttribute(normEClass, NORM__AXIS);
+
+ max_normEClass = createEClass(MAX_NORM);
+
+ non_negEClass = createEClass(NON_NEG);
+
+ radial_constraintEClass = createEClass(RADIAL_CONSTRAINT);
+
+ unit_normEClass = createEClass(UNIT_NORM);
+
+ constraintsEClass = createEClass(CONSTRAINTS);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private boolean isInitialized = false;
+
+ /**
+ * Complete the initialization of the package and its meta-model. This
+ * method is guarded to have no affect on any invocation but its first.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void initializePackageContents() {
+ if (isInitialized) return;
+ isInitialized = true;
+
+ // Initialize package
+ setName(eNAME);
+ setNsPrefix(eNS_PREFIX);
+ setNsURI(eNS_URI);
+
+ // Obtain other dependent packages
+ TypesPackage theTypesPackage = (TypesPackage)EPackage.Registry.INSTANCE.getEPackage(TypesPackage.eNS_URI);
+
+ // Create type parameters
+
+ // Set bounds for type parameters
+
+ // Add supertypes to classes
+ min_max_normEClass.getESuperTypes().add(this.getNormWithMaxValue());
+ normWithMaxValueEClass.getESuperTypes().add(this.getnorm());
+ normEClass.getESuperTypes().add(this.getconstraints());
+ max_normEClass.getESuperTypes().add(this.getNormWithMaxValue());
+ non_negEClass.getESuperTypes().add(this.getconstraints());
+ radial_constraintEClass.getESuperTypes().add(this.getconstraints());
+ unit_normEClass.getESuperTypes().add(this.getnorm());
+
+ // Initialize classes, features, and operations; add parameters
+ initEClass(min_max_normEClass, min_max_norm.class, "min_max_norm", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ initEAttribute(getmin_max_norm_Min_value(), theTypesPackage.getReal(), "min_value", null, 1, 1, min_max_norm.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+ initEAttribute(getmin_max_norm_Rate(), theTypesPackage.getReal(), "rate", null, 1, 1, min_max_norm.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+
+ initEClass(normWithMaxValueEClass, NormWithMaxValue.class, "NormWithMaxValue", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ initEAttribute(getNormWithMaxValue_Max_value(), theTypesPackage.getReal(), "max_value", null, 1, 1, NormWithMaxValue.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+
+ initEClass(normEClass, norm.class, "norm", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ initEAttribute(getnorm_Axis(), theTypesPackage.getInteger(), "axis", null, 1, -1, norm.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+
+ initEClass(max_normEClass, max_norm.class, "max_norm", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+
+ initEClass(non_negEClass, non_neg.class, "non_neg", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+
+ initEClass(radial_constraintEClass, radial_constraint.class, "radial_constraint", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+
+ initEClass(unit_normEClass, unit_norm.class, "unit_norm", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+
+ initEClass(constraintsEClass, constraints.class, "constraints", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ }
+
+} //Layer_weight_constraintsPackageImpl
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_constraints/impl/NormWithMaxValueImpl.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_constraints/impl/NormWithMaxValueImpl.java
new file mode 100644
index 0000000..1d002f1
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_constraints/impl/NormWithMaxValueImpl.java
@@ -0,0 +1,173 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.Layer_weight_constraintsPackage;
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.NormWithMaxValue;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Norm With Max Value</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.impl.NormWithMaxValueImpl#getMax_value <em>Max value</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public abstract class NormWithMaxValueImpl extends normImpl implements NormWithMaxValue {
+ /**
+ * The default value of the '{@link #getMax_value() <em>Max value</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getMax_value()
+ * @generated
+ * @ordered
+ */
+ protected static final double MAX_VALUE_EDEFAULT = 0.0;
+
+ /**
+ * The cached value of the '{@link #getMax_value() <em>Max value</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getMax_value()
+ * @generated
+ * @ordered
+ */
+ protected double max_value = MAX_VALUE_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected NormWithMaxValueImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return Layer_weight_constraintsPackage.Literals.NORM_WITH_MAX_VALUE;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public double getMax_value() {
+ return max_value;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void setMax_value(double newMax_value) {
+ double oldMax_value = max_value;
+ max_value = newMax_value;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, Layer_weight_constraintsPackage.NORM_WITH_MAX_VALUE__MAX_VALUE, oldMax_value, max_value));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case Layer_weight_constraintsPackage.NORM_WITH_MAX_VALUE__MAX_VALUE:
+ return getMax_value();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case Layer_weight_constraintsPackage.NORM_WITH_MAX_VALUE__MAX_VALUE:
+ setMax_value((Double)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case Layer_weight_constraintsPackage.NORM_WITH_MAX_VALUE__MAX_VALUE:
+ setMax_value(MAX_VALUE_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case Layer_weight_constraintsPackage.NORM_WITH_MAX_VALUE__MAX_VALUE:
+ return max_value != MAX_VALUE_EDEFAULT;
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuilder result = new StringBuilder(super.toString());
+ result.append(" (max_value: "); //$NON-NLS-1$
+ result.append(max_value);
+ result.append(')');
+ return result.toString();
+ }
+
+} //NormWithMaxValueImpl
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_constraints/impl/constraintsImpl.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_constraints/impl/constraintsImpl.java
new file mode 100644
index 0000000..92e146b
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_constraints/impl/constraintsImpl.java
@@ -0,0 +1,48 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.Layer_weight_constraintsPackage;
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.constraints;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>constraints</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public abstract class constraintsImpl extends MinimalEObjectImpl.Container implements constraints {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected constraintsImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return Layer_weight_constraintsPackage.Literals.CONSTRAINTS;
+ }
+
+} //constraintsImpl
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_constraints/impl/max_normImpl.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_constraints/impl/max_normImpl.java
new file mode 100644
index 0000000..d2b4d43
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_constraints/impl/max_normImpl.java
@@ -0,0 +1,46 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.Layer_weight_constraintsPackage;
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.max_norm;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>max norm</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class max_normImpl extends NormWithMaxValueImpl implements max_norm {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected max_normImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return Layer_weight_constraintsPackage.Literals.MAX_NORM;
+ }
+
+} //max_normImpl
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_constraints/impl/min_max_normImpl.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_constraints/impl/min_max_normImpl.java
new file mode 100644
index 0000000..d14d552
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_constraints/impl/min_max_normImpl.java
@@ -0,0 +1,229 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.Layer_weight_constraintsPackage;
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.min_max_norm;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>min max norm</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.impl.min_max_normImpl#getMin_value <em>Min value</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.impl.min_max_normImpl#getRate <em>Rate</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class min_max_normImpl extends NormWithMaxValueImpl implements min_max_norm {
+ /**
+ * The default value of the '{@link #getMin_value() <em>Min value</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getMin_value()
+ * @generated
+ * @ordered
+ */
+ protected static final double MIN_VALUE_EDEFAULT = 0.0;
+
+ /**
+ * The cached value of the '{@link #getMin_value() <em>Min value</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getMin_value()
+ * @generated
+ * @ordered
+ */
+ protected double min_value = MIN_VALUE_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getRate() <em>Rate</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getRate()
+ * @generated
+ * @ordered
+ */
+ protected static final double RATE_EDEFAULT = 0.0;
+
+ /**
+ * The cached value of the '{@link #getRate() <em>Rate</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getRate()
+ * @generated
+ * @ordered
+ */
+ protected double rate = RATE_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected min_max_normImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return Layer_weight_constraintsPackage.Literals.MIN_MAX_NORM;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public double getMin_value() {
+ return min_value;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void setMin_value(double newMin_value) {
+ double oldMin_value = min_value;
+ min_value = newMin_value;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, Layer_weight_constraintsPackage.MIN_MAX_NORM__MIN_VALUE, oldMin_value, min_value));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public double getRate() {
+ return rate;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void setRate(double newRate) {
+ double oldRate = rate;
+ rate = newRate;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, Layer_weight_constraintsPackage.MIN_MAX_NORM__RATE, oldRate, rate));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case Layer_weight_constraintsPackage.MIN_MAX_NORM__MIN_VALUE:
+ return getMin_value();
+ case Layer_weight_constraintsPackage.MIN_MAX_NORM__RATE:
+ return getRate();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case Layer_weight_constraintsPackage.MIN_MAX_NORM__MIN_VALUE:
+ setMin_value((Double)newValue);
+ return;
+ case Layer_weight_constraintsPackage.MIN_MAX_NORM__RATE:
+ setRate((Double)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case Layer_weight_constraintsPackage.MIN_MAX_NORM__MIN_VALUE:
+ setMin_value(MIN_VALUE_EDEFAULT);
+ return;
+ case Layer_weight_constraintsPackage.MIN_MAX_NORM__RATE:
+ setRate(RATE_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case Layer_weight_constraintsPackage.MIN_MAX_NORM__MIN_VALUE:
+ return min_value != MIN_VALUE_EDEFAULT;
+ case Layer_weight_constraintsPackage.MIN_MAX_NORM__RATE:
+ return rate != RATE_EDEFAULT;
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuilder result = new StringBuilder(super.toString());
+ result.append(" (min_value: "); //$NON-NLS-1$
+ result.append(min_value);
+ result.append(", rate: "); //$NON-NLS-1$
+ result.append(rate);
+ result.append(')');
+ return result.toString();
+ }
+
+} //min_max_normImpl
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_constraints/impl/non_negImpl.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_constraints/impl/non_negImpl.java
new file mode 100644
index 0000000..258f976
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_constraints/impl/non_negImpl.java
@@ -0,0 +1,46 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.Layer_weight_constraintsPackage;
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.non_neg;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>non neg</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class non_negImpl extends constraintsImpl implements non_neg {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected non_negImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return Layer_weight_constraintsPackage.Literals.NON_NEG;
+ }
+
+} //non_negImpl
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_constraints/impl/normImpl.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_constraints/impl/normImpl.java
new file mode 100644
index 0000000..b449801
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_constraints/impl/normImpl.java
@@ -0,0 +1,157 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.util.EDataTypeUniqueEList;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.Layer_weight_constraintsPackage;
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.norm;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>norm</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.impl.normImpl#getAxis <em>Axis</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public abstract class normImpl extends constraintsImpl implements norm {
+ /**
+ * The cached value of the '{@link #getAxis() <em>Axis</em>}' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getAxis()
+ * @generated
+ * @ordered
+ */
+ protected EList<Integer> axis;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected normImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return Layer_weight_constraintsPackage.Literals.NORM;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EList<Integer> getAxis() {
+ if (axis == null) {
+ axis = new EDataTypeUniqueEList<Integer>(Integer.class, this, Layer_weight_constraintsPackage.NORM__AXIS);
+ }
+ return axis;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case Layer_weight_constraintsPackage.NORM__AXIS:
+ return getAxis();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @SuppressWarnings("unchecked")
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case Layer_weight_constraintsPackage.NORM__AXIS:
+ getAxis().clear();
+ getAxis().addAll((Collection<? extends Integer>)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case Layer_weight_constraintsPackage.NORM__AXIS:
+ getAxis().clear();
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case Layer_weight_constraintsPackage.NORM__AXIS:
+ return axis != null && !axis.isEmpty();
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuilder result = new StringBuilder(super.toString());
+ result.append(" (axis: "); //$NON-NLS-1$
+ result.append(axis);
+ result.append(')');
+ return result.toString();
+ }
+
+} //normImpl
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_constraints/impl/radial_constraintImpl.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_constraints/impl/radial_constraintImpl.java
new file mode 100644
index 0000000..cf2348f
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_constraints/impl/radial_constraintImpl.java
@@ -0,0 +1,46 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.Layer_weight_constraintsPackage;
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.radial_constraint;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>radial constraint</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class radial_constraintImpl extends constraintsImpl implements radial_constraint {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected radial_constraintImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return Layer_weight_constraintsPackage.Literals.RADIAL_CONSTRAINT;
+ }
+
+} //radial_constraintImpl
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_constraints/impl/unit_normImpl.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_constraints/impl/unit_normImpl.java
new file mode 100644
index 0000000..4ed8f6f
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_constraints/impl/unit_normImpl.java
@@ -0,0 +1,46 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.Layer_weight_constraintsPackage;
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.unit_norm;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>unit norm</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class unit_normImpl extends normImpl implements unit_norm {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected unit_normImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return Layer_weight_constraintsPackage.Literals.UNIT_NORM;
+ }
+
+} //unit_normImpl
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_constraints/max_norm.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_constraints/max_norm.java
new file mode 100644
index 0000000..d59b873
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_constraints/max_norm.java
@@ -0,0 +1,26 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>max norm</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.Layer_weight_constraintsPackage#getmax_norm()
+ * @model
+ * @generated
+ */
+public interface max_norm extends NormWithMaxValue {
+} // max_norm
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_constraints/min_max_norm.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_constraints/min_max_norm.java
new file mode 100644
index 0000000..8904424
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_constraints/min_max_norm.java
@@ -0,0 +1,85 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>min max norm</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.min_max_norm#getMin_value <em>Min value</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.min_max_norm#getRate <em>Rate</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.Layer_weight_constraintsPackage#getmin_max_norm()
+ * @model
+ * @generated
+ */
+public interface min_max_norm extends NormWithMaxValue {
+ /**
+ * Returns the value of the '<em><b>Min value</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Min value</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Min value</em>' attribute.
+ * @see #setMin_value(double)
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.Layer_weight_constraintsPackage#getmin_max_norm_Min_value()
+ * @model dataType="org.eclipse.uml2.types.Real" required="true" ordered="false"
+ * @generated
+ */
+ double getMin_value();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.min_max_norm#getMin_value <em>Min value</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Min value</em>' attribute.
+ * @see #getMin_value()
+ * @generated
+ */
+ void setMin_value(double value);
+
+ /**
+ * Returns the value of the '<em><b>Rate</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Rate</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Rate</em>' attribute.
+ * @see #setRate(double)
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.Layer_weight_constraintsPackage#getmin_max_norm_Rate()
+ * @model dataType="org.eclipse.uml2.types.Real" required="true" ordered="false"
+ * @generated
+ */
+ double getRate();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.min_max_norm#getRate <em>Rate</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Rate</em>' attribute.
+ * @see #getRate()
+ * @generated
+ */
+ void setRate(double value);
+
+} // min_max_norm
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_constraints/non_neg.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_constraints/non_neg.java
new file mode 100644
index 0000000..2da9cbc
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_constraints/non_neg.java
@@ -0,0 +1,26 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>non neg</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.Layer_weight_constraintsPackage#getnon_neg()
+ * @model
+ * @generated
+ */
+public interface non_neg extends constraints {
+} // non_neg
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_constraints/norm.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_constraints/norm.java
new file mode 100644
index 0000000..2be164c
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_constraints/norm.java
@@ -0,0 +1,49 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>norm</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.norm#getAxis <em>Axis</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.Layer_weight_constraintsPackage#getnorm()
+ * @model abstract="true"
+ * @generated
+ */
+public interface norm extends constraints {
+ /**
+ * Returns the value of the '<em><b>Axis</b></em>' attribute list.
+ * The list contents are of type {@link java.lang.Integer}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Axis</em>' attribute list isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Axis</em>' attribute list.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.Layer_weight_constraintsPackage#getnorm_Axis()
+ * @model dataType="org.eclipse.uml2.types.Integer" required="true" ordered="false"
+ * @generated
+ */
+ EList<Integer> getAxis();
+
+} // norm
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_constraints/radial_constraint.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_constraints/radial_constraint.java
new file mode 100644
index 0000000..45197c9
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_constraints/radial_constraint.java
@@ -0,0 +1,26 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>radial constraint</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.Layer_weight_constraintsPackage#getradial_constraint()
+ * @model
+ * @generated
+ */
+public interface radial_constraint extends constraints {
+} // radial_constraint
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_constraints/unit_norm.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_constraints/unit_norm.java
new file mode 100644
index 0000000..3d938a9
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_constraints/unit_norm.java
@@ -0,0 +1,26 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>unit norm</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.Layer_weight_constraintsPackage#getunit_norm()
+ * @model
+ * @generated
+ */
+public interface unit_norm extends norm {
+} // unit_norm
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_constraints/util/Layer_weight_constraintsAdapterFactory.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_constraints/util/Layer_weight_constraintsAdapterFactory.java
new file mode 100644
index 0000000..5cc9c80
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_constraints/util/Layer_weight_constraintsAdapterFactory.java
@@ -0,0 +1,255 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.util;
+
+import org.eclipse.emf.common.notify.Adapter;
+import org.eclipse.emf.common.notify.Notifier;
+
+import org.eclipse.emf.common.notify.impl.AdapterFactoryImpl;
+
+import org.eclipse.emf.ecore.EObject;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.*;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Adapter Factory</b> for the model.
+ * It provides an adapter <code>createXXX</code> method for each class of the model.
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.Layer_weight_constraintsPackage
+ * @generated
+ */
+public class Layer_weight_constraintsAdapterFactory extends AdapterFactoryImpl {
+ /**
+ * The cached model package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected static Layer_weight_constraintsPackage modelPackage;
+
+ /**
+ * Creates an instance of the adapter factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Layer_weight_constraintsAdapterFactory() {
+ if (modelPackage == null) {
+ modelPackage = Layer_weight_constraintsPackage.eINSTANCE;
+ }
+ }
+
+ /**
+ * Returns whether this factory is applicable for the type of the object.
+ * <!-- begin-user-doc -->
+ * This implementation returns <code>true</code> if the object is either the model's package or is an instance object of the model.
+ * <!-- end-user-doc -->
+ * @return whether this factory is applicable for the type of the object.
+ * @generated
+ */
+ @Override
+ public boolean isFactoryForType(Object object) {
+ if (object == modelPackage) {
+ return true;
+ }
+ if (object instanceof EObject) {
+ return ((EObject)object).eClass().getEPackage() == modelPackage;
+ }
+ return false;
+ }
+
+ /**
+ * The switch that delegates to the <code>createXXX</code> methods.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected Layer_weight_constraintsSwitch<Adapter> modelSwitch =
+ new Layer_weight_constraintsSwitch<Adapter>() {
+ @Override
+ public Adapter casemin_max_norm(min_max_norm object) {
+ return createmin_max_normAdapter();
+ }
+ @Override
+ public Adapter caseNormWithMaxValue(NormWithMaxValue object) {
+ return createNormWithMaxValueAdapter();
+ }
+ @Override
+ public Adapter casenorm(norm object) {
+ return createnormAdapter();
+ }
+ @Override
+ public Adapter casemax_norm(max_norm object) {
+ return createmax_normAdapter();
+ }
+ @Override
+ public Adapter casenon_neg(non_neg object) {
+ return createnon_negAdapter();
+ }
+ @Override
+ public Adapter caseradial_constraint(radial_constraint object) {
+ return createradial_constraintAdapter();
+ }
+ @Override
+ public Adapter caseunit_norm(unit_norm object) {
+ return createunit_normAdapter();
+ }
+ @Override
+ public Adapter caseconstraints(constraints object) {
+ return createconstraintsAdapter();
+ }
+ @Override
+ public Adapter defaultCase(EObject object) {
+ return createEObjectAdapter();
+ }
+ };
+
+ /**
+ * Creates an adapter for the <code>target</code>.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param target the object to adapt.
+ * @return the adapter for the <code>target</code>.
+ * @generated
+ */
+ @Override
+ public Adapter createAdapter(Notifier target) {
+ return modelSwitch.doSwitch((EObject)target);
+ }
+
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.min_max_norm <em>min max norm</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.min_max_norm
+ * @generated
+ */
+ public Adapter createmin_max_normAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.NormWithMaxValue <em>Norm With Max Value</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.NormWithMaxValue
+ * @generated
+ */
+ public Adapter createNormWithMaxValueAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.norm <em>norm</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.norm
+ * @generated
+ */
+ public Adapter createnormAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.max_norm <em>max norm</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.max_norm
+ * @generated
+ */
+ public Adapter createmax_normAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.non_neg <em>non neg</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.non_neg
+ * @generated
+ */
+ public Adapter createnon_negAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.radial_constraint <em>radial constraint</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.radial_constraint
+ * @generated
+ */
+ public Adapter createradial_constraintAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.unit_norm <em>unit norm</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.unit_norm
+ * @generated
+ */
+ public Adapter createunit_normAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.constraints <em>constraints</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.constraints
+ * @generated
+ */
+ public Adapter createconstraintsAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for the default case.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @generated
+ */
+ public Adapter createEObjectAdapter() {
+ return null;
+ }
+
+} //Layer_weight_constraintsAdapterFactory
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_constraints/util/Layer_weight_constraintsSwitch.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_constraints/util/Layer_weight_constraintsSwitch.java
new file mode 100644
index 0000000..8f11f62
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_constraints/util/Layer_weight_constraintsSwitch.java
@@ -0,0 +1,279 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.util;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+
+import org.eclipse.emf.ecore.util.Switch;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.*;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Switch</b> for the model's inheritance hierarchy.
+ * It supports the call {@link #doSwitch(EObject) doSwitch(object)}
+ * to invoke the <code>caseXXX</code> method for each class of the model,
+ * starting with the actual class of the object
+ * and proceeding up the inheritance hierarchy
+ * until a non-null result is returned,
+ * which is the result of the switch.
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.Layer_weight_constraintsPackage
+ * @generated
+ */
+public class Layer_weight_constraintsSwitch<T> extends Switch<T> {
+ /**
+ * The cached model package
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected static Layer_weight_constraintsPackage modelPackage;
+
+ /**
+ * Creates an instance of the switch.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Layer_weight_constraintsSwitch() {
+ if (modelPackage == null) {
+ modelPackage = Layer_weight_constraintsPackage.eINSTANCE;
+ }
+ }
+
+ /**
+ * Checks whether this is a switch for the given package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param ePackage the package in question.
+ * @return whether this is a switch for the given package.
+ * @generated
+ */
+ @Override
+ protected boolean isSwitchFor(EPackage ePackage) {
+ return ePackage == modelPackage;
+ }
+
+ /**
+ * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the first non-null result returned by a <code>caseXXX</code> call.
+ * @generated
+ */
+ @Override
+ protected T doSwitch(int classifierID, EObject theEObject) {
+ switch (classifierID) {
+ case Layer_weight_constraintsPackage.MIN_MAX_NORM: {
+ min_max_norm min_max_norm = (min_max_norm)theEObject;
+ T result = casemin_max_norm(min_max_norm);
+ if (result == null) result = caseNormWithMaxValue(min_max_norm);
+ if (result == null) result = casenorm(min_max_norm);
+ if (result == null) result = caseconstraints(min_max_norm);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case Layer_weight_constraintsPackage.NORM_WITH_MAX_VALUE: {
+ NormWithMaxValue normWithMaxValue = (NormWithMaxValue)theEObject;
+ T result = caseNormWithMaxValue(normWithMaxValue);
+ if (result == null) result = casenorm(normWithMaxValue);
+ if (result == null) result = caseconstraints(normWithMaxValue);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case Layer_weight_constraintsPackage.NORM: {
+ norm norm = (norm)theEObject;
+ T result = casenorm(norm);
+ if (result == null) result = caseconstraints(norm);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case Layer_weight_constraintsPackage.MAX_NORM: {
+ max_norm max_norm = (max_norm)theEObject;
+ T result = casemax_norm(max_norm);
+ if (result == null) result = caseNormWithMaxValue(max_norm);
+ if (result == null) result = casenorm(max_norm);
+ if (result == null) result = caseconstraints(max_norm);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case Layer_weight_constraintsPackage.NON_NEG: {
+ non_neg non_neg = (non_neg)theEObject;
+ T result = casenon_neg(non_neg);
+ if (result == null) result = caseconstraints(non_neg);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case Layer_weight_constraintsPackage.RADIAL_CONSTRAINT: {
+ radial_constraint radial_constraint = (radial_constraint)theEObject;
+ T result = caseradial_constraint(radial_constraint);
+ if (result == null) result = caseconstraints(radial_constraint);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case Layer_weight_constraintsPackage.UNIT_NORM: {
+ unit_norm unit_norm = (unit_norm)theEObject;
+ T result = caseunit_norm(unit_norm);
+ if (result == null) result = casenorm(unit_norm);
+ if (result == null) result = caseconstraints(unit_norm);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case Layer_weight_constraintsPackage.CONSTRAINTS: {
+ constraints constraints = (constraints)theEObject;
+ T result = caseconstraints(constraints);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ default: return defaultCase(theEObject);
+ }
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>min max norm</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>min max norm</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T casemin_max_norm(min_max_norm object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Norm With Max Value</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Norm With Max Value</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseNormWithMaxValue(NormWithMaxValue object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>norm</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>norm</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T casenorm(norm object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>max norm</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>max norm</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T casemax_norm(max_norm object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>non neg</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>non neg</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T casenon_neg(non_neg object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>radial constraint</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>radial constraint</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseradial_constraint(radial_constraint object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>unit norm</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>unit norm</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseunit_norm(unit_norm object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>constraints</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>constraints</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseconstraints(constraints object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>EObject</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch, but this is the last case anyway.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>EObject</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject)
+ * @generated
+ */
+ @Override
+ public T defaultCase(EObject object) {
+ return null;
+ }
+
+} //Layer_weight_constraintsSwitch
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_initializers/Layer_weight_initializersFactory.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_initializers/Layer_weight_initializersFactory.java
new file mode 100644
index 0000000..9271bfd
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_initializers/Layer_weight_initializersFactory.java
@@ -0,0 +1,141 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers;
+
+import org.eclipse.emf.ecore.EFactory;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Factory</b> for the model.
+ * It provides a create method for each non-abstract class of the model.
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.Layer_weight_initializersPackage
+ * @generated
+ */
+public interface Layer_weight_initializersFactory extends EFactory {
+ /**
+ * The singleton instance of the factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ Layer_weight_initializersFactory eINSTANCE = org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.impl.Layer_weight_initializersFactoryImpl.init();
+
+ /**
+ * Returns a new object of class '<em>random normal</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>random normal</em>'.
+ * @generated
+ */
+ random_normal createrandom_normal();
+
+ /**
+ * Returns a new object of class '<em>random uniform</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>random uniform</em>'.
+ * @generated
+ */
+ random_uniform createrandom_uniform();
+
+ /**
+ * Returns a new object of class '<em>truncated normal</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>truncated normal</em>'.
+ * @generated
+ */
+ truncated_normal createtruncated_normal();
+
+ /**
+ * Returns a new object of class '<em>zeros</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>zeros</em>'.
+ * @generated
+ */
+ zeros createzeros();
+
+ /**
+ * Returns a new object of class '<em>ones</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>ones</em>'.
+ * @generated
+ */
+ ones createones();
+
+ /**
+ * Returns a new object of class '<em>glorot normal</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>glorot normal</em>'.
+ * @generated
+ */
+ glorot_normal createglorot_normal();
+
+ /**
+ * Returns a new object of class '<em>glorot uniform</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>glorot uniform</em>'.
+ * @generated
+ */
+ glorot_uniform createglorot_uniform();
+
+ /**
+ * Returns a new object of class '<em>identity</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>identity</em>'.
+ * @generated
+ */
+ identity createidentity();
+
+ /**
+ * Returns a new object of class '<em>orthogonal</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>orthogonal</em>'.
+ * @generated
+ */
+ orthogonal createorthogonal();
+
+ /**
+ * Returns a new object of class '<em>constant</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>constant</em>'.
+ * @generated
+ */
+ constant createconstant();
+
+ /**
+ * Returns a new object of class '<em>variance scaling</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>variance scaling</em>'.
+ * @generated
+ */
+ variance_scaling createvariance_scaling();
+
+ /**
+ * Returns the package supported by this factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the package supported by this factory.
+ * @generated
+ */
+ Layer_weight_initializersPackage getLayer_weight_initializersPackage();
+
+} //Layer_weight_initializersFactory
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_initializers/Layer_weight_initializersPackage.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_initializers/Layer_weight_initializersPackage.java
new file mode 100644
index 0000000..ac605cc
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_initializers/Layer_weight_initializersPackage.java
@@ -0,0 +1,1171 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers;
+
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Package</b> for the model.
+ * It contains accessors for the meta objects to represent
+ * <ul>
+ * <li>each class,</li>
+ * <li>each feature of each class,</li>
+ * <li>each operation of each class,</li>
+ * <li>each enum,</li>
+ * <li>and each data type</li>
+ * </ul>
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.Layer_weight_initializersFactory
+ * @model kind="package"
+ * @generated
+ */
+public interface Layer_weight_initializersPackage extends EPackage {
+ /**
+ * The package name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNAME = "Layer_weight_initializers"; //$NON-NLS-1$
+
+ /**
+ * The package namespace URI.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNS_URI = "http:///AIML/Layer_weight_initializers.ecore"; //$NON-NLS-1$
+
+ /**
+ * The package namespace name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNS_PREFIX = "AIML.Layer_weight_initializers"; //$NON-NLS-1$
+
+ /**
+ * The singleton instance of the package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ Layer_weight_initializersPackage eINSTANCE = org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.impl.Layer_weight_initializersPackageImpl.init();
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.impl.initializer_with_seedImpl <em>initializer with seed</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.impl.initializer_with_seedImpl
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.impl.Layer_weight_initializersPackageImpl#getinitializer_with_seed()
+ * @generated
+ */
+ int INITIALIZER_WITH_SEED = 2;
+
+ /**
+ * The feature id for the '<em><b>Seed</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int INITIALIZER_WITH_SEED__SEED = 0;
+
+ /**
+ * The number of structural features of the '<em>initializer with seed</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int INITIALIZER_WITH_SEED_FEATURE_COUNT = 1;
+
+ /**
+ * The number of operations of the '<em>initializer with seed</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int INITIALIZER_WITH_SEED_OPERATION_COUNT = 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.impl.initializer_with_mean_stddevImpl <em>initializer with mean stddev</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.impl.initializer_with_mean_stddevImpl
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.impl.Layer_weight_initializersPackageImpl#getinitializer_with_mean_stddev()
+ * @generated
+ */
+ int INITIALIZER_WITH_MEAN_STDDEV = 1;
+
+ /**
+ * The feature id for the '<em><b>Seed</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int INITIALIZER_WITH_MEAN_STDDEV__SEED = INITIALIZER_WITH_SEED__SEED;
+
+ /**
+ * The feature id for the '<em><b>Mean</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int INITIALIZER_WITH_MEAN_STDDEV__MEAN = INITIALIZER_WITH_SEED_FEATURE_COUNT + 0;
+
+ /**
+ * The feature id for the '<em><b>Stddev</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int INITIALIZER_WITH_MEAN_STDDEV__STDDEV = INITIALIZER_WITH_SEED_FEATURE_COUNT + 1;
+
+ /**
+ * The number of structural features of the '<em>initializer with mean stddev</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int INITIALIZER_WITH_MEAN_STDDEV_FEATURE_COUNT = INITIALIZER_WITH_SEED_FEATURE_COUNT + 2;
+
+ /**
+ * The number of operations of the '<em>initializer with mean stddev</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int INITIALIZER_WITH_MEAN_STDDEV_OPERATION_COUNT = INITIALIZER_WITH_SEED_OPERATION_COUNT + 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.impl.random_normalImpl <em>random normal</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.impl.random_normalImpl
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.impl.Layer_weight_initializersPackageImpl#getrandom_normal()
+ * @generated
+ */
+ int RANDOM_NORMAL = 0;
+
+ /**
+ * The feature id for the '<em><b>Seed</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int RANDOM_NORMAL__SEED = INITIALIZER_WITH_MEAN_STDDEV__SEED;
+
+ /**
+ * The feature id for the '<em><b>Mean</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int RANDOM_NORMAL__MEAN = INITIALIZER_WITH_MEAN_STDDEV__MEAN;
+
+ /**
+ * The feature id for the '<em><b>Stddev</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int RANDOM_NORMAL__STDDEV = INITIALIZER_WITH_MEAN_STDDEV__STDDEV;
+
+ /**
+ * The number of structural features of the '<em>random normal</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int RANDOM_NORMAL_FEATURE_COUNT = INITIALIZER_WITH_MEAN_STDDEV_FEATURE_COUNT + 0;
+
+ /**
+ * The number of operations of the '<em>random normal</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int RANDOM_NORMAL_OPERATION_COUNT = INITIALIZER_WITH_MEAN_STDDEV_OPERATION_COUNT + 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.impl.random_uniformImpl <em>random uniform</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.impl.random_uniformImpl
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.impl.Layer_weight_initializersPackageImpl#getrandom_uniform()
+ * @generated
+ */
+ int RANDOM_UNIFORM = 3;
+
+ /**
+ * The feature id for the '<em><b>Seed</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int RANDOM_UNIFORM__SEED = INITIALIZER_WITH_SEED__SEED;
+
+ /**
+ * The feature id for the '<em><b>Minval</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int RANDOM_UNIFORM__MINVAL = INITIALIZER_WITH_SEED_FEATURE_COUNT + 0;
+
+ /**
+ * The feature id for the '<em><b>Maxval</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int RANDOM_UNIFORM__MAXVAL = INITIALIZER_WITH_SEED_FEATURE_COUNT + 1;
+
+ /**
+ * The number of structural features of the '<em>random uniform</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int RANDOM_UNIFORM_FEATURE_COUNT = INITIALIZER_WITH_SEED_FEATURE_COUNT + 2;
+
+ /**
+ * The number of operations of the '<em>random uniform</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int RANDOM_UNIFORM_OPERATION_COUNT = INITIALIZER_WITH_SEED_OPERATION_COUNT + 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.impl.truncated_normalImpl <em>truncated normal</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.impl.truncated_normalImpl
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.impl.Layer_weight_initializersPackageImpl#gettruncated_normal()
+ * @generated
+ */
+ int TRUNCATED_NORMAL = 4;
+
+ /**
+ * The feature id for the '<em><b>Seed</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TRUNCATED_NORMAL__SEED = INITIALIZER_WITH_MEAN_STDDEV__SEED;
+
+ /**
+ * The feature id for the '<em><b>Mean</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TRUNCATED_NORMAL__MEAN = INITIALIZER_WITH_MEAN_STDDEV__MEAN;
+
+ /**
+ * The feature id for the '<em><b>Stddev</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TRUNCATED_NORMAL__STDDEV = INITIALIZER_WITH_MEAN_STDDEV__STDDEV;
+
+ /**
+ * The number of structural features of the '<em>truncated normal</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TRUNCATED_NORMAL_FEATURE_COUNT = INITIALIZER_WITH_MEAN_STDDEV_FEATURE_COUNT + 0;
+
+ /**
+ * The number of operations of the '<em>truncated normal</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TRUNCATED_NORMAL_OPERATION_COUNT = INITIALIZER_WITH_MEAN_STDDEV_OPERATION_COUNT + 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.impl.zerosImpl <em>zeros</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.impl.zerosImpl
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.impl.Layer_weight_initializersPackageImpl#getzeros()
+ * @generated
+ */
+ int ZEROS = 5;
+
+ /**
+ * The number of structural features of the '<em>zeros</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ZEROS_FEATURE_COUNT = 0;
+
+ /**
+ * The number of operations of the '<em>zeros</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ZEROS_OPERATION_COUNT = 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.impl.onesImpl <em>ones</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.impl.onesImpl
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.impl.Layer_weight_initializersPackageImpl#getones()
+ * @generated
+ */
+ int ONES = 6;
+
+ /**
+ * The number of structural features of the '<em>ones</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ONES_FEATURE_COUNT = 0;
+
+ /**
+ * The number of operations of the '<em>ones</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ONES_OPERATION_COUNT = 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.impl.glorot_normalImpl <em>glorot normal</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.impl.glorot_normalImpl
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.impl.Layer_weight_initializersPackageImpl#getglorot_normal()
+ * @generated
+ */
+ int GLOROT_NORMAL = 7;
+
+ /**
+ * The feature id for the '<em><b>Seed</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int GLOROT_NORMAL__SEED = INITIALIZER_WITH_SEED__SEED;
+
+ /**
+ * The number of structural features of the '<em>glorot normal</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int GLOROT_NORMAL_FEATURE_COUNT = INITIALIZER_WITH_SEED_FEATURE_COUNT + 0;
+
+ /**
+ * The number of operations of the '<em>glorot normal</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int GLOROT_NORMAL_OPERATION_COUNT = INITIALIZER_WITH_SEED_OPERATION_COUNT + 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.impl.glorot_uniformImpl <em>glorot uniform</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.impl.glorot_uniformImpl
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.impl.Layer_weight_initializersPackageImpl#getglorot_uniform()
+ * @generated
+ */
+ int GLOROT_UNIFORM = 8;
+
+ /**
+ * The feature id for the '<em><b>Seed</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int GLOROT_UNIFORM__SEED = INITIALIZER_WITH_SEED__SEED;
+
+ /**
+ * The number of structural features of the '<em>glorot uniform</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int GLOROT_UNIFORM_FEATURE_COUNT = INITIALIZER_WITH_SEED_FEATURE_COUNT + 0;
+
+ /**
+ * The number of operations of the '<em>glorot uniform</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int GLOROT_UNIFORM_OPERATION_COUNT = INITIALIZER_WITH_SEED_OPERATION_COUNT + 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.impl.initializer_with_gainImpl <em>initializer with gain</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.impl.initializer_with_gainImpl
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.impl.Layer_weight_initializersPackageImpl#getinitializer_with_gain()
+ * @generated
+ */
+ int INITIALIZER_WITH_GAIN = 10;
+
+ /**
+ * The feature id for the '<em><b>Gain</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int INITIALIZER_WITH_GAIN__GAIN = 0;
+
+ /**
+ * The number of structural features of the '<em>initializer with gain</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int INITIALIZER_WITH_GAIN_FEATURE_COUNT = 1;
+
+ /**
+ * The number of operations of the '<em>initializer with gain</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int INITIALIZER_WITH_GAIN_OPERATION_COUNT = 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.impl.identityImpl <em>identity</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.impl.identityImpl
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.impl.Layer_weight_initializersPackageImpl#getidentity()
+ * @generated
+ */
+ int IDENTITY = 9;
+
+ /**
+ * The feature id for the '<em><b>Gain</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IDENTITY__GAIN = INITIALIZER_WITH_GAIN__GAIN;
+
+ /**
+ * The number of structural features of the '<em>identity</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IDENTITY_FEATURE_COUNT = INITIALIZER_WITH_GAIN_FEATURE_COUNT + 0;
+
+ /**
+ * The number of operations of the '<em>identity</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IDENTITY_OPERATION_COUNT = INITIALIZER_WITH_GAIN_OPERATION_COUNT + 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.impl.orthogonalImpl <em>orthogonal</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.impl.orthogonalImpl
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.impl.Layer_weight_initializersPackageImpl#getorthogonal()
+ * @generated
+ */
+ int ORTHOGONAL = 11;
+
+ /**
+ * The feature id for the '<em><b>Gain</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ORTHOGONAL__GAIN = INITIALIZER_WITH_GAIN__GAIN;
+
+ /**
+ * The feature id for the '<em><b>Seed</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ORTHOGONAL__SEED = INITIALIZER_WITH_GAIN_FEATURE_COUNT + 0;
+
+ /**
+ * The number of structural features of the '<em>orthogonal</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ORTHOGONAL_FEATURE_COUNT = INITIALIZER_WITH_GAIN_FEATURE_COUNT + 1;
+
+ /**
+ * The number of operations of the '<em>orthogonal</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ORTHOGONAL_OPERATION_COUNT = INITIALIZER_WITH_GAIN_OPERATION_COUNT + 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.impl.constantImpl <em>constant</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.impl.constantImpl
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.impl.Layer_weight_initializersPackageImpl#getconstant()
+ * @generated
+ */
+ int CONSTANT = 12;
+
+ /**
+ * The feature id for the '<em><b>Value</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONSTANT__VALUE = 0;
+
+ /**
+ * The number of structural features of the '<em>constant</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONSTANT_FEATURE_COUNT = 1;
+
+ /**
+ * The number of operations of the '<em>constant</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONSTANT_OPERATION_COUNT = 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.impl.variance_scalingImpl <em>variance scaling</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.impl.variance_scalingImpl
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.impl.Layer_weight_initializersPackageImpl#getvariance_scaling()
+ * @generated
+ */
+ int VARIANCE_SCALING = 13;
+
+ /**
+ * The feature id for the '<em><b>Seed</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VARIANCE_SCALING__SEED = INITIALIZER_WITH_SEED__SEED;
+
+ /**
+ * The feature id for the '<em><b>Scale</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VARIANCE_SCALING__SCALE = INITIALIZER_WITH_SEED_FEATURE_COUNT + 0;
+
+ /**
+ * The feature id for the '<em><b>Mode</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VARIANCE_SCALING__MODE = INITIALIZER_WITH_SEED_FEATURE_COUNT + 1;
+
+ /**
+ * The feature id for the '<em><b>Distribution</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VARIANCE_SCALING__DISTRIBUTION = INITIALIZER_WITH_SEED_FEATURE_COUNT + 2;
+
+ /**
+ * The number of structural features of the '<em>variance scaling</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VARIANCE_SCALING_FEATURE_COUNT = INITIALIZER_WITH_SEED_FEATURE_COUNT + 3;
+
+ /**
+ * The number of operations of the '<em>variance scaling</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VARIANCE_SCALING_OPERATION_COUNT = INITIALIZER_WITH_SEED_OPERATION_COUNT + 0;
+
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.random_normal <em>random normal</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>random normal</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.random_normal
+ * @generated
+ */
+ EClass getrandom_normal();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.initializer_with_mean_stddev <em>initializer with mean stddev</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>initializer with mean stddev</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.initializer_with_mean_stddev
+ * @generated
+ */
+ EClass getinitializer_with_mean_stddev();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.initializer_with_mean_stddev#getMean <em>Mean</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Mean</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.initializer_with_mean_stddev#getMean()
+ * @see #getinitializer_with_mean_stddev()
+ * @generated
+ */
+ EAttribute getinitializer_with_mean_stddev_Mean();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.initializer_with_mean_stddev#getStddev <em>Stddev</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Stddev</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.initializer_with_mean_stddev#getStddev()
+ * @see #getinitializer_with_mean_stddev()
+ * @generated
+ */
+ EAttribute getinitializer_with_mean_stddev_Stddev();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.initializer_with_seed <em>initializer with seed</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>initializer with seed</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.initializer_with_seed
+ * @generated
+ */
+ EClass getinitializer_with_seed();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.initializer_with_seed#getSeed <em>Seed</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Seed</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.initializer_with_seed#getSeed()
+ * @see #getinitializer_with_seed()
+ * @generated
+ */
+ EAttribute getinitializer_with_seed_Seed();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.random_uniform <em>random uniform</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>random uniform</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.random_uniform
+ * @generated
+ */
+ EClass getrandom_uniform();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.random_uniform#getMinval <em>Minval</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Minval</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.random_uniform#getMinval()
+ * @see #getrandom_uniform()
+ * @generated
+ */
+ EAttribute getrandom_uniform_Minval();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.random_uniform#getMaxval <em>Maxval</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Maxval</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.random_uniform#getMaxval()
+ * @see #getrandom_uniform()
+ * @generated
+ */
+ EAttribute getrandom_uniform_Maxval();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.truncated_normal <em>truncated normal</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>truncated normal</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.truncated_normal
+ * @generated
+ */
+ EClass gettruncated_normal();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.zeros <em>zeros</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>zeros</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.zeros
+ * @generated
+ */
+ EClass getzeros();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.ones <em>ones</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>ones</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.ones
+ * @generated
+ */
+ EClass getones();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.glorot_normal <em>glorot normal</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>glorot normal</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.glorot_normal
+ * @generated
+ */
+ EClass getglorot_normal();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.glorot_uniform <em>glorot uniform</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>glorot uniform</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.glorot_uniform
+ * @generated
+ */
+ EClass getglorot_uniform();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.identity <em>identity</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>identity</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.identity
+ * @generated
+ */
+ EClass getidentity();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.initializer_with_gain <em>initializer with gain</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>initializer with gain</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.initializer_with_gain
+ * @generated
+ */
+ EClass getinitializer_with_gain();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.initializer_with_gain#getGain <em>Gain</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Gain</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.initializer_with_gain#getGain()
+ * @see #getinitializer_with_gain()
+ * @generated
+ */
+ EAttribute getinitializer_with_gain_Gain();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.orthogonal <em>orthogonal</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>orthogonal</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.orthogonal
+ * @generated
+ */
+ EClass getorthogonal();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.constant <em>constant</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>constant</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.constant
+ * @generated
+ */
+ EClass getconstant();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.constant#getValue <em>Value</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Value</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.constant#getValue()
+ * @see #getconstant()
+ * @generated
+ */
+ EAttribute getconstant_Value();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.variance_scaling <em>variance scaling</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>variance scaling</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.variance_scaling
+ * @generated
+ */
+ EClass getvariance_scaling();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.variance_scaling#getScale <em>Scale</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Scale</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.variance_scaling#getScale()
+ * @see #getvariance_scaling()
+ * @generated
+ */
+ EAttribute getvariance_scaling_Scale();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.variance_scaling#getMode <em>Mode</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Mode</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.variance_scaling#getMode()
+ * @see #getvariance_scaling()
+ * @generated
+ */
+ EAttribute getvariance_scaling_Mode();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.variance_scaling#getDistribution <em>Distribution</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Distribution</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.variance_scaling#getDistribution()
+ * @see #getvariance_scaling()
+ * @generated
+ */
+ EAttribute getvariance_scaling_Distribution();
+
+ /**
+ * Returns the factory that creates the instances of the model.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the factory that creates the instances of the model.
+ * @generated
+ */
+ Layer_weight_initializersFactory getLayer_weight_initializersFactory();
+
+ /**
+ * <!-- begin-user-doc -->
+ * Defines literals for the meta objects that represent
+ * <ul>
+ * <li>each class,</li>
+ * <li>each feature of each class,</li>
+ * <li>each operation of each class,</li>
+ * <li>each enum,</li>
+ * <li>and each data type</li>
+ * </ul>
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ interface Literals {
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.impl.random_normalImpl <em>random normal</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.impl.random_normalImpl
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.impl.Layer_weight_initializersPackageImpl#getrandom_normal()
+ * @generated
+ */
+ EClass RANDOM_NORMAL = eINSTANCE.getrandom_normal();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.impl.initializer_with_mean_stddevImpl <em>initializer with mean stddev</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.impl.initializer_with_mean_stddevImpl
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.impl.Layer_weight_initializersPackageImpl#getinitializer_with_mean_stddev()
+ * @generated
+ */
+ EClass INITIALIZER_WITH_MEAN_STDDEV = eINSTANCE.getinitializer_with_mean_stddev();
+
+ /**
+ * The meta object literal for the '<em><b>Mean</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute INITIALIZER_WITH_MEAN_STDDEV__MEAN = eINSTANCE.getinitializer_with_mean_stddev_Mean();
+
+ /**
+ * The meta object literal for the '<em><b>Stddev</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute INITIALIZER_WITH_MEAN_STDDEV__STDDEV = eINSTANCE.getinitializer_with_mean_stddev_Stddev();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.impl.initializer_with_seedImpl <em>initializer with seed</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.impl.initializer_with_seedImpl
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.impl.Layer_weight_initializersPackageImpl#getinitializer_with_seed()
+ * @generated
+ */
+ EClass INITIALIZER_WITH_SEED = eINSTANCE.getinitializer_with_seed();
+
+ /**
+ * The meta object literal for the '<em><b>Seed</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute INITIALIZER_WITH_SEED__SEED = eINSTANCE.getinitializer_with_seed_Seed();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.impl.random_uniformImpl <em>random uniform</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.impl.random_uniformImpl
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.impl.Layer_weight_initializersPackageImpl#getrandom_uniform()
+ * @generated
+ */
+ EClass RANDOM_UNIFORM = eINSTANCE.getrandom_uniform();
+
+ /**
+ * The meta object literal for the '<em><b>Minval</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute RANDOM_UNIFORM__MINVAL = eINSTANCE.getrandom_uniform_Minval();
+
+ /**
+ * The meta object literal for the '<em><b>Maxval</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute RANDOM_UNIFORM__MAXVAL = eINSTANCE.getrandom_uniform_Maxval();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.impl.truncated_normalImpl <em>truncated normal</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.impl.truncated_normalImpl
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.impl.Layer_weight_initializersPackageImpl#gettruncated_normal()
+ * @generated
+ */
+ EClass TRUNCATED_NORMAL = eINSTANCE.gettruncated_normal();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.impl.zerosImpl <em>zeros</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.impl.zerosImpl
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.impl.Layer_weight_initializersPackageImpl#getzeros()
+ * @generated
+ */
+ EClass ZEROS = eINSTANCE.getzeros();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.impl.onesImpl <em>ones</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.impl.onesImpl
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.impl.Layer_weight_initializersPackageImpl#getones()
+ * @generated
+ */
+ EClass ONES = eINSTANCE.getones();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.impl.glorot_normalImpl <em>glorot normal</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.impl.glorot_normalImpl
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.impl.Layer_weight_initializersPackageImpl#getglorot_normal()
+ * @generated
+ */
+ EClass GLOROT_NORMAL = eINSTANCE.getglorot_normal();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.impl.glorot_uniformImpl <em>glorot uniform</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.impl.glorot_uniformImpl
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.impl.Layer_weight_initializersPackageImpl#getglorot_uniform()
+ * @generated
+ */
+ EClass GLOROT_UNIFORM = eINSTANCE.getglorot_uniform();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.impl.identityImpl <em>identity</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.impl.identityImpl
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.impl.Layer_weight_initializersPackageImpl#getidentity()
+ * @generated
+ */
+ EClass IDENTITY = eINSTANCE.getidentity();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.impl.initializer_with_gainImpl <em>initializer with gain</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.impl.initializer_with_gainImpl
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.impl.Layer_weight_initializersPackageImpl#getinitializer_with_gain()
+ * @generated
+ */
+ EClass INITIALIZER_WITH_GAIN = eINSTANCE.getinitializer_with_gain();
+
+ /**
+ * The meta object literal for the '<em><b>Gain</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute INITIALIZER_WITH_GAIN__GAIN = eINSTANCE.getinitializer_with_gain_Gain();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.impl.orthogonalImpl <em>orthogonal</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.impl.orthogonalImpl
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.impl.Layer_weight_initializersPackageImpl#getorthogonal()
+ * @generated
+ */
+ EClass ORTHOGONAL = eINSTANCE.getorthogonal();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.impl.constantImpl <em>constant</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.impl.constantImpl
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.impl.Layer_weight_initializersPackageImpl#getconstant()
+ * @generated
+ */
+ EClass CONSTANT = eINSTANCE.getconstant();
+
+ /**
+ * The meta object literal for the '<em><b>Value</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute CONSTANT__VALUE = eINSTANCE.getconstant_Value();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.impl.variance_scalingImpl <em>variance scaling</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.impl.variance_scalingImpl
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.impl.Layer_weight_initializersPackageImpl#getvariance_scaling()
+ * @generated
+ */
+ EClass VARIANCE_SCALING = eINSTANCE.getvariance_scaling();
+
+ /**
+ * The meta object literal for the '<em><b>Scale</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute VARIANCE_SCALING__SCALE = eINSTANCE.getvariance_scaling_Scale();
+
+ /**
+ * The meta object literal for the '<em><b>Mode</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute VARIANCE_SCALING__MODE = eINSTANCE.getvariance_scaling_Mode();
+
+ /**
+ * The meta object literal for the '<em><b>Distribution</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute VARIANCE_SCALING__DISTRIBUTION = eINSTANCE.getvariance_scaling_Distribution();
+
+ }
+
+} //Layer_weight_initializersPackage
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_initializers/constant.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_initializers/constant.java
new file mode 100644
index 0000000..94bd899
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_initializers/constant.java
@@ -0,0 +1,59 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>constant</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.constant#getValue <em>Value</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.Layer_weight_initializersPackage#getconstant()
+ * @model
+ * @generated
+ */
+public interface constant extends EObject {
+ /**
+ * Returns the value of the '<em><b>Value</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Value</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Value</em>' attribute.
+ * @see #setValue(double)
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.Layer_weight_initializersPackage#getconstant_Value()
+ * @model dataType="org.eclipse.uml2.types.Real" required="true" ordered="false"
+ * @generated
+ */
+ double getValue();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.constant#getValue <em>Value</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Value</em>' attribute.
+ * @see #getValue()
+ * @generated
+ */
+ void setValue(double value);
+
+} // constant
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_initializers/glorot_normal.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_initializers/glorot_normal.java
new file mode 100644
index 0000000..4649319
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_initializers/glorot_normal.java
@@ -0,0 +1,26 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>glorot normal</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.Layer_weight_initializersPackage#getglorot_normal()
+ * @model
+ * @generated
+ */
+public interface glorot_normal extends initializer_with_seed {
+} // glorot_normal
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_initializers/glorot_uniform.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_initializers/glorot_uniform.java
new file mode 100644
index 0000000..bf7fac4
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_initializers/glorot_uniform.java
@@ -0,0 +1,26 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>glorot uniform</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.Layer_weight_initializersPackage#getglorot_uniform()
+ * @model
+ * @generated
+ */
+public interface glorot_uniform extends initializer_with_seed {
+} // glorot_uniform
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_initializers/identity.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_initializers/identity.java
new file mode 100644
index 0000000..0441baa
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_initializers/identity.java
@@ -0,0 +1,26 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>identity</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.Layer_weight_initializersPackage#getidentity()
+ * @model
+ * @generated
+ */
+public interface identity extends initializer_with_gain {
+} // identity
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_initializers/impl/Layer_weight_initializersFactoryImpl.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_initializers/impl/Layer_weight_initializersFactoryImpl.java
new file mode 100644
index 0000000..9fb5ecb
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_initializers/impl/Layer_weight_initializersFactoryImpl.java
@@ -0,0 +1,226 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.impl;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+
+import org.eclipse.emf.ecore.impl.EFactoryImpl;
+
+import org.eclipse.emf.ecore.plugin.EcorePlugin;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.*;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model <b>Factory</b>.
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class Layer_weight_initializersFactoryImpl extends EFactoryImpl implements Layer_weight_initializersFactory {
+ /**
+ * Creates the default factory implementation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static Layer_weight_initializersFactory init() {
+ try {
+ Layer_weight_initializersFactory theLayer_weight_initializersFactory = (Layer_weight_initializersFactory)EPackage.Registry.INSTANCE.getEFactory(Layer_weight_initializersPackage.eNS_URI);
+ if (theLayer_weight_initializersFactory != null) {
+ return theLayer_weight_initializersFactory;
+ }
+ }
+ catch (Exception exception) {
+ EcorePlugin.INSTANCE.log(exception);
+ }
+ return new Layer_weight_initializersFactoryImpl();
+ }
+
+ /**
+ * Creates an instance of the factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Layer_weight_initializersFactoryImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EObject create(EClass eClass) {
+ switch (eClass.getClassifierID()) {
+ case Layer_weight_initializersPackage.RANDOM_NORMAL: return createrandom_normal();
+ case Layer_weight_initializersPackage.RANDOM_UNIFORM: return createrandom_uniform();
+ case Layer_weight_initializersPackage.TRUNCATED_NORMAL: return createtruncated_normal();
+ case Layer_weight_initializersPackage.ZEROS: return createzeros();
+ case Layer_weight_initializersPackage.ONES: return createones();
+ case Layer_weight_initializersPackage.GLOROT_NORMAL: return createglorot_normal();
+ case Layer_weight_initializersPackage.GLOROT_UNIFORM: return createglorot_uniform();
+ case Layer_weight_initializersPackage.IDENTITY: return createidentity();
+ case Layer_weight_initializersPackage.ORTHOGONAL: return createorthogonal();
+ case Layer_weight_initializersPackage.CONSTANT: return createconstant();
+ case Layer_weight_initializersPackage.VARIANCE_SCALING: return createvariance_scaling();
+ default:
+ throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier"); //$NON-NLS-1$ //$NON-NLS-2$
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public random_normal createrandom_normal() {
+ random_normalImpl random_normal = new random_normalImpl();
+ return random_normal;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public random_uniform createrandom_uniform() {
+ random_uniformImpl random_uniform = new random_uniformImpl();
+ return random_uniform;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public truncated_normal createtruncated_normal() {
+ truncated_normalImpl truncated_normal = new truncated_normalImpl();
+ return truncated_normal;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public zeros createzeros() {
+ zerosImpl zeros = new zerosImpl();
+ return zeros;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public ones createones() {
+ onesImpl ones = new onesImpl();
+ return ones;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public glorot_normal createglorot_normal() {
+ glorot_normalImpl glorot_normal = new glorot_normalImpl();
+ return glorot_normal;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public glorot_uniform createglorot_uniform() {
+ glorot_uniformImpl glorot_uniform = new glorot_uniformImpl();
+ return glorot_uniform;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public identity createidentity() {
+ identityImpl identity = new identityImpl();
+ return identity;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public orthogonal createorthogonal() {
+ orthogonalImpl orthogonal = new orthogonalImpl();
+ return orthogonal;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public constant createconstant() {
+ constantImpl constant = new constantImpl();
+ return constant;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public variance_scaling createvariance_scaling() {
+ variance_scalingImpl variance_scaling = new variance_scalingImpl();
+ return variance_scaling;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Layer_weight_initializersPackage getLayer_weight_initializersPackage() {
+ return (Layer_weight_initializersPackage)getEPackage();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @deprecated
+ * @generated
+ */
+ @Deprecated
+ public static Layer_weight_initializersPackage getPackage() {
+ return Layer_weight_initializersPackage.eINSTANCE;
+ }
+
+} //Layer_weight_initializersFactoryImpl
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_initializers/impl/Layer_weight_initializersPackageImpl.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_initializers/impl/Layer_weight_initializersPackageImpl.java
new file mode 100644
index 0000000..683ebb9
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_initializers/impl/Layer_weight_initializersPackageImpl.java
@@ -0,0 +1,773 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.impl;
+
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EcorePackage;
+
+import org.eclipse.emf.ecore.impl.EPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.AIMLPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution_layersPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.Convolution_layersPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers.DataParallel_layersPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers.impl.DataParallel_layersPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Distance_functions.Distance_functionsPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Distance_functions.impl.Distance_functionsPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.Dropout_layersPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.impl.Dropout_layersPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.Layer_weight_constraintsPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.impl.Layer_weight_constraintsPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.Layer_weight_initializersFactory;
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.Layer_weight_initializersPackage;
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.constant;
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.glorot_normal;
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.glorot_uniform;
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.identity;
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.initializer_with_gain;
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.initializer_with_mean_stddev;
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.initializer_with_seed;
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.ones;
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.orthogonal;
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.random_normal;
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.random_uniform;
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.truncated_normal;
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.variance_scaling;
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.zeros;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers.Layer_weight_regularizersPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers.impl.Layer_weight_regularizersPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.Linear_layersPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.impl.Linear_layersPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Loss_functions.Loss_functionsPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Loss_functions.impl.Loss_functionsPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Module.ModulePackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Module.impl.ModulePackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.NonLinearActivations.NonLinearActivationsPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.NonLinearActivations.impl.NonLinearActivationsPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Normalization_layers.Normalization_layersPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Normalization_layers.impl.Normalization_layersPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Padding_layers.Padding_layersPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Padding_layers.impl.Padding_layersPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Pooling_layers.Pooling_layersPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Pooling_layers.impl.Pooling_layersPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Recurrent_layers.Recurrent_layersPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Recurrent_layers.impl.Recurrent_layersPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.SoftMinMaxActivations.SoftMinMaxActivationsPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.SoftMinMaxActivations.impl.SoftMinMaxActivationsPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Sparse_layers.Sparse_layersPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Sparse_layers.impl.Sparse_layersPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Tensor.TensorPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Tensor.impl.TensorPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Transformer_layers.Transformer_layersPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Transformer_layers.impl.Transformer_layersPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Vision_layers.Vision_layersPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Vision_layers.impl.Vision_layersPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.datatypes.DatatypesPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.datatypes.impl.DatatypesPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.impl.AIMLPackageImpl;
+
+import org.eclipse.uml2.types.TypesPackage;
+
+import org.eclipse.uml2.uml.UMLPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model <b>Package</b>.
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class Layer_weight_initializersPackageImpl extends EPackageImpl implements Layer_weight_initializersPackage {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass random_normalEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass initializer_with_mean_stddevEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass initializer_with_seedEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass random_uniformEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass truncated_normalEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass zerosEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass onesEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass glorot_normalEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass glorot_uniformEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass identityEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass initializer_with_gainEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass orthogonalEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass constantEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass variance_scalingEClass = null;
+
+ /**
+ * Creates an instance of the model <b>Package</b>, registered with
+ * {@link org.eclipse.emf.ecore.EPackage.Registry EPackage.Registry} by the package
+ * package URI value.
+ * <p>Note: the correct way to create the package is via the static
+ * factory method {@link #init init()}, which also performs
+ * initialization of the package, or returns the registered package,
+ * if one already exists.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.emf.ecore.EPackage.Registry
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.Layer_weight_initializersPackage#eNS_URI
+ * @see #init()
+ * @generated
+ */
+ private Layer_weight_initializersPackageImpl() {
+ super(eNS_URI, Layer_weight_initializersFactory.eINSTANCE);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private static boolean isInited = false;
+
+ /**
+ * Creates, registers, and initializes the <b>Package</b> for this model, and for any others upon which it depends.
+ *
+ * <p>This method is used to initialize {@link Layer_weight_initializersPackage#eINSTANCE} when that field is accessed.
+ * Clients should not invoke it directly. Instead, they should simply access that field to obtain the package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #eNS_URI
+ * @see #createPackageContents()
+ * @see #initializePackageContents()
+ * @generated
+ */
+ public static Layer_weight_initializersPackage init() {
+ if (isInited) return (Layer_weight_initializersPackage)EPackage.Registry.INSTANCE.getEPackage(Layer_weight_initializersPackage.eNS_URI);
+
+ // Obtain or create and register package
+ Object registeredLayer_weight_initializersPackage = EPackage.Registry.INSTANCE.get(eNS_URI);
+ Layer_weight_initializersPackageImpl theLayer_weight_initializersPackage = registeredLayer_weight_initializersPackage instanceof Layer_weight_initializersPackageImpl ? (Layer_weight_initializersPackageImpl)registeredLayer_weight_initializersPackage : new Layer_weight_initializersPackageImpl();
+
+ isInited = true;
+
+ // Initialize simple dependencies
+ EcorePackage.eINSTANCE.eClass();
+ TypesPackage.eINSTANCE.eClass();
+ UMLPackage.eINSTANCE.eClass();
+
+ // Obtain or create and register interdependencies
+ Object registeredPackage = EPackage.Registry.INSTANCE.getEPackage(AIMLPackage.eNS_URI);
+ AIMLPackageImpl theAIMLPackage = (AIMLPackageImpl)(registeredPackage instanceof AIMLPackageImpl ? registeredPackage : AIMLPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(ModulePackage.eNS_URI);
+ ModulePackageImpl theModulePackage = (ModulePackageImpl)(registeredPackage instanceof ModulePackageImpl ? registeredPackage : ModulePackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(TensorPackage.eNS_URI);
+ TensorPackageImpl theTensorPackage = (TensorPackageImpl)(registeredPackage instanceof TensorPackageImpl ? registeredPackage : TensorPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(DatatypesPackage.eNS_URI);
+ DatatypesPackageImpl theDatatypesPackage = (DatatypesPackageImpl)(registeredPackage instanceof DatatypesPackageImpl ? registeredPackage : DatatypesPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Pooling_layersPackage.eNS_URI);
+ Pooling_layersPackageImpl thePooling_layersPackage = (Pooling_layersPackageImpl)(registeredPackage instanceof Pooling_layersPackageImpl ? registeredPackage : Pooling_layersPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Convolution_layersPackage.eNS_URI);
+ Convolution_layersPackageImpl theConvolution_layersPackage = (Convolution_layersPackageImpl)(registeredPackage instanceof Convolution_layersPackageImpl ? registeredPackage : Convolution_layersPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Layer_weight_constraintsPackage.eNS_URI);
+ Layer_weight_constraintsPackageImpl theLayer_weight_constraintsPackage = (Layer_weight_constraintsPackageImpl)(registeredPackage instanceof Layer_weight_constraintsPackageImpl ? registeredPackage : Layer_weight_constraintsPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Padding_layersPackage.eNS_URI);
+ Padding_layersPackageImpl thePadding_layersPackage = (Padding_layersPackageImpl)(registeredPackage instanceof Padding_layersPackageImpl ? registeredPackage : Padding_layersPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(NonLinearActivationsPackage.eNS_URI);
+ NonLinearActivationsPackageImpl theNonLinearActivationsPackage = (NonLinearActivationsPackageImpl)(registeredPackage instanceof NonLinearActivationsPackageImpl ? registeredPackage : NonLinearActivationsPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(SoftMinMaxActivationsPackage.eNS_URI);
+ SoftMinMaxActivationsPackageImpl theSoftMinMaxActivationsPackage = (SoftMinMaxActivationsPackageImpl)(registeredPackage instanceof SoftMinMaxActivationsPackageImpl ? registeredPackage : SoftMinMaxActivationsPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Normalization_layersPackage.eNS_URI);
+ Normalization_layersPackageImpl theNormalization_layersPackage = (Normalization_layersPackageImpl)(registeredPackage instanceof Normalization_layersPackageImpl ? registeredPackage : Normalization_layersPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Recurrent_layersPackage.eNS_URI);
+ Recurrent_layersPackageImpl theRecurrent_layersPackage = (Recurrent_layersPackageImpl)(registeredPackage instanceof Recurrent_layersPackageImpl ? registeredPackage : Recurrent_layersPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Transformer_layersPackage.eNS_URI);
+ Transformer_layersPackageImpl theTransformer_layersPackage = (Transformer_layersPackageImpl)(registeredPackage instanceof Transformer_layersPackageImpl ? registeredPackage : Transformer_layersPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Linear_layersPackage.eNS_URI);
+ Linear_layersPackageImpl theLinear_layersPackage = (Linear_layersPackageImpl)(registeredPackage instanceof Linear_layersPackageImpl ? registeredPackage : Linear_layersPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Dropout_layersPackage.eNS_URI);
+ Dropout_layersPackageImpl theDropout_layersPackage = (Dropout_layersPackageImpl)(registeredPackage instanceof Dropout_layersPackageImpl ? registeredPackage : Dropout_layersPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Sparse_layersPackage.eNS_URI);
+ Sparse_layersPackageImpl theSparse_layersPackage = (Sparse_layersPackageImpl)(registeredPackage instanceof Sparse_layersPackageImpl ? registeredPackage : Sparse_layersPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Distance_functionsPackage.eNS_URI);
+ Distance_functionsPackageImpl theDistance_functionsPackage = (Distance_functionsPackageImpl)(registeredPackage instanceof Distance_functionsPackageImpl ? registeredPackage : Distance_functionsPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Loss_functionsPackage.eNS_URI);
+ Loss_functionsPackageImpl theLoss_functionsPackage = (Loss_functionsPackageImpl)(registeredPackage instanceof Loss_functionsPackageImpl ? registeredPackage : Loss_functionsPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Vision_layersPackage.eNS_URI);
+ Vision_layersPackageImpl theVision_layersPackage = (Vision_layersPackageImpl)(registeredPackage instanceof Vision_layersPackageImpl ? registeredPackage : Vision_layersPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(DataParallel_layersPackage.eNS_URI);
+ DataParallel_layersPackageImpl theDataParallel_layersPackage = (DataParallel_layersPackageImpl)(registeredPackage instanceof DataParallel_layersPackageImpl ? registeredPackage : DataParallel_layersPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Layer_weight_regularizersPackage.eNS_URI);
+ Layer_weight_regularizersPackageImpl theLayer_weight_regularizersPackage = (Layer_weight_regularizersPackageImpl)(registeredPackage instanceof Layer_weight_regularizersPackageImpl ? registeredPackage : Layer_weight_regularizersPackage.eINSTANCE);
+
+ // Create package meta-data objects
+ theLayer_weight_initializersPackage.createPackageContents();
+ theAIMLPackage.createPackageContents();
+ theModulePackage.createPackageContents();
+ theTensorPackage.createPackageContents();
+ theDatatypesPackage.createPackageContents();
+ thePooling_layersPackage.createPackageContents();
+ theConvolution_layersPackage.createPackageContents();
+ theLayer_weight_constraintsPackage.createPackageContents();
+ thePadding_layersPackage.createPackageContents();
+ theNonLinearActivationsPackage.createPackageContents();
+ theSoftMinMaxActivationsPackage.createPackageContents();
+ theNormalization_layersPackage.createPackageContents();
+ theRecurrent_layersPackage.createPackageContents();
+ theTransformer_layersPackage.createPackageContents();
+ theLinear_layersPackage.createPackageContents();
+ theDropout_layersPackage.createPackageContents();
+ theSparse_layersPackage.createPackageContents();
+ theDistance_functionsPackage.createPackageContents();
+ theLoss_functionsPackage.createPackageContents();
+ theVision_layersPackage.createPackageContents();
+ theDataParallel_layersPackage.createPackageContents();
+ theLayer_weight_regularizersPackage.createPackageContents();
+
+ // Initialize created meta-data
+ theLayer_weight_initializersPackage.initializePackageContents();
+ theAIMLPackage.initializePackageContents();
+ theModulePackage.initializePackageContents();
+ theTensorPackage.initializePackageContents();
+ theDatatypesPackage.initializePackageContents();
+ thePooling_layersPackage.initializePackageContents();
+ theConvolution_layersPackage.initializePackageContents();
+ theLayer_weight_constraintsPackage.initializePackageContents();
+ thePadding_layersPackage.initializePackageContents();
+ theNonLinearActivationsPackage.initializePackageContents();
+ theSoftMinMaxActivationsPackage.initializePackageContents();
+ theNormalization_layersPackage.initializePackageContents();
+ theRecurrent_layersPackage.initializePackageContents();
+ theTransformer_layersPackage.initializePackageContents();
+ theLinear_layersPackage.initializePackageContents();
+ theDropout_layersPackage.initializePackageContents();
+ theSparse_layersPackage.initializePackageContents();
+ theDistance_functionsPackage.initializePackageContents();
+ theLoss_functionsPackage.initializePackageContents();
+ theVision_layersPackage.initializePackageContents();
+ theDataParallel_layersPackage.initializePackageContents();
+ theLayer_weight_regularizersPackage.initializePackageContents();
+
+ // Mark meta-data to indicate it can't be changed
+ theLayer_weight_initializersPackage.freeze();
+
+ // Update the registry and return the package
+ EPackage.Registry.INSTANCE.put(Layer_weight_initializersPackage.eNS_URI, theLayer_weight_initializersPackage);
+ return theLayer_weight_initializersPackage;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EClass getrandom_normal() {
+ return random_normalEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EClass getinitializer_with_mean_stddev() {
+ return initializer_with_mean_stddevEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EAttribute getinitializer_with_mean_stddev_Mean() {
+ return (EAttribute)initializer_with_mean_stddevEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EAttribute getinitializer_with_mean_stddev_Stddev() {
+ return (EAttribute)initializer_with_mean_stddevEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EClass getinitializer_with_seed() {
+ return initializer_with_seedEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EAttribute getinitializer_with_seed_Seed() {
+ return (EAttribute)initializer_with_seedEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EClass getrandom_uniform() {
+ return random_uniformEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EAttribute getrandom_uniform_Minval() {
+ return (EAttribute)random_uniformEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EAttribute getrandom_uniform_Maxval() {
+ return (EAttribute)random_uniformEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EClass gettruncated_normal() {
+ return truncated_normalEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EClass getzeros() {
+ return zerosEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EClass getones() {
+ return onesEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EClass getglorot_normal() {
+ return glorot_normalEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EClass getglorot_uniform() {
+ return glorot_uniformEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EClass getidentity() {
+ return identityEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EClass getinitializer_with_gain() {
+ return initializer_with_gainEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EAttribute getinitializer_with_gain_Gain() {
+ return (EAttribute)initializer_with_gainEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EClass getorthogonal() {
+ return orthogonalEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EClass getconstant() {
+ return constantEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EAttribute getconstant_Value() {
+ return (EAttribute)constantEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EClass getvariance_scaling() {
+ return variance_scalingEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EAttribute getvariance_scaling_Scale() {
+ return (EAttribute)variance_scalingEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EAttribute getvariance_scaling_Mode() {
+ return (EAttribute)variance_scalingEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EAttribute getvariance_scaling_Distribution() {
+ return (EAttribute)variance_scalingEClass.getEStructuralFeatures().get(2);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Layer_weight_initializersFactory getLayer_weight_initializersFactory() {
+ return (Layer_weight_initializersFactory)getEFactoryInstance();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private boolean isCreated = false;
+
+ /**
+ * Creates the meta-model objects for the package. This method is
+ * guarded to have no affect on any invocation but its first.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void createPackageContents() {
+ if (isCreated) return;
+ isCreated = true;
+
+ // Create classes and their features
+ random_normalEClass = createEClass(RANDOM_NORMAL);
+
+ initializer_with_mean_stddevEClass = createEClass(INITIALIZER_WITH_MEAN_STDDEV);
+ createEAttribute(initializer_with_mean_stddevEClass, INITIALIZER_WITH_MEAN_STDDEV__MEAN);
+ createEAttribute(initializer_with_mean_stddevEClass, INITIALIZER_WITH_MEAN_STDDEV__STDDEV);
+
+ initializer_with_seedEClass = createEClass(INITIALIZER_WITH_SEED);
+ createEAttribute(initializer_with_seedEClass, INITIALIZER_WITH_SEED__SEED);
+
+ random_uniformEClass = createEClass(RANDOM_UNIFORM);
+ createEAttribute(random_uniformEClass, RANDOM_UNIFORM__MINVAL);
+ createEAttribute(random_uniformEClass, RANDOM_UNIFORM__MAXVAL);
+
+ truncated_normalEClass = createEClass(TRUNCATED_NORMAL);
+
+ zerosEClass = createEClass(ZEROS);
+
+ onesEClass = createEClass(ONES);
+
+ glorot_normalEClass = createEClass(GLOROT_NORMAL);
+
+ glorot_uniformEClass = createEClass(GLOROT_UNIFORM);
+
+ identityEClass = createEClass(IDENTITY);
+
+ initializer_with_gainEClass = createEClass(INITIALIZER_WITH_GAIN);
+ createEAttribute(initializer_with_gainEClass, INITIALIZER_WITH_GAIN__GAIN);
+
+ orthogonalEClass = createEClass(ORTHOGONAL);
+
+ constantEClass = createEClass(CONSTANT);
+ createEAttribute(constantEClass, CONSTANT__VALUE);
+
+ variance_scalingEClass = createEClass(VARIANCE_SCALING);
+ createEAttribute(variance_scalingEClass, VARIANCE_SCALING__SCALE);
+ createEAttribute(variance_scalingEClass, VARIANCE_SCALING__MODE);
+ createEAttribute(variance_scalingEClass, VARIANCE_SCALING__DISTRIBUTION);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private boolean isInitialized = false;
+
+ /**
+ * Complete the initialization of the package and its meta-model. This
+ * method is guarded to have no affect on any invocation but its first.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void initializePackageContents() {
+ if (isInitialized) return;
+ isInitialized = true;
+
+ // Initialize package
+ setName(eNAME);
+ setNsPrefix(eNS_PREFIX);
+ setNsURI(eNS_URI);
+
+ // Obtain other dependent packages
+ TypesPackage theTypesPackage = (TypesPackage)EPackage.Registry.INSTANCE.getEPackage(TypesPackage.eNS_URI);
+
+ // Create type parameters
+
+ // Set bounds for type parameters
+
+ // Add supertypes to classes
+ random_normalEClass.getESuperTypes().add(this.getinitializer_with_mean_stddev());
+ initializer_with_mean_stddevEClass.getESuperTypes().add(this.getinitializer_with_seed());
+ random_uniformEClass.getESuperTypes().add(this.getinitializer_with_seed());
+ truncated_normalEClass.getESuperTypes().add(this.getinitializer_with_mean_stddev());
+ glorot_normalEClass.getESuperTypes().add(this.getinitializer_with_seed());
+ glorot_uniformEClass.getESuperTypes().add(this.getinitializer_with_seed());
+ identityEClass.getESuperTypes().add(this.getinitializer_with_gain());
+ orthogonalEClass.getESuperTypes().add(this.getinitializer_with_gain());
+ orthogonalEClass.getESuperTypes().add(this.getinitializer_with_seed());
+ variance_scalingEClass.getESuperTypes().add(this.getinitializer_with_seed());
+
+ // Initialize classes, features, and operations; add parameters
+ initEClass(random_normalEClass, random_normal.class, "random_normal", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+
+ initEClass(initializer_with_mean_stddevEClass, initializer_with_mean_stddev.class, "initializer_with_mean_stddev", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ initEAttribute(getinitializer_with_mean_stddev_Mean(), theTypesPackage.getReal(), "mean", null, 1, 1, initializer_with_mean_stddev.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+ initEAttribute(getinitializer_with_mean_stddev_Stddev(), theTypesPackage.getReal(), "stddev", null, 1, 1, initializer_with_mean_stddev.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+
+ initEClass(initializer_with_seedEClass, initializer_with_seed.class, "initializer_with_seed", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ initEAttribute(getinitializer_with_seed_Seed(), theTypesPackage.getInteger(), "seed", null, 1, 1, initializer_with_seed.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+
+ initEClass(random_uniformEClass, random_uniform.class, "random_uniform", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ initEAttribute(getrandom_uniform_Minval(), theTypesPackage.getReal(), "minval", null, 1, 1, random_uniform.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+ initEAttribute(getrandom_uniform_Maxval(), theTypesPackage.getReal(), "maxval", null, 1, 1, random_uniform.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+
+ initEClass(truncated_normalEClass, truncated_normal.class, "truncated_normal", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+
+ initEClass(zerosEClass, zeros.class, "zeros", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+
+ initEClass(onesEClass, ones.class, "ones", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+
+ initEClass(glorot_normalEClass, glorot_normal.class, "glorot_normal", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+
+ initEClass(glorot_uniformEClass, glorot_uniform.class, "glorot_uniform", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+
+ initEClass(identityEClass, identity.class, "identity", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+
+ initEClass(initializer_with_gainEClass, initializer_with_gain.class, "initializer_with_gain", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ initEAttribute(getinitializer_with_gain_Gain(), theTypesPackage.getReal(), "gain", null, 1, 1, initializer_with_gain.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+
+ initEClass(orthogonalEClass, orthogonal.class, "orthogonal", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+
+ initEClass(constantEClass, constant.class, "constant", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ initEAttribute(getconstant_Value(), theTypesPackage.getReal(), "value", null, 1, 1, constant.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+
+ initEClass(variance_scalingEClass, variance_scaling.class, "variance_scaling", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ initEAttribute(getvariance_scaling_Scale(), theTypesPackage.getReal(), "scale", null, 1, 1, variance_scaling.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+ initEAttribute(getvariance_scaling_Mode(), theTypesPackage.getString(), "mode", null, 1, 1, variance_scaling.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+ initEAttribute(getvariance_scaling_Distribution(), theTypesPackage.getString(), "distribution", null, 1, 1, variance_scaling.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+ }
+
+} //Layer_weight_initializersPackageImpl
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_initializers/impl/constantImpl.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_initializers/impl/constantImpl.java
new file mode 100644
index 0000000..052421f
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_initializers/impl/constantImpl.java
@@ -0,0 +1,174 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.Layer_weight_initializersPackage;
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.constant;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>constant</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.impl.constantImpl#getValue <em>Value</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class constantImpl extends MinimalEObjectImpl.Container implements constant {
+ /**
+ * The default value of the '{@link #getValue() <em>Value</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getValue()
+ * @generated
+ * @ordered
+ */
+ protected static final double VALUE_EDEFAULT = 0.0;
+
+ /**
+ * The cached value of the '{@link #getValue() <em>Value</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getValue()
+ * @generated
+ * @ordered
+ */
+ protected double value = VALUE_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected constantImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return Layer_weight_initializersPackage.Literals.CONSTANT;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public double getValue() {
+ return value;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void setValue(double newValue) {
+ double oldValue = value;
+ value = newValue;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, Layer_weight_initializersPackage.CONSTANT__VALUE, oldValue, value));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case Layer_weight_initializersPackage.CONSTANT__VALUE:
+ return getValue();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case Layer_weight_initializersPackage.CONSTANT__VALUE:
+ setValue((Double)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case Layer_weight_initializersPackage.CONSTANT__VALUE:
+ setValue(VALUE_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case Layer_weight_initializersPackage.CONSTANT__VALUE:
+ return value != VALUE_EDEFAULT;
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuilder result = new StringBuilder(super.toString());
+ result.append(" (value: "); //$NON-NLS-1$
+ result.append(value);
+ result.append(')');
+ return result.toString();
+ }
+
+} //constantImpl
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_initializers/impl/glorot_normalImpl.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_initializers/impl/glorot_normalImpl.java
new file mode 100644
index 0000000..d2cf3f7
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_initializers/impl/glorot_normalImpl.java
@@ -0,0 +1,46 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.Layer_weight_initializersPackage;
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.glorot_normal;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>glorot normal</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class glorot_normalImpl extends initializer_with_seedImpl implements glorot_normal {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected glorot_normalImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return Layer_weight_initializersPackage.Literals.GLOROT_NORMAL;
+ }
+
+} //glorot_normalImpl
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_initializers/impl/glorot_uniformImpl.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_initializers/impl/glorot_uniformImpl.java
new file mode 100644
index 0000000..70b7f23
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_initializers/impl/glorot_uniformImpl.java
@@ -0,0 +1,46 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.Layer_weight_initializersPackage;
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.glorot_uniform;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>glorot uniform</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class glorot_uniformImpl extends initializer_with_seedImpl implements glorot_uniform {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected glorot_uniformImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return Layer_weight_initializersPackage.Literals.GLOROT_UNIFORM;
+ }
+
+} //glorot_uniformImpl
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_initializers/impl/identityImpl.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_initializers/impl/identityImpl.java
new file mode 100644
index 0000000..cc18810
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_initializers/impl/identityImpl.java
@@ -0,0 +1,46 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.Layer_weight_initializersPackage;
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.identity;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>identity</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class identityImpl extends initializer_with_gainImpl implements identity {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected identityImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return Layer_weight_initializersPackage.Literals.IDENTITY;
+ }
+
+} //identityImpl
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_initializers/impl/initializer_with_gainImpl.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_initializers/impl/initializer_with_gainImpl.java
new file mode 100644
index 0000000..c36ef90
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_initializers/impl/initializer_with_gainImpl.java
@@ -0,0 +1,174 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.Layer_weight_initializersPackage;
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.initializer_with_gain;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>initializer with gain</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.impl.initializer_with_gainImpl#getGain <em>Gain</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public abstract class initializer_with_gainImpl extends MinimalEObjectImpl.Container implements initializer_with_gain {
+ /**
+ * The default value of the '{@link #getGain() <em>Gain</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getGain()
+ * @generated
+ * @ordered
+ */
+ protected static final double GAIN_EDEFAULT = 0.0;
+
+ /**
+ * The cached value of the '{@link #getGain() <em>Gain</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getGain()
+ * @generated
+ * @ordered
+ */
+ protected double gain = GAIN_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected initializer_with_gainImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return Layer_weight_initializersPackage.Literals.INITIALIZER_WITH_GAIN;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public double getGain() {
+ return gain;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void setGain(double newGain) {
+ double oldGain = gain;
+ gain = newGain;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, Layer_weight_initializersPackage.INITIALIZER_WITH_GAIN__GAIN, oldGain, gain));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case Layer_weight_initializersPackage.INITIALIZER_WITH_GAIN__GAIN:
+ return getGain();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case Layer_weight_initializersPackage.INITIALIZER_WITH_GAIN__GAIN:
+ setGain((Double)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case Layer_weight_initializersPackage.INITIALIZER_WITH_GAIN__GAIN:
+ setGain(GAIN_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case Layer_weight_initializersPackage.INITIALIZER_WITH_GAIN__GAIN:
+ return gain != GAIN_EDEFAULT;
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuilder result = new StringBuilder(super.toString());
+ result.append(" (gain: "); //$NON-NLS-1$
+ result.append(gain);
+ result.append(')');
+ return result.toString();
+ }
+
+} //initializer_with_gainImpl
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_initializers/impl/initializer_with_mean_stddevImpl.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_initializers/impl/initializer_with_mean_stddevImpl.java
new file mode 100644
index 0000000..315f9df
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_initializers/impl/initializer_with_mean_stddevImpl.java
@@ -0,0 +1,229 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.Layer_weight_initializersPackage;
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.initializer_with_mean_stddev;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>initializer with mean stddev</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.impl.initializer_with_mean_stddevImpl#getMean <em>Mean</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.impl.initializer_with_mean_stddevImpl#getStddev <em>Stddev</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public abstract class initializer_with_mean_stddevImpl extends initializer_with_seedImpl implements initializer_with_mean_stddev {
+ /**
+ * The default value of the '{@link #getMean() <em>Mean</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getMean()
+ * @generated
+ * @ordered
+ */
+ protected static final double MEAN_EDEFAULT = 0.0;
+
+ /**
+ * The cached value of the '{@link #getMean() <em>Mean</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getMean()
+ * @generated
+ * @ordered
+ */
+ protected double mean = MEAN_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getStddev() <em>Stddev</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getStddev()
+ * @generated
+ * @ordered
+ */
+ protected static final double STDDEV_EDEFAULT = 0.0;
+
+ /**
+ * The cached value of the '{@link #getStddev() <em>Stddev</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getStddev()
+ * @generated
+ * @ordered
+ */
+ protected double stddev = STDDEV_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected initializer_with_mean_stddevImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return Layer_weight_initializersPackage.Literals.INITIALIZER_WITH_MEAN_STDDEV;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public double getMean() {
+ return mean;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void setMean(double newMean) {
+ double oldMean = mean;
+ mean = newMean;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, Layer_weight_initializersPackage.INITIALIZER_WITH_MEAN_STDDEV__MEAN, oldMean, mean));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public double getStddev() {
+ return stddev;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void setStddev(double newStddev) {
+ double oldStddev = stddev;
+ stddev = newStddev;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, Layer_weight_initializersPackage.INITIALIZER_WITH_MEAN_STDDEV__STDDEV, oldStddev, stddev));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case Layer_weight_initializersPackage.INITIALIZER_WITH_MEAN_STDDEV__MEAN:
+ return getMean();
+ case Layer_weight_initializersPackage.INITIALIZER_WITH_MEAN_STDDEV__STDDEV:
+ return getStddev();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case Layer_weight_initializersPackage.INITIALIZER_WITH_MEAN_STDDEV__MEAN:
+ setMean((Double)newValue);
+ return;
+ case Layer_weight_initializersPackage.INITIALIZER_WITH_MEAN_STDDEV__STDDEV:
+ setStddev((Double)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case Layer_weight_initializersPackage.INITIALIZER_WITH_MEAN_STDDEV__MEAN:
+ setMean(MEAN_EDEFAULT);
+ return;
+ case Layer_weight_initializersPackage.INITIALIZER_WITH_MEAN_STDDEV__STDDEV:
+ setStddev(STDDEV_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case Layer_weight_initializersPackage.INITIALIZER_WITH_MEAN_STDDEV__MEAN:
+ return mean != MEAN_EDEFAULT;
+ case Layer_weight_initializersPackage.INITIALIZER_WITH_MEAN_STDDEV__STDDEV:
+ return stddev != STDDEV_EDEFAULT;
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuilder result = new StringBuilder(super.toString());
+ result.append(" (mean: "); //$NON-NLS-1$
+ result.append(mean);
+ result.append(", stddev: "); //$NON-NLS-1$
+ result.append(stddev);
+ result.append(')');
+ return result.toString();
+ }
+
+} //initializer_with_mean_stddevImpl
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_initializers/impl/initializer_with_seedImpl.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_initializers/impl/initializer_with_seedImpl.java
new file mode 100644
index 0000000..3654375
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_initializers/impl/initializer_with_seedImpl.java
@@ -0,0 +1,174 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.Layer_weight_initializersPackage;
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.initializer_with_seed;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>initializer with seed</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.impl.initializer_with_seedImpl#getSeed <em>Seed</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public abstract class initializer_with_seedImpl extends MinimalEObjectImpl.Container implements initializer_with_seed {
+ /**
+ * The default value of the '{@link #getSeed() <em>Seed</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getSeed()
+ * @generated
+ * @ordered
+ */
+ protected static final int SEED_EDEFAULT = 0;
+
+ /**
+ * The cached value of the '{@link #getSeed() <em>Seed</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getSeed()
+ * @generated
+ * @ordered
+ */
+ protected int seed = SEED_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected initializer_with_seedImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return Layer_weight_initializersPackage.Literals.INITIALIZER_WITH_SEED;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public int getSeed() {
+ return seed;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void setSeed(int newSeed) {
+ int oldSeed = seed;
+ seed = newSeed;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, Layer_weight_initializersPackage.INITIALIZER_WITH_SEED__SEED, oldSeed, seed));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case Layer_weight_initializersPackage.INITIALIZER_WITH_SEED__SEED:
+ return getSeed();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case Layer_weight_initializersPackage.INITIALIZER_WITH_SEED__SEED:
+ setSeed((Integer)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case Layer_weight_initializersPackage.INITIALIZER_WITH_SEED__SEED:
+ setSeed(SEED_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case Layer_weight_initializersPackage.INITIALIZER_WITH_SEED__SEED:
+ return seed != SEED_EDEFAULT;
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuilder result = new StringBuilder(super.toString());
+ result.append(" (seed: "); //$NON-NLS-1$
+ result.append(seed);
+ result.append(')');
+ return result.toString();
+ }
+
+} //initializer_with_seedImpl
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_initializers/impl/onesImpl.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_initializers/impl/onesImpl.java
new file mode 100644
index 0000000..c957c65
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_initializers/impl/onesImpl.java
@@ -0,0 +1,48 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.Layer_weight_initializersPackage;
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.ones;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>ones</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class onesImpl extends MinimalEObjectImpl.Container implements ones {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected onesImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return Layer_weight_initializersPackage.Literals.ONES;
+ }
+
+} //onesImpl
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_initializers/impl/orthogonalImpl.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_initializers/impl/orthogonalImpl.java
new file mode 100644
index 0000000..87bd616
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_initializers/impl/orthogonalImpl.java
@@ -0,0 +1,206 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.Layer_weight_initializersPackage;
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.initializer_with_seed;
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.orthogonal;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>orthogonal</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.impl.orthogonalImpl#getSeed <em>Seed</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class orthogonalImpl extends initializer_with_gainImpl implements orthogonal {
+ /**
+ * The default value of the '{@link #getSeed() <em>Seed</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getSeed()
+ * @generated
+ * @ordered
+ */
+ protected static final int SEED_EDEFAULT = 0;
+
+ /**
+ * The cached value of the '{@link #getSeed() <em>Seed</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getSeed()
+ * @generated
+ * @ordered
+ */
+ protected int seed = SEED_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected orthogonalImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return Layer_weight_initializersPackage.Literals.ORTHOGONAL;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public int getSeed() {
+ return seed;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void setSeed(int newSeed) {
+ int oldSeed = seed;
+ seed = newSeed;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, Layer_weight_initializersPackage.ORTHOGONAL__SEED, oldSeed, seed));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case Layer_weight_initializersPackage.ORTHOGONAL__SEED:
+ return getSeed();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case Layer_weight_initializersPackage.ORTHOGONAL__SEED:
+ setSeed((Integer)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case Layer_weight_initializersPackage.ORTHOGONAL__SEED:
+ setSeed(SEED_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case Layer_weight_initializersPackage.ORTHOGONAL__SEED:
+ return seed != SEED_EDEFAULT;
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public int eBaseStructuralFeatureID(int derivedFeatureID, Class<?> baseClass) {
+ if (baseClass == initializer_with_seed.class) {
+ switch (derivedFeatureID) {
+ case Layer_weight_initializersPackage.ORTHOGONAL__SEED: return Layer_weight_initializersPackage.INITIALIZER_WITH_SEED__SEED;
+ default: return -1;
+ }
+ }
+ return super.eBaseStructuralFeatureID(derivedFeatureID, baseClass);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public int eDerivedStructuralFeatureID(int baseFeatureID, Class<?> baseClass) {
+ if (baseClass == initializer_with_seed.class) {
+ switch (baseFeatureID) {
+ case Layer_weight_initializersPackage.INITIALIZER_WITH_SEED__SEED: return Layer_weight_initializersPackage.ORTHOGONAL__SEED;
+ default: return -1;
+ }
+ }
+ return super.eDerivedStructuralFeatureID(baseFeatureID, baseClass);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuilder result = new StringBuilder(super.toString());
+ result.append(" (seed: "); //$NON-NLS-1$
+ result.append(seed);
+ result.append(')');
+ return result.toString();
+ }
+
+} //orthogonalImpl
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_initializers/impl/random_normalImpl.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_initializers/impl/random_normalImpl.java
new file mode 100644
index 0000000..cac151a
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_initializers/impl/random_normalImpl.java
@@ -0,0 +1,46 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.Layer_weight_initializersPackage;
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.random_normal;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>random normal</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class random_normalImpl extends initializer_with_mean_stddevImpl implements random_normal {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected random_normalImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return Layer_weight_initializersPackage.Literals.RANDOM_NORMAL;
+ }
+
+} //random_normalImpl
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_initializers/impl/random_uniformImpl.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_initializers/impl/random_uniformImpl.java
new file mode 100644
index 0000000..c7ab8f0
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_initializers/impl/random_uniformImpl.java
@@ -0,0 +1,229 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.Layer_weight_initializersPackage;
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.random_uniform;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>random uniform</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.impl.random_uniformImpl#getMinval <em>Minval</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.impl.random_uniformImpl#getMaxval <em>Maxval</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class random_uniformImpl extends initializer_with_seedImpl implements random_uniform {
+ /**
+ * The default value of the '{@link #getMinval() <em>Minval</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getMinval()
+ * @generated
+ * @ordered
+ */
+ protected static final double MINVAL_EDEFAULT = 0.0;
+
+ /**
+ * The cached value of the '{@link #getMinval() <em>Minval</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getMinval()
+ * @generated
+ * @ordered
+ */
+ protected double minval = MINVAL_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getMaxval() <em>Maxval</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getMaxval()
+ * @generated
+ * @ordered
+ */
+ protected static final double MAXVAL_EDEFAULT = 0.0;
+
+ /**
+ * The cached value of the '{@link #getMaxval() <em>Maxval</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getMaxval()
+ * @generated
+ * @ordered
+ */
+ protected double maxval = MAXVAL_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected random_uniformImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return Layer_weight_initializersPackage.Literals.RANDOM_UNIFORM;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public double getMinval() {
+ return minval;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void setMinval(double newMinval) {
+ double oldMinval = minval;
+ minval = newMinval;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, Layer_weight_initializersPackage.RANDOM_UNIFORM__MINVAL, oldMinval, minval));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public double getMaxval() {
+ return maxval;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void setMaxval(double newMaxval) {
+ double oldMaxval = maxval;
+ maxval = newMaxval;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, Layer_weight_initializersPackage.RANDOM_UNIFORM__MAXVAL, oldMaxval, maxval));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case Layer_weight_initializersPackage.RANDOM_UNIFORM__MINVAL:
+ return getMinval();
+ case Layer_weight_initializersPackage.RANDOM_UNIFORM__MAXVAL:
+ return getMaxval();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case Layer_weight_initializersPackage.RANDOM_UNIFORM__MINVAL:
+ setMinval((Double)newValue);
+ return;
+ case Layer_weight_initializersPackage.RANDOM_UNIFORM__MAXVAL:
+ setMaxval((Double)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case Layer_weight_initializersPackage.RANDOM_UNIFORM__MINVAL:
+ setMinval(MINVAL_EDEFAULT);
+ return;
+ case Layer_weight_initializersPackage.RANDOM_UNIFORM__MAXVAL:
+ setMaxval(MAXVAL_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case Layer_weight_initializersPackage.RANDOM_UNIFORM__MINVAL:
+ return minval != MINVAL_EDEFAULT;
+ case Layer_weight_initializersPackage.RANDOM_UNIFORM__MAXVAL:
+ return maxval != MAXVAL_EDEFAULT;
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuilder result = new StringBuilder(super.toString());
+ result.append(" (minval: "); //$NON-NLS-1$
+ result.append(minval);
+ result.append(", maxval: "); //$NON-NLS-1$
+ result.append(maxval);
+ result.append(')');
+ return result.toString();
+ }
+
+} //random_uniformImpl
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_initializers/impl/truncated_normalImpl.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_initializers/impl/truncated_normalImpl.java
new file mode 100644
index 0000000..ff9953c
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_initializers/impl/truncated_normalImpl.java
@@ -0,0 +1,46 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.Layer_weight_initializersPackage;
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.truncated_normal;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>truncated normal</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class truncated_normalImpl extends initializer_with_mean_stddevImpl implements truncated_normal {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected truncated_normalImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return Layer_weight_initializersPackage.Literals.TRUNCATED_NORMAL;
+ }
+
+} //truncated_normalImpl
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_initializers/impl/variance_scalingImpl.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_initializers/impl/variance_scalingImpl.java
new file mode 100644
index 0000000..cceaa7a
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_initializers/impl/variance_scalingImpl.java
@@ -0,0 +1,285 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.Layer_weight_initializersPackage;
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.variance_scaling;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>variance scaling</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.impl.variance_scalingImpl#getScale <em>Scale</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.impl.variance_scalingImpl#getMode <em>Mode</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.impl.variance_scalingImpl#getDistribution <em>Distribution</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class variance_scalingImpl extends initializer_with_seedImpl implements variance_scaling {
+ /**
+ * The default value of the '{@link #getScale() <em>Scale</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getScale()
+ * @generated
+ * @ordered
+ */
+ protected static final double SCALE_EDEFAULT = 0.0;
+
+ /**
+ * The cached value of the '{@link #getScale() <em>Scale</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getScale()
+ * @generated
+ * @ordered
+ */
+ protected double scale = SCALE_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getMode() <em>Mode</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getMode()
+ * @generated
+ * @ordered
+ */
+ protected static final String MODE_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getMode() <em>Mode</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getMode()
+ * @generated
+ * @ordered
+ */
+ protected String mode = MODE_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getDistribution() <em>Distribution</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getDistribution()
+ * @generated
+ * @ordered
+ */
+ protected static final String DISTRIBUTION_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getDistribution() <em>Distribution</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getDistribution()
+ * @generated
+ * @ordered
+ */
+ protected String distribution = DISTRIBUTION_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected variance_scalingImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return Layer_weight_initializersPackage.Literals.VARIANCE_SCALING;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public double getScale() {
+ return scale;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void setScale(double newScale) {
+ double oldScale = scale;
+ scale = newScale;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, Layer_weight_initializersPackage.VARIANCE_SCALING__SCALE, oldScale, scale));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String getMode() {
+ return mode;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void setMode(String newMode) {
+ String oldMode = mode;
+ mode = newMode;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, Layer_weight_initializersPackage.VARIANCE_SCALING__MODE, oldMode, mode));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String getDistribution() {
+ return distribution;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void setDistribution(String newDistribution) {
+ String oldDistribution = distribution;
+ distribution = newDistribution;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, Layer_weight_initializersPackage.VARIANCE_SCALING__DISTRIBUTION, oldDistribution, distribution));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case Layer_weight_initializersPackage.VARIANCE_SCALING__SCALE:
+ return getScale();
+ case Layer_weight_initializersPackage.VARIANCE_SCALING__MODE:
+ return getMode();
+ case Layer_weight_initializersPackage.VARIANCE_SCALING__DISTRIBUTION:
+ return getDistribution();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case Layer_weight_initializersPackage.VARIANCE_SCALING__SCALE:
+ setScale((Double)newValue);
+ return;
+ case Layer_weight_initializersPackage.VARIANCE_SCALING__MODE:
+ setMode((String)newValue);
+ return;
+ case Layer_weight_initializersPackage.VARIANCE_SCALING__DISTRIBUTION:
+ setDistribution((String)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case Layer_weight_initializersPackage.VARIANCE_SCALING__SCALE:
+ setScale(SCALE_EDEFAULT);
+ return;
+ case Layer_weight_initializersPackage.VARIANCE_SCALING__MODE:
+ setMode(MODE_EDEFAULT);
+ return;
+ case Layer_weight_initializersPackage.VARIANCE_SCALING__DISTRIBUTION:
+ setDistribution(DISTRIBUTION_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case Layer_weight_initializersPackage.VARIANCE_SCALING__SCALE:
+ return scale != SCALE_EDEFAULT;
+ case Layer_weight_initializersPackage.VARIANCE_SCALING__MODE:
+ return MODE_EDEFAULT == null ? mode != null : !MODE_EDEFAULT.equals(mode);
+ case Layer_weight_initializersPackage.VARIANCE_SCALING__DISTRIBUTION:
+ return DISTRIBUTION_EDEFAULT == null ? distribution != null : !DISTRIBUTION_EDEFAULT.equals(distribution);
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuilder result = new StringBuilder(super.toString());
+ result.append(" (scale: "); //$NON-NLS-1$
+ result.append(scale);
+ result.append(", mode: "); //$NON-NLS-1$
+ result.append(mode);
+ result.append(", distribution: "); //$NON-NLS-1$
+ result.append(distribution);
+ result.append(')');
+ return result.toString();
+ }
+
+} //variance_scalingImpl
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_initializers/impl/zerosImpl.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_initializers/impl/zerosImpl.java
new file mode 100644
index 0000000..1231fa8
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_initializers/impl/zerosImpl.java
@@ -0,0 +1,48 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.Layer_weight_initializersPackage;
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.zeros;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>zeros</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class zerosImpl extends MinimalEObjectImpl.Container implements zeros {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected zerosImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return Layer_weight_initializersPackage.Literals.ZEROS;
+ }
+
+} //zerosImpl
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_initializers/initializer_with_gain.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_initializers/initializer_with_gain.java
new file mode 100644
index 0000000..1ad5aa8
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_initializers/initializer_with_gain.java
@@ -0,0 +1,59 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>initializer with gain</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.initializer_with_gain#getGain <em>Gain</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.Layer_weight_initializersPackage#getinitializer_with_gain()
+ * @model abstract="true"
+ * @generated
+ */
+public interface initializer_with_gain extends EObject {
+ /**
+ * Returns the value of the '<em><b>Gain</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Gain</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Gain</em>' attribute.
+ * @see #setGain(double)
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.Layer_weight_initializersPackage#getinitializer_with_gain_Gain()
+ * @model dataType="org.eclipse.uml2.types.Real" required="true" ordered="false"
+ * @generated
+ */
+ double getGain();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.initializer_with_gain#getGain <em>Gain</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Gain</em>' attribute.
+ * @see #getGain()
+ * @generated
+ */
+ void setGain(double value);
+
+} // initializer_with_gain
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_initializers/initializer_with_mean_stddev.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_initializers/initializer_with_mean_stddev.java
new file mode 100644
index 0000000..480133b
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_initializers/initializer_with_mean_stddev.java
@@ -0,0 +1,85 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>initializer with mean stddev</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.initializer_with_mean_stddev#getMean <em>Mean</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.initializer_with_mean_stddev#getStddev <em>Stddev</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.Layer_weight_initializersPackage#getinitializer_with_mean_stddev()
+ * @model abstract="true"
+ * @generated
+ */
+public interface initializer_with_mean_stddev extends initializer_with_seed {
+ /**
+ * Returns the value of the '<em><b>Mean</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Mean</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Mean</em>' attribute.
+ * @see #setMean(double)
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.Layer_weight_initializersPackage#getinitializer_with_mean_stddev_Mean()
+ * @model dataType="org.eclipse.uml2.types.Real" required="true" ordered="false"
+ * @generated
+ */
+ double getMean();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.initializer_with_mean_stddev#getMean <em>Mean</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Mean</em>' attribute.
+ * @see #getMean()
+ * @generated
+ */
+ void setMean(double value);
+
+ /**
+ * Returns the value of the '<em><b>Stddev</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Stddev</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Stddev</em>' attribute.
+ * @see #setStddev(double)
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.Layer_weight_initializersPackage#getinitializer_with_mean_stddev_Stddev()
+ * @model dataType="org.eclipse.uml2.types.Real" required="true" ordered="false"
+ * @generated
+ */
+ double getStddev();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.initializer_with_mean_stddev#getStddev <em>Stddev</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Stddev</em>' attribute.
+ * @see #getStddev()
+ * @generated
+ */
+ void setStddev(double value);
+
+} // initializer_with_mean_stddev
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_initializers/initializer_with_seed.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_initializers/initializer_with_seed.java
new file mode 100644
index 0000000..268bf90
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_initializers/initializer_with_seed.java
@@ -0,0 +1,59 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>initializer with seed</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.initializer_with_seed#getSeed <em>Seed</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.Layer_weight_initializersPackage#getinitializer_with_seed()
+ * @model abstract="true"
+ * @generated
+ */
+public interface initializer_with_seed extends EObject {
+ /**
+ * Returns the value of the '<em><b>Seed</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Seed</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Seed</em>' attribute.
+ * @see #setSeed(int)
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.Layer_weight_initializersPackage#getinitializer_with_seed_Seed()
+ * @model dataType="org.eclipse.uml2.types.Integer" required="true" ordered="false"
+ * @generated
+ */
+ int getSeed();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.initializer_with_seed#getSeed <em>Seed</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Seed</em>' attribute.
+ * @see #getSeed()
+ * @generated
+ */
+ void setSeed(int value);
+
+} // initializer_with_seed
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_initializers/ones.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_initializers/ones.java
new file mode 100644
index 0000000..981cc3c
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_initializers/ones.java
@@ -0,0 +1,27 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>ones</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.Layer_weight_initializersPackage#getones()
+ * @model
+ * @generated
+ */
+public interface ones extends EObject {
+} // ones
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_initializers/orthogonal.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_initializers/orthogonal.java
new file mode 100644
index 0000000..c02c7c4
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_initializers/orthogonal.java
@@ -0,0 +1,26 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>orthogonal</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.Layer_weight_initializersPackage#getorthogonal()
+ * @model
+ * @generated
+ */
+public interface orthogonal extends initializer_with_gain, initializer_with_seed {
+} // orthogonal
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_initializers/random_normal.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_initializers/random_normal.java
new file mode 100644
index 0000000..3854d89
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_initializers/random_normal.java
@@ -0,0 +1,26 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>random normal</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.Layer_weight_initializersPackage#getrandom_normal()
+ * @model
+ * @generated
+ */
+public interface random_normal extends initializer_with_mean_stddev {
+} // random_normal
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_initializers/random_uniform.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_initializers/random_uniform.java
new file mode 100644
index 0000000..069ac58
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_initializers/random_uniform.java
@@ -0,0 +1,85 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>random uniform</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.random_uniform#getMinval <em>Minval</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.random_uniform#getMaxval <em>Maxval</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.Layer_weight_initializersPackage#getrandom_uniform()
+ * @model
+ * @generated
+ */
+public interface random_uniform extends initializer_with_seed {
+ /**
+ * Returns the value of the '<em><b>Minval</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Minval</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Minval</em>' attribute.
+ * @see #setMinval(double)
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.Layer_weight_initializersPackage#getrandom_uniform_Minval()
+ * @model dataType="org.eclipse.uml2.types.Real" required="true" ordered="false"
+ * @generated
+ */
+ double getMinval();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.random_uniform#getMinval <em>Minval</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Minval</em>' attribute.
+ * @see #getMinval()
+ * @generated
+ */
+ void setMinval(double value);
+
+ /**
+ * Returns the value of the '<em><b>Maxval</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Maxval</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Maxval</em>' attribute.
+ * @see #setMaxval(double)
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.Layer_weight_initializersPackage#getrandom_uniform_Maxval()
+ * @model dataType="org.eclipse.uml2.types.Real" required="true" ordered="false"
+ * @generated
+ */
+ double getMaxval();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.random_uniform#getMaxval <em>Maxval</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Maxval</em>' attribute.
+ * @see #getMaxval()
+ * @generated
+ */
+ void setMaxval(double value);
+
+} // random_uniform
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_initializers/truncated_normal.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_initializers/truncated_normal.java
new file mode 100644
index 0000000..b2626d8
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_initializers/truncated_normal.java
@@ -0,0 +1,26 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>truncated normal</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.Layer_weight_initializersPackage#gettruncated_normal()
+ * @model
+ * @generated
+ */
+public interface truncated_normal extends initializer_with_mean_stddev {
+} // truncated_normal
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_initializers/util/Layer_weight_initializersAdapterFactory.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_initializers/util/Layer_weight_initializersAdapterFactory.java
new file mode 100644
index 0000000..e85fc24
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_initializers/util/Layer_weight_initializersAdapterFactory.java
@@ -0,0 +1,363 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.util;
+
+import org.eclipse.emf.common.notify.Adapter;
+import org.eclipse.emf.common.notify.Notifier;
+
+import org.eclipse.emf.common.notify.impl.AdapterFactoryImpl;
+
+import org.eclipse.emf.ecore.EObject;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.*;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Adapter Factory</b> for the model.
+ * It provides an adapter <code>createXXX</code> method for each class of the model.
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.Layer_weight_initializersPackage
+ * @generated
+ */
+public class Layer_weight_initializersAdapterFactory extends AdapterFactoryImpl {
+ /**
+ * The cached model package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected static Layer_weight_initializersPackage modelPackage;
+
+ /**
+ * Creates an instance of the adapter factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Layer_weight_initializersAdapterFactory() {
+ if (modelPackage == null) {
+ modelPackage = Layer_weight_initializersPackage.eINSTANCE;
+ }
+ }
+
+ /**
+ * Returns whether this factory is applicable for the type of the object.
+ * <!-- begin-user-doc -->
+ * This implementation returns <code>true</code> if the object is either the model's package or is an instance object of the model.
+ * <!-- end-user-doc -->
+ * @return whether this factory is applicable for the type of the object.
+ * @generated
+ */
+ @Override
+ public boolean isFactoryForType(Object object) {
+ if (object == modelPackage) {
+ return true;
+ }
+ if (object instanceof EObject) {
+ return ((EObject)object).eClass().getEPackage() == modelPackage;
+ }
+ return false;
+ }
+
+ /**
+ * The switch that delegates to the <code>createXXX</code> methods.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected Layer_weight_initializersSwitch<Adapter> modelSwitch =
+ new Layer_weight_initializersSwitch<Adapter>() {
+ @Override
+ public Adapter caserandom_normal(random_normal object) {
+ return createrandom_normalAdapter();
+ }
+ @Override
+ public Adapter caseinitializer_with_mean_stddev(initializer_with_mean_stddev object) {
+ return createinitializer_with_mean_stddevAdapter();
+ }
+ @Override
+ public Adapter caseinitializer_with_seed(initializer_with_seed object) {
+ return createinitializer_with_seedAdapter();
+ }
+ @Override
+ public Adapter caserandom_uniform(random_uniform object) {
+ return createrandom_uniformAdapter();
+ }
+ @Override
+ public Adapter casetruncated_normal(truncated_normal object) {
+ return createtruncated_normalAdapter();
+ }
+ @Override
+ public Adapter casezeros(zeros object) {
+ return createzerosAdapter();
+ }
+ @Override
+ public Adapter caseones(ones object) {
+ return createonesAdapter();
+ }
+ @Override
+ public Adapter caseglorot_normal(glorot_normal object) {
+ return createglorot_normalAdapter();
+ }
+ @Override
+ public Adapter caseglorot_uniform(glorot_uniform object) {
+ return createglorot_uniformAdapter();
+ }
+ @Override
+ public Adapter caseidentity(identity object) {
+ return createidentityAdapter();
+ }
+ @Override
+ public Adapter caseinitializer_with_gain(initializer_with_gain object) {
+ return createinitializer_with_gainAdapter();
+ }
+ @Override
+ public Adapter caseorthogonal(orthogonal object) {
+ return createorthogonalAdapter();
+ }
+ @Override
+ public Adapter caseconstant(constant object) {
+ return createconstantAdapter();
+ }
+ @Override
+ public Adapter casevariance_scaling(variance_scaling object) {
+ return createvariance_scalingAdapter();
+ }
+ @Override
+ public Adapter defaultCase(EObject object) {
+ return createEObjectAdapter();
+ }
+ };
+
+ /**
+ * Creates an adapter for the <code>target</code>.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param target the object to adapt.
+ * @return the adapter for the <code>target</code>.
+ * @generated
+ */
+ @Override
+ public Adapter createAdapter(Notifier target) {
+ return modelSwitch.doSwitch((EObject)target);
+ }
+
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.random_normal <em>random normal</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.random_normal
+ * @generated
+ */
+ public Adapter createrandom_normalAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.initializer_with_mean_stddev <em>initializer with mean stddev</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.initializer_with_mean_stddev
+ * @generated
+ */
+ public Adapter createinitializer_with_mean_stddevAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.initializer_with_seed <em>initializer with seed</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.initializer_with_seed
+ * @generated
+ */
+ public Adapter createinitializer_with_seedAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.random_uniform <em>random uniform</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.random_uniform
+ * @generated
+ */
+ public Adapter createrandom_uniformAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.truncated_normal <em>truncated normal</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.truncated_normal
+ * @generated
+ */
+ public Adapter createtruncated_normalAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.zeros <em>zeros</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.zeros
+ * @generated
+ */
+ public Adapter createzerosAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.ones <em>ones</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.ones
+ * @generated
+ */
+ public Adapter createonesAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.glorot_normal <em>glorot normal</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.glorot_normal
+ * @generated
+ */
+ public Adapter createglorot_normalAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.glorot_uniform <em>glorot uniform</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.glorot_uniform
+ * @generated
+ */
+ public Adapter createglorot_uniformAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.identity <em>identity</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.identity
+ * @generated
+ */
+ public Adapter createidentityAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.initializer_with_gain <em>initializer with gain</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.initializer_with_gain
+ * @generated
+ */
+ public Adapter createinitializer_with_gainAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.orthogonal <em>orthogonal</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.orthogonal
+ * @generated
+ */
+ public Adapter createorthogonalAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.constant <em>constant</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.constant
+ * @generated
+ */
+ public Adapter createconstantAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.variance_scaling <em>variance scaling</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.variance_scaling
+ * @generated
+ */
+ public Adapter createvariance_scalingAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for the default case.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @generated
+ */
+ public Adapter createEObjectAdapter() {
+ return null;
+ }
+
+} //Layer_weight_initializersAdapterFactory
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_initializers/util/Layer_weight_initializersSwitch.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_initializers/util/Layer_weight_initializersSwitch.java
new file mode 100644
index 0000000..ad90c82
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_initializers/util/Layer_weight_initializersSwitch.java
@@ -0,0 +1,404 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.util;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+
+import org.eclipse.emf.ecore.util.Switch;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.*;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Switch</b> for the model's inheritance hierarchy.
+ * It supports the call {@link #doSwitch(EObject) doSwitch(object)}
+ * to invoke the <code>caseXXX</code> method for each class of the model,
+ * starting with the actual class of the object
+ * and proceeding up the inheritance hierarchy
+ * until a non-null result is returned,
+ * which is the result of the switch.
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.Layer_weight_initializersPackage
+ * @generated
+ */
+public class Layer_weight_initializersSwitch<T> extends Switch<T> {
+ /**
+ * The cached model package
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected static Layer_weight_initializersPackage modelPackage;
+
+ /**
+ * Creates an instance of the switch.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Layer_weight_initializersSwitch() {
+ if (modelPackage == null) {
+ modelPackage = Layer_weight_initializersPackage.eINSTANCE;
+ }
+ }
+
+ /**
+ * Checks whether this is a switch for the given package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param ePackage the package in question.
+ * @return whether this is a switch for the given package.
+ * @generated
+ */
+ @Override
+ protected boolean isSwitchFor(EPackage ePackage) {
+ return ePackage == modelPackage;
+ }
+
+ /**
+ * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the first non-null result returned by a <code>caseXXX</code> call.
+ * @generated
+ */
+ @Override
+ protected T doSwitch(int classifierID, EObject theEObject) {
+ switch (classifierID) {
+ case Layer_weight_initializersPackage.RANDOM_NORMAL: {
+ random_normal random_normal = (random_normal)theEObject;
+ T result = caserandom_normal(random_normal);
+ if (result == null) result = caseinitializer_with_mean_stddev(random_normal);
+ if (result == null) result = caseinitializer_with_seed(random_normal);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case Layer_weight_initializersPackage.INITIALIZER_WITH_MEAN_STDDEV: {
+ initializer_with_mean_stddev initializer_with_mean_stddev = (initializer_with_mean_stddev)theEObject;
+ T result = caseinitializer_with_mean_stddev(initializer_with_mean_stddev);
+ if (result == null) result = caseinitializer_with_seed(initializer_with_mean_stddev);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case Layer_weight_initializersPackage.INITIALIZER_WITH_SEED: {
+ initializer_with_seed initializer_with_seed = (initializer_with_seed)theEObject;
+ T result = caseinitializer_with_seed(initializer_with_seed);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case Layer_weight_initializersPackage.RANDOM_UNIFORM: {
+ random_uniform random_uniform = (random_uniform)theEObject;
+ T result = caserandom_uniform(random_uniform);
+ if (result == null) result = caseinitializer_with_seed(random_uniform);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case Layer_weight_initializersPackage.TRUNCATED_NORMAL: {
+ truncated_normal truncated_normal = (truncated_normal)theEObject;
+ T result = casetruncated_normal(truncated_normal);
+ if (result == null) result = caseinitializer_with_mean_stddev(truncated_normal);
+ if (result == null) result = caseinitializer_with_seed(truncated_normal);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case Layer_weight_initializersPackage.ZEROS: {
+ zeros zeros = (zeros)theEObject;
+ T result = casezeros(zeros);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case Layer_weight_initializersPackage.ONES: {
+ ones ones = (ones)theEObject;
+ T result = caseones(ones);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case Layer_weight_initializersPackage.GLOROT_NORMAL: {
+ glorot_normal glorot_normal = (glorot_normal)theEObject;
+ T result = caseglorot_normal(glorot_normal);
+ if (result == null) result = caseinitializer_with_seed(glorot_normal);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case Layer_weight_initializersPackage.GLOROT_UNIFORM: {
+ glorot_uniform glorot_uniform = (glorot_uniform)theEObject;
+ T result = caseglorot_uniform(glorot_uniform);
+ if (result == null) result = caseinitializer_with_seed(glorot_uniform);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case Layer_weight_initializersPackage.IDENTITY: {
+ identity identity = (identity)theEObject;
+ T result = caseidentity(identity);
+ if (result == null) result = caseinitializer_with_gain(identity);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case Layer_weight_initializersPackage.INITIALIZER_WITH_GAIN: {
+ initializer_with_gain initializer_with_gain = (initializer_with_gain)theEObject;
+ T result = caseinitializer_with_gain(initializer_with_gain);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case Layer_weight_initializersPackage.ORTHOGONAL: {
+ orthogonal orthogonal = (orthogonal)theEObject;
+ T result = caseorthogonal(orthogonal);
+ if (result == null) result = caseinitializer_with_gain(orthogonal);
+ if (result == null) result = caseinitializer_with_seed(orthogonal);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case Layer_weight_initializersPackage.CONSTANT: {
+ constant constant = (constant)theEObject;
+ T result = caseconstant(constant);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case Layer_weight_initializersPackage.VARIANCE_SCALING: {
+ variance_scaling variance_scaling = (variance_scaling)theEObject;
+ T result = casevariance_scaling(variance_scaling);
+ if (result == null) result = caseinitializer_with_seed(variance_scaling);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ default: return defaultCase(theEObject);
+ }
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>random normal</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>random normal</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caserandom_normal(random_normal object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>initializer with mean stddev</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>initializer with mean stddev</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseinitializer_with_mean_stddev(initializer_with_mean_stddev object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>initializer with seed</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>initializer with seed</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseinitializer_with_seed(initializer_with_seed object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>random uniform</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>random uniform</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caserandom_uniform(random_uniform object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>truncated normal</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>truncated normal</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T casetruncated_normal(truncated_normal object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>zeros</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>zeros</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T casezeros(zeros object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>ones</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>ones</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseones(ones object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>glorot normal</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>glorot normal</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseglorot_normal(glorot_normal object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>glorot uniform</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>glorot uniform</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseglorot_uniform(glorot_uniform object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>identity</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>identity</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseidentity(identity object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>initializer with gain</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>initializer with gain</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseinitializer_with_gain(initializer_with_gain object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>orthogonal</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>orthogonal</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseorthogonal(orthogonal object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>constant</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>constant</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseconstant(constant object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>variance scaling</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>variance scaling</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T casevariance_scaling(variance_scaling object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>EObject</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch, but this is the last case anyway.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>EObject</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject)
+ * @generated
+ */
+ @Override
+ public T defaultCase(EObject object) {
+ return null;
+ }
+
+} //Layer_weight_initializersSwitch
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_initializers/variance_scaling.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_initializers/variance_scaling.java
new file mode 100644
index 0000000..ac7d2f5
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_initializers/variance_scaling.java
@@ -0,0 +1,112 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>variance scaling</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.variance_scaling#getScale <em>Scale</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.variance_scaling#getMode <em>Mode</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.variance_scaling#getDistribution <em>Distribution</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.Layer_weight_initializersPackage#getvariance_scaling()
+ * @model
+ * @generated
+ */
+public interface variance_scaling extends initializer_with_seed {
+ /**
+ * Returns the value of the '<em><b>Scale</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Scale</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Scale</em>' attribute.
+ * @see #setScale(double)
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.Layer_weight_initializersPackage#getvariance_scaling_Scale()
+ * @model dataType="org.eclipse.uml2.types.Real" required="true" ordered="false"
+ * @generated
+ */
+ double getScale();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.variance_scaling#getScale <em>Scale</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Scale</em>' attribute.
+ * @see #getScale()
+ * @generated
+ */
+ void setScale(double value);
+
+ /**
+ * Returns the value of the '<em><b>Mode</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Mode</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Mode</em>' attribute.
+ * @see #setMode(String)
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.Layer_weight_initializersPackage#getvariance_scaling_Mode()
+ * @model dataType="org.eclipse.uml2.types.String" required="true" ordered="false"
+ * @generated
+ */
+ String getMode();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.variance_scaling#getMode <em>Mode</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Mode</em>' attribute.
+ * @see #getMode()
+ * @generated
+ */
+ void setMode(String value);
+
+ /**
+ * Returns the value of the '<em><b>Distribution</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Distribution</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Distribution</em>' attribute.
+ * @see #setDistribution(String)
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.Layer_weight_initializersPackage#getvariance_scaling_Distribution()
+ * @model dataType="org.eclipse.uml2.types.String" required="true" ordered="false"
+ * @generated
+ */
+ String getDistribution();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.variance_scaling#getDistribution <em>Distribution</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Distribution</em>' attribute.
+ * @see #getDistribution()
+ * @generated
+ */
+ void setDistribution(String value);
+
+} // variance_scaling
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_initializers/zeros.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_initializers/zeros.java
new file mode 100644
index 0000000..652e090
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_initializers/zeros.java
@@ -0,0 +1,27 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>zeros</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.Layer_weight_initializersPackage#getzeros()
+ * @model
+ * @generated
+ */
+public interface zeros extends EObject {
+} // zeros
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_regularizers/Layer_weight_regularizersFactory.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_regularizers/Layer_weight_regularizersFactory.java
new file mode 100644
index 0000000..aeea1f7
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_regularizers/Layer_weight_regularizersFactory.java
@@ -0,0 +1,69 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers;
+
+import org.eclipse.emf.ecore.EFactory;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Factory</b> for the model.
+ * It provides a create method for each non-abstract class of the model.
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers.Layer_weight_regularizersPackage
+ * @generated
+ */
+public interface Layer_weight_regularizersFactory extends EFactory {
+ /**
+ * The singleton instance of the factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ Layer_weight_regularizersFactory eINSTANCE = org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers.impl.Layer_weight_regularizersFactoryImpl.init();
+
+ /**
+ * Returns a new object of class '<em>l1</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>l1</em>'.
+ * @generated
+ */
+ l1 createl1();
+
+ /**
+ * Returns a new object of class '<em>l2</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>l2</em>'.
+ * @generated
+ */
+ l2 createl2();
+
+ /**
+ * Returns a new object of class '<em>l1 l2</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>l1 l2</em>'.
+ * @generated
+ */
+ l1_l2 createl1_l2();
+
+ /**
+ * Returns the package supported by this factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the package supported by this factory.
+ * @generated
+ */
+ Layer_weight_regularizersPackage getLayer_weight_regularizersPackage();
+
+} //Layer_weight_regularizersFactory
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_regularizers/Layer_weight_regularizersPackage.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_regularizers/Layer_weight_regularizersPackage.java
new file mode 100644
index 0000000..6473634
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_regularizers/Layer_weight_regularizersPackage.java
@@ -0,0 +1,425 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers;
+
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Package</b> for the model.
+ * It contains accessors for the meta objects to represent
+ * <ul>
+ * <li>each class,</li>
+ * <li>each feature of each class,</li>
+ * <li>each operation of each class,</li>
+ * <li>each enum,</li>
+ * <li>and each data type</li>
+ * </ul>
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers.Layer_weight_regularizersFactory
+ * @model kind="package"
+ * @generated
+ */
+public interface Layer_weight_regularizersPackage extends EPackage {
+ /**
+ * The package name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNAME = "Layer_weight_regularizers"; //$NON-NLS-1$
+
+ /**
+ * The package namespace URI.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNS_URI = "http:///AIML/Layer_weight_regularizers.ecore"; //$NON-NLS-1$
+
+ /**
+ * The package namespace name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNS_PREFIX = "AIML.Layer_weight_regularizers"; //$NON-NLS-1$
+
+ /**
+ * The singleton instance of the package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ Layer_weight_regularizersPackage eINSTANCE = org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers.impl.Layer_weight_regularizersPackageImpl.init();
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers.impl.ReguWithl1Impl <em>Regu Withl1</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers.impl.ReguWithl1Impl
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers.impl.Layer_weight_regularizersPackageImpl#getReguWithl1()
+ * @generated
+ */
+ int REGU_WITHL1 = 1;
+
+ /**
+ * The feature id for the '<em><b>L1</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int REGU_WITHL1__L1 = 0;
+
+ /**
+ * The number of structural features of the '<em>Regu Withl1</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int REGU_WITHL1_FEATURE_COUNT = 1;
+
+ /**
+ * The number of operations of the '<em>Regu Withl1</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int REGU_WITHL1_OPERATION_COUNT = 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers.impl.l1Impl <em>l1</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers.impl.l1Impl
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers.impl.Layer_weight_regularizersPackageImpl#getl1()
+ * @generated
+ */
+ int L1 = 0;
+
+ /**
+ * The feature id for the '<em><b>L1</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int L1__L1 = REGU_WITHL1__L1;
+
+ /**
+ * The number of structural features of the '<em>l1</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int L1_FEATURE_COUNT = REGU_WITHL1_FEATURE_COUNT + 0;
+
+ /**
+ * The number of operations of the '<em>l1</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int L1_OPERATION_COUNT = REGU_WITHL1_OPERATION_COUNT + 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers.impl.ReguWithl2Impl <em>Regu Withl2</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers.impl.ReguWithl2Impl
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers.impl.Layer_weight_regularizersPackageImpl#getReguWithl2()
+ * @generated
+ */
+ int REGU_WITHL2 = 3;
+
+ /**
+ * The feature id for the '<em><b>L2</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int REGU_WITHL2__L2 = 0;
+
+ /**
+ * The number of structural features of the '<em>Regu Withl2</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int REGU_WITHL2_FEATURE_COUNT = 1;
+
+ /**
+ * The number of operations of the '<em>Regu Withl2</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int REGU_WITHL2_OPERATION_COUNT = 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers.impl.l2Impl <em>l2</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers.impl.l2Impl
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers.impl.Layer_weight_regularizersPackageImpl#getl2()
+ * @generated
+ */
+ int L2 = 2;
+
+ /**
+ * The feature id for the '<em><b>L2</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int L2__L2 = REGU_WITHL2__L2;
+
+ /**
+ * The number of structural features of the '<em>l2</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int L2_FEATURE_COUNT = REGU_WITHL2_FEATURE_COUNT + 0;
+
+ /**
+ * The number of operations of the '<em>l2</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int L2_OPERATION_COUNT = REGU_WITHL2_OPERATION_COUNT + 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers.impl.l1_l2Impl <em>l1 l2</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers.impl.l1_l2Impl
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers.impl.Layer_weight_regularizersPackageImpl#getl1_l2()
+ * @generated
+ */
+ int L1_L2 = 4;
+
+ /**
+ * The feature id for the '<em><b>L1</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int L1_L2__L1 = REGU_WITHL1__L1;
+
+ /**
+ * The feature id for the '<em><b>L2</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int L1_L2__L2 = REGU_WITHL1_FEATURE_COUNT + 0;
+
+ /**
+ * The number of structural features of the '<em>l1 l2</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int L1_L2_FEATURE_COUNT = REGU_WITHL1_FEATURE_COUNT + 1;
+
+ /**
+ * The number of operations of the '<em>l1 l2</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int L1_L2_OPERATION_COUNT = REGU_WITHL1_OPERATION_COUNT + 0;
+
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers.l1 <em>l1</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>l1</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers.l1
+ * @generated
+ */
+ EClass getl1();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers.ReguWithl1 <em>Regu Withl1</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Regu Withl1</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers.ReguWithl1
+ * @generated
+ */
+ EClass getReguWithl1();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers.ReguWithl1#getL1 <em>L1</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>L1</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers.ReguWithl1#getL1()
+ * @see #getReguWithl1()
+ * @generated
+ */
+ EAttribute getReguWithl1_L1();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers.l2 <em>l2</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>l2</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers.l2
+ * @generated
+ */
+ EClass getl2();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers.ReguWithl2 <em>Regu Withl2</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Regu Withl2</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers.ReguWithl2
+ * @generated
+ */
+ EClass getReguWithl2();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers.ReguWithl2#getL2 <em>L2</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>L2</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers.ReguWithl2#getL2()
+ * @see #getReguWithl2()
+ * @generated
+ */
+ EAttribute getReguWithl2_L2();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers.l1_l2 <em>l1 l2</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>l1 l2</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers.l1_l2
+ * @generated
+ */
+ EClass getl1_l2();
+
+ /**
+ * Returns the factory that creates the instances of the model.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the factory that creates the instances of the model.
+ * @generated
+ */
+ Layer_weight_regularizersFactory getLayer_weight_regularizersFactory();
+
+ /**
+ * <!-- begin-user-doc -->
+ * Defines literals for the meta objects that represent
+ * <ul>
+ * <li>each class,</li>
+ * <li>each feature of each class,</li>
+ * <li>each operation of each class,</li>
+ * <li>each enum,</li>
+ * <li>and each data type</li>
+ * </ul>
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ interface Literals {
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers.impl.l1Impl <em>l1</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers.impl.l1Impl
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers.impl.Layer_weight_regularizersPackageImpl#getl1()
+ * @generated
+ */
+ EClass L1 = eINSTANCE.getl1();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers.impl.ReguWithl1Impl <em>Regu Withl1</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers.impl.ReguWithl1Impl
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers.impl.Layer_weight_regularizersPackageImpl#getReguWithl1()
+ * @generated
+ */
+ EClass REGU_WITHL1 = eINSTANCE.getReguWithl1();
+
+ /**
+ * The meta object literal for the '<em><b>L1</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute REGU_WITHL1__L1 = eINSTANCE.getReguWithl1_L1();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers.impl.l2Impl <em>l2</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers.impl.l2Impl
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers.impl.Layer_weight_regularizersPackageImpl#getl2()
+ * @generated
+ */
+ EClass L2 = eINSTANCE.getl2();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers.impl.ReguWithl2Impl <em>Regu Withl2</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers.impl.ReguWithl2Impl
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers.impl.Layer_weight_regularizersPackageImpl#getReguWithl2()
+ * @generated
+ */
+ EClass REGU_WITHL2 = eINSTANCE.getReguWithl2();
+
+ /**
+ * The meta object literal for the '<em><b>L2</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute REGU_WITHL2__L2 = eINSTANCE.getReguWithl2_L2();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers.impl.l1_l2Impl <em>l1 l2</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers.impl.l1_l2Impl
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers.impl.Layer_weight_regularizersPackageImpl#getl1_l2()
+ * @generated
+ */
+ EClass L1_L2 = eINSTANCE.getl1_l2();
+
+ }
+
+} //Layer_weight_regularizersPackage
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_regularizers/ReguWithl1.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_regularizers/ReguWithl1.java
new file mode 100644
index 0000000..a29f8b5
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_regularizers/ReguWithl1.java
@@ -0,0 +1,59 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Regu Withl1</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers.ReguWithl1#getL1 <em>L1</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers.Layer_weight_regularizersPackage#getReguWithl1()
+ * @model abstract="true"
+ * @generated
+ */
+public interface ReguWithl1 extends EObject {
+ /**
+ * Returns the value of the '<em><b>L1</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>L1</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>L1</em>' attribute.
+ * @see #setL1(double)
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers.Layer_weight_regularizersPackage#getReguWithl1_L1()
+ * @model dataType="org.eclipse.uml2.types.Real" ordered="false"
+ * @generated
+ */
+ double getL1();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers.ReguWithl1#getL1 <em>L1</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>L1</em>' attribute.
+ * @see #getL1()
+ * @generated
+ */
+ void setL1(double value);
+
+} // ReguWithl1
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_regularizers/ReguWithl2.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_regularizers/ReguWithl2.java
new file mode 100644
index 0000000..8d9b7cd
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_regularizers/ReguWithl2.java
@@ -0,0 +1,59 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Regu Withl2</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers.ReguWithl2#getL2 <em>L2</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers.Layer_weight_regularizersPackage#getReguWithl2()
+ * @model abstract="true"
+ * @generated
+ */
+public interface ReguWithl2 extends EObject {
+ /**
+ * Returns the value of the '<em><b>L2</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>L2</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>L2</em>' attribute.
+ * @see #setL2(double)
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers.Layer_weight_regularizersPackage#getReguWithl2_L2()
+ * @model dataType="org.eclipse.uml2.types.Real" ordered="false"
+ * @generated
+ */
+ double getL2();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers.ReguWithl2#getL2 <em>L2</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>L2</em>' attribute.
+ * @see #getL2()
+ * @generated
+ */
+ void setL2(double value);
+
+} // ReguWithl2
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_regularizers/impl/Layer_weight_regularizersFactoryImpl.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_regularizers/impl/Layer_weight_regularizersFactoryImpl.java
new file mode 100644
index 0000000..524866e
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_regularizers/impl/Layer_weight_regularizersFactoryImpl.java
@@ -0,0 +1,130 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers.impl;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+
+import org.eclipse.emf.ecore.impl.EFactoryImpl;
+
+import org.eclipse.emf.ecore.plugin.EcorePlugin;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers.*;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model <b>Factory</b>.
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class Layer_weight_regularizersFactoryImpl extends EFactoryImpl implements Layer_weight_regularizersFactory {
+ /**
+ * Creates the default factory implementation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static Layer_weight_regularizersFactory init() {
+ try {
+ Layer_weight_regularizersFactory theLayer_weight_regularizersFactory = (Layer_weight_regularizersFactory)EPackage.Registry.INSTANCE.getEFactory(Layer_weight_regularizersPackage.eNS_URI);
+ if (theLayer_weight_regularizersFactory != null) {
+ return theLayer_weight_regularizersFactory;
+ }
+ }
+ catch (Exception exception) {
+ EcorePlugin.INSTANCE.log(exception);
+ }
+ return new Layer_weight_regularizersFactoryImpl();
+ }
+
+ /**
+ * Creates an instance of the factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Layer_weight_regularizersFactoryImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EObject create(EClass eClass) {
+ switch (eClass.getClassifierID()) {
+ case Layer_weight_regularizersPackage.L1: return createl1();
+ case Layer_weight_regularizersPackage.L2: return createl2();
+ case Layer_weight_regularizersPackage.L1_L2: return createl1_l2();
+ default:
+ throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier"); //$NON-NLS-1$ //$NON-NLS-2$
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public l1 createl1() {
+ l1Impl l1 = new l1Impl();
+ return l1;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public l2 createl2() {
+ l2Impl l2 = new l2Impl();
+ return l2;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public l1_l2 createl1_l2() {
+ l1_l2Impl l1_l2 = new l1_l2Impl();
+ return l1_l2;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Layer_weight_regularizersPackage getLayer_weight_regularizersPackage() {
+ return (Layer_weight_regularizersPackage)getEPackage();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @deprecated
+ * @generated
+ */
+ @Deprecated
+ public static Layer_weight_regularizersPackage getPackage() {
+ return Layer_weight_regularizersPackage.eINSTANCE;
+ }
+
+} //Layer_weight_regularizersFactoryImpl
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_regularizers/impl/Layer_weight_regularizersPackageImpl.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_regularizers/impl/Layer_weight_regularizersPackageImpl.java
new file mode 100644
index 0000000..854d9fa
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_regularizers/impl/Layer_weight_regularizersPackageImpl.java
@@ -0,0 +1,473 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers.impl;
+
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EcorePackage;
+
+import org.eclipse.emf.ecore.impl.EPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.AIMLPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution_layersPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.Convolution_layersPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers.DataParallel_layersPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers.impl.DataParallel_layersPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Distance_functions.Distance_functionsPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Distance_functions.impl.Distance_functionsPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.Dropout_layersPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.impl.Dropout_layersPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.Layer_weight_constraintsPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.impl.Layer_weight_constraintsPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.Layer_weight_initializersPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.impl.Layer_weight_initializersPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers.Layer_weight_regularizersFactory;
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers.Layer_weight_regularizersPackage;
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers.ReguWithl1;
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers.ReguWithl2;
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers.l1;
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers.l1_l2;
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers.l2;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.Linear_layersPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.impl.Linear_layersPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Loss_functions.Loss_functionsPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Loss_functions.impl.Loss_functionsPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Module.ModulePackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Module.impl.ModulePackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.NonLinearActivations.NonLinearActivationsPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.NonLinearActivations.impl.NonLinearActivationsPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Normalization_layers.Normalization_layersPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Normalization_layers.impl.Normalization_layersPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Padding_layers.Padding_layersPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Padding_layers.impl.Padding_layersPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Pooling_layers.Pooling_layersPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Pooling_layers.impl.Pooling_layersPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Recurrent_layers.Recurrent_layersPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Recurrent_layers.impl.Recurrent_layersPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.SoftMinMaxActivations.SoftMinMaxActivationsPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.SoftMinMaxActivations.impl.SoftMinMaxActivationsPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Sparse_layers.Sparse_layersPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Sparse_layers.impl.Sparse_layersPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Tensor.TensorPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Tensor.impl.TensorPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Transformer_layers.Transformer_layersPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Transformer_layers.impl.Transformer_layersPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Vision_layers.Vision_layersPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Vision_layers.impl.Vision_layersPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.datatypes.DatatypesPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.datatypes.impl.DatatypesPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.impl.AIMLPackageImpl;
+
+import org.eclipse.uml2.types.TypesPackage;
+
+import org.eclipse.uml2.uml.UMLPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model <b>Package</b>.
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class Layer_weight_regularizersPackageImpl extends EPackageImpl implements Layer_weight_regularizersPackage {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass l1EClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass reguWithl1EClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass l2EClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass reguWithl2EClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass l1_l2EClass = null;
+
+ /**
+ * Creates an instance of the model <b>Package</b>, registered with
+ * {@link org.eclipse.emf.ecore.EPackage.Registry EPackage.Registry} by the package
+ * package URI value.
+ * <p>Note: the correct way to create the package is via the static
+ * factory method {@link #init init()}, which also performs
+ * initialization of the package, or returns the registered package,
+ * if one already exists.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.emf.ecore.EPackage.Registry
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers.Layer_weight_regularizersPackage#eNS_URI
+ * @see #init()
+ * @generated
+ */
+ private Layer_weight_regularizersPackageImpl() {
+ super(eNS_URI, Layer_weight_regularizersFactory.eINSTANCE);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private static boolean isInited = false;
+
+ /**
+ * Creates, registers, and initializes the <b>Package</b> for this model, and for any others upon which it depends.
+ *
+ * <p>This method is used to initialize {@link Layer_weight_regularizersPackage#eINSTANCE} when that field is accessed.
+ * Clients should not invoke it directly. Instead, they should simply access that field to obtain the package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #eNS_URI
+ * @see #createPackageContents()
+ * @see #initializePackageContents()
+ * @generated
+ */
+ public static Layer_weight_regularizersPackage init() {
+ if (isInited) return (Layer_weight_regularizersPackage)EPackage.Registry.INSTANCE.getEPackage(Layer_weight_regularizersPackage.eNS_URI);
+
+ // Obtain or create and register package
+ Object registeredLayer_weight_regularizersPackage = EPackage.Registry.INSTANCE.get(eNS_URI);
+ Layer_weight_regularizersPackageImpl theLayer_weight_regularizersPackage = registeredLayer_weight_regularizersPackage instanceof Layer_weight_regularizersPackageImpl ? (Layer_weight_regularizersPackageImpl)registeredLayer_weight_regularizersPackage : new Layer_weight_regularizersPackageImpl();
+
+ isInited = true;
+
+ // Initialize simple dependencies
+ EcorePackage.eINSTANCE.eClass();
+ TypesPackage.eINSTANCE.eClass();
+ UMLPackage.eINSTANCE.eClass();
+
+ // Obtain or create and register interdependencies
+ Object registeredPackage = EPackage.Registry.INSTANCE.getEPackage(AIMLPackage.eNS_URI);
+ AIMLPackageImpl theAIMLPackage = (AIMLPackageImpl)(registeredPackage instanceof AIMLPackageImpl ? registeredPackage : AIMLPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(ModulePackage.eNS_URI);
+ ModulePackageImpl theModulePackage = (ModulePackageImpl)(registeredPackage instanceof ModulePackageImpl ? registeredPackage : ModulePackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(TensorPackage.eNS_URI);
+ TensorPackageImpl theTensorPackage = (TensorPackageImpl)(registeredPackage instanceof TensorPackageImpl ? registeredPackage : TensorPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(DatatypesPackage.eNS_URI);
+ DatatypesPackageImpl theDatatypesPackage = (DatatypesPackageImpl)(registeredPackage instanceof DatatypesPackageImpl ? registeredPackage : DatatypesPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Pooling_layersPackage.eNS_URI);
+ Pooling_layersPackageImpl thePooling_layersPackage = (Pooling_layersPackageImpl)(registeredPackage instanceof Pooling_layersPackageImpl ? registeredPackage : Pooling_layersPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Convolution_layersPackage.eNS_URI);
+ Convolution_layersPackageImpl theConvolution_layersPackage = (Convolution_layersPackageImpl)(registeredPackage instanceof Convolution_layersPackageImpl ? registeredPackage : Convolution_layersPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Layer_weight_constraintsPackage.eNS_URI);
+ Layer_weight_constraintsPackageImpl theLayer_weight_constraintsPackage = (Layer_weight_constraintsPackageImpl)(registeredPackage instanceof Layer_weight_constraintsPackageImpl ? registeredPackage : Layer_weight_constraintsPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Padding_layersPackage.eNS_URI);
+ Padding_layersPackageImpl thePadding_layersPackage = (Padding_layersPackageImpl)(registeredPackage instanceof Padding_layersPackageImpl ? registeredPackage : Padding_layersPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(NonLinearActivationsPackage.eNS_URI);
+ NonLinearActivationsPackageImpl theNonLinearActivationsPackage = (NonLinearActivationsPackageImpl)(registeredPackage instanceof NonLinearActivationsPackageImpl ? registeredPackage : NonLinearActivationsPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(SoftMinMaxActivationsPackage.eNS_URI);
+ SoftMinMaxActivationsPackageImpl theSoftMinMaxActivationsPackage = (SoftMinMaxActivationsPackageImpl)(registeredPackage instanceof SoftMinMaxActivationsPackageImpl ? registeredPackage : SoftMinMaxActivationsPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Normalization_layersPackage.eNS_URI);
+ Normalization_layersPackageImpl theNormalization_layersPackage = (Normalization_layersPackageImpl)(registeredPackage instanceof Normalization_layersPackageImpl ? registeredPackage : Normalization_layersPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Recurrent_layersPackage.eNS_URI);
+ Recurrent_layersPackageImpl theRecurrent_layersPackage = (Recurrent_layersPackageImpl)(registeredPackage instanceof Recurrent_layersPackageImpl ? registeredPackage : Recurrent_layersPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Transformer_layersPackage.eNS_URI);
+ Transformer_layersPackageImpl theTransformer_layersPackage = (Transformer_layersPackageImpl)(registeredPackage instanceof Transformer_layersPackageImpl ? registeredPackage : Transformer_layersPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Linear_layersPackage.eNS_URI);
+ Linear_layersPackageImpl theLinear_layersPackage = (Linear_layersPackageImpl)(registeredPackage instanceof Linear_layersPackageImpl ? registeredPackage : Linear_layersPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Dropout_layersPackage.eNS_URI);
+ Dropout_layersPackageImpl theDropout_layersPackage = (Dropout_layersPackageImpl)(registeredPackage instanceof Dropout_layersPackageImpl ? registeredPackage : Dropout_layersPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Sparse_layersPackage.eNS_URI);
+ Sparse_layersPackageImpl theSparse_layersPackage = (Sparse_layersPackageImpl)(registeredPackage instanceof Sparse_layersPackageImpl ? registeredPackage : Sparse_layersPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Distance_functionsPackage.eNS_URI);
+ Distance_functionsPackageImpl theDistance_functionsPackage = (Distance_functionsPackageImpl)(registeredPackage instanceof Distance_functionsPackageImpl ? registeredPackage : Distance_functionsPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Loss_functionsPackage.eNS_URI);
+ Loss_functionsPackageImpl theLoss_functionsPackage = (Loss_functionsPackageImpl)(registeredPackage instanceof Loss_functionsPackageImpl ? registeredPackage : Loss_functionsPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Vision_layersPackage.eNS_URI);
+ Vision_layersPackageImpl theVision_layersPackage = (Vision_layersPackageImpl)(registeredPackage instanceof Vision_layersPackageImpl ? registeredPackage : Vision_layersPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(DataParallel_layersPackage.eNS_URI);
+ DataParallel_layersPackageImpl theDataParallel_layersPackage = (DataParallel_layersPackageImpl)(registeredPackage instanceof DataParallel_layersPackageImpl ? registeredPackage : DataParallel_layersPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Layer_weight_initializersPackage.eNS_URI);
+ Layer_weight_initializersPackageImpl theLayer_weight_initializersPackage = (Layer_weight_initializersPackageImpl)(registeredPackage instanceof Layer_weight_initializersPackageImpl ? registeredPackage : Layer_weight_initializersPackage.eINSTANCE);
+
+ // Create package meta-data objects
+ theLayer_weight_regularizersPackage.createPackageContents();
+ theAIMLPackage.createPackageContents();
+ theModulePackage.createPackageContents();
+ theTensorPackage.createPackageContents();
+ theDatatypesPackage.createPackageContents();
+ thePooling_layersPackage.createPackageContents();
+ theConvolution_layersPackage.createPackageContents();
+ theLayer_weight_constraintsPackage.createPackageContents();
+ thePadding_layersPackage.createPackageContents();
+ theNonLinearActivationsPackage.createPackageContents();
+ theSoftMinMaxActivationsPackage.createPackageContents();
+ theNormalization_layersPackage.createPackageContents();
+ theRecurrent_layersPackage.createPackageContents();
+ theTransformer_layersPackage.createPackageContents();
+ theLinear_layersPackage.createPackageContents();
+ theDropout_layersPackage.createPackageContents();
+ theSparse_layersPackage.createPackageContents();
+ theDistance_functionsPackage.createPackageContents();
+ theLoss_functionsPackage.createPackageContents();
+ theVision_layersPackage.createPackageContents();
+ theDataParallel_layersPackage.createPackageContents();
+ theLayer_weight_initializersPackage.createPackageContents();
+
+ // Initialize created meta-data
+ theLayer_weight_regularizersPackage.initializePackageContents();
+ theAIMLPackage.initializePackageContents();
+ theModulePackage.initializePackageContents();
+ theTensorPackage.initializePackageContents();
+ theDatatypesPackage.initializePackageContents();
+ thePooling_layersPackage.initializePackageContents();
+ theConvolution_layersPackage.initializePackageContents();
+ theLayer_weight_constraintsPackage.initializePackageContents();
+ thePadding_layersPackage.initializePackageContents();
+ theNonLinearActivationsPackage.initializePackageContents();
+ theSoftMinMaxActivationsPackage.initializePackageContents();
+ theNormalization_layersPackage.initializePackageContents();
+ theRecurrent_layersPackage.initializePackageContents();
+ theTransformer_layersPackage.initializePackageContents();
+ theLinear_layersPackage.initializePackageContents();
+ theDropout_layersPackage.initializePackageContents();
+ theSparse_layersPackage.initializePackageContents();
+ theDistance_functionsPackage.initializePackageContents();
+ theLoss_functionsPackage.initializePackageContents();
+ theVision_layersPackage.initializePackageContents();
+ theDataParallel_layersPackage.initializePackageContents();
+ theLayer_weight_initializersPackage.initializePackageContents();
+
+ // Mark meta-data to indicate it can't be changed
+ theLayer_weight_regularizersPackage.freeze();
+
+ // Update the registry and return the package
+ EPackage.Registry.INSTANCE.put(Layer_weight_regularizersPackage.eNS_URI, theLayer_weight_regularizersPackage);
+ return theLayer_weight_regularizersPackage;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EClass getl1() {
+ return l1EClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EClass getReguWithl1() {
+ return reguWithl1EClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EAttribute getReguWithl1_L1() {
+ return (EAttribute)reguWithl1EClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EClass getl2() {
+ return l2EClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EClass getReguWithl2() {
+ return reguWithl2EClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EAttribute getReguWithl2_L2() {
+ return (EAttribute)reguWithl2EClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EClass getl1_l2() {
+ return l1_l2EClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Layer_weight_regularizersFactory getLayer_weight_regularizersFactory() {
+ return (Layer_weight_regularizersFactory)getEFactoryInstance();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private boolean isCreated = false;
+
+ /**
+ * Creates the meta-model objects for the package. This method is
+ * guarded to have no affect on any invocation but its first.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void createPackageContents() {
+ if (isCreated) return;
+ isCreated = true;
+
+ // Create classes and their features
+ l1EClass = createEClass(L1);
+
+ reguWithl1EClass = createEClass(REGU_WITHL1);
+ createEAttribute(reguWithl1EClass, REGU_WITHL1__L1);
+
+ l2EClass = createEClass(L2);
+
+ reguWithl2EClass = createEClass(REGU_WITHL2);
+ createEAttribute(reguWithl2EClass, REGU_WITHL2__L2);
+
+ l1_l2EClass = createEClass(L1_L2);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private boolean isInitialized = false;
+
+ /**
+ * Complete the initialization of the package and its meta-model. This
+ * method is guarded to have no affect on any invocation but its first.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void initializePackageContents() {
+ if (isInitialized) return;
+ isInitialized = true;
+
+ // Initialize package
+ setName(eNAME);
+ setNsPrefix(eNS_PREFIX);
+ setNsURI(eNS_URI);
+
+ // Obtain other dependent packages
+ TypesPackage theTypesPackage = (TypesPackage)EPackage.Registry.INSTANCE.getEPackage(TypesPackage.eNS_URI);
+
+ // Create type parameters
+
+ // Set bounds for type parameters
+
+ // Add supertypes to classes
+ l1EClass.getESuperTypes().add(this.getReguWithl1());
+ l2EClass.getESuperTypes().add(this.getReguWithl2());
+ l1_l2EClass.getESuperTypes().add(this.getReguWithl1());
+ l1_l2EClass.getESuperTypes().add(this.getReguWithl2());
+
+ // Initialize classes, features, and operations; add parameters
+ initEClass(l1EClass, l1.class, "l1", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+
+ initEClass(reguWithl1EClass, ReguWithl1.class, "ReguWithl1", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ initEAttribute(getReguWithl1_L1(), theTypesPackage.getReal(), "l1", null, 0, 1, ReguWithl1.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+
+ initEClass(l2EClass, l2.class, "l2", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+
+ initEClass(reguWithl2EClass, ReguWithl2.class, "ReguWithl2", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ initEAttribute(getReguWithl2_L2(), theTypesPackage.getReal(), "l2", null, 0, 1, ReguWithl2.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+
+ initEClass(l1_l2EClass, l1_l2.class, "l1_l2", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ }
+
+} //Layer_weight_regularizersPackageImpl
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_regularizers/impl/ReguWithl1Impl.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_regularizers/impl/ReguWithl1Impl.java
new file mode 100644
index 0000000..a84802d
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_regularizers/impl/ReguWithl1Impl.java
@@ -0,0 +1,174 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers.Layer_weight_regularizersPackage;
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers.ReguWithl1;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Regu Withl1</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers.impl.ReguWithl1Impl#getL1 <em>L1</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public abstract class ReguWithl1Impl extends MinimalEObjectImpl.Container implements ReguWithl1 {
+ /**
+ * The default value of the '{@link #getL1() <em>L1</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getL1()
+ * @generated
+ * @ordered
+ */
+ protected static final double L1_EDEFAULT = 0.0;
+
+ /**
+ * The cached value of the '{@link #getL1() <em>L1</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getL1()
+ * @generated
+ * @ordered
+ */
+ protected double l1 = L1_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected ReguWithl1Impl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return Layer_weight_regularizersPackage.Literals.REGU_WITHL1;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public double getL1() {
+ return l1;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void setL1(double newL1) {
+ double oldL1 = l1;
+ l1 = newL1;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, Layer_weight_regularizersPackage.REGU_WITHL1__L1, oldL1, l1));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case Layer_weight_regularizersPackage.REGU_WITHL1__L1:
+ return getL1();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case Layer_weight_regularizersPackage.REGU_WITHL1__L1:
+ setL1((Double)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case Layer_weight_regularizersPackage.REGU_WITHL1__L1:
+ setL1(L1_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case Layer_weight_regularizersPackage.REGU_WITHL1__L1:
+ return l1 != L1_EDEFAULT;
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuilder result = new StringBuilder(super.toString());
+ result.append(" (l1: "); //$NON-NLS-1$
+ result.append(l1);
+ result.append(')');
+ return result.toString();
+ }
+
+} //ReguWithl1Impl
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_regularizers/impl/ReguWithl2Impl.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_regularizers/impl/ReguWithl2Impl.java
new file mode 100644
index 0000000..076efe7
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_regularizers/impl/ReguWithl2Impl.java
@@ -0,0 +1,174 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers.Layer_weight_regularizersPackage;
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers.ReguWithl2;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Regu Withl2</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers.impl.ReguWithl2Impl#getL2 <em>L2</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public abstract class ReguWithl2Impl extends MinimalEObjectImpl.Container implements ReguWithl2 {
+ /**
+ * The default value of the '{@link #getL2() <em>L2</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getL2()
+ * @generated
+ * @ordered
+ */
+ protected static final double L2_EDEFAULT = 0.0;
+
+ /**
+ * The cached value of the '{@link #getL2() <em>L2</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getL2()
+ * @generated
+ * @ordered
+ */
+ protected double l2 = L2_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected ReguWithl2Impl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return Layer_weight_regularizersPackage.Literals.REGU_WITHL2;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public double getL2() {
+ return l2;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void setL2(double newL2) {
+ double oldL2 = l2;
+ l2 = newL2;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, Layer_weight_regularizersPackage.REGU_WITHL2__L2, oldL2, l2));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case Layer_weight_regularizersPackage.REGU_WITHL2__L2:
+ return getL2();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case Layer_weight_regularizersPackage.REGU_WITHL2__L2:
+ setL2((Double)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case Layer_weight_regularizersPackage.REGU_WITHL2__L2:
+ setL2(L2_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case Layer_weight_regularizersPackage.REGU_WITHL2__L2:
+ return l2 != L2_EDEFAULT;
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuilder result = new StringBuilder(super.toString());
+ result.append(" (l2: "); //$NON-NLS-1$
+ result.append(l2);
+ result.append(')');
+ return result.toString();
+ }
+
+} //ReguWithl2Impl
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_regularizers/impl/l1Impl.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_regularizers/impl/l1Impl.java
new file mode 100644
index 0000000..30c8b00
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_regularizers/impl/l1Impl.java
@@ -0,0 +1,46 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers.Layer_weight_regularizersPackage;
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers.l1;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>l1</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class l1Impl extends ReguWithl1Impl implements l1 {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected l1Impl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return Layer_weight_regularizersPackage.Literals.L1;
+ }
+
+} //l1Impl
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_regularizers/impl/l1_l2Impl.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_regularizers/impl/l1_l2Impl.java
new file mode 100644
index 0000000..3b76c2c
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_regularizers/impl/l1_l2Impl.java
@@ -0,0 +1,206 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers.Layer_weight_regularizersPackage;
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers.ReguWithl2;
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers.l1_l2;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>l1 l2</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers.impl.l1_l2Impl#getL2 <em>L2</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class l1_l2Impl extends ReguWithl1Impl implements l1_l2 {
+ /**
+ * The default value of the '{@link #getL2() <em>L2</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getL2()
+ * @generated
+ * @ordered
+ */
+ protected static final double L2_EDEFAULT = 0.0;
+
+ /**
+ * The cached value of the '{@link #getL2() <em>L2</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getL2()
+ * @generated
+ * @ordered
+ */
+ protected double l2 = L2_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected l1_l2Impl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return Layer_weight_regularizersPackage.Literals.L1_L2;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public double getL2() {
+ return l2;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void setL2(double newL2) {
+ double oldL2 = l2;
+ l2 = newL2;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, Layer_weight_regularizersPackage.L1_L2__L2, oldL2, l2));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case Layer_weight_regularizersPackage.L1_L2__L2:
+ return getL2();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case Layer_weight_regularizersPackage.L1_L2__L2:
+ setL2((Double)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case Layer_weight_regularizersPackage.L1_L2__L2:
+ setL2(L2_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case Layer_weight_regularizersPackage.L1_L2__L2:
+ return l2 != L2_EDEFAULT;
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public int eBaseStructuralFeatureID(int derivedFeatureID, Class<?> baseClass) {
+ if (baseClass == ReguWithl2.class) {
+ switch (derivedFeatureID) {
+ case Layer_weight_regularizersPackage.L1_L2__L2: return Layer_weight_regularizersPackage.REGU_WITHL2__L2;
+ default: return -1;
+ }
+ }
+ return super.eBaseStructuralFeatureID(derivedFeatureID, baseClass);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public int eDerivedStructuralFeatureID(int baseFeatureID, Class<?> baseClass) {
+ if (baseClass == ReguWithl2.class) {
+ switch (baseFeatureID) {
+ case Layer_weight_regularizersPackage.REGU_WITHL2__L2: return Layer_weight_regularizersPackage.L1_L2__L2;
+ default: return -1;
+ }
+ }
+ return super.eDerivedStructuralFeatureID(baseFeatureID, baseClass);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuilder result = new StringBuilder(super.toString());
+ result.append(" (l2: "); //$NON-NLS-1$
+ result.append(l2);
+ result.append(')');
+ return result.toString();
+ }
+
+} //l1_l2Impl
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_regularizers/impl/l2Impl.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_regularizers/impl/l2Impl.java
new file mode 100644
index 0000000..214b6c3
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_regularizers/impl/l2Impl.java
@@ -0,0 +1,46 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers.Layer_weight_regularizersPackage;
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers.l2;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>l2</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class l2Impl extends ReguWithl2Impl implements l2 {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected l2Impl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return Layer_weight_regularizersPackage.Literals.L2;
+ }
+
+} //l2Impl
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_regularizers/l1.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_regularizers/l1.java
new file mode 100644
index 0000000..94bb60f
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_regularizers/l1.java
@@ -0,0 +1,26 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>l1</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers.Layer_weight_regularizersPackage#getl1()
+ * @model
+ * @generated
+ */
+public interface l1 extends ReguWithl1 {
+} // l1
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_regularizers/l1_l2.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_regularizers/l1_l2.java
new file mode 100644
index 0000000..d291416
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_regularizers/l1_l2.java
@@ -0,0 +1,26 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>l1 l2</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers.Layer_weight_regularizersPackage#getl1_l2()
+ * @model
+ * @generated
+ */
+public interface l1_l2 extends ReguWithl1, ReguWithl2 {
+} // l1_l2
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_regularizers/l2.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_regularizers/l2.java
new file mode 100644
index 0000000..57cfcfb
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_regularizers/l2.java
@@ -0,0 +1,26 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>l2</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers.Layer_weight_regularizersPackage#getl2()
+ * @model
+ * @generated
+ */
+public interface l2 extends ReguWithl2 {
+} // l2
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_regularizers/util/Layer_weight_regularizersAdapterFactory.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_regularizers/util/Layer_weight_regularizersAdapterFactory.java
new file mode 100644
index 0000000..3986cff
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_regularizers/util/Layer_weight_regularizersAdapterFactory.java
@@ -0,0 +1,201 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers.util;
+
+import org.eclipse.emf.common.notify.Adapter;
+import org.eclipse.emf.common.notify.Notifier;
+
+import org.eclipse.emf.common.notify.impl.AdapterFactoryImpl;
+
+import org.eclipse.emf.ecore.EObject;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers.*;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Adapter Factory</b> for the model.
+ * It provides an adapter <code>createXXX</code> method for each class of the model.
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers.Layer_weight_regularizersPackage
+ * @generated
+ */
+public class Layer_weight_regularizersAdapterFactory extends AdapterFactoryImpl {
+ /**
+ * The cached model package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected static Layer_weight_regularizersPackage modelPackage;
+
+ /**
+ * Creates an instance of the adapter factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Layer_weight_regularizersAdapterFactory() {
+ if (modelPackage == null) {
+ modelPackage = Layer_weight_regularizersPackage.eINSTANCE;
+ }
+ }
+
+ /**
+ * Returns whether this factory is applicable for the type of the object.
+ * <!-- begin-user-doc -->
+ * This implementation returns <code>true</code> if the object is either the model's package or is an instance object of the model.
+ * <!-- end-user-doc -->
+ * @return whether this factory is applicable for the type of the object.
+ * @generated
+ */
+ @Override
+ public boolean isFactoryForType(Object object) {
+ if (object == modelPackage) {
+ return true;
+ }
+ if (object instanceof EObject) {
+ return ((EObject)object).eClass().getEPackage() == modelPackage;
+ }
+ return false;
+ }
+
+ /**
+ * The switch that delegates to the <code>createXXX</code> methods.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected Layer_weight_regularizersSwitch<Adapter> modelSwitch =
+ new Layer_weight_regularizersSwitch<Adapter>() {
+ @Override
+ public Adapter casel1(l1 object) {
+ return createl1Adapter();
+ }
+ @Override
+ public Adapter caseReguWithl1(ReguWithl1 object) {
+ return createReguWithl1Adapter();
+ }
+ @Override
+ public Adapter casel2(l2 object) {
+ return createl2Adapter();
+ }
+ @Override
+ public Adapter caseReguWithl2(ReguWithl2 object) {
+ return createReguWithl2Adapter();
+ }
+ @Override
+ public Adapter casel1_l2(l1_l2 object) {
+ return createl1_l2Adapter();
+ }
+ @Override
+ public Adapter defaultCase(EObject object) {
+ return createEObjectAdapter();
+ }
+ };
+
+ /**
+ * Creates an adapter for the <code>target</code>.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param target the object to adapt.
+ * @return the adapter for the <code>target</code>.
+ * @generated
+ */
+ @Override
+ public Adapter createAdapter(Notifier target) {
+ return modelSwitch.doSwitch((EObject)target);
+ }
+
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers.l1 <em>l1</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers.l1
+ * @generated
+ */
+ public Adapter createl1Adapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers.ReguWithl1 <em>Regu Withl1</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers.ReguWithl1
+ * @generated
+ */
+ public Adapter createReguWithl1Adapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers.l2 <em>l2</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers.l2
+ * @generated
+ */
+ public Adapter createl2Adapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers.ReguWithl2 <em>Regu Withl2</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers.ReguWithl2
+ * @generated
+ */
+ public Adapter createReguWithl2Adapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers.l1_l2 <em>l1 l2</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers.l1_l2
+ * @generated
+ */
+ public Adapter createl1_l2Adapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for the default case.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @generated
+ */
+ public Adapter createEObjectAdapter() {
+ return null;
+ }
+
+} //Layer_weight_regularizersAdapterFactory
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_regularizers/util/Layer_weight_regularizersSwitch.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_regularizers/util/Layer_weight_regularizersSwitch.java
new file mode 100644
index 0000000..9e2c36b
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Layer_weight_regularizers/util/Layer_weight_regularizersSwitch.java
@@ -0,0 +1,207 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers.util;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+
+import org.eclipse.emf.ecore.util.Switch;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers.*;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Switch</b> for the model's inheritance hierarchy.
+ * It supports the call {@link #doSwitch(EObject) doSwitch(object)}
+ * to invoke the <code>caseXXX</code> method for each class of the model,
+ * starting with the actual class of the object
+ * and proceeding up the inheritance hierarchy
+ * until a non-null result is returned,
+ * which is the result of the switch.
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers.Layer_weight_regularizersPackage
+ * @generated
+ */
+public class Layer_weight_regularizersSwitch<T> extends Switch<T> {
+ /**
+ * The cached model package
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected static Layer_weight_regularizersPackage modelPackage;
+
+ /**
+ * Creates an instance of the switch.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Layer_weight_regularizersSwitch() {
+ if (modelPackage == null) {
+ modelPackage = Layer_weight_regularizersPackage.eINSTANCE;
+ }
+ }
+
+ /**
+ * Checks whether this is a switch for the given package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param ePackage the package in question.
+ * @return whether this is a switch for the given package.
+ * @generated
+ */
+ @Override
+ protected boolean isSwitchFor(EPackage ePackage) {
+ return ePackage == modelPackage;
+ }
+
+ /**
+ * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the first non-null result returned by a <code>caseXXX</code> call.
+ * @generated
+ */
+ @Override
+ protected T doSwitch(int classifierID, EObject theEObject) {
+ switch (classifierID) {
+ case Layer_weight_regularizersPackage.L1: {
+ l1 l1 = (l1)theEObject;
+ T result = casel1(l1);
+ if (result == null) result = caseReguWithl1(l1);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case Layer_weight_regularizersPackage.REGU_WITHL1: {
+ ReguWithl1 reguWithl1 = (ReguWithl1)theEObject;
+ T result = caseReguWithl1(reguWithl1);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case Layer_weight_regularizersPackage.L2: {
+ l2 l2 = (l2)theEObject;
+ T result = casel2(l2);
+ if (result == null) result = caseReguWithl2(l2);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case Layer_weight_regularizersPackage.REGU_WITHL2: {
+ ReguWithl2 reguWithl2 = (ReguWithl2)theEObject;
+ T result = caseReguWithl2(reguWithl2);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case Layer_weight_regularizersPackage.L1_L2: {
+ l1_l2 l1_l2 = (l1_l2)theEObject;
+ T result = casel1_l2(l1_l2);
+ if (result == null) result = caseReguWithl1(l1_l2);
+ if (result == null) result = caseReguWithl2(l1_l2);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ default: return defaultCase(theEObject);
+ }
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>l1</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>l1</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T casel1(l1 object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Regu Withl1</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Regu Withl1</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseReguWithl1(ReguWithl1 object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>l2</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>l2</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T casel2(l2 object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Regu Withl2</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Regu Withl2</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseReguWithl2(ReguWithl2 object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>l1 l2</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>l1 l2</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T casel1_l2(l1_l2 object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>EObject</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch, but this is the last case anyway.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>EObject</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject)
+ * @generated
+ */
+ @Override
+ public T defaultCase(EObject object) {
+ return null;
+ }
+
+} //Layer_weight_regularizersSwitch
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Linear_layers/Bilinear.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Linear_layers/Bilinear.java
new file mode 100644
index 0000000..849f723
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Linear_layers/Bilinear.java
@@ -0,0 +1,85 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Linear_layers;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Bilinear</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.Bilinear#getIn1_features <em>In1 features</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.Bilinear#getIn2_features <em>In2 features</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.Linear_layersPackage#getBilinear()
+ * @model
+ * @generated
+ */
+public interface Bilinear extends Linear_layers_1 {
+ /**
+ * Returns the value of the '<em><b>In1 features</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>In1 features</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>In1 features</em>' attribute.
+ * @see #setIn1_features(int)
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.Linear_layersPackage#getBilinear_In1_features()
+ * @model dataType="org.eclipse.uml2.types.Integer" required="true" ordered="false"
+ * @generated
+ */
+ int getIn1_features();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.Bilinear#getIn1_features <em>In1 features</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>In1 features</em>' attribute.
+ * @see #getIn1_features()
+ * @generated
+ */
+ void setIn1_features(int value);
+
+ /**
+ * Returns the value of the '<em><b>In2 features</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>In2 features</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>In2 features</em>' attribute.
+ * @see #setIn2_features(int)
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.Linear_layersPackage#getBilinear_In2_features()
+ * @model dataType="org.eclipse.uml2.types.Integer" required="true" ordered="false"
+ * @generated
+ */
+ int getIn2_features();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.Bilinear#getIn2_features <em>In2 features</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>In2 features</em>' attribute.
+ * @see #getIn2_features()
+ * @generated
+ */
+ void setIn2_features(int value);
+
+} // Bilinear
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Linear_layers/Identity.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Linear_layers/Identity.java
new file mode 100644
index 0000000..0b01802
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Linear_layers/Identity.java
@@ -0,0 +1,26 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Linear_layers;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Identity</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.Linear_layersPackage#getIdentity()
+ * @model
+ * @generated
+ */
+public interface Identity extends Linear_layers {
+} // Identity
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Linear_layers/Linear.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Linear_layers/Linear.java
new file mode 100644
index 0000000..1b74378
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Linear_layers/Linear.java
@@ -0,0 +1,139 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Linear_layers;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Linear</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.Linear#getIn_features <em>In features</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.Linear#getActivation <em>Activation</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.Linear#getKernel_initializer <em>Kernel initializer</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.Linear#getBias_initializer <em>Bias initializer</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.Linear_layersPackage#getLinear()
+ * @model
+ * @generated
+ */
+public interface Linear extends Linear_layers_1 {
+ /**
+ * Returns the value of the '<em><b>In features</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>In features</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>In features</em>' attribute.
+ * @see #setIn_features(int)
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.Linear_layersPackage#getLinear_In_features()
+ * @model dataType="org.eclipse.uml2.types.Integer" ordered="false"
+ * @generated
+ */
+ int getIn_features();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.Linear#getIn_features <em>In features</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>In features</em>' attribute.
+ * @see #getIn_features()
+ * @generated
+ */
+ void setIn_features(int value);
+
+ /**
+ * Returns the value of the '<em><b>Activation</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Activation</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Activation</em>' attribute.
+ * @see #setActivation(String)
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.Linear_layersPackage#getLinear_Activation()
+ * @model dataType="org.eclipse.uml2.types.String" ordered="false"
+ * @generated
+ */
+ String getActivation();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.Linear#getActivation <em>Activation</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Activation</em>' attribute.
+ * @see #getActivation()
+ * @generated
+ */
+ void setActivation(String value);
+
+ /**
+ * Returns the value of the '<em><b>Kernel initializer</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Kernel initializer</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Kernel initializer</em>' attribute.
+ * @see #setKernel_initializer(String)
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.Linear_layersPackage#getLinear_Kernel_initializer()
+ * @model dataType="org.eclipse.uml2.types.String" ordered="false"
+ * @generated
+ */
+ String getKernel_initializer();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.Linear#getKernel_initializer <em>Kernel initializer</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Kernel initializer</em>' attribute.
+ * @see #getKernel_initializer()
+ * @generated
+ */
+ void setKernel_initializer(String value);
+
+ /**
+ * Returns the value of the '<em><b>Bias initializer</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Bias initializer</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Bias initializer</em>' attribute.
+ * @see #setBias_initializer(String)
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.Linear_layersPackage#getLinear_Bias_initializer()
+ * @model dataType="org.eclipse.uml2.types.String" ordered="false"
+ * @generated
+ */
+ String getBias_initializer();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.Linear#getBias_initializer <em>Bias initializer</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Bias initializer</em>' attribute.
+ * @see #getBias_initializer()
+ * @generated
+ */
+ void setBias_initializer(String value);
+
+} // Linear
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Linear_layers/Linear_layers.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Linear_layers/Linear_layers.java
new file mode 100644
index 0000000..f45c99d
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Linear_layers/Linear_layers.java
@@ -0,0 +1,27 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Linear_layers;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Module.Model;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Linear layers</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.Linear_layersPackage#getLinear_layers()
+ * @model abstract="true"
+ * @generated
+ */
+public interface Linear_layers extends Model {
+} // Linear_layers
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Linear_layers/Linear_layersFactory.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Linear_layers/Linear_layersFactory.java
new file mode 100644
index 0000000..2c63d18
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Linear_layers/Linear_layersFactory.java
@@ -0,0 +1,69 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Linear_layers;
+
+import org.eclipse.emf.ecore.EFactory;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Factory</b> for the model.
+ * It provides a create method for each non-abstract class of the model.
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.Linear_layersPackage
+ * @generated
+ */
+public interface Linear_layersFactory extends EFactory {
+ /**
+ * The singleton instance of the factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ Linear_layersFactory eINSTANCE = org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.impl.Linear_layersFactoryImpl.init();
+
+ /**
+ * Returns a new object of class '<em>Identity</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Identity</em>'.
+ * @generated
+ */
+ Identity createIdentity();
+
+ /**
+ * Returns a new object of class '<em>Linear</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Linear</em>'.
+ * @generated
+ */
+ Linear createLinear();
+
+ /**
+ * Returns a new object of class '<em>Bilinear</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Bilinear</em>'.
+ * @generated
+ */
+ Bilinear createBilinear();
+
+ /**
+ * Returns the package supported by this factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the package supported by this factory.
+ * @generated
+ */
+ Linear_layersPackage getLinear_layersPackage();
+
+} //Linear_layersFactory
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Linear_layers/Linear_layersPackage.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Linear_layers/Linear_layersPackage.java
new file mode 100644
index 0000000..f9f33cd
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Linear_layers/Linear_layersPackage.java
@@ -0,0 +1,910 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Linear_layers;
+
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Module.ModulePackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Package</b> for the model.
+ * It contains accessors for the meta objects to represent
+ * <ul>
+ * <li>each class,</li>
+ * <li>each feature of each class,</li>
+ * <li>each operation of each class,</li>
+ * <li>each enum,</li>
+ * <li>and each data type</li>
+ * </ul>
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.Linear_layersFactory
+ * @model kind="package"
+ * @generated
+ */
+public interface Linear_layersPackage extends EPackage {
+ /**
+ * The package name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNAME = "Linear_layers"; //$NON-NLS-1$
+
+ /**
+ * The package namespace URI.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNS_URI = "http://www.eclipse.org/papyrus/AIML/linear/1"; //$NON-NLS-1$
+
+ /**
+ * The package namespace name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNS_PREFIX = "AIML.Linear_layers"; //$NON-NLS-1$
+
+ /**
+ * The singleton instance of the package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ Linear_layersPackage eINSTANCE = org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.impl.Linear_layersPackageImpl.init();
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.impl.Linear_layersImpl <em>Linear layers</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.impl.Linear_layersImpl
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.impl.Linear_layersPackageImpl#getLinear_layers()
+ * @generated
+ */
+ int LINEAR_LAYERS = 0;
+
+ /**
+ * The feature id for the '<em><b>Base Class</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LINEAR_LAYERS__BASE_CLASS = ModulePackage.MODEL__BASE_CLASS;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LINEAR_LAYERS__NAME = ModulePackage.MODEL__NAME;
+
+ /**
+ * The feature id for the '<em><b>Data</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LINEAR_LAYERS__DATA = ModulePackage.MODEL__DATA;
+
+ /**
+ * The feature id for the '<em><b>Requires grad</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LINEAR_LAYERS__REQUIRES_GRAD = ModulePackage.MODEL__REQUIRES_GRAD;
+
+ /**
+ * The feature id for the '<em><b>Sub Module</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LINEAR_LAYERS__SUB_MODULE = ModulePackage.MODEL__SUB_MODULE;
+
+ /**
+ * The feature id for the '<em><b>Optimizer</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LINEAR_LAYERS__OPTIMIZER = ModulePackage.MODEL__OPTIMIZER;
+
+ /**
+ * The feature id for the '<em><b>Loss</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LINEAR_LAYERS__LOSS = ModulePackage.MODEL__LOSS;
+
+ /**
+ * The number of structural features of the '<em>Linear layers</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LINEAR_LAYERS_FEATURE_COUNT = ModulePackage.MODEL_FEATURE_COUNT + 0;
+
+ /**
+ * The number of operations of the '<em>Linear layers</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LINEAR_LAYERS_OPERATION_COUNT = ModulePackage.MODEL_OPERATION_COUNT + 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.impl.IdentityImpl <em>Identity</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.impl.IdentityImpl
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.impl.Linear_layersPackageImpl#getIdentity()
+ * @generated
+ */
+ int IDENTITY = 1;
+
+ /**
+ * The feature id for the '<em><b>Base Class</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IDENTITY__BASE_CLASS = LINEAR_LAYERS__BASE_CLASS;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IDENTITY__NAME = LINEAR_LAYERS__NAME;
+
+ /**
+ * The feature id for the '<em><b>Data</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IDENTITY__DATA = LINEAR_LAYERS__DATA;
+
+ /**
+ * The feature id for the '<em><b>Requires grad</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IDENTITY__REQUIRES_GRAD = LINEAR_LAYERS__REQUIRES_GRAD;
+
+ /**
+ * The feature id for the '<em><b>Sub Module</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IDENTITY__SUB_MODULE = LINEAR_LAYERS__SUB_MODULE;
+
+ /**
+ * The feature id for the '<em><b>Optimizer</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IDENTITY__OPTIMIZER = LINEAR_LAYERS__OPTIMIZER;
+
+ /**
+ * The feature id for the '<em><b>Loss</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IDENTITY__LOSS = LINEAR_LAYERS__LOSS;
+
+ /**
+ * The number of structural features of the '<em>Identity</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IDENTITY_FEATURE_COUNT = LINEAR_LAYERS_FEATURE_COUNT + 0;
+
+ /**
+ * The number of operations of the '<em>Identity</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IDENTITY_OPERATION_COUNT = LINEAR_LAYERS_OPERATION_COUNT + 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.impl.Linear_layers_1Impl <em>Linear layers 1</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.impl.Linear_layers_1Impl
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.impl.Linear_layersPackageImpl#getLinear_layers_1()
+ * @generated
+ */
+ int LINEAR_LAYERS_1 = 2;
+
+ /**
+ * The feature id for the '<em><b>Base Class</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LINEAR_LAYERS_1__BASE_CLASS = LINEAR_LAYERS__BASE_CLASS;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LINEAR_LAYERS_1__NAME = LINEAR_LAYERS__NAME;
+
+ /**
+ * The feature id for the '<em><b>Data</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LINEAR_LAYERS_1__DATA = LINEAR_LAYERS__DATA;
+
+ /**
+ * The feature id for the '<em><b>Requires grad</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LINEAR_LAYERS_1__REQUIRES_GRAD = LINEAR_LAYERS__REQUIRES_GRAD;
+
+ /**
+ * The feature id for the '<em><b>Sub Module</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LINEAR_LAYERS_1__SUB_MODULE = LINEAR_LAYERS__SUB_MODULE;
+
+ /**
+ * The feature id for the '<em><b>Optimizer</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LINEAR_LAYERS_1__OPTIMIZER = LINEAR_LAYERS__OPTIMIZER;
+
+ /**
+ * The feature id for the '<em><b>Loss</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LINEAR_LAYERS_1__LOSS = LINEAR_LAYERS__LOSS;
+
+ /**
+ * The feature id for the '<em><b>Out features</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LINEAR_LAYERS_1__OUT_FEATURES = LINEAR_LAYERS_FEATURE_COUNT + 0;
+
+ /**
+ * The feature id for the '<em><b>Bias</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LINEAR_LAYERS_1__BIAS = LINEAR_LAYERS_FEATURE_COUNT + 1;
+
+ /**
+ * The number of structural features of the '<em>Linear layers 1</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LINEAR_LAYERS_1_FEATURE_COUNT = LINEAR_LAYERS_FEATURE_COUNT + 2;
+
+ /**
+ * The number of operations of the '<em>Linear layers 1</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LINEAR_LAYERS_1_OPERATION_COUNT = LINEAR_LAYERS_OPERATION_COUNT + 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.impl.LinearImpl <em>Linear</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.impl.LinearImpl
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.impl.Linear_layersPackageImpl#getLinear()
+ * @generated
+ */
+ int LINEAR = 3;
+
+ /**
+ * The feature id for the '<em><b>Base Class</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LINEAR__BASE_CLASS = LINEAR_LAYERS_1__BASE_CLASS;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LINEAR__NAME = LINEAR_LAYERS_1__NAME;
+
+ /**
+ * The feature id for the '<em><b>Data</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LINEAR__DATA = LINEAR_LAYERS_1__DATA;
+
+ /**
+ * The feature id for the '<em><b>Requires grad</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LINEAR__REQUIRES_GRAD = LINEAR_LAYERS_1__REQUIRES_GRAD;
+
+ /**
+ * The feature id for the '<em><b>Sub Module</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LINEAR__SUB_MODULE = LINEAR_LAYERS_1__SUB_MODULE;
+
+ /**
+ * The feature id for the '<em><b>Optimizer</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LINEAR__OPTIMIZER = LINEAR_LAYERS_1__OPTIMIZER;
+
+ /**
+ * The feature id for the '<em><b>Loss</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LINEAR__LOSS = LINEAR_LAYERS_1__LOSS;
+
+ /**
+ * The feature id for the '<em><b>Out features</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LINEAR__OUT_FEATURES = LINEAR_LAYERS_1__OUT_FEATURES;
+
+ /**
+ * The feature id for the '<em><b>Bias</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LINEAR__BIAS = LINEAR_LAYERS_1__BIAS;
+
+ /**
+ * The feature id for the '<em><b>In features</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LINEAR__IN_FEATURES = LINEAR_LAYERS_1_FEATURE_COUNT + 0;
+
+ /**
+ * The feature id for the '<em><b>Activation</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LINEAR__ACTIVATION = LINEAR_LAYERS_1_FEATURE_COUNT + 1;
+
+ /**
+ * The feature id for the '<em><b>Kernel initializer</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LINEAR__KERNEL_INITIALIZER = LINEAR_LAYERS_1_FEATURE_COUNT + 2;
+
+ /**
+ * The feature id for the '<em><b>Bias initializer</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LINEAR__BIAS_INITIALIZER = LINEAR_LAYERS_1_FEATURE_COUNT + 3;
+
+ /**
+ * The number of structural features of the '<em>Linear</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LINEAR_FEATURE_COUNT = LINEAR_LAYERS_1_FEATURE_COUNT + 4;
+
+ /**
+ * The number of operations of the '<em>Linear</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LINEAR_OPERATION_COUNT = LINEAR_LAYERS_1_OPERATION_COUNT + 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.impl.BilinearImpl <em>Bilinear</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.impl.BilinearImpl
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.impl.Linear_layersPackageImpl#getBilinear()
+ * @generated
+ */
+ int BILINEAR = 4;
+
+ /**
+ * The feature id for the '<em><b>Base Class</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int BILINEAR__BASE_CLASS = LINEAR_LAYERS_1__BASE_CLASS;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int BILINEAR__NAME = LINEAR_LAYERS_1__NAME;
+
+ /**
+ * The feature id for the '<em><b>Data</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int BILINEAR__DATA = LINEAR_LAYERS_1__DATA;
+
+ /**
+ * The feature id for the '<em><b>Requires grad</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int BILINEAR__REQUIRES_GRAD = LINEAR_LAYERS_1__REQUIRES_GRAD;
+
+ /**
+ * The feature id for the '<em><b>Sub Module</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int BILINEAR__SUB_MODULE = LINEAR_LAYERS_1__SUB_MODULE;
+
+ /**
+ * The feature id for the '<em><b>Optimizer</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int BILINEAR__OPTIMIZER = LINEAR_LAYERS_1__OPTIMIZER;
+
+ /**
+ * The feature id for the '<em><b>Loss</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int BILINEAR__LOSS = LINEAR_LAYERS_1__LOSS;
+
+ /**
+ * The feature id for the '<em><b>Out features</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int BILINEAR__OUT_FEATURES = LINEAR_LAYERS_1__OUT_FEATURES;
+
+ /**
+ * The feature id for the '<em><b>Bias</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int BILINEAR__BIAS = LINEAR_LAYERS_1__BIAS;
+
+ /**
+ * The feature id for the '<em><b>In1 features</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int BILINEAR__IN1_FEATURES = LINEAR_LAYERS_1_FEATURE_COUNT + 0;
+
+ /**
+ * The feature id for the '<em><b>In2 features</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int BILINEAR__IN2_FEATURES = LINEAR_LAYERS_1_FEATURE_COUNT + 1;
+
+ /**
+ * The number of structural features of the '<em>Bilinear</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int BILINEAR_FEATURE_COUNT = LINEAR_LAYERS_1_FEATURE_COUNT + 2;
+
+ /**
+ * The number of operations of the '<em>Bilinear</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int BILINEAR_OPERATION_COUNT = LINEAR_LAYERS_1_OPERATION_COUNT + 0;
+
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.Linear_layers <em>Linear layers</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Linear layers</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.Linear_layers
+ * @generated
+ */
+ EClass getLinear_layers();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.Identity <em>Identity</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Identity</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.Identity
+ * @generated
+ */
+ EClass getIdentity();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.Linear_layers_1 <em>Linear layers 1</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Linear layers 1</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.Linear_layers_1
+ * @generated
+ */
+ EClass getLinear_layers_1();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.Linear_layers_1#getOut_features <em>Out features</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Out features</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.Linear_layers_1#getOut_features()
+ * @see #getLinear_layers_1()
+ * @generated
+ */
+ EAttribute getLinear_layers_1_Out_features();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.Linear_layers_1#isBias <em>Bias</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Bias</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.Linear_layers_1#isBias()
+ * @see #getLinear_layers_1()
+ * @generated
+ */
+ EAttribute getLinear_layers_1_Bias();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.Linear <em>Linear</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Linear</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.Linear
+ * @generated
+ */
+ EClass getLinear();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.Linear#getIn_features <em>In features</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>In features</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.Linear#getIn_features()
+ * @see #getLinear()
+ * @generated
+ */
+ EAttribute getLinear_In_features();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.Linear#getActivation <em>Activation</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Activation</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.Linear#getActivation()
+ * @see #getLinear()
+ * @generated
+ */
+ EAttribute getLinear_Activation();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.Linear#getKernel_initializer <em>Kernel initializer</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Kernel initializer</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.Linear#getKernel_initializer()
+ * @see #getLinear()
+ * @generated
+ */
+ EAttribute getLinear_Kernel_initializer();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.Linear#getBias_initializer <em>Bias initializer</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Bias initializer</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.Linear#getBias_initializer()
+ * @see #getLinear()
+ * @generated
+ */
+ EAttribute getLinear_Bias_initializer();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.Bilinear <em>Bilinear</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Bilinear</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.Bilinear
+ * @generated
+ */
+ EClass getBilinear();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.Bilinear#getIn1_features <em>In1 features</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>In1 features</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.Bilinear#getIn1_features()
+ * @see #getBilinear()
+ * @generated
+ */
+ EAttribute getBilinear_In1_features();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.Bilinear#getIn2_features <em>In2 features</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>In2 features</em>'.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.Bilinear#getIn2_features()
+ * @see #getBilinear()
+ * @generated
+ */
+ EAttribute getBilinear_In2_features();
+
+ /**
+ * Returns the factory that creates the instances of the model.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the factory that creates the instances of the model.
+ * @generated
+ */
+ Linear_layersFactory getLinear_layersFactory();
+
+ /**
+ * <!-- begin-user-doc -->
+ * Defines literals for the meta objects that represent
+ * <ul>
+ * <li>each class,</li>
+ * <li>each feature of each class,</li>
+ * <li>each operation of each class,</li>
+ * <li>each enum,</li>
+ * <li>and each data type</li>
+ * </ul>
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ interface Literals {
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.impl.Linear_layersImpl <em>Linear layers</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.impl.Linear_layersImpl
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.impl.Linear_layersPackageImpl#getLinear_layers()
+ * @generated
+ */
+ EClass LINEAR_LAYERS = eINSTANCE.getLinear_layers();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.impl.IdentityImpl <em>Identity</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.impl.IdentityImpl
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.impl.Linear_layersPackageImpl#getIdentity()
+ * @generated
+ */
+ EClass IDENTITY = eINSTANCE.getIdentity();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.impl.Linear_layers_1Impl <em>Linear layers 1</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.impl.Linear_layers_1Impl
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.impl.Linear_layersPackageImpl#getLinear_layers_1()
+ * @generated
+ */
+ EClass LINEAR_LAYERS_1 = eINSTANCE.getLinear_layers_1();
+
+ /**
+ * The meta object literal for the '<em><b>Out features</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute LINEAR_LAYERS_1__OUT_FEATURES = eINSTANCE.getLinear_layers_1_Out_features();
+
+ /**
+ * The meta object literal for the '<em><b>Bias</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute LINEAR_LAYERS_1__BIAS = eINSTANCE.getLinear_layers_1_Bias();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.impl.LinearImpl <em>Linear</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.impl.LinearImpl
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.impl.Linear_layersPackageImpl#getLinear()
+ * @generated
+ */
+ EClass LINEAR = eINSTANCE.getLinear();
+
+ /**
+ * The meta object literal for the '<em><b>In features</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute LINEAR__IN_FEATURES = eINSTANCE.getLinear_In_features();
+
+ /**
+ * The meta object literal for the '<em><b>Activation</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute LINEAR__ACTIVATION = eINSTANCE.getLinear_Activation();
+
+ /**
+ * The meta object literal for the '<em><b>Kernel initializer</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute LINEAR__KERNEL_INITIALIZER = eINSTANCE.getLinear_Kernel_initializer();
+
+ /**
+ * The meta object literal for the '<em><b>Bias initializer</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute LINEAR__BIAS_INITIALIZER = eINSTANCE.getLinear_Bias_initializer();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.impl.BilinearImpl <em>Bilinear</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.impl.BilinearImpl
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.impl.Linear_layersPackageImpl#getBilinear()
+ * @generated
+ */
+ EClass BILINEAR = eINSTANCE.getBilinear();
+
+ /**
+ * The meta object literal for the '<em><b>In1 features</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute BILINEAR__IN1_FEATURES = eINSTANCE.getBilinear_In1_features();
+
+ /**
+ * The meta object literal for the '<em><b>In2 features</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute BILINEAR__IN2_FEATURES = eINSTANCE.getBilinear_In2_features();
+
+ }
+
+} //Linear_layersPackage
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Linear_layers/Linear_layers_1.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Linear_layers/Linear_layers_1.java
new file mode 100644
index 0000000..7a4ec71
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Linear_layers/Linear_layers_1.java
@@ -0,0 +1,85 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Linear_layers;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Linear layers 1</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.Linear_layers_1#getOut_features <em>Out features</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.Linear_layers_1#isBias <em>Bias</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.Linear_layersPackage#getLinear_layers_1()
+ * @model abstract="true"
+ * @generated
+ */
+public interface Linear_layers_1 extends Linear_layers {
+ /**
+ * Returns the value of the '<em><b>Out features</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Out features</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Out features</em>' attribute.
+ * @see #setOut_features(int)
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.Linear_layersPackage#getLinear_layers_1_Out_features()
+ * @model dataType="org.eclipse.uml2.types.Integer" required="true" ordered="false"
+ * @generated
+ */
+ int getOut_features();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.Linear_layers_1#getOut_features <em>Out features</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Out features</em>' attribute.
+ * @see #getOut_features()
+ * @generated
+ */
+ void setOut_features(int value);
+
+ /**
+ * Returns the value of the '<em><b>Bias</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Bias</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Bias</em>' attribute.
+ * @see #setBias(boolean)
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.Linear_layersPackage#getLinear_layers_1_Bias()
+ * @model dataType="org.eclipse.uml2.types.Boolean" ordered="false"
+ * @generated
+ */
+ boolean isBias();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.Linear_layers_1#isBias <em>Bias</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Bias</em>' attribute.
+ * @see #isBias()
+ * @generated
+ */
+ void setBias(boolean value);
+
+} // Linear_layers_1
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Linear_layers/impl/BilinearImpl.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Linear_layers/impl/BilinearImpl.java
new file mode 100644
index 0000000..a57b91b
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Linear_layers/impl/BilinearImpl.java
@@ -0,0 +1,229 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.Bilinear;
+import org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.Linear_layersPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Bilinear</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.impl.BilinearImpl#getIn1_features <em>In1 features</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.impl.BilinearImpl#getIn2_features <em>In2 features</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class BilinearImpl extends Linear_layers_1Impl implements Bilinear {
+ /**
+ * The default value of the '{@link #getIn1_features() <em>In1 features</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getIn1_features()
+ * @generated
+ * @ordered
+ */
+ protected static final int IN1_FEATURES_EDEFAULT = 0;
+
+ /**
+ * The cached value of the '{@link #getIn1_features() <em>In1 features</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getIn1_features()
+ * @generated
+ * @ordered
+ */
+ protected int in1_features = IN1_FEATURES_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getIn2_features() <em>In2 features</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getIn2_features()
+ * @generated
+ * @ordered
+ */
+ protected static final int IN2_FEATURES_EDEFAULT = 0;
+
+ /**
+ * The cached value of the '{@link #getIn2_features() <em>In2 features</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getIn2_features()
+ * @generated
+ * @ordered
+ */
+ protected int in2_features = IN2_FEATURES_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected BilinearImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return Linear_layersPackage.Literals.BILINEAR;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public int getIn1_features() {
+ return in1_features;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void setIn1_features(int newIn1_features) {
+ int oldIn1_features = in1_features;
+ in1_features = newIn1_features;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, Linear_layersPackage.BILINEAR__IN1_FEATURES, oldIn1_features, in1_features));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public int getIn2_features() {
+ return in2_features;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void setIn2_features(int newIn2_features) {
+ int oldIn2_features = in2_features;
+ in2_features = newIn2_features;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, Linear_layersPackage.BILINEAR__IN2_FEATURES, oldIn2_features, in2_features));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case Linear_layersPackage.BILINEAR__IN1_FEATURES:
+ return getIn1_features();
+ case Linear_layersPackage.BILINEAR__IN2_FEATURES:
+ return getIn2_features();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case Linear_layersPackage.BILINEAR__IN1_FEATURES:
+ setIn1_features((Integer)newValue);
+ return;
+ case Linear_layersPackage.BILINEAR__IN2_FEATURES:
+ setIn2_features((Integer)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case Linear_layersPackage.BILINEAR__IN1_FEATURES:
+ setIn1_features(IN1_FEATURES_EDEFAULT);
+ return;
+ case Linear_layersPackage.BILINEAR__IN2_FEATURES:
+ setIn2_features(IN2_FEATURES_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case Linear_layersPackage.BILINEAR__IN1_FEATURES:
+ return in1_features != IN1_FEATURES_EDEFAULT;
+ case Linear_layersPackage.BILINEAR__IN2_FEATURES:
+ return in2_features != IN2_FEATURES_EDEFAULT;
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuilder result = new StringBuilder(super.toString());
+ result.append(" (in1_features: "); //$NON-NLS-1$
+ result.append(in1_features);
+ result.append(", in2_features: "); //$NON-NLS-1$
+ result.append(in2_features);
+ result.append(')');
+ return result.toString();
+ }
+
+} //BilinearImpl
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Linear_layers/impl/IdentityImpl.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Linear_layers/impl/IdentityImpl.java
new file mode 100644
index 0000000..62f2cda
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Linear_layers/impl/IdentityImpl.java
@@ -0,0 +1,46 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.Identity;
+import org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.Linear_layersPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Identity</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class IdentityImpl extends Linear_layersImpl implements Identity {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected IdentityImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return Linear_layersPackage.Literals.IDENTITY;
+ }
+
+} //IdentityImpl
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Linear_layers/impl/LinearImpl.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Linear_layers/impl/LinearImpl.java
new file mode 100644
index 0000000..3760b67
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Linear_layers/impl/LinearImpl.java
@@ -0,0 +1,341 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.Linear;
+import org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.Linear_layersPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Linear</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.impl.LinearImpl#getIn_features <em>In features</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.impl.LinearImpl#getActivation <em>Activation</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.impl.LinearImpl#getKernel_initializer <em>Kernel initializer</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.impl.LinearImpl#getBias_initializer <em>Bias initializer</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class LinearImpl extends Linear_layers_1Impl implements Linear {
+ /**
+ * The default value of the '{@link #getIn_features() <em>In features</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getIn_features()
+ * @generated
+ * @ordered
+ */
+ protected static final int IN_FEATURES_EDEFAULT = 0;
+
+ /**
+ * The cached value of the '{@link #getIn_features() <em>In features</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getIn_features()
+ * @generated
+ * @ordered
+ */
+ protected int in_features = IN_FEATURES_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getActivation() <em>Activation</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getActivation()
+ * @generated
+ * @ordered
+ */
+ protected static final String ACTIVATION_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getActivation() <em>Activation</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getActivation()
+ * @generated
+ * @ordered
+ */
+ protected String activation = ACTIVATION_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getKernel_initializer() <em>Kernel initializer</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getKernel_initializer()
+ * @generated
+ * @ordered
+ */
+ protected static final String KERNEL_INITIALIZER_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getKernel_initializer() <em>Kernel initializer</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getKernel_initializer()
+ * @generated
+ * @ordered
+ */
+ protected String kernel_initializer = KERNEL_INITIALIZER_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getBias_initializer() <em>Bias initializer</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getBias_initializer()
+ * @generated
+ * @ordered
+ */
+ protected static final String BIAS_INITIALIZER_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getBias_initializer() <em>Bias initializer</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getBias_initializer()
+ * @generated
+ * @ordered
+ */
+ protected String bias_initializer = BIAS_INITIALIZER_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected LinearImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return Linear_layersPackage.Literals.LINEAR;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public int getIn_features() {
+ return in_features;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void setIn_features(int newIn_features) {
+ int oldIn_features = in_features;
+ in_features = newIn_features;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, Linear_layersPackage.LINEAR__IN_FEATURES, oldIn_features, in_features));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String getActivation() {
+ return activation;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void setActivation(String newActivation) {
+ String oldActivation = activation;
+ activation = newActivation;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, Linear_layersPackage.LINEAR__ACTIVATION, oldActivation, activation));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String getKernel_initializer() {
+ return kernel_initializer;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void setKernel_initializer(String newKernel_initializer) {
+ String oldKernel_initializer = kernel_initializer;
+ kernel_initializer = newKernel_initializer;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, Linear_layersPackage.LINEAR__KERNEL_INITIALIZER, oldKernel_initializer, kernel_initializer));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String getBias_initializer() {
+ return bias_initializer;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void setBias_initializer(String newBias_initializer) {
+ String oldBias_initializer = bias_initializer;
+ bias_initializer = newBias_initializer;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, Linear_layersPackage.LINEAR__BIAS_INITIALIZER, oldBias_initializer, bias_initializer));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case Linear_layersPackage.LINEAR__IN_FEATURES:
+ return getIn_features();
+ case Linear_layersPackage.LINEAR__ACTIVATION:
+ return getActivation();
+ case Linear_layersPackage.LINEAR__KERNEL_INITIALIZER:
+ return getKernel_initializer();
+ case Linear_layersPackage.LINEAR__BIAS_INITIALIZER:
+ return getBias_initializer();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case Linear_layersPackage.LINEAR__IN_FEATURES:
+ setIn_features((Integer)newValue);
+ return;
+ case Linear_layersPackage.LINEAR__ACTIVATION:
+ setActivation((String)newValue);
+ return;
+ case Linear_layersPackage.LINEAR__KERNEL_INITIALIZER:
+ setKernel_initializer((String)newValue);
+ return;
+ case Linear_layersPackage.LINEAR__BIAS_INITIALIZER:
+ setBias_initializer((String)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case Linear_layersPackage.LINEAR__IN_FEATURES:
+ setIn_features(IN_FEATURES_EDEFAULT);
+ return;
+ case Linear_layersPackage.LINEAR__ACTIVATION:
+ setActivation(ACTIVATION_EDEFAULT);
+ return;
+ case Linear_layersPackage.LINEAR__KERNEL_INITIALIZER:
+ setKernel_initializer(KERNEL_INITIALIZER_EDEFAULT);
+ return;
+ case Linear_layersPackage.LINEAR__BIAS_INITIALIZER:
+ setBias_initializer(BIAS_INITIALIZER_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case Linear_layersPackage.LINEAR__IN_FEATURES:
+ return in_features != IN_FEATURES_EDEFAULT;
+ case Linear_layersPackage.LINEAR__ACTIVATION:
+ return ACTIVATION_EDEFAULT == null ? activation != null : !ACTIVATION_EDEFAULT.equals(activation);
+ case Linear_layersPackage.LINEAR__KERNEL_INITIALIZER:
+ return KERNEL_INITIALIZER_EDEFAULT == null ? kernel_initializer != null : !KERNEL_INITIALIZER_EDEFAULT.equals(kernel_initializer);
+ case Linear_layersPackage.LINEAR__BIAS_INITIALIZER:
+ return BIAS_INITIALIZER_EDEFAULT == null ? bias_initializer != null : !BIAS_INITIALIZER_EDEFAULT.equals(bias_initializer);
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuilder result = new StringBuilder(super.toString());
+ result.append(" (in_features: "); //$NON-NLS-1$
+ result.append(in_features);
+ result.append(", activation: "); //$NON-NLS-1$
+ result.append(activation);
+ result.append(", kernel_initializer: "); //$NON-NLS-1$
+ result.append(kernel_initializer);
+ result.append(", bias_initializer: "); //$NON-NLS-1$
+ result.append(bias_initializer);
+ result.append(')');
+ return result.toString();
+ }
+
+} //LinearImpl
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Linear_layers/impl/Linear_layersFactoryImpl.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Linear_layers/impl/Linear_layersFactoryImpl.java
new file mode 100644
index 0000000..ff946d3
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Linear_layers/impl/Linear_layersFactoryImpl.java
@@ -0,0 +1,130 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.impl;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+
+import org.eclipse.emf.ecore.impl.EFactoryImpl;
+
+import org.eclipse.emf.ecore.plugin.EcorePlugin;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.*;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model <b>Factory</b>.
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class Linear_layersFactoryImpl extends EFactoryImpl implements Linear_layersFactory {
+ /**
+ * Creates the default factory implementation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static Linear_layersFactory init() {
+ try {
+ Linear_layersFactory theLinear_layersFactory = (Linear_layersFactory)EPackage.Registry.INSTANCE.getEFactory(Linear_layersPackage.eNS_URI);
+ if (theLinear_layersFactory != null) {
+ return theLinear_layersFactory;
+ }
+ }
+ catch (Exception exception) {
+ EcorePlugin.INSTANCE.log(exception);
+ }
+ return new Linear_layersFactoryImpl();
+ }
+
+ /**
+ * Creates an instance of the factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Linear_layersFactoryImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EObject create(EClass eClass) {
+ switch (eClass.getClassifierID()) {
+ case Linear_layersPackage.IDENTITY: return createIdentity();
+ case Linear_layersPackage.LINEAR: return createLinear();
+ case Linear_layersPackage.BILINEAR: return createBilinear();
+ default:
+ throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier"); //$NON-NLS-1$ //$NON-NLS-2$
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Identity createIdentity() {
+ IdentityImpl identity = new IdentityImpl();
+ return identity;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Linear createLinear() {
+ LinearImpl linear = new LinearImpl();
+ return linear;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Bilinear createBilinear() {
+ BilinearImpl bilinear = new BilinearImpl();
+ return bilinear;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Linear_layersPackage getLinear_layersPackage() {
+ return (Linear_layersPackage)getEPackage();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @deprecated
+ * @generated
+ */
+ @Deprecated
+ public static Linear_layersPackage getPackage() {
+ return Linear_layersPackage.eINSTANCE;
+ }
+
+} //Linear_layersFactoryImpl
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Linear_layers/impl/Linear_layersImpl.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Linear_layers/impl/Linear_layersImpl.java
new file mode 100644
index 0000000..5bdfd96
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Linear_layers/impl/Linear_layersImpl.java
@@ -0,0 +1,47 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.Linear_layers;
+import org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.Linear_layersPackage;
+import org.eclipse.papyrus.aiml.profile.AIML.Module.impl.ModelImpl;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Linear layers</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public abstract class Linear_layersImpl extends ModelImpl implements Linear_layers {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected Linear_layersImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return Linear_layersPackage.Literals.LINEAR_LAYERS;
+ }
+
+} //Linear_layersImpl
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Linear_layers/impl/Linear_layersPackageImpl.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Linear_layers/impl/Linear_layersPackageImpl.java
new file mode 100644
index 0000000..747b643
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Linear_layers/impl/Linear_layersPackageImpl.java
@@ -0,0 +1,547 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.impl;
+
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EcorePackage;
+
+import org.eclipse.emf.ecore.impl.EPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.AIMLPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution_layersPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.Convolution_layersPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers.DataParallel_layersPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers.impl.DataParallel_layersPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Distance_functions.Distance_functionsPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Distance_functions.impl.Distance_functionsPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.Dropout_layersPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.impl.Dropout_layersPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.Layer_weight_constraintsPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.impl.Layer_weight_constraintsPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.Layer_weight_initializersPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.impl.Layer_weight_initializersPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers.Layer_weight_regularizersPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers.impl.Layer_weight_regularizersPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.Bilinear;
+import org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.Identity;
+import org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.Linear;
+import org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.Linear_layers;
+import org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.Linear_layersFactory;
+import org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.Linear_layersPackage;
+import org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.Linear_layers_1;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Loss_functions.Loss_functionsPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Loss_functions.impl.Loss_functionsPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Module.ModulePackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Module.impl.ModulePackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.NonLinearActivations.NonLinearActivationsPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.NonLinearActivations.impl.NonLinearActivationsPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Normalization_layers.Normalization_layersPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Normalization_layers.impl.Normalization_layersPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Padding_layers.Padding_layersPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Padding_layers.impl.Padding_layersPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Pooling_layers.Pooling_layersPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Pooling_layers.impl.Pooling_layersPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Recurrent_layers.Recurrent_layersPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Recurrent_layers.impl.Recurrent_layersPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.SoftMinMaxActivations.SoftMinMaxActivationsPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.SoftMinMaxActivations.impl.SoftMinMaxActivationsPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Sparse_layers.Sparse_layersPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Sparse_layers.impl.Sparse_layersPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Tensor.TensorPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Tensor.impl.TensorPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Transformer_layers.Transformer_layersPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Transformer_layers.impl.Transformer_layersPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Vision_layers.Vision_layersPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Vision_layers.impl.Vision_layersPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.datatypes.DatatypesPackage;
+
+import org.eclipse.papyrus.aiml.profile.AIML.datatypes.impl.DatatypesPackageImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.impl.AIMLPackageImpl;
+
+import org.eclipse.uml2.types.TypesPackage;
+
+import org.eclipse.uml2.uml.UMLPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model <b>Package</b>.
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class Linear_layersPackageImpl extends EPackageImpl implements Linear_layersPackage {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass linear_layersEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass identityEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass linear_layers_1EClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass linearEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass bilinearEClass = null;
+
+ /**
+ * Creates an instance of the model <b>Package</b>, registered with
+ * {@link org.eclipse.emf.ecore.EPackage.Registry EPackage.Registry} by the package
+ * package URI value.
+ * <p>Note: the correct way to create the package is via the static
+ * factory method {@link #init init()}, which also performs
+ * initialization of the package, or returns the registered package,
+ * if one already exists.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.emf.ecore.EPackage.Registry
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.Linear_layersPackage#eNS_URI
+ * @see #init()
+ * @generated
+ */
+ private Linear_layersPackageImpl() {
+ super(eNS_URI, Linear_layersFactory.eINSTANCE);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private static boolean isInited = false;
+
+ /**
+ * Creates, registers, and initializes the <b>Package</b> for this model, and for any others upon which it depends.
+ *
+ * <p>This method is used to initialize {@link Linear_layersPackage#eINSTANCE} when that field is accessed.
+ * Clients should not invoke it directly. Instead, they should simply access that field to obtain the package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #eNS_URI
+ * @see #createPackageContents()
+ * @see #initializePackageContents()
+ * @generated
+ */
+ public static Linear_layersPackage init() {
+ if (isInited) return (Linear_layersPackage)EPackage.Registry.INSTANCE.getEPackage(Linear_layersPackage.eNS_URI);
+
+ // Obtain or create and register package
+ Object registeredLinear_layersPackage = EPackage.Registry.INSTANCE.get(eNS_URI);
+ Linear_layersPackageImpl theLinear_layersPackage = registeredLinear_layersPackage instanceof Linear_layersPackageImpl ? (Linear_layersPackageImpl)registeredLinear_layersPackage : new Linear_layersPackageImpl();
+
+ isInited = true;
+
+ // Initialize simple dependencies
+ EcorePackage.eINSTANCE.eClass();
+ TypesPackage.eINSTANCE.eClass();
+ UMLPackage.eINSTANCE.eClass();
+
+ // Obtain or create and register interdependencies
+ Object registeredPackage = EPackage.Registry.INSTANCE.getEPackage(AIMLPackage.eNS_URI);
+ AIMLPackageImpl theAIMLPackage = (AIMLPackageImpl)(registeredPackage instanceof AIMLPackageImpl ? registeredPackage : AIMLPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(ModulePackage.eNS_URI);
+ ModulePackageImpl theModulePackage = (ModulePackageImpl)(registeredPackage instanceof ModulePackageImpl ? registeredPackage : ModulePackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(TensorPackage.eNS_URI);
+ TensorPackageImpl theTensorPackage = (TensorPackageImpl)(registeredPackage instanceof TensorPackageImpl ? registeredPackage : TensorPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(DatatypesPackage.eNS_URI);
+ DatatypesPackageImpl theDatatypesPackage = (DatatypesPackageImpl)(registeredPackage instanceof DatatypesPackageImpl ? registeredPackage : DatatypesPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Pooling_layersPackage.eNS_URI);
+ Pooling_layersPackageImpl thePooling_layersPackage = (Pooling_layersPackageImpl)(registeredPackage instanceof Pooling_layersPackageImpl ? registeredPackage : Pooling_layersPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Convolution_layersPackage.eNS_URI);
+ Convolution_layersPackageImpl theConvolution_layersPackage = (Convolution_layersPackageImpl)(registeredPackage instanceof Convolution_layersPackageImpl ? registeredPackage : Convolution_layersPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Layer_weight_constraintsPackage.eNS_URI);
+ Layer_weight_constraintsPackageImpl theLayer_weight_constraintsPackage = (Layer_weight_constraintsPackageImpl)(registeredPackage instanceof Layer_weight_constraintsPackageImpl ? registeredPackage : Layer_weight_constraintsPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Padding_layersPackage.eNS_URI);
+ Padding_layersPackageImpl thePadding_layersPackage = (Padding_layersPackageImpl)(registeredPackage instanceof Padding_layersPackageImpl ? registeredPackage : Padding_layersPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(NonLinearActivationsPackage.eNS_URI);
+ NonLinearActivationsPackageImpl theNonLinearActivationsPackage = (NonLinearActivationsPackageImpl)(registeredPackage instanceof NonLinearActivationsPackageImpl ? registeredPackage : NonLinearActivationsPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(SoftMinMaxActivationsPackage.eNS_URI);
+ SoftMinMaxActivationsPackageImpl theSoftMinMaxActivationsPackage = (SoftMinMaxActivationsPackageImpl)(registeredPackage instanceof SoftMinMaxActivationsPackageImpl ? registeredPackage : SoftMinMaxActivationsPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Normalization_layersPackage.eNS_URI);
+ Normalization_layersPackageImpl theNormalization_layersPackage = (Normalization_layersPackageImpl)(registeredPackage instanceof Normalization_layersPackageImpl ? registeredPackage : Normalization_layersPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Recurrent_layersPackage.eNS_URI);
+ Recurrent_layersPackageImpl theRecurrent_layersPackage = (Recurrent_layersPackageImpl)(registeredPackage instanceof Recurrent_layersPackageImpl ? registeredPackage : Recurrent_layersPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Transformer_layersPackage.eNS_URI);
+ Transformer_layersPackageImpl theTransformer_layersPackage = (Transformer_layersPackageImpl)(registeredPackage instanceof Transformer_layersPackageImpl ? registeredPackage : Transformer_layersPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Dropout_layersPackage.eNS_URI);
+ Dropout_layersPackageImpl theDropout_layersPackage = (Dropout_layersPackageImpl)(registeredPackage instanceof Dropout_layersPackageImpl ? registeredPackage : Dropout_layersPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Sparse_layersPackage.eNS_URI);
+ Sparse_layersPackageImpl theSparse_layersPackage = (Sparse_layersPackageImpl)(registeredPackage instanceof Sparse_layersPackageImpl ? registeredPackage : Sparse_layersPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Distance_functionsPackage.eNS_URI);
+ Distance_functionsPackageImpl theDistance_functionsPackage = (Distance_functionsPackageImpl)(registeredPackage instanceof Distance_functionsPackageImpl ? registeredPackage : Distance_functionsPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Loss_functionsPackage.eNS_URI);
+ Loss_functionsPackageImpl theLoss_functionsPackage = (Loss_functionsPackageImpl)(registeredPackage instanceof Loss_functionsPackageImpl ? registeredPackage : Loss_functionsPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Vision_layersPackage.eNS_URI);
+ Vision_layersPackageImpl theVision_layersPackage = (Vision_layersPackageImpl)(registeredPackage instanceof Vision_layersPackageImpl ? registeredPackage : Vision_layersPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(DataParallel_layersPackage.eNS_URI);
+ DataParallel_layersPackageImpl theDataParallel_layersPackage = (DataParallel_layersPackageImpl)(registeredPackage instanceof DataParallel_layersPackageImpl ? registeredPackage : DataParallel_layersPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Layer_weight_regularizersPackage.eNS_URI);
+ Layer_weight_regularizersPackageImpl theLayer_weight_regularizersPackage = (Layer_weight_regularizersPackageImpl)(registeredPackage instanceof Layer_weight_regularizersPackageImpl ? registeredPackage : Layer_weight_regularizersPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Layer_weight_initializersPackage.eNS_URI);
+ Layer_weight_initializersPackageImpl theLayer_weight_initializersPackage = (Layer_weight_initializersPackageImpl)(registeredPackage instanceof Layer_weight_initializersPackageImpl ? registeredPackage : Layer_weight_initializersPackage.eINSTANCE);
+
+ // Create package meta-data objects
+ theLinear_layersPackage.createPackageContents();
+ theAIMLPackage.createPackageContents();
+ theModulePackage.createPackageContents();
+ theTensorPackage.createPackageContents();
+ theDatatypesPackage.createPackageContents();
+ thePooling_layersPackage.createPackageContents();
+ theConvolution_layersPackage.createPackageContents();
+ theLayer_weight_constraintsPackage.createPackageContents();
+ thePadding_layersPackage.createPackageContents();
+ theNonLinearActivationsPackage.createPackageContents();
+ theSoftMinMaxActivationsPackage.createPackageContents();
+ theNormalization_layersPackage.createPackageContents();
+ theRecurrent_layersPackage.createPackageContents();
+ theTransformer_layersPackage.createPackageContents();
+ theDropout_layersPackage.createPackageContents();
+ theSparse_layersPackage.createPackageContents();
+ theDistance_functionsPackage.createPackageContents();
+ theLoss_functionsPackage.createPackageContents();
+ theVision_layersPackage.createPackageContents();
+ theDataParallel_layersPackage.createPackageContents();
+ theLayer_weight_regularizersPackage.createPackageContents();
+ theLayer_weight_initializersPackage.createPackageContents();
+
+ // Initialize created meta-data
+ theLinear_layersPackage.initializePackageContents();
+ theAIMLPackage.initializePackageContents();
+ theModulePackage.initializePackageContents();
+ theTensorPackage.initializePackageContents();
+ theDatatypesPackage.initializePackageContents();
+ thePooling_layersPackage.initializePackageContents();
+ theConvolution_layersPackage.initializePackageContents();
+ theLayer_weight_constraintsPackage.initializePackageContents();
+ thePadding_layersPackage.initializePackageContents();
+ theNonLinearActivationsPackage.initializePackageContents();
+ theSoftMinMaxActivationsPackage.initializePackageContents();
+ theNormalization_layersPackage.initializePackageContents();
+ theRecurrent_layersPackage.initializePackageContents();
+ theTransformer_layersPackage.initializePackageContents();
+ theDropout_layersPackage.initializePackageContents();
+ theSparse_layersPackage.initializePackageContents();
+ theDistance_functionsPackage.initializePackageContents();
+ theLoss_functionsPackage.initializePackageContents();
+ theVision_layersPackage.initializePackageContents();
+ theDataParallel_layersPackage.initializePackageContents();
+ theLayer_weight_regularizersPackage.initializePackageContents();
+ theLayer_weight_initializersPackage.initializePackageContents();
+
+ // Mark meta-data to indicate it can't be changed
+ theLinear_layersPackage.freeze();
+
+ // Update the registry and return the package
+ EPackage.Registry.INSTANCE.put(Linear_layersPackage.eNS_URI, theLinear_layersPackage);
+ return theLinear_layersPackage;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EClass getLinear_layers() {
+ return linear_layersEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EClass getIdentity() {
+ return identityEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EClass getLinear_layers_1() {
+ return linear_layers_1EClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EAttribute getLinear_layers_1_Out_features() {
+ return (EAttribute)linear_layers_1EClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EAttribute getLinear_layers_1_Bias() {
+ return (EAttribute)linear_layers_1EClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EClass getLinear() {
+ return linearEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EAttribute getLinear_In_features() {
+ return (EAttribute)linearEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EAttribute getLinear_Activation() {
+ return (EAttribute)linearEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EAttribute getLinear_Kernel_initializer() {
+ return (EAttribute)linearEClass.getEStructuralFeatures().get(2);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EAttribute getLinear_Bias_initializer() {
+ return (EAttribute)linearEClass.getEStructuralFeatures().get(3);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EClass getBilinear() {
+ return bilinearEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EAttribute getBilinear_In1_features() {
+ return (EAttribute)bilinearEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EAttribute getBilinear_In2_features() {
+ return (EAttribute)bilinearEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Linear_layersFactory getLinear_layersFactory() {
+ return (Linear_layersFactory)getEFactoryInstance();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private boolean isCreated = false;
+
+ /**
+ * Creates the meta-model objects for the package. This method is
+ * guarded to have no affect on any invocation but its first.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void createPackageContents() {
+ if (isCreated) return;
+ isCreated = true;
+
+ // Create classes and their features
+ linear_layersEClass = createEClass(LINEAR_LAYERS);
+
+ identityEClass = createEClass(IDENTITY);
+
+ linear_layers_1EClass = createEClass(LINEAR_LAYERS_1);
+ createEAttribute(linear_layers_1EClass, LINEAR_LAYERS_1__OUT_FEATURES);
+ createEAttribute(linear_layers_1EClass, LINEAR_LAYERS_1__BIAS);
+
+ linearEClass = createEClass(LINEAR);
+ createEAttribute(linearEClass, LINEAR__IN_FEATURES);
+ createEAttribute(linearEClass, LINEAR__ACTIVATION);
+ createEAttribute(linearEClass, LINEAR__KERNEL_INITIALIZER);
+ createEAttribute(linearEClass, LINEAR__BIAS_INITIALIZER);
+
+ bilinearEClass = createEClass(BILINEAR);
+ createEAttribute(bilinearEClass, BILINEAR__IN1_FEATURES);
+ createEAttribute(bilinearEClass, BILINEAR__IN2_FEATURES);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private boolean isInitialized = false;
+
+ /**
+ * Complete the initialization of the package and its meta-model. This
+ * method is guarded to have no affect on any invocation but its first.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void initializePackageContents() {
+ if (isInitialized) return;
+ isInitialized = true;
+
+ // Initialize package
+ setName(eNAME);
+ setNsPrefix(eNS_PREFIX);
+ setNsURI(eNS_URI);
+
+ // Obtain other dependent packages
+ ModulePackage theModulePackage = (ModulePackage)EPackage.Registry.INSTANCE.getEPackage(ModulePackage.eNS_URI);
+ TypesPackage theTypesPackage = (TypesPackage)EPackage.Registry.INSTANCE.getEPackage(TypesPackage.eNS_URI);
+
+ // Create type parameters
+
+ // Set bounds for type parameters
+
+ // Add supertypes to classes
+ linear_layersEClass.getESuperTypes().add(theModulePackage.getModel());
+ identityEClass.getESuperTypes().add(this.getLinear_layers());
+ linear_layers_1EClass.getESuperTypes().add(this.getLinear_layers());
+ linearEClass.getESuperTypes().add(this.getLinear_layers_1());
+ bilinearEClass.getESuperTypes().add(this.getLinear_layers_1());
+
+ // Initialize classes, features, and operations; add parameters
+ initEClass(linear_layersEClass, Linear_layers.class, "Linear_layers", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+
+ initEClass(identityEClass, Identity.class, "Identity", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+
+ initEClass(linear_layers_1EClass, Linear_layers_1.class, "Linear_layers_1", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ initEAttribute(getLinear_layers_1_Out_features(), theTypesPackage.getInteger(), "out_features", null, 1, 1, Linear_layers_1.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+ initEAttribute(getLinear_layers_1_Bias(), theTypesPackage.getBoolean(), "bias", null, 0, 1, Linear_layers_1.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+
+ initEClass(linearEClass, Linear.class, "Linear", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ initEAttribute(getLinear_In_features(), theTypesPackage.getInteger(), "in_features", null, 0, 1, Linear.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+ initEAttribute(getLinear_Activation(), theTypesPackage.getString(), "activation", null, 0, 1, Linear.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+ initEAttribute(getLinear_Kernel_initializer(), theTypesPackage.getString(), "kernel_initializer", null, 0, 1, Linear.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+ initEAttribute(getLinear_Bias_initializer(), theTypesPackage.getString(), "bias_initializer", null, 0, 1, Linear.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+
+ initEClass(bilinearEClass, Bilinear.class, "Bilinear", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ initEAttribute(getBilinear_In1_features(), theTypesPackage.getInteger(), "in1_features", null, 1, 1, Bilinear.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+ initEAttribute(getBilinear_In2_features(), theTypesPackage.getInteger(), "in2_features", null, 1, 1, Bilinear.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+ }
+
+} //Linear_layersPackageImpl
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Linear_layers/impl/Linear_layers_1Impl.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Linear_layers/impl/Linear_layers_1Impl.java
new file mode 100644
index 0000000..a07819d
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Linear_layers/impl/Linear_layers_1Impl.java
@@ -0,0 +1,229 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.Linear_layersPackage;
+import org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.Linear_layers_1;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Linear layers 1</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.impl.Linear_layers_1Impl#getOut_features <em>Out features</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.impl.Linear_layers_1Impl#isBias <em>Bias</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public abstract class Linear_layers_1Impl extends Linear_layersImpl implements Linear_layers_1 {
+ /**
+ * The default value of the '{@link #getOut_features() <em>Out features</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getOut_features()
+ * @generated
+ * @ordered
+ */
+ protected static final int OUT_FEATURES_EDEFAULT = 0;
+
+ /**
+ * The cached value of the '{@link #getOut_features() <em>Out features</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getOut_features()
+ * @generated
+ * @ordered
+ */
+ protected int out_features = OUT_FEATURES_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #isBias() <em>Bias</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #isBias()
+ * @generated
+ * @ordered
+ */
+ protected static final boolean BIAS_EDEFAULT = false;
+
+ /**
+ * The cached value of the '{@link #isBias() <em>Bias</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #isBias()
+ * @generated
+ * @ordered
+ */
+ protected boolean bias = BIAS_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected Linear_layers_1Impl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return Linear_layersPackage.Literals.LINEAR_LAYERS_1;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public int getOut_features() {
+ return out_features;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void setOut_features(int newOut_features) {
+ int oldOut_features = out_features;
+ out_features = newOut_features;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, Linear_layersPackage.LINEAR_LAYERS_1__OUT_FEATURES, oldOut_features, out_features));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean isBias() {
+ return bias;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void setBias(boolean newBias) {
+ boolean oldBias = bias;
+ bias = newBias;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, Linear_layersPackage.LINEAR_LAYERS_1__BIAS, oldBias, bias));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case Linear_layersPackage.LINEAR_LAYERS_1__OUT_FEATURES:
+ return getOut_features();
+ case Linear_layersPackage.LINEAR_LAYERS_1__BIAS:
+ return isBias();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case Linear_layersPackage.LINEAR_LAYERS_1__OUT_FEATURES:
+ setOut_features((Integer)newValue);
+ return;
+ case Linear_layersPackage.LINEAR_LAYERS_1__BIAS:
+ setBias((Boolean)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case Linear_layersPackage.LINEAR_LAYERS_1__OUT_FEATURES:
+ setOut_features(OUT_FEATURES_EDEFAULT);
+ return;
+ case Linear_layersPackage.LINEAR_LAYERS_1__BIAS:
+ setBias(BIAS_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case Linear_layersPackage.LINEAR_LAYERS_1__OUT_FEATURES:
+ return out_features != OUT_FEATURES_EDEFAULT;
+ case Linear_layersPackage.LINEAR_LAYERS_1__BIAS:
+ return bias != BIAS_EDEFAULT;
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuilder result = new StringBuilder(super.toString());
+ result.append(" (out_features: "); //$NON-NLS-1$
+ result.append(out_features);
+ result.append(", bias: "); //$NON-NLS-1$
+ result.append(bias);
+ result.append(')');
+ return result.toString();
+ }
+
+} //Linear_layers_1Impl
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Linear_layers/util/Linear_layersAdapterFactory.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Linear_layers/util/Linear_layersAdapterFactory.java
new file mode 100644
index 0000000..d3b2272
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Linear_layers/util/Linear_layersAdapterFactory.java
@@ -0,0 +1,220 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.util;
+
+import org.eclipse.emf.common.notify.Adapter;
+import org.eclipse.emf.common.notify.Notifier;
+
+import org.eclipse.emf.common.notify.impl.AdapterFactoryImpl;
+
+import org.eclipse.emf.ecore.EObject;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.*;
+import org.eclipse.papyrus.aiml.profile.AIML.Module.Model;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Adapter Factory</b> for the model.
+ * It provides an adapter <code>createXXX</code> method for each class of the model.
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.Linear_layersPackage
+ * @generated
+ */
+public class Linear_layersAdapterFactory extends AdapterFactoryImpl {
+ /**
+ * The cached model package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected static Linear_layersPackage modelPackage;
+
+ /**
+ * Creates an instance of the adapter factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Linear_layersAdapterFactory() {
+ if (modelPackage == null) {
+ modelPackage = Linear_layersPackage.eINSTANCE;
+ }
+ }
+
+ /**
+ * Returns whether this factory is applicable for the type of the object.
+ * <!-- begin-user-doc -->
+ * This implementation returns <code>true</code> if the object is either the model's package or is an instance object of the model.
+ * <!-- end-user-doc -->
+ * @return whether this factory is applicable for the type of the object.
+ * @generated
+ */
+ @Override
+ public boolean isFactoryForType(Object object) {
+ if (object == modelPackage) {
+ return true;
+ }
+ if (object instanceof EObject) {
+ return ((EObject)object).eClass().getEPackage() == modelPackage;
+ }
+ return false;
+ }
+
+ /**
+ * The switch that delegates to the <code>createXXX</code> methods.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected Linear_layersSwitch<Adapter> modelSwitch =
+ new Linear_layersSwitch<Adapter>() {
+ @Override
+ public Adapter caseLinear_layers(Linear_layers object) {
+ return createLinear_layersAdapter();
+ }
+ @Override
+ public Adapter caseIdentity(Identity object) {
+ return createIdentityAdapter();
+ }
+ @Override
+ public Adapter caseLinear_layers_1(Linear_layers_1 object) {
+ return createLinear_layers_1Adapter();
+ }
+ @Override
+ public Adapter caseLinear(Linear object) {
+ return createLinearAdapter();
+ }
+ @Override
+ public Adapter caseBilinear(Bilinear object) {
+ return createBilinearAdapter();
+ }
+ @Override
+ public Adapter caseModel(Model object) {
+ return createModelAdapter();
+ }
+ @Override
+ public Adapter defaultCase(EObject object) {
+ return createEObjectAdapter();
+ }
+ };
+
+ /**
+ * Creates an adapter for the <code>target</code>.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param target the object to adapt.
+ * @return the adapter for the <code>target</code>.
+ * @generated
+ */
+ @Override
+ public Adapter createAdapter(Notifier target) {
+ return modelSwitch.doSwitch((EObject)target);
+ }
+
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.Linear_layers <em>Linear layers</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.Linear_layers
+ * @generated
+ */
+ public Adapter createLinear_layersAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.Identity <em>Identity</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.Identity
+ * @generated
+ */
+ public Adapter createIdentityAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.Linear_layers_1 <em>Linear layers 1</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.Linear_layers_1
+ * @generated
+ */
+ public Adapter createLinear_layers_1Adapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.Linear <em>Linear</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.Linear
+ * @generated
+ */
+ public Adapter createLinearAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.Bilinear <em>Bilinear</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.Bilinear
+ * @generated
+ */
+ public Adapter createBilinearAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.aiml.profile.AIML.Module.Model <em>Model</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Module.Model
+ * @generated
+ */
+ public Adapter createModelAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for the default case.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @generated
+ */
+ public Adapter createEObjectAdapter() {
+ return null;
+ }
+
+} //Linear_layersAdapterFactory
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Linear_layers/util/Linear_layersSwitch.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Linear_layers/util/Linear_layersSwitch.java
new file mode 100644
index 0000000..4f3e661
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Linear_layers/util/Linear_layersSwitch.java
@@ -0,0 +1,230 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.util;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+
+import org.eclipse.emf.ecore.util.Switch;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.*;
+import org.eclipse.papyrus.aiml.profile.AIML.Module.Model;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Switch</b> for the model's inheritance hierarchy.
+ * It supports the call {@link #doSwitch(EObject) doSwitch(object)}
+ * to invoke the <code>caseXXX</code> method for each class of the model,
+ * starting with the actual class of the object
+ * and proceeding up the inheritance hierarchy
+ * until a non-null result is returned,
+ * which is the result of the switch.
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.Linear_layersPackage
+ * @generated
+ */
+public class Linear_layersSwitch<T> extends Switch<T> {
+ /**
+ * The cached model package
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected static Linear_layersPackage modelPackage;
+
+ /**
+ * Creates an instance of the switch.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Linear_layersSwitch() {
+ if (modelPackage == null) {
+ modelPackage = Linear_layersPackage.eINSTANCE;
+ }
+ }
+
+ /**
+ * Checks whether this is a switch for the given package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param ePackage the package in question.
+ * @return whether this is a switch for the given package.
+ * @generated
+ */
+ @Override
+ protected boolean isSwitchFor(EPackage ePackage) {
+ return ePackage == modelPackage;
+ }
+
+ /**
+ * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the first non-null result returned by a <code>caseXXX</code> call.
+ * @generated
+ */
+ @Override
+ protected T doSwitch(int classifierID, EObject theEObject) {
+ switch (classifierID) {
+ case Linear_layersPackage.LINEAR_LAYERS: {
+ Linear_layers linear_layers = (Linear_layers)theEObject;
+ T result = caseLinear_layers(linear_layers);
+ if (result == null) result = caseModel(linear_layers);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case Linear_layersPackage.IDENTITY: {
+ Identity identity = (Identity)theEObject;
+ T result = caseIdentity(identity);
+ if (result == null) result = caseLinear_layers(identity);
+ if (result == null) result = caseModel(identity);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case Linear_layersPackage.LINEAR_LAYERS_1: {
+ Linear_layers_1 linear_layers_1 = (Linear_layers_1)theEObject;
+ T result = caseLinear_layers_1(linear_layers_1);
+ if (result == null) result = caseLinear_layers(linear_layers_1);
+ if (result == null) result = caseModel(linear_layers_1);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case Linear_layersPackage.LINEAR: {
+ Linear linear = (Linear)theEObject;
+ T result = caseLinear(linear);
+ if (result == null) result = caseLinear_layers_1(linear);
+ if (result == null) result = caseLinear_layers(linear);
+ if (result == null) result = caseModel(linear);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case Linear_layersPackage.BILINEAR: {
+ Bilinear bilinear = (Bilinear)theEObject;
+ T result = caseBilinear(bilinear);
+ if (result == null) result = caseLinear_layers_1(bilinear);
+ if (result == null) result = caseLinear_layers(bilinear);
+ if (result == null) result = caseModel(bilinear);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ default: return defaultCase(theEObject);
+ }
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Linear layers</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Linear layers</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseLinear_layers(Linear_layers object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Identity</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Identity</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseIdentity(Identity object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Linear layers 1</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Linear layers 1</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseLinear_layers_1(Linear_layers_1 object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Linear</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Linear</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseLinear(Linear object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Bilinear</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Bilinear</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseBilinear(Bilinear object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Model</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Model</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseModel(Model object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>EObject</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch, but this is the last case anyway.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>EObject</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject)
+ * @generated
+ */
+ @Override
+ public T defaultCase(EObject object) {
+ return null;
+ }
+
+} //Linear_layersSwitch
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Loss_functions/BCELoss.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Loss_functions/BCELoss.java
new file mode 100644
index 0000000..51f1891
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Loss_functions/BCELoss.java
@@ -0,0 +1,26 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Loss_functions;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>BCE Loss</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Loss_functions.Loss_functionsPackage#getBCELoss()
+ * @model
+ * @generated
+ */
+public interface BCELoss extends Loss_functions_1_2 {
+} // BCELoss
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Loss_functions/BCEWithLogitsLoss.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Loss_functions/BCEWithLogitsLoss.java
new file mode 100644
index 0000000..116ef52
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Loss_functions/BCEWithLogitsLoss.java
@@ -0,0 +1,59 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Loss_functions;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Tensor.Tensor;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>BCE With Logits Loss</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Loss_functions.BCEWithLogitsLoss#getPos_weight <em>Pos weight</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Loss_functions.Loss_functionsPackage#getBCEWithLogitsLoss()
+ * @model
+ * @generated
+ */
+public interface BCEWithLogitsLoss extends Loss_functions_1_2 {
+ /**
+ * Returns the value of the '<em><b>Pos weight</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Pos weight</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Pos weight</em>' reference.
+ * @see #setPos_weight(Tensor)
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Loss_functions.Loss_functionsPackage#getBCEWithLogitsLoss_Pos_weight()
+ * @model ordered="false"
+ * @generated
+ */
+ Tensor getPos_weight();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.aiml.profile.AIML.Loss_functions.BCEWithLogitsLoss#getPos_weight <em>Pos weight</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Pos weight</em>' reference.
+ * @see #getPos_weight()
+ * @generated
+ */
+ void setPos_weight(Tensor value);
+
+} // BCEWithLogitsLoss
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Loss_functions/CTCLoss.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Loss_functions/CTCLoss.java
new file mode 100644
index 0000000..2ef7c84
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Loss_functions/CTCLoss.java
@@ -0,0 +1,85 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Loss_functions;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>CTC Loss</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Loss_functions.CTCLoss#getBlank <em>Blank</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Loss_functions.CTCLoss#isZero_infinity <em>Zero infinity</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Loss_functions.Loss_functionsPackage#getCTCLoss()
+ * @model
+ * @generated
+ */
+public interface CTCLoss extends Loss_functions {
+ /**
+ * Returns the value of the '<em><b>Blank</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Blank</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Blank</em>' attribute.
+ * @see #setBlank(int)
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Loss_functions.Loss_functionsPackage#getCTCLoss_Blank()
+ * @model dataType="org.eclipse.uml2.types.Integer" ordered="false"
+ * @generated
+ */
+ int getBlank();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.aiml.profile.AIML.Loss_functions.CTCLoss#getBlank <em>Blank</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Blank</em>' attribute.
+ * @see #getBlank()
+ * @generated
+ */
+ void setBlank(int value);
+
+ /**
+ * Returns the value of the '<em><b>Zero infinity</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Zero infinity</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Zero infinity</em>' attribute.
+ * @see #setZero_infinity(boolean)
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Loss_functions.Loss_functionsPackage#getCTCLoss_Zero_infinity()
+ * @model dataType="org.eclipse.uml2.types.Boolean" ordered="false"
+ * @generated
+ */
+ boolean isZero_infinity();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.aiml.profile.AIML.Loss_functions.CTCLoss#isZero_infinity <em>Zero infinity</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Zero infinity</em>' attribute.
+ * @see #isZero_infinity()
+ * @generated
+ */
+ void setZero_infinity(boolean value);
+
+} // CTCLoss
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Loss_functions/CosineEmbeddingLoss.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Loss_functions/CosineEmbeddingLoss.java
new file mode 100644
index 0000000..093229c
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Loss_functions/CosineEmbeddingLoss.java
@@ -0,0 +1,26 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Loss_functions;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Cosine Embedding Loss</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Loss_functions.Loss_functionsPackage#getCosineEmbeddingLoss()
+ * @model
+ * @generated
+ */
+public interface CosineEmbeddingLoss extends Loss_functions_1_1 {
+} // CosineEmbeddingLoss
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Loss_functions/CrossEntropyLoss.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Loss_functions/CrossEntropyLoss.java
new file mode 100644
index 0000000..512723f
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Loss_functions/CrossEntropyLoss.java
@@ -0,0 +1,26 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Loss_functions;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Cross Entropy Loss</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Loss_functions.Loss_functionsPackage#getCrossEntropyLoss()
+ * @model
+ * @generated
+ */
+public interface CrossEntropyLoss extends Loss_functions_1_2_1 {
+} // CrossEntropyLoss
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Loss_functions/HingeEmbeddingLoss.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Loss_functions/HingeEmbeddingLoss.java
new file mode 100644
index 0000000..9af4a0c
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Loss_functions/HingeEmbeddingLoss.java
@@ -0,0 +1,26 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Loss_functions;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Hinge Embedding Loss</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Loss_functions.Loss_functionsPackage#getHingeEmbeddingLoss()
+ * @model
+ * @generated
+ */
+public interface HingeEmbeddingLoss extends Loss_functions_1_1 {
+} // HingeEmbeddingLoss
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Loss_functions/KLDivLoss.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Loss_functions/KLDivLoss.java
new file mode 100644
index 0000000..0dfa10e
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Loss_functions/KLDivLoss.java
@@ -0,0 +1,26 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Loss_functions;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>KL Div Loss</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Loss_functions.Loss_functionsPackage#getKLDivLoss()
+ * @model
+ * @generated
+ */
+public interface KLDivLoss extends Loss_functions_1 {
+} // KLDivLoss
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Loss_functions/L1Loss.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Loss_functions/L1Loss.java
new file mode 100644
index 0000000..ad57e4f
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Loss_functions/L1Loss.java
@@ -0,0 +1,26 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Loss_functions;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>L1 Loss</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Loss_functions.Loss_functionsPackage#getL1Loss()
+ * @model
+ * @generated
+ */
+public interface L1Loss extends Loss_functions_1 {
+} // L1Loss
diff --git a/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Loss_functions/Loss_functions.java b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Loss_functions/Loss_functions.java
new file mode 100644
index 0000000..ccc5edc
--- /dev/null
+++ b/aiml/org.eclipse.papyrus.aiml.profile/src-gen/org/eclipse/papyrus/aiml/profile/AIML/Loss_functions/Loss_functions.java
@@ -0,0 +1,59 @@
+/**
+ * Copyright (c) 2020 CEA LIST
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v2.0 which
+ * accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ */
+package org.eclipse.papyrus.aiml.profile.AIML.Loss_functions;
+
+import org.eclipse.papyrus.aiml.profile.AIML.Module.Model;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Loss functions</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Loss_functions.Loss_functions#getReduction <em>Reduction</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.aiml.profile.AIML.Loss_functions.Loss_functionsPackage#getLoss_functions()
+ * @model abstract="true"
+ * @generate