From 35b2e56bf39936d4b9e0d542edf9b67bffcdd094 Mon Sep 17 00:00:00 2001 From: Julien Deantoni Date: Thu, 19 Nov 2015 16:07:01 +0100 Subject: [PATCH] remove old example to add a single new, simplest one --- .directory | 4 + .../org.gemoc.sample.tfsm.model/.project | 6 + .../TFSM/modeling_workbench/.directory | 4 + .../.project | 23 - ...daynight_single_traffic_light_control.aird | 974 -------------- ...daynight_single_traffic_light_control.tfsm | 41 - ...ffic_light_control_executionModel.feedback | 127 -- ...fic_light_control_executionModel.timemodel | 1139 ----------------- .../daynight_single_traffic_light.launch | 19 - .../readme.txt | 4 - .../.classpath | 7 - .../.gitignore | 1 - .../.project | 29 - .../.settings/org.eclipse.jdt.core.prefs | 7 - .../META-INF/MANIFEST.MF | 11 - .../build.properties | 4 - ...daynight_traffic_light_with_groovygui.aird | 901 ------------- ...ht_traffic_light_with_groovygui.properties | 5 - ...daynight_traffic_light_with_groovygui.tfsm | 39 - ...ynight_traffic_light_with_groovygui.launch | 19 - .../readme.txt | 2 - .../src/groovy/control.groovy | 66 - .../src/groovy/controllightgui.groovy | 195 --- .../src/groovy/cross0-day.png | Bin 57276 -> 0 bytes .../src/groovy/cross0-night.png | Bin 56633 -> 0 bytes .../src/groovy/cross1-day.png | Bin 57517 -> 0 bytes .../src/groovy/cross1-night.png | Bin 56926 -> 0 bytes .../.gitignore | 0 .../.project | 2 +- .../launch/simple_example.launch} | 10 +- .../simple_example.aird | 514 ++++++++ .../simple_example.tfsm | 31 + .../.classpath | 8 - .../.project | 28 - .../.settings/org.eclipse.jdt.core.prefs | 7 - .../META-INF/MANIFEST.MF | 16 - .../build.properties | 5 - .../pom.xml | 20 - .../TrafficControl/blocks/MainBlockBlock.java | 505 -------- .../mocc/expressions/DelayForDef.java | 90 -- .../mocc/expressions/FilterByDef.java | 237 ---- .../mocc/expressions/OneTickAndNoMoreDef.java | 72 -- .../mocc/expressions/SampledOnDef.java | 84 -- .../mocc/main/TrafficControlMain.java | 30 - .../mocc/models/TrafficControlModel.java | 53 - .../mocc/relations/AlternatesDef.java | 123 -- .../relations/FSMEventSendReceiveDef.java | 86 -- .../mocc/tests/TrafficControlTests.java | 34 - .../.gitignore | 1 - .../single_traffic_light.aird | 465 ------- .../single_traffic_light.tfsm | 19 - 51 files changed, 565 insertions(+), 5502 deletions(-) create mode 100644 .directory create mode 100644 official_samples/TFSM/modeling_workbench/.directory delete mode 100644 official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.daynight_single_traffic_light_sample/.project delete mode 100644 official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.daynight_single_traffic_light_sample/daynight_single_traffic_light_control.aird delete mode 100644 official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.daynight_single_traffic_light_sample/daynight_single_traffic_light_control.tfsm delete mode 100644 official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.daynight_single_traffic_light_sample/daynight_single_traffic_light_control_executionModel.feedback delete mode 100644 official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.daynight_single_traffic_light_sample/daynight_single_traffic_light_control_executionModel.timemodel delete mode 100644 official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.daynight_single_traffic_light_sample/launch/daynight_single_traffic_light.launch delete mode 100644 official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.daynight_single_traffic_light_sample/readme.txt delete mode 100644 official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.daynight_traffic_light_with_groovygui_sample/.classpath delete mode 100644 official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.daynight_traffic_light_with_groovygui_sample/.gitignore delete mode 100644 official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.daynight_traffic_light_with_groovygui_sample/.project delete mode 100644 official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.daynight_traffic_light_with_groovygui_sample/.settings/org.eclipse.jdt.core.prefs delete mode 100644 official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.daynight_traffic_light_with_groovygui_sample/META-INF/MANIFEST.MF delete mode 100644 official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.daynight_traffic_light_with_groovygui_sample/build.properties delete mode 100644 official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.daynight_traffic_light_with_groovygui_sample/daynight_traffic_light_with_groovygui.aird delete mode 100644 official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.daynight_traffic_light_with_groovygui_sample/daynight_traffic_light_with_groovygui.properties delete mode 100644 official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.daynight_traffic_light_with_groovygui_sample/daynight_traffic_light_with_groovygui.tfsm delete mode 100644 official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.daynight_traffic_light_with_groovygui_sample/launch/daynight_traffic_light_with_groovygui.launch delete mode 100644 official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.daynight_traffic_light_with_groovygui_sample/readme.txt delete mode 100644 official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.daynight_traffic_light_with_groovygui_sample/src/groovy/control.groovy delete mode 100644 official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.daynight_traffic_light_with_groovygui_sample/src/groovy/controllightgui.groovy delete mode 100644 official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.daynight_traffic_light_with_groovygui_sample/src/groovy/cross0-day.png delete mode 100644 official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.daynight_traffic_light_with_groovygui_sample/src/groovy/cross0-night.png delete mode 100644 official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.daynight_traffic_light_with_groovygui_sample/src/groovy/cross1-day.png delete mode 100644 official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.daynight_traffic_light_with_groovygui_sample/src/groovy/cross1-night.png rename official_samples/TFSM/modeling_workbench/{org.gemoc.sample.tfsm.daynight_single_traffic_light_sample => org.gemoc.sample.tfsm.simple_example}/.gitignore (100%) rename official_samples/TFSM/modeling_workbench/{org.gemoc.sample.tfsm.single_traffic_light_sample => org.gemoc.sample.tfsm.simple_example}/.project (86%) rename official_samples/TFSM/modeling_workbench/{org.gemoc.sample.tfsm.single_traffic_light_sample/launch/single_traffic_light.launch => org.gemoc.sample.tfsm.simple_example/launch/simple_example.launch} (67%) create mode 100644 official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.simple_example/simple_example.aird create mode 100644 official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.simple_example/simple_example.tfsm delete mode 100644 official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.single_traffic_light_sample.mocc/.classpath delete mode 100644 official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.single_traffic_light_sample.mocc/.project delete mode 100644 official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.single_traffic_light_sample.mocc/.settings/org.eclipse.jdt.core.prefs delete mode 100644 official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.single_traffic_light_sample.mocc/META-INF/MANIFEST.MF delete mode 100644 official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.single_traffic_light_sample.mocc/build.properties delete mode 100644 official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.single_traffic_light_sample.mocc/pom.xml delete mode 100644 official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.single_traffic_light_sample.mocc/src-gen/org/gemoc/sample/tfsm/single_traffic_light_sample/mocc/TrafficControl/blocks/MainBlockBlock.java delete mode 100644 official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.single_traffic_light_sample.mocc/src-gen/org/gemoc/sample/tfsm/single_traffic_light_sample/mocc/expressions/DelayForDef.java delete mode 100644 official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.single_traffic_light_sample.mocc/src-gen/org/gemoc/sample/tfsm/single_traffic_light_sample/mocc/expressions/FilterByDef.java delete mode 100644 official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.single_traffic_light_sample.mocc/src-gen/org/gemoc/sample/tfsm/single_traffic_light_sample/mocc/expressions/OneTickAndNoMoreDef.java delete mode 100644 official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.single_traffic_light_sample.mocc/src-gen/org/gemoc/sample/tfsm/single_traffic_light_sample/mocc/expressions/SampledOnDef.java delete mode 100644 official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.single_traffic_light_sample.mocc/src-gen/org/gemoc/sample/tfsm/single_traffic_light_sample/mocc/main/TrafficControlMain.java delete mode 100644 official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.single_traffic_light_sample.mocc/src-gen/org/gemoc/sample/tfsm/single_traffic_light_sample/mocc/models/TrafficControlModel.java delete mode 100644 official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.single_traffic_light_sample.mocc/src-gen/org/gemoc/sample/tfsm/single_traffic_light_sample/mocc/relations/AlternatesDef.java delete mode 100644 official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.single_traffic_light_sample.mocc/src-gen/org/gemoc/sample/tfsm/single_traffic_light_sample/mocc/relations/FSMEventSendReceiveDef.java delete mode 100644 official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.single_traffic_light_sample.mocc/src-gen/org/gemoc/sample/tfsm/single_traffic_light_sample/mocc/tests/TrafficControlTests.java delete mode 100644 official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.single_traffic_light_sample/.gitignore delete mode 100644 official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.single_traffic_light_sample/single_traffic_light.aird delete mode 100644 official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.single_traffic_light_sample/single_traffic_light.tfsm diff --git a/.directory b/.directory new file mode 100644 index 000000000..8b053b8b7 --- /dev/null +++ b/.directory @@ -0,0 +1,4 @@ +[Dolphin] +Timestamp=2015,11,18,11,55,11 +Version=3 +ViewMode=1 diff --git a/official_samples/TFSM/language_workbench/org.gemoc.sample.tfsm.model/.project b/official_samples/TFSM/language_workbench/org.gemoc.sample.tfsm.model/.project index e9d1c4e72..db58c9f31 100644 --- a/official_samples/TFSM/language_workbench/org.gemoc.sample.tfsm.model/.project +++ b/official_samples/TFSM/language_workbench/org.gemoc.sample.tfsm.model/.project @@ -5,6 +5,11 @@ + + org.eclipse.xtext.ui.shared.xtextBuilder + + + org.eclipse.jdt.core.javabuilder @@ -31,5 +36,6 @@ org.eclipse.jdt.core.javanature org.eclipse.pde.PluginNature org.eclipse.emf.ecoretools.registration.ui.ecoreAutoRegisterNature + org.eclipse.xtext.ui.shared.xtextNature diff --git a/official_samples/TFSM/modeling_workbench/.directory b/official_samples/TFSM/modeling_workbench/.directory new file mode 100644 index 000000000..cf8521a90 --- /dev/null +++ b/official_samples/TFSM/modeling_workbench/.directory @@ -0,0 +1,4 @@ +[Dolphin] +Timestamp=2015,11,19,15,53,42 +Version=3 +ViewMode=1 diff --git a/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.daynight_single_traffic_light_sample/.project b/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.daynight_single_traffic_light_sample/.project deleted file mode 100644 index 610cf0693..000000000 --- a/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.daynight_single_traffic_light_sample/.project +++ /dev/null @@ -1,23 +0,0 @@ - - - org.gemoc.sample.tfsm.daynight_single_traffic_light_sample - - - - - - org.eclipse.xtext.ui.shared.xtextBuilder - - - - - org.gemoc.gemoc_modeling_workbench.ui.gemocReflectiveModelBuilder - - - - - - org.gemoc.gemoc_modeling_workbench.ui.gemocReflectiveModelNature - org.eclipse.xtext.ui.shared.xtextNature - - diff --git a/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.daynight_single_traffic_light_sample/daynight_single_traffic_light_control.aird b/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.daynight_single_traffic_light_sample/daynight_single_traffic_light_control.aird deleted file mode 100644 index 1a3bbb012..000000000 --- a/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.daynight_single_traffic_light_sample/daynight_single_traffic_light_control.aird +++ /dev/null @@ -1,974 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - KEEP_LOCATION - KEEP_SIZE - KEEP_RATIO - - - - - - - - - - - - KEEP_LOCATION - KEEP_SIZE - KEEP_RATIO - - - - - - - - - - - - KEEP_LOCATION - KEEP_SIZE - KEEP_RATIO - - - - - - - - - - - - KEEP_LOCATION - KEEP_SIZE - KEEP_RATIO - - - - - - - - - - - - - KEEP_LOCATION - KEEP_SIZE - KEEP_RATIO - - - - - - - - - - - - KEEP_LOCATION - KEEP_SIZE - KEEP_RATIO - - - - - - - - - - - - KEEP_LOCATION - KEEP_SIZE - KEEP_RATIO - - - - - - - - - - - - KEEP_LOCATION - KEEP_SIZE - KEEP_RATIO - - - - - - - - - - - - - KEEP_LOCATION - KEEP_SIZE - KEEP_RATIO - - - - - - - - - - - - - - - - - - - - KEEP_LOCATION - KEEP_SIZE - KEEP_RATIO - - - - - - - - - - - KEEP_LOCATION - KEEP_SIZE - KEEP_RATIO - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - KEEP_LOCATION - KEEP_SIZE - KEEP_RATIO - - - - - - - - - - - - KEEP_LOCATION - KEEP_SIZE - KEEP_RATIO - - - - - - - - - - - - KEEP_LOCATION - KEEP_SIZE - KEEP_RATIO - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - KEEP_LOCATION - KEEP_SIZE - KEEP_RATIO - - - - - - - - - - - - - - - - - - - - - - - KEEP_LOCATION - KEEP_SIZE - KEEP_RATIO - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.daynight_single_traffic_light_sample/daynight_single_traffic_light_control.tfsm b/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.daynight_single_traffic_light_sample/daynight_single_traffic_light_control.tfsm deleted file mode 100644 index 08f793ad1..000000000 --- a/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.daynight_single_traffic_light_sample/daynight_single_traffic_light_control.tfsm +++ /dev/null @@ -1,41 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.daynight_single_traffic_light_sample/daynight_single_traffic_light_control_executionModel.feedback b/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.daynight_single_traffic_light_sample/daynight_single_traffic_light_control_executionModel.feedback deleted file mode 100644 index 5c992937b..000000000 --- a/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.daynight_single_traffic_light_sample/daynight_single_traffic_light_control_executionModel.feedback +++ /dev/null @@ -1,127 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.daynight_single_traffic_light_sample/daynight_single_traffic_light_control_executionModel.timemodel b/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.daynight_single_traffic_light_sample/daynight_single_traffic_light_control_executionModel.timemodel deleted file mode 100644 index ba812af93..000000000 --- a/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.daynight_single_traffic_light_sample/daynight_single_traffic_light_control_executionModel.timemodel +++ /dev/null @@ -1,1139 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.daynight_single_traffic_light_sample/launch/daynight_single_traffic_light.launch b/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.daynight_single_traffic_light_sample/launch/daynight_single_traffic_light.launch deleted file mode 100644 index f4dd65980..000000000 --- a/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.daynight_single_traffic_light_sample/launch/daynight_single_traffic_light.launch +++ /dev/null @@ -1,19 +0,0 @@ - - - - - - - - - - - - - - - - - - - diff --git a/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.daynight_single_traffic_light_sample/readme.txt b/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.daynight_single_traffic_light_sample/readme.txt deleted file mode 100644 index bc91e0acf..000000000 --- a/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.daynight_single_traffic_light_sample/readme.txt +++ /dev/null @@ -1,4 +0,0 @@ -In this sample, the day/night changes are coded in 2 free FSMEvents (called dayLightSensor and obscuritySensor) -the model detects it via EventGuards. - -The user of the model can force the the occurrence or not of these FSMEvents in order to simulate the presence or not of light diff --git a/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.daynight_traffic_light_with_groovygui_sample/.classpath b/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.daynight_traffic_light_with_groovygui_sample/.classpath deleted file mode 100644 index eca7bdba8..000000000 --- a/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.daynight_traffic_light_with_groovygui_sample/.classpath +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - - diff --git a/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.daynight_traffic_light_with_groovygui_sample/.gitignore b/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.daynight_traffic_light_with_groovygui_sample/.gitignore deleted file mode 100644 index e17397607..000000000 --- a/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.daynight_traffic_light_with_groovygui_sample/.gitignore +++ /dev/null @@ -1 +0,0 @@ -/gemoc-gen/ diff --git a/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.daynight_traffic_light_with_groovygui_sample/.project b/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.daynight_traffic_light_with_groovygui_sample/.project deleted file mode 100644 index fdd9def22..000000000 --- a/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.daynight_traffic_light_with_groovygui_sample/.project +++ /dev/null @@ -1,29 +0,0 @@ - - - org.gemoc.sample.tfsm.daynight_traffic_light_with_groovygui_sample - - - - - - org.eclipse.jdt.core.javabuilder - - - - - org.eclipse.pde.ManifestBuilder - - - - - org.eclipse.pde.SchemaBuilder - - - - - - org.eclipse.pde.PluginNature - org.eclipse.jdt.groovy.core.groovyNature - org.eclipse.jdt.core.javanature - - diff --git a/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.daynight_traffic_light_with_groovygui_sample/.settings/org.eclipse.jdt.core.prefs b/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.daynight_traffic_light_with_groovygui_sample/.settings/org.eclipse.jdt.core.prefs deleted file mode 100644 index 0c68a61dc..000000000 --- a/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.daynight_traffic_light_with_groovygui_sample/.settings/org.eclipse.jdt.core.prefs +++ /dev/null @@ -1,7 +0,0 @@ -eclipse.preferences.version=1 -org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled -org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8 -org.eclipse.jdt.core.compiler.compliance=1.8 -org.eclipse.jdt.core.compiler.problem.assertIdentifier=error -org.eclipse.jdt.core.compiler.problem.enumIdentifier=error -org.eclipse.jdt.core.compiler.source=1.8 diff --git a/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.daynight_traffic_light_with_groovygui_sample/META-INF/MANIFEST.MF b/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.daynight_traffic_light_with_groovygui_sample/META-INF/MANIFEST.MF deleted file mode 100644 index 6d113fb63..000000000 --- a/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.daynight_traffic_light_with_groovygui_sample/META-INF/MANIFEST.MF +++ /dev/null @@ -1,11 +0,0 @@ -Manifest-Version: 1.0 -Bundle-ManifestVersion: 2 -Bundle-Name: Daynight_traffic_light_with_groovygui_sample -Bundle-SymbolicName: org.gemoc.sample.tfsm.daynight_traffic_light_with_groovygui_sample -Bundle-Version: 1.0.0.qualifier -Require-Bundle: org.eclipse.ui, - org.eclipse.core.runtime, - org.eclipse.core.resources;bundle-version="3.9.1", - org.codehaus.groovy;bundle-version="2.3.3", - org.eclipse.emf.common;bundle-version="2.10.1" -Bundle-RequiredExecutionEnvironment: JavaSE-1.8 diff --git a/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.daynight_traffic_light_with_groovygui_sample/build.properties b/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.daynight_traffic_light_with_groovygui_sample/build.properties deleted file mode 100644 index 34d2e4d2d..000000000 --- a/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.daynight_traffic_light_with_groovygui_sample/build.properties +++ /dev/null @@ -1,4 +0,0 @@ -source.. = src/ -output.. = bin/ -bin.includes = META-INF/,\ - . diff --git a/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.daynight_traffic_light_with_groovygui_sample/daynight_traffic_light_with_groovygui.aird b/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.daynight_traffic_light_with_groovygui_sample/daynight_traffic_light_with_groovygui.aird deleted file mode 100644 index d7ede6c20..000000000 --- a/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.daynight_traffic_light_with_groovygui_sample/daynight_traffic_light_with_groovygui.aird +++ /dev/null @@ -1,901 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - KEEP_LOCATION - KEEP_SIZE - KEEP_RATIO - - - - - - - - - - - - KEEP_LOCATION - KEEP_SIZE - KEEP_RATIO - - - - - - - - - - - - KEEP_LOCATION - KEEP_SIZE - KEEP_RATIO - - - - - - - - - - - - - KEEP_LOCATION - KEEP_SIZE - KEEP_RATIO - - - - - - - - - - - - KEEP_LOCATION - KEEP_SIZE - KEEP_RATIO - - - - - - - - - - - - KEEP_LOCATION - KEEP_SIZE - KEEP_RATIO - - - - - - - - - - - - KEEP_LOCATION - KEEP_SIZE - KEEP_RATIO - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - KEEP_LOCATION - KEEP_SIZE - KEEP_RATIO - - - - - - - - - - - - - - - - - - - - - - - - - - KEEP_LOCATION - KEEP_SIZE - KEEP_RATIO - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - KEEP_LOCATION - KEEP_SIZE - KEEP_RATIO - - - - - - - - - - - - - - - - - - - - - - - - - - KEEP_LOCATION - KEEP_SIZE - KEEP_RATIO - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.daynight_traffic_light_with_groovygui_sample/daynight_traffic_light_with_groovygui.properties b/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.daynight_traffic_light_with_groovygui_sample/daynight_traffic_light_with_groovygui.properties deleted file mode 100644 index 1e925157d..000000000 --- a/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.daynight_traffic_light_with_groovygui_sample/daynight_traffic_light_with_groovygui.properties +++ /dev/null @@ -1,5 +0,0 @@ -# properties configurations used by the tfsm engine hook to enable groovy scripting -pre.start.engine.groovy.script.file = platform:/resource/org.gemoc.sample.tfsm.daynight_traffic_light_with_groovygui_sample/src/groovy/controllightgui.groovy -pre.start.engine.groovy.operation = initControlLight - -dsa.groovy.script.file = platform:/resource/org.gemoc.sample.tfsm.daynight_traffic_light_with_groovygui_sample/src/groovy/control.groovy \ No newline at end of file diff --git a/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.daynight_traffic_light_with_groovygui_sample/daynight_traffic_light_with_groovygui.tfsm b/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.daynight_traffic_light_with_groovygui_sample/daynight_traffic_light_with_groovygui.tfsm deleted file mode 100644 index 5c4253db0..000000000 --- a/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.daynight_traffic_light_with_groovygui_sample/daynight_traffic_light_with_groovygui.tfsm +++ /dev/null @@ -1,39 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.daynight_traffic_light_with_groovygui_sample/launch/daynight_traffic_light_with_groovygui.launch b/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.daynight_traffic_light_with_groovygui_sample/launch/daynight_traffic_light_with_groovygui.launch deleted file mode 100644 index 613134277..000000000 --- a/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.daynight_traffic_light_with_groovygui_sample/launch/daynight_traffic_light_with_groovygui.launch +++ /dev/null @@ -1,19 +0,0 @@ - - - - - - - - - - - - - - - - - - - diff --git a/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.daynight_traffic_light_with_groovygui_sample/readme.txt b/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.daynight_traffic_light_with_groovygui_sample/readme.txt deleted file mode 100644 index f96aafcec..000000000 --- a/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.daynight_traffic_light_with_groovygui_sample/readme.txt +++ /dev/null @@ -1,2 +0,0 @@ -In this sample, the day/night changes are coded in a groovy GUI -the model detects it via EvaluatedGuards that can query its values and use it in the time model. \ No newline at end of file diff --git a/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.daynight_traffic_light_with_groovygui_sample/src/groovy/control.groovy b/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.daynight_traffic_light_with_groovygui_sample/src/groovy/control.groovy deleted file mode 100644 index 563fbc6b4..000000000 --- a/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.daynight_traffic_light_with_groovygui_sample/src/groovy/control.groovy +++ /dev/null @@ -1,66 +0,0 @@ -package groovy -import java.io.File; - -// -// This code controls the GUI -// The methods are invoked from the kermeta's code -// -class ControlScript { - // Returns true if it's day - boolean isDay() { - def s = new Socket("localhost", 4444) - s.withStreams { input, output -> - output << "isday" + "\n" - def buffer = input.newReader().readLine() - if (buffer == "true") {return true} - else {return false} - } - } - // Return true if it's night - boolean isNight() { - def s = new Socket("localhost", 4444) - s.withStreams { input, output -> - output << "isnight" + "\n" - def buffer = input.newReader().readLine() - if (buffer == "true") {return true} - else {return false} - } - } - // Turn the semaphore to green - void doGreen() { - def s = new Socket("localhost", 4444) - s.withStreams { input, output -> - output << "setgreen" + "\n" - } - } - // Turn the semaphore to red - void doRed() { - def s = new Socket("localhost", 4444) - s.withStreams { input, output -> - output << "setred" + "\n" - } - } - - void doNight(){ - // dosomething - } - - void doDay(){ - // dosomething -} - - void dosomething(){ - // dosomething -} - - - - - void doTick() { - def s = new Socket("localhost", 4444) - s.withStreams { input, output -> - output << "tick" + "\n" - } - } - -} \ No newline at end of file diff --git a/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.daynight_traffic_light_with_groovygui_sample/src/groovy/controllightgui.groovy b/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.daynight_traffic_light_with_groovygui_sample/src/groovy/controllightgui.groovy deleted file mode 100644 index 86ebf3997..000000000 --- a/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.daynight_traffic_light_with_groovygui_sample/src/groovy/controllightgui.groovy +++ /dev/null @@ -1,195 +0,0 @@ - - -import javax.swing.WindowConstants as WC - -import java.awt.BorderLayout as BL -import java.awt.FlowLayout; - - -import org.eclipse.swt.SWT -import org.eclipse.swt.widgets.* -import org.eclipse.swt.layout.RowLayout as Layout -import org.eclipse.swt.graphics.Image -import org.eclipse.swt.events.* - -import java.net.ServerSocket -import java.awt.BorderLayout -import java.awt.FlowLayout -import java.awt.Font - -import org.eclipse.core.internal.runtime.PrintStackUtil; -import org.eclipse.core.resources.ResourcesPlugin -import org.eclipse.emf.common.util.URI - - -// -// Here is implemented the GUI which is controlled by the calls from groovy-kermeta methods -// -class controllightgui { - - - - def crossredday - def crossrednight - def crossgreenday - def crossgreennight - - - - def server - def boolean needRefresh = true - def boolean isDay = true - def boolean isNight = false - - def boolean isRed = true - def boolean isGreen = false - def nticks = 0 - Font f = new Font("Serif", Font.BOLD, 16) - - def display - - def boolean needToClose = false - - // - // Semaphore GUI initialization - void initControlLight() { - try{ - crossredday = new Image(display, ResourcesPlugin.getWorkspace().getRoot() - .findMember("/org.gemoc.sample.tfsm.daynight_traffic_light_with_groovygui_sample/src/groovy/cross0-day.png").getLocation().toString()) - crossrednight = new Image(display, ResourcesPlugin.getWorkspace().getRoot() - .findMember("/org.gemoc.sample.tfsm.daynight_traffic_light_with_groovygui_sample/src/groovy/cross0-night.png").getLocation().toString()) - crossgreenday = new Image(display, ResourcesPlugin.getWorkspace().getRoot() - .findMember("/org.gemoc.sample.tfsm.daynight_traffic_light_with_groovygui_sample/src/groovy/cross1-day.png").getLocation().toString()) - crossgreennight = new Image(display, ResourcesPlugin.getWorkspace().getRoot() - .findMember("/org.gemoc.sample.tfsm.daynight_traffic_light_with_groovygui_sample/src/groovy/cross1-night.png").getLocation().toString()) - } catch(e){ - println "Problem finding images for the GUI, please check the path" - throw e - } - server = new ServerSocket(4444) - - internalInitControlLight() - } - void internalInitControlLight() { - def displayThread = Thread.start { - def display = new Display(); // display must be created in the thread that wait for the readAndDispatch() - def shell = new Shell(display) - def cross = new Label(shell, SWT.NONE) - - def tick = new Label(shell, SWT.NONE) - - println "Traffic Control initialization ... done" - println "Starting at Day" - - shell.text = 'Traffic Control: on Day' - - shell.setSize (crossredday.width, crossredday.height) - - // starting in red - cross.setImage(crossredday) - cross.pack() - - tick.setText('0 minutes') - tick.setLocation(300, crossredday.height+15) - tick.pack() - - - // Day/Night Button - Button dayButton = new Button(shell, SWT.TOGGLE) - Button nightButton = new Button(shell, SWT.TOGGLE) - - dayButton.setSelection(true) - dayButton.text = ' Day ' - dayButton.addSelectionListener({ SelectionEvent se -> - isDay = true - isNight = false - nightButton.setSelection(false) - shell.text = 'Traffic Control: on Day' - needRefresh = true - } as SelectionListener) - dayButton.setLocation(0, crossredday.height+10 ) - dayButton.pack() - - // Night Button - nightButton.setSelection(false) - nightButton.text = ' Night ' - nightButton.addSelectionListener({ SelectionEvent se -> - isDay = false - isNight = true - dayButton.setSelection(false) - shell.text = 'Traffic Control: on Night' - needRefresh = true - } as SelectionListener) - nightButton.setLocation(50, crossredday.height+10 ) - nightButton.pack() - - shell.pack() - shell.open() - - println "listening at localhost:4444" - - def th = Thread.start { - while (!needToClose) { - server.accept { socket -> - println "---- new request ----" - socket.withStreams { input, output -> - def reader = input.newReader() - def buffer = reader.readLine() - println "received: $buffer" - if (buffer == 'setred') { - isRed = true - isGreen = false - println "Light in red" - } else if (buffer == 'setgreen') { - isGreen = true - isRed = false - println "Light in green" - } else if (buffer == 'isday'){ - output << isDay.toString() + "\n" - println "returned: "+isDay.toString() - } else if (buffer == 'isnight') { - output << isNight.toString() + "\n" - println "returned: "+isNight.toString() - } else if (buffer == "tick") { - nticks = nticks + 1 - println "ticked: " + nticks.toString() - } else if (buffer == "close"){ - println "closing " - needToClose = true - } - println "---- request finished ----" - } - - } - needRefresh = true - } - } - - - while (!shell.disposed && !needToClose) { - if(needRefresh){ - if (isRed) { - if (isDay) {cross.setImage(crossredday)} else {cross.setImage(crossrednight)} - } else{ - if (isDay){cross.setImage(crossgreenday)} else {cross.setImage(crossgreennight)} - } - tick.setText(nticks.toString()+' minutes ') - needRefresh = false - } - if (!shell.display.readAndDispatch()) shell.display.sleep() - } - needToClose = true - def s = new Socket("localhost", 4444) - s.withStreams { input, output -> - output << "close" + "\n" - } - // wait a bit, that the socket is correctly closed - shell.display.sleep(2000) - server.close() - } - } - - -} - - diff --git a/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.daynight_traffic_light_with_groovygui_sample/src/groovy/cross0-day.png b/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.daynight_traffic_light_with_groovygui_sample/src/groovy/cross0-day.png deleted file mode 100644 index 059f3636d0d0bb907115995eaadbd0b6b322b6b1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 57276 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

J)C{B04*kP~c7GcLw#J~PW@8#inLChN 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 diff --git a/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.daynight_traffic_light_with_groovygui_sample/src/groovy/cross1-day.png b/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.daynight_traffic_light_with_groovygui_sample/src/groovy/cross1-day.png deleted file mode 100644 index ebd6f672dffb91f1e44786bd6fc1089f9d95c378..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 57517 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�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 diff --git a/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.daynight_traffic_light_with_groovygui_sample/src/groovy/cross1-night.png b/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.daynight_traffic_light_with_groovygui_sample/src/groovy/cross1-night.png deleted file mode 100644 index f41a0895259a567c8e0a6d1dc94d4ea55b91a865..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 56926 zcmV*AKySZ^P)_5J^NqRCodGy$PHhRh2(}-_l#s*_Tc_A#6z?i6JZsiZJ?vQ3iev zI)LCfq9_PKG>9zY!YK0@)EQBfMHEJ4#2^0wL~tEtaT#P)ke!4qBxLC%WbJg)`+N2O z-a1vMPTjgyuiop|=}zYrP37KmzxUj8zxP|`)vH&pUjCYEu2K8imPf#CZEgEj*g9xz z6DCY}@yZwLRegP?KBscnH)I-6&1G_AFIX5>91e)dsU?^K~oskqjZ-;{^O7xJ9dy~FK9%JSP^2dH>z$^K9kn~{u9O%uR8IG zZ$Ghi_1b8}^XJcBeCgud#of`S^p;nzdiBWf9JzV(W^~a(x3;#nsWvYZ5l0XlM`_H2 z?QXAkU-s@hm)uEl+;-b-7hZTFl`p;YQm{qkf$Vdj%iTPtb$sr?L7-F>`+#Pv(e=PF zal~w?V!;nu!~xYx)~W18Ofa9|kkM_bVq^)f{GhFIkTD#nse8X8&5cKr@?c}N3L(rqFmWfGoAwZcmF;|DF`2xRTYr!A401V$p;1tbqvtyVv18rTTVI+Li8 z=Hq(cu=dJ<$Qt0dc^Yi-gOh4OluSA79Q2?TykTSe{Bj(+9FYgN@?>}> zGN#X5ytvmHo6Tk&$C37dm;Io{>QffuIK0SQfM=9z;!l-k!U2I}DCFsEpDMDgY6U-N zio;)G8K}uCN9nJCoQaI9d34jwe^XSyk+$lTMbJLk(6NkzR3}*9iw+vcilh@34wUU)#Qww>5X>Z#`~5F|kG>NpP9*1}M>lPl)205ZUU}t} z*$ZZqaUlC*ohLONG)__{tH~UPdBS9nDufi8iORk5{44Nw)>&s^Pnz!S(m~#c?baK0 zX<%D#M=v?>I%SeRA<99(wNfx6GUIva{-# zBNsk>>#eune!Co4mMLNi<)=UW>9%d#&`MRFjI6F)xpMaG*}$OHm_X%0Yez+I)ZR-3Wcf9@+e_Eg2|4wX@$D@>^3 z#gdHlVg%$*mIO(S=;zSCbL)2sPN7%z;xbaN(_2sl?5Rp++Ur);8z4n_rkc6_^7X`v z4!Y&QmUWqRIx_cq7YfEp9W3;Ep8R6@(HlQ{LgNV+sr;>~pMqxPAP$7(?NM<5`kns3 z=oE03jH^Zy*(ZH-(zYvf&e1{V`n;=Qx@^2?iz;Rk1%#&Oo-p04M&GL1fs~sUCBibI z_p7)BWlV{>V6P|R!^o$O1Dod3XF3!IooR^Bne||Lq7|+dw6?1@Gr1B~UL0-&9+y7r z9F~qUyaHY?7wHD;r#y;)qxS-$XxzOy6KNC^Lk>RX$fgw=yNow0h$$dU1d0*8Cf^vE zjO^u3H5|0BS}!C(8>g?`*9=I-z?V=vzlobPp^n9hGvRBAeCUGa?vXiG>0gI z3p45+sbQlG9Zshoqjs(&=fPe_Z$rx@=@|0{dM6ux<#N z1fZiQzMVqKG{+N0Ary21%~Hqw>ci8}Q*|RI4;-WfS=q zOiRwfad?a1zIJ%iBUShWO900$3m6_R(K-k>dhCOI!V#m@1?VP!H7IVbMuPTVT)YVU zu;?^{jNZ$*8>?Iao(TuaXB}k0*eG}r_`y+#fsvFQNpk_fbpk&=({3E7>)-^YS8PgeXwU@fSA}mwWC-&i$a>ST(6`Kr#-pU=L%!x;2xy`mqL$QDLXC zgFOW*!o_4HEI0;ywM2q;vq|U(^I2yj`tTg6Y)p@wVs9RZB70b9_G6Osk;fnG)QkLU zrg2GOLS_P@A(L`5y z){{s5pXzfb>b&g{Noj%hu3)s?U3~`V&f){y+rN4Hs#U9uSh;%775DtZH~%3Z(vO=h zKEoqxsvB9Hw^FKbgT^$1vm%;??X61O7}d4= z9Q%>6Kt1x9OG&L^^p~Q#k;QrQBQ}B%@yTP0=MyseedETcu02piC#{g{Z_kWoxyuX2na%v2DLQnKzz zA}kwtFo?YM)?0B6sj;!~+;h)0ng&?)IEEJ;iU>5srK?c@LdGz`ILDBoeCu1^+Nwt5 zGu^ADwHjqFVmhbs_~W=mOaXvf{Tb3UqQOjY_7s)l-HjP-uGHd2Oz(?Cd>)s)^e!M| zlySSELsv!&XPsQ%-|2m%ZZr*~YU7v!6%z=wD+6`Q!8H8y3clv@vqyV-`O_UZp`@H z=RWt1qpo=K1@(U}RCoROuJ?cB{T8~)F&+2a<8a$EdT5UO`};Rvxf!1>;_4Ir%JJi2 zaZeYngv*Y&*!+RxE>!Nv$B#eu_+Ov>>*UFkQ{J+cQJF^7h(B^zY$#@Xvi$B&M@$== zd_&T|*I$1=CJSMUMUE7@+R=qz)!bV7UxNFdZmp-`2>idH${ z7)@|eVZ@*R{O3RU$qV8mG+PiHjZJ%M{^mEodBqi1pv<9@T~=k8S}Tm0I%6N@fSZiM zi7Go&<<`tE&YG3qa9r<+Ur{eU@uGoAQypl;Q4Zop{gb}svZ!8FPc17rzg3U@tNLQc zqBwAZJ&3sFpq5;3C1>TCOlHG|;NA&281DL8uwVgMZn)`&9oxJw!;l4MODS*IkanZ?iG#tfXh;q)N5(jzVr!H6cjz7T*gY&=dKhm?8WRrkqoQGWdK#}P43JFmOt zI$Qz51!MZiOecPn-H&-tpid#tq|5G|8)(u-x`o5(#f=%bGQ05#o$__WPha#j;*cl7 z-X}NW1v&bfY`jL+H`e2v_#YQ8XnJ}151qb?F1iSwNi)}f?|O=Zu5VL(e9c%FtQWm~ zJ6{#YotxXYZ`Tpa(_)IuG=^Wa<=nhiY4_v_y>5GX?PzgxAuQO8fV71#*8A7M=`#dE zhOT?N0P2GG2Pn7^Gnam3wCHjs=J|#^aid=Dx!ch*3x(d@#w}08B2z_tOKQ0(mP^A))K4`={geI2NPo zK;>s)Zj(o_yYvLmJ;kRXG#MCI^&GacP2YGcHzOckbYRdFOopXGA^IP@@&w3dNEJa4 z#vJ?=V4Zk}rVC>U!DHu)S7z!%62Kl%ux`YeL2yVLG$m5AEf2yiW=qa}j%8$ScH?PCIs+rWs=IfA z>goCK{-Z%-Fh1b)*ohg9)P>GlYnTfWC_L=L70*G z1fvT#@v@MSyty39MR&{cOo&r~oTkU%2H&kQC;=#|DduLx<5A^u2VSXreoT+`PYOn46X@T2dkFx7uS}34+l|(gM_}# zLzl1+kLGya+VZ%+LcZ_Yx1!%yqP6G(Z+@rDno`-dfQqM$iwJx6>@mLMQJFVf#KfaP zQeH`|Y=~&DV!pU#!!N-|Aq&{ zZTqVBhi-TXn6kE0PdoM0_n(S8UXVMH6!o9`#RFL-Blhr&JnA(Ge9+77&iKF{0i(%q zbfBr(`QU)iZ!8M*cQSp`%LjXL6)5hMuyXi0Y-PsTvALc1Y;CwfQKz*6$B<&X5##Ul?xaH)&`AY z3}Ky2Twb<AA-6uoh6h?XE7AL+ zF|6hAYn?}^AR@{IEc#Do5}#ISWQu9EES`l20`H4##>E_B+0F&C7G|>q*zHAZ8c1)c zVD{z}49`B-QLvR|5Q>}H&~&RBQ^??cE2l~AvLc6- zG0d_*=eX<{<$@Ogv*I!eq)Nlc0K;wtC(|^4`p#@F)6wZD{bY~fz6qAY6oV1O&b%;j zp4|%ejl`OX6p2`SP6oRN2VnQzcOUM=L4nf3(@#G=ckWzdjH4IS>#O;D`tN>pSX?1O zgbABq*-sRjS@#d!N^;?WMaE!?;|>VewP$w-31%aAgar?M!z#)uEt+^Hn_dV`r_95 zR!wfPs9tmLQ@Q!(n=k(K#o9D1w?NDIv=T?+w8N&UPiP4vTB6Ay&a?Z+dj%B3Eu0u` z$yn$qY<+X8~-+CS^(_(6Rv?r0Toh{q7Hc_#;cU6jwi@RzIwk{wVVg$JcfA z6j!Y6e|?iWL*;iVXSH%xsiHMelob`dat_>2S%X@^dz)pXf>UnDj+#(h@WIR*e{k?M zkzAcKK95goba-_tGf`z;uhIugc;&>GDXi1p%f`LU@@GH$+2x;F{_pwkEB84ecmccT z_rX`C?ooZ1KkjU)udg?5V@%HrZu4faEVGdd6%WB4QWo|$%k-RBc@*Om*m&ILXFl_p zl+jyZxanZ7${elo1?Bui_0O5EjyWukw~6;WT6oJxGynI8s;?_^{g~owuf1mNJ{ZQm z&2n@OI0eRb#u;be>uAx|iY<7ePEP4Gl+7upE~om7nM^^|f$eO*Nk47}i&3%jayt$^ z%Tm|nMsLOA3x>GXfv-WL^}hvzZ~X?~Kk$mM7q<}0O-)TpuU<;0!1`p_Jt;;oTtFI|D>uAG0_`P-fCxEl}_x+}%IdDFdz zknSnK{-T>N!e0Nm_YeZiWxBP)=!I78ke=dc>xf?cKkwi0sQFE+faTD0XMBo@U%1u< zpJKzv6dQIX4gmHLfW;C@Bz~X>;Ad`q=E^1dydAoWJG4PD0Q@Dfn{K^{IiiBclux2; zMaO_F8^uxH(Ve=WuXYu7%VQN!FHSvuYVO|L#y$qYSJDmujb#|AJB+l2ScZwo z;sT6&pJH%L@x6V1|3_PLeO+ytO(kBhhytEA5d?>n{xXXE0&X zP>e2uWmiowNnsMdhEXm+d0=0#ylmRDZ@I+BT>vAC;)PcvBsz|0MjN|_H!andk85;3>4p(!!)=HWy$Fdih}P$YXgHAHZY5&Rd9Onw!?t zUOAn>D2RiGU>gZ&88{>w9zb4F)o&11yR#Y7*q0v7a&q!*%? z7fE)cUfw8v&f%5g&_gU+4`JdL9dyB`*f8>XNDoZ0G*U-$CGAl#hbRjrUj3vV-8rK# zlR^^qEIyTJ1yg}h*ojuA7)a@jI%?-+4^xa@0P`kT7UviNYi^bRns|wFVX%fOfhCfS zWq~=wlm$6$R+DByBx1NCUdTvY0;3P6Ua(7wVbn;U%|QE+6G2{1;As;qyHbVKpqM!_ zi1X}za^PO@U`L9yPGCJ&_~6jXKN zfy8JSJy?n(h6eIO^WR}RIY-Y>%2|*CbdQx-HMK2zwz z<;o}~nk4U@B|@=88e?(fo|ZSR+t_+jYwr?$t-#>OPMpsLF-To#B|Hy4m6cJP@Lhin z-6;ImXaDQN-~O;B*X0_mD9C9OWuCp%)d>v~(k8bs8b?grSjXOUEMN9SuOMTzt@G}8 zX}z{p-JuFy-th&{Uf6Ic`LH7nTlT^-{M6^JU6tG{i)Urt`I$Qr>WmpP>c`ag?DBq@ zqT=9j7XyBv6n`l_bWQGR+S-J#V&msw`S}Ob*W#k>>d@UsDaRN%Ebftc<$A7`pK`~= zvr%{8Kig(u*#@iG2E;&qpZooh0Zn%(I^zzWeeX9@hJvU8jfu}xYZ+re45sXCVR_P| zNezt+-fe6t-3%C(Z_2M-wRXU6w1dMAKdfU{M^#* zBQN4C1Sh#@3*J`vC%>i7oyB{Z(qQ2hBOaxW!v5!<`+3}RX-dxdYv1`=zA=weTAU{9 zKlh|qR>`POqTM$aTn!4;rLqUToZWx$FAm=Qr2eek*aDVu*9+Z}K?q5)?4#dh_*Amp zGrD#*qQKyiMh~3Heel~KeCV2o=o>q-S8}h{!YPL2CvEOuxVzJ24jp-00wRMo~48oM70 zeXq!4dBuBIka#&VrW*w|qQJ~byA>>rCfLsv>{)|-Bg%MPmhVs*woeq6p0@O@OW(R} zTkuW9AY;%3c(!srFp}a>2-$sJLdJ5yR=3jIK3YZwlaYHYvyQlp=}yUP)B{{qU^Ir~ zc=qW+M9VgLvf{uR&z2c9cqsuE9wbsak)!Z%`*gwAGSXuB41q}m7jlLg=I2nhmj`w| z5XI~P1*>NX*muhz2IW-cl;Y;k_OxL4Krz9#qeo&!Kv`%xOaU=yS6mng78q+sT9BHUZ2XM@B(tIjlI3f^>?r zE<=(BKLtq=NyyksK6Xvz&!NGDEL~AXjW5Dj^gZK zs|Vi*iY19w4-&BNmQ5|Q;xK2P70+Mtf^rG4@F0;PC(L*l%tMcig0E%w@HeIeI`p5I zKLE^lDzKkb1_Czv?u*rsmSYu1bcY!)0d_^ojPQan@n|th@Uu$nZP@s%goJl1RKz0+B>85(TzfjcB#nWk>cv1w0`K-+7-i zXU^-d>!0j={`u#RIO2%C_Fx<%nDkYTWj_45r*-~lg*`nuiX;!#YLGIe{L;-W>1mMvRmV1{8eqGj8Qek|iwux|uwJYlBQ&?(y)i2{tWD$96+3s`=S zYFw=9v&wlgyXWx34^Oy3U-lisvPXpGG5q3&m^`C6@L^=d8C)cJFkT7$Wsn}?+*+wQ zR(sGtq}}{~-mQN3J1b^b83VadSaz~}UX0M~VE=WjVldnqeU0inoZY|3H+^Edm~rVj4lFS!ONvo__}RV_78agbs`~l{`V}2xph2qoTBa;4PNAf@R2&<@ z8iUzLuA+83*j+gWpMCb(_uhLiSE+E~yN`eIjVDIUQthjZmSI{ANTC2VBN4_~agtf! zqey8)tDJN)SR!S4{P^)m7t(_AYdfEu{x)svd^6kE5j>35fDNCj$MU!v#&vzR%Lt2j zk%|K#fh<}K>4d>3u$|pTjU@j)?RyxEf=n0mNV!o{@F+hG$@Dhi7YHPHIFuJYu&}Eu zM5f1b+lIDjKb+S8iGJoqhRen{UQDnpUu!4fY=B;Dl%9WZ;}7C)tEJ~8u6{@za+>Pv zP`y2S{^ei(1>a))%%?u{?OVPr!x+Ny*bQUbc7(n&8Dxx2OEC@U7+;dO z>{FNh%h)VNUu8-nOkF6;o^>mdO-d z3bOAL`yu;!@P^p02ZJ{Y%Y(`$y~~h8;B_qglvLd~{4cY~DU>YlZI%(x`AajoCg;ho zsh4h3?>jbI-;iCkq4>h<#doRvSpDk`&a3)z+dwy@Z=7i3=aBHL5(D)$;Qm9v^5i*A zHmeRlOEryC&Ck_k>a%kWEcA5uPHTf%%~i$F^MA{qVMj;DfB(1l5b@QkS1(__ynG+_ z9(W2keqYJnmS`OUmV3KZU4z=TRIUGU%fWN?FL8CW7do72{c09qIlsRP&#B*h?`Cz-L9mw7oK-w ze%`1AyYADOB?eqeij9{9nfhOR@x`Z}dW!qXCKwYsa%-~8_qLXC#&+O=2mZIFSZ{dU zb19~pdj7fRCQh7)^Ep0a^BU6q19lRApu}jBL*OG?Y;l7aq#Lm0Rs!#BmNB=#`@6q0 z0yU~~{zg-pD!o6H$mnUz7ryWX2^j41-e!5Q=L7$Z2^el7MtJbvZ9o2-Z*-9O^dfoG_&ZzMX znSAy=3%ge>e0lb1FgqwUEtOyg(hSw@uO#*I7YoO9BIn+AhB2sWv{X{rvN3g)xL zZQJ@MP0Y3L!r8d<%q{A;OVpmd{&C^Zvs^6+(*oetbvfSJWV6L$ua@h2wPKS~aQcb` zN4Wd+oJXUw!oeUt^VB|k9cU;p)Aap}?MJD_S# zZEo8fH)x3EX$MaG%SC@lc%lyCke^QJYt8PpdDy+OTcvVouz%^9K8`t39f^*=zUtS> z7eAScmtTI_VEMp<4qWni{kyAl<(3|bDjyO_Woo78?Ra4SVUxP*mi1G2d?O0%lX{T{ z29w*FY9PU*E7fCVOOMt~Ex#;3~$mCAH?({!>?N4#PZp+T8 z@Pi-x;DQS-pz?yZEcoPSJ}Ie@Pk$j^s8u>4f;2nsMgXGNgt?D83K_%8;CXm&VaBU7 zj2|5HSRTJ%Jb_q-(p`el_`DUp(t`;}LgwLMJo$?! z6%?PI$$eQh;CEpT%s4oq#^-zZ!CFSj!ZGhShG)q3IA&SM=t5vda$gkKhyvTS(S7o; zG%}cBnF8MU1e?b)i)%xO1u9#ovaL>udk&cz6nJQ9l+t4^$f&C>vyv}3;qL5E8+~xpC@n_W z*D{oA9QYB%v0x<;a3}5TT^g|-f!%itilauuGXST~?8MD2YJC}39!SWNZW;&#ktBIs z6o_cHFtf5d3t57RZW@dIlTpH`DVQqiEKkV`D^40U*j*Tdml9x?Vj4K`5H^yXFb7Rl z3lDG1W{S;Cy?=m^`pU9*7G< z%R+HzCK8D?MtjWKctMktCwnl~hU|vhIPmx}nGBxUn8_V5StYZ~5u#v_$W1Iswh)r5 zUf)PgAiASqDP(dIM|W7uB+oG2=x+#?JTl`{O=CnC6CAT(1bcp!bI{aY{J!napDK|t zhyr8UWF(HHB#8@-1OO5;3T#9{+x;I$V>@|+2XrB09JAa71z*eI*%E_>;+R${u$OYd z4lmisfEWiJLYPME-R(@}kE^6gUj-D2-?(Z~*g@iCj@?jcD1W+oZrZ z%EMoi>)UxGX$*mVq|7SZoq7dM{DW!qG&SY$OcuWeT2wod^Rj>T2IANc(``)KAPaa# za$gik$Of30l?RQs_zNbx%d)TK@Hqw$QN>X=%}AMGIUdTDoMB$6$xi0#92K#74r?dT71` zvuM(=$ifhqJn(RA3@m;}AlXQTu$J9aK&&xN&L3sNo*vALVR#^=vk?Uv1%%2=LdpCR z1<~oTB-y_~7VO$$ORQ|?z9<+%*4_O>0b@y|Ec;rviYsD7PfdDQ;B1s@Kx0H1)Zlox zQ4i!N{hs+kK~9^vU_ZLmzhuEi6sQ;Wh7lHcKo_zzvnW`R(ulIDWkZ`l5UqM&O2`S| zWFZ@#0XCv6Sxq@@B1=>0^99drM1cp=#yEl7n5Bb;yBh^x%TW?t#Sz8ahpKvSFm46= zM#&lpnLNm2g6$H_SchriUI)EwUL-W%Z7-U z7l}rh>{g?(HUu`@vIhf9ZlhphpfpwMv|%**YWiF%rQI_|z*5M-Q%3@ay8Ew$(ui_M z%T{JR<6sIILvUC$99L5olBZ2hNV6nl;Mp^gWo8(kFZ4ne=|T2|orMe}`!ot3%XIj2 z8`EvfnX2i*gha12o}*yyRaSwg&An(1xJm^w8kA{cMBu<1Mww)!hq&$$E&DH7@`%>t z`gV@hYD8-kDUFhGX=k@&l+`q4Ic>(1F{p~OH-j4c!nkzHToFg2w!7Nrv5Z2HmyHHg zHIG7u1Tch5Mk}*%+AIqkjml~=p7{)?VO#&r+0EVT(D zxU;ldjUlivc~BgHeIvPw+M{5`q%T;fZFILX%R+_+#uHys$Y`>X$VS#=vtrucn(|V(FIcQE&+63)x_nx*G=# zItGeEC7BnZmBj5{(YpZUu+6iC%=nUV31+7JI~l?3i4ZlB8)f9;A?vO?Lc+VI&G3Om zscv3TX{7GPK|{_1Ez9{!3dn9KE&)u)s0XYK_2OBfY6nMFk-H=mm>|OFsz?#i7^OP_ zEJvgvh+?*r(O6n;rGl^JND9`B*mz;1R5TmG8V|rmauv1P!4*-=&QXvgqRc`z?f%cZ zb6@65<_b14j0)NwIeX)=3~)dSHIUq}m$<0nLf|kjo`bMKkG3_^jG zXf;Y9Yp{DLNNuuFHwnhstpu}?k@%oQj$5+)>cg*sWr9fx*g{-LKicB{g^d2Ev}~k~ z*t3NSykOGK#%vK^DGxS}<;_oRo^a*_PljP$SjbEP_4dHwmn^Fhc&k0mc+*#JD)$*3 zt5>X^@W6z5ADBn6vA9qO=IXz=Ng<<^sgYnda(57IebFPNJZO%+=~%w8nz{!E=8h|O z%vd<1|D&FWhytRRN0PjtEbY7)(x~ya@W2%h9RG>qSNv)Po_{2p$}N|8gigd= zF<)Hy{*`loIv4Tpz++#+TZm;e>EC44-z6A=?TZ(Gap0rkn?HZ}-X8|;rveYnH#Osn zPu7km%T`d$I6ww!EDw;tRNZSVr=n?qp!_x0Tr-dtoBt17^Dh%LDb+v?16((y= zhMs|%l!tx|Y7tb0ff7>2SIE^Q^~xEq6vlY(w&~ghUpDfp?gb4p^2H4*;CclDHH;D& zG`ZL9f-3ne<(ZvR$1*&N;doGvcKfpJumAG(-5tBz+uN%`bOlcEln*?pu}-d$$OtfbuVn6|I+7w`#-<^#NtmtG*XUxVd!BpM6tg3>Upms7)(Fk zn_u*wi`v%PFAm9oO({>AGUchyKD9=z0Z7VAS0lm-BrcS}NU03jmjTx99@3^x?l>UN zZm8^vV~Fz!z(FS*1boMajx{f=*}c2OSMGrv$Tn}@JbXV1Iv$9Vk<_=pzW?b2lMP$#dq6nC;QP8kTr^Dhnz(`eH%4>ussHXV~gGX^nz zYFc#8BIM?+uW#MBaU(2)u^oN%(HC5F!C-hE0Y0BO_nCSBGq3xx?zp*xq})4Dz3@u|m>YSq<`S(YNqBMIvyR@uFKH_V3bk>;0 z`F@C*`1(X=x)Ya5LQ)1hBp_X&tVw&D2&_n%G6N@8Wmt{z!zJiAl@M*il@VDX* z!(__QhiY?Rrj)5+$aQR}vx+)q&n0!tNRJKwcxLWO7RpM=CB4-E$qblMwys|qqf|zK z7rC&6QKY>9=^6*>*%m`epFt$TNiw0e)}dm+lrqIZODNA)VNWooREBmUG!Y18sC8^T zSqj1vF%Q)`)y6H!fGK6``Xw8qI<_mr6@*qZ30Lg3QOJdd8<1z)aOBX8K@4p)#RUd? zZ5wV3m{O+rtirMy2c$Mv%^0!zo~xl_ib{tUKI(?s64v4&223ei*UxH{A`aHun>Q z(npz^3kDM1Ig5Lmvkg~9w52?!mrl7CI8>uP<QZ1p0yO#~fl+c0Fnlrn`FT~yfPl!2y@WNph|?h#^D zXL=)rY7H!iL>yr0Jrh4E_q9*^QW8}am?>rJqL!hIcpaDP8Ph9$gxH3Yhg{&qMJDLj zY>M|>72a!3s?LBZWg0+gs0?M4k_((iJsU<+yj56fj3uK@rMIvFjc zxe`u9_he+sXp@~-XD2I`PC4AAR)Eavj$2Q3gyY$LTnDX%_j|G>RsSB=dKIGE65T zmj_O4Mj5IVIT)U!43@Oqa?35G@IVEW&0133KtIMrs&r}U3XYv^bKVzD0QklzD_M!iG z*AG+rs=-PzU`iQyUNHL^r$~?iQsiU9D064fWOb6-n9^qj!FMr0_Q1Yk(W%R; zuHMYD4Nk?bY8|5tm{KN$)TLA^TD_{9hJ>p{CWG+c$6}61-s~hlbI5N|O+?6`$TS zMz3tc<6!2_P?IL+CXUNwGnwwLzUC&iJA25o<*!%fu-409z?8CerR_#mb2=T{om4}| zK?0`3ApT&m#*kje+}$8CO*NBq4w#moJQ+UpPnC?WQ-{>|zq#%8WobIsFew-?rHn47 zGOTKgmkT^Z^D&7am1l8aa4^y#8>P>|^K1-XMhjhg)l@Z{>B1rOVLzeUz3?vRP8I=xlfS&#Cz1^YTgd^h5 zI_oTCUzATf?KHB)?Z+LgI*VIJPgnU-ss|amPPJqYTe|eMIDE}s76TzEZ{EDQc~^6B zto{uvx%>%o(a3Z<4xISP;J$IgrPT2tdUiwQIKOw@_fU>*XPuie=?zqRY* z`l>!jBoIn`+DogsurdPA5pk14OAHZYf)m|6f-l2!INF=Pelr|ee^wBu8ECR@*Is+= z+_`h9slOwWo$lbQ0{<5as;4v4_9uOg!KWoJzWCyG|9;(-pTE-TYCktF_{Dj!8ghlHJoAt!k5^91PD^pNPM0ZQIZO z`)7T-f{3{`5^Z-Nd&OtzNzQvL%-t zI{VPYOKRy^6NRVVAN7NyvV|<(Y$WJdBQ-p-_4fASXEW863h!wek84yfC^cDS=46V8 z6zf{*0Owp7r(*_qY7S>OX*7^SqGOI>`=;${malp3`PcUB-gD-;Xa3|zKf(Klty{O^ zw=E+ir82NaghIC}{x$93CR?BDy|_mEcc3V!LO zmkuyy{608b85wkdKGSzcT1u0d(mNb^$Pq5(8*jYvvdb=`WqbP<^!u%@H?t=l^s(=J z`3^E7&Anw-#>uGOUbSnFgWmz?ZN9$Jkim(?E`_^)oNP9G)m2w<>u@OG1Dcg9SHAVF zZygT740#MAT*`%l{<*>Po>LPKQ+0LjrGuh+_NF_IxF9=azIyfR>Tee2Rec6Bbqdao zo&96h7e>`PFRjK6nK`^t(#z#GRa~QrW0k^f$8o2;dto6V+(#aHgg%bp;rQ|hTlU++ z2$wS5E8I9v;SL_$l9sPi#oprNg=)*PVzH1ta#m5R70DM{Mok!rL)1S# z=1e#+n;Bi~UY~pZw!+l*gJ;Ysy&pUkH z(iIsk-t23txK%luoq{L&Aze0H*Zcdw|N9{gVVDj+!liu4C70kMOq>|pbpjSZe~PJp z8&|0n>Iv+TfFH(nM$b-n!P8zXTe{4@XN`KP-~RTu?|tuk7cZ_|?geARaU0=MUb18f zSg*&|WbHx$*TY9Uy}O+JL|lg{=5yK3J?MnK z!EM+M zRvoosqdIs>vA3^p-01#Mjm5s+%>TaP6pQNlTh#0iWFGypYB|!GbeQVvbnZW0>lnUg z&6*V+VT9DGFXerXm~+lKXE?`<6AY*s`?cPc76j{_3;RK@#@z~AU?F4BwDM>A+RIBG zOxtlK=ZY(?z}r5*>xlZdCgnj~PMm8E{56X1`WUz$%oCq-kKl`mC8RuI!i0v=4a+~U zyuG#EyE79fY5pzkx1-K5cq^Z>q-en)pSjO5eWoxwC> z8YKCV1F;itTz3jqV}DP7;V!&8Q0re^4?vpDF6EY%mSrDY);_&`U1lA5i3-cqob8Te zc{elscus6cd1w9J@GQPVz=6qVryM>7f4V7?+q!h?OFwxDcP$eY1K&UKg#LgAFZ8dx z^2&k*3!)C8-~(nIaM>61jZjiFfyji84Wp+LU$WNjQeIY7>2X~TvOA0=bsPlac9#PM zK5d@maC(#mmHR{v#+hnnp}Ua%es;sU4e*e#nNr4^_g61|bMIB!l@zFC06HdZ!MP_Lp(-|VL5?1ze|PjC7~w(sgpEuH6m_qDycR(3gY&vuEU@zG*>mx5uX%lFet|m zMviY8KdEKX8&AD)%{ABHeHfn4iSII@7p`y}(9pOepWm~m1MjVxnws|P*+X}0SZ{8A z_St8TIp!F*quxFL{PRa1c_dfo%$;+|<(HsJGSUUoick!UUUm!{tw?FKYs-};55$F% zIwsE=FT~A8ITjneUeylvjn3^vcQiykSnGr9>{@uj!Yq?jyXuuD1H2P`rn*5+|7ghaJ zs_)URF0|t0p|4MW9Wc5{9YW%t0FduX95$MTSVlk^;P zbceI**qBB3we0li)2$y^hNKMFvGR(DAPyN-n-ys{3K8pIsOs)f9gt@cKYO<7m;wuq zKoJAS3=h~2e)P#pRQjqOzj_4W{WCJQypl6;u{(o;!ZH!-m$xqi;bRANycK! z?%X7`mE2voMs!S;prflxtC0pWkv1L6DFC0KW1a<#NZABkjLnoXHA@Zg`js>$C0zfwl% zAlEy{jzUSnGDnQuBz4Tjgn@WmPhLXV+?1f>UoBMNbwMaogl zkp(Ui)F!2tjFf3_Z+MQ+$8x4RW*bsYnWH5(@kzsh4t|88^MEOJTRQ8y_jF1f1M|ik zZxFJqy(xuKFTMdjq7{rA)v=*MV5G3PT2jZsxUN{`K%;8MtsVZ!=BBjy(TJLHCQwUVzx|JytttoZPPD<*SkzR!2_~c-$ zIyQ_Vrxdy74t{XctJ-}N()Em(E2-iFZ=gis+yl*Wp69HdE+ z2opxfxKhUfQp9F8T8~d-7RCX_eysGGQYMgGKUh3PM%EimQpX9)PYwfDtRc4`hhryH zy=7Ee-_thyt3iuXiWA&DxVMGk)}jRp#oe7?1qu`h!QD!6_h7*xxCJM;Yj7w~%9H-@ z^?rE2o|Tm|XU{cr&CH%X8{swqd@WPH`?B^6px;N1cmC&`b_Ty2KC9RRB>VYT%6(Lp z;WMQ{XXUcK5`{`(N=X%%PCgVTr#$Q@Eu#T3z(A7HWWZ;inJ^>>2iANcYqw;H&XYg8 zM6u5>Z$r9Zr5{Uez)nwH-(?#TQugS1a9Y`}RcKl=bk4W5VBfqgtX;^4f5KHz&01cu z8kmlJcvorsv-QhKTjA#SAcEJgqOPxdPq5WWrw+FdW>QnG+1#mK>XP|7ZeAs8mU{KDn%!v&#+sfo^g`LaL+^MsXK+aZllyqB+=W9vrRj!q=Bu_SZ4>P5kLIxp`nC>lK^bmX`23RjAYoC^1(@oa6 zaOyo{U{H-N>fDmYCShaYEY-sBW1_WKWcbV%@H0Df(OYCcA$l9bvTv&GbYfr#ld+)5 zHJ8U|jT!gI#md=2xcQ=1JGs8R_MHSmZJYK%{&g-K3D)@hK9iotAbNI_|D~e4FxXYZ zQM#)oO+)Qt5&G}@=xmOk{kJRBXsiu?Cn@i)g2x5?5bH`}bJ{r}$JZAEqqVDDd#1hQ zA0#RC*|~$Tbi4f`AvlDnik$>G5$RD=fW;=XpFAW}W@bhr*NHY0h;3nTq1m#0{t>s( z&lQS$=|o%Q&jDqSS5^LUiO)B`Ng#hU9Ei~I+9e3;pWC;s;{LXEsINTT*>^G)!~4Kc zTP{&jjb~1_{|yM%84sIGk9nrjQu4yv3+rVMT4?5vGaghdDM5!KB5F%{-0%A_5E*&L z#G!4(rjN>d)jD}bu{uw17q=XN8&JzwRFB@&u0X`9FLdCK0nzQ z`>cYojzqul6;*$s3D1orjR*b*oqbc~hMLA=NV8%o7BJTEK;&JEJcL*sE+8f}O%8yV zp%*%KL|b!cnsyF9S;R!|>rbLnYl`CCA7XUYeZ zMRfk6e(EC&!HsSt$NaVV?xu2=Hvf0eJ3P`gS!4STbdGfjdZk<@w-sVgOA#SCNe0fS zoiD@(%tJrV4(dy}{-=42vR#qaWp*ix!Mm4=QC$d`W-%x=FIwN`ZRIBi+M5p2^%MmV z+#D@Iu(RW`3Y+|lrC~s8Tp}q$?-L&qHj*jY2!k29ptCLpd<@?a3lKE^v#gm#RP=w~ ztHM&2s^3Qg07=-D{Y;@+w`RRF-_8!lYHxY97xWFsb*L-gSk(2}t~EdcE{C75GsG;Up!B$TT1nKw zev1;ms*Z(4pU9kgNpR@Ygyvc06Qve1W`4{zp&8ma`=vcatz9>9g1srrd46!TPQCyH z2ha~RLZ~TQkH@WRzG$kgyoueLAIO^R+?qxokEdH0kcTA6Xbyb>C}V%|*4Ax*uf3NY z`dOo&NkZOFU!C0@hmf(Kz@c_y%2)2@{qmNn8Eq-({sW-yc=``K@Utl|8At_ro{lnEX6zcGC4`p zVu)gO0K@+g2zWFe%tvy1p(|D?Rc3$aKTw^xcs9>>G8QW}%Au><09?k~dK%t!&ckRF z#lpquG;qgSiJVy-H}TuU6*l>1Mtwi{n!MW}tCzBbN1RQ@;Vekc<7=4JTm2770cA%i zs`=k|lc&on!$Pp z85Gz!&wrj(j{iJ3(73}%w^!hKZI>|0DoHts@hrkDB>F%6l^wVQ(zS(UZ%_ z-J3AnVf;SLW%W?0e7P{WI0?%o-`*pM=gSV0+-_le(Dhj*SDUDr)Z*)@d6{oc1l}T8 zr+6mY$|5qk>>!;unLP6_W^ht|B(C;pWs_4m$8fQs?9eIs5AKsK_HI+gx;+r4cg7bq z!R4$v~RGDO0K==4pV+nJ>$iR&LVwso#!&aPZ{?+xZ9RPUw1mLg@< z2+9hvLe!4SHvA*;I2^Wi5uN1p=Pvu}xPib)(ymdL*Oibx>)GKGZeeYtho@(yw@Y8- zc)7KM!>Bp`Z?*{0qVXWFc!-L=JcezmL$?U#JK=XuhQ7V{D#K48M>gG#kf#6xh%?Lw4ydWUvH`59a^XI9v|Nnzj zrT*VtXYdfp46*d3m??Qap0qE8CiXpxbF&*}2opZ_C0geZWXwXXjj~f?`?@EiljzLq z{AzPeU2qIsEFfiVu3GLHwn&=eL zpRU#mRQax)`=;EWj{MEEnL7ORxk|V`H+6Oy8qkQEP0xQiRTQ4}_C4#hZ&~JCWRKHI z7Je;jz(pb&d7qUy@!7F#ZrEYw{SY_dyDwf0)rx^x0>@`I;?NYAVUu!*ffZEhKF;dC z|De8Csem}Xls*dnlCTcQF6hXIhf|A;E|91jXJq+HN7r?|{>@(N;;k4>1rbellig^g zHcwT2+qE>gm-VQa^=v=)UF!6#5t&yiPR;S2Lq^PE=J6;u%)tbSac?*vS4;vB77!4i zLHy~J&;Bn_C;iU53}wY1-5Lrwk97S!L0-xRqC!_0c-GvLhp#s_5dC?DN%yAu%Z zayeV_5;?u{yTvm{Pl3$&IH3sT{PpjpVV^ci!2XJiG-ND)FCqf(;5p7bOg8{nH~QEN z?MBx{$GDGCz|MK{+eY+*!n`~NI&aN>GdwB=*%8S$?M5auBd4cC2n8pj1l7b@Gg=do z^O2yW;{}osL4DDze?z^_4r#tNT4n(qJ<2o-Rc;X}9UpdI&s@ROeUZ*bVaX}_r(@#l zlwx!Mby4%7uTs~fqE>bYB_~GRSHJ41pMBruRl>9K=w4Qa$9~&V_?YT(RNjtiSIrP2 z|IMzmT6@Z+eJK?G<>Bg22etqGq#;M^1~W0jWljX&iZw)xh0Lezl^$Okxpy9WIDdNi z;CxT`xHhYPUMq1LK}9bOs5@7DWgh4)CbgfRFebLkNl^oh;hR`ql5|+C7x^nA=ICp% z*G3o785=yqI*0tx*%Pj=AmKNkx>EOnnaYq#Q5pvxL>H%J$--LiWSt{mgP`@7x7;2| zaxK?iFgD)&M7b*^GRNyGn7?_9=_nr}m{1@*bZM#3r5TYSBKowoW?IjFJG;jwqq`bT z;NTjGw}R=mHN%CIqi$3xUS;cp?Q2a5w=ZN#E3{MzC`ZhJBuF@35a0@&|$40Mh1juLN2N+>Irrr7PnQ`P* z8y>1nY4gn(TtH>0DBAjZA+x(nOI3LGqxU$5iw=uU9yl}Wb6%2y3<^W^2s4!C@pnJE zrL^*Yo+Kz1Vq^bLJvgE@5eR}0pz+r>UhyE2*Fd*pAJ10J1?!E{hFE9AsmLnwvaxR^ zW^Tk4%69z8Su5Qq*Vd-9_WFSFGpCdC%po(3|2C^@JWI&K(HqD8Zz6MdhQPB8!r-tk zjD*vPu_8=l7OlI^VTIiAp!GguagkR}-a_yS?eJ&M=m3=G1y{;ui9@_+XAu)0m|5A{ z5~dZ@^SD<&zrq^984nW>n=O^;d#BL<=6hr0x=ONfBK?j{{#y(skY$dMw@`Bt4Yz;& zs~&Q?nNpd5LfXAnGP~4SPOb-|{ZX`q|#PPt9>RI-r5MiEgg_s{1uZKz; zxvL^?p}G@V&KGd!e8zK5lP^MB8C#;9@^iOg|M{}A%VuS$tv)D7SrcCWq3pw(qe_F61Rl| zg>*30#C-N_+kX)7=$1m;r*pFDkg&w|^KtlI!$B8TSu8Cq9?sph>N4`KGURH@)y`nRlSda}l3Oo(*8V|aD;K+(D$#j#p<|F>{_N;a5l zf=l}P|C$?~pp~Bia!oQJv)~g-myj&@bg<^*DX&gM#uZ2o4Byq(9RG*y%?U&pdSk6I zZbbquWa9i0h<&QAD`nXYZ7Ff#RN^(BJfegsBMuyO3{J7+ph9)s>0ts#3%Q;ML3Gv; zuW)Y@!ZoRH7CSOM)DwwDXZ9P62o{2AsSX1s zO_2?;(qd3%>BGZzZIma2Vpp>y`Vn+7+ONudb19|@t;&OoZ@ZG{r~x%ey2gN@# zABD$q>S%CP{CD?kS;;laOx#*x40FtU+Sj=>m5a^fu$r>F1I~sk-W!AU@0}$#J&&9O} z<|T7$HM~z@yVdHhrmAVPG6NKKg8KWSbgrUN`aZ>E)q5f>0dRIuSvEa+0!N;&2g2_v zzJ@T{!&9a~qQOOz&-fr!=aW)2KyNBzS%Ds#MQuOLU!x1vd+ZoFV#!JFK*2IgR-PTb zW;e6miC!8w$d?{_*U%=vVb|uPSC1md%x0Vo567vAR|B+TT`(y|$bsOUE$#V^HYYY_ zyVtda9Nm=NS70F~?S8jEE*8$VZ@=4^GASqjn|L*}?K%Nc9op8gT~h@NGn%JJV-@HpczH;)<`umH@9eXQtDRF+qMVaSim^7JU z9;F$1Q{JT}rf5I+xiTm2Vj#$*-cp=H0}bWch@pAiowQcv9JsU2xK5tCsW*4o-R|2* z^4|%39z;oQg_?n}2_>4%x_k#^_);3lITRv6=*11<*IiD2Ss^-}AT1d0l1{co*FTjI zRNz8?cEs4lZ^q6#;=*TD62_oSa&i*;Ek@@cDlKePEQ`3Q)Fa}b(h0&|=Eu!u1ANZ8 zE}l=LdOdMI$1w`>V;s`STeZ!cj`V2jyyMHx>I#ig(dn3+Dp=S!m$i_xYfDAH8~2m` z6!DcnY&MXSluv&u!(G~91t}RGL$r`}x@0JH{2~wdL0Yhg>ILqhn+ey3A9JfJG0|y5 zVJ#W@`>*SnrF#^-WfXPjl=9bmdytSP90&z?_U?KXm~gA1^f9aNub0(10goDIvUnS| zHtCD6Nc>E+f!lnr(Pp<9+v85CnM8M47d=@&%Ai(s&+ku(qM}_cDjm}+MXmVtY!dYw zwKqF_Td`ecdR7Q28D&>u5C;wXCYs=TT_l*X2tMyzvl*~fOrI?@H&Yy6@}~_=mbsH! zn461Tl`QnJ??)LvbJ0HJ_{T{EPu5}i+Z`wax6d!r=rfdHV2thWWZ-8#k>w+9cVsx` zdNT`Ce620oLMi+EE`>rT6w4AGQ-#9A=O3T-0|^koAaf9Z3pwIU;8^)fFzzUmHx$oG z5Tpj){E+X!FEQC$qbHf70uQsgPHvwNqvJ2s8?_!3oVDVIEY3_m4p9mc7VTC&M@$2` z_`Pb`XZR^Vu4QnLvN?Hn4cNv zF)bp~TuKA~j*NsktZ;pJcKP+t@gS89xWyVRmynAijgG@MdJfdjzZ`V_Y=;SBltx;e z+gy!o7IIF{m3>l8vll8m6HOZ3$)LQ~K1LWQ-6?fRi!pyXuk|S-Q?uWius$ypiU$3z zCdzBY;al%SpHqppZVOU)SYL-RXG|)|HDn@g?QWA`1N~j5H1gSaYznt3SkkOYN*~({w!DiD$7i=os zP6z7`!sD?6y&Jk*K#0o<6QzGZPEKnr826b5(zO+w9~G)RL))gEF~$nDo1nzS-WQSU zd9!^X+Rtht>(8O`*rCC9qjjOcysS-2adEN3Y{MsPb04U-OQfSp%v@!Lc;jQ~QV96` zI}Od_1?-<}UJ==Gy#^QNdy@{KVc;B!eK^Z26Mn!lLU z%mezSIg`*zcL~mJVtcR1L{vmbf6v$|7z0v$75>4G2w#_YT(15|!rx>mx0IB|e+@~y zY&-pA`Sv;j33X6kZ3|N|Ml<(OrM-(i@O=qfA2i_2q{j~enMw0OS!nW_4!AsMptl57q2 z)4&z<367tjzMlB6?7VsuRxtMR&Am2bDfvBB`YZ9w=-q8Uo#+43bN~c?EVQBLHds>^ zgy`aK@;TWfEEa#as<-D}JN*bsPBD4O^;MmK;Yp zhjB1iFwQ1zhiYt$>P7T48~8xTPlGB7OhOn!JOIXM{a- zM+`1c}B*&l8nO*~HRY@+fzbDD>TP;izR_Gb5;ZSjP|CL!qQ@U~ZumIyk^i zb)}bj%SsCU=$Vv6fr2&n^bb;tl`*G?_}0t)(R4tCoR6{d#A}-{tKq%Z<7z`_*~>cG zZ{|+_qrSiIIdFR@6lI#fi==RSSLl+N!f@HQcN{vb_rdc@@kVgyRX1)7 zehx#oyh)sw$?LR3UuPp1*_&;=$Fn8Tl@7U^8GJF!4*Bg2tz7vEpO-lYp&xMmi+`A_ zdbmr{{TkuwV1{A&R)msX&SN;4%U%Gh5Hh(0Ep%9nDcY}#N|315CZA@WqU z(QE{)gd^_wZEMgyP^i1Aua70eQb|tLoYDWGc=|%UxXYcY`t60CRx)|5#Pu?amZn=8 z1TRbroi*ruzqdDpx@BuWcl}Q;ezM1)&SqXgfx!Z#_Q7+jraYSn{3?5)hzhliNo{ns zSo*g;;0GBa$!WwFS;|DvX0)(T!0qe~-m5EWC0109;dnZw()` zMa8o=O!|&;7nV#`++2QW+VK@KtE&gBR7BRWtG#~8;ZB;|)?zq%1|3)t+|x*Yb^ji>sgIsJ8`~Bd6@Q)qCBuBIrD&Kro(Ma?FU(^ zOaN#AdW>{FrX%5@h<8`vEf&3<{@`6kTsHDwTisHV%Vuu`(Zwyy>)tg9lUxXe#l9Ms zbDHw1_4;VB&DTrMBx%+~4`sX7W&B@>`QdCu$huGOZ>mADzkhE!V(K`k7R=ya^0nZs zz`wVTw>gimoX-8czDe0Fmko3(%mURaP^~BJZsS~MugE2{mENX^1hhU}BhLbE(PN!| zgiq^-#RtWeZ&p@vf9*{>3l|H|N;pPpFV(6XdzbroHG196NU(eD2^4j#9id#Yn%NG8 zF?1Jq_fP0WnH#4(LO(k5@f3f1O$9*!iw6#^1)Yq7&MON#1x5aO0o){F4rr zDUe^GOYp(xjIS<%CjIYy$1(z!w^P2RRgGu6)+dyWdt8Yjy~GTlPCmoAQ(ui52=o6` z3_)~7e*j{ZSD-FaL8^JHdsxe_M82B_`Q7e3q(f}zRZ%Gq>}cJ5cu9R z++mIh=YSU0u>F7ZAyP#AS?9*5xH(KvFUnSRl6gUFD)V^BG}+*x~st{B8p^ zHu8H%W!aJC&PpE?p74vqJQw+YGH~Ozf zNF5V~woVxUciDr|q}lJw58!Jhr;va`&&e(;)Vp6VQW~ADEa>=4WA|l=67dB$QQ;u} z6pNZVz12g0Eu^$p&mO^Lg1Xe8$&qTs>Cc{O^a3v}EvbNSP+GWoaq(x-_olh2`%C$< z`g>eQOL@%ngTc?fl(W9^^k6Ug!J>0)qnq}MJtY*}keKD^FlIkLBSkgKqc+h)2c-j> zFdnAzP(GekxAc|WMRLhXc>gY-DTN5b?#HMD)UrHP-ew<$#GEyH6+GCmcr|~g= zZwryFOTrG7+%u07WfTXLc%ob1Dl4!FUxz&T4g&eSO&Bl8`AeWWA5t_wgucS6!JGae_rG>{_UUMIz}(CXUDVn#@?V81K}~E>+l?vT|Ia23O}F~Hy%c|r2=VsufqQp< z#zXY*_C8qRtEvdFA}h{u_a^riNTSNElTu2*zbkVG`TZHSt&=#}px6rX3*MObM+2qE&+?(m(hY{LkOY3N&8+4r zZ8xGyJWFc7$u2=@uVJe5F&8(UdC|>^X6dhI^8MbV2JPobRbK)hu6q2(w)-194u1z> zQj4J5=vmZfzrG{OMjCo8hjzlDUiGCT?xFq0#=}{^rb8+d@zXb`cm>7%rI|D2qulP0 zksZJ50vMdW~Q z){|q5doXvVbSjnvGy`2LYwx0*MPxl)_54Pp%%q*H%nHlC(S*6W`ea&~p9V>22o{*Y zEO21ppBhOXXw^NYo{TNX>jnSRtuu_l4$I6x%0gb zyfHPoOP*y5>~J|$UO4U-HPgTH0Jkq6={^bW`4BA!XvxxhZeHxDsi z2#25?{cS2%TX#-35W>#E5-uBi5J_Jw{}=w*x!a|cx91J>>KRhEX^=6=)-$I6=1Qm8 ziqOKGfsVqP#R8g^#0CahqwRSq9Nt1gMy4{Ga1O1lDh26`M-|PSKb)E z7ic7X;pOBn3TR&M9|KN;;vSmp34!`?i20bP$p9YiwF^7$aI9{%o_!q?#&H)p(PVH} z=f#iHrDBSH3I4+0)`a5`Dz`2l${|Gn5r_R%9{;>6TpVNjSM)-$uQd2$wNwdef~rRN z#es#Lo^RZ7qHR$NZlC7={Mo^carj(k8vPs%`TN}Ut=w?xyG~3gf?eFIAWefpqwCP& z^2l7Ha`ye+2`oXq=v?N<&e+P2g_9L>$yK}ZtQlt-z4nRTLLkBxHQuTtgSy`t)BJ5#^=It#rE66fc9DsI~yC(n_xGqvGg=r1{5oCryTo$*|&`N`t3qLTGi;5>--*O zKQglAHsdcWatWlcx7?WfeG@#FJBpWc@R9@`ARqIbPHF#y=Lef(c4wTGeARLldVtX zH_(;x_o4ui>rtbqy*((+_8KUDBN47mRv-Chm>x<^IoD7s6oYx*paTr>Ocz|?;=-^$PFd5jWxZiZqdV!`$Vl2KEplB&8*a(vg8EU_m| zmw?bitiw5NI*uvD7r2Cy4V}C2T^^|%{fbDsJd2t&PL65nY*o-4`b7tCpG>%4qUQH2ef>yytmT~wdRIgz=arnD z=8WVN>pW$Gg}7kb;gHwE-@}gn(9d_>RF#xuG^`5B-Fh2@O> zJBO&4&rX|mpoT5DKKm1y3BhMPt1MDuYB}QbP>Fzzp1VUcIzS_U&~Fs*ASu~g1*4)T zZ&nH&isdx5yJ_1@lg(rfYYr6mn)7_XQ71W@Nh_=f{kxQn5=**Wm5s{wUHAFI95UpB zpLK<&sF3OY2c5BKyyuH>8XNT3E*t_+M`g`7FpWum6KMH3!_LFNSam>6CqYjPWs! z4;``V(v`~bMTs6<(fOqeuu*3Ws(WGa6#oe(H7X1{+w9+Dwk+0romvRKc>9X~%{x^% z2M>9L!UE&+ucLLMan=!TLT%u;BzcmAE^PpCJ*JzYiyY_+*YBbJoqrTwT#y`4-^28?m&G z(r!p7=HI)56gt!W>ZRJ6@6&Bx%*Yqd6N)E8OIJ*YbYRmo<6}LoIn`uxWmY|Vs#ExK zI^;G?L9vC9L8W0ii=$}s5zpl}Qir_pE>GjrCH%i6-5l_humKhTDZlgIq;* z;qduz`5Uto5nI~PsVlfo4a}{Lk5q6QI8>X+;qnLEaF}PdIM=T)Ib>JFf^6kXZ0P%a zdndnH99wFvlwC1FqOSYKh@51fi4HeXe5metL<}n9eQw^H{npDiE;!af*)lR`_1RW? z;)o+*xZOJ+Xq&FoN1hySJ1z^oQQu!%RxuvesN~R0kzbid-FCz039Z`hxAxP|x5}UEYY3&5xsERgTU(L}_h^Q9eLRMGf4O&)xp|(D2>Ldv-#>Wqee$B?%Uoy$S_i|@ zNo||B)2WK#hjVzxZ|P|sj&_1rkY`Xp{eR&%RTcI&jHJjbZXTwVC~HbKzE&(Yf)r>miFNpkQeuN08R?10KsXndrdNHAHG`u7GtE98aD_>LZo#VD1=}DMk-*0HNMd7k3 zW)=q4I=n4SuzHC0mZ90s8JA1Aym;#nwG4~>4l*h|Xo_$7% z&!@%bV7@1HZUgCV#Fgvi;Df2@2W3UjRuCgq8&$9QdeRj%BJrE%!d%)INocEVe)=pZ z*^bFlq(MdrU8f4XnCrnD ziFnY(WyzhE+i7RqrSdNY1Mj(Ph432^Gdm_mJQ7y;{xADB;Hqqqb|@Wd3r!jq9HK)3 z0;)Z`y?!0vBvfUluSk-Tef1~j9-{Uhgq=Z3Q`vQxZ97I{CQhaSMi$yX$&-1olcSJf z5M1y(SM@!gDe94#Y__w)GndM>uaPx!0Gwyr8@;R6nV&ATU3owGVY4`1sZh`dvkeVp zOK}AsLcYEc(oKO%9&9ZRG@w1PSz%-bV!J<%_UY^Td;{>;XoCw>3!!}?eVF{MvMNCz zG18adJ?}BIQ_}#{u^p&Enw-(cQQd^TnKL?@0`+9)0SJY6ZI&7Gy*}>Wh8M%jK;<58 z&f!iZyz!d`aG}8Rl_Cb8*@rn#?-M+mLzH)ZoL>LzyQtJ;Ww_p7M)8inUwX0vJ}e4x z{ix(`{gD_hi8=p%dS1!?7*ZNF`$jVdHrF4Y_4RNpe&cCMDZw<9tj-H@*-bDPAjZiol zLM1NrX{1I>wamZQ1p{IxCB6<5rk&rb>~V}=-Yz~21|DPpsLQ8ICkF?&hHsjztQo2| zq2g7u{F1G=!@+8>KnIH`U~_&Mqp!u1kXS{jmK9XZ7c*{Q6i;~w%d;AWQDx@Dly~9K zy!dyiD7NWuCR^r0RJ}y+k!n{|?|YV4ltz}AvAZUL`;I;@EiIhuPcFavsh8Hd=bA*3 z>_k~wFKkq| zD%X0_2=@&a>VI$67yVkDCK`?&*PYGyUf;`=&TI9im(!a~}6q zP*GN%I1Xt&amnn@oq(IWLsu?Z0Hsp@$)gYTPN15o`A{hCNrV=LjY9$B!iz0wm!~FCT?WB_MKaYn^sH(N{CjaWZD(05S2rQaUW?-q2 zp=2w|Vqz_=jkrdg9vBO_stL3(@pbHK=S4_Pwj5j=#&BIva=}XVvE$U}Dv5=*tE3fs zgJno!v!3uET1#OgA__ju!n!9o{TQ~em&4+@W<0A3mqkU zPa04Z$Id{y|H#yo8>Rdxee&w{R<3z%;`Y6WT>o}RaTKVB-~qjB*U|vipk7Ua)9WUs zkYn03eoSjrka&TBhR{WQ?o9KrkFYM8RO~axijQ;|Puo3YMUSZx$y*4||L_Kux|NX6 z^-jYkU6wN^L&%FgzW7rNO|t`rKj}hYg2Ms~d(5}?m7*P!A=CAl^Foq?>KlM=(lCdt z<)Hu`NO9mnWlk5IrA?7cF8>8t2gy>UxPIPB$e!ltM~6sXL_O)BAhy&fvp%JNc6QFS zFZ0At|3OQAJBatiDD6bA=EwOh&UFdM|eEA@^sg=^% zLV*uFy+en!(&J3-hT$SjCbGt>&-bQi_yr{lGL^K;p})uM@Pb?e%$4CK=`oV|(CoCF zWO@`_7<8m9FSMo zkWvM48GvvT4A0oqJ$d_X&ix&1f-4Xx?L$Dl(fQEfJb8Xl(ZajBz|b+77FiXP&u=5% zR#~dbt|7aq#%d@3Lxb~j;H}?VW~Sqm_RE5t+YzgLI`ojV!p_PY`_L*b%23-3>}cN* zyL_i71uhpnl&}%U2_eKXpZdm3Sa+tcH;^O+%}wLKs`w`9bz*hGUx=t;q1zl6;`iy5 zLIhbAz77plg=oZ&@@rDy-c~-lC>)*TuQi{LWK)*=s95B1;?uwgDCcT)Kccuw`s_q| z^3zM(N0Hk#^v{OfsFl9UvNr|c|s!N5%6 z7lpp)D-r zZDoZ)mbHUq6hi(HMqJ4&9VmFhwTA4z<+Ei$Z+w_v{#Q3~3CqbSsHD$|rZwhqnrE)& zpWt5^!rYLR7h8Z{?QQzSu)fy!IP$Hs@8esAshY(}k!VNKD1g*q=0V_^;^_DOBWc0^ zk#tQr=R3KNAz$617A$gk#Z?+9RxGvv^@PVQxqFTif&`gH)t0&vm2dkkF&`)`|NeTB zM*Moi-O#w;Y1sn@Rgp-Nncer{$aAW{;Te==?(lgUa%muk%OvH=HZ2Qeu{9 zwk@N}Co8h`@8%_BK?uP{NLH_O#SEIT7R&>KF1SQKC2{v3ZCsO>Wd!4X*#8Jri(B|1 zqQJNw{Hnw`UK+WL4zY@6Z9MT%`7MMtv&D1(ct`J!#7t*wY_V)6Ne*k?PWA znLRGrR_IELIe2E;ng11{rABUd{rR!)nD!M_-&DcAl%rO3GbGYCUMI>c>xLCnmL7dN&;N>9dXFG}xJg&I^ z4?}4#v7Xq<=jf52sMr#<)=@t;0*#h550&8;ll9XC`&dY680C8yWj(H)YsimFek5-DoQ+DNsI}{2tBQ22S>FduKAGYQ1bgF7JRxpG>*}ze^Kv}So-8n zd9GhV>e!O>*Gw+$!^i>$)**^3t)BH$4}F>qhVQgPEA)5b_#+w@9DVbx(|;%}rM{~! zU?_d9^BpYf65q>`lr|ONF~Z#Ss&EC8+9m6|9E%0zMNjih~=g*_<^aM&H&1DeQ1Osy<}J zbR<)%YsC~C^rJU@FKG@)Y!>B-9hF(2TqJsYXG;y_7!Y7RA}3N{tLYl39mJ?={t+n_I(FgZ(r=HLgKF9eQD;?@QT8EB<@4`7DqEA(+mkOG2Ol)-*q4 zkwPdThmQcg&W?mgIR&5`Zoue*U6NWFTa}|nn-zy4ZhIt?%V3`;sUFxt%xFhT#gm6k zL72b9Ob8oi%MdkYXmcv&IsC%^$oNjIqt=C>3&E_3G+kn=Gw6Nu(&FdfKf|w{qUu(G zNFFR|s=eKFD2Hu)-~7U0pj>pSA!9ityv%i>oIpa4W!XQwimj*-nPVm6#e;CMoUM@@ zHB}zJ`4jJ9J@@lP?%Kb!P}%W`)l&=QLdq05k=nVDV%sGTT7Y-u?= z*7_r%lWt(L-mCt2Yf*jZk#T9AH7zNy4sy&|g|EkZ5d|j}+C5QmWHc<{;t{r{TpvLv zf4Y1w6O^pl@ypRs=7sMhkMHJ^PtGR?tD`v4up!kSb-;Xe!Ug|+HtVVqeb&D12uw^F z)~Cq!upeDv%1Af15a;H}j&vy+N!HZ!8Ox__ODFbgx!b+T4R&w#YK+U~Uq!l;VAQUi zwje#xcON^XC22D;8hJU{3YmIisnMZ5TalGZd)T^SgVmd?f{L}CxPYA_;!xZVee+>I z3ucWjHd5KDvOSL@yy&cnYa6r&5ftRkz%@g35-^;Z?lLwJnZiAsyIJP>sBb}aXg}W-=Os# z&GjR6dd^qzdZRu>3p~~3XJX_h!at^1g}h_WZ-}pay?U`&u6Cl4hnqmZtINWyus*T1 z7-?+hs(?Io1!1cKL}RB z)d3R<(dVrq|01aMji=GQ!q)ZPZ$Q|d;5^9@%^8tlfN zy65LC=z_&%=~tlJGnTvGn_bLmnP69?43lME4ky8G>l$SzN?EreGSu=%W0n?4qM45X1o?4=Z z=D!53mP^Q56%e#uIP%N~o{^Uu6^m%+^Vg^YG3dFDs6%nUNn{`^+S~F_ES8ypHw#$u zWs$K)CZ4fST-UH-ZH;OzG$L`Y{d{%V(-5dX>gI=)v9Z1wIc>kH6$;Gtzw!RW=-83v z<52`cHRCG7ZgcwFv2M#7jkUo15)0cXL+v-fO_afc5$^188+6-U0Y^Th-eDlp(5Qdq zMNr5drvqOD7o061KrdE2-XOuC*CCE%jcjqFC(hCAMvxqJ zX~^=q-@VaXICWEH)3Q(sHh^`?B(-9?kZ2d_>D$_PJF`dT>!eA#H@{G4yqAX2l?|Q5GRVV4&VwkHwZO zd2^W{Y)EjyL}XY#82z20BC3&$zo;s?@!@Jru@-ljJUiuTsC@Hp_`MZRnyiu7sEu$d zf#$Cx`Eug?K7O}WY3s9%L$1p79YC@5qJ(uez@?3oD?@MU^UA6W~Mq{sIS8$B9Z&ih3Q3 zk3dn&s8{bzMY=T`dC%AWhSb%i<>;ze=~Bo;sBTe3?e`E^;8T%B__7@KmTwa*c5p9);=qsZZ`vG>S~%j93pK% zBgL2`JZy#;!Hy0rQ45PF^@<^>4nGJiooY|+Gj0@tQlLxLuszWI;K^II!&Du*oU7TP z3v?jb-#UF%O5cU9-Rv>Bpte%s4FxdZc-R)pdI8O1aw#Flb;4bax5@Vz-|yQ*^X{~PEZ;4qO1IMKH;0Nd!X_KEn} zv>a(DUPK`wzL@-lN3QtecJ~g*BH?tq?`HiFQQT?tT?9L6X=y!gC1Cp}Lb6qmbYwd0 z{Am2_c01G^3xN(LnezdSA(dp})dDaS$%$ZYm5Wmelcj9Prr$;!i`0F@_##ga`p#6E z$?M8ibpJuWqwmpg)aJNlw5sYw|&=*FZgL{kGV|W$y>tKipi;A zpuVuYAvs@~J#_vh=iM0>xH!oZ2=Iput}J4noR*Xra8x*zMt@$X8>Ls9l^ixplu z`A_G6IaWPnr9h@nL>BD=E7&29DS1`BuV0G}=6|3;3VKdj@rb!^)9Lk|SA6%qK{0(j zxSOka5pmJk*$Fo{+y0|;ac$|&r=+qKygIEIq-)tYt7}l_IO@Uk{}_AApgOvsYczr2 zZXpDBcY<4RcXv5hg1ZwuxE!2=yIXK4xJw8S+#P~D+~LXl-tW8rZWTopQ^m}l>F(9C zSNCqQy~%48&r#b5ghOLW{)OfEI1q+{AiD%5lbhXqGXQL-Wab-u6-Hj5et+K?-Y zX1QvJzay;17;*xR$1J2&#gYel8yRxNuB5S5_l%v4ki@Pu-c_3FUrSb%rmBv}_&+xo z4)^|@wZYcy2s@0Y^@+V2XhzNoPMFBOwmCZFTb?WDDEh4^Za(Pzy z1W|ehKMRkG<(KQ*qtP?GyUWY9{%#+%V|t+`T55&&FN$q@)UE<8vP7HIHrne_GHaMVvQwza$ZT>GA&N6mkhY5^ z!_m%!srG&H)D8e2QfEC5QM=hJZvSxj?0+9TEA#hzZv*RgGO}aubUy`p8h2{|C|)Fu zmT(I>E9mbL@5T}FLGnvTBXU){H6tR}UQ@xa`Qi7nBr!i-*1n*_QEzW=5VD|rv`&TV z6gyKI|EFe~frdldHrqvyMe7X@vqLL3MhoqaWD>p|$n zsj-6#SYzEn>|!4d#EeUJy7zjr+LfNMGR_C{PW>()W~d8ei1`G0cxb=XoyYe1J;UsB z9YkflObB&eY-Dgsw)ODR*D-;0xS@+0GI*~XRm-=Js+Q}oADJ_=)WBGZnR^;msHKDF zDdjGQbA-*egM`e@Kc&@5VNcf|b+Sno-nqzg{Gi3Vpu>rS>P9Cdsgs$+KnTm?0OJtG zDf#26KKIs|3Sx>z;3_c0Da}bF4=fv86n+f?O%Qq!y&P;VX4O4KD`sd@Y}Eci(|$ak zY#*s?I@+%CY#xJQ4%PH>EqLx5?K;aCIQ7^R=&@hX9ACWdY8a^U^IkK344P87TT}xz zt2S6YP$76fOe{tJ(n7M7b;AAfHoZmp54Hj}?FL4ejVV-IP=4jcV4=0EOo6DRI6@Ea z3?z%tfsV|B=-W*Ek^2eio#MgyHR0lR$HBCak0!S3O>AE$fa?)V9ecA?9xfg{OUumy zBlARFQ>N#u1zD}m-n+NG%FR)lkAj&RagxBfFmutXcYpYH`*-YNYrae-?VJSo9J+^- zCdTKW%P9RYSxgZI;e#3mbIF~cRHjDPdlKKMAS^4p7PCXZv3yyrP7kw-oo6d{dJo}W zPoE!`m+#dTFts;K-QBf_Rv&g6JG3)vI(llgmS`0hy#^!IOB9rSg8 zXd21V;XJGGUUuYHjWPNxNmrNPoA$&;^HvwHo~C}Rn+ze7#o+)OEueN2Cy4WmYOes z0ba}_4(kZsynHgsD}J-j5uJ_>FKNEoj~N|`9F1f*StqM6rVq=bbbOE-`|Y{>tW} zL8|#?HX?j!#!e-UD{9GoGm5N(A3$6d=vF`Po8MlIRLW#Rzgjio#6z*Y%3$5{BG*D* zA!06|XAp`qP)tP=V`$L&Oof1!?^n4!UC@?U3riz5YAZZBW>AcEzZ3*k9VNMK-KY7BCD;mJoK5-KOhi1_Z zzv^zl_{W;8Mb;kgQ+kNLMBABrNYO1NE|rL z>aa4;|8q34c$0K&C-y6jP55<-RrFE}c=51~fc~E6(MxfD=EaT{p@|+T=W!=eDvDQd z-;j$}C*$`YfD`=d&((1j<-cYRA~8mww=kj{{iYF@A-LkG)R_=KbF%j#`UsGZOtxG$ z9j3JYB^j2BGJ7gF0S$sA8v+DM6mv9;7e^tOMX!!zB=6O`@uvA-<228Am{r*(BTHkJ z!G?}7YazzV-=)br!vne{2Y(p0V-$x;=u*ofRTLNo!z{p8lO*}-34dhxbK>CLFg66^ z-c;=O?DV=yzDi3(6_A$Hq@h+_4_;+Z?gc1dJenJ6v;s4YZT3?{{j1z9NIFz1bA+PyDg1MLrhaivJW8BJ45gSYHWFF^{ru`v-htmup z@o1hk1xp+g!G*OYo;&?K5#G-u0r23$lI)WmWb}No@^@F_pXn$A+t0cD9JapvBH%~k zZsZpa#M3OKlZ>c+m(2e6-)lGG8Hf&f=Y+Ma4^}24=TS7t86ob8?<>8U1A??P zcf53Mf&7$obTL?N2_?P8#30`N-_zEREphPNvQ^+IR9HcCvLVWt8hS0csnX}N)Z=I# zE`>bYtzFH1`{(e1k=(&Xlp?xB+sFy*=-kjc;;z`k9qOE=O?fzg75WZ+`}jGhL{_G! zPIL^hNJPq@5UE!C!+WuB9#U^;HGbg@mUQv23rC*Nbo|rX_1D)l9YQx)@}K9VnlI+9 z6&@lHIiSnIOJy_&CpQaC0~8~+{k*7*MFpe8UZv2cg+%xBG{4m42@#=BS5<3{Y=a}L zCl|C0pt$sA4`Chl6dEYOSO_RWYAV*Mdz?}vq>?+MWXUS*MQ?C`uStd=tq;+qbl}{k zSHA62`#?-$ppWzWcb4>o$kOa5;; zyE|>zPB7zbL`V0@z{Zi}uzq&t^p~P~%M6eiQa|k;=7W@}Q=5<=)&Y2?swub`82kU! z)R_bNn4Zl}VX3iNnX)wC)jZZoS}@asa&S|NBhrR?0WWd+CX8461B3xAqUB75a6#t# zzyHho`nGlo^XpCRlyqb@jD>)(v6#x`Vlgif=gP_Bz(2d4U9$01@+Og5{hcDn!axWd zvc3PeiK|;9+1;WVdIL|*{z03AhhPx=i5@~ogTPd~4&kn$h;JDTW0z)8#0Aku4|c|i zNeusImrxeMWrNWHZsgW#-PwS=drCi39UbVlkg# z(*EC4zTgZg?Jl&&7^NRLf(gpSubAg7vXGt{HU{3>HQUuZwTeOgyIMA;FY|O+`1CtG-)MD{ivqUZcix zN!DiH`?dSl@BVlte8+EOw+`Y{ZHXbV9@TtHhozjNX8dwi}(dX!4)DgC>L@!Xpinz#l^m&JNyEY3OSa`Pad2&L~64?fZgDLn#?gY{(XdfIW_ z5$b_*^Xl;8o}WR_>eK*~6l;IJ7GqZvMwHhVryy0P9;fIojxYe_+H%KpASwPc@40bjr*{SPE?}2aJT9&Gwp^)l{)egduzxf`EB)0! ztsY1*7s+56Inuwy#ug%JSl7{ZHlf$1n3EY(qG!lwug1P3SGLgPPNmR7`0{)A^Atn$ zKZvlg$d(uHw~4e_S8pIDb&#zqvFsKh+QK!q%w_sQh2@1qrzNMt!S_o$vMvR8ENmZk zA~5%VS1n@xD)X`$#UMc;$$?H9u&e;-4EZu3QQ{*32gFn{)`)Khhw@DhYqp6Iw>(L%*Q3`8n@LvAC zlRYtHJOtl?QI%(6xz1A&wl>O@`!TZY|KrZ&T0gpxq*XJLLd(LE%5!xZnaSOm zMN8%D3bV%jj!#f>MlBj$sr~YP;on33*|XI_lKzyUur=?E7E_Ea>JVfk zETrtkd{so2&3*$;sJL!E66Yd!|6ngN=GXP$>YH)oKZKObj3Z1HiPOA35@1Oeapp_LSdE9_RnY!ScKJqeE#)^feT;1Tw zKIxU_?aTA&%X5XD&sR<*0(JV`-}m@F^AtBKOJY-c3-zU(LUy|6X ztzRP`I9s8(7Y z!s>ne3gOJm3=o?2FbBI_?2LWbducidk2v-7ru!nt8K2LpnO=cL;C^qYr=`p*! z+A7%v)UC+L$+=d&FPNVo1$D0 zLM%;uk20=Hu5W-cZu_9vvOS1(470LGvTgzU8ECwENc&pp;BWAZ#Z2%VV;8;jQmsd1 z_(45%!%`J7 z8i~YPmR@QnXj+=o8E}YVCh73<$vvMNp~vnt2YO@3Xn9FldDE3Beq0@;j! zuNxyc99A^82=BZ8yyYp*RiQDe`6Y_X9%K$7d+&MDB z(`#wH4Gxzsh8NLvpop(bHl_SQ9bE09B!*dpnSr@$n}QjfmEbI1XU{Z3>UZ=|Z&|4k z)u|EFNIfJ>P!&TTMZt^x>4y4h!fyFi^5I6DnmS2b7w-q;tU<{4`M$}7 zja!QeMANC&Wi-amkCVZ1H1Sf!5xmMm|LZaUI7WpNGU@wqDcLUQrO!d{09Sgp<5J(E z_eoKF20SzMEFjBV7^yWb{2DQ)9*S@wzIQUesZjYeh*1U$;EZZE`bT;(%~<%u?^xoF z-0<=cg6P;ubq=SdM<>bkaH}1A5*4`-N4+*vOOniZwCG=Bgb~d$9F4Xtwv}P#2g)xk zvc#Ty#<%%{weSpqN$hK>Z!5^i^%fp~01m&WL%mH5Hn^+QpUN7)YK`p|5=D4EHg<+} z4{d;J%&R(0D3r^3L;OyDyPNwJ@ZenaLHnFpGFA>}UF3?bwDNz-7!-(FFh#R7z$fNC z5o~Sjg&MKnM&241Rubyk-;r{&3@e9Ql|^!kkS(H!8+v* zR@&3a^xU~neA%(TV=pA9+`uH>k;h?w7?9konR5TBWoBPYW!KDN#;vfGWlml?@!P^8 zH*g?5@y}#;-puvpoGe2vvgWw($}1%H$)tBEPlZ3`vY8IQhho6v#pH>LZIk0_8Vmtk zVa;A&+k3G7&8MHe;nf8^TNt8wflqm&SD(nwT0Wgk#^#&JILk(0Z^=-8xxSkFl6Zez z>TLkpS(`d%^ROD1!=rQt0;jDmwjh?UrNV6C40VFAce1d-BovOdvu3m?qKlXAY zozcVz1|o>4aNyX7y-o8)Cb+WKX;ajvP#=g^%JcurB868RgJtl+pc_V=8patMEw*ex8c1nqKhu8(jEUP_+W#CS3M>frK^^ z&{-I1{}-!$_)Un{TUmRDAz@IMzT61k-#}9HB^zOpmsA`Lt%4*BOFUkBYN)VCo+pVm zep7qG^EY`6|M@Rf#RaC0llhv>*WvDQT@6cYnQ6A($IrzY5w=ZVTrGtKvvFtdOO@+b z`EV5{IB)o8Z@NxA>uBBBhjrikgLQh6Y+o&};0q0m>{#0({tOd+`OTdZKb<^@r1a2$+lAEP&agVFFZ+(_UpuM`J*h?YsZ*UKE=iZ;)i883`t? z97xY&qhqrb2*aAmF&FcPoi+2#r%S$LgBAl%^sze(*P-;CyFEe=TZskSI}_Hv7-HX0 z)(bj?<|@a0oKZ>1^HD{Mv8|LRU^8n0!WS)N_E_CG@R#Wq`(64WK)4fxkyC^ujxG&f@|_}of5)EgF3v2!$tPsDQ~jIYU+O&t ziVxP?Bg9v#&{5zDU2kH<6T2-f^*L$wHk*9V zqVGDX-9#)kRZJzGz9pUHFrFnJG;|T{ACvPp%{U(Bj)gC%s&PO#Z-ybkv9I43CshqX zr+$qnm6|Xlf-?V^mo!AiIoJ@$9B1?;#?aG(mYoI!bQ^3ITD|NBC0Ul*Bl=dWJ`fz8 z8nQ165ye$?^k@q0P+~AX?vN+Hgig897x32APndUYncgyr&tMS<(Rm^0!s@{CUJM|WE)nB6)`@q>T($e%tQh(%S7o}b zcwCHccLI@Ys(;Q;QO#BF`fr(6F9Nc@woJVngbk7(7J&mBQRHQjq8r+NBIYttW|8*?P6>+!S47Zl_RTO(R?TM#CC~+%s^4_E?@6R@p%caV$(%Kh7-AyPtg`0?N02K;nDPb%g9$t@di|t2Q=Sb-rD&~&AJc!^=H8jkM2te zF9PHWnHjz5W5fLcmMuyFHH=jMg$iNsfKs!FBJKfFJh}>owA9Sly4vkjpD27?(O91ds{l7vs71&IQ_Pv z-x$Y)%L@v@i`{pUuw3$Rheo1L63G-jqi$>q0py+&dq zPE2%+t$^EM`)c#tK9BFwEw11lOfxg-T)s-h((N=?J`JM z;%K4X!qvRNF5B+-zWzL<^WQ$BcB9qud|C}9mImy>3Gy$6*^p?|+04?btfN!DY3k!) zxdNU^$h=_9q0sTiWs8+!LGLB+y2__T7hJnZobo{?KkdBRfy-h4VPI4H@84=`Q|;PX zd%{}l@)o>U;^M33mPa?w^UIv4&@F?Y^3JfZFs8~*buMa+YQ{0Y%LbwN%66K#xStPb zBX($I9C?Yfx|L^;>W_~iF*a~}E~4S*x2Bt#9jC)HGez4XV&m@2WK0cYU@B!=O}P=T zDY5urTOMeEjJMhs?#k0MT9kL%LeTn^gBDNT6_9t!PpZ`W8K>U6z@b_ceiiYn3QKF# z912;2PiQZH(K@emJ3n!!bUY07>ksQ9%7U%%3LyTO`drppNY%U4y$}&6du5#^e+>U@c`1u*2bPA1BhL z7#c&i`cH@-yNL(;N|-~32lv(*j&~uv9_L-Y9!Nnir)4`PI)d|5r_!;zaB~}C&b(6=8)w_(&yY$YXD`u3}vh!Lx zu(|zUZuTj1s8xSUcfWR<+jqz-Z|Wkq#%Ad9%-q!R;5Kt$M?oT;C<0vK?n(BX`1ScO z;mcD7Cr?S=`Dz_=xFlTOvw!I$O4UmF=y+zPjhO1@&=G|HOyDD6oeyY7JwvfV^Us#; zv{~9oXrp7pnxP7c6B1_$k9|DhhssOeQbN7|``SX4ot~m3P)Gr|ja(Ptxxm0Kx|2%1&-7Wte==`rm z{C;5Kp3%h&-1FmruMqFw8XJI*0=9r#wKp?6PHUoDh0>|`kvUARC?UIJ{;`M(JhZU2 zR|C55t)zDqiiq*mngfB5B_5>@G+|NoNMP!D1drK`NBN`5=}>~6LZ;25$@Wt z*U#*?P4D>BaoJd>`KLMmzIA#l(NkmXl}!MXnLr|4ySRQ_&@+UxzrF98zi+Ge}jArxca?Be20Q+hSGCCV7);Z)&~ zmHSH@Pit!!(q4Q?NYx(MQhT(y2`D7GO)mHWx*$J{NjCeP=i2?bK z>{IqxZEyL*w!vTJn`x~PbNO9Wp7B;bR4wBXdR42-=V^5)7qs9+u!8WE)@GTmyhVQme z+E?bNdsx$ENxeh6;V2}l(TwQK+Z)j7@zDNLO{7}q4Y}L0u^{qOpuUqL5pl=*bV>Ky z<{VOWjqs-Ca@*hF{e}LTq2Zw+P$kjWr&6!1_#3NVr(Rp@sPAp1I6FAwtDv!cFP#z`*pPWkD0s<_l75t znI6X5kSWiKG>)w=O?dKSy${h6SaoCai_8z}Pv;~#>~`skSGSw3xqA>NPD7V9rLjj^ zr4>U`znO?@$tWyLdv9;5=qz4`B^l4-uZHw?(yr&j{XKZG9~lRF&K$S)`Jv6k4Js@Q zi8^nn{m!Y+;p5!e5A`p2Qa;|67`nRrm1B*{-HZ{pAo^f^R%k>uB@i>3>P9)y`E~4v z&O5l6EZUok#~nkDzh$RGRnpGWPpPaew;K^J`&rLJkKQyfudJLs5P+jgL)H}( zF26HeKT_h%q!`o3R~R;SS@^20IT`VH2t37U^9Pj0uHM^uNo%pTFYw>ec2@;76+fQZ z5|(`et5>EIv5=km-;J$4jw$-x&)nLc6-X=l((>FaISJiQ#jJQ=jGcO|K3FSxol41V zvr8oHFfgzUPpfY&+O{6&gpNXw^9gLpivtnc4!t+8;|nktViIG;-|uACcicBL9UsAZ z(C)C0$fwb1cRcI9BnvT;jHR&~QPJAZ@8!_orseNN`t@Nzzne*M~19{=A(Go5V+8- z=-9Sy`xpN}xSP`%QA7LZW^&Od`8&1y%cEx>IE$?e)`~^x1uq#3ZlH?nw>{@;W$o?$ zvhp+QZq+b_-)GnWwN(gVFd1&xV!`kBC-HDooBDaA#ez;Zd$ltFlZqm=6%hXoc9JUv zUsC&L-P~fK@PYKR9XMibi%deYQ+jJXO!b}IQt#j1bKAHAx57J$h3Rv@@5`dDOs5LZ z1iprrC6@9}Gnd*bntx1e=DGM5=l1|il6Seg188uDSJ!_me;ogrnNob27%qs40#Bt2 zVonewxOGxUx{1Gdn`U{t4<7J%UhYW>o@01mucm$a3hAk>iGMXD`nw~BV9te_>pH($ zs|lf(#|WktOJLxREXJ*M7-^&Bao_&-&J61gnC)wxyB9V}Z(^GFb$`A#7;Q=_H3=V1 z6pi2ev)a>v(dw_uOL5&X>iImGyv`)OYQ`jdB=tJNZT$$9Z=2l|9}^TGf8h)H$ZwXR zT`DS$8Q2d+*E26TeYw7__es34lXBGqa+9RSpn+Kj4@bl4M#j>KUOwP#-z%-BuJ);c z9Y2ZhoOfMM*T=cV{2JY_?gs~wUl2#5ICN`pXum%Eid{CQ1Gj1Gs#rzwJ4OkS5;Yzj z-|yT_%UaTsJgBqPcAuq)jOfMyPfdzbR~D_ z3VMY2(N&$^*CRLTZqNN4s&KhGR51{hV1- z^fz(a)k5s!kx3Pays!3EVqp%mcm8|NLhvFrS>JU5QK_+(0$E-zGYKv{#S1%b=}jgp zZr_f;%DLg;#lA!Zw$)oTu(_G7MkXw!BAfhHAg80eUdbB!%tF=Qo!o7q8~sh2|o-qY#tOVpn+8rU;x>jVCi z^6ggn8>?+I$2I9&4i3n^sxbXEOw405)2lNX|UEPm(BJ zm-MWei=zOQEA5_K`;GO49^0i^BgDibC?=>B;0y@=nMC21UNpeV#RQ1 z=b!4z_3k7*jW1Nm7R(D`qa?HzY)l(d0wgY3`rj-S1GzbJ?&+KHV58!)?>)VXC$ ze{`~zm~m$%qemz&miDTb(j>o|;3xegO(dX|nif~Y zq+9Os1ca@2=e)e!=lFiN2f7{iaV|0H*S>ixTz^`y6?5T)rud(WVbaS?y$JZ-m5BUR z49F)Y24r3u0V94wzS1$&j>hHrsdDsu&ir!TgT$N=bD&)+Inj1C|9e#q$KZqQ#PiRK zz{2=p#?`w+Tblk0_&YZf&yD4mC-Q0cb2*;@bSoa;5#5#Zm75MXPhOwlPv{9_iF~ih z+`L<;)}Ui99A4`Uk^ttmt)mb>{|&{ZU2MN-YNvJK<7o~q|L zP)o-A1WCq7c7ok%##(-os(IjU1yN>cCbhId_Ulbn{a&8z{2msQ^(APty8v@;?#fSO z8WDm%?~RA5w_EM-$$EL*^}9><)6O($dE`kz1ZsRN(E7!L=WzEOPWSiJ_vsE!w%)d1 zo__7i7wv}ZP<O*`&n_sToa{ddpco8)1=Pn6CpBT&=HXsSJZb%k~N)=2F7>K@#A7 z5myi;D0|0#{O=?p<|nSA^egbyf@vKXj>;l>OpZ7+lSh!;&;H{AXYI{%I~ZJct}D`U zKU+1d>JN0+GC%b&KL$`NR){uqt*vG2k&Nhm5SDj8o4H*RH-y{Eq;{047nsNp;(_?F7g|w>{8;*HSma(NJSJxvw#Y)hC z0{u8jf^~L-b~WPnQ#WMJz`TPGu{&Abu;Cv~HH`zTO0C$fX@X?GP1LyR+sa?Ba7oDP zEah9(c|J^!o2TCJZK;@$5WoF8cCb3(`2OpT@e?glbIn zwrLDK`Hlf}jE*J}*r>)ClsJVvSPC6xJ|xkcl0M0W6IQi&SCUWU?Br2?HWV?GLsE{H zVR`!H;~DB(am4uAb$(-U5iv_o@vY*#wste>veW@M6g}U;ZM{0>KSJ8hrkH0l?UY{_ac?py5n7)sj5OTa+&pYROD)1w#hKJ|h^6m4v z$!K=I-Qnu=0FF$>ZgM+o`cP!@4 z&UUymPDs(V>M3h1<7SExWh2U8+$p)RWh|X_@R=8x zZzHPt)_rZh{wq#Iy^PViR3+?Pbi)Kf8g$Dm*KfSW>AXa2{%l-gKQJuij+1>H6}=8Y z#6%F+f=fh_neB(7B;vSK;seNF|Zz@ zX#3r5fLalf;PuhGZE~uEtg79_rb784=H;BY3E#m>b}5p!2~=%r@6cW9pL2}7CY7xK zBSBVD#+{3NCNd@_vMj6+z$*Q$O=3Kcf@{^&eaA)-IOXy(=W?}wpK;phWPiLS>V|XY z3YCMx&+FOJ*=p#&wSL2t|9+%my|L|>vB}?I0Fg1RSXRo+3yUpQ)jupAl@3=;bR$1f z4z~-m{qC*w4}kU(X4v8{P1;$RDw6#{fm$~jBehLsr70!S*U{N}b$;pzrYgBUoMAPo z!DD16H1lRMCjxD~qpyM{6(rXk{Eg7qtB!Ug45as6(~6{ z(wIh}52z`^DX=_fA@$vVkbECtT2JQ%9PBsN`~$B%cNC>Jnl9m%tAyX$oazt0=iY@l z89Was8~Sc zY0R@xxeRPvOE8PZ8!}^4q?7O_F#M)-5E7??9OEQbOP5laZ3968mK zC!K#MgN!iP@BBS07Gz^>#o^n`dVAJwv)Dk$=PH*OLieo;*cBKt9YNFc6dtZ2&lMrr z^nZA7e3V%6)q3nVRQbnsNMG!_LHlI6{j|1l#yltTLbDnDD5F9-W*T=`EWzBVR_Ast z<5XbW1N#r`)zz1$)y4@w^lE`;_lxL?P}I|iv|9AJUUiSAaZ#UHv>Qs*qN1%p3rF~) zU}o=ifRaqsh?>txfmG%+oOlt__V9sm-42w*Xg|wd74H~%(qw8z(8$#gRYLE@*J)tS zEzIP@v$FxyJj0-jYY`?N8<)Z>MR)j}G(lQ41p)36-yKd z-A+YK?BGrcJ(r`9zW}W__kZ2ZEy_JuQf$AiGknbb*7yn&5UhTN^F+I+cCc1RW_0yCTGcVz6%`8~~TcZ3oi?Ux1N8=9(A!<~pO zxtnY=sl7F`BhLw?=tMN)wnjqGVA`O_C(7`a$Bh@EQ(%EB#EQqc>kE>OE0O1tLoV#! z2TeeY1v0ggW}$pp2G{8dcaci^if7(1X~6g5b5R52zM4u51Q%!?oDUc(nhyDLUKOdq zpYc9X-PU~Wsg@;c?FoCN5gk0!_+wOYAL;2W{_AB^`YM5-sV(jJ6FN~S+yziT=YMj2_QVm= zqiduX5&-PkvCRFRrHw~)O!4@k8I;Xldm2&r{gg`T!@Mm#W$zkqDn7Q=RMN(nF)aUW z{Ftr%lXDvi6=<2p>3$TDgg9(>{ zkL5K)OlC>2+Iu-P zo7r?x8yb!5;mAf)-h{D?Kx&{=$^rVSMhZBWoVo$&g1OGTxGw?9#ld8#_X2%1ESh5i zv&XBAz4Ya(>*yu3a+$J=eCEU;&NfP)@NgU096x&;{74fFQKftcO0ki^SH> z8VLvI}0_W%Uy=+G_dKiba@4{tBgA~QnWYl9S{Rt?`pH;Lak^LVN2zz>i z_R-^a{L2YMG7!&DcwRX|c0Ggo^8kU9Ocr1LvkZLsM?^M=>SxzrKY+xX1;uN~T?5+i zfZq|5G|QwUAY`AZ6T%uBcB%Ci-SaA|A9JW*vGnzt`QtWg5l!%Eb*b4Ab;bQooy6NN z)CnM*vI!BYRl4>Cq|}(_gkh;!O<^F2d-Nw{C{og1l3~ukup(j_o1^01F>&Qs5{k(} z?I<6=*r>*_KcLW+Qv#c)QZ**H#@0GrfajK;$B=hbhXqldmd-+`Wog+ocPkCN2@Q(EiOV6Q$69-@W2 zB^AP^q3>8WxCnj+k2;ARCM6~EQzX{UoCxDVN0mmLUVbH4kh{G%$a74q&A5%1S10TN zH2LVFhLZbTk(a_7=0U-kPnm#lx7I(U)G{la`T9*Xo@e7@Hn zyJHSV>|zE9w0C{)eij@+#Ts%05u18`5C@h}__}id5A8dIweQ+GZ{dgl9=;9TlD~Dp z@^_Xp=MS7swTZ$tc1Bw%2F zpZ3mot7d)puaaKLknS3tMY(#jKk3Wt7oV#siWW}`$3?WHW`YZa5e=q)=AE=uV^EF2 z$(h8s2}5;2Mw*)63gj$e>C!Cee55rIL7Dd1ZGrh+BlZCwkmc9Wsi@>aV|%4FP~T1= zG*{D;uZL>HSsAXQg0R$hgThc@Xf^)F%tJ1~){c4#V@lD|I93vIATmh^D;sU}UO`u{ zSg77VZ3?)!?b#?1trr-5HN>6OhIlwW>hog;K?puH4M!nE8A z_8wP|0KEEIXQk#}CZyml&o?ntqvP&xM@6BeX{EMs<5A8Tub5JeB6)WiE$c&wX9gwh7H{!)Lb*Jz-S!NT1cxyW6ad!MPuJO%DoRRjh7 zDJ6 zXfCv$!!R8I+TQRr_)QZukg@h69e#{c;)(?u$%zEx17R(14P%gFwsoz^>$RRN(zkK_ z*c!abIm$~Y3TkHXpQX7w`Ht_@b7%G0*MoBklduValH$Z>e_BwCB|W>ABvNWHf|FCH#zyMAEJq84MD7hW z{EtE5ph6_6+IVs*@j_00_#6^tgd%7#2^l~$=g@y+lpbph#r)YMU>Zf}wVlHE2RkKf zG)cVt!bX5PG+wzS0m7D=QGQTMIQcL-^DjAyUns!eVgTRZo%9FSpW-1-WJ1H}u%b{F z?-%>urRi$<#zh$3*$sS3SC~b6GU5&25)?Ni$Fq*iz|Zn@tX@bUJ$7F{G$=}Kwa7az zwYC$X<9i>6C>P%qRY8uUz=yXNZB&yRh86TBnB|;p*$4zD{W(?CSMid7q6nIWl$F1` z7CJ5^17&KeOe4-g^~^W0g60g}s>P_UA*K3DY*_08W7KasK4f$1f|R`6R4@t_mY{wJ zF}Jc%@T>k-*(*4U;q{*G2bkA*#$+|Ex11h#Jnhwpo}+@C21K5j=X!U_#NyYTiqhGY zUoP+SB(u)%nHETFMG(Rl(?_tZtv}b|Aii~^W5KGNOpgwmA*V8=qp~D;O+v*}s0p@+ zGO^FWm;&zrH~>Jb#3}yGZ`dEhv{>=6qGf~Q#BPPiCdr(1x;Y#X2xYMG)pG$)k!x~% z5u+)!04DUn@WFmT-9-inh*ted6sbK}nglqMy`A<%Akccvacx6Nv8nB9H0})hUbV5U%iK1 zr3FCT*V-CD5z7y1n@_9Qd?hAf6S|lzvUE)#vtbAU`7uw3Q!cq@@CBAi%gF~kJYGUV zJUx6go5=e)4qe3`xTg0^jX5qAoquQZ7O>99-5w`B810}NxokL>YODi>Des}gaX048wC|GE*vj7v%4f>_M1}#n zodVh%$FWt8LhRHWdQ1H&f_Z-CnR53<0Q6{f2f8Wc{IlWzsTM6{F|9*BK(!-YM357K z!K#OFxqr0SSg7nI1Wjv*vEtH49HB*5@|J|stUWbqPY*5Lj7%f0F8)AkMpFMKuM}u+ zD%sE?#EsM5(%KI-D*nk8@){OFct|D(ib5RY<)?S05P&?LP8z! z{tVjud6d;+nIW2f>73M{VRYvqRxoPU(PfUcm?Jk$hV`&xh@@mb=0_ZzF`%4@0n5Aa z4)`%xU%&{Pm8eSOJ|O0}i7p_e)Hvz=0rG27GAzIVuYVAh`0luQ zZ%@5!P%3Be^0 z=s1LS;N;l$TpJV4U>Fw2sVZ~d%KsA2hr(iBnwNuu8B95sP1Hhp^B0~9>pipSaFKXV zbZiPX_?r}Fhz!u7A?C=d?HfPFugx-jQ2P@r;XA3MlDNk8m;MAsCLofgs%=8jO)LN2 zn^Dze{ilxrXNeh!gIy*u;PM1_J-M37Fhh7 ze~YjB8&zTdXTM7rp2|kAGpULo&*=Xx=L~6R;Y$(uW#wx zzypwvSGi8TVMSNFN2 zh;vVR3l&e1=Xex_WDsl^z&Ngh4`(_=rF12_+0oW*_+jGu#x)FBRz3U!u)0JhbKFgzB^RCS6qIU;=QFo6B=BwO6U&B80VqKNpO)Lo*4CZzL4+NSvp6Yi(yGA{e zk1Y2fj;duX#^A7#xJ=YjH^zuolJ{4jCftVuUIhfV%K#Y71GovNCw-?oSV6~9KZk2V z#UUjN6CuWdOXYGqjNr7 z+)S^1#29r`twdvhDdLvBrEjSj3j}tD{3>W-bH62-vvQvQZqIrO@ zA-QVWNHc51Trc&t<5AEG~j?JKB^nz7QO@wqs_P`&Fa0k&u?KD-TaMB+QVH-sBuWD%O{ArJIgXkiI<77kFCT8kjB!}c?ryxYf6i@z-ZG4xscNY5Rs_yo zFAh9@4(IU6Z+SVxI@!IE4J;W^5;q+|-WYfAFypnnTiOe;GudE~wOs;ppPYfu29KTV zYQ#!_^%C?2#?Vh?TG_B>(p8oR%Oyh<*O`PP=p1c&npHuG(r%*?{udgbmqifnSgUg9tF zYP!0~qa#F^uVX^CRVw=|3&<9RmU@+J}=FU4tI zvp765qgO6PK2K=hPRj>8sA#*8ls%OORT81qG*CH~mvbf%O*T z2PM%@X+EZaHN>sgvZ;Kbw#Psy;Y$W#B^d{PgEg}-zQ@f;Go{07DUxSrrZgIbW7qNh z2qm2A-Lab zcWwm?X;N@6gmGUU6w)xVnL?MdR7u&rd>kFAnTUKeVzM}`INIn->{LA$ zplK@(>Bl^$qxlZLyTySX2?8(YY^e zoP3Z-0W+RU4<+m!*l*8ywjO|tbX~pJLqKN{SyLw zPjgX{uv3jt29d2FD^CmE{1}9zd_OpQY^GByhrhzW!OY_^kZ$t;ZaEBtc1us z_LOcTqkJ5F_0V$9O{&&y+)0;E^44&rvU4-T=_s^2G;VJm(l`SIQOn1~eXs14bkqe= zXw;5}c)z$+U(9rhPzCDMR`D;aMo?Vc=^n0b(-;vX2x*3_`@KJ45LAQF&_aP!^^N#s zf!8Kc=|}t)QfATlg!>L5ss&xrWR?(0C3Rm=&`6Tab5)V=IYq7P{FfYt>R zJ0MUdLHUdcL%fjgL47=px_VAsQyrw_bdO(j-9+soLm=;N%mf`9L|pW=OoOL3e1T^Q zx()%?il*oqcmPA3roF030mt@x=JZwi-3huQ)l=y=jqAP=E)57W`t5QLRtXt=KCPcD zDul}PtGXm09c?WHI~&K9^j17IR$iPvw1&PjXv$ zs_Wjv_ly!Z6f4sDC$w1!fWKumNcBh_bTwxAh!XDvr6v^@#eElq3~{cM zT@U~D{nNE$S0}7wn$H$JVw-cDIiXt@cf4f1V-cGsgjJeWTfzJn@|i#d_JW;1ZLJDF zEC?8j{7~oqF@7|?ZZCB=%!9$*W_Jk^Bi4j<%G4V^->QxDQ4Gt@qZb4*;d|92d>A7j zcav0(IbEZ_wd|*Tprt^T>x2-k0j1X|`8VqB9JffA z@EX2r%043o1);w{uj#?^S{XnTruV8pTKq#>+px8|=OEKa#}gKCUe~*&E9nI1&a6ge z8Wm{eg2#fYA)!V1&zdPf0nnfaE4sTai9=b}MXD;!ioJ8W@Y1IfymuJ%CFtRjy3Gvt z5w47_ic%n8Cb@-ykVCVC#v_KaLaXCI?9Y+9lvS_^>IQ0jp5_FSjWp+tf+U8auw{H# zU*@AxBX4BpqTq@+w3KR-u(zoVq56`T2r|cIItcu|Z4U_n$QwWl;o}Q%a&f@a!Pz~LX@pBOVuk_vyqQKOiQ1Aal!$lbYuP;-|bViyXwb5X|5_i+rE%q?fF zQjbQ@>_FOsuNhmIa{>Ll0C|B5O0Bk!i3QMWZXTQf2xE`yD(Nc;h0CUMpm4bX^!I=O zDjLwW)Qq=i_B{&JFp3}Ejz)R^2FSzJJF;dyNzc3=S;8faYNgv%$JJqre?21gWM6wUN&CJKu*2Kid%%6-2!>}E{cvI9t)>L3q%2OTg zP{B*|s16bL1Jsrdy8tkvLhU*Sq%I62EB|uuFE>>6{=(1mE*Z$$AG#gow<#SK&)_3M z+WT&iMa%BSjw#4=i?oPlYJ79nGCe($ky`Vz%}r(flNkN^+47z4j#vC1)nLb&OuO9J zRz?s6nsRi05t^m#WdOP`?c{I?nJYqy$Vnr2UZxE~e6(2dNb{e2kN7@922t3j=+0uJ zw^^8DH{vgVy02|fP@9?)i|L{!pl5ArZr0e3|#vO3=$G_-}VV-HvJlZ)(QDhALU^g(`ri zH?SC`9cW%#Lkrv$a3Rr_*pkgb4RCrxp}&Mv-PSv9^{Lb~UNZ`f#DYhU0YQ?nrcA`P zm-jg)$ut9dwl4f;Jjt+WdlZ9DKZj^#dZ>KhlcQtF(*lrcNRo2m2A^E~Nu6xZMk>_t zTa466XnSM==sFciz#4Lb3|7?LVpSVwg2#hb+nd{oHya8w0@*#B#>&weXiP1Ks4K@c z^yhL72#Jor=WCLa#pNkE!(|vbrKlO=ZNZt2RD@ktx6G*W*$(XC+Fee_5b~ts;KLn6 zr0@`SG!b2 zHd}XM<0Q@5(lVObK}{t#riz46!qZdM@eMmTzkkl#n2x0L$g5gp8HwArKi_y_s#Mnv zjOu?f`oq~i9PPg=2{upFCn zS|RyIYl^yKH3ep^l<-=PFU4Vwf^k(&>c0E3Yk)UYw7;WzU49I1-kp3xrP4>I5z}C? ze{pEX@Fr9Dv~<@1%29i1%h3abnGG+K$#lNoS8_2mpDB^z0q_#>86&RWEc0_w|FwrK zM1-;5vVeIAt&NDm&XYkw{}O-g$GCA8?-%H>sL&tlr#x~`*X!X=;?Dy1{QpA#7qDS< zuM+#l2ipbDyWPSLDSBiH*Dh}fRT?k#3EhWJ>Z74h%<#SZy+PM=xb|o($eb~@Upok7 zVV^{OS;}3ow@{oV|Kp$erp9Ug0r|sCRK2Fz$*WUqUbl_xN=h%;63X1CTu1W@c-=3( zdn!UlIj7RZzxCXBz-L;>O0ZC&6i?SC_Iy~2Xxy3GAhTSa-cEd{WvzMMce*S5=C^<{Y^b4iu)ezv|6fTFETJaNp-~`79AbyfpGM@$ao|b|Nc-^SBqq z!)pr3QB~9ft~xL9Sa+m*U3EgG&O8jLr%p0POV+zltYazlJi1W!P_xG<${RCm7*`=u ziHCK&Qo8lYI}My^!v>Vjjnd#K*$|AN#N6m5IXhZ4qsom;AFiIssv@n1aPP~|#&3Qv zFK7+mJLqb{l)pZt6EAsP>l21@3Bw{Weh3S}KEn|vGJL;NgSOHzd3vo43Qo&SWwvxjt%blJblT|;gYq367iaTgKt`$kpKq!B&4WMgQBR}&eaFw z$G{HiM5mtFhD(sfJEf(i7S26CSH^Xwyy5-nn8htdWb@UluXj^^GTzbsweix6!lQ0&UVm>7dN6ivfC$WTXSb|F4J;!u6 z*gek1y`bkRbi!ZX z-XQEMEeEM1k{06VEDg^46&~N$YbnGs3^U z4l%;k44<|{J#;sX{Pfm|8Y^xa+ZXq$BDh#Sj4QbP)Jo#{6zcdPk^I9NGJkvGL}ksx zWTgW`?QIdcKW{jruPo=;!3dYERfPv|!dm}C9{uO|Vo1gA#mkbksi`Rfy1<^=FZXf2 zW}+tWOQ6ih(1u?RzhuXD-iQe9K_~K`{FR+>KL#NUSLRweB6&!?-z1a3B8et|emk%P z+XH&u93v~lUi6YQ^Ld&6vt!Mw(B_uMDj&Hwl~t9McaQxue$62=)Y8nu=ZcSil>g3+ z)s(BfJ9A};KU{t zoDS)amdbi_PeGWy^X_y+NK9MWgo|P1#UJrK@oV|{;<%erGrWh*QsIxhGcG!XIJYG$SXGkdGva#nA6)9hvHFTXD>R=%B*moHP_ zbTFM{tg!+W`UUV_snVncb(1U_yMj8+HRixudxRuqS*dsby3T2zc=Fzoj7=LP z)=xZkuU_yJm)mVC{3bj)+(f%??07i73!_I|;zSw?$mRA0{RK~`9H)0qf`sDBj-1OB z*%r}1?hn<$Y2czRTn!9+Ke=wd|HBccQg>_8rh(-44TTcnVW?Z)6Fn8QN2E9WFJ(uI zj5^=>cs0R``EPH^+lhs7b8+|HK0GG4{ZnH$>AT>sKzKSn);cG0l}(TxLkjz9_%hWa z68qO=;b0Z^anKgL;o~hz@&Wp*W$>>NDGNu6~UoDQc zcTyIsD7pfF`!KvdYB5{?HbE5n*lw7m_TrnX#hs>dYW?^-hx7OI7;#2uNhobZ{z3pp z>QsYmx&iHphw7$)wdP^$o#O{+1xAlhGfMWybEJ9}$~IBT&E{L+FPl0xtD&+w>w{G^N8;Z*Oi>Sru>B?!CNNlPsbfETbd!B z-5w10KG}3~{^z{?dj*_DK~(d*zI)~&BC@eo?Pp3k+LI!5-@~#EU@dnmrTbRt*X~}= z%Ng4*WtXB8&8Vz+uB5(>u~#bFIHh}nyt)=5X_)3}{Wqk3;dI`i+>bk@y$>#af9F}h z_S+n}Rj}eqHGOD4aN+OT+LDx}8*89bQ}t{>h^otN`_qYAd7Ql=E4SjCJD(K~VZ&t# z4E@yR2Kfh5UX@o?4vL3RoJNq)n_HWvxoGV_QGcl+I`JZYq@vwF19eR#_; z`LySo?>C-J{FYm6r>e}l`#n7}ggZGhH#b*!!{}8K!|m%L3l-VV**UxziufR-juzfF z{GR^ln6zn>MUsX#Y2V(L@|?Z6uj)x;eDiwrx{-ZYn|z4iw}Lxp{~44yV-=xQSJmp_RtoRn-S0OKh5?ghWD^ i;Gf%qTfst&CcmG58=Ms@M>6VT10SL(+2kSKgZ3W`N*59U diff --git a/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.daynight_single_traffic_light_sample/.gitignore b/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.simple_example/.gitignore similarity index 100% rename from official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.daynight_single_traffic_light_sample/.gitignore rename to official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.simple_example/.gitignore diff --git a/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.single_traffic_light_sample/.project b/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.simple_example/.project similarity index 86% rename from official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.single_traffic_light_sample/.project rename to official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.simple_example/.project index 7ef400b1b..14f324da4 100644 --- a/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.single_traffic_light_sample/.project +++ b/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.simple_example/.project @@ -1,6 +1,6 @@ - org.gemoc.sample.tfsm.single_traffic_light_sample + org.gemoc.sample.tfsm.simple_example diff --git a/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.single_traffic_light_sample/launch/single_traffic_light.launch b/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.simple_example/launch/simple_example.launch similarity index 67% rename from official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.single_traffic_light_sample/launch/single_traffic_light.launch rename to official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.simple_example/launch/simple_example.launch index 1291db0e1..f27a6eb5e 100644 --- a/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.single_traffic_light_sample/launch/single_traffic_light.launch +++ b/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.simple_example/launch/simple_example.launch @@ -2,12 +2,12 @@ - + - + - - - + + + diff --git a/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.simple_example/simple_example.aird b/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.simple_example/simple_example.aird new file mode 100644 index 000000000..d09404014 --- /dev/null +++ b/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.simple_example/simple_example.aird @@ -0,0 +1,514 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.simple_example/simple_example.tfsm b/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.simple_example/simple_example.tfsm new file mode 100644 index 000000000..6624e1448 --- /dev/null +++ b/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.simple_example/simple_example.tfsm @@ -0,0 +1,31 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.single_traffic_light_sample.mocc/.classpath b/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.single_traffic_light_sample.mocc/.classpath deleted file mode 100644 index 6a42377b5..000000000 --- a/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.single_traffic_light_sample.mocc/.classpath +++ /dev/null @@ -1,8 +0,0 @@ - - - - - - - - diff --git a/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.single_traffic_light_sample.mocc/.project b/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.single_traffic_light_sample.mocc/.project deleted file mode 100644 index 18f846264..000000000 --- a/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.single_traffic_light_sample.mocc/.project +++ /dev/null @@ -1,28 +0,0 @@ - - - org.gemoc.sample.tfsm.single_traffic_light_sample.mocc - - - - - - org.eclipse.jdt.core.javabuilder - - - - - org.eclipse.pde.ManifestBuilder - - - - - org.eclipse.pde.SchemaBuilder - - - - - - org.eclipse.jdt.core.javanature - org.eclipse.pde.PluginNature - - diff --git a/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.single_traffic_light_sample.mocc/.settings/org.eclipse.jdt.core.prefs b/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.single_traffic_light_sample.mocc/.settings/org.eclipse.jdt.core.prefs deleted file mode 100644 index f42de363a..000000000 --- a/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.single_traffic_light_sample.mocc/.settings/org.eclipse.jdt.core.prefs +++ /dev/null @@ -1,7 +0,0 @@ -eclipse.preferences.version=1 -org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled -org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.7 -org.eclipse.jdt.core.compiler.compliance=1.7 -org.eclipse.jdt.core.compiler.problem.assertIdentifier=error -org.eclipse.jdt.core.compiler.problem.enumIdentifier=error -org.eclipse.jdt.core.compiler.source=1.7 diff --git a/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.single_traffic_light_sample.mocc/META-INF/MANIFEST.MF b/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.single_traffic_light_sample.mocc/META-INF/MANIFEST.MF deleted file mode 100644 index 7000a6a5f..000000000 --- a/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.single_traffic_light_sample.mocc/META-INF/MANIFEST.MF +++ /dev/null @@ -1,16 +0,0 @@ -Manifest-Version: 1.0 -Bundle-ManifestVersion: 2 -Bundle-Name: Single Traffic Light MoCC -Bundle-SymbolicName: org.gemoc.sample.tfsm.single_traffic_light_sample.mocc -Bundle-Version: 0.1.0.qualifier -Export-Package: org.gemoc.sample.tfsm.single_traffic_light_sample.mocc.TrafficControl.blocks, - org.gemoc.sample.tfsm.single_traffic_light_sample.mocc.expressions, - org.gemoc.sample.tfsm.single_traffic_light_sample.mocc.main, - org.gemoc.sample.tfsm.single_traffic_light_sample.mocc.models, - org.gemoc.sample.tfsm.single_traffic_light_sample.mocc.relations, - org.gemoc.sample.tfsm.single_traffic_light_sample.mocc.tests -Require-Bundle: fr.inria.aoste.timesquare.ccslkernel.runtime, - fr.inria.aoste.timesquare.javabdd.runtime, - fr.inria.aoste.timesquare.simulationpolicy, - org.junit -Bundle-RequiredExecutionEnvironment: JavaSE-1.7 diff --git a/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.single_traffic_light_sample.mocc/build.properties b/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.single_traffic_light_sample.mocc/build.properties deleted file mode 100644 index cb6bec3cc..000000000 --- a/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.single_traffic_light_sample.mocc/build.properties +++ /dev/null @@ -1,5 +0,0 @@ -bin.includes = META-INF/,\ - . -source.. = src-gen/,\ - src/ -output.. = bin/ diff --git a/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.single_traffic_light_sample.mocc/pom.xml b/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.single_traffic_light_sample.mocc/pom.xml deleted file mode 100644 index 8217849c6..000000000 --- a/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.single_traffic_light_sample.mocc/pom.xml +++ /dev/null @@ -1,20 +0,0 @@ - - - - - 4.0.0 - - - org.gemoc.sample.tfsm.raspberry - org.gemoc.sample.tfsm.raspberry.root - 0.1.0-SNAPSHOT - ../org.gemoc.sample.tfsm.raspberry.root - - - org.gemoc.sample.tfsm.single_traffic_light_sample.mocc - eclipse-plugin - 0.1.0-SNAPSHOT - - - diff --git a/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.single_traffic_light_sample.mocc/src-gen/org/gemoc/sample/tfsm/single_traffic_light_sample/mocc/TrafficControl/blocks/MainBlockBlock.java b/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.single_traffic_light_sample.mocc/src-gen/org/gemoc/sample/tfsm/single_traffic_light_sample/mocc/TrafficControl/blocks/MainBlockBlock.java deleted file mode 100644 index aac83ef77..000000000 --- a/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.single_traffic_light_sample.mocc/src-gen/org/gemoc/sample/tfsm/single_traffic_light_sample/mocc/TrafficControl/blocks/MainBlockBlock.java +++ /dev/null @@ -1,505 +0,0 @@ -package org.gemoc.sample.tfsm.single_traffic_light_sample.mocc.TrafficControl.blocks; - -import fr.inria.aoste.timesquare.ccslkernel.runtime.elements.RuntimeClock; -import fr.inria.aoste.timesquare.ccslkernel.runtime.relations.RuntimeExclusion; -import org.gemoc.sample.tfsm.single_traffic_light_sample.mocc.relations.FSMEventSendReceiveDef; -import fr.inria.aoste.timesquare.ccslkernel.runtime.AbstractRuntimeBlock; -import org.gemoc.sample.tfsm.single_traffic_light_sample.mocc.expressions.DelayForDef; -import org.gemoc.sample.tfsm.single_traffic_light_sample.mocc.expressions.SampledOnDef; -import fr.inria.aoste.timesquare.ccslkernel.runtime.helpers.BDDHelper; -import org.gemoc.sample.tfsm.single_traffic_light_sample.mocc.relations.AlternatesDef; -import org.gemoc.sample.tfsm.single_traffic_light_sample.mocc.expressions.OneTickAndNoMoreDef; -import fr.inria.aoste.timesquare.ccslkernel.runtime.expressions.RuntimeUnion; -import fr.inria.aoste.timesquare.ccslkernel.runtime.relations.RuntimeCoincides; -import fr.inria.aoste.timesquare.ccslkernel.runtime.IRuntimeContainer; -import fr.inria.aoste.timesquare.ccslkernel.runtime.relations.RuntimeNonStrictPrecedes; -import fr.inria.aoste.timesquare.ccslkernel.runtime.ICCSLConstraint; -import fr.inria.aoste.timesquare.ccslkernel.runtime.elements.ExpressionClock; - -public class MainBlockBlock extends AbstractRuntimeBlock { - - private RuntimeClock minutes_ticks = null; - - private RuntimeClock initsemaphore_to_red_fire = null; - - private RuntimeClock red_to_green_fire = null; - - private RuntimeClock green_to_red_fire = null; - - private RuntimeClock switch_occurs = null; - - private RuntimeClock initsemaphore_entering = null; - - private RuntimeClock green_entering = null; - - private RuntimeClock red_entering = null; - - private RuntimeClock initsemaphore_leaving = null; - - private RuntimeClock green_leaving = null; - - private RuntimeClock red_leaving = null; - - private RuntimeClock semaphore_start = null; - - private RuntimeClock semaphore_stall = null; - - public Integer initsemaphore_to_redguard_initsemaphore_to_red_afterduration = 1; - - public Integer red_to_greenguard_red_to_green_afterduration = 3; - - public ExpressionClock switchintermediate_alltriggeringoccurrences1_clock = null; - - public RuntimeUnion switchintermediate_alltriggeringoccurrences1; - - public ExpressionClock green_to_red_sampledon_eventoccursafterorwhilestateentering_clock = null; - - public SampledOnDef green_to_red_sampledon_eventoccursafterorwhilestateentering; - - public ExpressionClock initsemaphore_to_red_delayfor_delayisexpired_wrt_stateentering_clock = null; - - public DelayForDef initsemaphore_to_red_delayfor_delayisexpired_wrt_stateentering; - - public ExpressionClock red_to_green_delayfor_delayisexpired_wrt_stateentering_clock = null; - - public DelayForDef red_to_green_delayfor_delayisexpired_wrt_stateentering; - - public ExpressionClock initsemaphoreintermediate_allfiredoutgoingtransition1_clock = null; - - public RuntimeUnion initsemaphoreintermediate_allfiredoutgoingtransition1; - - public ExpressionClock greenintermediate_allfiredoutgoingtransition1_clock = null; - - public RuntimeUnion greenintermediate_allfiredoutgoingtransition1; - - public ExpressionClock redintermediate_allfiredoutgoingtransition1_clock = null; - - public RuntimeUnion redintermediate_allfiredoutgoingtransition1; - - public ExpressionClock greenintermediate_allinputtransition1_clock = null; - - public RuntimeUnion greenintermediate_allinputtransition1; - - public ExpressionClock redintermediate_allinputtransition1_clock = null; - - public RuntimeUnion redintermediate_allinputtransition1; - - public ExpressionClock semaphoreintermediate_onlyonefirst1_clock = null; - - public OneTickAndNoMoreDef semaphoreintermediate_onlyonefirst1; - - public FSMEventSendReceiveDef switchfsmeventsendreceive_occurswhensolicitate; - - public RuntimeCoincides green_to_redcoincides_firewheneventoccursonetransition; - - public RuntimeCoincides initsemaphore_to_redcoincides_firewhentemporalguardholdsonetransition; - - public RuntimeCoincides red_to_greencoincides_firewhentemporalguardholdsonetransition; - - public AlternatesDef initsemaphorealternates_enteroncebeforetoleave; - - public AlternatesDef greenalternates_enteroncebeforetoleave; - - public AlternatesDef redalternates_enteroncebeforetoleave; - - public RuntimeCoincides initsemaphorecoincides_firingatransitionalternateswithleavingstate; - - public RuntimeCoincides greencoincides_firingatransitionalternateswithleavingstate; - - public RuntimeCoincides redcoincides_firingatransitionalternateswithleavingstate; - - public RuntimeNonStrictPrecedes greencauses_stateentering; - - public RuntimeNonStrictPrecedes redcauses_stateentering; - - public RuntimeExclusion semaphoreintermediate_onestateatatime1_2; - - public RuntimeExclusion semaphoreintermediate_onestateatatime1_3; - - public RuntimeExclusion semaphoreintermediate_onestateatatime2_3; - - public RuntimeExclusion semaphoreintermediate_onetransitionatatime1_2; - - public RuntimeExclusion semaphoreintermediate_onetransitionatatime1_3; - - public RuntimeExclusion semaphoreintermediate_onetransitionatatime2_3; - - public RuntimeCoincides semaphorecoincides_firstisinitialstate; - - public RuntimeCoincides semaphorecoincides_firstonlyonce; - - - public MainBlockBlock(IRuntimeContainer parent, String name) { - super(parent, name); - init(); - } - - protected void init() { - if ( minutes_ticks == null ) { - minutes_ticks = new RuntimeClock("minutes_ticks"); - } - minutes_ticks.setDense(false); - minutes_ticks.setParent(this); - minutes_ticks.linkedElements.add("TrafficControl::minutes"); - minutes_ticks.linkedElements.add("tfsm::FSMClock::ticks"); - minutes_ticks.bddVariableNumber = BDDHelper.newBDDVariableNumber(); - if ( initsemaphore_to_red_fire == null ) { - initsemaphore_to_red_fire = new RuntimeClock("initSemaphore_to_Red_fire"); - } - initsemaphore_to_red_fire.setDense(false); - initsemaphore_to_red_fire.setParent(this); - initsemaphore_to_red_fire.linkedElements.add("TrafficControl::Semaphore::initSemaphore_to_Red"); - initsemaphore_to_red_fire.linkedElements.add("tfsm::Transition::fire"); - initsemaphore_to_red_fire.bddVariableNumber = BDDHelper.newBDDVariableNumber(); - if ( red_to_green_fire == null ) { - red_to_green_fire = new RuntimeClock("Red_to_Green_fire"); - } - red_to_green_fire.setDense(false); - red_to_green_fire.setParent(this); - red_to_green_fire.linkedElements.add("TrafficControl::Semaphore::Red_to_Green"); - red_to_green_fire.linkedElements.add("tfsm::Transition::fire"); - red_to_green_fire.bddVariableNumber = BDDHelper.newBDDVariableNumber(); - if ( green_to_red_fire == null ) { - green_to_red_fire = new RuntimeClock("Green_to_Red_fire"); - } - green_to_red_fire.setDense(false); - green_to_red_fire.setParent(this); - green_to_red_fire.linkedElements.add("TrafficControl::Semaphore::Green_to_Red"); - green_to_red_fire.linkedElements.add("tfsm::Transition::fire"); - green_to_red_fire.bddVariableNumber = BDDHelper.newBDDVariableNumber(); - if ( switch_occurs == null ) { - switch_occurs = new RuntimeClock("switch_occurs"); - } - switch_occurs.setDense(false); - switch_occurs.setParent(this); - switch_occurs.bddVariableNumber = BDDHelper.newBDDVariableNumber(); - if ( initsemaphore_entering == null ) { - initsemaphore_entering = new RuntimeClock("initSemaphore_entering"); - } - initsemaphore_entering.setDense(false); - initsemaphore_entering.setParent(this); - initsemaphore_entering.linkedElements.add("TrafficControl::Semaphore::initSemaphore"); - initsemaphore_entering.bddVariableNumber = BDDHelper.newBDDVariableNumber(); - if ( green_entering == null ) { - green_entering = new RuntimeClock("Green_entering"); - } - green_entering.setDense(false); - green_entering.setParent(this); - green_entering.linkedElements.add("TrafficControl::Semaphore::Green"); - green_entering.bddVariableNumber = BDDHelper.newBDDVariableNumber(); - if ( red_entering == null ) { - red_entering = new RuntimeClock("Red_entering"); - } - red_entering.setDense(false); - red_entering.setParent(this); - red_entering.linkedElements.add("TrafficControl::Semaphore::Red"); - red_entering.bddVariableNumber = BDDHelper.newBDDVariableNumber(); - if ( initsemaphore_leaving == null ) { - initsemaphore_leaving = new RuntimeClock("initSemaphore_leaving"); - } - initsemaphore_leaving.setDense(false); - initsemaphore_leaving.setParent(this); - initsemaphore_leaving.linkedElements.add("TrafficControl::Semaphore::initSemaphore"); - initsemaphore_leaving.bddVariableNumber = BDDHelper.newBDDVariableNumber(); - if ( green_leaving == null ) { - green_leaving = new RuntimeClock("Green_leaving"); - } - green_leaving.setDense(false); - green_leaving.setParent(this); - green_leaving.linkedElements.add("TrafficControl::Semaphore::Green"); - green_leaving.bddVariableNumber = BDDHelper.newBDDVariableNumber(); - if ( red_leaving == null ) { - red_leaving = new RuntimeClock("Red_leaving"); - } - red_leaving.setDense(false); - red_leaving.setParent(this); - red_leaving.linkedElements.add("TrafficControl::Semaphore::Red"); - red_leaving.bddVariableNumber = BDDHelper.newBDDVariableNumber(); - if ( semaphore_start == null ) { - semaphore_start = new RuntimeClock("Semaphore_start"); - } - semaphore_start.setDense(false); - semaphore_start.setParent(this); - semaphore_start.bddVariableNumber = initsemaphore_entering.bddVariableNumber; - if ( semaphore_stall == null ) { - semaphore_stall = new RuntimeClock("Semaphore_stall"); - } - semaphore_stall.setDense(false); - semaphore_stall.setParent(this); - semaphore_stall.bddVariableNumber = BDDHelper.newBDDVariableNumber(); - if ( switchintermediate_alltriggeringoccurrences1_clock == null ) { - switchintermediate_alltriggeringoccurrences1_clock = new ExpressionClock("switchintermediate_AllTriggeringOccurrences1"); - } - switchintermediate_alltriggeringoccurrences1_clock.setDense(false); - switchintermediate_alltriggeringoccurrences1_clock.setParent(this); - switchintermediate_alltriggeringoccurrences1_clock.bddVariableNumber = BDDHelper.newBDDVariableNumber(); - switchintermediate_alltriggeringoccurrences1 = new RuntimeUnion(switchintermediate_alltriggeringoccurrences1_clock, green_to_red_fire, green_to_red_fire); - switchintermediate_alltriggeringoccurrences1.setName("switchintermediate_AllTriggeringOccurrences1"); - switchintermediate_alltriggeringoccurrences1.setParent(this); - if ( green_to_red_sampledon_eventoccursafterorwhilestateentering_clock == null ) { - green_to_red_sampledon_eventoccursafterorwhilestateentering_clock = new ExpressionClock("Green_to_Red_SampledOn_eventOccursAfterOrWhileStateEntering"); - } - green_to_red_sampledon_eventoccursafterorwhilestateentering_clock.setDense(false); - green_to_red_sampledon_eventoccursafterorwhilestateentering_clock.setParent(this); - green_to_red_sampledon_eventoccursafterorwhilestateentering_clock.bddVariableNumber = green_to_red_fire.bddVariableNumber; - green_to_red_sampledon_eventoccursafterorwhilestateentering = new SampledOnDef(green_to_red_sampledon_eventoccursafterorwhilestateentering_clock, green_entering, switch_occurs); - green_to_red_sampledon_eventoccursafterorwhilestateentering.setName("Green_to_Red_SampledOn_eventOccursAfterOrWhileStateEntering"); - green_to_red_sampledon_eventoccursafterorwhilestateentering.setParent(this); - if ( initsemaphore_to_red_delayfor_delayisexpired_wrt_stateentering_clock == null ) { - initsemaphore_to_red_delayfor_delayisexpired_wrt_stateentering_clock = new ExpressionClock("initSemaphore_to_Red_DelayFor_delayIsExpired_wrt_StateEntering"); - } - initsemaphore_to_red_delayfor_delayisexpired_wrt_stateentering_clock.setDense(false); - initsemaphore_to_red_delayfor_delayisexpired_wrt_stateentering_clock.setParent(this); - initsemaphore_to_red_delayfor_delayisexpired_wrt_stateentering_clock.bddVariableNumber = initsemaphore_to_red_fire.bddVariableNumber; - initsemaphore_to_red_delayfor_delayisexpired_wrt_stateentering = new DelayForDef(initsemaphore_to_red_delayfor_delayisexpired_wrt_stateentering_clock, initsemaphore_entering, minutes_ticks, initsemaphore_to_redguard_initsemaphore_to_red_afterduration); - initsemaphore_to_red_delayfor_delayisexpired_wrt_stateentering.setName("initSemaphore_to_Red_DelayFor_delayIsExpired_wrt_StateEntering"); - initsemaphore_to_red_delayfor_delayisexpired_wrt_stateentering.setParent(this); - if ( red_to_green_delayfor_delayisexpired_wrt_stateentering_clock == null ) { - red_to_green_delayfor_delayisexpired_wrt_stateentering_clock = new ExpressionClock("Red_to_Green_DelayFor_delayIsExpired_wrt_StateEntering"); - } - red_to_green_delayfor_delayisexpired_wrt_stateentering_clock.setDense(false); - red_to_green_delayfor_delayisexpired_wrt_stateentering_clock.setParent(this); - red_to_green_delayfor_delayisexpired_wrt_stateentering_clock.bddVariableNumber = red_to_green_fire.bddVariableNumber; - red_to_green_delayfor_delayisexpired_wrt_stateentering = new DelayForDef(red_to_green_delayfor_delayisexpired_wrt_stateentering_clock, red_entering, minutes_ticks, red_to_greenguard_red_to_green_afterduration); - red_to_green_delayfor_delayisexpired_wrt_stateentering.setName("Red_to_Green_DelayFor_delayIsExpired_wrt_StateEntering"); - red_to_green_delayfor_delayisexpired_wrt_stateentering.setParent(this); - if ( initsemaphoreintermediate_allfiredoutgoingtransition1_clock == null ) { - initsemaphoreintermediate_allfiredoutgoingtransition1_clock = new ExpressionClock("initSemaphoreintermediate_allFiredoutgoingTransition1"); - } - initsemaphoreintermediate_allfiredoutgoingtransition1_clock.setDense(false); - initsemaphoreintermediate_allfiredoutgoingtransition1_clock.setParent(this); - initsemaphoreintermediate_allfiredoutgoingtransition1_clock.bddVariableNumber = initsemaphore_leaving.bddVariableNumber; - initsemaphoreintermediate_allfiredoutgoingtransition1 = new RuntimeUnion(initsemaphoreintermediate_allfiredoutgoingtransition1_clock, initsemaphore_to_red_fire, initsemaphore_to_red_fire); - initsemaphoreintermediate_allfiredoutgoingtransition1.setName("initSemaphoreintermediate_allFiredoutgoingTransition1"); - initsemaphoreintermediate_allfiredoutgoingtransition1.setParent(this); - if ( greenintermediate_allfiredoutgoingtransition1_clock == null ) { - greenintermediate_allfiredoutgoingtransition1_clock = new ExpressionClock("Greenintermediate_allFiredoutgoingTransition1"); - } - greenintermediate_allfiredoutgoingtransition1_clock.setDense(false); - greenintermediate_allfiredoutgoingtransition1_clock.setParent(this); - greenintermediate_allfiredoutgoingtransition1_clock.bddVariableNumber = green_leaving.bddVariableNumber; - greenintermediate_allfiredoutgoingtransition1 = new RuntimeUnion(greenintermediate_allfiredoutgoingtransition1_clock, green_to_red_fire, green_to_red_fire); - greenintermediate_allfiredoutgoingtransition1.setName("Greenintermediate_allFiredoutgoingTransition1"); - greenintermediate_allfiredoutgoingtransition1.setParent(this); - if ( redintermediate_allfiredoutgoingtransition1_clock == null ) { - redintermediate_allfiredoutgoingtransition1_clock = new ExpressionClock("Redintermediate_allFiredoutgoingTransition1"); - } - redintermediate_allfiredoutgoingtransition1_clock.setDense(false); - redintermediate_allfiredoutgoingtransition1_clock.setParent(this); - redintermediate_allfiredoutgoingtransition1_clock.bddVariableNumber = red_leaving.bddVariableNumber; - redintermediate_allfiredoutgoingtransition1 = new RuntimeUnion(redintermediate_allfiredoutgoingtransition1_clock, red_to_green_fire, red_to_green_fire); - redintermediate_allfiredoutgoingtransition1.setName("Redintermediate_allFiredoutgoingTransition1"); - redintermediate_allfiredoutgoingtransition1.setParent(this); - if ( greenintermediate_allinputtransition1_clock == null ) { - greenintermediate_allinputtransition1_clock = new ExpressionClock("Greenintermediate_allInputTransition1"); - } - greenintermediate_allinputtransition1_clock.setDense(false); - greenintermediate_allinputtransition1_clock.setParent(this); - greenintermediate_allinputtransition1_clock.bddVariableNumber = BDDHelper.newBDDVariableNumber(); - greenintermediate_allinputtransition1 = new RuntimeUnion(greenintermediate_allinputtransition1_clock, red_to_green_fire, red_to_green_fire); - greenintermediate_allinputtransition1.setName("Greenintermediate_allInputTransition1"); - greenintermediate_allinputtransition1.setParent(this); - if ( redintermediate_allinputtransition1_clock == null ) { - redintermediate_allinputtransition1_clock = new ExpressionClock("Redintermediate_allInputTransition1"); - } - redintermediate_allinputtransition1_clock.setDense(false); - redintermediate_allinputtransition1_clock.setParent(this); - redintermediate_allinputtransition1_clock.bddVariableNumber = BDDHelper.newBDDVariableNumber(); - redintermediate_allinputtransition1 = new RuntimeUnion(redintermediate_allinputtransition1_clock, initsemaphore_to_red_fire, green_to_red_fire); - redintermediate_allinputtransition1.setName("Redintermediate_allInputTransition1"); - redintermediate_allinputtransition1.setParent(this); - if ( semaphoreintermediate_onlyonefirst1_clock == null ) { - semaphoreintermediate_onlyonefirst1_clock = new ExpressionClock("Semaphoreintermediate_onlyOneFirst1"); - } - semaphoreintermediate_onlyonefirst1_clock.setDense(false); - semaphoreintermediate_onlyonefirst1_clock.setParent(this); - semaphoreintermediate_onlyonefirst1_clock.bddVariableNumber = initsemaphore_entering.bddVariableNumber; - semaphoreintermediate_onlyonefirst1 = new OneTickAndNoMoreDef(semaphoreintermediate_onlyonefirst1_clock, semaphore_start); - semaphoreintermediate_onlyonefirst1.setName("Semaphoreintermediate_onlyOneFirst1"); - semaphoreintermediate_onlyonefirst1.setParent(this); - switchfsmeventsendreceive_occurswhensolicitate = new FSMEventSendReceiveDef(switchintermediate_alltriggeringoccurrences1_clock, switch_occurs); - switchfsmeventsendreceive_occurswhensolicitate.setParent(this); - switchfsmeventsendreceive_occurswhensolicitate.setName("switchFSMEventSendReceive_occursWhenSolicitate"); - switchfsmeventsendreceive_occurswhensolicitate.setAssertion(false); - green_to_redcoincides_firewheneventoccursonetransition = new RuntimeCoincides(green_to_red_sampledon_eventoccursafterorwhilestateentering_clock, green_to_red_fire); - green_to_redcoincides_firewheneventoccursonetransition.setParent(this); - green_to_redcoincides_firewheneventoccursonetransition.setName("Green_to_RedCoincides_fireWhenEventOccursOneTransition"); - green_to_redcoincides_firewheneventoccursonetransition.setAssertion(false); - initsemaphore_to_redcoincides_firewhentemporalguardholdsonetransition = new RuntimeCoincides(initsemaphore_to_red_delayfor_delayisexpired_wrt_stateentering_clock, initsemaphore_to_red_fire); - initsemaphore_to_redcoincides_firewhentemporalguardholdsonetransition.setParent(this); - initsemaphore_to_redcoincides_firewhentemporalguardholdsonetransition.setName("initSemaphore_to_RedCoincides_fireWhenTemporalGuardHoldsOneTransition"); - initsemaphore_to_redcoincides_firewhentemporalguardholdsonetransition.setAssertion(false); - red_to_greencoincides_firewhentemporalguardholdsonetransition = new RuntimeCoincides(red_to_green_delayfor_delayisexpired_wrt_stateentering_clock, red_to_green_fire); - red_to_greencoincides_firewhentemporalguardholdsonetransition.setParent(this); - red_to_greencoincides_firewhentemporalguardholdsonetransition.setName("Red_to_GreenCoincides_fireWhenTemporalGuardHoldsOneTransition"); - red_to_greencoincides_firewhentemporalguardholdsonetransition.setAssertion(false); - initsemaphorealternates_enteroncebeforetoleave = new AlternatesDef(initsemaphore_entering, initsemaphore_leaving); - initsemaphorealternates_enteroncebeforetoleave.setParent(this); - initsemaphorealternates_enteroncebeforetoleave.setName("initSemaphoreAlternates_enterOnceBeforeToLeave"); - initsemaphorealternates_enteroncebeforetoleave.setAssertion(false); - greenalternates_enteroncebeforetoleave = new AlternatesDef(green_entering, green_leaving); - greenalternates_enteroncebeforetoleave.setParent(this); - greenalternates_enteroncebeforetoleave.setName("GreenAlternates_enterOnceBeforeToLeave"); - greenalternates_enteroncebeforetoleave.setAssertion(false); - redalternates_enteroncebeforetoleave = new AlternatesDef(red_entering, red_leaving); - redalternates_enteroncebeforetoleave.setParent(this); - redalternates_enteroncebeforetoleave.setName("RedAlternates_enterOnceBeforeToLeave"); - redalternates_enteroncebeforetoleave.setAssertion(false); - initsemaphorecoincides_firingatransitionalternateswithleavingstate = new RuntimeCoincides(initsemaphoreintermediate_allfiredoutgoingtransition1_clock, initsemaphore_leaving); - initsemaphorecoincides_firingatransitionalternateswithleavingstate.setParent(this); - initsemaphorecoincides_firingatransitionalternateswithleavingstate.setName("initSemaphoreCoincides_firingATransitionAlternatesWithLeavingState"); - initsemaphorecoincides_firingatransitionalternateswithleavingstate.setAssertion(false); - greencoincides_firingatransitionalternateswithleavingstate = new RuntimeCoincides(greenintermediate_allfiredoutgoingtransition1_clock, green_leaving); - greencoincides_firingatransitionalternateswithleavingstate.setParent(this); - greencoincides_firingatransitionalternateswithleavingstate.setName("GreenCoincides_firingATransitionAlternatesWithLeavingState"); - greencoincides_firingatransitionalternateswithleavingstate.setAssertion(false); - redcoincides_firingatransitionalternateswithleavingstate = new RuntimeCoincides(redintermediate_allfiredoutgoingtransition1_clock, red_leaving); - redcoincides_firingatransitionalternateswithleavingstate.setParent(this); - redcoincides_firingatransitionalternateswithleavingstate.setName("RedCoincides_firingATransitionAlternatesWithLeavingState"); - redcoincides_firingatransitionalternateswithleavingstate.setAssertion(false); - greencauses_stateentering = new RuntimeNonStrictPrecedes(greenintermediate_allinputtransition1_clock, green_entering); - greencauses_stateentering.setParent(this); - greencauses_stateentering.setName("GreenCauses_stateEntering"); - greencauses_stateentering.setAssertion(false); - redcauses_stateentering = new RuntimeNonStrictPrecedes(redintermediate_allinputtransition1_clock, red_entering); - redcauses_stateentering.setParent(this); - redcauses_stateentering.setName("RedCauses_stateEntering"); - redcauses_stateentering.setAssertion(false); - semaphoreintermediate_onestateatatime1_2 = new RuntimeExclusion(red_entering, initsemaphore_entering); - semaphoreintermediate_onestateatatime1_2.setParent(this); - semaphoreintermediate_onestateatatime1_2.setName("Semaphoreintermediate_oneStateAtATime1_2"); - semaphoreintermediate_onestateatatime1_2.setAssertion(false); - semaphoreintermediate_onestateatatime1_3 = new RuntimeExclusion(green_entering, initsemaphore_entering); - semaphoreintermediate_onestateatatime1_3.setParent(this); - semaphoreintermediate_onestateatatime1_3.setName("Semaphoreintermediate_oneStateAtATime1_3"); - semaphoreintermediate_onestateatatime1_3.setAssertion(false); - semaphoreintermediate_onestateatatime2_3 = new RuntimeExclusion(green_entering, red_entering); - semaphoreintermediate_onestateatatime2_3.setParent(this); - semaphoreintermediate_onestateatatime2_3.setName("Semaphoreintermediate_oneStateAtATime2_3"); - semaphoreintermediate_onestateatatime2_3.setAssertion(false); - semaphoreintermediate_onetransitionatatime1_2 = new RuntimeExclusion(red_to_green_fire, initsemaphore_to_red_fire); - semaphoreintermediate_onetransitionatatime1_2.setParent(this); - semaphoreintermediate_onetransitionatatime1_2.setName("Semaphoreintermediate_oneTransitionAtATime1_2"); - semaphoreintermediate_onetransitionatatime1_2.setAssertion(false); - semaphoreintermediate_onetransitionatatime1_3 = new RuntimeExclusion(green_to_red_fire, initsemaphore_to_red_fire); - semaphoreintermediate_onetransitionatatime1_3.setParent(this); - semaphoreintermediate_onetransitionatatime1_3.setName("Semaphoreintermediate_oneTransitionAtATime1_3"); - semaphoreintermediate_onetransitionatatime1_3.setAssertion(false); - semaphoreintermediate_onetransitionatatime2_3 = new RuntimeExclusion(green_to_red_fire, red_to_green_fire); - semaphoreintermediate_onetransitionatatime2_3.setParent(this); - semaphoreintermediate_onetransitionatatime2_3.setName("Semaphoreintermediate_oneTransitionAtATime2_3"); - semaphoreintermediate_onetransitionatatime2_3.setAssertion(false); - semaphorecoincides_firstisinitialstate = new RuntimeCoincides(semaphore_start, initsemaphore_entering); - semaphorecoincides_firstisinitialstate.setParent(this); - semaphorecoincides_firstisinitialstate.setName("SemaphoreCoincides_firstIsInitialState"); - semaphorecoincides_firstisinitialstate.setAssertion(false); - semaphorecoincides_firstonlyonce = new RuntimeCoincides(semaphore_start, semaphoreintermediate_onlyonefirst1_clock); - semaphorecoincides_firstonlyonce.setParent(this); - semaphorecoincides_firstonlyonce.setName("SemaphoreCoincides_firstOnlyOnce"); - semaphorecoincides_firstonlyonce.setAssertion(false); - } - - public RuntimeClock getMinutes_ticks() { - if ( minutes_ticks == null ) { - minutes_ticks = new RuntimeClock("minutes_ticks"); - } - return minutes_ticks; - } - - public RuntimeClock getInitSemaphore_to_Red_fire() { - if ( initsemaphore_to_red_fire == null ) { - initsemaphore_to_red_fire = new RuntimeClock("initSemaphore_to_Red_fire"); - } - return initsemaphore_to_red_fire; - } - - public RuntimeClock getRed_to_Green_fire() { - if ( red_to_green_fire == null ) { - red_to_green_fire = new RuntimeClock("Red_to_Green_fire"); - } - return red_to_green_fire; - } - - public RuntimeClock getGreen_to_Red_fire() { - if ( green_to_red_fire == null ) { - green_to_red_fire = new RuntimeClock("Green_to_Red_fire"); - } - return green_to_red_fire; - } - - public RuntimeClock getSwitch_occurs() { - if ( switch_occurs == null ) { - switch_occurs = new RuntimeClock("switch_occurs"); - } - return switch_occurs; - } - - public RuntimeClock getInitSemaphore_entering() { - if ( initsemaphore_entering == null ) { - initsemaphore_entering = new RuntimeClock("initSemaphore_entering"); - } - return initsemaphore_entering; - } - - public RuntimeClock getGreen_entering() { - if ( green_entering == null ) { - green_entering = new RuntimeClock("Green_entering"); - } - return green_entering; - } - - public RuntimeClock getRed_entering() { - if ( red_entering == null ) { - red_entering = new RuntimeClock("Red_entering"); - } - return red_entering; - } - - public RuntimeClock getInitSemaphore_leaving() { - if ( initsemaphore_leaving == null ) { - initsemaphore_leaving = new RuntimeClock("initSemaphore_leaving"); - } - return initsemaphore_leaving; - } - - public RuntimeClock getGreen_leaving() { - if ( green_leaving == null ) { - green_leaving = new RuntimeClock("Green_leaving"); - } - return green_leaving; - } - - public RuntimeClock getRed_leaving() { - if ( red_leaving == null ) { - red_leaving = new RuntimeClock("Red_leaving"); - } - return red_leaving; - } - - public RuntimeClock getSemaphore_start() { - if ( semaphore_start == null ) { - semaphore_start = new RuntimeClock("Semaphore_start"); - } - return semaphore_start; - } - - public RuntimeClock getSemaphore_stall() { - if ( semaphore_stall == null ) { - semaphore_stall = new RuntimeClock("Semaphore_stall"); - } - return semaphore_stall; - } - - @Override - protected ICCSLConstraint[] getConstraints() { - ICCSLConstraint[] sym16 = { switchintermediate_alltriggeringoccurrences1, green_to_red_sampledon_eventoccursafterorwhilestateentering, initsemaphore_to_red_delayfor_delayisexpired_wrt_stateentering, red_to_green_delayfor_delayisexpired_wrt_stateentering, initsemaphoreintermediate_allfiredoutgoingtransition1, greenintermediate_allfiredoutgoingtransition1, redintermediate_allfiredoutgoingtransition1, greenintermediate_allinputtransition1, redintermediate_allinputtransition1, semaphoreintermediate_onlyonefirst1, switchfsmeventsendreceive_occurswhensolicitate, green_to_redcoincides_firewheneventoccursonetransition, initsemaphore_to_redcoincides_firewhentemporalguardholdsonetransition, red_to_greencoincides_firewhentemporalguardholdsonetransition, initsemaphorealternates_enteroncebeforetoleave, greenalternates_enteroncebeforetoleave, redalternates_enteroncebeforetoleave, initsemaphorecoincides_firingatransitionalternateswithleavingstate, greencoincides_firingatransitionalternateswithleavingstate, redcoincides_firingatransitionalternateswithleavingstate, greencauses_stateentering, redcauses_stateentering, semaphoreintermediate_onestateatatime1_2, semaphoreintermediate_onestateatatime1_3, semaphoreintermediate_onestateatatime2_3, semaphoreintermediate_onetransitionatatime1_2, semaphoreintermediate_onetransitionatatime1_3, semaphoreintermediate_onetransitionatatime2_3, semaphorecoincides_firstisinitialstate, semaphorecoincides_firstonlyonce }; - return sym16; - } - - @Override - public AbstractRuntimeBlock[] getSubBlocks() { - AbstractRuntimeBlock[] sym16 = { }; - return sym16; - } - -} diff --git a/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.single_traffic_light_sample.mocc/src-gen/org/gemoc/sample/tfsm/single_traffic_light_sample/mocc/expressions/DelayForDef.java b/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.single_traffic_light_sample.mocc/src-gen/org/gemoc/sample/tfsm/single_traffic_light_sample/mocc/expressions/DelayForDef.java deleted file mode 100644 index 01c183590..000000000 --- a/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.single_traffic_light_sample.mocc/src-gen/org/gemoc/sample/tfsm/single_traffic_light_sample/mocc/expressions/DelayForDef.java +++ /dev/null @@ -1,90 +0,0 @@ -package org.gemoc.sample.tfsm.single_traffic_light_sample.mocc.expressions; - -import fr.inria.aoste.timesquare.ccslkernel.runtime.elements.RuntimeClock; -import fr.inria.aoste.timesquare.ccslkernel.runtime.helpers.AbstractSemanticHelper; -import fr.inria.aoste.timesquare.ccslkernel.runtime.exceptions.SimulationException; -import fr.inria.aoste.timesquare.ccslkernel.runtime.helpers.AbstractUpdateHelper; -import fr.inria.aoste.timesquare.ccslkernel.runtime.elements.RuntimeSequence; -import fr.inria.aoste.timesquare.ccslkernel.runtime.ValueProvider; -import fr.inria.aoste.timesquare.ccslkernel.runtime.expressions.RuntimeDefer; -import fr.inria.aoste.timesquare.ccslkernel.runtime.expressions.AbstractRuntimeExpression; -import fr.inria.aoste.timesquare.ccslkernel.runtime.elements.ExpressionClock; - -public class DelayForDef extends AbstractRuntimeExpression { - - private RuntimeClock delayforclocktodelay; - - private RuntimeClock delayforclockforcounting; - - private Integer delayfordelay; - - private ValueProvider delayForDelayProvider; - - private RuntimeSequence seqfordelayfor = new RuntimeSequence(); - - public RuntimeDefer delayfor_defer; - - - protected void init() { - Integer sym19[] = { delayfordelay }; - seqfordelayfor.setInfinitePart(sym19); - delayfor_defer = new RuntimeDefer(getExpressionClock(), delayforclocktodelay, delayforclockforcounting, seqfordelayfor); - delayfor_defer.setName("DelayFor_defer"); - delayfor_defer.setParent(this); - delayfor_defer.setParent(this); - } - - public DelayForDef(ExpressionClock implicitClock, RuntimeClock delayforclocktodelay, RuntimeClock delayforclockforcounting, Integer delayfordelay) { - super(implicitClock); - this.delayforclocktodelay = delayforclocktodelay; - this.delayforclockforcounting = delayforclockforcounting; - this.delayfordelay = delayfordelay; - init(); - } - - public DelayForDef(ExpressionClock implicitClock, RuntimeClock delayforclocktodelay, RuntimeClock delayforclockforcounting, ValueProvider delayfordelay) { - super(implicitClock); - this.delayforclocktodelay = delayforclocktodelay; - this.delayforclockforcounting = delayforclockforcounting; - this.delayForDelayProvider = delayfordelay; - init(); - } - - public AbstractRuntimeExpression getRootExpression() { - return delayfor_defer; - } - - @Override - public void start(AbstractSemanticHelper helper) - throws SimulationException { - if ( ! canCallStart() ) { - return; - } - super.start(helper); - if ( delayForDelayProvider != null ) { - delayfordelay = delayForDelayProvider.getValue(); - } - getRootExpression().start(helper); - } - - @Override - public void semantic(AbstractSemanticHelper helper) - throws SimulationException { - if ( ! canCallSemantic() ) { - return; - } - super.semantic(helper); - getRootExpression().semantic(helper); - } - - @Override - public void update(AbstractUpdateHelper helper) - throws SimulationException { - if ( ! canCallUpdate() ) { - return; - } - super.update(helper); - getRootExpression().update(helper); - } - -} diff --git a/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.single_traffic_light_sample.mocc/src-gen/org/gemoc/sample/tfsm/single_traffic_light_sample/mocc/expressions/FilterByDef.java b/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.single_traffic_light_sample.mocc/src-gen/org/gemoc/sample/tfsm/single_traffic_light_sample/mocc/expressions/FilterByDef.java deleted file mode 100644 index fce19b435..000000000 --- a/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.single_traffic_light_sample.mocc/src-gen/org/gemoc/sample/tfsm/single_traffic_light_sample/mocc/expressions/FilterByDef.java +++ /dev/null @@ -1,237 +0,0 @@ -package org.gemoc.sample.tfsm.single_traffic_light_sample.mocc.expressions; - -import fr.inria.aoste.timesquare.ccslkernel.runtime.helpers.AbstractSemanticHelper; -import fr.inria.aoste.timesquare.ccslkernel.runtime.exceptions.SimulationException; -import fr.inria.aoste.timesquare.ccslkernel.runtime.expressions.RuntimeConcatenation; -import fr.inria.aoste.timesquare.ccslkernel.runtime.helpers.BDDHelper; -import fr.inria.aoste.timesquare.ccslkernel.runtime.elements.RuntimeSequence; -import fr.inria.aoste.timesquare.ccslkernel.runtime.expressions.RuntimeDeath; -import fr.inria.aoste.timesquare.ccslkernel.runtime.ValueProvider; -import fr.inria.aoste.timesquare.ccslkernel.runtime.expressions.AbstractRuntimeExpression; -import fr.inria.aoste.timesquare.ccslkernel.runtime.elements.ExpressionClock; -import fr.inria.aoste.timesquare.ccslkernel.runtime.elements.RuntimeClock; -import fr.inria.aoste.timesquare.ccslkernel.runtime.expressions.RuntimeConcatenation.ConcatState; -import fr.inria.aoste.timesquare.ccslkernel.runtime.expressions.RuntimeWait; -import fr.inria.aoste.timesquare.ccslkernel.runtime.helpers.AbstractUpdateHelper; -import fr.inria.aoste.timesquare.ccslkernel.runtime.IRuntimeContainer; - -public class FilterByDef extends AbstractRuntimeExpression implements IRuntimeContainer { - - private RuntimeClock filterbyclock; - - private RuntimeSequence filterbyseq; - - private ValueProvider> filterBySeqProvider; - - private ValueProvider seqHeadProvider = new ValueProvider() { - public Integer getValue() { - return getSeqHead(); - } - }; - - private RuntimeSequence seqtail; - - private ValueProvider> seqTailProvider = new ValueProvider>() { - public RuntimeSequence getValue() { - return getSeqTail(); - } - }; - - public ExpressionClock filterby_waithead_clock = null; - - public RuntimeWait filterby_waithead; - - private int selectedCase = -1; - - public RuntimeDeath filterby_death; - - public ExpressionClock filterby_death_clock = null; - - public ConcatState filterby_concatwaitConcatState; - - public RuntimeClock filterby_concatwait_clock = new RuntimeClock("filterby_concatwait_clock"); - - public RuntimeDeath killit; - - public ExpressionClock killit_clock = null; - - - protected void init() { - if ( filterby_waithead_clock == null ) { - filterby_waithead_clock = new ExpressionClock("FilterBy_waitHead"); - } - filterby_waithead_clock.setDense(false); - filterby_waithead_clock.setParent(this); - filterby_waithead_clock.bddVariableNumber = BDDHelper.newBDDVariableNumber(); - filterby_waithead = new RuntimeWait(filterby_waithead_clock, filterbyclock, seqHeadProvider); - filterby_waithead.setName("FilterBy_waitHead"); - filterby_waithead.setParent(this); - filterby_death = new RuntimeDeath(filterby_death_clock); - filterby_death.setName("FilterBy_death"); - filterby_death.setParent(this); - if ( filterby_death_clock == null ) { - filterby_death_clock = new ExpressionClock("FilterBy_death"); - } - filterby_death_clock.setDense(false); - filterby_death_clock.setParent(this); - filterby_death_clock.bddVariableNumber = BDDHelper.newBDDVariableNumber(); - filterby_concatwait_clock.setDense(false); - filterby_concatwait_clock.setParent(this); - filterby_concatwait_clock.bddVariableNumber = BDDHelper.newBDDVariableNumber(); - killit = new RuntimeDeath(killit_clock); - killit.setName("killIt"); - killit.setParent(this); - if ( killit_clock == null ) { - killit_clock = new ExpressionClock("killIt"); - } - killit_clock.setDense(false); - killit_clock.setParent(this); - killit_clock.bddVariableNumber = BDDHelper.newBDDVariableNumber(); - } - - public FilterByDef(ExpressionClock implicitClock, RuntimeClock filterbyclock, RuntimeSequence filterbyseq) { - super(implicitClock); - this.filterbyclock = filterbyclock; - this.filterbyseq = filterbyseq; - init(); - } - - public FilterByDef(ExpressionClock implicitClock, RuntimeClock filterbyclock, ValueProvider> filterbyseq) { - super(implicitClock); - this.filterbyclock = filterbyclock; - this.filterBySeqProvider = filterbyseq; - init(); - } - - private Integer getSeqHead() { - Integer sym24 = (Integer)filterbyseq.getHead(); - return sym24; - } - - private RuntimeSequence getSeqTail() { - RuntimeSequence sym25 = filterbyseq.getTail(); - return sym25; - } - - private Boolean getExpression26() { - Boolean sym27 = filterbyseq.isEmpty(); - return sym27; - } - - private Boolean getExpression28() { - Boolean sym29 = filterbyseq.isEmpty(); - Boolean sym30 = ( ! sym29); - return sym30; - } - - @Override - public void start(AbstractSemanticHelper helper) - throws SimulationException { - if ( ! canCallStart() ) { - return; - } - super.start(helper); - if ( filterBySeqProvider != null ) { - filterbyseq = filterBySeqProvider.getValue(); - } - if ( getExpression26() ) { - selectedCase = 1; - filterby_death.start(helper); - } - else if ( getExpression28() ) { - selectedCase = 2; - filterby_concatwaitConcatState = ConcatState.FOLLOWLEFT; - filterby_waithead.start(helper); - } - else { - selectedCase = 0; - killit.start(helper); - } - } - - @Override - public void semantic(AbstractSemanticHelper helper) - throws SimulationException { - if ( ! canCallSemantic() ) { - return; - } - super.semantic(helper); - if ( getExpression26() ) { - if ( selectedCase != 1 ) { - filterby_death.start(helper); - } - selectedCase = 1; - helper.registerClockEquality(filterby_death_clock, getExpressionClock()); - helper.registerClockUse(filterby_death_clock); - helper.registerClockUse( getExpressionClock() ); - filterby_death.semantic(helper); - } - else if ( getExpression28() ) { - if ( selectedCase != 2 ) { - filterby_concatwaitConcatState = ConcatState.FOLLOWLEFT; - filterby_waithead.start(helper); - } - selectedCase = 2; - helper.registerClockEquality(filterby_concatwait_clock, getExpressionClock()); - helper.registerClockUse(filterby_concatwait_clock); - helper.registerClockUse( getExpressionClock() ); - if ( filterby_concatwaitConcatState == ConcatState.FOLLOWLEFT ) { - filterby_waithead.semantic(helper); - helper.registerClockEquality(filterby_waithead_clock, filterby_concatwait_clock); - helper.registerClockUse(filterby_waithead_clock); - helper.registerClockUse(filterby_concatwait_clock); - } - else if ( filterby_concatwaitConcatState == ConcatState.FOLLOWRIGHT ) { - } - } - else { - if ( selectedCase != 0 ) { - killit.start(helper); - } - selectedCase = 0; - helper.registerClockEquality(killit_clock, getExpressionClock()); - helper.registerClockUse(killit_clock); - helper.registerClockUse( getExpressionClock() ); - killit.semantic(helper); - } - } - - @Override - public void update(AbstractUpdateHelper helper) - throws SimulationException { - if ( ! canCallUpdate() ) { - return; - } - super.update(helper); - if ( getExpression26() ) { - filterby_death.update(helper); - if ( filterby_death.isDead() ) { - terminate(helper); - } - } - else if ( getExpression28() ) { - if ( filterby_concatwaitConcatState == ConcatState.FOLLOWLEFT ) { - filterby_waithead.update(helper); - if ( filterby_waithead.isDead() ) { - // Recursive call here. - filterbyseq = getSeqTail(); - filterby_concatwaitConcatState = ConcatState.FOLLOWLEFT; - helper.registerClockToStart(filterby_waithead_clock); - } - } - else if ( filterby_concatwaitConcatState == ConcatState.FOLLOWRIGHT ) { - // Recursive call. Code is here but will never run because of previous test. - filterbyseq = getSeqTail(); - filterby_concatwaitConcatState = ConcatState.FOLLOWLEFT; - helper.registerClockToStart(filterby_waithead_clock); - } - } - else { - killit.update(helper); - if ( killit.isDead() ) { - terminate(helper); - } - } - } - -} diff --git a/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.single_traffic_light_sample.mocc/src-gen/org/gemoc/sample/tfsm/single_traffic_light_sample/mocc/expressions/OneTickAndNoMoreDef.java b/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.single_traffic_light_sample.mocc/src-gen/org/gemoc/sample/tfsm/single_traffic_light_sample/mocc/expressions/OneTickAndNoMoreDef.java deleted file mode 100644 index e889b966e..000000000 --- a/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.single_traffic_light_sample.mocc/src-gen/org/gemoc/sample/tfsm/single_traffic_light_sample/mocc/expressions/OneTickAndNoMoreDef.java +++ /dev/null @@ -1,72 +0,0 @@ -package org.gemoc.sample.tfsm.single_traffic_light_sample.mocc.expressions; - -import fr.inria.aoste.timesquare.ccslkernel.runtime.elements.RuntimeClock; -import fr.inria.aoste.timesquare.ccslkernel.runtime.helpers.AbstractSemanticHelper; -import fr.inria.aoste.timesquare.ccslkernel.runtime.exceptions.SimulationException; -import fr.inria.aoste.timesquare.ccslkernel.runtime.helpers.AbstractUpdateHelper; -import fr.inria.aoste.timesquare.ccslkernel.runtime.elements.RuntimeSequence; -import fr.inria.aoste.timesquare.ccslkernel.runtime.expressions.AbstractRuntimeExpression; -import org.gemoc.sample.tfsm.single_traffic_light_sample.mocc.expressions.FilterByDef; -import fr.inria.aoste.timesquare.ccslkernel.runtime.elements.ExpressionClock; - -public class OneTickAndNoMoreDef extends AbstractRuntimeExpression { - - private RuntimeClock onetickandnomoreclock; - - private RuntimeSequence oneinfinite = new RuntimeSequence(); - - public FilterByDef onetickandnomore_onlyone; - - - protected void init() { - Integer sym17[] = { 1 }; - oneinfinite.setFinitePart(sym17); - Integer sym18[] = { 0 }; - oneinfinite.setInfinitePart(sym18); - onetickandnomore_onlyone = new FilterByDef((ExpressionClock)getExpressionClock(), onetickandnomoreclock, oneinfinite); - onetickandnomore_onlyone.setName("OneTickAndNoMore_onlyOne"); - onetickandnomore_onlyone.setParent(this); - onetickandnomore_onlyone.setParent(this); - } - - public OneTickAndNoMoreDef(ExpressionClock implicitClock, RuntimeClock onetickandnomoreclock) { - super(implicitClock); - this.onetickandnomoreclock = onetickandnomoreclock; - init(); - } - - public AbstractRuntimeExpression getRootExpression() { - return onetickandnomore_onlyone; - } - - @Override - public void start(AbstractSemanticHelper helper) - throws SimulationException { - if ( ! canCallStart() ) { - return; - } - super.start(helper); - getRootExpression().start(helper); - } - - @Override - public void semantic(AbstractSemanticHelper helper) - throws SimulationException { - if ( ! canCallSemantic() ) { - return; - } - super.semantic(helper); - getRootExpression().semantic(helper); - } - - @Override - public void update(AbstractUpdateHelper helper) - throws SimulationException { - if ( ! canCallUpdate() ) { - return; - } - super.update(helper); - getRootExpression().update(helper); - } - -} diff --git a/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.single_traffic_light_sample.mocc/src-gen/org/gemoc/sample/tfsm/single_traffic_light_sample/mocc/expressions/SampledOnDef.java b/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.single_traffic_light_sample.mocc/src-gen/org/gemoc/sample/tfsm/single_traffic_light_sample/mocc/expressions/SampledOnDef.java deleted file mode 100644 index d336330be..000000000 --- a/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.single_traffic_light_sample.mocc/src-gen/org/gemoc/sample/tfsm/single_traffic_light_sample/mocc/expressions/SampledOnDef.java +++ /dev/null @@ -1,84 +0,0 @@ -package org.gemoc.sample.tfsm.single_traffic_light_sample.mocc.expressions; - -import fr.inria.aoste.timesquare.ccslkernel.runtime.elements.RuntimeClock; -import fr.inria.aoste.timesquare.ccslkernel.runtime.helpers.AbstractSemanticHelper; -import fr.inria.aoste.timesquare.ccslkernel.runtime.exceptions.SimulationException; -import fr.inria.aoste.timesquare.ccslkernel.runtime.expressions.RuntimeConcatenation; -import fr.inria.aoste.timesquare.ccslkernel.runtime.helpers.BDDHelper; -import fr.inria.aoste.timesquare.ccslkernel.runtime.helpers.AbstractUpdateHelper; -import fr.inria.aoste.timesquare.ccslkernel.runtime.expressions.RuntimeStrictSampling; -import fr.inria.aoste.timesquare.ccslkernel.runtime.expressions.AbstractRuntimeExpression; -import fr.inria.aoste.timesquare.ccslkernel.runtime.elements.ExpressionClock; - -public class SampledOnDef extends AbstractRuntimeExpression { - - private RuntimeClock sampledonsampledclock; - - private RuntimeClock sampledontrigger; - - public RuntimeConcatenation sampledonrootconcat; - - public ExpressionClock onesampled_clock = null; - - public RuntimeStrictSampling onesampled; - - - protected void init() { - if ( onesampled_clock == null ) { - onesampled_clock = new ExpressionClock("OneSampled"); - } - onesampled_clock.setDense(false); - onesampled_clock.setParent(this); - onesampled_clock.bddVariableNumber = BDDHelper.newBDDVariableNumber(); - sampledonrootconcat = new RuntimeConcatenation(getExpressionClock(), onesampled_clock, getExpressionClock()); - sampledonrootconcat.setName("SampledOnrootConcat"); - sampledonrootconcat.setParent(this); - sampledonrootconcat.setParent(this); - onesampled = new RuntimeStrictSampling(onesampled_clock, sampledonsampledclock, sampledontrigger); - onesampled.setName("OneSampled"); - onesampled.setParent(this); - onesampled.setParent(this); - } - - public SampledOnDef(ExpressionClock implicitClock, RuntimeClock sampledonsampledclock, RuntimeClock sampledontrigger) { - super(implicitClock); - this.sampledonsampledclock = sampledonsampledclock; - this.sampledontrigger = sampledontrigger; - init(); - } - - public AbstractRuntimeExpression getRootExpression() { - return sampledonrootconcat; - } - - @Override - public void start(AbstractSemanticHelper helper) - throws SimulationException { - if ( ! canCallStart() ) { - return; - } - super.start(helper); - getRootExpression().start(helper); - } - - @Override - public void semantic(AbstractSemanticHelper helper) - throws SimulationException { - if ( ! canCallSemantic() ) { - return; - } - super.semantic(helper); - getRootExpression().semantic(helper); - } - - @Override - public void update(AbstractUpdateHelper helper) - throws SimulationException { - if ( ! canCallUpdate() ) { - return; - } - super.update(helper); - getRootExpression().update(helper); - } - -} diff --git a/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.single_traffic_light_sample.mocc/src-gen/org/gemoc/sample/tfsm/single_traffic_light_sample/mocc/main/TrafficControlMain.java b/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.single_traffic_light_sample.mocc/src-gen/org/gemoc/sample/tfsm/single_traffic_light_sample/mocc/main/TrafficControlMain.java deleted file mode 100644 index 4891db5ad..000000000 --- a/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.single_traffic_light_sample.mocc/src-gen/org/gemoc/sample/tfsm/single_traffic_light_sample/mocc/main/TrafficControlMain.java +++ /dev/null @@ -1,30 +0,0 @@ -package org.gemoc.sample.tfsm.single_traffic_light_sample.mocc.main; - -import fr.inria.aoste.timesquare.ccslkernel.runtime.elements.RuntimeClock; -import fr.inria.aoste.timesquare.ccslkernel.runtime.simulation.CCSLStepExecutionEngine; -import fr.inria.aoste.timesquare.ccslkernel.runtime.exceptions.SimulationException; -import fr.inria.aoste.timesquare.ccslkernel.runtime.simulation.CCSLSimulationEngine; -import org.gemoc.sample.tfsm.single_traffic_light_sample.mocc.models.TrafficControlModel; -import java.util.Set; - -public class TrafficControlMain { - - - public static void main(String[] args) - throws SimulationException { - TrafficControlModel model = new TrafficControlModel(); - CCSLSimulationEngine engine = new CCSLSimulationEngine(model); - engine.initSimulation(); - CCSLStepExecutionEngine stepEngine = new CCSLStepExecutionEngine(engine); - // First simulation step. - stepEngine.executeStep(); - Set firedClocks = stepEngine.getFiredClocks(); - System.out.println(firedClocks); - // Second simulation step. The CCSLStepExecutionEngine object can be reused. - stepEngine.executeStep(); - // Third simulation step. - stepEngine.executeStep(); - engine.endSimulation(); - } - -} diff --git a/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.single_traffic_light_sample.mocc/src-gen/org/gemoc/sample/tfsm/single_traffic_light_sample/mocc/models/TrafficControlModel.java b/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.single_traffic_light_sample.mocc/src-gen/org/gemoc/sample/tfsm/single_traffic_light_sample/mocc/models/TrafficControlModel.java deleted file mode 100644 index f562e2e38..000000000 --- a/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.single_traffic_light_sample.mocc/src-gen/org/gemoc/sample/tfsm/single_traffic_light_sample/mocc/models/TrafficControlModel.java +++ /dev/null @@ -1,53 +0,0 @@ -package org.gemoc.sample.tfsm.single_traffic_light_sample.mocc.models; - -import fr.inria.aoste.timesquare.ccslkernel.runtime.AbstractRuntimeBlock; -import org.gemoc.sample.tfsm.single_traffic_light_sample.mocc.TrafficControl.blocks.MainBlockBlock; -import fr.inria.aoste.timesquare.ccslkernel.runtime.AbstractRuntimeModel; -import fr.inria.aoste.timesquare.ccslkernel.runtime.IRuntimeContainer; - -public class TrafficControlModel extends AbstractRuntimeModel { - - private MainBlockBlock mainblock = null; - - - public TrafficControlModel() { - super("TrafficControl"); - init(); - } - - public TrafficControlModel(IRuntimeContainer parent) { - super("TrafficControl", parent); - init(); - } - - protected void init() { - if ( mainblock == null ) { - mainblock = new MainBlockBlock(this, "mainBlock"); - } - } - - @Override - public AbstractRuntimeModel[] getImportedModels() { - AbstractRuntimeModel[] subs = { }; - return subs; - } - - public MainBlockBlock getMainBlock() { - if ( mainblock == null ) { - mainblock = new MainBlockBlock(this, "mainBlock"); - } - return mainblock; - } - - @Override - public AbstractRuntimeBlock[] getSubBlocks() { - AbstractRuntimeBlock[] subs = { mainblock }; - return subs; - } - - @Override - public AbstractRuntimeBlock getEntryBlock() { - return mainblock; - } - -} diff --git a/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.single_traffic_light_sample.mocc/src-gen/org/gemoc/sample/tfsm/single_traffic_light_sample/mocc/relations/AlternatesDef.java b/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.single_traffic_light_sample.mocc/src-gen/org/gemoc/sample/tfsm/single_traffic_light_sample/mocc/relations/AlternatesDef.java deleted file mode 100644 index 6c47b3b7f..000000000 --- a/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.single_traffic_light_sample.mocc/src-gen/org/gemoc/sample/tfsm/single_traffic_light_sample/mocc/relations/AlternatesDef.java +++ /dev/null @@ -1,123 +0,0 @@ -package org.gemoc.sample.tfsm.single_traffic_light_sample.mocc.relations; - -import fr.inria.aoste.timesquare.ccslkernel.runtime.elements.RuntimeClock; -import fr.inria.aoste.timesquare.ccslkernel.runtime.helpers.AbstractSemanticHelper; -import fr.inria.aoste.timesquare.ccslkernel.runtime.exceptions.SimulationException; -import fr.inria.aoste.timesquare.ccslkernel.runtime.relations.AbstractRuntimeRelation; -import fr.inria.aoste.timesquare.ccslkernel.runtime.helpers.BDDHelper; -import fr.inria.aoste.timesquare.ccslkernel.runtime.helpers.AbstractUpdateHelper; -import fr.inria.aoste.timesquare.ccslkernel.runtime.elements.RuntimeSequence; -import fr.inria.aoste.timesquare.ccslkernel.runtime.expressions.RuntimeDefer; -import net.javabdd.BDD; -import fr.inria.aoste.timesquare.ccslkernel.runtime.ICCSLConstraint; -import fr.inria.aoste.timesquare.ccslkernel.runtime.relations.RuntimePrecedes; -import fr.inria.aoste.timesquare.ccslkernel.runtime.elements.ExpressionClock; - -public class AlternatesDef extends AbstractRuntimeRelation { - - private RuntimeClock alternatesleftclock; - - private RuntimeClock alternatesrightclock; - - public RuntimePrecedes alt_c1precedesc2; - - private RuntimeSequence seqoneinfinite = new RuntimeSequence(); - - public ExpressionClock alt_c1delayedbyone_clock = null; - - public RuntimeDefer alt_c1delayedbyone; - - public RuntimePrecedes alt_c2precedesc1delayedbyone; - - - protected void init() { - alt_c1precedesc2 = new RuntimePrecedes(alternatesleftclock, alternatesrightclock); - alt_c1precedesc2.setParent(this); - alt_c1precedesc2.setName("Alt_c1PrecedesC2"); - alt_c1precedesc2.setAssertion(false); - Integer sym21[] = { 1 }; - seqoneinfinite.setInfinitePart(sym21); - if ( alt_c1delayedbyone_clock == null ) { - alt_c1delayedbyone_clock = new ExpressionClock("Alt_c1DelayedByOne"); - } - alt_c1delayedbyone_clock.setDense(false); - alt_c1delayedbyone_clock.setParent(this); - alt_c1delayedbyone_clock.bddVariableNumber = BDDHelper.newBDDVariableNumber(); - alt_c1delayedbyone = new RuntimeDefer(alt_c1delayedbyone_clock, alternatesleftclock, alternatesleftclock, seqoneinfinite); - alt_c1delayedbyone.setName("Alt_c1DelayedByOne"); - alt_c1delayedbyone.setParent(this); - alt_c2precedesc1delayedbyone = new RuntimePrecedes(alternatesrightclock, alt_c1delayedbyone_clock); - alt_c2precedesc1delayedbyone.setParent(this); - alt_c2precedesc1delayedbyone.setName("Alt_c2precedesC1DelayedByOne"); - alt_c2precedesc1delayedbyone.setAssertion(false); - } - - public AlternatesDef(RuntimeClock alternatesleftclock, RuntimeClock alternatesrightclock) { - super(); - this.alternatesleftclock = alternatesleftclock; - this.alternatesrightclock = alternatesrightclock; - init(); - } - - @Override - protected ICCSLConstraint[] getConstraints() { - ICCSLConstraint[] res = { alt_c1precedesc2, alt_c1delayedbyone, alt_c2precedesc1delayedbyone }; - return res; - } - - @Override - public void setAssertion(boolean assertion) { - super.setAssertion(assertion); - alt_c1precedesc2.setAssertion(assertion); - alt_c2precedesc1delayedbyone.setAssertion(assertion); - } - - @Override - public void start(AbstractSemanticHelper helper) - throws SimulationException { - if ( ! canCallStart() ) { - return; - } - super.start(helper); - alt_c1precedesc2.start(helper); - alt_c2precedesc1delayedbyone.start(helper); - alt_c1delayedbyone.start(helper); - } - - @Override - public void semantic(AbstractSemanticHelper helper) - throws SimulationException { - if ( ! canCallSemantic() ) { - return; - } - super.semantic(helper); - alt_c1precedesc2.semantic(helper); - alt_c2precedesc1delayedbyone.semantic(helper); - alt_c1delayedbyone.semantic(helper); - } - - @Override - public void assertionSemantic(AbstractSemanticHelper helper) { - alt_c1precedesc2.assertionSemantic(helper); - alt_c2precedesc1delayedbyone.assertionSemantic(helper); - BDD andTerm = helper.createOne(); - BDD bddVar22 = helper.getAssertionVariable(alt_c1precedesc2); - andTerm = helper.createAnd(andTerm, bddVar22); - BDD bddVar23 = helper.getAssertionVariable(alt_c2precedesc1delayedbyone); - andTerm = helper.createAnd(andTerm, bddVar23); - helper.assertionSemantic(this, andTerm); - } - - @Override - public void update(AbstractUpdateHelper helper) - throws SimulationException { - if ( ! canCallUpdate() ) { - return; - } - super.update(helper); - alt_c1precedesc2.update(helper); - alt_c2precedesc1delayedbyone.update(helper); - alt_c1delayedbyone.update(helper); - } - -} diff --git a/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.single_traffic_light_sample.mocc/src-gen/org/gemoc/sample/tfsm/single_traffic_light_sample/mocc/relations/FSMEventSendReceiveDef.java b/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.single_traffic_light_sample.mocc/src-gen/org/gemoc/sample/tfsm/single_traffic_light_sample/mocc/relations/FSMEventSendReceiveDef.java deleted file mode 100644 index 350581b4a..000000000 --- a/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.single_traffic_light_sample.mocc/src-gen/org/gemoc/sample/tfsm/single_traffic_light_sample/mocc/relations/FSMEventSendReceiveDef.java +++ /dev/null @@ -1,86 +0,0 @@ -package org.gemoc.sample.tfsm.single_traffic_light_sample.mocc.relations; - -import fr.inria.aoste.timesquare.ccslkernel.runtime.elements.RuntimeClock; -import fr.inria.aoste.timesquare.ccslkernel.runtime.helpers.AbstractSemanticHelper; -import fr.inria.aoste.timesquare.ccslkernel.runtime.exceptions.SimulationException; -import fr.inria.aoste.timesquare.ccslkernel.runtime.relations.AbstractRuntimeRelation; -import fr.inria.aoste.timesquare.ccslkernel.runtime.helpers.AbstractUpdateHelper; -import net.javabdd.BDD; -import fr.inria.aoste.timesquare.ccslkernel.runtime.ICCSLConstraint; -import fr.inria.aoste.timesquare.ccslkernel.runtime.relations.RuntimePrecedes; - -public class FSMEventSendReceiveDef extends AbstractRuntimeRelation { - - private RuntimeClock fsmeventrendezvous_leftclock; - - private RuntimeClock fsmeventrendezvous_rightclock; - - public RuntimePrecedes eventsendreceive; - - - protected void init() { - eventsendreceive = new RuntimePrecedes(fsmeventrendezvous_leftclock, fsmeventrendezvous_rightclock); - eventsendreceive.setParent(this); - eventsendreceive.setName("EventSendReceive"); - eventsendreceive.setAssertion(false); - } - - public FSMEventSendReceiveDef(RuntimeClock fsmeventrendezvous_leftclock, RuntimeClock fsmeventrendezvous_rightclock) { - super(); - this.fsmeventrendezvous_leftclock = fsmeventrendezvous_leftclock; - this.fsmeventrendezvous_rightclock = fsmeventrendezvous_rightclock; - init(); - } - - @Override - protected ICCSLConstraint[] getConstraints() { - ICCSLConstraint[] res = { eventsendreceive }; - return res; - } - - @Override - public void setAssertion(boolean assertion) { - super.setAssertion(assertion); - eventsendreceive.setAssertion(assertion); - } - - @Override - public void start(AbstractSemanticHelper helper) - throws SimulationException { - if ( ! canCallStart() ) { - return; - } - super.start(helper); - eventsendreceive.start(helper); - } - - @Override - public void semantic(AbstractSemanticHelper helper) - throws SimulationException { - if ( ! canCallSemantic() ) { - return; - } - super.semantic(helper); - eventsendreceive.semantic(helper); - } - - @Override - public void assertionSemantic(AbstractSemanticHelper helper) { - eventsendreceive.assertionSemantic(helper); - BDD andTerm = helper.createOne(); - BDD bddVar20 = helper.getAssertionVariable(eventsendreceive); - andTerm = helper.createAnd(andTerm, bddVar20); - helper.assertionSemantic(this, andTerm); - } - - @Override - public void update(AbstractUpdateHelper helper) - throws SimulationException { - if ( ! canCallUpdate() ) { - return; - } - super.update(helper); - eventsendreceive.update(helper); - } - -} diff --git a/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.single_traffic_light_sample.mocc/src-gen/org/gemoc/sample/tfsm/single_traffic_light_sample/mocc/tests/TrafficControlTests.java b/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.single_traffic_light_sample.mocc/src-gen/org/gemoc/sample/tfsm/single_traffic_light_sample/mocc/tests/TrafficControlTests.java deleted file mode 100644 index 9d7f35763..000000000 --- a/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.single_traffic_light_sample.mocc/src-gen/org/gemoc/sample/tfsm/single_traffic_light_sample/mocc/tests/TrafficControlTests.java +++ /dev/null @@ -1,34 +0,0 @@ -package org.gemoc.sample.tfsm.single_traffic_light_sample.mocc.tests; - -import fr.inria.aoste.timesquare.ccslkernel.runtime.elements.RuntimeClock; -import fr.inria.aoste.timesquare.ccslkernel.runtime.simulation.CCSLStepExecutionEngine; -import fr.inria.aoste.timesquare.ccslkernel.runtime.exceptions.SimulationException; -import fr.inria.aoste.timesquare.ccslkernel.runtime.simulation.CCSLSimulationEngine; -import org.gemoc.sample.tfsm.single_traffic_light_sample.mocc.models.TrafficControlModel; -import static org.junit.Assert.*; -import java.util.Set; -import org.junit.Test; - -public class TrafficControlTests { - - - @Test - public void test() - throws SimulationException { - TrafficControlModel model = new TrafficControlModel(); - assertNotNull(model); - assertNotNull(model.getEntryBlock()); - CCSLSimulationEngine engine = new CCSLSimulationEngine(model); - engine.initSimulation(); - CCSLStepExecutionEngine stepEngine = new CCSLStepExecutionEngine(engine); - // First simulation step. - stepEngine.executeStep(); - Set firedClocks = stepEngine.getFiredClocks(); - // Second simulation step. The CCSLStepExecutionEngine object can be reused. - stepEngine.executeStep(); - // Third simulation step. - stepEngine.executeStep(); - engine.endSimulation(); - } - -} diff --git a/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.single_traffic_light_sample/.gitignore b/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.single_traffic_light_sample/.gitignore deleted file mode 100644 index 25cbc92ea..000000000 --- a/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.single_traffic_light_sample/.gitignore +++ /dev/null @@ -1 +0,0 @@ -/gemoc-gen diff --git a/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.single_traffic_light_sample/single_traffic_light.aird b/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.single_traffic_light_sample/single_traffic_light.aird deleted file mode 100644 index 42afac413..000000000 --- a/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.single_traffic_light_sample/single_traffic_light.aird +++ /dev/null @@ -1,465 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - KEEP_LOCATION - KEEP_SIZE - KEEP_RATIO - - - - - - - - - - - - KEEP_LOCATION - KEEP_SIZE - KEEP_RATIO - - - - - - - - - - - - KEEP_LOCATION - KEEP_SIZE - KEEP_RATIO - - - - - - - - - - - - KEEP_LOCATION - KEEP_SIZE - KEEP_RATIO - - - - - - - - - - - - - KEEP_LOCATION - KEEP_SIZE - KEEP_RATIO - - - - - - - - - - KEEP_LOCATION - KEEP_SIZE - KEEP_RATIO - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - KEEP_LOCATION - KEEP_SIZE - KEEP_RATIO - - - - - - - - - - - - KEEP_LOCATION - KEEP_SIZE - KEEP_RATIO - - - - - - - - - - - - KEEP_LOCATION - KEEP_SIZE - KEEP_RATIO - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.single_traffic_light_sample/single_traffic_light.tfsm b/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.single_traffic_light_sample/single_traffic_light.tfsm deleted file mode 100644 index 1095d49da..000000000 --- a/official_samples/TFSM/modeling_workbench/org.gemoc.sample.tfsm.single_traffic_light_sample/single_traffic_light.tfsm +++ /dev/null @@ -1,19 +0,0 @@ - - - - - - - - - - - - - - - - - - -