1 package net.mograsim.logic.ui.model.components.mi.nandbased;
3 import net.haspamelodica.swt.helper.swtobjectwrappers.Point;
4 import net.mograsim.logic.ui.model.ViewModelModifiable;
5 import net.mograsim.logic.ui.model.components.SimpleRectangularSubmodelComponent;
6 import net.mograsim.logic.ui.model.wires.GUIWire;
7 import net.mograsim.logic.ui.model.wires.Pin;
8 import net.mograsim.logic.ui.model.wires.WireCrossPoint;
10 public class GUIram4 extends SimpleRectangularSubmodelComponent
12 public GUIram4(ViewModelModifiable model)
14 super(model, 1, "GUIram4");
18 initSubmodelComponents();
21 @SuppressWarnings("unused") // for GUIWires being created
22 private void initSubmodelComponents()
25 Pin A0 = getInputSubmodelPins() .get( 0);
26 Pin A1 = getInputSubmodelPins() .get( 1);
27 Pin A2 = getInputSubmodelPins() .get( 2);
28 Pin A3 = getInputSubmodelPins() .get( 3);
29 Pin B0 = getInputSubmodelPins() .get( 4);
30 Pin B1 = getInputSubmodelPins() .get( 5);
31 Pin B2 = getInputSubmodelPins() .get( 6);
32 Pin B3 = getInputSubmodelPins() .get( 7);
33 Pin WE = getInputSubmodelPins() .get( 8);
34 Pin D1 = getInputSubmodelPins() .get( 9);
35 Pin D2 = getInputSubmodelPins() .get(10);
36 Pin D3 = getInputSubmodelPins() .get(11);
37 Pin D4 = getInputSubmodelPins() .get(12);
38 Pin QA1 = getOutputSubmodelPins().get( 0);
39 Pin QA2 = getOutputSubmodelPins().get( 1);
40 Pin QA3 = getOutputSubmodelPins().get( 2);
41 Pin QA4 = getOutputSubmodelPins().get( 3);
42 Pin QB1 = getOutputSubmodelPins().get( 4);
43 Pin QB2 = getOutputSubmodelPins().get( 5);
44 Pin QB3 = getOutputSubmodelPins().get( 6);
45 Pin QB4 = getOutputSubmodelPins().get( 7);
47 GUIdemux2 demuxA = new GUIdemux2 (submodelModifiable);
48 GUIdemux2 demuxB = new GUIdemux2 (submodelModifiable);
49 GUIand41 weAndB = new GUIand41 (submodelModifiable);
50 GUIram2 cell00 = new GUIram2 (submodelModifiable);
51 GUIram2 cell01 = new GUIram2 (submodelModifiable);
52 GUIram2 cell10 = new GUIram2 (submodelModifiable);
53 GUIram2 cell11 = new GUIram2 (submodelModifiable);
54 GUIand41 andA00 = new GUIand41 (submodelModifiable);
55 GUIandor414 andorA01 = new GUIandor414(submodelModifiable);
56 GUIandor414 andorA10 = new GUIandor414(submodelModifiable);
57 GUIandor414 andorA11 = new GUIandor414(submodelModifiable);
58 GUIand41 andB00 = new GUIand41 (submodelModifiable);
59 GUIandor414 andorB01 = new GUIandor414(submodelModifiable);
60 GUIandor414 andorB10 = new GUIandor414(submodelModifiable);
61 GUIandor414 andorB11 = new GUIandor414(submodelModifiable);
63 WireCrossPoint cpB00 = new WireCrossPoint(submodelModifiable, 1);
64 WireCrossPoint cpB01 = new WireCrossPoint(submodelModifiable, 1);
65 WireCrossPoint cpB10 = new WireCrossPoint(submodelModifiable, 1);
66 WireCrossPoint cpB11 = new WireCrossPoint(submodelModifiable, 1);
67 WireCrossPoint cpD_101 = new WireCrossPoint(submodelModifiable, 1);
68 WireCrossPoint cpD_201 = new WireCrossPoint(submodelModifiable, 1);
69 WireCrossPoint cpD_301 = new WireCrossPoint(submodelModifiable, 1);
70 WireCrossPoint cpD_401 = new WireCrossPoint(submodelModifiable, 1);
71 WireCrossPoint cpD_110 = new WireCrossPoint(submodelModifiable, 1);
72 WireCrossPoint cpD_210 = new WireCrossPoint(submodelModifiable, 1);
73 WireCrossPoint cpD_310 = new WireCrossPoint(submodelModifiable, 1);
74 WireCrossPoint cpD_410 = new WireCrossPoint(submodelModifiable, 1);
75 WireCrossPoint cpD_111 = new WireCrossPoint(submodelModifiable, 1);
76 WireCrossPoint cpD_211 = new WireCrossPoint(submodelModifiable, 1);
77 WireCrossPoint cpD_311 = new WireCrossPoint(submodelModifiable, 1);
78 WireCrossPoint cpD_411 = new WireCrossPoint(submodelModifiable, 1);
79 WireCrossPoint cpAB101 = new WireCrossPoint(submodelModifiable, 1);
80 WireCrossPoint cpAB201 = new WireCrossPoint(submodelModifiable, 1);
81 WireCrossPoint cpAB301 = new WireCrossPoint(submodelModifiable, 1);
82 WireCrossPoint cpAB401 = new WireCrossPoint(submodelModifiable, 1);
83 WireCrossPoint cpAB110 = new WireCrossPoint(submodelModifiable, 1);
84 WireCrossPoint cpAB210 = new WireCrossPoint(submodelModifiable, 1);
85 WireCrossPoint cpAB310 = new WireCrossPoint(submodelModifiable, 1);
86 WireCrossPoint cpAB410 = new WireCrossPoint(submodelModifiable, 1);
87 WireCrossPoint cpAB1in = new WireCrossPoint(submodelModifiable, 1);
88 WireCrossPoint cpAB2in = new WireCrossPoint(submodelModifiable, 1);
89 WireCrossPoint cpAB4in = new WireCrossPoint(submodelModifiable, 1);
90 WireCrossPoint cpQ100 = new WireCrossPoint(submodelModifiable, 1);
91 WireCrossPoint cpQ200 = new WireCrossPoint(submodelModifiable, 1);
92 WireCrossPoint cpQ300 = new WireCrossPoint(submodelModifiable, 1);
93 WireCrossPoint cpQ400 = new WireCrossPoint(submodelModifiable, 1);
94 WireCrossPoint cpQ101 = new WireCrossPoint(submodelModifiable, 1);
95 WireCrossPoint cpQ201 = new WireCrossPoint(submodelModifiable, 1);
96 WireCrossPoint cpQ301 = new WireCrossPoint(submodelModifiable, 1);
97 WireCrossPoint cpQ401 = new WireCrossPoint(submodelModifiable, 1);
98 WireCrossPoint cpQ110 = new WireCrossPoint(submodelModifiable, 1);
99 WireCrossPoint cpQ210 = new WireCrossPoint(submodelModifiable, 1);
100 WireCrossPoint cpQ310 = new WireCrossPoint(submodelModifiable, 1);
101 WireCrossPoint cpQ410 = new WireCrossPoint(submodelModifiable, 1);
102 WireCrossPoint cpQ111 = new WireCrossPoint(submodelModifiable, 1);
103 WireCrossPoint cpQ211 = new WireCrossPoint(submodelModifiable, 1);
104 WireCrossPoint cpQ311 = new WireCrossPoint(submodelModifiable, 1);
105 WireCrossPoint cpQ411 = new WireCrossPoint(submodelModifiable, 1);
107 demuxA .moveTo( 55, 45);
108 demuxB .moveTo( 55, 150);
109 weAndB .moveTo(150, 150);
110 cell00 .moveTo( 75, 325);
111 cell01 .moveTo( 75, 475);
112 cell10 .moveTo( 75, 625);
113 cell11 .moveTo( 75, 775);
114 andA00 .moveTo(250, 375);
115 andorA01.moveTo(250, 485);
116 andorA10.moveTo(250, 635);
117 andorA11.moveTo(250, 785);
118 andB00 .moveTo(155, 325);
119 andorB01.moveTo(155, 435);
120 andorB10.moveTo(155, 585);
121 andorB11.moveTo(155, 735);
122 cpB00 .moveCenterTo(130, 155);
123 cpB01 .moveCenterTo(125, 165);
124 cpB10 .moveCenterTo(120, 175);
125 cpB11 .moveCenterTo(115, 185);
126 cpD_101.moveCenterTo( 62.5, 530);
127 cpD_201.moveCenterTo( 65 , 540);
128 cpD_301.moveCenterTo( 67.5, 550);
129 cpD_401.moveCenterTo( 70 , 560);
130 cpD_110.moveCenterTo( 62.5, 680);
131 cpD_210.moveCenterTo( 65 , 690);
132 cpD_310.moveCenterTo( 67.5, 700);
133 cpD_410.moveCenterTo( 70 , 710);
134 cpD_111.moveCenterTo( 62.5, 830);
135 cpD_211.moveCenterTo( 65 , 840);
136 cpD_311.moveCenterTo( 67.5, 850);
137 cpD_411.moveCenterTo( 70 , 860);
138 cpAB101.moveCenterTo( 40, 480);
139 cpAB201.moveCenterTo( 45, 490);
140 cpAB301.moveCenterTo( 50, 500);
141 cpAB401.moveCenterTo( 55, 510);
142 cpAB110.moveCenterTo( 40, 630);
143 cpAB210.moveCenterTo( 45, 640);
144 cpAB310.moveCenterTo( 50, 650);
145 cpAB410.moveCenterTo( 55, 660);
146 cpAB1in.moveCenterTo( 40, 330);
147 cpAB2in.moveCenterTo( 45, 350);
148 cpAB4in.moveCenterTo( 55, 750);
149 cpQ100.moveCenterTo(150, 330);
150 cpQ200.moveCenterTo(145, 340);
151 cpQ300.moveCenterTo(140, 350);
152 cpQ400.moveCenterTo(135, 360);
153 cpQ101.moveCenterTo(150, 480);
154 cpQ201.moveCenterTo(145, 490);
155 cpQ301.moveCenterTo(140, 500);
156 cpQ401.moveCenterTo(135, 510);
157 cpQ110.moveCenterTo(150, 630);
158 cpQ210.moveCenterTo(145, 640);
159 cpQ310.moveCenterTo(140, 650);
160 cpQ410.moveCenterTo(135, 660);
161 cpQ111.moveCenterTo(150, 780);
162 cpQ211.moveCenterTo(145, 790);
163 cpQ311.moveCenterTo(140, 800);
164 cpQ411.moveCenterTo(135, 810);
166 new GUIWire(submodelModifiable, A0, demuxA.getInputPins().get(0), new Point[0]);
167 new GUIWire(submodelModifiable, A1, demuxA.getInputPins().get(1), new Point(10, 150), new Point(10, 60));
168 new GUIWire(submodelModifiable, B0, demuxB.getInputPins().get(0), new Point( 5, 450), new Point( 5, 155));
169 new GUIWire(submodelModifiable, B1, demuxB.getInputPins().get(1), new Point(10, 550), new Point(10, 165));
170 new GUIWire(submodelModifiable, demuxB.getOutputPins().get(0), cpB00, new Point[0]);
171 new GUIWire(submodelModifiable, demuxB.getOutputPins().get(1), cpB01, new Point[0]);
172 new GUIWire(submodelModifiable, demuxB.getOutputPins().get(2), cpB10, new Point[0]);
173 new GUIWire(submodelModifiable, demuxB.getOutputPins().get(3), cpB11, new Point[0]);
174 new GUIWire(submodelModifiable, cpB00, weAndB.getInputPins().get(0), new Point[0]);
175 new GUIWire(submodelModifiable, cpB01, weAndB.getInputPins().get(1), new Point[0]);
176 new GUIWire(submodelModifiable, cpB10, weAndB.getInputPins().get(2), new Point[0]);
177 new GUIWire(submodelModifiable, cpB11, weAndB.getInputPins().get(3), new Point[0]);
178 new GUIWire(submodelModifiable, WE, weAndB.getInputPins().get(4), new Point(15, 850), new Point(15, 195));
179 new GUIWire(submodelModifiable, weAndB.getOutputPins().get(0), cell00.getInputPins().get(4), new Point(205, 155), new Point(205, 230), new Point(35, 230), new Point(35, 370));
180 new GUIWire(submodelModifiable, weAndB.getOutputPins().get(1), cell01.getInputPins().get(4), new Point(200, 165), new Point(200, 225), new Point(30, 225), new Point(30, 520));
181 new GUIWire(submodelModifiable, weAndB.getOutputPins().get(2), cell10.getInputPins().get(4), new Point(195, 175), new Point(195, 220), new Point(25, 220), new Point(25, 670));
182 new GUIWire(submodelModifiable, weAndB.getOutputPins().get(3), cell11.getInputPins().get(4), new Point(190, 185), new Point(190, 215), new Point(20, 215), new Point(20, 820));
183 new GUIWire(submodelModifiable, cpAB101, cpAB1in , new Point[0]);
184 new GUIWire(submodelModifiable, cpAB1in, cell00.getInputPins().get(0), new Point[0]);
185 new GUIWire(submodelModifiable, cpAB201, cpAB2in , new Point[0]);
186 new GUIWire(submodelModifiable, cpAB2in, cell00.getInputPins().get(1), new Point(45, 340));
187 new GUIWire(submodelModifiable, cpAB301, cell00.getInputPins().get(2), new Point(50, 350));
188 new GUIWire(submodelModifiable, cpAB401, cell00.getInputPins().get(3), new Point(55, 360));
189 new GUIWire(submodelModifiable, cpAB101, cell01.getInputPins().get(0), new Point[0]);
190 new GUIWire(submodelModifiable, cpAB201, cell01.getInputPins().get(1), new Point[0]);
191 new GUIWire(submodelModifiable, cpAB301, cell01.getInputPins().get(2), new Point[0]);
192 new GUIWire(submodelModifiable, cpAB401, cell01.getInputPins().get(3), new Point[0]);
193 new GUIWire(submodelModifiable, cpAB101, cpAB110 , new Point[0]);
194 new GUIWire(submodelModifiable, cpAB201, cpAB210 , new Point[0]);
195 new GUIWire(submodelModifiable, cpAB301, cpAB310 , new Point[0]);
196 new GUIWire(submodelModifiable, cpAB401, cpAB410 , new Point[0]);
197 new GUIWire(submodelModifiable, cpAB110, cell10.getInputPins().get(0), new Point[0]);
198 new GUIWire(submodelModifiable, cpAB210, cell10.getInputPins().get(1), new Point[0]);
199 new GUIWire(submodelModifiable, cpAB310, cell10.getInputPins().get(2), new Point[0]);
200 new GUIWire(submodelModifiable, cpAB410, cell10.getInputPins().get(3), new Point[0]);
201 new GUIWire(submodelModifiable, cpAB110, cell11.getInputPins().get(0), new Point(40, 780));
202 new GUIWire(submodelModifiable, cpAB210, cell11.getInputPins().get(1), new Point(45, 790));
203 new GUIWire(submodelModifiable, cpAB310, cell11.getInputPins().get(2), new Point(50, 800));
204 new GUIWire(submodelModifiable, cpAB410, cpAB4in , new Point[0]);
205 new GUIWire(submodelModifiable, cpAB4in, cell11.getInputPins().get(3), new Point(55, 810));
206 new GUIWire(submodelModifiable, A2, cpAB1in , new Point(40, 250));
207 new GUIWire(submodelModifiable, A3, cpAB2in , new Point[0]);
208 new GUIWire(submodelModifiable, B2, cpAB310 , new Point[0]);
209 new GUIWire(submodelModifiable, B3, cpAB4in , new Point[0]);
210 new GUIWire(submodelModifiable, cpD_101, cell00.getInputPins().get(5), new Point(62.5, 380));
211 new GUIWire(submodelModifiable, cpD_201, cell00.getInputPins().get(6), new Point(65 , 390));
212 new GUIWire(submodelModifiable, cpD_301, cell00.getInputPins().get(7), new Point(67.5, 400));
213 new GUIWire(submodelModifiable, cpD_401, cell00.getInputPins().get(8), new Point(70 , 410));
214 new GUIWire(submodelModifiable, cpD_101, cell01.getInputPins().get(5), new Point[0]);
215 new GUIWire(submodelModifiable, cpD_201, cell01.getInputPins().get(6), new Point[0]);
216 new GUIWire(submodelModifiable, cpD_301, cell01.getInputPins().get(7), new Point[0]);
217 new GUIWire(submodelModifiable, cpD_401, cell01.getInputPins().get(8), new Point[0]);
218 new GUIWire(submodelModifiable, cpD_101, cpD_110 , new Point[0]);
219 new GUIWire(submodelModifiable, cpD_201, cpD_210 , new Point[0]);
220 new GUIWire(submodelModifiable, cpD_301, cpD_310 , new Point[0]);
221 new GUIWire(submodelModifiable, cpD_401, cpD_410 , new Point[0]);
222 new GUIWire(submodelModifiable, cpD_110, cell10.getInputPins().get(5), new Point[0]);
223 new GUIWire(submodelModifiable, cpD_210, cell10.getInputPins().get(6), new Point[0]);
224 new GUIWire(submodelModifiable, cpD_310, cell10.getInputPins().get(7), new Point[0]);
225 new GUIWire(submodelModifiable, cpD_410, cell10.getInputPins().get(8), new Point[0]);
226 new GUIWire(submodelModifiable, cpD_110, cpD_111 , new Point[0]);
227 new GUIWire(submodelModifiable, cpD_210, cpD_211 , new Point[0]);
228 new GUIWire(submodelModifiable, cpD_310, cpD_311 , new Point[0]);
229 new GUIWire(submodelModifiable, cpD_410, cpD_411 , new Point[0]);
230 new GUIWire(submodelModifiable, cpD_111, cell11.getInputPins().get(5), new Point[0]);
231 new GUIWire(submodelModifiable, cpD_211, cell11.getInputPins().get(6), new Point[0]);
232 new GUIWire(submodelModifiable, cpD_311, cell11.getInputPins().get(7), new Point[0]);
233 new GUIWire(submodelModifiable, cpD_411, cell11.getInputPins().get(8), new Point[0]);
234 new GUIWire(submodelModifiable, D1, cpD_111 , new Point(62.5, 950));
235 new GUIWire(submodelModifiable, D2, cpD_211 , new Point(65 , 1050));
236 new GUIWire(submodelModifiable, D3, cpD_311 , new Point(67.5, 1150));
237 new GUIWire(submodelModifiable, D4, cpD_411 , new Point(70 , 1250));
238 new GUIWire(submodelModifiable, cell00.getOutputPins().get(0), cpQ100, new Point[0]);
239 new GUIWire(submodelModifiable, cell00.getOutputPins().get(1), cpQ200, new Point[0]);
240 new GUIWire(submodelModifiable, cell00.getOutputPins().get(2), cpQ300, new Point[0]);
241 new GUIWire(submodelModifiable, cell00.getOutputPins().get(3), cpQ400, new Point[0]);
242 new GUIWire(submodelModifiable, cell01.getOutputPins().get(0), cpQ101, new Point[0]);
243 new GUIWire(submodelModifiable, cell01.getOutputPins().get(1), cpQ201, new Point[0]);
244 new GUIWire(submodelModifiable, cell01.getOutputPins().get(2), cpQ301, new Point[0]);
245 new GUIWire(submodelModifiable, cell01.getOutputPins().get(3), cpQ401, new Point[0]);
246 new GUIWire(submodelModifiable, cell10.getOutputPins().get(0), cpQ110, new Point[0]);
247 new GUIWire(submodelModifiable, cell10.getOutputPins().get(1), cpQ210, new Point[0]);
248 new GUIWire(submodelModifiable, cell10.getOutputPins().get(2), cpQ310, new Point[0]);
249 new GUIWire(submodelModifiable, cell10.getOutputPins().get(3), cpQ410, new Point[0]);
250 new GUIWire(submodelModifiable, cell11.getOutputPins().get(0), cpQ111, new Point[0]);
251 new GUIWire(submodelModifiable, cell11.getOutputPins().get(1), cpQ211, new Point[0]);
252 new GUIWire(submodelModifiable, cell11.getOutputPins().get(2), cpQ311, new Point[0]);
253 new GUIWire(submodelModifiable, cell11.getOutputPins().get(3), cpQ411, new Point[0]);
254 new GUIWire(submodelModifiable, demuxA.getOutputPins().get(0), andA00 .getInputPins().get(4), new Point(230, 50), new Point(230, 420));
255 new GUIWire(submodelModifiable, demuxA.getOutputPins().get(1), andorA01.getInputPins().get(8), new Point(225, 60), new Point(225, 570));
256 new GUIWire(submodelModifiable, demuxA.getOutputPins().get(2), andorA10.getInputPins().get(8), new Point(220, 70), new Point(220, 720));
257 new GUIWire(submodelModifiable, demuxA.getOutputPins().get(3), andorA11.getInputPins().get(8), new Point(215, 80), new Point(215, 870));
258 new GUIWire(submodelModifiable, cpB00 , andB00 .getInputPins().get(4), new Point(130, 370));
259 new GUIWire(submodelModifiable, cpB01 , andorB01.getInputPins().get(8), new Point(125, 520));
260 new GUIWire(submodelModifiable, cpB10 , andorB10.getInputPins().get(8), new Point(120, 670));
261 new GUIWire(submodelModifiable, cpB11 , andorB11.getInputPins().get(8), new Point(115, 820));
262 new GUIWire(submodelModifiable, cpQ100, andA00 .getInputPins().get(0), new Point(150, 380));
263 new GUIWire(submodelModifiable, cpQ200, andA00 .getInputPins().get(1), new Point(145, 390));
264 new GUIWire(submodelModifiable, cpQ300, andA00 .getInputPins().get(2), new Point(140, 400));
265 new GUIWire(submodelModifiable, cpQ400, andA00 .getInputPins().get(3), new Point(135, 410));
266 new GUIWire(submodelModifiable, cpQ101, andorA01.getInputPins().get(4), new Point(150, 530));
267 new GUIWire(submodelModifiable, cpQ201, andorA01.getInputPins().get(5), new Point(145, 540));
268 new GUIWire(submodelModifiable, cpQ301, andorA01.getInputPins().get(6), new Point(140, 550));
269 new GUIWire(submodelModifiable, cpQ401, andorA01.getInputPins().get(7), new Point(135, 560));
270 new GUIWire(submodelModifiable, cpQ110, andorA10.getInputPins().get(4), new Point(150, 680));
271 new GUIWire(submodelModifiable, cpQ210, andorA10.getInputPins().get(5), new Point(145, 690));
272 new GUIWire(submodelModifiable, cpQ310, andorA10.getInputPins().get(6), new Point(140, 700));
273 new GUIWire(submodelModifiable, cpQ410, andorA10.getInputPins().get(7), new Point(135, 710));
274 new GUIWire(submodelModifiable, cpQ111, andorA11.getInputPins().get(4), new Point(150, 830));
275 new GUIWire(submodelModifiable, cpQ211, andorA11.getInputPins().get(5), new Point(145, 840));
276 new GUIWire(submodelModifiable, cpQ311, andorA11.getInputPins().get(6), new Point(140, 850));
277 new GUIWire(submodelModifiable, cpQ411, andorA11.getInputPins().get(7), new Point(135, 860));
278 new GUIWire(submodelModifiable, cpQ100, andB00 .getInputPins().get(0), new Point[0]);
279 new GUIWire(submodelModifiable, cpQ200, andB00 .getInputPins().get(1), new Point[0]);
280 new GUIWire(submodelModifiable, cpQ300, andB00 .getInputPins().get(2), new Point[0]);
281 new GUIWire(submodelModifiable, cpQ400, andB00 .getInputPins().get(3), new Point[0]);
282 new GUIWire(submodelModifiable, cpQ101, andorB01.getInputPins().get(4), new Point[0]);
283 new GUIWire(submodelModifiable, cpQ201, andorB01.getInputPins().get(5), new Point[0]);
284 new GUIWire(submodelModifiable, cpQ301, andorB01.getInputPins().get(6), new Point[0]);
285 new GUIWire(submodelModifiable, cpQ401, andorB01.getInputPins().get(7), new Point[0]);
286 new GUIWire(submodelModifiable, cpQ110, andorB10.getInputPins().get(4), new Point[0]);
287 new GUIWire(submodelModifiable, cpQ210, andorB10.getInputPins().get(5), new Point[0]);
288 new GUIWire(submodelModifiable, cpQ310, andorB10.getInputPins().get(6), new Point[0]);
289 new GUIWire(submodelModifiable, cpQ410, andorB10.getInputPins().get(7), new Point[0]);
290 new GUIWire(submodelModifiable, cpQ111, andorB11.getInputPins().get(4), new Point[0]);
291 new GUIWire(submodelModifiable, cpQ211, andorB11.getInputPins().get(5), new Point[0]);
292 new GUIWire(submodelModifiable, cpQ311, andorB11.getInputPins().get(6), new Point[0]);
293 new GUIWire(submodelModifiable, cpQ411, andorB11.getInputPins().get(7), new Point[0]);
294 new GUIWire(submodelModifiable, andA00 .getOutputPins().get(0), andorA01.getInputPins().get(0), new Point(305, 380), new Point(305, 445), new Point(245, 445), new Point(245, 490));
295 new GUIWire(submodelModifiable, andA00 .getOutputPins().get(1), andorA01.getInputPins().get(1), new Point(300, 390), new Point(300, 440), new Point(240, 440), new Point(240, 500));
296 new GUIWire(submodelModifiable, andA00 .getOutputPins().get(2), andorA01.getInputPins().get(2), new Point(295, 400), new Point(295, 435), new Point(235, 435), new Point(235, 510));
297 new GUIWire(submodelModifiable, andA00 .getOutputPins().get(3), andorA01.getInputPins().get(3), new Point(290, 410), new Point(290, 430), new Point(230, 430), new Point(230, 520));
298 new GUIWire(submodelModifiable, andorA01.getOutputPins().get(0), andorA10.getInputPins().get(0), new Point(305, 490), new Point(305, 595), new Point(245, 595), new Point(245, 640));
299 new GUIWire(submodelModifiable, andorA01.getOutputPins().get(1), andorA10.getInputPins().get(1), new Point(300, 500), new Point(300, 590), new Point(240, 590), new Point(240, 650));
300 new GUIWire(submodelModifiable, andorA01.getOutputPins().get(2), andorA10.getInputPins().get(2), new Point(295, 510), new Point(295, 585), new Point(235, 585), new Point(235, 660));
301 new GUIWire(submodelModifiable, andorA01.getOutputPins().get(3), andorA10.getInputPins().get(3), new Point(290, 520), new Point(290, 580), new Point(230, 580), new Point(230, 670));
302 new GUIWire(submodelModifiable, andorA10.getOutputPins().get(0), andorA11.getInputPins().get(0), new Point(305, 640), new Point(305, 745), new Point(245, 745), new Point(245, 790));
303 new GUIWire(submodelModifiable, andorA10.getOutputPins().get(1), andorA11.getInputPins().get(1), new Point(300, 650), new Point(300, 740), new Point(240, 740), new Point(240, 800));
304 new GUIWire(submodelModifiable, andorA10.getOutputPins().get(2), andorA11.getInputPins().get(2), new Point(295, 660), new Point(295, 735), new Point(235, 735), new Point(235, 810));
305 new GUIWire(submodelModifiable, andorA10.getOutputPins().get(3), andorA11.getInputPins().get(3), new Point(290, 670), new Point(290, 730), new Point(230, 730), new Point(230, 820));
306 new GUIWire(submodelModifiable, andorA11.getOutputPins().get(0), QA1 , new Point(310, 790), new Point(310, 50));
307 new GUIWire(submodelModifiable, andorA11.getOutputPins().get(1), QA2 , new Point(315, 800), new Point(315, 150));
308 new GUIWire(submodelModifiable, andorA11.getOutputPins().get(2), QA3 , new Point(320, 810), new Point(320, 250));
309 new GUIWire(submodelModifiable, andorA11.getOutputPins().get(3), QA4 , new Point(325, 820), new Point(325, 350));
310 new GUIWire(submodelModifiable, andB00 .getOutputPins().get(0), andorB01.getInputPins().get(0), new Point(210, 330), new Point(210, 430), new Point(150, 430), new Point(150, 440));
311 new GUIWire(submodelModifiable, andB00 .getOutputPins().get(1), andorB01.getInputPins().get(1), new Point(205, 340), new Point(205, 425), new Point(145, 425), new Point(145, 450));
312 new GUIWire(submodelModifiable, andB00 .getOutputPins().get(2), andorB01.getInputPins().get(2), new Point(200, 350), new Point(200, 420), new Point(140, 420), new Point(140, 460));
313 new GUIWire(submodelModifiable, andB00 .getOutputPins().get(3), andorB01.getInputPins().get(3), new Point(195, 360), new Point(195, 415), new Point(135, 415), new Point(135, 470));
314 new GUIWire(submodelModifiable, andorB01.getOutputPins().get(0), andorB10.getInputPins().get(0), new Point(210, 440), new Point(210, 580), new Point(150, 580), new Point(150, 590));
315 new GUIWire(submodelModifiable, andorB01.getOutputPins().get(1), andorB10.getInputPins().get(1), new Point(205, 450), new Point(205, 575), new Point(145, 575), new Point(145, 600));
316 new GUIWire(submodelModifiable, andorB01.getOutputPins().get(2), andorB10.getInputPins().get(2), new Point(200, 460), new Point(200, 570), new Point(140, 570), new Point(140, 610));
317 new GUIWire(submodelModifiable, andorB01.getOutputPins().get(3), andorB10.getInputPins().get(3), new Point(195, 470), new Point(195, 565), new Point(135, 565), new Point(135, 620));
318 new GUIWire(submodelModifiable, andorB10.getOutputPins().get(0), andorB11.getInputPins().get(0), new Point(210, 590), new Point(210, 730), new Point(150, 730), new Point(150, 740));
319 new GUIWire(submodelModifiable, andorB10.getOutputPins().get(1), andorB11.getInputPins().get(1), new Point(205, 600), new Point(205, 725), new Point(145, 725), new Point(145, 750));
320 new GUIWire(submodelModifiable, andorB10.getOutputPins().get(2), andorB11.getInputPins().get(2), new Point(200, 610), new Point(200, 720), new Point(140, 720), new Point(140, 760));
321 new GUIWire(submodelModifiable, andorB10.getOutputPins().get(3), andorB11.getInputPins().get(3), new Point(195, 620), new Point(195, 715), new Point(135, 715), new Point(135, 770));
322 new GUIWire(submodelModifiable, andorB11.getOutputPins().get(0), QB1 , new Point(210, 740), new Point(210, 880), new Point(330, 880), new Point(330, 450));
323 new GUIWire(submodelModifiable, andorB11.getOutputPins().get(1), QB2 , new Point(205, 750), new Point(205, 885), new Point(335, 885), new Point(335, 550));
324 new GUIWire(submodelModifiable, andorB11.getOutputPins().get(2), QB3 , new Point(200, 760), new Point(200, 890), new Point(340, 890), new Point(340, 650));
325 new GUIWire(submodelModifiable, andorB11.getOutputPins().get(3), QB4 , new Point(195, 770), new Point(195, 895), new Point(345, 895), new Point(345, 750));