--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/exemples/svghmi_foreach/py_ext_0@py_ext/pyfile.xml Fri Oct 11 10:34:15 2024 +0200
@@ -0,0 +1,99 @@
+<?xml version='1.0' encoding='utf-8'?>
+<PyFile xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
+ <variables>
+ <variable name="AlarmNotify" type="HMI_INT"/>
+ <variable name="SendAlarm" type="HMI_INT" onchange="TriggerAlarm"/>
+ <variable name="AlarmText" type="HMI_STRING" initial="'POS'"/>
+ <variable name="AlarmStatus" type="HMI_STRING" initial="'alarm'"/>
+ </variables>
+ <globals>
+ <xhtml:p><![CDATA[
+from twisted.web.resource import Resource
+import json, time, random, collections
+
+Alarms = []
+AlarmIndex = {}
+lastid = 0
+
+def TriggerAlarm(changed_var_name):
+ global Alarms, lastid
+ new_entry = [time.time(), PLCGlobals.AlarmText, PLCGlobals.AlarmStatus, lastid]
+ Alarms.append(new_entry)
+ AlarmIndex[lastid] = new_entry
+ lastid = lastid + 1
+ PLCGlobals.AlarmNotify = random.randint(0, 4294967296)
+
+class AlarmJsonResource(Resource):
+ def render_GET(self, request):
+ return ''
+
+ def render_POST(self, request):
+ newstr = request.content.getvalue()
+ newdata = json.loads(newstr)
+ args = newdata[u'args']
+ range_feedback = newdata[u'range']
+ slider_position = newdata[u'position']
+ visible = newdata[u'visible']
+ extra = newdata[u'extra']
+ options = newdata[u'options']
+
+ if len(options) == 1 :
+ action, = options
+ if action == "action_reset":
+ del Alarms[:]
+ AlarmIndex.clear()
+ elif len(options) == 2 :
+ action, alarmid = options
+ if action == "onClick[acknowledge]":
+ AlarmIndex[int(alarmid)][2] = "ack"
+
+ answer = self.renderTable(range_feedback, slider_position, visible, extra)
+ janswer = json.dumps(answer)
+ return janswer
+
+ def renderTable(self, old_range, old_position, visible, extra):
+ if len(extra) > 0 and extra[0] != "":
+ fAlarms = [alrm for alrm in Alarms if alrm[1].find(extra[0])!=-1]
+ else:
+ fAlarms = Alarms[:]
+ fAlarms.reverse()
+ new_range = len(fAlarms)
+ delta = new_range - visible
+ new_position = 0 if delta <= 0 else delta if old_position > delta else old_position
+ new_visible = new_range if delta <= 0 else visible
+
+ visible_alarms = []
+ for ts, text, status, alarmid in fAlarms[new_position:new_position + new_visible]:
+ visible_alarms.append({
+ "time": time.ctime(ts),
+ "text": text, # TODO translate text
+ "status": status,
+ "alarmid": alarmid
+ })
+
+ return new_range, new_position, visible_alarms
+
+
+]]></xhtml:p>
+ </globals>
+ <init>
+ <xhtml:p><![CDATA[
+]]></xhtml:p>
+ </init>
+ <cleanup>
+ <xhtml:p><![CDATA[
+]]></xhtml:p>
+ </cleanup>
+ <start>
+ <xhtml:p><![CDATA[
+
+AddPathToSVGHMIServers("alarms", AlarmJsonResource)
+
+
+]]></xhtml:p>
+ </start>
+ <stop>
+ <xhtml:p><![CDATA[
+]]></xhtml:p>
+ </stop>
+</PyFile>
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/exemples/svghmi_foreach/svghmi_0@svghmi/svghmi.svg Fri Oct 11 10:34:15 2024 +0200
@@ -0,0 +1,1241 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ inkscape:version="0.92.5 (2060ec1f9f, 2020-04-08)"
+ sodipodi:docname="svghmi.svg"
+ id="hmi0"
+ version="1.1"
+ viewBox="0 0 1920 1080"
+ height="1080"
+ width="1920">
+ <metadata
+ id="metadata4542">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title />
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <defs
+ id="defs2" />
+ <sodipodi:namedview
+ id="base"
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1.0"
+ inkscape:pageopacity="0"
+ inkscape:pageshadow="2"
+ inkscape:document-units="px"
+ inkscape:current-layer="hmi0"
+ showgrid="false"
+ units="px"
+ inkscape:zoom="0.20046202"
+ inkscape:cx="-334.3572"
+ inkscape:cy="-700.15882"
+ inkscape:window-width="1850"
+ inkscape:window-height="1016"
+ inkscape:window-x="70"
+ inkscape:window-y="27"
+ inkscape:window-maximized="1"
+ showguides="true"
+ inkscape:guide-bbox="true"
+ inkscape:snap-global="true"
+ inkscape:snap-bbox="true"
+ inkscape:bbox-nodes="true"
+ fit-margin-top="0"
+ fit-margin-left="0"
+ fit-margin-right="0"
+ fit-margin-bottom="0" />
+ <use
+ x="0"
+ y="0"
+ xlink:href="#g7994"
+ id="use7996"
+ transform="translate(0,1220)"
+ width="100%"
+ height="100%"
+ inkscape:label="HMI:Page:ForEach1@/PUMP0" />
+ <g
+ style="stroke-width:2"
+ inkscape:label="HMI:Input@/PUMP0/STRIN"
+ id="g1442"
+ transform="matrix(0.5,0,0,0.5,-1416.8035,1789.2488)">
+ <text
+ xml:space="preserve"
+ style="font-style:normal;font-weight:normal;font-size:160px;line-height:125%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:2px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ x="136.32812"
+ y="218.24219"
+ id="text1398"
+ inkscape:label="value"><tspan
+ sodipodi:role="line"
+ id="tspan1396"
+ x="136.32812"
+ y="218.24219"
+ style="fill:#000000;stroke-width:2px">8888</tspan></text>
+ <rect
+ inkscape:label="edit"
+ onclick=""
+ y="95.40741"
+ x="139.85185"
+ height="128"
+ width="407.7037"
+ id="rect1400"
+ style="color:#000000;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:0;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;vector-effect:none;fill:#ff00ff;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:10;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate" />
+ <g
+ style="stroke-width:2"
+ id="g1408"
+ inkscape:label="+"dhu""
+ transform="translate(-412.63122,172.413)">
+ <path
+ inkscape:connector-curvature="0"
+ id="path1402"
+ d="m 792.86468,143.60768 -80.62929,0.60214 -0.60215,-80.629285 80.6293,-0.60214 z"
+ inkscape:transform-center-y="-14.956361"
+ style="color:#000000;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;vector-effect:none;fill:#e6e6e6;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:10;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate" />
+ <text
+ id="text1406"
+ y="111.05016"
+ x="733.58197"
+ style="font-style:normal;font-weight:normal;font-size:20px;line-height:125%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ xml:space="preserve"><tspan
+ style="stroke-width:1px"
+ y="111.05016"
+ x="733.58197"
+ id="tspan1404"
+ sodipodi:role="line">dhu</tspan></text>
+ </g>
+ <g
+ id="g18075"
+ inkscape:label="="plop""
+ transform="translate(5.9838208)">
+ <path
+ style="color:#000000;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;vector-effect:none;fill:#e6e6e6;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:10;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate"
+ inkscape:transform-center-y="-14.956361"
+ d="m 279.14413,316.02068 -80.6292,0.60214 -0.6022,-80.62929 80.6293,-0.60214 z"
+ id="path1402-7"
+ inkscape:connector-curvature="0" />
+ <text
+ xml:space="preserve"
+ style="font-style:normal;font-weight:normal;font-size:20px;line-height:125%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ x="216.5753"
+ y="281.52469"
+ id="text1414"><tspan
+ sodipodi:role="line"
+ id="tspan1412"
+ x="216.5753"
+ y="281.52469"
+ style="stroke-width:1px">plop</tspan></text>
+ </g>
+ <g
+ id="g18068"
+ inkscape:label="="mhoo""
+ transform="translate(6.203125e-5,1.93848)">
+ <path
+ style="color:#000000;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;vector-effect:none;fill:#e6e6e6;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:10;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate"
+ inkscape:transform-center-y="-14.956361"
+ d="m 190.02242,314.0822 -80.6292,0.60214 -0.6022,-80.62929 80.6293,-0.60214 z"
+ id="path1402-6"
+ inkscape:connector-curvature="0" />
+ <text
+ id="text1422"
+ y="281.52469"
+ x="120.72997"
+ style="font-style:normal;font-weight:normal;font-size:20px;line-height:125%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ xml:space="preserve"><tspan
+ style="stroke-width:1px"
+ y="281.52469"
+ x="120.72997"
+ id="tspan1420"
+ sodipodi:role="line">mhoo</tspan></text>
+ </g>
+ <g
+ id="g18061"
+ inkscape:label="="yodl""
+ transform="translate(3.6703125e-4)">
+ <path
+ style="color:#000000;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;vector-effect:none;fill:#e6e6e6;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:10;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate"
+ inkscape:transform-center-y="-14.956361"
+ d="m 570.44399,316.02068 -80.6292,0.60214 -0.6022,-80.62929 80.6293,-0.60214 z"
+ id="path1402-69"
+ inkscape:connector-curvature="0" />
+ <text
+ id="text1430"
+ y="281.52469"
+ x="509.30582"
+ style="font-style:normal;font-weight:normal;font-size:20px;line-height:125%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ xml:space="preserve"><tspan
+ style="stroke-width:1px"
+ y="281.52469"
+ x="509.30582"
+ id="tspan1428"
+ sodipodi:role="line">yodl</tspan></text>
+ </g>
+ <g
+ id="g18054"
+ inkscape:label="="mhe""
+ transform="translate(-14.078982,1.93848)">
+ <path
+ style="color:#000000;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;vector-effect:none;fill:#e6e6e6;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:10;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate"
+ inkscape:transform-center-y="-14.956361"
+ d="m 489.41787,314.0822 -80.6292,0.60214 -0.6022,-80.62929 80.6293,-0.60214 z"
+ id="path1402-5"
+ inkscape:connector-curvature="0" />
+ <text
+ xml:space="preserve"
+ style="font-style:normal;font-weight:normal;font-size:20px;line-height:125%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ x="426.19473"
+ y="281.52469"
+ id="text1438"><tspan
+ sodipodi:role="line"
+ id="tspan1436"
+ x="426.19473"
+ y="281.52469"
+ style="stroke-width:1px">mhe</tspan></text>
+ </g>
+ </g>
+ <text
+ inkscape:label="HMI:Display@/PUMP0/STROUT"
+ id="text1446"
+ y="1896.3275"
+ x="-1035.5979"
+ style="font-style:normal;font-weight:normal;font-size:80px;line-height:125%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:0.5px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ xml:space="preserve"><tspan
+ style="fill:#000000;fill-opacity:1;stroke-width:0.5px"
+ y="1896.3275"
+ x="-1035.5979"
+ id="tspan1444"
+ sodipodi:role="line">8888</tspan></text>
+ <g
+ id="g6077"
+ inkscape:label="HMI:ForEach:PUMP@/@range@position@size"
+ transform="translate(-3180.7865,1314.0878)">
+ <g
+ id="g6130"
+ inkscape:label="PUMP:1"
+ transform="translate(32.987139)">
+ <g
+ id="g14798">
+ <text
+ inkscape:label="HMI:Display@/PUMP0/STROUT"
+ id="text1517-8"
+ y="118.34158"
+ x="1693.7719"
+ style="font-style:normal;font-weight:normal;font-size:53.33333206px;line-height:125%;font-family:sans-serif;text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;stroke-width:0.14054523px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ xml:space="preserve"><tspan
+ style="font-size:53.33333206px;text-align:center;text-anchor:middle;fill:#000000;fill-opacity:1;stroke-width:0.14054523px"
+ y="118.34158"
+ x="1693.7719"
+ id="tspan1515-5"
+ sodipodi:role="line">8888</tspan></text>
+ </g>
+ <use
+ x="0"
+ y="0"
+ xlink:href="#g1458-8-1"
+ id="use14195"
+ width="100%"
+ height="100%"
+ transform="translate(601.4008,-504.68374)"
+ inkscape:label="HMI:Jump:ForEach1@en=/PUMP0#en" />
+ </g>
+ <g
+ id="g6122"
+ inkscape:label="PUMP:2"
+ transform="translate(134.12728)">
+ <text
+ xml:space="preserve"
+ style="font-style:normal;font-weight:normal;font-size:53.33333206px;line-height:125%;font-family:sans-serif;text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;stroke-width:0.14054523px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ x="1853.9779"
+ y="118.34158"
+ id="text1517-8-5"
+ inkscape:label="HMI:Display@/PUMP1/STROUT"><tspan
+ sodipodi:role="line"
+ id="tspan1515-5-3"
+ x="1853.9779"
+ y="118.34158"
+ style="font-size:53.33333206px;text-align:center;text-anchor:middle;fill:#000000;fill-opacity:1;stroke-width:0.14054523px">8888</tspan></text>
+ <use
+ inkscape:label="HMI:Jump:ForEach1@en=/PUMP1#en"
+ transform="translate(761.4008,-504.68374)"
+ height="100%"
+ width="100%"
+ id="use14212"
+ xlink:href="#g1458-8-1"
+ y="0"
+ x="0" />
+ </g>
+ <g
+ id="g6113"
+ inkscape:label="PUMP:3"
+ transform="translate(235.26753)">
+ <text
+ xml:space="preserve"
+ style="font-style:normal;font-weight:normal;font-size:53.33333206px;line-height:125%;font-family:sans-serif;text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;stroke-width:0.14054523px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ x="2014.1837"
+ y="118.34158"
+ id="text1517-8-8"
+ inkscape:label="HMI:Display@/PUMP2/STROUT"><tspan
+ sodipodi:role="line"
+ id="tspan1515-5-8"
+ x="2014.1837"
+ y="118.34158"
+ style="font-size:53.33333206px;text-align:center;text-anchor:middle;fill:#000000;fill-opacity:1;stroke-width:0.14054523px">8888</tspan></text>
+ <use
+ x="0"
+ y="0"
+ xlink:href="#g1458-8-1"
+ id="use14218"
+ width="100%"
+ height="100%"
+ transform="translate(921.4008,-504.68374)"
+ inkscape:label="HMI:Jump:ForEach1@en=/PUMP2#en" />
+ </g>
+ <g
+ id="g6104"
+ inkscape:label="PUMP:4"
+ transform="translate(336.40767)">
+ <text
+ xml:space="preserve"
+ style="font-style:normal;font-weight:normal;font-size:53.33333206px;line-height:125%;font-family:sans-serif;text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;stroke-width:0.14054523px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ x="2174.3894"
+ y="118.34158"
+ id="text1517-8-3"
+ inkscape:label="HMI:Display@/PUMP3/STROUT"><tspan
+ sodipodi:role="line"
+ id="tspan1515-5-1"
+ x="2174.3894"
+ y="118.34158"
+ style="font-size:53.33333206px;text-align:center;text-anchor:middle;fill:#000000;fill-opacity:1;stroke-width:0.14054523px">8888</tspan></text>
+ <use
+ inkscape:label="HMI:Jump:ForEach1@en=/PUMP3#en"
+ transform="translate(1081.4008,-504.68374)"
+ height="100%"
+ width="100%"
+ id="use14221"
+ xlink:href="#g1458-8-1"
+ y="0"
+ x="0" />
+ </g>
+ <g
+ inkscape:label="PUMP:+1"
+ id="g6241"
+ transform="matrix(1.2451554,0,0,1.2451554,998.80041,-793.64078)">
+ <path
+ style="opacity:1;vector-effect:none;fill:#ffa32a;fill-opacity:1;stroke:#ffffff;stroke-width:4.81867552;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none"
+ d="m 1349.2185,612.41589 c 20.4882,0.19653 63.4534,40.65636 63.4534,40.65636 0,0 -39.5076,38.48741 -63.4534,38.48741 -12.4014,0 -22.3852,-9.35983 -22.3852,-20.98616 v -37.17144 c 0,-11.62634 9.9838,-20.98617 22.3852,-20.98617 z"
+ id="rect6235"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="cccssc" />
+ <text
+ xml:space="preserve"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:32.12450409px;line-height:125%;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:center;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000000;letter-spacing:0px;word-spacing:0px;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:middle;white-space:normal;shape-padding:0;opacity:1;vector-effect:none;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:0.80311257px;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+ x="1369.9803"
+ y="663.6972"
+ id="text6239"><tspan
+ sodipodi:role="line"
+ id="tspan6237"
+ x="1369.9803"
+ y="663.6972"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:32.12450409px;line-height:125%;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:center;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000000;letter-spacing:0px;word-spacing:0px;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:middle;white-space:normal;shape-padding:0;vector-effect:none;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:0.80311257px;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1">+1</tspan></text>
+ </g>
+ <g
+ transform="matrix(1.2451555,0,0,1.2451555,-172.31931,-793.64085)"
+ id="g6209"
+ inkscape:label="PUMP:-1">
+ <path
+ style="opacity:1;vector-effect:none;fill:#ffa32a;fill-opacity:1;stroke:#ffffff;stroke-width:4.81867504;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none"
+ d="m 1393.4848,612.41589 c 12.4014,0 22.3852,9.35983 22.3852,20.98617 v 37.17144 c 0,11.62633 -9.9838,20.98616 -22.3852,20.98616 -20.4882,-0.19653 -63.4534,-40.65636 -63.4534,-40.65636 0,0 39.5076,-38.48741 63.4534,-38.48741 z"
+ id="rect6200"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="cssccc" />
+ <text
+ id="text6204"
+ y="663.6972"
+ x="1373.2013"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:32.12450027px;line-height:125%;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:center;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000000;letter-spacing:0px;word-spacing:0px;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:middle;white-space:normal;shape-padding:0;opacity:1;vector-effect:none;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:0.80311251px;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+ xml:space="preserve"><tspan
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:32.12450027px;line-height:125%;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:center;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000000;letter-spacing:0px;word-spacing:0px;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:middle;white-space:normal;shape-padding:0;vector-effect:none;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:0.80311251px;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+ y="663.6972"
+ x="1373.2013"
+ id="tspan6202"
+ sodipodi:role="line">-1</tspan></text>
+ </g>
+ </g>
+ <g
+ inkscape:label="HMI:VarInit:50@position"
+ id="g906"
+ transform="translate(-3500,1580)" />
+ <g
+ id="g908"
+ inkscape:label="HMI:VarInit:100@range"
+ transform="translate(-3500,1580)" />
+ <g
+ inkscape:label="HMI:VarInit:7@size"
+ id="g906-3"
+ transform="translate(-3500,1580)" />
+ <g
+ id="g14361"
+ inkscape:label="JumpButtonTemplate"
+ transform="translate(-3500,1580)">
+ <g
+ inkscape:label="disabled_template"
+ id="g1450-4-8"
+ style="display:inline"
+ transform="translate(0,-559.63103)">
+ <rect
+ inkscape:label="button"
+ ry="35.579063"
+ y="594.82263"
+ x="971.96545"
+ height="95.723877"
+ width="245.44583"
+ id="rect1448-8-79"
+ style="color:#000000;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;vector-effect:none;fill:#ffa32a;fill-opacity:0.3158683;fill-rule:nonzero;stroke:none;stroke-width:3.77952766;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate" />
+ <text
+ xml:space="preserve"
+ style="font-style:normal;font-weight:normal;font-size:40px;line-height:125%;font-family:sans-serif;text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;display:inline;fill:#434343;fill-opacity:1;stroke:none;stroke-width:0.99999994px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ x="1093.7899"
+ y="657.59668"
+ id="text1454-0-7-20"><tspan
+ sodipodi:role="line"
+ x="1093.7899"
+ y="657.59668"
+ style="text-align:center;text-anchor:middle;fill:#434343;fill-opacity:1;stroke-width:0.99999994px"
+ id="tspan1460-3-5-2">Disabled</tspan></text>
+ </g>
+ <g
+ inkscape:label="active_template"
+ id="g1071-2"
+ style="display:inline"
+ transform="translate(0,-279.81551)">
+ <rect
+ inkscape:label="button"
+ ry="35.579063"
+ y="594.82263"
+ x="971.96545"
+ height="95.723877"
+ width="245.44583"
+ id="rect1069-8"
+ style="color:#000000;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;vector-effect:none;fill:#ffa32a;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:6;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate" />
+ <text
+ xml:space="preserve"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:40px;line-height:125%;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:center;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000000;letter-spacing:0px;word-spacing:0px;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:middle;white-space:normal;shape-padding:0;display:inline;opacity:1;vector-effect:none;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:0.99999994px;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+ x="1095.5966"
+ y="657.59668"
+ id="text1454-0-3-97"><tspan
+ sodipodi:role="line"
+ x="1095.5966"
+ y="657.59668"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:40px;line-height:125%;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:center;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000000;letter-spacing:0px;word-spacing:0px;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:middle;white-space:normal;shape-padding:0;vector-effect:none;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:0.99999994px;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+ id="tspan1460-3-6-3">Active</tspan></text>
+ </g>
+ <g
+ id="g1067-3"
+ inkscape:label="inactive_template"
+ style="display:inline"
+ transform="translate(0,-419.72327)">
+ <rect
+ style="color:#000000;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;vector-effect:none;fill:#ffa32a;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:3.77952766;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate"
+ id="rect1065-7"
+ width="245.44583"
+ height="95.723877"
+ x="971.96545"
+ y="594.82263"
+ ry="35.579063"
+ inkscape:label="button" />
+ <text
+ xml:space="preserve"
+ style="font-style:normal;font-weight:normal;font-size:40px;line-height:125%;font-family:sans-serif;text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;display:inline;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:0.99999994px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ x="1093.7899"
+ y="657.59668"
+ id="text1454-0-5"><tspan
+ sodipodi:role="line"
+ x="1093.7899"
+ y="657.59668"
+ style="text-align:center;text-anchor:middle;fill:#ffffff;fill-opacity:1;stroke-width:0.99999994px"
+ id="tspan1460-3-92">Inactive</tspan></text>
+ </g>
+ <g
+ id="g1458-8-1"
+ inkscape:label="group_to_clone"
+ transform="translate(0,160)">
+ <use
+ transform="translate(0,279.81551)"
+ height="100%"
+ width="100%"
+ id="use14331"
+ xlink:href="#g1450-4-8"
+ y="0"
+ x="0"
+ inkscape:label="disabled" />
+ <use
+ transform="translate(0,139.90775)"
+ height="100%"
+ width="100%"
+ id="use14333"
+ xlink:href="#g1067-3"
+ y="0"
+ x="0"
+ inkscape:label="inactive" />
+ <use
+ height="100%"
+ width="100%"
+ id="use14335"
+ xlink:href="#g1071-2"
+ y="0"
+ x="0"
+ inkscape:label="active" />
+ </g>
+ </g>
+ <g
+ id="g7994"
+ inkscape:label="Gray Page Template"
+ transform="translate(-2020,1160)">
+ <rect
+ y="-1160"
+ x="0"
+ height="1080"
+ width="1920"
+ id="rect4270"
+ style="color:#000000;opacity:1;vector-effect:none;fill:#d6d6d6;fill-opacity:1;stroke-width:1.5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
+ <g
+ transform="translate(1356.9194,-759.99998)"
+ inkscape:label="HMI:Jump:Home"
+ id="g2455">
+ <rect
+ style="color:#000000;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;vector-effect:none;fill:#ffa32a;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:6;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate"
+ id="use2435"
+ width="280"
+ height="81.859505"
+ x="-1305.9194"
+ y="17.836519"
+ ry="21.355932"
+ rx="21.355932"
+ inkscape:label="active_template" />
+ <rect
+ inkscape:label="inactive_template"
+ rx="21.355932"
+ ry="21.355932"
+ y="17.836519"
+ x="-1305.9194"
+ height="81.859505"
+ width="280"
+ id="use2437"
+ style="color:#000000;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;vector-effect:none;fill:#ffa32a;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:3.77952766;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate" />
+ <text
+ id="text855-7-1"
+ y="70.251053"
+ x="-1166.8177"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:40px;line-height:125%;font-family:sans-serif;-inkscape-font-specification:'sans-serif, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:center;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:middle;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ xml:space="preserve"><tspan
+ id="tspan66-3"
+ y="70.251053"
+ x="-1166.8177"
+ sodipodi:role="line">Home</tspan></text>
+ </g>
+ <g
+ inkscape:label="HMI:Jump:ForEach1@/PUMP0"
+ id="g2461"
+ transform="translate(1356.9194,-739.99998)">
+ <rect
+ style="color:#000000;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;vector-effect:none;fill:#ffa32a;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:6;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate"
+ id="use2439"
+ width="280"
+ height="81.859505"
+ x="-1305.9194"
+ y="117.83652"
+ ry="21.355932"
+ rx="21.355932"
+ inkscape:label="active_template" />
+ <rect
+ inkscape:label="inactive_template"
+ rx="21.355932"
+ ry="21.355932"
+ y="117.83652"
+ x="-1305.9194"
+ height="81.859505"
+ width="280"
+ id="use2441"
+ style="color:#000000;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;vector-effect:none;fill:#ffa32a;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:3.77952766;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate" />
+ <text
+ xml:space="preserve"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:40px;line-height:125%;font-family:sans-serif;-inkscape-font-specification:'sans-serif, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:center;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:middle;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ x="-1165.1674"
+ y="170.25105"
+ id="text2349"><tspan
+ sodipodi:role="line"
+ x="-1165.1674"
+ y="170.25105"
+ id="tspan2347">ForEach 1</tspan></text>
+ </g>
+ <g
+ inkscape:label="HMI:Jump:ForEach2@/PUMP0"
+ id="g2467"
+ transform="translate(1356.9194,-719.99998)">
+ <rect
+ style="color:#000000;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;vector-effect:none;fill:#ffa32a;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:6;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate"
+ id="use2443"
+ width="280"
+ height="81.859505"
+ x="-1305.9194"
+ y="217.83652"
+ ry="21.355932"
+ rx="21.355932"
+ inkscape:label="active_template" />
+ <rect
+ inkscape:label="inactive_template"
+ rx="21.355932"
+ ry="21.355932"
+ y="217.83652"
+ x="-1305.9194"
+ height="81.859505"
+ width="280"
+ id="use2445"
+ style="color:#000000;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;vector-effect:none;fill:#ffa32a;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:3.77952766;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate" />
+ <text
+ id="text2357"
+ y="270.25104"
+ x="-1165.7826"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:40px;line-height:125%;font-family:sans-serif;-inkscape-font-specification:'sans-serif, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:center;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:middle;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ xml:space="preserve"><tspan
+ id="tspan2355"
+ y="270.25104"
+ x="-1165.7826"
+ sodipodi:role="line">ForEach 2</tspan></text>
+ </g>
+ </g>
+ <g
+ id="g17978"
+ transform="translate(-2816.5788,1138.5199)">
+ <g
+ inkscape:label="HMI:Display@position"
+ id="g14814">
+ <text
+ inkscape:label="format"
+ id="text1457-1"
+ y="355.6521"
+ x="2608.2524"
+ style="font-style:normal;font-weight:normal;font-size:45.74443054px;line-height:125%;font-family:sans-serif;text-align:end;letter-spacing:0px;word-spacing:0px;text-anchor:end;fill:#000000;fill-opacity:1;stroke:none;stroke-width:0.28590268px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ xml:space="preserve"><tspan
+ style="text-align:end;text-anchor:end;fill:#000000;fill-opacity:1;stroke-width:0.28590268px"
+ y="355.6521"
+ x="2608.2524"
+ id="tspan1455-2"
+ sodipodi:role="line">position: %d</tspan></text>
+ </g>
+ <g
+ transform="translate(0,80)"
+ id="g14820"
+ inkscape:label="HMI:Display@size">
+ <text
+ xml:space="preserve"
+ style="font-style:normal;font-weight:normal;font-size:45.74443054px;line-height:125%;font-family:sans-serif;text-align:end;letter-spacing:0px;word-spacing:0px;text-anchor:end;fill:#000000;fill-opacity:1;stroke:none;stroke-width:0.28590268px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ x="2608.2524"
+ y="355.6521"
+ id="text14818"
+ inkscape:label="format"><tspan
+ sodipodi:role="line"
+ id="tspan14816"
+ x="2608.2524"
+ y="355.6521"
+ style="text-align:end;text-anchor:end;fill:#000000;fill-opacity:1;stroke-width:0.28590268px">size: %d</tspan></text>
+ </g>
+ <g
+ inkscape:label="HMI:Display@range"
+ id="g14826"
+ transform="translate(0,160)">
+ <text
+ inkscape:label="format"
+ id="text14824"
+ y="355.6521"
+ x="2608.2524"
+ style="font-style:normal;font-weight:normal;font-size:45.74443054px;line-height:125%;font-family:sans-serif;text-align:end;letter-spacing:0px;word-spacing:0px;text-anchor:end;fill:#000000;fill-opacity:1;stroke:none;stroke-width:0.28590268px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ xml:space="preserve"><tspan
+ style="text-align:end;text-anchor:end;fill:#000000;fill-opacity:1;stroke-width:0.28590268px"
+ y="355.6521"
+ x="2608.2524"
+ id="tspan14822"
+ sodipodi:role="line">range: %d</tspan></text>
+ </g>
+ <g
+ transform="translate(0,240)"
+ id="g17994"
+ inkscape:label="HMI:Display@page_node">
+ <text
+ xml:space="preserve"
+ style="font-style:normal;font-weight:normal;font-size:45.74443054px;line-height:125%;font-family:sans-serif;text-align:end;letter-spacing:0px;word-spacing:0px;text-anchor:end;fill:#000000;fill-opacity:1;stroke:none;stroke-width:0.28590268px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ x="2608.2524"
+ y="355.6521"
+ id="text17992"
+ inkscape:label="format"><tspan
+ sodipodi:role="line"
+ id="tspan17990"
+ x="2608.2524"
+ y="355.6521"
+ style="text-align:end;text-anchor:end;fill:#000000;fill-opacity:1;stroke-width:0.28590268px">page_node: %s</tspan></text>
+ </g>
+ </g>
+ <g
+ id="g1766"
+ inkscape:label="HMI:ScrollBar@range@position@size"
+ transform="matrix(0,-2.3538121,2.3538121,0,-2719.3651,1633.2001)">
+ <path
+ sodipodi:nodetypes="cccc"
+ inkscape:connector-curvature="0"
+ id="path1266"
+ d="m -234.01097,332.3551 21.18736,28.36866 h -42.37471 z"
+ style="color:#000000;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;vector-effect:none;fill:#ffa32a;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.42391574px;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate"
+ inkscape:label="pageup" />
+ <path
+ style="color:#000000;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;vector-effect:none;fill:#ffa32a;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.4007318px;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate"
+ d="m -234.01097,1077.5833 21.18736,-27.4524 h -42.37471 z"
+ id="path1268"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="cccc"
+ inkscape:label="pagedown" />
+ <rect
+ style="color:#000000;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:0.30952382;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;vector-effect:none;fill:#727272;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:2.03627348px;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate"
+ id="rect1264-3"
+ width="42.374725"
+ height="665.53912"
+ x="-255.19838"
+ y="372.65775"
+ rx="7.6034913"
+ ry="6.8822322"
+ inkscape:label="range" />
+ <rect
+ style="color:#000000;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;vector-effect:none;fill:#ffa32a;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.11429262px;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate"
+ id="rect1264"
+ width="42.374725"
+ height="82.841492"
+ x="-255.19838"
+ y="405.8981"
+ rx="7.6034913"
+ ry="7"
+ inkscape:label="cursor" />
+ </g>
+ <text
+ xml:space="preserve"
+ style="font-style:normal;font-weight:normal;font-size:40px;line-height:1.25;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none"
+ x="-1333.2544"
+ y="1786.2694"
+ id="text18322"><tspan
+ sodipodi:role="line"
+ id="tspan18320"
+ x="-1333.2544"
+ y="1786.2694">String IN</tspan></text>
+ <text
+ id="text18326"
+ y="1786.2694"
+ x="-1043.8401"
+ style="font-style:normal;font-weight:normal;font-size:40px;line-height:1.25;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none"
+ xml:space="preserve"><tspan
+ y="1786.2694"
+ x="-1043.8401"
+ id="tspan18324"
+ sodipodi:role="line">String OUT</tspan></text>
+ <use
+ inkscape:label="HMI:Page:Home"
+ height="100%"
+ width="100%"
+ id="use18328"
+ xlink:href="#g7994"
+ y="0"
+ x="0"
+ transform="translate(2020)" />
+ <text
+ xml:space="preserve"
+ style="font-style:normal;font-weight:normal;font-size:74.66666412px;line-height:1.25;font-family:sans-serif;text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none"
+ x="957.42969"
+ y="130.39062"
+ id="text18332"><tspan
+ sodipodi:role="line"
+ id="tspan18330"
+ x="957.42969"
+ y="130.39062">ForEach widget example</tspan></text>
+ <text
+ xml:space="preserve"
+ style="font-style:normal;font-weight:normal;font-size:40px;line-height:1.25;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none"
+ x="570.59668"
+ y="479.20618"
+ id="text18336"><tspan
+ sodipodi:role="line"
+ id="tspan18334"
+ x="570.59668"
+ y="479.20618">TODO: Readme</tspan></text>
+ <use
+ inkscape:label="HMI:Page:ForEach2@/PUMP0"
+ height="100%"
+ width="100%"
+ transform="translate(2020,1220)"
+ id="use18338"
+ xlink:href="#g7994"
+ y="0"
+ x="0" />
+ <g
+ transform="matrix(0.5,0,0,0.5,603.1965,1789.2488)"
+ id="g18386"
+ inkscape:label="HMI:Input@/PUMP0/STRIN"
+ style="stroke-width:2">
+ <text
+ inkscape:label="value"
+ id="text18342"
+ y="218.24219"
+ x="136.32812"
+ style="font-style:normal;font-weight:normal;font-size:160px;line-height:125%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:2px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ xml:space="preserve"><tspan
+ style="fill:#000000;stroke-width:2px"
+ y="218.24219"
+ x="136.32812"
+ id="tspan18340"
+ sodipodi:role="line">8888</tspan></text>
+ <rect
+ style="color:#000000;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:0;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;vector-effect:none;fill:#ff00ff;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:10;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate"
+ id="rect18344"
+ width="407.7037"
+ height="128"
+ x="139.85185"
+ y="95.40741"
+ onclick=""
+ inkscape:label="edit" />
+ <g
+ transform="translate(-412.63122,172.413)"
+ inkscape:label="+"dhu""
+ id="g18352"
+ style="stroke-width:2">
+ <path
+ style="color:#000000;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;vector-effect:none;fill:#e6e6e6;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:10;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate"
+ inkscape:transform-center-y="-14.956361"
+ d="m 792.86468,143.60768 -80.62929,0.60214 -0.60215,-80.629285 80.6293,-0.60214 z"
+ id="path18346"
+ inkscape:connector-curvature="0" />
+ <text
+ xml:space="preserve"
+ style="font-style:normal;font-weight:normal;font-size:20px;line-height:125%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ x="733.58197"
+ y="111.05016"
+ id="text18350"><tspan
+ sodipodi:role="line"
+ id="tspan18348"
+ x="733.58197"
+ y="111.05016"
+ style="stroke-width:1px">dhu</tspan></text>
+ </g>
+ <g
+ transform="translate(5.9838208)"
+ inkscape:label="="plop""
+ id="g18360">
+ <path
+ inkscape:connector-curvature="0"
+ id="path18354"
+ d="m 279.14413,316.02068 -80.6292,0.60214 -0.6022,-80.62929 80.6293,-0.60214 z"
+ inkscape:transform-center-y="-14.956361"
+ style="color:#000000;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;vector-effect:none;fill:#e6e6e6;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:10;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate" />
+ <text
+ id="text18358"
+ y="281.52469"
+ x="216.5753"
+ style="font-style:normal;font-weight:normal;font-size:20px;line-height:125%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ xml:space="preserve"><tspan
+ style="stroke-width:1px"
+ y="281.52469"
+ x="216.5753"
+ id="tspan18356"
+ sodipodi:role="line">plop</tspan></text>
+ </g>
+ <g
+ transform="translate(6.203125e-5,1.93848)"
+ inkscape:label="="mhoo""
+ id="g18368">
+ <path
+ inkscape:connector-curvature="0"
+ id="path18362"
+ d="m 190.02242,314.0822 -80.6292,0.60214 -0.6022,-80.62929 80.6293,-0.60214 z"
+ inkscape:transform-center-y="-14.956361"
+ style="color:#000000;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;vector-effect:none;fill:#e6e6e6;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:10;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate" />
+ <text
+ xml:space="preserve"
+ style="font-style:normal;font-weight:normal;font-size:20px;line-height:125%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ x="120.72997"
+ y="281.52469"
+ id="text18366"><tspan
+ sodipodi:role="line"
+ id="tspan18364"
+ x="120.72997"
+ y="281.52469"
+ style="stroke-width:1px">mhoo</tspan></text>
+ </g>
+ <g
+ transform="translate(3.6703125e-4)"
+ inkscape:label="="yodl""
+ id="g18376">
+ <path
+ inkscape:connector-curvature="0"
+ id="path18370"
+ d="m 570.44399,316.02068 -80.6292,0.60214 -0.6022,-80.62929 80.6293,-0.60214 z"
+ inkscape:transform-center-y="-14.956361"
+ style="color:#000000;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;vector-effect:none;fill:#e6e6e6;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:10;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate" />
+ <text
+ xml:space="preserve"
+ style="font-style:normal;font-weight:normal;font-size:20px;line-height:125%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ x="509.30582"
+ y="281.52469"
+ id="text18374"><tspan
+ sodipodi:role="line"
+ id="tspan18372"
+ x="509.30582"
+ y="281.52469"
+ style="stroke-width:1px">yodl</tspan></text>
+ </g>
+ <g
+ transform="translate(-14.078982,1.93848)"
+ inkscape:label="="mhe""
+ id="g18384">
+ <path
+ inkscape:connector-curvature="0"
+ id="path18378"
+ d="m 489.41787,314.0822 -80.6292,0.60214 -0.6022,-80.62929 80.6293,-0.60214 z"
+ inkscape:transform-center-y="-14.956361"
+ style="color:#000000;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;vector-effect:none;fill:#e6e6e6;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:10;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate" />
+ <text
+ id="text18382"
+ y="281.52469"
+ x="426.19473"
+ style="font-style:normal;font-weight:normal;font-size:20px;line-height:125%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ xml:space="preserve"><tspan
+ style="stroke-width:1px"
+ y="281.52469"
+ x="426.19473"
+ id="tspan18380"
+ sodipodi:role="line">mhe</tspan></text>
+ </g>
+ </g>
+ <text
+ xml:space="preserve"
+ style="font-style:normal;font-weight:normal;font-size:80px;line-height:125%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:0.5px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ x="984.40234"
+ y="1896.3275"
+ id="text18390"
+ inkscape:label="HMI:Display@/PUMP0/STROUT"><tspan
+ sodipodi:role="line"
+ id="tspan18388"
+ x="984.40234"
+ y="1896.3275"
+ style="fill:#000000;fill-opacity:1;stroke-width:0.5px">8888</tspan></text>
+ <g
+ transform="translate(-1160.7865,1314.0878)"
+ inkscape:label="HMI:ForEach:PUMP@/@range@position@size"
+ id="g18442">
+ <g
+ transform="translate(32.987139)"
+ inkscape:label="PUMP:1"
+ id="g18400">
+ <text
+ inkscape:label="HMI:Display@/PUMP0/STROUT"
+ id="text18394"
+ y="118.34158"
+ x="1693.7719"
+ style="font-style:normal;font-weight:normal;font-size:53.33333206px;line-height:125%;font-family:sans-serif;text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;stroke-width:0.14054523px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ xml:space="preserve"><tspan
+ style="font-size:53.33333206px;text-align:center;text-anchor:middle;fill:#000000;fill-opacity:1;stroke-width:0.14054523px"
+ y="118.34158"
+ x="1693.7719"
+ id="tspan18392"
+ sodipodi:role="line">8888</tspan></text>
+ <use
+ inkscape:label="HMI:Jump:ForEach2@en=/PUMP0#en"
+ transform="translate(601.4008,-504.68374)"
+ height="100%"
+ width="100%"
+ id="use18398"
+ xlink:href="#g1458-8-1"
+ y="0"
+ x="0" />
+ </g>
+ <g
+ transform="translate(134.12728)"
+ inkscape:label="PUMP:2"
+ id="g18408">
+ <text
+ inkscape:label="HMI:Display@/PUMP1/STROUT"
+ id="text18404"
+ y="118.34158"
+ x="1853.9779"
+ style="font-style:normal;font-weight:normal;font-size:53.33333206px;line-height:125%;font-family:sans-serif;text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;stroke-width:0.14054523px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ xml:space="preserve"><tspan
+ style="font-size:53.33333206px;text-align:center;text-anchor:middle;fill:#000000;fill-opacity:1;stroke-width:0.14054523px"
+ y="118.34158"
+ x="1853.9779"
+ id="tspan18402"
+ sodipodi:role="line">8888</tspan></text>
+ <use
+ x="0"
+ y="0"
+ xlink:href="#g1458-8-1"
+ id="use18406"
+ width="100%"
+ height="100%"
+ transform="translate(761.4008,-504.68374)"
+ inkscape:label="HMI:Jump:ForEach2@en=/PUMP1#en" />
+ </g>
+ <g
+ transform="translate(235.26753)"
+ inkscape:label="PUMP:3"
+ id="g18416">
+ <text
+ inkscape:label="HMI:Display@/PUMP2/STROUT"
+ id="text18412"
+ y="118.34158"
+ x="2014.1837"
+ style="font-style:normal;font-weight:normal;font-size:53.33333206px;line-height:125%;font-family:sans-serif;text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;stroke-width:0.14054523px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ xml:space="preserve"><tspan
+ style="font-size:53.33333206px;text-align:center;text-anchor:middle;fill:#000000;fill-opacity:1;stroke-width:0.14054523px"
+ y="118.34158"
+ x="2014.1837"
+ id="tspan18410"
+ sodipodi:role="line">8888</tspan></text>
+ <use
+ inkscape:label="HMI:Jump:ForEach2@en=/PUMP2#en"
+ transform="translate(921.4008,-504.68374)"
+ height="100%"
+ width="100%"
+ id="use18414"
+ xlink:href="#g1458-8-1"
+ y="0"
+ x="0" />
+ </g>
+ <g
+ transform="translate(336.40767)"
+ inkscape:label="PUMP:4"
+ id="g18424">
+ <text
+ inkscape:label="HMI:Display@/PUMP3/STROUT"
+ id="text18420"
+ y="118.34158"
+ x="2174.3894"
+ style="font-style:normal;font-weight:normal;font-size:53.33333206px;line-height:125%;font-family:sans-serif;text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;stroke-width:0.14054523px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ xml:space="preserve"><tspan
+ style="font-size:53.33333206px;text-align:center;text-anchor:middle;fill:#000000;fill-opacity:1;stroke-width:0.14054523px"
+ y="118.34158"
+ x="2174.3894"
+ id="tspan18418"
+ sodipodi:role="line">8888</tspan></text>
+ <use
+ x="0"
+ y="0"
+ xlink:href="#g1458-8-1"
+ id="use18422"
+ width="100%"
+ height="100%"
+ transform="translate(1081.4008,-504.68374)"
+ inkscape:label="HMI:Jump:ForEach2@en=/PUMP3#en" />
+ </g>
+ <g
+ transform="matrix(1.2451554,0,0,1.2451554,998.80041,-793.64078)"
+ id="g18432"
+ inkscape:label="PUMP:+1">
+ <path
+ sodipodi:nodetypes="cccssc"
+ inkscape:connector-curvature="0"
+ id="path18426"
+ d="m 1349.2185,612.41589 c 20.4882,0.19653 63.4534,40.65636 63.4534,40.65636 0,0 -39.5076,38.48741 -63.4534,38.48741 -12.4014,0 -22.3852,-9.35983 -22.3852,-20.98616 v -37.17144 c 0,-11.62634 9.9838,-20.98617 22.3852,-20.98617 z"
+ style="opacity:1;vector-effect:none;fill:#ffa32a;fill-opacity:1;stroke:#ffffff;stroke-width:4.81867552;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none" />
+ <text
+ id="text18430"
+ y="663.6972"
+ x="1369.9803"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:32.12450409px;line-height:125%;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:center;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000000;letter-spacing:0px;word-spacing:0px;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:middle;white-space:normal;shape-padding:0;opacity:1;vector-effect:none;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:0.80311257px;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+ xml:space="preserve"><tspan
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:32.12450409px;line-height:125%;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:center;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000000;letter-spacing:0px;word-spacing:0px;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:middle;white-space:normal;shape-padding:0;vector-effect:none;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:0.80311257px;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+ y="663.6972"
+ x="1369.9803"
+ id="tspan18428"
+ sodipodi:role="line">+1</tspan></text>
+ </g>
+ <g
+ inkscape:label="PUMP:-1"
+ id="g18440"
+ transform="matrix(1.2451555,0,0,1.2451555,-172.31931,-793.64085)">
+ <path
+ sodipodi:nodetypes="cssccc"
+ inkscape:connector-curvature="0"
+ id="path18434"
+ d="m 1393.4848,612.41589 c 12.4014,0 22.3852,9.35983 22.3852,20.98617 v 37.17144 c 0,11.62633 -9.9838,20.98616 -22.3852,20.98616 -20.4882,-0.19653 -63.4534,-40.65636 -63.4534,-40.65636 0,0 39.5076,-38.48741 63.4534,-38.48741 z"
+ style="opacity:1;vector-effect:none;fill:#ffa32a;fill-opacity:1;stroke:#ffffff;stroke-width:4.81867504;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none" />
+ <text
+ xml:space="preserve"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:32.12450027px;line-height:125%;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:center;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000000;letter-spacing:0px;word-spacing:0px;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:middle;white-space:normal;shape-padding:0;opacity:1;vector-effect:none;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:0.80311251px;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+ x="1373.2013"
+ y="663.6972"
+ id="text18438"><tspan
+ sodipodi:role="line"
+ id="tspan18436"
+ x="1373.2013"
+ y="663.6972"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:32.12450027px;line-height:125%;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:center;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000000;letter-spacing:0px;word-spacing:0px;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:middle;white-space:normal;shape-padding:0;vector-effect:none;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:0.80311251px;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1">-1</tspan></text>
+ </g>
+ </g>
+ <g
+ transform="translate(-796.5788,1138.5199)"
+ id="g18468">
+ <g
+ id="g18448"
+ inkscape:label="HMI:Display@position">
+ <text
+ xml:space="preserve"
+ style="font-style:normal;font-weight:normal;font-size:45.74443054px;line-height:125%;font-family:sans-serif;text-align:end;letter-spacing:0px;word-spacing:0px;text-anchor:end;fill:#000000;fill-opacity:1;stroke:none;stroke-width:0.28590268px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ x="2608.2524"
+ y="355.6521"
+ id="text18446"
+ inkscape:label="format"><tspan
+ sodipodi:role="line"
+ id="tspan18444"
+ x="2608.2524"
+ y="355.6521"
+ style="text-align:end;text-anchor:end;fill:#000000;fill-opacity:1;stroke-width:0.28590268px">position: %d</tspan></text>
+ </g>
+ <g
+ inkscape:label="HMI:Display@size"
+ id="g18454"
+ transform="translate(0,80)">
+ <text
+ inkscape:label="format"
+ id="text18452"
+ y="355.6521"
+ x="2608.2524"
+ style="font-style:normal;font-weight:normal;font-size:45.74443054px;line-height:125%;font-family:sans-serif;text-align:end;letter-spacing:0px;word-spacing:0px;text-anchor:end;fill:#000000;fill-opacity:1;stroke:none;stroke-width:0.28590268px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ xml:space="preserve"><tspan
+ style="text-align:end;text-anchor:end;fill:#000000;fill-opacity:1;stroke-width:0.28590268px"
+ y="355.6521"
+ x="2608.2524"
+ id="tspan18450"
+ sodipodi:role="line">size: %d</tspan></text>
+ </g>
+ <g
+ transform="translate(0,160)"
+ id="g18460"
+ inkscape:label="HMI:Display@range">
+ <text
+ xml:space="preserve"
+ style="font-style:normal;font-weight:normal;font-size:45.74443054px;line-height:125%;font-family:sans-serif;text-align:end;letter-spacing:0px;word-spacing:0px;text-anchor:end;fill:#000000;fill-opacity:1;stroke:none;stroke-width:0.28590268px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ x="2608.2524"
+ y="355.6521"
+ id="text18458"
+ inkscape:label="format"><tspan
+ sodipodi:role="line"
+ id="tspan18456"
+ x="2608.2524"
+ y="355.6521"
+ style="text-align:end;text-anchor:end;fill:#000000;fill-opacity:1;stroke-width:0.28590268px">range: %d</tspan></text>
+ </g>
+ <g
+ inkscape:label="HMI:Display@page_node"
+ id="g18466"
+ transform="translate(0,240)">
+ <text
+ inkscape:label="format"
+ id="text18464"
+ y="355.6521"
+ x="2608.2524"
+ style="font-style:normal;font-weight:normal;font-size:45.74443054px;line-height:125%;font-family:sans-serif;text-align:end;letter-spacing:0px;word-spacing:0px;text-anchor:end;fill:#000000;fill-opacity:1;stroke:none;stroke-width:0.28590268px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ xml:space="preserve"><tspan
+ style="text-align:end;text-anchor:end;fill:#000000;fill-opacity:1;stroke-width:0.28590268px"
+ y="355.6521"
+ x="2608.2524"
+ id="tspan18462"
+ sodipodi:role="line">page_node: %s</tspan></text>
+ </g>
+ </g>
+ <g
+ transform="matrix(0,-2.3538121,2.3538121,0,-699.36504,1633.2001)"
+ inkscape:label="HMI:ScrollBar@range@position@size"
+ id="g18478">
+ <path
+ inkscape:label="pageup"
+ style="color:#000000;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;vector-effect:none;fill:#ffa32a;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.42391574px;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate"
+ d="m -234.01097,332.3551 21.18736,28.36866 h -42.37471 z"
+ id="path18470"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="cccc" />
+ <path
+ inkscape:label="pagedown"
+ sodipodi:nodetypes="cccc"
+ inkscape:connector-curvature="0"
+ id="path18472"
+ d="m -234.01097,1077.5833 21.18736,-27.4524 h -42.37471 z"
+ style="color:#000000;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;vector-effect:none;fill:#ffa32a;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.4007318px;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate" />
+ <rect
+ inkscape:label="range"
+ ry="6.8822322"
+ rx="7.6034913"
+ y="372.65775"
+ x="-255.19838"
+ height="665.53912"
+ width="42.374725"
+ id="rect18474"
+ style="color:#000000;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:0.30952382;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;vector-effect:none;fill:#727272;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:2.03627348px;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate" />
+ <rect
+ inkscape:label="cursor"
+ ry="7"
+ rx="7.6034913"
+ y="405.8981"
+ x="-255.19838"
+ height="82.841492"
+ width="42.374725"
+ id="rect18476"
+ style="color:#000000;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;vector-effect:none;fill:#ffa32a;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.11429262px;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate" />
+ </g>
+ <text
+ id="text18482"
+ y="1786.2694"
+ x="686.74561"
+ style="font-style:normal;font-weight:normal;font-size:40px;line-height:1.25;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none"
+ xml:space="preserve"><tspan
+ y="1786.2694"
+ x="686.74561"
+ id="tspan18480"
+ sodipodi:role="line">String IN</tspan></text>
+ <text
+ xml:space="preserve"
+ style="font-style:normal;font-weight:normal;font-size:40px;line-height:1.25;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none"
+ x="976.16016"
+ y="1786.2694"
+ id="text18486"><tspan
+ sodipodi:role="line"
+ id="tspan18484"
+ x="976.16016"
+ y="1786.2694">String OUT</tspan></text>
+ <text
+ id="text18737"
+ y="1610.3906"
+ x="957.42969"
+ style="font-style:normal;font-weight:normal;font-size:74.66666412px;line-height:1.25;font-family:sans-serif;text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none"
+ xml:space="preserve"><tspan
+ y="1610.3906"
+ x="957.42969"
+ id="tspan18735"
+ sodipodi:role="line">ForEach2</tspan></text>
+ <text
+ xml:space="preserve"
+ style="font-style:normal;font-weight:normal;font-size:74.66666412px;line-height:1.25;font-family:sans-serif;text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none"
+ x="-1062.5703"
+ y="1610.3906"
+ id="text18741"><tspan
+ sodipodi:role="line"
+ id="tspan18739"
+ x="-1062.5703"
+ y="1610.3906">ForEach1</tspan></text>
+</svg>