Fix problems in JoinPseudoState

- Fix possible NPE which is a regression.
- Fix state entry notification for JOIN states.
- Fixes #229
This commit is contained in:
Janne Valkealahti
2016-11-06 14:39:19 +00:00
parent c48f671ee1
commit d1f7f31aeb
6 changed files with 1187 additions and 2 deletions

View File

@@ -0,0 +1,98 @@
/*
* Copyright 2016 the original author or authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.springframework.statemachine.buildtests;
import static org.hamcrest.Matchers.hasItem;
import static org.hamcrest.Matchers.not;
import static org.hamcrest.Matchers.startsWith;
import static org.junit.Assert.assertThat;
import java.util.ArrayList;
import org.junit.Test;
import org.springframework.context.annotation.AnnotationConfigApplicationContext;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.statemachine.StateMachine;
import org.springframework.statemachine.config.EnableStateMachine;
import org.springframework.statemachine.config.StateMachineConfigurerAdapter;
import org.springframework.statemachine.config.builders.StateMachineModelConfigurer;
import org.springframework.statemachine.config.model.StateMachineModelFactory;
import org.springframework.statemachine.listener.StateMachineListenerAdapter;
import org.springframework.statemachine.state.State;
import org.springframework.statemachine.test.StateMachineTestPlan;
import org.springframework.statemachine.test.StateMachineTestPlanBuilder;
import org.springframework.statemachine.uml.UmlStateMachineModelFactory;
@SuppressWarnings("unchecked")
public class LinkedRegionsTests extends AbstractBuildTests {
@Test
public void testSimpleFlow() throws Exception {
context.register(Config1.class);
context.refresh();
StateMachine<String, String> stateMachine = context.getBean(StateMachine.class);
TestListener listener = new TestListener();
stateMachine.addStateListener(listener);
StateMachineTestPlan<String, String> plan =
StateMachineTestPlanBuilder.<String, String>builder()
.stateMachine(stateMachine)
.step().expectStateChanged(19).expectStates("S3").and()
.build();
plan.test();
assertThat(listener.statesEntered, not(hasItem(startsWith("JOIN"))));
}
@Configuration
@EnableStateMachine
public static class Config1 extends StateMachineConfigurerAdapter<String, String> {
@Override
public void configure(StateMachineModelConfigurer<String, String> model) throws Exception {
model
.withModel()
.factory(modelFactory());
}
@Bean
public StateMachineModelFactory<String, String> modelFactory() {
return new UmlStateMachineModelFactory("classpath:org/springframework/statemachine/buildtests/linked-regions.uml");
}
}
static class TestListener extends StateMachineListenerAdapter<String, String> {
final ArrayList<String> statesEntered = new ArrayList<>();
@Override
public void stateEntered(State<String, String> state) {
statesEntered.add(state.getId());
if (state.getId().startsWith("JOIN")) {
System.out.println(state);
}
}
void print() {
statesEntered.stream().forEach(System.out::println);
}
}
@Override
protected AnnotationConfigApplicationContext buildContext() {
return new AnnotationConfigApplicationContext();
}
}

View File

@@ -0,0 +1,2 @@
<?xml version="1.0" encoding="UTF-8"?>
<xmi:XMI xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI"/>

View File

@@ -0,0 +1,982 @@
<?xml version="1.0" encoding="UTF-8"?>
<notation:Diagram xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:notation="http://www.eclipse.org/gmf/runtime/1.0.2/notation" xmlns:style="http://www.eclipse.org/papyrus/infra/viewpoints/policy/style" xmlns:uml="http://www.eclipse.org/uml2/5.0.0/UML" xmi:id="_2MP68CHSEeae5aYuVP_vwQ" type="PapyrusUMLStateMachineDiagram" name="StateMachine Diagram" measurementUnit="Pixel">
<children xmi:type="notation:Shape" xmi:id="_2MP68SHSEeae5aYuVP_vwQ" type="2000">
<children xmi:type="notation:DecorationNode" xmi:id="_2MP68iHSEeae5aYuVP_vwQ" type="2001">
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_2MP68yHSEeae5aYuVP_vwQ" width="1538" height="23"/>
</children>
<children xmi:type="notation:DecorationNode" xmi:id="_2MP69CHSEeae5aYuVP_vwQ" type="2002">
<children xmi:type="notation:Shape" xmi:id="_2MP69SHSEeae5aYuVP_vwQ" type="3000">
<eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_2MP69iHSEeae5aYuVP_vwQ" source="RegionAnnotationKey">
<details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_2MP69yHSEeae5aYuVP_vwQ" key="RegionZoneKey" value=""/>
</eAnnotations>
<children xmi:type="notation:DecorationNode" xmi:id="_2MP6-CHSEeae5aYuVP_vwQ" type="3002">
<children xmi:type="notation:Shape" xmi:id="_Dz4jYCHVEeaZftaCMtSpsw" type="6000">
<children xmi:type="notation:DecorationNode" xmi:id="_Dz5KcCHVEeaZftaCMtSpsw" type="6001">
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_F6wJQSHVEeaZftaCMtSpsw" width="481" height="23"/>
</children>
<children xmi:type="notation:DecorationNode" xmi:id="_Dz5KcSHVEeaZftaCMtSpsw" type="19003">
<layoutConstraint xmi:type="notation:Location" xmi:id="_Dz5xgCHVEeaZftaCMtSpsw" x="40"/>
</children>
<children xmi:type="notation:DecorationNode" xmi:id="_Dz5xgSHVEeaZftaCMtSpsw" type="6002">
<eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_F6rQwCHVEeaZftaCMtSpsw" source="PapyrusCSSForceValue">
<details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_F6r30CHVEeaZftaCMtSpsw" key="visible" value="true"/>
</eAnnotations>
<children xmi:type="notation:Shape" xmi:id="_F6viMCHVEeaZftaCMtSpsw" type="3000">
<eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_F6viNCHVEeaZftaCMtSpsw" source="RegionAnnotationKey">
<details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_F6wJQCHVEeaZftaCMtSpsw" key="RegionZoneKey" value="T"/>
</eAnnotations>
<children xmi:type="notation:DecorationNode" xmi:id="_F6viMiHVEeaZftaCMtSpsw" type="3002">
<children xmi:type="notation:Shape" xmi:id="_Hm4T4CHVEeaZftaCMtSpsw" type="6000">
<children xmi:type="notation:DecorationNode" xmi:id="_Hm4T4iHVEeaZftaCMtSpsw" type="6001">
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_MWp1tiHVEeaZftaCMtSpsw" width="231" height="23"/>
</children>
<children xmi:type="notation:DecorationNode" xmi:id="_Hm4T4yHVEeaZftaCMtSpsw" type="19003">
<layoutConstraint xmi:type="notation:Location" xmi:id="_Hm4T5CHVEeaZftaCMtSpsw" x="40"/>
</children>
<children xmi:type="notation:DecorationNode" xmi:id="_Hm468CHVEeaZftaCMtSpsw" type="6002">
<eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_MWonkCHVEeaZftaCMtSpsw" source="PapyrusCSSForceValue">
<details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_MWpOoCHVEeaZftaCMtSpsw" key="visible" value="true"/>
</eAnnotations>
<children xmi:type="notation:Shape" xmi:id="_MWp1sCHVEeaZftaCMtSpsw" type="3000">
<eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_MWp1tCHVEeaZftaCMtSpsw" source="RegionAnnotationKey">
<details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_MWp1tSHVEeaZftaCMtSpsw" key="RegionZoneKey" value="B"/>
</eAnnotations>
<children xmi:type="notation:DecorationNode" xmi:id="_MWp1siHVEeaZftaCMtSpsw" type="3002">
<children xmi:type="notation:Shape" xmi:id="_O2JW8CHVEeaZftaCMtSpsw" type="6000">
<children xmi:type="notation:DecorationNode" xmi:id="_O2J-ACHVEeaZftaCMtSpsw" type="6001">
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_dBNugSHVEeaZftaCMtSpsw" width="125"/>
</children>
<children xmi:type="notation:DecorationNode" xmi:id="_O2J-ASHVEeaZftaCMtSpsw" type="19003">
<layoutConstraint xmi:type="notation:Location" xmi:id="_O2J-AiHVEeaZftaCMtSpsw" x="40"/>
</children>
<children xmi:type="notation:DecorationNode" xmi:id="_O2J-AyHVEeaZftaCMtSpsw" type="6002">
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_O2J-BCHVEeaZftaCMtSpsw" y="-1" width="125"/>
</children>
<element xmi:type="uml:State" href="linked-regions.uml#_O2BbICHVEeaZftaCMtSpsw"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_O2JW8SHVEeaZftaCMtSpsw" x="74" y="25" width="125" height="60"/>
</children>
<children xmi:type="notation:Shape" xmi:id="_k0Z-ACHVEeaZftaCMtSpsw" type="8000">
<children xmi:type="notation:DecorationNode" xmi:id="_k0alECHVEeaZftaCMtSpsw" type="8001">
<layoutConstraint xmi:type="notation:Location" xmi:id="_k0alESHVEeaZftaCMtSpsw" x="25" y="3"/>
</children>
<children xmi:type="notation:DecorationNode" xmi:id="_k0alEiHVEeaZftaCMtSpsw" type="8002">
<layoutConstraint xmi:type="notation:Location" xmi:id="_k0alEyHVEeaZftaCMtSpsw" x="25" y="-10"/>
</children>
<element xmi:type="uml:Pseudostate" href="linked-regions.uml#_k0KGYCHVEeaZftaCMtSpsw"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_k0Z-ASHVEeaZftaCMtSpsw" x="20" y="42"/>
</children>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_MWp1syHVEeaZftaCMtSpsw"/>
</children>
<element xmi:type="uml:Region" href="linked-regions.uml#_MWpOoSHVEeaZftaCMtSpsw"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_MWp1sSHVEeaZftaCMtSpsw" y="102" width="231" height="102"/>
</children>
<children xmi:type="notation:Shape" xmi:id="_NAxwwCHVEeaZftaCMtSpsw" type="3000">
<eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_NAxwxCHVEeaZftaCMtSpsw" source="RegionAnnotationKey">
<details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_NAxwxSHVEeaZftaCMtSpsw" key="RegionZoneKey" value="T"/>
</eAnnotations>
<children xmi:type="notation:DecorationNode" xmi:id="_NAxwwiHVEeaZftaCMtSpsw" type="3002">
<children xmi:type="notation:Shape" xmi:id="_NtPOICHVEeaZftaCMtSpsw" type="6000">
<children xmi:type="notation:DecorationNode" xmi:id="_NtPOIiHVEeaZftaCMtSpsw" type="6001">
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_Ywx0ECHVEeaZftaCMtSpsw" width="125"/>
</children>
<children xmi:type="notation:DecorationNode" xmi:id="_NtPOIyHVEeaZftaCMtSpsw" type="19003">
<layoutConstraint xmi:type="notation:Location" xmi:id="_NtPOJCHVEeaZftaCMtSpsw" x="40"/>
</children>
<children xmi:type="notation:DecorationNode" xmi:id="_NtPOJSHVEeaZftaCMtSpsw" type="6002">
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_NtPOJiHVEeaZftaCMtSpsw" y="-1" width="125"/>
</children>
<element xmi:type="uml:State" href="linked-regions.uml#_NtH5YCHVEeaZftaCMtSpsw"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_NtPOISHVEeaZftaCMtSpsw" x="74" y="11" width="125" height="60"/>
</children>
<children xmi:type="notation:Shape" xmi:id="_j9RhsCHVEeaZftaCMtSpsw" type="8000">
<children xmi:type="notation:DecorationNode" xmi:id="_j9RhsiHVEeaZftaCMtSpsw" type="8001">
<layoutConstraint xmi:type="notation:Location" xmi:id="_j9RhsyHVEeaZftaCMtSpsw" x="25" y="3"/>
</children>
<children xmi:type="notation:DecorationNode" xmi:id="_j9RhtCHVEeaZftaCMtSpsw" type="8002">
<layoutConstraint xmi:type="notation:Location" xmi:id="_j9RhtSHVEeaZftaCMtSpsw" x="25" y="-10"/>
</children>
<element xmi:type="uml:Pseudostate" href="linked-regions.uml#_j8_N0CHVEeaZftaCMtSpsw"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_j9RhsSHVEeaZftaCMtSpsw" x="20" y="28"/>
</children>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_NAxwwyHVEeaZftaCMtSpsw"/>
</children>
<element xmi:type="uml:Region" href="linked-regions.uml#_NAxJsCHVEeaZftaCMtSpsw"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_NAxwwSHVEeaZftaCMtSpsw" width="231" height="102"/>
</children>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_Hm468SHVEeaZftaCMtSpsw" y="23" width="231" height="205"/>
</children>
<element xmi:type="uml:State" href="linked-regions.uml#_Hmy0UCHVEeaZftaCMtSpsw"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_Hm4T4SHVEeaZftaCMtSpsw" x="95" y="15" width="231" height="228"/>
</children>
<children xmi:type="notation:Shape" xmi:id="_jGLhoCHVEeaZftaCMtSpsw" type="8000">
<children xmi:type="notation:DecorationNode" xmi:id="_jGMIsCHVEeaZftaCMtSpsw" type="8001">
<layoutConstraint xmi:type="notation:Location" xmi:id="_jGMIsSHVEeaZftaCMtSpsw" x="25" y="3"/>
</children>
<children xmi:type="notation:DecorationNode" xmi:id="_jGMIsiHVEeaZftaCMtSpsw" type="8002">
<layoutConstraint xmi:type="notation:Location" xmi:id="_jGMIsyHVEeaZftaCMtSpsw" x="25" y="-10"/>
</children>
<element xmi:type="uml:Pseudostate" href="linked-regions.uml#_jF7qACHVEeaZftaCMtSpsw"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_jGLhoSHVEeaZftaCMtSpsw" x="22" y="58"/>
</children>
<children xmi:type="notation:Shape" xmi:id="_qQPCoCHXEeaZftaCMtSpsw" type="9000">
<children xmi:type="notation:DecorationNode" xmi:id="_qQPCoiHXEeaZftaCMtSpsw" type="9001">
<layoutConstraint xmi:type="notation:Location" xmi:id="_qQPCoyHXEeaZftaCMtSpsw" x="-17" y="-21"/>
</children>
<children xmi:type="notation:DecorationNode" xmi:id="_qQPCpCHXEeaZftaCMtSpsw" type="9002">
<layoutConstraint xmi:type="notation:Location" xmi:id="_qQPCpSHXEeaZftaCMtSpsw" x="25" y="-10"/>
</children>
<element xmi:type="uml:Pseudostate" href="linked-regions.uml#_qPy9wCHXEeaZftaCMtSpsw"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_qQPCoSHXEeaZftaCMtSpsw" x="397" y="58" width="8" height="157"/>
</children>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_F6viMyHVEeaZftaCMtSpsw"/>
</children>
<element xmi:type="uml:Region" href="linked-regions.uml#_F6tF8CHVEeaZftaCMtSpsw"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_F6viMSHVEeaZftaCMtSpsw" width="481" height="274"/>
</children>
<children xmi:type="notation:Shape" xmi:id="_GWNWMCHVEeaZftaCMtSpsw" type="3000">
<eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_GWNWNCHVEeaZftaCMtSpsw" source="RegionAnnotationKey">
<details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_GWNWNSHVEeaZftaCMtSpsw" key="RegionZoneKey" value="B"/>
</eAnnotations>
<children xmi:type="notation:DecorationNode" xmi:id="_GWNWMiHVEeaZftaCMtSpsw" type="3002">
<children xmi:type="notation:Shape" xmi:id="_J3lyQCHVEeaZftaCMtSpsw" type="6000">
<children xmi:type="notation:DecorationNode" xmi:id="_J3mZUCHVEeaZftaCMtSpsw" type="6001">
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_P-sTZCHVEeaZftaCMtSpsw" width="231" height="23"/>
</children>
<children xmi:type="notation:DecorationNode" xmi:id="_J3mZUSHVEeaZftaCMtSpsw" type="19003">
<layoutConstraint xmi:type="notation:Location" xmi:id="_J3mZUiHVEeaZftaCMtSpsw" x="40"/>
</children>
<children xmi:type="notation:DecorationNode" xmi:id="_J3mZUyHVEeaZftaCMtSpsw" type="6002">
<eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_P-qeMCHVEeaZftaCMtSpsw" source="PapyrusCSSForceValue">
<details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_P-rFQCHVEeaZftaCMtSpsw" key="visible" value="true"/>
</eAnnotations>
<children xmi:type="notation:Shape" xmi:id="_P-rsUSHVEeaZftaCMtSpsw" type="3000">
<eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_P-sTYiHVEeaZftaCMtSpsw" source="RegionAnnotationKey">
<details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_P-sTYyHVEeaZftaCMtSpsw" key="RegionZoneKey" value="B"/>
</eAnnotations>
<children xmi:type="notation:DecorationNode" xmi:id="_P-sTYCHVEeaZftaCMtSpsw" type="3002">
<children xmi:type="notation:Shape" xmi:id="_SX0G4CHVEeaZftaCMtSpsw" type="6000">
<children xmi:type="notation:DecorationNode" xmi:id="_SX0G4iHVEeaZftaCMtSpsw" type="6001">
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_dBMgYCHVEeaZftaCMtSpsw" width="125"/>
</children>
<children xmi:type="notation:DecorationNode" xmi:id="_SX0G4yHVEeaZftaCMtSpsw" type="19003">
<layoutConstraint xmi:type="notation:Location" xmi:id="_SX0G5CHVEeaZftaCMtSpsw" x="40"/>
</children>
<children xmi:type="notation:DecorationNode" xmi:id="_SX0G5SHVEeaZftaCMtSpsw" type="6002">
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_SX0G5iHVEeaZftaCMtSpsw" y="-1" width="125"/>
</children>
<element xmi:type="uml:State" href="linked-regions.uml#_SXqV4CHVEeaZftaCMtSpsw"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_SX0G4SHVEeaZftaCMtSpsw" x="74" y="20" width="125" height="60"/>
</children>
<children xmi:type="notation:Shape" xmi:id="_mWJdkCHVEeaZftaCMtSpsw" type="8000">
<children xmi:type="notation:DecorationNode" xmi:id="_mWKEoCHVEeaZftaCMtSpsw" type="8001">
<layoutConstraint xmi:type="notation:Location" xmi:id="_mWKEoSHVEeaZftaCMtSpsw" x="25" y="3"/>
</children>
<children xmi:type="notation:DecorationNode" xmi:id="_mWKEoiHVEeaZftaCMtSpsw" type="8002">
<layoutConstraint xmi:type="notation:Location" xmi:id="_mWKEoyHVEeaZftaCMtSpsw" x="25" y="-10"/>
</children>
<element xmi:type="uml:Pseudostate" href="linked-regions.uml#_mV60ECHVEeaZftaCMtSpsw"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_mWJdkSHVEeaZftaCMtSpsw" x="20" y="31"/>
</children>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_P-sTYSHVEeaZftaCMtSpsw"/>
</children>
<element xmi:type="uml:Region" href="linked-regions.uml#_P-rsUCHVEeaZftaCMtSpsw"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_P-rsUiHVEeaZftaCMtSpsw" y="104" width="231" height="101"/>
</children>
<children xmi:type="notation:Shape" xmi:id="_QR6xYCHVEeaZftaCMtSpsw" type="3000">
<eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_QR6xZCHVEeaZftaCMtSpsw" source="RegionAnnotationKey">
<details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_QR6xZSHVEeaZftaCMtSpsw" key="RegionZoneKey" value="T"/>
</eAnnotations>
<children xmi:type="notation:DecorationNode" xmi:id="_QR6xYiHVEeaZftaCMtSpsw" type="3002">
<children xmi:type="notation:Shape" xmi:id="_Q-bSECHVEeaZftaCMtSpsw" type="6000">
<children xmi:type="notation:DecorationNode" xmi:id="_Q-bSEiHVEeaZftaCMtSpsw" type="6001">
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_dBNugCHVEeaZftaCMtSpsw" width="125"/>
</children>
<children xmi:type="notation:DecorationNode" xmi:id="_Q-bSEyHVEeaZftaCMtSpsw" type="19003">
<layoutConstraint xmi:type="notation:Location" xmi:id="_Q-bSFCHVEeaZftaCMtSpsw" x="40"/>
</children>
<children xmi:type="notation:DecorationNode" xmi:id="_Q-bSFSHVEeaZftaCMtSpsw" type="6002">
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_Q-bSFiHVEeaZftaCMtSpsw" y="-1" width="125"/>
</children>
<element xmi:type="uml:State" href="linked-regions.uml#_Q-SIICHVEeaZftaCMtSpsw"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_Q-bSESHVEeaZftaCMtSpsw" x="74" y="19" width="125" height="60"/>
</children>
<children xmi:type="notation:Shape" xmi:id="_lkQGkCHVEeaZftaCMtSpsw" type="8000">
<children xmi:type="notation:DecorationNode" xmi:id="_lkQGkiHVEeaZftaCMtSpsw" type="8001">
<layoutConstraint xmi:type="notation:Location" xmi:id="_lkQGkyHVEeaZftaCMtSpsw" x="25" y="3"/>
</children>
<children xmi:type="notation:DecorationNode" xmi:id="_lkQGlCHVEeaZftaCMtSpsw" type="8002">
<layoutConstraint xmi:type="notation:Location" xmi:id="_lkQGlSHVEeaZftaCMtSpsw" x="25" y="-10"/>
</children>
<element xmi:type="uml:Pseudostate" href="linked-regions.uml#_lj_A0CHVEeaZftaCMtSpsw"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_lkQGkSHVEeaZftaCMtSpsw" x="20" y="31"/>
</children>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_QR6xYyHVEeaZftaCMtSpsw"/>
</children>
<element xmi:type="uml:Region" href="linked-regions.uml#_QR6KUCHVEeaZftaCMtSpsw"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_QR6xYSHVEeaZftaCMtSpsw" width="231" height="104"/>
</children>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_J3mZVCHVEeaZftaCMtSpsw" y="23" width="231" height="205"/>
</children>
<element xmi:type="uml:State" href="linked-regions.uml#_J3gSsCHVEeaZftaCMtSpsw"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_J3lyQSHVEeaZftaCMtSpsw" x="95" y="20" width="231" height="228"/>
</children>
<children xmi:type="notation:Shape" xmi:id="_qFljwCHVEeaZftaCMtSpsw" type="8000">
<children xmi:type="notation:DecorationNode" xmi:id="_qFmK0SHVEeaZftaCMtSpsw" type="8001">
<layoutConstraint xmi:type="notation:Location" xmi:id="_qFmK0iHVEeaZftaCMtSpsw" x="25" y="3"/>
</children>
<children xmi:type="notation:DecorationNode" xmi:id="_qFmK0yHVEeaZftaCMtSpsw" type="8002">
<layoutConstraint xmi:type="notation:Location" xmi:id="_qFmK1CHVEeaZftaCMtSpsw" x="25" y="-10"/>
</children>
<element xmi:type="uml:Pseudostate" href="linked-regions.uml#_qFSo0CHVEeaZftaCMtSpsw"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_qFmK0CHVEeaZftaCMtSpsw" x="22" y="65"/>
</children>
<children xmi:type="notation:Shape" xmi:id="_z6ycYCHXEeaZftaCMtSpsw" type="9000">
<children xmi:type="notation:DecorationNode" xmi:id="_z6ycYiHXEeaZftaCMtSpsw" type="9001">
<layoutConstraint xmi:type="notation:Location" xmi:id="_z6ycYyHXEeaZftaCMtSpsw" x="-18" y="-24"/>
</children>
<children xmi:type="notation:DecorationNode" xmi:id="_z6ycZCHXEeaZftaCMtSpsw" type="9002">
<layoutConstraint xmi:type="notation:Location" xmi:id="_z6ycZSHXEeaZftaCMtSpsw" x="25" y="-10"/>
</children>
<element xmi:type="uml:Pseudostate" href="linked-regions.uml#_z6VJYCHXEeaZftaCMtSpsw"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_z6ycYSHXEeaZftaCMtSpsw" x="397" y="67" width="8" height="157"/>
</children>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_GWNWMyHVEeaZftaCMtSpsw"/>
</children>
<element xmi:type="uml:Region" href="linked-regions.uml#_GWMIECHVEeaZftaCMtSpsw"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_GWNWMSHVEeaZftaCMtSpsw" y="274" width="481" height="274"/>
</children>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_Dz5xgiHVEeaZftaCMtSpsw" y="23" width="481" height="549"/>
</children>
<element xmi:type="uml:State" href="linked-regions.uml#_DzorwCHVEeaZftaCMtSpsw"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_Dz4jYSHVEeaZftaCMtSpsw" x="94" y="14" width="481" height="572"/>
</children>
<children xmi:type="notation:Shape" xmi:id="_iCf3ECHVEeaZftaCMtSpsw" type="8000">
<children xmi:type="notation:DecorationNode" xmi:id="_iCgeICHVEeaZftaCMtSpsw" type="8001">
<layoutConstraint xmi:type="notation:Location" xmi:id="_iCgeISHVEeaZftaCMtSpsw" x="25" y="3"/>
</children>
<children xmi:type="notation:DecorationNode" xmi:id="_iCgeIiHVEeaZftaCMtSpsw" type="8002">
<layoutConstraint xmi:type="notation:Location" xmi:id="_iCgeIyHVEeaZftaCMtSpsw" x="25" y="-10"/>
</children>
<element xmi:type="uml:Pseudostate" href="linked-regions.uml#_iCRNkCHVEeaZftaCMtSpsw"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_iCf3ESHVEeaZftaCMtSpsw" x="14" y="66"/>
</children>
<children xmi:type="notation:Shape" xmi:id="_Gler0CHWEeaZftaCMtSpsw" type="6000">
<children xmi:type="notation:DecorationNode" xmi:id="_Gler0iHWEeaZftaCMtSpsw" type="6001">
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_Ht8vwCHWEeaZftaCMtSpsw" width="481" height="23"/>
</children>
<children xmi:type="notation:DecorationNode" xmi:id="_Gler0yHWEeaZftaCMtSpsw" type="19003">
<layoutConstraint xmi:type="notation:Location" xmi:id="_Gler1CHWEeaZftaCMtSpsw" x="40"/>
</children>
<children xmi:type="notation:DecorationNode" xmi:id="_Gler1SHWEeaZftaCMtSpsw" type="6002">
<eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_LeY7gCHWEeaZftaCMtSpsw" source="PapyrusCSSForceValue">
<details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_LeY7gSHWEeaZftaCMtSpsw" key="visible" value="true"/>
</eAnnotations>
<children xmi:type="notation:Shape" xmi:id="_LeZikCHWEeaZftaCMtSpsw" type="3000">
<eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_LeZilCHWEeaZftaCMtSpsw" source="RegionAnnotationKey">
<details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_LeZilSHWEeaZftaCMtSpsw" key="RegionZoneKey" value="B"/>
</eAnnotations>
<children xmi:type="notation:DecorationNode" xmi:id="_LeZikiHWEeaZftaCMtSpsw" type="3002">
<children xmi:type="notation:Shape" xmi:id="_VIGnwCHWEeaZftaCMtSpsw" type="6000">
<children xmi:type="notation:DecorationNode" xmi:id="_VIGnwiHWEeaZftaCMtSpsw" type="6001">
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_XUoJsCHWEeaZftaCMtSpsw" width="231" height="23"/>
</children>
<children xmi:type="notation:DecorationNode" xmi:id="_VIGnwyHWEeaZftaCMtSpsw" type="19003">
<layoutConstraint xmi:type="notation:Location" xmi:id="_VIGnxCHWEeaZftaCMtSpsw" x="40"/>
</children>
<children xmi:type="notation:DecorationNode" xmi:id="_VIGnxSHWEeaZftaCMtSpsw" type="6002">
<eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_j4Lw4CHWEeaZftaCMtSpsw" source="PapyrusCSSForceValue">
<details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_j4MX8CHWEeaZftaCMtSpsw" key="visible" value="true"/>
</eAnnotations>
<children xmi:type="notation:Shape" xmi:id="_j4M_ACHWEeaZftaCMtSpsw" type="3000">
<eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_j4M_BCHWEeaZftaCMtSpsw" source="RegionAnnotationKey">
<details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_j4M_BSHWEeaZftaCMtSpsw" key="RegionZoneKey" value="B"/>
</eAnnotations>
<children xmi:type="notation:DecorationNode" xmi:id="_j4M_AiHWEeaZftaCMtSpsw" type="3002">
<children xmi:type="notation:Shape" xmi:id="_lG9RICHWEeaZftaCMtSpsw" type="6000">
<children xmi:type="notation:DecorationNode" xmi:id="_lG9RIiHWEeaZftaCMtSpsw" type="6001">
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_nC6ngCHWEeaZftaCMtSpsw" width="125"/>
</children>
<children xmi:type="notation:DecorationNode" xmi:id="_lG9RIyHWEeaZftaCMtSpsw" type="19003">
<layoutConstraint xmi:type="notation:Location" xmi:id="_lG9RJCHWEeaZftaCMtSpsw" x="40"/>
</children>
<children xmi:type="notation:DecorationNode" xmi:id="_lG9RJSHWEeaZftaCMtSpsw" type="6002">
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_lG9RJiHWEeaZftaCMtSpsw" y="-1" width="125"/>
</children>
<element xmi:type="uml:State" href="linked-regions.uml#_lGpIECHWEeaZftaCMtSpsw"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_lG9RISHWEeaZftaCMtSpsw" x="77" y="17" width="125" height="60"/>
</children>
<children xmi:type="notation:Shape" xmi:id="_2zWaYCHWEeaZftaCMtSpsw" type="8000">
<children xmi:type="notation:DecorationNode" xmi:id="_2zWaYiHWEeaZftaCMtSpsw" type="8001">
<layoutConstraint xmi:type="notation:Location" xmi:id="_2zWaYyHWEeaZftaCMtSpsw" x="25" y="3"/>
</children>
<children xmi:type="notation:DecorationNode" xmi:id="_2zWaZCHWEeaZftaCMtSpsw" type="8002">
<layoutConstraint xmi:type="notation:Location" xmi:id="_2zWaZSHWEeaZftaCMtSpsw" x="25" y="-10"/>
</children>
<element xmi:type="uml:Pseudostate" href="linked-regions.uml#_2y-m8CHWEeaZftaCMtSpsw"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_2zWaYSHWEeaZftaCMtSpsw" x="20" y="28"/>
</children>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_j4M_AyHWEeaZftaCMtSpsw"/>
</children>
<element xmi:type="uml:Region" href="linked-regions.uml#_j4MX8SHWEeaZftaCMtSpsw"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_j4M_ASHWEeaZftaCMtSpsw" y="107" width="231" height="107"/>
</children>
<children xmi:type="notation:Shape" xmi:id="_kMPVUCHWEeaZftaCMtSpsw" type="3000">
<eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_kMPVVCHWEeaZftaCMtSpsw" source="RegionAnnotationKey">
<details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_kMPVVSHWEeaZftaCMtSpsw" key="RegionZoneKey" value="T"/>
</eAnnotations>
<children xmi:type="notation:DecorationNode" xmi:id="_kMPVUiHWEeaZftaCMtSpsw" type="3002">
<children xmi:type="notation:Shape" xmi:id="_koHZACHWEeaZftaCMtSpsw" type="6000">
<children xmi:type="notation:DecorationNode" xmi:id="_koIAECHWEeaZftaCMtSpsw" type="6001">
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_nC7OkCHWEeaZftaCMtSpsw" width="125"/>
</children>
<children xmi:type="notation:DecorationNode" xmi:id="_koIAESHWEeaZftaCMtSpsw" type="19003">
<layoutConstraint xmi:type="notation:Location" xmi:id="_koIAEiHWEeaZftaCMtSpsw" x="40"/>
</children>
<children xmi:type="notation:DecorationNode" xmi:id="_koIAEyHWEeaZftaCMtSpsw" type="6002">
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_koIAFCHWEeaZftaCMtSpsw" y="-1" width="125"/>
</children>
<element xmi:type="uml:State" href="linked-regions.uml#_kn0eECHWEeaZftaCMtSpsw"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_koHZASHWEeaZftaCMtSpsw" x="77" y="19" width="125" height="60"/>
</children>
<children xmi:type="notation:Shape" xmi:id="_1u6h4CHWEeaZftaCMtSpsw" type="8000">
<children xmi:type="notation:DecorationNode" xmi:id="_1u7I8CHWEeaZftaCMtSpsw" type="8001">
<layoutConstraint xmi:type="notation:Location" xmi:id="_1u7I8SHWEeaZftaCMtSpsw" x="25" y="3"/>
</children>
<children xmi:type="notation:DecorationNode" xmi:id="_1u7I8iHWEeaZftaCMtSpsw" type="8002">
<layoutConstraint xmi:type="notation:Location" xmi:id="_1u7I8yHWEeaZftaCMtSpsw" x="25" y="-10"/>
</children>
<element xmi:type="uml:Pseudostate" href="linked-regions.uml#_1ufrICHWEeaZftaCMtSpsw"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_1u6h4SHWEeaZftaCMtSpsw" x="20" y="31"/>
</children>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_kMPVUyHWEeaZftaCMtSpsw"/>
</children>
<element xmi:type="uml:Region" href="linked-regions.uml#_kMOuQCHWEeaZftaCMtSpsw"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_kMPVUSHWEeaZftaCMtSpsw" width="231" height="107"/>
</children>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_VIGnxiHWEeaZftaCMtSpsw" y="23" width="231" height="215"/>
</children>
<element xmi:type="uml:State" href="linked-regions.uml#_VH0T4CHWEeaZftaCMtSpsw"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_VIGnwSHWEeaZftaCMtSpsw" x="93" y="15" width="231" height="238"/>
</children>
<children xmi:type="notation:Shape" xmi:id="_z8wAsCHWEeaZftaCMtSpsw" type="8000">
<children xmi:type="notation:DecorationNode" xmi:id="_z8wAsiHWEeaZftaCMtSpsw" type="8001">
<layoutConstraint xmi:type="notation:Location" xmi:id="_z8wAsyHWEeaZftaCMtSpsw" x="25" y="3"/>
</children>
<children xmi:type="notation:DecorationNode" xmi:id="_z8wAtCHWEeaZftaCMtSpsw" type="8002">
<layoutConstraint xmi:type="notation:Location" xmi:id="_z8wAtSHWEeaZftaCMtSpsw" x="25" y="-10"/>
</children>
<element xmi:type="uml:Pseudostate" href="linked-regions.uml#_z8XmMCHWEeaZftaCMtSpsw"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_z8wAsSHWEeaZftaCMtSpsw" x="25" y="60"/>
</children>
<children xmi:type="notation:Shape" xmi:id="_sSBz4CHaEeaZftaCMtSpsw" type="9000">
<children xmi:type="notation:DecorationNode" xmi:id="_sSBz4iHaEeaZftaCMtSpsw" type="9001">
<layoutConstraint xmi:type="notation:Location" xmi:id="_sSBz4yHaEeaZftaCMtSpsw" x="-16" y="-26"/>
</children>
<children xmi:type="notation:DecorationNode" xmi:id="_sSBz5CHaEeaZftaCMtSpsw" type="9002">
<layoutConstraint xmi:type="notation:Location" xmi:id="_sSBz5SHaEeaZftaCMtSpsw" x="25" y="-10"/>
</children>
<element xmi:type="uml:Pseudostate" href="linked-regions.uml#_sRkg4CHaEeaZftaCMtSpsw"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_sSBz4SHaEeaZftaCMtSpsw" x="400" y="62" width="8" height="157"/>
</children>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_LeZikyHWEeaZftaCMtSpsw"/>
</children>
<element xmi:type="uml:Region" href="linked-regions.uml#_LeY7giHWEeaZftaCMtSpsw"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_LeZikSHWEeaZftaCMtSpsw" y="279" width="481" height="269"/>
</children>
<children xmi:type="notation:Shape" xmi:id="_L93s0CHWEeaZftaCMtSpsw" type="3000">
<eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_L93s1CHWEeaZftaCMtSpsw" source="RegionAnnotationKey">
<details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_L93s1SHWEeaZftaCMtSpsw" key="RegionZoneKey" value="T"/>
</eAnnotations>
<children xmi:type="notation:DecorationNode" xmi:id="_L93s0iHWEeaZftaCMtSpsw" type="3002">
<children xmi:type="notation:Shape" xmi:id="_O0X_4CHWEeaZftaCMtSpsw" type="6000">
<children xmi:type="notation:DecorationNode" xmi:id="_O0Ym8CHWEeaZftaCMtSpsw" type="6001">
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_RBwdcCHWEeaZftaCMtSpsw" width="231" height="23"/>
</children>
<children xmi:type="notation:DecorationNode" xmi:id="_O0Ym8SHWEeaZftaCMtSpsw" type="19003">
<layoutConstraint xmi:type="notation:Location" xmi:id="_O0Ym8iHWEeaZftaCMtSpsw" x="40"/>
</children>
<children xmi:type="notation:DecorationNode" xmi:id="_O0Ym8yHWEeaZftaCMtSpsw" type="6002">
<eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_fG4lECHWEeaZftaCMtSpsw" source="PapyrusCSSForceValue">
<details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_fG4lESHWEeaZftaCMtSpsw" key="visible" value="true"/>
</eAnnotations>
<children xmi:type="notation:Shape" xmi:id="_fG5MISHWEeaZftaCMtSpsw" type="3000">
<eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_fG5zMiHWEeaZftaCMtSpsw" source="RegionAnnotationKey">
<details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_fG5zMyHWEeaZftaCMtSpsw" key="RegionZoneKey" value="B"/>
</eAnnotations>
<children xmi:type="notation:DecorationNode" xmi:id="_fG5zMCHWEeaZftaCMtSpsw" type="3002">
<children xmi:type="notation:Shape" xmi:id="_jAJVoCHWEeaZftaCMtSpsw" type="6000">
<children xmi:type="notation:DecorationNode" xmi:id="_jAJVoiHWEeaZftaCMtSpsw" type="6001">
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_nC7OkSHWEeaZftaCMtSpsw" width="125"/>
</children>
<children xmi:type="notation:DecorationNode" xmi:id="_jAJVoyHWEeaZftaCMtSpsw" type="19003">
<layoutConstraint xmi:type="notation:Location" xmi:id="_jAJVpCHWEeaZftaCMtSpsw" x="40"/>
</children>
<children xmi:type="notation:DecorationNode" xmi:id="_jAJVpSHWEeaZftaCMtSpsw" type="6002">
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_jAJVpiHWEeaZftaCMtSpsw" y="-1" width="125"/>
</children>
<element xmi:type="uml:State" href="linked-regions.uml#_i_3BwCHWEeaZftaCMtSpsw"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_jAJVoSHWEeaZftaCMtSpsw" x="77" y="20" width="125" height="60"/>
</children>
<children xmi:type="notation:Shape" xmi:id="_0-JMQCHWEeaZftaCMtSpsw" type="8000">
<children xmi:type="notation:DecorationNode" xmi:id="_0-JzUCHWEeaZftaCMtSpsw" type="8001">
<layoutConstraint xmi:type="notation:Location" xmi:id="_0-JzUSHWEeaZftaCMtSpsw" x="25" y="3"/>
</children>
<children xmi:type="notation:DecorationNode" xmi:id="_0-JzUiHWEeaZftaCMtSpsw" type="8002">
<layoutConstraint xmi:type="notation:Location" xmi:id="_0-JzUyHWEeaZftaCMtSpsw" x="25" y="-10"/>
</children>
<element xmi:type="uml:Pseudostate" href="linked-regions.uml#_09vjoCHWEeaZftaCMtSpsw"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_0-JMQSHWEeaZftaCMtSpsw" x="20" y="37"/>
</children>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_fG5zMSHWEeaZftaCMtSpsw"/>
</children>
<element xmi:type="uml:Region" href="linked-regions.uml#_fG5MICHWEeaZftaCMtSpsw"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_fG5MIiHWEeaZftaCMtSpsw" y="107" width="231" height="107"/>
</children>
<children xmi:type="notation:Shape" xmi:id="_fay_kCHWEeaZftaCMtSpsw" type="3000">
<eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_fay_lCHWEeaZftaCMtSpsw" source="RegionAnnotationKey">
<details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_fay_lSHWEeaZftaCMtSpsw" key="RegionZoneKey" value="T"/>
</eAnnotations>
<children xmi:type="notation:DecorationNode" xmi:id="_fay_kiHWEeaZftaCMtSpsw" type="3002">
<children xmi:type="notation:Shape" xmi:id="_gXl_ACHWEeaZftaCMtSpsw" type="6000">
<children xmi:type="notation:DecorationNode" xmi:id="_gXmmECHWEeaZftaCMtSpsw" type="6001">
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_nC7OkiHWEeaZftaCMtSpsw" width="125"/>
</children>
<children xmi:type="notation:DecorationNode" xmi:id="_gXmmESHWEeaZftaCMtSpsw" type="19003">
<layoutConstraint xmi:type="notation:Location" xmi:id="_gXmmEiHWEeaZftaCMtSpsw" x="40"/>
</children>
<children xmi:type="notation:DecorationNode" xmi:id="_gXmmEyHWEeaZftaCMtSpsw" type="6002">
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_gXmmFCHWEeaZftaCMtSpsw" y="-1" width="125"/>
</children>
<element xmi:type="uml:State" href="linked-regions.uml#_gXSdACHWEeaZftaCMtSpsw"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_gXl_ASHWEeaZftaCMtSpsw" x="77" y="11" width="125" height="60"/>
</children>
<children xmi:type="notation:Shape" xmi:id="_0ecYgCHWEeaZftaCMtSpsw" type="8000">
<children xmi:type="notation:DecorationNode" xmi:id="_0ecYgiHWEeaZftaCMtSpsw" type="8001">
<layoutConstraint xmi:type="notation:Location" xmi:id="_0ecYgyHWEeaZftaCMtSpsw" x="25" y="3"/>
</children>
<children xmi:type="notation:DecorationNode" xmi:id="_0ecYhCHWEeaZftaCMtSpsw" type="8002">
<layoutConstraint xmi:type="notation:Location" xmi:id="_0ecYhSHWEeaZftaCMtSpsw" x="25" y="-10"/>
</children>
<element xmi:type="uml:Pseudostate" href="linked-regions.uml#_0eFMICHWEeaZftaCMtSpsw"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_0ecYgSHWEeaZftaCMtSpsw" x="20" y="28"/>
</children>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_fay_kyHWEeaZftaCMtSpsw"/>
</children>
<element xmi:type="uml:Region" href="linked-regions.uml#_fayYgCHWEeaZftaCMtSpsw"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_fay_kSHWEeaZftaCMtSpsw" width="231" height="107"/>
</children>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_O0Ym9CHWEeaZftaCMtSpsw" y="23" width="231" height="215"/>
</children>
<element xmi:type="uml:State" href="linked-regions.uml#_O0Ed4CHWEeaZftaCMtSpsw"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_O0X_4SHWEeaZftaCMtSpsw" x="93" y="15" width="231" height="238"/>
</children>
<children xmi:type="notation:Shape" xmi:id="_zJjCICHWEeaZftaCMtSpsw" type="8000">
<children xmi:type="notation:DecorationNode" xmi:id="_zJjCIiHWEeaZftaCMtSpsw" type="8001">
<layoutConstraint xmi:type="notation:Location" xmi:id="_zJjCIyHWEeaZftaCMtSpsw" x="25" y="3"/>
</children>
<children xmi:type="notation:DecorationNode" xmi:id="_zJjCJCHWEeaZftaCMtSpsw" type="8002">
<layoutConstraint xmi:type="notation:Location" xmi:id="_zJjCJSHWEeaZftaCMtSpsw" x="25" y="-10"/>
</children>
<element xmi:type="uml:Pseudostate" href="linked-regions.uml#_zJLOsCHWEeaZftaCMtSpsw"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_zJjCISHWEeaZftaCMtSpsw" x="25" y="58"/>
</children>
<children xmi:type="notation:Shape" xmi:id="_q0Z_UCHaEeaZftaCMtSpsw" type="9000">
<children xmi:type="notation:DecorationNode" xmi:id="_q0amYCHaEeaZftaCMtSpsw" type="9001">
<layoutConstraint xmi:type="notation:Location" xmi:id="_q0amYSHaEeaZftaCMtSpsw" x="-16" y="-27"/>
</children>
<children xmi:type="notation:DecorationNode" xmi:id="_q0amYiHaEeaZftaCMtSpsw" type="9002">
<layoutConstraint xmi:type="notation:Location" xmi:id="_q0amYyHaEeaZftaCMtSpsw" x="25" y="-10"/>
</children>
<element xmi:type="uml:Pseudostate" href="linked-regions.uml#_qz4a4CHaEeaZftaCMtSpsw"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_q0Z_USHaEeaZftaCMtSpsw" x="400" y="58" width="8" height="157"/>
</children>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_L93s0yHWEeaZftaCMtSpsw"/>
</children>
<element xmi:type="uml:Region" href="linked-regions.uml#_L93FwCHWEeaZftaCMtSpsw"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_L93s0SHWEeaZftaCMtSpsw" width="481" height="279"/>
</children>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_Gler1iHWEeaZftaCMtSpsw" y="23" width="481" height="549"/>
</children>
<element xmi:type="uml:State" href="linked-regions.uml#_GlFqQCHWEeaZftaCMtSpsw"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_Gler0SHWEeaZftaCMtSpsw" x="724" y="14" width="481" height="572"/>
</children>
<children xmi:type="notation:Shape" xmi:id="_y11mgCHXEeaZftaCMtSpsw" type="9000">
<children xmi:type="notation:DecorationNode" xmi:id="_y12NkCHXEeaZftaCMtSpsw" type="9001">
<layoutConstraint xmi:type="notation:Location" xmi:id="_y12NkSHXEeaZftaCMtSpsw" x="-18" y="-28"/>
</children>
<children xmi:type="notation:DecorationNode" xmi:id="_y12NkiHXEeaZftaCMtSpsw" type="9002">
<layoutConstraint xmi:type="notation:Location" xmi:id="_y12NkyHXEeaZftaCMtSpsw" x="25" y="-10"/>
</children>
<element xmi:type="uml:Pseudostate" href="linked-regions.uml#_y1Y6kCHXEeaZftaCMtSpsw"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_y11mgSHXEeaZftaCMtSpsw" x="624" y="143" width="8" height="362"/>
</children>
<children xmi:type="notation:Shape" xmi:id="_tlLd0CHaEeaZftaCMtSpsw" type="9000">
<children xmi:type="notation:DecorationNode" xmi:id="_tlME4CHaEeaZftaCMtSpsw" type="9001">
<layoutConstraint xmi:type="notation:Location" xmi:id="_tlME4SHaEeaZftaCMtSpsw" x="25" y="3"/>
</children>
<children xmi:type="notation:DecorationNode" xmi:id="_tlME4iHaEeaZftaCMtSpsw" type="9002">
<layoutConstraint xmi:type="notation:Location" xmi:id="_tlME4yHaEeaZftaCMtSpsw" x="25" y="-10"/>
</children>
<element xmi:type="uml:Pseudostate" href="linked-regions.uml#_tktjwCHaEeaZftaCMtSpsw"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_tlLd0SHaEeaZftaCMtSpsw" x="1246" y="143" width="8" height="362"/>
</children>
<children xmi:type="notation:Shape" xmi:id="_61ePMCHaEeaZftaCMtSpsw" type="6000">
<children xmi:type="notation:DecorationNode" xmi:id="_61ePMiHaEeaZftaCMtSpsw" type="6001"/>
<children xmi:type="notation:DecorationNode" xmi:id="_61ePMyHaEeaZftaCMtSpsw" type="19003">
<layoutConstraint xmi:type="notation:Location" xmi:id="_61ePNCHaEeaZftaCMtSpsw" x="40"/>
</children>
<children xmi:type="notation:DecorationNode" xmi:id="_61ePNSHaEeaZftaCMtSpsw" type="6002">
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_61ePNiHaEeaZftaCMtSpsw"/>
</children>
<element xmi:type="uml:State" href="linked-regions.uml#_61CKUCHaEeaZftaCMtSpsw"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_61ePMSHaEeaZftaCMtSpsw" x="1349" y="270" width="138" height="90"/>
</children>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_2MP6-SHSEeae5aYuVP_vwQ"/>
</children>
<element xmi:type="uml:Region" href="linked-regions.uml#_2MOs0CHSEeae5aYuVP_vwQ"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_2MP6-iHSEeae5aYuVP_vwQ" width="1538" height="605"/>
</children>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_2MP6-yHSEeae5aYuVP_vwQ" y="23" width="1538" height="605"/>
</children>
<element xmi:type="uml:StateMachine" href="linked-regions.uml#_2MLpgCHSEeae5aYuVP_vwQ"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_2MP6_CHSEeae5aYuVP_vwQ" x="30" y="30" width="1538" height="628"/>
</children>
<styles xmi:type="notation:StringValueStyle" xmi:id="_2MP6_SHSEeae5aYuVP_vwQ" name="diagram_compatibility_version" stringValue="1.1.0"/>
<styles xmi:type="notation:DiagramStyle" xmi:id="_2MP6_iHSEeae5aYuVP_vwQ"/>
<styles xmi:type="style:PapyrusViewStyle" xmi:id="_2MP6_yHSEeae5aYuVP_vwQ">
<owner xmi:type="uml:Model" href="linked-regions.uml#_2ME70CHSEeae5aYuVP_vwQ"/>
</styles>
<element xmi:type="uml:StateMachine" href="linked-regions.uml#_2MLpgCHSEeae5aYuVP_vwQ"/>
<edges xmi:type="notation:Connector" xmi:id="_oCcAQCHVEeaZftaCMtSpsw" type="7000" source="_iCf3ECHVEeaZftaCMtSpsw" target="_Dz4jYCHVEeaZftaCMtSpsw">
<children xmi:type="notation:DecorationNode" xmi:id="_oCcnUiHVEeaZftaCMtSpsw" type="7001">
<layoutConstraint xmi:type="notation:Location" xmi:id="_oCcnUyHVEeaZftaCMtSpsw"/>
</children>
<children xmi:type="notation:DecorationNode" xmi:id="_oCcnVCHVEeaZftaCMtSpsw" type="7002">
<layoutConstraint xmi:type="notation:Location" xmi:id="_oCcnVSHVEeaZftaCMtSpsw"/>
</children>
<children xmi:type="notation:DecorationNode" xmi:id="_oCcnViHVEeaZftaCMtSpsw" type="7003">
<layoutConstraint xmi:type="notation:Location" xmi:id="_oCdOYCHVEeaZftaCMtSpsw" y="60"/>
</children>
<styles xmi:type="notation:FontStyle" xmi:id="_oCcnUCHVEeaZftaCMtSpsw"/>
<element xmi:type="uml:Transition" href="linked-regions.uml#_oAyacCHVEeaZftaCMtSpsw"/>
<bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_oCcnUSHVEeaZftaCMtSpsw" points="[8, -2, -125, 0]$[89, -62, -44, -60]"/>
<sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_oDo6ICHVEeaZftaCMtSpsw" id="(1.0,0.3)"/>
<targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_oDo6ISHVEeaZftaCMtSpsw" id="(0.0,0.10314685314685315)"/>
</edges>
<edges xmi:type="notation:Connector" xmi:id="_pHgx8CHVEeaZftaCMtSpsw" type="7000" source="_jGLhoCHVEeaZftaCMtSpsw" target="_Hm4T4CHVEeaZftaCMtSpsw">
<children xmi:type="notation:DecorationNode" xmi:id="_pHgx8yHVEeaZftaCMtSpsw" type="7001">
<layoutConstraint xmi:type="notation:Location" xmi:id="_pHgx9CHVEeaZftaCMtSpsw"/>
</children>
<children xmi:type="notation:DecorationNode" xmi:id="_pHgx9SHVEeaZftaCMtSpsw" type="7002">
<layoutConstraint xmi:type="notation:Location" xmi:id="_pHgx9iHVEeaZftaCMtSpsw"/>
</children>
<children xmi:type="notation:DecorationNode" xmi:id="_pHgx9yHVEeaZftaCMtSpsw" type="7003">
<layoutConstraint xmi:type="notation:Location" xmi:id="_pHgx-CHVEeaZftaCMtSpsw" y="60"/>
</children>
<styles xmi:type="notation:FontStyle" xmi:id="_pHgx8SHVEeaZftaCMtSpsw"/>
<element xmi:type="uml:Transition" href="linked-regions.uml#_pHLawCHVEeaZftaCMtSpsw"/>
<bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_pHgx8iHVEeaZftaCMtSpsw" points="[8, -1, -69, 0]$[68, -5, -9, -4]"/>
<sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_pIV4YCHVEeaZftaCMtSpsw" id="(1.0,0.4)"/>
<targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_pIV4YSHVEeaZftaCMtSpsw" id="(0.0,0.22807017543859648)"/>
</edges>
<edges xmi:type="notation:Connector" xmi:id="_xEUQcCHVEeaZftaCMtSpsw" type="7000" source="_qFljwCHVEeaZftaCMtSpsw" target="_J3lyQCHVEeaZftaCMtSpsw">
<children xmi:type="notation:DecorationNode" xmi:id="_xEUQcyHVEeaZftaCMtSpsw" type="7001">
<layoutConstraint xmi:type="notation:Location" xmi:id="_xEUQdCHVEeaZftaCMtSpsw"/>
</children>
<children xmi:type="notation:DecorationNode" xmi:id="_xEUQdSHVEeaZftaCMtSpsw" type="7002">
<layoutConstraint xmi:type="notation:Location" xmi:id="_xEUQdiHVEeaZftaCMtSpsw"/>
</children>
<children xmi:type="notation:DecorationNode" xmi:id="_xEUQdyHVEeaZftaCMtSpsw" type="7003">
<layoutConstraint xmi:type="notation:Location" xmi:id="_xEUQeCHVEeaZftaCMtSpsw" y="60"/>
</children>
<styles xmi:type="notation:FontStyle" xmi:id="_xEUQcSHVEeaZftaCMtSpsw"/>
<element xmi:type="uml:Transition" href="linked-regions.uml#_xD4yoCHVEeaZftaCMtSpsw"/>
<bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_xEUQciHVEeaZftaCMtSpsw" points="[8, -1, -67, 0]$[63, -6, -12, -5]"/>
<sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_xFQroCHVEeaZftaCMtSpsw" id="(1.0,0.35)"/>
<targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_xFQroSHVEeaZftaCMtSpsw" id="(0.0,0.2324561403508772)"/>
</edges>
<edges xmi:type="notation:Connector" xmi:id="_yOHxICHVEeaZftaCMtSpsw" type="7000" source="_j9RhsCHVEeaZftaCMtSpsw" target="_NtPOICHVEeaZftaCMtSpsw">
<children xmi:type="notation:DecorationNode" xmi:id="_yOHxIyHVEeaZftaCMtSpsw" type="7001">
<layoutConstraint xmi:type="notation:Location" xmi:id="_yOHxJCHVEeaZftaCMtSpsw"/>
</children>
<children xmi:type="notation:DecorationNode" xmi:id="_yOHxJSHVEeaZftaCMtSpsw" type="7002">
<layoutConstraint xmi:type="notation:Location" xmi:id="_yOHxJiHVEeaZftaCMtSpsw"/>
</children>
<children xmi:type="notation:DecorationNode" xmi:id="_yOHxJyHVEeaZftaCMtSpsw" type="7003">
<layoutConstraint xmi:type="notation:Location" xmi:id="_yOHxKCHVEeaZftaCMtSpsw" y="60"/>
</children>
<styles xmi:type="notation:FontStyle" xmi:id="_yOHxISHVEeaZftaCMtSpsw"/>
<element xmi:type="uml:Transition" href="linked-regions.uml#_yNzoECHVEeaZftaCMtSpsw"/>
<bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_yOHxIiHVEeaZftaCMtSpsw" points="[8, -2, -50, 0]$[44, -4, -14, -2]"/>
<sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_yO-FsCHVEeaZftaCMtSpsw" id="(1.0,0.35)"/>
<targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_yO-FsSHVEeaZftaCMtSpsw" id="(0.0,0.4)"/>
</edges>
<edges xmi:type="notation:Connector" xmi:id="_zFmLsCHVEeaZftaCMtSpsw" type="7000" source="_k0Z-ACHVEeaZftaCMtSpsw" target="_O2JW8CHVEeaZftaCMtSpsw">
<children xmi:type="notation:DecorationNode" xmi:id="_zFmLsyHVEeaZftaCMtSpsw" type="7001">
<layoutConstraint xmi:type="notation:Location" xmi:id="_zFmLtCHVEeaZftaCMtSpsw"/>
</children>
<children xmi:type="notation:DecorationNode" xmi:id="_zFmLtSHVEeaZftaCMtSpsw" type="7002">
<layoutConstraint xmi:type="notation:Location" xmi:id="_zFmLtiHVEeaZftaCMtSpsw"/>
</children>
<children xmi:type="notation:DecorationNode" xmi:id="_zFmLtyHVEeaZftaCMtSpsw" type="7003">
<layoutConstraint xmi:type="notation:Location" xmi:id="_zFmLuCHVEeaZftaCMtSpsw" y="60"/>
</children>
<styles xmi:type="notation:FontStyle" xmi:id="_zFmLsSHVEeaZftaCMtSpsw"/>
<element xmi:type="uml:Transition" href="linked-regions.uml#_zFRbkCHVEeaZftaCMtSpsw"/>
<bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_zFmLsiHVEeaZftaCMtSpsw" points="[8, -1, -45, 0]$[44, -2, -9, -1]"/>
<sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_zGe8gCHVEeaZftaCMtSpsw" id="(1.0,0.4)"/>
<targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_zGe8gSHVEeaZftaCMtSpsw" id="(0.0,0.4166666666666667)"/>
</edges>
<edges xmi:type="notation:Connector" xmi:id="_0LFNECHVEeaZftaCMtSpsw" type="7000" source="_lkQGkCHVEeaZftaCMtSpsw" target="_Q-bSECHVEeaZftaCMtSpsw">
<children xmi:type="notation:DecorationNode" xmi:id="_0LFNEyHVEeaZftaCMtSpsw" type="7001">
<layoutConstraint xmi:type="notation:Location" xmi:id="_0LF0ICHVEeaZftaCMtSpsw"/>
</children>
<children xmi:type="notation:DecorationNode" xmi:id="_0LF0ISHVEeaZftaCMtSpsw" type="7002">
<layoutConstraint xmi:type="notation:Location" xmi:id="_0LF0IiHVEeaZftaCMtSpsw"/>
</children>
<children xmi:type="notation:DecorationNode" xmi:id="_0LF0IyHVEeaZftaCMtSpsw" type="7003">
<layoutConstraint xmi:type="notation:Location" xmi:id="_0LF0JCHVEeaZftaCMtSpsw" y="60"/>
</children>
<styles xmi:type="notation:FontStyle" xmi:id="_0LFNESHVEeaZftaCMtSpsw"/>
<element xmi:type="uml:Transition" href="linked-regions.uml#_0KvO0CHVEeaZftaCMtSpsw"/>
<bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_0LFNEiHVEeaZftaCMtSpsw" points="[8, -2, -63, 0]$[44, -10, -27, -8]"/>
<sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_0MLZQCHVEeaZftaCMtSpsw" id="(1.0,0.4)"/>
<targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_0MLZQSHVEeaZftaCMtSpsw" id="(0.0,0.3333333333333333)"/>
</edges>
<edges xmi:type="notation:Connector" xmi:id="_1QmDoCHVEeaZftaCMtSpsw" type="7000" source="_mWJdkCHVEeaZftaCMtSpsw" target="_SX0G4CHVEeaZftaCMtSpsw">
<children xmi:type="notation:DecorationNode" xmi:id="_1QmDoyHVEeaZftaCMtSpsw" type="7001">
<layoutConstraint xmi:type="notation:Location" xmi:id="_1QmDpCHVEeaZftaCMtSpsw"/>
</children>
<children xmi:type="notation:DecorationNode" xmi:id="_1QmDpSHVEeaZftaCMtSpsw" type="7002">
<layoutConstraint xmi:type="notation:Location" xmi:id="_1QmDpiHVEeaZftaCMtSpsw"/>
</children>
<children xmi:type="notation:DecorationNode" xmi:id="_1QmDpyHVEeaZftaCMtSpsw" type="7003">
<layoutConstraint xmi:type="notation:Location" xmi:id="_1QmDqCHVEeaZftaCMtSpsw" y="60"/>
</children>
<styles xmi:type="notation:FontStyle" xmi:id="_1QmDoSHVEeaZftaCMtSpsw"/>
<element xmi:type="uml:Transition" href="linked-regions.uml#_1QQFYCHVEeaZftaCMtSpsw"/>
<bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_1QmDoiHVEeaZftaCMtSpsw" points="[8, -1, -45, 0]$[44, -3, -9, -2]"/>
<sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_1RgCkCHVEeaZftaCMtSpsw" id="(1.0,0.45)"/>
<targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_1RgpoCHVEeaZftaCMtSpsw" id="(0.0,0.3333333333333333)"/>
</edges>
<edges xmi:type="notation:Connector" xmi:id="_BkoLoCHXEeaZftaCMtSpsw" type="7000" source="_zJjCICHWEeaZftaCMtSpsw" target="_O0X_4CHWEeaZftaCMtSpsw">
<children xmi:type="notation:DecorationNode" xmi:id="_BkoLoyHXEeaZftaCMtSpsw" type="7001">
<layoutConstraint xmi:type="notation:Location" xmi:id="_BkoLpCHXEeaZftaCMtSpsw"/>
</children>
<children xmi:type="notation:DecorationNode" xmi:id="_BkoLpSHXEeaZftaCMtSpsw" type="7002">
<layoutConstraint xmi:type="notation:Location" xmi:id="_BkoLpiHXEeaZftaCMtSpsw"/>
</children>
<children xmi:type="notation:DecorationNode" xmi:id="_BkoLpyHXEeaZftaCMtSpsw" type="7003">
<layoutConstraint xmi:type="notation:Location" xmi:id="_BkoLqCHXEeaZftaCMtSpsw" y="60"/>
</children>
<styles xmi:type="notation:FontStyle" xmi:id="_BkoLoSHXEeaZftaCMtSpsw"/>
<element xmi:type="uml:Transition" href="linked-regions.uml#_BkGnMCHXEeaZftaCMtSpsw"/>
<bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_BkoLoiHXEeaZftaCMtSpsw" points="[8, -2, -54, 0]$[58, -5, -4, -3]"/>
<sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Bl0ecCHXEeaZftaCMtSpsw" id="(1.0,0.4)"/>
<targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Bl1FgCHXEeaZftaCMtSpsw" id="(0.0,0.21428571428571427)"/>
</edges>
<edges xmi:type="notation:Connector" xmi:id="_DZI2MCHXEeaZftaCMtSpsw" type="7000" source="_z8wAsCHWEeaZftaCMtSpsw" target="_VIGnwCHWEeaZftaCMtSpsw">
<children xmi:type="notation:DecorationNode" xmi:id="_DZJdQCHXEeaZftaCMtSpsw" type="7001">
<layoutConstraint xmi:type="notation:Location" xmi:id="_DZJdQSHXEeaZftaCMtSpsw"/>
</children>
<children xmi:type="notation:DecorationNode" xmi:id="_DZJdQiHXEeaZftaCMtSpsw" type="7002">
<layoutConstraint xmi:type="notation:Location" xmi:id="_DZJdQyHXEeaZftaCMtSpsw"/>
</children>
<children xmi:type="notation:DecorationNode" xmi:id="_DZJdRCHXEeaZftaCMtSpsw" type="7003">
<layoutConstraint xmi:type="notation:Location" xmi:id="_DZJdRSHXEeaZftaCMtSpsw" y="60"/>
</children>
<styles xmi:type="notation:FontStyle" xmi:id="_DZI2MSHXEeaZftaCMtSpsw"/>
<element xmi:type="uml:Transition" href="linked-regions.uml#_DYpuACHXEeaZftaCMtSpsw"/>
<bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_DZI2MiHXEeaZftaCMtSpsw" points="[8, -1, -60, 0]$[58, -8, -10, -7]"/>
<sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_DaVJACHXEeaZftaCMtSpsw" id="(1.0,0.45)"/>
<targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_DaVJASHXEeaZftaCMtSpsw" id="(0.0,0.226890756302521)"/>
</edges>
<edges xmi:type="notation:Connector" xmi:id="_EWkHwCHXEeaZftaCMtSpsw" type="7000" source="_0ecYgCHWEeaZftaCMtSpsw" target="_gXl_ACHWEeaZftaCMtSpsw">
<children xmi:type="notation:DecorationNode" xmi:id="_EWku0CHXEeaZftaCMtSpsw" type="7001">
<layoutConstraint xmi:type="notation:Location" xmi:id="_EWku0SHXEeaZftaCMtSpsw"/>
</children>
<children xmi:type="notation:DecorationNode" xmi:id="_EWku0iHXEeaZftaCMtSpsw" type="7002">
<layoutConstraint xmi:type="notation:Location" xmi:id="_EWku0yHXEeaZftaCMtSpsw"/>
</children>
<children xmi:type="notation:DecorationNode" xmi:id="_EWku1CHXEeaZftaCMtSpsw" type="7003">
<layoutConstraint xmi:type="notation:Location" xmi:id="_EWku1SHXEeaZftaCMtSpsw" y="60"/>
</children>
<styles xmi:type="notation:FontStyle" xmi:id="_EWkHwSHXEeaZftaCMtSpsw"/>
<element xmi:type="uml:Transition" href="linked-regions.uml#_EWG0wCHXEeaZftaCMtSpsw"/>
<bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_EWkHwiHXEeaZftaCMtSpsw" points="[8, -2, -53, 0]$[47, -4, -14, -2]"/>
<sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_EXxosCHXEeaZftaCMtSpsw" id="(1.0,0.4)"/>
<targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_EXxosSHXEeaZftaCMtSpsw" id="(0.0,0.4166666666666667)"/>
</edges>
<edges xmi:type="notation:Connector" xmi:id="_FJINICHXEeaZftaCMtSpsw" type="7000" source="_0-JMQCHWEeaZftaCMtSpsw" target="_jAJVoCHWEeaZftaCMtSpsw">
<children xmi:type="notation:DecorationNode" xmi:id="_FJINIyHXEeaZftaCMtSpsw" type="7001">
<layoutConstraint xmi:type="notation:Location" xmi:id="_FJINJCHXEeaZftaCMtSpsw"/>
</children>
<children xmi:type="notation:DecorationNode" xmi:id="_FJINJSHXEeaZftaCMtSpsw" type="7002">
<layoutConstraint xmi:type="notation:Location" xmi:id="_FJINJiHXEeaZftaCMtSpsw"/>
</children>
<children xmi:type="notation:DecorationNode" xmi:id="_FJINJyHXEeaZftaCMtSpsw" type="7003">
<layoutConstraint xmi:type="notation:Location" xmi:id="_FJINKCHXEeaZftaCMtSpsw" y="60"/>
</children>
<styles xmi:type="notation:FontStyle" xmi:id="_FJINISHXEeaZftaCMtSpsw"/>
<element xmi:type="uml:Transition" href="linked-regions.uml#_FInPwCHXEeaZftaCMtSpsw"/>
<bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_FJINIiHXEeaZftaCMtSpsw" points="[8, -1, -42, 0]$[47, -2, -3, -1]"/>
<sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_FKamkCHXEeaZftaCMtSpsw" id="(1.0,0.4)"/>
<targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_FKamkSHXEeaZftaCMtSpsw" id="(0.0,0.4166666666666667)"/>
</edges>
<edges xmi:type="notation:Connector" xmi:id="_GUInsCHXEeaZftaCMtSpsw" type="7000" source="_1u6h4CHWEeaZftaCMtSpsw" target="_koHZACHWEeaZftaCMtSpsw">
<children xmi:type="notation:DecorationNode" xmi:id="_GUJOwCHXEeaZftaCMtSpsw" type="7001">
<layoutConstraint xmi:type="notation:Location" xmi:id="_GUJOwSHXEeaZftaCMtSpsw"/>
</children>
<children xmi:type="notation:DecorationNode" xmi:id="_GUJOwiHXEeaZftaCMtSpsw" type="7002">
<layoutConstraint xmi:type="notation:Location" xmi:id="_GUJOwyHXEeaZftaCMtSpsw"/>
</children>
<children xmi:type="notation:DecorationNode" xmi:id="_GUJOxCHXEeaZftaCMtSpsw" type="7003">
<layoutConstraint xmi:type="notation:Location" xmi:id="_GUJOxSHXEeaZftaCMtSpsw" y="60"/>
</children>
<styles xmi:type="notation:FontStyle" xmi:id="_GUInsSHXEeaZftaCMtSpsw"/>
<element xmi:type="uml:Transition" href="linked-regions.uml#_GTnDQCHXEeaZftaCMtSpsw"/>
<bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_GUInsiHXEeaZftaCMtSpsw" points="[2, 0, -59, 0]$[41, -4, -20, -4]"/>
<sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_GVYk4CHXEeaZftaCMtSpsw" id="(1.0,0.5)"/>
<targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_GVYk4SHXEeaZftaCMtSpsw" id="(0.0,0.36666666666666664)"/>
</edges>
<edges xmi:type="notation:Connector" xmi:id="_HPpNsCHXEeaZftaCMtSpsw" type="7000" source="_2zWaYCHWEeaZftaCMtSpsw" target="_lG9RICHWEeaZftaCMtSpsw">
<children xmi:type="notation:DecorationNode" xmi:id="_HPp0wCHXEeaZftaCMtSpsw" type="7001">
<layoutConstraint xmi:type="notation:Location" xmi:id="_HPp0wSHXEeaZftaCMtSpsw"/>
</children>
<children xmi:type="notation:DecorationNode" xmi:id="_HPp0wiHXEeaZftaCMtSpsw" type="7002">
<layoutConstraint xmi:type="notation:Location" xmi:id="_HPp0wyHXEeaZftaCMtSpsw"/>
</children>
<children xmi:type="notation:DecorationNode" xmi:id="_HPp0xCHXEeaZftaCMtSpsw" type="7003">
<layoutConstraint xmi:type="notation:Location" xmi:id="_HPp0xSHXEeaZftaCMtSpsw" y="60"/>
</children>
<styles xmi:type="notation:FontStyle" xmi:id="_HPpNsSHXEeaZftaCMtSpsw"/>
<element xmi:type="uml:Transition" href="linked-regions.uml#_HPJecCHXEeaZftaCMtSpsw"/>
<bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_HPpNsiHXEeaZftaCMtSpsw" points="[8, -1, -59, 0]$[47, -6, -20, -5]"/>
<sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_HQ5x8CHXEeaZftaCMtSpsw" id="(1.0,0.45)"/>
<targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_HQ5x8SHXEeaZftaCMtSpsw" id="(0.0,0.3333333333333333)"/>
</edges>
<edges xmi:type="notation:Connector" xmi:id="_DW3I0CHYEeaZftaCMtSpsw" type="7000" source="_NtPOICHVEeaZftaCMtSpsw" target="_qQPCoCHXEeaZftaCMtSpsw">
<children xmi:type="notation:DecorationNode" xmi:id="_DW3I0yHYEeaZftaCMtSpsw" type="7001">
<layoutConstraint xmi:type="notation:Location" xmi:id="_DW3I1CHYEeaZftaCMtSpsw"/>
</children>
<children xmi:type="notation:DecorationNode" xmi:id="_DW3I1SHYEeaZftaCMtSpsw" type="7002">
<layoutConstraint xmi:type="notation:Location" xmi:id="_DW3I1iHYEeaZftaCMtSpsw"/>
</children>
<children xmi:type="notation:DecorationNode" xmi:id="_DW3I1yHYEeaZftaCMtSpsw" type="7003">
<layoutConstraint xmi:type="notation:Location" xmi:id="_DW3I2CHYEeaZftaCMtSpsw" y="60"/>
</children>
<styles xmi:type="notation:FontStyle" xmi:id="_DW3I0SHYEeaZftaCMtSpsw"/>
<element xmi:type="uml:Transition" href="linked-regions.uml#_DWShECHYEeaZftaCMtSpsw"/>
<bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_DW3I0iHYEeaZftaCMtSpsw" points="[7, 0, -105, -1]$[110, -21, -2, -22]"/>
<sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_DYKJUCHYEeaZftaCMtSpsw" id="(1.0,0.5)"/>
<targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_DYKJUSHYEeaZftaCMtSpsw" id="(0.0,0.1337579617834395)"/>
</edges>
<edges xmi:type="notation:Connector" xmi:id="_ElyaECHYEeaZftaCMtSpsw" type="7000" source="_O2JW8CHVEeaZftaCMtSpsw" target="_qQPCoCHXEeaZftaCMtSpsw">
<children xmi:type="notation:DecorationNode" xmi:id="_ElzBICHYEeaZftaCMtSpsw" type="7001">
<layoutConstraint xmi:type="notation:Location" xmi:id="_ElzBISHYEeaZftaCMtSpsw"/>
</children>
<children xmi:type="notation:DecorationNode" xmi:id="_ElzBIiHYEeaZftaCMtSpsw" type="7002">
<layoutConstraint xmi:type="notation:Location" xmi:id="_ElzBIyHYEeaZftaCMtSpsw"/>
</children>
<children xmi:type="notation:DecorationNode" xmi:id="_ElzBJCHYEeaZftaCMtSpsw" type="7003">
<layoutConstraint xmi:type="notation:Location" xmi:id="_ElzBJSHYEeaZftaCMtSpsw" y="60"/>
</children>
<styles xmi:type="notation:FontStyle" xmi:id="_ElyaESHYEeaZftaCMtSpsw"/>
<element xmi:type="uml:Transition" href="linked-regions.uml#_ElT48CHYEeaZftaCMtSpsw"/>
<bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_ElyaEiHYEeaZftaCMtSpsw" points="[6, 0, -106, -1]$[111, 25, -1, 24]"/>
<sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_EnRAwCHYEeaZftaCMtSpsw" id="(1.0,0.4166666666666667)"/>
<targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_EnRn0CHYEeaZftaCMtSpsw" id="(0.0,0.8407643312101911)"/>
</edges>
<edges xmi:type="notation:Connector" xmi:id="_FdgsQCHYEeaZftaCMtSpsw" type="7000" source="_Q-bSECHVEeaZftaCMtSpsw" target="_z6ycYCHXEeaZftaCMtSpsw">
<children xmi:type="notation:DecorationNode" xmi:id="_FdgsQyHYEeaZftaCMtSpsw" type="7001">
<layoutConstraint xmi:type="notation:Location" xmi:id="_FdgsRCHYEeaZftaCMtSpsw"/>
</children>
<children xmi:type="notation:DecorationNode" xmi:id="_FdgsRSHYEeaZftaCMtSpsw" type="7002">
<layoutConstraint xmi:type="notation:Location" xmi:id="_FdgsRiHYEeaZftaCMtSpsw"/>
</children>
<children xmi:type="notation:DecorationNode" xmi:id="_FdgsRyHYEeaZftaCMtSpsw" type="7003">
<layoutConstraint xmi:type="notation:Location" xmi:id="_FdgsSCHYEeaZftaCMtSpsw" y="60"/>
</children>
<styles xmi:type="notation:FontStyle" xmi:id="_FdgsQSHYEeaZftaCMtSpsw"/>
<element xmi:type="uml:Transition" href="linked-regions.uml#_Fc_H0CHYEeaZftaCMtSpsw"/>
<bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_FdgsQiHYEeaZftaCMtSpsw" points="[7, -1, -106, 0]$[112, -23, -1, -22]"/>
<sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_FeyeoCHYEeaZftaCMtSpsw" id="(1.0,0.45)"/>
<targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_FeyeoSHYEeaZftaCMtSpsw" id="(0.0,0.14012738853503184)"/>
</edges>
<edges xmi:type="notation:Connector" xmi:id="_GmtwACHYEeaZftaCMtSpsw" type="7000" source="_SX0G4CHVEeaZftaCMtSpsw" target="_z6ycYCHXEeaZftaCMtSpsw">
<children xmi:type="notation:DecorationNode" xmi:id="_GmuXECHYEeaZftaCMtSpsw" type="7001">
<layoutConstraint xmi:type="notation:Location" xmi:id="_GmuXESHYEeaZftaCMtSpsw"/>
</children>
<children xmi:type="notation:DecorationNode" xmi:id="_GmuXEiHYEeaZftaCMtSpsw" type="7002">
<layoutConstraint xmi:type="notation:Location" xmi:id="_GmuXEyHYEeaZftaCMtSpsw"/>
</children>
<children xmi:type="notation:DecorationNode" xmi:id="_GmuXFCHYEeaZftaCMtSpsw" type="7003">
<layoutConstraint xmi:type="notation:Location" xmi:id="_GmuXFSHYEeaZftaCMtSpsw" y="60"/>
</children>
<styles xmi:type="notation:FontStyle" xmi:id="_GmtwASHYEeaZftaCMtSpsw"/>
<element xmi:type="uml:Transition" href="linked-regions.uml#_GmOAwCHYEeaZftaCMtSpsw"/>
<bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_GmtwAiHYEeaZftaCMtSpsw" points="[9, 0, -106, 0]$[113, 33, -2, 33]"/>
<sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_GoWuwCHYEeaZftaCMtSpsw" id="(1.0,0.4)"/>
<targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_GoWuwSHYEeaZftaCMtSpsw" id="(0.0,0.7898089171974523)"/>
</edges>
<edges xmi:type="notation:Connector" xmi:id="_H8ZwkCHYEeaZftaCMtSpsw" type="7000" source="_qQPCoCHXEeaZftaCMtSpsw" target="_y11mgCHXEeaZftaCMtSpsw">
<children xmi:type="notation:DecorationNode" xmi:id="_H8aXoCHYEeaZftaCMtSpsw" type="7001">
<layoutConstraint xmi:type="notation:Location" xmi:id="_H8aXoSHYEeaZftaCMtSpsw"/>
</children>
<children xmi:type="notation:DecorationNode" xmi:id="_H8aXoiHYEeaZftaCMtSpsw" type="7002">
<layoutConstraint xmi:type="notation:Location" xmi:id="_H8aXoyHYEeaZftaCMtSpsw"/>
</children>
<children xmi:type="notation:DecorationNode" xmi:id="_H8aXpCHYEeaZftaCMtSpsw" type="7003">
<layoutConstraint xmi:type="notation:Location" xmi:id="_H8aXpSHYEeaZftaCMtSpsw" y="60"/>
</children>
<styles xmi:type="notation:FontStyle" xmi:id="_H8ZwkSHYEeaZftaCMtSpsw"/>
<element xmi:type="uml:Transition" href="linked-regions.uml#_H74zMCHYEeaZftaCMtSpsw"/>
<bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_H8ZwkiHYEeaZftaCMtSpsw"/>
<sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_H9tYICHYEeaZftaCMtSpsw" id="(1.0,0.5987261146496815)"/>
<targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_H9tYISHYEeaZftaCMtSpsw" id="(0.0,0.1270718232044199)"/>
</edges>
<edges xmi:type="notation:Connector" xmi:id="_MzxIICHYEeaZftaCMtSpsw" type="7000" source="_z6ycYCHXEeaZftaCMtSpsw" target="_y11mgCHXEeaZftaCMtSpsw">
<children xmi:type="notation:DecorationNode" xmi:id="_MzxvMCHYEeaZftaCMtSpsw" type="7001">
<layoutConstraint xmi:type="notation:Location" xmi:id="_MzxvMSHYEeaZftaCMtSpsw"/>
</children>
<children xmi:type="notation:DecorationNode" xmi:id="_MzxvMiHYEeaZftaCMtSpsw" type="7002">
<layoutConstraint xmi:type="notation:Location" xmi:id="_MzxvMyHYEeaZftaCMtSpsw"/>
</children>
<children xmi:type="notation:DecorationNode" xmi:id="_MzxvNCHYEeaZftaCMtSpsw" type="7003">
<layoutConstraint xmi:type="notation:Location" xmi:id="_MzxvNSHYEeaZftaCMtSpsw" y="60"/>
</children>
<styles xmi:type="notation:FontStyle" xmi:id="_MzxIISHYEeaZftaCMtSpsw"/>
<element xmi:type="uml:Transition" href="linked-regions.uml#_MzQKwCHYEeaZftaCMtSpsw"/>
<bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_MzxIIiHYEeaZftaCMtSpsw"/>
<sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_M1IaECHYEeaZftaCMtSpsw" id="(1.0,0.4140127388535032)"/>
<targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_M1IaESHYEeaZftaCMtSpsw" id="(0.0,0.8287292817679558)"/>
</edges>
<edges xmi:type="notation:Connector" xmi:id="_RGoEcCHYEeaZftaCMtSpsw" type="7000" source="_y11mgCHXEeaZftaCMtSpsw" target="_Gler0CHWEeaZftaCMtSpsw">
<children xmi:type="notation:DecorationNode" xmi:id="_RGoEcyHYEeaZftaCMtSpsw" type="7001">
<layoutConstraint xmi:type="notation:Location" xmi:id="_RGoEdCHYEeaZftaCMtSpsw"/>
</children>
<children xmi:type="notation:DecorationNode" xmi:id="_RGoEdSHYEeaZftaCMtSpsw" type="7002">
<layoutConstraint xmi:type="notation:Location" xmi:id="_RGoEdiHYEeaZftaCMtSpsw"/>
</children>
<children xmi:type="notation:DecorationNode" xmi:id="_RGoEdyHYEeaZftaCMtSpsw" type="7003">
<layoutConstraint xmi:type="notation:Location" xmi:id="_RGoEeCHYEeaZftaCMtSpsw" y="60"/>
</children>
<styles xmi:type="notation:FontStyle" xmi:id="_RGoEcSHYEeaZftaCMtSpsw"/>
<element xmi:type="uml:Transition" href="linked-regions.uml#_RGEq0CHYEeaZftaCMtSpsw"/>
<bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_RGoEciHYEeaZftaCMtSpsw"/>
<sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_RIByoCHYEeaZftaCMtSpsw" id="(1.0,0.47513812154696133)"/>
<targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_RIByoSHYEeaZftaCMtSpsw" id="(0.0,0.5262237762237763)"/>
</edges>
<edges xmi:type="notation:Connector" xmi:id="_AJMyoCHbEeaZftaCMtSpsw" type="7000" source="_gXl_ACHWEeaZftaCMtSpsw" target="_q0Z_UCHaEeaZftaCMtSpsw">
<children xmi:type="notation:DecorationNode" xmi:id="_AJMyoyHbEeaZftaCMtSpsw" type="7001">
<layoutConstraint xmi:type="notation:Location" xmi:id="_AJMypCHbEeaZftaCMtSpsw"/>
</children>
<children xmi:type="notation:DecorationNode" xmi:id="_AJMypSHbEeaZftaCMtSpsw" type="7002">
<layoutConstraint xmi:type="notation:Location" xmi:id="_AJMypiHbEeaZftaCMtSpsw"/>
</children>
<children xmi:type="notation:DecorationNode" xmi:id="_AJMypyHbEeaZftaCMtSpsw" type="7003">
<layoutConstraint xmi:type="notation:Location" xmi:id="_AJMyqCHbEeaZftaCMtSpsw" y="60"/>
</children>
<styles xmi:type="notation:FontStyle" xmi:id="_AJMyoSHbEeaZftaCMtSpsw"/>
<element xmi:type="uml:Transition" href="linked-regions.uml#_AIox8CHbEeaZftaCMtSpsw"/>
<bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_AJMyoiHbEeaZftaCMtSpsw"/>
<sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_AKo9ECHbEeaZftaCMtSpsw" id="(1.0,0.4666666666666667)"/>
<targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_AKo9ESHbEeaZftaCMtSpsw" id="(0.0,0.12101910828025478)"/>
</edges>
<edges xmi:type="notation:Connector" xmi:id="_BiQ3UCHbEeaZftaCMtSpsw" type="7000" source="_jAJVoCHWEeaZftaCMtSpsw" target="_q0Z_UCHaEeaZftaCMtSpsw">
<children xmi:type="notation:DecorationNode" xmi:id="_BiQ3UyHbEeaZftaCMtSpsw" type="7001">
<layoutConstraint xmi:type="notation:Location" xmi:id="_BiQ3VCHbEeaZftaCMtSpsw"/>
</children>
<children xmi:type="notation:DecorationNode" xmi:id="_BiQ3VSHbEeaZftaCMtSpsw" type="7002">
<layoutConstraint xmi:type="notation:Location" xmi:id="_BiQ3ViHbEeaZftaCMtSpsw"/>
</children>
<children xmi:type="notation:DecorationNode" xmi:id="_BiQ3VyHbEeaZftaCMtSpsw" type="7003">
<layoutConstraint xmi:type="notation:Location" xmi:id="_BiQ3WCHbEeaZftaCMtSpsw" y="60"/>
</children>
<styles xmi:type="notation:FontStyle" xmi:id="_BiQ3USHbEeaZftaCMtSpsw"/>
<element xmi:type="uml:Transition" href="linked-regions.uml#_BhxvICHbEeaZftaCMtSpsw"/>
<bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_BiQ3UiHbEeaZftaCMtSpsw"/>
<sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_BjoJQCHbEeaZftaCMtSpsw" id="(1.0,0.4)"/>
<targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_BjoJQSHbEeaZftaCMtSpsw" id="(0.0,0.8343949044585988)"/>
</edges>
<edges xmi:type="notation:Connector" xmi:id="_CY16ACHbEeaZftaCMtSpsw" type="7000" source="_koHZACHWEeaZftaCMtSpsw" target="_sSBz4CHaEeaZftaCMtSpsw">
<children xmi:type="notation:DecorationNode" xmi:id="_CY16AyHbEeaZftaCMtSpsw" type="7001">
<layoutConstraint xmi:type="notation:Location" xmi:id="_CY16BCHbEeaZftaCMtSpsw"/>
</children>
<children xmi:type="notation:DecorationNode" xmi:id="_CY2hECHbEeaZftaCMtSpsw" type="7002">
<layoutConstraint xmi:type="notation:Location" xmi:id="_CY2hESHbEeaZftaCMtSpsw"/>
</children>
<children xmi:type="notation:DecorationNode" xmi:id="_CY2hEiHbEeaZftaCMtSpsw" type="7003">
<layoutConstraint xmi:type="notation:Location" xmi:id="_CY2hEyHbEeaZftaCMtSpsw" y="60"/>
</children>
<styles xmi:type="notation:FontStyle" xmi:id="_CY16ASHbEeaZftaCMtSpsw"/>
<element xmi:type="uml:Transition" href="linked-regions.uml#_CYUVkCHbEeaZftaCMtSpsw"/>
<bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_CY16AiHbEeaZftaCMtSpsw"/>
<sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_CaRdYCHbEeaZftaCMtSpsw" id="(1.0,0.45)"/>
<targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_CaRdYSHbEeaZftaCMtSpsw" id="(0.0,0.14012738853503184)"/>
</edges>
<edges xmi:type="notation:Connector" xmi:id="_DbY8ICHbEeaZftaCMtSpsw" type="7000" source="_lG9RICHWEeaZftaCMtSpsw" target="_sSBz4CHaEeaZftaCMtSpsw">
<children xmi:type="notation:DecorationNode" xmi:id="_DbY8IyHbEeaZftaCMtSpsw" type="7001">
<layoutConstraint xmi:type="notation:Location" xmi:id="_DbY8JCHbEeaZftaCMtSpsw"/>
</children>
<children xmi:type="notation:DecorationNode" xmi:id="_DbY8JSHbEeaZftaCMtSpsw" type="7002">
<layoutConstraint xmi:type="notation:Location" xmi:id="_DbY8JiHbEeaZftaCMtSpsw"/>
</children>
<children xmi:type="notation:DecorationNode" xmi:id="_DbY8JyHbEeaZftaCMtSpsw" type="7003">
<layoutConstraint xmi:type="notation:Location" xmi:id="_DbY8KCHbEeaZftaCMtSpsw" y="60"/>
</children>
<styles xmi:type="notation:FontStyle" xmi:id="_DbY8ISHbEeaZftaCMtSpsw"/>
<element xmi:type="uml:Transition" href="linked-regions.uml#_Da07cCHbEeaZftaCMtSpsw"/>
<bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_DbY8IiHbEeaZftaCMtSpsw"/>
<sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Dc4J4CHbEeaZftaCMtSpsw" id="(1.0,0.4166666666666667)"/>
<targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Dc4J4SHbEeaZftaCMtSpsw" id="(0.0,0.7961783439490446)"/>
</edges>
<edges xmi:type="notation:Connector" xmi:id="_GuxYcCHbEeaZftaCMtSpsw" type="7000" source="_q0Z_UCHaEeaZftaCMtSpsw" target="_tlLd0CHaEeaZftaCMtSpsw">
<children xmi:type="notation:DecorationNode" xmi:id="_GuxYcyHbEeaZftaCMtSpsw" type="7001">
<layoutConstraint xmi:type="notation:Location" xmi:id="_GuxYdCHbEeaZftaCMtSpsw"/>
</children>
<children xmi:type="notation:DecorationNode" xmi:id="_GuxYdSHbEeaZftaCMtSpsw" type="7002">
<layoutConstraint xmi:type="notation:Location" xmi:id="_GuxYdiHbEeaZftaCMtSpsw"/>
</children>
<children xmi:type="notation:DecorationNode" xmi:id="_GuxYdyHbEeaZftaCMtSpsw" type="7003">
<layoutConstraint xmi:type="notation:Location" xmi:id="_GuxYeCHbEeaZftaCMtSpsw" y="60"/>
</children>
<styles xmi:type="notation:FontStyle" xmi:id="_GuxYcSHbEeaZftaCMtSpsw"/>
<element xmi:type="uml:Transition" href="linked-regions.uml#_GuTeYCHbEeaZftaCMtSpsw"/>
<bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_GuxYciHbEeaZftaCMtSpsw"/>
<sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_GwLGoCHbEeaZftaCMtSpsw" id="(1.0,0.47770700636942676)"/>
<targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_GwLGoSHbEeaZftaCMtSpsw" id="(0.0,0.07458563535911603)"/>
</edges>
<edges xmi:type="notation:Connector" xmi:id="_Hj6QsCHbEeaZftaCMtSpsw" type="7000" source="_sSBz4CHaEeaZftaCMtSpsw" target="_tlLd0CHaEeaZftaCMtSpsw">
<children xmi:type="notation:DecorationNode" xmi:id="_Hj63wCHbEeaZftaCMtSpsw" type="7001">
<layoutConstraint xmi:type="notation:Location" xmi:id="_Hj63wSHbEeaZftaCMtSpsw"/>
</children>
<children xmi:type="notation:DecorationNode" xmi:id="_Hj63wiHbEeaZftaCMtSpsw" type="7002">
<layoutConstraint xmi:type="notation:Location" xmi:id="_Hj63wyHbEeaZftaCMtSpsw"/>
</children>
<children xmi:type="notation:DecorationNode" xmi:id="_Hj63xCHbEeaZftaCMtSpsw" type="7003">
<layoutConstraint xmi:type="notation:Location" xmi:id="_Hj63xSHbEeaZftaCMtSpsw" y="60"/>
</children>
<styles xmi:type="notation:FontStyle" xmi:id="_Hj6QsSHbEeaZftaCMtSpsw"/>
<element xmi:type="uml:Transition" href="linked-regions.uml#_HjcWoCHbEeaZftaCMtSpsw"/>
<bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_Hj6QsiHbEeaZftaCMtSpsw"/>
<sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_HleW8CHbEeaZftaCMtSpsw" id="(1.0,0.4394904458598726)"/>
<targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_HleW8SHbEeaZftaCMtSpsw" id="(0.0,0.8397790055248618)"/>
</edges>
<edges xmi:type="notation:Connector" xmi:id="_KIr6kCHbEeaZftaCMtSpsw" type="7000" source="_tlLd0CHaEeaZftaCMtSpsw" target="_61ePMCHaEeaZftaCMtSpsw">
<children xmi:type="notation:DecorationNode" xmi:id="_KIr6kyHbEeaZftaCMtSpsw" type="7001">
<layoutConstraint xmi:type="notation:Location" xmi:id="_KIshoCHbEeaZftaCMtSpsw"/>
</children>
<children xmi:type="notation:DecorationNode" xmi:id="_KIshoSHbEeaZftaCMtSpsw" type="7002">
<layoutConstraint xmi:type="notation:Location" xmi:id="_KIshoiHbEeaZftaCMtSpsw"/>
</children>
<children xmi:type="notation:DecorationNode" xmi:id="_KIshoyHbEeaZftaCMtSpsw" type="7003">
<layoutConstraint xmi:type="notation:Location" xmi:id="_KIshpCHbEeaZftaCMtSpsw" y="60"/>
</children>
<styles xmi:type="notation:FontStyle" xmi:id="_KIr6kSHbEeaZftaCMtSpsw"/>
<element xmi:type="uml:Transition" href="linked-regions.uml#_KINZcCHbEeaZftaCMtSpsw"/>
<bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_KIr6kiHbEeaZftaCMtSpsw" points="[10, 14, -105, -156]$[103, 169, -12, -1]"/>
<sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_KKFBsCHbEeaZftaCMtSpsw" id="(1.0,0.4696132596685083)"/>
<targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_KKFBsSHbEeaZftaCMtSpsw" id="(0.0,0.4777777777777778)"/>
</edges>
</notation:Diagram>

View File

@@ -0,0 +1,98 @@
<?xml version="1.0" encoding="UTF-8"?>
<uml:Model xmi:version="20131001" xmlns:xmi="http://www.omg.org/spec/XMI/20131001" xmlns:uml="http://www.eclipse.org/uml2/5.0.0/UML" xmi:id="_2ME70CHSEeae5aYuVP_vwQ" name="RootElement">
<packagedElement xmi:type="uml:StateMachine" xmi:id="_2MLpgCHSEeae5aYuVP_vwQ" name="StateMachine">
<region xmi:type="uml:Region" xmi:id="_2MOs0CHSEeae5aYuVP_vwQ" name="Region1">
<transition xmi:type="uml:Transition" xmi:id="_oAyacCHVEeaZftaCMtSpsw" source="_iCRNkCHVEeaZftaCMtSpsw" target="_DzorwCHVEeaZftaCMtSpsw"/>
<transition xmi:type="uml:Transition" xmi:id="_RGEq0CHYEeaZftaCMtSpsw" source="_y1Y6kCHXEeaZftaCMtSpsw" target="_GlFqQCHWEeaZftaCMtSpsw"/>
<transition xmi:type="uml:Transition" xmi:id="_KINZcCHbEeaZftaCMtSpsw" source="_tktjwCHaEeaZftaCMtSpsw" target="_61CKUCHaEeaZftaCMtSpsw"/>
<subvertex xmi:type="uml:State" xmi:id="_DzorwCHVEeaZftaCMtSpsw" name="S1">
<region xmi:type="uml:Region" xmi:id="_F6tF8CHVEeaZftaCMtSpsw" name="Region1">
<transition xmi:type="uml:Transition" xmi:id="_pHLawCHVEeaZftaCMtSpsw" source="_jF7qACHVEeaZftaCMtSpsw" target="_Hmy0UCHVEeaZftaCMtSpsw"/>
<transition xmi:type="uml:Transition" xmi:id="_H74zMCHYEeaZftaCMtSpsw" source="_qPy9wCHXEeaZftaCMtSpsw" target="_y1Y6kCHXEeaZftaCMtSpsw"/>
<subvertex xmi:type="uml:State" xmi:id="_Hmy0UCHVEeaZftaCMtSpsw" name="Step0">
<region xmi:type="uml:Region" xmi:id="_MWpOoSHVEeaZftaCMtSpsw" name="Region1">
<transition xmi:type="uml:Transition" xmi:id="_zFRbkCHVEeaZftaCMtSpsw" source="_k0KGYCHVEeaZftaCMtSpsw" target="_O2BbICHVEeaZftaCMtSpsw"/>
<transition xmi:type="uml:Transition" xmi:id="_ElT48CHYEeaZftaCMtSpsw" source="_O2BbICHVEeaZftaCMtSpsw" target="_qPy9wCHXEeaZftaCMtSpsw"/>
<subvertex xmi:type="uml:State" xmi:id="_O2BbICHVEeaZftaCMtSpsw" name="task2"/>
<subvertex xmi:type="uml:Pseudostate" xmi:id="_k0KGYCHVEeaZftaCMtSpsw" name=""/>
</region>
<region xmi:type="uml:Region" xmi:id="_NAxJsCHVEeaZftaCMtSpsw" name="Region2">
<transition xmi:type="uml:Transition" xmi:id="_yNzoECHVEeaZftaCMtSpsw" source="_j8_N0CHVEeaZftaCMtSpsw" target="_NtH5YCHVEeaZftaCMtSpsw"/>
<transition xmi:type="uml:Transition" xmi:id="_DWShECHYEeaZftaCMtSpsw" source="_NtH5YCHVEeaZftaCMtSpsw" target="_qPy9wCHXEeaZftaCMtSpsw"/>
<subvertex xmi:type="uml:State" xmi:id="_NtH5YCHVEeaZftaCMtSpsw" name="task1"/>
<subvertex xmi:type="uml:Pseudostate" xmi:id="_j8_N0CHVEeaZftaCMtSpsw" name=""/>
</region>
</subvertex>
<subvertex xmi:type="uml:Pseudostate" xmi:id="_jF7qACHVEeaZftaCMtSpsw" name=""/>
<subvertex xmi:type="uml:Pseudostate" xmi:id="_qPy9wCHXEeaZftaCMtSpsw" name="JOIN1" kind="join"/>
</region>
<region xmi:type="uml:Region" xmi:id="_GWMIECHVEeaZftaCMtSpsw" name="Region2">
<transition xmi:type="uml:Transition" xmi:id="_xD4yoCHVEeaZftaCMtSpsw" source="_qFSo0CHVEeaZftaCMtSpsw" target="_J3gSsCHVEeaZftaCMtSpsw"/>
<transition xmi:type="uml:Transition" xmi:id="_MzQKwCHYEeaZftaCMtSpsw" source="_z6VJYCHXEeaZftaCMtSpsw" target="_y1Y6kCHXEeaZftaCMtSpsw"/>
<subvertex xmi:type="uml:State" xmi:id="_J3gSsCHVEeaZftaCMtSpsw" name="Step1">
<region xmi:type="uml:Region" xmi:id="_P-rsUCHVEeaZftaCMtSpsw" name="Region1">
<transition xmi:type="uml:Transition" xmi:id="_1QQFYCHVEeaZftaCMtSpsw" source="_mV60ECHVEeaZftaCMtSpsw" target="_SXqV4CHVEeaZftaCMtSpsw"/>
<transition xmi:type="uml:Transition" xmi:id="_GmOAwCHYEeaZftaCMtSpsw" source="_SXqV4CHVEeaZftaCMtSpsw" target="_z6VJYCHXEeaZftaCMtSpsw"/>
<subvertex xmi:type="uml:State" xmi:id="_SXqV4CHVEeaZftaCMtSpsw" name="task4"/>
<subvertex xmi:type="uml:Pseudostate" xmi:id="_mV60ECHVEeaZftaCMtSpsw" name=""/>
</region>
<region xmi:type="uml:Region" xmi:id="_QR6KUCHVEeaZftaCMtSpsw" name="Region2">
<transition xmi:type="uml:Transition" xmi:id="_0KvO0CHVEeaZftaCMtSpsw" source="_lj_A0CHVEeaZftaCMtSpsw" target="_Q-SIICHVEeaZftaCMtSpsw"/>
<transition xmi:type="uml:Transition" xmi:id="_Fc_H0CHYEeaZftaCMtSpsw" source="_Q-SIICHVEeaZftaCMtSpsw" target="_z6VJYCHXEeaZftaCMtSpsw"/>
<subvertex xmi:type="uml:State" xmi:id="_Q-SIICHVEeaZftaCMtSpsw" name="task3"/>
<subvertex xmi:type="uml:Pseudostate" xmi:id="_lj_A0CHVEeaZftaCMtSpsw" name=""/>
</region>
</subvertex>
<subvertex xmi:type="uml:Pseudostate" xmi:id="_qFSo0CHVEeaZftaCMtSpsw" name=""/>
<subvertex xmi:type="uml:Pseudostate" xmi:id="_z6VJYCHXEeaZftaCMtSpsw" name="JOIN2" kind="join"/>
</region>
</subvertex>
<subvertex xmi:type="uml:Pseudostate" xmi:id="_iCRNkCHVEeaZftaCMtSpsw" name=""/>
<subvertex xmi:type="uml:State" xmi:id="_GlFqQCHWEeaZftaCMtSpsw" name="S2">
<region xmi:type="uml:Region" xmi:id="_LeY7giHWEeaZftaCMtSpsw" name="Region1">
<transition xmi:type="uml:Transition" xmi:id="_DYpuACHXEeaZftaCMtSpsw" source="_z8XmMCHWEeaZftaCMtSpsw" target="_VH0T4CHWEeaZftaCMtSpsw"/>
<transition xmi:type="uml:Transition" xmi:id="_HjcWoCHbEeaZftaCMtSpsw" source="_sRkg4CHaEeaZftaCMtSpsw" target="_tktjwCHaEeaZftaCMtSpsw"/>
<subvertex xmi:type="uml:State" xmi:id="_VH0T4CHWEeaZftaCMtSpsw" name="Step11">
<region xmi:type="uml:Region" xmi:id="_j4MX8SHWEeaZftaCMtSpsw" name="Region1">
<transition xmi:type="uml:Transition" xmi:id="_HPJecCHXEeaZftaCMtSpsw" source="_2y-m8CHWEeaZftaCMtSpsw" target="_lGpIECHWEeaZftaCMtSpsw"/>
<transition xmi:type="uml:Transition" xmi:id="_Da07cCHbEeaZftaCMtSpsw" source="_lGpIECHWEeaZftaCMtSpsw" target="_sRkg4CHaEeaZftaCMtSpsw"/>
<subvertex xmi:type="uml:State" xmi:id="_lGpIECHWEeaZftaCMtSpsw" name="step8"/>
<subvertex xmi:type="uml:Pseudostate" xmi:id="_2y-m8CHWEeaZftaCMtSpsw" name=""/>
</region>
<region xmi:type="uml:Region" xmi:id="_kMOuQCHWEeaZftaCMtSpsw" name="Region2">
<transition xmi:type="uml:Transition" xmi:id="_GTnDQCHXEeaZftaCMtSpsw" source="_1ufrICHWEeaZftaCMtSpsw" target="_kn0eECHWEeaZftaCMtSpsw"/>
<transition xmi:type="uml:Transition" xmi:id="_CYUVkCHbEeaZftaCMtSpsw" source="_kn0eECHWEeaZftaCMtSpsw" target="_sRkg4CHaEeaZftaCMtSpsw"/>
<subvertex xmi:type="uml:State" xmi:id="_kn0eECHWEeaZftaCMtSpsw" name="step7"/>
<subvertex xmi:type="uml:Pseudostate" xmi:id="_1ufrICHWEeaZftaCMtSpsw" name=""/>
</region>
</subvertex>
<subvertex xmi:type="uml:Pseudostate" xmi:id="_z8XmMCHWEeaZftaCMtSpsw"/>
<subvertex xmi:type="uml:Pseudostate" xmi:id="_sRkg4CHaEeaZftaCMtSpsw" name="JOIN5" kind="join"/>
</region>
<region xmi:type="uml:Region" xmi:id="_L93FwCHWEeaZftaCMtSpsw" name="Region2">
<transition xmi:type="uml:Transition" xmi:id="_BkGnMCHXEeaZftaCMtSpsw" source="_zJLOsCHWEeaZftaCMtSpsw" target="_O0Ed4CHWEeaZftaCMtSpsw"/>
<transition xmi:type="uml:Transition" xmi:id="_GuTeYCHbEeaZftaCMtSpsw" source="_qz4a4CHaEeaZftaCMtSpsw" target="_tktjwCHaEeaZftaCMtSpsw"/>
<subvertex xmi:type="uml:State" xmi:id="_O0Ed4CHWEeaZftaCMtSpsw" name="Step01">
<region xmi:type="uml:Region" xmi:id="_fG5MICHWEeaZftaCMtSpsw" name="Region1">
<transition xmi:type="uml:Transition" xmi:id="_FInPwCHXEeaZftaCMtSpsw" source="_09vjoCHWEeaZftaCMtSpsw" target="_i_3BwCHWEeaZftaCMtSpsw"/>
<transition xmi:type="uml:Transition" xmi:id="_BhxvICHbEeaZftaCMtSpsw" source="_i_3BwCHWEeaZftaCMtSpsw" target="_qz4a4CHaEeaZftaCMtSpsw"/>
<subvertex xmi:type="uml:State" xmi:id="_i_3BwCHWEeaZftaCMtSpsw" name="step6"/>
<subvertex xmi:type="uml:Pseudostate" xmi:id="_09vjoCHWEeaZftaCMtSpsw" name=""/>
</region>
<region xmi:type="uml:Region" xmi:id="_fayYgCHWEeaZftaCMtSpsw" name="Region2">
<transition xmi:type="uml:Transition" xmi:id="_EWG0wCHXEeaZftaCMtSpsw" source="_0eFMICHWEeaZftaCMtSpsw" target="_gXSdACHWEeaZftaCMtSpsw"/>
<transition xmi:type="uml:Transition" xmi:id="_AIox8CHbEeaZftaCMtSpsw" source="_gXSdACHWEeaZftaCMtSpsw" target="_qz4a4CHaEeaZftaCMtSpsw"/>
<subvertex xmi:type="uml:State" xmi:id="_gXSdACHWEeaZftaCMtSpsw" name="step5"/>
<subvertex xmi:type="uml:Pseudostate" xmi:id="_0eFMICHWEeaZftaCMtSpsw"/>
</region>
</subvertex>
<subvertex xmi:type="uml:Pseudostate" xmi:id="_zJLOsCHWEeaZftaCMtSpsw" name=""/>
<subvertex xmi:type="uml:Pseudostate" xmi:id="_qz4a4CHaEeaZftaCMtSpsw" name="JOIN4" kind="join"/>
</region>
</subvertex>
<subvertex xmi:type="uml:Pseudostate" xmi:id="_y1Y6kCHXEeaZftaCMtSpsw" name="JOIN3" kind="join"/>
<subvertex xmi:type="uml:Pseudostate" xmi:id="_tktjwCHaEeaZftaCMtSpsw" name="JOIN6" kind="join"/>
<subvertex xmi:type="uml:State" xmi:id="_61CKUCHaEeaZftaCMtSpsw" name="S3"/>
</region>
</packagedElement>
</uml:Model>

View File

@@ -105,7 +105,8 @@ public class JoinPseudoState<S, E> extends AbstractPseudoState<S, E> {
@Override
public void onEntry(StateContext<S, E> context) {
if (StateMachineUtils.isPseudoState(context.getTransition().getTarget(), PseudoStateKind.END)) {
if (context.getTransition() != null && StateMachineUtils
.isPseudoState(context.getTransition().getTarget(), PseudoStateKind.END)) {
if (!notified && track.size() > 0) {
track.remove(t);
if (track.size() == 0) {

View File

@@ -1142,7 +1142,11 @@ public abstract class AbstractStateMachine<S, E> extends StateMachineObjectSuppo
}
}
notifyStateEntered(buildStateContext(Stage.STATE_ENTRY, message, transition, getRelayStateMachine(), null, state));
// with linked joins, we need to enter state but should not notify.
// state entries are needed to track join logic.
if (!StateMachineUtils.isPseudoState(state, PseudoStateKind.JOIN)) {
notifyStateEntered(buildStateContext(Stage.STATE_ENTRY, message, transition, getRelayStateMachine(), null, state));
}
log.debug("Enter state=[" + state + "]");
state.entry(stateContext);
}