Reserialized components with default names
authorDaniel Kirschten <daniel.kirschten@gmx.de>
Thu, 5 Sep 2019 22:44:28 +0000 (00:44 +0200)
committerDaniel Kirschten <daniel.kirschten@gmx.de>
Thu, 5 Sep 2019 22:44:28 +0000 (00:44 +0200)
18 files changed:
net.mograsim.logic.model.am2900/Am2904Testbench.json
net.mograsim.logic.model.am2900/components/net/mograsim/logic/model/am2900/components/Am2900.json
net.mograsim.logic.model.am2900/components/net/mograsim/logic/model/am2900/components/am2901/Am2901.json
net.mograsim.logic.model.am2900/components/net/mograsim/logic/model/am2900/components/am2904/Am2904.json
net.mograsim.logic.model.am2900/components/net/mograsim/logic/model/am2900/components/am2904/Am2904MSR.json
net.mograsim.logic.model.am2900/components/net/mograsim/logic/model/am2900/components/am2904/Am2904TestLogic.json
net.mograsim.logic.model.am2900/components/net/mograsim/logic/model/am2900/components/am2904/Am2904muSR.json
net.mograsim.logic.model.am2900/components/net/mograsim/logic/model/am2900/components/dff12_we.json
net.mograsim.logic.model.am2900/components/net/mograsim/logic/model/am2900/components/dff16_invwe.json
net.mograsim.logic.model.am2900/components/net/mograsim/logic/model/am2900/components/dff4.json
net.mograsim.logic.model.am2900/components/net/mograsim/logic/model/am2900/components/dff4_invwe.json
net.mograsim.logic.model.am2900/components/net/mograsim/logic/model/am2900/components/mux1_12.json
net.mograsim.logic.model.am2900/components/net/mograsim/logic/model/am2900/components/mux1_16.json
net.mograsim.logic.model.am2900/components/net/mograsim/logic/model/am2900/components/mux2.json
net.mograsim.logic.model.am2900/components/net/mograsim/logic/model/am2900/components/mux2_4.json
net.mograsim.logic.model.am2900/components/net/mograsim/logic/model/am2900/components/mux3.json
net.mograsim.logic.model.am2900/components/net/mograsim/logic/model/am2900/components/sel1.json
net.mograsim.logic.model.am2900/src/net/mograsim/logic/model/examples/ReserializeJSONsSettingUsages.java

index 4875d9c..eddb94b 100644 (file)
@@ -7,7 +7,7 @@
     "components": [
       {
         "id": "Am2904",
-        "name": "Am2904",
+        "name": "Am2904#0",
         "pos": {
           "x": 220.0,
           "y": 175.0
           "pinName": ""
         },
         "pin2": {
-          "compName": "Am2904",
+          "compName": "Am2904#0",
           "pinName": "_OEY"
         },
         "name": "unnamedWire#0",
           "pinName": ""
         },
         "pin2": {
-          "compName": "Am2904",
+          "compName": "Am2904#0",
           "pinName": "C"
         },
         "name": "unnamedWire#1",
       },
       {
         "pin1": {
-          "compName": "Am2904",
+          "compName": "Am2904#0",
           "pinName": "_EOVR"
         },
         "pin2": {
           "pinName": ""
         },
         "pin2": {
-          "compName": "Am2904",
+          "compName": "Am2904#0",
           "pinName": "_EN"
         },
         "name": "unnamedWire#11",
           "pinName": "O"
         },
         "pin2": {
-          "compName": "Am2904",
+          "compName": "Am2904#0",
           "pinName": "I"
         },
         "name": "unnamedWire#12",
           "pinName": ""
         },
         "pin2": {
-          "compName": "Am2904",
+          "compName": "Am2904#0",
           "pinName": "Cx"
         },
         "name": "unnamedWire#13",
       },
       {
         "pin1": {
-          "compName": "Am2904",
+          "compName": "Am2904#0",
           "pinName": "YOVR"
         },
         "pin2": {
           "pinName": ""
         },
         "pin2": {
-          "compName": "Am2904",
+          "compName": "Am2904#0",
           "pinName": "YN"
         },
         "name": "unnamedWire#15",
       },
       {
         "pin1": {
-          "compName": "Am2904",
+          "compName": "Am2904#0",
           "pinName": "YZ"
         },
         "pin2": {
       },
       {
         "pin1": {
-          "compName": "Am2904",
+          "compName": "Am2904#0",
           "pinName": "CT"
         },
         "pin2": {
       },
       {
         "pin1": {
-          "compName": "Am2904",
+          "compName": "Am2904#0",
           "pinName": "C0"
         },
         "pin2": {
           "pinName": ""
         },
         "pin2": {
-          "compName": "Am2904",
+          "compName": "Am2904#0",
           "pinName": "IZ"
         },
         "name": "unnamedWire#2",
       },
       {
         "pin1": {
-          "compName": "Am2904",
+          "compName": "Am2904#0",
           "pinName": "SIOn"
         },
         "pin2": {
           "pinName": ""
         },
         "pin2": {
-          "compName": "Am2904",
+          "compName": "Am2904#0",
           "pinName": "QIOn"
         },
         "name": "unnamedWire#22",
       },
       {
         "pin1": {
-          "compName": "Am2904",
+          "compName": "Am2904#0",
           "pinName": "IC"
         },
         "pin2": {
           "pinName": ""
         },
         "pin2": {
-          "compName": "Am2904",
+          "compName": "Am2904#0",
           "pinName": "IN"
         },
         "name": "unnamedWire#4",
           "pinName": ""
         },
         "pin2": {
-          "compName": "Am2904",
+          "compName": "Am2904#0",
           "pinName": "SIO0"
         },
         "name": "unnamedWire#40",
       },
       {
         "pin1": {
-          "compName": "Am2904",
+          "compName": "Am2904#0",
           "pinName": "QIO0"
         },
         "pin2": {
       },
       {
         "pin1": {
-          "compName": "Am2904",
+          "compName": "Am2904#0",
           "pinName": "IOVR"
         },
         "pin2": {
           "pinName": ""
         },
         "pin2": {
-          "compName": "Am2904",
+          "compName": "Am2904#0",
           "pinName": "_CEM"
         },
         "name": "unnamedWire#6",
       },
       {
         "pin1": {
-          "compName": "Am2904",
+          "compName": "Am2904#0",
           "pinName": "YC"
         },
         "pin2": {
       },
       {
         "pin1": {
-          "compName": "Am2904",
+          "compName": "Am2904#0",
           "pinName": "_CEmu"
         },
         "pin2": {
       },
       {
         "pin1": {
-          "compName": "Am2904",
+          "compName": "Am2904#0",
           "pinName": "_SE"
         },
         "pin2": {
           "pinName": ""
         },
         "pin2": {
-          "compName": "Am2904",
+          "compName": "Am2904#0",
           "pinName": "_OECT"
         },
         "name": "unnamedWire#75",
       },
       {
         "pin1": {
-          "compName": "Am2904",
+          "compName": "Am2904#0",
           "pinName": "_EZ"
         },
         "pin2": {
       },
       {
         "pin1": {
-          "compName": "Am2904",
+          "compName": "Am2904#0",
           "pinName": "_EC"
         },
         "pin2": {
index 8b6e7fb..61e5e22 100644 (file)
@@ -5,21 +5,9 @@
   "innerScale": 0.4,
   "submodel": {
     "components": [
-      {
-        "id": "Clock",
-        "name": "Clock#0",
-        "pos": {
-          "x": 155.0,
-          "y": 246.0
-        },
-        "params": {
-          "delta": 1000,
-          "orientation": "DOWN"
-        }
-      },
       {
         "id": "Am2901",
-        "name": "DeserializedSubmodelComponent#0",
+        "name": "Am2901#0",
         "pos": {
           "x": 420.0,
           "y": 240.0
       },
       {
         "id": "Am2901",
-        "name": "DeserializedSubmodelComponent#1",
+        "name": "Am2901#1",
         "pos": {
           "x": 485.0,
           "y": 240.0
         }
       },
-      {
-        "id": "mux1_4",
-        "name": "DeserializedSubmodelComponent#10",
-        "pos": {
-          "x": 320.0,
-          "y": 15.0
-        }
-      },
-      {
-        "id": "mux1_4",
-        "name": "DeserializedSubmodelComponent#11",
-        "pos": {
-          "x": 320.0,
-          "y": 120.0
-        }
-      },
-      {
-        "id": "dff12_we",
-        "name": "DeserializedSubmodelComponent#12",
-        "pos": {
-          "x": 290.0,
-          "y": 485.0
-        }
-      },
-      {
-        "id": "mux1_12",
-        "name": "DeserializedSubmodelComponent#13",
-        "pos": {
-          "x": 170.0,
-          "y": 495.0
-        }
-      },
       {
         "id": "Am2901",
-        "name": "DeserializedSubmodelComponent#2",
+        "name": "Am2901#2",
         "pos": {
           "x": 550.0,
           "y": 240.0
@@ -75,7 +31,7 @@
       },
       {
         "id": "Am2901",
-        "name": "DeserializedSubmodelComponent#3",
+        "name": "Am2901#3",
         "pos": {
           "x": 615.0,
           "y": 240.0
@@ -83,7 +39,7 @@
       },
       {
         "id": "Am2904",
-        "name": "DeserializedSubmodelComponent#4",
+        "name": "Am2904#0",
         "pos": {
           "x": 240.0,
           "y": 241.0
       },
       {
         "id": "Am2910",
-        "name": "DeserializedSubmodelComponent#5",
+        "name": "Am2910#0",
         "pos": {
           "x": 100.0,
           "y": 351.0
         }
       },
       {
-        "id": "and",
-        "name": "DeserializedSubmodelComponent#6",
-        "pos": {
-          "x": 665.0,
-          "y": 501.0
-        }
-      },
-      {
-        "id": "and",
-        "name": "DeserializedSubmodelComponent#7",
-        "pos": {
-          "x": 550.0,
-          "y": 541.0
-        }
-      },
-      {
-        "id": "and",
-        "name": "DeserializedSubmodelComponent#8",
-        "pos": {
-          "x": 730.0,
-          "y": 526.0
-        }
-      },
-      {
-        "id": "dff16_invwe",
-        "name": "DeserializedSubmodelComponent#9",
+        "id": "Clock",
+        "name": "Clock#0",
         "pos": {
-          "x": 135.0,
-          "y": 106.0
+          "x": 155.0,
+          "y": 246.0
+        },
+        "params": {
+          "delta": 1000,
+          "orientation": "DOWN"
         }
       },
       {
       },
       {
         "id": "FixedOutput",
-        "name": "FixedOutput#11",
+        "name": "FixedOutput#2",
         "pos": {
-          "x": 210.0,
-          "y": 281.0
+          "x": 70.0,
+          "y": 346.0
         },
         "params": {
           "bits": [
-            "ZERO"
+            "ONE"
           ]
         }
       },
         "id": "FixedOutput",
         "name": "FixedOutput#3",
         "pos": {
-          "x": 70.0,
-          "y": 346.0
+          "x": 175.0,
+          "y": 396.0
         },
         "params": {
           "bits": [
       },
       {
         "id": "FixedOutput",
-        "name": "FixedOutput#5",
+        "name": "FixedOutput#4",
         "pos": {
-          "x": 175.0,
-          "y": 396.0
+          "x": 140.0,
+          "y": 431.0
         },
         "params": {
           "bits": [
-            "ONE"
+            "ZERO"
           ]
         }
       },
       {
         "id": "FixedOutput",
-        "name": "FixedOutput#7",
+        "name": "FixedOutput#5",
         "pos": {
-          "x": 140.0,
-          "y": 431.0
+          "x": 210.0,
+          "y": 316.0
         },
         "params": {
           "bits": [
       },
       {
         "id": "FixedOutput",
-        "name": "FixedOutput#9",
+        "name": "FixedOutput#6",
         "pos": {
           "x": 210.0,
-          "y": 316.0
+          "y": 281.0
         },
         "params": {
           "bits": [
         },
         "params": 4
       },
+      {
+        "id": "and",
+        "name": "and#0",
+        "pos": {
+          "x": 665.0,
+          "y": 501.0
+        }
+      },
+      {
+        "id": "and",
+        "name": "and#1",
+        "pos": {
+          "x": 550.0,
+          "y": 541.0
+        }
+      },
+      {
+        "id": "and",
+        "name": "and#2",
+        "pos": {
+          "x": 730.0,
+          "y": 526.0
+        }
+      },
+      {
+        "id": "dff12_we",
+        "name": "dff12_we#0",
+        "pos": {
+          "x": 290.0,
+          "y": 485.0
+        }
+      },
+      {
+        "id": "dff16_invwe",
+        "name": "dff16_invwe#0",
+        "pos": {
+          "x": 135.0,
+          "y": 106.0
+        }
+      },
       {
         "id": "inc12",
         "name": "inc12#0",
           "x": 245.0,
           "y": 525.0
         }
+      },
+      {
+        "id": "mux1_12",
+        "name": "mux1_12#0",
+        "pos": {
+          "x": 170.0,
+          "y": 495.0
+        }
+      },
+      {
+        "id": "mux1_4",
+        "name": "mux1_4#0",
+        "pos": {
+          "x": 320.0,
+          "y": 15.0
+        }
+      },
+      {
+        "id": "mux1_4",
+        "name": "mux1_4#1",
+        "pos": {
+          "x": 320.0,
+          "y": 120.0
+        }
       }
     ],
     "wires": [
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#4",
+          "compName": "Am2904#0",
           "pinName": "CT"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#5",
+          "compName": "Am2910#0",
           "pinName": "_CC"
         },
         "name": "unnamedWire#0",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#0",
+          "compName": "Am2901#0",
           "pinName": "Qn+3"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#1",
+          "compName": "Am2901#1",
           "pinName": "Qn"
         },
         "name": "unnamedWire#1",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#4",
+          "compName": "Am2904#0",
           "pinName": "QIOn"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#3",
+          "compName": "Am2901#3",
           "pinName": "Qn+3"
         },
         "name": "unnamedWire#10",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#2",
+          "compName": "Am2901#2",
           "pinName": "B0"
         },
         "pin2": {
           "pinName": "O0"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#2",
+          "compName": "Am2901#2",
           "pinName": "A3"
         },
         "name": "unnamedWire#101",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#2",
+          "compName": "Am2901#2",
           "pinName": "A2"
         },
         "pin2": {
           "pinName": "O2"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#2",
+          "compName": "Am2901#2",
           "pinName": "A1"
         },
         "name": "unnamedWire#103",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#2",
+          "compName": "Am2901#2",
           "pinName": "A0"
         },
         "pin2": {
           "pinName": "O3"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#3",
+          "compName": "Am2901#3",
           "pinName": "A0"
         },
         "name": "unnamedWire#105",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#3",
+          "compName": "Am2901#3",
           "pinName": "A1"
         },
         "pin2": {
           "pinName": "O1"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#3",
+          "compName": "Am2901#3",
           "pinName": "A2"
         },
         "name": "unnamedWire#107",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#3",
+          "compName": "Am2901#3",
           "pinName": "A3"
         },
         "pin2": {
           "pinName": "O3"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#3",
+          "compName": "Am2901#3",
           "pinName": "B0"
         },
         "name": "unnamedWire#109",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#4",
+          "compName": "Am2904#0",
           "pinName": "IN"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#3",
+          "compName": "Am2901#3",
           "pinName": "F3"
         },
         "name": "unnamedWire#11",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#3",
+          "compName": "Am2901#3",
           "pinName": "B1"
         },
         "pin2": {
           "pinName": "O1"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#3",
+          "compName": "Am2901#3",
           "pinName": "B2"
         },
         "name": "unnamedWire#111",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#3",
+          "compName": "Am2901#3",
           "pinName": "B3"
         },
         "pin2": {
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#0",
+          "compName": "Am2901#0",
           "pinName": "F\u003d0"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#7",
+          "compName": "and#1",
           "pinName": "B"
         },
         "name": "unnamedWire#12",
           "pinName": "Y"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#12",
+          "compName": "dff12_we#0",
           "pinName": "WE"
         },
         "name": "unnamedWire#127",
           "pinName": "Y"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#12",
+          "compName": "dff12_we#0",
           "pinName": "D"
         },
         "name": "unnamedWire#128",
           "pinName": "A"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#13",
+          "compName": "mux1_12#0",
           "pinName": "Y"
         },
         "name": "unnamedWire#129",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#1",
+          "compName": "Am2901#1",
           "pinName": "F\u003d0"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#7",
+          "compName": "and#1",
           "pinName": "A"
         },
         "name": "unnamedWire#13",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#13",
+          "compName": "mux1_12#0",
           "pinName": "I1"
         },
         "pin2": {
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#13",
+          "compName": "mux1_12#0",
           "pinName": "S"
         },
         "pin2": {
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#12",
+          "compName": "dff12_we#0",
           "pinName": "Q"
         },
         "pin2": {
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#7",
+          "compName": "and#1",
           "pinName": "Y"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#8",
+          "compName": "and#2",
           "pinName": "B"
         },
         "name": "unnamedWire#14",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#8",
+          "compName": "and#2",
           "pinName": "A"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#6",
+          "compName": "and#0",
           "pinName": "Y"
         },
         "name": "unnamedWire#15",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#6",
+          "compName": "and#0",
           "pinName": "B"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#2",
+          "compName": "Am2901#2",
           "pinName": "F\u003d0"
         },
         "name": "unnamedWire#16",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#3",
+          "compName": "Am2901#3",
           "pinName": "F\u003d0"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#6",
+          "compName": "and#0",
           "pinName": "A"
         },
         "name": "unnamedWire#17",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#8",
+          "compName": "and#2",
           "pinName": "Y"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#4",
+          "compName": "Am2904#0",
           "pinName": "IZ"
         },
         "name": "unnamedWire#18",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#3",
+          "compName": "Am2901#3",
           "pinName": "OVR"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#4",
+          "compName": "Am2904#0",
           "pinName": "IOVR"
         },
         "name": "unnamedWire#19",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#0",
+          "compName": "Am2901#0",
           "pinName": "RAMn+3"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#1",
+          "compName": "Am2901#1",
           "pinName": "RAMn"
         },
         "name": "unnamedWire#2",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#3",
+          "compName": "Am2901#3",
           "pinName": "Cn+4"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#4",
+          "compName": "Am2904#0",
           "pinName": "IC"
         },
         "name": "unnamedWire#20",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#0",
+          "compName": "Am2901#0",
           "pinName": "Cn+4"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#1",
+          "compName": "Am2901#1",
           "pinName": "Cn"
         },
         "name": "unnamedWire#21",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#1",
+          "compName": "Am2901#1",
           "pinName": "Cn+4"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#2",
+          "compName": "Am2901#2",
           "pinName": "Cn"
         },
         "name": "unnamedWire#22",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#2",
+          "compName": "Am2901#2",
           "pinName": "Cn+4"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#3",
+          "compName": "Am2901#3",
           "pinName": "Cn"
         },
         "name": "unnamedWire#23",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#4",
+          "compName": "Am2904#0",
           "pinName": "C"
         },
         "pin2": {
           "pinName": ""
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#3",
+          "compName": "Am2901#3",
           "pinName": "C"
         },
         "name": "unnamedWire#26",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#2",
+          "compName": "Am2901#2",
           "pinName": "C"
         },
         "pin2": {
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#1",
+          "compName": "Am2901#1",
           "pinName": "C"
         },
         "pin2": {
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#1",
+          "compName": "Am2901#1",
           "pinName": "Qn+3"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#2",
+          "compName": "Am2901#2",
           "pinName": "Qn"
         },
         "name": "unnamedWire#3",
           "pinName": ""
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#0",
+          "compName": "Am2901#0",
           "pinName": "C"
         },
         "name": "unnamedWire#31",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#0",
+          "compName": "Am2901#0",
           "pinName": "Cn"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#4",
+          "compName": "Am2904#0",
           "pinName": "C0"
         },
         "name": "unnamedWire#33",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#5",
+          "compName": "Am2910#0",
           "pinName": "C"
         },
         "pin2": {
           "pinName": "out"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#4",
+          "compName": "Am2904#0",
           "pinName": "_OECT"
         },
         "name": "unnamedWire#35",
       },
       {
         "pin1": {
-          "compName": "FixedOutput#3",
+          "compName": "FixedOutput#2",
           "pinName": "out"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#5",
+          "compName": "Am2910#0",
           "pinName": "_RLD"
         },
         "name": "unnamedWire#36",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#5",
+          "compName": "Am2910#0",
           "pinName": "CI"
         },
         "pin2": {
-          "compName": "FixedOutput#5",
+          "compName": "FixedOutput#3",
           "pinName": "out"
         },
         "name": "unnamedWire#37",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#5",
+          "compName": "Am2910#0",
           "pinName": "_OE"
         },
         "pin2": {
-          "compName": "FixedOutput#7",
+          "compName": "FixedOutput#4",
           "pinName": "out"
         },
         "name": "unnamedWire#38",
       },
       {
         "pin1": {
-          "compName": "FixedOutput#9",
+          "compName": "FixedOutput#5",
           "pinName": "out"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#4",
+          "compName": "Am2904#0",
           "pinName": "_SE"
         },
         "name": "unnamedWire#39",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#2",
+          "compName": "Am2901#2",
           "pinName": "RAMn"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#1",
+          "compName": "Am2901#1",
           "pinName": "RAMn+3"
         },
         "name": "unnamedWire#4",
       },
       {
         "pin1": {
-          "compName": "FixedOutput#11",
+          "compName": "FixedOutput#6",
           "pinName": "out"
         },
         "pin2": {
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#4",
+          "compName": "Am2904#0",
           "pinName": "_EZ"
         },
         "pin2": {
           "pinName": ""
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#4",
+          "compName": "Am2904#0",
           "pinName": "_EOVR"
         },
         "name": "unnamedWire#42",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#4",
+          "compName": "Am2904#0",
           "pinName": "_EC"
         },
         "pin2": {
           "pinName": ""
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#4",
+          "compName": "Am2904#0",
           "pinName": "_EN"
         },
         "name": "unnamedWire#44",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#9",
+          "compName": "dff16_invwe#0",
           "pinName": "Q"
         },
         "pin2": {
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#3",
+          "compName": "Am2901#3",
           "pinName": "RAMn"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#2",
+          "compName": "Am2901#2",
           "pinName": "RAMn+3"
         },
         "name": "unnamedWire#5",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#2",
+          "compName": "Am2901#2",
           "pinName": "Qn+3"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#3",
+          "compName": "Am2901#3",
           "pinName": "Qn"
         },
         "name": "unnamedWire#6",
           "pinName": "O3"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#10",
+          "compName": "mux1_4#0",
           "pinName": "I0_1"
         },
         "name": "unnamedWire#63",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#10",
+          "compName": "mux1_4#0",
           "pinName": "I0_2"
         },
         "pin2": {
           "pinName": "O1"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#10",
+          "compName": "mux1_4#0",
           "pinName": "I0_3"
         },
         "name": "unnamedWire#65",
           "pinName": "O0"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#10",
+          "compName": "mux1_4#0",
           "pinName": "I0_4"
         },
         "name": "unnamedWire#66",
           "pinName": "O3"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#11",
+          "compName": "mux1_4#1",
           "pinName": "I0_1"
         },
         "name": "unnamedWire#67",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#11",
+          "compName": "mux1_4#1",
           "pinName": "I0_2"
         },
         "pin2": {
           "pinName": "O1"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#11",
+          "compName": "mux1_4#1",
           "pinName": "I0_3"
         },
         "name": "unnamedWire#69",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#0",
+          "compName": "Am2901#0",
           "pinName": "Qn"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#4",
+          "compName": "Am2904#0",
           "pinName": "QIO0"
         },
         "name": "unnamedWire#7",
           "pinName": "O0"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#11",
+          "compName": "mux1_4#1",
           "pinName": "I0_4"
         },
         "name": "unnamedWire#70",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#10",
+          "compName": "mux1_4#0",
           "pinName": "Y1"
         },
         "pin2": {
           "pinName": "I2"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#10",
+          "compName": "mux1_4#0",
           "pinName": "Y2"
         },
         "name": "unnamedWire#74",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#10",
+          "compName": "mux1_4#0",
           "pinName": "Y3"
         },
         "pin2": {
           "pinName": "I0"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#10",
+          "compName": "mux1_4#0",
           "pinName": "Y4"
         },
         "name": "unnamedWire#76",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#11",
+          "compName": "mux1_4#1",
           "pinName": "Y1"
         },
         "pin2": {
           "pinName": "I2"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#11",
+          "compName": "mux1_4#1",
           "pinName": "Y2"
         },
         "name": "unnamedWire#78",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#11",
+          "compName": "mux1_4#1",
           "pinName": "Y3"
         },
         "pin2": {
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#4",
+          "compName": "Am2904#0",
           "pinName": "SIO0"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#0",
+          "compName": "Am2901#0",
           "pinName": "RAMn"
         },
         "name": "unnamedWire#8",
           "pinName": "I0"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#11",
+          "compName": "mux1_4#1",
           "pinName": "Y4"
         },
         "name": "unnamedWire#80",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#0",
+          "compName": "Am2901#0",
           "pinName": "B3"
         },
         "pin2": {
           "pinName": "O1"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#0",
+          "compName": "Am2901#0",
           "pinName": "B2"
         },
         "name": "unnamedWire#82",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#0",
+          "compName": "Am2901#0",
           "pinName": "B1"
         },
         "pin2": {
           "pinName": "O3"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#0",
+          "compName": "Am2901#0",
           "pinName": "B0"
         },
         "name": "unnamedWire#84",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#0",
+          "compName": "Am2901#0",
           "pinName": "A3"
         },
         "pin2": {
           "pinName": "O1"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#0",
+          "compName": "Am2901#0",
           "pinName": "A2"
         },
         "name": "unnamedWire#86",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#0",
+          "compName": "Am2901#0",
           "pinName": "A1"
         },
         "pin2": {
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#0",
+          "compName": "Am2901#0",
           "pinName": "A0"
         },
         "pin2": {
           "pinName": "O3"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#1",
+          "compName": "Am2901#1",
           "pinName": "A0"
         },
         "name": "unnamedWire#89",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#4",
+          "compName": "Am2904#0",
           "pinName": "SIOn"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#3",
+          "compName": "Am2901#3",
           "pinName": "RAMn+3"
         },
         "name": "unnamedWire#9",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#1",
+          "compName": "Am2901#1",
           "pinName": "A1"
         },
         "pin2": {
           "pinName": "O1"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#1",
+          "compName": "Am2901#1",
           "pinName": "A2"
         },
         "name": "unnamedWire#91",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#1",
+          "compName": "Am2901#1",
           "pinName": "A3"
         },
         "pin2": {
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#1",
+          "compName": "Am2901#1",
           "pinName": "B0"
         },
         "pin2": {
           "pinName": "O2"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#1",
+          "compName": "Am2901#1",
           "pinName": "B1"
         },
         "name": "unnamedWire#94",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#1",
+          "compName": "Am2901#1",
           "pinName": "B2"
         },
         "pin2": {
           "pinName": "O0"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#1",
+          "compName": "Am2901#1",
           "pinName": "B3"
         },
         "name": "unnamedWire#96",
           "pinName": "O0"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#2",
+          "compName": "Am2901#2",
           "pinName": "B3"
         },
         "name": "unnamedWire#97",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#2",
+          "compName": "Am2901#2",
           "pinName": "B2"
         },
         "pin2": {
           "pinName": "O2"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#2",
+          "compName": "Am2901#2",
           "pinName": "B1"
         },
         "name": "unnamedWire#99",
index e3e7243..2dd6a59 100644 (file)
       },
       {
         "id": "TriStateBuffer",
-        "name": "TriStateBuffer#3",
+        "name": "TriStateBuffer#2",
         "pos": {
           "x": 300.0,
           "y": 2515.0
       },
       {
         "id": "TriStateBuffer",
-        "name": "TriStateBuffer#4",
+        "name": "TriStateBuffer#3",
         "pos": {
           "x": 300.0,
           "y": 2310.0
           "pinName": ""
         },
         "pin2": {
-          "compName": "TriStateBuffer#3",
+          "compName": "TriStateBuffer#2",
           "pinName": "IN"
         },
         "name": "unnamedWire#135",
       },
       {
         "pin1": {
-          "compName": "TriStateBuffer#3",
+          "compName": "TriStateBuffer#2",
           "pinName": "OUT"
         },
         "pin2": {
       },
       {
         "pin1": {
-          "compName": "TriStateBuffer#3",
+          "compName": "TriStateBuffer#2",
           "pinName": "EN"
         },
         "pin2": {
           "pinName": ""
         },
         "pin2": {
-          "compName": "TriStateBuffer#4",
+          "compName": "TriStateBuffer#3",
           "pinName": "IN"
         },
         "name": "unnamedWire#171",
       },
       {
         "pin1": {
-          "compName": "TriStateBuffer#4",
+          "compName": "TriStateBuffer#3",
           "pinName": "OUT"
         },
         "pin2": {
           "pinName": ""
         },
         "pin2": {
-          "compName": "TriStateBuffer#4",
+          "compName": "TriStateBuffer#3",
           "pinName": "EN"
         },
         "name": "unnamedWire#95",
index 64a8478..50cdcfb 100644 (file)
   "innerScale": 0.2,
   "submodel": {
     "components": [
+      {
+        "id": "Am2904MSR",
+        "name": "Am2904MSR#0",
+        "pos": {
+          "x": 225.0,
+          "y": 95.0
+        }
+      },
       {
         "id": "Am2904RegCTInstrDecode",
         "name": "Am2904RegCTInstrDecode#0",
           "y": 360.0
         }
       },
+      {
+        "id": "Am2904TestLogic",
+        "name": "Am2904TestLogic#0",
+        "pos": {
+          "x": 225.0,
+          "y": 340.0
+        }
+      },
+      {
+        "id": "Am2904muSR",
+        "name": "Am2904muSR#0",
+        "pos": {
+          "x": 270.0,
+          "y": 250.0
+        }
+      },
       {
         "id": "BitDisplay",
         "name": "BitDisplay#0",
         },
         "params": 1
       },
-      {
-        "id": "Am2904MSR",
-        "name": "DeserializedSubmodelComponent#0",
-        "pos": {
-          "x": 225.0,
-          "y": 95.0
-        }
-      },
-      {
-        "id": "Am2904muSR",
-        "name": "DeserializedSubmodelComponent#1",
-        "pos": {
-          "x": 270.0,
-          "y": 250.0
-        }
-      },
-      {
-        "id": "xor",
-        "name": "DeserializedSubmodelComponent#10",
-        "pos": {
-          "x": 455.0,
-          "y": 355.0
-        }
-      },
-      {
-        "id": "mux1",
-        "name": "DeserializedSubmodelComponent#11",
-        "pos": {
-          "x": 265.0,
-          "y": 515.0
-        }
-      },
-      {
-        "id": "xor",
-        "name": "DeserializedSubmodelComponent#12",
-        "pos": {
-          "x": 315.0,
-          "y": 505.0
-        }
-      },
-      {
-        "id": "mux1",
-        "name": "DeserializedSubmodelComponent#13",
-        "pos": {
-          "x": 365.0,
-          "y": 485.0
-        }
-      },
-      {
-        "id": "mux1",
-        "name": "DeserializedSubmodelComponent#14",
-        "pos": {
-          "x": 415.0,
-          "y": 465.0
-        }
-      },
-      {
-        "id": "mux2",
-        "name": "DeserializedSubmodelComponent#15",
-        "pos": {
-          "x": 435.0,
-          "y": 575.0
-        }
-      },
-      {
-        "id": "mux2",
-        "name": "DeserializedSubmodelComponent#16",
-        "pos": {
-          "x": 435.0,
-          "y": 655.0
-        }
-      },
-      {
-        "id": "mux1",
-        "name": "DeserializedSubmodelComponent#17",
-        "pos": {
-          "x": 190.0,
-          "y": 460.0
-        }
-      },
-      {
-        "id": "mux1",
-        "name": "DeserializedSubmodelComponent#18",
-        "pos": {
-          "x": 135.0,
-          "y": 470.0
-        }
-      },
-      {
-        "id": "and",
-        "name": "DeserializedSubmodelComponent#2",
-        "pos": {
-          "x": 380.0,
-          "y": 125.0
-        }
-      },
-      {
-        "id": "xor",
-        "name": "DeserializedSubmodelComponent#21",
-        "pos": {
-          "x": 250.0,
-          "y": 820.0
-        }
-      },
-      {
-        "id": "mux2",
-        "name": "DeserializedSubmodelComponent#22",
-        "pos": {
-          "x": 120.0,
-          "y": 720.0
-        }
-      },
-      {
-        "id": "mux3",
-        "name": "DeserializedSubmodelComponent#23",
-        "pos": {
-          "x": 300.0,
-          "y": 715.0
-        }
-      },
-      {
-        "id": "mux1_4",
-        "name": "DeserializedSubmodelComponent#3",
-        "pos": {
-          "x": 470.0,
-          "y": 160.0
-        }
-      },
-      {
-        "id": "not4",
-        "name": "DeserializedSubmodelComponent#4",
-        "pos": {
-          "x": 135.0,
-          "y": 40.0
-        }
-      },
-      {
-        "id": "mux1_4",
-        "name": "DeserializedSubmodelComponent#5",
-        "pos": {
-          "x": 415.0,
-          "y": 210.0
-        }
-      },
-      {
-        "id": "Am2904TestLogic",
-        "name": "DeserializedSubmodelComponent#6",
-        "pos": {
-          "x": 225.0,
-          "y": 340.0
-        }
-      },
-      {
-        "id": "mux3",
-        "name": "DeserializedSubmodelComponent#7",
-        "pos": {
-          "x": 300.0,
-          "y": 310.0
-        }
-      },
-      {
-        "id": "xor",
-        "name": "DeserializedSubmodelComponent#8",
-        "pos": {
-          "x": 495.0,
-          "y": 295.0
-        }
-      },
-      {
-        "id": "mux1",
-        "name": "DeserializedSubmodelComponent#9",
-        "pos": {
-          "x": 450.0,
-          "y": 310.0
-        }
-      },
       {
         "id": "Merger",
         "name": "Merger#0",
       },
       {
         "id": "NandGate",
-        "name": "NandGate#12",
+        "name": "NandGate#11",
         "pos": {
           "x": 540.0,
           "y": 265.0
       },
       {
         "id": "WireCrossPoint",
-        "name": "WireCrossPoint#3",
+        "name": "WireCrossPoint#29",
         "pos": {
-          "x": 335.0,
-          "y": 270.0
+          "x": 550.0,
+          "y": 570.0
         },
-        "params": 4
+        "params": 1
       },
       {
         "id": "WireCrossPoint",
-        "name": "WireCrossPoint#30",
+        "name": "WireCrossPoint#3",
         "pos": {
-          "x": 550.0,
-          "y": 570.0
+          "x": 335.0,
+          "y": 270.0
         },
-        "params": 1
+        "params": 4
       },
       {
         "id": "WireCrossPoint",
-        "name": "WireCrossPoint#32",
+        "name": "WireCrossPoint#30",
         "pos": {
           "x": 85.0,
           "y": 590.0
       },
       {
         "id": "WireCrossPoint",
-        "name": "WireCrossPoint#33",
+        "name": "WireCrossPoint#31",
         "pos": {
           "x": 530.0,
           "y": 270.0
           "y": 200.0
         },
         "params": 1
+      },
+      {
+        "id": "and",
+        "name": "and#0",
+        "pos": {
+          "x": 380.0,
+          "y": 125.0
+        }
+      },
+      {
+        "id": "mux1",
+        "name": "mux1#0",
+        "pos": {
+          "x": 450.0,
+          "y": 310.0
+        }
+      },
+      {
+        "id": "mux1",
+        "name": "mux1#1",
+        "pos": {
+          "x": 265.0,
+          "y": 515.0
+        }
+      },
+      {
+        "id": "mux1",
+        "name": "mux1#2",
+        "pos": {
+          "x": 365.0,
+          "y": 485.0
+        }
+      },
+      {
+        "id": "mux1",
+        "name": "mux1#3",
+        "pos": {
+          "x": 415.0,
+          "y": 465.0
+        }
+      },
+      {
+        "id": "mux1",
+        "name": "mux1#4",
+        "pos": {
+          "x": 190.0,
+          "y": 460.0
+        }
+      },
+      {
+        "id": "mux1",
+        "name": "mux1#5",
+        "pos": {
+          "x": 135.0,
+          "y": 470.0
+        }
+      },
+      {
+        "id": "mux1_4",
+        "name": "mux1_4#0",
+        "pos": {
+          "x": 470.0,
+          "y": 160.0
+        }
+      },
+      {
+        "id": "mux1_4",
+        "name": "mux1_4#1",
+        "pos": {
+          "x": 415.0,
+          "y": 210.0
+        }
+      },
+      {
+        "id": "mux2",
+        "name": "mux2#0",
+        "pos": {
+          "x": 435.0,
+          "y": 575.0
+        }
+      },
+      {
+        "id": "mux2",
+        "name": "mux2#1",
+        "pos": {
+          "x": 435.0,
+          "y": 655.0
+        }
+      },
+      {
+        "id": "mux2",
+        "name": "mux2#2",
+        "pos": {
+          "x": 120.0,
+          "y": 720.0
+        }
+      },
+      {
+        "id": "mux3",
+        "name": "mux3#0",
+        "pos": {
+          "x": 300.0,
+          "y": 310.0
+        }
+      },
+      {
+        "id": "mux3",
+        "name": "mux3#1",
+        "pos": {
+          "x": 300.0,
+          "y": 715.0
+        }
+      },
+      {
+        "id": "not4",
+        "name": "not4#0",
+        "pos": {
+          "x": 135.0,
+          "y": 40.0
+        }
+      },
+      {
+        "id": "xor",
+        "name": "xor#0",
+        "pos": {
+          "x": 495.0,
+          "y": 295.0
+        }
+      },
+      {
+        "id": "xor",
+        "name": "xor#1",
+        "pos": {
+          "x": 455.0,
+          "y": 355.0
+        }
+      },
+      {
+        "id": "xor",
+        "name": "xor#2",
+        "pos": {
+          "x": 315.0,
+          "y": 505.0
+        }
+      },
+      {
+        "id": "xor",
+        "name": "xor#3",
+        "pos": {
+          "x": 250.0,
+          "y": 820.0
+        }
       }
     ],
     "wires": [
           "pinName": "muSR_MUX"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#1",
+          "compName": "Am2904muSR#0",
           "pinName": "MUX"
         },
         "name": "unnamedWire#1",
           "pinName": "O0"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#3",
+          "compName": "mux1_4#0",
           "pinName": "I0_4"
         },
         "name": "unnamedWire#100",
           "pinName": "O3"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#5",
+          "compName": "mux1_4#1",
           "pinName": "I0_1"
         },
         "name": "unnamedWire#102",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#5",
+          "compName": "mux1_4#1",
           "pinName": "I0_2"
         },
         "pin2": {
           "pinName": "O1"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#5",
+          "compName": "mux1_4#1",
           "pinName": "I0_3"
         },
         "name": "unnamedWire#104",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#5",
+          "compName": "mux1_4#1",
           "pinName": "I0_4"
         },
         "pin2": {
           "pinName": "O0"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#5",
+          "compName": "mux1_4#1",
           "pinName": "I1_4"
         },
         "name": "unnamedWire#107",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#5",
+          "compName": "mux1_4#1",
           "pinName": "I1_3"
         },
         "pin2": {
           "pinName": "O2"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#5",
+          "compName": "mux1_4#1",
           "pinName": "I1_2"
         },
         "name": "unnamedWire#109",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#5",
+          "compName": "mux1_4#1",
           "pinName": "I1_1"
         },
         "pin2": {
           "pinName": ""
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#6",
+          "compName": "Am2904TestLogic#0",
           "pinName": "I"
         },
         "name": "unnamedWire#113",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#6",
+          "compName": "Am2904TestLogic#0",
           "pinName": "Y111"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#7",
+          "compName": "mux3#0",
           "pinName": "I111"
         },
         "name": "unnamedWire#114",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#7",
+          "compName": "mux3#0",
           "pinName": "I110"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#6",
+          "compName": "Am2904TestLogic#0",
           "pinName": "Y110"
         },
         "name": "unnamedWire#115",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#6",
+          "compName": "Am2904TestLogic#0",
           "pinName": "Y101"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#7",
+          "compName": "mux3#0",
           "pinName": "I101"
         },
         "name": "unnamedWire#116",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#7",
+          "compName": "mux3#0",
           "pinName": "I100"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#6",
+          "compName": "Am2904TestLogic#0",
           "pinName": "Y100"
         },
         "name": "unnamedWire#117",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#6",
+          "compName": "Am2904TestLogic#0",
           "pinName": "Y011"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#7",
+          "compName": "mux3#0",
           "pinName": "I011"
         },
         "name": "unnamedWire#118",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#6",
+          "compName": "Am2904TestLogic#0",
           "pinName": "Y010"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#7",
+          "compName": "mux3#0",
           "pinName": "I010"
         },
         "name": "unnamedWire#119",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#7",
+          "compName": "mux3#0",
           "pinName": "I001"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#6",
+          "compName": "Am2904TestLogic#0",
           "pinName": "Y001"
         },
         "name": "unnamedWire#120",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#6",
+          "compName": "Am2904TestLogic#0",
           "pinName": "Y000"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#7",
+          "compName": "mux3#0",
           "pinName": "I000"
         },
         "name": "unnamedWire#121",
       },
       {
         "pin1": {
-          "compName": "NandGate#12",
+          "compName": "NandGate#11",
           "pinName": "Y"
         },
         "pin2": {
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#9",
+          "compName": "mux1#0",
           "pinName": "Y"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#8",
+          "compName": "xor#0",
           "pinName": "B"
         },
         "name": "unnamedWire#123",
           "pinName": "O0"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#7",
+          "compName": "mux3#0",
           "pinName": "S0"
         },
         "name": "unnamedWire#125",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#7",
+          "compName": "mux3#0",
           "pinName": "S1"
         },
         "pin2": {
           "pinName": "O2"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#7",
+          "compName": "mux3#0",
           "pinName": "S2"
         },
         "name": "unnamedWire#127",
           "pinName": "CT_EXP"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#9",
+          "compName": "mux1#0",
           "pinName": "S0"
         },
         "name": "unnamedWire#128",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#7",
+          "compName": "mux3#0",
           "pinName": "Y"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#9",
+          "compName": "mux1#0",
           "pinName": "I0"
         },
         "name": "unnamedWire#129",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#8",
+          "compName": "xor#0",
           "pinName": "A"
         },
         "pin2": {
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#10",
+          "compName": "xor#1",
           "pinName": "Y"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#9",
+          "compName": "mux1#0",
           "pinName": "I1"
         },
         "name": "unnamedWire#131",
           "pinName": ""
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#1",
+          "compName": "Am2904muSR#0",
           "pinName": "I"
         },
         "name": "unnamedWire#132",
           "pinName": ""
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#1",
+          "compName": "Am2904muSR#0",
           "pinName": "M"
         },
         "name": "unnamedWire#136",
           "pinName": "OEN"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#2",
+          "compName": "and#0",
           "pinName": "B"
         },
         "name": "unnamedWire#138",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#11",
+          "compName": "mux1#1",
           "pinName": "I1"
         },
         "pin2": {
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#11",
+          "compName": "mux1#1",
           "pinName": "I0"
         },
         "pin2": {
           "pinName": "O1"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#11",
+          "compName": "mux1#1",
           "pinName": "S0"
         },
         "name": "unnamedWire#146",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#11",
+          "compName": "mux1#1",
           "pinName": "Y"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#12",
+          "compName": "xor#2",
           "pinName": "B"
         },
         "name": "unnamedWire#147",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#12",
+          "compName": "xor#2",
           "pinName": "A"
         },
         "pin2": {
           "pinName": ""
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#13",
+          "compName": "mux1#2",
           "pinName": "S0"
         },
         "name": "unnamedWire#150",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#12",
+          "compName": "xor#2",
           "pinName": "Y"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#13",
+          "compName": "mux1#2",
           "pinName": "I1"
         },
         "name": "unnamedWire#151",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#13",
+          "compName": "mux1#2",
           "pinName": "I0"
         },
         "pin2": {
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#13",
+          "compName": "mux1#2",
           "pinName": "Y"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#14",
+          "compName": "mux1#3",
           "pinName": "I1"
         },
         "name": "unnamedWire#153",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#14",
+          "compName": "mux1#3",
           "pinName": "I0"
         },
         "pin2": {
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#14",
+          "compName": "mux1#3",
           "pinName": "S0"
         },
         "pin2": {
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#14",
+          "compName": "mux1#3",
           "pinName": "Y"
         },
         "pin2": {
           "pinName": "IN"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#15",
+          "compName": "mux2#0",
           "pinName": "Y"
         },
         "name": "unnamedWire#165",
           "pinName": "O0"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#15",
+          "compName": "mux2#0",
           "pinName": "I00"
         },
         "name": "unnamedWire#167",
           "pinName": "O2"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#15",
+          "compName": "mux2#0",
           "pinName": "S1"
         },
         "name": "unnamedWire#168",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#15",
+          "compName": "mux2#0",
           "pinName": "S0"
         },
         "pin2": {
           "pinName": ""
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#15",
+          "compName": "mux2#0",
           "pinName": "I01"
         },
         "name": "unnamedWire#170",
           "pinName": ""
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#15",
+          "compName": "mux2#0",
           "pinName": "I10"
         },
         "name": "unnamedWire#171",
           "pinName": "O1"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#16",
+          "compName": "mux2#1",
           "pinName": "S0"
         },
         "name": "unnamedWire#174",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#16",
+          "compName": "mux2#1",
           "pinName": "S1"
         },
         "pin2": {
           "pinName": "O0"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#16",
+          "compName": "mux2#1",
           "pinName": "I00"
         },
         "name": "unnamedWire#176",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#16",
+          "compName": "mux2#1",
           "pinName": "Y"
         },
         "pin2": {
           "pinName": ""
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#16",
+          "compName": "mux2#1",
           "pinName": "I01"
         },
         "name": "unnamedWire#179",
           "pinName": ""
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#16",
+          "compName": "mux2#1",
           "pinName": "I10"
         },
         "name": "unnamedWire#180",
           "pinName": ""
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#16",
+          "compName": "mux2#1",
           "pinName": "I11"
         },
         "name": "unnamedWire#181",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#15",
+          "compName": "mux2#0",
           "pinName": "I11"
         },
         "pin2": {
           "pinName": ""
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#23",
+          "compName": "mux3#1",
           "pinName": "S0"
         },
         "name": "unnamedWire#184",
           "pinName": ""
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#23",
+          "compName": "mux3#1",
           "pinName": "I000"
         },
         "name": "unnamedWire#186",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#23",
+          "compName": "mux3#1",
           "pinName": "I001"
         },
         "pin2": {
           "pinName": "O2"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#23",
+          "compName": "mux3#1",
           "pinName": "S2"
         },
         "name": "unnamedWire#189",
           "pinName": "O1"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#23",
+          "compName": "mux3#1",
           "pinName": "S1"
         },
         "name": "unnamedWire#190",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#23",
+          "compName": "mux3#1",
           "pinName": "I010"
         },
         "pin2": {
           "pinName": ""
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#23",
+          "compName": "mux3#1",
           "pinName": "I011"
         },
         "name": "unnamedWire#192",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#23",
+          "compName": "mux3#1",
           "pinName": "I100"
         },
         "pin2": {
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#21",
+          "compName": "xor#3",
           "pinName": "Y"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#23",
+          "compName": "mux3#1",
           "pinName": "I111"
         },
         "name": "unnamedWire#194",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#23",
+          "compName": "mux3#1",
           "pinName": "I110"
         },
         "pin2": {
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#22",
+          "compName": "mux2#2",
           "pinName": "I01"
         },
         "pin2": {
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#22",
+          "compName": "mux2#2",
           "pinName": "I10"
         },
         "pin2": {
           "pinName": ""
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#23",
+          "compName": "mux3#1",
           "pinName": "I101"
         },
         "name": "unnamedWire#199",
           "pinName": "muSR_OVRRET"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#1",
+          "compName": "Am2904muSR#0",
           "pinName": "OVRRET"
         },
         "name": "unnamedWire#2",
           "pinName": ""
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#10",
+          "compName": "xor#1",
           "pinName": "B"
         },
         "name": "unnamedWire#200",
           "pinName": ""
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#22",
+          "compName": "mux2#2",
           "pinName": "I11"
         },
         "name": "unnamedWire#201",
       },
       {
         "pin1": {
-          "compName": "WireCrossPoint#32",
+          "compName": "WireCrossPoint#30",
           "pinName": ""
         },
         "pin2": {
           "pinName": "OE0"
         },
         "pin2": {
-          "compName": "WireCrossPoint#30",
+          "compName": "WireCrossPoint#29",
           "pinName": ""
         },
         "name": "unnamedWire#203",
           "pinName": ""
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#10",
+          "compName": "xor#1",
           "pinName": "A"
         },
         "name": "unnamedWire#204",
           "pinName": ""
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#21",
+          "compName": "xor#3",
           "pinName": "A"
         },
         "name": "unnamedWire#205",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#21",
+          "compName": "xor#3",
           "pinName": "B"
         },
         "pin2": {
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#22",
+          "compName": "mux2#2",
           "pinName": "Y"
         },
         "pin2": {
           "pinName": "O2"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#22",
+          "compName": "mux2#2",
           "pinName": "S1"
         },
         "name": "unnamedWire#208",
           "pinName": "O1"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#22",
+          "compName": "mux2#2",
           "pinName": "S0"
         },
         "name": "unnamedWire#209",
           "pinName": "muSR_CINV"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#1",
+          "compName": "Am2904muSR#0",
           "pinName": "CINV"
         },
         "name": "unnamedWire#21",
           "pinName": "O0"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#22",
+          "compName": "mux2#2",
           "pinName": "I00"
         },
         "name": "unnamedWire#211",
           "pinName": "IN"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#23",
+          "compName": "mux3#1",
           "pinName": "Y"
         },
         "name": "unnamedWire#212",
           "pinName": "EN"
         },
         "pin2": {
-          "compName": "WireCrossPoint#30",
+          "compName": "WireCrossPoint#29",
           "pinName": ""
         },
         "name": "unnamedWire#214",
       },
       {
         "pin1": {
-          "compName": "WireCrossPoint#30",
+          "compName": "WireCrossPoint#29",
           "pinName": ""
         },
         "pin2": {
           "pinName": "EN"
         },
         "pin2": {
-          "compName": "WireCrossPoint#32",
+          "compName": "WireCrossPoint#30",
           "pinName": ""
         },
         "name": "unnamedWire#218",
       },
       {
         "pin1": {
-          "compName": "WireCrossPoint#32",
+          "compName": "WireCrossPoint#30",
           "pinName": ""
         },
         "pin2": {
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#18",
+          "compName": "mux1#5",
           "pinName": "Y"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#17",
+          "compName": "mux1#4",
           "pinName": "I0"
         },
         "name": "unnamedWire#221",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#17",
+          "compName": "mux1#4",
           "pinName": "Y"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#0",
+          "compName": "Am2904MSR#0",
           "pinName": "COVD_V"
         },
         "name": "unnamedWire#222",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#17",
+          "compName": "mux1#4",
           "pinName": "I1"
         },
         "pin2": {
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#18",
+          "compName": "mux1#5",
           "pinName": "I0"
         },
         "pin2": {
           "pinName": ""
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#18",
+          "compName": "mux1#5",
           "pinName": "I1"
         },
         "name": "unnamedWire#225",
           "pinName": "O0"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#18",
+          "compName": "mux1#5",
           "pinName": "S0"
         },
         "name": "unnamedWire#227",
           "pinName": "O1"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#17",
+          "compName": "mux1#4",
           "pinName": "S0"
         },
         "name": "unnamedWire#228",
           "pinName": ""
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#0",
+          "compName": "Am2904MSR#0",
           "pinName": "I"
         },
         "name": "unnamedWire#23",
       },
       {
         "pin1": {
-          "compName": "WireCrossPoint#33",
+          "compName": "WireCrossPoint#31",
           "pinName": ""
         },
         "pin2": {
-          "compName": "NandGate#12",
+          "compName": "NandGate#11",
           "pinName": "A"
         },
         "name": "unnamedWire#233",
       },
       {
         "pin1": {
-          "compName": "NandGate#12",
+          "compName": "NandGate#11",
           "pinName": "B"
         },
         "pin2": {
-          "compName": "WireCrossPoint#33",
+          "compName": "WireCrossPoint#31",
           "pinName": ""
         },
         "name": "unnamedWire#234",
       },
       {
         "pin1": {
-          "compName": "WireCrossPoint#33",
+          "compName": "WireCrossPoint#31",
           "pinName": ""
         },
         "pin2": {
           "pinName": "IN"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#8",
+          "compName": "xor#0",
           "pinName": "Y"
         },
         "name": "unnamedWire#237",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#0",
+          "compName": "Am2904MSR#0",
           "pinName": "Q"
         },
         "pin2": {
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#1",
+          "compName": "Am2904muSR#0",
           "pinName": "Q"
         },
         "pin2": {
           "pinName": ""
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#0",
+          "compName": "Am2904MSR#0",
           "pinName": "mu"
         },
         "name": "unnamedWire#28",
           "pinName": ""
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#0",
+          "compName": "Am2904MSR#0",
           "pinName": "C"
         },
         "name": "unnamedWire#29",
           "pinName": ""
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#1",
+          "compName": "Am2904muSR#0",
           "pinName": "C"
         },
         "name": "unnamedWire#30",
           "pinName": "MSR_MUX"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#0",
+          "compName": "Am2904MSR#0",
           "pinName": "MUX"
         },
         "name": "unnamedWire#31",
           "pinName": "MC_EN"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#0",
+          "compName": "Am2904MSR#0",
           "pinName": "COVD_EN"
         },
         "name": "unnamedWire#32",
           "pinName": "Y"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#1",
+          "compName": "Am2904muSR#0",
           "pinName": "_EOVR"
         },
         "name": "unnamedWire#43",
           "pinName": "Y"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#1",
+          "compName": "Am2904muSR#0",
           "pinName": "_EN"
         },
         "name": "unnamedWire#44",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#1",
+          "compName": "Am2904muSR#0",
           "pinName": "_EC"
         },
         "pin2": {
           "pinName": "Y"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#1",
+          "compName": "Am2904muSR#0",
           "pinName": "_EZ"
         },
         "name": "unnamedWire#46",
           "pinName": ""
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#0",
+          "compName": "Am2904MSR#0",
           "pinName": "Y"
         },
         "name": "unnamedWire#54",
           "pinName": "Y"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#0",
+          "compName": "Am2904MSR#0",
           "pinName": "_EOVR"
         },
         "name": "unnamedWire#66",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#0",
+          "compName": "Am2904MSR#0",
           "pinName": "_EN"
         },
         "pin2": {
           "pinName": "Y"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#0",
+          "compName": "Am2904MSR#0",
           "pinName": "_EC"
         },
         "name": "unnamedWire#68",
           "pinName": "Y"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#0",
+          "compName": "Am2904MSR#0",
           "pinName": "_EZ"
         },
         "name": "unnamedWire#69",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#4",
+          "compName": "not4#0",
           "pinName": "Y1"
         },
         "pin2": {
           "pinName": "B"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#4",
+          "compName": "not4#0",
           "pinName": "Y2"
         },
         "name": "unnamedWire#72",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#4",
+          "compName": "not4#0",
           "pinName": "Y3"
         },
         "pin2": {
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#4",
+          "compName": "not4#0",
           "pinName": "Y4"
         },
         "pin2": {
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#4",
+          "compName": "not4#0",
           "pinName": "A1"
         },
         "pin2": {
           "pinName": "_EC"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#4",
+          "compName": "not4#0",
           "pinName": "A2"
         },
         "name": "unnamedWire#76",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#4",
+          "compName": "not4#0",
           "pinName": "A3"
         },
         "pin2": {
           "pinName": "_EOVR"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#4",
+          "compName": "not4#0",
           "pinName": "A4"
         },
         "name": "unnamedWire#78",
           "pinName": "Y"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#2",
+          "compName": "and#0",
           "pinName": "A"
         },
         "name": "unnamedWire#83",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#2",
+          "compName": "and#0",
           "pinName": "Y"
         },
         "pin2": {
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#5",
+          "compName": "mux1_4#1",
           "pinName": "Y1"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#3",
+          "compName": "mux1_4#0",
           "pinName": "I1_1"
         },
         "name": "unnamedWire#85",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#3",
+          "compName": "mux1_4#0",
           "pinName": "I1_2"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#5",
+          "compName": "mux1_4#1",
           "pinName": "Y2"
         },
         "name": "unnamedWire#86",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#5",
+          "compName": "mux1_4#1",
           "pinName": "Y3"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#3",
+          "compName": "mux1_4#0",
           "pinName": "I1_3"
         },
         "name": "unnamedWire#87",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#3",
+          "compName": "mux1_4#0",
           "pinName": "I1_4"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#5",
+          "compName": "mux1_4#1",
           "pinName": "Y4"
         },
         "name": "unnamedWire#88",
           "pinName": "I0"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#3",
+          "compName": "mux1_4#0",
           "pinName": "Y4"
         },
         "name": "unnamedWire#89",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#3",
+          "compName": "mux1_4#0",
           "pinName": "Y3"
         },
         "pin2": {
           "pinName": "I2"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#3",
+          "compName": "mux1_4#0",
           "pinName": "Y2"
         },
         "name": "unnamedWire#91",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#3",
+          "compName": "mux1_4#0",
           "pinName": "Y1"
         },
         "pin2": {
           "pinName": "O0"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#5",
+          "compName": "mux1_4#1",
           "pinName": "S0"
         },
         "name": "unnamedWire#95",
           "pinName": "O1"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#3",
+          "compName": "mux1_4#0",
           "pinName": "S0"
         },
         "name": "unnamedWire#96",
           "pinName": "O3"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#3",
+          "compName": "mux1_4#0",
           "pinName": "I0_1"
         },
         "name": "unnamedWire#97",
           "pinName": "O2"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#3",
+          "compName": "mux1_4#0",
           "pinName": "I0_2"
         },
         "name": "unnamedWire#98",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#3",
+          "compName": "mux1_4#0",
           "pinName": "I0_3"
         },
         "pin2": {
index eff0611..7d89099 100644 (file)
   "innerScale": 0.1,
   "submodel": {
     "components": [
-      {
-        "id": "mux1_4",
-        "name": "DeserializedSubmodelComponent#0",
-        "pos": {
-          "x": 55.0,
-          "y": 110.0
-        }
-      },
-      {
-        "id": "xor",
-        "name": "DeserializedSubmodelComponent#1",
-        "pos": {
-          "x": 35.0,
-          "y": 250.0
-        }
-      },
-      {
-        "id": "mux1_4",
-        "name": "DeserializedSubmodelComponent#2",
-        "pos": {
-          "x": 150.0,
-          "y": 280.0
-        }
-      },
-      {
-        "id": "not4",
-        "name": "DeserializedSubmodelComponent#3",
-        "pos": {
-          "x": 100.0,
-          "y": 330.0
-        }
-      },
-      {
-        "id": "mux1_4",
-        "name": "DeserializedSubmodelComponent#4",
-        "pos": {
-          "x": 110.0,
-          "y": 60.0
-        }
-      },
-      {
-        "id": "mux1_4",
-        "name": "DeserializedSubmodelComponent#5",
-        "pos": {
-          "x": 200.0,
-          "y": 230.0
-        }
-      },
-      {
-        "id": "mux1_4",
-        "name": "DeserializedSubmodelComponent#6",
-        "pos": {
-          "x": 250.0,
-          "y": 180.0
-        }
-      },
-      {
-        "id": "mux1",
-        "name": "DeserializedSubmodelComponent#7",
-        "pos": {
-          "x": 325.0,
-          "y": 290.0
-        }
-      },
-      {
-        "id": "and",
-        "name": "DeserializedSubmodelComponent#8",
-        "pos": {
-          "x": 380.0,
-          "y": 85.0
-        }
-      },
       {
         "id": "Merger",
         "name": "Merger#0",
         },
         "params": 1
       },
+      {
+        "id": "and",
+        "name": "and#0",
+        "pos": {
+          "x": 380.0,
+          "y": 85.0
+        }
+      },
       {
         "id": "dff4_finewe",
         "name": "dff4_finewe#0",
           "x": 375.0,
           "y": 170.0
         }
+      },
+      {
+        "id": "mux1",
+        "name": "mux1#0",
+        "pos": {
+          "x": 325.0,
+          "y": 290.0
+        }
+      },
+      {
+        "id": "mux1_4",
+        "name": "mux1_4#0",
+        "pos": {
+          "x": 55.0,
+          "y": 110.0
+        }
+      },
+      {
+        "id": "mux1_4",
+        "name": "mux1_4#1",
+        "pos": {
+          "x": 150.0,
+          "y": 280.0
+        }
+      },
+      {
+        "id": "mux1_4",
+        "name": "mux1_4#2",
+        "pos": {
+          "x": 110.0,
+          "y": 60.0
+        }
+      },
+      {
+        "id": "mux1_4",
+        "name": "mux1_4#3",
+        "pos": {
+          "x": 200.0,
+          "y": 230.0
+        }
+      },
+      {
+        "id": "mux1_4",
+        "name": "mux1_4#4",
+        "pos": {
+          "x": 250.0,
+          "y": 180.0
+        }
+      },
+      {
+        "id": "not4",
+        "name": "not4#0",
+        "pos": {
+          "x": 100.0,
+          "y": 330.0
+        }
+      },
+      {
+        "id": "xor",
+        "name": "xor#0",
+        "pos": {
+          "x": 35.0,
+          "y": 250.0
+        }
       }
     ],
     "wires": [
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#0",
+          "compName": "mux1_4#0",
           "pinName": "I0_1"
         },
         "pin2": {
           "pinName": "O2"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#0",
+          "compName": "mux1_4#0",
           "pinName": "I0_2"
         },
         "name": "unnamedWire#13",
           "pinName": "O1"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#0",
+          "compName": "mux1_4#0",
           "pinName": "I0_3"
         },
         "name": "unnamedWire#14",
           "pinName": "O0"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#0",
+          "compName": "mux1_4#0",
           "pinName": "I0_4"
         },
         "name": "unnamedWire#15",
           "pinName": "O3"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#0",
+          "compName": "mux1_4#0",
           "pinName": "I1_1"
         },
         "name": "unnamedWire#16",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#0",
+          "compName": "mux1_4#0",
           "pinName": "I1_2"
         },
         "pin2": {
           "pinName": "O1"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#0",
+          "compName": "mux1_4#0",
           "pinName": "I1_3"
         },
         "name": "unnamedWire#18",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#0",
+          "compName": "mux1_4#0",
           "pinName": "I1_4"
         },
         "pin2": {
           "pinName": "O2"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#1",
+          "compName": "xor#0",
           "pinName": "B"
         },
         "name": "unnamedWire#23",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#1",
+          "compName": "xor#0",
           "pinName": "A"
         },
         "pin2": {
           "pinName": "_EC"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#8",
+          "compName": "and#0",
           "pinName": "A"
         },
         "name": "unnamedWire#3",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#3",
+          "compName": "not4#0",
           "pinName": "Y1"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#2",
+          "compName": "mux1_4#1",
           "pinName": "I1_1"
         },
         "name": "unnamedWire#30",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#2",
+          "compName": "mux1_4#1",
           "pinName": "I1_2"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#3",
+          "compName": "not4#0",
           "pinName": "Y2"
         },
         "name": "unnamedWire#31",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#3",
+          "compName": "not4#0",
           "pinName": "Y3"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#2",
+          "compName": "mux1_4#1",
           "pinName": "I1_3"
         },
         "name": "unnamedWire#32",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#2",
+          "compName": "mux1_4#1",
           "pinName": "I1_4"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#3",
+          "compName": "not4#0",
           "pinName": "Y4"
         },
         "name": "unnamedWire#33",
           "pinName": ""
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#3",
+          "compName": "not4#0",
           "pinName": "A1"
         },
         "name": "unnamedWire#34",
           "pinName": ""
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#3",
+          "compName": "not4#0",
           "pinName": "A3"
         },
         "name": "unnamedWire#36",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#2",
+          "compName": "mux1_4#1",
           "pinName": "I0_4"
         },
         "pin2": {
           "pinName": ""
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#2",
+          "compName": "mux1_4#1",
           "pinName": "I0_2"
         },
         "name": "unnamedWire#40",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#2",
+          "compName": "mux1_4#1",
           "pinName": "I0_3"
         },
         "pin2": {
           "pinName": ""
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#2",
+          "compName": "mux1_4#1",
           "pinName": "S0"
         },
         "name": "unnamedWire#43",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#0",
+          "compName": "mux1_4#0",
           "pinName": "Y1"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#4",
+          "compName": "mux1_4#2",
           "pinName": "I1_1"
         },
         "name": "unnamedWire#44",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#4",
+          "compName": "mux1_4#2",
           "pinName": "I1_2"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#0",
+          "compName": "mux1_4#0",
           "pinName": "Y2"
         },
         "name": "unnamedWire#46",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#0",
+          "compName": "mux1_4#0",
           "pinName": "Y3"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#4",
+          "compName": "mux1_4#2",
           "pinName": "I1_3"
         },
         "name": "unnamedWire#47",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#4",
+          "compName": "mux1_4#2",
           "pinName": "I1_4"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#0",
+          "compName": "mux1_4#0",
           "pinName": "Y4"
         },
         "name": "unnamedWire#48",
           "pinName": ""
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#4",
+          "compName": "mux1_4#2",
           "pinName": "I0_4"
         },
         "name": "unnamedWire#49",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#4",
+          "compName": "mux1_4#2",
           "pinName": "I0_3"
         },
         "pin2": {
           "pinName": ""
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#4",
+          "compName": "mux1_4#2",
           "pinName": "I0_2"
         },
         "name": "unnamedWire#53",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#4",
+          "compName": "mux1_4#2",
           "pinName": "I0_1"
         },
         "pin2": {
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#3",
+          "compName": "not4#0",
           "pinName": "A4"
         },
         "pin2": {
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#3",
+          "compName": "not4#0",
           "pinName": "A2"
         },
         "pin2": {
           "pinName": ""
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#2",
+          "compName": "mux1_4#1",
           "pinName": "I0_1"
         },
         "name": "unnamedWire#57",
           "pinName": ""
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#5",
+          "compName": "mux1_4#3",
           "pinName": "I0_1"
         },
         "name": "unnamedWire#59",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#5",
+          "compName": "mux1_4#3",
           "pinName": "I0_2"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#1",
+          "compName": "xor#0",
           "pinName": "Y"
         },
         "name": "unnamedWire#60",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#5",
+          "compName": "mux1_4#3",
           "pinName": "I0_3"
         },
         "pin2": {
           "pinName": "O0"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#5",
+          "compName": "mux1_4#3",
           "pinName": "I0_4"
         },
         "name": "unnamedWire#62",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#2",
+          "compName": "mux1_4#1",
           "pinName": "Y1"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#5",
+          "compName": "mux1_4#3",
           "pinName": "I1_1"
         },
         "name": "unnamedWire#63",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#5",
+          "compName": "mux1_4#3",
           "pinName": "I1_2"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#2",
+          "compName": "mux1_4#1",
           "pinName": "Y2"
         },
         "name": "unnamedWire#64",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#2",
+          "compName": "mux1_4#1",
           "pinName": "Y3"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#5",
+          "compName": "mux1_4#3",
           "pinName": "I1_3"
         },
         "name": "unnamedWire#65",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#5",
+          "compName": "mux1_4#3",
           "pinName": "I1_4"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#2",
+          "compName": "mux1_4#1",
           "pinName": "Y4"
         },
         "name": "unnamedWire#66",
           "pinName": ""
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#5",
+          "compName": "mux1_4#3",
           "pinName": "S0"
         },
         "name": "unnamedWire#68",
           "pinName": ""
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#4",
+          "compName": "mux1_4#2",
           "pinName": "S0"
         },
         "name": "unnamedWire#69",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#6",
+          "compName": "mux1_4#4",
           "pinName": "Y4"
         },
         "pin2": {
           "pinName": "D3"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#6",
+          "compName": "mux1_4#4",
           "pinName": "Y3"
         },
         "name": "unnamedWire#71",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#8",
+          "compName": "and#0",
           "pinName": "Y"
         },
         "pin2": {
           "pinName": "D1"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#6",
+          "compName": "mux1_4#4",
           "pinName": "Y1"
         },
         "name": "unnamedWire#73",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#6",
+          "compName": "mux1_4#4",
           "pinName": "I1_4"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#5",
+          "compName": "mux1_4#3",
           "pinName": "Y4"
         },
         "name": "unnamedWire#74",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#5",
+          "compName": "mux1_4#3",
           "pinName": "Y3"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#6",
+          "compName": "mux1_4#4",
           "pinName": "I1_3"
         },
         "name": "unnamedWire#75",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#6",
+          "compName": "mux1_4#4",
           "pinName": "I1_2"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#5",
+          "compName": "mux1_4#3",
           "pinName": "Y2"
         },
         "name": "unnamedWire#76",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#5",
+          "compName": "mux1_4#3",
           "pinName": "Y1"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#6",
+          "compName": "mux1_4#4",
           "pinName": "I1_1"
         },
         "name": "unnamedWire#77",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#6",
+          "compName": "mux1_4#4",
           "pinName": "I0_4"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#4",
+          "compName": "mux1_4#2",
           "pinName": "Y4"
         },
         "name": "unnamedWire#78",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#4",
+          "compName": "mux1_4#2",
           "pinName": "Y3"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#6",
+          "compName": "mux1_4#4",
           "pinName": "I0_3"
         },
         "name": "unnamedWire#79",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#6",
+          "compName": "mux1_4#4",
           "pinName": "I0_2"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#4",
+          "compName": "mux1_4#2",
           "pinName": "Y2"
         },
         "name": "unnamedWire#80",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#4",
+          "compName": "mux1_4#2",
           "pinName": "Y1"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#6",
+          "compName": "mux1_4#4",
           "pinName": "I0_1"
         },
         "name": "unnamedWire#81",
           "pinName": "O2"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#6",
+          "compName": "mux1_4#4",
           "pinName": "S0"
         },
         "name": "unnamedWire#82",
           "pinName": ""
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#7",
+          "compName": "mux1#0",
           "pinName": "S0"
         },
         "name": "unnamedWire#85",
           "pinName": "COVD_V"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#7",
+          "compName": "mux1#0",
           "pinName": "I1"
         },
         "name": "unnamedWire#86",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#6",
+          "compName": "mux1_4#4",
           "pinName": "Y2"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#7",
+          "compName": "mux1#0",
           "pinName": "I0"
         },
         "name": "unnamedWire#87",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#7",
+          "compName": "mux1#0",
           "pinName": "Y"
         },
         "pin2": {
           "pinName": "Y"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#8",
+          "compName": "and#0",
           "pinName": "B"
         },
         "name": "unnamedWire#89",
           "pinName": ""
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#0",
+          "compName": "mux1_4#0",
           "pinName": "S0"
         },
         "name": "unnamedWire#93",
index 3ec88ac..97b0277 100644 (file)
   "innerScale": 0.4,
   "submodel": {
     "components": [
-      {
-        "id": "xor",
-        "name": "DeserializedSubmodelComponent#0",
-        "pos": {
-          "x": 40.0,
-          "y": 20.0
-        }
-      },
       {
         "id": "NandGate",
         "name": "NandGate#0",
           "y": 149.0
         },
         "params": 1
+      },
+      {
+        "id": "xor",
+        "name": "xor#0",
+        "pos": {
+          "x": 40.0,
+          "y": 20.0
+        }
       }
     ],
     "wires": [
           "pinName": ""
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#0",
+          "compName": "xor#0",
           "pinName": "A"
         },
         "name": "unnamedWire#3",
           "pinName": ""
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#0",
+          "compName": "xor#0",
           "pinName": "B"
         },
         "name": "unnamedWire#4",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#0",
+          "compName": "xor#0",
           "pinName": "Y"
         },
         "pin2": {
index a199100..d2177af 100644 (file)
   "innerScale": 0.1,
   "submodel": {
     "components": [
-      {
-        "id": "mux1_4",
-        "name": "DeserializedSubmodelComponent#0",
-        "pos": {
-          "x": 45.0,
-          "y": 240.0
-        }
-      },
-      {
-        "id": "mux1_4",
-        "name": "DeserializedSubmodelComponent#1",
-        "pos": {
-          "x": 100.0,
-          "y": 190.0
-        }
-      },
-      {
-        "id": "xor",
-        "name": "DeserializedSubmodelComponent#2",
-        "pos": {
-          "x": 215.0,
-          "y": 200.0
-        }
-      },
       {
         "id": "Merger",
         "name": "Merger#0",
           "x": 375.0,
           "y": 170.0
         }
+      },
+      {
+        "id": "mux1_4",
+        "name": "mux1_4#0",
+        "pos": {
+          "x": 45.0,
+          "y": 240.0
+        }
+      },
+      {
+        "id": "mux1_4",
+        "name": "mux1_4#1",
+        "pos": {
+          "x": 100.0,
+          "y": 190.0
+        }
+      },
+      {
+        "id": "xor",
+        "name": "xor#0",
+        "pos": {
+          "x": 215.0,
+          "y": 200.0
+        }
       }
     ],
     "wires": [
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#0",
+          "compName": "mux1_4#0",
           "pinName": "I1_4"
         },
         "pin2": {
           "pinName": "O0"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#0",
+          "compName": "mux1_4#0",
           "pinName": "I0_4"
         },
         "name": "unnamedWire#12",
           "pinName": "O1"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#0",
+          "compName": "mux1_4#0",
           "pinName": "I0_3"
         },
         "name": "unnamedWire#13",
           "pinName": "O2"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#0",
+          "compName": "mux1_4#0",
           "pinName": "I0_2"
         },
         "name": "unnamedWire#14",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#0",
+          "compName": "mux1_4#0",
           "pinName": "Y4"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#1",
+          "compName": "mux1_4#1",
           "pinName": "I1_4"
         },
         "name": "unnamedWire#17",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#1",
+          "compName": "mux1_4#1",
           "pinName": "I1_3"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#0",
+          "compName": "mux1_4#0",
           "pinName": "Y3"
         },
         "name": "unnamedWire#18",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#0",
+          "compName": "mux1_4#0",
           "pinName": "Y2"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#1",
+          "compName": "mux1_4#1",
           "pinName": "I1_2"
         },
         "name": "unnamedWire#19",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#0",
+          "compName": "mux1_4#0",
           "pinName": "Y1"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#1",
+          "compName": "mux1_4#1",
           "pinName": "I1_1"
         },
         "name": "unnamedWire#20",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#1",
+          "compName": "mux1_4#1",
           "pinName": "I0_1"
         },
         "pin2": {
           "pinName": ""
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#1",
+          "compName": "mux1_4#1",
           "pinName": "I0_2"
         },
         "name": "unnamedWire#22",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#1",
+          "compName": "mux1_4#1",
           "pinName": "I0_3"
         },
         "pin2": {
           "pinName": ""
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#1",
+          "compName": "mux1_4#1",
           "pinName": "I0_4"
         },
         "name": "unnamedWire#26",
           "pinName": ""
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#0",
+          "compName": "mux1_4#0",
           "pinName": "S0"
         },
         "name": "unnamedWire#27",
           "pinName": "O1"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#1",
+          "compName": "mux1_4#1",
           "pinName": "S0"
         },
         "name": "unnamedWire#28",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#1",
+          "compName": "mux1_4#1",
           "pinName": "Y2"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#2",
+          "compName": "xor#0",
           "pinName": "A"
         },
         "name": "unnamedWire#35",
           "pinName": "CINV"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#2",
+          "compName": "xor#0",
           "pinName": "B"
         },
         "name": "unnamedWire#36",
           "pinName": "D1"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#1",
+          "compName": "mux1_4#1",
           "pinName": "Y1"
         },
         "name": "unnamedWire#42",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#2",
+          "compName": "xor#0",
           "pinName": "Y"
         },
         "pin2": {
           "pinName": "D3"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#1",
+          "compName": "mux1_4#1",
           "pinName": "Y3"
         },
         "name": "unnamedWire#44",
           "pinName": ""
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#1",
+          "compName": "mux1_4#1",
           "pinName": "Y4"
         },
         "name": "unnamedWire#45",
           "pinName": "O3"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#0",
+          "compName": "mux1_4#0",
           "pinName": "I0_1"
         },
         "name": "unnamedWire#49",
           "pinName": "O3"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#0",
+          "compName": "mux1_4#0",
           "pinName": "I1_1"
         },
         "name": "unnamedWire#7",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#0",
+          "compName": "mux1_4#0",
           "pinName": "I1_2"
         },
         "pin2": {
           "pinName": "O1"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#0",
+          "compName": "mux1_4#0",
           "pinName": "I1_3"
         },
         "name": "unnamedWire#9",
index f5283a0..20f0664 100644 (file)
   "innerScale": 0.2,
   "submodel": {
     "components": [
-      {
-        "id": "dff",
-        "name": "DeserializedSubmodelComponent#10",
-        "pos": {
-          "x": 175.0,
-          "y": 170.0
-        }
-      },
-      {
-        "id": "dff",
-        "name": "DeserializedSubmodelComponent#11",
-        "pos": {
-          "x": 130.0,
-          "y": 160.0
-        }
-      },
-      {
-        "id": "dff",
-        "name": "DeserializedSubmodelComponent#12",
-        "pos": {
-          "x": 130.0,
-          "y": 130.0
-        }
-      },
-      {
-        "id": "dff",
-        "name": "DeserializedSubmodelComponent#13",
-        "pos": {
-          "x": 175.0,
-          "y": 80.0
-        }
-      },
-      {
-        "id": "dff",
-        "name": "DeserializedSubmodelComponent#14",
-        "pos": {
-          "x": 175.0,
-          "y": 110.0
-        }
-      },
-      {
-        "id": "dff",
-        "name": "DeserializedSubmodelComponent#15",
-        "pos": {
-          "x": 130.0,
-          "y": 100.0
-        }
-      },
-      {
-        "id": "mux1_12",
-        "name": "DeserializedSubmodelComponent#17",
-        "pos": {
-          "x": 15.0,
-          "y": 90.0
-        }
-      },
-      {
-        "id": "dff",
-        "name": "DeserializedSubmodelComponent#4",
-        "pos": {
-          "x": 175.0,
-          "y": 20.0
-        }
-      },
-      {
-        "id": "dff",
-        "name": "DeserializedSubmodelComponent#5",
-        "pos": {
-          "x": 175.0,
-          "y": 50.0
-        }
-      },
-      {
-        "id": "dff",
-        "name": "DeserializedSubmodelComponent#6",
-        "pos": {
-          "x": 130.0,
-          "y": 10.0
-        }
-      },
-      {
-        "id": "dff",
-        "name": "DeserializedSubmodelComponent#7",
-        "pos": {
-          "x": 130.0,
-          "y": 40.0
-        }
-      },
-      {
-        "id": "dff",
-        "name": "DeserializedSubmodelComponent#8",
-        "pos": {
-          "x": 130.0,
-          "y": 70.0
-        }
-      },
-      {
-        "id": "dff",
-        "name": "DeserializedSubmodelComponent#9",
-        "pos": {
-          "x": 175.0,
-          "y": 140.0
-        }
-      },
       {
         "id": "Merger",
         "name": "Merger#0",
       },
       {
         "id": "WireCrossPoint",
-        "name": "WireCrossPoint#11",
+        "name": "WireCrossPoint#0",
         "pos": {
-          "x": 169.0,
-          "y": 54.0
+          "x": 124.0,
+          "y": 14.0
         },
         "params": 1
       },
       {
         "id": "WireCrossPoint",
-        "name": "WireCrossPoint#12",
+        "name": "WireCrossPoint#1",
         "pos": {
-          "x": 169.0,
-          "y": 144.0
+          "x": 124.0,
+          "y": 44.0
         },
         "params": 1
       },
       {
         "id": "WireCrossPoint",
-        "name": "WireCrossPoint#13",
+        "name": "WireCrossPoint#10",
         "pos": {
           "x": 169.0,
-          "y": 24.0
+          "y": 114.0
         },
         "params": 1
       },
       {
         "id": "WireCrossPoint",
-        "name": "WireCrossPoint#14",
+        "name": "WireCrossPoint#2",
         "pos": {
-          "x": 169.0,
-          "y": 84.0
+          "x": 124.0,
+          "y": 104.0
         },
         "params": 1
       },
       {
         "id": "WireCrossPoint",
-        "name": "WireCrossPoint#15",
+        "name": "WireCrossPoint#3",
         "pos": {
-          "x": 169.0,
-          "y": 114.0
+          "x": 124.0,
+          "y": 134.0
         },
         "params": 1
       },
       {
         "id": "WireCrossPoint",
-        "name": "WireCrossPoint#2",
+        "name": "WireCrossPoint#4",
         "pos": {
           "x": 124.0,
-          "y": 14.0
+          "y": 74.0
         },
         "params": 1
       },
       {
         "id": "WireCrossPoint",
-        "name": "WireCrossPoint#3",
+        "name": "WireCrossPoint#5",
         "pos": {
-          "x": 124.0,
-          "y": 44.0
+          "x": 264.0,
+          "y": 99.0
         },
-        "params": 1
+        "params": 12
       },
       {
         "id": "WireCrossPoint",
-        "name": "WireCrossPoint#5",
+        "name": "WireCrossPoint#6",
         "pos": {
-          "x": 124.0,
-          "y": 104.0
+          "x": 169.0,
+          "y": 54.0
         },
         "params": 1
       },
       {
         "id": "WireCrossPoint",
-        "name": "WireCrossPoint#6",
+        "name": "WireCrossPoint#7",
         "pos": {
-          "x": 124.0,
-          "y": 134.0
+          "x": 169.0,
+          "y": 144.0
         },
         "params": 1
       },
       {
         "id": "WireCrossPoint",
-        "name": "WireCrossPoint#7",
+        "name": "WireCrossPoint#8",
         "pos": {
-          "x": 124.0,
-          "y": 74.0
+          "x": 169.0,
+          "y": 24.0
         },
         "params": 1
       },
       {
         "id": "WireCrossPoint",
-        "name": "WireCrossPoint#8",
+        "name": "WireCrossPoint#9",
         "pos": {
-          "x": 264.0,
-          "y": 99.0
+          "x": 169.0,
+          "y": 84.0
         },
-        "params": 12
+        "params": 1
+      },
+      {
+        "id": "dff",
+        "name": "dff#0",
+        "pos": {
+          "x": 175.0,
+          "y": 20.0
+        }
+      },
+      {
+        "id": "dff",
+        "name": "dff#1",
+        "pos": {
+          "x": 175.0,
+          "y": 50.0
+        }
+      },
+      {
+        "id": "dff",
+        "name": "dff#10",
+        "pos": {
+          "x": 175.0,
+          "y": 110.0
+        }
+      },
+      {
+        "id": "dff",
+        "name": "dff#11",
+        "pos": {
+          "x": 130.0,
+          "y": 100.0
+        }
+      },
+      {
+        "id": "dff",
+        "name": "dff#2",
+        "pos": {
+          "x": 130.0,
+          "y": 10.0
+        }
+      },
+      {
+        "id": "dff",
+        "name": "dff#3",
+        "pos": {
+          "x": 130.0,
+          "y": 40.0
+        }
+      },
+      {
+        "id": "dff",
+        "name": "dff#4",
+        "pos": {
+          "x": 130.0,
+          "y": 70.0
+        }
+      },
+      {
+        "id": "dff",
+        "name": "dff#5",
+        "pos": {
+          "x": 175.0,
+          "y": 140.0
+        }
+      },
+      {
+        "id": "dff",
+        "name": "dff#6",
+        "pos": {
+          "x": 175.0,
+          "y": 170.0
+        }
+      },
+      {
+        "id": "dff",
+        "name": "dff#7",
+        "pos": {
+          "x": 130.0,
+          "y": 160.0
+        }
+      },
+      {
+        "id": "dff",
+        "name": "dff#8",
+        "pos": {
+          "x": 130.0,
+          "y": 130.0
+        }
+      },
+      {
+        "id": "dff",
+        "name": "dff#9",
+        "pos": {
+          "x": 175.0,
+          "y": 80.0
+        }
+      },
+      {
+        "id": "mux1_12",
+        "name": "mux1_12#0",
+        "pos": {
+          "x": 15.0,
+          "y": 90.0
+        }
       }
     ],
     "wires": [
       {
         "pin1": {
-          "compName": "WireCrossPoint#2",
+          "compName": "WireCrossPoint#0",
           "pinName": ""
         },
         "pin2": {
-          "compName": "WireCrossPoint#13",
+          "compName": "WireCrossPoint#8",
           "pinName": ""
         },
         "name": "unnamedWire#0",
       },
       {
         "pin1": {
-          "compName": "WireCrossPoint#2",
+          "compName": "WireCrossPoint#0",
           "pinName": ""
         },
         "pin2": {
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#15",
+          "compName": "dff#11",
           "pinName": "D"
         },
         "pin2": {
           "pinName": "O4"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#14",
+          "compName": "dff#10",
           "pinName": "D"
         },
         "name": "unnamedWire#11",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#12",
+          "compName": "dff#8",
           "pinName": "D"
         },
         "pin2": {
           "pinName": "O2"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#9",
+          "compName": "dff#5",
           "pinName": "D"
         },
         "name": "unnamedWire#13",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#11",
+          "compName": "dff#7",
           "pinName": "D"
         },
         "pin2": {
           "pinName": "O0"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#10",
+          "compName": "dff#6",
           "pinName": "D"
         },
         "name": "unnamedWire#15",
           "pinName": "WE"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#17",
+          "compName": "mux1_12#0",
           "pinName": "S"
         },
         "name": "unnamedWire#16",
           "pinName": "D"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#17",
+          "compName": "mux1_12#0",
           "pinName": "I1"
         },
         "name": "unnamedWire#17",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#17",
+          "compName": "mux1_12#0",
           "pinName": "Y"
         },
         "pin2": {
       },
       {
         "pin1": {
-          "compName": "WireCrossPoint#2",
+          "compName": "WireCrossPoint#0",
           "pinName": ""
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#6",
+          "compName": "dff#2",
           "pinName": "C"
         },
         "name": "unnamedWire#21",
       },
       {
         "pin1": {
-          "compName": "WireCrossPoint#2",
+          "compName": "WireCrossPoint#0",
           "pinName": ""
         },
         "pin2": {
-          "compName": "WireCrossPoint#3",
+          "compName": "WireCrossPoint#1",
           "pinName": ""
         },
         "name": "unnamedWire#22",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#7",
+          "compName": "dff#3",
           "pinName": "C"
         },
         "pin2": {
-          "compName": "WireCrossPoint#3",
+          "compName": "WireCrossPoint#1",
           "pinName": ""
         },
         "name": "unnamedWire#23",
       },
       {
         "pin1": {
-          "compName": "WireCrossPoint#3",
+          "compName": "WireCrossPoint#1",
           "pinName": ""
         },
         "pin2": {
-          "compName": "WireCrossPoint#7",
+          "compName": "WireCrossPoint#4",
           "pinName": ""
         },
         "name": "unnamedWire#24",
       },
       {
         "pin1": {
-          "compName": "WireCrossPoint#7",
+          "compName": "WireCrossPoint#4",
           "pinName": ""
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#8",
+          "compName": "dff#4",
           "pinName": "C"
         },
         "name": "unnamedWire#25",
       },
       {
         "pin1": {
-          "compName": "WireCrossPoint#7",
+          "compName": "WireCrossPoint#4",
           "pinName": ""
         },
         "pin2": {
-          "compName": "WireCrossPoint#5",
+          "compName": "WireCrossPoint#2",
           "pinName": ""
         },
         "name": "unnamedWire#26",
       },
       {
         "pin1": {
-          "compName": "WireCrossPoint#5",
+          "compName": "WireCrossPoint#2",
           "pinName": ""
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#15",
+          "compName": "dff#11",
           "pinName": "C"
         },
         "name": "unnamedWire#27",
       },
       {
         "pin1": {
-          "compName": "WireCrossPoint#5",
+          "compName": "WireCrossPoint#2",
           "pinName": ""
         },
         "pin2": {
-          "compName": "WireCrossPoint#6",
+          "compName": "WireCrossPoint#3",
           "pinName": ""
         },
         "name": "unnamedWire#28",
       },
       {
         "pin1": {
-          "compName": "WireCrossPoint#6",
+          "compName": "WireCrossPoint#3",
           "pinName": ""
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#12",
+          "compName": "dff#8",
           "pinName": "C"
         },
         "name": "unnamedWire#29",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#17",
+          "compName": "mux1_12#0",
           "pinName": "I0"
         },
         "pin2": {
-          "compName": "WireCrossPoint#8",
+          "compName": "WireCrossPoint#5",
           "pinName": ""
         },
         "name": "unnamedWire#3",
       },
       {
         "pin1": {
-          "compName": "WireCrossPoint#6",
+          "compName": "WireCrossPoint#3",
           "pinName": ""
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#11",
+          "compName": "dff#7",
           "pinName": "C"
         },
         "name": "unnamedWire#30",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#10",
+          "compName": "dff#6",
           "pinName": "C"
         },
         "pin2": {
-          "compName": "WireCrossPoint#12",
+          "compName": "WireCrossPoint#7",
           "pinName": ""
         },
         "name": "unnamedWire#31",
       },
       {
         "pin1": {
-          "compName": "WireCrossPoint#12",
+          "compName": "WireCrossPoint#7",
           "pinName": ""
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#9",
+          "compName": "dff#5",
           "pinName": "C"
         },
         "name": "unnamedWire#32",
       },
       {
         "pin1": {
-          "compName": "WireCrossPoint#12",
+          "compName": "WireCrossPoint#7",
           "pinName": ""
         },
         "pin2": {
-          "compName": "WireCrossPoint#15",
+          "compName": "WireCrossPoint#10",
           "pinName": ""
         },
         "name": "unnamedWire#33",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#14",
+          "compName": "dff#10",
           "pinName": "C"
         },
         "pin2": {
-          "compName": "WireCrossPoint#15",
+          "compName": "WireCrossPoint#10",
           "pinName": ""
         },
         "name": "unnamedWire#34",
       },
       {
         "pin1": {
-          "compName": "WireCrossPoint#14",
+          "compName": "WireCrossPoint#9",
           "pinName": ""
         },
         "pin2": {
-          "compName": "WireCrossPoint#15",
+          "compName": "WireCrossPoint#10",
           "pinName": ""
         },
         "name": "unnamedWire#35",
       },
       {
         "pin1": {
-          "compName": "WireCrossPoint#14",
+          "compName": "WireCrossPoint#9",
           "pinName": ""
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#13",
+          "compName": "dff#9",
           "pinName": "C"
         },
         "name": "unnamedWire#36",
       },
       {
         "pin1": {
-          "compName": "WireCrossPoint#14",
+          "compName": "WireCrossPoint#9",
           "pinName": ""
         },
         "pin2": {
-          "compName": "WireCrossPoint#11",
+          "compName": "WireCrossPoint#6",
           "pinName": ""
         },
         "name": "unnamedWire#37",
       },
       {
         "pin1": {
-          "compName": "WireCrossPoint#11",
+          "compName": "WireCrossPoint#6",
           "pinName": ""
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#5",
+          "compName": "dff#1",
           "pinName": "C"
         },
         "name": "unnamedWire#38",
       },
       {
         "pin1": {
-          "compName": "WireCrossPoint#13",
+          "compName": "WireCrossPoint#8",
           "pinName": ""
         },
         "pin2": {
-          "compName": "WireCrossPoint#11",
+          "compName": "WireCrossPoint#6",
           "pinName": ""
         },
         "name": "unnamedWire#39",
           "pinName": "O11"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#6",
+          "compName": "dff#2",
           "pinName": "D"
         },
         "name": "unnamedWire#4",
       },
       {
         "pin1": {
-          "compName": "WireCrossPoint#13",
+          "compName": "WireCrossPoint#8",
           "pinName": ""
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#4",
+          "compName": "dff#0",
           "pinName": "C"
         },
         "name": "unnamedWire#40",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#4",
+          "compName": "dff#0",
           "pinName": "D"
         },
         "pin2": {
           "pinName": "I11"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#6",
+          "compName": "dff#2",
           "pinName": "Q"
         },
         "name": "unnamedWire#53",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#4",
+          "compName": "dff#0",
           "pinName": "Q"
         },
         "pin2": {
           "pinName": "I9"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#7",
+          "compName": "dff#3",
           "pinName": "Q"
         },
         "name": "unnamedWire#55",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#5",
+          "compName": "dff#1",
           "pinName": "Q"
         },
         "pin2": {
           "pinName": "I7"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#8",
+          "compName": "dff#4",
           "pinName": "Q"
         },
         "name": "unnamedWire#57",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#13",
+          "compName": "dff#9",
           "pinName": "Q"
         },
         "pin2": {
           "pinName": "I5"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#15",
+          "compName": "dff#11",
           "pinName": "Q"
         },
         "name": "unnamedWire#59",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#7",
+          "compName": "dff#3",
           "pinName": "D"
         },
         "pin2": {
           "pinName": "I4"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#14",
+          "compName": "dff#10",
           "pinName": "Q"
         },
         "name": "unnamedWire#60",
           "pinName": "I3"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#12",
+          "compName": "dff#8",
           "pinName": "Q"
         },
         "name": "unnamedWire#61",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#9",
+          "compName": "dff#5",
           "pinName": "Q"
         },
         "pin2": {
           "pinName": "I1"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#11",
+          "compName": "dff#7",
           "pinName": "Q"
         },
         "name": "unnamedWire#63",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#10",
+          "compName": "dff#6",
           "pinName": "Q"
         },
         "pin2": {
           "pinName": "O"
         },
         "pin2": {
-          "compName": "WireCrossPoint#8",
+          "compName": "WireCrossPoint#5",
           "pinName": ""
         },
         "name": "unnamedWire#65",
       },
       {
         "pin1": {
-          "compName": "WireCrossPoint#8",
+          "compName": "WireCrossPoint#5",
           "pinName": ""
         },
         "pin2": {
           "pinName": "O8"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#5",
+          "compName": "dff#1",
           "pinName": "D"
         },
         "name": "unnamedWire#7",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#8",
+          "compName": "dff#4",
           "pinName": "D"
         },
         "pin2": {
           "pinName": "O6"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#13",
+          "compName": "dff#9",
           "pinName": "D"
         },
         "name": "unnamedWire#9",
index af3897d..11bc97c 100644 (file)
   "innerScale": 0.2,
   "submodel": {
     "components": [
-      {
-        "id": "dff",
-        "name": "DeserializedSubmodelComponent#0",
-        "pos": {
-          "x": 140.0,
-          "y": 15.0
-        }
-      },
-      {
-        "id": "dff",
-        "name": "DeserializedSubmodelComponent#1",
-        "pos": {
-          "x": 190.0,
-          "y": 25.0
-        }
-      },
-      {
-        "id": "dff",
-        "name": "DeserializedSubmodelComponent#10",
-        "pos": {
-          "x": 190.0,
-          "y": 235.0
-        }
-      },
-      {
-        "id": "dff",
-        "name": "DeserializedSubmodelComponent#11",
-        "pos": {
-          "x": 140.0,
-          "y": 225.0
-        }
-      },
-      {
-        "id": "dff",
-        "name": "DeserializedSubmodelComponent#12",
-        "pos": {
-          "x": 140.0,
-          "y": 195.0
-        }
-      },
-      {
-        "id": "dff",
-        "name": "DeserializedSubmodelComponent#13",
-        "pos": {
-          "x": 190.0,
-          "y": 145.0
-        }
-      },
-      {
-        "id": "dff",
-        "name": "DeserializedSubmodelComponent#14",
-        "pos": {
-          "x": 190.0,
-          "y": 175.0
-        }
-      },
-      {
-        "id": "dff",
-        "name": "DeserializedSubmodelComponent#15",
-        "pos": {
-          "x": 140.0,
-          "y": 165.0
-        }
-      },
-      {
-        "id": "mux1_16",
-        "name": "DeserializedSubmodelComponent#16",
-        "pos": {
-          "x": 15.0,
-          "y": 95.0
-        }
-      },
-      {
-        "id": "dff",
-        "name": "DeserializedSubmodelComponent#2",
-        "pos": {
-          "x": 190.0,
-          "y": 55.0
-        }
-      },
-      {
-        "id": "dff",
-        "name": "DeserializedSubmodelComponent#3",
-        "pos": {
-          "x": 140.0,
-          "y": 45.0
-        }
-      },
-      {
-        "id": "dff",
-        "name": "DeserializedSubmodelComponent#4",
-        "pos": {
-          "x": 190.0,
-          "y": 85.0
-        }
-      },
-      {
-        "id": "dff",
-        "name": "DeserializedSubmodelComponent#5",
-        "pos": {
-          "x": 190.0,
-          "y": 115.0
-        }
-      },
-      {
-        "id": "dff",
-        "name": "DeserializedSubmodelComponent#6",
-        "pos": {
-          "x": 140.0,
-          "y": 75.0
-        }
-      },
-      {
-        "id": "dff",
-        "name": "DeserializedSubmodelComponent#7",
-        "pos": {
-          "x": 140.0,
-          "y": 105.0
-        }
-      },
-      {
-        "id": "dff",
-        "name": "DeserializedSubmodelComponent#8",
-        "pos": {
-          "x": 140.0,
-          "y": 135.0
-        }
-      },
-      {
-        "id": "dff",
-        "name": "DeserializedSubmodelComponent#9",
-        "pos": {
-          "x": 190.0,
-          "y": 205.0
-        }
-      },
       {
         "id": "Merger",
         "name": "Merger#0",
       {
         "id": "WireCrossPoint",
         "name": "WireCrossPoint#10",
-        "pos": {
-          "x": 184.0,
-          "y": 29.0
-        },
-        "params": 1
-      },
-      {
-        "id": "WireCrossPoint",
-        "name": "WireCrossPoint#11",
         "pos": {
           "x": 184.0,
           "y": 119.0
       },
       {
         "id": "WireCrossPoint",
-        "name": "WireCrossPoint#12",
+        "name": "WireCrossPoint#11",
         "pos": {
           "x": 184.0,
           "y": 209.0
       },
       {
         "id": "WireCrossPoint",
-        "name": "WireCrossPoint#13",
+        "name": "WireCrossPoint#12",
         "pos": {
           "x": 184.0,
           "y": 89.0
       },
       {
         "id": "WireCrossPoint",
-        "name": "WireCrossPoint#14",
+        "name": "WireCrossPoint#13",
         "pos": {
           "x": 184.0,
           "y": 149.0
       },
       {
         "id": "WireCrossPoint",
-        "name": "WireCrossPoint#15",
+        "name": "WireCrossPoint#14",
         "pos": {
           "x": 184.0,
           "y": 179.0
       },
       {
         "id": "WireCrossPoint",
-        "name": "WireCrossPoint#5",
+        "name": "WireCrossPoint#4",
         "pos": {
           "x": 134.0,
           "y": 169.0
       },
       {
         "id": "WireCrossPoint",
-        "name": "WireCrossPoint#6",
+        "name": "WireCrossPoint#5",
         "pos": {
           "x": 134.0,
           "y": 199.0
       },
       {
         "id": "WireCrossPoint",
-        "name": "WireCrossPoint#7",
+        "name": "WireCrossPoint#6",
         "pos": {
           "x": 134.0,
           "y": 139.0
       },
       {
         "id": "WireCrossPoint",
-        "name": "WireCrossPoint#8",
+        "name": "WireCrossPoint#7",
         "pos": {
           "x": 289.0,
           "y": 124.0
       },
       {
         "id": "WireCrossPoint",
-        "name": "WireCrossPoint#9",
+        "name": "WireCrossPoint#8",
         "pos": {
           "x": 184.0,
           "y": 59.0
         },
         "params": 1
+      },
+      {
+        "id": "WireCrossPoint",
+        "name": "WireCrossPoint#9",
+        "pos": {
+          "x": 184.0,
+          "y": 29.0
+        },
+        "params": 1
+      },
+      {
+        "id": "dff",
+        "name": "dff#0",
+        "pos": {
+          "x": 140.0,
+          "y": 15.0
+        }
+      },
+      {
+        "id": "dff",
+        "name": "dff#1",
+        "pos": {
+          "x": 190.0,
+          "y": 25.0
+        }
+      },
+      {
+        "id": "dff",
+        "name": "dff#10",
+        "pos": {
+          "x": 190.0,
+          "y": 235.0
+        }
+      },
+      {
+        "id": "dff",
+        "name": "dff#11",
+        "pos": {
+          "x": 140.0,
+          "y": 225.0
+        }
+      },
+      {
+        "id": "dff",
+        "name": "dff#12",
+        "pos": {
+          "x": 140.0,
+          "y": 195.0
+        }
+      },
+      {
+        "id": "dff",
+        "name": "dff#13",
+        "pos": {
+          "x": 190.0,
+          "y": 145.0
+        }
+      },
+      {
+        "id": "dff",
+        "name": "dff#14",
+        "pos": {
+          "x": 190.0,
+          "y": 175.0
+        }
+      },
+      {
+        "id": "dff",
+        "name": "dff#15",
+        "pos": {
+          "x": 140.0,
+          "y": 165.0
+        }
+      },
+      {
+        "id": "dff",
+        "name": "dff#2",
+        "pos": {
+          "x": 190.0,
+          "y": 55.0
+        }
+      },
+      {
+        "id": "dff",
+        "name": "dff#3",
+        "pos": {
+          "x": 140.0,
+          "y": 45.0
+        }
+      },
+      {
+        "id": "dff",
+        "name": "dff#4",
+        "pos": {
+          "x": 190.0,
+          "y": 85.0
+        }
+      },
+      {
+        "id": "dff",
+        "name": "dff#5",
+        "pos": {
+          "x": 190.0,
+          "y": 115.0
+        }
+      },
+      {
+        "id": "dff",
+        "name": "dff#6",
+        "pos": {
+          "x": 140.0,
+          "y": 75.0
+        }
+      },
+      {
+        "id": "dff",
+        "name": "dff#7",
+        "pos": {
+          "x": 140.0,
+          "y": 105.0
+        }
+      },
+      {
+        "id": "dff",
+        "name": "dff#8",
+        "pos": {
+          "x": 140.0,
+          "y": 135.0
+        }
+      },
+      {
+        "id": "dff",
+        "name": "dff#9",
+        "pos": {
+          "x": 190.0,
+          "y": 205.0
+        }
+      },
+      {
+        "id": "mux1_16",
+        "name": "mux1_16#0",
+        "pos": {
+          "x": 15.0,
+          "y": 95.0
+        }
       }
     ],
     "wires": [
           "pinName": "O15"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#0",
+          "compName": "dff#0",
           "pinName": "D"
         },
         "name": "unnamedWire#0",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#1",
+          "compName": "dff#1",
           "pinName": "D"
         },
         "pin2": {
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#15",
+          "compName": "dff#15",
           "pinName": "D"
         },
         "pin2": {
           "pinName": "O4"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#14",
+          "compName": "dff#14",
           "pinName": "D"
         },
         "name": "unnamedWire#11",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#12",
+          "compName": "dff#12",
           "pinName": "D"
         },
         "pin2": {
           "pinName": "O2"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#9",
+          "compName": "dff#9",
           "pinName": "D"
         },
         "name": "unnamedWire#13",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#11",
+          "compName": "dff#11",
           "pinName": "D"
         },
         "pin2": {
           "pinName": "O0"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#10",
+          "compName": "dff#10",
           "pinName": "D"
         },
         "name": "unnamedWire#15",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#16",
+          "compName": "mux1_16#0",
           "pinName": "Y"
         },
         "pin2": {
           "pinName": ""
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#0",
+          "compName": "dff#0",
           "pinName": "C"
         },
         "name": "unnamedWire#17",
           "pinName": ""
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#3",
+          "compName": "dff#3",
           "pinName": "C"
         },
         "name": "unnamedWire#19",
           "pinName": "O13"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#3",
+          "compName": "dff#3",
           "pinName": "D"
         },
         "name": "unnamedWire#2",
           "pinName": ""
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#6",
+          "compName": "dff#6",
           "pinName": "C"
         },
         "name": "unnamedWire#21",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#7",
+          "compName": "dff#7",
           "pinName": "C"
         },
         "pin2": {
           "pinName": ""
         },
         "pin2": {
-          "compName": "WireCrossPoint#7",
+          "compName": "WireCrossPoint#6",
           "pinName": ""
         },
         "name": "unnamedWire#24",
       },
       {
         "pin1": {
-          "compName": "WireCrossPoint#7",
+          "compName": "WireCrossPoint#6",
           "pinName": ""
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#8",
+          "compName": "dff#8",
           "pinName": "C"
         },
         "name": "unnamedWire#25",
       },
       {
         "pin1": {
-          "compName": "WireCrossPoint#7",
+          "compName": "WireCrossPoint#6",
           "pinName": ""
         },
         "pin2": {
-          "compName": "WireCrossPoint#5",
+          "compName": "WireCrossPoint#4",
           "pinName": ""
         },
         "name": "unnamedWire#26",
       },
       {
         "pin1": {
-          "compName": "WireCrossPoint#5",
+          "compName": "WireCrossPoint#4",
           "pinName": ""
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#15",
+          "compName": "dff#15",
           "pinName": "C"
         },
         "name": "unnamedWire#27",
       },
       {
         "pin1": {
-          "compName": "WireCrossPoint#5",
+          "compName": "WireCrossPoint#4",
           "pinName": ""
         },
         "pin2": {
-          "compName": "WireCrossPoint#6",
+          "compName": "WireCrossPoint#5",
           "pinName": ""
         },
         "name": "unnamedWire#28",
       },
       {
         "pin1": {
-          "compName": "WireCrossPoint#6",
+          "compName": "WireCrossPoint#5",
           "pinName": ""
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#12",
+          "compName": "dff#12",
           "pinName": "C"
         },
         "name": "unnamedWire#29",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#2",
+          "compName": "dff#2",
           "pinName": "D"
         },
         "pin2": {
       },
       {
         "pin1": {
-          "compName": "WireCrossPoint#6",
+          "compName": "WireCrossPoint#5",
           "pinName": ""
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#11",
+          "compName": "dff#11",
           "pinName": "C"
         },
         "name": "unnamedWire#30",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#10",
+          "compName": "dff#10",
           "pinName": "C"
         },
         "pin2": {
-          "compName": "WireCrossPoint#12",
+          "compName": "WireCrossPoint#11",
           "pinName": ""
         },
         "name": "unnamedWire#31",
       },
       {
         "pin1": {
-          "compName": "WireCrossPoint#12",
+          "compName": "WireCrossPoint#11",
           "pinName": ""
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#9",
+          "compName": "dff#9",
           "pinName": "C"
         },
         "name": "unnamedWire#32",
       },
       {
         "pin1": {
-          "compName": "WireCrossPoint#12",
+          "compName": "WireCrossPoint#11",
           "pinName": ""
         },
         "pin2": {
-          "compName": "WireCrossPoint#15",
+          "compName": "WireCrossPoint#14",
           "pinName": ""
         },
         "name": "unnamedWire#33",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#14",
+          "compName": "dff#14",
           "pinName": "C"
         },
         "pin2": {
-          "compName": "WireCrossPoint#15",
+          "compName": "WireCrossPoint#14",
           "pinName": ""
         },
         "name": "unnamedWire#34",
       },
       {
         "pin1": {
-          "compName": "WireCrossPoint#14",
+          "compName": "WireCrossPoint#13",
           "pinName": ""
         },
         "pin2": {
-          "compName": "WireCrossPoint#15",
+          "compName": "WireCrossPoint#14",
           "pinName": ""
         },
         "name": "unnamedWire#35",
       },
       {
         "pin1": {
-          "compName": "WireCrossPoint#14",
+          "compName": "WireCrossPoint#13",
           "pinName": ""
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#13",
+          "compName": "dff#13",
           "pinName": "C"
         },
         "name": "unnamedWire#36",
       },
       {
         "pin1": {
-          "compName": "WireCrossPoint#14",
+          "compName": "WireCrossPoint#13",
           "pinName": ""
         },
         "pin2": {
-          "compName": "WireCrossPoint#11",
+          "compName": "WireCrossPoint#10",
           "pinName": ""
         },
         "name": "unnamedWire#37",
       },
       {
         "pin1": {
-          "compName": "WireCrossPoint#11",
+          "compName": "WireCrossPoint#10",
           "pinName": ""
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#5",
+          "compName": "dff#5",
           "pinName": "C"
         },
         "name": "unnamedWire#38",
       },
       {
         "pin1": {
-          "compName": "WireCrossPoint#13",
+          "compName": "WireCrossPoint#12",
           "pinName": ""
         },
         "pin2": {
-          "compName": "WireCrossPoint#11",
+          "compName": "WireCrossPoint#10",
           "pinName": ""
         },
         "name": "unnamedWire#39",
           "pinName": "O11"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#6",
+          "compName": "dff#6",
           "pinName": "D"
         },
         "name": "unnamedWire#4",
       },
       {
         "pin1": {
-          "compName": "WireCrossPoint#13",
+          "compName": "WireCrossPoint#12",
           "pinName": ""
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#4",
+          "compName": "dff#4",
           "pinName": "C"
         },
         "name": "unnamedWire#40",
       },
       {
         "pin1": {
-          "compName": "WireCrossPoint#13",
+          "compName": "WireCrossPoint#12",
           "pinName": ""
         },
         "pin2": {
-          "compName": "WireCrossPoint#9",
+          "compName": "WireCrossPoint#8",
           "pinName": ""
         },
         "name": "unnamedWire#41",
       },
       {
         "pin1": {
-          "compName": "WireCrossPoint#9",
+          "compName": "WireCrossPoint#8",
           "pinName": ""
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#2",
+          "compName": "dff#2",
           "pinName": "C"
         },
         "name": "unnamedWire#42",
       },
       {
         "pin1": {
-          "compName": "WireCrossPoint#9",
+          "compName": "WireCrossPoint#8",
           "pinName": ""
         },
         "pin2": {
-          "compName": "WireCrossPoint#10",
+          "compName": "WireCrossPoint#9",
           "pinName": ""
         },
         "name": "unnamedWire#43",
       },
       {
         "pin1": {
-          "compName": "WireCrossPoint#10",
+          "compName": "WireCrossPoint#9",
           "pinName": ""
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#1",
+          "compName": "dff#1",
           "pinName": "C"
         },
         "name": "unnamedWire#44",
           "pinName": ""
         },
         "pin2": {
-          "compName": "WireCrossPoint#10",
+          "compName": "WireCrossPoint#9",
           "pinName": ""
         },
         "name": "unnamedWire#45",
           "pinName": "_WE"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#16",
+          "compName": "mux1_16#0",
           "pinName": "S"
         },
         "name": "unnamedWire#47",
           "pinName": "I15"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#0",
+          "compName": "dff#0",
           "pinName": "Q"
         },
         "name": "unnamedWire#49",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#4",
+          "compName": "dff#4",
           "pinName": "D"
         },
         "pin2": {
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#1",
+          "compName": "dff#1",
           "pinName": "Q"
         },
         "pin2": {
           "pinName": "I13"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#3",
+          "compName": "dff#3",
           "pinName": "Q"
         },
         "name": "unnamedWire#51",
           "pinName": "I12"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#2",
+          "compName": "dff#2",
           "pinName": "Q"
         },
         "name": "unnamedWire#52",
           "pinName": "I11"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#6",
+          "compName": "dff#6",
           "pinName": "Q"
         },
         "name": "unnamedWire#53",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#4",
+          "compName": "dff#4",
           "pinName": "Q"
         },
         "pin2": {
           "pinName": "I9"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#7",
+          "compName": "dff#7",
           "pinName": "Q"
         },
         "name": "unnamedWire#55",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#5",
+          "compName": "dff#5",
           "pinName": "Q"
         },
         "pin2": {
           "pinName": "I7"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#8",
+          "compName": "dff#8",
           "pinName": "Q"
         },
         "name": "unnamedWire#57",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#13",
+          "compName": "dff#13",
           "pinName": "Q"
         },
         "pin2": {
           "pinName": "I5"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#15",
+          "compName": "dff#15",
           "pinName": "Q"
         },
         "name": "unnamedWire#59",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#7",
+          "compName": "dff#7",
           "pinName": "D"
         },
         "pin2": {
           "pinName": "I4"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#14",
+          "compName": "dff#14",
           "pinName": "Q"
         },
         "name": "unnamedWire#60",
           "pinName": "I3"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#12",
+          "compName": "dff#12",
           "pinName": "Q"
         },
         "name": "unnamedWire#61",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#9",
+          "compName": "dff#9",
           "pinName": "Q"
         },
         "pin2": {
           "pinName": "I1"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#11",
+          "compName": "dff#11",
           "pinName": "Q"
         },
         "name": "unnamedWire#63",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#10",
+          "compName": "dff#10",
           "pinName": "Q"
         },
         "pin2": {
           "pinName": "O"
         },
         "pin2": {
-          "compName": "WireCrossPoint#8",
+          "compName": "WireCrossPoint#7",
           "pinName": ""
         },
         "name": "unnamedWire#65",
       },
       {
         "pin1": {
-          "compName": "WireCrossPoint#8",
+          "compName": "WireCrossPoint#7",
           "pinName": ""
         },
         "pin2": {
       },
       {
         "pin1": {
-          "compName": "WireCrossPoint#8",
+          "compName": "WireCrossPoint#7",
           "pinName": ""
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#16",
+          "compName": "mux1_16#0",
           "pinName": "I1"
         },
         "name": "unnamedWire#67",
           "pinName": "D"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#16",
+          "compName": "mux1_16#0",
           "pinName": "I0"
         },
         "name": "unnamedWire#68",
           "pinName": "O8"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#5",
+          "compName": "dff#5",
           "pinName": "D"
         },
         "name": "unnamedWire#7",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#8",
+          "compName": "dff#8",
           "pinName": "D"
         },
         "pin2": {
           "pinName": "O6"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#13",
+          "compName": "dff#13",
           "pinName": "D"
         },
         "name": "unnamedWire#9",
index d54a34e..ac0a451 100644 (file)
   "innerScale": 0.2,
   "submodel": {
     "components": [
-      {
-        "id": "mux1_4",
-        "name": "DeserializedSubmodelComponent#0",
-        "pos": {
-          "x": 55.0,
-          "y": 70.0
-        }
-      },
       {
         "id": "WireCrossPoint",
         "name": "WireCrossPoint#0",
           "x": 115.0,
           "y": 170.0
         }
+      },
+      {
+        "id": "mux1_4",
+        "name": "mux1_4#0",
+        "pos": {
+          "x": 55.0,
+          "y": 70.0
+        }
       }
     ],
     "wires": [
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#0",
+          "compName": "mux1_4#0",
           "pinName": "Y1"
         },
         "pin2": {
           "pinName": "D1"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#0",
+          "compName": "mux1_4#0",
           "pinName": "I1_1"
         },
         "name": "unnamedWire#10",
           "pinName": "D2"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#0",
+          "compName": "mux1_4#0",
           "pinName": "I1_2"
         },
         "name": "unnamedWire#11",
           "pinName": "D3"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#0",
+          "compName": "mux1_4#0",
           "pinName": "I1_3"
         },
         "name": "unnamedWire#12",
           "pinName": "D4"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#0",
+          "compName": "mux1_4#0",
           "pinName": "I1_4"
         },
         "name": "unnamedWire#17",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#0",
+          "compName": "mux1_4#0",
           "pinName": "Y2"
         },
         "pin2": {
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#0",
+          "compName": "mux1_4#0",
           "pinName": "Y3"
         },
         "pin2": {
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#0",
+          "compName": "mux1_4#0",
           "pinName": "Y4"
         },
         "pin2": {
           "pinName": ""
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#0",
+          "compName": "mux1_4#0",
           "pinName": "I0_1"
         },
         "name": "unnamedWire#24",
           "pinName": ""
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#0",
+          "compName": "mux1_4#0",
           "pinName": "I0_2"
         },
         "name": "unnamedWire#25",
           "pinName": ""
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#0",
+          "compName": "mux1_4#0",
           "pinName": "I0_3"
         },
         "name": "unnamedWire#26",
           "pinName": ""
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#0",
+          "compName": "mux1_4#0",
           "pinName": "I0_4"
         },
         "name": "unnamedWire#28",
           "pinName": "WE"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#0",
+          "compName": "mux1_4#0",
           "pinName": "S0"
         },
         "name": "unnamedWire#9",
index 2902594..0320f12 100644 (file)
   "innerScale": 0.2,
   "submodel": {
     "components": [
-      {
-        "id": "mux1_4",
-        "name": "DeserializedSubmodelComponent#0",
-        "pos": {
-          "x": 55.0,
-          "y": 70.0
-        }
-      },
       {
         "id": "WireCrossPoint",
         "name": "WireCrossPoint#0",
           "x": 115.0,
           "y": 170.0
         }
+      },
+      {
+        "id": "mux1_4",
+        "name": "mux1_4#0",
+        "pos": {
+          "x": 55.0,
+          "y": 70.0
+        }
       }
     ],
     "wires": [
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#0",
+          "compName": "mux1_4#0",
           "pinName": "Y1"
         },
         "pin2": {
           "pinName": "D1"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#0",
+          "compName": "mux1_4#0",
           "pinName": "I0_1"
         },
         "name": "unnamedWire#10",
           "pinName": "D2"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#0",
+          "compName": "mux1_4#0",
           "pinName": "I0_2"
         },
         "name": "unnamedWire#11",
           "pinName": "D3"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#0",
+          "compName": "mux1_4#0",
           "pinName": "I0_3"
         },
         "name": "unnamedWire#12",
           "pinName": "D4"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#0",
+          "compName": "mux1_4#0",
           "pinName": "I0_4"
         },
         "name": "unnamedWire#17",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#0",
+          "compName": "mux1_4#0",
           "pinName": "Y2"
         },
         "pin2": {
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#0",
+          "compName": "mux1_4#0",
           "pinName": "Y3"
         },
         "pin2": {
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#0",
+          "compName": "mux1_4#0",
           "pinName": "Y4"
         },
         "pin2": {
           "pinName": ""
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#0",
+          "compName": "mux1_4#0",
           "pinName": "I1_1"
         },
         "name": "unnamedWire#24",
           "pinName": ""
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#0",
+          "compName": "mux1_4#0",
           "pinName": "I1_2"
         },
         "name": "unnamedWire#25",
           "pinName": ""
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#0",
+          "compName": "mux1_4#0",
           "pinName": "I1_3"
         },
         "name": "unnamedWire#26",
           "pinName": ""
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#0",
+          "compName": "mux1_4#0",
           "pinName": "I1_4"
         },
         "name": "unnamedWire#28",
           "pinName": "_WE"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#0",
+          "compName": "mux1_4#0",
           "pinName": "S0"
         },
         "name": "unnamedWire#9",
index 0d1cb5a..faeaeb5 100644 (file)
   "innerScale": 0.2,
   "submodel": {
     "components": [
-      {
-        "id": "sel1",
-        "name": "DeserializedSubmodelComponent#10",
-        "pos": {
-          "x": 95.0,
-          "y": 145.0
-        }
-      },
-      {
-        "id": "sel1",
-        "name": "DeserializedSubmodelComponent#11",
-        "pos": {
-          "x": 95.0,
-          "y": 205.0
-        }
-      },
-      {
-        "id": "sel1",
-        "name": "DeserializedSubmodelComponent#12",
-        "pos": {
-          "x": 150.0,
-          "y": 285.0
-        }
-      },
-      {
-        "id": "sel1",
-        "name": "DeserializedSubmodelComponent#13",
-        "pos": {
-          "x": 150.0,
-          "y": 225.0
-        }
-      },
-      {
-        "id": "sel1",
-        "name": "DeserializedSubmodelComponent#14",
-        "pos": {
-          "x": 95.0,
-          "y": 265.0
-        }
-      },
-      {
-        "id": "sel1",
-        "name": "DeserializedSubmodelComponent#15",
-        "pos": {
-          "x": 150.0,
-          "y": 345.0
-        }
-      },
-      {
-        "id": "sel1",
-        "name": "DeserializedSubmodelComponent#4",
-        "pos": {
-          "x": 150.0,
-          "y": 45.0
-        }
-      },
-      {
-        "id": "sel1",
-        "name": "DeserializedSubmodelComponent#5",
-        "pos": {
-          "x": 95.0,
-          "y": 85.0
-        }
-      },
-      {
-        "id": "sel1",
-        "name": "DeserializedSubmodelComponent#6",
-        "pos": {
-          "x": 150.0,
-          "y": 105.0
-        }
-      },
-      {
-        "id": "sel1",
-        "name": "DeserializedSubmodelComponent#7",
-        "pos": {
-          "x": 95.0,
-          "y": 25.0
-        }
-      },
-      {
-        "id": "sel1",
-        "name": "DeserializedSubmodelComponent#8",
-        "pos": {
-          "x": 95.0,
-          "y": 325.0
-        }
-      },
-      {
-        "id": "sel1",
-        "name": "DeserializedSubmodelComponent#9",
-        "pos": {
-          "x": 150.0,
-          "y": 165.0
-        }
-      },
       {
         "id": "Merger",
         "name": "Merger#0",
       },
       {
         "id": "WireCrossPoint",
-        "name": "WireCrossPoint#10",
-        "pos": {
-          "x": 144.0,
-          "y": 239.0
-        },
-        "params": 1
-      },
-      {
-        "id": "WireCrossPoint",
-        "name": "WireCrossPoint#11",
+        "name": "WireCrossPoint#0",
         "pos": {
           "x": 139.0,
-          "y": 229.0
+          "y": 49.0
         },
         "params": 1
       },
       {
         "id": "WireCrossPoint",
-        "name": "WireCrossPoint#12",
+        "name": "WireCrossPoint#1",
         "pos": {
           "x": 144.0,
-          "y": 299.0
-        },
-        "params": 1
-      },
-      {
-        "id": "WireCrossPoint",
-        "name": "WireCrossPoint#13",
-        "pos": {
-          "x": 139.0,
-          "y": 289.0
+          "y": 59.0
         },
         "params": 1
       },
       {
         "id": "WireCrossPoint",
-        "name": "WireCrossPoint#14",
+        "name": "WireCrossPoint#10",
         "pos": {
           "x": 89.0,
           "y": 4.0
       },
       {
         "id": "WireCrossPoint",
-        "name": "WireCrossPoint#15",
+        "name": "WireCrossPoint#11",
         "pos": {
           "x": 84.0,
           "y": 19.0
       },
       {
         "id": "WireCrossPoint",
-        "name": "WireCrossPoint#16",
+        "name": "WireCrossPoint#12",
         "pos": {
           "x": 49.0,
           "y": 24.0
       },
       {
         "id": "WireCrossPoint",
-        "name": "WireCrossPoint#17",
+        "name": "WireCrossPoint#13",
         "pos": {
           "x": 49.0,
           "y": 14.0
       },
       {
         "id": "WireCrossPoint",
-        "name": "WireCrossPoint#18",
+        "name": "WireCrossPoint#14",
         "pos": {
           "x": 84.0,
           "y": 269.0
       },
       {
         "id": "WireCrossPoint",
-        "name": "WireCrossPoint#19",
+        "name": "WireCrossPoint#15",
         "pos": {
           "x": 89.0,
           "y": 279.0
       },
       {
         "id": "WireCrossPoint",
-        "name": "WireCrossPoint#20",
+        "name": "WireCrossPoint#16",
         "pos": {
           "x": 84.0,
           "y": 209.0
       },
       {
         "id": "WireCrossPoint",
-        "name": "WireCrossPoint#21",
+        "name": "WireCrossPoint#17",
         "pos": {
           "x": 89.0,
           "y": 219.0
       },
       {
         "id": "WireCrossPoint",
-        "name": "WireCrossPoint#22",
+        "name": "WireCrossPoint#18",
         "pos": {
           "x": 89.0,
           "y": 159.0
       },
       {
         "id": "WireCrossPoint",
-        "name": "WireCrossPoint#23",
+        "name": "WireCrossPoint#19",
         "pos": {
           "x": 84.0,
           "y": 149.0
       },
       {
         "id": "WireCrossPoint",
-        "name": "WireCrossPoint#24",
+        "name": "WireCrossPoint#2",
+        "pos": {
+          "x": 144.0,
+          "y": 119.0
+        },
+        "params": 1
+      },
+      {
+        "id": "WireCrossPoint",
+        "name": "WireCrossPoint#20",
         "pos": {
           "x": 84.0,
           "y": 89.0
       },
       {
         "id": "WireCrossPoint",
-        "name": "WireCrossPoint#25",
+        "name": "WireCrossPoint#21",
         "pos": {
           "x": 89.0,
           "y": 99.0
       },
       {
         "id": "WireCrossPoint",
-        "name": "WireCrossPoint#26",
+        "name": "WireCrossPoint#22",
         "pos": {
           "x": 84.0,
           "y": 29.0
       },
       {
         "id": "WireCrossPoint",
-        "name": "WireCrossPoint#27",
+        "name": "WireCrossPoint#23",
         "pos": {
           "x": 89.0,
           "y": 39.0
         },
         "params": 1
       },
+      {
+        "id": "WireCrossPoint",
+        "name": "WireCrossPoint#3",
+        "pos": {
+          "x": 139.0,
+          "y": 109.0
+        },
+        "params": 1
+      },
       {
         "id": "WireCrossPoint",
         "name": "WireCrossPoint#4",
         "pos": {
           "x": 139.0,
-          "y": 49.0
+          "y": 169.0
         },
         "params": 1
       },
         "name": "WireCrossPoint#5",
         "pos": {
           "x": 144.0,
-          "y": 59.0
+          "y": 179.0
         },
         "params": 1
       },
         "name": "WireCrossPoint#6",
         "pos": {
           "x": 144.0,
-          "y": 119.0
+          "y": 239.0
         },
         "params": 1
       },
         "name": "WireCrossPoint#7",
         "pos": {
           "x": 139.0,
-          "y": 109.0
+          "y": 229.0
         },
         "params": 1
       },
         "id": "WireCrossPoint",
         "name": "WireCrossPoint#8",
         "pos": {
-          "x": 139.0,
-          "y": 169.0
+          "x": 144.0,
+          "y": 299.0
         },
         "params": 1
       },
         "id": "WireCrossPoint",
         "name": "WireCrossPoint#9",
         "pos": {
-          "x": 144.0,
-          "y": 179.0
+          "x": 139.0,
+          "y": 289.0
         },
         "params": 1
+      },
+      {
+        "id": "sel1",
+        "name": "sel1#0",
+        "pos": {
+          "x": 150.0,
+          "y": 45.0
+        }
+      },
+      {
+        "id": "sel1",
+        "name": "sel1#1",
+        "pos": {
+          "x": 95.0,
+          "y": 85.0
+        }
+      },
+      {
+        "id": "sel1",
+        "name": "sel1#10",
+        "pos": {
+          "x": 95.0,
+          "y": 265.0
+        }
+      },
+      {
+        "id": "sel1",
+        "name": "sel1#11",
+        "pos": {
+          "x": 150.0,
+          "y": 345.0
+        }
+      },
+      {
+        "id": "sel1",
+        "name": "sel1#2",
+        "pos": {
+          "x": 150.0,
+          "y": 105.0
+        }
+      },
+      {
+        "id": "sel1",
+        "name": "sel1#3",
+        "pos": {
+          "x": 95.0,
+          "y": 25.0
+        }
+      },
+      {
+        "id": "sel1",
+        "name": "sel1#4",
+        "pos": {
+          "x": 95.0,
+          "y": 325.0
+        }
+      },
+      {
+        "id": "sel1",
+        "name": "sel1#5",
+        "pos": {
+          "x": 150.0,
+          "y": 165.0
+        }
+      },
+      {
+        "id": "sel1",
+        "name": "sel1#6",
+        "pos": {
+          "x": 95.0,
+          "y": 145.0
+        }
+      },
+      {
+        "id": "sel1",
+        "name": "sel1#7",
+        "pos": {
+          "x": 95.0,
+          "y": 205.0
+        }
+      },
+      {
+        "id": "sel1",
+        "name": "sel1#8",
+        "pos": {
+          "x": 150.0,
+          "y": 285.0
+        }
+      },
+      {
+        "id": "sel1",
+        "name": "sel1#9",
+        "pos": {
+          "x": 150.0,
+          "y": 225.0
+        }
       }
     ],
     "wires": [
       {
         "pin1": {
-          "compName": "WireCrossPoint#15",
+          "compName": "WireCrossPoint#11",
           "pinName": ""
         },
         "pin2": {
-          "compName": "WireCrossPoint#26",
+          "compName": "WireCrossPoint#22",
           "pinName": ""
         },
         "name": "unnamedWire#0",
       },
       {
         "pin1": {
-          "compName": "WireCrossPoint#14",
+          "compName": "WireCrossPoint#10",
           "pinName": ""
         },
         "pin2": {
-          "compName": "WireCrossPoint#27",
+          "compName": "WireCrossPoint#23",
           "pinName": ""
         },
         "name": "unnamedWire#1",
       },
       {
         "pin1": {
-          "compName": "WireCrossPoint#20",
+          "compName": "WireCrossPoint#16",
           "pinName": ""
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#11",
+          "compName": "sel1#7",
           "pinName": "S1"
         },
         "name": "unnamedWire#10",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#7",
+          "compName": "sel1#3",
           "pinName": "Y"
         },
         "pin2": {
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#4",
+          "compName": "sel1#0",
           "pinName": "Y"
         },
         "pin2": {
           "pinName": "I9"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#5",
+          "compName": "sel1#1",
           "pinName": "Y"
         },
         "name": "unnamedWire#105",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#6",
+          "compName": "sel1#2",
           "pinName": "Y"
         },
         "pin2": {
           "pinName": "I7"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#10",
+          "compName": "sel1#6",
           "pinName": "Y"
         },
         "name": "unnamedWire#107",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#9",
+          "compName": "sel1#5",
           "pinName": "Y"
         },
         "pin2": {
           "pinName": "I5"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#11",
+          "compName": "sel1#7",
           "pinName": "Y"
         },
         "name": "unnamedWire#109",
       },
       {
         "pin1": {
-          "compName": "WireCrossPoint#21",
+          "compName": "WireCrossPoint#17",
           "pinName": ""
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#11",
+          "compName": "sel1#7",
           "pinName": "S2"
         },
         "name": "unnamedWire#11",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#13",
+          "compName": "sel1#9",
           "pinName": "Y"
         },
         "pin2": {
           "pinName": "I3"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#14",
+          "compName": "sel1#10",
           "pinName": "Y"
         },
         "name": "unnamedWire#111",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#12",
+          "compName": "sel1#8",
           "pinName": "Y"
         },
         "pin2": {
           "pinName": "I1"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#8",
+          "compName": "sel1#4",
           "pinName": "Y"
         },
         "name": "unnamedWire#113",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#15",
+          "compName": "sel1#11",
           "pinName": "Y"
         },
         "pin2": {
       },
       {
         "pin1": {
-          "compName": "WireCrossPoint#14",
+          "compName": "WireCrossPoint#10",
           "pinName": ""
         },
         "pin2": {
-          "compName": "WireCrossPoint#17",
+          "compName": "WireCrossPoint#13",
           "pinName": ""
         },
         "name": "unnamedWire#116",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#14",
+          "compName": "sel1#10",
           "pinName": "S1"
         },
         "pin2": {
-          "compName": "WireCrossPoint#18",
+          "compName": "WireCrossPoint#14",
           "pinName": ""
         },
         "name": "unnamedWire#12",
       },
       {
         "pin1": {
-          "compName": "WireCrossPoint#19",
+          "compName": "WireCrossPoint#15",
           "pinName": ""
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#14",
+          "compName": "sel1#10",
           "pinName": "S2"
         },
         "name": "unnamedWire#13",
       },
       {
         "pin1": {
-          "compName": "WireCrossPoint#13",
+          "compName": "WireCrossPoint#9",
           "pinName": ""
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#15",
+          "compName": "sel1#11",
           "pinName": "S1"
         },
         "name": "unnamedWire#16",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#12",
+          "compName": "sel1#8",
           "pinName": "S2"
         },
         "pin2": {
-          "compName": "WireCrossPoint#12",
+          "compName": "WireCrossPoint#8",
           "pinName": ""
         },
         "name": "unnamedWire#18",
       },
       {
         "pin1": {
-          "compName": "WireCrossPoint#13",
+          "compName": "WireCrossPoint#9",
           "pinName": ""
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#12",
+          "compName": "sel1#8",
           "pinName": "S1"
         },
         "name": "unnamedWire#19",
       },
       {
         "pin1": {
-          "compName": "WireCrossPoint#15",
+          "compName": "WireCrossPoint#11",
           "pinName": ""
         },
         "pin2": {
-          "compName": "WireCrossPoint#4",
+          "compName": "WireCrossPoint#0",
           "pinName": ""
         },
         "name": "unnamedWire#2",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#13",
+          "compName": "sel1#9",
           "pinName": "S2"
         },
         "pin2": {
-          "compName": "WireCrossPoint#10",
+          "compName": "WireCrossPoint#6",
           "pinName": ""
         },
         "name": "unnamedWire#20",
       },
       {
         "pin1": {
-          "compName": "WireCrossPoint#11",
+          "compName": "WireCrossPoint#7",
           "pinName": ""
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#13",
+          "compName": "sel1#9",
           "pinName": "S1"
         },
         "name": "unnamedWire#21",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#9",
+          "compName": "sel1#5",
           "pinName": "S2"
         },
         "pin2": {
-          "compName": "WireCrossPoint#9",
+          "compName": "WireCrossPoint#5",
           "pinName": ""
         },
         "name": "unnamedWire#22",
       },
       {
         "pin1": {
-          "compName": "WireCrossPoint#8",
+          "compName": "WireCrossPoint#4",
           "pinName": ""
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#9",
+          "compName": "sel1#5",
           "pinName": "S1"
         },
         "name": "unnamedWire#23",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#6",
+          "compName": "sel1#2",
           "pinName": "S2"
         },
         "pin2": {
-          "compName": "WireCrossPoint#6",
+          "compName": "WireCrossPoint#2",
           "pinName": ""
         },
         "name": "unnamedWire#24",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#6",
+          "compName": "sel1#2",
           "pinName": "S1"
         },
         "pin2": {
-          "compName": "WireCrossPoint#7",
+          "compName": "WireCrossPoint#3",
           "pinName": ""
         },
         "name": "unnamedWire#25",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#4",
+          "compName": "sel1#0",
           "pinName": "S2"
         },
         "pin2": {
-          "compName": "WireCrossPoint#5",
+          "compName": "WireCrossPoint#1",
           "pinName": ""
         },
         "name": "unnamedWire#26",
       },
       {
         "pin1": {
-          "compName": "WireCrossPoint#4",
+          "compName": "WireCrossPoint#0",
           "pinName": ""
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#4",
+          "compName": "sel1#0",
           "pinName": "S1"
         },
         "name": "unnamedWire#27",
       },
       {
         "pin1": {
-          "compName": "WireCrossPoint#14",
+          "compName": "WireCrossPoint#10",
           "pinName": ""
         },
         "pin2": {
-          "compName": "WireCrossPoint#5",
+          "compName": "WireCrossPoint#1",
           "pinName": ""
         },
         "name": "unnamedWire#3",
       },
       {
         "pin1": {
-          "compName": "WireCrossPoint#4",
+          "compName": "WireCrossPoint#0",
           "pinName": ""
         },
         "pin2": {
-          "compName": "WireCrossPoint#7",
+          "compName": "WireCrossPoint#3",
           "pinName": ""
         },
         "name": "unnamedWire#35",
       },
       {
         "pin1": {
-          "compName": "WireCrossPoint#7",
+          "compName": "WireCrossPoint#3",
           "pinName": ""
         },
         "pin2": {
-          "compName": "WireCrossPoint#8",
+          "compName": "WireCrossPoint#4",
           "pinName": ""
         },
         "name": "unnamedWire#36",
       },
       {
         "pin1": {
-          "compName": "WireCrossPoint#8",
+          "compName": "WireCrossPoint#4",
           "pinName": ""
         },
         "pin2": {
-          "compName": "WireCrossPoint#11",
+          "compName": "WireCrossPoint#7",
           "pinName": ""
         },
         "name": "unnamedWire#37",
       },
       {
         "pin1": {
-          "compName": "WireCrossPoint#11",
+          "compName": "WireCrossPoint#7",
           "pinName": ""
         },
         "pin2": {
-          "compName": "WireCrossPoint#13",
+          "compName": "WireCrossPoint#9",
           "pinName": ""
         },
         "name": "unnamedWire#38",
       },
       {
         "pin1": {
-          "compName": "WireCrossPoint#5",
+          "compName": "WireCrossPoint#1",
           "pinName": ""
         },
         "pin2": {
-          "compName": "WireCrossPoint#6",
+          "compName": "WireCrossPoint#2",
           "pinName": ""
         },
         "name": "unnamedWire#39",
       },
       {
         "pin1": {
-          "compName": "WireCrossPoint#26",
+          "compName": "WireCrossPoint#22",
           "pinName": ""
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#7",
+          "compName": "sel1#3",
           "pinName": "S1"
         },
         "name": "unnamedWire#4",
       },
       {
         "pin1": {
-          "compName": "WireCrossPoint#6",
+          "compName": "WireCrossPoint#2",
           "pinName": ""
         },
         "pin2": {
-          "compName": "WireCrossPoint#9",
+          "compName": "WireCrossPoint#5",
           "pinName": ""
         },
         "name": "unnamedWire#40",
       },
       {
         "pin1": {
-          "compName": "WireCrossPoint#9",
+          "compName": "WireCrossPoint#5",
           "pinName": ""
         },
         "pin2": {
-          "compName": "WireCrossPoint#10",
+          "compName": "WireCrossPoint#6",
           "pinName": ""
         },
         "name": "unnamedWire#41",
       },
       {
         "pin1": {
-          "compName": "WireCrossPoint#10",
+          "compName": "WireCrossPoint#6",
           "pinName": ""
         },
         "pin2": {
-          "compName": "WireCrossPoint#12",
+          "compName": "WireCrossPoint#8",
           "pinName": ""
         },
         "name": "unnamedWire#42",
       },
       {
         "pin1": {
-          "compName": "WireCrossPoint#12",
+          "compName": "WireCrossPoint#8",
           "pinName": ""
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#15",
+          "compName": "sel1#11",
           "pinName": "S2"
         },
         "name": "unnamedWire#43",
       },
       {
         "pin1": {
-          "compName": "WireCrossPoint#26",
+          "compName": "WireCrossPoint#22",
           "pinName": ""
         },
         "pin2": {
-          "compName": "WireCrossPoint#24",
+          "compName": "WireCrossPoint#20",
           "pinName": ""
         },
         "name": "unnamedWire#44",
       },
       {
         "pin1": {
-          "compName": "WireCrossPoint#24",
+          "compName": "WireCrossPoint#20",
           "pinName": ""
         },
         "pin2": {
-          "compName": "WireCrossPoint#23",
+          "compName": "WireCrossPoint#19",
           "pinName": ""
         },
         "name": "unnamedWire#45",
       },
       {
         "pin1": {
-          "compName": "WireCrossPoint#23",
+          "compName": "WireCrossPoint#19",
           "pinName": ""
         },
         "pin2": {
-          "compName": "WireCrossPoint#20",
+          "compName": "WireCrossPoint#16",
           "pinName": ""
         },
         "name": "unnamedWire#46",
       },
       {
         "pin1": {
-          "compName": "WireCrossPoint#20",
+          "compName": "WireCrossPoint#16",
           "pinName": ""
         },
         "pin2": {
-          "compName": "WireCrossPoint#18",
+          "compName": "WireCrossPoint#14",
           "pinName": ""
         },
         "name": "unnamedWire#47",
       },
       {
         "pin1": {
-          "compName": "WireCrossPoint#18",
+          "compName": "WireCrossPoint#14",
           "pinName": ""
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#8",
+          "compName": "sel1#4",
           "pinName": "S1"
         },
         "name": "unnamedWire#48",
       },
       {
         "pin1": {
-          "compName": "WireCrossPoint#19",
+          "compName": "WireCrossPoint#15",
           "pinName": ""
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#8",
+          "compName": "sel1#4",
           "pinName": "S2"
         },
         "name": "unnamedWire#49",
       },
       {
         "pin1": {
-          "compName": "WireCrossPoint#27",
+          "compName": "WireCrossPoint#23",
           "pinName": ""
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#7",
+          "compName": "sel1#3",
           "pinName": "S2"
         },
         "name": "unnamedWire#5",
       },
       {
         "pin1": {
-          "compName": "WireCrossPoint#19",
+          "compName": "WireCrossPoint#15",
           "pinName": ""
         },
         "pin2": {
-          "compName": "WireCrossPoint#21",
+          "compName": "WireCrossPoint#17",
           "pinName": ""
         },
         "name": "unnamedWire#50",
       },
       {
         "pin1": {
-          "compName": "WireCrossPoint#21",
+          "compName": "WireCrossPoint#17",
           "pinName": ""
         },
         "pin2": {
-          "compName": "WireCrossPoint#22",
+          "compName": "WireCrossPoint#18",
           "pinName": ""
         },
         "name": "unnamedWire#51",
       },
       {
         "pin1": {
-          "compName": "WireCrossPoint#25",
+          "compName": "WireCrossPoint#21",
           "pinName": ""
         },
         "pin2": {
-          "compName": "WireCrossPoint#22",
+          "compName": "WireCrossPoint#18",
           "pinName": ""
         },
         "name": "unnamedWire#52",
       },
       {
         "pin1": {
-          "compName": "WireCrossPoint#25",
+          "compName": "WireCrossPoint#21",
           "pinName": ""
         },
         "pin2": {
-          "compName": "WireCrossPoint#27",
+          "compName": "WireCrossPoint#23",
           "pinName": ""
         },
         "name": "unnamedWire#53",
       },
       {
         "pin1": {
-          "compName": "WireCrossPoint#24",
+          "compName": "WireCrossPoint#20",
           "pinName": ""
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#5",
+          "compName": "sel1#1",
           "pinName": "S1"
         },
         "name": "unnamedWire#6",
           "pinName": "O11"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#7",
+          "compName": "sel1#3",
           "pinName": "I1"
         },
         "name": "unnamedWire#64",
           "pinName": "O10"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#4",
+          "compName": "sel1#0",
           "pinName": "I1"
         },
         "name": "unnamedWire#65",
           "pinName": "O9"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#5",
+          "compName": "sel1#1",
           "pinName": "I1"
         },
         "name": "unnamedWire#66",
           "pinName": "O8"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#6",
+          "compName": "sel1#2",
           "pinName": "I1"
         },
         "name": "unnamedWire#67",
           "pinName": "O7"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#10",
+          "compName": "sel1#6",
           "pinName": "I1"
         },
         "name": "unnamedWire#68",
           "pinName": "O6"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#9",
+          "compName": "sel1#5",
           "pinName": "I1"
         },
         "name": "unnamedWire#69",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#5",
+          "compName": "sel1#1",
           "pinName": "S2"
         },
         "pin2": {
-          "compName": "WireCrossPoint#25",
+          "compName": "WireCrossPoint#21",
           "pinName": ""
         },
         "name": "unnamedWire#7",
           "pinName": "O5"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#11",
+          "compName": "sel1#7",
           "pinName": "I1"
         },
         "name": "unnamedWire#70",
           "pinName": "O4"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#13",
+          "compName": "sel1#9",
           "pinName": "I1"
         },
         "name": "unnamedWire#71",
           "pinName": "O3"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#14",
+          "compName": "sel1#10",
           "pinName": "I1"
         },
         "name": "unnamedWire#72",
           "pinName": "O2"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#12",
+          "compName": "sel1#8",
           "pinName": "I1"
         },
         "name": "unnamedWire#73",
           "pinName": "O1"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#8",
+          "compName": "sel1#4",
           "pinName": "I1"
         },
         "name": "unnamedWire#74",
           "pinName": "O0"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#15",
+          "compName": "sel1#11",
           "pinName": "I1"
         },
         "name": "unnamedWire#75",
       },
       {
         "pin1": {
-          "compName": "WireCrossPoint#23",
+          "compName": "WireCrossPoint#19",
           "pinName": ""
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#10",
+          "compName": "sel1#6",
           "pinName": "S1"
         },
         "name": "unnamedWire#8",
           "pinName": "O11"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#7",
+          "compName": "sel1#3",
           "pinName": "I2"
         },
         "name": "unnamedWire#82",
           "pinName": "O10"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#4",
+          "compName": "sel1#0",
           "pinName": "I2"
         },
         "name": "unnamedWire#83",
           "pinName": "O9"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#5",
+          "compName": "sel1#1",
           "pinName": "I2"
         },
         "name": "unnamedWire#84",
           "pinName": "O8"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#6",
+          "compName": "sel1#2",
           "pinName": "I2"
         },
         "name": "unnamedWire#85",
           "pinName": "O7"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#10",
+          "compName": "sel1#6",
           "pinName": "I2"
         },
         "name": "unnamedWire#86",
           "pinName": "O6"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#9",
+          "compName": "sel1#5",
           "pinName": "I2"
         },
         "name": "unnamedWire#87",
           "pinName": "O5"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#11",
+          "compName": "sel1#7",
           "pinName": "I2"
         },
         "name": "unnamedWire#88",
           "pinName": "O4"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#13",
+          "compName": "sel1#9",
           "pinName": "I2"
         },
         "name": "unnamedWire#89",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#10",
+          "compName": "sel1#6",
           "pinName": "S2"
         },
         "pin2": {
-          "compName": "WireCrossPoint#22",
+          "compName": "WireCrossPoint#18",
           "pinName": ""
         },
         "name": "unnamedWire#9",
           "pinName": "O3"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#14",
+          "compName": "sel1#10",
           "pinName": "I2"
         },
         "name": "unnamedWire#90",
           "pinName": "O2"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#12",
+          "compName": "sel1#8",
           "pinName": "I2"
         },
         "name": "unnamedWire#91",
           "pinName": "O1"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#8",
+          "compName": "sel1#4",
           "pinName": "I2"
         },
         "name": "unnamedWire#92",
           "pinName": "O0"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#15",
+          "compName": "sel1#11",
           "pinName": "I2"
         },
         "name": "unnamedWire#93",
           "pinName": "Y"
         },
         "pin2": {
-          "compName": "WireCrossPoint#15",
+          "compName": "WireCrossPoint#11",
           "pinName": ""
         },
         "name": "unnamedWire#94",
       },
       {
         "pin1": {
-          "compName": "WireCrossPoint#16",
+          "compName": "WireCrossPoint#12",
           "pinName": ""
         },
         "pin2": {
-          "compName": "WireCrossPoint#17",
+          "compName": "WireCrossPoint#13",
           "pinName": ""
         },
         "name": "unnamedWire#95",
       },
       {
         "pin1": {
-          "compName": "WireCrossPoint#16",
+          "compName": "WireCrossPoint#12",
           "pinName": ""
         },
         "pin2": {
       },
       {
         "pin1": {
-          "compName": "WireCrossPoint#17",
+          "compName": "WireCrossPoint#13",
           "pinName": ""
         },
         "pin2": {
           "pinName": "S"
         },
         "pin2": {
-          "compName": "WireCrossPoint#16",
+          "compName": "WireCrossPoint#12",
           "pinName": ""
         },
         "name": "unnamedWire#98",
index 65ce55c..c282fa5 100644 (file)
   "innerScale": 0.2,
   "submodel": {
     "components": [
-      {
-        "id": "sel1",
-        "name": "DeserializedSubmodelComponent#0",
-        "pos": {
-          "x": 115.0,
-          "y": 25.0
-        }
-      },
-      {
-        "id": "sel1",
-        "name": "DeserializedSubmodelComponent#1",
-        "pos": {
-          "x": 175.0,
-          "y": 45.0
-        }
-      },
-      {
-        "id": "sel1",
-        "name": "DeserializedSubmodelComponent#10",
-        "pos": {
-          "x": 115.0,
-          "y": 265.0
-        }
-      },
-      {
-        "id": "sel1",
-        "name": "DeserializedSubmodelComponent#11",
-        "pos": {
-          "x": 115.0,
-          "y": 325.0
-        }
-      },
-      {
-        "id": "sel1",
-        "name": "DeserializedSubmodelComponent#12",
-        "pos": {
-          "x": 175.0,
-          "y": 405.0
-        }
-      },
-      {
-        "id": "sel1",
-        "name": "DeserializedSubmodelComponent#13",
-        "pos": {
-          "x": 175.0,
-          "y": 345.0
-        }
-      },
-      {
-        "id": "sel1",
-        "name": "DeserializedSubmodelComponent#14",
-        "pos": {
-          "x": 115.0,
-          "y": 385.0
-        }
-      },
-      {
-        "id": "sel1",
-        "name": "DeserializedSubmodelComponent#15",
-        "pos": {
-          "x": 175.0,
-          "y": 465.0
-        }
-      },
-      {
-        "id": "sel1",
-        "name": "DeserializedSubmodelComponent#2",
-        "pos": {
-          "x": 115.0,
-          "y": 85.0
-        }
-      },
-      {
-        "id": "sel1",
-        "name": "DeserializedSubmodelComponent#3",
-        "pos": {
-          "x": 175.0,
-          "y": 105.0
-        }
-      },
-      {
-        "id": "sel1",
-        "name": "DeserializedSubmodelComponent#4",
-        "pos": {
-          "x": 175.0,
-          "y": 165.0
-        }
-      },
-      {
-        "id": "sel1",
-        "name": "DeserializedSubmodelComponent#5",
-        "pos": {
-          "x": 115.0,
-          "y": 205.0
-        }
-      },
-      {
-        "id": "sel1",
-        "name": "DeserializedSubmodelComponent#6",
-        "pos": {
-          "x": 175.0,
-          "y": 225.0
-        }
-      },
-      {
-        "id": "sel1",
-        "name": "DeserializedSubmodelComponent#7",
-        "pos": {
-          "x": 115.0,
-          "y": 145.0
-        }
-      },
-      {
-        "id": "sel1",
-        "name": "DeserializedSubmodelComponent#8",
-        "pos": {
-          "x": 115.0,
-          "y": 445.0
-        }
-      },
-      {
-        "id": "sel1",
-        "name": "DeserializedSubmodelComponent#9",
-        "pos": {
-          "x": 175.0,
-          "y": 285.0
-        }
-      },
       {
         "id": "Merger",
         "name": "Merger#0",
           "y": 299.0
         },
         "params": 1
+      },
+      {
+        "id": "sel1",
+        "name": "sel1#0",
+        "pos": {
+          "x": 115.0,
+          "y": 25.0
+        }
+      },
+      {
+        "id": "sel1",
+        "name": "sel1#1",
+        "pos": {
+          "x": 175.0,
+          "y": 45.0
+        }
+      },
+      {
+        "id": "sel1",
+        "name": "sel1#10",
+        "pos": {
+          "x": 115.0,
+          "y": 265.0
+        }
+      },
+      {
+        "id": "sel1",
+        "name": "sel1#11",
+        "pos": {
+          "x": 115.0,
+          "y": 325.0
+        }
+      },
+      {
+        "id": "sel1",
+        "name": "sel1#12",
+        "pos": {
+          "x": 175.0,
+          "y": 405.0
+        }
+      },
+      {
+        "id": "sel1",
+        "name": "sel1#13",
+        "pos": {
+          "x": 175.0,
+          "y": 345.0
+        }
+      },
+      {
+        "id": "sel1",
+        "name": "sel1#14",
+        "pos": {
+          "x": 115.0,
+          "y": 385.0
+        }
+      },
+      {
+        "id": "sel1",
+        "name": "sel1#15",
+        "pos": {
+          "x": 175.0,
+          "y": 465.0
+        }
+      },
+      {
+        "id": "sel1",
+        "name": "sel1#2",
+        "pos": {
+          "x": 115.0,
+          "y": 85.0
+        }
+      },
+      {
+        "id": "sel1",
+        "name": "sel1#3",
+        "pos": {
+          "x": 175.0,
+          "y": 105.0
+        }
+      },
+      {
+        "id": "sel1",
+        "name": "sel1#4",
+        "pos": {
+          "x": 175.0,
+          "y": 165.0
+        }
+      },
+      {
+        "id": "sel1",
+        "name": "sel1#5",
+        "pos": {
+          "x": 115.0,
+          "y": 205.0
+        }
+      },
+      {
+        "id": "sel1",
+        "name": "sel1#6",
+        "pos": {
+          "x": 175.0,
+          "y": 225.0
+        }
+      },
+      {
+        "id": "sel1",
+        "name": "sel1#7",
+        "pos": {
+          "x": 115.0,
+          "y": 145.0
+        }
+      },
+      {
+        "id": "sel1",
+        "name": "sel1#8",
+        "pos": {
+          "x": 115.0,
+          "y": 445.0
+        }
+      },
+      {
+        "id": "sel1",
+        "name": "sel1#9",
+        "pos": {
+          "x": 175.0,
+          "y": 285.0
+        }
       }
     ],
     "wires": [
           "pinName": ""
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#0",
+          "compName": "sel1#0",
           "pinName": "S1"
         },
         "name": "unnamedWire#0",
           "pinName": ""
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#0",
+          "compName": "sel1#0",
           "pinName": "S2"
         },
         "name": "unnamedWire#1",
           "pinName": ""
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#11",
+          "compName": "sel1#11",
           "pinName": "S1"
         },
         "name": "unnamedWire#10",
           "pinName": "I14"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#1",
+          "compName": "sel1#1",
           "pinName": "Y"
         },
         "name": "unnamedWire#100",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#2",
+          "compName": "sel1#2",
           "pinName": "Y"
         },
         "pin2": {
           "pinName": "I12"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#3",
+          "compName": "sel1#3",
           "pinName": "Y"
         },
         "name": "unnamedWire#102",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#7",
+          "compName": "sel1#7",
           "pinName": "Y"
         },
         "pin2": {
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#4",
+          "compName": "sel1#4",
           "pinName": "Y"
         },
         "pin2": {
           "pinName": "I9"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#5",
+          "compName": "sel1#5",
           "pinName": "Y"
         },
         "name": "unnamedWire#105",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#6",
+          "compName": "sel1#6",
           "pinName": "Y"
         },
         "pin2": {
           "pinName": "I7"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#10",
+          "compName": "sel1#10",
           "pinName": "Y"
         },
         "name": "unnamedWire#107",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#9",
+          "compName": "sel1#9",
           "pinName": "Y"
         },
         "pin2": {
           "pinName": "I5"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#11",
+          "compName": "sel1#11",
           "pinName": "Y"
         },
         "name": "unnamedWire#109",
           "pinName": ""
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#11",
+          "compName": "sel1#11",
           "pinName": "S2"
         },
         "name": "unnamedWire#11",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#13",
+          "compName": "sel1#13",
           "pinName": "Y"
         },
         "pin2": {
           "pinName": "I3"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#14",
+          "compName": "sel1#14",
           "pinName": "Y"
         },
         "name": "unnamedWire#111",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#12",
+          "compName": "sel1#12",
           "pinName": "Y"
         },
         "pin2": {
           "pinName": "I1"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#8",
+          "compName": "sel1#8",
           "pinName": "Y"
         },
         "name": "unnamedWire#113",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#15",
+          "compName": "sel1#15",
           "pinName": "Y"
         },
         "pin2": {
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#14",
+          "compName": "sel1#14",
           "pinName": "S1"
         },
         "pin2": {
           "pinName": ""
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#14",
+          "compName": "sel1#14",
           "pinName": "S2"
         },
         "name": "unnamedWire#13",
           "pinName": ""
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#15",
+          "compName": "sel1#15",
           "pinName": "S1"
         },
         "name": "unnamedWire#16",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#12",
+          "compName": "sel1#12",
           "pinName": "S2"
         },
         "pin2": {
           "pinName": ""
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#12",
+          "compName": "sel1#12",
           "pinName": "S1"
         },
         "name": "unnamedWire#19",
           "pinName": ""
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#2",
+          "compName": "sel1#2",
           "pinName": "S1"
         },
         "name": "unnamedWire#2",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#13",
+          "compName": "sel1#13",
           "pinName": "S2"
         },
         "pin2": {
           "pinName": ""
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#13",
+          "compName": "sel1#13",
           "pinName": "S1"
         },
         "name": "unnamedWire#21",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#9",
+          "compName": "sel1#9",
           "pinName": "S2"
         },
         "pin2": {
           "pinName": ""
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#9",
+          "compName": "sel1#9",
           "pinName": "S1"
         },
         "name": "unnamedWire#23",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#6",
+          "compName": "sel1#6",
           "pinName": "S2"
         },
         "pin2": {
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#6",
+          "compName": "sel1#6",
           "pinName": "S1"
         },
         "pin2": {
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#4",
+          "compName": "sel1#4",
           "pinName": "S2"
         },
         "pin2": {
           "pinName": ""
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#4",
+          "compName": "sel1#4",
           "pinName": "S1"
         },
         "name": "unnamedWire#27",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#3",
+          "compName": "sel1#3",
           "pinName": "S2"
         },
         "pin2": {
           "pinName": ""
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#3",
+          "compName": "sel1#3",
           "pinName": "S1"
         },
         "name": "unnamedWire#29",
           "pinName": ""
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#2",
+          "compName": "sel1#2",
           "pinName": "S2"
         },
         "name": "unnamedWire#3",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#1",
+          "compName": "sel1#1",
           "pinName": "S2"
         },
         "pin2": {
           "pinName": ""
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#1",
+          "compName": "sel1#1",
           "pinName": "S1"
         },
         "name": "unnamedWire#31",
           "pinName": ""
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#7",
+          "compName": "sel1#7",
           "pinName": "S1"
         },
         "name": "unnamedWire#4",
           "pinName": ""
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#15",
+          "compName": "sel1#15",
           "pinName": "S2"
         },
         "name": "unnamedWire#43",
           "pinName": ""
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#8",
+          "compName": "sel1#8",
           "pinName": "S1"
         },
         "name": "unnamedWire#48",
           "pinName": ""
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#8",
+          "compName": "sel1#8",
           "pinName": "S2"
         },
         "name": "unnamedWire#49",
           "pinName": ""
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#7",
+          "compName": "sel1#7",
           "pinName": "S2"
         },
         "name": "unnamedWire#5",
           "pinName": ""
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#5",
+          "compName": "sel1#5",
           "pinName": "S1"
         },
         "name": "unnamedWire#6",
           "pinName": "O15"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#0",
+          "compName": "sel1#0",
           "pinName": "I1"
         },
         "name": "unnamedWire#60",
           "pinName": "O14"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#1",
+          "compName": "sel1#1",
           "pinName": "I1"
         },
         "name": "unnamedWire#61",
           "pinName": "O13"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#2",
+          "compName": "sel1#2",
           "pinName": "I1"
         },
         "name": "unnamedWire#62",
           "pinName": "O12"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#3",
+          "compName": "sel1#3",
           "pinName": "I1"
         },
         "name": "unnamedWire#63",
           "pinName": "O11"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#7",
+          "compName": "sel1#7",
           "pinName": "I1"
         },
         "name": "unnamedWire#64",
           "pinName": "O10"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#4",
+          "compName": "sel1#4",
           "pinName": "I1"
         },
         "name": "unnamedWire#65",
           "pinName": "O9"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#5",
+          "compName": "sel1#5",
           "pinName": "I1"
         },
         "name": "unnamedWire#66",
           "pinName": "O8"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#6",
+          "compName": "sel1#6",
           "pinName": "I1"
         },
         "name": "unnamedWire#67",
           "pinName": "O7"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#10",
+          "compName": "sel1#10",
           "pinName": "I1"
         },
         "name": "unnamedWire#68",
           "pinName": "O6"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#9",
+          "compName": "sel1#9",
           "pinName": "I1"
         },
         "name": "unnamedWire#69",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#5",
+          "compName": "sel1#5",
           "pinName": "S2"
         },
         "pin2": {
           "pinName": "O5"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#11",
+          "compName": "sel1#11",
           "pinName": "I1"
         },
         "name": "unnamedWire#70",
           "pinName": "O4"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#13",
+          "compName": "sel1#13",
           "pinName": "I1"
         },
         "name": "unnamedWire#71",
           "pinName": "O3"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#14",
+          "compName": "sel1#14",
           "pinName": "I1"
         },
         "name": "unnamedWire#72",
           "pinName": "O2"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#12",
+          "compName": "sel1#12",
           "pinName": "I1"
         },
         "name": "unnamedWire#73",
           "pinName": "O1"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#8",
+          "compName": "sel1#8",
           "pinName": "I1"
         },
         "name": "unnamedWire#74",
           "pinName": "O0"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#15",
+          "compName": "sel1#15",
           "pinName": "I1"
         },
         "name": "unnamedWire#75",
           "pinName": "O15"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#0",
+          "compName": "sel1#0",
           "pinName": "I2"
         },
         "name": "unnamedWire#78",
           "pinName": "O14"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#1",
+          "compName": "sel1#1",
           "pinName": "I2"
         },
         "name": "unnamedWire#79",
           "pinName": ""
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#10",
+          "compName": "sel1#10",
           "pinName": "S1"
         },
         "name": "unnamedWire#8",
           "pinName": "O13"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#2",
+          "compName": "sel1#2",
           "pinName": "I2"
         },
         "name": "unnamedWire#80",
           "pinName": "O12"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#3",
+          "compName": "sel1#3",
           "pinName": "I2"
         },
         "name": "unnamedWire#81",
           "pinName": "O11"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#7",
+          "compName": "sel1#7",
           "pinName": "I2"
         },
         "name": "unnamedWire#82",
           "pinName": "O10"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#4",
+          "compName": "sel1#4",
           "pinName": "I2"
         },
         "name": "unnamedWire#83",
           "pinName": "O9"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#5",
+          "compName": "sel1#5",
           "pinName": "I2"
         },
         "name": "unnamedWire#84",
           "pinName": "O8"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#6",
+          "compName": "sel1#6",
           "pinName": "I2"
         },
         "name": "unnamedWire#85",
           "pinName": "O7"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#10",
+          "compName": "sel1#10",
           "pinName": "I2"
         },
         "name": "unnamedWire#86",
           "pinName": "O6"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#9",
+          "compName": "sel1#9",
           "pinName": "I2"
         },
         "name": "unnamedWire#87",
           "pinName": "O5"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#11",
+          "compName": "sel1#11",
           "pinName": "I2"
         },
         "name": "unnamedWire#88",
           "pinName": "O4"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#13",
+          "compName": "sel1#13",
           "pinName": "I2"
         },
         "name": "unnamedWire#89",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#10",
+          "compName": "sel1#10",
           "pinName": "S2"
         },
         "pin2": {
           "pinName": "O3"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#14",
+          "compName": "sel1#14",
           "pinName": "I2"
         },
         "name": "unnamedWire#90",
           "pinName": "O2"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#12",
+          "compName": "sel1#12",
           "pinName": "I2"
         },
         "name": "unnamedWire#91",
           "pinName": "O1"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#8",
+          "compName": "sel1#8",
           "pinName": "I2"
         },
         "name": "unnamedWire#92",
           "pinName": "O0"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#15",
+          "compName": "sel1#15",
           "pinName": "I2"
         },
         "name": "unnamedWire#93",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#0",
+          "compName": "sel1#0",
           "pinName": "Y"
         },
         "pin2": {
index 3a1507a..91d1220 100644 (file)
   "innerScale": 0.4,
   "submodel": {
     "components": [
-      {
-        "id": "sel1",
-        "name": "DeserializedSubmodelComponent#0",
-        "pos": {
-          "x": 60.0,
-          "y": 35.0
-        }
-      },
-      {
-        "id": "sel1",
-        "name": "DeserializedSubmodelComponent#1",
-        "pos": {
-          "x": 60.0,
-          "y": 100.0
-        }
-      },
-      {
-        "id": "mux1",
-        "name": "DeserializedSubmodelComponent#2",
-        "pos": {
-          "x": 115.0,
-          "y": 20.0
-        }
-      },
       {
         "id": "NandGate",
         "name": "NandGate#0",
       },
       {
         "id": "WireCrossPoint",
-        "name": "WireCrossPoint#1",
+        "name": "WireCrossPoint#0",
         "pos": {
           "x": 24.0,
           "y": 29.0
       },
       {
         "id": "WireCrossPoint",
-        "name": "WireCrossPoint#2",
+        "name": "WireCrossPoint#1",
         "pos": {
           "x": 24.0,
           "y": 49.0
       },
       {
         "id": "WireCrossPoint",
-        "name": "WireCrossPoint#3",
+        "name": "WireCrossPoint#2",
         "pos": {
           "x": 54.0,
           "y": 39.0
         },
         "params": 1
+      },
+      {
+        "id": "mux1",
+        "name": "mux1#0",
+        "pos": {
+          "x": 115.0,
+          "y": 20.0
+        }
+      },
+      {
+        "id": "sel1",
+        "name": "sel1#0",
+        "pos": {
+          "x": 60.0,
+          "y": 35.0
+        }
+      },
+      {
+        "id": "sel1",
+        "name": "sel1#1",
+        "pos": {
+          "x": 60.0,
+          "y": 100.0
+        }
       }
     ],
     "wires": [
       {
         "pin1": {
-          "compName": "WireCrossPoint#1",
+          "compName": "WireCrossPoint#0",
           "pinName": ""
         },
         "pin2": {
-          "compName": "WireCrossPoint#2",
+          "compName": "WireCrossPoint#1",
           "pinName": ""
         },
         "name": "unnamedWire#0",
       },
       {
         "pin1": {
-          "compName": "WireCrossPoint#1",
+          "compName": "WireCrossPoint#0",
           "pinName": ""
         },
         "pin2": {
       },
       {
         "pin1": {
-          "compName": "WireCrossPoint#2",
+          "compName": "WireCrossPoint#1",
           "pinName": ""
         },
         "pin2": {
       },
       {
         "pin1": {
-          "compName": "WireCrossPoint#2",
+          "compName": "WireCrossPoint#1",
           "pinName": ""
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#0",
+          "compName": "sel1#0",
           "pinName": "S2"
         },
         "name": "unnamedWire#11",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#0",
+          "compName": "sel1#0",
           "pinName": "S1"
         },
         "pin2": {
-          "compName": "WireCrossPoint#3",
+          "compName": "WireCrossPoint#2",
           "pinName": ""
         },
         "name": "unnamedWire#14",
       },
       {
         "pin1": {
-          "compName": "WireCrossPoint#3",
+          "compName": "WireCrossPoint#2",
           "pinName": ""
         },
         "pin2": {
       },
       {
         "pin1": {
-          "compName": "WireCrossPoint#2",
+          "compName": "WireCrossPoint#1",
           "pinName": ""
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#1",
+          "compName": "sel1#1",
           "pinName": "S2"
         },
         "name": "unnamedWire#16",
       },
       {
         "pin1": {
-          "compName": "WireCrossPoint#3",
+          "compName": "WireCrossPoint#2",
           "pinName": ""
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#1",
+          "compName": "sel1#1",
           "pinName": "S1"
         },
         "name": "unnamedWire#17",
       },
       {
         "pin1": {
-          "compName": "WireCrossPoint#1",
+          "compName": "WireCrossPoint#0",
           "pinName": ""
         },
         "pin2": {
           "pinName": "I00"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#0",
+          "compName": "sel1#0",
           "pinName": "I1"
         },
         "name": "unnamedWire#2",
           "pinName": "I01"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#0",
+          "compName": "sel1#0",
           "pinName": "I2"
         },
         "name": "unnamedWire#3",
           "pinName": "I10"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#1",
+          "compName": "sel1#1",
           "pinName": "I1"
         },
         "name": "unnamedWire#4",
           "pinName": "I11"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#1",
+          "compName": "sel1#1",
           "pinName": "I2"
         },
         "name": "unnamedWire#5",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#2",
+          "compName": "mux1#0",
           "pinName": "Y"
         },
         "pin2": {
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#0",
+          "compName": "sel1#0",
           "pinName": "Y"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#2",
+          "compName": "mux1#0",
           "pinName": "I0"
         },
         "name": "unnamedWire#7",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#1",
+          "compName": "sel1#1",
           "pinName": "Y"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#2",
+          "compName": "mux1#0",
           "pinName": "I1"
         },
         "name": "unnamedWire#8",
           "pinName": "S1"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#2",
+          "compName": "mux1#0",
           "pinName": "S0"
         },
         "name": "unnamedWire#9",
index 5f8c0c8..6726b46 100644 (file)
   "innerScale": 0.4,
   "submodel": {
     "components": [
-      {
-        "id": "mux1_4",
-        "name": "DeserializedSubmodelComponent#0",
-        "pos": {
-          "x": 40.0,
-          "y": 30.0
-        }
-      },
-      {
-        "id": "mux1_4",
-        "name": "DeserializedSubmodelComponent#1",
-        "pos": {
-          "x": 40.0,
-          "y": 125.0
-        }
-      },
-      {
-        "id": "mux1_4",
-        "name": "DeserializedSubmodelComponent#2",
-        "pos": {
-          "x": 100.0,
-          "y": 20.0
-        }
-      },
       {
         "id": "Merger",
         "name": "Merger#0",
           "y": 34.0
         },
         "params": 1
+      },
+      {
+        "id": "mux1_4",
+        "name": "mux1_4#0",
+        "pos": {
+          "x": 40.0,
+          "y": 30.0
+        }
+      },
+      {
+        "id": "mux1_4",
+        "name": "mux1_4#1",
+        "pos": {
+          "x": 40.0,
+          "y": 125.0
+        }
+      },
+      {
+        "id": "mux1_4",
+        "name": "mux1_4#2",
+        "pos": {
+          "x": 100.0,
+          "y": 20.0
+        }
       }
     ],
     "wires": [
           "pinName": "O0"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#1",
+          "compName": "mux1_4#1",
           "pinName": "I0_1"
         },
         "name": "unnamedWire#0",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#1",
+          "compName": "mux1_4#1",
           "pinName": "I0_2"
         },
         "pin2": {
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#0",
+          "compName": "mux1_4#0",
           "pinName": "I1_1"
         },
         "pin2": {
           "pinName": "O3"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#0",
+          "compName": "mux1_4#0",
           "pinName": "I1_4"
         },
         "name": "unnamedWire#11",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#0",
+          "compName": "mux1_4#0",
           "pinName": "I0_4"
         },
         "pin2": {
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#0",
+          "compName": "mux1_4#0",
           "pinName": "I0_3"
         },
         "pin2": {
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#0",
+          "compName": "mux1_4#0",
           "pinName": "I0_2"
         },
         "pin2": {
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#0",
+          "compName": "mux1_4#0",
           "pinName": "I0_1"
         },
         "pin2": {
           "pinName": ""
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#0",
+          "compName": "mux1_4#0",
           "pinName": "S0"
         },
         "name": "unnamedWire#17",
           "pinName": ""
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#1",
+          "compName": "mux1_4#1",
           "pinName": "S0"
         },
         "name": "unnamedWire#18",
           "pinName": "O2"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#1",
+          "compName": "mux1_4#1",
           "pinName": "I0_3"
         },
         "name": "unnamedWire#2",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#0",
+          "compName": "mux1_4#0",
           "pinName": "Y1"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#2",
+          "compName": "mux1_4#2",
           "pinName": "I0_1"
         },
         "name": "unnamedWire#23",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#2",
+          "compName": "mux1_4#2",
           "pinName": "I0_2"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#0",
+          "compName": "mux1_4#0",
           "pinName": "Y2"
         },
         "name": "unnamedWire#24",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#0",
+          "compName": "mux1_4#0",
           "pinName": "Y3"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#2",
+          "compName": "mux1_4#2",
           "pinName": "I0_3"
         },
         "name": "unnamedWire#25",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#2",
+          "compName": "mux1_4#2",
           "pinName": "I0_4"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#0",
+          "compName": "mux1_4#0",
           "pinName": "Y4"
         },
         "name": "unnamedWire#26",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#2",
+          "compName": "mux1_4#2",
           "pinName": "I1_1"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#1",
+          "compName": "mux1_4#1",
           "pinName": "Y1"
         },
         "name": "unnamedWire#27",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#1",
+          "compName": "mux1_4#1",
           "pinName": "Y2"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#2",
+          "compName": "mux1_4#2",
           "pinName": "I1_2"
         },
         "name": "unnamedWire#28",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#2",
+          "compName": "mux1_4#2",
           "pinName": "I1_3"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#1",
+          "compName": "mux1_4#1",
           "pinName": "Y3"
         },
         "name": "unnamedWire#29",
           "pinName": "O0"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#1",
+          "compName": "mux1_4#1",
           "pinName": "I1_1"
         },
         "name": "unnamedWire#3",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#1",
+          "compName": "mux1_4#1",
           "pinName": "Y4"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#2",
+          "compName": "mux1_4#2",
           "pinName": "I1_4"
         },
         "name": "unnamedWire#30",
           "pinName": "I0"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#2",
+          "compName": "mux1_4#2",
           "pinName": "Y1"
         },
         "name": "unnamedWire#32",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#2",
+          "compName": "mux1_4#2",
           "pinName": "Y2"
         },
         "pin2": {
           "pinName": "I2"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#2",
+          "compName": "mux1_4#2",
           "pinName": "Y3"
         },
         "name": "unnamedWire#34",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#2",
+          "compName": "mux1_4#2",
           "pinName": "Y4"
         },
         "pin2": {
           "pinName": "S1"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#2",
+          "compName": "mux1_4#2",
           "pinName": "S0"
         },
         "name": "unnamedWire#36",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#1",
+          "compName": "mux1_4#1",
           "pinName": "I0_4"
         },
         "pin2": {
           "pinName": "O1"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#1",
+          "compName": "mux1_4#1",
           "pinName": "I1_2"
         },
         "name": "unnamedWire#5",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#1",
+          "compName": "mux1_4#1",
           "pinName": "I1_3"
         },
         "pin2": {
           "pinName": "O3"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#1",
+          "compName": "mux1_4#1",
           "pinName": "I1_4"
         },
         "name": "unnamedWire#7",
           "pinName": "O2"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#0",
+          "compName": "mux1_4#0",
           "pinName": "I1_3"
         },
         "name": "unnamedWire#8",
           "pinName": "O1"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#0",
+          "compName": "mux1_4#0",
           "pinName": "I1_2"
         },
         "name": "unnamedWire#9",
index 7b54b5d..ac5aa8a 100644 (file)
   "submodel": {
     "components": [
       {
-        "id": "mux2",
-        "name": "DeserializedSubmodelComponent#0",
+        "id": "WireCrossPoint",
+        "name": "WireCrossPoint#0",
         "pos": {
-          "x": 35.0,
-          "y": 185.0
-        }
+          "x": 19.0,
+          "y": 104.0
+        },
+        "params": 1
+      },
+      {
+        "id": "WireCrossPoint",
+        "name": "WireCrossPoint#1",
+        "pos": {
+          "x": 24.0,
+          "y": 94.0
+        },
+        "params": 1
       },
       {
         "id": "mux1",
-        "name": "DeserializedSubmodelComponent#2",
+        "name": "mux1#0",
         "pos": {
           "x": 125.0,
           "y": 20.0
       },
       {
         "id": "mux2",
-        "name": "DeserializedSubmodelComponent#3",
+        "name": "mux2#0",
         "pos": {
           "x": 35.0,
-          "y": 85.0
+          "y": 185.0
         }
       },
       {
-        "id": "WireCrossPoint",
-        "name": "WireCrossPoint#0",
-        "pos": {
-          "x": 19.0,
-          "y": 104.0
-        },
-        "params": 1
-      },
-      {
-        "id": "WireCrossPoint",
-        "name": "WireCrossPoint#1",
+        "id": "mux2",
+        "name": "mux2#1",
         "pos": {
-          "x": 24.0,
-          "y": 94.0
-        },
-        "params": 1
+          "x": 35.0,
+          "y": 85.0
+        }
       }
     ],
     "wires": [
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#3",
+          "compName": "mux2#1",
           "pinName": "I11"
         },
         "pin2": {
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#0",
+          "compName": "mux2#0",
           "pinName": "I00"
         },
         "pin2": {
           "pinName": "I101"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#0",
+          "compName": "mux2#0",
           "pinName": "I01"
         },
         "name": "unnamedWire#12",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#0",
+          "compName": "mux2#0",
           "pinName": "I10"
         },
         "pin2": {
           "pinName": "I111"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#0",
+          "compName": "mux2#0",
           "pinName": "I11"
         },
         "name": "unnamedWire#14",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#0",
+          "compName": "mux2#0",
           "pinName": "Y"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#2",
+          "compName": "mux1#0",
           "pinName": "I1"
         },
         "name": "unnamedWire#15",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#3",
+          "compName": "mux2#1",
           "pinName": "Y"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#2",
+          "compName": "mux1#0",
           "pinName": "I0"
         },
         "name": "unnamedWire#16",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#2",
+          "compName": "mux1#0",
           "pinName": "S0"
         },
         "pin2": {
           "pinName": ""
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#3",
+          "compName": "mux2#1",
           "pinName": "S1"
         },
         "name": "unnamedWire#2",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#3",
+          "compName": "mux2#1",
           "pinName": "S0"
         },
         "pin2": {
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#0",
+          "compName": "mux2#0",
           "pinName": "S1"
         },
         "pin2": {
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#0",
+          "compName": "mux2#0",
           "pinName": "S0"
         },
         "pin2": {
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#2",
+          "compName": "mux1#0",
           "pinName": "Y"
         },
         "pin2": {
           "pinName": "I000"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#3",
+          "compName": "mux2#1",
           "pinName": "I00"
         },
         "name": "unnamedWire#7",
       },
       {
         "pin1": {
-          "compName": "DeserializedSubmodelComponent#3",
+          "compName": "mux2#1",
           "pinName": "I01"
         },
         "pin2": {
           "pinName": "I010"
         },
         "pin2": {
-          "compName": "DeserializedSubmodelComponent#3",
+          "compName": "mux2#1",
           "pinName": "I10"
         },
         "name": "unnamedWire#9",
index d53f4c8..afd89f1 100644 (file)
@@ -53,7 +53,7 @@
     "components": [
       {
         "id": "NandGate",
-        "name": "NandGate#1",
+        "name": "NandGate#0",
         "pos": {
           "x": 35.0,
           "y": 30.0
@@ -62,7 +62,7 @@
       },
       {
         "id": "NandGate",
-        "name": "NandGate#2",
+        "name": "NandGate#1",
         "pos": {
           "x": 35.0,
           "y": 55.0
@@ -71,7 +71,7 @@
       },
       {
         "id": "NandGate",
-        "name": "NandGate#3",
+        "name": "NandGate#2",
         "pos": {
           "x": 60.0,
           "y": 40.0
@@ -86,7 +86,7 @@
           "pinName": "S1"
         },
         "pin2": {
-          "compName": "NandGate#1",
+          "compName": "NandGate#0",
           "pinName": "A"
         },
         "name": "unnamedWire#0",
           "pinName": "S2"
         },
         "pin2": {
-          "compName": "NandGate#2",
+          "compName": "NandGate#1",
           "pinName": "A"
         },
         "name": "unnamedWire#1",
       },
       {
         "pin1": {
-          "compName": "NandGate#3",
+          "compName": "NandGate#2",
           "pinName": "Y"
         },
         "pin2": {
           "pinName": "I1"
         },
         "pin2": {
-          "compName": "NandGate#1",
+          "compName": "NandGate#0",
           "pinName": "B"
         },
         "name": "unnamedWire#5",
           "pinName": "I2"
         },
         "pin2": {
-          "compName": "NandGate#2",
+          "compName": "NandGate#1",
           "pinName": "B"
         },
         "name": "unnamedWire#7",
       },
       {
         "pin1": {
-          "compName": "NandGate#1",
+          "compName": "NandGate#0",
           "pinName": "Y"
         },
         "pin2": {
-          "compName": "NandGate#3",
+          "compName": "NandGate#2",
           "pinName": "A"
         },
         "name": "unnamedWire#8"
       },
       {
         "pin1": {
-          "compName": "NandGate#2",
+          "compName": "NandGate#1",
           "pinName": "Y"
         },
         "pin2": {
-          "compName": "NandGate#3",
+          "compName": "NandGate#2",
           "pinName": "B"
         },
         "name": "unnamedWire#9"
index bd4d458..f1e90aa 100644 (file)
@@ -5,24 +5,35 @@ import java.nio.file.Files;
 import java.nio.file.Path;
 import java.nio.file.Paths;
 import java.util.Comparator;
+import java.util.HashMap;
+import java.util.Map;
 import java.util.Map.Entry;
+import java.util.Optional;
 import java.util.Scanner;
 import java.util.Set;
+import java.util.function.Function;
 import java.util.stream.Collectors;
 import java.util.stream.Stream;
 
 import net.mograsim.logic.model.am2900.Am2900Loader;
 import net.mograsim.logic.model.model.LogicModelModifiable;
+import net.mograsim.logic.model.model.components.ModelComponent;
+import net.mograsim.logic.model.model.components.submodels.SubmodelComponent;
+import net.mograsim.logic.model.model.components.submodels.SubmodelInterface;
 import net.mograsim.logic.model.model.wires.ModelWire;
 import net.mograsim.logic.model.model.wires.MovablePin;
 import net.mograsim.logic.model.model.wires.Pin;
 import net.mograsim.logic.model.model.wires.PinUsage;
 import net.mograsim.logic.model.serializing.DeserializedSubmodelComponent;
+import net.mograsim.logic.model.serializing.IdentifyParams;
 import net.mograsim.logic.model.serializing.IndirectModelComponentCreator;
 import net.mograsim.logic.model.serializing.SubmodelComponentSerializer;
 
 public class ReserializeJSONsSettingUsages
 {
+       public static boolean changePinUsages = false;
+       public static boolean changeComponentNames = true;
+
        public static void main(String[] args) throws IOException
        {
                Am2900Loader.setup();
@@ -54,16 +65,77 @@ public class ReserializeJSONsSettingUsages
                        DeserializedSubmodelComponent comp = (DeserializedSubmodelComponent) IndirectModelComponentCreator
                                        .createComponent(new LogicModelModifiable(), "jsonfile:" + json.toString());
                        System.out.println("Reserializing " + json);
-                       comp.getSupermodelPins().entrySet().stream().sorted(Comparator.comparing(Entry::getKey)).map(Entry::getValue).forEach(pin ->
+                       if (changePinUsages)
+                               comp.getSupermodelPins().entrySet().stream().sorted(Comparator.comparing(Entry::getKey)).map(Entry::getValue).forEach(pin ->
+                               {
+                                       PinUsage usage = null;
+                                       while (usage == null)
+                                               try
+                                               {
+                                                       System.out.print("  Usage for interface pin " + pin.name + " (empty: " + pin.usage + ") >");
+                                                       String usageStr = sysin.nextLine().toUpperCase();
+                                                       usage = usageStr.equals("") ? pin.usage
+                                                                       : usageStr.equals("I") ? PinUsage.INPUT
+                                                                                       : usageStr.equals("O") ? PinUsage.OUTPUT
+                                                                                                       : usageStr.equals("T") ? PinUsage.TRISTATE : PinUsage.valueOf(usageStr);
+                                               }
+                                               catch (@SuppressWarnings("unused") IllegalArgumentException e)
+                                               {
+                                                       System.err.println("  Illegal usage");
+                                               }
+                                       setInterfacePinUsage(comp, pin, usage);
+                               });
+                       LogicModelModifiable submodelModifiable = comp.getSubmodelModifiable();
+                       if (changeComponentNames)
                        {
-                               System.out.print("  Usage for interface pin " + pin.name + " (empty: " + pin.usage + ") >");
-                               String usageStr = sysin.nextLine().toUpperCase();
-                               PinUsage usage = usageStr.equals("") ? pin.usage
-                                               : usageStr.equals("I") ? PinUsage.INPUT
-                                                               : usageStr.equals("O") ? PinUsage.OUTPUT
-                                                                               : usageStr.equals("T") ? PinUsage.TRISTATE : PinUsage.valueOf(usageStr);
-                               setInterfacePinUsage(comp, pin, usage);
-                       });
+                               Map<String, String> componentNameRemapping = new HashMap<>();
+                               componentNameRemapping.put(SubmodelComponent.SUBMODEL_INTERFACE_NAME, SubmodelComponent.SUBMODEL_INTERFACE_NAME);
+                               LogicModelModifiable tempModel = new LogicModelModifiable();
+                               IdentifyParams iP = new IdentifyParams();
+                               submodelModifiable.getComponentsByName().entrySet().stream()
+                                               .filter(e -> !e.getKey().equals(SubmodelComponent.SUBMODEL_INTERFACE_NAME))
+                                               .sorted(Comparator.comparing(Entry::getKey, ReserializeJSONsSettingUsages::compareStringsWithIntegers)).forEach(e ->
+                                               {
+                                                       String oldName = e.getKey();
+                                                       ModelComponent subcomp = e.getValue();
+                                                       String defaultName = tempModel.getDefaultComponentName(subcomp);
+                                                       String newName = null;
+                                                       while (newName == null)
+                                                       {
+                                                               System.out.print("  New name for component " + oldName + " of type " + subcomp.getIDForSerializing(iP)
+                                                                               + " (empty: " + defaultName + ") >");
+                                                               newName = sysin.nextLine();
+                                                               if (newName.equals(""))
+                                                                       newName = defaultName;
+                                                               if (tempModel.getComponentsByName().containsKey(newName))
+                                                               {
+                                                                       System.err.println("  There already is a component with that name");
+                                                                       newName = null;
+                                                               }
+                                                       }
+                                                       componentNameRemapping.put(oldName, newName);
+                                                       IndirectModelComponentCreator.createComponent(tempModel, subcomp.getIDForSerializing(iP),
+                                                                       subcomp.getParamsForSerializingJSON(iP), newName).moveTo(subcomp.getPosX(), subcomp.getPosY());
+                                               });
+                               SubmodelInterface tempSubmodelInterface = new SubmodelInterface(tempModel);
+                               for (Pin p : submodelModifiable.getComponentsByName().get(SubmodelComponent.SUBMODEL_INTERFACE_NAME).getPins().values())
+                                       tempSubmodelInterface
+                                                       .addPin(new Pin(tempModel, tempSubmodelInterface, p.name, p.logicWidth, p.usage, p.getRelX(), p.getRelY()));
+                               for (ModelWire w : submodelModifiable.getWiresByName().values())
+                                       createWire(componentNameRemapping::get, tempModel, w);
+
+                               Optional<ModelComponent> o;
+                               while ((o = submodelModifiable.getComponentsByName().values().stream()
+                                               .filter(c -> !c.name.equals(SubmodelComponent.SUBMODEL_INTERFACE_NAME)).findAny()).isPresent())
+                                       submodelModifiable.destroyComponent(o.get());
+
+                               tempModel.getComponentsByName().values().stream().filter(c -> !c.name.equals(SubmodelComponent.SUBMODEL_INTERFACE_NAME))
+                                               .forEach(c -> IndirectModelComponentCreator
+                                                               .createComponent(submodelModifiable, c.getIDForSerializing(iP), c.getParamsForSerializingJSON(iP), c.name)
+                                                               .moveTo(c.getPosX(), c.getPosY()));
+                               for (ModelWire w : tempModel.getWiresByName().values())
+                                       createWire(Function.identity(), submodelModifiable, w);
+                       }
                        SubmodelComponentSerializer.serialize(comp, json.toString());
                }
                catch (Exception e)
@@ -73,6 +145,78 @@ public class ReserializeJSONsSettingUsages
                }
        }
 
+       private static ModelWire createWire(Function<String, String> componentNameRemapping, LogicModelModifiable tempModelForDefaultNames,
+                       ModelWire w)
+       {
+               return new ModelWire(tempModelForDefaultNames, w.name,
+                               getRemappedPin(componentNameRemapping, tempModelForDefaultNames, w.getPin1()),
+                               getRemappedPin(componentNameRemapping, tempModelForDefaultNames, w.getPin2()), w.getPath());
+       }
+
+       private static Pin getRemappedPin(Function<String, String> componentNameRemapping, LogicModelModifiable tempModelForDefaultNames,
+                       Pin pin)
+       {
+               return tempModelForDefaultNames.getComponentsByName().get(componentNameRemapping.apply(pin.component.name)).getPin(pin.name);
+       }
+
+       private static int compareStringsWithIntegers(String a, String b)
+       {
+               int aLoc = 0;
+               int bLoc = 0;
+               for (;;)
+               {
+                       if (aLoc == a.length())
+                       {
+                               if (bLoc == b.length())
+                                       return 0;
+                               return -1;
+                       }
+                       if (bLoc == b.length())
+                               return 1;
+                       int aInt = 0;
+                       int aIntLen = 0;
+                       char nextCharA;
+                       for (;;)
+                       {
+                               nextCharA = a.charAt(aLoc++);
+                               if (nextCharA < '0' || nextCharA > '9')
+                                       break;
+                               aIntLen++;
+                               aInt = aInt * 10 + nextCharA - '0';
+                               if (aLoc == a.length())
+                                       break;
+                       }
+                       int bInt = 0;
+                       int bIntLen = 0;
+                       char nextCharB;
+                       for (;;)
+                       {
+                               nextCharB = b.charAt(bLoc++);
+                               if (nextCharB < '0' || nextCharB > '9')
+                                       break;
+                               bIntLen++;
+                               bInt = bInt * 10 + nextCharB - '0';
+                               if (bLoc == b.length())
+                                       break;
+                       }
+                       if (aIntLen != 0)
+                       {
+                               if (bIntLen == 0)
+                                       return -1;
+                               int comp = Integer.compare(aInt, bInt);
+                               if (comp != 0)
+                                       return comp;
+                       } else
+                       {
+                               if (bIntLen != 0)
+                                       return 1;
+                               int comp = Character.compare(nextCharA, nextCharB);
+                               if (comp != 0)
+                                       return comp;
+                       }
+               }
+       }
+
        private static void setInterfacePinUsage(DeserializedSubmodelComponent comp, Pin interfacePin, PinUsage usage)
        {
                Set<ModelWire> wiresConnectedToPin = comp.submodel.getWiresByName().values().stream()