From 8e2087b5fc820048a67f64b5f1bfd3b91cb38eba Mon Sep 17 00:00:00 2001
From: Jake <jake.read@cba.mit.edu>
Date: Thu, 12 Sep 2019 19:57:37 -0400
Subject: [PATCH] many vfpt tests later...

---
 bootstrap.js                                  |    2 +
 hunks/comm/websocketclient.js                 |    9 +-
 hunks/data/accumulator.js                     |   63 +
 hunks/data/save.js                            |   58 +
 hunks/debug/bytearrayoutput.js                |    2 +-
 hunks/debug/timing.js                         |   47 +-
 hunks/hunks.js                                |    8 +-
 hunks/output/linechart.js                     |   29 +-
 hunks/primitive/counter.js                    |   55 +
 libs/smallstat.js                             |   90 +
 save/contexts/cuttlefish/accumulate-test.json |  151 ++
 save/systems/bbstp-00.json                    |  330 +++
 ...rj45-02-da.json => bughuntr-lpusb-01.json} |  176 +-
 ...j45-ringer.json => bughuntr-lpusb-02.json} |  154 +-
 save/systems/bughuntr-lpusb-03.json           |  790 ++++++++
 ...og-sg-prep.json => bughuntr-lpusb-04.json} |  332 ++-
 save/systems/bughuntr-lpusb-05.json           |  790 ++++++++
 save/systems/nautilus-bridge-rf.json          |  303 +++
 save/systems/rdev-5l-5cobs-conn.json          |  936 ---------
 save/systems/rdev-gen-ab-nrf.json             |  881 --------
 save/systems/simple-ws-01.json                |  124 ++
 ...v-abc-v.json => tabula-router-abe-cn.json} |  170 +-
 ...rdev-ldconnect.json => ussm-allup-03.json} |  425 ++--
 .../{ussm-allup.json => ussm-dev-07.json}     |  466 +++--
 save/systems/ussm-rdev-abe-rf.json            | 1371 -------------
 save/systems/ussm-rdev-abehookup.json         | 1773 -----------------
 save/systems/ussm-tmotor-d2.json              | 1401 -------------
 save/systems/vfpalive-00.json                 |  345 ++++
 ...{loadcelltest-01.json => vfpalive-02.json} |  396 ++--
 .../{pdev-rj45-02.json => vfptest-01.json}    |  211 +-
 save/systems/vfptest-03.json                  |  860 ++++++++
 .../{jog-sg-04.json => vfptest-04.json}       |  497 +++--
 save/systems/vpft-00.json                     |  594 ++++++
 typeset.js                                    |   44 +-
 view/vptch.js                                 |    5 +-
 35 files changed, 6123 insertions(+), 7765 deletions(-)
 create mode 100644 hunks/data/accumulator.js
 create mode 100644 hunks/data/save.js
 create mode 100644 hunks/primitive/counter.js
 create mode 100644 libs/smallstat.js
 create mode 100644 save/contexts/cuttlefish/accumulate-test.json
 create mode 100644 save/systems/bbstp-00.json
 rename save/systems/{pdev-rj45-02-da.json => bughuntr-lpusb-01.json} (85%)
 rename save/systems/{pdev-rj45-ringer.json => bughuntr-lpusb-02.json} (86%)
 create mode 100644 save/systems/bughuntr-lpusb-03.json
 rename save/systems/{jog-sg-prep.json => bughuntr-lpusb-04.json} (76%)
 create mode 100644 save/systems/bughuntr-lpusb-05.json
 create mode 100644 save/systems/nautilus-bridge-rf.json
 delete mode 100644 save/systems/rdev-5l-5cobs-conn.json
 delete mode 100644 save/systems/rdev-gen-ab-nrf.json
 create mode 100644 save/systems/simple-ws-01.json
 rename save/systems/{ussm-rdev-abc-v.json => tabula-router-abe-cn.json} (92%)
 rename save/systems/{ussm-rdev-ldconnect.json => ussm-allup-03.json} (86%)
 rename save/systems/{ussm-allup.json => ussm-dev-07.json} (88%)
 delete mode 100644 save/systems/ussm-rdev-abe-rf.json
 delete mode 100644 save/systems/ussm-rdev-abehookup.json
 delete mode 100644 save/systems/ussm-tmotor-d2.json
 create mode 100644 save/systems/vfpalive-00.json
 rename save/systems/{loadcelltest-01.json => vfpalive-02.json} (61%)
 rename save/systems/{pdev-rj45-02.json => vfptest-01.json} (80%)
 create mode 100644 save/systems/vfptest-03.json
 rename save/systems/{jog-sg-04.json => vfptest-04.json} (69%)
 create mode 100644 save/systems/vpft-00.json

diff --git a/bootstrap.js b/bootstrap.js
index 9912334..b9ed113 100644
--- a/bootstrap.js
+++ b/bootstrap.js
@@ -8,6 +8,8 @@
 // we run loop where UI passes messages to bower manager
 // this is like the manager 'bootstrap' file ?
 
+'use strict'
+
 import Manager from './hunks/manager.js'
 import TLV from './view/vtoplevel.js'
 
diff --git a/hunks/comm/websocketclient.js b/hunks/comm/websocketclient.js
index 6f74b3e..2246253 100644
--- a/hunks/comm/websocketclient.js
+++ b/hunks/comm/websocketclient.js
@@ -51,7 +51,7 @@ function WebSocketClient() {
     // manager calls this once
     // it is loaded and state is updated (from program)
     url = 'ws://' + addressState.value + ':' + portState.value
-    if(debug) console.log('INIT WS', url)
+    this.log(`attempt start ws at ${url}`)
     ws = new WebSocket(url)
     ws.binaryType = "arraybuffer"
     ws.onopen = (evt) => {
@@ -60,6 +60,7 @@ function WebSocketClient() {
     }
     ws.onerror = (evt) => {
       this.log('ws error, will reset to check')
+      console.log('ws error:', evt)
       if(debug) console.log(evt)
       statusMessage.set('error')
       setCheck(500)
@@ -75,7 +76,7 @@ function WebSocketClient() {
       // ok, message.data is a blob, we know it's str8 up bytes, want that
       // as an array
       let msgAsArray = new Uint8Array(message.data)
-      // it's messy, yep! 
+      // it's messy, yep!
       let msgAsStdArray = Array.from(msgAsArray)
       if(debug) console.log('WS receive, as an array:', msgAsArray);
       if (dtout.ie && this.outbuffer.length === 0) {
@@ -84,7 +85,7 @@ function WebSocketClient() {
         this.outbuffer.push(msgAsStdArray)
       }
     }
-    statusMessage.set('connecting ...')
+    statusMessage.set('ws initialized...')
   }
 
   let checking = false
@@ -111,7 +112,7 @@ function WebSocketClient() {
       this.log('CHECKING STATUS')
       switch (ws.readyState) {
         case WebSocket.CONNECTING:
-          this.log('is connecting')
+          this.log('ws is in process of connecting...')
           break
         case WebSocket.OPEN:
           this.log('is open')
diff --git a/hunks/data/accumulator.js b/hunks/data/accumulator.js
new file mode 100644
index 0000000..ed1ce3f
--- /dev/null
+++ b/hunks/data/accumulator.js
@@ -0,0 +1,63 @@
+/*
+
+gather
+
+*/
+
+import {
+  Hunkify,
+  Input,
+  Output,
+  State
+} from '../hunks.js'
+
+function Accumulator(){
+  Hunkify(this)
+
+  // todo: make this polymorphic
+  let ipr = new Input("boolean", "reset", this)
+  let ivx = new Input("number", "x", this)
+  let ivy = new Input("number", "y", this)
+  this.inputs.push(ipr, ivx, ivy)
+  // push a reference out, for now
+  let outref = new Output("reference", "accumulated", this)
+  this.outputs.push(outref)
+  // reset button
+  // todo:
+  // let rstrig = this.states.add("boolean", "reset", false)
+  let rstrig = new State("boolean", "reset", false)
+  this.states.push(rstrig)
+
+  let reset = () => {
+    arr = []
+    if(!outref.io()){
+      outref.put(arr)
+    }
+  }
+
+  rstrig.onChange = (value) => {
+    reset()
+  }
+
+  this.init = () => {
+    //
+  }
+
+  let arr = []
+
+  this.loop = () => {
+    if(ipr.io()){
+      ipr.get()
+      reset()
+    }
+    if(ivx.io() && ivy.io()){
+      arr.push([ivx.get(), ivy.get()])
+      // todo: for ref, pass always OK ? breaks rules anyways ...
+      if(!outref.io()){
+        outref.put(arr)
+      }
+    }
+  }
+}
+
+export default Accumulator
diff --git a/hunks/data/save.js b/hunks/data/save.js
new file mode 100644
index 0000000..2b4e2ba
--- /dev/null
+++ b/hunks/data/save.js
@@ -0,0 +1,58 @@
+/*
+
+save object from reference, as JSON
+
+*/
+
+import {
+  Hunkify,
+  Input,
+  Output,
+  State
+} from '../hunks.js'
+
+function Save(){
+  Hunkify(this)
+
+  let inobj = new Input("reference", "object", this)
+  let intrig = new Input("boolean", "trigger", this)
+  this.inputs.push(inobj, intrig)
+  let savename = new State("string", "name", "datas")
+  let svbutton = new State("boolean", "save", false)
+  this.states.push(savename, svbutton)
+
+  this.init = () => {
+    //
+  }
+
+  let ourRef = {
+    test: "item"
+  }
+
+  let dishit = () => {
+    // serialize the thing
+    let url = URL.createObjectURL(new Blob([JSON.stringify(ourRef, null, 2)], {
+      type: "application/json"
+    }))
+    // hack to trigger the download,
+    let anchor = $('<a>ok</a>').attr('href', url).attr('download', savename.value + '.json').get(0)
+    $(document.body).append(anchor)
+    anchor.click()
+  }
+
+  svbutton.onChange = (val) => {
+    dishit()
+  }
+
+  this.loop = () => {
+    if(inobj.io()){
+      ourRef = inobj.get()
+    }
+    if(intrig.io()){
+      intrig.get()
+      dishit()
+    }
+  }
+}
+
+export default Save
diff --git a/hunks/debug/bytearrayoutput.js b/hunks/debug/bytearrayoutput.js
index 6e919db..87983d1 100644
--- a/hunks/debug/bytearrayoutput.js
+++ b/hunks/debug/bytearrayoutput.js
@@ -17,7 +17,7 @@ function ByteArrayOutput() {
     this.states.push(pbutton, bytesAsAString)
 
     pbutton.onChange = (value) => {
-      if(bytesAsAString.io()){
+      if(otp.io()){
         console.warning("byte output machine's byte output port is occupied, cannot push more")
       } else {
         let arr = bytesAsAString.value.split(',')
diff --git a/hunks/debug/timing.js b/hunks/debug/timing.js
index 9c3aa70..f38d1da 100644
--- a/hunks/debug/timing.js
+++ b/hunks/debug/timing.js
@@ -11,41 +11,64 @@ import {
   State
 } from '../hunks.js'
 
-function Timing(){
+import smallstat from '../../libs/smallstat.js'
+
+function Timing() {
   Hunkify(this)
 
   let inp = new Input('boolean', 'thru', this)
   this.inputs.push(inp)
 
   let out = new Output('boolean', 'thru', this)
-  this.outputs.push(out)
+  let meanOut = new Output('number', 'mean (ms)', this)
+  let varianceOut = new Output('number', 'variance', this)
+  this.outputs.push(out, meanOut, varianceOut)
 
-  let count = new State('number', 'average', 20)
-  this.states.push(count)
+  let count = new State('number', 'average', 100)
+  let log = new State('boolean', 'log', true)
+  this.states.push(count, log)
 
-  let val = false
   let t0 = performance.now()
   let t1 = t0
-  let avsum = 0
+  let step = 0
+  let vals = []
   let avcnt = 0
 
+  let mean = 0
+  let variance = 0
+
+  console.log('smallstat:', smallstat)
+
   this.loop = () => {
-    if(inp.io() && !(out.io())){
+    if (inp.io() && !(out.io())) {
       // through the gate
       out.put(inp.get())
       // new value
       t1 = performance.now()
       // work
-      avsum += t1 - t0
+      step = t1 - t0
+      vals.push(step)
       t0 = t1
-      avcnt ++
-      if(avcnt > count.value){
-        console.log("tm: ", avsum / count.value)
+      avcnt++
+      if (avcnt > count.value) {
+        mean = smallstat.mean(vals)
+        variance = smallstat.variance(vals)
+        if (log.value) {
+          console.log("timer: mean", mean, "variance", variance)
+        }
+        if (!meanOut.io()) {
+          meanOut.put(mean)
+        }
+        if (!varianceOut.io()) {
+          varianceOut.put(variance)
+        }
         avcnt = 0
-        avsum = 0
+        vals.length = 0
       }
     }
   }
 }
 
+
+
 export default Timing
diff --git a/hunks/hunks.js b/hunks/hunks.js
index c877195..a969989 100644
--- a/hunks/hunks.js
+++ b/hunks/hunks.js
@@ -119,8 +119,8 @@ function Input(type, name, parent, linktype) {
   }
 
   this.disconnectAll = () => {
-    for (let op of this.connections) {
-      op.remove(this)
+    for (let cn of this.connections) {
+      cn.op.remove(this)
     }
   }
 
@@ -264,9 +264,9 @@ function Output(type, name, parent, linktype) {
   }
 
   this.disconnectAll = () => {
-    for (let ip of this.connections) {
+    for (let cn of this.connections) {
       // here we're disconnecting the input, meaning the input is removing this from its list of connections
-      ip.disconnect(this)
+      cn.ip.disconnect(this)
     }
     // this is actually a genuine way to delete an array in js, http://shrugguy.com
     this.connections.length = 0
diff --git a/hunks/output/linechart.js b/hunks/output/linechart.js
index 596fa1c..e6bf556 100644
--- a/hunks/output/linechart.js
+++ b/hunks/output/linechart.js
@@ -13,20 +13,25 @@ import {
   State
 } from '../hunks.js'
 
+// make input a reference'd array obj
+// make a hunk to save those arrays to disk
+
 function LineChart() {
   Hunkify(this)
   //
-  let xIn = new Input('number', 'xVar', this)
-  let yIn = new Input('number', 'yVar', this)
-  this.inputs.push(xIn, yIn)
+  let dtRef = new Input('reference', 'array', this)
+  this.inputs.push(dtRef)
   // how many to keep
-  let keepers = new State('number', 'keepers', 50)
-  this.states.push(keepers)
+  let displayNum = new State('number', 'displayCount', 50)
+  this.states.push(displayNum)
   //
+  let uniqueDivId = ''
   this.dom = {}
   this.init = () => {
     console.log('HELLO linechart')
-    this.dom = $('<div>').attr('id', 'uniquechart').get(0)
+    // make a unique id
+    uniqueDivId = 'linechart_div_' + Math.round(Math.random() * 1000)
+    this.dom = $('<div>').attr('id', uniqueDivId).get(0)
   }
 
   var datas = [
@@ -68,9 +73,9 @@ function LineChart() {
         return d[1];
       })])
       if(thesvg){
-        d3.select('#uniquechart').selectAll("*").remove()
+        d3.select(`#${uniqueDivId}`).selectAll("*").remove()
       }
-      thesvg = d3.select('#uniquechart').append("svg")
+      thesvg = d3.select(`#${uniqueDivId}`).append("svg")
         .attr("width", width + margin.left + margin.right)
         .attr("height", height + margin.top + margin.bottom)
         .append("g")
@@ -97,14 +102,10 @@ function LineChart() {
   // hmmm
   this.loop = () => {
     // pull and append
-    if (xIn.io() && yIn.io()) {
+    if (dtRef.io()) {
       // WARN to others... the -1 is here bc is it a useful hack for jake
       // at the moment ! apologies
-      let npt = [xIn.get(), yIn.get() * -1]
-      datas.push(npt)
-      if(datas.length > keepers.value){
-        datas.shift()
-      }
+      datas = dtRef.get()
       this.reloadDatas()
     }
   }
diff --git a/hunks/primitive/counter.js b/hunks/primitive/counter.js
new file mode 100644
index 0000000..2c38685
--- /dev/null
+++ b/hunks/primitive/counter.js
@@ -0,0 +1,55 @@
+/*
+
+on event, += 1
+
+*/
+
+import {
+  Hunkify,
+  Input,
+  Output,
+  State
+} from '../hunks.js'
+
+function Counter() {
+  Hunkify(this)
+
+  let evt = new Input('any', 'event', this)
+  let resetInp = new Input('boolean', 'reset', this)
+  this.inputs.push(evt, resetInp)
+
+  let out = new Output('number', 'count', this)
+  this.outputs.push(out)
+
+  // the val,
+  let count = 0
+  let update = false
+
+  // the hack is that boolean states are often just used as buttons ...
+  let resetState = new State('boolean', 'reset', false)
+  this.states.push(resetState)
+  resetState.change = (value) => {
+    count = 0
+    update = true
+  }
+
+  // don't need to init, thx
+
+  this.loop = () => {
+    if(resetInp.io()){
+      count = 0
+      update = true
+    }
+    if(evt.io()){
+      evt.get()
+      count ++
+      update = true
+    }
+    if(!(out.io()) && update){
+      out.put(count)
+      update = false
+    }
+  }
+}
+
+export default Counter
diff --git a/libs/smallstat.js b/libs/smallstat.js
new file mode 100644
index 0000000..8dba1ee
--- /dev/null
+++ b/libs/smallstat.js
@@ -0,0 +1,90 @@
+// from https://gist.github.com/Daniel-Hug/7273430
+
+var smallstat = {
+	max: function(array) {
+		return Math.max.apply(null, array);
+	},
+
+	min: function(array) {
+		return Math.min.apply(null, array);
+	},
+
+	range: function(array) {
+		return smallstat.max(array) - smallstat.min(array);
+	},
+
+	midrange: function(array) {
+		return smallstat.range(array) / 2;
+	},
+
+	sum: function(array) {
+		var num = 0;
+		for (var i = 0, l = array.length; i < l; i++) num += array[i];
+		return num;
+	},
+
+	mean: function(array) {
+		return smallstat.sum(array) / array.length;
+	},
+
+	median: function(array) {
+		array.sort(function(a, b) {
+			return a - b;
+		});
+		var mid = array.length / 2;
+		return mid % 1 ? array[mid - 0.5] : (array[mid - 1] + array[mid]) / 2;
+	},
+
+	modes: function(array) {
+		if (!array.length) return [];
+		var modeMap = {},
+			maxCount = 0,
+			modes = [];
+
+		array.forEach(function(val) {
+			if (!modeMap[val]) modeMap[val] = 1;
+			else modeMap[val]++;
+
+			if (modeMap[val] > maxCount) {
+				modes = [val];
+				maxCount = modeMap[val];
+			}
+			else if (modeMap[val] === maxCount) {
+				modes.push(val);
+				maxCount = modeMap[val];
+			}
+		});
+		return modes;
+	},
+
+	variance: function(array) {
+		var mean = smallstat.mean(array);
+		return smallstat.mean(array.map(function(num) {
+			return Math.pow(num - mean, 2);
+		}));
+	},
+
+	standardDeviation: function(array) {
+		return Math.sqrt(smallstat.variance(array));
+	},
+
+	meanAbsoluteDeviation: function(array) {
+		var mean = smallstat.mean(array);
+		return smallstat.mean(array.map(function(num) {
+			return Math.abs(num - mean);
+		}));
+	},
+
+	zScores: function(array) {
+		var mean = smallstat.mean(array);
+		var standardDeviation = smallstat.standardDeviation(array);
+		return array.map(function(num) {
+			return (num - mean) / standardDeviation;
+		});
+	}
+};
+
+// Function aliases:
+smallstat.average = smallstat.mean;
+
+export default smallstat
diff --git a/save/contexts/cuttlefish/accumulate-test.json b/save/contexts/cuttlefish/accumulate-test.json
new file mode 100644
index 0000000..e6780f0
--- /dev/null
+++ b/save/contexts/cuttlefish/accumulate-test.json
@@ -0,0 +1,151 @@
+{
+  "interpreterName": "cuttlefish",
+  "interpreterVersion": "v0.1",
+  "hunks": [
+    {
+      "type": "manager",
+      "name": "nrol",
+      "inputs": [
+        {
+          "name": "msgs",
+          "type": "byteArray"
+        }
+      ],
+      "outputs": [
+        {
+          "name": "msgs",
+          "type": "byteArray",
+          "connections": [
+            {
+              "inHunkIndex": 1,
+              "inHunkInput": 0
+            }
+          ]
+        }
+      ],
+      "states": []
+    },
+    {
+      "type": "view",
+      "name": "tlview",
+      "inputs": [
+        {
+          "name": "msgs",
+          "type": "byteArray"
+        }
+      ],
+      "outputs": [
+        {
+          "name": "msgs",
+          "type": "byteArray",
+          "connections": [
+            {
+              "inHunkIndex": 0,
+              "inHunkInput": 0
+            }
+          ]
+        }
+      ],
+      "states": []
+    },
+    {
+      "type": "interface/number",
+      "name": "interface/number_2",
+      "inputs": [],
+      "outputs": [
+        {
+          "name": "num",
+          "type": "number",
+          "connections": [
+            {
+              "inHunkIndex": 3,
+              "inHunkInput": 0
+            }
+          ]
+        }
+      ],
+      "states": [
+        {
+          "name": "numrep",
+          "type": "number",
+          "value": 275074
+        }
+      ]
+    },
+    {
+      "type": "data/accumulator",
+      "name": "data/accumulator_3",
+      "inputs": [
+        {
+          "name": "x",
+          "type": "number"
+        },
+        {
+          "name": "y",
+          "type": "number"
+        }
+      ],
+      "outputs": [
+        {
+          "name": "accumulated",
+          "type": "reference",
+          "connections": [
+            {
+              "inHunkIndex": 5,
+              "inHunkInput": 0
+            }
+          ]
+        }
+      ],
+      "states": [
+        {
+          "name": "reset",
+          "type": "boolean",
+          "value": false
+        }
+      ]
+    },
+    {
+      "type": "interface/number",
+      "name": "interface/number_4",
+      "inputs": [],
+      "outputs": [
+        {
+          "name": "num",
+          "type": "number",
+          "connections": [
+            {
+              "inHunkIndex": 3,
+              "inHunkInput": 1
+            }
+          ]
+        }
+      ],
+      "states": [
+        {
+          "name": "numrep",
+          "type": "number",
+          "value": 275075
+        }
+      ]
+    },
+    {
+      "type": "output/linechart",
+      "name": "output/linechart_5",
+      "inputs": [
+        {
+          "name": "array",
+          "type": "reference"
+        }
+      ],
+      "outputs": [],
+      "states": [
+        {
+          "name": "displayCount",
+          "type": "number",
+          "value": 50
+        }
+      ]
+    }
+  ]
+}
\ No newline at end of file
diff --git a/save/systems/bbstp-00.json b/save/systems/bbstp-00.json
new file mode 100644
index 0000000..261b49c
--- /dev/null
+++ b/save/systems/bbstp-00.json
@@ -0,0 +1,330 @@
+{
+  "interpreterName": "cuttlefish",
+  "interpreterVersion": "v0.1",
+  "hunks": [
+    {
+      "type": "manager",
+      "name": "nrol",
+      "inputs": [
+        {
+          "name": "msgs",
+          "type": "byteArray"
+        }
+      ],
+      "outputs": [
+        {
+          "name": "msgs",
+          "type": "byteArray",
+          "connections": [
+            {
+              "inHunkIndex": 1,
+              "inHunkInput": 0
+            }
+          ]
+        }
+      ],
+      "states": []
+    },
+    {
+      "type": "view",
+      "name": "tlview",
+      "inputs": [
+        {
+          "name": "msgs",
+          "type": "byteArray"
+        }
+      ],
+      "outputs": [
+        {
+          "name": "msgs",
+          "type": "byteArray",
+          "connections": [
+            {
+              "inHunkIndex": 0,
+              "inHunkInput": 0
+            }
+          ]
+        }
+      ],
+      "states": []
+    },
+    {
+      "type": "debug/timing",
+      "name": "debug/timing_2",
+      "inputs": [
+        {
+          "name": "thru",
+          "type": "boolean"
+        }
+      ],
+      "outputs": [
+        {
+          "name": "thru",
+          "type": "boolean",
+          "connections": [
+            {
+              "inHunkIndex": 3,
+              "inHunkInput": 0
+            }
+          ]
+        },
+        {
+          "name": "mean (ms)",
+          "type": "number",
+          "connections": [
+            {
+              "inHunkIndex": 5,
+              "inHunkInput": 0
+            },
+            {
+              "inHunkIndex": 7,
+              "inHunkInput": 2
+            }
+          ]
+        },
+        {
+          "name": "variance",
+          "type": "number",
+          "connections": [
+            {
+              "inHunkIndex": 8,
+              "inHunkInput": 2
+            }
+          ]
+        }
+      ],
+      "states": [
+        {
+          "name": "average",
+          "type": "number",
+          "value": 100
+        },
+        {
+          "name": "log",
+          "type": "boolean",
+          "value": true
+        }
+      ]
+    },
+    {
+      "type": "math/booleaninversion",
+      "name": "math/booleaninversion_3",
+      "inputs": [
+        {
+          "name": "state",
+          "type": "boolean"
+        }
+      ],
+      "outputs": [
+        {
+          "name": "inverted",
+          "type": "boolean",
+          "connections": [
+            {
+              "inHunkIndex": 2,
+              "inHunkInput": 0
+            }
+          ]
+        }
+      ],
+      "states": []
+    },
+    {
+      "type": "interface/button",
+      "name": "interface/button_4",
+      "inputs": [
+        {
+          "name": "trigger",
+          "type": "any"
+        }
+      ],
+      "outputs": [
+        {
+          "name": "onclick",
+          "type": "boolean",
+          "connections": [
+            {
+              "inHunkIndex": 2,
+              "inHunkInput": 0
+            }
+          ]
+        }
+      ],
+      "states": []
+    },
+    {
+      "type": "primitive/counter",
+      "name": "primitive/counter_5",
+      "inputs": [
+        {
+          "name": "event",
+          "type": "any"
+        },
+        {
+          "name": "reset",
+          "type": "boolean"
+        }
+      ],
+      "outputs": [
+        {
+          "name": "count",
+          "type": "number",
+          "connections": [
+            {
+              "inHunkIndex": 7,
+              "inHunkInput": 1
+            },
+            {
+              "inHunkIndex": 8,
+              "inHunkInput": 1
+            }
+          ]
+        }
+      ],
+      "states": [
+        {
+          "name": "reset",
+          "type": "boolean",
+          "value": false
+        }
+      ]
+    },
+    {
+      "type": "output/linechart",
+      "name": "output/linechart_6",
+      "inputs": [
+        {
+          "name": "array",
+          "type": "reference"
+        }
+      ],
+      "outputs": [],
+      "states": [
+        {
+          "name": "displayCount",
+          "type": "number",
+          "value": 50
+        }
+      ]
+    },
+    {
+      "type": "data/accumulator",
+      "name": "data/accumulator_7",
+      "inputs": [
+        {
+          "name": "reset",
+          "type": "boolean"
+        },
+        {
+          "name": "x",
+          "type": "number"
+        },
+        {
+          "name": "y",
+          "type": "number"
+        }
+      ],
+      "outputs": [
+        {
+          "name": "accumulated",
+          "type": "reference",
+          "connections": [
+            {
+              "inHunkIndex": 6,
+              "inHunkInput": 0
+            }
+          ]
+        }
+      ],
+      "states": [
+        {
+          "name": "reset",
+          "type": "boolean",
+          "value": false
+        }
+      ]
+    },
+    {
+      "type": "data/accumulator",
+      "name": "data/accumulator_8",
+      "inputs": [
+        {
+          "name": "reset",
+          "type": "boolean"
+        },
+        {
+          "name": "x",
+          "type": "number"
+        },
+        {
+          "name": "y",
+          "type": "number"
+        }
+      ],
+      "outputs": [
+        {
+          "name": "accumulated",
+          "type": "reference",
+          "connections": [
+            {
+              "inHunkIndex": 9,
+              "inHunkInput": 0
+            }
+          ]
+        }
+      ],
+      "states": [
+        {
+          "name": "reset",
+          "type": "boolean",
+          "value": false
+        }
+      ]
+    },
+    {
+      "type": "output/linechart",
+      "name": "output/linechart_9",
+      "inputs": [
+        {
+          "name": "array",
+          "type": "reference"
+        }
+      ],
+      "outputs": [],
+      "states": [
+        {
+          "name": "displayCount",
+          "type": "number",
+          "value": 50
+        }
+      ]
+    },
+    {
+      "type": "interface/button",
+      "name": "interface/button_10",
+      "inputs": [
+        {
+          "name": "trigger",
+          "type": "any"
+        }
+      ],
+      "outputs": [
+        {
+          "name": "onclick",
+          "type": "boolean",
+          "connections": [
+            {
+              "inHunkIndex": 7,
+              "inHunkInput": 0
+            },
+            {
+              "inHunkIndex": 8,
+              "inHunkInput": 0
+            }
+          ]
+        }
+      ],
+      "states": []
+    }
+  ]
+}
\ No newline at end of file
diff --git a/save/systems/pdev-rj45-02-da.json b/save/systems/bughuntr-lpusb-01.json
similarity index 85%
rename from save/systems/pdev-rj45-02-da.json
rename to save/systems/bughuntr-lpusb-01.json
index 08e18c0..9b7b6f5 100644
--- a/save/systems/pdev-rj45-02-da.json
+++ b/save/systems/bughuntr-lpusb-01.json
@@ -63,10 +63,6 @@
         {
           "name": "auto_0_3",
           "type": "byteArray"
-        },
-        {
-          "name": "auto_241_3",
-          "type": "byteArray"
         }
       ],
       "outputs": [
@@ -99,16 +95,6 @@
               "inHunkInput": 0
             }
           ]
-        },
-        {
-          "name": "auto_241_2",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": 7,
-              "inHunkInput": 0
-            }
-          ]
         }
       ],
       "states": [
@@ -125,12 +111,12 @@
         {
           "name": "inputList",
           "type": "string",
-          "value": "mgrMsgs (byteArray), auto_0_3 (byteArray), auto_241_3 (byteArray)"
+          "value": "mgrMsgs (byteArray), auto_0_3 (byteArray)"
         },
         {
           "name": "outputList",
           "type": "string",
-          "value": "mgrMsgs (byteArray), auto_0_2 (byteArray), auto_241_2 (byteArray)"
+          "value": "mgrMsgs (byteArray), auto_0_2 (byteArray)"
         }
       ],
       "contains": {
@@ -175,10 +161,6 @@
               {
                 "name": "auto_0_3",
                 "type": "byteArray"
-              },
-              {
-                "name": "at3",
-                "type": "byteArray"
               }
             ],
             "outputs": [
@@ -211,20 +193,6 @@
                     "inHunkInput": 1
                   }
                 ]
-              },
-              {
-                "name": "auto_8_3",
-                "type": "byteArray",
-                "connections": [
-                  {
-                    "inHunkIndex": 3,
-                    "inHunkInput": 2
-                  }
-                ]
-              },
-              {
-                "name": "at2",
-                "type": "byteArray"
               }
             ],
             "states": [
@@ -241,12 +209,12 @@
               {
                 "name": "inputList",
                 "type": "string",
-                "value": "mgrMsgs (byteArray), auto_0_3 (byteArray), at3 (byteArray)"
+                "value": "mgrMsgs (byteArray), auto_0_3 (byteArray)"
               },
               {
                 "name": "outputList",
                 "type": "string",
-                "value": "mgrMsgs (byteArray), auto_0_2 (byteArray), auto_8_3 (byteArray), at2 (byteArray)"
+                "value": "mgrMsgs (byteArray), auto_0_2 (byteArray)"
               }
             ]
           },
@@ -297,8 +265,8 @@
                 "type": "byteArray"
               },
               {
-                "name": "auto_160_2",
-                "type": "byteArray"
+                "name": "auto_134_3",
+                "type": "boolean"
               }
             ],
             "outputs": [
@@ -323,12 +291,12 @@
                 ]
               },
               {
-                "name": "at",
-                "type": "byteArray",
+                "name": "auto_123_2",
+                "type": "boolean",
                 "connections": [
                   {
-                    "inHunkIndex": 1,
-                    "inHunkInput": 3
+                    "inHunkIndex": 5,
+                    "inHunkInput": 0
                   }
                 ]
               }
@@ -347,12 +315,12 @@
               {
                 "name": "inputList",
                 "type": "string",
-                "value": "mgrMsgs (byteArray), auto_160_2 (byteArray)"
+                "value": "mgrMsgs (byteArray), auto_134_3 (boolean)"
               },
               {
                 "name": "outputList",
                 "type": "string",
-                "value": "mgrMsgs (byteArray), at (byteArray)"
+                "value": "mgrMsgs (byteArray), auto_123_2 (boolean)"
               }
             ],
             "contains": {
@@ -395,8 +363,8 @@
                       "type": "byteArray"
                     },
                     {
-                      "name": "at_1024",
-                      "type": "byteArray"
+                      "name": "auto_217_2",
+                      "type": "boolean"
                     }
                   ],
                   "outputs": [
@@ -419,6 +387,16 @@
                           "inHunkInput": 0
                         }
                       ]
+                    },
+                    {
+                      "name": "auto_29_3",
+                      "type": "boolean",
+                      "connections": [
+                        {
+                          "inHunkIndex": 3,
+                          "inHunkInput": 0
+                        }
+                      ]
                     }
                   ],
                   "states": [
@@ -435,12 +413,12 @@
                     {
                       "name": "inputList",
                       "type": "string",
-                      "value": "mgrMsgs (byteArray), at (byteArray)"
+                      "value": "mgrMsgs (byteArray), auto_217_2 (boolean)"
                     },
                     {
                       "name": "outputList",
                       "type": "string",
-                      "value": "mgrMsgs (byteArray), at (byteArray)"
+                      "value": "mgrMsgs (byteArray), auto_29_3 (boolean)"
                     }
                   ]
                 },
@@ -466,6 +444,29 @@
                     }
                   ],
                   "states": []
+                },
+                {
+                  "type": "math/booleaninversion",
+                  "name": "math/booleaninversion_3",
+                  "inputs": [
+                    {
+                      "name": "state",
+                      "type": "boolean"
+                    }
+                  ],
+                  "outputs": [
+                    {
+                      "name": "inverted",
+                      "type": "boolean",
+                      "connections": [
+                        {
+                          "inHunkIndex": 1,
+                          "inHunkInput": 2
+                        }
+                      ]
+                    }
+                  ],
+                  "states": []
                 }
               ]
             }
@@ -508,6 +509,29 @@
                 "value": false
               }
             ]
+          },
+          {
+            "type": "math/booleaninversion",
+            "name": "math/booleaninversion_5",
+            "inputs": [
+              {
+                "name": "state",
+                "type": "boolean"
+              }
+            ],
+            "outputs": [
+              {
+                "name": "inverted",
+                "type": "boolean",
+                "connections": [
+                  {
+                    "inHunkIndex": 3,
+                    "inHunkInput": 2
+                  }
+                ]
+              }
+            ],
+            "states": []
           }
         ]
       }
@@ -542,7 +566,7 @@
         {
           "name": "retrycount",
           "type": "number",
-          "value": 1
+          "value": 3
         },
         {
           "name": "retryreset",
@@ -606,58 +630,6 @@
         }
       ],
       "states": []
-    },
-    {
-      "type": "debug/bytearrayoutput",
-      "name": "debug/bytearrayoutput_6",
-      "inputs": [],
-      "outputs": [
-        {
-          "name": "source",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": 2,
-              "inHunkInput": 3
-            }
-          ]
-        }
-      ],
-      "states": [
-        {
-          "name": "gobutton",
-          "type": "boolean",
-          "value": false
-        },
-        {
-          "name": "prefix",
-          "type": "string",
-          "value": "85, 86, 87, 88"
-        }
-      ]
-    },
-    {
-      "type": "debug/logger",
-      "name": "debug/logger_7",
-      "inputs": [
-        {
-          "name": "tolog",
-          "type": "any"
-        }
-      ],
-      "outputs": [],
-      "states": [
-        {
-          "name": "prefix",
-          "type": "string",
-          "value": "LOG:"
-        },
-        {
-          "name": "console",
-          "type": "boolean",
-          "value": true
-        }
-      ]
     }
   ]
-}
+}
\ No newline at end of file
diff --git a/save/systems/pdev-rj45-ringer.json b/save/systems/bughuntr-lpusb-02.json
similarity index 86%
rename from save/systems/pdev-rj45-ringer.json
rename to save/systems/bughuntr-lpusb-02.json
index 138937b..6ea5f61 100644
--- a/save/systems/pdev-rj45-ringer.json
+++ b/save/systems/bughuntr-lpusb-02.json
@@ -65,8 +65,8 @@
           "type": "byteArray"
         },
         {
-          "name": "auto_38_3",
-          "type": "byteArray"
+          "name": "auto_132_3",
+          "type": "boolean"
         }
       ],
       "outputs": [
@@ -99,16 +99,6 @@
               "inHunkInput": 0
             }
           ]
-        },
-        {
-          "name": "auto_177_3",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": 7,
-              "inHunkInput": 0
-            }
-          ]
         }
       ],
       "states": [
@@ -125,12 +115,12 @@
         {
           "name": "inputList",
           "type": "string",
-          "value": "mgrMsgs (byteArray), auto_0_3 (byteArray), auto_38_3 (byteArray)"
+          "value": "mgrMsgs (byteArray), auto_0_3 (byteArray), auto_132_3 (boolean)"
         },
         {
           "name": "outputList",
           "type": "string",
-          "value": "mgrMsgs (byteArray), auto_0_2 (byteArray), auto_177_3 (byteArray)"
+          "value": "mgrMsgs (byteArray), auto_0_2 (byteArray)"
         }
       ],
       "contains": {
@@ -175,10 +165,6 @@
               {
                 "name": "auto_0_3",
                 "type": "byteArray"
-              },
-              {
-                "name": "auto_111_4",
-                "type": "byteArray"
               }
             ],
             "outputs": [
@@ -213,12 +199,12 @@
                 ]
               },
               {
-                "name": "auto_172_3",
-                "type": "byteArray",
+                "name": "auto_112_3",
+                "type": "boolean",
                 "connections": [
                   {
-                    "inHunkIndex": 3,
-                    "inHunkInput": 2
+                    "inHunkIndex": 5,
+                    "inHunkInput": 0
                   }
                 ]
               }
@@ -237,12 +223,12 @@
               {
                 "name": "inputList",
                 "type": "string",
-                "value": "mgrMsgs (byteArray), auto_0_3 (byteArray), auto_111_4 (byteArray)"
+                "value": "mgrMsgs (byteArray), auto_0_3 (byteArray)"
               },
               {
                 "name": "outputList",
                 "type": "string",
-                "value": "mgrMsgs (byteArray), auto_0_2 (byteArray), auto_172_3 (byteArray)"
+                "value": "mgrMsgs (byteArray), auto_0_2 (byteArray), auto_112_3 (boolean)"
               }
             ]
           },
@@ -293,8 +279,8 @@
                 "type": "byteArray"
               },
               {
-                "name": "auto_170_2",
-                "type": "byteArray"
+                "name": "auto_47_3",
+                "type": "boolean"
               }
             ],
             "outputs": [
@@ -319,12 +305,12 @@
                 ]
               },
               {
-                "name": "auto_0_2",
-                "type": "byteArray",
+                "name": "auto_35_2",
+                "type": "boolean",
                 "connections": [
                   {
-                    "inHunkIndex": 1,
-                    "inHunkInput": 3
+                    "inHunkIndex": 5,
+                    "inHunkInput": 0
                   }
                 ]
               }
@@ -343,12 +329,12 @@
               {
                 "name": "inputList",
                 "type": "string",
-                "value": "mgrMsgs (byteArray), auto_170_2 (byteArray)"
+                "value": "mgrMsgs (byteArray), auto_47_3 (boolean)"
               },
               {
                 "name": "outputList",
                 "type": "string",
-                "value": "mgrMsgs (byteArray), auto_0_2 (byteArray)"
+                "value": "mgrMsgs (byteArray), auto_35_2 (boolean)"
               }
             ],
             "contains": {
@@ -391,8 +377,8 @@
                       "type": "byteArray"
                     },
                     {
-                      "name": "auto_96_3_512",
-                      "type": "byteArray"
+                      "name": "auto_67_2",
+                      "type": "boolean"
                     }
                   ],
                   "outputs": [
@@ -417,8 +403,8 @@
                       ]
                     },
                     {
-                      "name": "auto_77_3_512",
-                      "type": "byteArray",
+                      "name": "auto_180_3",
+                      "type": "boolean",
                       "connections": [
                         {
                           "inHunkIndex": 3,
@@ -441,12 +427,12 @@
                     {
                       "name": "inputList",
                       "type": "string",
-                      "value": "mgrMsgs (byteArray), auto_96_3 (byteArray)"
+                      "value": "mgrMsgs (byteArray), auto_67_2 (boolean)"
                     },
                     {
                       "name": "outputList",
                       "type": "string",
-                      "value": "mgrMsgs (byteArray), auto_77_3 (byteArray)"
+                      "value": "mgrMsgs (byteArray), auto_180_3 (boolean)"
                     }
                   ]
                 },
@@ -474,18 +460,18 @@
                   "states": []
                 },
                 {
-                  "type": "comm/COBSerialRJ45_A",
-                  "name": "comm/COBSerialRJ45_A_3",
+                  "type": "math/booleaninversion",
+                  "name": "math/booleaninversion_3",
                   "inputs": [
                     {
-                      "name": "data_1024",
-                      "type": "byteArray"
+                      "name": "state",
+                      "type": "boolean"
                     }
                   ],
                   "outputs": [
                     {
-                      "name": "data_1024",
-                      "type": "byteArray",
+                      "name": "inverted",
+                      "type": "boolean",
                       "connections": [
                         {
                           "inHunkIndex": 1,
@@ -537,6 +523,35 @@
                 "value": false
               }
             ]
+          },
+          {
+            "type": "debug/timing",
+            "name": "debug/timing_5",
+            "inputs": [
+              {
+                "name": "thru",
+                "type": "boolean"
+              }
+            ],
+            "outputs": [
+              {
+                "name": "thru",
+                "type": "boolean",
+                "connections": [
+                  {
+                    "inHunkIndex": 3,
+                    "inHunkInput": 2
+                  }
+                ]
+              }
+            ],
+            "states": [
+              {
+                "name": "average",
+                "type": "number",
+                "value": 100
+              }
+            ]
           }
         ]
       }
@@ -637,13 +652,18 @@
       "states": []
     },
     {
-      "type": "debug/bytearrayoutput",
-      "name": "debug/bytearrayoutput_6",
-      "inputs": [],
+      "type": "interface/button",
+      "name": "interface/button_6",
+      "inputs": [
+        {
+          "name": "trigger",
+          "type": "any"
+        }
+      ],
       "outputs": [
         {
-          "name": "source",
-          "type": "byteArray",
+          "name": "onclick",
+          "type": "boolean",
           "connections": [
             {
               "inHunkIndex": 2,
@@ -652,41 +672,7 @@
           ]
         }
       ],
-      "states": [
-        {
-          "name": "gobutton",
-          "type": "boolean",
-          "value": false
-        },
-        {
-          "name": "prefix",
-          "type": "string",
-          "value": "85, 86, 87, 88"
-        }
-      ]
-    },
-    {
-      "type": "debug/logger",
-      "name": "debug/logger_7",
-      "inputs": [
-        {
-          "name": "tolog",
-          "type": "any"
-        }
-      ],
-      "outputs": [],
-      "states": [
-        {
-          "name": "prefix",
-          "type": "string",
-          "value": "LOG:"
-        },
-        {
-          "name": "console",
-          "type": "boolean",
-          "value": true
-        }
-      ]
+      "states": []
     }
   ]
 }
\ No newline at end of file
diff --git a/save/systems/bughuntr-lpusb-03.json b/save/systems/bughuntr-lpusb-03.json
new file mode 100644
index 0000000..7b776a8
--- /dev/null
+++ b/save/systems/bughuntr-lpusb-03.json
@@ -0,0 +1,790 @@
+{
+  "interpreterName": "cuttlefish",
+  "interpreterVersion": "v0.1",
+  "hunks": [
+    {
+      "type": "manager",
+      "name": "nrol",
+      "inputs": [
+        {
+          "name": "msgs",
+          "type": "byteArray"
+        }
+      ],
+      "outputs": [
+        {
+          "name": "msgs",
+          "type": "byteArray",
+          "connections": [
+            {
+              "inHunkIndex": 1,
+              "inHunkInput": 0
+            }
+          ]
+        }
+      ],
+      "states": []
+    },
+    {
+      "type": "view",
+      "name": "tlview",
+      "inputs": [
+        {
+          "name": "msgs",
+          "type": "byteArray"
+        }
+      ],
+      "outputs": [
+        {
+          "name": "msgs",
+          "type": "byteArray",
+          "connections": [
+            {
+              "inHunkIndex": 0,
+              "inHunkInput": 0
+            }
+          ]
+        }
+      ],
+      "states": []
+    },
+    {
+      "type": "link",
+      "name": "link_2",
+      "inputs": [
+        {
+          "name": "data",
+          "type": "byteArray"
+        },
+        {
+          "name": "mgrMsgs",
+          "type": "byteArray"
+        },
+        {
+          "name": "auto_0_3",
+          "type": "byteArray"
+        },
+        {
+          "name": "auto_132_3",
+          "type": "boolean"
+        }
+      ],
+      "outputs": [
+        {
+          "name": "data",
+          "type": "byteArray",
+          "connections": [
+            {
+              "inHunkIndex": 3,
+              "inHunkInput": 0
+            }
+          ]
+        },
+        {
+          "name": "mgrMsgs",
+          "type": "byteArray",
+          "connections": [
+            {
+              "inHunkIndex": 4,
+              "inHunkInput": 0
+            }
+          ]
+        },
+        {
+          "name": "auto_0_2",
+          "type": "byteArray",
+          "connections": [
+            {
+              "inHunkIndex": 5,
+              "inHunkInput": 0
+            }
+          ]
+        },
+        {
+          "name": "auto_6_4",
+          "type": "number",
+          "connections": [
+            {
+              "inHunkIndex": 9,
+              "inHunkInput": 1
+            },
+            {
+              "inHunkIndex": 8,
+              "inHunkInput": 0
+            }
+          ]
+        }
+      ],
+      "states": [
+        {
+          "name": "isActive",
+          "type": "boolean",
+          "value": true
+        },
+        {
+          "name": "otherLink",
+          "type": "uint16",
+          "value": 1
+        },
+        {
+          "name": "inputList",
+          "type": "string",
+          "value": "mgrMsgs (byteArray), auto_0_3 (byteArray), auto_132_3 (boolean)"
+        },
+        {
+          "name": "outputList",
+          "type": "string",
+          "value": "mgrMsgs (byteArray), auto_0_2 (byteArray), auto_6_4 (number)"
+        }
+      ],
+      "contains": {
+        "interpreterName": "nautilus",
+        "interpreterVersion": "v0.1",
+        "hunks": [
+          {
+            "type": "manager",
+            "name": "nautilus",
+            "inputs": [
+              {
+                "name": "msgs",
+                "type": "byteArray"
+              }
+            ],
+            "outputs": [
+              {
+                "name": "msgs",
+                "type": "byteArray",
+                "connections": [
+                  {
+                    "inHunkIndex": 1,
+                    "inHunkInput": 1
+                  }
+                ]
+              }
+            ],
+            "states": []
+          },
+          {
+            "type": "link",
+            "name": "link_1",
+            "inputs": [
+              {
+                "name": "data",
+                "type": "byteArray"
+              },
+              {
+                "name": "mgrMsgs",
+                "type": "byteArray"
+              },
+              {
+                "name": "auto_0_3",
+                "type": "byteArray"
+              },
+              {
+                "name": "auto_114_4",
+                "type": "number"
+              }
+            ],
+            "outputs": [
+              {
+                "name": "data",
+                "type": "byteArray",
+                "connections": [
+                  {
+                    "inHunkIndex": 2,
+                    "inHunkInput": 0
+                  }
+                ]
+              },
+              {
+                "name": "mgrMsgs",
+                "type": "byteArray",
+                "connections": [
+                  {
+                    "inHunkIndex": 0,
+                    "inHunkInput": 0
+                  }
+                ]
+              },
+              {
+                "name": "auto_0_2",
+                "type": "byteArray",
+                "connections": [
+                  {
+                    "inHunkIndex": 3,
+                    "inHunkInput": 1
+                  }
+                ]
+              },
+              {
+                "name": "auto_112_3",
+                "type": "boolean",
+                "connections": [
+                  {
+                    "inHunkIndex": 5,
+                    "inHunkInput": 0
+                  }
+                ]
+              }
+            ],
+            "states": [
+              {
+                "name": "isActive",
+                "type": "boolean",
+                "value": true
+              },
+              {
+                "name": "otherLink",
+                "type": "uint16",
+                "value": 2
+              },
+              {
+                "name": "inputList",
+                "type": "string",
+                "value": "mgrMsgs (byteArray), auto_0_3 (byteArray), auto_114_4 (number)"
+              },
+              {
+                "name": "outputList",
+                "type": "string",
+                "value": "mgrMsgs (byteArray), auto_0_2 (byteArray), auto_112_3 (boolean)"
+              }
+            ]
+          },
+          {
+            "type": "comm/websocketserver",
+            "name": "comm/websocketserver_2",
+            "inputs": [
+              {
+                "name": "data",
+                "type": "byteArray"
+              }
+            ],
+            "outputs": [
+              {
+                "name": "data",
+                "type": "byteArray",
+                "connections": [
+                  {
+                    "inHunkIndex": 1,
+                    "inHunkInput": 0
+                  }
+                ]
+              }
+            ],
+            "states": [
+              {
+                "name": "status",
+                "type": "string",
+                "value": "connected"
+              },
+              {
+                "name": "port",
+                "type": "number",
+                "value": 2042
+              }
+            ]
+          },
+          {
+            "type": "link",
+            "name": "link_3",
+            "inputs": [
+              {
+                "name": "data",
+                "type": "byteArray"
+              },
+              {
+                "name": "mgrMsgs",
+                "type": "byteArray"
+              },
+              {
+                "name": "auto_47_3",
+                "type": "boolean"
+              }
+            ],
+            "outputs": [
+              {
+                "name": "data",
+                "type": "byteArray",
+                "connections": [
+                  {
+                    "inHunkIndex": 4,
+                    "inHunkInput": 0
+                  }
+                ]
+              },
+              {
+                "name": "mgrMsgs",
+                "type": "byteArray",
+                "connections": [
+                  {
+                    "inHunkIndex": 1,
+                    "inHunkInput": 2
+                  }
+                ]
+              },
+              {
+                "name": "auto_35_2",
+                "type": "boolean",
+                "connections": [
+                  {
+                    "inHunkIndex": 5,
+                    "inHunkInput": 0
+                  }
+                ]
+              }
+            ],
+            "states": [
+              {
+                "name": "isActive",
+                "type": "boolean",
+                "value": true
+              },
+              {
+                "name": "otherLink",
+                "type": "uint16",
+                "value": 1
+              },
+              {
+                "name": "inputList",
+                "type": "string",
+                "value": "mgrMsgs (byteArray), auto_47_3 (boolean)"
+              },
+              {
+                "name": "outputList",
+                "type": "string",
+                "value": "mgrMsgs (byteArray), auto_35_2 (boolean)"
+              }
+            ],
+            "contains": {
+              "interpreterName": "ponyo",
+              "interpreterVersion": "v0.1",
+              "hunks": [
+                {
+                  "type": "manager",
+                  "name": "ponyo_one",
+                  "inputs": [
+                    {
+                      "name": "mgrMsgs_1024",
+                      "type": "byteArray"
+                    }
+                  ],
+                  "outputs": [
+                    {
+                      "name": "mgrMsgs_1024",
+                      "type": "byteArray",
+                      "connections": [
+                        {
+                          "inHunkIndex": 1,
+                          "inHunkInput": 1
+                        }
+                      ]
+                    }
+                  ],
+                  "states": []
+                },
+                {
+                  "type": "link",
+                  "name": "link_1",
+                  "inputs": [
+                    {
+                      "name": "data_1024",
+                      "type": "byteArray"
+                    },
+                    {
+                      "name": "mgrMsgs_1024",
+                      "type": "byteArray"
+                    },
+                    {
+                      "name": "auto_67_2",
+                      "type": "boolean"
+                    }
+                  ],
+                  "outputs": [
+                    {
+                      "name": "data_1024",
+                      "type": "byteArray",
+                      "connections": [
+                        {
+                          "inHunkIndex": 2,
+                          "inHunkInput": 0
+                        }
+                      ]
+                    },
+                    {
+                      "name": "mgrMsgs_1024",
+                      "type": "byteArray",
+                      "connections": [
+                        {
+                          "inHunkIndex": 0,
+                          "inHunkInput": 0
+                        }
+                      ]
+                    },
+                    {
+                      "name": "auto_180_3",
+                      "type": "boolean",
+                      "connections": [
+                        {
+                          "inHunkIndex": 3,
+                          "inHunkInput": 0
+                        }
+                      ]
+                    }
+                  ],
+                  "states": [
+                    {
+                      "name": "isActive",
+                      "type": "boolean",
+                      "value": true
+                    },
+                    {
+                      "name": "otherLink",
+                      "type": "uint16",
+                      "value": 3
+                    },
+                    {
+                      "name": "inputList",
+                      "type": "string",
+                      "value": "mgrMsgs (byteArray), auto_67_2 (boolean)"
+                    },
+                    {
+                      "name": "outputList",
+                      "type": "string",
+                      "value": "mgrMsgs (byteArray), auto_180_3 (boolean)"
+                    }
+                  ]
+                },
+                {
+                  "type": "comm/COBSerialUSB",
+                  "name": "comm/COBSerialUSB_2",
+                  "inputs": [
+                    {
+                      "name": "data_1024",
+                      "type": "byteArray"
+                    }
+                  ],
+                  "outputs": [
+                    {
+                      "name": "data_1024",
+                      "type": "byteArray",
+                      "connections": [
+                        {
+                          "inHunkIndex": 1,
+                          "inHunkInput": 0
+                        }
+                      ]
+                    }
+                  ],
+                  "states": []
+                },
+                {
+                  "type": "math/booleaninversion",
+                  "name": "math/booleaninversion_3",
+                  "inputs": [
+                    {
+                      "name": "state",
+                      "type": "boolean"
+                    }
+                  ],
+                  "outputs": [
+                    {
+                      "name": "inverted",
+                      "type": "boolean",
+                      "connections": [
+                        {
+                          "inHunkIndex": 1,
+                          "inHunkInput": 2
+                        }
+                      ]
+                    }
+                  ],
+                  "states": []
+                }
+              ]
+            }
+          },
+          {
+            "type": "comm/cobserial",
+            "name": "comm/cobserial_4",
+            "inputs": [
+              {
+                "name": "data",
+                "type": "byteArray"
+              }
+            ],
+            "outputs": [
+              {
+                "name": "data",
+                "type": "byteArray",
+                "connections": [
+                  {
+                    "inHunkIndex": 3,
+                    "inHunkInput": 0
+                  }
+                ]
+              }
+            ],
+            "states": [
+              {
+                "name": "status",
+                "type": "string",
+                "value": "closed"
+              },
+              {
+                "name": "pid",
+                "type": "string",
+                "value": "8022"
+              },
+              {
+                "name": "refresh",
+                "type": "boolean",
+                "value": false
+              }
+            ]
+          },
+          {
+            "type": "debug/timing",
+            "name": "debug/timing_5",
+            "inputs": [
+              {
+                "name": "thru",
+                "type": "boolean"
+              }
+            ],
+            "outputs": [
+              {
+                "name": "thru",
+                "type": "boolean",
+                "connections": [
+                  {
+                    "inHunkIndex": 3,
+                    "inHunkInput": 2
+                  }
+                ]
+              },
+              {
+                "name": "result (us)",
+                "type": "number",
+                "connections": [
+                  {
+                    "inHunkIndex": 1,
+                    "inHunkInput": 3
+                  }
+                ]
+              }
+            ],
+            "states": [
+              {
+                "name": "average",
+                "type": "number",
+                "value": 1000
+              }
+            ]
+          }
+        ]
+      }
+    },
+    {
+      "type": "comm/websocketclient",
+      "name": "comm/websocketclient_3",
+      "inputs": [
+        {
+          "name": "data",
+          "type": "byteArray"
+        }
+      ],
+      "outputs": [
+        {
+          "name": "data",
+          "type": "byteArray",
+          "connections": [
+            {
+              "inHunkIndex": 2,
+              "inHunkInput": 0
+            }
+          ]
+        }
+      ],
+      "states": [
+        {
+          "name": "status",
+          "type": "string",
+          "value": "open"
+        },
+        {
+          "name": "retrycount",
+          "type": "number",
+          "value": 3
+        },
+        {
+          "name": "retryreset",
+          "type": "boolean",
+          "value": false
+        },
+        {
+          "name": "address",
+          "type": "string",
+          "value": "127.0.0.1"
+        },
+        {
+          "name": "port",
+          "type": "number",
+          "value": 2042
+        }
+      ]
+    },
+    {
+      "type": "view",
+      "name": "view_4",
+      "inputs": [
+        {
+          "name": "msgs",
+          "type": "byteArray"
+        }
+      ],
+      "outputs": [
+        {
+          "name": "msgs",
+          "type": "byteArray",
+          "connections": [
+            {
+              "inHunkIndex": 2,
+              "inHunkInput": 1
+            }
+          ]
+        }
+      ],
+      "states": []
+    },
+    {
+      "type": "view",
+      "name": "view_5",
+      "inputs": [
+        {
+          "name": "msgs",
+          "type": "byteArray"
+        }
+      ],
+      "outputs": [
+        {
+          "name": "msgs",
+          "type": "byteArray",
+          "connections": [
+            {
+              "inHunkIndex": 2,
+              "inHunkInput": 2
+            }
+          ]
+        }
+      ],
+      "states": []
+    },
+    {
+      "type": "interface/button",
+      "name": "interface/button_6",
+      "inputs": [
+        {
+          "name": "trigger",
+          "type": "any"
+        }
+      ],
+      "outputs": [
+        {
+          "name": "onclick",
+          "type": "boolean",
+          "connections": [
+            {
+              "inHunkIndex": 2,
+              "inHunkInput": 3
+            }
+          ]
+        }
+      ],
+      "states": []
+    },
+    {
+      "type": "output/linechart",
+      "name": "output/linechart_7",
+      "inputs": [
+        {
+          "name": "array",
+          "type": "reference"
+        }
+      ],
+      "outputs": [],
+      "states": [
+        {
+          "name": "displayCount",
+          "type": "number",
+          "value": 50
+        }
+      ]
+    },
+    {
+      "type": "primitive/counter",
+      "name": "primitive/counter_8",
+      "inputs": [
+        {
+          "name": "event",
+          "type": "any"
+        },
+        {
+          "name": "reset",
+          "type": "boolean"
+        }
+      ],
+      "outputs": [
+        {
+          "name": "count",
+          "type": "number",
+          "connections": [
+            {
+              "inHunkIndex": 9,
+              "inHunkInput": 0
+            }
+          ]
+        }
+      ],
+      "states": [
+        {
+          "name": "reset",
+          "type": "boolean",
+          "value": false
+        }
+      ]
+    },
+    {
+      "type": "data/accumulator",
+      "name": "data/accumulator_9",
+      "inputs": [
+        {
+          "name": "x",
+          "type": "number"
+        },
+        {
+          "name": "y",
+          "type": "number"
+        }
+      ],
+      "outputs": [
+        {
+          "name": "accumulated",
+          "type": "reference",
+          "connections": [
+            {
+              "inHunkIndex": 7,
+              "inHunkInput": 0
+            }
+          ]
+        }
+      ],
+      "states": [
+        {
+          "name": "reset",
+          "type": "boolean",
+          "value": false
+        }
+      ]
+    }
+  ]
+}
\ No newline at end of file
diff --git a/save/systems/jog-sg-prep.json b/save/systems/bughuntr-lpusb-04.json
similarity index 76%
rename from save/systems/jog-sg-prep.json
rename to save/systems/bughuntr-lpusb-04.json
index 4d2ac62..7d337c5 100644
--- a/save/systems/jog-sg-prep.json
+++ b/save/systems/bughuntr-lpusb-04.json
@@ -65,11 +65,7 @@
           "type": "byteArray"
         },
         {
-          "name": "auto_165_3",
-          "type": "boolean"
-        },
-        {
-          "name": "auto_156_3",
+          "name": "auto_132_3",
           "type": "boolean"
         }
       ],
@@ -105,22 +101,20 @@
           ]
         },
         {
-          "name": "auto_187_5",
+          "name": "auto_6_4",
           "type": "number",
           "connections": [
             {
-              "inHunkIndex": 7,
+              "inHunkIndex": 9,
+              "inHunkInput": 1
+            },
+            {
+              "inHunkIndex": 8,
               "inHunkInput": 0
-            }
-          ]
-        },
-        {
-          "name": "auto_125_3",
-          "type": "uint32",
-          "connections": [
+            },
             {
-              "inHunkIndex": 7,
-              "inHunkInput": 1
+              "inHunkIndex": 10,
+              "inHunkInput": 0
             }
           ]
         }
@@ -139,12 +133,12 @@
         {
           "name": "inputList",
           "type": "string",
-          "value": "mgrMsgs (byteArray), auto_0_3 (byteArray), auto_165_3 (boolean), auto_156_3 (boolean)"
+          "value": "mgrMsgs (byteArray), auto_0_3 (byteArray), auto_132_3 (boolean)"
         },
         {
           "name": "outputList",
           "type": "string",
-          "value": "mgrMsgs (byteArray), auto_0_2 (byteArray), auto_187_5 (number), auto_125_3 (uint32)"
+          "value": "mgrMsgs (byteArray), auto_0_2 (byteArray), auto_6_4 (number)"
         }
       ],
       "contains": {
@@ -191,12 +185,8 @@
                 "type": "byteArray"
               },
               {
-                "name": "auto_52_5",
+                "name": "auto_114_4",
                 "type": "number"
-              },
-              {
-                "name": "auto_196_5",
-                "type": "uint32"
               }
             ],
             "outputs": [
@@ -231,7 +221,7 @@
                 ]
               },
               {
-                "name": "auto_196_3",
+                "name": "auto_112_3",
                 "type": "boolean",
                 "connections": [
                   {
@@ -239,16 +229,6 @@
                     "inHunkInput": 0
                   }
                 ]
-              },
-              {
-                "name": "auto_239_3",
-                "type": "boolean",
-                "connections": [
-                  {
-                    "inHunkIndex": 5,
-                    "inHunkInput": 1
-                  }
-                ]
               }
             ],
             "states": [
@@ -265,12 +245,12 @@
               {
                 "name": "inputList",
                 "type": "string",
-                "value": "mgrMsgs (byteArray), auto_0_3 (byteArray), auto_52_5 (number), auto_196_5 (uint32)"
+                "value": "mgrMsgs (byteArray), auto_0_3 (byteArray), auto_114_4 (number)"
               },
               {
                 "name": "outputList",
                 "type": "string",
-                "value": "mgrMsgs (byteArray), auto_0_2 (byteArray), auto_196_3 (boolean), auto_239_3 (boolean)"
+                "value": "mgrMsgs (byteArray), auto_0_2 (byteArray), auto_112_3 (boolean)"
               }
             ]
           },
@@ -321,8 +301,8 @@
                 "type": "byteArray"
               },
               {
-                "name": "auto_147_2",
-                "type": "int32"
+                "name": "auto_47_3",
+                "type": "boolean"
               }
             ],
             "outputs": [
@@ -347,28 +327,14 @@
                 ]
               },
               {
-                "name": "auto_204_3",
-                "type": "int32",
+                "name": "auto_35_2",
+                "type": "boolean",
                 "connections": [
                   {
                     "inHunkIndex": 5,
-                    "inHunkInput": 2
-                  },
-                  {
-                    "inHunkIndex": 6,
                     "inHunkInput": 0
                   }
                 ]
-              },
-              {
-                "name": "auto_100_3",
-                "type": "uint32",
-                "connections": [
-                  {
-                    "inHunkIndex": 1,
-                    "inHunkInput": 4
-                  }
-                ]
               }
             ],
             "states": [
@@ -385,12 +351,12 @@
               {
                 "name": "inputList",
                 "type": "string",
-                "value": "mgrMsgs (byteArray), auto_147_2 (int32)"
+                "value": "mgrMsgs (byteArray), auto_47_3 (boolean)"
               },
               {
                 "name": "outputList",
                 "type": "string",
-                "value": "mgrMsgs (byteArray), auto_204_3 (int32), auto_100_3 (uint32)"
+                "value": "mgrMsgs (byteArray), auto_35_2 (boolean)"
               }
             ],
             "contains": {
@@ -433,12 +399,8 @@
                       "type": "byteArray"
                     },
                     {
-                      "name": "auto_142_3",
-                      "type": "int32"
-                    },
-                    {
-                      "name": "auto_106_3",
-                      "type": "uint32"
+                      "name": "auto_67_2",
+                      "type": "boolean"
                     }
                   ],
                   "outputs": [
@@ -463,8 +425,8 @@
                       ]
                     },
                     {
-                      "name": "auto_90_2",
-                      "type": "int32",
+                      "name": "auto_180_3",
+                      "type": "boolean",
                       "connections": [
                         {
                           "inHunkIndex": 3,
@@ -487,12 +449,12 @@
                     {
                       "name": "inputList",
                       "type": "string",
-                      "value": "mgrMsgs (byteArray), auto_142_3 (int32), auto_106_3 (uint32)"
+                      "value": "mgrMsgs (byteArray), auto_67_2 (boolean)"
                     },
                     {
                       "name": "outputList",
                       "type": "string",
-                      "value": "mgrMsgs (byteArray), auto_90_2 (int32)"
+                      "value": "mgrMsgs (byteArray), auto_180_3 (boolean)"
                     }
                   ]
                 },
@@ -520,37 +482,27 @@
                   "states": []
                 },
                 {
-                  "type": "stepper",
-                  "name": "stepper_3",
+                  "type": "math/booleaninversion",
+                  "name": "math/booleaninversion_3",
                   "inputs": [
                     {
-                      "name": "increment",
-                      "type": "int32"
+                      "name": "state",
+                      "type": "boolean"
                     }
                   ],
                   "outputs": [
                     {
-                      "name": "increment",
-                      "type": "int32",
+                      "name": "inverted",
+                      "type": "boolean",
                       "connections": [
                         {
                           "inHunkIndex": 1,
                           "inHunkInput": 2
                         }
                       ]
-                    },
-                    {
-                      "name": "stallGuard",
-                      "type": "uint32"
                     }
                   ],
-                  "states": [
-                    {
-                      "name": "current (6-24)",
-                      "type": "uint16",
-                      "value": 24
-                    }
-                  ]
+                  "states": []
                 }
               ]
             }
@@ -595,97 +547,27 @@
             ]
           },
           {
-            "type": "control/saturnjog",
-            "name": "control/saturnjog_5",
+            "type": "debug/timing",
+            "name": "debug/timing_5",
             "inputs": [
               {
-                "name": "xNegPressure",
-                "type": "boolean"
-              },
-              {
-                "name": "xPosPressure",
+                "name": "thru",
                 "type": "boolean"
-              },
-              {
-                "name": "xStepsMade",
-                "type": "int32"
               }
             ],
             "outputs": [
               {
-                "name": "xStepsNextIncrement",
-                "type": "int32",
+                "name": "thru",
+                "type": "boolean",
                 "connections": [
                   {
                     "inHunkIndex": 3,
                     "inHunkInput": 2
                   }
                 ]
-              }
-            ],
-            "states": [
-              {
-                "name": "intervalRunning",
-                "type": "boolean",
-                "value": true
-              },
-              {
-                "name": "startupCount",
-                "type": "number",
-                "value": 5
               },
               {
-                "name": "msPerInterval",
-                "type": "number",
-                "value": 20
-              },
-              {
-                "name": "accel (s/s^2)",
-                "type": "number",
-                "value": 4000
-              },
-              {
-                "name": "max (s/s)",
-                "type": "number",
-                "value": 4000
-              }
-            ]
-          },
-          {
-            "type": "primitive/positivevalueof",
-            "name": "primitive/positivevalueof_6",
-            "inputs": [
-              {
-                "name": "og",
-                "type": "number"
-              }
-            ],
-            "outputs": [
-              {
-                "name": "abs",
-                "type": "number",
-                "connections": [
-                  {
-                    "inHunkIndex": 7,
-                    "inHunkInput": 0
-                  }
-                ]
-              }
-            ],
-            "states": []
-          },
-          {
-            "type": "flow/accumulator",
-            "name": "flow/accumulator_7",
-            "inputs": [
-              {
-                "name": "stream",
-                "type": "number"
-              }
-            ],
-            "outputs": [
-              {
-                "name": "filtered",
+                "name": "result (us)",
                 "type": "number",
                 "connections": [
                   {
@@ -697,9 +579,9 @@
             ],
             "states": [
               {
-                "name": "tapsize",
+                "name": "average",
                 "type": "number",
-                "value": 4
+                "value": 500
               }
             ]
           }
@@ -736,7 +618,7 @@
         {
           "name": "retrycount",
           "type": "number",
-          "value": 0
+          "value": 3
         },
         {
           "name": "retryreset",
@@ -802,12 +684,17 @@
       "states": []
     },
     {
-      "type": "interface/arrowpad",
-      "name": "interface/arrowpad_6",
-      "inputs": [],
+      "type": "interface/button",
+      "name": "interface/button_6",
+      "inputs": [
+        {
+          "name": "trigger",
+          "type": "any"
+        }
+      ],
       "outputs": [
         {
-          "name": "left",
+          "name": "onclick",
           "type": "boolean",
           "connections": [
             {
@@ -815,55 +702,114 @@
               "inHunkInput": 3
             }
           ]
-        },
+        }
+      ],
+      "states": []
+    },
+    {
+      "type": "output/linechart",
+      "name": "output/linechart_7",
+      "inputs": [
         {
-          "name": "right",
-          "type": "boolean",
-          "connections": [
-            {
-              "inHunkIndex": 2,
-              "inHunkInput": 4
-            }
-          ]
-        },
+          "name": "array",
+          "type": "reference"
+        }
+      ],
+      "outputs": [],
+      "states": [
         {
-          "name": "up",
-          "type": "boolean"
-        },
+          "name": "displayCount",
+          "type": "number",
+          "value": 50
+        }
+      ]
+    },
+    {
+      "type": "primitive/counter",
+      "name": "primitive/counter_8",
+      "inputs": [
         {
-          "name": "down",
-          "type": "boolean"
+          "name": "event",
+          "type": "any"
         },
         {
-          "name": "pgup",
+          "name": "reset",
           "type": "boolean"
-        },
+        }
+      ],
+      "outputs": [
         {
-          "name": "pgdown",
-          "type": "boolean"
+          "name": "count",
+          "type": "number",
+          "connections": [
+            {
+              "inHunkIndex": 9,
+              "inHunkInput": 0
+            }
+          ]
         }
       ],
-      "states": []
+      "states": [
+        {
+          "name": "reset",
+          "type": "boolean",
+          "value": false
+        }
+      ]
     },
     {
-      "type": "output/linechart",
-      "name": "output/linechart_7",
+      "type": "data/accumulator",
+      "name": "data/accumulator_9",
       "inputs": [
         {
-          "name": "xVar",
+          "name": "x",
           "type": "number"
         },
         {
-          "name": "yVar",
+          "name": "y",
           "type": "number"
         }
       ],
+      "outputs": [
+        {
+          "name": "accumulated",
+          "type": "reference",
+          "connections": [
+            {
+              "inHunkIndex": 7,
+              "inHunkInput": 0
+            }
+          ]
+        }
+      ],
+      "states": [
+        {
+          "name": "reset",
+          "type": "boolean",
+          "value": false
+        }
+      ]
+    },
+    {
+      "type": "debug/logger",
+      "name": "debug/logger_10",
+      "inputs": [
+        {
+          "name": "tolog",
+          "type": "any"
+        }
+      ],
       "outputs": [],
       "states": [
         {
-          "name": "keepers",
-          "type": "number",
-          "value": 100
+          "name": "prefix",
+          "type": "string",
+          "value": "LOG:"
+        },
+        {
+          "name": "console",
+          "type": "boolean",
+          "value": true
         }
       ]
     }
diff --git a/save/systems/bughuntr-lpusb-05.json b/save/systems/bughuntr-lpusb-05.json
new file mode 100644
index 0000000..8cc079a
--- /dev/null
+++ b/save/systems/bughuntr-lpusb-05.json
@@ -0,0 +1,790 @@
+{
+  "interpreterName": "cuttlefish",
+  "interpreterVersion": "v0.1",
+  "hunks": [
+    {
+      "type": "manager",
+      "name": "nrol",
+      "inputs": [
+        {
+          "name": "msgs",
+          "type": "byteArray"
+        }
+      ],
+      "outputs": [
+        {
+          "name": "msgs",
+          "type": "byteArray",
+          "connections": [
+            {
+              "inHunkIndex": 1,
+              "inHunkInput": 0
+            }
+          ]
+        }
+      ],
+      "states": []
+    },
+    {
+      "type": "view",
+      "name": "tlview",
+      "inputs": [
+        {
+          "name": "msgs",
+          "type": "byteArray"
+        }
+      ],
+      "outputs": [
+        {
+          "name": "msgs",
+          "type": "byteArray",
+          "connections": [
+            {
+              "inHunkIndex": 0,
+              "inHunkInput": 0
+            }
+          ]
+        }
+      ],
+      "states": []
+    },
+    {
+      "type": "link",
+      "name": "link_2",
+      "inputs": [
+        {
+          "name": "data",
+          "type": "byteArray"
+        },
+        {
+          "name": "mgrMsgs",
+          "type": "byteArray"
+        },
+        {
+          "name": "auto_0_3",
+          "type": "byteArray"
+        },
+        {
+          "name": "auto_132_3",
+          "type": "boolean"
+        }
+      ],
+      "outputs": [
+        {
+          "name": "data",
+          "type": "byteArray",
+          "connections": [
+            {
+              "inHunkIndex": 3,
+              "inHunkInput": 0
+            }
+          ]
+        },
+        {
+          "name": "mgrMsgs",
+          "type": "byteArray",
+          "connections": [
+            {
+              "inHunkIndex": 4,
+              "inHunkInput": 0
+            }
+          ]
+        },
+        {
+          "name": "auto_0_2",
+          "type": "byteArray",
+          "connections": [
+            {
+              "inHunkIndex": 5,
+              "inHunkInput": 0
+            }
+          ]
+        },
+        {
+          "name": "auto_6_4",
+          "type": "number",
+          "connections": [
+            {
+              "inHunkIndex": 9,
+              "inHunkInput": 1
+            },
+            {
+              "inHunkIndex": 8,
+              "inHunkInput": 0
+            }
+          ]
+        }
+      ],
+      "states": [
+        {
+          "name": "isActive",
+          "type": "boolean",
+          "value": true
+        },
+        {
+          "name": "otherLink",
+          "type": "uint16",
+          "value": 1
+        },
+        {
+          "name": "inputList",
+          "type": "string",
+          "value": "mgrMsgs (byteArray), auto_0_3 (byteArray), auto_132_3 (boolean)"
+        },
+        {
+          "name": "outputList",
+          "type": "string",
+          "value": "mgrMsgs (byteArray), auto_0_2 (byteArray), auto_6_4 (number)"
+        }
+      ],
+      "contains": {
+        "interpreterName": "nautilus",
+        "interpreterVersion": "v0.1",
+        "hunks": [
+          {
+            "type": "manager",
+            "name": "nautilus",
+            "inputs": [
+              {
+                "name": "msgs",
+                "type": "byteArray"
+              }
+            ],
+            "outputs": [
+              {
+                "name": "msgs",
+                "type": "byteArray",
+                "connections": [
+                  {
+                    "inHunkIndex": 1,
+                    "inHunkInput": 1
+                  }
+                ]
+              }
+            ],
+            "states": []
+          },
+          {
+            "type": "link",
+            "name": "link_1",
+            "inputs": [
+              {
+                "name": "data",
+                "type": "byteArray"
+              },
+              {
+                "name": "mgrMsgs",
+                "type": "byteArray"
+              },
+              {
+                "name": "auto_0_3",
+                "type": "byteArray"
+              },
+              {
+                "name": "auto_114_4",
+                "type": "number"
+              }
+            ],
+            "outputs": [
+              {
+                "name": "data",
+                "type": "byteArray",
+                "connections": [
+                  {
+                    "inHunkIndex": 2,
+                    "inHunkInput": 0
+                  }
+                ]
+              },
+              {
+                "name": "mgrMsgs",
+                "type": "byteArray",
+                "connections": [
+                  {
+                    "inHunkIndex": 0,
+                    "inHunkInput": 0
+                  }
+                ]
+              },
+              {
+                "name": "auto_0_2",
+                "type": "byteArray",
+                "connections": [
+                  {
+                    "inHunkIndex": 3,
+                    "inHunkInput": 1
+                  }
+                ]
+              },
+              {
+                "name": "auto_112_3",
+                "type": "boolean",
+                "connections": [
+                  {
+                    "inHunkIndex": 5,
+                    "inHunkInput": 0
+                  }
+                ]
+              }
+            ],
+            "states": [
+              {
+                "name": "isActive",
+                "type": "boolean",
+                "value": true
+              },
+              {
+                "name": "otherLink",
+                "type": "uint16",
+                "value": 2
+              },
+              {
+                "name": "inputList",
+                "type": "string",
+                "value": "mgrMsgs (byteArray), auto_0_3 (byteArray), auto_114_4 (number)"
+              },
+              {
+                "name": "outputList",
+                "type": "string",
+                "value": "mgrMsgs (byteArray), auto_0_2 (byteArray), auto_112_3 (boolean)"
+              }
+            ]
+          },
+          {
+            "type": "comm/websocketserver",
+            "name": "comm/websocketserver_2",
+            "inputs": [
+              {
+                "name": "data",
+                "type": "byteArray"
+              }
+            ],
+            "outputs": [
+              {
+                "name": "data",
+                "type": "byteArray",
+                "connections": [
+                  {
+                    "inHunkIndex": 1,
+                    "inHunkInput": 0
+                  }
+                ]
+              }
+            ],
+            "states": [
+              {
+                "name": "status",
+                "type": "string",
+                "value": "connected"
+              },
+              {
+                "name": "port",
+                "type": "number",
+                "value": 2042
+              }
+            ]
+          },
+          {
+            "type": "link",
+            "name": "link_3",
+            "inputs": [
+              {
+                "name": "data",
+                "type": "byteArray"
+              },
+              {
+                "name": "mgrMsgs",
+                "type": "byteArray"
+              },
+              {
+                "name": "auto_47_3",
+                "type": "boolean"
+              }
+            ],
+            "outputs": [
+              {
+                "name": "data",
+                "type": "byteArray",
+                "connections": [
+                  {
+                    "inHunkIndex": 4,
+                    "inHunkInput": 0
+                  }
+                ]
+              },
+              {
+                "name": "mgrMsgs",
+                "type": "byteArray",
+                "connections": [
+                  {
+                    "inHunkIndex": 1,
+                    "inHunkInput": 2
+                  }
+                ]
+              },
+              {
+                "name": "auto_35_2",
+                "type": "boolean",
+                "connections": [
+                  {
+                    "inHunkIndex": 5,
+                    "inHunkInput": 0
+                  }
+                ]
+              }
+            ],
+            "states": [
+              {
+                "name": "isActive",
+                "type": "boolean",
+                "value": true
+              },
+              {
+                "name": "otherLink",
+                "type": "uint16",
+                "value": 1
+              },
+              {
+                "name": "inputList",
+                "type": "string",
+                "value": "mgrMsgs (byteArray), auto_47_3 (boolean)"
+              },
+              {
+                "name": "outputList",
+                "type": "string",
+                "value": "mgrMsgs (byteArray), auto_35_2 (boolean)"
+              }
+            ],
+            "contains": {
+              "interpreterName": "ponyo",
+              "interpreterVersion": "v0.1",
+              "hunks": [
+                {
+                  "type": "manager",
+                  "name": "ponyo_one",
+                  "inputs": [
+                    {
+                      "name": "mgrMsgs_1024",
+                      "type": "byteArray"
+                    }
+                  ],
+                  "outputs": [
+                    {
+                      "name": "mgrMsgs_1024",
+                      "type": "byteArray",
+                      "connections": [
+                        {
+                          "inHunkIndex": 1,
+                          "inHunkInput": 1
+                        }
+                      ]
+                    }
+                  ],
+                  "states": []
+                },
+                {
+                  "type": "link",
+                  "name": "link_1",
+                  "inputs": [
+                    {
+                      "name": "data_1024",
+                      "type": "byteArray"
+                    },
+                    {
+                      "name": "mgrMsgs_1024",
+                      "type": "byteArray"
+                    },
+                    {
+                      "name": "auto_67_2",
+                      "type": "boolean"
+                    }
+                  ],
+                  "outputs": [
+                    {
+                      "name": "data_1024",
+                      "type": "byteArray",
+                      "connections": [
+                        {
+                          "inHunkIndex": 2,
+                          "inHunkInput": 0
+                        }
+                      ]
+                    },
+                    {
+                      "name": "mgrMsgs_1024",
+                      "type": "byteArray",
+                      "connections": [
+                        {
+                          "inHunkIndex": 0,
+                          "inHunkInput": 0
+                        }
+                      ]
+                    },
+                    {
+                      "name": "auto_180_3",
+                      "type": "boolean",
+                      "connections": [
+                        {
+                          "inHunkIndex": 3,
+                          "inHunkInput": 0
+                        }
+                      ]
+                    }
+                  ],
+                  "states": [
+                    {
+                      "name": "isActive",
+                      "type": "boolean",
+                      "value": true
+                    },
+                    {
+                      "name": "otherLink",
+                      "type": "uint16",
+                      "value": 3
+                    },
+                    {
+                      "name": "inputList",
+                      "type": "string",
+                      "value": "mgrMsgs (byteArray), auto_67_2 (boolean)"
+                    },
+                    {
+                      "name": "outputList",
+                      "type": "string",
+                      "value": "mgrMsgs (byteArray), auto_180_3 (boolean)"
+                    }
+                  ]
+                },
+                {
+                  "type": "comm/COBSerialUSB",
+                  "name": "comm/COBSerialUSB_2",
+                  "inputs": [
+                    {
+                      "name": "data_1024",
+                      "type": "byteArray"
+                    }
+                  ],
+                  "outputs": [
+                    {
+                      "name": "data_1024",
+                      "type": "byteArray",
+                      "connections": [
+                        {
+                          "inHunkIndex": 1,
+                          "inHunkInput": 0
+                        }
+                      ]
+                    }
+                  ],
+                  "states": []
+                },
+                {
+                  "type": "math/booleaninversion",
+                  "name": "math/booleaninversion_3",
+                  "inputs": [
+                    {
+                      "name": "state",
+                      "type": "boolean"
+                    }
+                  ],
+                  "outputs": [
+                    {
+                      "name": "inverted",
+                      "type": "boolean",
+                      "connections": [
+                        {
+                          "inHunkIndex": 1,
+                          "inHunkInput": 2
+                        }
+                      ]
+                    }
+                  ],
+                  "states": []
+                }
+              ]
+            }
+          },
+          {
+            "type": "comm/cobserial",
+            "name": "comm/cobserial_4",
+            "inputs": [
+              {
+                "name": "data",
+                "type": "byteArray"
+              }
+            ],
+            "outputs": [
+              {
+                "name": "data",
+                "type": "byteArray",
+                "connections": [
+                  {
+                    "inHunkIndex": 3,
+                    "inHunkInput": 0
+                  }
+                ]
+              }
+            ],
+            "states": [
+              {
+                "name": "status",
+                "type": "string",
+                "value": "closed"
+              },
+              {
+                "name": "pid",
+                "type": "string",
+                "value": "8022"
+              },
+              {
+                "name": "refresh",
+                "type": "boolean",
+                "value": false
+              }
+            ]
+          },
+          {
+            "type": "debug/timing",
+            "name": "debug/timing_5",
+            "inputs": [
+              {
+                "name": "thru",
+                "type": "boolean"
+              }
+            ],
+            "outputs": [
+              {
+                "name": "thru",
+                "type": "boolean",
+                "connections": [
+                  {
+                    "inHunkIndex": 3,
+                    "inHunkInput": 2
+                  }
+                ]
+              },
+              {
+                "name": "result (us)",
+                "type": "number",
+                "connections": [
+                  {
+                    "inHunkIndex": 1,
+                    "inHunkInput": 3
+                  }
+                ]
+              }
+            ],
+            "states": [
+              {
+                "name": "average",
+                "type": "number",
+                "value": 100
+              }
+            ]
+          }
+        ]
+      }
+    },
+    {
+      "type": "comm/websocketclient",
+      "name": "comm/websocketclient_3",
+      "inputs": [
+        {
+          "name": "data",
+          "type": "byteArray"
+        }
+      ],
+      "outputs": [
+        {
+          "name": "data",
+          "type": "byteArray",
+          "connections": [
+            {
+              "inHunkIndex": 2,
+              "inHunkInput": 0
+            }
+          ]
+        }
+      ],
+      "states": [
+        {
+          "name": "status",
+          "type": "string",
+          "value": "open"
+        },
+        {
+          "name": "retrycount",
+          "type": "number",
+          "value": 3
+        },
+        {
+          "name": "retryreset",
+          "type": "boolean",
+          "value": false
+        },
+        {
+          "name": "address",
+          "type": "string",
+          "value": "127.0.0.1"
+        },
+        {
+          "name": "port",
+          "type": "number",
+          "value": 2042
+        }
+      ]
+    },
+    {
+      "type": "view",
+      "name": "view_4",
+      "inputs": [
+        {
+          "name": "msgs",
+          "type": "byteArray"
+        }
+      ],
+      "outputs": [
+        {
+          "name": "msgs",
+          "type": "byteArray",
+          "connections": [
+            {
+              "inHunkIndex": 2,
+              "inHunkInput": 1
+            }
+          ]
+        }
+      ],
+      "states": []
+    },
+    {
+      "type": "view",
+      "name": "view_5",
+      "inputs": [
+        {
+          "name": "msgs",
+          "type": "byteArray"
+        }
+      ],
+      "outputs": [
+        {
+          "name": "msgs",
+          "type": "byteArray",
+          "connections": [
+            {
+              "inHunkIndex": 2,
+              "inHunkInput": 2
+            }
+          ]
+        }
+      ],
+      "states": []
+    },
+    {
+      "type": "interface/button",
+      "name": "interface/button_6",
+      "inputs": [
+        {
+          "name": "trigger",
+          "type": "any"
+        }
+      ],
+      "outputs": [
+        {
+          "name": "onclick",
+          "type": "boolean",
+          "connections": [
+            {
+              "inHunkIndex": 2,
+              "inHunkInput": 3
+            }
+          ]
+        }
+      ],
+      "states": []
+    },
+    {
+      "type": "output/linechart",
+      "name": "output/linechart_7",
+      "inputs": [
+        {
+          "name": "array",
+          "type": "reference"
+        }
+      ],
+      "outputs": [],
+      "states": [
+        {
+          "name": "displayCount",
+          "type": "number",
+          "value": 50
+        }
+      ]
+    },
+    {
+      "type": "primitive/counter",
+      "name": "primitive/counter_8",
+      "inputs": [
+        {
+          "name": "event",
+          "type": "any"
+        },
+        {
+          "name": "reset",
+          "type": "boolean"
+        }
+      ],
+      "outputs": [
+        {
+          "name": "count",
+          "type": "number",
+          "connections": [
+            {
+              "inHunkIndex": 9,
+              "inHunkInput": 0
+            }
+          ]
+        }
+      ],
+      "states": [
+        {
+          "name": "reset",
+          "type": "boolean",
+          "value": false
+        }
+      ]
+    },
+    {
+      "type": "data/accumulator",
+      "name": "data/accumulator_9",
+      "inputs": [
+        {
+          "name": "x",
+          "type": "number"
+        },
+        {
+          "name": "y",
+          "type": "number"
+        }
+      ],
+      "outputs": [
+        {
+          "name": "accumulated",
+          "type": "reference",
+          "connections": [
+            {
+              "inHunkIndex": 7,
+              "inHunkInput": 0
+            }
+          ]
+        }
+      ],
+      "states": [
+        {
+          "name": "reset",
+          "type": "boolean",
+          "value": false
+        }
+      ]
+    }
+  ]
+}
\ No newline at end of file
diff --git a/save/systems/nautilus-bridge-rf.json b/save/systems/nautilus-bridge-rf.json
new file mode 100644
index 0000000..c0b7c29
--- /dev/null
+++ b/save/systems/nautilus-bridge-rf.json
@@ -0,0 +1,303 @@
+{
+  "interpreterName": "cuttlefish",
+  "interpreterVersion": "v0.1",
+  "hunks": [
+    {
+      "type": "manager",
+      "name": "nrol",
+      "inputs": [
+        {
+          "name": "msgs",
+          "type": "byteArray"
+        }
+      ],
+      "outputs": [
+        {
+          "name": "msgs",
+          "type": "byteArray",
+          "connections": [
+            {
+              "inHunkIndex": 1,
+              "inHunkInput": 0
+            }
+          ]
+        }
+      ],
+      "states": []
+    },
+    {
+      "type": "view",
+      "name": "tlview",
+      "inputs": [
+        {
+          "name": "msgs",
+          "type": "byteArray"
+        }
+      ],
+      "outputs": [
+        {
+          "name": "msgs",
+          "type": "byteArray",
+          "connections": [
+            {
+              "inHunkIndex": 0,
+              "inHunkInput": 0
+            }
+          ]
+        }
+      ],
+      "states": []
+    },
+    {
+      "type": "comm/websocketclient",
+      "name": "comm/websocketclient_2",
+      "inputs": [
+        {
+          "name": "data",
+          "type": "byteArray"
+        }
+      ],
+      "outputs": [
+        {
+          "name": "data",
+          "type": "byteArray",
+          "connections": [
+            {
+              "inHunkIndex": 3,
+              "inHunkInput": 0
+            }
+          ]
+        }
+      ],
+      "states": [
+        {
+          "name": "status",
+          "type": "string",
+          "value": "open"
+        },
+        {
+          "name": "retrycount",
+          "type": "number",
+          "value": 3
+        },
+        {
+          "name": "retryreset",
+          "type": "boolean",
+          "value": false
+        },
+        {
+          "name": "address",
+          "type": "string",
+          "value": "127.0.0.1"
+        },
+        {
+          "name": "port",
+          "type": "number",
+          "value": 2042
+        }
+      ]
+    },
+    {
+      "type": "link",
+      "name": "link_3",
+      "inputs": [
+        {
+          "name": "data",
+          "type": "byteArray"
+        },
+        {
+          "name": "mgrMsgs",
+          "type": "byteArray"
+        }
+      ],
+      "outputs": [
+        {
+          "name": "data",
+          "type": "byteArray",
+          "connections": [
+            {
+              "inHunkIndex": 2,
+              "inHunkInput": 0
+            }
+          ]
+        },
+        {
+          "name": "mgrMsgs",
+          "type": "byteArray",
+          "connections": [
+            {
+              "inHunkIndex": 4,
+              "inHunkInput": 0
+            }
+          ]
+        }
+      ],
+      "states": [
+        {
+          "name": "isActive",
+          "type": "boolean",
+          "value": true
+        },
+        {
+          "name": "otherLink",
+          "type": "uint16",
+          "value": 1
+        },
+        {
+          "name": "inputList",
+          "type": "string",
+          "value": "mgrMsgs (byteArray)"
+        },
+        {
+          "name": "outputList",
+          "type": "string",
+          "value": "mgrMsgs (byteArray)"
+        }
+      ],
+      "contains": {
+        "interpreterName": "nautilus",
+        "interpreterVersion": "v0.1",
+        "hunks": [
+          {
+            "type": "manager",
+            "name": "nautilus",
+            "inputs": [
+              {
+                "name": "msgs",
+                "type": "byteArray"
+              }
+            ],
+            "outputs": [
+              {
+                "name": "msgs",
+                "type": "byteArray",
+                "connections": [
+                  {
+                    "inHunkIndex": 1,
+                    "inHunkInput": 1
+                  }
+                ]
+              }
+            ],
+            "states": []
+          },
+          {
+            "type": "link",
+            "name": "link_1",
+            "inputs": [
+              {
+                "name": "data",
+                "type": "byteArray"
+              },
+              {
+                "name": "mgrMsgs",
+                "type": "byteArray"
+              }
+            ],
+            "outputs": [
+              {
+                "name": "data",
+                "type": "byteArray",
+                "connections": [
+                  {
+                    "inHunkIndex": 2,
+                    "inHunkInput": 0
+                  }
+                ]
+              },
+              {
+                "name": "mgrMsgs",
+                "type": "byteArray",
+                "connections": [
+                  {
+                    "inHunkIndex": 0,
+                    "inHunkInput": 0
+                  }
+                ]
+              }
+            ],
+            "states": [
+              {
+                "name": "isActive",
+                "type": "boolean",
+                "value": true
+              },
+              {
+                "name": "otherLink",
+                "type": "uint16",
+                "value": 3
+              },
+              {
+                "name": "inputList",
+                "type": "string",
+                "value": "mgrMsgs (byteArray)"
+              },
+              {
+                "name": "outputList",
+                "type": "string",
+                "value": "mgrMsgs (byteArray)"
+              }
+            ]
+          },
+          {
+            "type": "comm/websocketserver",
+            "name": "comm/websocketserver_2",
+            "inputs": [
+              {
+                "name": "data",
+                "type": "byteArray"
+              }
+            ],
+            "outputs": [
+              {
+                "name": "data",
+                "type": "byteArray",
+                "connections": [
+                  {
+                    "inHunkIndex": 1,
+                    "inHunkInput": 0
+                  }
+                ]
+              }
+            ],
+            "states": [
+              {
+                "name": "status",
+                "type": "string",
+                "value": "connected"
+              },
+              {
+                "name": "port",
+                "type": "number",
+                "value": 2042
+              }
+            ]
+          }
+        ]
+      }
+    },
+    {
+      "type": "view",
+      "name": "view_4",
+      "inputs": [
+        {
+          "name": "msgs",
+          "type": "byteArray"
+        }
+      ],
+      "outputs": [
+        {
+          "name": "msgs",
+          "type": "byteArray",
+          "connections": [
+            {
+              "inHunkIndex": 3,
+              "inHunkInput": 1
+            }
+          ]
+        }
+      ],
+      "states": []
+    }
+  ]
+}
\ No newline at end of file
diff --git a/save/systems/rdev-5l-5cobs-conn.json b/save/systems/rdev-5l-5cobs-conn.json
deleted file mode 100644
index 8cb15fa..0000000
--- a/save/systems/rdev-5l-5cobs-conn.json
+++ /dev/null
@@ -1,936 +0,0 @@
-{
-  "interpreterName": "cuttlefish",
-  "interpreterVersion": "v0.1",
-  "hunks": [
-    {
-      "type": "manager",
-      "name": "nrol",
-      "inputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": 1,
-              "inHunkInput": 0
-            }
-          ]
-        }
-      ],
-      "states": []
-    },
-    {
-      "type": "view",
-      "name": "tlview",
-      "inputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": 0,
-              "inHunkInput": 0
-            }
-          ]
-        }
-      ],
-      "states": []
-    },
-    {
-      "type": "link",
-      "name": "link_2",
-      "inputs": [
-        {
-          "name": "data",
-          "type": "byteArray"
-        },
-        {
-          "name": "mgrMsgs",
-          "type": "byteArray"
-        },
-        {
-          "name": "auto_0_3",
-          "type": "byteArray"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "data",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": 3,
-              "inHunkInput": 0
-            }
-          ]
-        },
-        {
-          "name": "mgrMsgs",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": 4,
-              "inHunkInput": 0
-            }
-          ]
-        },
-        {
-          "name": "auto_0_2",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": 5,
-              "inHunkInput": 0
-            }
-          ]
-        }
-      ],
-      "states": [
-        {
-          "name": "isActive",
-          "type": "boolean",
-          "value": true
-        },
-        {
-          "name": "otherLink",
-          "type": "uint16",
-          "value": 1
-        },
-        {
-          "name": "inputList",
-          "type": "string",
-          "value": "mgrMsgs (byteArray), auto_0_3 (byteArray)"
-        },
-        {
-          "name": "outputList",
-          "type": "string",
-          "value": "mgrMsgs (byteArray), auto_0_2 (byteArray)"
-        }
-      ],
-      "contains": {
-        "interpreterName": "nautilus",
-        "interpreterVersion": "v0.1",
-        "hunks": [
-          {
-            "type": "manager",
-            "name": "nautilus",
-            "inputs": [
-              {
-                "name": "msgs",
-                "type": "byteArray"
-              }
-            ],
-            "outputs": [
-              {
-                "name": "msgs",
-                "type": "byteArray",
-                "connections": [
-                  {
-                    "inHunkIndex": 1,
-                    "inHunkInput": 1
-                  }
-                ]
-              }
-            ],
-            "states": []
-          },
-          {
-            "type": "link",
-            "name": "link_1",
-            "inputs": [
-              {
-                "name": "data",
-                "type": "byteArray"
-              },
-              {
-                "name": "mgrMsgs",
-                "type": "byteArray"
-              },
-              {
-                "name": "auto_0_3",
-                "type": "byteArray"
-              }
-            ],
-            "outputs": [
-              {
-                "name": "data",
-                "type": "byteArray",
-                "connections": [
-                  {
-                    "inHunkIndex": 2,
-                    "inHunkInput": 0
-                  }
-                ]
-              },
-              {
-                "name": "mgrMsgs",
-                "type": "byteArray",
-                "connections": [
-                  {
-                    "inHunkIndex": 0,
-                    "inHunkInput": 0
-                  }
-                ]
-              },
-              {
-                "name": "auto_0_2",
-                "type": "byteArray",
-                "connections": [
-                  {
-                    "inHunkIndex": 3,
-                    "inHunkInput": 1
-                  }
-                ]
-              }
-            ],
-            "states": [
-              {
-                "name": "isActive",
-                "type": "boolean",
-                "value": true
-              },
-              {
-                "name": "otherLink",
-                "type": "uint16",
-                "value": 2
-              },
-              {
-                "name": "inputList",
-                "type": "string",
-                "value": "mgrMsgs (byteArray), auto_0_3 (byteArray)"
-              },
-              {
-                "name": "outputList",
-                "type": "string",
-                "value": "mgrMsgs (byteArray), auto_0_2 (byteArray)"
-              }
-            ]
-          },
-          {
-            "type": "comm/websocketserver",
-            "name": "comm/websocketserver_2",
-            "inputs": [
-              {
-                "name": "data",
-                "type": "byteArray"
-              }
-            ],
-            "outputs": [
-              {
-                "name": "data",
-                "type": "byteArray",
-                "connections": [
-                  {
-                    "inHunkIndex": 1,
-                    "inHunkInput": 0
-                  }
-                ]
-              }
-            ],
-            "states": [
-              {
-                "name": "status",
-                "type": "string",
-                "value": "connected"
-              },
-              {
-                "name": "port",
-                "type": "number",
-                "value": 2042
-              }
-            ]
-          },
-          {
-            "type": "link",
-            "name": "link_3",
-            "inputs": [
-              {
-                "name": "data",
-                "type": "byteArray"
-              },
-              {
-                "name": "mgrMsgs",
-                "type": "byteArray"
-              }
-            ],
-            "outputs": [
-              {
-                "name": "data",
-                "type": "byteArray",
-                "connections": [
-                  {
-                    "inHunkIndex": 4,
-                    "inHunkInput": 0
-                  }
-                ]
-              },
-              {
-                "name": "mgrMsgs",
-                "type": "byteArray",
-                "connections": [
-                  {
-                    "inHunkIndex": 1,
-                    "inHunkInput": 2
-                  }
-                ]
-              }
-            ],
-            "states": [
-              {
-                "name": "isActive",
-                "type": "boolean",
-                "value": true
-              },
-              {
-                "name": "otherLink",
-                "type": "uint16",
-                "value": 1
-              },
-              {
-                "name": "inputList",
-                "type": "string",
-                "value": "mgrMsgs (byteArray)"
-              },
-              {
-                "name": "outputList",
-                "type": "string",
-                "value": "mgrMsgs (byteArray)"
-              }
-            ],
-            "contains": {
-              "interpreterName": "ponyo",
-              "interpreterVersion": "v0.1",
-              "hunks": [
-                {
-                  "type": "manager",
-                  "name": "ponyo_one",
-                  "inputs": [
-                    {
-                      "name": "mgrMsgs_1024",
-                      "type": "byteArray"
-                    }
-                  ],
-                  "outputs": [
-                    {
-                      "name": "mgrMsgs_1024",
-                      "type": "byteArray",
-                      "connections": [
-                        {
-                          "inHunkIndex": 1,
-                          "inHunkInput": 1
-                        }
-                      ]
-                    }
-                  ],
-                  "states": []
-                },
-                {
-                  "type": "link",
-                  "name": "link_1",
-                  "inputs": [
-                    {
-                      "name": "data_1024",
-                      "type": "byteArray"
-                    },
-                    {
-                      "name": "mgrMsgs_1024",
-                      "type": "byteArray"
-                    }
-                  ],
-                  "outputs": [
-                    {
-                      "name": "data_1024",
-                      "type": "byteArray",
-                      "connections": [
-                        {
-                          "inHunkIndex": 2,
-                          "inHunkInput": 0
-                        }
-                      ]
-                    },
-                    {
-                      "name": "mgrMsgs_1024",
-                      "type": "byteArray",
-                      "connections": [
-                        {
-                          "inHunkIndex": 0,
-                          "inHunkInput": 0
-                        }
-                      ]
-                    }
-                  ],
-                  "states": [
-                    {
-                      "name": "isActive",
-                      "type": "boolean",
-                      "value": true
-                    },
-                    {
-                      "name": "otherLink",
-                      "type": "uint16",
-                      "value": 3
-                    },
-                    {
-                      "name": "inputList",
-                      "type": "string",
-                      "value": "mgrMsgs (byteArray)"
-                    },
-                    {
-                      "name": "outputList",
-                      "type": "string",
-                      "value": "mgrMsgs (byteArray)"
-                    }
-                  ]
-                },
-                {
-                  "type": "comm/COBSerialUSB",
-                  "name": "comm/COBSerialUSB_2",
-                  "inputs": [
-                    {
-                      "name": "data_1024",
-                      "type": "byteArray"
-                    }
-                  ],
-                  "outputs": [
-                    {
-                      "name": "data_1024",
-                      "type": "byteArray",
-                      "connections": [
-                        {
-                          "inHunkIndex": 1,
-                          "inHunkInput": 0
-                        }
-                      ]
-                    }
-                  ],
-                  "states": []
-                },
-                {
-                  "type": "link",
-                  "name": "link_3",
-                  "inputs": [
-                    {
-                      "name": "data_1024",
-                      "type": "byteArray"
-                    },
-                    {
-                      "name": "mgrMsgs_1024",
-                      "type": "byteArray"
-                    }
-                  ],
-                  "outputs": [
-                    {
-                      "name": "data_1024",
-                      "type": "byteArray",
-                      "connections": [
-                        {
-                          "inHunkIndex": 8,
-                          "inHunkInput": 0
-                        }
-                      ]
-                    },
-                    {
-                      "name": "mgrMsgs_1024",
-                      "type": "byteArray"
-                    }
-                  ],
-                  "states": [
-                    {
-                      "name": "isActive",
-                      "type": "boolean",
-                      "value": false
-                    },
-                    {
-                      "name": "otherLink",
-                      "type": "uint16",
-                      "value": 0
-                    },
-                    {
-                      "name": "inputList",
-                      "type": "string",
-                      "value": "mgrMsgs (byteArray)"
-                    },
-                    {
-                      "name": "outputList",
-                      "type": "string",
-                      "value": "mgrMsgs (byteArray)"
-                    }
-                  ]
-                },
-                {
-                  "type": "link",
-                  "name": "link_4",
-                  "inputs": [
-                    {
-                      "name": "data_1024",
-                      "type": "byteArray"
-                    },
-                    {
-                      "name": "mgrMsgs_1024",
-                      "type": "byteArray"
-                    }
-                  ],
-                  "outputs": [
-                    {
-                      "name": "data_1024",
-                      "type": "byteArray",
-                      "connections": [
-                        {
-                          "inHunkIndex": 9,
-                          "inHunkInput": 0
-                        }
-                      ]
-                    },
-                    {
-                      "name": "mgrMsgs_1024",
-                      "type": "byteArray"
-                    }
-                  ],
-                  "states": [
-                    {
-                      "name": "isActive",
-                      "type": "boolean",
-                      "value": false
-                    },
-                    {
-                      "name": "otherLink",
-                      "type": "uint16",
-                      "value": 0
-                    },
-                    {
-                      "name": "inputList",
-                      "type": "string",
-                      "value": "mgrMsgs (byteArray)"
-                    },
-                    {
-                      "name": "outputList",
-                      "type": "string",
-                      "value": "mgrMsgs (byteArray)"
-                    }
-                  ]
-                },
-                {
-                  "type": "link",
-                  "name": "link_5",
-                  "inputs": [
-                    {
-                      "name": "data_1024",
-                      "type": "byteArray"
-                    },
-                    {
-                      "name": "mgrMsgs_1024",
-                      "type": "byteArray"
-                    }
-                  ],
-                  "outputs": [
-                    {
-                      "name": "data_1024",
-                      "type": "byteArray",
-                      "connections": [
-                        {
-                          "inHunkIndex": 10,
-                          "inHunkInput": 0
-                        }
-                      ]
-                    },
-                    {
-                      "name": "mgrMsgs_1024",
-                      "type": "byteArray"
-                    }
-                  ],
-                  "states": [
-                    {
-                      "name": "isActive",
-                      "type": "boolean",
-                      "value": false
-                    },
-                    {
-                      "name": "otherLink",
-                      "type": "uint16",
-                      "value": 0
-                    },
-                    {
-                      "name": "inputList",
-                      "type": "string",
-                      "value": "mgrMsgs (byteArray)"
-                    },
-                    {
-                      "name": "outputList",
-                      "type": "string",
-                      "value": "mgrMsgs (byteArray)"
-                    }
-                  ]
-                },
-                {
-                  "type": "link",
-                  "name": "link_6",
-                  "inputs": [
-                    {
-                      "name": "data_1024",
-                      "type": "byteArray"
-                    },
-                    {
-                      "name": "mgrMsgs_1024",
-                      "type": "byteArray"
-                    }
-                  ],
-                  "outputs": [
-                    {
-                      "name": "data_1024",
-                      "type": "byteArray",
-                      "connections": [
-                        {
-                          "inHunkIndex": 11,
-                          "inHunkInput": 0
-                        }
-                      ]
-                    },
-                    {
-                      "name": "mgrMsgs_1024",
-                      "type": "byteArray"
-                    }
-                  ],
-                  "states": [
-                    {
-                      "name": "isActive",
-                      "type": "boolean",
-                      "value": false
-                    },
-                    {
-                      "name": "otherLink",
-                      "type": "uint16",
-                      "value": 0
-                    },
-                    {
-                      "name": "inputList",
-                      "type": "string",
-                      "value": "mgrMsgs (byteArray)"
-                    },
-                    {
-                      "name": "outputList",
-                      "type": "string",
-                      "value": "mgrMsgs (byteArray)"
-                    }
-                  ]
-                },
-                {
-                  "type": "link",
-                  "name": "link_7",
-                  "inputs": [
-                    {
-                      "name": "data_1024",
-                      "type": "byteArray"
-                    },
-                    {
-                      "name": "mgrMsgs_1024",
-                      "type": "byteArray"
-                    }
-                  ],
-                  "outputs": [
-                    {
-                      "name": "data_1024",
-                      "type": "byteArray",
-                      "connections": [
-                        {
-                          "inHunkIndex": 12,
-                          "inHunkInput": 0
-                        }
-                      ]
-                    },
-                    {
-                      "name": "mgrMsgs_1024",
-                      "type": "byteArray"
-                    }
-                  ],
-                  "states": [
-                    {
-                      "name": "isActive",
-                      "type": "boolean",
-                      "value": false
-                    },
-                    {
-                      "name": "otherLink",
-                      "type": "uint16",
-                      "value": 0
-                    },
-                    {
-                      "name": "inputList",
-                      "type": "string",
-                      "value": "mgrMsgs (byteArray)"
-                    },
-                    {
-                      "name": "outputList",
-                      "type": "string",
-                      "value": "mgrMsgs (byteArray)"
-                    }
-                  ]
-                },
-                {
-                  "type": "comm/COBSerialRJ45_A",
-                  "name": "comm/COBSerialRJ45_A_8",
-                  "inputs": [
-                    {
-                      "name": "data_1024",
-                      "type": "byteArray"
-                    }
-                  ],
-                  "outputs": [
-                    {
-                      "name": "data_1024",
-                      "type": "byteArray",
-                      "connections": [
-                        {
-                          "inHunkIndex": 3,
-                          "inHunkInput": 0
-                        }
-                      ]
-                    }
-                  ],
-                  "states": []
-                },
-                {
-                  "type": "comm/COBSerialRJ45_B",
-                  "name": "comm/COBSerialRJ45_B_9",
-                  "inputs": [
-                    {
-                      "name": "data_1024",
-                      "type": "byteArray"
-                    }
-                  ],
-                  "outputs": [
-                    {
-                      "name": "data_1024",
-                      "type": "byteArray",
-                      "connections": [
-                        {
-                          "inHunkIndex": 4,
-                          "inHunkInput": 0
-                        }
-                      ]
-                    }
-                  ],
-                  "states": []
-                },
-                {
-                  "type": "comm/COBSerialRJ45_C",
-                  "name": "comm/COBSerialRJ45_C_10",
-                  "inputs": [
-                    {
-                      "name": "data_1024",
-                      "type": "byteArray"
-                    }
-                  ],
-                  "outputs": [
-                    {
-                      "name": "data_1024",
-                      "type": "byteArray",
-                      "connections": [
-                        {
-                          "inHunkIndex": 5,
-                          "inHunkInput": 0
-                        }
-                      ]
-                    }
-                  ],
-                  "states": []
-                },
-                {
-                  "type": "comm/COBSerialRJ45_D",
-                  "name": "comm/COBSerialRJ45_D_11",
-                  "inputs": [
-                    {
-                      "name": "data_1024",
-                      "type": "byteArray"
-                    }
-                  ],
-                  "outputs": [
-                    {
-                      "name": "data_1024",
-                      "type": "byteArray",
-                      "connections": [
-                        {
-                          "inHunkIndex": 6,
-                          "inHunkInput": 0
-                        }
-                      ]
-                    }
-                  ],
-                  "states": []
-                },
-                {
-                  "type": "comm/COBSerialRJ45_E",
-                  "name": "comm/COBSerialRJ45_E_12",
-                  "inputs": [
-                    {
-                      "name": "data_1024",
-                      "type": "byteArray"
-                    }
-                  ],
-                  "outputs": [
-                    {
-                      "name": "data_1024",
-                      "type": "byteArray",
-                      "connections": [
-                        {
-                          "inHunkIndex": 7,
-                          "inHunkInput": 0
-                        }
-                      ]
-                    }
-                  ],
-                  "states": []
-                }
-              ]
-            }
-          },
-          {
-            "type": "comm/cobserial",
-            "name": "comm/cobserial_4",
-            "inputs": [
-              {
-                "name": "data",
-                "type": "byteArray"
-              }
-            ],
-            "outputs": [
-              {
-                "name": "data",
-                "type": "byteArray",
-                "connections": [
-                  {
-                    "inHunkIndex": 3,
-                    "inHunkInput": 0
-                  }
-                ]
-              }
-            ],
-            "states": [
-              {
-                "name": "status",
-                "type": "string",
-                "value": "closed"
-              },
-              {
-                "name": "pid",
-                "type": "string",
-                "value": "8022"
-              },
-              {
-                "name": "refresh",
-                "type": "boolean",
-                "value": false
-              }
-            ]
-          }
-        ]
-      }
-    },
-    {
-      "type": "comm/websocketclient",
-      "name": "comm/websocketclient_3",
-      "inputs": [
-        {
-          "name": "data",
-          "type": "byteArray"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "data",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": 2,
-              "inHunkInput": 0
-            }
-          ]
-        }
-      ],
-      "states": [
-        {
-          "name": "status",
-          "type": "string",
-          "value": "open"
-        },
-        {
-          "name": "retrycount",
-          "type": "number",
-          "value": 3
-        },
-        {
-          "name": "retryreset",
-          "type": "boolean",
-          "value": false
-        },
-        {
-          "name": "address",
-          "type": "string",
-          "value": "127.0.0.1"
-        },
-        {
-          "name": "port",
-          "type": "number",
-          "value": 2042
-        }
-      ]
-    },
-    {
-      "type": "view",
-      "name": "view_4",
-      "inputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": 2,
-              "inHunkInput": 1
-            }
-          ]
-        }
-      ],
-      "states": []
-    },
-    {
-      "type": "view",
-      "name": "view_5",
-      "inputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": 2,
-              "inHunkInput": 2
-            }
-          ]
-        }
-      ],
-      "states": []
-    }
-  ]
-}
\ No newline at end of file
diff --git a/save/systems/rdev-gen-ab-nrf.json b/save/systems/rdev-gen-ab-nrf.json
deleted file mode 100644
index 47e5697..0000000
--- a/save/systems/rdev-gen-ab-nrf.json
+++ /dev/null
@@ -1,881 +0,0 @@
-{
-  "interpreterName": "cuttlefish",
-  "interpreterVersion": "v0.1",
-  "hunks": [
-    {
-      "type": "manager",
-      "name": "nrol",
-      "inputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": 1,
-              "inHunkInput": 0
-            }
-          ]
-        }
-      ],
-      "states": []
-    },
-    {
-      "type": "view",
-      "name": "tlview",
-      "inputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": 0,
-              "inHunkInput": 0
-            }
-          ]
-        }
-      ],
-      "states": []
-    },
-    {
-      "type": "link",
-      "name": "link_2",
-      "inputs": [
-        {
-          "name": "data",
-          "type": "byteArray"
-        },
-        {
-          "name": "mgrMsgs",
-          "type": "byteArray"
-        },
-        {
-          "name": "auto_0_3",
-          "type": "byteArray"
-        },
-        {
-          "name": "auto_192_3",
-          "type": "byteArray"
-        },
-        {
-          "name": "auto_206_4",
-          "type": "byteArray"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "data",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": 3,
-              "inHunkInput": 0
-            }
-          ]
-        },
-        {
-          "name": "mgrMsgs",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": 4,
-              "inHunkInput": 0
-            }
-          ]
-        },
-        {
-          "name": "auto_0_2",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": 5,
-              "inHunkInput": 0
-            }
-          ]
-        },
-        {
-          "name": "auto_127_3",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": 6,
-              "inHunkInput": 0
-            }
-          ]
-        },
-        {
-          "name": "auto_181_4",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": 7,
-              "inHunkInput": 0
-            }
-          ]
-        }
-      ],
-      "states": [
-        {
-          "name": "isActive",
-          "type": "boolean",
-          "value": true
-        },
-        {
-          "name": "otherLink",
-          "type": "uint16",
-          "value": 1
-        },
-        {
-          "name": "inputList",
-          "type": "string",
-          "value": "mgrMsgs (byteArray), auto_0_3 (byteArray), auto_192_3 (byteArray), auto_206_4 (byteArray)"
-        },
-        {
-          "name": "outputList",
-          "type": "string",
-          "value": "mgrMsgs (byteArray), auto_0_2 (byteArray), auto_127_3 (byteArray), auto_181_4 (byteArray)"
-        }
-      ],
-      "contains": {
-        "interpreterName": "nautilus",
-        "interpreterVersion": "v0.1",
-        "hunks": [
-          {
-            "type": "manager",
-            "name": "nautilus",
-            "inputs": [
-              {
-                "name": "msgs",
-                "type": "byteArray"
-              }
-            ],
-            "outputs": [
-              {
-                "name": "msgs",
-                "type": "byteArray",
-                "connections": [
-                  {
-                    "inHunkIndex": 1,
-                    "inHunkInput": 1
-                  }
-                ]
-              }
-            ],
-            "states": []
-          },
-          {
-            "type": "link",
-            "name": "link_1",
-            "inputs": [
-              {
-                "name": "data",
-                "type": "byteArray"
-              },
-              {
-                "name": "mgrMsgs",
-                "type": "byteArray"
-              },
-              {
-                "name": "auto_0_3",
-                "type": "byteArray"
-              },
-              {
-                "name": "auto_94_4",
-                "type": "byteArray"
-              },
-              {
-                "name": "auto_52_5",
-                "type": "byteArray"
-              }
-            ],
-            "outputs": [
-              {
-                "name": "data",
-                "type": "byteArray",
-                "connections": [
-                  {
-                    "inHunkIndex": 2,
-                    "inHunkInput": 0
-                  }
-                ]
-              },
-              {
-                "name": "mgrMsgs",
-                "type": "byteArray",
-                "connections": [
-                  {
-                    "inHunkIndex": 0,
-                    "inHunkInput": 0
-                  }
-                ]
-              },
-              {
-                "name": "auto_0_2",
-                "type": "byteArray",
-                "connections": [
-                  {
-                    "inHunkIndex": 3,
-                    "inHunkInput": 1
-                  }
-                ]
-              },
-              {
-                "name": "auto_132_3",
-                "type": "byteArray",
-                "connections": [
-                  {
-                    "inHunkIndex": 3,
-                    "inHunkInput": 2
-                  }
-                ]
-              },
-              {
-                "name": "auto_149_4",
-                "type": "byteArray",
-                "connections": [
-                  {
-                    "inHunkIndex": 3,
-                    "inHunkInput": 3
-                  }
-                ]
-              }
-            ],
-            "states": [
-              {
-                "name": "isActive",
-                "type": "boolean",
-                "value": true
-              },
-              {
-                "name": "otherLink",
-                "type": "uint16",
-                "value": 2
-              },
-              {
-                "name": "inputList",
-                "type": "string",
-                "value": "mgrMsgs (byteArray), auto_0_3 (byteArray), auto_94_4 (byteArray), auto_52_5 (byteArray)"
-              },
-              {
-                "name": "outputList",
-                "type": "string",
-                "value": "mgrMsgs (byteArray), auto_0_2 (byteArray), auto_132_3 (byteArray), auto_149_4 (byteArray)"
-              }
-            ]
-          },
-          {
-            "type": "comm/websocketserver",
-            "name": "comm/websocketserver_2",
-            "inputs": [
-              {
-                "name": "data",
-                "type": "byteArray"
-              }
-            ],
-            "outputs": [
-              {
-                "name": "data",
-                "type": "byteArray",
-                "connections": [
-                  {
-                    "inHunkIndex": 1,
-                    "inHunkInput": 0
-                  }
-                ]
-              }
-            ],
-            "states": [
-              {
-                "name": "status",
-                "type": "string",
-                "value": "connected"
-              },
-              {
-                "name": "port",
-                "type": "number",
-                "value": 2042
-              }
-            ]
-          },
-          {
-            "type": "link",
-            "name": "link_3",
-            "inputs": [
-              {
-                "name": "data",
-                "type": "byteArray"
-              },
-              {
-                "name": "mgrMsgs",
-                "type": "byteArray"
-              },
-              {
-                "name": "auto_41_2",
-                "type": "byteArray"
-              },
-              {
-                "name": "auto_3_3",
-                "type": "byteArray"
-              }
-            ],
-            "outputs": [
-              {
-                "name": "data",
-                "type": "byteArray",
-                "connections": [
-                  {
-                    "inHunkIndex": 4,
-                    "inHunkInput": 0
-                  }
-                ]
-              },
-              {
-                "name": "mgrMsgs",
-                "type": "byteArray",
-                "connections": [
-                  {
-                    "inHunkIndex": 1,
-                    "inHunkInput": 2
-                  }
-                ]
-              },
-              {
-                "name": "auto_49_2",
-                "type": "byteArray",
-                "connections": [
-                  {
-                    "inHunkIndex": 1,
-                    "inHunkInput": 3
-                  }
-                ]
-              },
-              {
-                "name": "auto_154_3",
-                "type": "byteArray",
-                "connections": [
-                  {
-                    "inHunkIndex": 1,
-                    "inHunkInput": 4
-                  }
-                ]
-              }
-            ],
-            "states": [
-              {
-                "name": "isActive",
-                "type": "boolean",
-                "value": true
-              },
-              {
-                "name": "otherLink",
-                "type": "uint16",
-                "value": 1
-              },
-              {
-                "name": "inputList",
-                "type": "string",
-                "value": "mgrMsgs (byteArray), auto_41_2 (byteArray), auto_3_3 (byteArray)"
-              },
-              {
-                "name": "outputList",
-                "type": "string",
-                "value": "mgrMsgs (byteArray), auto_49_2 (byteArray), auto_154_3 (byteArray)"
-              }
-            ],
-            "contains": {
-              "interpreterName": "ponyo",
-              "interpreterVersion": "v0.1",
-              "hunks": [
-                {
-                  "type": "manager",
-                  "name": "ponyo_one",
-                  "inputs": [
-                    {
-                      "name": "mgrMsgs_1024",
-                      "type": "byteArray"
-                    }
-                  ],
-                  "outputs": [
-                    {
-                      "name": "mgrMsgs_1024",
-                      "type": "byteArray",
-                      "connections": [
-                        {
-                          "inHunkIndex": 1,
-                          "inHunkInput": 1
-                        }
-                      ]
-                    }
-                  ],
-                  "states": []
-                },
-                {
-                  "type": "link",
-                  "name": "link_1",
-                  "inputs": [
-                    {
-                      "name": "data_1024",
-                      "type": "byteArray"
-                    },
-                    {
-                      "name": "mgrMsgs_1024",
-                      "type": "byteArray"
-                    },
-                    {
-                      "name": "auto_72_3_512",
-                      "type": "byteArray"
-                    },
-                    {
-                      "name": "auto_30_4_512",
-                      "type": "byteArray"
-                    }
-                  ],
-                  "outputs": [
-                    {
-                      "name": "data_1024",
-                      "type": "byteArray",
-                      "connections": [
-                        {
-                          "inHunkIndex": 2,
-                          "inHunkInput": 0
-                        }
-                      ]
-                    },
-                    {
-                      "name": "mgrMsgs_1024",
-                      "type": "byteArray",
-                      "connections": [
-                        {
-                          "inHunkIndex": 0,
-                          "inHunkInput": 0
-                        }
-                      ]
-                    },
-                    {
-                      "name": "auto_215_3_512",
-                      "type": "byteArray",
-                      "connections": [
-                        {
-                          "inHunkIndex": 5,
-                          "inHunkInput": 1
-                        }
-                      ]
-                    },
-                    {
-                      "name": "auto_146_4_512",
-                      "type": "byteArray",
-                      "connections": [
-                        {
-                          "inHunkIndex": 6,
-                          "inHunkInput": 1
-                        }
-                      ]
-                    }
-                  ],
-                  "states": [
-                    {
-                      "name": "isActive",
-                      "type": "boolean",
-                      "value": true
-                    },
-                    {
-                      "name": "otherLink",
-                      "type": "uint16",
-                      "value": 3
-                    },
-                    {
-                      "name": "inputList",
-                      "type": "string",
-                      "value": "mgrMsgs (byteArray), auto_72_3 (byteArray), auto_30_4 (byteArray)"
-                    },
-                    {
-                      "name": "outputList",
-                      "type": "string",
-                      "value": "mgrMsgs (byteArray), auto_215_3 (byteArray), auto_146_4 (byteArray)"
-                    }
-                  ]
-                },
-                {
-                  "type": "comm/COBSerialUSB",
-                  "name": "comm/COBSerialUSB_2",
-                  "inputs": [
-                    {
-                      "name": "data_1024",
-                      "type": "byteArray"
-                    }
-                  ],
-                  "outputs": [
-                    {
-                      "name": "data_1024",
-                      "type": "byteArray",
-                      "connections": [
-                        {
-                          "inHunkIndex": 1,
-                          "inHunkInput": 0
-                        }
-                      ]
-                    }
-                  ],
-                  "states": []
-                },
-                {
-                  "type": "comm/COBSerialRJ45_A",
-                  "name": "comm/COBSerialRJ45_A_3",
-                  "inputs": [
-                    {
-                      "name": "data_1024",
-                      "type": "byteArray"
-                    }
-                  ],
-                  "outputs": [
-                    {
-                      "name": "data_1024",
-                      "type": "byteArray",
-                      "connections": [
-                        {
-                          "inHunkIndex": 5,
-                          "inHunkInput": 0
-                        }
-                      ]
-                    }
-                  ],
-                  "states": []
-                },
-                {
-                  "type": "comm/COBSerialRJ45_B",
-                  "name": "comm/COBSerialRJ45_B_4",
-                  "inputs": [
-                    {
-                      "name": "data_1024",
-                      "type": "byteArray"
-                    }
-                  ],
-                  "outputs": [
-                    {
-                      "name": "data_1024",
-                      "type": "byteArray",
-                      "connections": [
-                        {
-                          "inHunkIndex": 6,
-                          "inHunkInput": 0
-                        }
-                      ]
-                    }
-                  ],
-                  "states": []
-                },
-                {
-                  "type": "link",
-                  "name": "link_5",
-                  "inputs": [
-                    {
-                      "name": "data_1024",
-                      "type": "byteArray"
-                    },
-                    {
-                      "name": "mgrMsgs_512",
-                      "type": "byteArray"
-                    }
-                  ],
-                  "outputs": [
-                    {
-                      "name": "data_1024",
-                      "type": "byteArray",
-                      "connections": [
-                        {
-                          "inHunkIndex": 3,
-                          "inHunkInput": 0
-                        }
-                      ]
-                    },
-                    {
-                      "name": "mgrMsgs_512",
-                      "type": "byteArray",
-                      "connections": [
-                        {
-                          "inHunkIndex": 1,
-                          "inHunkInput": 2
-                        }
-                      ]
-                    }
-                  ],
-                  "states": [
-                    {
-                      "name": "isActive",
-                      "type": "boolean",
-                      "value": false
-                    },
-                    {
-                      "name": "otherLink",
-                      "type": "uint16",
-                      "value": 0
-                    },
-                    {
-                      "name": "inputList",
-                      "type": "string",
-                      "value": "mgrMsgs (byteArray)"
-                    },
-                    {
-                      "name": "outputList",
-                      "type": "string",
-                      "value": "mgrMsgs (byteArray)"
-                    }
-                  ]
-                },
-                {
-                  "type": "link",
-                  "name": "link_6",
-                  "inputs": [
-                    {
-                      "name": "data_1024",
-                      "type": "byteArray"
-                    },
-                    {
-                      "name": "mgrMsgs_512",
-                      "type": "byteArray"
-                    }
-                  ],
-                  "outputs": [
-                    {
-                      "name": "data_1024",
-                      "type": "byteArray",
-                      "connections": [
-                        {
-                          "inHunkIndex": 4,
-                          "inHunkInput": 0
-                        }
-                      ]
-                    },
-                    {
-                      "name": "mgrMsgs_512",
-                      "type": "byteArray",
-                      "connections": [
-                        {
-                          "inHunkIndex": 1,
-                          "inHunkInput": 3
-                        }
-                      ]
-                    }
-                  ],
-                  "states": [
-                    {
-                      "name": "isActive",
-                      "type": "boolean",
-                      "value": false
-                    },
-                    {
-                      "name": "otherLink",
-                      "type": "uint16",
-                      "value": 0
-                    },
-                    {
-                      "name": "inputList",
-                      "type": "string",
-                      "value": "mgrMsgs (byteArray)"
-                    },
-                    {
-                      "name": "outputList",
-                      "type": "string",
-                      "value": "mgrMsgs (byteArray)"
-                    }
-                  ]
-                }
-              ]
-            }
-          },
-          {
-            "type": "comm/cobserial",
-            "name": "comm/cobserial_4",
-            "inputs": [
-              {
-                "name": "data",
-                "type": "byteArray"
-              }
-            ],
-            "outputs": [
-              {
-                "name": "data",
-                "type": "byteArray",
-                "connections": [
-                  {
-                    "inHunkIndex": 3,
-                    "inHunkInput": 0
-                  }
-                ]
-              }
-            ],
-            "states": [
-              {
-                "name": "status",
-                "type": "string",
-                "value": "closed"
-              },
-              {
-                "name": "pid",
-                "type": "string",
-                "value": "8022"
-              },
-              {
-                "name": "refresh",
-                "type": "boolean",
-                "value": false
-              }
-            ]
-          }
-        ]
-      }
-    },
-    {
-      "type": "comm/websocketclient",
-      "name": "comm/websocketclient_3",
-      "inputs": [
-        {
-          "name": "data",
-          "type": "byteArray"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "data",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": 2,
-              "inHunkInput": 0
-            }
-          ]
-        }
-      ],
-      "states": [
-        {
-          "name": "status",
-          "type": "string",
-          "value": "open"
-        },
-        {
-          "name": "retrycount",
-          "type": "number",
-          "value": 3
-        },
-        {
-          "name": "retryreset",
-          "type": "boolean",
-          "value": false
-        },
-        {
-          "name": "address",
-          "type": "string",
-          "value": "127.0.0.1"
-        },
-        {
-          "name": "port",
-          "type": "number",
-          "value": 2042
-        }
-      ]
-    },
-    {
-      "type": "view",
-      "name": "view_4",
-      "inputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": 2,
-              "inHunkInput": 1
-            }
-          ]
-        }
-      ],
-      "states": []
-    },
-    {
-      "type": "view",
-      "name": "view_5",
-      "inputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": 2,
-              "inHunkInput": 2
-            }
-          ]
-        }
-      ],
-      "states": []
-    },
-    {
-      "type": "view",
-      "name": "view_6",
-      "inputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": 2,
-              "inHunkInput": 3
-            }
-          ]
-        }
-      ],
-      "states": []
-    },
-    {
-      "type": "view",
-      "name": "view_7",
-      "inputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": 2,
-              "inHunkInput": 4
-            }
-          ]
-        }
-      ],
-      "states": []
-    }
-  ]
-}
\ No newline at end of file
diff --git a/save/systems/simple-ws-01.json b/save/systems/simple-ws-01.json
new file mode 100644
index 0000000..36e9a2b
--- /dev/null
+++ b/save/systems/simple-ws-01.json
@@ -0,0 +1,124 @@
+{
+  "interpreterName": "cuttlefish",
+  "interpreterVersion": "v0.1",
+  "hunks": [
+    {
+      "type": "manager",
+      "name": "nrol",
+      "inputs": [
+        {
+          "name": "msgs",
+          "type": "byteArray"
+        }
+      ],
+      "outputs": [
+        {
+          "name": "msgs",
+          "type": "byteArray",
+          "connections": [
+            {
+              "inHunkIndex": 1,
+              "inHunkInput": 0
+            }
+          ]
+        }
+      ],
+      "states": []
+    },
+    {
+      "type": "view",
+      "name": "tlview",
+      "inputs": [
+        {
+          "name": "msgs",
+          "type": "byteArray"
+        }
+      ],
+      "outputs": [
+        {
+          "name": "msgs",
+          "type": "byteArray",
+          "connections": [
+            {
+              "inHunkIndex": 0,
+              "inHunkInput": 0
+            }
+          ]
+        }
+      ],
+      "states": []
+    },
+    {
+      "type": "comm/websocketclient",
+      "name": "comm/websocketclient_2",
+      "inputs": [
+        {
+          "name": "data",
+          "type": "byteArray"
+        }
+      ],
+      "outputs": [
+        {
+          "name": "data",
+          "type": "byteArray"
+        }
+      ],
+      "states": [
+        {
+          "name": "status",
+          "type": "string",
+          "value": "open"
+        },
+        {
+          "name": "retrycount",
+          "type": "number",
+          "value": 3
+        },
+        {
+          "name": "retryreset",
+          "type": "boolean",
+          "value": false
+        },
+        {
+          "name": "address",
+          "type": "string",
+          "value": "127.0.0.1"
+        },
+        {
+          "name": "port",
+          "type": "number",
+          "value": 2042
+        }
+      ]
+    },
+    {
+      "type": "debug/bytearrayoutput",
+      "name": "debug/bytearrayoutput_3",
+      "inputs": [],
+      "outputs": [
+        {
+          "name": "source",
+          "type": "byteArray",
+          "connections": [
+            {
+              "inHunkIndex": 2,
+              "inHunkInput": 0
+            }
+          ]
+        }
+      ],
+      "states": [
+        {
+          "name": "gobutton",
+          "type": "boolean",
+          "value": false
+        },
+        {
+          "name": "prefix",
+          "type": "string",
+          "value": "0, 86, 87, 88"
+        }
+      ]
+    }
+  ]
+}
\ No newline at end of file
diff --git a/save/systems/ussm-rdev-abc-v.json b/save/systems/tabula-router-abe-cn.json
similarity index 92%
rename from save/systems/ussm-rdev-abc-v.json
rename to save/systems/tabula-router-abe-cn.json
index 58a7766..6e54233 100644
--- a/save/systems/ussm-rdev-abc-v.json
+++ b/save/systems/tabula-router-abe-cn.json
@@ -65,15 +65,15 @@
           "type": "byteArray"
         },
         {
-          "name": "auto_199_3",
+          "name": "auto_2_3",
           "type": "byteArray"
         },
         {
-          "name": "auto_145_4",
+          "name": "auto_176_4",
           "type": "byteArray"
         },
         {
-          "name": "auto_190_5",
+          "name": "auto_75_5",
           "type": "byteArray"
         }
       ],
@@ -109,7 +109,7 @@
           ]
         },
         {
-          "name": "auto_12_3",
+          "name": "auto_158_3",
           "type": "byteArray",
           "connections": [
             {
@@ -119,7 +119,7 @@
           ]
         },
         {
-          "name": "auto_110_4",
+          "name": "auto_4_4",
           "type": "byteArray",
           "connections": [
             {
@@ -129,7 +129,7 @@
           ]
         },
         {
-          "name": "auto_109_5",
+          "name": "auto_30_5",
           "type": "byteArray",
           "connections": [
             {
@@ -153,12 +153,12 @@
         {
           "name": "inputList",
           "type": "string",
-          "value": "mgrMsgs (byteArray), auto_0_3 (byteArray), auto_199_3 (byteArray), auto_145_4 (byteArray), auto_190_5 (byteArray)"
+          "value": "mgrMsgs (byteArray), auto_0_3 (byteArray), auto_2_3 (byteArray), auto_176_4 (byteArray), auto_75_5 (byteArray)"
         },
         {
           "name": "outputList",
           "type": "string",
-          "value": "mgrMsgs (byteArray), auto_0_2 (byteArray), auto_12_3 (byteArray), auto_110_4 (byteArray), auto_109_5 (byteArray)"
+          "value": "mgrMsgs (byteArray), auto_0_2 (byteArray), auto_158_3 (byteArray), auto_4_4 (byteArray), auto_30_5 (byteArray)"
         }
       ],
       "contains": {
@@ -205,15 +205,15 @@
                 "type": "byteArray"
               },
               {
-                "name": "auto_107_4",
+                "name": "auto_211_4",
                 "type": "byteArray"
               },
               {
-                "name": "auto_131_5",
+                "name": "auto_30_5",
                 "type": "byteArray"
               },
               {
-                "name": "auto_247_6",
+                "name": "auto_120_6",
                 "type": "byteArray"
               }
             ],
@@ -249,7 +249,7 @@
                 ]
               },
               {
-                "name": "auto_164_3",
+                "name": "auto_193_3",
                 "type": "byteArray",
                 "connections": [
                   {
@@ -259,7 +259,7 @@
                 ]
               },
               {
-                "name": "auto_163_4",
+                "name": "auto_202_4",
                 "type": "byteArray",
                 "connections": [
                   {
@@ -269,7 +269,7 @@
                 ]
               },
               {
-                "name": "auto_254_5",
+                "name": "auto_6_5",
                 "type": "byteArray",
                 "connections": [
                   {
@@ -293,12 +293,12 @@
               {
                 "name": "inputList",
                 "type": "string",
-                "value": "mgrMsgs (byteArray), auto_0_3 (byteArray), auto_107_4 (byteArray), auto_131_5 (byteArray), auto_247_6 (byteArray)"
+                "value": "mgrMsgs (byteArray), auto_0_3 (byteArray), auto_211_4 (byteArray), auto_30_5 (byteArray), auto_120_6 (byteArray)"
               },
               {
                 "name": "outputList",
                 "type": "string",
-                "value": "mgrMsgs (byteArray), auto_0_2 (byteArray), auto_164_3 (byteArray), auto_163_4 (byteArray), auto_254_5 (byteArray)"
+                "value": "mgrMsgs (byteArray), auto_0_2 (byteArray), auto_193_3 (byteArray), auto_202_4 (byteArray), auto_6_5 (byteArray)"
               }
             ]
           },
@@ -349,15 +349,15 @@
                 "type": "byteArray"
               },
               {
-                "name": "auto_47_2",
+                "name": "auto_133_2",
                 "type": "byteArray"
               },
               {
-                "name": "auto_49_3",
+                "name": "auto_180_3",
                 "type": "byteArray"
               },
               {
-                "name": "auto_220_4",
+                "name": "auto_195_4",
                 "type": "byteArray"
               }
             ],
@@ -383,7 +383,7 @@
                 ]
               },
               {
-                "name": "auto_146_2",
+                "name": "auto_128_2",
                 "type": "byteArray",
                 "connections": [
                   {
@@ -393,7 +393,7 @@
                 ]
               },
               {
-                "name": "auto_49_3",
+                "name": "auto_11_3",
                 "type": "byteArray",
                 "connections": [
                   {
@@ -403,7 +403,7 @@
                 ]
               },
               {
-                "name": "auto_214_4",
+                "name": "auto_23_4",
                 "type": "byteArray",
                 "connections": [
                   {
@@ -427,12 +427,12 @@
               {
                 "name": "inputList",
                 "type": "string",
-                "value": "mgrMsgs (byteArray), auto_47_2 (byteArray), auto_49_3 (byteArray), auto_220_4 (byteArray)"
+                "value": "mgrMsgs (byteArray), auto_133_2 (byteArray), auto_180_3 (byteArray), auto_195_4 (byteArray)"
               },
               {
                 "name": "outputList",
                 "type": "string",
-                "value": "mgrMsgs (byteArray), auto_146_2 (byteArray), auto_49_3 (byteArray), auto_214_4 (byteArray)"
+                "value": "mgrMsgs (byteArray), auto_128_2 (byteArray), auto_11_3 (byteArray), auto_23_4 (byteArray)"
               }
             ],
             "contains": {
@@ -475,15 +475,15 @@
                       "type": "byteArray"
                     },
                     {
-                      "name": "auto_165_3_512",
+                      "name": "auto_86_3_512",
                       "type": "byteArray"
                     },
                     {
-                      "name": "auto_4_4_512",
+                      "name": "auto_115_4_512",
                       "type": "byteArray"
                     },
                     {
-                      "name": "auto_155_5_512",
+                      "name": "auto_239_5_512",
                       "type": "byteArray"
                     }
                   ],
@@ -509,27 +509,27 @@
                       ]
                     },
                     {
-                      "name": "auto_154_3_512",
+                      "name": "auto_30_3_512",
                       "type": "byteArray",
                       "connections": [
                         {
-                          "inHunkIndex": 4,
+                          "inHunkIndex": 6,
                           "inHunkInput": 1
                         }
                       ]
                     },
                     {
-                      "name": "auto_131_4_512",
+                      "name": "auto_97_4_512",
                       "type": "byteArray",
                       "connections": [
                         {
-                          "inHunkIndex": 6,
+                          "inHunkIndex": 7,
                           "inHunkInput": 1
                         }
                       ]
                     },
                     {
-                      "name": "auto_198_5_512",
+                      "name": "auto_42_5_512",
                       "type": "byteArray",
                       "connections": [
                         {
@@ -553,12 +553,12 @@
                     {
                       "name": "inputList",
                       "type": "string",
-                      "value": "mgrMsgs (byteArray), auto_165_3 (byteArray), auto_4_4 (byteArray), auto_155_5 (byteArray)"
+                      "value": "mgrMsgs (byteArray), auto_86_3 (byteArray), auto_115_4 (byteArray), auto_239_5 (byteArray)"
                     },
                     {
                       "name": "outputList",
                       "type": "string",
-                      "value": "mgrMsgs (byteArray), auto_154_3 (byteArray), auto_131_4 (byteArray), auto_198_5 (byteArray)"
+                      "value": "mgrMsgs (byteArray), auto_30_3 (byteArray), auto_97_4 (byteArray), auto_42_5 (byteArray)"
                     }
                   ]
                 },
@@ -600,7 +600,7 @@
                       "type": "byteArray",
                       "connections": [
                         {
-                          "inHunkIndex": 4,
+                          "inHunkIndex": 6,
                           "inHunkInput": 0
                         }
                       ]
@@ -609,16 +609,12 @@
                   "states": []
                 },
                 {
-                  "type": "link",
-                  "name": "link_4",
+                  "type": "comm/COBSerialRJ45_B",
+                  "name": "comm/COBSerialRJ45_B_4",
                   "inputs": [
                     {
                       "name": "data_1024",
                       "type": "byteArray"
-                    },
-                    {
-                      "name": "mgrMsgs_512",
-                      "type": "byteArray"
                     }
                   ],
                   "outputs": [
@@ -627,48 +623,17 @@
                       "type": "byteArray",
                       "connections": [
                         {
-                          "inHunkIndex": 3,
+                          "inHunkIndex": 7,
                           "inHunkInput": 0
                         }
                       ]
-                    },
-                    {
-                      "name": "mgrMsgs_512",
-                      "type": "byteArray",
-                      "connections": [
-                        {
-                          "inHunkIndex": 1,
-                          "inHunkInput": 2
-                        }
-                      ]
                     }
                   ],
-                  "states": [
-                    {
-                      "name": "isActive",
-                      "type": "boolean",
-                      "value": false
-                    },
-                    {
-                      "name": "otherLink",
-                      "type": "uint16",
-                      "value": 0
-                    },
-                    {
-                      "name": "inputList",
-                      "type": "string",
-                      "value": "mgrMsgs (byteArray)"
-                    },
-                    {
-                      "name": "outputList",
-                      "type": "string",
-                      "value": "mgrMsgs (byteArray)"
-                    }
-                  ]
+                  "states": []
                 },
                 {
-                  "type": "comm/COBSerialRJ45_B",
-                  "name": "comm/COBSerialRJ45_B_5",
+                  "type": "comm/COBSerialRJ45_E",
+                  "name": "comm/COBSerialRJ45_E_5",
                   "inputs": [
                     {
                       "name": "data_1024",
@@ -681,7 +646,7 @@
                       "type": "byteArray",
                       "connections": [
                         {
-                          "inHunkIndex": 6,
+                          "inHunkIndex": 8,
                           "inHunkInput": 0
                         }
                       ]
@@ -708,7 +673,7 @@
                       "type": "byteArray",
                       "connections": [
                         {
-                          "inHunkIndex": 5,
+                          "inHunkIndex": 3,
                           "inHunkInput": 0
                         }
                       ]
@@ -719,7 +684,7 @@
                       "connections": [
                         {
                           "inHunkIndex": 1,
-                          "inHunkInput": 3
+                          "inHunkInput": 2
                         }
                       ]
                     }
@@ -748,12 +713,16 @@
                   ]
                 },
                 {
-                  "type": "comm/COBSerialRJ45_C",
-                  "name": "comm/COBSerialRJ45_C_7",
+                  "type": "link",
+                  "name": "link_7",
                   "inputs": [
                     {
                       "name": "data_1024",
                       "type": "byteArray"
+                    },
+                    {
+                      "name": "mgrMsgs_512",
+                      "type": "byteArray"
                     }
                   ],
                   "outputs": [
@@ -762,13 +731,44 @@
                       "type": "byteArray",
                       "connections": [
                         {
-                          "inHunkIndex": 8,
+                          "inHunkIndex": 4,
                           "inHunkInput": 0
                         }
                       ]
+                    },
+                    {
+                      "name": "mgrMsgs_512",
+                      "type": "byteArray",
+                      "connections": [
+                        {
+                          "inHunkIndex": 1,
+                          "inHunkInput": 3
+                        }
+                      ]
                     }
                   ],
-                  "states": []
+                  "states": [
+                    {
+                      "name": "isActive",
+                      "type": "boolean",
+                      "value": false
+                    },
+                    {
+                      "name": "otherLink",
+                      "type": "uint16",
+                      "value": 0
+                    },
+                    {
+                      "name": "inputList",
+                      "type": "string",
+                      "value": "mgrMsgs (byteArray)"
+                    },
+                    {
+                      "name": "outputList",
+                      "type": "string",
+                      "value": "mgrMsgs (byteArray)"
+                    }
+                  ]
                 },
                 {
                   "type": "link",
@@ -789,7 +789,7 @@
                       "type": "byteArray",
                       "connections": [
                         {
-                          "inHunkIndex": 7,
+                          "inHunkIndex": 5,
                           "inHunkInput": 0
                         }
                       ]
@@ -903,7 +903,7 @@
         {
           "name": "retrycount",
           "type": "number",
-          "value": 3
+          "value": 1
         },
         {
           "name": "retryreset",
diff --git a/save/systems/ussm-rdev-ldconnect.json b/save/systems/ussm-allup-03.json
similarity index 86%
rename from save/systems/ussm-rdev-ldconnect.json
rename to save/systems/ussm-allup-03.json
index aa76c17..beb1ed1 100644
--- a/save/systems/ussm-rdev-ldconnect.json
+++ b/save/systems/ussm-allup-03.json
@@ -65,20 +65,16 @@
           "type": "byteArray"
         },
         {
-          "name": "auto_199_3",
+          "name": "auto_2_3",
           "type": "byteArray"
         },
         {
-          "name": "auto_145_4",
+          "name": "auto_176_4",
           "type": "byteArray"
         },
         {
-          "name": "auto_190_5",
+          "name": "auto_75_5",
           "type": "byteArray"
-        },
-        {
-          "name": "auto_148_6",
-          "type": "boolean"
         }
       ],
       "outputs": [
@@ -113,7 +109,7 @@
           ]
         },
         {
-          "name": "auto_12_3",
+          "name": "auto_158_3",
           "type": "byteArray",
           "connections": [
             {
@@ -123,7 +119,7 @@
           ]
         },
         {
-          "name": "auto_110_4",
+          "name": "auto_4_4",
           "type": "byteArray",
           "connections": [
             {
@@ -133,7 +129,7 @@
           ]
         },
         {
-          "name": "auto_109_5",
+          "name": "auto_30_5",
           "type": "byteArray",
           "connections": [
             {
@@ -143,12 +139,22 @@
           ]
         },
         {
-          "name": "auto_93_3",
+          "name": "auto_83_2",
+          "type": "int32",
+          "connections": [
+            {
+              "inHunkIndex": 10,
+              "inHunkInput": 0
+            }
+          ]
+        },
+        {
+          "name": "auto_105_2",
           "type": "int32",
           "connections": [
             {
               "inHunkIndex": 9,
-              "inHunkInput": 2
+              "inHunkInput": 1
             }
           ]
         }
@@ -167,12 +173,12 @@
         {
           "name": "inputList",
           "type": "string",
-          "value": "mgrMsgs (byteArray), auto_0_3 (byteArray), auto_199_3 (byteArray), auto_145_4 (byteArray), auto_190_5 (byteArray), auto_148_6 (boolean)"
+          "value": "mgrMsgs (byteArray), auto_0_3 (byteArray), auto_2_3 (byteArray), auto_176_4 (byteArray), auto_75_5 (byteArray)"
         },
         {
           "name": "outputList",
           "type": "string",
-          "value": "mgrMsgs (byteArray), auto_0_2 (byteArray), auto_12_3 (byteArray), auto_110_4 (byteArray), auto_109_5 (byteArray), auto_93_3 (int32)"
+          "value": "mgrMsgs (byteArray), auto_0_2 (byteArray), auto_158_3 (byteArray), auto_4_4 (byteArray), auto_30_5 (byteArray), auto_83_2 (int32), auto_105_2 (int32)"
         }
       ],
       "contains": {
@@ -219,19 +225,23 @@
                 "type": "byteArray"
               },
               {
-                "name": "auto_107_4",
+                "name": "auto_211_4",
                 "type": "byteArray"
               },
               {
-                "name": "auto_131_5",
+                "name": "auto_30_5",
                 "type": "byteArray"
               },
               {
-                "name": "auto_247_6",
+                "name": "auto_120_6",
                 "type": "byteArray"
               },
               {
-                "name": "auto_159_7",
+                "name": "auto_236_6",
+                "type": "int32"
+              },
+              {
+                "name": "auto_194_6",
                 "type": "int32"
               }
             ],
@@ -267,7 +277,7 @@
                 ]
               },
               {
-                "name": "auto_164_3",
+                "name": "auto_193_3",
                 "type": "byteArray",
                 "connections": [
                   {
@@ -277,7 +287,7 @@
                 ]
               },
               {
-                "name": "auto_163_4",
+                "name": "auto_202_4",
                 "type": "byteArray",
                 "connections": [
                   {
@@ -287,7 +297,7 @@
                 ]
               },
               {
-                "name": "auto_254_5",
+                "name": "auto_6_5",
                 "type": "byteArray",
                 "connections": [
                   {
@@ -295,16 +305,6 @@
                     "inHunkInput": 4
                   }
                 ]
-              },
-              {
-                "name": "auto_199_6",
-                "type": "boolean",
-                "connections": [
-                  {
-                    "inHunkIndex": 3,
-                    "inHunkInput": 5
-                  }
-                ]
               }
             ],
             "states": [
@@ -321,12 +321,12 @@
               {
                 "name": "inputList",
                 "type": "string",
-                "value": "mgrMsgs (byteArray), auto_0_3 (byteArray), auto_107_4 (byteArray), auto_131_5 (byteArray), auto_247_6 (byteArray), auto_159_7 (int32)"
+                "value": "mgrMsgs (byteArray), auto_0_3 (byteArray), auto_211_4 (byteArray), auto_30_5 (byteArray), auto_120_6 (byteArray), auto_236_6 (int32), auto_194_6 (int32)"
               },
               {
                 "name": "outputList",
                 "type": "string",
-                "value": "mgrMsgs (byteArray), auto_0_2 (byteArray), auto_164_3 (byteArray), auto_163_4 (byteArray), auto_254_5 (byteArray), auto_199_6 (boolean)"
+                "value": "mgrMsgs (byteArray), auto_0_2 (byteArray), auto_193_3 (byteArray), auto_202_4 (byteArray), auto_6_5 (byteArray)"
               }
             ]
           },
@@ -377,20 +377,16 @@
                 "type": "byteArray"
               },
               {
-                "name": "auto_47_2",
+                "name": "auto_133_2",
                 "type": "byteArray"
               },
               {
-                "name": "auto_49_3",
+                "name": "auto_180_3",
                 "type": "byteArray"
               },
               {
-                "name": "auto_220_4",
+                "name": "auto_195_4",
                 "type": "byteArray"
-              },
-              {
-                "name": "auto_20_5",
-                "type": "boolean"
               }
             ],
             "outputs": [
@@ -415,7 +411,7 @@
                 ]
               },
               {
-                "name": "auto_146_2",
+                "name": "auto_128_2",
                 "type": "byteArray",
                 "connections": [
                   {
@@ -425,7 +421,7 @@
                 ]
               },
               {
-                "name": "auto_49_3",
+                "name": "auto_11_3",
                 "type": "byteArray",
                 "connections": [
                   {
@@ -435,7 +431,7 @@
                 ]
               },
               {
-                "name": "auto_214_4",
+                "name": "auto_23_4",
                 "type": "byteArray",
                 "connections": [
                   {
@@ -445,7 +441,7 @@
                 ]
               },
               {
-                "name": "auto_59_5",
+                "name": "auto_234_5",
                 "type": "int32",
                 "connections": [
                   {
@@ -453,6 +449,16 @@
                     "inHunkInput": 6
                   }
                 ]
+              },
+              {
+                "name": "auto_171_6",
+                "type": "int32",
+                "connections": [
+                  {
+                    "inHunkIndex": 1,
+                    "inHunkInput": 7
+                  }
+                ]
               }
             ],
             "states": [
@@ -469,12 +475,12 @@
               {
                 "name": "inputList",
                 "type": "string",
-                "value": "mgrMsgs (byteArray), auto_47_2 (byteArray), auto_49_3 (byteArray), auto_220_4 (byteArray), auto_20_5 (boolean)"
+                "value": "mgrMsgs (byteArray), auto_133_2 (byteArray), auto_180_3 (byteArray), auto_195_4 (byteArray)"
               },
               {
                 "name": "outputList",
                 "type": "string",
-                "value": "mgrMsgs (byteArray), auto_146_2 (byteArray), auto_49_3 (byteArray), auto_214_4 (byteArray), auto_59_5 (int32)"
+                "value": "mgrMsgs (byteArray), auto_128_2 (byteArray), auto_11_3 (byteArray), auto_23_4 (byteArray), auto_234_5 (int32), auto_171_6 (int32)"
               }
             ],
             "contains": {
@@ -517,19 +523,23 @@
                       "type": "byteArray"
                     },
                     {
-                      "name": "auto_165_3_512",
+                      "name": "auto_86_3_512",
                       "type": "byteArray"
                     },
                     {
-                      "name": "auto_4_4_512",
+                      "name": "auto_115_4_512",
                       "type": "byteArray"
                     },
                     {
-                      "name": "auto_155_5_512",
+                      "name": "auto_239_5_512",
                       "type": "byteArray"
                     },
                     {
-                      "name": "auto_29_6",
+                      "name": "auto_152_5",
+                      "type": "int32"
+                    },
+                    {
+                      "name": "auto_137_5",
                       "type": "int32"
                     }
                   ],
@@ -555,17 +565,7 @@
                       ]
                     },
                     {
-                      "name": "auto_154_3_512",
-                      "type": "byteArray",
-                      "connections": [
-                        {
-                          "inHunkIndex": 4,
-                          "inHunkInput": 1
-                        }
-                      ]
-                    },
-                    {
-                      "name": "auto_131_4_512",
+                      "name": "auto_30_3_512",
                       "type": "byteArray",
                       "connections": [
                         {
@@ -575,7 +575,7 @@
                       ]
                     },
                     {
-                      "name": "auto_198_5_512",
+                      "name": "auto_97_4_512",
                       "type": "byteArray",
                       "connections": [
                         {
@@ -585,12 +585,12 @@
                       ]
                     },
                     {
-                      "name": "auto_226_5",
-                      "type": "boolean",
+                      "name": "auto_42_5_512",
+                      "type": "byteArray",
                       "connections": [
                         {
-                          "inHunkIndex": 4,
-                          "inHunkInput": 2
+                          "inHunkIndex": 8,
+                          "inHunkInput": 1
                         }
                       ]
                     }
@@ -609,12 +609,12 @@
                     {
                       "name": "inputList",
                       "type": "string",
-                      "value": "mgrMsgs (byteArray), auto_165_3 (byteArray), auto_4_4 (byteArray), auto_155_5 (byteArray), auto_29_6 (int32)"
+                      "value": "mgrMsgs (byteArray), auto_86_3 (byteArray), auto_115_4 (byteArray), auto_239_5 (byteArray), auto_152_5 (int32), auto_137_5 (int32)"
                     },
                     {
                       "name": "outputList",
                       "type": "string",
-                      "value": "mgrMsgs (byteArray), auto_154_3 (byteArray), auto_131_4 (byteArray), auto_198_5 (byteArray), auto_226_5 (boolean)"
+                      "value": "mgrMsgs (byteArray), auto_30_3 (byteArray), auto_97_4 (byteArray), auto_42_5 (byteArray)"
                     }
                   ]
                 },
@@ -656,7 +656,53 @@
                       "type": "byteArray",
                       "connections": [
                         {
-                          "inHunkIndex": 4,
+                          "inHunkIndex": 6,
+                          "inHunkInput": 0
+                        }
+                      ]
+                    }
+                  ],
+                  "states": []
+                },
+                {
+                  "type": "comm/COBSerialRJ45_B",
+                  "name": "comm/COBSerialRJ45_B_4",
+                  "inputs": [
+                    {
+                      "name": "data_1024",
+                      "type": "byteArray"
+                    }
+                  ],
+                  "outputs": [
+                    {
+                      "name": "data_1024",
+                      "type": "byteArray",
+                      "connections": [
+                        {
+                          "inHunkIndex": 7,
+                          "inHunkInput": 0
+                        }
+                      ]
+                    }
+                  ],
+                  "states": []
+                },
+                {
+                  "type": "comm/COBSerialRJ45_E",
+                  "name": "comm/COBSerialRJ45_E_5",
+                  "inputs": [
+                    {
+                      "name": "data_1024",
+                      "type": "byteArray"
+                    }
+                  ],
+                  "outputs": [
+                    {
+                      "name": "data_1024",
+                      "type": "byteArray",
+                      "connections": [
+                        {
+                          "inHunkIndex": 8,
                           "inHunkInput": 0
                         }
                       ]
@@ -666,7 +712,7 @@
                 },
                 {
                   "type": "link",
-                  "name": "link_4",
+                  "name": "link_6",
                   "inputs": [
                     {
                       "name": "data_1024",
@@ -675,10 +721,6 @@
                     {
                       "name": "mgrMsgs_512",
                       "type": "byteArray"
-                    },
-                    {
-                      "name": "auto_103_2",
-                      "type": "boolean"
                     }
                   ],
                   "outputs": [
@@ -703,12 +745,12 @@
                       ]
                     },
                     {
-                      "name": "auto_59_2",
+                      "name": "auto_226_2",
                       "type": "int32",
                       "connections": [
                         {
                           "inHunkIndex": 1,
-                          "inHunkInput": 5
+                          "inHunkInput": 6
                         }
                       ]
                     }
@@ -727,12 +769,12 @@
                     {
                       "name": "inputList",
                       "type": "string",
-                      "value": "mgrMsgs (byteArray), auto_103_2 (boolean)"
+                      "value": "mgrMsgs (byteArray)"
                     },
                     {
                       "name": "outputList",
                       "type": "string",
-                      "value": "mgrMsgs (byteArray), auto_59_2 (int32)"
+                      "value": "mgrMsgs (byteArray), auto_226_2 (int32)"
                     }
                   ],
                   "contains": {
@@ -775,7 +817,7 @@
                             "type": "byteArray"
                           },
                           {
-                            "name": "auto_195_3",
+                            "name": "auto_101_2",
                             "type": "int32"
                           }
                         ],
@@ -799,16 +841,6 @@
                                 "inHunkInput": 0
                               }
                             ]
-                          },
-                          {
-                            "name": "auto_3_6",
-                            "type": "boolean",
-                            "connections": [
-                              {
-                                "inHunkIndex": 3,
-                                "inHunkInput": 0
-                              }
-                            ]
                           }
                         ],
                         "states": [
@@ -820,17 +852,17 @@
                           {
                             "name": "otherLink",
                             "type": "uint16",
-                            "value": 4
+                            "value": 6
                           },
                           {
                             "name": "inputList",
                             "type": "string",
-                            "value": "mgrMsgs (byteArray), auto_195_3 (int32)"
+                            "value": "mgrMsgs (byteArray), auto_101_2 (int32)"
                           },
                           {
                             "name": "outputList",
                             "type": "string",
-                            "value": "mgrMsgs (byteArray), auto_3_6 (boolean)"
+                            "value": "mgrMsgs (byteArray)"
                           }
                         ]
                       },
@@ -887,32 +919,9 @@
                     ]
                   }
                 },
-                {
-                  "type": "comm/COBSerialRJ45_B",
-                  "name": "comm/COBSerialRJ45_B_5",
-                  "inputs": [
-                    {
-                      "name": "data_1024",
-                      "type": "byteArray"
-                    }
-                  ],
-                  "outputs": [
-                    {
-                      "name": "data_1024",
-                      "type": "byteArray",
-                      "connections": [
-                        {
-                          "inHunkIndex": 6,
-                          "inHunkInput": 0
-                        }
-                      ]
-                    }
-                  ],
-                  "states": []
-                },
                 {
                   "type": "link",
-                  "name": "link_6",
+                  "name": "link_7",
                   "inputs": [
                     {
                       "name": "data_1024",
@@ -929,7 +938,7 @@
                       "type": "byteArray",
                       "connections": [
                         {
-                          "inHunkIndex": 5,
+                          "inHunkIndex": 4,
                           "inHunkInput": 0
                         }
                       ]
@@ -1038,7 +1047,7 @@
                           {
                             "name": "otherLink",
                             "type": "uint16",
-                            "value": 6
+                            "value": 7
                           },
                           {
                             "name": "inputList",
@@ -1074,6 +1083,42 @@
                           }
                         ],
                         "states": []
+                      },
+                      {
+                        "type": "stepper",
+                        "name": "stepper_3",
+                        "inputs": [
+                          {
+                            "name": "increment",
+                            "type": "int32"
+                          },
+                          {
+                            "name": "enable",
+                            "type": "boolean"
+                          }
+                        ],
+                        "outputs": [
+                          {
+                            "name": "increment",
+                            "type": "int32"
+                          },
+                          {
+                            "name": "stallGuard",
+                            "type": "uint32"
+                          }
+                        ],
+                        "states": [
+                          {
+                            "name": "current (6-24)",
+                            "type": "uint16",
+                            "value": 16
+                          },
+                          {
+                            "name": "enable",
+                            "type": "boolean",
+                            "value": true
+                          }
+                        ]
                       }
                     ]
                   }
@@ -1097,7 +1142,7 @@
                       "type": "byteArray",
                       "connections": [
                         {
-                          "inHunkIndex": 8,
+                          "inHunkIndex": 5,
                           "inHunkInput": 0
                         }
                       ]
@@ -1111,6 +1156,16 @@
                           "inHunkInput": 4
                         }
                       ]
+                    },
+                    {
+                      "name": "auto_147_2",
+                      "type": "int32",
+                      "connections": [
+                        {
+                          "inHunkIndex": 1,
+                          "inHunkInput": 5
+                        }
+                      ]
                     }
                   ],
                   "states": [
@@ -1132,7 +1187,7 @@
                     {
                       "name": "outputList",
                       "type": "string",
-                      "value": "mgrMsgs (byteArray)"
+                      "value": "mgrMsgs (byteArray), auto_147_2 (int32)"
                     }
                   ],
                   "contains": {
@@ -1173,6 +1228,10 @@
                           {
                             "name": "mgrMsgs_1024",
                             "type": "byteArray"
+                          },
+                          {
+                            "name": "auto_210_2",
+                            "type": "int32"
                           }
                         ],
                         "outputs": [
@@ -1206,12 +1265,12 @@
                           {
                             "name": "otherLink",
                             "type": "uint16",
-                            "value": 7
+                            "value": 8
                           },
                           {
                             "name": "inputList",
                             "type": "string",
-                            "value": "mgrMsgs (byteArray)"
+                            "value": "mgrMsgs (byteArray), auto_210_2 (int32)"
                           },
                           {
                             "name": "outputList",
@@ -1242,32 +1301,51 @@
                           }
                         ],
                         "states": []
+                      },
+                      {
+                        "type": "stepper",
+                        "name": "stepper_3",
+                        "inputs": [
+                          {
+                            "name": "increment",
+                            "type": "int32"
+                          },
+                          {
+                            "name": "enable",
+                            "type": "boolean"
+                          }
+                        ],
+                        "outputs": [
+                          {
+                            "name": "increment",
+                            "type": "int32",
+                            "connections": [
+                              {
+                                "inHunkIndex": 1,
+                                "inHunkInput": 2
+                              }
+                            ]
+                          },
+                          {
+                            "name": "stallGuard",
+                            "type": "uint32"
+                          }
+                        ],
+                        "states": [
+                          {
+                            "name": "current (6-24)",
+                            "type": "uint16",
+                            "value": 16
+                          },
+                          {
+                            "name": "enable",
+                            "type": "boolean",
+                            "value": true
+                          }
+                        ]
                       }
                     ]
                   }
-                },
-                {
-                  "type": "comm/COBSerialRJ45_E",
-                  "name": "comm/COBSerialRJ45_E_8",
-                  "inputs": [
-                    {
-                      "name": "data_1024",
-                      "type": "byteArray"
-                    }
-                  ],
-                  "outputs": [
-                    {
-                      "name": "data_1024",
-                      "type": "byteArray",
-                      "connections": [
-                        {
-                          "inHunkIndex": 7,
-                          "inHunkInput": 0
-                        }
-                      ]
-                    }
-                  ],
-                  "states": []
                 }
               ]
             }
@@ -1344,7 +1422,7 @@
         {
           "name": "retrycount",
           "type": "number",
-          "value": 3
+          "value": 1
         },
         {
           "name": "retryreset",
@@ -1479,47 +1557,58 @@
       "states": []
     },
     {
-      "type": "control/ussm",
-      "name": "control/ussm_9",
+      "type": "data/accumulator",
+      "name": "data/accumulator_9",
       "inputs": [
         {
-          "name": "lmReturn",
-          "type": "int32"
-        },
-        {
-          "name": "rmReturn",
-          "type": "int32"
+          "name": "x",
+          "type": "number"
         },
         {
-          "name": "rdReturn",
-          "type": "int32"
+          "name": "y",
+          "type": "number"
         }
       ],
       "outputs": [
         {
-          "name": "lmOut",
-          "type": "int32"
-        },
-        {
-          "name": "rmOut",
-          "type": "int32"
-        },
+          "name": "accumulated",
+          "type": "reference"
+        }
+      ],
+      "states": [
         {
-          "name": "rdTrig",
+          "name": "reset",
           "type": "boolean",
+          "value": false
+        }
+      ]
+    },
+    {
+      "type": "primitive/increment",
+      "name": "primitive/increment_10",
+      "inputs": [
+        {
+          "name": "increment",
+          "type": "number"
+        }
+      ],
+      "outputs": [
+        {
+          "name": "value",
+          "type": "number",
           "connections": [
             {
-              "inHunkIndex": 2,
-              "inHunkInput": 6
+              "inHunkIndex": 9,
+              "inHunkInput": 0
             }
           ]
         }
       ],
       "states": [
         {
-          "name": "gTrig",
+          "name": "reset",
           "type": "boolean",
-          "value": true
+          "value": false
         }
       ]
     }
diff --git a/save/systems/ussm-allup.json b/save/systems/ussm-dev-07.json
similarity index 88%
rename from save/systems/ussm-allup.json
rename to save/systems/ussm-dev-07.json
index 46021e4..215e653 100644
--- a/save/systems/ussm-allup.json
+++ b/save/systems/ussm-dev-07.json
@@ -65,28 +65,28 @@
           "type": "byteArray"
         },
         {
-          "name": "auto_199_3",
+          "name": "auto_2_3",
           "type": "byteArray"
         },
         {
-          "name": "auto_145_4",
+          "name": "auto_176_4",
           "type": "byteArray"
         },
         {
-          "name": "auto_190_5",
+          "name": "auto_75_5",
           "type": "byteArray"
         },
         {
-          "name": "auto_148_6",
-          "type": "boolean"
+          "name": "auto_19_9",
+          "type": "int32"
         },
         {
-          "name": "auto_181_7",
+          "name": "auto_51_9",
           "type": "int32"
         },
         {
-          "name": "auto_59_8",
-          "type": "int32"
+          "name": "auto_103_9",
+          "type": "boolean"
         }
       ],
       "outputs": [
@@ -121,7 +121,7 @@
           ]
         },
         {
-          "name": "auto_12_3",
+          "name": "auto_158_3",
           "type": "byteArray",
           "connections": [
             {
@@ -131,7 +131,7 @@
           ]
         },
         {
-          "name": "auto_110_4",
+          "name": "auto_4_4",
           "type": "byteArray",
           "connections": [
             {
@@ -141,7 +141,7 @@
           ]
         },
         {
-          "name": "auto_109_5",
+          "name": "auto_30_5",
           "type": "byteArray",
           "connections": [
             {
@@ -151,40 +151,40 @@
           ]
         },
         {
-          "name": "auto_93_3",
+          "name": "auto_83_2",
           "type": "int32",
           "connections": [
             {
-              "inHunkIndex": 9,
-              "inHunkInput": 2
+              "inHunkIndex": 10,
+              "inHunkInput": 0
             },
             {
-              "inHunkIndex": 10,
-              "inHunkInput": 1
+              "inHunkIndex": 11,
+              "inHunkInput": 0
             }
           ]
         },
         {
-          "name": "auto_130_3",
+          "name": "auto_105_2",
           "type": "int32",
           "connections": [
             {
               "inHunkIndex": 9,
-              "inHunkInput": 0
+              "inHunkInput": 1
             },
             {
               "inHunkIndex": 11,
-              "inHunkInput": 0
+              "inHunkInput": 1
             }
           ]
         },
         {
-          "name": "auto_11_3",
+          "name": "auto_176_2",
           "type": "int32",
           "connections": [
             {
-              "inHunkIndex": 9,
-              "inHunkInput": 1
+              "inHunkIndex": 11,
+              "inHunkInput": 2
             }
           ]
         }
@@ -203,12 +203,12 @@
         {
           "name": "inputList",
           "type": "string",
-          "value": "mgrMsgs (byteArray), auto_0_3 (byteArray), auto_199_3 (byteArray), auto_145_4 (byteArray), auto_190_5 (byteArray), auto_148_6 (boolean), auto_181_7 (int32), auto_59_8 (int32)"
+          "value": "mgrMsgs (byteArray), auto_0_3 (byteArray), auto_2_3 (byteArray), auto_176_4 (byteArray), auto_75_5 (byteArray), auto_19_9 (int32), auto_51_9 (int32), auto_103_9 (boolean)"
         },
         {
           "name": "outputList",
           "type": "string",
-          "value": "mgrMsgs (byteArray), auto_0_2 (byteArray), auto_12_3 (byteArray), auto_110_4 (byteArray), auto_109_5 (byteArray), auto_93_3 (int32), auto_130_3 (int32), auto_11_3 (int32)"
+          "value": "mgrMsgs (byteArray), auto_0_2 (byteArray), auto_158_3 (byteArray), auto_4_4 (byteArray), auto_30_5 (byteArray), auto_83_2 (int32), auto_105_2 (int32), auto_176_2 (int32)"
         }
       ],
       "contains": {
@@ -255,27 +255,27 @@
                 "type": "byteArray"
               },
               {
-                "name": "auto_107_4",
+                "name": "auto_211_4",
                 "type": "byteArray"
               },
               {
-                "name": "auto_131_5",
+                "name": "auto_30_5",
                 "type": "byteArray"
               },
               {
-                "name": "auto_247_6",
+                "name": "auto_120_6",
                 "type": "byteArray"
               },
               {
-                "name": "auto_159_7",
+                "name": "auto_236_6",
                 "type": "int32"
               },
               {
-                "name": "auto_133_8",
+                "name": "auto_194_6",
                 "type": "int32"
               },
               {
-                "name": "auto_109_9",
+                "name": "auto_42_6",
                 "type": "int32"
               }
             ],
@@ -311,7 +311,7 @@
                 ]
               },
               {
-                "name": "auto_164_3",
+                "name": "auto_193_3",
                 "type": "byteArray",
                 "connections": [
                   {
@@ -321,7 +321,7 @@
                 ]
               },
               {
-                "name": "auto_163_4",
+                "name": "auto_202_4",
                 "type": "byteArray",
                 "connections": [
                   {
@@ -331,7 +331,7 @@
                 ]
               },
               {
-                "name": "auto_254_5",
+                "name": "auto_6_5",
                 "type": "byteArray",
                 "connections": [
                   {
@@ -341,8 +341,8 @@
                 ]
               },
               {
-                "name": "auto_199_6",
-                "type": "boolean",
+                "name": "auto_229_6",
+                "type": "int32",
                 "connections": [
                   {
                     "inHunkIndex": 3,
@@ -351,7 +351,7 @@
                 ]
               },
               {
-                "name": "auto_98_7",
+                "name": "auto_208_7",
                 "type": "int32",
                 "connections": [
                   {
@@ -361,8 +361,8 @@
                 ]
               },
               {
-                "name": "auto_164_8",
-                "type": "int32",
+                "name": "auto_41_8",
+                "type": "boolean",
                 "connections": [
                   {
                     "inHunkIndex": 3,
@@ -385,12 +385,12 @@
               {
                 "name": "inputList",
                 "type": "string",
-                "value": "mgrMsgs (byteArray), auto_0_3 (byteArray), auto_107_4 (byteArray), auto_131_5 (byteArray), auto_247_6 (byteArray), auto_159_7 (int32), auto_133_8 (int32), auto_109_9 (int32)"
+                "value": "mgrMsgs (byteArray), auto_0_3 (byteArray), auto_211_4 (byteArray), auto_30_5 (byteArray), auto_120_6 (byteArray), auto_236_6 (int32), auto_194_6 (int32), auto_42_6 (int32)"
               },
               {
                 "name": "outputList",
                 "type": "string",
-                "value": "mgrMsgs (byteArray), auto_0_2 (byteArray), auto_164_3 (byteArray), auto_163_4 (byteArray), auto_254_5 (byteArray), auto_199_6 (boolean), auto_98_7 (int32), auto_164_8 (int32)"
+                "value": "mgrMsgs (byteArray), auto_0_2 (byteArray), auto_193_3 (byteArray), auto_202_4 (byteArray), auto_6_5 (byteArray), auto_229_6 (int32), auto_208_7 (int32), auto_41_8 (boolean)"
               }
             ]
           },
@@ -441,28 +441,28 @@
                 "type": "byteArray"
               },
               {
-                "name": "auto_47_2",
+                "name": "auto_133_2",
                 "type": "byteArray"
               },
               {
-                "name": "auto_49_3",
+                "name": "auto_180_3",
                 "type": "byteArray"
               },
               {
-                "name": "auto_220_4",
+                "name": "auto_195_4",
                 "type": "byteArray"
               },
               {
-                "name": "auto_20_5",
-                "type": "boolean"
+                "name": "auto_2_8",
+                "type": "int32"
               },
               {
-                "name": "auto_78_6",
+                "name": "auto_55_8",
                 "type": "int32"
               },
               {
-                "name": "auto_196_7",
-                "type": "int32"
+                "name": "auto_188_8",
+                "type": "boolean"
               }
             ],
             "outputs": [
@@ -487,7 +487,7 @@
                 ]
               },
               {
-                "name": "auto_146_2",
+                "name": "auto_128_2",
                 "type": "byteArray",
                 "connections": [
                   {
@@ -497,7 +497,7 @@
                 ]
               },
               {
-                "name": "auto_49_3",
+                "name": "auto_11_3",
                 "type": "byteArray",
                 "connections": [
                   {
@@ -507,7 +507,7 @@
                 ]
               },
               {
-                "name": "auto_214_4",
+                "name": "auto_23_4",
                 "type": "byteArray",
                 "connections": [
                   {
@@ -517,7 +517,7 @@
                 ]
               },
               {
-                "name": "auto_59_5",
+                "name": "auto_234_5",
                 "type": "int32",
                 "connections": [
                   {
@@ -527,7 +527,7 @@
                 ]
               },
               {
-                "name": "auto_87_6",
+                "name": "auto_171_6",
                 "type": "int32",
                 "connections": [
                   {
@@ -537,7 +537,7 @@
                 ]
               },
               {
-                "name": "auto_164_7",
+                "name": "auto_242_7",
                 "type": "int32",
                 "connections": [
                   {
@@ -561,12 +561,12 @@
               {
                 "name": "inputList",
                 "type": "string",
-                "value": "mgrMsgs (byteArray), auto_47_2 (byteArray), auto_49_3 (byteArray), auto_220_4 (byteArray), auto_20_5 (boolean), auto_78_6 (int32), auto_196_7 (int32)"
+                "value": "mgrMsgs (byteArray), auto_133_2 (byteArray), auto_180_3 (byteArray), auto_195_4 (byteArray), auto_2_8 (int32), auto_55_8 (int32), auto_188_8 (boolean)"
               },
               {
                 "name": "outputList",
                 "type": "string",
-                "value": "mgrMsgs (byteArray), auto_146_2 (byteArray), auto_49_3 (byteArray), auto_214_4 (byteArray), auto_59_5 (int32), auto_87_6 (int32), auto_164_7 (int32)"
+                "value": "mgrMsgs (byteArray), auto_128_2 (byteArray), auto_11_3 (byteArray), auto_23_4 (byteArray), auto_234_5 (int32), auto_171_6 (int32), auto_242_7 (int32)"
               }
             ],
             "contains": {
@@ -609,27 +609,27 @@
                       "type": "byteArray"
                     },
                     {
-                      "name": "auto_165_3_512",
+                      "name": "auto_86_3_512",
                       "type": "byteArray"
                     },
                     {
-                      "name": "auto_4_4_512",
+                      "name": "auto_115_4_512",
                       "type": "byteArray"
                     },
                     {
-                      "name": "auto_155_5_512",
+                      "name": "auto_239_5_512",
                       "type": "byteArray"
                     },
                     {
-                      "name": "auto_29_6",
+                      "name": "auto_152_5",
                       "type": "int32"
                     },
                     {
-                      "name": "auto_218_7",
+                      "name": "auto_137_5",
                       "type": "int32"
                     },
                     {
-                      "name": "auto_169_8",
+                      "name": "auto_223_5",
                       "type": "int32"
                     }
                   ],
@@ -655,61 +655,61 @@
                       ]
                     },
                     {
-                      "name": "auto_154_3_512",
+                      "name": "auto_30_3_512",
                       "type": "byteArray",
                       "connections": [
                         {
-                          "inHunkIndex": 4,
+                          "inHunkIndex": 6,
                           "inHunkInput": 1
                         }
                       ]
                     },
                     {
-                      "name": "auto_131_4_512",
+                      "name": "auto_97_4_512",
                       "type": "byteArray",
                       "connections": [
                         {
-                          "inHunkIndex": 6,
+                          "inHunkIndex": 7,
                           "inHunkInput": 1
                         }
                       ]
                     },
                     {
-                      "name": "auto_198_5_512",
+                      "name": "auto_42_5_512",
                       "type": "byteArray",
                       "connections": [
                         {
-                          "inHunkIndex": 7,
+                          "inHunkIndex": 8,
                           "inHunkInput": 1
                         }
                       ]
                     },
                     {
-                      "name": "auto_226_5",
-                      "type": "boolean",
+                      "name": "auto_77_5",
+                      "type": "int32",
                       "connections": [
                         {
-                          "inHunkIndex": 4,
+                          "inHunkIndex": 8,
                           "inHunkInput": 2
                         }
                       ]
                     },
                     {
-                      "name": "auto_119_6",
+                      "name": "auto_100_6",
                       "type": "int32",
                       "connections": [
                         {
-                          "inHunkIndex": 6,
+                          "inHunkIndex": 7,
                           "inHunkInput": 2
                         }
                       ]
                     },
                     {
-                      "name": "auto_24_7",
-                      "type": "int32",
+                      "name": "auto_13_7",
+                      "type": "boolean",
                       "connections": [
                         {
-                          "inHunkIndex": 7,
+                          "inHunkIndex": 6,
                           "inHunkInput": 2
                         }
                       ]
@@ -729,12 +729,12 @@
                     {
                       "name": "inputList",
                       "type": "string",
-                      "value": "mgrMsgs (byteArray), auto_165_3 (byteArray), auto_4_4 (byteArray), auto_155_5 (byteArray), auto_29_6 (int32), auto_218_7 (int32), auto_169_8 (int32)"
+                      "value": "mgrMsgs (byteArray), auto_86_3 (byteArray), auto_115_4 (byteArray), auto_239_5 (byteArray), auto_152_5 (int32), auto_137_5 (int32), auto_223_5 (int32)"
                     },
                     {
                       "name": "outputList",
                       "type": "string",
-                      "value": "mgrMsgs (byteArray), auto_154_3 (byteArray), auto_131_4 (byteArray), auto_198_5 (byteArray), auto_226_5 (boolean), auto_119_6 (int32), auto_24_7 (int32)"
+                      "value": "mgrMsgs (byteArray), auto_30_3 (byteArray), auto_97_4 (byteArray), auto_42_5 (byteArray), auto_77_5 (int32), auto_100_6 (int32), auto_13_7 (boolean)"
                     }
                   ]
                 },
@@ -776,7 +776,53 @@
                       "type": "byteArray",
                       "connections": [
                         {
-                          "inHunkIndex": 4,
+                          "inHunkIndex": 6,
+                          "inHunkInput": 0
+                        }
+                      ]
+                    }
+                  ],
+                  "states": []
+                },
+                {
+                  "type": "comm/COBSerialRJ45_B",
+                  "name": "comm/COBSerialRJ45_B_4",
+                  "inputs": [
+                    {
+                      "name": "data_1024",
+                      "type": "byteArray"
+                    }
+                  ],
+                  "outputs": [
+                    {
+                      "name": "data_1024",
+                      "type": "byteArray",
+                      "connections": [
+                        {
+                          "inHunkIndex": 7,
+                          "inHunkInput": 0
+                        }
+                      ]
+                    }
+                  ],
+                  "states": []
+                },
+                {
+                  "type": "comm/COBSerialRJ45_E",
+                  "name": "comm/COBSerialRJ45_E_5",
+                  "inputs": [
+                    {
+                      "name": "data_1024",
+                      "type": "byteArray"
+                    }
+                  ],
+                  "outputs": [
+                    {
+                      "name": "data_1024",
+                      "type": "byteArray",
+                      "connections": [
+                        {
+                          "inHunkIndex": 8,
                           "inHunkInput": 0
                         }
                       ]
@@ -786,7 +832,7 @@
                 },
                 {
                   "type": "link",
-                  "name": "link_4",
+                  "name": "link_6",
                   "inputs": [
                     {
                       "name": "data_1024",
@@ -797,7 +843,7 @@
                       "type": "byteArray"
                     },
                     {
-                      "name": "auto_103_2",
+                      "name": "auto_202_3",
                       "type": "boolean"
                     }
                   ],
@@ -823,12 +869,12 @@
                       ]
                     },
                     {
-                      "name": "auto_59_2",
+                      "name": "auto_226_2",
                       "type": "int32",
                       "connections": [
                         {
                           "inHunkIndex": 1,
-                          "inHunkInput": 5
+                          "inHunkInput": 6
                         }
                       ]
                     }
@@ -847,12 +893,12 @@
                     {
                       "name": "inputList",
                       "type": "string",
-                      "value": "mgrMsgs (byteArray), auto_103_2 (boolean)"
+                      "value": "mgrMsgs (byteArray), auto_202_3 (boolean)"
                     },
                     {
                       "name": "outputList",
                       "type": "string",
-                      "value": "mgrMsgs (byteArray), auto_59_2 (int32)"
+                      "value": "mgrMsgs (byteArray), auto_226_2 (int32)"
                     }
                   ],
                   "contains": {
@@ -895,7 +941,7 @@
                             "type": "byteArray"
                           },
                           {
-                            "name": "auto_195_3",
+                            "name": "auto_101_2",
                             "type": "int32"
                           }
                         ],
@@ -921,7 +967,7 @@
                             ]
                           },
                           {
-                            "name": "auto_3_6",
+                            "name": "auto_151_9",
                             "type": "boolean",
                             "connections": [
                               {
@@ -940,17 +986,17 @@
                           {
                             "name": "otherLink",
                             "type": "uint16",
-                            "value": 4
+                            "value": 6
                           },
                           {
                             "name": "inputList",
                             "type": "string",
-                            "value": "mgrMsgs (byteArray), auto_195_3 (int32)"
+                            "value": "mgrMsgs (byteArray), auto_101_2 (int32)"
                           },
                           {
                             "name": "outputList",
                             "type": "string",
-                            "value": "mgrMsgs (byteArray), auto_3_6 (boolean)"
+                            "value": "mgrMsgs (byteArray), auto_151_9 (boolean)"
                           }
                         ]
                       },
@@ -1007,32 +1053,9 @@
                     ]
                   }
                 },
-                {
-                  "type": "comm/COBSerialRJ45_B",
-                  "name": "comm/COBSerialRJ45_B_5",
-                  "inputs": [
-                    {
-                      "name": "data_1024",
-                      "type": "byteArray"
-                    }
-                  ],
-                  "outputs": [
-                    {
-                      "name": "data_1024",
-                      "type": "byteArray",
-                      "connections": [
-                        {
-                          "inHunkIndex": 6,
-                          "inHunkInput": 0
-                        }
-                      ]
-                    }
-                  ],
-                  "states": []
-                },
                 {
                   "type": "link",
-                  "name": "link_6",
+                  "name": "link_7",
                   "inputs": [
                     {
                       "name": "data_1024",
@@ -1043,7 +1066,7 @@
                       "type": "byteArray"
                     },
                     {
-                      "name": "auto_142_2",
+                      "name": "auto_96_3",
                       "type": "int32"
                     }
                   ],
@@ -1053,7 +1076,7 @@
                       "type": "byteArray",
                       "connections": [
                         {
-                          "inHunkIndex": 5,
+                          "inHunkIndex": 4,
                           "inHunkInput": 0
                         }
                       ]
@@ -1069,12 +1092,12 @@
                       ]
                     },
                     {
-                      "name": "auto_207_2",
+                      "name": "auto_199_2",
                       "type": "int32",
                       "connections": [
                         {
                           "inHunkIndex": 1,
-                          "inHunkInput": 6
+                          "inHunkInput": 7
                         }
                       ]
                     }
@@ -1093,12 +1116,12 @@
                     {
                       "name": "inputList",
                       "type": "string",
-                      "value": "mgrMsgs (byteArray), auto_142_2 (int32)"
+                      "value": "mgrMsgs (byteArray), auto_96_3 (int32)"
                     },
                     {
                       "name": "outputList",
                       "type": "string",
-                      "value": "mgrMsgs (byteArray), auto_207_2 (int32)"
+                      "value": "mgrMsgs (byteArray), auto_199_2 (int32)"
                     }
                   ],
                   "contains": {
@@ -1141,7 +1164,7 @@
                             "type": "byteArray"
                           },
                           {
-                            "name": "auto_163_3",
+                            "name": "auto_167_2",
                             "type": "int32"
                           }
                         ],
@@ -1167,7 +1190,7 @@
                             ]
                           },
                           {
-                            "name": "auto_8_7",
+                            "name": "auto_17_9",
                             "type": "int32",
                             "connections": [
                               {
@@ -1186,17 +1209,17 @@
                           {
                             "name": "otherLink",
                             "type": "uint16",
-                            "value": 6
+                            "value": 7
                           },
                           {
                             "name": "inputList",
                             "type": "string",
-                            "value": "mgrMsgs (byteArray), auto_163_3 (int32)"
+                            "value": "mgrMsgs (byteArray), auto_167_2 (int32)"
                           },
                           {
                             "name": "outputList",
                             "type": "string",
-                            "value": "mgrMsgs (byteArray), auto_8_7 (int32)"
+                            "value": "mgrMsgs (byteArray), auto_17_9 (int32)"
                           }
                         ]
                       },
@@ -1230,6 +1253,10 @@
                           {
                             "name": "increment",
                             "type": "int32"
+                          },
+                          {
+                            "name": "enable",
+                            "type": "boolean"
                           }
                         ],
                         "outputs": [
@@ -1253,6 +1280,11 @@
                             "name": "current (6-24)",
                             "type": "uint16",
                             "value": 16
+                          },
+                          {
+                            "name": "enable",
+                            "type": "boolean",
+                            "value": true
                           }
                         ]
                       }
@@ -1272,7 +1304,7 @@
                       "type": "byteArray"
                     },
                     {
-                      "name": "auto_226_2",
+                      "name": "auto_213_3",
                       "type": "int32"
                     }
                   ],
@@ -1282,7 +1314,7 @@
                       "type": "byteArray",
                       "connections": [
                         {
-                          "inHunkIndex": 8,
+                          "inHunkIndex": 5,
                           "inHunkInput": 0
                         }
                       ]
@@ -1298,12 +1330,12 @@
                       ]
                     },
                     {
-                      "name": "auto_230_2",
+                      "name": "auto_147_2",
                       "type": "int32",
                       "connections": [
                         {
                           "inHunkIndex": 1,
-                          "inHunkInput": 7
+                          "inHunkInput": 5
                         }
                       ]
                     }
@@ -1322,12 +1354,12 @@
                     {
                       "name": "inputList",
                       "type": "string",
-                      "value": "mgrMsgs (byteArray), auto_226_2 (int32)"
+                      "value": "mgrMsgs (byteArray), auto_213_3 (int32)"
                     },
                     {
                       "name": "outputList",
                       "type": "string",
-                      "value": "mgrMsgs (byteArray), auto_230_2 (int32)"
+                      "value": "mgrMsgs (byteArray), auto_147_2 (int32)"
                     }
                   ],
                   "contains": {
@@ -1370,7 +1402,7 @@
                             "type": "byteArray"
                           },
                           {
-                            "name": "auto_33_3",
+                            "name": "auto_210_2",
                             "type": "int32"
                           }
                         ],
@@ -1396,7 +1428,7 @@
                             ]
                           },
                           {
-                            "name": "auto_202_8",
+                            "name": "auto_218_9",
                             "type": "int32",
                             "connections": [
                               {
@@ -1415,17 +1447,17 @@
                           {
                             "name": "otherLink",
                             "type": "uint16",
-                            "value": 7
+                            "value": 8
                           },
                           {
                             "name": "inputList",
                             "type": "string",
-                            "value": "mgrMsgs (byteArray), auto_33_3 (int32)"
+                            "value": "mgrMsgs (byteArray), auto_210_2 (int32)"
                           },
                           {
                             "name": "outputList",
                             "type": "string",
-                            "value": "mgrMsgs (byteArray), auto_202_8 (int32)"
+                            "value": "mgrMsgs (byteArray), auto_218_9 (int32)"
                           }
                         ]
                       },
@@ -1459,6 +1491,10 @@
                           {
                             "name": "increment",
                             "type": "int32"
+                          },
+                          {
+                            "name": "enable",
+                            "type": "boolean"
                           }
                         ],
                         "outputs": [
@@ -1482,34 +1518,16 @@
                             "name": "current (6-24)",
                             "type": "uint16",
                             "value": 16
+                          },
+                          {
+                            "name": "enable",
+                            "type": "boolean",
+                            "value": true
                           }
                         ]
                       }
                     ]
                   }
-                },
-                {
-                  "type": "comm/COBSerialRJ45_E",
-                  "name": "comm/COBSerialRJ45_E_8",
-                  "inputs": [
-                    {
-                      "name": "data_1024",
-                      "type": "byteArray"
-                    }
-                  ],
-                  "outputs": [
-                    {
-                      "name": "data_1024",
-                      "type": "byteArray",
-                      "connections": [
-                        {
-                          "inHunkIndex": 7,
-                          "inHunkInput": 0
-                        }
-                      ]
-                    }
-                  ],
-                  "states": []
                 }
               ]
             }
@@ -1586,7 +1604,7 @@
         {
           "name": "retrycount",
           "type": "number",
-          "value": 3
+          "value": 1
         },
         {
           "name": "retryreset",
@@ -1720,9 +1738,75 @@
       ],
       "states": []
     },
+    {
+      "type": "data/accumulator",
+      "name": "data/accumulator_9",
+      "inputs": [
+        {
+          "name": "x",
+          "type": "number"
+        },
+        {
+          "name": "y",
+          "type": "number"
+        }
+      ],
+      "outputs": [
+        {
+          "name": "accumulated",
+          "type": "reference",
+          "connections": [
+            {
+              "inHunkIndex": 13,
+              "inHunkInput": 0
+            },
+            {
+              "inHunkIndex": 12,
+              "inHunkInput": 0
+            }
+          ]
+        }
+      ],
+      "states": [
+        {
+          "name": "reset",
+          "type": "boolean",
+          "value": false
+        }
+      ]
+    },
+    {
+      "type": "primitive/increment",
+      "name": "primitive/increment_10",
+      "inputs": [
+        {
+          "name": "increment",
+          "type": "number"
+        }
+      ],
+      "outputs": [
+        {
+          "name": "value",
+          "type": "number",
+          "connections": [
+            {
+              "inHunkIndex": 9,
+              "inHunkInput": 0
+            }
+          ]
+        }
+      ],
+      "states": [
+        {
+          "name": "reset",
+          "type": "boolean",
+          "value": false
+        }
+      ]
+    },
     {
       "type": "control/ussm",
-      "name": "control/ussm_9",
+      "name": "control/ussm_11",
       "inputs": [
         {
           "name": "lmReturn",
@@ -1744,7 +1828,7 @@
           "connections": [
             {
               "inHunkIndex": 2,
-              "inHunkInput": 7
+              "inHunkInput": 6
             }
           ]
         },
@@ -1754,7 +1838,7 @@
           "connections": [
             {
               "inHunkIndex": 2,
-              "inHunkInput": 8
+              "inHunkInput": 7
             }
           ]
         },
@@ -1764,14 +1848,14 @@
           "connections": [
             {
               "inHunkIndex": 2,
-              "inHunkInput": 6
+              "inHunkInput": 8
             }
           ]
         }
       ],
       "states": [
         {
-          "name": "gTrig",
+          "name": "runSequence",
           "type": "boolean",
           "value": true
         },
@@ -1783,55 +1867,49 @@
       ]
     },
     {
-      "type": "output/linechart",
-      "name": "output/linechart_10",
+      "type": "data/save",
+      "name": "data/save_12",
       "inputs": [
         {
-          "name": "xVar",
-          "type": "number"
+          "name": "object",
+          "type": "reference"
         },
         {
-          "name": "yVar",
-          "type": "number"
+          "name": "trigger",
+          "type": "boolean"
         }
       ],
       "outputs": [],
       "states": [
         {
-          "name": "keepers",
-          "type": "number",
-          "value": 200
+          "name": "name",
+          "type": "string",
+          "value": "datas"
+        },
+        {
+          "name": "save",
+          "type": "boolean",
+          "value": false
         }
       ]
     },
     {
-      "type": "primitive/increment",
-      "name": "primitive/increment_11",
+      "type": "output/linechart",
+      "name": "output/linechart_13",
       "inputs": [
         {
-          "name": "increment",
-          "type": "number"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "value",
-          "type": "number",
-          "connections": [
-            {
-              "inHunkIndex": 10,
-              "inHunkInput": 0
-            }
-          ]
+          "name": "array",
+          "type": "reference"
         }
       ],
+      "outputs": [],
       "states": [
         {
-          "name": "reset",
-          "type": "boolean",
-          "value": false
+          "name": "displayCount",
+          "type": "number",
+          "value": 50
         }
       ]
     }
   ]
-}
+}
\ No newline at end of file
diff --git a/save/systems/ussm-rdev-abe-rf.json b/save/systems/ussm-rdev-abe-rf.json
deleted file mode 100644
index df3bde9..0000000
--- a/save/systems/ussm-rdev-abe-rf.json
+++ /dev/null
@@ -1,1371 +0,0 @@
-{
-  "interpreterName": "cuttlefish",
-  "interpreterVersion": "v0.1",
-  "hunks": [
-    {
-      "type": "manager",
-      "name": "nrol",
-      "inputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": 1,
-              "inHunkInput": 0
-            }
-          ]
-        }
-      ],
-      "states": []
-    },
-    {
-      "type": "view",
-      "name": "tlview",
-      "inputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": 0,
-              "inHunkInput": 0
-            }
-          ]
-        }
-      ],
-      "states": []
-    },
-    {
-      "type": "link",
-      "name": "link_2",
-      "inputs": [
-        {
-          "name": "data",
-          "type": "byteArray"
-        },
-        {
-          "name": "mgrMsgs",
-          "type": "byteArray"
-        },
-        {
-          "name": "auto_0_3",
-          "type": "byteArray"
-        },
-        {
-          "name": "auto_199_3",
-          "type": "byteArray"
-        },
-        {
-          "name": "auto_145_4",
-          "type": "byteArray"
-        },
-        {
-          "name": "auto_190_5",
-          "type": "byteArray"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "data",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": 3,
-              "inHunkInput": 0
-            }
-          ]
-        },
-        {
-          "name": "mgrMsgs",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": 4,
-              "inHunkInput": 0
-            }
-          ]
-        },
-        {
-          "name": "auto_0_2",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": 5,
-              "inHunkInput": 0
-            }
-          ]
-        },
-        {
-          "name": "auto_12_3",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": 6,
-              "inHunkInput": 0
-            }
-          ]
-        },
-        {
-          "name": "auto_110_4",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": 7,
-              "inHunkInput": 0
-            }
-          ]
-        },
-        {
-          "name": "auto_109_5",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": 8,
-              "inHunkInput": 0
-            }
-          ]
-        }
-      ],
-      "states": [
-        {
-          "name": "isActive",
-          "type": "boolean",
-          "value": true
-        },
-        {
-          "name": "otherLink",
-          "type": "uint16",
-          "value": 1
-        },
-        {
-          "name": "inputList",
-          "type": "string",
-          "value": "mgrMsgs (byteArray), auto_0_3 (byteArray), auto_199_3 (byteArray), auto_145_4 (byteArray), auto_190_5 (byteArray)"
-        },
-        {
-          "name": "outputList",
-          "type": "string",
-          "value": "mgrMsgs (byteArray), auto_0_2 (byteArray), auto_12_3 (byteArray), auto_110_4 (byteArray), auto_109_5 (byteArray)"
-        }
-      ],
-      "contains": {
-        "interpreterName": "nautilus",
-        "interpreterVersion": "v0.1",
-        "hunks": [
-          {
-            "type": "manager",
-            "name": "nautilus",
-            "inputs": [
-              {
-                "name": "msgs",
-                "type": "byteArray"
-              }
-            ],
-            "outputs": [
-              {
-                "name": "msgs",
-                "type": "byteArray",
-                "connections": [
-                  {
-                    "inHunkIndex": 1,
-                    "inHunkInput": 1
-                  }
-                ]
-              }
-            ],
-            "states": []
-          },
-          {
-            "type": "link",
-            "name": "link_1",
-            "inputs": [
-              {
-                "name": "data",
-                "type": "byteArray"
-              },
-              {
-                "name": "mgrMsgs",
-                "type": "byteArray"
-              },
-              {
-                "name": "auto_0_3",
-                "type": "byteArray"
-              },
-              {
-                "name": "auto_107_4",
-                "type": "byteArray"
-              },
-              {
-                "name": "auto_131_5",
-                "type": "byteArray"
-              },
-              {
-                "name": "auto_247_6",
-                "type": "byteArray"
-              }
-            ],
-            "outputs": [
-              {
-                "name": "data",
-                "type": "byteArray",
-                "connections": [
-                  {
-                    "inHunkIndex": 2,
-                    "inHunkInput": 0
-                  }
-                ]
-              },
-              {
-                "name": "mgrMsgs",
-                "type": "byteArray",
-                "connections": [
-                  {
-                    "inHunkIndex": 0,
-                    "inHunkInput": 0
-                  }
-                ]
-              },
-              {
-                "name": "auto_0_2",
-                "type": "byteArray",
-                "connections": [
-                  {
-                    "inHunkIndex": 3,
-                    "inHunkInput": 1
-                  }
-                ]
-              },
-              {
-                "name": "auto_164_3",
-                "type": "byteArray",
-                "connections": [
-                  {
-                    "inHunkIndex": 3,
-                    "inHunkInput": 2
-                  }
-                ]
-              },
-              {
-                "name": "auto_163_4",
-                "type": "byteArray",
-                "connections": [
-                  {
-                    "inHunkIndex": 3,
-                    "inHunkInput": 3
-                  }
-                ]
-              },
-              {
-                "name": "auto_254_5",
-                "type": "byteArray",
-                "connections": [
-                  {
-                    "inHunkIndex": 3,
-                    "inHunkInput": 4
-                  }
-                ]
-              }
-            ],
-            "states": [
-              {
-                "name": "isActive",
-                "type": "boolean",
-                "value": true
-              },
-              {
-                "name": "otherLink",
-                "type": "uint16",
-                "value": 2
-              },
-              {
-                "name": "inputList",
-                "type": "string",
-                "value": "mgrMsgs (byteArray), auto_0_3 (byteArray), auto_107_4 (byteArray), auto_131_5 (byteArray), auto_247_6 (byteArray)"
-              },
-              {
-                "name": "outputList",
-                "type": "string",
-                "value": "mgrMsgs (byteArray), auto_0_2 (byteArray), auto_164_3 (byteArray), auto_163_4 (byteArray), auto_254_5 (byteArray)"
-              }
-            ]
-          },
-          {
-            "type": "comm/websocketserver",
-            "name": "comm/websocketserver_2",
-            "inputs": [
-              {
-                "name": "data",
-                "type": "byteArray"
-              }
-            ],
-            "outputs": [
-              {
-                "name": "data",
-                "type": "byteArray",
-                "connections": [
-                  {
-                    "inHunkIndex": 1,
-                    "inHunkInput": 0
-                  }
-                ]
-              }
-            ],
-            "states": [
-              {
-                "name": "status",
-                "type": "string",
-                "value": "connected"
-              },
-              {
-                "name": "port",
-                "type": "number",
-                "value": 2042
-              }
-            ]
-          },
-          {
-            "type": "link",
-            "name": "link_3",
-            "inputs": [
-              {
-                "name": "data",
-                "type": "byteArray"
-              },
-              {
-                "name": "mgrMsgs",
-                "type": "byteArray"
-              },
-              {
-                "name": "auto_47_2",
-                "type": "byteArray"
-              },
-              {
-                "name": "auto_49_3",
-                "type": "byteArray"
-              },
-              {
-                "name": "auto_220_4",
-                "type": "byteArray"
-              }
-            ],
-            "outputs": [
-              {
-                "name": "data",
-                "type": "byteArray",
-                "connections": [
-                  {
-                    "inHunkIndex": 4,
-                    "inHunkInput": 0
-                  }
-                ]
-              },
-              {
-                "name": "mgrMsgs",
-                "type": "byteArray",
-                "connections": [
-                  {
-                    "inHunkIndex": 1,
-                    "inHunkInput": 2
-                  }
-                ]
-              },
-              {
-                "name": "auto_146_2",
-                "type": "byteArray",
-                "connections": [
-                  {
-                    "inHunkIndex": 1,
-                    "inHunkInput": 3
-                  }
-                ]
-              },
-              {
-                "name": "auto_49_3",
-                "type": "byteArray",
-                "connections": [
-                  {
-                    "inHunkIndex": 1,
-                    "inHunkInput": 4
-                  }
-                ]
-              },
-              {
-                "name": "auto_214_4",
-                "type": "byteArray",
-                "connections": [
-                  {
-                    "inHunkIndex": 1,
-                    "inHunkInput": 5
-                  }
-                ]
-              }
-            ],
-            "states": [
-              {
-                "name": "isActive",
-                "type": "boolean",
-                "value": true
-              },
-              {
-                "name": "otherLink",
-                "type": "uint16",
-                "value": 1
-              },
-              {
-                "name": "inputList",
-                "type": "string",
-                "value": "mgrMsgs (byteArray), auto_47_2 (byteArray), auto_49_3 (byteArray), auto_220_4 (byteArray)"
-              },
-              {
-                "name": "outputList",
-                "type": "string",
-                "value": "mgrMsgs (byteArray), auto_146_2 (byteArray), auto_49_3 (byteArray), auto_214_4 (byteArray)"
-              }
-            ],
-            "contains": {
-              "interpreterName": "ponyo",
-              "interpreterVersion": "v0.1",
-              "hunks": [
-                {
-                  "type": "manager",
-                  "name": "ponyo_one",
-                  "inputs": [
-                    {
-                      "name": "mgrMsgs_1024",
-                      "type": "byteArray"
-                    }
-                  ],
-                  "outputs": [
-                    {
-                      "name": "mgrMsgs_1024",
-                      "type": "byteArray",
-                      "connections": [
-                        {
-                          "inHunkIndex": 1,
-                          "inHunkInput": 1
-                        }
-                      ]
-                    }
-                  ],
-                  "states": []
-                },
-                {
-                  "type": "link",
-                  "name": "link_1",
-                  "inputs": [
-                    {
-                      "name": "data_1024",
-                      "type": "byteArray"
-                    },
-                    {
-                      "name": "mgrMsgs_1024",
-                      "type": "byteArray"
-                    },
-                    {
-                      "name": "auto_165_3_512",
-                      "type": "byteArray"
-                    },
-                    {
-                      "name": "auto_4_4_512",
-                      "type": "byteArray"
-                    },
-                    {
-                      "name": "auto_155_5_512",
-                      "type": "byteArray"
-                    }
-                  ],
-                  "outputs": [
-                    {
-                      "name": "data_1024",
-                      "type": "byteArray",
-                      "connections": [
-                        {
-                          "inHunkIndex": 2,
-                          "inHunkInput": 0
-                        }
-                      ]
-                    },
-                    {
-                      "name": "mgrMsgs_1024",
-                      "type": "byteArray",
-                      "connections": [
-                        {
-                          "inHunkIndex": 0,
-                          "inHunkInput": 0
-                        }
-                      ]
-                    },
-                    {
-                      "name": "auto_154_3_512",
-                      "type": "byteArray",
-                      "connections": [
-                        {
-                          "inHunkIndex": 4,
-                          "inHunkInput": 1
-                        }
-                      ]
-                    },
-                    {
-                      "name": "auto_131_4_512",
-                      "type": "byteArray",
-                      "connections": [
-                        {
-                          "inHunkIndex": 6,
-                          "inHunkInput": 1
-                        }
-                      ]
-                    },
-                    {
-                      "name": "auto_198_5_512",
-                      "type": "byteArray",
-                      "connections": [
-                        {
-                          "inHunkIndex": 7,
-                          "inHunkInput": 1
-                        }
-                      ]
-                    }
-                  ],
-                  "states": [
-                    {
-                      "name": "isActive",
-                      "type": "boolean",
-                      "value": true
-                    },
-                    {
-                      "name": "otherLink",
-                      "type": "uint16",
-                      "value": 3
-                    },
-                    {
-                      "name": "inputList",
-                      "type": "string",
-                      "value": "mgrMsgs (byteArray), auto_165_3 (byteArray), auto_4_4 (byteArray), auto_155_5 (byteArray)"
-                    },
-                    {
-                      "name": "outputList",
-                      "type": "string",
-                      "value": "mgrMsgs (byteArray), auto_154_3 (byteArray), auto_131_4 (byteArray), auto_198_5 (byteArray)"
-                    }
-                  ]
-                },
-                {
-                  "type": "comm/COBSerialUSB",
-                  "name": "comm/COBSerialUSB_2",
-                  "inputs": [
-                    {
-                      "name": "data_1024",
-                      "type": "byteArray"
-                    }
-                  ],
-                  "outputs": [
-                    {
-                      "name": "data_1024",
-                      "type": "byteArray",
-                      "connections": [
-                        {
-                          "inHunkIndex": 1,
-                          "inHunkInput": 0
-                        }
-                      ]
-                    }
-                  ],
-                  "states": []
-                },
-                {
-                  "type": "comm/COBSerialRJ45_A",
-                  "name": "comm/COBSerialRJ45_A_3",
-                  "inputs": [
-                    {
-                      "name": "data_1024",
-                      "type": "byteArray"
-                    }
-                  ],
-                  "outputs": [
-                    {
-                      "name": "data_1024",
-                      "type": "byteArray",
-                      "connections": [
-                        {
-                          "inHunkIndex": 4,
-                          "inHunkInput": 0
-                        }
-                      ]
-                    }
-                  ],
-                  "states": []
-                },
-                {
-                  "type": "link",
-                  "name": "link_4",
-                  "inputs": [
-                    {
-                      "name": "data_1024",
-                      "type": "byteArray"
-                    },
-                    {
-                      "name": "mgrMsgs_512",
-                      "type": "byteArray"
-                    }
-                  ],
-                  "outputs": [
-                    {
-                      "name": "data_1024",
-                      "type": "byteArray",
-                      "connections": [
-                        {
-                          "inHunkIndex": 3,
-                          "inHunkInput": 0
-                        }
-                      ]
-                    },
-                    {
-                      "name": "mgrMsgs_512",
-                      "type": "byteArray",
-                      "connections": [
-                        {
-                          "inHunkIndex": 1,
-                          "inHunkInput": 2
-                        }
-                      ]
-                    }
-                  ],
-                  "states": [
-                    {
-                      "name": "isActive",
-                      "type": "boolean",
-                      "value": true
-                    },
-                    {
-                      "name": "otherLink",
-                      "type": "uint16",
-                      "value": 1
-                    },
-                    {
-                      "name": "inputList",
-                      "type": "string",
-                      "value": "mgrMsgs (byteArray)"
-                    },
-                    {
-                      "name": "outputList",
-                      "type": "string",
-                      "value": "mgrMsgs (byteArray)"
-                    }
-                  ],
-                  "contains": {
-                    "interpreterName": "ponyo",
-                    "interpreterVersion": "v0.1",
-                    "hunks": [
-                      {
-                        "type": "manager",
-                        "name": "ponyo_one",
-                        "inputs": [
-                          {
-                            "name": "mgrMsgs_1024",
-                            "type": "byteArray"
-                          }
-                        ],
-                        "outputs": [
-                          {
-                            "name": "mgrMsgs_1024",
-                            "type": "byteArray",
-                            "connections": [
-                              {
-                                "inHunkIndex": 1,
-                                "inHunkInput": 1
-                              }
-                            ]
-                          }
-                        ],
-                        "states": []
-                      },
-                      {
-                        "type": "link",
-                        "name": "link_1",
-                        "inputs": [
-                          {
-                            "name": "data_1024",
-                            "type": "byteArray"
-                          },
-                          {
-                            "name": "mgrMsgs_1024",
-                            "type": "byteArray"
-                          }
-                        ],
-                        "outputs": [
-                          {
-                            "name": "data_1024",
-                            "type": "byteArray",
-                            "connections": [
-                              {
-                                "inHunkIndex": 2,
-                                "inHunkInput": 0
-                              }
-                            ]
-                          },
-                          {
-                            "name": "mgrMsgs_1024",
-                            "type": "byteArray",
-                            "connections": [
-                              {
-                                "inHunkIndex": 0,
-                                "inHunkInput": 0
-                              }
-                            ]
-                          }
-                        ],
-                        "states": [
-                          {
-                            "name": "isActive",
-                            "type": "boolean",
-                            "value": true
-                          },
-                          {
-                            "name": "otherLink",
-                            "type": "uint16",
-                            "value": 4
-                          },
-                          {
-                            "name": "inputList",
-                            "type": "string",
-                            "value": "mgrMsgs (byteArray)"
-                          },
-                          {
-                            "name": "outputList",
-                            "type": "string",
-                            "value": "mgrMsgs (byteArray)"
-                          }
-                        ]
-                      },
-                      {
-                        "type": "comm/COBSerialRJ45_A",
-                        "name": "comm/COBSerialRJ45_A_2",
-                        "inputs": [
-                          {
-                            "name": "data_1024",
-                            "type": "byteArray"
-                          }
-                        ],
-                        "outputs": [
-                          {
-                            "name": "data_1024",
-                            "type": "byteArray",
-                            "connections": [
-                              {
-                                "inHunkIndex": 1,
-                                "inHunkInput": 0
-                              }
-                            ]
-                          }
-                        ],
-                        "states": []
-                      }
-                    ]
-                  }
-                },
-                {
-                  "type": "comm/COBSerialRJ45_B",
-                  "name": "comm/COBSerialRJ45_B_5",
-                  "inputs": [
-                    {
-                      "name": "data_1024",
-                      "type": "byteArray"
-                    }
-                  ],
-                  "outputs": [
-                    {
-                      "name": "data_1024",
-                      "type": "byteArray",
-                      "connections": [
-                        {
-                          "inHunkIndex": 6,
-                          "inHunkInput": 0
-                        }
-                      ]
-                    }
-                  ],
-                  "states": []
-                },
-                {
-                  "type": "link",
-                  "name": "link_6",
-                  "inputs": [
-                    {
-                      "name": "data_1024",
-                      "type": "byteArray"
-                    },
-                    {
-                      "name": "mgrMsgs_512",
-                      "type": "byteArray"
-                    }
-                  ],
-                  "outputs": [
-                    {
-                      "name": "data_1024",
-                      "type": "byteArray",
-                      "connections": [
-                        {
-                          "inHunkIndex": 5,
-                          "inHunkInput": 0
-                        }
-                      ]
-                    },
-                    {
-                      "name": "mgrMsgs_512",
-                      "type": "byteArray",
-                      "connections": [
-                        {
-                          "inHunkIndex": 1,
-                          "inHunkInput": 3
-                        }
-                      ]
-                    }
-                  ],
-                  "states": [
-                    {
-                      "name": "isActive",
-                      "type": "boolean",
-                      "value": true
-                    },
-                    {
-                      "name": "otherLink",
-                      "type": "uint16",
-                      "value": 1
-                    },
-                    {
-                      "name": "inputList",
-                      "type": "string",
-                      "value": "mgrMsgs (byteArray)"
-                    },
-                    {
-                      "name": "outputList",
-                      "type": "string",
-                      "value": "mgrMsgs (byteArray)"
-                    }
-                  ],
-                  "contains": {
-                    "interpreterName": "ponyo",
-                    "interpreterVersion": "v0.1",
-                    "hunks": [
-                      {
-                        "type": "manager",
-                        "name": "ponyo_one",
-                        "inputs": [
-                          {
-                            "name": "mgrMsgs_1024",
-                            "type": "byteArray"
-                          }
-                        ],
-                        "outputs": [
-                          {
-                            "name": "mgrMsgs_1024",
-                            "type": "byteArray",
-                            "connections": [
-                              {
-                                "inHunkIndex": 1,
-                                "inHunkInput": 1
-                              }
-                            ]
-                          }
-                        ],
-                        "states": []
-                      },
-                      {
-                        "type": "link",
-                        "name": "link_1",
-                        "inputs": [
-                          {
-                            "name": "data_1024",
-                            "type": "byteArray"
-                          },
-                          {
-                            "name": "mgrMsgs_1024",
-                            "type": "byteArray"
-                          }
-                        ],
-                        "outputs": [
-                          {
-                            "name": "data_1024",
-                            "type": "byteArray",
-                            "connections": [
-                              {
-                                "inHunkIndex": 2,
-                                "inHunkInput": 0
-                              }
-                            ]
-                          },
-                          {
-                            "name": "mgrMsgs_1024",
-                            "type": "byteArray",
-                            "connections": [
-                              {
-                                "inHunkIndex": 0,
-                                "inHunkInput": 0
-                              }
-                            ]
-                          }
-                        ],
-                        "states": [
-                          {
-                            "name": "isActive",
-                            "type": "boolean",
-                            "value": true
-                          },
-                          {
-                            "name": "otherLink",
-                            "type": "uint16",
-                            "value": 6
-                          },
-                          {
-                            "name": "inputList",
-                            "type": "string",
-                            "value": "mgrMsgs (byteArray)"
-                          },
-                          {
-                            "name": "outputList",
-                            "type": "string",
-                            "value": "mgrMsgs (byteArray)"
-                          }
-                        ]
-                      },
-                      {
-                        "type": "comm/COBSerialRJ45_A",
-                        "name": "comm/COBSerialRJ45_A_2",
-                        "inputs": [
-                          {
-                            "name": "data_1024",
-                            "type": "byteArray"
-                          }
-                        ],
-                        "outputs": [
-                          {
-                            "name": "data_1024",
-                            "type": "byteArray",
-                            "connections": [
-                              {
-                                "inHunkIndex": 1,
-                                "inHunkInput": 0
-                              }
-                            ]
-                          }
-                        ],
-                        "states": []
-                      }
-                    ]
-                  }
-                },
-                {
-                  "type": "link",
-                  "name": "link_8",
-                  "inputs": [
-                    {
-                      "name": "data_1024",
-                      "type": "byteArray"
-                    },
-                    {
-                      "name": "mgrMsgs_512",
-                      "type": "byteArray"
-                    }
-                  ],
-                  "outputs": [
-                    {
-                      "name": "data_1024",
-                      "type": "byteArray",
-                      "connections": [
-                        {
-                          "inHunkIndex": 8,
-                          "inHunkInput": 0
-                        }
-                      ]
-                    },
-                    {
-                      "name": "mgrMsgs_512",
-                      "type": "byteArray",
-                      "connections": [
-                        {
-                          "inHunkIndex": 1,
-                          "inHunkInput": 4
-                        }
-                      ]
-                    }
-                  ],
-                  "states": [
-                    {
-                      "name": "isActive",
-                      "type": "boolean",
-                      "value": true
-                    },
-                    {
-                      "name": "otherLink",
-                      "type": "uint16",
-                      "value": 1
-                    },
-                    {
-                      "name": "inputList",
-                      "type": "string",
-                      "value": "mgrMsgs (byteArray)"
-                    },
-                    {
-                      "name": "outputList",
-                      "type": "string",
-                      "value": "mgrMsgs (byteArray)"
-                    }
-                  ],
-                  "contains": {
-                    "interpreterName": "ponyo",
-                    "interpreterVersion": "v0.1",
-                    "hunks": [
-                      {
-                        "type": "manager",
-                        "name": "ponyo_one",
-                        "inputs": [
-                          {
-                            "name": "mgrMsgs_1024",
-                            "type": "byteArray"
-                          }
-                        ],
-                        "outputs": [
-                          {
-                            "name": "mgrMsgs_1024",
-                            "type": "byteArray",
-                            "connections": [
-                              {
-                                "inHunkIndex": 1,
-                                "inHunkInput": 1
-                              }
-                            ]
-                          }
-                        ],
-                        "states": []
-                      },
-                      {
-                        "type": "link",
-                        "name": "link_1",
-                        "inputs": [
-                          {
-                            "name": "data_1024",
-                            "type": "byteArray"
-                          },
-                          {
-                            "name": "mgrMsgs_1024",
-                            "type": "byteArray"
-                          }
-                        ],
-                        "outputs": [
-                          {
-                            "name": "data_1024",
-                            "type": "byteArray",
-                            "connections": [
-                              {
-                                "inHunkIndex": 2,
-                                "inHunkInput": 0
-                              }
-                            ]
-                          },
-                          {
-                            "name": "mgrMsgs_1024",
-                            "type": "byteArray",
-                            "connections": [
-                              {
-                                "inHunkIndex": 0,
-                                "inHunkInput": 0
-                              }
-                            ]
-                          }
-                        ],
-                        "states": [
-                          {
-                            "name": "isActive",
-                            "type": "boolean",
-                            "value": true
-                          },
-                          {
-                            "name": "otherLink",
-                            "type": "uint16",
-                            "value": 7
-                          },
-                          {
-                            "name": "inputList",
-                            "type": "string",
-                            "value": "mgrMsgs (byteArray)"
-                          },
-                          {
-                            "name": "outputList",
-                            "type": "string",
-                            "value": "mgrMsgs (byteArray)"
-                          }
-                        ]
-                      },
-                      {
-                        "type": "comm/COBSerialRJ45_A",
-                        "name": "comm/COBSerialRJ45_A_2",
-                        "inputs": [
-                          {
-                            "name": "data_1024",
-                            "type": "byteArray"
-                          }
-                        ],
-                        "outputs": [
-                          {
-                            "name": "data_1024",
-                            "type": "byteArray",
-                            "connections": [
-                              {
-                                "inHunkIndex": 1,
-                                "inHunkInput": 0
-                              }
-                            ]
-                          }
-                        ],
-                        "states": []
-                      }
-                    ]
-                  }
-                },
-                {
-                  "type": "comm/COBSerialRJ45_E",
-                  "name": "comm/COBSerialRJ45_E_8",
-                  "inputs": [
-                    {
-                      "name": "data_1024",
-                      "type": "byteArray"
-                    }
-                  ],
-                  "outputs": [
-                    {
-                      "name": "data_1024",
-                      "type": "byteArray",
-                      "connections": [
-                        {
-                          "inHunkIndex": 7,
-                          "inHunkInput": 0
-                        }
-                      ]
-                    }
-                  ],
-                  "states": []
-                }
-              ]
-            }
-          },
-          {
-            "type": "comm/cobserial",
-            "name": "comm/cobserial_4",
-            "inputs": [
-              {
-                "name": "data",
-                "type": "byteArray"
-              }
-            ],
-            "outputs": [
-              {
-                "name": "data",
-                "type": "byteArray",
-                "connections": [
-                  {
-                    "inHunkIndex": 3,
-                    "inHunkInput": 0
-                  }
-                ]
-              }
-            ],
-            "states": [
-              {
-                "name": "status",
-                "type": "string",
-                "value": "closed"
-              },
-              {
-                "name": "pid",
-                "type": "string",
-                "value": "8022"
-              },
-              {
-                "name": "refresh",
-                "type": "boolean",
-                "value": false
-              }
-            ]
-          }
-        ]
-      }
-    },
-    {
-      "type": "comm/websocketclient",
-      "name": "comm/websocketclient_3",
-      "inputs": [
-        {
-          "name": "data",
-          "type": "byteArray"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "data",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": 2,
-              "inHunkInput": 0
-            }
-          ]
-        }
-      ],
-      "states": [
-        {
-          "name": "status",
-          "type": "string",
-          "value": "open"
-        },
-        {
-          "name": "retrycount",
-          "type": "number",
-          "value": 3
-        },
-        {
-          "name": "retryreset",
-          "type": "boolean",
-          "value": false
-        },
-        {
-          "name": "address",
-          "type": "string",
-          "value": "127.0.0.1"
-        },
-        {
-          "name": "port",
-          "type": "number",
-          "value": 2042
-        }
-      ]
-    },
-    {
-      "type": "view",
-      "name": "view_4",
-      "inputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": 2,
-              "inHunkInput": 1
-            }
-          ]
-        }
-      ],
-      "states": []
-    },
-    {
-      "type": "view",
-      "name": "view_5",
-      "inputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": 2,
-              "inHunkInput": 2
-            }
-          ]
-        }
-      ],
-      "states": []
-    },
-    {
-      "type": "view",
-      "name": "view_6",
-      "inputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": 2,
-              "inHunkInput": 3
-            }
-          ]
-        }
-      ],
-      "states": []
-    },
-    {
-      "type": "view",
-      "name": "view_7",
-      "inputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": 2,
-              "inHunkInput": 4
-            }
-          ]
-        }
-      ],
-      "states": []
-    },
-    {
-      "type": "view",
-      "name": "view_8",
-      "inputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": 2,
-              "inHunkInput": 5
-            }
-          ]
-        }
-      ],
-      "states": []
-    }
-  ]
-}
\ No newline at end of file
diff --git a/save/systems/ussm-rdev-abehookup.json b/save/systems/ussm-rdev-abehookup.json
deleted file mode 100644
index d0502c5..0000000
--- a/save/systems/ussm-rdev-abehookup.json
+++ /dev/null
@@ -1,1773 +0,0 @@
-{
-  "interpreterName": "cuttlefish",
-  "interpreterVersion": "v0.1",
-  "hunks": [
-    {
-      "type": "manager",
-      "name": "nrol",
-      "inputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": 1,
-              "inHunkInput": 0
-            }
-          ]
-        }
-      ],
-      "states": []
-    },
-    {
-      "type": "view",
-      "name": "tlview",
-      "inputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": 0,
-              "inHunkInput": 0
-            }
-          ]
-        }
-      ],
-      "states": []
-    },
-    {
-      "type": "link",
-      "name": "link_2",
-      "inputs": [
-        {
-          "name": "data",
-          "type": "byteArray"
-        },
-        {
-          "name": "mgrMsgs",
-          "type": "byteArray"
-        },
-        {
-          "name": "auto_0_3",
-          "type": "byteArray"
-        },
-        {
-          "name": "auto_199_3",
-          "type": "byteArray"
-        },
-        {
-          "name": "auto_145_4",
-          "type": "byteArray"
-        },
-        {
-          "name": "auto_190_5",
-          "type": "byteArray"
-        },
-        {
-          "name": "auto_148_6",
-          "type": "boolean"
-        },
-        {
-          "name": "auto_181_7",
-          "type": "int32"
-        },
-        {
-          "name": "auto_59_8",
-          "type": "int32"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "data",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": 3,
-              "inHunkInput": 0
-            }
-          ]
-        },
-        {
-          "name": "mgrMsgs",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": 4,
-              "inHunkInput": 0
-            }
-          ]
-        },
-        {
-          "name": "auto_0_2",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": 5,
-              "inHunkInput": 0
-            }
-          ]
-        },
-        {
-          "name": "auto_12_3",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": 6,
-              "inHunkInput": 0
-            }
-          ]
-        },
-        {
-          "name": "auto_110_4",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": 7,
-              "inHunkInput": 0
-            }
-          ]
-        },
-        {
-          "name": "auto_109_5",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": 8,
-              "inHunkInput": 0
-            }
-          ]
-        },
-        {
-          "name": "auto_93_3",
-          "type": "int32",
-          "connections": [
-            {
-              "inHunkIndex": 9,
-              "inHunkInput": 2
-            }
-          ]
-        },
-        {
-          "name": "auto_130_3",
-          "type": "int32",
-          "connections": [
-            {
-              "inHunkIndex": 9,
-              "inHunkInput": 0
-            }
-          ]
-        },
-        {
-          "name": "auto_11_3",
-          "type": "int32",
-          "connections": [
-            {
-              "inHunkIndex": 9,
-              "inHunkInput": 1
-            }
-          ]
-        }
-      ],
-      "states": [
-        {
-          "name": "isActive",
-          "type": "boolean",
-          "value": true
-        },
-        {
-          "name": "otherLink",
-          "type": "uint16",
-          "value": 1
-        },
-        {
-          "name": "inputList",
-          "type": "string",
-          "value": "mgrMsgs (byteArray), auto_0_3 (byteArray), auto_199_3 (byteArray), auto_145_4 (byteArray), auto_190_5 (byteArray), auto_148_6 (boolean), auto_181_7 (int32), auto_59_8 (int32)"
-        },
-        {
-          "name": "outputList",
-          "type": "string",
-          "value": "mgrMsgs (byteArray), auto_0_2 (byteArray), auto_12_3 (byteArray), auto_110_4 (byteArray), auto_109_5 (byteArray), auto_93_3 (int32), auto_130_3 (int32), auto_11_3 (int32)"
-        }
-      ],
-      "contains": {
-        "interpreterName": "nautilus",
-        "interpreterVersion": "v0.1",
-        "hunks": [
-          {
-            "type": "manager",
-            "name": "nautilus",
-            "inputs": [
-              {
-                "name": "msgs",
-                "type": "byteArray"
-              }
-            ],
-            "outputs": [
-              {
-                "name": "msgs",
-                "type": "byteArray",
-                "connections": [
-                  {
-                    "inHunkIndex": 1,
-                    "inHunkInput": 1
-                  }
-                ]
-              }
-            ],
-            "states": []
-          },
-          {
-            "type": "link",
-            "name": "link_1",
-            "inputs": [
-              {
-                "name": "data",
-                "type": "byteArray"
-              },
-              {
-                "name": "mgrMsgs",
-                "type": "byteArray"
-              },
-              {
-                "name": "auto_0_3",
-                "type": "byteArray"
-              },
-              {
-                "name": "auto_107_4",
-                "type": "byteArray"
-              },
-              {
-                "name": "auto_131_5",
-                "type": "byteArray"
-              },
-              {
-                "name": "auto_247_6",
-                "type": "byteArray"
-              },
-              {
-                "name": "auto_159_7",
-                "type": "int32"
-              },
-              {
-                "name": "auto_133_8",
-                "type": "int32"
-              },
-              {
-                "name": "auto_109_9",
-                "type": "int32"
-              }
-            ],
-            "outputs": [
-              {
-                "name": "data",
-                "type": "byteArray",
-                "connections": [
-                  {
-                    "inHunkIndex": 2,
-                    "inHunkInput": 0
-                  }
-                ]
-              },
-              {
-                "name": "mgrMsgs",
-                "type": "byteArray",
-                "connections": [
-                  {
-                    "inHunkIndex": 0,
-                    "inHunkInput": 0
-                  }
-                ]
-              },
-              {
-                "name": "auto_0_2",
-                "type": "byteArray",
-                "connections": [
-                  {
-                    "inHunkIndex": 3,
-                    "inHunkInput": 1
-                  }
-                ]
-              },
-              {
-                "name": "auto_164_3",
-                "type": "byteArray",
-                "connections": [
-                  {
-                    "inHunkIndex": 3,
-                    "inHunkInput": 2
-                  }
-                ]
-              },
-              {
-                "name": "auto_163_4",
-                "type": "byteArray",
-                "connections": [
-                  {
-                    "inHunkIndex": 3,
-                    "inHunkInput": 3
-                  }
-                ]
-              },
-              {
-                "name": "auto_254_5",
-                "type": "byteArray",
-                "connections": [
-                  {
-                    "inHunkIndex": 3,
-                    "inHunkInput": 4
-                  }
-                ]
-              },
-              {
-                "name": "auto_199_6",
-                "type": "boolean",
-                "connections": [
-                  {
-                    "inHunkIndex": 3,
-                    "inHunkInput": 5
-                  }
-                ]
-              },
-              {
-                "name": "auto_98_7",
-                "type": "int32",
-                "connections": [
-                  {
-                    "inHunkIndex": 3,
-                    "inHunkInput": 6
-                  }
-                ]
-              },
-              {
-                "name": "auto_164_8",
-                "type": "int32",
-                "connections": [
-                  {
-                    "inHunkIndex": 3,
-                    "inHunkInput": 7
-                  }
-                ]
-              }
-            ],
-            "states": [
-              {
-                "name": "isActive",
-                "type": "boolean",
-                "value": true
-              },
-              {
-                "name": "otherLink",
-                "type": "uint16",
-                "value": 2
-              },
-              {
-                "name": "inputList",
-                "type": "string",
-                "value": "mgrMsgs (byteArray), auto_0_3 (byteArray), auto_107_4 (byteArray), auto_131_5 (byteArray), auto_247_6 (byteArray), auto_159_7 (int32), auto_133_8 (int32), auto_109_9 (int32)"
-              },
-              {
-                "name": "outputList",
-                "type": "string",
-                "value": "mgrMsgs (byteArray), auto_0_2 (byteArray), auto_164_3 (byteArray), auto_163_4 (byteArray), auto_254_5 (byteArray), auto_199_6 (boolean), auto_98_7 (int32), auto_164_8 (int32)"
-              }
-            ]
-          },
-          {
-            "type": "comm/websocketserver",
-            "name": "comm/websocketserver_2",
-            "inputs": [
-              {
-                "name": "data",
-                "type": "byteArray"
-              }
-            ],
-            "outputs": [
-              {
-                "name": "data",
-                "type": "byteArray",
-                "connections": [
-                  {
-                    "inHunkIndex": 1,
-                    "inHunkInput": 0
-                  }
-                ]
-              }
-            ],
-            "states": [
-              {
-                "name": "status",
-                "type": "string",
-                "value": "connected"
-              },
-              {
-                "name": "port",
-                "type": "number",
-                "value": 2042
-              }
-            ]
-          },
-          {
-            "type": "link",
-            "name": "link_3",
-            "inputs": [
-              {
-                "name": "data",
-                "type": "byteArray"
-              },
-              {
-                "name": "mgrMsgs",
-                "type": "byteArray"
-              },
-              {
-                "name": "auto_47_2",
-                "type": "byteArray"
-              },
-              {
-                "name": "auto_49_3",
-                "type": "byteArray"
-              },
-              {
-                "name": "auto_220_4",
-                "type": "byteArray"
-              },
-              {
-                "name": "auto_20_5",
-                "type": "boolean"
-              },
-              {
-                "name": "auto_78_6",
-                "type": "int32"
-              },
-              {
-                "name": "auto_196_7",
-                "type": "int32"
-              }
-            ],
-            "outputs": [
-              {
-                "name": "data",
-                "type": "byteArray",
-                "connections": [
-                  {
-                    "inHunkIndex": 4,
-                    "inHunkInput": 0
-                  }
-                ]
-              },
-              {
-                "name": "mgrMsgs",
-                "type": "byteArray",
-                "connections": [
-                  {
-                    "inHunkIndex": 1,
-                    "inHunkInput": 2
-                  }
-                ]
-              },
-              {
-                "name": "auto_146_2",
-                "type": "byteArray",
-                "connections": [
-                  {
-                    "inHunkIndex": 1,
-                    "inHunkInput": 3
-                  }
-                ]
-              },
-              {
-                "name": "auto_49_3",
-                "type": "byteArray",
-                "connections": [
-                  {
-                    "inHunkIndex": 1,
-                    "inHunkInput": 4
-                  }
-                ]
-              },
-              {
-                "name": "auto_214_4",
-                "type": "byteArray",
-                "connections": [
-                  {
-                    "inHunkIndex": 1,
-                    "inHunkInput": 5
-                  }
-                ]
-              },
-              {
-                "name": "auto_59_5",
-                "type": "int32",
-                "connections": [
-                  {
-                    "inHunkIndex": 1,
-                    "inHunkInput": 6
-                  }
-                ]
-              },
-              {
-                "name": "auto_87_6",
-                "type": "int32",
-                "connections": [
-                  {
-                    "inHunkIndex": 1,
-                    "inHunkInput": 7
-                  }
-                ]
-              },
-              {
-                "name": "auto_164_7",
-                "type": "int32",
-                "connections": [
-                  {
-                    "inHunkIndex": 1,
-                    "inHunkInput": 8
-                  }
-                ]
-              }
-            ],
-            "states": [
-              {
-                "name": "isActive",
-                "type": "boolean",
-                "value": true
-              },
-              {
-                "name": "otherLink",
-                "type": "uint16",
-                "value": 1
-              },
-              {
-                "name": "inputList",
-                "type": "string",
-                "value": "mgrMsgs (byteArray), auto_47_2 (byteArray), auto_49_3 (byteArray), auto_220_4 (byteArray), auto_20_5 (boolean), auto_78_6 (int32), auto_196_7 (int32)"
-              },
-              {
-                "name": "outputList",
-                "type": "string",
-                "value": "mgrMsgs (byteArray), auto_146_2 (byteArray), auto_49_3 (byteArray), auto_214_4 (byteArray), auto_59_5 (int32), auto_87_6 (int32), auto_164_7 (int32)"
-              }
-            ],
-            "contains": {
-              "interpreterName": "ponyo",
-              "interpreterVersion": "v0.1",
-              "hunks": [
-                {
-                  "type": "manager",
-                  "name": "ponyo_one",
-                  "inputs": [
-                    {
-                      "name": "mgrMsgs_1024",
-                      "type": "byteArray"
-                    }
-                  ],
-                  "outputs": [
-                    {
-                      "name": "mgrMsgs_1024",
-                      "type": "byteArray",
-                      "connections": [
-                        {
-                          "inHunkIndex": 1,
-                          "inHunkInput": 1
-                        }
-                      ]
-                    }
-                  ],
-                  "states": []
-                },
-                {
-                  "type": "link",
-                  "name": "link_1",
-                  "inputs": [
-                    {
-                      "name": "data_1024",
-                      "type": "byteArray"
-                    },
-                    {
-                      "name": "mgrMsgs_1024",
-                      "type": "byteArray"
-                    },
-                    {
-                      "name": "auto_165_3_512",
-                      "type": "byteArray"
-                    },
-                    {
-                      "name": "auto_4_4_512",
-                      "type": "byteArray"
-                    },
-                    {
-                      "name": "auto_155_5_512",
-                      "type": "byteArray"
-                    },
-                    {
-                      "name": "auto_29_6",
-                      "type": "int32"
-                    },
-                    {
-                      "name": "auto_218_7",
-                      "type": "int32"
-                    },
-                    {
-                      "name": "auto_169_8",
-                      "type": "int32"
-                    }
-                  ],
-                  "outputs": [
-                    {
-                      "name": "data_1024",
-                      "type": "byteArray",
-                      "connections": [
-                        {
-                          "inHunkIndex": 2,
-                          "inHunkInput": 0
-                        }
-                      ]
-                    },
-                    {
-                      "name": "mgrMsgs_1024",
-                      "type": "byteArray",
-                      "connections": [
-                        {
-                          "inHunkIndex": 0,
-                          "inHunkInput": 0
-                        }
-                      ]
-                    },
-                    {
-                      "name": "auto_154_3_512",
-                      "type": "byteArray",
-                      "connections": [
-                        {
-                          "inHunkIndex": 4,
-                          "inHunkInput": 1
-                        }
-                      ]
-                    },
-                    {
-                      "name": "auto_131_4_512",
-                      "type": "byteArray",
-                      "connections": [
-                        {
-                          "inHunkIndex": 6,
-                          "inHunkInput": 1
-                        }
-                      ]
-                    },
-                    {
-                      "name": "auto_198_5_512",
-                      "type": "byteArray",
-                      "connections": [
-                        {
-                          "inHunkIndex": 7,
-                          "inHunkInput": 1
-                        }
-                      ]
-                    },
-                    {
-                      "name": "auto_226_5",
-                      "type": "boolean",
-                      "connections": [
-                        {
-                          "inHunkIndex": 4,
-                          "inHunkInput": 2
-                        }
-                      ]
-                    },
-                    {
-                      "name": "auto_119_6",
-                      "type": "int32",
-                      "connections": [
-                        {
-                          "inHunkIndex": 6,
-                          "inHunkInput": 2
-                        }
-                      ]
-                    },
-                    {
-                      "name": "auto_24_7",
-                      "type": "int32",
-                      "connections": [
-                        {
-                          "inHunkIndex": 7,
-                          "inHunkInput": 2
-                        }
-                      ]
-                    }
-                  ],
-                  "states": [
-                    {
-                      "name": "isActive",
-                      "type": "boolean",
-                      "value": true
-                    },
-                    {
-                      "name": "otherLink",
-                      "type": "uint16",
-                      "value": 3
-                    },
-                    {
-                      "name": "inputList",
-                      "type": "string",
-                      "value": "mgrMsgs (byteArray), auto_165_3 (byteArray), auto_4_4 (byteArray), auto_155_5 (byteArray), auto_29_6 (int32), auto_218_7 (int32), auto_169_8 (int32)"
-                    },
-                    {
-                      "name": "outputList",
-                      "type": "string",
-                      "value": "mgrMsgs (byteArray), auto_154_3 (byteArray), auto_131_4 (byteArray), auto_198_5 (byteArray), auto_226_5 (boolean), auto_119_6 (int32), auto_24_7 (int32)"
-                    }
-                  ]
-                },
-                {
-                  "type": "comm/COBSerialUSB",
-                  "name": "comm/COBSerialUSB_2",
-                  "inputs": [
-                    {
-                      "name": "data_1024",
-                      "type": "byteArray"
-                    }
-                  ],
-                  "outputs": [
-                    {
-                      "name": "data_1024",
-                      "type": "byteArray",
-                      "connections": [
-                        {
-                          "inHunkIndex": 1,
-                          "inHunkInput": 0
-                        }
-                      ]
-                    }
-                  ],
-                  "states": []
-                },
-                {
-                  "type": "comm/COBSerialRJ45_A",
-                  "name": "comm/COBSerialRJ45_A_3",
-                  "inputs": [
-                    {
-                      "name": "data_1024",
-                      "type": "byteArray"
-                    }
-                  ],
-                  "outputs": [
-                    {
-                      "name": "data_1024",
-                      "type": "byteArray",
-                      "connections": [
-                        {
-                          "inHunkIndex": 4,
-                          "inHunkInput": 0
-                        }
-                      ]
-                    }
-                  ],
-                  "states": []
-                },
-                {
-                  "type": "link",
-                  "name": "link_4",
-                  "inputs": [
-                    {
-                      "name": "data_1024",
-                      "type": "byteArray"
-                    },
-                    {
-                      "name": "mgrMsgs_512",
-                      "type": "byteArray"
-                    },
-                    {
-                      "name": "auto_103_2",
-                      "type": "boolean"
-                    }
-                  ],
-                  "outputs": [
-                    {
-                      "name": "data_1024",
-                      "type": "byteArray",
-                      "connections": [
-                        {
-                          "inHunkIndex": 3,
-                          "inHunkInput": 0
-                        }
-                      ]
-                    },
-                    {
-                      "name": "mgrMsgs_512",
-                      "type": "byteArray",
-                      "connections": [
-                        {
-                          "inHunkIndex": 1,
-                          "inHunkInput": 2
-                        }
-                      ]
-                    },
-                    {
-                      "name": "auto_59_2",
-                      "type": "int32",
-                      "connections": [
-                        {
-                          "inHunkIndex": 1,
-                          "inHunkInput": 5
-                        }
-                      ]
-                    }
-                  ],
-                  "states": [
-                    {
-                      "name": "isActive",
-                      "type": "boolean",
-                      "value": true
-                    },
-                    {
-                      "name": "otherLink",
-                      "type": "uint16",
-                      "value": 1
-                    },
-                    {
-                      "name": "inputList",
-                      "type": "string",
-                      "value": "mgrMsgs (byteArray), auto_103_2 (boolean)"
-                    },
-                    {
-                      "name": "outputList",
-                      "type": "string",
-                      "value": "mgrMsgs (byteArray), auto_59_2 (int32)"
-                    }
-                  ],
-                  "contains": {
-                    "interpreterName": "ponyo",
-                    "interpreterVersion": "v0.1",
-                    "hunks": [
-                      {
-                        "type": "manager",
-                        "name": "ponyo_one",
-                        "inputs": [
-                          {
-                            "name": "mgrMsgs_1024",
-                            "type": "byteArray"
-                          }
-                        ],
-                        "outputs": [
-                          {
-                            "name": "mgrMsgs_1024",
-                            "type": "byteArray",
-                            "connections": [
-                              {
-                                "inHunkIndex": 1,
-                                "inHunkInput": 1
-                              }
-                            ]
-                          }
-                        ],
-                        "states": []
-                      },
-                      {
-                        "type": "link",
-                        "name": "link_1",
-                        "inputs": [
-                          {
-                            "name": "data_1024",
-                            "type": "byteArray"
-                          },
-                          {
-                            "name": "mgrMsgs_1024",
-                            "type": "byteArray"
-                          },
-                          {
-                            "name": "auto_195_3",
-                            "type": "int32"
-                          }
-                        ],
-                        "outputs": [
-                          {
-                            "name": "data_1024",
-                            "type": "byteArray",
-                            "connections": [
-                              {
-                                "inHunkIndex": 2,
-                                "inHunkInput": 0
-                              }
-                            ]
-                          },
-                          {
-                            "name": "mgrMsgs_1024",
-                            "type": "byteArray",
-                            "connections": [
-                              {
-                                "inHunkIndex": 0,
-                                "inHunkInput": 0
-                              }
-                            ]
-                          },
-                          {
-                            "name": "auto_3_6",
-                            "type": "boolean",
-                            "connections": [
-                              {
-                                "inHunkIndex": 3,
-                                "inHunkInput": 0
-                              }
-                            ]
-                          }
-                        ],
-                        "states": [
-                          {
-                            "name": "isActive",
-                            "type": "boolean",
-                            "value": true
-                          },
-                          {
-                            "name": "otherLink",
-                            "type": "uint16",
-                            "value": 4
-                          },
-                          {
-                            "name": "inputList",
-                            "type": "string",
-                            "value": "mgrMsgs (byteArray), auto_195_3 (int32)"
-                          },
-                          {
-                            "name": "outputList",
-                            "type": "string",
-                            "value": "mgrMsgs (byteArray), auto_3_6 (boolean)"
-                          }
-                        ]
-                      },
-                      {
-                        "type": "comm/COBSerialRJ45_A",
-                        "name": "comm/COBSerialRJ45_A_2",
-                        "inputs": [
-                          {
-                            "name": "data_1024",
-                            "type": "byteArray"
-                          }
-                        ],
-                        "outputs": [
-                          {
-                            "name": "data_1024",
-                            "type": "byteArray",
-                            "connections": [
-                              {
-                                "inHunkIndex": 1,
-                                "inHunkInput": 0
-                              }
-                            ]
-                          }
-                        ],
-                        "states": []
-                      },
-                      {
-                        "type": "loadcell",
-                        "name": "loadcell_3",
-                        "inputs": [
-                          {
-                            "name": "read",
-                            "type": "boolean"
-                          },
-                          {
-                            "name": "tare",
-                            "type": "boolean"
-                          }
-                        ],
-                        "outputs": [
-                          {
-                            "name": "24bit",
-                            "type": "int32",
-                            "connections": [
-                              {
-                                "inHunkIndex": 1,
-                                "inHunkInput": 2
-                              }
-                            ]
-                          }
-                        ],
-                        "states": []
-                      }
-                    ]
-                  }
-                },
-                {
-                  "type": "comm/COBSerialRJ45_B",
-                  "name": "comm/COBSerialRJ45_B_5",
-                  "inputs": [
-                    {
-                      "name": "data_1024",
-                      "type": "byteArray"
-                    }
-                  ],
-                  "outputs": [
-                    {
-                      "name": "data_1024",
-                      "type": "byteArray",
-                      "connections": [
-                        {
-                          "inHunkIndex": 6,
-                          "inHunkInput": 0
-                        }
-                      ]
-                    }
-                  ],
-                  "states": []
-                },
-                {
-                  "type": "link",
-                  "name": "link_6",
-                  "inputs": [
-                    {
-                      "name": "data_1024",
-                      "type": "byteArray"
-                    },
-                    {
-                      "name": "mgrMsgs_512",
-                      "type": "byteArray"
-                    },
-                    {
-                      "name": "auto_142_2",
-                      "type": "int32"
-                    }
-                  ],
-                  "outputs": [
-                    {
-                      "name": "data_1024",
-                      "type": "byteArray",
-                      "connections": [
-                        {
-                          "inHunkIndex": 5,
-                          "inHunkInput": 0
-                        }
-                      ]
-                    },
-                    {
-                      "name": "mgrMsgs_512",
-                      "type": "byteArray",
-                      "connections": [
-                        {
-                          "inHunkIndex": 1,
-                          "inHunkInput": 3
-                        }
-                      ]
-                    },
-                    {
-                      "name": "auto_207_2",
-                      "type": "int32",
-                      "connections": [
-                        {
-                          "inHunkIndex": 1,
-                          "inHunkInput": 6
-                        }
-                      ]
-                    }
-                  ],
-                  "states": [
-                    {
-                      "name": "isActive",
-                      "type": "boolean",
-                      "value": true
-                    },
-                    {
-                      "name": "otherLink",
-                      "type": "uint16",
-                      "value": 1
-                    },
-                    {
-                      "name": "inputList",
-                      "type": "string",
-                      "value": "mgrMsgs (byteArray), auto_142_2 (int32)"
-                    },
-                    {
-                      "name": "outputList",
-                      "type": "string",
-                      "value": "mgrMsgs (byteArray), auto_207_2 (int32)"
-                    }
-                  ],
-                  "contains": {
-                    "interpreterName": "ponyo",
-                    "interpreterVersion": "v0.1",
-                    "hunks": [
-                      {
-                        "type": "manager",
-                        "name": "ponyo_one",
-                        "inputs": [
-                          {
-                            "name": "mgrMsgs_1024",
-                            "type": "byteArray"
-                          }
-                        ],
-                        "outputs": [
-                          {
-                            "name": "mgrMsgs_1024",
-                            "type": "byteArray",
-                            "connections": [
-                              {
-                                "inHunkIndex": 1,
-                                "inHunkInput": 1
-                              }
-                            ]
-                          }
-                        ],
-                        "states": []
-                      },
-                      {
-                        "type": "link",
-                        "name": "link_1",
-                        "inputs": [
-                          {
-                            "name": "data_1024",
-                            "type": "byteArray"
-                          },
-                          {
-                            "name": "mgrMsgs_1024",
-                            "type": "byteArray"
-                          },
-                          {
-                            "name": "auto_163_3",
-                            "type": "int32"
-                          }
-                        ],
-                        "outputs": [
-                          {
-                            "name": "data_1024",
-                            "type": "byteArray",
-                            "connections": [
-                              {
-                                "inHunkIndex": 2,
-                                "inHunkInput": 0
-                              }
-                            ]
-                          },
-                          {
-                            "name": "mgrMsgs_1024",
-                            "type": "byteArray",
-                            "connections": [
-                              {
-                                "inHunkIndex": 0,
-                                "inHunkInput": 0
-                              }
-                            ]
-                          },
-                          {
-                            "name": "auto_8_7",
-                            "type": "int32",
-                            "connections": [
-                              {
-                                "inHunkIndex": 3,
-                                "inHunkInput": 0
-                              }
-                            ]
-                          }
-                        ],
-                        "states": [
-                          {
-                            "name": "isActive",
-                            "type": "boolean",
-                            "value": true
-                          },
-                          {
-                            "name": "otherLink",
-                            "type": "uint16",
-                            "value": 6
-                          },
-                          {
-                            "name": "inputList",
-                            "type": "string",
-                            "value": "mgrMsgs (byteArray), auto_163_3 (int32)"
-                          },
-                          {
-                            "name": "outputList",
-                            "type": "string",
-                            "value": "mgrMsgs (byteArray), auto_8_7 (int32)"
-                          }
-                        ]
-                      },
-                      {
-                        "type": "comm/COBSerialRJ45_A",
-                        "name": "comm/COBSerialRJ45_A_2",
-                        "inputs": [
-                          {
-                            "name": "data_1024",
-                            "type": "byteArray"
-                          }
-                        ],
-                        "outputs": [
-                          {
-                            "name": "data_1024",
-                            "type": "byteArray",
-                            "connections": [
-                              {
-                                "inHunkIndex": 1,
-                                "inHunkInput": 0
-                              }
-                            ]
-                          }
-                        ],
-                        "states": []
-                      },
-                      {
-                        "type": "stepper",
-                        "name": "stepper_3",
-                        "inputs": [
-                          {
-                            "name": "increment",
-                            "type": "int32"
-                          }
-                        ],
-                        "outputs": [
-                          {
-                            "name": "increment",
-                            "type": "int32",
-                            "connections": [
-                              {
-                                "inHunkIndex": 1,
-                                "inHunkInput": 2
-                              }
-                            ]
-                          },
-                          {
-                            "name": "stallGuard",
-                            "type": "uint32"
-                          }
-                        ],
-                        "states": [
-                          {
-                            "name": "current (6-24)",
-                            "type": "uint16",
-                            "value": 16
-                          }
-                        ]
-                      }
-                    ]
-                  }
-                },
-                {
-                  "type": "link",
-                  "name": "link_8",
-                  "inputs": [
-                    {
-                      "name": "data_1024",
-                      "type": "byteArray"
-                    },
-                    {
-                      "name": "mgrMsgs_512",
-                      "type": "byteArray"
-                    },
-                    {
-                      "name": "auto_226_2",
-                      "type": "int32"
-                    }
-                  ],
-                  "outputs": [
-                    {
-                      "name": "data_1024",
-                      "type": "byteArray",
-                      "connections": [
-                        {
-                          "inHunkIndex": 8,
-                          "inHunkInput": 0
-                        }
-                      ]
-                    },
-                    {
-                      "name": "mgrMsgs_512",
-                      "type": "byteArray",
-                      "connections": [
-                        {
-                          "inHunkIndex": 1,
-                          "inHunkInput": 4
-                        }
-                      ]
-                    },
-                    {
-                      "name": "auto_230_2",
-                      "type": "int32",
-                      "connections": [
-                        {
-                          "inHunkIndex": 1,
-                          "inHunkInput": 7
-                        }
-                      ]
-                    }
-                  ],
-                  "states": [
-                    {
-                      "name": "isActive",
-                      "type": "boolean",
-                      "value": true
-                    },
-                    {
-                      "name": "otherLink",
-                      "type": "uint16",
-                      "value": 1
-                    },
-                    {
-                      "name": "inputList",
-                      "type": "string",
-                      "value": "mgrMsgs (byteArray), auto_226_2 (int32)"
-                    },
-                    {
-                      "name": "outputList",
-                      "type": "string",
-                      "value": "mgrMsgs (byteArray), auto_230_2 (int32)"
-                    }
-                  ],
-                  "contains": {
-                    "interpreterName": "ponyo",
-                    "interpreterVersion": "v0.1",
-                    "hunks": [
-                      {
-                        "type": "manager",
-                        "name": "ponyo_one",
-                        "inputs": [
-                          {
-                            "name": "mgrMsgs_1024",
-                            "type": "byteArray"
-                          }
-                        ],
-                        "outputs": [
-                          {
-                            "name": "mgrMsgs_1024",
-                            "type": "byteArray",
-                            "connections": [
-                              {
-                                "inHunkIndex": 1,
-                                "inHunkInput": 1
-                              }
-                            ]
-                          }
-                        ],
-                        "states": []
-                      },
-                      {
-                        "type": "link",
-                        "name": "link_1",
-                        "inputs": [
-                          {
-                            "name": "data_1024",
-                            "type": "byteArray"
-                          },
-                          {
-                            "name": "mgrMsgs_1024",
-                            "type": "byteArray"
-                          },
-                          {
-                            "name": "auto_33_3",
-                            "type": "int32"
-                          }
-                        ],
-                        "outputs": [
-                          {
-                            "name": "data_1024",
-                            "type": "byteArray",
-                            "connections": [
-                              {
-                                "inHunkIndex": 2,
-                                "inHunkInput": 0
-                              }
-                            ]
-                          },
-                          {
-                            "name": "mgrMsgs_1024",
-                            "type": "byteArray",
-                            "connections": [
-                              {
-                                "inHunkIndex": 0,
-                                "inHunkInput": 0
-                              }
-                            ]
-                          },
-                          {
-                            "name": "auto_202_8",
-                            "type": "int32",
-                            "connections": [
-                              {
-                                "inHunkIndex": 3,
-                                "inHunkInput": 0
-                              }
-                            ]
-                          }
-                        ],
-                        "states": [
-                          {
-                            "name": "isActive",
-                            "type": "boolean",
-                            "value": true
-                          },
-                          {
-                            "name": "otherLink",
-                            "type": "uint16",
-                            "value": 7
-                          },
-                          {
-                            "name": "inputList",
-                            "type": "string",
-                            "value": "mgrMsgs (byteArray), auto_33_3 (int32)"
-                          },
-                          {
-                            "name": "outputList",
-                            "type": "string",
-                            "value": "mgrMsgs (byteArray), auto_202_8 (int32)"
-                          }
-                        ]
-                      },
-                      {
-                        "type": "comm/COBSerialRJ45_A",
-                        "name": "comm/COBSerialRJ45_A_2",
-                        "inputs": [
-                          {
-                            "name": "data_1024",
-                            "type": "byteArray"
-                          }
-                        ],
-                        "outputs": [
-                          {
-                            "name": "data_1024",
-                            "type": "byteArray",
-                            "connections": [
-                              {
-                                "inHunkIndex": 1,
-                                "inHunkInput": 0
-                              }
-                            ]
-                          }
-                        ],
-                        "states": []
-                      },
-                      {
-                        "type": "stepper",
-                        "name": "stepper_3",
-                        "inputs": [
-                          {
-                            "name": "increment",
-                            "type": "int32"
-                          }
-                        ],
-                        "outputs": [
-                          {
-                            "name": "increment",
-                            "type": "int32",
-                            "connections": [
-                              {
-                                "inHunkIndex": 1,
-                                "inHunkInput": 2
-                              }
-                            ]
-                          },
-                          {
-                            "name": "stallGuard",
-                            "type": "uint32"
-                          }
-                        ],
-                        "states": [
-                          {
-                            "name": "current (6-24)",
-                            "type": "uint16",
-                            "value": 16
-                          }
-                        ]
-                      }
-                    ]
-                  }
-                },
-                {
-                  "type": "comm/COBSerialRJ45_E",
-                  "name": "comm/COBSerialRJ45_E_8",
-                  "inputs": [
-                    {
-                      "name": "data_1024",
-                      "type": "byteArray"
-                    }
-                  ],
-                  "outputs": [
-                    {
-                      "name": "data_1024",
-                      "type": "byteArray",
-                      "connections": [
-                        {
-                          "inHunkIndex": 7,
-                          "inHunkInput": 0
-                        }
-                      ]
-                    }
-                  ],
-                  "states": []
-                }
-              ]
-            }
-          },
-          {
-            "type": "comm/cobserial",
-            "name": "comm/cobserial_4",
-            "inputs": [
-              {
-                "name": "data",
-                "type": "byteArray"
-              }
-            ],
-            "outputs": [
-              {
-                "name": "data",
-                "type": "byteArray",
-                "connections": [
-                  {
-                    "inHunkIndex": 3,
-                    "inHunkInput": 0
-                  }
-                ]
-              }
-            ],
-            "states": [
-              {
-                "name": "status",
-                "type": "string",
-                "value": "closed"
-              },
-              {
-                "name": "pid",
-                "type": "string",
-                "value": "8022"
-              },
-              {
-                "name": "refresh",
-                "type": "boolean",
-                "value": false
-              }
-            ]
-          }
-        ]
-      }
-    },
-    {
-      "type": "comm/websocketclient",
-      "name": "comm/websocketclient_3",
-      "inputs": [
-        {
-          "name": "data",
-          "type": "byteArray"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "data",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": 2,
-              "inHunkInput": 0
-            }
-          ]
-        }
-      ],
-      "states": [
-        {
-          "name": "status",
-          "type": "string",
-          "value": "open"
-        },
-        {
-          "name": "retrycount",
-          "type": "number",
-          "value": 3
-        },
-        {
-          "name": "retryreset",
-          "type": "boolean",
-          "value": false
-        },
-        {
-          "name": "address",
-          "type": "string",
-          "value": "127.0.0.1"
-        },
-        {
-          "name": "port",
-          "type": "number",
-          "value": 2042
-        }
-      ]
-    },
-    {
-      "type": "view",
-      "name": "view_4",
-      "inputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": 2,
-              "inHunkInput": 1
-            }
-          ]
-        }
-      ],
-      "states": []
-    },
-    {
-      "type": "view",
-      "name": "view_5",
-      "inputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": 2,
-              "inHunkInput": 2
-            }
-          ]
-        }
-      ],
-      "states": []
-    },
-    {
-      "type": "view",
-      "name": "view_6",
-      "inputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": 2,
-              "inHunkInput": 3
-            }
-          ]
-        }
-      ],
-      "states": []
-    },
-    {
-      "type": "view",
-      "name": "view_7",
-      "inputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": 2,
-              "inHunkInput": 4
-            }
-          ]
-        }
-      ],
-      "states": []
-    },
-    {
-      "type": "view",
-      "name": "view_8",
-      "inputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": 2,
-              "inHunkInput": 5
-            }
-          ]
-        }
-      ],
-      "states": []
-    },
-    {
-      "type": "control/ussm",
-      "name": "control/ussm_9",
-      "inputs": [
-        {
-          "name": "lmReturn",
-          "type": "int32"
-        },
-        {
-          "name": "rmReturn",
-          "type": "int32"
-        },
-        {
-          "name": "rdReturn",
-          "type": "int32"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "lmOut",
-          "type": "int32",
-          "connections": [
-            {
-              "inHunkIndex": 2,
-              "inHunkInput": 7
-            }
-          ]
-        },
-        {
-          "name": "rmOut",
-          "type": "int32",
-          "connections": [
-            {
-              "inHunkIndex": 2,
-              "inHunkInput": 8
-            }
-          ]
-        },
-        {
-          "name": "rdTrig",
-          "type": "boolean",
-          "connections": [
-            {
-              "inHunkIndex": 2,
-              "inHunkInput": 6
-            }
-          ]
-        }
-      ],
-      "states": [
-        {
-          "name": "gTrig",
-          "type": "boolean",
-          "value": true
-        }
-      ]
-    }
-  ]
-}
\ No newline at end of file
diff --git a/save/systems/ussm-tmotor-d2.json b/save/systems/ussm-tmotor-d2.json
deleted file mode 100644
index a517978..0000000
--- a/save/systems/ussm-tmotor-d2.json
+++ /dev/null
@@ -1,1401 +0,0 @@
-{
-  "interpreterName": "cuttlefish",
-  "interpreterVersion": "v0.1",
-  "hunks": [
-    {
-      "type": "manager",
-      "name": "nrol",
-      "inputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": 1,
-              "inHunkInput": 0
-            }
-          ]
-        }
-      ],
-      "states": []
-    },
-    {
-      "type": "view",
-      "name": "tlview",
-      "inputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": 0,
-              "inHunkInput": 0
-            }
-          ]
-        }
-      ],
-      "states": []
-    },
-    {
-      "type": "link",
-      "name": "link_2",
-      "inputs": [
-        {
-          "name": "data",
-          "type": "byteArray"
-        },
-        {
-          "name": "mgrMsgs",
-          "type": "byteArray"
-        },
-        {
-          "name": "auto_0_3",
-          "type": "byteArray"
-        },
-        {
-          "name": "auto_192_3",
-          "type": "byteArray"
-        },
-        {
-          "name": "auto_206_4",
-          "type": "byteArray"
-        },
-        {
-          "name": "auto_40_5",
-          "type": "int32"
-        },
-        {
-          "name": "auto_126_5",
-          "type": "boolean"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "data",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": 3,
-              "inHunkInput": 0
-            }
-          ]
-        },
-        {
-          "name": "mgrMsgs",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": 4,
-              "inHunkInput": 0
-            }
-          ]
-        },
-        {
-          "name": "auto_0_2",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": 5,
-              "inHunkInput": 0
-            }
-          ]
-        },
-        {
-          "name": "auto_127_3",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": 6,
-              "inHunkInput": 0
-            }
-          ]
-        },
-        {
-          "name": "auto_181_4",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": 7,
-              "inHunkInput": 0
-            }
-          ]
-        },
-        {
-          "name": "auto_97_3",
-          "type": "int32",
-          "connections": [
-            {
-              "inHunkIndex": 9,
-              "inHunkInput": 0
-            }
-          ]
-        },
-        {
-          "name": "auto_198_3",
-          "type": "int32",
-          "connections": [
-            {
-              "inHunkIndex": 9,
-              "inHunkInput": 1
-            }
-          ]
-        }
-      ],
-      "states": [
-        {
-          "name": "isActive",
-          "type": "boolean",
-          "value": true
-        },
-        {
-          "name": "otherLink",
-          "type": "uint16",
-          "value": 1
-        },
-        {
-          "name": "inputList",
-          "type": "string",
-          "value": "mgrMsgs (byteArray), auto_0_3 (byteArray), auto_192_3 (byteArray), auto_206_4 (byteArray), auto_40_5 (int32), auto_126_5 (boolean)"
-        },
-        {
-          "name": "outputList",
-          "type": "string",
-          "value": "mgrMsgs (byteArray), auto_0_2 (byteArray), auto_127_3 (byteArray), auto_181_4 (byteArray), auto_97_3 (int32), auto_198_3 (int32)"
-        }
-      ],
-      "contains": {
-        "interpreterName": "nautilus",
-        "interpreterVersion": "v0.1",
-        "hunks": [
-          {
-            "type": "manager",
-            "name": "nautilus",
-            "inputs": [
-              {
-                "name": "msgs",
-                "type": "byteArray"
-              }
-            ],
-            "outputs": [
-              {
-                "name": "msgs",
-                "type": "byteArray",
-                "connections": [
-                  {
-                    "inHunkIndex": 1,
-                    "inHunkInput": 1
-                  }
-                ]
-              }
-            ],
-            "states": []
-          },
-          {
-            "type": "link",
-            "name": "link_1",
-            "inputs": [
-              {
-                "name": "data",
-                "type": "byteArray"
-              },
-              {
-                "name": "mgrMsgs",
-                "type": "byteArray"
-              },
-              {
-                "name": "auto_0_3",
-                "type": "byteArray"
-              },
-              {
-                "name": "auto_94_4",
-                "type": "byteArray"
-              },
-              {
-                "name": "auto_52_5",
-                "type": "byteArray"
-              },
-              {
-                "name": "auto_83_7",
-                "type": "int32"
-              },
-              {
-                "name": "auto_126_7",
-                "type": "int32"
-              }
-            ],
-            "outputs": [
-              {
-                "name": "data",
-                "type": "byteArray",
-                "connections": [
-                  {
-                    "inHunkIndex": 2,
-                    "inHunkInput": 0
-                  }
-                ]
-              },
-              {
-                "name": "mgrMsgs",
-                "type": "byteArray",
-                "connections": [
-                  {
-                    "inHunkIndex": 0,
-                    "inHunkInput": 0
-                  }
-                ]
-              },
-              {
-                "name": "auto_0_2",
-                "type": "byteArray",
-                "connections": [
-                  {
-                    "inHunkIndex": 3,
-                    "inHunkInput": 1
-                  }
-                ]
-              },
-              {
-                "name": "auto_132_3",
-                "type": "byteArray",
-                "connections": [
-                  {
-                    "inHunkIndex": 3,
-                    "inHunkInput": 2
-                  }
-                ]
-              },
-              {
-                "name": "auto_149_4",
-                "type": "byteArray",
-                "connections": [
-                  {
-                    "inHunkIndex": 3,
-                    "inHunkInput": 3
-                  }
-                ]
-              },
-              {
-                "name": "auto_199_5",
-                "type": "int32",
-                "connections": [
-                  {
-                    "inHunkIndex": 3,
-                    "inHunkInput": 4
-                  }
-                ]
-              },
-              {
-                "name": "auto_172_6",
-                "type": "boolean",
-                "connections": [
-                  {
-                    "inHunkIndex": 3,
-                    "inHunkInput": 5
-                  }
-                ]
-              }
-            ],
-            "states": [
-              {
-                "name": "isActive",
-                "type": "boolean",
-                "value": true
-              },
-              {
-                "name": "otherLink",
-                "type": "uint16",
-                "value": 2
-              },
-              {
-                "name": "inputList",
-                "type": "string",
-                "value": "mgrMsgs (byteArray), auto_0_3 (byteArray), auto_94_4 (byteArray), auto_52_5 (byteArray), auto_83_7 (int32), auto_126_7 (int32)"
-              },
-              {
-                "name": "outputList",
-                "type": "string",
-                "value": "mgrMsgs (byteArray), auto_0_2 (byteArray), auto_132_3 (byteArray), auto_149_4 (byteArray), auto_199_5 (int32), auto_172_6 (boolean)"
-              }
-            ]
-          },
-          {
-            "type": "comm/websocketserver",
-            "name": "comm/websocketserver_2",
-            "inputs": [
-              {
-                "name": "data",
-                "type": "byteArray"
-              }
-            ],
-            "outputs": [
-              {
-                "name": "data",
-                "type": "byteArray",
-                "connections": [
-                  {
-                    "inHunkIndex": 1,
-                    "inHunkInput": 0
-                  }
-                ]
-              }
-            ],
-            "states": [
-              {
-                "name": "status",
-                "type": "string",
-                "value": "connected"
-              },
-              {
-                "name": "port",
-                "type": "number",
-                "value": 2042
-              }
-            ]
-          },
-          {
-            "type": "link",
-            "name": "link_3",
-            "inputs": [
-              {
-                "name": "data",
-                "type": "byteArray"
-              },
-              {
-                "name": "mgrMsgs",
-                "type": "byteArray"
-              },
-              {
-                "name": "auto_41_2",
-                "type": "byteArray"
-              },
-              {
-                "name": "auto_3_3",
-                "type": "byteArray"
-              },
-              {
-                "name": "auto_249_4",
-                "type": "int32"
-              },
-              {
-                "name": "auto_111_4",
-                "type": "boolean"
-              }
-            ],
-            "outputs": [
-              {
-                "name": "data",
-                "type": "byteArray",
-                "connections": [
-                  {
-                    "inHunkIndex": 4,
-                    "inHunkInput": 0
-                  }
-                ]
-              },
-              {
-                "name": "mgrMsgs",
-                "type": "byteArray",
-                "connections": [
-                  {
-                    "inHunkIndex": 1,
-                    "inHunkInput": 2
-                  }
-                ]
-              },
-              {
-                "name": "auto_49_2",
-                "type": "byteArray",
-                "connections": [
-                  {
-                    "inHunkIndex": 1,
-                    "inHunkInput": 3
-                  }
-                ]
-              },
-              {
-                "name": "auto_154_3",
-                "type": "byteArray",
-                "connections": [
-                  {
-                    "inHunkIndex": 1,
-                    "inHunkInput": 4
-                  }
-                ]
-              },
-              {
-                "name": "auto_73_4",
-                "type": "int32",
-                "connections": [
-                  {
-                    "inHunkIndex": 1,
-                    "inHunkInput": 5
-                  }
-                ]
-              },
-              {
-                "name": "auto_42_5",
-                "type": "int32",
-                "connections": [
-                  {
-                    "inHunkIndex": 1,
-                    "inHunkInput": 6
-                  }
-                ]
-              }
-            ],
-            "states": [
-              {
-                "name": "isActive",
-                "type": "boolean",
-                "value": true
-              },
-              {
-                "name": "otherLink",
-                "type": "uint16",
-                "value": 1
-              },
-              {
-                "name": "inputList",
-                "type": "string",
-                "value": "mgrMsgs (byteArray), auto_41_2 (byteArray), auto_3_3 (byteArray), auto_249_4 (int32), auto_111_4 (boolean)"
-              },
-              {
-                "name": "outputList",
-                "type": "string",
-                "value": "mgrMsgs (byteArray), auto_49_2 (byteArray), auto_154_3 (byteArray), auto_73_4 (int32), auto_42_5 (int32)"
-              }
-            ],
-            "contains": {
-              "interpreterName": "ponyo",
-              "interpreterVersion": "v0.1",
-              "hunks": [
-                {
-                  "type": "manager",
-                  "name": "ponyo_one",
-                  "inputs": [
-                    {
-                      "name": "mgrMsgs_1024",
-                      "type": "byteArray"
-                    }
-                  ],
-                  "outputs": [
-                    {
-                      "name": "mgrMsgs_1024",
-                      "type": "byteArray",
-                      "connections": [
-                        {
-                          "inHunkIndex": 1,
-                          "inHunkInput": 1
-                        }
-                      ]
-                    }
-                  ],
-                  "states": []
-                },
-                {
-                  "type": "link",
-                  "name": "link_1",
-                  "inputs": [
-                    {
-                      "name": "data_1024",
-                      "type": "byteArray"
-                    },
-                    {
-                      "name": "mgrMsgs_1024",
-                      "type": "byteArray"
-                    },
-                    {
-                      "name": "auto_72_3_512",
-                      "type": "byteArray"
-                    },
-                    {
-                      "name": "auto_30_4_512",
-                      "type": "byteArray"
-                    },
-                    {
-                      "name": "auto_39_6",
-                      "type": "int32"
-                    },
-                    {
-                      "name": "auto_110_6",
-                      "type": "int32"
-                    }
-                  ],
-                  "outputs": [
-                    {
-                      "name": "data_1024",
-                      "type": "byteArray",
-                      "connections": [
-                        {
-                          "inHunkIndex": 2,
-                          "inHunkInput": 0
-                        }
-                      ]
-                    },
-                    {
-                      "name": "mgrMsgs_1024",
-                      "type": "byteArray",
-                      "connections": [
-                        {
-                          "inHunkIndex": 0,
-                          "inHunkInput": 0
-                        }
-                      ]
-                    },
-                    {
-                      "name": "auto_215_3_512",
-                      "type": "byteArray",
-                      "connections": [
-                        {
-                          "inHunkIndex": 5,
-                          "inHunkInput": 1
-                        }
-                      ]
-                    },
-                    {
-                      "name": "auto_146_4_512",
-                      "type": "byteArray",
-                      "connections": [
-                        {
-                          "inHunkIndex": 6,
-                          "inHunkInput": 1
-                        }
-                      ]
-                    },
-                    {
-                      "name": "auto_158_4",
-                      "type": "int32",
-                      "connections": [
-                        {
-                          "inHunkIndex": 6,
-                          "inHunkInput": 2
-                        }
-                      ]
-                    },
-                    {
-                      "name": "auto_234_5",
-                      "type": "boolean",
-                      "connections": [
-                        {
-                          "inHunkIndex": 5,
-                          "inHunkInput": 2
-                        }
-                      ]
-                    }
-                  ],
-                  "states": [
-                    {
-                      "name": "isActive",
-                      "type": "boolean",
-                      "value": true
-                    },
-                    {
-                      "name": "otherLink",
-                      "type": "uint16",
-                      "value": 3
-                    },
-                    {
-                      "name": "inputList",
-                      "type": "string",
-                      "value": "mgrMsgs (byteArray), auto_72_3 (byteArray), auto_30_4 (byteArray), auto_39_6 (int32), auto_110_6 (int32)"
-                    },
-                    {
-                      "name": "outputList",
-                      "type": "string",
-                      "value": "mgrMsgs (byteArray), auto_215_3 (byteArray), auto_146_4 (byteArray), auto_158_4 (int32), auto_234_5 (boolean)"
-                    }
-                  ]
-                },
-                {
-                  "type": "comm/COBSerialUSB",
-                  "name": "comm/COBSerialUSB_2",
-                  "inputs": [
-                    {
-                      "name": "data_1024",
-                      "type": "byteArray"
-                    }
-                  ],
-                  "outputs": [
-                    {
-                      "name": "data_1024",
-                      "type": "byteArray",
-                      "connections": [
-                        {
-                          "inHunkIndex": 1,
-                          "inHunkInput": 0
-                        }
-                      ]
-                    }
-                  ],
-                  "states": []
-                },
-                {
-                  "type": "comm/COBSerialRJ45_A",
-                  "name": "comm/COBSerialRJ45_A_3",
-                  "inputs": [
-                    {
-                      "name": "data_1024",
-                      "type": "byteArray"
-                    }
-                  ],
-                  "outputs": [
-                    {
-                      "name": "data_1024",
-                      "type": "byteArray",
-                      "connections": [
-                        {
-                          "inHunkIndex": 5,
-                          "inHunkInput": 0
-                        }
-                      ]
-                    }
-                  ],
-                  "states": []
-                },
-                {
-                  "type": "comm/COBSerialRJ45_B",
-                  "name": "comm/COBSerialRJ45_B_4",
-                  "inputs": [
-                    {
-                      "name": "data_1024",
-                      "type": "byteArray"
-                    }
-                  ],
-                  "outputs": [
-                    {
-                      "name": "data_1024",
-                      "type": "byteArray",
-                      "connections": [
-                        {
-                          "inHunkIndex": 6,
-                          "inHunkInput": 0
-                        }
-                      ]
-                    }
-                  ],
-                  "states": []
-                },
-                {
-                  "type": "link",
-                  "name": "link_5",
-                  "inputs": [
-                    {
-                      "name": "data_1024",
-                      "type": "byteArray"
-                    },
-                    {
-                      "name": "mgrMsgs_512",
-                      "type": "byteArray"
-                    },
-                    {
-                      "name": "auto_6_2",
-                      "type": "boolean"
-                    }
-                  ],
-                  "outputs": [
-                    {
-                      "name": "data_1024",
-                      "type": "byteArray",
-                      "connections": [
-                        {
-                          "inHunkIndex": 3,
-                          "inHunkInput": 0
-                        }
-                      ]
-                    },
-                    {
-                      "name": "mgrMsgs_512",
-                      "type": "byteArray",
-                      "connections": [
-                        {
-                          "inHunkIndex": 1,
-                          "inHunkInput": 2
-                        }
-                      ]
-                    },
-                    {
-                      "name": "auto_23_2",
-                      "type": "int32",
-                      "connections": [
-                        {
-                          "inHunkIndex": 1,
-                          "inHunkInput": 5
-                        }
-                      ]
-                    }
-                  ],
-                  "states": [
-                    {
-                      "name": "isActive",
-                      "type": "boolean",
-                      "value": true
-                    },
-                    {
-                      "name": "otherLink",
-                      "type": "uint16",
-                      "value": 1
-                    },
-                    {
-                      "name": "inputList",
-                      "type": "string",
-                      "value": "mgrMsgs (byteArray), auto_6_2 (boolean)"
-                    },
-                    {
-                      "name": "outputList",
-                      "type": "string",
-                      "value": "mgrMsgs (byteArray), auto_23_2 (int32)"
-                    }
-                  ],
-                  "contains": {
-                    "interpreterName": "ponyo",
-                    "interpreterVersion": "v0.1",
-                    "hunks": [
-                      {
-                        "type": "manager",
-                        "name": "ponyo_one",
-                        "inputs": [
-                          {
-                            "name": "mgrMsgs_1024",
-                            "type": "byteArray"
-                          }
-                        ],
-                        "outputs": [
-                          {
-                            "name": "mgrMsgs_1024",
-                            "type": "byteArray",
-                            "connections": [
-                              {
-                                "inHunkIndex": 1,
-                                "inHunkInput": 1
-                              }
-                            ]
-                          }
-                        ],
-                        "states": []
-                      },
-                      {
-                        "type": "link",
-                        "name": "link_1",
-                        "inputs": [
-                          {
-                            "name": "data_1024",
-                            "type": "byteArray"
-                          },
-                          {
-                            "name": "mgrMsgs_1024",
-                            "type": "byteArray"
-                          },
-                          {
-                            "name": "auto_223_3",
-                            "type": "int32"
-                          }
-                        ],
-                        "outputs": [
-                          {
-                            "name": "data_1024",
-                            "type": "byteArray",
-                            "connections": [
-                              {
-                                "inHunkIndex": 2,
-                                "inHunkInput": 0
-                              }
-                            ]
-                          },
-                          {
-                            "name": "mgrMsgs_1024",
-                            "type": "byteArray",
-                            "connections": [
-                              {
-                                "inHunkIndex": 0,
-                                "inHunkInput": 0
-                              }
-                            ]
-                          },
-                          {
-                            "name": "auto_64_5",
-                            "type": "boolean",
-                            "connections": [
-                              {
-                                "inHunkIndex": 3,
-                                "inHunkInput": 0
-                              }
-                            ]
-                          }
-                        ],
-                        "states": [
-                          {
-                            "name": "isActive",
-                            "type": "boolean",
-                            "value": true
-                          },
-                          {
-                            "name": "otherLink",
-                            "type": "uint16",
-                            "value": 5
-                          },
-                          {
-                            "name": "inputList",
-                            "type": "string",
-                            "value": "mgrMsgs (byteArray), auto_223_3 (int32)"
-                          },
-                          {
-                            "name": "outputList",
-                            "type": "string",
-                            "value": "mgrMsgs (byteArray), auto_64_5 (boolean)"
-                          }
-                        ]
-                      },
-                      {
-                        "type": "comm/COBSerialRJ45_A",
-                        "name": "comm/COBSerialRJ45_A_2",
-                        "inputs": [
-                          {
-                            "name": "data_1024",
-                            "type": "byteArray"
-                          }
-                        ],
-                        "outputs": [
-                          {
-                            "name": "data_1024",
-                            "type": "byteArray",
-                            "connections": [
-                              {
-                                "inHunkIndex": 1,
-                                "inHunkInput": 0
-                              }
-                            ]
-                          }
-                        ],
-                        "states": []
-                      },
-                      {
-                        "type": "loadcell",
-                        "name": "loadcell_3",
-                        "inputs": [
-                          {
-                            "name": "read",
-                            "type": "boolean"
-                          },
-                          {
-                            "name": "tare",
-                            "type": "boolean"
-                          }
-                        ],
-                        "outputs": [
-                          {
-                            "name": "24bit",
-                            "type": "int32",
-                            "connections": [
-                              {
-                                "inHunkIndex": 1,
-                                "inHunkInput": 2
-                              }
-                            ]
-                          }
-                        ],
-                        "states": []
-                      }
-                    ]
-                  }
-                },
-                {
-                  "type": "link",
-                  "name": "link_6",
-                  "inputs": [
-                    {
-                      "name": "data_1024",
-                      "type": "byteArray"
-                    },
-                    {
-                      "name": "mgrMsgs_512",
-                      "type": "byteArray"
-                    },
-                    {
-                      "name": "auto_163_2",
-                      "type": "int32"
-                    }
-                  ],
-                  "outputs": [
-                    {
-                      "name": "data_1024",
-                      "type": "byteArray",
-                      "connections": [
-                        {
-                          "inHunkIndex": 4,
-                          "inHunkInput": 0
-                        }
-                      ]
-                    },
-                    {
-                      "name": "mgrMsgs_512",
-                      "type": "byteArray",
-                      "connections": [
-                        {
-                          "inHunkIndex": 1,
-                          "inHunkInput": 3
-                        }
-                      ]
-                    },
-                    {
-                      "name": "auto_4_2",
-                      "type": "int32",
-                      "connections": [
-                        {
-                          "inHunkIndex": 1,
-                          "inHunkInput": 4
-                        }
-                      ]
-                    }
-                  ],
-                  "states": [
-                    {
-                      "name": "isActive",
-                      "type": "boolean",
-                      "value": true
-                    },
-                    {
-                      "name": "otherLink",
-                      "type": "uint16",
-                      "value": 1
-                    },
-                    {
-                      "name": "inputList",
-                      "type": "string",
-                      "value": "mgrMsgs (byteArray), auto_163_2 (int32)"
-                    },
-                    {
-                      "name": "outputList",
-                      "type": "string",
-                      "value": "mgrMsgs (byteArray), auto_4_2 (int32)"
-                    }
-                  ],
-                  "contains": {
-                    "interpreterName": "ponyo",
-                    "interpreterVersion": "v0.1",
-                    "hunks": [
-                      {
-                        "type": "manager",
-                        "name": "ponyo_one",
-                        "inputs": [
-                          {
-                            "name": "mgrMsgs_1024",
-                            "type": "byteArray"
-                          }
-                        ],
-                        "outputs": [
-                          {
-                            "name": "mgrMsgs_1024",
-                            "type": "byteArray",
-                            "connections": [
-                              {
-                                "inHunkIndex": 1,
-                                "inHunkInput": 1
-                              }
-                            ]
-                          }
-                        ],
-                        "states": []
-                      },
-                      {
-                        "type": "link",
-                        "name": "link_1",
-                        "inputs": [
-                          {
-                            "name": "data_1024",
-                            "type": "byteArray"
-                          },
-                          {
-                            "name": "mgrMsgs_1024",
-                            "type": "byteArray"
-                          },
-                          {
-                            "name": "auto_42_3",
-                            "type": "int32"
-                          }
-                        ],
-                        "outputs": [
-                          {
-                            "name": "data_1024",
-                            "type": "byteArray",
-                            "connections": [
-                              {
-                                "inHunkIndex": 2,
-                                "inHunkInput": 0
-                              }
-                            ]
-                          },
-                          {
-                            "name": "mgrMsgs_1024",
-                            "type": "byteArray",
-                            "connections": [
-                              {
-                                "inHunkIndex": 0,
-                                "inHunkInput": 0
-                              }
-                            ]
-                          },
-                          {
-                            "name": "auto_216_5",
-                            "type": "int32",
-                            "connections": [
-                              {
-                                "inHunkIndex": 3,
-                                "inHunkInput": 0
-                              }
-                            ]
-                          }
-                        ],
-                        "states": [
-                          {
-                            "name": "isActive",
-                            "type": "boolean",
-                            "value": true
-                          },
-                          {
-                            "name": "otherLink",
-                            "type": "uint16",
-                            "value": 6
-                          },
-                          {
-                            "name": "inputList",
-                            "type": "string",
-                            "value": "mgrMsgs (byteArray), auto_42_3 (int32)"
-                          },
-                          {
-                            "name": "outputList",
-                            "type": "string",
-                            "value": "mgrMsgs (byteArray), auto_216_5 (int32)"
-                          }
-                        ]
-                      },
-                      {
-                        "type": "comm/COBSerialRJ45_A",
-                        "name": "comm/COBSerialRJ45_A_2",
-                        "inputs": [
-                          {
-                            "name": "data_1024",
-                            "type": "byteArray"
-                          }
-                        ],
-                        "outputs": [
-                          {
-                            "name": "data_1024",
-                            "type": "byteArray",
-                            "connections": [
-                              {
-                                "inHunkIndex": 1,
-                                "inHunkInput": 0
-                              }
-                            ]
-                          }
-                        ],
-                        "states": []
-                      },
-                      {
-                        "type": "stepper",
-                        "name": "stepper_3",
-                        "inputs": [
-                          {
-                            "name": "increment",
-                            "type": "int32"
-                          }
-                        ],
-                        "outputs": [
-                          {
-                            "name": "increment",
-                            "type": "int32",
-                            "connections": [
-                              {
-                                "inHunkIndex": 1,
-                                "inHunkInput": 2
-                              }
-                            ]
-                          },
-                          {
-                            "name": "stallGuard",
-                            "type": "uint32"
-                          }
-                        ],
-                        "states": [
-                          {
-                            "name": "current (6-24)",
-                            "type": "uint16",
-                            "value": 16
-                          }
-                        ]
-                      }
-                    ]
-                  }
-                }
-              ]
-            }
-          },
-          {
-            "type": "comm/cobserial",
-            "name": "comm/cobserial_4",
-            "inputs": [
-              {
-                "name": "data",
-                "type": "byteArray"
-              }
-            ],
-            "outputs": [
-              {
-                "name": "data",
-                "type": "byteArray",
-                "connections": [
-                  {
-                    "inHunkIndex": 3,
-                    "inHunkInput": 0
-                  }
-                ]
-              }
-            ],
-            "states": [
-              {
-                "name": "status",
-                "type": "string",
-                "value": "closed"
-              },
-              {
-                "name": "pid",
-                "type": "string",
-                "value": "8022"
-              },
-              {
-                "name": "refresh",
-                "type": "boolean",
-                "value": false
-              }
-            ]
-          }
-        ]
-      }
-    },
-    {
-      "type": "comm/websocketclient",
-      "name": "comm/websocketclient_3",
-      "inputs": [
-        {
-          "name": "data",
-          "type": "byteArray"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "data",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": 2,
-              "inHunkInput": 0
-            }
-          ]
-        }
-      ],
-      "states": [
-        {
-          "name": "status",
-          "type": "string",
-          "value": "open"
-        },
-        {
-          "name": "retrycount",
-          "type": "number",
-          "value": 3
-        },
-        {
-          "name": "retryreset",
-          "type": "boolean",
-          "value": false
-        },
-        {
-          "name": "address",
-          "type": "string",
-          "value": "127.0.0.1"
-        },
-        {
-          "name": "port",
-          "type": "number",
-          "value": 2042
-        }
-      ]
-    },
-    {
-      "type": "view",
-      "name": "view_4",
-      "inputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": 2,
-              "inHunkInput": 1
-            }
-          ]
-        }
-      ],
-      "states": []
-    },
-    {
-      "type": "view",
-      "name": "view_5",
-      "inputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": 2,
-              "inHunkInput": 2
-            }
-          ]
-        }
-      ],
-      "states": []
-    },
-    {
-      "type": "view",
-      "name": "view_6",
-      "inputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": 2,
-              "inHunkInput": 3
-            }
-          ]
-        }
-      ],
-      "states": []
-    },
-    {
-      "type": "view",
-      "name": "view_7",
-      "inputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": 2,
-              "inHunkInput": 4
-            }
-          ]
-        }
-      ],
-      "states": []
-    },
-    {
-      "type": "control/ussm",
-      "name": "control/ussm_8",
-      "inputs": [
-        {
-          "name": "lmReturn",
-          "type": "int32"
-        },
-        {
-          "name": "rmReturn",
-          "type": "int32"
-        },
-        {
-          "name": "rdReturn",
-          "type": "int32"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "lmOut",
-          "type": "int32",
-          "connections": [
-            {
-              "inHunkIndex": 2,
-              "inHunkInput": 5
-            }
-          ]
-        },
-        {
-          "name": "rmOut",
-          "type": "int32"
-        },
-        {
-          "name": "rdTrig",
-          "type": "boolean",
-          "connections": [
-            {
-              "inHunkIndex": 2,
-              "inHunkInput": 6
-            }
-          ]
-        }
-      ],
-      "states": [
-        {
-          "name": "gTrig",
-          "type": "boolean",
-          "value": true
-        },
-        {
-          "name": "stepIncrement",
-          "type": "number",
-          "value": 5
-        }
-      ]
-    },
-    {
-      "type": "output/linechart",
-      "name": "output/linechart_9",
-      "inputs": [
-        {
-          "name": "xVar",
-          "type": "number"
-        },
-        {
-          "name": "yVar",
-          "type": "number"
-        }
-      ],
-      "outputs": [],
-      "states": []
-    }
-  ]
-}
\ No newline at end of file
diff --git a/save/systems/vfpalive-00.json b/save/systems/vfpalive-00.json
new file mode 100644
index 0000000..fc2f4c2
--- /dev/null
+++ b/save/systems/vfpalive-00.json
@@ -0,0 +1,345 @@
+{
+  "interpreterName": "cuttlefish",
+  "interpreterVersion": "v0.1",
+  "hunks": [
+    {
+      "type": "manager",
+      "name": "nrol",
+      "inputs": [
+        {
+          "name": "msgs",
+          "type": "byteArray"
+        }
+      ],
+      "outputs": [
+        {
+          "name": "msgs",
+          "type": "byteArray",
+          "connections": [
+            {
+              "inHunkIndex": 1,
+              "inHunkInput": 0
+            }
+          ]
+        }
+      ],
+      "states": []
+    },
+    {
+      "type": "view",
+      "name": "tlview",
+      "inputs": [
+        {
+          "name": "msgs",
+          "type": "byteArray"
+        }
+      ],
+      "outputs": [
+        {
+          "name": "msgs",
+          "type": "byteArray",
+          "connections": [
+            {
+              "inHunkIndex": 0,
+              "inHunkInput": 0
+            }
+          ]
+        }
+      ],
+      "states": []
+    },
+    {
+      "type": "comm/websocketclient",
+      "name": "comm/websocketclient_2",
+      "inputs": [
+        {
+          "name": "data",
+          "type": "byteArray"
+        }
+      ],
+      "outputs": [
+        {
+          "name": "data",
+          "type": "byteArray",
+          "connections": [
+            {
+              "inHunkIndex": 3,
+              "inHunkInput": 0
+            }
+          ]
+        }
+      ],
+      "states": [
+        {
+          "name": "status",
+          "type": "string",
+          "value": "open"
+        },
+        {
+          "name": "retrycount",
+          "type": "number",
+          "value": 3
+        },
+        {
+          "name": "retryreset",
+          "type": "boolean",
+          "value": false
+        },
+        {
+          "name": "address",
+          "type": "string",
+          "value": "127.0.0.1"
+        },
+        {
+          "name": "port",
+          "type": "number",
+          "value": 2042
+        }
+      ]
+    },
+    {
+      "type": "link",
+      "name": "link_3",
+      "inputs": [
+        {
+          "name": "data",
+          "type": "byteArray"
+        },
+        {
+          "name": "mgrMsgs",
+          "type": "byteArray"
+        }
+      ],
+      "outputs": [
+        {
+          "name": "data",
+          "type": "byteArray",
+          "connections": [
+            {
+              "inHunkIndex": 2,
+              "inHunkInput": 0
+            }
+          ]
+        },
+        {
+          "name": "mgrMsgs",
+          "type": "byteArray",
+          "connections": [
+            {
+              "inHunkIndex": 4,
+              "inHunkInput": 0
+            }
+          ]
+        }
+      ],
+      "states": [
+        {
+          "name": "isActive",
+          "type": "boolean",
+          "value": true
+        },
+        {
+          "name": "otherLink",
+          "type": "uint16",
+          "value": 1
+        },
+        {
+          "name": "inputList",
+          "type": "string",
+          "value": "mgrMsgs (byteArray)"
+        },
+        {
+          "name": "outputList",
+          "type": "string",
+          "value": "mgrMsgs (byteArray)"
+        }
+      ],
+      "contains": {
+        "interpreterName": "ponyo",
+        "interpreterVersion": "v0.1",
+        "hunks": [
+          {
+            "type": "manager",
+            "name": "ponyo_one",
+            "inputs": [
+              {
+                "name": "mgrMsgs_1024",
+                "type": "byteArray"
+              }
+            ],
+            "outputs": [
+              {
+                "name": "mgrMsgs_1024",
+                "type": "byteArray",
+                "connections": [
+                  {
+                    "inHunkIndex": 1,
+                    "inHunkInput": 1
+                  }
+                ]
+              }
+            ],
+            "states": []
+          },
+          {
+            "type": "link",
+            "name": "link_1",
+            "inputs": [
+              {
+                "name": "data_1024",
+                "type": "byteArray"
+              },
+              {
+                "name": "mgrMsgs_1024",
+                "type": "byteArray"
+              }
+            ],
+            "outputs": [
+              {
+                "name": "data_1024",
+                "type": "byteArray",
+                "connections": [
+                  {
+                    "inHunkIndex": 2,
+                    "inHunkInput": 0
+                  }
+                ]
+              },
+              {
+                "name": "mgrMsgs_1024",
+                "type": "byteArray",
+                "connections": [
+                  {
+                    "inHunkIndex": 0,
+                    "inHunkInput": 0
+                  }
+                ]
+              }
+            ],
+            "states": [
+              {
+                "name": "isActive",
+                "type": "boolean",
+                "value": true
+              },
+              {
+                "name": "otherLink",
+                "type": "uint16",
+                "value": 3
+              },
+              {
+                "name": "inputList",
+                "type": "string",
+                "value": "mgrMsgs (byteArray)"
+              },
+              {
+                "name": "outputList",
+                "type": "string",
+                "value": "mgrMsgs (byteArray)"
+              }
+            ]
+          },
+          {
+            "type": "comm/COBSerialUSB",
+            "name": "comm/COBSerialUSB_2",
+            "inputs": [
+              {
+                "name": "data_1024",
+                "type": "byteArray"
+              }
+            ],
+            "outputs": [
+              {
+                "name": "data_1024",
+                "type": "byteArray",
+                "connections": [
+                  {
+                    "inHunkIndex": 1,
+                    "inHunkInput": 0
+                  }
+                ]
+              }
+            ],
+            "states": []
+          },
+          {
+            "type": "math/booleaninversion",
+            "name": "math/booleaninversion_3",
+            "inputs": [
+              {
+                "name": "state",
+                "type": "boolean"
+              }
+            ],
+            "outputs": [
+              {
+                "name": "inverted",
+                "type": "boolean"
+              }
+            ],
+            "states": []
+          }
+        ]
+      }
+    },
+    {
+      "type": "view",
+      "name": "view_4",
+      "inputs": [
+        {
+          "name": "msgs",
+          "type": "byteArray"
+        }
+      ],
+      "outputs": [
+        {
+          "name": "msgs",
+          "type": "byteArray",
+          "connections": [
+            {
+              "inHunkIndex": 3,
+              "inHunkInput": 1
+            }
+          ]
+        }
+      ],
+      "states": []
+    },
+    {
+      "type": "debug/timing",
+      "name": "debug/timing_5",
+      "inputs": [
+        {
+          "name": "thru",
+          "type": "boolean"
+        }
+      ],
+      "outputs": [
+        {
+          "name": "thru",
+          "type": "boolean"
+        },
+        {
+          "name": "mean (ms)",
+          "type": "number"
+        },
+        {
+          "name": "variance",
+          "type": "number"
+        }
+      ],
+      "states": [
+        {
+          "name": "average",
+          "type": "number",
+          "value": 100
+        },
+        {
+          "name": "log",
+          "type": "boolean",
+          "value": true
+        }
+      ]
+    }
+  ]
+}
\ No newline at end of file
diff --git a/save/systems/loadcelltest-01.json b/save/systems/vfpalive-02.json
similarity index 61%
rename from save/systems/loadcelltest-01.json
rename to save/systems/vfpalive-02.json
index 8ffe9f2..72e5521 100644
--- a/save/systems/loadcelltest-01.json
+++ b/save/systems/vfpalive-02.json
@@ -48,9 +48,58 @@
       ],
       "states": []
     },
+    {
+      "type": "comm/websocketclient",
+      "name": "comm/websocketclient_2",
+      "inputs": [
+        {
+          "name": "data",
+          "type": "byteArray"
+        }
+      ],
+      "outputs": [
+        {
+          "name": "data",
+          "type": "byteArray",
+          "connections": [
+            {
+              "inHunkIndex": 3,
+              "inHunkInput": 0
+            }
+          ]
+        }
+      ],
+      "states": [
+        {
+          "name": "status",
+          "type": "string",
+          "value": "open"
+        },
+        {
+          "name": "retrycount",
+          "type": "number",
+          "value": 3
+        },
+        {
+          "name": "retryreset",
+          "type": "boolean",
+          "value": false
+        },
+        {
+          "name": "address",
+          "type": "string",
+          "value": "127.0.0.1"
+        },
+        {
+          "name": "port",
+          "type": "number",
+          "value": 2042
+        }
+      ]
+    },
     {
       "type": "link",
-      "name": "link_2",
+      "name": "link_3",
       "inputs": [
         {
           "name": "data",
@@ -62,7 +111,7 @@
         },
         {
           "name": "auto_0_3",
-          "type": "byteArray"
+          "type": "boolean"
         }
       ],
       "outputs": [
@@ -71,7 +120,7 @@
           "type": "byteArray",
           "connections": [
             {
-              "inHunkIndex": 3,
+              "inHunkIndex": 2,
               "inHunkInput": 0
             }
           ]
@@ -87,24 +136,14 @@
           ]
         },
         {
-          "name": "auto_0_2",
-          "type": "byteArray",
+          "name": "auto_155_2",
+          "type": "boolean",
           "connections": [
             {
               "inHunkIndex": 5,
               "inHunkInput": 0
             }
           ]
-        },
-        {
-          "name": "load",
-          "type": "int32",
-          "connections": [
-            {
-              "inHunkIndex": 6,
-              "inHunkInput": 0
-            }
-          ]
         }
       ],
       "states": [
@@ -121,30 +160,30 @@
         {
           "name": "inputList",
           "type": "string",
-          "value": "mgrMsgs (byteArray), auto_0_3 (byteArray)"
+          "value": "mgrMsgs (byteArray), auto_0_3 (boolean)"
         },
         {
           "name": "outputList",
           "type": "string",
-          "value": "mgrMsgs (byteArray), auto_0_2 (byteArray), load (int32)"
+          "value": "mgrMsgs (byteArray), auto_155_2 (boolean)"
         }
       ],
       "contains": {
-        "interpreterName": "nautilus",
+        "interpreterName": "ponyo",
         "interpreterVersion": "v0.1",
         "hunks": [
           {
             "type": "manager",
-            "name": "nautilus",
+            "name": "ponyo_one",
             "inputs": [
               {
-                "name": "msgs",
+                "name": "mgrMsgs_1024",
                 "type": "byteArray"
               }
             ],
             "outputs": [
               {
-                "name": "msgs",
+                "name": "mgrMsgs_1024",
                 "type": "byteArray",
                 "connections": [
                   {
@@ -161,25 +200,21 @@
             "name": "link_1",
             "inputs": [
               {
-                "name": "data",
-                "type": "byteArray"
-              },
-              {
-                "name": "mgrMsgs",
+                "name": "data_1024",
                 "type": "byteArray"
               },
               {
-                "name": "auto_0_3",
+                "name": "mgrMsgs_1024",
                 "type": "byteArray"
               },
               {
-                "name": "load",
-                "type": "int32"
+                "name": "auto_83_2",
+                "type": "boolean"
               }
             ],
             "outputs": [
               {
-                "name": "data",
+                "name": "data_1024",
                 "type": "byteArray",
                 "connections": [
                   {
@@ -189,7 +224,7 @@
                 ]
               },
               {
-                "name": "mgrMsgs",
+                "name": "mgrMsgs_1024",
                 "type": "byteArray",
                 "connections": [
                   {
@@ -199,12 +234,12 @@
                 ]
               },
               {
-                "name": "auto_0_2",
-                "type": "byteArray",
+                "name": "auto_177_3",
+                "type": "boolean",
                 "connections": [
                   {
                     "inHunkIndex": 3,
-                    "inHunkInput": 1
+                    "inHunkInput": 0
                   }
                 ]
               }
@@ -218,32 +253,32 @@
               {
                 "name": "otherLink",
                 "type": "uint16",
-                "value": 2
+                "value": 3
               },
               {
                 "name": "inputList",
                 "type": "string",
-                "value": "mgrMsgs (byteArray), auto_0_3 (byteArray), load (int32)"
+                "value": "mgrMsgs (byteArray), auto_83_2 (boolean)"
               },
               {
                 "name": "outputList",
                 "type": "string",
-                "value": "mgrMsgs (byteArray), auto_0_2 (byteArray)"
+                "value": "mgrMsgs (byteArray), auto_177_3 (boolean)"
               }
             ]
           },
           {
-            "type": "comm/websocketserver",
-            "name": "comm/websocketserver_2",
+            "type": "comm/COBSerialUSB",
+            "name": "comm/COBSerialUSB_2",
             "inputs": [
               {
-                "name": "data",
+                "name": "data_1024",
                 "type": "byteArray"
               }
             ],
             "outputs": [
               {
-                "name": "data",
+                "name": "data_1024",
                 "type": "byteArray",
                 "connections": [
                   {
@@ -253,246 +288,215 @@
                 ]
               }
             ],
-            "states": [
-              {
-                "name": "status",
-                "type": "string",
-                "value": "connected"
-              },
-              {
-                "name": "port",
-                "type": "number",
-                "value": 2042
-              }
-            ]
+            "states": []
           },
           {
-            "type": "link",
-            "name": "link_3",
+            "type": "math/booleaninversion",
+            "name": "math/booleaninversion_3",
             "inputs": [
               {
-                "name": "data",
-                "type": "byteArray"
-              },
-              {
-                "name": "mgrMsgs",
-                "type": "byteArray"
+                "name": "state",
+                "type": "boolean"
               }
             ],
             "outputs": [
               {
-                "name": "data",
-                "type": "byteArray",
-                "connections": [
-                  {
-                    "inHunkIndex": 4,
-                    "inHunkInput": 0
-                  }
-                ]
-              },
-              {
-                "name": "mgrMsgs",
-                "type": "byteArray",
+                "name": "inverted",
+                "type": "boolean",
                 "connections": [
                   {
                     "inHunkIndex": 1,
                     "inHunkInput": 2
                   }
                 ]
-              },
-              {
-                "name": "load",
-                "type": "int32",
-                "connections": [
-                  {
-                    "inHunkIndex": 1,
-                    "inHunkInput": 3
-                  }
-                ]
-              }
-            ],
-            "states": [
-              {
-                "name": "isActive",
-                "type": "boolean",
-                "value": true
-              },
-              {
-                "name": "otherLink",
-                "type": "uint16",
-                "value": 1
-              },
-              {
-                "name": "inputList",
-                "type": "string",
-                "value": "mgrMsgs (byteArray)"
-              },
-              {
-                "name": "outputList",
-                "type": "string",
-                "value": "mgrMsgs (byteArray), load (int32)"
-              }
-            ]
-          },
-          {
-            "type": "comm/cobserial",
-            "name": "comm/cobserial_4",
-            "inputs": [
-              {
-                "name": "data",
-                "type": "byteArray"
               }
             ],
-            "outputs": [
-              {
-                "name": "data",
-                "type": "byteArray",
-                "connections": [
-                  {
-                    "inHunkIndex": 3,
-                    "inHunkInput": 0
-                  }
-                ]
-              }
-            ],
-            "states": [
-              {
-                "name": "status",
-                "type": "string",
-                "value": "closed"
-              },
-              {
-                "name": "pid",
-                "type": "string",
-                "value": "8022"
-              },
-              {
-                "name": "refresh",
-                "type": "boolean",
-                "value": false
-              }
-            ]
+            "states": []
           }
         ]
       }
     },
     {
-      "type": "comm/websocketclient",
-      "name": "comm/websocketclient_3",
+      "type": "view",
+      "name": "view_4",
       "inputs": [
         {
-          "name": "data",
+          "name": "msgs",
           "type": "byteArray"
         }
       ],
       "outputs": [
         {
-          "name": "data",
+          "name": "msgs",
           "type": "byteArray",
           "connections": [
             {
-              "inHunkIndex": 2,
-              "inHunkInput": 0
+              "inHunkIndex": 3,
+              "inHunkInput": 1
             }
           ]
         }
       ],
-      "states": [
+      "states": []
+    },
+    {
+      "type": "debug/timing",
+      "name": "debug/timing_5",
+      "inputs": [
         {
-          "name": "status",
-          "type": "string",
-          "value": "open"
+          "name": "thru",
+          "type": "boolean"
+        }
+      ],
+      "outputs": [
+        {
+          "name": "thru",
+          "type": "boolean",
+          "connections": [
+            {
+              "inHunkIndex": 3,
+              "inHunkInput": 2
+            }
+          ]
         },
         {
-          "name": "retrycount",
+          "name": "mean (ms)",
           "type": "number",
-          "value": 3
+          "connections": [
+            {
+              "inHunkIndex": 8,
+              "inHunkInput": 0
+            },
+            {
+              "inHunkIndex": 7,
+              "inHunkInput": 2
+            }
+          ]
         },
         {
-          "name": "retryreset",
+          "name": "variance",
+          "type": "number"
+        }
+      ],
+      "states": [
+        {
+          "name": "average",
+          "type": "number",
+          "value": 50
+        },
+        {
+          "name": "log",
           "type": "boolean",
           "value": false
-        },
+        }
+      ]
+    },
+    {
+      "type": "output/linechart",
+      "name": "output/linechart_6",
+      "inputs": [
         {
-          "name": "address",
-          "type": "string",
-          "value": "127.0.0.1"
-        },
+          "name": "array",
+          "type": "reference"
+        }
+      ],
+      "outputs": [],
+      "states": [
         {
-          "name": "port",
+          "name": "displayCount",
           "type": "number",
-          "value": 2042
+          "value": 50
         }
       ]
     },
     {
-      "type": "view",
-      "name": "view_4",
+      "type": "data/accumulator",
+      "name": "data/accumulator_7",
       "inputs": [
         {
-          "name": "msgs",
-          "type": "byteArray"
+          "name": "reset",
+          "type": "boolean"
+        },
+        {
+          "name": "x",
+          "type": "number"
+        },
+        {
+          "name": "y",
+          "type": "number"
         }
       ],
       "outputs": [
         {
-          "name": "msgs",
-          "type": "byteArray",
+          "name": "accumulated",
+          "type": "reference",
           "connections": [
             {
-              "inHunkIndex": 2,
-              "inHunkInput": 1
+              "inHunkIndex": 6,
+              "inHunkInput": 0
             }
           ]
         }
       ],
-      "states": []
+      "states": [
+        {
+          "name": "reset",
+          "type": "boolean",
+          "value": false
+        }
+      ]
     },
     {
-      "type": "view",
-      "name": "view_5",
+      "type": "primitive/increment",
+      "name": "primitive/increment_8",
       "inputs": [
         {
-          "name": "msgs",
-          "type": "byteArray"
+          "name": "increment",
+          "type": "number"
         }
       ],
       "outputs": [
         {
-          "name": "msgs",
-          "type": "byteArray",
+          "name": "value",
+          "type": "number",
           "connections": [
             {
-              "inHunkIndex": 2,
-              "inHunkInput": 2
+              "inHunkIndex": 7,
+              "inHunkInput": 1
             }
           ]
         }
       ],
-      "states": []
+      "states": [
+        {
+          "name": "reset",
+          "type": "boolean",
+          "value": false
+        }
+      ]
     },
     {
-      "type": "debug/logger",
-      "name": "debug/logger_6",
+      "type": "interface/button",
+      "name": "interface/button_9",
       "inputs": [
         {
-          "name": "tolog",
+          "name": "trigger",
           "type": "any"
         }
       ],
-      "outputs": [],
-      "states": [
-        {
-          "name": "prefix",
-          "type": "string",
-          "value": "LOG:"
-        },
+      "outputs": [
         {
-          "name": "console",
+          "name": "onclick",
           "type": "boolean",
-          "value": true
+          "connections": [
+            {
+              "inHunkIndex": 5,
+              "inHunkInput": 0
+            }
+          ]
         }
-      ]
+      ],
+      "states": []
     }
   ]
-}
\ No newline at end of file
+}
diff --git a/save/systems/pdev-rj45-02.json b/save/systems/vfptest-01.json
similarity index 80%
rename from save/systems/pdev-rj45-02.json
rename to save/systems/vfptest-01.json
index 1dc3644..2cf0b6f 100644
--- a/save/systems/pdev-rj45-02.json
+++ b/save/systems/vfptest-01.json
@@ -65,8 +65,8 @@
           "type": "byteArray"
         },
         {
-          "name": "auto_241_3",
-          "type": "byteArray"
+          "name": "auto_59_4",
+          "type": "boolean"
         }
       ],
       "outputs": [
@@ -101,11 +101,11 @@
           ]
         },
         {
-          "name": "auto_241_2",
-          "type": "byteArray",
+          "name": "auto_229_2",
+          "type": "boolean",
           "connections": [
             {
-              "inHunkIndex": 7,
+              "inHunkIndex": 6,
               "inHunkInput": 0
             }
           ]
@@ -125,12 +125,12 @@
         {
           "name": "inputList",
           "type": "string",
-          "value": "mgrMsgs (byteArray), auto_0_3 (byteArray), auto_241_3 (byteArray)"
+          "value": "mgrMsgs (byteArray), auto_0_3 (byteArray), auto_59_4 (boolean)"
         },
         {
           "name": "outputList",
           "type": "string",
-          "value": "mgrMsgs (byteArray), auto_0_2 (byteArray), auto_241_2 (byteArray)"
+          "value": "mgrMsgs (byteArray), auto_0_2 (byteArray), auto_229_2 (boolean)"
         }
       ],
       "contains": {
@@ -177,8 +177,8 @@
                 "type": "byteArray"
               },
               {
-                "name": "at3",
-                "type": "byteArray"
+                "name": "auto_43_3",
+                "type": "boolean"
               }
             ],
             "outputs": [
@@ -213,18 +213,14 @@
                 ]
               },
               {
-                "name": "auto_8_3",
-                "type": "byteArray",
+                "name": "auto_173_3",
+                "type": "boolean",
                 "connections": [
                   {
                     "inHunkIndex": 3,
                     "inHunkInput": 2
                   }
                 ]
-              },
-              {
-                "name": "at2",
-                "type": "byteArray"
               }
             ],
             "states": [
@@ -241,12 +237,12 @@
               {
                 "name": "inputList",
                 "type": "string",
-                "value": "mgrMsgs (byteArray), auto_0_3 (byteArray), at3 (byteArray)"
+                "value": "mgrMsgs (byteArray), auto_0_3 (byteArray), auto_43_3 (boolean)"
               },
               {
                 "name": "outputList",
                 "type": "string",
-                "value": "mgrMsgs (byteArray), auto_0_2 (byteArray), auto_8_3 (byteArray), at2 (byteArray)"
+                "value": "mgrMsgs (byteArray), auto_0_2 (byteArray), auto_173_3 (boolean)"
               }
             ]
           },
@@ -297,8 +293,8 @@
                 "type": "byteArray"
               },
               {
-                "name": "auto_160_2",
-                "type": "byteArray"
+                "name": "auto_84_3",
+                "type": "boolean"
               }
             ],
             "outputs": [
@@ -323,8 +319,8 @@
                 ]
               },
               {
-                "name": "at",
-                "type": "byteArray",
+                "name": "auto_111_2",
+                "type": "boolean",
                 "connections": [
                   {
                     "inHunkIndex": 1,
@@ -347,12 +343,12 @@
               {
                 "name": "inputList",
                 "type": "string",
-                "value": "mgrMsgs (byteArray), auto_160_2 (byteArray)"
+                "value": "mgrMsgs (byteArray), auto_84_3 (boolean)"
               },
               {
                 "name": "outputList",
                 "type": "string",
-                "value": "mgrMsgs (byteArray), at (byteArray)"
+                "value": "mgrMsgs (byteArray), auto_111_2 (boolean)"
               }
             ],
             "contains": {
@@ -395,8 +391,8 @@
                       "type": "byteArray"
                     },
                     {
-                      "name": "at_1024",
-                      "type": "byteArray"
+                      "name": "auto_131_2",
+                      "type": "boolean"
                     }
                   ],
                   "outputs": [
@@ -421,8 +417,8 @@
                       ]
                     },
                     {
-                      "name": "at_1024",
-                      "type": "byteArray",
+                      "name": "auto_13_4",
+                      "type": "boolean",
                       "connections": [
                         {
                           "inHunkIndex": 3,
@@ -445,12 +441,12 @@
                     {
                       "name": "inputList",
                       "type": "string",
-                      "value": "mgrMsgs (byteArray), at (byteArray)"
+                      "value": "mgrMsgs (byteArray), auto_131_2 (boolean)"
                     },
                     {
                       "name": "outputList",
                       "type": "string",
-                      "value": "mgrMsgs (byteArray), at (byteArray)"
+                      "value": "mgrMsgs (byteArray), auto_13_4 (boolean)"
                     }
                   ]
                 },
@@ -478,18 +474,18 @@
                   "states": []
                 },
                 {
-                  "type": "comm/COBSerialRJ45_A",
-                  "name": "comm/COBSerialRJ45_A_3",
+                  "type": "math/booleaninversion",
+                  "name": "math/booleaninversion_3",
                   "inputs": [
                     {
-                      "name": "data_1024",
-                      "type": "byteArray"
+                      "name": "state",
+                      "type": "boolean"
                     }
                   ],
                   "outputs": [
                     {
-                      "name": "data_1024",
-                      "type": "byteArray",
+                      "name": "inverted",
+                      "type": "boolean",
                       "connections": [
                         {
                           "inHunkIndex": 1,
@@ -575,7 +571,7 @@
         {
           "name": "retrycount",
           "type": "number",
-          "value": 1
+          "value": 3
         },
         {
           "name": "retryreset",
@@ -641,56 +637,159 @@
       "states": []
     },
     {
-      "type": "debug/bytearrayoutput",
-      "name": "debug/bytearrayoutput_6",
-      "inputs": [],
+      "type": "debug/timing",
+      "name": "debug/timing_7",
+      "inputs": [
+        {
+          "name": "thru",
+          "type": "boolean"
+        }
+      ],
       "outputs": [
         {
-          "name": "source",
-          "type": "byteArray",
+          "name": "thru",
+          "type": "boolean",
           "connections": [
             {
               "inHunkIndex": 2,
               "inHunkInput": 3
             }
           ]
+        },
+        {
+          "name": "result (ms)",
+          "type": "number",
+          "connections": [
+            {
+              "inHunkIndex": 9,
+              "inHunkInput": 0
+            },
+            {
+              "inHunkIndex": 10,
+              "inHunkInput": 1
+            }
+          ]
         }
       ],
       "states": [
         {
-          "name": "gobutton",
-          "type": "boolean",
-          "value": false
+          "name": "average",
+          "type": "number",
+          "value": 100
         },
         {
-          "name": "prefix",
-          "type": "string",
-          "value": "85, 86, 87, 88"
+          "name": "log",
+          "type": "boolean",
+          "value": true
         }
       ]
     },
     {
-      "type": "debug/logger",
-      "name": "debug/logger_7",
+      "type": "interface/button",
+      "name": "interface/button_7",
       "inputs": [
         {
-          "name": "tolog",
+          "name": "trigger",
           "type": "any"
         }
       ],
+      "outputs": [
+        {
+          "name": "onclick",
+          "type": "boolean",
+          "connections": [
+            {
+              "inHunkIndex": 6,
+              "inHunkInput": 0
+            }
+          ]
+        }
+      ],
+      "states": []
+    },
+    {
+      "type": "output/linechart",
+      "name": "output/linechart_8",
+      "inputs": [
+        {
+          "name": "array",
+          "type": "reference"
+        }
+      ],
       "outputs": [],
       "states": [
         {
-          "name": "prefix",
-          "type": "string",
-          "value": "LOG:"
+          "name": "displayCount",
+          "type": "number",
+          "value": 50
+        }
+      ]
+    },
+    {
+      "type": "primitive/counter",
+      "name": "primitive/counter_9",
+      "inputs": [
+        {
+          "name": "event",
+          "type": "any"
+        },
+        {
+          "name": "reset",
+          "type": "boolean"
+        }
+      ],
+      "outputs": [
+        {
+          "name": "count",
+          "type": "number",
+          "connections": [
+            {
+              "inHunkIndex": 10,
+              "inHunkInput": 0
+            }
+          ]
+        }
+      ],
+      "states": [
+        {
+          "name": "reset",
+          "type": "boolean",
+          "value": false
+        }
+      ]
+    },
+    {
+      "type": "data/accumulator",
+      "name": "data/accumulator_10",
+      "inputs": [
+        {
+          "name": "x",
+          "type": "number"
         },
         {
-          "name": "console",
+          "name": "y",
+          "type": "number"
+        }
+      ],
+      "outputs": [
+        {
+          "name": "accumulated",
+          "type": "reference",
+          "connections": [
+            {
+              "inHunkIndex": 8,
+              "inHunkInput": 0
+            }
+          ]
+        }
+      ],
+      "states": [
+        {
+          "name": "reset",
           "type": "boolean",
-          "value": true
+          "value": false
         }
       ]
     }
   ]
-}
+}
\ No newline at end of file
diff --git a/save/systems/vfptest-03.json b/save/systems/vfptest-03.json
new file mode 100644
index 0000000..acc4a15
--- /dev/null
+++ b/save/systems/vfptest-03.json
@@ -0,0 +1,860 @@
+{
+  "interpreterName": "cuttlefish",
+  "interpreterVersion": "v0.1",
+  "hunks": [
+    {
+      "type": "manager",
+      "name": "nrol",
+      "inputs": [
+        {
+          "name": "msgs",
+          "type": "byteArray"
+        }
+      ],
+      "outputs": [
+        {
+          "name": "msgs",
+          "type": "byteArray",
+          "connections": [
+            {
+              "inHunkIndex": 1,
+              "inHunkInput": 0
+            }
+          ]
+        }
+      ],
+      "states": []
+    },
+    {
+      "type": "view",
+      "name": "tlview",
+      "inputs": [
+        {
+          "name": "msgs",
+          "type": "byteArray"
+        }
+      ],
+      "outputs": [
+        {
+          "name": "msgs",
+          "type": "byteArray",
+          "connections": [
+            {
+              "inHunkIndex": 0,
+              "inHunkInput": 0
+            }
+          ]
+        }
+      ],
+      "states": []
+    },
+    {
+      "type": "link",
+      "name": "link_2",
+      "inputs": [
+        {
+          "name": "data",
+          "type": "byteArray"
+        },
+        {
+          "name": "mgrMsgs",
+          "type": "byteArray"
+        },
+        {
+          "name": "auto_0_3",
+          "type": "byteArray"
+        },
+        {
+          "name": "auto_59_4",
+          "type": "boolean"
+        }
+      ],
+      "outputs": [
+        {
+          "name": "data",
+          "type": "byteArray",
+          "connections": [
+            {
+              "inHunkIndex": 3,
+              "inHunkInput": 0
+            }
+          ]
+        },
+        {
+          "name": "mgrMsgs",
+          "type": "byteArray",
+          "connections": [
+            {
+              "inHunkIndex": 4,
+              "inHunkInput": 0
+            }
+          ]
+        },
+        {
+          "name": "auto_0_2",
+          "type": "byteArray",
+          "connections": [
+            {
+              "inHunkIndex": 5,
+              "inHunkInput": 0
+            }
+          ]
+        },
+        {
+          "name": "auto_229_2",
+          "type": "boolean",
+          "connections": [
+            {
+              "inHunkIndex": 6,
+              "inHunkInput": 0
+            }
+          ]
+        }
+      ],
+      "states": [
+        {
+          "name": "isActive",
+          "type": "boolean",
+          "value": true
+        },
+        {
+          "name": "otherLink",
+          "type": "uint16",
+          "value": 1
+        },
+        {
+          "name": "inputList",
+          "type": "string",
+          "value": "mgrMsgs (byteArray), auto_0_3 (byteArray), auto_59_4 (boolean)"
+        },
+        {
+          "name": "outputList",
+          "type": "string",
+          "value": "mgrMsgs (byteArray), auto_0_2 (byteArray), auto_229_2 (boolean)"
+        }
+      ],
+      "contains": {
+        "interpreterName": "nautilus",
+        "interpreterVersion": "v0.1",
+        "hunks": [
+          {
+            "type": "manager",
+            "name": "nautilus",
+            "inputs": [
+              {
+                "name": "msgs",
+                "type": "byteArray"
+              }
+            ],
+            "outputs": [
+              {
+                "name": "msgs",
+                "type": "byteArray",
+                "connections": [
+                  {
+                    "inHunkIndex": 1,
+                    "inHunkInput": 1
+                  }
+                ]
+              }
+            ],
+            "states": []
+          },
+          {
+            "type": "link",
+            "name": "link_1",
+            "inputs": [
+              {
+                "name": "data",
+                "type": "byteArray"
+              },
+              {
+                "name": "mgrMsgs",
+                "type": "byteArray"
+              },
+              {
+                "name": "auto_0_3",
+                "type": "byteArray"
+              },
+              {
+                "name": "auto_43_3",
+                "type": "boolean"
+              }
+            ],
+            "outputs": [
+              {
+                "name": "data",
+                "type": "byteArray",
+                "connections": [
+                  {
+                    "inHunkIndex": 2,
+                    "inHunkInput": 0
+                  }
+                ]
+              },
+              {
+                "name": "mgrMsgs",
+                "type": "byteArray",
+                "connections": [
+                  {
+                    "inHunkIndex": 0,
+                    "inHunkInput": 0
+                  }
+                ]
+              },
+              {
+                "name": "auto_0_2",
+                "type": "byteArray",
+                "connections": [
+                  {
+                    "inHunkIndex": 3,
+                    "inHunkInput": 1
+                  }
+                ]
+              },
+              {
+                "name": "auto_173_3",
+                "type": "boolean",
+                "connections": [
+                  {
+                    "inHunkIndex": 3,
+                    "inHunkInput": 2
+                  }
+                ]
+              }
+            ],
+            "states": [
+              {
+                "name": "isActive",
+                "type": "boolean",
+                "value": true
+              },
+              {
+                "name": "otherLink",
+                "type": "uint16",
+                "value": 2
+              },
+              {
+                "name": "inputList",
+                "type": "string",
+                "value": "mgrMsgs (byteArray), auto_0_3 (byteArray), auto_43_3 (boolean)"
+              },
+              {
+                "name": "outputList",
+                "type": "string",
+                "value": "mgrMsgs (byteArray), auto_0_2 (byteArray), auto_173_3 (boolean)"
+              }
+            ]
+          },
+          {
+            "type": "comm/websocketserver",
+            "name": "comm/websocketserver_2",
+            "inputs": [
+              {
+                "name": "data",
+                "type": "byteArray"
+              }
+            ],
+            "outputs": [
+              {
+                "name": "data",
+                "type": "byteArray",
+                "connections": [
+                  {
+                    "inHunkIndex": 1,
+                    "inHunkInput": 0
+                  }
+                ]
+              }
+            ],
+            "states": [
+              {
+                "name": "status",
+                "type": "string",
+                "value": "connected"
+              },
+              {
+                "name": "port",
+                "type": "number",
+                "value": 2042
+              }
+            ]
+          },
+          {
+            "type": "link",
+            "name": "link_3",
+            "inputs": [
+              {
+                "name": "data",
+                "type": "byteArray"
+              },
+              {
+                "name": "mgrMsgs",
+                "type": "byteArray"
+              },
+              {
+                "name": "auto_84_3",
+                "type": "boolean"
+              }
+            ],
+            "outputs": [
+              {
+                "name": "data",
+                "type": "byteArray",
+                "connections": [
+                  {
+                    "inHunkIndex": 4,
+                    "inHunkInput": 0
+                  }
+                ]
+              },
+              {
+                "name": "mgrMsgs",
+                "type": "byteArray",
+                "connections": [
+                  {
+                    "inHunkIndex": 1,
+                    "inHunkInput": 2
+                  }
+                ]
+              },
+              {
+                "name": "auto_111_2",
+                "type": "boolean",
+                "connections": [
+                  {
+                    "inHunkIndex": 1,
+                    "inHunkInput": 3
+                  }
+                ]
+              }
+            ],
+            "states": [
+              {
+                "name": "isActive",
+                "type": "boolean",
+                "value": true
+              },
+              {
+                "name": "otherLink",
+                "type": "uint16",
+                "value": 1
+              },
+              {
+                "name": "inputList",
+                "type": "string",
+                "value": "mgrMsgs (byteArray), auto_84_3 (boolean)"
+              },
+              {
+                "name": "outputList",
+                "type": "string",
+                "value": "mgrMsgs (byteArray), auto_111_2 (boolean)"
+              }
+            ],
+            "contains": {
+              "interpreterName": "ponyo",
+              "interpreterVersion": "v0.1",
+              "hunks": [
+                {
+                  "type": "manager",
+                  "name": "ponyo_one",
+                  "inputs": [
+                    {
+                      "name": "mgrMsgs_1024",
+                      "type": "byteArray"
+                    }
+                  ],
+                  "outputs": [
+                    {
+                      "name": "mgrMsgs_1024",
+                      "type": "byteArray",
+                      "connections": [
+                        {
+                          "inHunkIndex": 1,
+                          "inHunkInput": 1
+                        }
+                      ]
+                    }
+                  ],
+                  "states": []
+                },
+                {
+                  "type": "link",
+                  "name": "link_1",
+                  "inputs": [
+                    {
+                      "name": "data_1024",
+                      "type": "byteArray"
+                    },
+                    {
+                      "name": "mgrMsgs_1024",
+                      "type": "byteArray"
+                    },
+                    {
+                      "name": "auto_131_2",
+                      "type": "boolean"
+                    }
+                  ],
+                  "outputs": [
+                    {
+                      "name": "data_1024",
+                      "type": "byteArray",
+                      "connections": [
+                        {
+                          "inHunkIndex": 2,
+                          "inHunkInput": 0
+                        }
+                      ]
+                    },
+                    {
+                      "name": "mgrMsgs_1024",
+                      "type": "byteArray",
+                      "connections": [
+                        {
+                          "inHunkIndex": 0,
+                          "inHunkInput": 0
+                        }
+                      ]
+                    },
+                    {
+                      "name": "auto_13_4",
+                      "type": "boolean",
+                      "connections": [
+                        {
+                          "inHunkIndex": 3,
+                          "inHunkInput": 0
+                        }
+                      ]
+                    }
+                  ],
+                  "states": [
+                    {
+                      "name": "isActive",
+                      "type": "boolean",
+                      "value": true
+                    },
+                    {
+                      "name": "otherLink",
+                      "type": "uint16",
+                      "value": 3
+                    },
+                    {
+                      "name": "inputList",
+                      "type": "string",
+                      "value": "mgrMsgs (byteArray), auto_131_2 (boolean)"
+                    },
+                    {
+                      "name": "outputList",
+                      "type": "string",
+                      "value": "mgrMsgs (byteArray), auto_13_4 (boolean)"
+                    }
+                  ]
+                },
+                {
+                  "type": "comm/COBSerialUSB",
+                  "name": "comm/COBSerialUSB_2",
+                  "inputs": [
+                    {
+                      "name": "data_1024",
+                      "type": "byteArray"
+                    }
+                  ],
+                  "outputs": [
+                    {
+                      "name": "data_1024",
+                      "type": "byteArray",
+                      "connections": [
+                        {
+                          "inHunkIndex": 1,
+                          "inHunkInput": 0
+                        }
+                      ]
+                    }
+                  ],
+                  "states": []
+                },
+                {
+                  "type": "math/booleaninversion",
+                  "name": "math/booleaninversion_3",
+                  "inputs": [
+                    {
+                      "name": "state",
+                      "type": "boolean"
+                    }
+                  ],
+                  "outputs": [
+                    {
+                      "name": "inverted",
+                      "type": "boolean",
+                      "connections": [
+                        {
+                          "inHunkIndex": 1,
+                          "inHunkInput": 2
+                        }
+                      ]
+                    }
+                  ],
+                  "states": []
+                }
+              ]
+            }
+          },
+          {
+            "type": "comm/cobserial",
+            "name": "comm/cobserial_4",
+            "inputs": [
+              {
+                "name": "data",
+                "type": "byteArray"
+              }
+            ],
+            "outputs": [
+              {
+                "name": "data",
+                "type": "byteArray",
+                "connections": [
+                  {
+                    "inHunkIndex": 3,
+                    "inHunkInput": 0
+                  }
+                ]
+              }
+            ],
+            "states": [
+              {
+                "name": "status",
+                "type": "string",
+                "value": "closed"
+              },
+              {
+                "name": "pid",
+                "type": "string",
+                "value": "8022"
+              },
+              {
+                "name": "refresh",
+                "type": "boolean",
+                "value": false
+              }
+            ]
+          }
+        ]
+      }
+    },
+    {
+      "type": "comm/websocketclient",
+      "name": "comm/websocketclient_3",
+      "inputs": [
+        {
+          "name": "data",
+          "type": "byteArray"
+        }
+      ],
+      "outputs": [
+        {
+          "name": "data",
+          "type": "byteArray",
+          "connections": [
+            {
+              "inHunkIndex": 2,
+              "inHunkInput": 0
+            }
+          ]
+        }
+      ],
+      "states": [
+        {
+          "name": "status",
+          "type": "string",
+          "value": "open"
+        },
+        {
+          "name": "retrycount",
+          "type": "number",
+          "value": 3
+        },
+        {
+          "name": "retryreset",
+          "type": "boolean",
+          "value": false
+        },
+        {
+          "name": "address",
+          "type": "string",
+          "value": "127.0.0.1"
+        },
+        {
+          "name": "port",
+          "type": "number",
+          "value": 2042
+        }
+      ]
+    },
+    {
+      "type": "view",
+      "name": "view_4",
+      "inputs": [
+        {
+          "name": "msgs",
+          "type": "byteArray"
+        }
+      ],
+      "outputs": [
+        {
+          "name": "msgs",
+          "type": "byteArray",
+          "connections": [
+            {
+              "inHunkIndex": 2,
+              "inHunkInput": 1
+            }
+          ]
+        }
+      ],
+      "states": []
+    },
+    {
+      "type": "view",
+      "name": "view_5",
+      "inputs": [
+        {
+          "name": "msgs",
+          "type": "byteArray"
+        }
+      ],
+      "outputs": [
+        {
+          "name": "msgs",
+          "type": "byteArray",
+          "connections": [
+            {
+              "inHunkIndex": 2,
+              "inHunkInput": 2
+            }
+          ]
+        }
+      ],
+      "states": []
+    },
+    {
+      "type": "debug/timing",
+      "name": "debug/timing_7",
+      "inputs": [
+        {
+          "name": "thru",
+          "type": "boolean"
+        }
+      ],
+      "outputs": [
+        {
+          "name": "thru",
+          "type": "boolean",
+          "connections": [
+            {
+              "inHunkIndex": 2,
+              "inHunkInput": 3
+            }
+          ]
+        },
+        {
+          "name": "mean (ms)",
+          "type": "number",
+          "connections": [
+            {
+              "inHunkIndex": 8,
+              "inHunkInput": 0
+            },
+            {
+              "inHunkIndex": 9,
+              "inHunkInput": 1
+            }
+          ]
+        },
+        {
+          "name": "variance",
+          "type": "number",
+          "connections": [
+            {
+              "inHunkIndex": 11,
+              "inHunkInput": 1
+            }
+          ]
+        }
+      ],
+      "states": [
+        {
+          "name": "average",
+          "type": "number",
+          "value": 50
+        },
+        {
+          "name": "log",
+          "type": "boolean",
+          "value": false
+        }
+      ]
+    },
+    {
+      "type": "interface/button",
+      "name": "interface/button_7",
+      "inputs": [
+        {
+          "name": "trigger",
+          "type": "any"
+        }
+      ],
+      "outputs": [
+        {
+          "name": "onclick",
+          "type": "boolean",
+          "connections": [
+            {
+              "inHunkIndex": 6,
+              "inHunkInput": 0
+            }
+          ]
+        }
+      ],
+      "states": []
+    },
+    {
+      "type": "primitive/counter",
+      "name": "primitive/counter_9",
+      "inputs": [
+        {
+          "name": "event",
+          "type": "any"
+        },
+        {
+          "name": "reset",
+          "type": "boolean"
+        }
+      ],
+      "outputs": [
+        {
+          "name": "count",
+          "type": "number",
+          "connections": [
+            {
+              "inHunkIndex": 9,
+              "inHunkInput": 0
+            },
+            {
+              "inHunkIndex": 11,
+              "inHunkInput": 0
+            }
+          ]
+        }
+      ],
+      "states": [
+        {
+          "name": "reset",
+          "type": "boolean",
+          "value": false
+        }
+      ]
+    },
+    {
+      "type": "data/accumulator",
+      "name": "data/accumulator_10",
+      "inputs": [
+        {
+          "name": "x",
+          "type": "number"
+        },
+        {
+          "name": "y",
+          "type": "number"
+        }
+      ],
+      "outputs": [
+        {
+          "name": "accumulated",
+          "type": "reference",
+          "connections": [
+            {
+              "inHunkIndex": 12,
+              "inHunkInput": 0
+            }
+          ]
+        }
+      ],
+      "states": [
+        {
+          "name": "reset",
+          "type": "boolean",
+          "value": false
+        }
+      ]
+    },
+    {
+      "type": "output/linechart",
+      "name": "output/linechart_11",
+      "inputs": [
+        {
+          "name": "array",
+          "type": "reference"
+        }
+      ],
+      "outputs": [],
+      "states": [
+        {
+          "name": "displayCount",
+          "type": "number",
+          "value": 50
+        }
+      ]
+    },
+    {
+      "type": "data/accumulator",
+      "name": "data/accumulator_12",
+      "inputs": [
+        {
+          "name": "x",
+          "type": "number"
+        },
+        {
+          "name": "y",
+          "type": "number"
+        }
+      ],
+      "outputs": [
+        {
+          "name": "accumulated",
+          "type": "reference",
+          "connections": [
+            {
+              "inHunkIndex": 10,
+              "inHunkInput": 0
+            }
+          ]
+        }
+      ],
+      "states": [
+        {
+          "name": "reset",
+          "type": "boolean",
+          "value": false
+        }
+      ]
+    },
+    {
+      "type": "output/linechart",
+      "name": "output/linechart_13",
+      "inputs": [
+        {
+          "name": "array",
+          "type": "reference"
+        }
+      ],
+      "outputs": [],
+      "states": [
+        {
+          "name": "displayCount",
+          "type": "number",
+          "value": 50
+        }
+      ]
+    }
+  ]
+}
\ No newline at end of file
diff --git a/save/systems/jog-sg-04.json b/save/systems/vfptest-04.json
similarity index 69%
rename from save/systems/jog-sg-04.json
rename to save/systems/vfptest-04.json
index 9e0016d..0e05963 100644
--- a/save/systems/jog-sg-04.json
+++ b/save/systems/vfptest-04.json
@@ -65,11 +65,7 @@
           "type": "byteArray"
         },
         {
-          "name": "auto_165_3",
-          "type": "boolean"
-        },
-        {
-          "name": "auto_156_3",
+          "name": "auto_59_4",
           "type": "boolean"
         }
       ],
@@ -105,24 +101,14 @@
           ]
         },
         {
-          "name": "auto_187_5",
-          "type": "number",
+          "name": "auto_229_2",
+          "type": "boolean",
           "connections": [
             {
-              "inHunkIndex": 7,
+              "inHunkIndex": 6,
               "inHunkInput": 0
             }
           ]
-        },
-        {
-          "name": "auto_125_3",
-          "type": "uint32",
-          "connections": [
-            {
-              "inHunkIndex": 7,
-              "inHunkInput": 1
-            }
-          ]
         }
       ],
       "states": [
@@ -139,12 +125,12 @@
         {
           "name": "inputList",
           "type": "string",
-          "value": "mgrMsgs (byteArray), auto_0_3 (byteArray), auto_165_3 (boolean), auto_156_3 (boolean)"
+          "value": "mgrMsgs (byteArray), auto_0_3 (byteArray), auto_59_4 (boolean)"
         },
         {
           "name": "outputList",
           "type": "string",
-          "value": "mgrMsgs (byteArray), auto_0_2 (byteArray), auto_187_5 (number), auto_125_3 (uint32)"
+          "value": "mgrMsgs (byteArray), auto_0_2 (byteArray), auto_229_2 (boolean)"
         }
       ],
       "contains": {
@@ -191,12 +177,8 @@
                 "type": "byteArray"
               },
               {
-                "name": "auto_52_5",
-                "type": "number"
-              },
-              {
-                "name": "auto_196_5",
-                "type": "uint32"
+                "name": "auto_43_3",
+                "type": "boolean"
               }
             ],
             "outputs": [
@@ -231,22 +213,12 @@
                 ]
               },
               {
-                "name": "auto_196_3",
-                "type": "boolean",
-                "connections": [
-                  {
-                    "inHunkIndex": 5,
-                    "inHunkInput": 0
-                  }
-                ]
-              },
-              {
-                "name": "auto_239_3",
+                "name": "auto_173_3",
                 "type": "boolean",
                 "connections": [
                   {
-                    "inHunkIndex": 5,
-                    "inHunkInput": 1
+                    "inHunkIndex": 3,
+                    "inHunkInput": 2
                   }
                 ]
               }
@@ -265,12 +237,12 @@
               {
                 "name": "inputList",
                 "type": "string",
-                "value": "mgrMsgs (byteArray), auto_0_3 (byteArray), auto_52_5 (number), auto_196_5 (uint32)"
+                "value": "mgrMsgs (byteArray), auto_0_3 (byteArray), auto_43_3 (boolean)"
               },
               {
                 "name": "outputList",
                 "type": "string",
-                "value": "mgrMsgs (byteArray), auto_0_2 (byteArray), auto_196_3 (boolean), auto_239_3 (boolean)"
+                "value": "mgrMsgs (byteArray), auto_0_2 (byteArray), auto_173_3 (boolean)"
               }
             ]
           },
@@ -321,8 +293,8 @@
                 "type": "byteArray"
               },
               {
-                "name": "auto_147_2",
-                "type": "int32"
+                "name": "auto_84_3",
+                "type": "boolean"
               }
             ],
             "outputs": [
@@ -347,26 +319,12 @@
                 ]
               },
               {
-                "name": "auto_204_3",
-                "type": "int32",
-                "connections": [
-                  {
-                    "inHunkIndex": 5,
-                    "inHunkInput": 2
-                  },
-                  {
-                    "inHunkIndex": 6,
-                    "inHunkInput": 0
-                  }
-                ]
-              },
-              {
-                "name": "auto_100_3",
-                "type": "uint32",
+                "name": "auto_111_2",
+                "type": "boolean",
                 "connections": [
                   {
                     "inHunkIndex": 1,
-                    "inHunkInput": 4
+                    "inHunkInput": 3
                   }
                 ]
               }
@@ -385,12 +343,12 @@
               {
                 "name": "inputList",
                 "type": "string",
-                "value": "mgrMsgs (byteArray), auto_147_2 (int32)"
+                "value": "mgrMsgs (byteArray), auto_84_3 (boolean)"
               },
               {
                 "name": "outputList",
                 "type": "string",
-                "value": "mgrMsgs (byteArray), auto_204_3 (int32), auto_100_3 (uint32)"
+                "value": "mgrMsgs (byteArray), auto_111_2 (boolean)"
               }
             ],
             "contains": {
@@ -433,12 +391,8 @@
                       "type": "byteArray"
                     },
                     {
-                      "name": "auto_142_3",
-                      "type": "int32"
-                    },
-                    {
-                      "name": "auto_106_3",
-                      "type": "uint32"
+                      "name": "auto_131_2",
+                      "type": "boolean"
                     }
                   ],
                   "outputs": [
@@ -463,8 +417,8 @@
                       ]
                     },
                     {
-                      "name": "auto_90_2",
-                      "type": "int32",
+                      "name": "auto_13_4",
+                      "type": "boolean",
                       "connections": [
                         {
                           "inHunkIndex": 3,
@@ -487,12 +441,12 @@
                     {
                       "name": "inputList",
                       "type": "string",
-                      "value": "mgrMsgs (byteArray), auto_142_3 (int32), auto_106_3 (uint32)"
+                      "value": "mgrMsgs (byteArray), auto_131_2 (boolean)"
                     },
                     {
                       "name": "outputList",
                       "type": "string",
-                      "value": "mgrMsgs (byteArray), auto_90_2 (int32)"
+                      "value": "mgrMsgs (byteArray), auto_13_4 (boolean)"
                     }
                   ]
                 },
@@ -520,72 +474,27 @@
                   "states": []
                 },
                 {
-                  "type": "stepper",
-                  "name": "stepper_3",
+                  "type": "math/booleaninversion",
+                  "name": "math/booleaninversion_3",
                   "inputs": [
                     {
-                      "name": "increment",
-                      "type": "int32"
+                      "name": "state",
+                      "type": "boolean"
                     }
                   ],
                   "outputs": [
                     {
-                      "name": "increment",
-                      "type": "int32",
+                      "name": "inverted",
+                      "type": "boolean",
                       "connections": [
                         {
                           "inHunkIndex": 1,
                           "inHunkInput": 2
                         }
                       ]
-                    },
-                    {
-                      "name": "stallGuard",
-                      "type": "uint32",
-                      "connections": [
-                        {
-                          "inHunkIndex": 4,
-                          "inHunkInput": 0
-                        }
-                      ]
-                    }
-                  ],
-                  "states": [
-                    {
-                      "name": "current (6-24)",
-                      "type": "uint16",
-                      "value": 16
-                    }
-                  ]
-                },
-                {
-                  "type": "flow/accumulator",
-                  "name": "flow/accumulator_4",
-                  "inputs": [
-                    {
-                      "name": "stream",
-                      "type": "uint32"
-                    }
-                  ],
-                  "outputs": [
-                    {
-                      "name": "filtered",
-                      "type": "uint32",
-                      "connections": [
-                        {
-                          "inHunkIndex": 1,
-                          "inHunkInput": 3
-                        }
-                      ]
                     }
                   ],
-                  "states": [
-                    {
-                      "name": "tapsize",
-                      "type": "uint16",
-                      "value": 16
-                    }
-                  ]
+                  "states": []
                 }
               ]
             }
@@ -628,115 +537,6 @@
                 "value": false
               }
             ]
-          },
-          {
-            "type": "control/saturnjog",
-            "name": "control/saturnjog_5",
-            "inputs": [
-              {
-                "name": "xNegPressure",
-                "type": "boolean"
-              },
-              {
-                "name": "xPosPressure",
-                "type": "boolean"
-              },
-              {
-                "name": "xStepsMade",
-                "type": "int32"
-              }
-            ],
-            "outputs": [
-              {
-                "name": "xStepsNextIncrement",
-                "type": "int32",
-                "connections": [
-                  {
-                    "inHunkIndex": 3,
-                    "inHunkInput": 2
-                  }
-                ]
-              }
-            ],
-            "states": [
-              {
-                "name": "intervalRunning",
-                "type": "boolean",
-                "value": true
-              },
-              {
-                "name": "startupCount",
-                "type": "number",
-                "value": 5
-              },
-              {
-                "name": "msPerInterval",
-                "type": "number",
-                "value": 20
-              },
-              {
-                "name": "accel (s/s^2)",
-                "type": "number",
-                "value": 4000
-              },
-              {
-                "name": "max (s/s)",
-                "type": "number",
-                "value": 4000
-              }
-            ]
-          },
-          {
-            "type": "primitive/positivevalueof",
-            "name": "primitive/positivevalueof_6",
-            "inputs": [
-              {
-                "name": "og",
-                "type": "number"
-              }
-            ],
-            "outputs": [
-              {
-                "name": "abs",
-                "type": "number",
-                "connections": [
-                  {
-                    "inHunkIndex": 7,
-                    "inHunkInput": 0
-                  }
-                ]
-              }
-            ],
-            "states": []
-          },
-          {
-            "type": "flow/accumulator",
-            "name": "flow/accumulator_7",
-            "inputs": [
-              {
-                "name": "stream",
-                "type": "number"
-              }
-            ],
-            "outputs": [
-              {
-                "name": "filtered",
-                "type": "number",
-                "connections": [
-                  {
-                    "inHunkIndex": 1,
-                    "inHunkInput": 3
-                  }
-                ]
-              }
-            ],
-            "states": [
-              {
-                "name": "tapsize",
-                "type": "number",
-                "value": 4
-              }
-            ]
           }
         ]
       }
@@ -771,7 +571,7 @@
         {
           "name": "retrycount",
           "type": "number",
-          "value": 0
+          "value": 3
         },
         {
           "name": "retryreset",
@@ -837,12 +637,17 @@
       "states": []
     },
     {
-      "type": "interface/arrowpad",
-      "name": "interface/arrowpad_6",
-      "inputs": [],
+      "type": "debug/timing",
+      "name": "debug/timing_7",
+      "inputs": [
+        {
+          "name": "thru",
+          "type": "boolean"
+        }
+      ],
       "outputs": [
         {
-          "name": "left",
+          "name": "thru",
           "type": "boolean",
           "connections": [
             {
@@ -852,55 +657,239 @@
           ]
         },
         {
-          "name": "right",
+          "name": "mean (ms)",
+          "type": "number",
+          "connections": [
+            {
+              "inHunkIndex": 8,
+              "inHunkInput": 0
+            },
+            {
+              "inHunkIndex": 9,
+              "inHunkInput": 2
+            }
+          ]
+        },
+        {
+          "name": "variance",
+          "type": "number",
+          "connections": [
+            {
+              "inHunkIndex": 11,
+              "inHunkInput": 2
+            }
+          ]
+        }
+      ],
+      "states": [
+        {
+          "name": "average",
+          "type": "number",
+          "value": 50
+        },
+        {
+          "name": "log",
+          "type": "boolean",
+          "value": false
+        }
+      ]
+    },
+    {
+      "type": "interface/button",
+      "name": "interface/button_7",
+      "inputs": [
+        {
+          "name": "trigger",
+          "type": "any"
+        }
+      ],
+      "outputs": [
+        {
+          "name": "onclick",
           "type": "boolean",
           "connections": [
             {
-              "inHunkIndex": 2,
-              "inHunkInput": 4
+              "inHunkIndex": 6,
+              "inHunkInput": 0
             }
           ]
+        }
+      ],
+      "states": []
+    },
+    {
+      "type": "primitive/counter",
+      "name": "primitive/counter_9",
+      "inputs": [
+        {
+          "name": "event",
+          "type": "any"
         },
         {
-          "name": "up",
+          "name": "reset",
           "type": "boolean"
-        },
+        }
+      ],
+      "outputs": [
+        {
+          "name": "count",
+          "type": "number",
+          "connections": [
+            {
+              "inHunkIndex": 9,
+              "inHunkInput": 1
+            },
+            {
+              "inHunkIndex": 11,
+              "inHunkInput": 1
+            }
+          ]
+        }
+      ],
+      "states": [
         {
-          "name": "down",
+          "name": "reset",
+          "type": "boolean",
+          "value": false
+        }
+      ]
+    },
+    {
+      "type": "data/accumulator",
+      "name": "data/accumulator_10",
+      "inputs": [
+        {
+          "name": "reset",
           "type": "boolean"
         },
         {
-          "name": "pgup",
-          "type": "boolean"
+          "name": "x",
+          "type": "number"
         },
         {
-          "name": "pgdown",
-          "type": "boolean"
+          "name": "y",
+          "type": "number"
         }
       ],
-      "states": []
+      "outputs": [
+        {
+          "name": "accumulated",
+          "type": "reference",
+          "connections": [
+            {
+              "inHunkIndex": 12,
+              "inHunkInput": 0
+            }
+          ]
+        }
+      ],
+      "states": [
+        {
+          "name": "reset",
+          "type": "boolean",
+          "value": false
+        }
+      ]
     },
     {
       "type": "output/linechart",
-      "name": "output/linechart_7",
+      "name": "output/linechart_11",
       "inputs": [
         {
-          "name": "xVar",
+          "name": "array",
+          "type": "reference"
+        }
+      ],
+      "outputs": [],
+      "states": [
+        {
+          "name": "displayCount",
+          "type": "number",
+          "value": 50
+        }
+      ]
+    },
+    {
+      "type": "data/accumulator",
+      "name": "data/accumulator_12",
+      "inputs": [
+        {
+          "name": "reset",
+          "type": "boolean"
+        },
+        {
+          "name": "x",
           "type": "number"
         },
         {
-          "name": "yVar",
+          "name": "y",
           "type": "number"
         }
       ],
+      "outputs": [
+        {
+          "name": "accumulated",
+          "type": "reference",
+          "connections": [
+            {
+              "inHunkIndex": 10,
+              "inHunkInput": 0
+            }
+          ]
+        }
+      ],
+      "states": [
+        {
+          "name": "reset",
+          "type": "boolean",
+          "value": false
+        }
+      ]
+    },
+    {
+      "type": "output/linechart",
+      "name": "output/linechart_13",
+      "inputs": [
+        {
+          "name": "array",
+          "type": "reference"
+        }
+      ],
       "outputs": [],
       "states": [
         {
-          "name": "keepers",
+          "name": "displayCount",
           "type": "number",
-          "value": 100
+          "value": 50
         }
       ]
+    },
+    {
+      "type": "interface/button",
+      "name": "interface/button_13",
+      "inputs": [
+        {
+          "name": "trigger",
+          "type": "any"
+        }
+      ],
+      "outputs": [
+        {
+          "name": "onclick",
+          "type": "boolean",
+          "connections": [
+            {
+              "inHunkIndex": 9,
+              "inHunkInput": 0
+            },
+            {
+              "inHunkIndex": 11,
+              "inHunkInput": 0
+            }
+          ]
+        }
+      ],
+      "states": []
     }
   ]
 }
\ No newline at end of file
diff --git a/save/systems/vpft-00.json b/save/systems/vpft-00.json
new file mode 100644
index 0000000..1b34e28
--- /dev/null
+++ b/save/systems/vpft-00.json
@@ -0,0 +1,594 @@
+{
+  "interpreterName": "cuttlefish",
+  "interpreterVersion": "v0.1",
+  "hunks": [
+    {
+      "type": "manager",
+      "name": "nrol",
+      "inputs": [
+        {
+          "name": "msgs",
+          "type": "byteArray"
+        }
+      ],
+      "outputs": [
+        {
+          "name": "msgs",
+          "type": "byteArray",
+          "connections": [
+            {
+              "inHunkIndex": 1,
+              "inHunkInput": 0
+            }
+          ]
+        }
+      ],
+      "states": []
+    },
+    {
+      "type": "view",
+      "name": "tlview",
+      "inputs": [
+        {
+          "name": "msgs",
+          "type": "byteArray"
+        }
+      ],
+      "outputs": [
+        {
+          "name": "msgs",
+          "type": "byteArray",
+          "connections": [
+            {
+              "inHunkIndex": 0,
+              "inHunkInput": 0
+            }
+          ]
+        }
+      ],
+      "states": []
+    },
+    {
+      "type": "comm/websocketclient",
+      "name": "comm/websocketclient_2",
+      "inputs": [
+        {
+          "name": "data",
+          "type": "byteArray"
+        }
+      ],
+      "outputs": [
+        {
+          "name": "data",
+          "type": "byteArray",
+          "connections": [
+            {
+              "inHunkIndex": 3,
+              "inHunkInput": 0
+            }
+          ]
+        }
+      ],
+      "states": [
+        {
+          "name": "status",
+          "type": "string",
+          "value": "not connected"
+        },
+        {
+          "name": "retrycount",
+          "type": "number",
+          "value": 0
+        },
+        {
+          "name": "retryreset",
+          "type": "boolean",
+          "value": false
+        },
+        {
+          "name": "address",
+          "type": "string",
+          "value": "127.0.0.1"
+        },
+        {
+          "name": "port",
+          "type": "number",
+          "value": 2042
+        }
+      ]
+    },
+    {
+      "type": "link",
+      "name": "link_3",
+      "inputs": [
+        {
+          "name": "data",
+          "type": "byteArray"
+        },
+        {
+          "name": "mgrMsgs",
+          "type": "byteArray"
+        },
+        {
+          "name": "auto_0_3",
+          "type": "boolean"
+        }
+      ],
+      "outputs": [
+        {
+          "name": "data",
+          "type": "byteArray",
+          "connections": [
+            {
+              "inHunkIndex": 2,
+              "inHunkInput": 0
+            }
+          ]
+        },
+        {
+          "name": "mgrMsgs",
+          "type": "byteArray",
+          "connections": [
+            {
+              "inHunkIndex": 4,
+              "inHunkInput": 0
+            }
+          ]
+        },
+        {
+          "name": "auto_155_2",
+          "type": "boolean",
+          "connections": [
+            {
+              "inHunkIndex": 5,
+              "inHunkInput": 0
+            }
+          ]
+        }
+      ],
+      "states": [
+        {
+          "name": "isActive",
+          "type": "boolean",
+          "value": true
+        },
+        {
+          "name": "otherLink",
+          "type": "uint16",
+          "value": 1
+        },
+        {
+          "name": "inputList",
+          "type": "string",
+          "value": "mgrMsgs (byteArray), auto_0_3 (boolean)"
+        },
+        {
+          "name": "outputList",
+          "type": "string",
+          "value": "mgrMsgs (byteArray), auto_155_2 (boolean)"
+        }
+      ],
+      "contains": {
+        "interpreterName": "ponyo",
+        "interpreterVersion": "v0.1",
+        "hunks": [
+          {
+            "type": "manager",
+            "name": "ponyo_one",
+            "inputs": [
+              {
+                "name": "mgrMsgs_1024",
+                "type": "byteArray"
+              }
+            ],
+            "outputs": [
+              {
+                "name": "mgrMsgs_1024",
+                "type": "byteArray",
+                "connections": [
+                  {
+                    "inHunkIndex": 1,
+                    "inHunkInput": 1
+                  }
+                ]
+              }
+            ],
+            "states": []
+          },
+          {
+            "type": "link",
+            "name": "link_1",
+            "inputs": [
+              {
+                "name": "data_1024",
+                "type": "byteArray"
+              },
+              {
+                "name": "mgrMsgs_1024",
+                "type": "byteArray"
+              },
+              {
+                "name": "auto_83_2",
+                "type": "boolean"
+              }
+            ],
+            "outputs": [
+              {
+                "name": "data_1024",
+                "type": "byteArray",
+                "connections": [
+                  {
+                    "inHunkIndex": 2,
+                    "inHunkInput": 0
+                  }
+                ]
+              },
+              {
+                "name": "mgrMsgs_1024",
+                "type": "byteArray",
+                "connections": [
+                  {
+                    "inHunkIndex": 0,
+                    "inHunkInput": 0
+                  }
+                ]
+              },
+              {
+                "name": "auto_177_3",
+                "type": "boolean",
+                "connections": [
+                  {
+                    "inHunkIndex": 3,
+                    "inHunkInput": 0
+                  }
+                ]
+              }
+            ],
+            "states": [
+              {
+                "name": "isActive",
+                "type": "boolean",
+                "value": true
+              },
+              {
+                "name": "otherLink",
+                "type": "uint16",
+                "value": 3
+              },
+              {
+                "name": "inputList",
+                "type": "string",
+                "value": "mgrMsgs (byteArray), auto_83_2 (boolean)"
+              },
+              {
+                "name": "outputList",
+                "type": "string",
+                "value": "mgrMsgs (byteArray), auto_177_3 (boolean)"
+              }
+            ]
+          },
+          {
+            "type": "comm/COBSerialUSB",
+            "name": "comm/COBSerialUSB_2",
+            "inputs": [
+              {
+                "name": "data_1024",
+                "type": "byteArray"
+              }
+            ],
+            "outputs": [
+              {
+                "name": "data_1024",
+                "type": "byteArray",
+                "connections": [
+                  {
+                    "inHunkIndex": 1,
+                    "inHunkInput": 0
+                  }
+                ]
+              }
+            ],
+            "states": []
+          },
+          {
+            "type": "math/booleaninversion",
+            "name": "math/booleaninversion_3",
+            "inputs": [
+              {
+                "name": "state",
+                "type": "boolean"
+              }
+            ],
+            "outputs": [
+              {
+                "name": "inverted",
+                "type": "boolean",
+                "connections": [
+                  {
+                    "inHunkIndex": 1,
+                    "inHunkInput": 2
+                  }
+                ]
+              }
+            ],
+            "states": []
+          }
+        ]
+      }
+    },
+    {
+      "type": "view",
+      "name": "view_4",
+      "inputs": [
+        {
+          "name": "msgs",
+          "type": "byteArray"
+        }
+      ],
+      "outputs": [
+        {
+          "name": "msgs",
+          "type": "byteArray",
+          "connections": [
+            {
+              "inHunkIndex": 3,
+              "inHunkInput": 1
+            }
+          ]
+        }
+      ],
+      "states": []
+    },
+    {
+      "type": "debug/timing",
+      "name": "debug/timing_5",
+      "inputs": [
+        {
+          "name": "thru",
+          "type": "boolean"
+        }
+      ],
+      "outputs": [
+        {
+          "name": "thru",
+          "type": "boolean",
+          "connections": [
+            {
+              "inHunkIndex": 3,
+              "inHunkInput": 2
+            }
+          ]
+        },
+        {
+          "name": "mean (ms)",
+          "type": "number",
+          "connections": [
+            {
+              "inHunkIndex": 8,
+              "inHunkInput": 0
+            },
+            {
+              "inHunkIndex": 7,
+              "inHunkInput": 2
+            }
+          ]
+        },
+        {
+          "name": "variance",
+          "type": "number",
+          "connections": [
+            {
+              "inHunkIndex": 11,
+              "inHunkInput": 2
+            }
+          ]
+        }
+      ],
+      "states": [
+        {
+          "name": "average",
+          "type": "number",
+          "value": 50
+        },
+        {
+          "name": "log",
+          "type": "boolean",
+          "value": false
+        }
+      ]
+    },
+    {
+      "type": "output/linechart",
+      "name": "output/linechart_6",
+      "inputs": [
+        {
+          "name": "array",
+          "type": "reference"
+        }
+      ],
+      "outputs": [],
+      "states": [
+        {
+          "name": "displayCount",
+          "type": "number",
+          "value": 50
+        }
+      ]
+    },
+    {
+      "type": "data/accumulator",
+      "name": "data/accumulator_7",
+      "inputs": [
+        {
+          "name": "reset",
+          "type": "boolean"
+        },
+        {
+          "name": "x",
+          "type": "number"
+        },
+        {
+          "name": "y",
+          "type": "number"
+        }
+      ],
+      "outputs": [
+        {
+          "name": "accumulated",
+          "type": "reference",
+          "connections": [
+            {
+              "inHunkIndex": 6,
+              "inHunkInput": 0
+            }
+          ]
+        }
+      ],
+      "states": [
+        {
+          "name": "reset",
+          "type": "boolean",
+          "value": false
+        }
+      ]
+    },
+    {
+      "type": "primitive/increment",
+      "name": "primitive/increment_8",
+      "inputs": [
+        {
+          "name": "increment",
+          "type": "number"
+        }
+      ],
+      "outputs": [
+        {
+          "name": "value",
+          "type": "number",
+          "connections": [
+            {
+              "inHunkIndex": 7,
+              "inHunkInput": 1
+            },
+            {
+              "inHunkIndex": 11,
+              "inHunkInput": 1
+            }
+          ]
+        }
+      ],
+      "states": [
+        {
+          "name": "reset",
+          "type": "boolean",
+          "value": false
+        }
+      ]
+    },
+    {
+      "type": "interface/button",
+      "name": "interface/button_9",
+      "inputs": [
+        {
+          "name": "trigger",
+          "type": "any"
+        }
+      ],
+      "outputs": [
+        {
+          "name": "onclick",
+          "type": "boolean",
+          "connections": [
+            {
+              "inHunkIndex": 5,
+              "inHunkInput": 0
+            }
+          ]
+        }
+      ],
+      "states": []
+    },
+    {
+      "type": "output/linechart",
+      "name": "output/linechart_10",
+      "inputs": [
+        {
+          "name": "array",
+          "type": "reference"
+        }
+      ],
+      "outputs": [],
+      "states": [
+        {
+          "name": "displayCount",
+          "type": "number",
+          "value": 50
+        }
+      ]
+    },
+    {
+      "type": "data/accumulator",
+      "name": "data/accumulator_11",
+      "inputs": [
+        {
+          "name": "reset",
+          "type": "boolean"
+        },
+        {
+          "name": "x",
+          "type": "number"
+        },
+        {
+          "name": "y",
+          "type": "number"
+        }
+      ],
+      "outputs": [
+        {
+          "name": "accumulated",
+          "type": "reference",
+          "connections": [
+            {
+              "inHunkIndex": 10,
+              "inHunkInput": 0
+            }
+          ]
+        }
+      ],
+      "states": [
+        {
+          "name": "reset",
+          "type": "boolean",
+          "value": false
+        }
+      ]
+    },
+    {
+      "type": "interface/button",
+      "name": "interface/button_12",
+      "inputs": [
+        {
+          "name": "trigger",
+          "type": "any"
+        }
+      ],
+      "outputs": [
+        {
+          "name": "onclick",
+          "type": "boolean",
+          "connections": [
+            {
+              "inHunkIndex": 7,
+              "inHunkInput": 0
+            },
+            {
+              "inHunkIndex": 11,
+              "inHunkInput": 0
+            }
+          ]
+        }
+      ],
+      "states": []
+    }
+  ]
+}
\ No newline at end of file
diff --git a/typeset.js b/typeset.js
index 9b76892..06097b1 100644
--- a/typeset.js
+++ b/typeset.js
@@ -19,7 +19,7 @@ const checkBoolean = (value) => {
 }
 
 const checkNumber = (value) => {
-  if (typeof value !== 'number') throw new Error(`for uint8 cannot cast non-number into physical world "${value}", ${typeof value}`)
+  if (typeof value !== 'number') throw new Error(`cannot cast non-number into physical world "${value}", ${typeof value}`)
 }
 
 const checkString = (value) => {
@@ -162,12 +162,7 @@ const TSET = [{
     read: function(arr, start) {
       // assume we're reading out of an array
       // start[] should === key
-      if (arr[start] !== this.key) {
-        console.log("erroneous bytes:", arr)
-        console.log("error at byte:", start, "is", arr[start])
-        console.log("expected key:", this.key)
-        throw new Error(`mismatched key on phy read: ${arr[start]}, ${this.key}`)
-      }
+      if (arr[start] !== this.key) throw new Error(`mismatched key on phy read: ${arr[start]}, ${this.key}`)
       if (arr[start + 1] > 255 || arr[start + 1] < 0) throw new Error('whaky read-in on uint8')
       return {
         item: arr[start + 1],
@@ -179,7 +174,7 @@ const TSET = [{
     name: 'uint16',
     key: 40,
     write: function(value) {
-      if (typeof value !== 'number') throw new Error(`cannot cast non-number into physical world "${value}"`)
+      if (typeof value !== 'number') throw new Error(`cannot cast non-number into physical world "${value}", ${typeof value}`)
       if (value > 65536 || value < 0) throw new Error('num too large to represent with cast type, will contencate')
       let tparr = new Uint16Array(1)
       tparr[0] = value
@@ -192,12 +187,7 @@ const TSET = [{
     read: function(arr, start) {
       // assume we're reading out of an array
       // start[] should === key
-      if (arr[start] !== this.key) {
-        console.log("erroneous bytes:", arr)
-        console.log("error at byte:", start, "is", arr[start])
-        console.log("expected key:", this.key)
-        throw new Error(`mismatched key on phy read: ${arr[start]}, ${this.key}`)
-      }
+      if (arr[start] !== this.key) throw new Error(`mismatched key on phy read: ${arr[start]}, ${this.key}`)
       let rdarr = arr.slice(start + 1, start + 3)
       let btarr = Uint8Array.from(rdarr)
       if (tsdebug) console.log('bytes on read of uint16 (little eadian)', btarr)
@@ -214,7 +204,7 @@ const TSET = [{
     name: 'uint32',
     key: 42,
     write: function(value) {
-      if (typeof value !== 'number') throw new Error('cannot cast non-number into physical world')
+      if (typeof value !== 'number') throw new Error(`cannot cast non-number into physical world "${value}", ${typeof value}`)
       if (value > 4294967296) throw new Error('num too large to represent with cast type, will contencate')
       let tparr = new Uint32Array(1)
       tparr[0] = value
@@ -257,7 +247,7 @@ const TSET = [{
     name: 'int32',
     key: 50,
     write: function(value) {
-      if (typeof value !== 'number') throw new Error('cannot cast non-number into physical world')
+      if (typeof value !== 'number') throw new Error(`cannot cast non-number into physical world "${value}", ${typeof value}`)
       let tparr = new Int32Array(1)
       tparr[0] = value
       let btarr = new Uint8Array(tparr.buffer)
@@ -270,12 +260,7 @@ const TSET = [{
     read: function(arr, start) {
       // assume we're reading out of an array
       // start[] should === key
-      if (arr[start] !== this.key) {
-        console.log("erroneous bytes:", arr)
-        console.log("error at byte:", start, "is", arr[start])
-        console.log("expected key:", this.key)
-        throw new Error(`mismatched key on phy read: ${arr[start]}, ${this.key}`)
-      }
+      if (arr[start] !== this.key) throw new Error(`mismatched key on phy read: ${arr[start]}, ${this.key}`)
       let rdarr = arr.slice(start + 1, start + 5)
       let btarr = Uint8Array.from(rdarr)
       if (tsdebug) console.log('bts on read of uint32', btarr)
@@ -298,7 +283,7 @@ const TSET = [{
     name: 'number',
     key: 56,
     write: function(value) {
-      if (typeof value !== 'number') throw new Error('cannot cast non-number into physical world')
+      if (typeof value !== 'number') throw new Error(`cannot cast non-number into physical world "${value}", ${typeof value}`)
       let tparr = new Float64Array(1)
       tparr[0] = value
       let btarr = new Uint8Array(tparr.buffer)
@@ -308,12 +293,7 @@ const TSET = [{
       return rtarr
     },
     read: function(arr, start) {
-      if (arr[start] !== this.key) {
-        console.log("erroneous bytes:", arr)
-        console.log("error at byte:", start, "is", arr[start])
-        console.log("expected key:", this.key)
-        throw new Error(`mismatched key on phy read: ${arr[start]}, ${this.key}`)
-      }
+      if (arr[start] !== this.key) throw new Error(`mismatched key on phy read: ${arr[start]}, ${this.key}`)
       let rdarr = arr.slice(start + 1, start + 9)
       let btarr = Uint8Array.from(rdarr)
       if (tsdebug) console.log('bts on read of float64', btarr)
@@ -413,29 +393,23 @@ const MK = {
   ERR: 254, // (str) message
   // heartbeats, wakeup
   HELLO: 231, // (eom)
-  
   // request a top-level description
   QUERY: 251, // (eom)
   BRIEF: 250, // (str) name of interpreter, # hunks, # links (and then begin firing list back)
   // please show what is available
   REQLISTAVAIL: 249, // (eom)
   LISTOFAVAIL: 248, // (list)(str) names 'dirs/like/this' (includes programs ?) (this might be multiple packets?)
-
   // business ... we should be able to centralize all control w/i view.js if we can write these
   REQADDHUNK: 247, // (str) name
   REQNAMECHANGE: 246,
   HUNKALIVE: 245, // (hunkdescription): name, id, inputlist, outputlist, statelist
   HUNKREPLACE: 244,
-
   REQSTATECHANGE: 243,
   HUNKSTATECHANGE: 242,
-
   REQRMHUNK: 241, // (str) id
   HUNKREMOVED: 240, // (str) id
-
   REQADDLINK: 239, // (str) id, (str) outname, (str) id, (str) inname
   LINKALIVE: 238, // (str) id, (str) outname, (str) id, (str) inname
-
   REQRMLINK: 237, // (str) id, (str) outname, (str) id, (str) inname
   LINKREMOVED: 236, // (str) id, (str) outname, (str) id, (str) inname
   // to id,
diff --git a/view/vptch.js b/view/vptch.js
index 1686cb2..646982e 100644
--- a/view/vptch.js
+++ b/view/vptch.js
@@ -190,6 +190,7 @@ function PatchSet(View, MsgBox) {
               if (!existing) {
                 try {
                   //console.log('add conn from', opHunkIndex, opIndex, inHunkIndex, inIndex)
+                  // TODO: sometimes hunks change, and inputs go away ... we need to catch those errs here 
                   await view.requestAddLink(opDef, ipDef)
                 } catch (err) {
                   reject(err)
@@ -234,11 +235,13 @@ function PatchSet(View, MsgBox) {
           resolve(defs)
         }).catch((errmsg) => {
           // link catch
-          reject(`mergePatch error during link loading; ${errmsg}`)
+          reject(`mergePatch error during link loading;`)
+          console.log(errmsg)
         })
       }).catch((errmsg) => {
         // hunk catch
         reject(`mergePatch error during hunk loading; ${errmsg}`)
+        console.log(errmsg)
       })
       // continue loading ... write a bootload of messages, in queu, waiting for each response?
     })
-- 
GitLab