A fully working version of the scheduling language with added examples
This commit is contained in:
parent
ec42f74960
commit
ebfd85a666
126 changed files with 7235 additions and 981 deletions
34
examples/geraniums/geraniums_renderer.j2
Normal file
34
examples/geraniums/geraniums_renderer.j2
Normal file
|
|
@ -0,0 +1,34 @@
|
|||
digraph G {
|
||||
rankdir=LR;
|
||||
center=true;
|
||||
margin=1;
|
||||
nodesep=1;
|
||||
|
||||
node [fontname="Arial", fontsize=10, shape=box, style=filled, fillcolor=white];
|
||||
|
||||
// Geraniums
|
||||
{% for id, name, flowering in geraniums %}
|
||||
g{{ id }} [
|
||||
label="geranium: {{ name }}\n({{ 'flowering' if flowering else 'not flowering' }})",
|
||||
shape=ellipse,
|
||||
fillcolor="{{ 'lightpink' if flowering else 'lightgray' }}",
|
||||
fontcolor=black
|
||||
];
|
||||
{% endfor %}
|
||||
|
||||
// Pots
|
||||
{% for id, name, cracked in pots %}
|
||||
p{{ id }} [
|
||||
label="pot: {{ name }}\n({{ 'cracked' if cracked else 'pristine' }})",
|
||||
shape=box,
|
||||
fillcolor="{{ 'mistyrose' if cracked else 'lightgreen' }}",
|
||||
fontcolor=black,
|
||||
style="filled,bold"
|
||||
];
|
||||
{% endfor %}
|
||||
|
||||
// Connections: geranium -> pot
|
||||
{% for source, target in planted %}
|
||||
g{{ source }} -> p{{ target }};
|
||||
{% endfor %}
|
||||
}
|
||||
9
examples/geraniums/metamodels/mm.od
Normal file
9
examples/geraniums/metamodels/mm.od
Normal file
|
|
@ -0,0 +1,9 @@
|
|||
class Geranium {
|
||||
Boolean flowering;
|
||||
}
|
||||
|
||||
class Pot {
|
||||
Boolean cracked;
|
||||
}
|
||||
|
||||
association Planted [0..*] Geranium -> Pot [1..1]
|
||||
44
examples/geraniums/models/eval_context.py
Normal file
44
examples/geraniums/models/eval_context.py
Normal file
|
|
@ -0,0 +1,44 @@
|
|||
import os
|
||||
|
||||
from jinja2 import Environment, FileSystemLoader
|
||||
|
||||
from api.od import ODAPI
|
||||
from framework.conformance import eval_context_decorator
|
||||
|
||||
|
||||
@eval_context_decorator
|
||||
def _render_geraniums_dot(od: ODAPI, file: str) -> str:
|
||||
__DIR__ = os.path.dirname(__file__)
|
||||
env = Environment(
|
||||
loader=FileSystemLoader(
|
||||
__DIR__
|
||||
)
|
||||
)
|
||||
env.trim_blocks = True
|
||||
env.lstrip_blocks = True
|
||||
template_dot = env.get_template("geraniums_renderer.j2")
|
||||
|
||||
id_count = 0
|
||||
id_map = {}
|
||||
render = {"geraniums": [], "pots": [], "planted": []}
|
||||
|
||||
for name, uuid in od.get_all_instances("Geranium"):
|
||||
render["geraniums"].append((id_count, name, od.get_slot_value(uuid, "flowering")))
|
||||
id_map[uuid] = id_count
|
||||
id_count += 1
|
||||
|
||||
for name, uuid in od.get_all_instances("Pot"):
|
||||
render["pots"].append((id_count, name, od.get_slot_value(uuid, "cracked")))
|
||||
id_map[uuid] = id_count
|
||||
id_count += 1
|
||||
|
||||
for name, uuid in od.get_all_instances("Planted"):
|
||||
render["planted"].append((id_map[od.get_source(uuid)], id_map[od.get_target(uuid)]))
|
||||
|
||||
with open(file, "w", encoding="utf-8") as f_dot:
|
||||
f_dot.write(template_dot.render(**render))
|
||||
return ""
|
||||
|
||||
eval_context = {
|
||||
"render_geraniums_dot": _render_geraniums_dot,
|
||||
}
|
||||
17
examples/geraniums/models/example1.od
Normal file
17
examples/geraniums/models/example1.od
Normal file
|
|
@ -0,0 +1,17 @@
|
|||
f1:Geranium {
|
||||
flowering = True;
|
||||
}
|
||||
f2:Geranium {
|
||||
flowering = False;
|
||||
}
|
||||
f3:Geranium {
|
||||
flowering = True;
|
||||
}
|
||||
|
||||
p1:Pot {
|
||||
cracked = True;
|
||||
}
|
||||
|
||||
:Planted (f1 -> p1)
|
||||
:Planted (f2 -> p1)
|
||||
:Planted (f3 -> p1)
|
||||
47
examples/geraniums/models/example2.od
Normal file
47
examples/geraniums/models/example2.od
Normal file
|
|
@ -0,0 +1,47 @@
|
|||
f1:Geranium {
|
||||
flowering = True;
|
||||
}
|
||||
f2:Geranium {
|
||||
flowering = True;
|
||||
}
|
||||
f3:Geranium {
|
||||
flowering = False;
|
||||
}
|
||||
|
||||
p1:Pot {
|
||||
cracked = True;
|
||||
}
|
||||
|
||||
:Planted (f1 -> p1)
|
||||
:Planted (f2 -> p1)
|
||||
:Planted (f3 -> p1)
|
||||
|
||||
|
||||
|
||||
|
||||
f4:Geranium {
|
||||
flowering = True;
|
||||
}
|
||||
p2:Pot {
|
||||
cracked = True;
|
||||
}
|
||||
:Planted (f4 -> p2)
|
||||
|
||||
|
||||
|
||||
f5:Geranium {
|
||||
flowering = True;
|
||||
}
|
||||
p3:Pot {
|
||||
cracked = False;
|
||||
}
|
||||
:Planted (f5 -> p3)
|
||||
|
||||
|
||||
f6:Geranium {
|
||||
flowering = False;
|
||||
}
|
||||
p4:Pot {
|
||||
cracked = True;
|
||||
}
|
||||
:Planted (f6 -> p4)
|
||||
45
examples/geraniums/renderer.py
Normal file
45
examples/geraniums/renderer.py
Normal file
|
|
@ -0,0 +1,45 @@
|
|||
import os
|
||||
|
||||
from jinja2 import Environment, FileSystemLoader
|
||||
|
||||
from api.od import ODAPI
|
||||
from concrete_syntax.graphviz.make_url import show_graphviz
|
||||
from concrete_syntax.graphviz.renderer import make_graphviz_id
|
||||
|
||||
try:
|
||||
import graphviz
|
||||
HAVE_GRAPHVIZ = True
|
||||
except ImportError:
|
||||
HAVE_GRAPHVIZ = False
|
||||
|
||||
def render_geraniums_dot(od: ODAPI, file: str) -> str:
|
||||
__DIR__ = os.path.dirname(__file__)
|
||||
env = Environment(
|
||||
loader=FileSystemLoader(
|
||||
__DIR__
|
||||
)
|
||||
)
|
||||
env.trim_blocks = True
|
||||
env.lstrip_blocks = True
|
||||
template_dot = env.get_template("geraniums_renderer.j2")
|
||||
|
||||
id_count = 0
|
||||
id_map = {}
|
||||
render = {"geraniums": [], "pots": [], "planted": []}
|
||||
|
||||
for name, uuid in od.get_all_instances("Geranium"):
|
||||
render["geraniums"].append((id_count, name, od.get_slot_value(uuid, "flowering")))
|
||||
id_map[uuid] = id_count
|
||||
id_count += 1
|
||||
|
||||
for name, uuid in od.get_all_instances("Pot"):
|
||||
render["pots"].append((id_count, name, od.get_slot_value(uuid, "cracked")))
|
||||
id_map[uuid] = id_count
|
||||
id_count += 1
|
||||
|
||||
for name, uuid in od.get_all_instances("Planted"):
|
||||
render["planted"].append((id_map[od.get_source(uuid)], id_map[od.get_target(uuid)]))
|
||||
|
||||
with open(file, "w", encoding="utf-8") as f_dot:
|
||||
f_dot.write(template_dot.render(**render))
|
||||
return ""
|
||||
3
examples/geraniums/rules/cracked_pots.od
Normal file
3
examples/geraniums/rules/cracked_pots.od
Normal file
|
|
@ -0,0 +1,3 @@
|
|||
pot:RAM_Pot {
|
||||
RAM_cracked = `get_value(this)`;
|
||||
}
|
||||
3
examples/geraniums/rules/create_pot.od
Normal file
3
examples/geraniums/rules/create_pot.od
Normal file
|
|
@ -0,0 +1,3 @@
|
|||
pot:RAM_Pot {
|
||||
RAM_cracked = `False`;
|
||||
}
|
||||
7
examples/geraniums/rules/flowering_flowers_in_pot.od
Normal file
7
examples/geraniums/rules/flowering_flowers_in_pot.od
Normal file
|
|
@ -0,0 +1,7 @@
|
|||
pot:RAM_Pot
|
||||
|
||||
flower:RAM_Geranium {
|
||||
RAM_flowering = `get_value(this)`;
|
||||
}
|
||||
|
||||
:RAM_Planted (flower -> pot)
|
||||
8
examples/geraniums/rules/repot_flower_in_pot.od
Normal file
8
examples/geraniums/rules/repot_flower_in_pot.od
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
pot:RAM_Pot
|
||||
new_pot:RAM_Pot
|
||||
|
||||
flower:RAM_Geranium {
|
||||
RAM_flowering = `get_value(this)`;
|
||||
}
|
||||
|
||||
replant:RAM_Planted (flower -> new_pot)
|
||||
48
examples/geraniums/runner.py
Normal file
48
examples/geraniums/runner.py
Normal file
|
|
@ -0,0 +1,48 @@
|
|||
from examples.geraniums.renderer import render_geraniums_dot
|
||||
from transformation.ramify import ramify
|
||||
|
||||
from models.eval_context import eval_context
|
||||
|
||||
from transformation.schedule.rule_scheduler import *
|
||||
|
||||
if __name__ == "__main__":
|
||||
import os
|
||||
THIS_DIR = os.path.dirname(__file__)
|
||||
|
||||
# get file contents as string
|
||||
def read_file(filename):
|
||||
with open(THIS_DIR+'/'+filename) as file:
|
||||
return file.read()
|
||||
|
||||
|
||||
state = DevState()
|
||||
scd_mmm = bootstrap_scd(state)
|
||||
|
||||
mm_cs = read_file('metamodels/mm.od')
|
||||
m_cs = read_file('models/example2.od')
|
||||
|
||||
mm = parser_cd.parse_cd(
|
||||
state,
|
||||
m_text=mm_cs,
|
||||
)
|
||||
m = parser_od.parse_od(
|
||||
state, m_text=m_cs, mm=mm
|
||||
)
|
||||
conf_err = Conformance(
|
||||
state, m, mm
|
||||
).check_nominal()
|
||||
print(render_conformance_check_result(conf_err))
|
||||
mm_ramified = ramify(state, mm)
|
||||
|
||||
action_generator = RuleSchedular(state, mm, mm_ramified, verbose=True, directory="examples/geraniums", eval_context=eval_context)
|
||||
od = ODAPI(state, m, mm)
|
||||
render_geraniums_dot(od, f"{THIS_DIR}/geraniums.dot")
|
||||
|
||||
# if action_generator.load_schedule(f"petrinet.od"):
|
||||
# if action_generator.load_schedule("schedules/combinatory.drawio"):
|
||||
if action_generator.load_schedule("schedules/schedule.drawio"):
|
||||
|
||||
action_generator.generate_dot("../dot.dot")
|
||||
code, message = action_generator.run(od)
|
||||
print(f"{code}: {message}")
|
||||
render_geraniums_dot(od, f"{THIS_DIR}/geraniums_final.dot")
|
||||
645
examples/geraniums/schedules/schedule.drawio
Normal file
645
examples/geraniums/schedules/schedule.drawio
Normal file
|
|
@ -0,0 +1,645 @@
|
|||
<mxfile host="Electron" agent="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) draw.io/27.0.5 Chrome/134.0.6998.205 Electron/35.3.0 Safari/537.36" version="27.0.5" pages="2">
|
||||
<diagram name="main" id="pASKGN4qU69vjyreTE56">
|
||||
<mxGraphModel dx="1389" dy="835" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="850" pageHeight="1100" math="0" shadow="0">
|
||||
<root>
|
||||
<mxCell id="0" />
|
||||
<mxCell id="1" parent="0" />
|
||||
<object label="%name%: %type%" placeholders="1" name="start" type="Start" ports_exec_out="["out"]" ports_data_out="[]" id="cchbAGZklJLD93cgxIrT-1">
|
||||
<mxCell style="shape=table;childLayout=tableLayout;startSize=40;collapsible=0;recursiveResize=1;expand=0;fontStyle=1;editable=1;movable=1;resizable=1;rotatable=0;deletable=1;locked=0;connectable=0;allowArrows=0;pointerEvents=0;perimeter=rectanglePerimeter;rounded=1;container=1;dropTarget=0;swimlaneHead=1;swimlaneBody=1;top=1;noLabel=0;autosize=0;resizeHeight=0;spacing=2;metaEdit=1;resizeWidth=0;arcSize=10;" parent="1" vertex="1">
|
||||
<mxGeometry x="80" y="110" width="160" height="100" as="geometry" />
|
||||
</mxCell>
|
||||
</object>
|
||||
<mxCell id="cchbAGZklJLD93cgxIrT-2" value="" style="shape=tableRow;horizontal=0;swimlaneHead=0;swimlaneBody=0;top=0;left=0;strokeColor=inherit;bottom=0;right=0;dropTarget=0;fontStyle=0;fillColor=none;points=[[0,0.5],[1,0.5]];startSize=0;collapsible=0;recursiveResize=1;expand=0;rounded=0;allowArrows=0;connectable=0;autosize=1;resizeHeight=1;rotatable=0;" parent="cchbAGZklJLD93cgxIrT-1" vertex="1">
|
||||
<mxGeometry y="40" width="160" height="60" as="geometry" />
|
||||
</mxCell>
|
||||
<mxCell id="cchbAGZklJLD93cgxIrT-3" value="Input" style="swimlane;swimlaneHead=0;swimlaneBody=0;fontStyle=0;strokeColor=inherit;connectable=0;fillColor=none;startSize=40;collapsible=0;recursiveResize=1;expand=0;allowArrows=0;autosize=1;rotatable=0;noLabel=1;overflow=hidden;swimlaneLine=0;editable=0;" parent="cchbAGZklJLD93cgxIrT-2" vertex="1">
|
||||
<mxGeometry width="80" height="60" as="geometry">
|
||||
<mxRectangle width="80" height="60" as="alternateBounds" />
|
||||
</mxGeometry>
|
||||
</mxCell>
|
||||
<mxCell id="cchbAGZklJLD93cgxIrT-4" value="Output" style="swimlane;swimlaneHead=0;swimlaneBody=0;fontStyle=0;strokeColor=inherit;connectable=0;fillColor=none;startSize=40;collapsible=0;recursiveResize=1;expand=0;allowArrows=0;autosize=1;rotatable=0;noLabel=1;overflow=hidden;swimlaneLine=0;editable=0;" parent="cchbAGZklJLD93cgxIrT-2" vertex="1">
|
||||
<mxGeometry x="80" width="80" height="60" as="geometry">
|
||||
<mxRectangle width="80" height="60" as="alternateBounds" />
|
||||
</mxGeometry>
|
||||
</mxCell>
|
||||
<object label="out" type="exec" id="cchbAGZklJLD93cgxIrT-5">
|
||||
<mxCell style="rounded=0;whiteSpace=wrap;html=1;fillColor=#dae8fc;strokeColor=#6c8ebf;" parent="cchbAGZklJLD93cgxIrT-4" vertex="1">
|
||||
<mxGeometry x="10" y="10" width="60" height="40" as="geometry" />
|
||||
</mxCell>
|
||||
</object>
|
||||
<object label="%name%: %type%
%file%
matches: %n%" placeholders="1" name="cracked pots" type="Match" file="rules/cracked_pots.od" n="" id="cchbAGZklJLD93cgxIrT-6">
|
||||
<mxCell style="shape=table;childLayout=tableLayout;startSize=60;collapsible=0;recursiveResize=1;expand=0;fontStyle=1;editable=1;movable=1;resizable=1;rotatable=0;deletable=1;locked=0;connectable=0;allowArrows=0;pointerEvents=0;perimeter=rectanglePerimeter;rounded=1;container=1;dropTarget=0;swimlaneHead=1;swimlaneBody=1;top=1;noLabel=0;autosize=0;resizeHeight=0;spacing=2;metaEdit=1;resizeWidth=0;arcSize=10;" parent="1" vertex="1">
|
||||
<mxGeometry x="280" y="90" width="160" height="220" as="geometry" />
|
||||
</mxCell>
|
||||
</object>
|
||||
<mxCell id="cchbAGZklJLD93cgxIrT-7" value="" style="shape=tableRow;horizontal=0;swimlaneHead=0;swimlaneBody=0;top=0;left=0;strokeColor=inherit;bottom=0;right=0;dropTarget=0;fontStyle=0;fillColor=none;points=[[0,0.5],[1,0.5]];startSize=0;collapsible=0;recursiveResize=1;expand=0;rounded=0;allowArrows=0;connectable=0;autosize=1;resizeHeight=1;rotatable=0;" parent="cchbAGZklJLD93cgxIrT-6" vertex="1">
|
||||
<mxGeometry y="60" width="160" height="160" as="geometry" />
|
||||
</mxCell>
|
||||
<mxCell id="cchbAGZklJLD93cgxIrT-8" value="Input" style="swimlane;swimlaneHead=0;swimlaneBody=0;fontStyle=0;strokeColor=inherit;connectable=0;fillColor=none;startSize=60;collapsible=0;recursiveResize=1;expand=0;allowArrows=0;autosize=1;rotatable=0;noLabel=1;overflow=hidden;swimlaneLine=0;editable=0;" parent="cchbAGZklJLD93cgxIrT-7" vertex="1">
|
||||
<mxGeometry width="80" height="160" as="geometry">
|
||||
<mxRectangle width="80" height="160" as="alternateBounds" />
|
||||
</mxGeometry>
|
||||
</mxCell>
|
||||
<object label="in" type="data" id="cchbAGZklJLD93cgxIrT-9">
|
||||
<mxCell style="rounded=0;whiteSpace=wrap;html=1;fillColor=#d5e8d4;strokeColor=#82b366;" parent="cchbAGZklJLD93cgxIrT-8" vertex="1">
|
||||
<mxGeometry x="10" y="110" width="60" height="40" as="geometry" />
|
||||
</mxCell>
|
||||
</object>
|
||||
<object label="in" type="exec" id="cchbAGZklJLD93cgxIrT-10">
|
||||
<mxCell style="rounded=0;whiteSpace=wrap;html=1;fillColor=#dae8fc;strokeColor=#6c8ebf;" parent="cchbAGZklJLD93cgxIrT-8" vertex="1">
|
||||
<mxGeometry x="10" y="10" width="60" height="40" as="geometry" />
|
||||
</mxCell>
|
||||
</object>
|
||||
<mxCell id="cchbAGZklJLD93cgxIrT-11" value="Output" style="swimlane;swimlaneHead=0;swimlaneBody=0;fontStyle=0;strokeColor=inherit;connectable=0;fillColor=none;startSize=40;collapsible=0;recursiveResize=1;expand=0;allowArrows=0;autosize=1;rotatable=0;noLabel=1;overflow=hidden;swimlaneLine=0;editable=0;" parent="cchbAGZklJLD93cgxIrT-7" vertex="1">
|
||||
<mxGeometry x="80" width="80" height="160" as="geometry">
|
||||
<mxRectangle width="80" height="160" as="alternateBounds" />
|
||||
</mxGeometry>
|
||||
</mxCell>
|
||||
<object label="out" type="data" id="cchbAGZklJLD93cgxIrT-12">
|
||||
<mxCell style="rounded=0;whiteSpace=wrap;html=1;fillColor=#d5e8d4;strokeColor=#82b366;" parent="cchbAGZklJLD93cgxIrT-11" vertex="1">
|
||||
<mxGeometry x="10" y="110" width="60" height="40" as="geometry" />
|
||||
</mxCell>
|
||||
</object>
|
||||
<object label="success" type="exec" id="cchbAGZklJLD93cgxIrT-13">
|
||||
<mxCell style="rounded=0;whiteSpace=wrap;html=1;fillColor=#dae8fc;strokeColor=#6c8ebf;" parent="cchbAGZklJLD93cgxIrT-11" vertex="1">
|
||||
<mxGeometry x="10" y="10" width="60" height="40" as="geometry" />
|
||||
</mxCell>
|
||||
</object>
|
||||
<object label="fail" type="exec" id="cchbAGZklJLD93cgxIrT-14">
|
||||
<mxCell style="rounded=0;whiteSpace=wrap;html=1;fillColor=#dae8fc;strokeColor=#6c8ebf;" parent="cchbAGZklJLD93cgxIrT-11" vertex="1">
|
||||
<mxGeometry x="10" y="60" width="60" height="40" as="geometry" />
|
||||
</mxCell>
|
||||
</object>
|
||||
<mxCell id="cchbAGZklJLD93cgxIrT-15" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;" parent="1" source="cchbAGZklJLD93cgxIrT-5" target="cchbAGZklJLD93cgxIrT-10" edge="1">
|
||||
<mxGeometry relative="1" as="geometry" />
|
||||
</mxCell>
|
||||
<object label="%name%: %type%" placeholders="1" name="end" type="End" ports_exec_in="["in"]" ports_data_in="[]" id="cchbAGZklJLD93cgxIrT-24">
|
||||
<mxCell style="shape=table;childLayout=tableLayout;startSize=40;collapsible=0;recursiveResize=1;expand=0;fontStyle=1;editable=1;movable=1;resizable=1;rotatable=0;deletable=1;locked=0;connectable=0;allowArrows=0;pointerEvents=0;perimeter=rectanglePerimeter;rounded=1;container=1;dropTarget=0;swimlaneHead=1;swimlaneBody=1;top=1;noLabel=0;autosize=0;resizeHeight=0;spacing=2;metaEdit=1;resizeWidth=0;arcSize=10;" parent="1" vertex="1">
|
||||
<mxGeometry x="520" y="350" width="160" height="100" as="geometry" />
|
||||
</mxCell>
|
||||
</object>
|
||||
<mxCell id="cchbAGZklJLD93cgxIrT-25" value="" style="shape=tableRow;horizontal=0;swimlaneHead=0;swimlaneBody=0;top=0;left=0;strokeColor=inherit;bottom=0;right=0;dropTarget=0;fontStyle=0;fillColor=none;points=[[0,0.5],[1,0.5]];startSize=0;collapsible=0;recursiveResize=1;expand=0;rounded=0;allowArrows=0;connectable=0;autosize=1;resizeHeight=1;rotatable=0;" parent="cchbAGZklJLD93cgxIrT-24" vertex="1">
|
||||
<mxGeometry y="40" width="160" height="60" as="geometry" />
|
||||
</mxCell>
|
||||
<mxCell id="cchbAGZklJLD93cgxIrT-26" value="Input" style="swimlane;swimlaneHead=0;swimlaneBody=0;fontStyle=0;strokeColor=inherit;connectable=0;fillColor=none;startSize=40;collapsible=0;recursiveResize=1;expand=0;allowArrows=0;autosize=1;rotatable=0;noLabel=1;overflow=hidden;swimlaneLine=0;editable=0;" parent="cchbAGZklJLD93cgxIrT-25" vertex="1">
|
||||
<mxGeometry width="80" height="60" as="geometry">
|
||||
<mxRectangle width="80" height="60" as="alternateBounds" />
|
||||
</mxGeometry>
|
||||
</mxCell>
|
||||
<object label="in" type="exec" id="cchbAGZklJLD93cgxIrT-27">
|
||||
<mxCell style="rounded=0;whiteSpace=wrap;html=1;fillColor=#dae8fc;strokeColor=#6c8ebf;" parent="cchbAGZklJLD93cgxIrT-26" vertex="1">
|
||||
<mxGeometry x="10" y="10" width="60" height="40" as="geometry" />
|
||||
</mxCell>
|
||||
</object>
|
||||
<mxCell id="cchbAGZklJLD93cgxIrT-28" value="Output" style="swimlane;swimlaneHead=0;swimlaneBody=0;fontStyle=0;strokeColor=inherit;connectable=0;fillColor=none;startSize=40;collapsible=0;recursiveResize=1;expand=0;allowArrows=0;autosize=1;rotatable=0;noLabel=1;overflow=hidden;swimlaneLine=0;editable=0;" parent="cchbAGZklJLD93cgxIrT-25" vertex="1">
|
||||
<mxGeometry x="80" width="80" height="60" as="geometry">
|
||||
<mxRectangle width="80" height="60" as="alternateBounds" />
|
||||
</mxGeometry>
|
||||
</mxCell>
|
||||
<mxCell id="cchbAGZklJLD93cgxIrT-29" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;jumpStyle=gap;jumpSize=10;" parent="1" source="cchbAGZklJLD93cgxIrT-14" target="cchbAGZklJLD93cgxIrT-27" edge="1">
|
||||
<mxGeometry relative="1" as="geometry">
|
||||
<Array as="points">
|
||||
<mxPoint x="500" y="230" />
|
||||
<mxPoint x="500" y="420" />
|
||||
</Array>
|
||||
</mxGeometry>
|
||||
</mxCell>
|
||||
<object label="%name%: %type%" placeholders="1" name="remove cracked status
" type="Modify" rename="{}" delete="["pot_RAM_cracked", "pot.RAM_cracked"]" id="cchbAGZklJLD93cgxIrT-32">
|
||||
<mxCell style="shape=table;childLayout=tableLayout;startSize=40;collapsible=0;recursiveResize=1;expand=0;fontStyle=1;editable=1;movable=1;resizable=1;rotatable=0;deletable=1;locked=0;connectable=0;allowArrows=0;pointerEvents=0;perimeter=rectanglePerimeter;rounded=1;container=1;dropTarget=0;swimlaneHead=1;swimlaneBody=1;top=1;noLabel=0;autosize=0;resizeHeight=0;spacing=2;metaEdit=1;resizeWidth=0;arcSize=10;" parent="1" vertex="1">
|
||||
<mxGeometry x="270" y="350" width="160" height="100" as="geometry" />
|
||||
</mxCell>
|
||||
</object>
|
||||
<mxCell id="cchbAGZklJLD93cgxIrT-33" value="" style="shape=tableRow;horizontal=0;swimlaneHead=0;swimlaneBody=0;top=0;left=0;strokeColor=inherit;bottom=0;right=0;dropTarget=0;fontStyle=0;fillColor=none;points=[[0,0.5],[1,0.5]];startSize=0;collapsible=0;recursiveResize=1;expand=0;rounded=0;allowArrows=0;connectable=0;autosize=1;resizeHeight=1;rotatable=0;" parent="cchbAGZklJLD93cgxIrT-32" vertex="1">
|
||||
<mxGeometry y="40" width="160" height="60" as="geometry" />
|
||||
</mxCell>
|
||||
<mxCell id="cchbAGZklJLD93cgxIrT-34" value="Input" style="swimlane;swimlaneHead=0;swimlaneBody=0;fontStyle=0;strokeColor=inherit;connectable=0;fillColor=none;startSize=60;collapsible=0;recursiveResize=1;expand=0;allowArrows=0;autosize=1;rotatable=0;noLabel=1;overflow=hidden;swimlaneLine=0;editable=0;" parent="cchbAGZklJLD93cgxIrT-33" vertex="1">
|
||||
<mxGeometry width="80" height="60" as="geometry">
|
||||
<mxRectangle width="80" height="60" as="alternateBounds" />
|
||||
</mxGeometry>
|
||||
</mxCell>
|
||||
<object label="in" type="data" id="cchbAGZklJLD93cgxIrT-35">
|
||||
<mxCell style="rounded=0;whiteSpace=wrap;html=1;fillColor=#d5e8d4;strokeColor=#82b366;" parent="cchbAGZklJLD93cgxIrT-34" vertex="1">
|
||||
<mxGeometry x="10" y="10" width="60" height="40" as="geometry" />
|
||||
</mxCell>
|
||||
</object>
|
||||
<mxCell id="cchbAGZklJLD93cgxIrT-36" value="Output" style="swimlane;swimlaneHead=0;swimlaneBody=0;fontStyle=0;strokeColor=inherit;connectable=0;fillColor=none;startSize=40;collapsible=0;recursiveResize=1;expand=0;allowArrows=0;autosize=1;rotatable=0;noLabel=1;overflow=hidden;swimlaneLine=0;editable=0;" parent="cchbAGZklJLD93cgxIrT-33" vertex="1">
|
||||
<mxGeometry x="80" width="80" height="60" as="geometry">
|
||||
<mxRectangle width="80" height="60" as="alternateBounds" />
|
||||
</mxGeometry>
|
||||
</mxCell>
|
||||
<object label="out" type="data" id="cchbAGZklJLD93cgxIrT-37">
|
||||
<mxCell style="rounded=0;whiteSpace=wrap;html=1;fillColor=#d5e8d4;strokeColor=#82b366;" parent="cchbAGZklJLD93cgxIrT-36" vertex="1">
|
||||
<mxGeometry x="10" y="10" width="60" height="40" as="geometry" />
|
||||
</mxCell>
|
||||
</object>
|
||||
<mxCell id="cchbAGZklJLD93cgxIrT-38" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;jumpStyle=gap;jumpSize=10;" parent="1" source="cchbAGZklJLD93cgxIrT-12" target="cchbAGZklJLD93cgxIrT-35" edge="1">
|
||||
<mxGeometry relative="1" as="geometry">
|
||||
<Array as="points">
|
||||
<mxPoint x="460" y="280" />
|
||||
<mxPoint x="460" y="330" />
|
||||
<mxPoint x="250" y="330" />
|
||||
<mxPoint x="250" y="420" />
|
||||
</Array>
|
||||
</mxGeometry>
|
||||
</mxCell>
|
||||
<object label="%name%: %type%
%file%
matches: %n%" placeholders="1" name="flowering flower" type="Match" file="rules/flowering_flowers_in_pot.od" n="" id="cchbAGZklJLD93cgxIrT-41">
|
||||
<mxCell style="shape=table;childLayout=tableLayout;startSize=60;collapsible=0;recursiveResize=1;expand=0;fontStyle=1;editable=1;movable=1;resizable=1;rotatable=0;deletable=1;locked=0;connectable=0;allowArrows=0;pointerEvents=0;perimeter=rectanglePerimeter;rounded=1;container=1;dropTarget=0;swimlaneHead=1;swimlaneBody=1;top=1;noLabel=0;autosize=0;resizeHeight=0;spacing=2;metaEdit=1;resizeWidth=0;arcSize=10;" parent="1" vertex="1">
|
||||
<mxGeometry x="760" y="40" width="160" height="220" as="geometry" />
|
||||
</mxCell>
|
||||
</object>
|
||||
<mxCell id="cchbAGZklJLD93cgxIrT-42" value="" style="shape=tableRow;horizontal=0;swimlaneHead=0;swimlaneBody=0;top=0;left=0;strokeColor=inherit;bottom=0;right=0;dropTarget=0;fontStyle=0;fillColor=none;points=[[0,0.5],[1,0.5]];startSize=0;collapsible=0;recursiveResize=1;expand=0;rounded=0;allowArrows=0;connectable=0;autosize=1;resizeHeight=1;rotatable=0;" parent="cchbAGZklJLD93cgxIrT-41" vertex="1">
|
||||
<mxGeometry y="60" width="160" height="160" as="geometry" />
|
||||
</mxCell>
|
||||
<mxCell id="cchbAGZklJLD93cgxIrT-43" value="Input" style="swimlane;swimlaneHead=0;swimlaneBody=0;fontStyle=0;strokeColor=inherit;connectable=0;fillColor=none;startSize=60;collapsible=0;recursiveResize=1;expand=0;allowArrows=0;autosize=1;rotatable=0;noLabel=1;overflow=hidden;swimlaneLine=0;editable=0;" parent="cchbAGZklJLD93cgxIrT-42" vertex="1">
|
||||
<mxGeometry width="80" height="160" as="geometry">
|
||||
<mxRectangle width="80" height="160" as="alternateBounds" />
|
||||
</mxGeometry>
|
||||
</mxCell>
|
||||
<object label="in" type="data" id="cchbAGZklJLD93cgxIrT-44">
|
||||
<mxCell style="rounded=0;whiteSpace=wrap;html=1;fillColor=#d5e8d4;strokeColor=#82b366;" parent="cchbAGZklJLD93cgxIrT-43" vertex="1">
|
||||
<mxGeometry x="10" y="110" width="60" height="40" as="geometry" />
|
||||
</mxCell>
|
||||
</object>
|
||||
<object label="in" type="exec" id="cchbAGZklJLD93cgxIrT-45">
|
||||
<mxCell style="rounded=0;whiteSpace=wrap;html=1;fillColor=#dae8fc;strokeColor=#6c8ebf;" parent="cchbAGZklJLD93cgxIrT-43" vertex="1">
|
||||
<mxGeometry x="10" y="10" width="60" height="40" as="geometry" />
|
||||
</mxCell>
|
||||
</object>
|
||||
<mxCell id="cchbAGZklJLD93cgxIrT-46" value="Output" style="swimlane;swimlaneHead=0;swimlaneBody=0;fontStyle=0;strokeColor=inherit;connectable=0;fillColor=none;startSize=40;collapsible=0;recursiveResize=1;expand=0;allowArrows=0;autosize=1;rotatable=0;noLabel=1;overflow=hidden;swimlaneLine=0;editable=0;" parent="cchbAGZklJLD93cgxIrT-42" vertex="1">
|
||||
<mxGeometry x="80" width="80" height="160" as="geometry">
|
||||
<mxRectangle width="80" height="160" as="alternateBounds" />
|
||||
</mxGeometry>
|
||||
</mxCell>
|
||||
<object label="out" type="data" id="cchbAGZklJLD93cgxIrT-47">
|
||||
<mxCell style="rounded=0;whiteSpace=wrap;html=1;fillColor=#d5e8d4;strokeColor=#82b366;" parent="cchbAGZklJLD93cgxIrT-46" vertex="1">
|
||||
<mxGeometry x="10" y="110" width="60" height="40" as="geometry" />
|
||||
</mxCell>
|
||||
</object>
|
||||
<object label="success" type="exec" id="cchbAGZklJLD93cgxIrT-48">
|
||||
<mxCell style="rounded=0;whiteSpace=wrap;html=1;fillColor=#dae8fc;strokeColor=#6c8ebf;" parent="cchbAGZklJLD93cgxIrT-46" vertex="1">
|
||||
<mxGeometry x="10" y="10" width="60" height="40" as="geometry" />
|
||||
</mxCell>
|
||||
</object>
|
||||
<object label="fail" type="exec" id="cchbAGZklJLD93cgxIrT-49">
|
||||
<mxCell style="rounded=0;whiteSpace=wrap;html=1;fillColor=#dae8fc;strokeColor=#6c8ebf;" parent="cchbAGZklJLD93cgxIrT-46" vertex="1">
|
||||
<mxGeometry x="10" y="60" width="60" height="40" as="geometry" />
|
||||
</mxCell>
|
||||
</object>
|
||||
<object label="%name%: %type%" placeholders="1" name="iterate pots" type="Loop" id="cchbAGZklJLD93cgxIrT-53">
|
||||
<mxCell style="shape=table;childLayout=tableLayout;startSize=40;collapsible=0;recursiveResize=1;expand=0;fontStyle=1;editable=1;movable=1;resizable=1;rotatable=0;deletable=1;locked=0;connectable=0;allowArrows=0;pointerEvents=0;perimeter=rectanglePerimeter;rounded=1;container=1;dropTarget=0;swimlaneHead=1;swimlaneBody=1;top=1;noLabel=0;autosize=0;resizeHeight=0;spacing=2;metaEdit=1;resizeWidth=0;arcSize=10;" parent="1" vertex="1">
|
||||
<mxGeometry x="520" y="110" width="160" height="200" as="geometry" />
|
||||
</mxCell>
|
||||
</object>
|
||||
<mxCell id="cchbAGZklJLD93cgxIrT-54" value="" style="shape=tableRow;horizontal=0;swimlaneHead=0;swimlaneBody=0;top=0;left=0;strokeColor=inherit;bottom=0;right=0;dropTarget=0;fontStyle=0;fillColor=none;points=[[0,0.5],[1,0.5]];startSize=0;collapsible=0;recursiveResize=1;expand=0;rounded=0;allowArrows=0;connectable=0;autosize=1;resizeHeight=1;rotatable=0;" parent="cchbAGZklJLD93cgxIrT-53" vertex="1">
|
||||
<mxGeometry y="40" width="160" height="160" as="geometry" />
|
||||
</mxCell>
|
||||
<mxCell id="cchbAGZklJLD93cgxIrT-55" value="Input" style="swimlane;swimlaneHead=0;swimlaneBody=0;fontStyle=0;strokeColor=inherit;connectable=0;fillColor=none;startSize=60;collapsible=0;recursiveResize=1;expand=0;allowArrows=0;autosize=1;rotatable=0;noLabel=1;overflow=hidden;swimlaneLine=0;editable=0;" parent="cchbAGZklJLD93cgxIrT-54" vertex="1">
|
||||
<mxGeometry width="80" height="160" as="geometry">
|
||||
<mxRectangle width="80" height="160" as="alternateBounds" />
|
||||
</mxGeometry>
|
||||
</mxCell>
|
||||
<object label="in" type="data" id="cchbAGZklJLD93cgxIrT-56">
|
||||
<mxCell style="rounded=0;whiteSpace=wrap;html=1;fillColor=#d5e8d4;strokeColor=#82b366;" parent="cchbAGZklJLD93cgxIrT-55" vertex="1">
|
||||
<mxGeometry x="10" y="110" width="60" height="40" as="geometry" />
|
||||
</mxCell>
|
||||
</object>
|
||||
<object label="in" type="exec" id="cchbAGZklJLD93cgxIrT-57">
|
||||
<mxCell style="rounded=0;whiteSpace=wrap;html=1;fillColor=#dae8fc;strokeColor=#6c8ebf;" parent="cchbAGZklJLD93cgxIrT-55" vertex="1">
|
||||
<mxGeometry x="10" y="10" width="60" height="40" as="geometry" />
|
||||
</mxCell>
|
||||
</object>
|
||||
<mxCell id="cchbAGZklJLD93cgxIrT-58" value="Output" style="swimlane;swimlaneHead=0;swimlaneBody=0;fontStyle=0;strokeColor=inherit;connectable=0;fillColor=none;startSize=40;collapsible=0;recursiveResize=1;expand=0;allowArrows=0;autosize=1;rotatable=0;noLabel=1;overflow=hidden;swimlaneLine=0;editable=0;" parent="cchbAGZklJLD93cgxIrT-54" vertex="1">
|
||||
<mxGeometry x="80" width="80" height="160" as="geometry">
|
||||
<mxRectangle width="80" height="160" as="alternateBounds" />
|
||||
</mxGeometry>
|
||||
</mxCell>
|
||||
<object label="out" type="data" id="cchbAGZklJLD93cgxIrT-59">
|
||||
<mxCell style="rounded=0;whiteSpace=wrap;html=1;fillColor=#d5e8d4;strokeColor=#82b366;" parent="cchbAGZklJLD93cgxIrT-58" vertex="1">
|
||||
<mxGeometry x="10" y="110" width="60" height="40" as="geometry" />
|
||||
</mxCell>
|
||||
</object>
|
||||
<object label="it" type="exec" id="cchbAGZklJLD93cgxIrT-60">
|
||||
<mxCell style="rounded=0;whiteSpace=wrap;html=1;fillColor=#dae8fc;strokeColor=#6c8ebf;" parent="cchbAGZklJLD93cgxIrT-58" vertex="1">
|
||||
<mxGeometry x="10" y="10" width="60" height="40" as="geometry" />
|
||||
</mxCell>
|
||||
</object>
|
||||
<object label="out" type="exec" id="cchbAGZklJLD93cgxIrT-61">
|
||||
<mxCell style="rounded=0;whiteSpace=wrap;html=1;fillColor=#dae8fc;strokeColor=#6c8ebf;" parent="cchbAGZklJLD93cgxIrT-58" vertex="1">
|
||||
<mxGeometry x="10" y="60" width="60" height="40" as="geometry" />
|
||||
</mxCell>
|
||||
</object>
|
||||
<mxCell id="cchbAGZklJLD93cgxIrT-62" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;" parent="1" source="cchbAGZklJLD93cgxIrT-13" target="cchbAGZklJLD93cgxIrT-57" edge="1">
|
||||
<mxGeometry relative="1" as="geometry">
|
||||
<Array as="points">
|
||||
<mxPoint x="460" y="180" />
|
||||
<mxPoint x="460" y="180" />
|
||||
</Array>
|
||||
</mxGeometry>
|
||||
</mxCell>
|
||||
<mxCell id="cchbAGZklJLD93cgxIrT-63" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;jumpStyle=gap;jumpSize=10;" parent="1" source="cchbAGZklJLD93cgxIrT-37" target="cchbAGZklJLD93cgxIrT-56" edge="1">
|
||||
<mxGeometry relative="1" as="geometry">
|
||||
<Array as="points">
|
||||
<mxPoint x="480" y="420" />
|
||||
<mxPoint x="480" y="280" />
|
||||
</Array>
|
||||
</mxGeometry>
|
||||
</mxCell>
|
||||
<mxCell id="cchbAGZklJLD93cgxIrT-65" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;" parent="1" source="cchbAGZklJLD93cgxIrT-60" target="cchbAGZklJLD93cgxIrT-45" edge="1">
|
||||
<mxGeometry relative="1" as="geometry" />
|
||||
</mxCell>
|
||||
<mxCell id="cchbAGZklJLD93cgxIrT-84" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;jumpStyle=gap;jumpSize=10;" parent="1" source="cchbAGZklJLD93cgxIrT-49" target="cchbAGZklJLD93cgxIrT-57" edge="1">
|
||||
<mxGeometry relative="1" as="geometry">
|
||||
<Array as="points">
|
||||
<mxPoint x="940" y="180" />
|
||||
<mxPoint x="940" y="20" />
|
||||
<mxPoint x="500" y="20" />
|
||||
<mxPoint x="500" y="180" />
|
||||
</Array>
|
||||
</mxGeometry>
|
||||
</mxCell>
|
||||
<object label="%name%: %type%
%file%" placeholders="1" name="repot flowers" type="Schedule" file="repot_flowers" id="COygDAZokINshI2ZcMDj-1">
|
||||
<mxCell style="shape=table;childLayout=tableLayout;startSize=40;collapsible=0;recursiveResize=1;expand=0;fontStyle=1;editable=1;movable=1;resizable=1;rotatable=0;deletable=1;locked=0;connectable=0;allowArrows=0;pointerEvents=0;perimeter=rectanglePerimeter;rounded=1;container=1;dropTarget=0;swimlaneHead=1;swimlaneBody=1;top=1;noLabel=0;autosize=0;resizeHeight=0;spacing=2;metaEdit=1;resizeWidth=0;arcSize=10;" parent="1" vertex="1">
|
||||
<mxGeometry x="980" y="60" width="160" height="150" as="geometry" />
|
||||
</mxCell>
|
||||
</object>
|
||||
<mxCell id="COygDAZokINshI2ZcMDj-2" value="" style="shape=tableRow;horizontal=0;swimlaneHead=0;swimlaneBody=0;top=0;left=0;strokeColor=inherit;bottom=0;right=0;dropTarget=0;fontStyle=0;fillColor=none;points=[[0,0.5],[1,0.5]];startSize=0;collapsible=0;recursiveResize=1;expand=0;rounded=0;allowArrows=0;connectable=0;autosize=1;resizeHeight=1;rotatable=0;" parent="COygDAZokINshI2ZcMDj-1" vertex="1">
|
||||
<mxGeometry y="40" width="160" height="110" as="geometry" />
|
||||
</mxCell>
|
||||
<mxCell id="COygDAZokINshI2ZcMDj-3" value="Input" style="swimlane;swimlaneHead=0;swimlaneBody=0;fontStyle=0;strokeColor=inherit;connectable=0;fillColor=none;startSize=60;collapsible=0;recursiveResize=1;expand=0;allowArrows=0;autosize=1;rotatable=0;noLabel=1;overflow=hidden;swimlaneLine=0;editable=0;" parent="COygDAZokINshI2ZcMDj-2" vertex="1">
|
||||
<mxGeometry width="80" height="110" as="geometry">
|
||||
<mxRectangle width="80" height="110" as="alternateBounds" />
|
||||
</mxGeometry>
|
||||
</mxCell>
|
||||
<object label="out" type="exec" id="COygDAZokINshI2ZcMDj-4">
|
||||
<mxCell style="rounded=0;whiteSpace=wrap;html=1;fillColor=#dae8fc;strokeColor=#6c8ebf;" parent="COygDAZokINshI2ZcMDj-3" vertex="1">
|
||||
<mxGeometry x="10" y="10" width="60" height="40" as="geometry" />
|
||||
</mxCell>
|
||||
</object>
|
||||
<object label="flowers" type="data" id="OE_qcAbxz6Js6tdFO397-1">
|
||||
<mxCell style="rounded=0;whiteSpace=wrap;html=1;fillColor=#d5e8d4;strokeColor=#82b366;" parent="COygDAZokINshI2ZcMDj-3" vertex="1">
|
||||
<mxGeometry x="10" y="60" width="60" height="40" as="geometry" />
|
||||
</mxCell>
|
||||
</object>
|
||||
<mxCell id="COygDAZokINshI2ZcMDj-5" value="Output" style="swimlane;swimlaneHead=0;swimlaneBody=0;fontStyle=0;strokeColor=inherit;connectable=0;fillColor=none;startSize=40;collapsible=0;recursiveResize=1;expand=0;allowArrows=0;autosize=1;rotatable=0;noLabel=1;overflow=hidden;swimlaneLine=0;editable=0;" parent="COygDAZokINshI2ZcMDj-2" vertex="1">
|
||||
<mxGeometry x="80" width="80" height="110" as="geometry">
|
||||
<mxRectangle width="80" height="110" as="alternateBounds" />
|
||||
</mxGeometry>
|
||||
</mxCell>
|
||||
<object label="in" type="exec" id="COygDAZokINshI2ZcMDj-6">
|
||||
<mxCell style="rounded=0;whiteSpace=wrap;html=1;fillColor=#dae8fc;strokeColor=#6c8ebf;" parent="COygDAZokINshI2ZcMDj-5" vertex="1">
|
||||
<mxGeometry x="10" y="10" width="60" height="40" as="geometry" />
|
||||
</mxCell>
|
||||
</object>
|
||||
<mxCell id="OE_qcAbxz6Js6tdFO397-3" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;" parent="1" source="cchbAGZklJLD93cgxIrT-47" target="OE_qcAbxz6Js6tdFO397-1" edge="1">
|
||||
<mxGeometry relative="1" as="geometry">
|
||||
<Array as="points">
|
||||
<mxPoint x="960" y="230" />
|
||||
<mxPoint x="960" y="180" />
|
||||
</Array>
|
||||
</mxGeometry>
|
||||
</mxCell>
|
||||
<mxCell id="OE_qcAbxz6Js6tdFO397-5" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;jumpStyle=gap;jumpSize=10;" parent="1" source="cchbAGZklJLD93cgxIrT-48" target="COygDAZokINshI2ZcMDj-4" edge="1">
|
||||
<mxGeometry relative="1" as="geometry" />
|
||||
</mxCell>
|
||||
<mxCell id="OE_qcAbxz6Js6tdFO397-6" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;" parent="1" source="COygDAZokINshI2ZcMDj-6" target="cchbAGZklJLD93cgxIrT-57" edge="1">
|
||||
<mxGeometry relative="1" as="geometry">
|
||||
<Array as="points">
|
||||
<mxPoint x="1200" y="130" />
|
||||
<mxPoint x="1200" y="20" />
|
||||
<mxPoint x="500" y="20" />
|
||||
<mxPoint x="500" y="180" />
|
||||
</Array>
|
||||
</mxGeometry>
|
||||
</mxCell>
|
||||
<mxCell id="EqK5vrE8kE92bJcIEnmP-1" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;jumpStyle=gap;jumpSize=10;" parent="1" source="cchbAGZklJLD93cgxIrT-61" target="cchbAGZklJLD93cgxIrT-27" edge="1">
|
||||
<mxGeometry relative="1" as="geometry">
|
||||
<Array as="points">
|
||||
<mxPoint x="720" y="230" />
|
||||
<mxPoint x="720" y="330" />
|
||||
<mxPoint x="500" y="330" />
|
||||
<mxPoint x="500" y="420" />
|
||||
</Array>
|
||||
</mxGeometry>
|
||||
</mxCell>
|
||||
<mxCell id="tqyI29rS8I0LFEd-KlyY-3" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;jumpStyle=gap;jumpSize=10;" edge="1" parent="1" source="cchbAGZklJLD93cgxIrT-59" target="cchbAGZklJLD93cgxIrT-44">
|
||||
<mxGeometry relative="1" as="geometry">
|
||||
<Array as="points">
|
||||
<mxPoint x="740" y="280" />
|
||||
<mxPoint x="740" y="230" />
|
||||
</Array>
|
||||
</mxGeometry>
|
||||
</mxCell>
|
||||
</root>
|
||||
</mxGraphModel>
|
||||
</diagram>
|
||||
<diagram id="c3Tuc6LHjhM7aXRdpPRx" name="repot_flowers">
|
||||
<mxGraphModel dx="1042" dy="626" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="850" pageHeight="1100" math="0" shadow="0">
|
||||
<root>
|
||||
<mxCell id="0" />
|
||||
<mxCell id="1" parent="0" />
|
||||
<object label="%name%: %type%" placeholders="1" name="start_repotting" type="Start" ports_exec_out="["out"]" ports_data_out="["flowers", "old_pot"]" id="gjxSdUMfFO3v8k7oyOzM-1">
|
||||
<mxCell style="shape=table;childLayout=tableLayout;startSize=40;collapsible=0;recursiveResize=1;expand=0;fontStyle=1;editable=1;movable=1;resizable=1;rotatable=0;deletable=1;locked=0;connectable=0;allowArrows=0;pointerEvents=0;perimeter=rectanglePerimeter;rounded=1;container=1;dropTarget=0;swimlaneHead=1;swimlaneBody=1;top=1;noLabel=0;autosize=0;resizeHeight=0;spacing=2;metaEdit=1;resizeWidth=0;arcSize=10;" parent="1" vertex="1">
|
||||
<mxGeometry x="80" y="240" width="160" height="160" as="geometry" />
|
||||
</mxCell>
|
||||
</object>
|
||||
<mxCell id="gjxSdUMfFO3v8k7oyOzM-2" value="" style="shape=tableRow;horizontal=0;swimlaneHead=0;swimlaneBody=0;top=0;left=0;strokeColor=inherit;bottom=0;right=0;dropTarget=0;fontStyle=0;fillColor=none;points=[[0,0.5],[1,0.5]];startSize=0;collapsible=0;recursiveResize=1;expand=0;rounded=0;allowArrows=0;connectable=0;autosize=1;resizeHeight=1;rotatable=0;" parent="gjxSdUMfFO3v8k7oyOzM-1" vertex="1">
|
||||
<mxGeometry y="40" width="160" height="120" as="geometry" />
|
||||
</mxCell>
|
||||
<mxCell id="gjxSdUMfFO3v8k7oyOzM-3" value="Input" style="swimlane;swimlaneHead=0;swimlaneBody=0;fontStyle=0;strokeColor=inherit;connectable=0;fillColor=none;startSize=40;collapsible=0;recursiveResize=1;expand=0;allowArrows=0;autosize=1;rotatable=0;noLabel=1;overflow=hidden;swimlaneLine=0;editable=0;" parent="gjxSdUMfFO3v8k7oyOzM-2" vertex="1">
|
||||
<mxGeometry width="80" height="120" as="geometry">
|
||||
<mxRectangle width="80" height="120" as="alternateBounds" />
|
||||
</mxGeometry>
|
||||
</mxCell>
|
||||
<mxCell id="gjxSdUMfFO3v8k7oyOzM-4" value="Output" style="swimlane;swimlaneHead=0;swimlaneBody=0;fontStyle=0;strokeColor=inherit;connectable=0;fillColor=none;startSize=40;collapsible=0;recursiveResize=1;expand=0;allowArrows=0;autosize=1;rotatable=0;noLabel=1;overflow=hidden;swimlaneLine=0;editable=0;" parent="gjxSdUMfFO3v8k7oyOzM-2" vertex="1">
|
||||
<mxGeometry x="80" width="80" height="120" as="geometry">
|
||||
<mxRectangle width="80" height="120" as="alternateBounds" />
|
||||
</mxGeometry>
|
||||
</mxCell>
|
||||
<object label="out" type="exec" id="gjxSdUMfFO3v8k7oyOzM-5">
|
||||
<mxCell style="rounded=0;whiteSpace=wrap;html=1;fillColor=#dae8fc;strokeColor=#6c8ebf;" parent="gjxSdUMfFO3v8k7oyOzM-4" vertex="1">
|
||||
<mxGeometry x="10" y="10" width="60" height="40" as="geometry" />
|
||||
</mxCell>
|
||||
</object>
|
||||
<object label="flowers" type="data" id="gjxSdUMfFO3v8k7oyOzM-6">
|
||||
<mxCell style="rounded=0;whiteSpace=wrap;html=1;fillColor=#d5e8d4;strokeColor=#82b366;" parent="gjxSdUMfFO3v8k7oyOzM-4" vertex="1">
|
||||
<mxGeometry x="10" y="70" width="60" height="40" as="geometry" />
|
||||
</mxCell>
|
||||
</object>
|
||||
<object label="%name%: %type%" placeholders="1" name="end" type="End" ports_exec_in="["in"]" ports_data_in="[]" id="gjxSdUMfFO3v8k7oyOzM-8">
|
||||
<mxCell style="shape=table;childLayout=tableLayout;startSize=40;collapsible=0;recursiveResize=1;expand=0;fontStyle=1;editable=1;movable=1;resizable=1;rotatable=0;deletable=1;locked=0;connectable=0;allowArrows=0;pointerEvents=0;perimeter=rectanglePerimeter;rounded=1;container=1;dropTarget=0;swimlaneHead=1;swimlaneBody=1;top=1;noLabel=0;autosize=0;resizeHeight=0;spacing=2;metaEdit=1;resizeWidth=0;arcSize=10;" parent="1" vertex="1">
|
||||
<mxGeometry x="740" y="410" width="160" height="100" as="geometry" />
|
||||
</mxCell>
|
||||
</object>
|
||||
<mxCell id="gjxSdUMfFO3v8k7oyOzM-9" value="" style="shape=tableRow;horizontal=0;swimlaneHead=0;swimlaneBody=0;top=0;left=0;strokeColor=inherit;bottom=0;right=0;dropTarget=0;fontStyle=0;fillColor=none;points=[[0,0.5],[1,0.5]];startSize=0;collapsible=0;recursiveResize=1;expand=0;rounded=0;allowArrows=0;connectable=0;autosize=1;resizeHeight=1;rotatable=0;" parent="gjxSdUMfFO3v8k7oyOzM-8" vertex="1">
|
||||
<mxGeometry y="40" width="160" height="60" as="geometry" />
|
||||
</mxCell>
|
||||
<mxCell id="gjxSdUMfFO3v8k7oyOzM-10" value="Input" style="swimlane;swimlaneHead=0;swimlaneBody=0;fontStyle=0;strokeColor=inherit;connectable=0;fillColor=none;startSize=40;collapsible=0;recursiveResize=1;expand=0;allowArrows=0;autosize=1;rotatable=0;noLabel=1;overflow=hidden;swimlaneLine=0;editable=0;" parent="gjxSdUMfFO3v8k7oyOzM-9" vertex="1">
|
||||
<mxGeometry width="80" height="60" as="geometry">
|
||||
<mxRectangle width="80" height="60" as="alternateBounds" />
|
||||
</mxGeometry>
|
||||
</mxCell>
|
||||
<object label="in" type="exec" id="gjxSdUMfFO3v8k7oyOzM-11">
|
||||
<mxCell style="rounded=0;whiteSpace=wrap;html=1;fillColor=#dae8fc;strokeColor=#6c8ebf;" parent="gjxSdUMfFO3v8k7oyOzM-10" vertex="1">
|
||||
<mxGeometry x="10" y="10" width="60" height="40" as="geometry" />
|
||||
</mxCell>
|
||||
</object>
|
||||
<mxCell id="gjxSdUMfFO3v8k7oyOzM-12" value="Output" style="swimlane;swimlaneHead=0;swimlaneBody=0;fontStyle=0;strokeColor=inherit;connectable=0;fillColor=none;startSize=40;collapsible=0;recursiveResize=1;expand=0;allowArrows=0;autosize=1;rotatable=0;noLabel=1;overflow=hidden;swimlaneLine=0;editable=0;" parent="gjxSdUMfFO3v8k7oyOzM-9" vertex="1">
|
||||
<mxGeometry x="80" width="80" height="60" as="geometry">
|
||||
<mxRectangle width="80" height="60" as="alternateBounds" />
|
||||
</mxGeometry>
|
||||
</mxCell>
|
||||
<object label="%name%: %type%" placeholders="1" name="iterate flowers" type="Loop" id="rgPZtlXADXUwMSGqODkz-8">
|
||||
<mxCell style="shape=table;childLayout=tableLayout;startSize=40;collapsible=0;recursiveResize=1;expand=0;fontStyle=1;editable=1;movable=1;resizable=1;rotatable=0;deletable=1;locked=0;connectable=0;allowArrows=0;pointerEvents=0;perimeter=rectanglePerimeter;rounded=1;container=1;dropTarget=0;swimlaneHead=1;swimlaneBody=1;top=1;noLabel=0;autosize=0;resizeHeight=0;spacing=2;metaEdit=1;resizeWidth=0;arcSize=10;" parent="1" vertex="1">
|
||||
<mxGeometry x="500" y="240" width="160" height="200" as="geometry" />
|
||||
</mxCell>
|
||||
</object>
|
||||
<mxCell id="rgPZtlXADXUwMSGqODkz-9" value="" style="shape=tableRow;horizontal=0;swimlaneHead=0;swimlaneBody=0;top=0;left=0;strokeColor=inherit;bottom=0;right=0;dropTarget=0;fontStyle=0;fillColor=none;points=[[0,0.5],[1,0.5]];startSize=0;collapsible=0;recursiveResize=1;expand=0;rounded=0;allowArrows=0;connectable=0;autosize=1;resizeHeight=1;rotatable=0;" parent="rgPZtlXADXUwMSGqODkz-8" vertex="1">
|
||||
<mxGeometry y="40" width="160" height="160" as="geometry" />
|
||||
</mxCell>
|
||||
<mxCell id="rgPZtlXADXUwMSGqODkz-10" value="Input" style="swimlane;swimlaneHead=0;swimlaneBody=0;fontStyle=0;strokeColor=inherit;connectable=0;fillColor=none;startSize=60;collapsible=0;recursiveResize=1;expand=0;allowArrows=0;autosize=1;rotatable=0;noLabel=1;overflow=hidden;swimlaneLine=0;editable=0;" parent="rgPZtlXADXUwMSGqODkz-9" vertex="1">
|
||||
<mxGeometry width="80" height="160" as="geometry">
|
||||
<mxRectangle width="80" height="160" as="alternateBounds" />
|
||||
</mxGeometry>
|
||||
</mxCell>
|
||||
<object label="in" type="data" id="rgPZtlXADXUwMSGqODkz-11">
|
||||
<mxCell style="rounded=0;whiteSpace=wrap;html=1;fillColor=#d5e8d4;strokeColor=#82b366;" parent="rgPZtlXADXUwMSGqODkz-10" vertex="1">
|
||||
<mxGeometry x="10" y="110" width="60" height="40" as="geometry" />
|
||||
</mxCell>
|
||||
</object>
|
||||
<object label="in" type="exec" id="rgPZtlXADXUwMSGqODkz-12">
|
||||
<mxCell style="rounded=0;whiteSpace=wrap;html=1;fillColor=#dae8fc;strokeColor=#6c8ebf;" parent="rgPZtlXADXUwMSGqODkz-10" vertex="1">
|
||||
<mxGeometry x="10" y="10" width="60" height="40" as="geometry" />
|
||||
</mxCell>
|
||||
</object>
|
||||
<mxCell id="rgPZtlXADXUwMSGqODkz-13" value="Output" style="swimlane;swimlaneHead=0;swimlaneBody=0;fontStyle=0;strokeColor=inherit;connectable=0;fillColor=none;startSize=40;collapsible=0;recursiveResize=1;expand=0;allowArrows=0;autosize=1;rotatable=0;noLabel=1;overflow=hidden;swimlaneLine=0;editable=0;" parent="rgPZtlXADXUwMSGqODkz-9" vertex="1">
|
||||
<mxGeometry x="80" width="80" height="160" as="geometry">
|
||||
<mxRectangle width="80" height="160" as="alternateBounds" />
|
||||
</mxGeometry>
|
||||
</mxCell>
|
||||
<object label="out" type="data" id="rgPZtlXADXUwMSGqODkz-14">
|
||||
<mxCell style="rounded=0;whiteSpace=wrap;html=1;fillColor=#d5e8d4;strokeColor=#82b366;" parent="rgPZtlXADXUwMSGqODkz-13" vertex="1">
|
||||
<mxGeometry x="10" y="110" width="60" height="40" as="geometry" />
|
||||
</mxCell>
|
||||
</object>
|
||||
<object label="it" type="exec" id="rgPZtlXADXUwMSGqODkz-15">
|
||||
<mxCell style="rounded=0;whiteSpace=wrap;html=1;fillColor=#dae8fc;strokeColor=#6c8ebf;" parent="rgPZtlXADXUwMSGqODkz-13" vertex="1">
|
||||
<mxGeometry x="10" y="10" width="60" height="40" as="geometry" />
|
||||
</mxCell>
|
||||
</object>
|
||||
<object label="out" type="exec" id="rgPZtlXADXUwMSGqODkz-16">
|
||||
<mxCell style="rounded=0;whiteSpace=wrap;html=1;fillColor=#dae8fc;strokeColor=#6c8ebf;" parent="rgPZtlXADXUwMSGqODkz-13" vertex="1">
|
||||
<mxGeometry x="10" y="60" width="60" height="40" as="geometry" />
|
||||
</mxCell>
|
||||
</object>
|
||||
<object label="%name%: %type%
%file%" placeholders="1" name="create new pot" type="Rewrite" file="rules/create_pot.od" id="rgPZtlXADXUwMSGqODkz-17">
|
||||
<mxCell style="shape=table;childLayout=tableLayout;startSize=40;collapsible=0;recursiveResize=1;expand=0;fontStyle=1;editable=1;movable=1;resizable=1;rotatable=0;deletable=1;locked=0;connectable=0;allowArrows=0;pointerEvents=0;perimeter=rectanglePerimeter;rounded=1;container=1;dropTarget=0;swimlaneHead=1;swimlaneBody=1;top=1;noLabel=0;autosize=0;resizeHeight=0;spacing=2;metaEdit=1;resizeWidth=0;arcSize=10;" parent="1" vertex="1">
|
||||
<mxGeometry x="280" y="240.0000000000001" width="160" height="150" as="geometry" />
|
||||
</mxCell>
|
||||
</object>
|
||||
<mxCell id="rgPZtlXADXUwMSGqODkz-18" value="" style="shape=tableRow;horizontal=0;swimlaneHead=0;swimlaneBody=0;top=0;left=0;strokeColor=inherit;bottom=0;right=0;dropTarget=0;fontStyle=0;fillColor=none;points=[[0,0.5],[1,0.5]];startSize=0;collapsible=0;recursiveResize=1;expand=0;rounded=0;allowArrows=0;connectable=0;autosize=1;resizeHeight=1;rotatable=0;" parent="rgPZtlXADXUwMSGqODkz-17" vertex="1">
|
||||
<mxGeometry y="40" width="160" height="110" as="geometry" />
|
||||
</mxCell>
|
||||
<mxCell id="rgPZtlXADXUwMSGqODkz-19" value="Input" style="swimlane;swimlaneHead=0;swimlaneBody=0;fontStyle=0;strokeColor=inherit;connectable=0;fillColor=none;startSize=60;collapsible=0;recursiveResize=1;expand=0;allowArrows=0;autosize=1;rotatable=0;noLabel=1;overflow=hidden;swimlaneLine=0;editable=0;" parent="rgPZtlXADXUwMSGqODkz-18" vertex="1">
|
||||
<mxGeometry width="80" height="110" as="geometry">
|
||||
<mxRectangle width="80" height="110" as="alternateBounds" />
|
||||
</mxGeometry>
|
||||
</mxCell>
|
||||
<object label="in" type="exec" id="rgPZtlXADXUwMSGqODkz-20">
|
||||
<mxCell style="rounded=0;whiteSpace=wrap;html=1;fillColor=#dae8fc;strokeColor=#6c8ebf;" parent="rgPZtlXADXUwMSGqODkz-19" vertex="1">
|
||||
<mxGeometry x="10" y="10" width="60" height="40" as="geometry" />
|
||||
</mxCell>
|
||||
</object>
|
||||
<mxCell id="rgPZtlXADXUwMSGqODkz-21" value="Output" style="swimlane;swimlaneHead=0;swimlaneBody=0;fontStyle=0;strokeColor=inherit;connectable=0;fillColor=none;startSize=40;collapsible=0;recursiveResize=1;expand=0;allowArrows=0;autosize=1;rotatable=0;noLabel=1;overflow=hidden;swimlaneLine=0;editable=0;" parent="rgPZtlXADXUwMSGqODkz-18" vertex="1">
|
||||
<mxGeometry x="80" width="80" height="110" as="geometry">
|
||||
<mxRectangle width="80" height="110" as="alternateBounds" />
|
||||
</mxGeometry>
|
||||
</mxCell>
|
||||
<object label="out" type="exec" id="rgPZtlXADXUwMSGqODkz-22">
|
||||
<mxCell style="rounded=0;whiteSpace=wrap;html=1;fillColor=#dae8fc;strokeColor=#6c8ebf;" parent="rgPZtlXADXUwMSGqODkz-21" vertex="1">
|
||||
<mxGeometry x="10" y="10" width="60" height="40" as="geometry" />
|
||||
</mxCell>
|
||||
</object>
|
||||
<object label="in" type="data" id="rgPZtlXADXUwMSGqODkz-23">
|
||||
<mxCell style="rounded=0;whiteSpace=wrap;html=1;fillColor=#d5e8d4;strokeColor=#82b366;" parent="rgPZtlXADXUwMSGqODkz-21" vertex="1">
|
||||
<mxGeometry x="-70" y="60" width="60" height="40" as="geometry" />
|
||||
</mxCell>
|
||||
</object>
|
||||
<object label="out" type="data" id="rgPZtlXADXUwMSGqODkz-24">
|
||||
<mxCell style="rounded=0;whiteSpace=wrap;html=1;fillColor=#d5e8d4;strokeColor=#82b366;" parent="rgPZtlXADXUwMSGqODkz-21" vertex="1">
|
||||
<mxGeometry x="10" y="60" width="60" height="40" as="geometry" />
|
||||
</mxCell>
|
||||
</object>
|
||||
<object label="%name%: %type%" placeholders="1" name="remove cracked status
" type="Modify" rename="{"pot": "new_pot"}" delete="["pot_RAM_cracked", "pot.RAM_cracked"]" id="rgPZtlXADXUwMSGqODkz-32">
|
||||
<mxCell style="shape=table;childLayout=tableLayout;startSize=40;collapsible=0;recursiveResize=1;expand=0;fontStyle=1;editable=1;movable=1;resizable=1;rotatable=0;deletable=1;locked=0;connectable=0;allowArrows=0;pointerEvents=0;perimeter=rectanglePerimeter;rounded=1;container=1;dropTarget=0;swimlaneHead=1;swimlaneBody=1;top=1;noLabel=0;autosize=0;resizeHeight=0;spacing=2;metaEdit=1;resizeWidth=0;arcSize=10;" parent="1" vertex="1">
|
||||
<mxGeometry x="280" y="450" width="160" height="100" as="geometry" />
|
||||
</mxCell>
|
||||
</object>
|
||||
<mxCell id="rgPZtlXADXUwMSGqODkz-33" value="" style="shape=tableRow;horizontal=0;swimlaneHead=0;swimlaneBody=0;top=0;left=0;strokeColor=inherit;bottom=0;right=0;dropTarget=0;fontStyle=0;fillColor=none;points=[[0,0.5],[1,0.5]];startSize=0;collapsible=0;recursiveResize=1;expand=0;rounded=0;allowArrows=0;connectable=0;autosize=1;resizeHeight=1;rotatable=0;" parent="rgPZtlXADXUwMSGqODkz-32" vertex="1">
|
||||
<mxGeometry y="40" width="160" height="60" as="geometry" />
|
||||
</mxCell>
|
||||
<mxCell id="rgPZtlXADXUwMSGqODkz-34" value="Input" style="swimlane;swimlaneHead=0;swimlaneBody=0;fontStyle=0;strokeColor=inherit;connectable=0;fillColor=none;startSize=60;collapsible=0;recursiveResize=1;expand=0;allowArrows=0;autosize=1;rotatable=0;noLabel=1;overflow=hidden;swimlaneLine=0;editable=0;" parent="rgPZtlXADXUwMSGqODkz-33" vertex="1">
|
||||
<mxGeometry width="80" height="60" as="geometry">
|
||||
<mxRectangle width="80" height="60" as="alternateBounds" />
|
||||
</mxGeometry>
|
||||
</mxCell>
|
||||
<object label="in" type="data" id="rgPZtlXADXUwMSGqODkz-35">
|
||||
<mxCell style="rounded=0;whiteSpace=wrap;html=1;fillColor=#d5e8d4;strokeColor=#82b366;" parent="rgPZtlXADXUwMSGqODkz-34" vertex="1">
|
||||
<mxGeometry x="10" y="10" width="60" height="40" as="geometry" />
|
||||
</mxCell>
|
||||
</object>
|
||||
<mxCell id="rgPZtlXADXUwMSGqODkz-36" value="Output" style="swimlane;swimlaneHead=0;swimlaneBody=0;fontStyle=0;strokeColor=inherit;connectable=0;fillColor=none;startSize=40;collapsible=0;recursiveResize=1;expand=0;allowArrows=0;autosize=1;rotatable=0;noLabel=1;overflow=hidden;swimlaneLine=0;editable=0;" parent="rgPZtlXADXUwMSGqODkz-33" vertex="1">
|
||||
<mxGeometry x="80" width="80" height="60" as="geometry">
|
||||
<mxRectangle width="80" height="60" as="alternateBounds" />
|
||||
</mxGeometry>
|
||||
</mxCell>
|
||||
<object label="out" type="data" id="rgPZtlXADXUwMSGqODkz-37">
|
||||
<mxCell style="rounded=0;whiteSpace=wrap;html=1;fillColor=#d5e8d4;strokeColor=#82b366;" parent="rgPZtlXADXUwMSGqODkz-36" vertex="1">
|
||||
<mxGeometry x="10" y="10" width="60" height="40" as="geometry" />
|
||||
</mxCell>
|
||||
</object>
|
||||
<mxCell id="rgPZtlXADXUwMSGqODkz-38" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;" parent="1" source="gjxSdUMfFO3v8k7oyOzM-5" target="rgPZtlXADXUwMSGqODkz-20" edge="1">
|
||||
<mxGeometry relative="1" as="geometry" />
|
||||
</mxCell>
|
||||
<mxCell id="rgPZtlXADXUwMSGqODkz-40" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;" parent="1" source="rgPZtlXADXUwMSGqODkz-24" target="rgPZtlXADXUwMSGqODkz-35" edge="1">
|
||||
<mxGeometry relative="1" as="geometry">
|
||||
<Array as="points">
|
||||
<mxPoint x="460" y="360" />
|
||||
<mxPoint x="460" y="430" />
|
||||
<mxPoint x="260" y="430" />
|
||||
<mxPoint x="260" y="520" />
|
||||
</Array>
|
||||
</mxGeometry>
|
||||
</mxCell>
|
||||
<mxCell id="rgPZtlXADXUwMSGqODkz-42" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;jumpStyle=gap;jumpSize=10;" parent="1" source="gjxSdUMfFO3v8k7oyOzM-6" target="rgPZtlXADXUwMSGqODkz-11" edge="1">
|
||||
<mxGeometry relative="1" as="geometry">
|
||||
<Array as="points">
|
||||
<mxPoint x="260" y="370" />
|
||||
<mxPoint x="260" y="410" />
|
||||
</Array>
|
||||
</mxGeometry>
|
||||
</mxCell>
|
||||
<object label="%name%: %type%" placeholders="1" name="combine new pot and flower
" type="Merge" ports_data_in="["flower", "new_pot"]" id="rgPZtlXADXUwMSGqODkz-43">
|
||||
<mxCell style="shape=table;childLayout=tableLayout;startSize=40;collapsible=0;recursiveResize=1;expand=0;fontStyle=1;editable=1;movable=1;resizable=1;rotatable=0;deletable=1;locked=0;connectable=0;allowArrows=0;pointerEvents=0;perimeter=rectanglePerimeter;rounded=1;container=1;dropTarget=0;swimlaneHead=1;swimlaneBody=1;top=1;noLabel=0;autosize=0;resizeHeight=0;spacing=2;metaEdit=1;resizeWidth=0;arcSize=10;" parent="1" vertex="1">
|
||||
<mxGeometry x="500" y="480" width="160" height="150" as="geometry" />
|
||||
</mxCell>
|
||||
</object>
|
||||
<mxCell id="rgPZtlXADXUwMSGqODkz-44" value="" style="shape=tableRow;horizontal=0;swimlaneHead=0;swimlaneBody=0;top=0;left=0;strokeColor=inherit;bottom=0;right=0;dropTarget=0;fontStyle=0;fillColor=none;points=[[0,0.5],[1,0.5]];startSize=0;collapsible=0;recursiveResize=1;expand=0;rounded=0;allowArrows=0;connectable=0;autosize=1;resizeHeight=1;rotatable=0;" parent="rgPZtlXADXUwMSGqODkz-43" vertex="1">
|
||||
<mxGeometry y="40" width="160" height="110" as="geometry" />
|
||||
</mxCell>
|
||||
<mxCell id="rgPZtlXADXUwMSGqODkz-45" value="Input" style="swimlane;swimlaneHead=0;swimlaneBody=0;fontStyle=0;strokeColor=inherit;connectable=0;fillColor=none;startSize=60;collapsible=0;recursiveResize=1;expand=0;allowArrows=0;autosize=1;rotatable=0;noLabel=1;overflow=hidden;swimlaneLine=0;editable=0;" parent="rgPZtlXADXUwMSGqODkz-44" vertex="1">
|
||||
<mxGeometry width="80" height="110" as="geometry">
|
||||
<mxRectangle width="80" height="110" as="alternateBounds" />
|
||||
</mxGeometry>
|
||||
</mxCell>
|
||||
<object label="flower" type="data" id="rgPZtlXADXUwMSGqODkz-46">
|
||||
<mxCell style="rounded=0;whiteSpace=wrap;html=1;fillColor=#d5e8d4;strokeColor=#82b366;" parent="rgPZtlXADXUwMSGqODkz-45" vertex="1">
|
||||
<mxGeometry x="10" y="10" width="60" height="40" as="geometry" />
|
||||
</mxCell>
|
||||
</object>
|
||||
<object label="new_pot" type="data" id="rgPZtlXADXUwMSGqODkz-47">
|
||||
<mxCell style="rounded=0;whiteSpace=wrap;html=1;fillColor=#d5e8d4;strokeColor=#82b366;" parent="rgPZtlXADXUwMSGqODkz-45" vertex="1">
|
||||
<mxGeometry x="10" y="60" width="60" height="40" as="geometry" />
|
||||
</mxCell>
|
||||
</object>
|
||||
<mxCell id="rgPZtlXADXUwMSGqODkz-48" value="Output" style="swimlane;swimlaneHead=0;swimlaneBody=0;fontStyle=0;strokeColor=inherit;connectable=0;fillColor=none;startSize=40;collapsible=0;recursiveResize=1;expand=0;allowArrows=0;autosize=1;rotatable=0;noLabel=1;overflow=hidden;swimlaneLine=0;editable=0;" parent="rgPZtlXADXUwMSGqODkz-44" vertex="1">
|
||||
<mxGeometry x="80" width="80" height="110" as="geometry">
|
||||
<mxRectangle width="80" height="110" as="alternateBounds" />
|
||||
</mxGeometry>
|
||||
</mxCell>
|
||||
<object label="out" type="data" id="rgPZtlXADXUwMSGqODkz-49">
|
||||
<mxCell style="rounded=0;whiteSpace=wrap;html=1;fillColor=#d5e8d4;strokeColor=#82b366;" parent="rgPZtlXADXUwMSGqODkz-48" vertex="1">
|
||||
<mxGeometry x="10" y="10" width="60" height="40" as="geometry" />
|
||||
</mxCell>
|
||||
</object>
|
||||
<mxCell id="rgPZtlXADXUwMSGqODkz-50" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;" parent="1" source="rgPZtlXADXUwMSGqODkz-14" target="rgPZtlXADXUwMSGqODkz-46" edge="1">
|
||||
<mxGeometry relative="1" as="geometry">
|
||||
<Array as="points">
|
||||
<mxPoint x="680" y="410" />
|
||||
<mxPoint x="680" y="460" />
|
||||
<mxPoint x="480" y="460" />
|
||||
<mxPoint x="480" y="550" />
|
||||
</Array>
|
||||
</mxGeometry>
|
||||
</mxCell>
|
||||
<mxCell id="rgPZtlXADXUwMSGqODkz-60" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;" parent="1" source="rgPZtlXADXUwMSGqODkz-37" target="rgPZtlXADXUwMSGqODkz-47" edge="1">
|
||||
<mxGeometry relative="1" as="geometry">
|
||||
<Array as="points">
|
||||
<mxPoint x="460" y="520" />
|
||||
<mxPoint x="460" y="600" />
|
||||
</Array>
|
||||
</mxGeometry>
|
||||
</mxCell>
|
||||
<object label="%name%: %type%
%file%" placeholders="1" name="move flower to new pot
" type="Rewrite" file="rules/repot_flower_in_pot.od" id="rggt9Ju99cdMwxSiOdaC-1">
|
||||
<mxCell style="shape=table;childLayout=tableLayout;startSize=40;collapsible=0;recursiveResize=1;expand=0;fontStyle=1;editable=1;movable=1;resizable=1;rotatable=0;deletable=1;locked=0;connectable=0;allowArrows=0;pointerEvents=0;perimeter=rectanglePerimeter;rounded=1;container=1;dropTarget=0;swimlaneHead=1;swimlaneBody=1;top=1;noLabel=0;autosize=0;resizeHeight=0;spacing=2;metaEdit=1;resizeWidth=0;arcSize=10;" parent="1" vertex="1">
|
||||
<mxGeometry x="740" y="240.0000000000001" width="160" height="150" as="geometry" />
|
||||
</mxCell>
|
||||
</object>
|
||||
<mxCell id="rggt9Ju99cdMwxSiOdaC-2" value="" style="shape=tableRow;horizontal=0;swimlaneHead=0;swimlaneBody=0;top=0;left=0;strokeColor=inherit;bottom=0;right=0;dropTarget=0;fontStyle=0;fillColor=none;points=[[0,0.5],[1,0.5]];startSize=0;collapsible=0;recursiveResize=1;expand=0;rounded=0;allowArrows=0;connectable=0;autosize=1;resizeHeight=1;rotatable=0;" parent="rggt9Ju99cdMwxSiOdaC-1" vertex="1">
|
||||
<mxGeometry y="40" width="160" height="110" as="geometry" />
|
||||
</mxCell>
|
||||
<mxCell id="rggt9Ju99cdMwxSiOdaC-3" value="Input" style="swimlane;swimlaneHead=0;swimlaneBody=0;fontStyle=0;strokeColor=inherit;connectable=0;fillColor=none;startSize=60;collapsible=0;recursiveResize=1;expand=0;allowArrows=0;autosize=1;rotatable=0;noLabel=1;overflow=hidden;swimlaneLine=0;editable=0;" parent="rggt9Ju99cdMwxSiOdaC-2" vertex="1">
|
||||
<mxGeometry width="80" height="110" as="geometry">
|
||||
<mxRectangle width="80" height="110" as="alternateBounds" />
|
||||
</mxGeometry>
|
||||
</mxCell>
|
||||
<object label="in" type="exec" id="rggt9Ju99cdMwxSiOdaC-4">
|
||||
<mxCell style="rounded=0;whiteSpace=wrap;html=1;fillColor=#dae8fc;strokeColor=#6c8ebf;" parent="rggt9Ju99cdMwxSiOdaC-3" vertex="1">
|
||||
<mxGeometry x="10" y="10" width="60" height="40" as="geometry" />
|
||||
</mxCell>
|
||||
</object>
|
||||
<mxCell id="rggt9Ju99cdMwxSiOdaC-5" value="Output" style="swimlane;swimlaneHead=0;swimlaneBody=0;fontStyle=0;strokeColor=inherit;connectable=0;fillColor=none;startSize=40;collapsible=0;recursiveResize=1;expand=0;allowArrows=0;autosize=1;rotatable=0;noLabel=1;overflow=hidden;swimlaneLine=0;editable=0;" parent="rggt9Ju99cdMwxSiOdaC-2" vertex="1">
|
||||
<mxGeometry x="80" width="80" height="110" as="geometry">
|
||||
<mxRectangle width="80" height="110" as="alternateBounds" />
|
||||
</mxGeometry>
|
||||
</mxCell>
|
||||
<object label="out" type="exec" id="rggt9Ju99cdMwxSiOdaC-6">
|
||||
<mxCell style="rounded=0;whiteSpace=wrap;html=1;fillColor=#dae8fc;strokeColor=#6c8ebf;" parent="rggt9Ju99cdMwxSiOdaC-5" vertex="1">
|
||||
<mxGeometry x="10" y="10" width="60" height="40" as="geometry" />
|
||||
</mxCell>
|
||||
</object>
|
||||
<object label="in" type="data" id="rggt9Ju99cdMwxSiOdaC-7">
|
||||
<mxCell style="rounded=0;whiteSpace=wrap;html=1;fillColor=#d5e8d4;strokeColor=#82b366;" parent="rggt9Ju99cdMwxSiOdaC-5" vertex="1">
|
||||
<mxGeometry x="-70" y="60" width="60" height="40" as="geometry" />
|
||||
</mxCell>
|
||||
</object>
|
||||
<object label="out" type="data" id="rggt9Ju99cdMwxSiOdaC-8">
|
||||
<mxCell style="rounded=0;whiteSpace=wrap;html=1;fillColor=#d5e8d4;strokeColor=#82b366;" parent="rggt9Ju99cdMwxSiOdaC-5" vertex="1">
|
||||
<mxGeometry x="10" y="60" width="60" height="40" as="geometry" />
|
||||
</mxCell>
|
||||
</object>
|
||||
<mxCell id="rggt9Ju99cdMwxSiOdaC-9" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;" parent="1" source="rgPZtlXADXUwMSGqODkz-15" target="rggt9Ju99cdMwxSiOdaC-4" edge="1">
|
||||
<mxGeometry relative="1" as="geometry" />
|
||||
</mxCell>
|
||||
<mxCell id="rggt9Ju99cdMwxSiOdaC-10" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;jumpStyle=gap;jumpSize=10;" parent="1" source="rgPZtlXADXUwMSGqODkz-49" target="rggt9Ju99cdMwxSiOdaC-7" edge="1">
|
||||
<mxGeometry relative="1" as="geometry">
|
||||
<Array as="points">
|
||||
<mxPoint x="720" y="550" />
|
||||
<mxPoint x="720" y="360" />
|
||||
</Array>
|
||||
</mxGeometry>
|
||||
</mxCell>
|
||||
<mxCell id="rggt9Ju99cdMwxSiOdaC-11" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;" parent="1" source="rggt9Ju99cdMwxSiOdaC-6" target="rgPZtlXADXUwMSGqODkz-12" edge="1">
|
||||
<mxGeometry relative="1" as="geometry">
|
||||
<Array as="points">
|
||||
<mxPoint x="920" y="310" />
|
||||
<mxPoint x="920" y="220" />
|
||||
<mxPoint x="480" y="220" />
|
||||
<mxPoint x="480" y="310" />
|
||||
</Array>
|
||||
</mxGeometry>
|
||||
</mxCell>
|
||||
<mxCell id="rggt9Ju99cdMwxSiOdaC-12" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;jumpStyle=gap;jumpSize=10;" parent="1" source="rgPZtlXADXUwMSGqODkz-16" target="gjxSdUMfFO3v8k7oyOzM-11" edge="1">
|
||||
<mxGeometry relative="1" as="geometry">
|
||||
<Array as="points">
|
||||
<mxPoint x="700" y="360" />
|
||||
<mxPoint x="700" y="480" />
|
||||
</Array>
|
||||
</mxGeometry>
|
||||
</mxCell>
|
||||
<mxCell id="nF2FpsghIUv3jzvNKQr9-1" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;" edge="1" parent="1" source="rgPZtlXADXUwMSGqODkz-22" target="rgPZtlXADXUwMSGqODkz-12">
|
||||
<mxGeometry relative="1" as="geometry" />
|
||||
</mxCell>
|
||||
</root>
|
||||
</mxGraphModel>
|
||||
</diagram>
|
||||
</mxfile>
|
||||
0
examples/geraniums/schedules/schedule.od
Normal file
0
examples/geraniums/schedules/schedule.od
Normal file
Loading…
Add table
Add a link
Reference in a new issue