Refactored BitVector and added test cases
[Mograsim.git] / net.mograsim.logic.model.editor / components / am2901 / GUIAm2901ALUInclSourceDecodeInclFunctionDecode.json
index 5e9bea0..12e2850 100644 (file)
@@ -240,1074 +240,1125 @@ mograsim version: 0.1.3
     "innerScale": 0.25,
     "subComps": [
       {
+        "id": "GUIsel3_4",
+        "name": "GUIsel3_4#0",
         "pos": {
           "x": 45.0,
           "y": 575.0
-        },
-        "id": "GUIsel3_4",
-        "name": "GUIsel3_4#0"
+        }
       },
       {
+        "id": "WireCrossPoint",
+        "name": "WireCrossPoint#1",
         "pos": {
           "x": 14.0,
           "y": 499.0
         },
-        "id": "WireCrossPoint",
-        "name": "WireCrossPoint#1",
         "params": 1
       },
       {
+        "id": "WireCrossPoint",
+        "name": "WireCrossPoint#0",
         "pos": {
           "x": 9.0,
           "y": 459.0
         },
-        "id": "WireCrossPoint",
-        "name": "WireCrossPoint#0",
         "params": 1
       },
       {
+        "id": "GUIAm2901ALUInclDecode",
+        "name": "GUIAm2901ALUInclDecode#0",
         "pos": {
           "x": 60.0,
           "y": 15.0
-        },
-        "id": "GUIAm2901ALUInclDecode",
-        "name": "GUIAm2901ALUInclDecode#0"
+        }
       },
       {
+        "id": "WireCrossPoint",
+        "name": "WireCrossPoint#3",
         "pos": {
           "x": 24.0,
           "y": 579.0
         },
-        "id": "WireCrossPoint",
-        "name": "WireCrossPoint#3",
         "params": 1
       },
       {
+        "id": "WireCrossPoint",
+        "name": "WireCrossPoint#2",
         "pos": {
           "x": 19.0,
           "y": 539.0
         },
-        "id": "WireCrossPoint",
-        "name": "WireCrossPoint#2",
         "params": 1
       },
       {
+        "id": "GUIsel2_4",
+        "name": "GUIsel2_4#0",
         "pos": {
           "x": 45.0,
           "y": 365.0
-        },
-        "id": "GUIsel2_4",
-        "name": "GUIsel2_4#0"
+        }
       },
       {
+        "id": "GUIAm2901SourceDecode",
+        "name": "GUIAm2901SourceDecode#0",
         "pos": {
           "x": 15.0,
           "y": 165.0
-        },
-        "id": "GUIAm2901SourceDecode",
-        "name": "GUIAm2901SourceDecode#0"
+        }
       }
     ],
     "innerWires": [
       {
         "pin1": {
-          "compName": "_submodelinterface",
-          "pinName": "I5"
+          "compName": "GUIsel2_4#0",
+          "pinName": "Y1"
         },
         "pin2": {
           "compName": "GUIAm2901ALUInclDecode#0",
-          "pinName": "I5"
+          "pinName": "R1"
         },
-        "path": []
+        "name": "unnamedWire#36",
+        "path": [
+          {
+            "x": 82.5,
+            "y": 370.0
+          },
+          {
+            "x": 82.5,
+            "y": 162.5
+          },
+          {
+            "x": 20.0,
+            "y": 162.5
+          },
+          {
+            "x": 20.0,
+            "y": 60.0
+          }
+        ]
       },
       {
         "pin1": {
-          "compName": "_submodelinterface",
-          "pinName": "I4"
+          "compName": "GUIAm2901SourceDecode#0",
+          "pinName": "RD"
         },
         "pin2": {
-          "compName": "GUIAm2901ALUInclDecode#0",
-          "pinName": "I4"
+          "compName": "GUIsel2_4#0",
+          "pinName": "SA"
         },
+        "name": "unnamedWire#35",
         "path": [
           {
-            "x": 5.0,
-            "y": 60.0
+            "x": 55.0,
+            "y": 210.0
           },
           {
-            "x": 5.0,
-            "y": 30.0
+            "x": 55.0,
+            "y": 220.0
+          },
+          {
+            "x": 25.0,
+            "y": 220.0
+          },
+          {
+            "x": 25.0,
+            "y": 370.0
           }
         ]
       },
       {
         "pin1": {
-          "compName": "_submodelinterface",
-          "pinName": "I3"
+          "compName": "GUIsel2_4#0",
+          "pinName": "Y3"
         },
         "pin2": {
           "compName": "GUIAm2901ALUInclDecode#0",
-          "pinName": "I3"
+          "pinName": "R3"
         },
+        "name": "unnamedWire#38",
         "path": [
           {
-            "x": 15.0,
-            "y": 100.0
+            "x": 87.5,
+            "y": 390.0
           },
           {
-            "x": 15.0,
-            "y": 40.0
+            "x": 87.5,
+            "y": 157.5
+          },
+          {
+            "x": 25.0,
+            "y": 157.5
+          },
+          {
+            "x": 25.0,
+            "y": 80.0
           }
         ]
       },
       {
         "pin1": {
-          "compName": "_submodelinterface",
-          "pinName": "I2"
+          "compName": "GUIsel2_4#0",
+          "pinName": "Y2"
         },
         "pin2": {
-          "compName": "GUIAm2901SourceDecode#0",
-          "pinName": "I2"
+          "compName": "GUIAm2901ALUInclDecode#0",
+          "pinName": "R2"
         },
+        "name": "unnamedWire#37",
         "path": [
           {
-            "x": 5.0,
-            "y": 140.0
+            "x": 85.0,
+            "y": 380.0
           },
           {
-            "x": 5.0,
-            "y": 170.0
+            "x": 85.0,
+            "y": 160.0
+          },
+          {
+            "x": 22.5,
+            "y": 160.0
+          },
+          {
+            "x": 22.5,
+            "y": 70.0
           }
         ]
       },
       {
         "pin1": {
-          "compName": "_submodelinterface",
-          "pinName": "I1"
-        },
-        "pin2": {
-          "compName": "GUIAm2901SourceDecode#0",
-          "pinName": "I1"
-        },
-        "path": []
-      },
-      {
-        "pin1": {
-          "compName": "_submodelinterface",
-          "pinName": "I0"
+          "compName": "GUIsel2_4#0",
+          "pinName": "Y4"
         },
         "pin2": {
-          "compName": "GUIAm2901SourceDecode#0",
-          "pinName": "I0"
+          "compName": "GUIAm2901ALUInclDecode#0",
+          "pinName": "R4"
         },
+        "name": "unnamedWire#39",
         "path": [
           {
-            "x": 5.0,
-            "y": 220.0
+            "x": 90.0,
+            "y": 400.0
           },
           {
-            "x": 5.0,
-            "y": 190.0
+            "x": 90.0,
+            "y": 155.0
+          },
+          {
+            "x": 27.5,
+            "y": 155.0
+          },
+          {
+            "x": 27.5,
+            "y": 90.0
           }
         ]
       },
       {
         "pin1": {
-          "compName": "_submodelinterface",
-          "pinName": "Cn"
+          "compName": "GUIsel3_4#0",
+          "pinName": "Y2"
         },
         "pin2": {
           "compName": "GUIAm2901ALUInclDecode#0",
-          "pinName": "Cn"
+          "pinName": "S2"
         },
+        "name": "unnamedWire#41",
         "path": [
           {
-            "x": 10.0,
-            "y": 260.0
+            "x": 95.0,
+            "y": 590.0
           },
           {
-            "x": 10.0,
-            "y": 50.0
+            "x": 95.0,
+            "y": 150.0
+          },
+          {
+            "x": 32.5,
+            "y": 150.0
+          },
+          {
+            "x": 32.5,
+            "y": 110.0
           }
         ]
       },
       {
         "pin1": {
-          "compName": "_submodelinterface",
-          "pinName": "D1"
+          "compName": "GUIsel3_4#0",
+          "pinName": "Y1"
         },
         "pin2": {
-          "compName": "GUIsel2_4#0",
-          "pinName": "A1"
+          "compName": "GUIAm2901ALUInclDecode#0",
+          "pinName": "S1"
         },
+        "name": "unnamedWire#40",
         "path": [
           {
-            "x": 15.0,
-            "y": 300.0
+            "x": 92.5,
+            "y": 580.0
           },
           {
-            "x": 15.0,
-            "y": 390.0
+            "x": 92.5,
+            "y": 152.5
+          },
+          {
+            "x": 30.0,
+            "y": 152.5
+          },
+          {
+            "x": 30.0,
+            "y": 100.0
           }
         ]
       },
       {
         "pin1": {
-          "compName": "_submodelinterface",
-          "pinName": "D2"
+          "compName": "GUIsel3_4#0",
+          "pinName": "Y4"
         },
         "pin2": {
-          "compName": "GUIsel2_4#0",
-          "pinName": "A2"
+          "compName": "GUIAm2901ALUInclDecode#0",
+          "pinName": "S4"
         },
+        "name": "unnamedWire#43",
         "path": [
           {
-            "x": 10.0,
-            "y": 340.0
+            "x": 100.0,
+            "y": 610.0
           },
           {
-            "x": 10.0,
-            "y": 400.0
+            "x": 100.0,
+            "y": 145.0
+          },
+          {
+            "x": 37.5,
+            "y": 145.0
+          },
+          {
+            "x": 37.5,
+            "y": 130.0
           }
         ]
       },
       {
         "pin1": {
-          "compName": "_submodelinterface",
-          "pinName": "D3"
+          "compName": "GUIsel3_4#0",
+          "pinName": "Y3"
         },
         "pin2": {
-          "compName": "GUIsel2_4#0",
-          "pinName": "A3"
+          "compName": "GUIAm2901ALUInclDecode#0",
+          "pinName": "S3"
         },
+        "name": "unnamedWire#42",
         "path": [
           {
-            "x": 5.0,
-            "y": 380.0
+            "x": 97.5,
+            "y": 600.0
           },
           {
-            "x": 5.0,
-            "y": 410.0
+            "x": 97.5,
+            "y": 147.5
+          },
+          {
+            "x": 35.0,
+            "y": 147.5
+          },
+          {
+            "x": 35.0,
+            "y": 120.0
           }
         ]
       },
       {
         "pin1": {
-          "compName": "_submodelinterface",
-          "pinName": "D4"
+          "compName": "GUIAm2901ALUInclDecode#0",
+          "pinName": "F2"
         },
         "pin2": {
-          "compName": "GUIsel2_4#0",
-          "pinName": "A4"
-        },
-        "path": []
-      },
-      {
-        "pin1": {
           "compName": "_submodelinterface",
-          "pinName": "A1"
-        },
-        "pin2": {
-          "compName": "WireCrossPoint#0",
-          "pinName": ""
+          "pinName": "F2"
         },
-        "path": []
+        "name": "unnamedWire#45",
+        "path": [
+          {
+            "x": 135.0,
+            "y": 30.0
+          },
+          {
+            "x": 135.0,
+            "y": 60.0
+          }
+        ]
       },
       {
         "pin1": {
-          "compName": "_submodelinterface",
-          "pinName": "A2"
+          "compName": "GUIAm2901ALUInclDecode#0",
+          "pinName": "F1"
         },
         "pin2": {
-          "compName": "WireCrossPoint#1",
-          "pinName": ""
+          "compName": "_submodelinterface",
+          "pinName": "F1"
         },
+        "name": "unnamedWire#44",
         "path": []
       },
       {
         "pin1": {
-          "compName": "_submodelinterface",
-          "pinName": "A3"
+          "compName": "GUIAm2901ALUInclDecode#0",
+          "pinName": "F4"
         },
         "pin2": {
-          "compName": "WireCrossPoint#2",
-          "pinName": ""
+          "compName": "_submodelinterface",
+          "pinName": "F4"
         },
-        "path": []
+        "name": "unnamedWire#47",
+        "path": [
+          {
+            "x": 125.0,
+            "y": 50.0
+          },
+          {
+            "x": 125.0,
+            "y": 140.0
+          }
+        ]
       },
       {
         "pin1": {
-          "compName": "_submodelinterface",
-          "pinName": "A4"
+          "compName": "GUIAm2901ALUInclDecode#0",
+          "pinName": "F3"
         },
         "pin2": {
-          "compName": "WireCrossPoint#3",
-          "pinName": ""
+          "compName": "_submodelinterface",
+          "pinName": "F3"
         },
-        "path": []
+        "name": "unnamedWire#46",
+        "path": [
+          {
+            "x": 130.0,
+            "y": 40.0
+          },
+          {
+            "x": 130.0,
+            "y": 100.0
+          }
+        ]
       },
       {
         "pin1": {
-          "compName": "WireCrossPoint#0",
-          "pinName": ""
+          "compName": "GUIAm2901ALUInclDecode#0",
+          "pinName": "OVR"
         },
         "pin2": {
-          "compName": "GUIsel2_4#0",
-          "pinName": "B1"
+          "compName": "_submodelinterface",
+          "pinName": "OVR"
         },
+        "name": "unnamedWire#49",
         "path": [
           {
-            "x": 10.0,
-            "y": 430.0
+            "x": 115.0,
+            "y": 70.0
+          },
+          {
+            "x": 115.0,
+            "y": 220.0
           }
         ]
       },
       {
         "pin1": {
-          "compName": "WireCrossPoint#1",
-          "pinName": ""
+          "compName": "GUIAm2901ALUInclDecode#0",
+          "pinName": "Cn+4"
         },
         "pin2": {
-          "compName": "GUIsel2_4#0",
-          "pinName": "B2"
+          "compName": "_submodelinterface",
+          "pinName": "Cn+4"
         },
+        "name": "unnamedWire#48",
         "path": [
           {
-            "x": 15.0,
-            "y": 440.0
+            "x": 120.0,
+            "y": 60.0
+          },
+          {
+            "x": 120.0,
+            "y": 180.0
           }
         ]
       },
       {
         "pin1": {
-          "compName": "WireCrossPoint#2",
-          "pinName": ""
+          "compName": "_submodelinterface",
+          "pinName": "D3"
         },
         "pin2": {
           "compName": "GUIsel2_4#0",
-          "pinName": "B3"
+          "pinName": "A3"
         },
+        "name": "unnamedWire#9",
         "path": [
           {
-            "x": 20.0,
-            "y": 450.0
+            "x": 5.0,
+            "y": 380.0
+          },
+          {
+            "x": 5.0,
+            "y": 410.0
           }
         ]
       },
       {
         "pin1": {
-          "compName": "WireCrossPoint#3",
-          "pinName": ""
+          "compName": "_submodelinterface",
+          "pinName": "D2"
         },
         "pin2": {
           "compName": "GUIsel2_4#0",
-          "pinName": "B4"
+          "pinName": "A2"
         },
+        "name": "unnamedWire#8",
         "path": [
           {
-            "x": 25.0,
-            "y": 460.0
+            "x": 10.0,
+            "y": 340.0
+          },
+          {
+            "x": 10.0,
+            "y": 400.0
           }
         ]
       },
       {
         "pin1": {
-          "compName": "WireCrossPoint#0",
-          "pinName": ""
+          "compName": "_submodelinterface",
+          "pinName": "D1"
         },
         "pin2": {
-          "compName": "GUIsel3_4#0",
+          "compName": "GUIsel2_4#0",
           "pinName": "A1"
         },
+        "name": "unnamedWire#7",
         "path": [
           {
-            "x": 10.0,
-            "y": 610.0
+            "x": 15.0,
+            "y": 300.0
+          },
+          {
+            "x": 15.0,
+            "y": 390.0
           }
         ]
       },
       {
         "pin1": {
-          "compName": "WireCrossPoint#1",
-          "pinName": ""
+          "compName": "_submodelinterface",
+          "pinName": "Cn"
         },
         "pin2": {
-          "compName": "GUIsel3_4#0",
-          "pinName": "A2"
+          "compName": "GUIAm2901ALUInclDecode#0",
+          "pinName": "Cn"
         },
+        "name": "unnamedWire#6",
         "path": [
           {
-            "x": 15.0,
-            "y": 620.0
+            "x": 10.0,
+            "y": 260.0
+          },
+          {
+            "x": 10.0,
+            "y": 50.0
           }
         ]
       },
       {
         "pin1": {
-          "compName": "WireCrossPoint#2",
-          "pinName": ""
+          "compName": "_submodelinterface",
+          "pinName": "I4"
         },
         "pin2": {
-          "compName": "GUIsel3_4#0",
-          "pinName": "A3"
+          "compName": "GUIAm2901ALUInclDecode#0",
+          "pinName": "I4"
         },
+        "name": "unnamedWire#1",
         "path": [
           {
-            "x": 20.0,
-            "y": 630.0
+            "x": 5.0,
+            "y": 60.0
+          },
+          {
+            "x": 5.0,
+            "y": 30.0
           }
         ]
       },
       {
         "pin1": {
-          "compName": "WireCrossPoint#3",
-          "pinName": ""
+          "compName": "_submodelinterface",
+          "pinName": "I5"
         },
         "pin2": {
-          "compName": "GUIsel3_4#0",
-          "pinName": "A4"
+          "compName": "GUIAm2901ALUInclDecode#0",
+          "pinName": "I5"
         },
-        "path": [
-          {
-            "x": 25.0,
-            "y": 640.0
-          }
-        ]
+        "name": "unnamedWire#0",
+        "path": []
       },
       {
         "pin1": {
           "compName": "_submodelinterface",
-          "pinName": "B1"
+          "pinName": "I0"
         },
         "pin2": {
-          "compName": "GUIsel3_4#0",
-          "pinName": "B1"
+          "compName": "GUIAm2901SourceDecode#0",
+          "pinName": "I0"
         },
+        "name": "unnamedWire#5",
         "path": [
           {
             "x": 5.0,
-            "y": 620.0
+            "y": 220.0
           },
           {
             "x": 5.0,
-            "y": 650.0
+            "y": 190.0
           }
         ]
       },
       {
         "pin1": {
           "compName": "_submodelinterface",
-          "pinName": "B2"
+          "pinName": "D4"
         },
         "pin2": {
-          "compName": "GUIsel3_4#0",
-          "pinName": "B2"
+          "compName": "GUIsel2_4#0",
+          "pinName": "A4"
         },
+        "name": "unnamedWire#10",
         "path": []
       },
       {
         "pin1": {
           "compName": "_submodelinterface",
-          "pinName": "B3"
+          "pinName": "I1"
         },
         "pin2": {
-          "compName": "GUIsel3_4#0",
-          "pinName": "B3"
+          "compName": "GUIAm2901SourceDecode#0",
+          "pinName": "I1"
+        },
+        "name": "unnamedWire#4",
+        "path": []
+      },
+      {
+        "pin1": {
+          "compName": "_submodelinterface",
+          "pinName": "I2"
+        },
+        "pin2": {
+          "compName": "GUIAm2901SourceDecode#0",
+          "pinName": "I2"
         },
+        "name": "unnamedWire#3",
         "path": [
           {
             "x": 5.0,
-            "y": 700.0
+            "y": 140.0
           },
           {
             "x": 5.0,
-            "y": 670.0
+            "y": 170.0
           }
         ]
       },
       {
         "pin1": {
           "compName": "_submodelinterface",
-          "pinName": "B4"
+          "pinName": "A2"
         },
         "pin2": {
-          "compName": "GUIsel3_4#0",
-          "pinName": "B4"
+          "compName": "WireCrossPoint#1",
+          "pinName": ""
         },
-        "path": [
-          {
-            "x": 10.0,
-            "y": 740.0
-          },
-          {
-            "x": 10.0,
-            "y": 680.0
-          }
-        ]
+        "name": "unnamedWire#12",
+        "path": []
       },
       {
         "pin1": {
           "compName": "_submodelinterface",
-          "pinName": "Q1"
+          "pinName": "I3"
         },
         "pin2": {
-          "compName": "GUIsel3_4#0",
-          "pinName": "C1"
+          "compName": "GUIAm2901ALUInclDecode#0",
+          "pinName": "I3"
         },
+        "name": "unnamedWire#2",
         "path": [
           {
             "x": 15.0,
-            "y": 780.0
+            "y": 100.0
           },
           {
             "x": 15.0,
-            "y": 690.0
+            "y": 40.0
           }
         ]
       },
       {
         "pin1": {
           "compName": "_submodelinterface",
-          "pinName": "Q2"
+          "pinName": "A1"
         },
         "pin2": {
-          "compName": "GUIsel3_4#0",
-          "pinName": "C2"
+          "compName": "WireCrossPoint#0",
+          "pinName": ""
         },
-        "path": [
-          {
-            "x": 20.0,
-            "y": 820.0
-          },
-          {
-            "x": 20.0,
-            "y": 700.0
-          }
-        ]
+        "name": "unnamedWire#11",
+        "path": []
       },
       {
         "pin1": {
           "compName": "_submodelinterface",
-          "pinName": "Q3"
+          "pinName": "A4"
         },
         "pin2": {
-          "compName": "GUIsel3_4#0",
-          "pinName": "C3"
+          "compName": "WireCrossPoint#3",
+          "pinName": ""
         },
-        "path": [
-          {
-            "x": 25.0,
-            "y": 860.0
-          },
-          {
-            "x": 25.0,
-            "y": 710.0
-          }
-        ]
+        "name": "unnamedWire#14",
+        "path": []
       },
       {
         "pin1": {
           "compName": "_submodelinterface",
-          "pinName": "Q4"
+          "pinName": "A3"
         },
         "pin2": {
-          "compName": "GUIsel3_4#0",
-          "pinName": "C4"
+          "compName": "WireCrossPoint#2",
+          "pinName": ""
         },
+        "name": "unnamedWire#13",
+        "path": []
+      },
+      {
+        "pin1": {
+          "compName": "WireCrossPoint#1",
+          "pinName": ""
+        },
+        "pin2": {
+          "compName": "GUIsel2_4#0",
+          "pinName": "B2"
+        },
+        "name": "unnamedWire#16",
         "path": [
           {
-            "x": 30.0,
-            "y": 900.0
-          },
-          {
-            "x": 30.0,
-            "y": 720.0
+            "x": 15.0,
+            "y": 440.0
           }
         ]
       },
       {
         "pin1": {
-          "compName": "GUIAm2901SourceDecode#0",
-          "pinName": "SQ"
+          "compName": "WireCrossPoint#0",
+          "pinName": ""
         },
         "pin2": {
-          "compName": "GUIsel3_4#0",
-          "pinName": "SC"
+          "compName": "GUIsel2_4#0",
+          "pinName": "B1"
         },
+        "name": "unnamedWire#15",
         "path": [
           {
-            "x": 75.0,
-            "y": 170.0
-          },
-          {
-            "x": 75.0,
-            "y": 240.0
-          },
-          {
-            "x": 30.0,
-            "y": 240.0
-          },
-          {
-            "x": 30.0,
-            "y": 600.0
+            "x": 10.0,
+            "y": 430.0
           }
         ]
       },
       {
         "pin1": {
-          "compName": "GUIAm2901SourceDecode#0",
-          "pinName": "RA"
+          "compName": "WireCrossPoint#3",
+          "pinName": ""
         },
         "pin2": {
           "compName": "GUIsel2_4#0",
-          "pinName": "SB"
+          "pinName": "B4"
         },
+        "name": "unnamedWire#18",
         "path": [
           {
-            "x": 70.0,
-            "y": 180.0
-          },
-          {
-            "x": 70.0,
-            "y": 235.0
-          },
-          {
-            "x": 20.0,
-            "y": 235.0
-          },
-          {
-            "x": 20.0,
-            "y": 380.0
+            "x": 25.0,
+            "y": 460.0
           }
         ]
       },
       {
         "pin1": {
-          "compName": "GUIAm2901SourceDecode#0",
-          "pinName": "SB"
+          "compName": "WireCrossPoint#2",
+          "pinName": ""
         },
         "pin2": {
-          "compName": "GUIsel3_4#0",
-          "pinName": "SB"
+          "compName": "GUIsel2_4#0",
+          "pinName": "B3"
         },
+        "name": "unnamedWire#17",
         "path": [
           {
-            "x": 65.0,
-            "y": 190.0
-          },
-          {
-            "x": 65.0,
-            "y": 230.0
-          },
-          {
-            "x": 35.0,
-            "y": 230.0
-          },
-          {
-            "x": 35.0,
-            "y": 590.0
+            "x": 20.0,
+            "y": 450.0
           }
         ]
       },
       {
         "pin1": {
-          "compName": "GUIAm2901SourceDecode#0",
-          "pinName": "SA"
+          "compName": "WireCrossPoint#0",
+          "pinName": ""
         },
         "pin2": {
           "compName": "GUIsel3_4#0",
-          "pinName": "SA"
+          "pinName": "A1"
         },
+        "name": "unnamedWire#19",
         "path": [
           {
-            "x": 60.0,
-            "y": 200.0
-          },
-          {
-            "x": 60.0,
-            "y": 225.0
-          },
-          {
-            "x": 40.0,
-            "y": 225.0
-          },
-          {
-            "x": 40.0,
-            "y": 580.0
+            "x": 10.0,
+            "y": 610.0
           }
         ]
       },
       {
         "pin1": {
-          "compName": "GUIAm2901SourceDecode#0",
-          "pinName": "RD"
+          "compName": "WireCrossPoint#2",
+          "pinName": ""
         },
         "pin2": {
-          "compName": "GUIsel2_4#0",
-          "pinName": "SA"
+          "compName": "GUIsel3_4#0",
+          "pinName": "A3"
         },
+        "name": "unnamedWire#21",
         "path": [
           {
-            "x": 55.0,
-            "y": 210.0
-          },
-          {
-            "x": 55.0,
-            "y": 220.0
-          },
-          {
-            "x": 25.0,
-            "y": 220.0
-          },
-          {
-            "x": 25.0,
-            "y": 370.0
+            "x": 20.0,
+            "y": 630.0
           }
         ]
       },
       {
         "pin1": {
-          "compName": "GUIsel2_4#0",
-          "pinName": "Y1"
+          "compName": "WireCrossPoint#1",
+          "pinName": ""
         },
         "pin2": {
-          "compName": "GUIAm2901ALUInclDecode#0",
-          "pinName": "R1"
+          "compName": "GUIsel3_4#0",
+          "pinName": "A2"
         },
+        "name": "unnamedWire#20",
         "path": [
           {
-            "x": 82.5,
-            "y": 370.0
-          },
-          {
-            "x": 82.5,
-            "y": 162.5
-          },
-          {
-            "x": 20.0,
-            "y": 162.5
-          },
-          {
-            "x": 20.0,
-            "y": 60.0
+            "x": 15.0,
+            "y": 620.0
           }
         ]
       },
       {
         "pin1": {
-          "compName": "GUIsel2_4#0",
-          "pinName": "Y2"
+          "compName": "_submodelinterface",
+          "pinName": "B1"
         },
         "pin2": {
-          "compName": "GUIAm2901ALUInclDecode#0",
-          "pinName": "R2"
+          "compName": "GUIsel3_4#0",
+          "pinName": "B1"
         },
+        "name": "unnamedWire#23",
         "path": [
           {
-            "x": 85.0,
-            "y": 380.0
-          },
-          {
-            "x": 85.0,
-            "y": 160.0
-          },
-          {
-            "x": 22.5,
-            "y": 160.0
+            "x": 5.0,
+            "y": 620.0
           },
           {
-            "x": 22.5,
-            "y": 70.0
+            "x": 5.0,
+            "y": 650.0
           }
         ]
       },
       {
         "pin1": {
-          "compName": "GUIsel2_4#0",
-          "pinName": "Y3"
+          "compName": "WireCrossPoint#3",
+          "pinName": ""
         },
         "pin2": {
-          "compName": "GUIAm2901ALUInclDecode#0",
-          "pinName": "R3"
+          "compName": "GUIsel3_4#0",
+          "pinName": "A4"
         },
+        "name": "unnamedWire#22",
         "path": [
-          {
-            "x": 87.5,
-            "y": 390.0
-          },
-          {
-            "x": 87.5,
-            "y": 157.5
-          },
           {
             "x": 25.0,
-            "y": 157.5
-          },
-          {
-            "x": 25.0,
-            "y": 80.0
+            "y": 640.0
           }
         ]
       },
       {
         "pin1": {
-          "compName": "GUIsel2_4#0",
-          "pinName": "Y4"
+          "compName": "_submodelinterface",
+          "pinName": "B3"
         },
         "pin2": {
-          "compName": "GUIAm2901ALUInclDecode#0",
-          "pinName": "R4"
+          "compName": "GUIsel3_4#0",
+          "pinName": "B3"
         },
+        "name": "unnamedWire#25",
         "path": [
           {
-            "x": 90.0,
-            "y": 400.0
-          },
-          {
-            "x": 90.0,
-            "y": 155.0
-          },
-          {
-            "x": 27.5,
-            "y": 155.0
+            "x": 5.0,
+            "y": 700.0
           },
           {
-            "x": 27.5,
-            "y": 90.0
+            "x": 5.0,
+            "y": 670.0
           }
         ]
       },
       {
         "pin1": {
+          "compName": "_submodelinterface",
+          "pinName": "B2"
+        },
+        "pin2": {
           "compName": "GUIsel3_4#0",
-          "pinName": "Y1"
+          "pinName": "B2"
+        },
+        "name": "unnamedWire#24",
+        "path": []
+      },
+      {
+        "pin1": {
+          "compName": "_submodelinterface",
+          "pinName": "Q1"
         },
         "pin2": {
-          "compName": "GUIAm2901ALUInclDecode#0",
-          "pinName": "S1"
+          "compName": "GUIsel3_4#0",
+          "pinName": "C1"
         },
+        "name": "unnamedWire#27",
         "path": [
           {
-            "x": 92.5,
-            "y": 580.0
-          },
-          {
-            "x": 92.5,
-            "y": 152.5
-          },
-          {
-            "x": 30.0,
-            "y": 152.5
+            "x": 15.0,
+            "y": 780.0
           },
           {
-            "x": 30.0,
-            "y": 100.0
+            "x": 15.0,
+            "y": 690.0
           }
         ]
       },
       {
         "pin1": {
-          "compName": "GUIsel3_4#0",
-          "pinName": "Y2"
+          "compName": "_submodelinterface",
+          "pinName": "B4"
         },
         "pin2": {
-          "compName": "GUIAm2901ALUInclDecode#0",
-          "pinName": "S2"
+          "compName": "GUIsel3_4#0",
+          "pinName": "B4"
         },
+        "name": "unnamedWire#26",
         "path": [
           {
-            "x": 95.0,
-            "y": 590.0
-          },
-          {
-            "x": 95.0,
-            "y": 150.0
-          },
-          {
-            "x": 32.5,
-            "y": 150.0
+            "x": 10.0,
+            "y": 740.0
           },
           {
-            "x": 32.5,
-            "y": 110.0
+            "x": 10.0,
+            "y": 680.0
           }
         ]
       },
       {
         "pin1": {
-          "compName": "GUIsel3_4#0",
-          "pinName": "Y3"
+          "compName": "_submodelinterface",
+          "pinName": "Q3"
         },
         "pin2": {
-          "compName": "GUIAm2901ALUInclDecode#0",
-          "pinName": "S3"
+          "compName": "GUIsel3_4#0",
+          "pinName": "C3"
         },
+        "name": "unnamedWire#29",
         "path": [
           {
-            "x": 97.5,
-            "y": 600.0
-          },
-          {
-            "x": 97.5,
-            "y": 147.5
-          },
-          {
-            "x": 35.0,
-            "y": 147.5
+            "x": 25.0,
+            "y": 860.0
           },
           {
-            "x": 35.0,
-            "y": 120.0
+            "x": 25.0,
+            "y": 710.0
           }
         ]
       },
       {
         "pin1": {
-          "compName": "GUIsel3_4#0",
-          "pinName": "Y4"
+          "compName": "_submodelinterface",
+          "pinName": "Q2"
         },
         "pin2": {
-          "compName": "GUIAm2901ALUInclDecode#0",
-          "pinName": "S4"
+          "compName": "GUIsel3_4#0",
+          "pinName": "C2"
         },
+        "name": "unnamedWire#28",
         "path": [
           {
-            "x": 100.0,
-            "y": 610.0
-          },
-          {
-            "x": 100.0,
-            "y": 145.0
-          },
-          {
-            "x": 37.5,
-            "y": 145.0
+            "x": 20.0,
+            "y": 820.0
           },
           {
-            "x": 37.5,
-            "y": 130.0
+            "x": 20.0,
+            "y": 700.0
           }
         ]
       },
       {
         "pin1": {
-          "compName": "GUIAm2901ALUInclDecode#0",
-          "pinName": "F1"
-        },
-        "pin2": {
           "compName": "_submodelinterface",
-          "pinName": "F1"
-        },
-        "path": []
-      },
-      {
-        "pin1": {
-          "compName": "GUIAm2901ALUInclDecode#0",
-          "pinName": "F2"
+          "pinName": "Q4"
         },
         "pin2": {
-          "compName": "_submodelinterface",
-          "pinName": "F2"
+          "compName": "GUIsel3_4#0",
+          "pinName": "C4"
         },
+        "name": "unnamedWire#30",
         "path": [
           {
-            "x": 135.0,
-            "y": 30.0
+            "x": 30.0,
+            "y": 900.0
           },
           {
-            "x": 135.0,
-            "y": 60.0
+            "x": 30.0,
+            "y": 720.0
           }
         ]
       },
       {
         "pin1": {
-          "compName": "GUIAm2901ALUInclDecode#0",
-          "pinName": "F3"
+          "compName": "GUIAm2901SourceDecode#0",
+          "pinName": "RA"
         },
         "pin2": {
-          "compName": "_submodelinterface",
-          "pinName": "F3"
+          "compName": "GUIsel2_4#0",
+          "pinName": "SB"
         },
+        "name": "unnamedWire#32",
         "path": [
           {
-            "x": 130.0,
-            "y": 40.0
+            "x": 70.0,
+            "y": 180.0
           },
           {
-            "x": 130.0,
-            "y": 100.0
+            "x": 70.0,
+            "y": 235.0
+          },
+          {
+            "x": 20.0,
+            "y": 235.0
+          },
+          {
+            "x": 20.0,
+            "y": 380.0
           }
         ]
       },
       {
         "pin1": {
-          "compName": "GUIAm2901ALUInclDecode#0",
-          "pinName": "F4"
+          "compName": "GUIAm2901SourceDecode#0",
+          "pinName": "SQ"
         },
         "pin2": {
-          "compName": "_submodelinterface",
-          "pinName": "F4"
+          "compName": "GUIsel3_4#0",
+          "pinName": "SC"
         },
+        "name": "unnamedWire#31",
         "path": [
           {
-            "x": 125.0,
-            "y": 50.0
+            "x": 75.0,
+            "y": 170.0
           },
           {
-            "x": 125.0,
-            "y": 140.0
+            "x": 75.0,
+            "y": 240.0
+          },
+          {
+            "x": 30.0,
+            "y": 240.0
+          },
+          {
+            "x": 30.0,
+            "y": 600.0
           }
         ]
       },
       {
         "pin1": {
-          "compName": "GUIAm2901ALUInclDecode#0",
-          "pinName": "Cn+4"
+          "compName": "GUIAm2901SourceDecode#0",
+          "pinName": "SA"
         },
         "pin2": {
-          "compName": "_submodelinterface",
-          "pinName": "Cn+4"
+          "compName": "GUIsel3_4#0",
+          "pinName": "SA"
         },
+        "name": "unnamedWire#34",
         "path": [
           {
-            "x": 120.0,
-            "y": 60.0
+            "x": 60.0,
+            "y": 200.0
           },
           {
-            "x": 120.0,
-            "y": 180.0
+            "x": 60.0,
+            "y": 225.0
+          },
+          {
+            "x": 40.0,
+            "y": 225.0
+          },
+          {
+            "x": 40.0,
+            "y": 580.0
           }
         ]
       },
       {
         "pin1": {
-          "compName": "GUIAm2901ALUInclDecode#0",
-          "pinName": "OVR"
+          "compName": "GUIAm2901SourceDecode#0",
+          "pinName": "SB"
         },
         "pin2": {
-          "compName": "_submodelinterface",
-          "pinName": "OVR"
+          "compName": "GUIsel3_4#0",
+          "pinName": "SB"
         },
+        "name": "unnamedWire#33",
         "path": [
           {
-            "x": 115.0,
-            "y": 70.0
+            "x": 65.0,
+            "y": 190.0
           },
           {
-            "x": 115.0,
-            "y": 220.0
+            "x": 65.0,
+            "y": 230.0
+          },
+          {
+            "x": 35.0,
+            "y": 230.0
+          },
+          {
+            "x": 35.0,
+            "y": 590.0
           }
         ]
       }
     ]
   },
-  "symbolRendererSnippetID": "simpleRectangularLike",
+  "symbolRendererSnippetID": "class:net.mograsim.logic.model.snippets.symbolrenderers.SimpleRectangularLikeSymbolRenderer",
   "symbolRendererParams": {
     "centerText": "GUIAm2901ALUInclSourceDecodeInclFunctionDecode",
     "centerTextHeight": 5.0,
     "horizontalComponentCenter": 17.5,
     "pinLabelHeight": 3.5,
     "pinLabelMargin": 0.5
-  }
+  },
+  "outlineRendererSnippetID": "class:net.mograsim.logic.model.snippets.outlinerenderers.DefaultOutlineRenderer"
 }
\ No newline at end of file