From 92abfe2d5765d7a40ac5e81e5a383d34b3681a3e Mon Sep 17 00:00:00 2001
From: Jake Read <jake.read@cba.mit.edu>
Date: Sun, 5 Jul 2020 12:18:12 -0400
Subject: [PATCH] gitignore for dex, keep systems

---
 .gitignore                            |   5 +
 save/systems/chart-adhoc-compare.json | 103 -----
 save/systems/dive-l1-a.json           | 561 --------------------------
 save/systems/dive-l1-e.json           | 525 ------------------------
 save/systems/errplots.json            | 268 ++++++++++++
 save/systems/step-test-00.json        | 396 ------------------
 6 files changed, 273 insertions(+), 1585 deletions(-)
 delete mode 100644 save/systems/chart-adhoc-compare.json
 delete mode 100644 save/systems/dive-l1-a.json
 delete mode 100644 save/systems/dive-l1-e.json
 create mode 100644 save/systems/errplots.json
 delete mode 100644 save/systems/step-test-00.json

diff --git a/.gitignore b/.gitignore
index c2658d7..9f2e40e 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1 +1,6 @@
 node_modules/
+save/contexts/*
+save/old-systems
+scratch/
+package.json
+package-lock.json
diff --git a/save/systems/chart-adhoc-compare.json b/save/systems/chart-adhoc-compare.json
deleted file mode 100644
index b16ba9b..0000000
--- a/save/systems/chart-adhoc-compare.json
+++ /dev/null
@@ -1,103 +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"
-            }
-          ]
-        }
-      ]
-    },
-    {
-      "type": "view",
-      "name": "tlview",
-      "inputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": "0",
-              "inHunkInput": "0"
-            }
-          ]
-        }
-      ]
-    },
-    {
-      "type": "adhoc/open-dex-json",
-      "name": "adhoc/open-dex-json_5",
-      "outputs": [
-        {
-          "name": "data",
-          "type": "reference",
-          "connections": [
-            {
-              "inHunkIndex": "4",
-              "inHunkInput": "0"
-            }
-          ]
-        }
-      ]
-    },
-    {
-      "type": "adhoc/open-4411-csv",
-      "name": "adhoc/open-4411-csv_5",
-      "outputs": [
-        {
-          "name": "data",
-          "type": "reference",
-          "connections": [
-            {
-              "inHunkIndex": "4",
-              "inHunkInput": "1"
-            }
-          ]
-        }
-      ]
-    },
-    {
-      "type": "adhoc/2x_linechart",
-      "name": "adhoc/2x_linechart_5",
-      "inputs": [
-        {
-          "name": "array",
-          "type": "reference"
-        },
-        {
-          "name": "array",
-          "type": "reference"
-        }
-      ],
-      "states": [
-        {
-          "name": "displayCount",
-          "type": "number",
-          "value": "50"
-        }
-      ]
-    }
-  ]
-}
\ No newline at end of file
diff --git a/save/systems/dive-l1-a.json b/save/systems/dive-l1-a.json
deleted file mode 100644
index 6ed13c3..0000000
--- a/save/systems/dive-l1-a.json
+++ /dev/null
@@ -1,561 +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"
-            }
-          ]
-        }
-      ]
-    },
-    {
-      "type": "view",
-      "name": "tlview",
-      "inputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": "0",
-              "inHunkInput": "0"
-            }
-          ]
-        }
-      ]
-    },
-    {
-      "type": "pipes/vfptc",
-      "name": "pipes/vfptc_2",
-      "inputs": [
-        {
-          "name": "data",
-          "type": "byteArray"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "data",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": "3",
-              "inHunkInput": "0"
-            }
-          ]
-        }
-      ],
-      "states": [
-        {
-          "name": "pipe status",
-          "type": "string",
-          "value": "open"
-        },
-        {
-          "name": "websocket port",
-          "type": "string",
-          "value": "2042"
-        },
-        {
-          "name": "usb product id",
-          "type": "string",
-          "value": "8022"
-        },
-        {
-          "name": "pipe reset",
-          "type": "boolean",
-          "value": "false"
-        },
-        {
-          "name": "serialport status",
-          "type": "string",
-          "value": "open"
-        }
-      ]
-    },
-    {
-      "type": "link",
-      "name": "link_3",
-      "inputs": [
-        {
-          "name": "data",
-          "type": "byteArray"
-        },
-        {
-          "name": "mgrMsgs",
-          "type": "byteArray"
-        },
-        {
-          "name": "auto_54_2",
-          "type": "byteArray"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "data",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": "2",
-              "inHunkInput": "0"
-            }
-          ]
-        },
-        {
-          "name": "mgrMsgs",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": "4",
-              "inHunkInput": "0"
-            }
-          ]
-        },
-        {
-          "name": "auto_92_3",
-          "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_54_2 (byteArray)"
-        },
-        {
-          "name": "outputList",
-          "type": "string",
-          "value": "mgrMsgs (byteArray), auto_92_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"
-                  }
-                ]
-              }
-            ]
-          },
-          {
-            "type": "link",
-            "name": "link_1",
-            "inputs": [
-              {
-                "name": "data_1024",
-                "type": "byteArray"
-              },
-              {
-                "name": "mgrMsgs_1024",
-                "type": "byteArray"
-              },
-              {
-                "name": "auto_117_3_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_120_2_512",
-                "type": "byteArray",
-                "connections": [
-                  {
-                    "inHunkIndex": "4",
-                    "inHunkInput": "1"
-                  }
-                ]
-              }
-            ],
-            "states": [
-              {
-                "name": "isActive",
-                "type": "boolean",
-                "value": "true"
-              },
-              {
-                "name": "otherLink",
-                "type": "uint16",
-                "value": "3"
-              },
-              {
-                "name": "inputList",
-                "type": "string",
-                "value": "mgrMsgs (byteArray), auto_117_3 (byteArray)"
-              },
-              {
-                "name": "outputList",
-                "type": "string",
-                "value": "mgrMsgs (byteArray), auto_120_2 (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"
-                  }
-                ]
-              }
-            ]
-          },
-          {
-            "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"
-                  }
-                ]
-              }
-            ]
-          },
-          {
-            "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"
-                        }
-                      ]
-                    }
-                  ]
-                },
-                {
-                  "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"
-                        }
-                      ]
-                    }
-                  ]
-                },
-                {
-                  "type": "stepper",
-                  "name": "step_driver",
-                  "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"
-                    }
-                  ]
-                }
-              ]
-            }
-          }
-        ]
-      }
-    },
-    {
-      "type": "view",
-      "name": "view_4",
-      "inputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": "3",
-              "inHunkInput": "1"
-            }
-          ]
-        }
-      ]
-    },
-    {
-      "type": "view",
-      "name": "view_5",
-      "inputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": "3",
-              "inHunkInput": "2"
-            }
-          ]
-        }
-      ]
-    }
-  ]
-}
\ No newline at end of file
diff --git a/save/systems/dive-l1-e.json b/save/systems/dive-l1-e.json
deleted file mode 100644
index e0b072d..0000000
--- a/save/systems/dive-l1-e.json
+++ /dev/null
@@ -1,525 +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"
-            }
-          ]
-        }
-      ]
-    },
-    {
-      "type": "view",
-      "name": "tlview",
-      "inputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": "0",
-              "inHunkInput": "0"
-            }
-          ]
-        }
-      ]
-    },
-    {
-      "type": "pipes/vfptc",
-      "name": "pipes/vfptc_2",
-      "inputs": [
-        {
-          "name": "data",
-          "type": "byteArray"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "data",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": "3",
-              "inHunkInput": "0"
-            }
-          ]
-        }
-      ],
-      "states": [
-        {
-          "name": "pipe status",
-          "type": "string",
-          "value": "open"
-        },
-        {
-          "name": "websocket port",
-          "type": "string",
-          "value": "2042"
-        },
-        {
-          "name": "usb product id",
-          "type": "string",
-          "value": "8022"
-        },
-        {
-          "name": "pipe reset",
-          "type": "boolean",
-          "value": "false"
-        },
-        {
-          "name": "serialport status",
-          "type": "string",
-          "value": "open"
-        }
-      ]
-    },
-    {
-      "type": "link",
-      "name": "link_3",
-      "inputs": [
-        {
-          "name": "data",
-          "type": "byteArray"
-        },
-        {
-          "name": "mgrMsgs",
-          "type": "byteArray"
-        },
-        {
-          "name": "auto_5_2",
-          "type": "byteArray"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "data",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": "2",
-              "inHunkInput": "0"
-            }
-          ]
-        },
-        {
-          "name": "mgrMsgs",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": "4",
-              "inHunkInput": "0"
-            }
-          ]
-        },
-        {
-          "name": "auto_164_3",
-          "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_5_2 (byteArray)"
-        },
-        {
-          "name": "outputList",
-          "type": "string",
-          "value": "mgrMsgs (byteArray), auto_164_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"
-                  }
-                ]
-              }
-            ]
-          },
-          {
-            "type": "link",
-            "name": "link_1",
-            "inputs": [
-              {
-                "name": "data_1024",
-                "type": "byteArray"
-              },
-              {
-                "name": "mgrMsgs_1024",
-                "type": "byteArray"
-              },
-              {
-                "name": "auto_168_3_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_8_2_512",
-                "type": "byteArray",
-                "connections": [
-                  {
-                    "inHunkIndex": "3",
-                    "inHunkInput": "1"
-                  }
-                ]
-              }
-            ],
-            "states": [
-              {
-                "name": "isActive",
-                "type": "boolean",
-                "value": "true"
-              },
-              {
-                "name": "otherLink",
-                "type": "uint16",
-                "value": "3"
-              },
-              {
-                "name": "inputList",
-                "type": "string",
-                "value": "mgrMsgs (byteArray), auto_168_3 (byteArray)"
-              },
-              {
-                "name": "outputList",
-                "type": "string",
-                "value": "mgrMsgs (byteArray), auto_8_2 (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"
-                  }
-                ]
-              }
-            ]
-          },
-          {
-            "type": "link",
-            "name": "link_3",
-            "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": "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"
-                        }
-                      ]
-                    }
-                  ]
-                },
-                {
-                  "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/COBSerialRJ45_A",
-                  "name": "comm/COBSerialRJ45_A_2",
-                  "inputs": [
-                    {
-                      "name": "data_1024",
-                      "type": "byteArray"
-                    }
-                  ],
-                  "outputs": [
-                    {
-                      "name": "data_1024",
-                      "type": "byteArray",
-                      "connections": [
-                        {
-                          "inHunkIndex": "1",
-                          "inHunkInput": "0"
-                        }
-                      ]
-                    }
-                  ]
-                }
-              ]
-            }
-          },
-          {
-            "type": "comm/COBSerialRJ45_E",
-            "name": "comm/COBSerialRJ45_E_4",
-            "inputs": [
-              {
-                "name": "data_1024",
-                "type": "byteArray"
-              }
-            ],
-            "outputs": [
-              {
-                "name": "data_1024",
-                "type": "byteArray",
-                "connections": [
-                  {
-                    "inHunkIndex": "3",
-                    "inHunkInput": "0"
-                  }
-                ]
-              }
-            ]
-          }
-        ]
-      }
-    },
-    {
-      "type": "view",
-      "name": "view_4",
-      "inputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": "3",
-              "inHunkInput": "1"
-            }
-          ]
-        }
-      ]
-    },
-    {
-      "type": "view",
-      "name": "view_5",
-      "inputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": "3",
-              "inHunkInput": "2"
-            }
-          ]
-        }
-      ]
-    }
-  ]
-}
\ No newline at end of file
diff --git a/save/systems/errplots.json b/save/systems/errplots.json
new file mode 100644
index 0000000..35bc646
--- /dev/null
+++ b/save/systems/errplots.json
@@ -0,0 +1,268 @@
+{
+  "interpreterName": "cuttlefish",
+  "interpreterVersion": "v0.4ever",
+  "open": "false",
+  "size": {
+    "x": "900",
+    "y": "400"
+  },
+  "hunks": [
+    {
+      "name": "cuttlefish",
+      "type": "manager",
+      "inputs": [
+        {
+          "name": "msgs",
+          "type": "byteArray"
+        }
+      ],
+      "outputs": [
+        {
+          "name": "msgs",
+          "type": "byteArray",
+          "conn": [
+            [
+              "1",
+              "0"
+            ]
+          ]
+        }
+      ],
+      "position": {
+        "x": "250",
+        "y": "25"
+      }
+    },
+    {
+      "name": "tlview",
+      "type": "view",
+      "inputs": [
+        {
+          "name": "msgs",
+          "type": "byteArray"
+        }
+      ],
+      "outputs": [
+        {
+          "name": "msgs",
+          "type": "byteArray",
+          "conn": [
+            [
+              "0",
+              "0"
+            ]
+          ]
+        }
+      ],
+      "position": {
+        "x": "250",
+        "y": "70"
+      }
+    },
+    {
+      "name": "data/accumulator_4",
+      "type": "data/accumulator",
+      "inputs": [
+        {
+          "name": "reset",
+          "type": "boolean"
+        },
+        {
+          "name": "x",
+          "type": "number"
+        },
+        {
+          "name": "y",
+          "type": "number"
+        }
+      ],
+      "outputs": [
+        {
+          "name": "accumulated",
+          "type": "reference",
+          "conn": [
+            [
+              "4",
+              "0"
+            ]
+          ]
+        }
+      ],
+      "states": [
+        {
+          "name": "reset",
+          "type": "boolean",
+          "value": "false"
+        }
+      ],
+      "position": {
+        "x": "1000.7797052849759",
+        "y": "83.06075530940743"
+      }
+    },
+    {
+      "name": "statemachines/pendulum_4",
+      "type": "statemachines/pendulum",
+      "outputs": [
+        {
+          "name": "time",
+          "type": "number",
+          "conn": [
+            [
+              "2",
+              "1"
+            ],
+            [
+              "5",
+              "1"
+            ]
+          ]
+        },
+        {
+          "name": "error",
+          "type": "number",
+          "conn": [
+            [
+              "2",
+              "2"
+            ]
+          ]
+        },
+        {
+          "name": "error'",
+          "type": "number",
+          "conn": [
+            [
+              "5",
+              "2"
+            ]
+          ]
+        }
+      ],
+      "states": [
+        {
+          "name": "reset",
+          "type": "boolean",
+          "value": "false"
+        },
+        {
+          "name": "running",
+          "type": "boolean",
+          "value": "true"
+        },
+        {
+          "name": "PID",
+          "type": "boolean",
+          "value": "true"
+        },
+        {
+          "name": "input attack",
+          "type": "number",
+          "value": "9.8"
+        },
+        {
+          "name": "P",
+          "type": "number",
+          "value": "500"
+        },
+        {
+          "name": "I",
+          "type": "number",
+          "value": "0"
+        },
+        {
+          "name": "D",
+          "type": "number",
+          "value": "0.5"
+        }
+      ],
+      "position": {
+        "x": "350",
+        "y": "150"
+      }
+    },
+    {
+      "name": "data/lineChart_5",
+      "type": "data/lineChart",
+      "inputs": [
+        {
+          "name": "array",
+          "type": "reference"
+        }
+      ],
+      "states": [
+        {
+          "name": "displayCount",
+          "type": "number",
+          "value": "500"
+        }
+      ],
+      "position": {
+        "x": "1528.7992798791818",
+        "y": "-19.289681346356474"
+      }
+    },
+    {
+      "name": "data/accumulator_5",
+      "type": "data/accumulator",
+      "inputs": [
+        {
+          "name": "reset",
+          "type": "boolean"
+        },
+        {
+          "name": "x",
+          "type": "number"
+        },
+        {
+          "name": "y",
+          "type": "number"
+        }
+      ],
+      "outputs": [
+        {
+          "name": "accumulated",
+          "type": "reference",
+          "conn": [
+            [
+              "6",
+              "0"
+            ]
+          ]
+        }
+      ],
+      "states": [
+        {
+          "name": "reset",
+          "type": "boolean",
+          "value": "false"
+        }
+      ],
+      "position": {
+        "x": "996.4002047265035",
+        "y": "212.01858537258778"
+      }
+    },
+    {
+      "name": "data/lineChart_6",
+      "type": "data/lineChart",
+      "inputs": [
+        {
+          "name": "array",
+          "type": "reference"
+        }
+      ],
+      "states": [
+        {
+          "name": "displayCount",
+          "type": "number",
+          "value": "500"
+        }
+      ],
+      "position": {
+        "x": "1533.4047836668767",
+        "y": "573.571028387651"
+      }
+    }
+  ]
+}
\ No newline at end of file
diff --git a/save/systems/step-test-00.json b/save/systems/step-test-00.json
deleted file mode 100644
index 71bcbec..0000000
--- a/save/systems/step-test-00.json
+++ /dev/null
@@ -1,396 +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"
-            }
-          ]
-        }
-      ]
-    },
-    {
-      "type": "view",
-      "name": "tlview",
-      "inputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": "0",
-              "inHunkInput": "0"
-            }
-          ]
-        }
-      ]
-    },
-    {
-      "type": "pipes/vfptc",
-      "name": "pipes/vfptc_2",
-      "inputs": [
-        {
-          "name": "data",
-          "type": "byteArray"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "data",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": "3",
-              "inHunkInput": "0"
-            }
-          ]
-        }
-      ],
-      "states": [
-        {
-          "name": "pipe status",
-          "type": "string",
-          "value": "open"
-        },
-        {
-          "name": "websocket port",
-          "type": "string",
-          "value": "2042"
-        },
-        {
-          "name": "usb product id",
-          "type": "string",
-          "value": "8022"
-        },
-        {
-          "name": "pipe reset",
-          "type": "boolean",
-          "value": "false"
-        },
-        {
-          "name": "serialport status",
-          "type": "string",
-          "value": "open"
-        }
-      ]
-    },
-    {
-      "type": "link",
-      "name": "link_3",
-      "inputs": [
-        {
-          "name": "data",
-          "type": "byteArray"
-        },
-        {
-          "name": "mgrMsgs",
-          "type": "byteArray"
-        },
-        {
-          "name": "inc",
-          "type": "int32"
-        }
-      ],
-      "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), inc (int32)"
-        },
-        {
-          "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"
-                  }
-                ]
-              }
-            ]
-          },
-          {
-            "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"
-                  }
-                ]
-              },
-              {
-                "name": "inc",
-                "type": "int32",
-                "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)"
-              },
-              {
-                "name": "outputList",
-                "type": "string",
-                "value": "mgrMsgs (byteArray), inc (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"
-                  }
-                ]
-              }
-            ]
-          },
-          {
-            "type": "stepper",
-            "name": "step_driver",
-            "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"
-              }
-            ]
-          }
-        ]
-      }
-    },
-    {
-      "type": "view",
-      "name": "view_4",
-      "inputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": "3",
-              "inHunkInput": "1"
-            }
-          ]
-        }
-      ]
-    },
-    {
-      "type": "flowcontrol/syncpressure",
-      "name": "flowcontrol/syncpressure_5",
-      "outputs": [
-        {
-          "name": "number",
-          "type": "number",
-          "connections": [
-            {
-              "inHunkIndex": "6",
-              "inHunkInput": "0"
-            },
-            {
-              "inHunkIndex": "3",
-              "inHunkInput": "2"
-            }
-          ]
-        }
-      ],
-      "states": [
-        {
-          "name": "run",
-          "type": "boolean",
-          "value": "false"
-        },
-        {
-          "name": "types",
-          "type": "string",
-          "value": "type, value sets OK"
-        },
-        {
-          "name": "types",
-          "type": "string",
-          "value": "number"
-        },
-        {
-          "name": "values",
-          "type": "string",
-          "value": "10"
-        }
-      ]
-    },
-    {
-      "type": "data/log_numbers",
-      "name": "data/log_numbers_6",
-      "inputs": [
-        {
-          "name": "tolog",
-          "type": "number"
-        }
-      ],
-      "states": [
-        {
-          "name": "console",
-          "type": "boolean",
-          "value": "false"
-        }
-      ]
-    }
-  ]
-}
\ No newline at end of file
-- 
GitLab