poulpy/poulpy-schemes/src/tfhe/bdd_arithmetic/circuits/u32/sub_codegen.rs
poulpy-schemes/src/tfhe/bdd_arithmetic/circuits/u32/sub_codegen.rsRaw
1use crate::tfhe::bdd_arithmetic::{BitCircuit, BitCircuitInfo, Circuit, GetBitCircuitInfo, Node};
2pub(crate) enum AnyBitCircuit {
3 B0(BitCircuit<4>),
4 B1(BitCircuit<8>),
5 B2(BitCircuit<18>),
6 B3(BitCircuit<24>),
7 B4(BitCircuit<30>),
8 B5(BitCircuit<36>),
9 B6(BitCircuit<42>),
10 B7(BitCircuit<48>),
11 B8(BitCircuit<54>),
12 B9(BitCircuit<60>),
13 B10(BitCircuit<66>),
14 B11(BitCircuit<72>),
15 B12(BitCircuit<78>),
16 B13(BitCircuit<84>),
17 B14(BitCircuit<90>),
18 B15(BitCircuit<96>),
19 B16(BitCircuit<102>),
20 B17(BitCircuit<108>),
21 B18(BitCircuit<114>),
22 B19(BitCircuit<120>),
23 B20(BitCircuit<126>),
24 B21(BitCircuit<132>),
25 B22(BitCircuit<138>),
26 B23(BitCircuit<144>),
27 B24(BitCircuit<150>),
28 B25(BitCircuit<156>),
29 B26(BitCircuit<162>),
30 B27(BitCircuit<168>),
31 B28(BitCircuit<174>),
32 B29(BitCircuit<180>),
33 B30(BitCircuit<186>),
34 B31(BitCircuit<192>),
35}
36impl BitCircuitInfo for AnyBitCircuit {
37 fn info(&self) -> (&[Node], usize) {
38 match self {
39 AnyBitCircuit::B0(bit_circuit) => (bit_circuit.nodes.as_ref(), bit_circuit.max_inter_state),
40 AnyBitCircuit::B1(bit_circuit) => (bit_circuit.nodes.as_ref(), bit_circuit.max_inter_state),
41 AnyBitCircuit::B2(bit_circuit) => (bit_circuit.nodes.as_ref(), bit_circuit.max_inter_state),
42 AnyBitCircuit::B3(bit_circuit) => (bit_circuit.nodes.as_ref(), bit_circuit.max_inter_state),
43 AnyBitCircuit::B4(bit_circuit) => (bit_circuit.nodes.as_ref(), bit_circuit.max_inter_state),
44 AnyBitCircuit::B5(bit_circuit) => (bit_circuit.nodes.as_ref(), bit_circuit.max_inter_state),
45 AnyBitCircuit::B6(bit_circuit) => (bit_circuit.nodes.as_ref(), bit_circuit.max_inter_state),
46 AnyBitCircuit::B7(bit_circuit) => (bit_circuit.nodes.as_ref(), bit_circuit.max_inter_state),
47 AnyBitCircuit::B8(bit_circuit) => (bit_circuit.nodes.as_ref(), bit_circuit.max_inter_state),
48 AnyBitCircuit::B9(bit_circuit) => (bit_circuit.nodes.as_ref(), bit_circuit.max_inter_state),
49 AnyBitCircuit::B10(bit_circuit) => (bit_circuit.nodes.as_ref(), bit_circuit.max_inter_state),
50 AnyBitCircuit::B11(bit_circuit) => (bit_circuit.nodes.as_ref(), bit_circuit.max_inter_state),
51 AnyBitCircuit::B12(bit_circuit) => (bit_circuit.nodes.as_ref(), bit_circuit.max_inter_state),
52 AnyBitCircuit::B13(bit_circuit) => (bit_circuit.nodes.as_ref(), bit_circuit.max_inter_state),
53 AnyBitCircuit::B14(bit_circuit) => (bit_circuit.nodes.as_ref(), bit_circuit.max_inter_state),
54 AnyBitCircuit::B15(bit_circuit) => (bit_circuit.nodes.as_ref(), bit_circuit.max_inter_state),
55 AnyBitCircuit::B16(bit_circuit) => (bit_circuit.nodes.as_ref(), bit_circuit.max_inter_state),
56 AnyBitCircuit::B17(bit_circuit) => (bit_circuit.nodes.as_ref(), bit_circuit.max_inter_state),
57 AnyBitCircuit::B18(bit_circuit) => (bit_circuit.nodes.as_ref(), bit_circuit.max_inter_state),
58 AnyBitCircuit::B19(bit_circuit) => (bit_circuit.nodes.as_ref(), bit_circuit.max_inter_state),
59 AnyBitCircuit::B20(bit_circuit) => (bit_circuit.nodes.as_ref(), bit_circuit.max_inter_state),
60 AnyBitCircuit::B21(bit_circuit) => (bit_circuit.nodes.as_ref(), bit_circuit.max_inter_state),
61 AnyBitCircuit::B22(bit_circuit) => (bit_circuit.nodes.as_ref(), bit_circuit.max_inter_state),
62 AnyBitCircuit::B23(bit_circuit) => (bit_circuit.nodes.as_ref(), bit_circuit.max_inter_state),
63 AnyBitCircuit::B24(bit_circuit) => (bit_circuit.nodes.as_ref(), bit_circuit.max_inter_state),
64 AnyBitCircuit::B25(bit_circuit) => (bit_circuit.nodes.as_ref(), bit_circuit.max_inter_state),
65 AnyBitCircuit::B26(bit_circuit) => (bit_circuit.nodes.as_ref(), bit_circuit.max_inter_state),
66 AnyBitCircuit::B27(bit_circuit) => (bit_circuit.nodes.as_ref(), bit_circuit.max_inter_state),
67 AnyBitCircuit::B28(bit_circuit) => (bit_circuit.nodes.as_ref(), bit_circuit.max_inter_state),
68 AnyBitCircuit::B29(bit_circuit) => (bit_circuit.nodes.as_ref(), bit_circuit.max_inter_state),
69 AnyBitCircuit::B30(bit_circuit) => (bit_circuit.nodes.as_ref(), bit_circuit.max_inter_state),
70 AnyBitCircuit::B31(bit_circuit) => (bit_circuit.nodes.as_ref(), bit_circuit.max_inter_state),
71 }
72 }
73}
74
75impl GetBitCircuitInfo<u32> for Circuit<AnyBitCircuit, 32usize> {
76 fn input_size(&self) -> usize {
77 2 * u32::BITS as usize
78 }
79 fn output_size(&self) -> usize {
80 u32::BITS as usize
81 }
82 fn get_circuit(&self, bit: usize) -> (&[Node], usize) {
83 self.0[bit].info()
84 }
85}
86
87pub(crate) static OUTPUT_CIRCUITS: Circuit<AnyBitCircuit, 32usize> = Circuit([
88 AnyBitCircuit::B0(BitCircuit::new(
89 [
90 Node::Cmux(32, 1, 0),
91 Node::Cmux(32, 0, 1),
92 Node::Cmux(0, 1, 0),
93 Node::None,
94 ],
95 2,
96 )),
97 AnyBitCircuit::B1(BitCircuit::new(
98 [
99 Node::Cmux(33, 0, 1),
100 Node::Cmux(33, 1, 0),
101 Node::Cmux(1, 0, 1),
102 Node::Cmux(1, 1, 0),
103 Node::Copy,
104 Node::Cmux(32, 1, 0),
105 Node::Cmux(0, 0, 1),
106 Node::None,
107 ],
108 2,
109 )),
110 AnyBitCircuit::B2(BitCircuit::new(
111 [
112 Node::None,
113 Node::Cmux(34, 0, 1),
114 Node::Cmux(34, 1, 0),
115 Node::None,
116 Node::Cmux(2, 1, 2),
117 Node::Cmux(2, 2, 1),
118 Node::Cmux(33, 2, 1),
119 Node::Copy,
120 Node::Copy,
121 Node::Cmux(1, 0, 2),
122 Node::None,
123 Node::Cmux(1, 1, 0),
124 Node::None,
125 Node::Cmux(32, 0, 2),
126 Node::Copy,
127 Node::Cmux(0, 2, 1),
128 Node::None,
129 Node::None,
130 ],
131 3,
132 )),
133 AnyBitCircuit::B3(BitCircuit::new(
134 [
135 Node::Cmux(35, 1, 0),
136 Node::Cmux(35, 0, 1),
137 Node::None,
138 Node::Cmux(3, 1, 0),
139 Node::Cmux(3, 0, 1),
140 Node::None,
141 Node::Copy,
142 Node::Copy,
143 Node::Cmux(34, 1, 0),
144 Node::Cmux(2, 2, 1),
145 Node::Cmux(2, 0, 2),
146 Node::None,
147 Node::Copy,
148 Node::Copy,
149 Node::Cmux(33, 0, 1),
150 Node::Cmux(1, 1, 2),
151 Node::None,
152 Node::Cmux(1, 2, 0),
153 Node::Copy,
154 Node::None,
155 Node::Cmux(32, 2, 0),
156 Node::Cmux(0, 0, 2),
157 Node::None,
158 Node::None,
159 ],
160 3,
161 )),
162 AnyBitCircuit::B4(BitCircuit::new(
163 [
164 Node::None,
165 Node::Cmux(36, 0, 1),
166 Node::Cmux(36, 1, 0),
167 Node::None,
168 Node::Cmux(4, 2, 1),
169 Node::Cmux(4, 1, 2),
170 Node::Cmux(35, 1, 2),
171 Node::Copy,
172 Node::Copy,
173 Node::None,
174 Node::Cmux(3, 2, 0),
175 Node::Cmux(3, 0, 1),
176 Node::Cmux(34, 2, 1),
177 Node::Copy,
178 Node::Copy,
179 Node::None,
180 Node::Cmux(2, 1, 0),
181 Node::Cmux(2, 0, 2),
182 Node::Cmux(33, 2, 1),
183 Node::Copy,
184 Node::Copy,
185 Node::Cmux(1, 1, 0),
186 Node::Cmux(1, 0, 2),
187 Node::None,
188 Node::Copy,
189 Node::None,
190 Node::Cmux(32, 1, 0),
191 Node::Cmux(0, 0, 2),
192 Node::None,
193 Node::None,
194 ],
195 3,
196 )),
197 AnyBitCircuit::B5(BitCircuit::new(
198 [
199 Node::None,
200 Node::Cmux(37, 1, 0),
201 Node::Cmux(37, 0, 1),
202 Node::Cmux(5, 2, 1),
203 Node::None,
204 Node::Cmux(5, 1, 2),
205 Node::Copy,
206 Node::Cmux(36, 2, 0),
207 Node::Copy,
208 Node::None,
209 Node::Cmux(4, 1, 2),
210 Node::Cmux(4, 0, 1),
211 Node::Cmux(35, 1, 2),
212 Node::Copy,
213 Node::Copy,
214 Node::Cmux(3, 2, 0),
215 Node::Cmux(3, 0, 1),
216 Node::None,
217 Node::Copy,
218 Node::Copy,
219 Node::Cmux(34, 1, 0),
220 Node::Cmux(2, 0, 2),
221 Node::Cmux(2, 2, 1),
222 Node::None,
223 Node::Copy,
224 Node::Copy,
225 Node::Cmux(33, 1, 0),
226 Node::None,
227 Node::Cmux(1, 0, 2),
228 Node::Cmux(1, 2, 1),
229 Node::Cmux(32, 2, 1),
230 Node::Copy,
231 Node::None,
232 Node::Cmux(0, 1, 0),
233 Node::None,
234 Node::None,
235 ],
236 3,
237 )),
238 AnyBitCircuit::B6(BitCircuit::new(
239 [
240 Node::Cmux(38, 0, 1),
241 Node::Cmux(38, 1, 0),
242 Node::None,
243 Node::Cmux(6, 1, 0),
244 Node::None,
245 Node::Cmux(6, 0, 1),
246 Node::Copy,
247 Node::Cmux(37, 0, 2),
248 Node::Copy,
249 Node::None,
250 Node::Cmux(5, 1, 0),
251 Node::Cmux(5, 2, 1),
252 Node::Cmux(36, 1, 2),
253 Node::Copy,
254 Node::Copy,
255 Node::Cmux(4, 0, 1),
256 Node::Cmux(4, 2, 0),
257 Node::None,
258 Node::Copy,
259 Node::Copy,
260 Node::Cmux(35, 0, 1),
261 Node::None,
262 Node::Cmux(3, 2, 0),
263 Node::Cmux(3, 1, 2),
264 Node::Cmux(34, 1, 2),
265 Node::Copy,
266 Node::Copy,
267 Node::Cmux(2, 2, 0),
268 Node::None,
269 Node::Cmux(2, 0, 1),
270 Node::Copy,
271 Node::Cmux(33, 2, 0),
272 Node::Copy,
273 Node::Cmux(1, 0, 1),
274 Node::None,
275 Node::Cmux(1, 1, 2),
276 Node::Copy,
277 Node::Cmux(32, 2, 0),
278 Node::None,
279 Node::Cmux(0, 0, 1),
280 Node::None,
281 Node::None,
282 ],
283 3,
284 )),
285 AnyBitCircuit::B7(BitCircuit::new(
286 [
287 Node::Cmux(39, 1, 0),
288 Node::Cmux(39, 0, 1),
289 Node::None,
290 Node::Cmux(7, 1, 0),
291 Node::None,
292 Node::Cmux(7, 0, 1),
293 Node::Copy,
294 Node::Cmux(38, 2, 0),
295 Node::Copy,
296 Node::None,
297 Node::Cmux(6, 0, 1),
298 Node::Cmux(6, 1, 2),
299 Node::Cmux(37, 2, 1),
300 Node::Copy,
301 Node::Copy,
302 Node::Cmux(5, 1, 0),
303 Node::None,
304 Node::Cmux(5, 0, 2),
305 Node::Copy,
306 Node::Cmux(36, 2, 0),
307 Node::Copy,
308 Node::Cmux(4, 0, 1),
309 Node::Cmux(4, 1, 2),
310 Node::None,
311 Node::Copy,
312 Node::Copy,
313 Node::Cmux(35, 1, 0),
314 Node::None,
315 Node::Cmux(3, 2, 1),
316 Node::Cmux(3, 0, 2),
317 Node::Cmux(34, 1, 2),
318 Node::Copy,
319 Node::Copy,
320 Node::Cmux(2, 2, 0),
321 Node::Cmux(2, 0, 1),
322 Node::None,
323 Node::Copy,
324 Node::Copy,
325 Node::Cmux(33, 1, 0),
326 Node::None,
327 Node::Cmux(1, 0, 2),
328 Node::Cmux(1, 2, 1),
329 Node::Cmux(32, 2, 1),
330 Node::Copy,
331 Node::None,
332 Node::Cmux(0, 1, 0),
333 Node::None,
334 Node::None,
335 ],
336 3,
337 )),
338 AnyBitCircuit::B8(BitCircuit::new(
339 [
340 Node::Cmux(40, 0, 1),
341 Node::Cmux(40, 1, 0),
342 Node::None,
343 Node::Cmux(8, 0, 1),
344 Node::None,
345 Node::Cmux(8, 1, 0),
346 Node::Copy,
347 Node::Cmux(39, 2, 0),
348 Node::Copy,
349 Node::None,
350 Node::Cmux(7, 0, 1),
351 Node::Cmux(7, 1, 2),
352 Node::Cmux(38, 2, 1),
353 Node::Copy,
354 Node::Copy,
355 Node::Cmux(6, 1, 0),
356 Node::Cmux(6, 0, 2),
357 Node::None,
358 Node::Copy,
359 Node::Copy,
360 Node::Cmux(37, 1, 0),
361 Node::Cmux(5, 0, 2),
362 Node::Cmux(5, 2, 1),
363 Node::None,
364 Node::Copy,
365 Node::Copy,
366 Node::Cmux(36, 1, 0),
367 Node::Cmux(4, 2, 1),
368 Node::Cmux(4, 0, 2),
369 Node::None,
370 Node::Copy,
371 Node::Copy,
372 Node::Cmux(35, 0, 1),
373 Node::Cmux(3, 1, 2),
374 Node::Cmux(3, 2, 0),
375 Node::None,
376 Node::Copy,
377 Node::Copy,
378 Node::Cmux(34, 1, 0),
379 Node::Cmux(2, 0, 2),
380 Node::None,
381 Node::Cmux(2, 2, 1),
382 Node::Copy,
383 Node::Cmux(33, 2, 0),
384 Node::Copy,
385 Node::Cmux(1, 1, 2),
386 Node::Cmux(1, 0, 1),
387 Node::None,
388 Node::None,
389 Node::Copy,
390 Node::Cmux(32, 0, 1),
391 Node::Cmux(0, 1, 2),
392 Node::None,
393 Node::None,
394 ],
395 3,
396 )),
397 AnyBitCircuit::B9(BitCircuit::new(
398 [
399 Node::None,
400 Node::Cmux(41, 0, 1),
401 Node::Cmux(41, 1, 0),
402 Node::None,
403 Node::Cmux(9, 2, 1),
404 Node::Cmux(9, 1, 2),
405 Node::Cmux(40, 1, 2),
406 Node::Copy,
407 Node::Copy,
408 Node::Cmux(8, 0, 1),
409 Node::Cmux(8, 2, 0),
410 Node::None,
411 Node::Copy,
412 Node::Copy,
413 Node::Cmux(39, 0, 1),
414 Node::Cmux(7, 1, 2),
415 Node::None,
416 Node::Cmux(7, 2, 0),
417 Node::Copy,
418 Node::Cmux(38, 2, 0),
419 Node::Copy,
420 Node::Cmux(6, 1, 2),
421 Node::Cmux(6, 0, 1),
422 Node::None,
423 Node::Copy,
424 Node::Copy,
425 Node::Cmux(37, 0, 1),
426 Node::Cmux(5, 2, 0),
427 Node::Cmux(5, 1, 2),
428 Node::None,
429 Node::Copy,
430 Node::Copy,
431 Node::Cmux(36, 0, 1),
432 Node::None,
433 Node::Cmux(4, 2, 0),
434 Node::Cmux(4, 1, 2),
435 Node::Cmux(35, 1, 2),
436 Node::Copy,
437 Node::Copy,
438 Node::Cmux(3, 2, 0),
439 Node::Cmux(3, 0, 1),
440 Node::None,
441 Node::Copy,
442 Node::Copy,
443 Node::Cmux(34, 1, 0),
444 Node::Cmux(2, 0, 2),
445 Node::None,
446 Node::Cmux(2, 2, 1),
447 Node::Copy,
448 Node::Cmux(33, 2, 0),
449 Node::Copy,
450 Node::Cmux(1, 1, 2),
451 Node::None,
452 Node::Cmux(1, 0, 1),
453 Node::None,
454 Node::Cmux(32, 0, 2),
455 Node::Copy,
456 Node::Cmux(0, 2, 1),
457 Node::None,
458 Node::None,
459 ],
460 3,
461 )),
462 AnyBitCircuit::B10(BitCircuit::new(
463 [
464 Node::Cmux(42, 1, 0),
465 Node::None,
466 Node::Cmux(42, 0, 1),
467 Node::None,
468 Node::Cmux(10, 2, 0),
469 Node::Cmux(10, 0, 2),
470 Node::Cmux(41, 2, 1),
471 Node::Copy,
472 Node::Copy,
473 Node::Cmux(9, 0, 2),
474 Node::Cmux(9, 1, 0),
475 Node::None,
476 Node::Copy,
477 Node::Copy,
478 Node::Cmux(40, 0, 1),
479 Node::Cmux(8, 2, 0),
480 Node::None,
481 Node::Cmux(8, 1, 2),
482 Node::Copy,
483 Node::Cmux(39, 0, 2),
484 Node::Copy,
485 Node::None,
486 Node::Cmux(7, 1, 0),
487 Node::Cmux(7, 2, 1),
488 Node::Cmux(38, 1, 2),
489 Node::Copy,
490 Node::Copy,
491 Node::Cmux(6, 0, 1),
492 Node::Cmux(6, 2, 0),
493 Node::None,
494 Node::Copy,
495 Node::Copy,
496 Node::Cmux(37, 0, 1),
497 Node::None,
498 Node::Cmux(5, 1, 2),
499 Node::Cmux(5, 2, 0),
500 Node::Cmux(36, 2, 1),
501 Node::Copy,
502 Node::Copy,
503 Node::None,
504 Node::Cmux(4, 0, 2),
505 Node::Cmux(4, 1, 0),
506 Node::Cmux(35, 1, 2),
507 Node::Copy,
508 Node::Copy,
509 Node::Cmux(3, 2, 0),
510 Node::Cmux(3, 0, 1),
511 Node::None,
512 Node::Copy,
513 Node::Copy,
514 Node::Cmux(34, 1, 0),
515 Node::Cmux(2, 0, 2),
516 Node::None,
517 Node::Cmux(2, 2, 1),
518 Node::Copy,
519 Node::Cmux(33, 2, 0),
520 Node::Copy,
521 Node::None,
522 Node::Cmux(1, 1, 2),
523 Node::Cmux(1, 0, 1),
524 Node::Cmux(32, 1, 2),
525 Node::None,
526 Node::Copy,
527 Node::Cmux(0, 2, 0),
528 Node::None,
529 Node::None,
530 ],
531 3,
532 )),
533 AnyBitCircuit::B11(BitCircuit::new(
534 [
535 Node::None,
536 Node::Cmux(43, 0, 1),
537 Node::Cmux(43, 1, 0),
538 Node::Cmux(11, 1, 2),
539 Node::Cmux(11, 2, 1),
540 Node::None,
541 Node::Copy,
542 Node::Copy,
543 Node::Cmux(42, 1, 0),
544 Node::None,
545 Node::Cmux(10, 2, 1),
546 Node::Cmux(10, 0, 2),
547 Node::Cmux(41, 1, 2),
548 Node::Copy,
549 Node::Copy,
550 Node::Cmux(9, 0, 1),
551 Node::Cmux(9, 2, 0),
552 Node::None,
553 Node::Copy,
554 Node::Copy,
555 Node::Cmux(40, 0, 1),
556 Node::None,
557 Node::Cmux(8, 1, 2),
558 Node::Cmux(8, 2, 0),
559 Node::Cmux(39, 2, 1),
560 Node::Copy,
561 Node::Copy,
562 Node::Cmux(7, 1, 0),
563 Node::Cmux(7, 0, 2),
564 Node::None,
565 Node::Copy,
566 Node::Copy,
567 Node::Cmux(38, 1, 0),
568 Node::Cmux(6, 0, 2),
569 Node::Cmux(6, 2, 1),
570 Node::None,
571 Node::Copy,
572 Node::Copy,
573 Node::Cmux(37, 1, 0),
574 Node::None,
575 Node::Cmux(5, 0, 2),
576 Node::Cmux(5, 2, 1),
577 Node::Cmux(36, 2, 1),
578 Node::Copy,
579 Node::Copy,
580 Node::Cmux(4, 1, 0),
581 Node::None,
582 Node::Cmux(4, 0, 2),
583 Node::Copy,
584 Node::Cmux(35, 2, 0),
585 Node::Copy,
586 Node::Cmux(3, 0, 1),
587 Node::Cmux(3, 1, 2),
588 Node::None,
589 Node::Copy,
590 Node::Copy,
591 Node::Cmux(34, 1, 0),
592 Node::None,
593 Node::Cmux(2, 0, 2),
594 Node::Cmux(2, 2, 1),
595 Node::Cmux(33, 2, 1),
596 Node::Copy,
597 Node::Copy,
598 Node::Cmux(1, 0, 2),
599 Node::Cmux(1, 1, 0),
600 Node::None,
601 Node::None,
602 Node::Copy,
603 Node::Cmux(32, 0, 1),
604 Node::Cmux(0, 1, 2),
605 Node::None,
606 Node::None,
607 ],
608 3,
609 )),
610 AnyBitCircuit::B12(BitCircuit::new(
611 [
612 Node::Cmux(44, 0, 1),
613 Node::Cmux(44, 1, 0),
614 Node::None,
615 Node::Cmux(12, 0, 1),
616 Node::Cmux(12, 1, 0),
617 Node::None,
618 Node::Copy,
619 Node::Copy,
620 Node::Cmux(43, 1, 0),
621 Node::Cmux(11, 0, 2),
622 Node::None,
623 Node::Cmux(11, 2, 1),
624 Node::Copy,
625 Node::Cmux(42, 2, 0),
626 Node::Copy,
627 Node::Cmux(10, 1, 2),
628 Node::Cmux(10, 0, 1),
629 Node::None,
630 Node::Copy,
631 Node::Copy,
632 Node::Cmux(41, 0, 1),
633 Node::None,
634 Node::Cmux(9, 2, 0),
635 Node::Cmux(9, 1, 2),
636 Node::Cmux(40, 1, 2),
637 Node::Copy,
638 Node::Copy,
639 Node::None,
640 Node::Cmux(8, 2, 0),
641 Node::Cmux(8, 0, 1),
642 Node::Cmux(39, 2, 1),
643 Node::Copy,
644 Node::Copy,
645 Node::Cmux(7, 1, 0),
646 Node::Cmux(7, 0, 2),
647 Node::None,
648 Node::Copy,
649 Node::Copy,
650 Node::Cmux(38, 1, 0),
651 Node::Cmux(6, 2, 1),
652 Node::None,
653 Node::Cmux(6, 0, 2),
654 Node::Copy,
655 Node::Cmux(37, 0, 2),
656 Node::Copy,
657 Node::Cmux(5, 2, 1),
658 Node::Cmux(5, 1, 0),
659 Node::None,
660 Node::Copy,
661 Node::Copy,
662 Node::Cmux(36, 1, 0),
663 Node::None,
664 Node::Cmux(4, 2, 1),
665 Node::Cmux(4, 0, 2),
666 Node::Cmux(35, 1, 2),
667 Node::Copy,
668 Node::Copy,
669 Node::None,
670 Node::Cmux(3, 0, 1),
671 Node::Cmux(3, 2, 0),
672 Node::Cmux(34, 1, 2),
673 Node::Copy,
674 Node::Copy,
675 Node::Cmux(2, 2, 0),
676 Node::Cmux(2, 0, 1),
677 Node::None,
678 Node::Copy,
679 Node::Copy,
680 Node::Cmux(33, 1, 0),
681 Node::None,
682 Node::Cmux(1, 0, 2),
683 Node::Cmux(1, 2, 1),
684 Node::Cmux(32, 2, 1),
685 Node::Copy,
686 Node::None,
687 Node::Cmux(0, 1, 0),
688 Node::None,
689 Node::None,
690 ],
691 3,
692 )),
693 AnyBitCircuit::B13(BitCircuit::new(
694 [
695 Node::None,
696 Node::Cmux(45, 0, 1),
697 Node::Cmux(45, 1, 0),
698 Node::None,
699 Node::Cmux(13, 1, 2),
700 Node::Cmux(13, 2, 1),
701 Node::Cmux(44, 2, 1),
702 Node::Copy,
703 Node::Copy,
704 Node::Cmux(12, 0, 2),
705 Node::Cmux(12, 1, 0),
706 Node::None,
707 Node::Copy,
708 Node::Copy,
709 Node::Cmux(43, 0, 1),
710 Node::None,
711 Node::Cmux(11, 1, 2),
712 Node::Cmux(11, 2, 0),
713 Node::Cmux(42, 2, 1),
714 Node::Copy,
715 Node::Copy,
716 Node::Cmux(10, 0, 2),
717 Node::Cmux(10, 1, 0),
718 Node::None,
719 Node::Copy,
720 Node::Copy,
721 Node::Cmux(41, 0, 1),
722 Node::Cmux(9, 1, 2),
723 Node::None,
724 Node::Cmux(9, 2, 0),
725 Node::Copy,
726 Node::Cmux(40, 2, 0),
727 Node::Copy,
728 Node::None,
729 Node::Cmux(8, 1, 2),
730 Node::Cmux(8, 0, 1),
731 Node::Cmux(39, 1, 2),
732 Node::Copy,
733 Node::Copy,
734 Node::Cmux(7, 2, 0),
735 Node::None,
736 Node::Cmux(7, 0, 1),
737 Node::Copy,
738 Node::Cmux(38, 2, 0),
739 Node::Copy,
740 Node::Cmux(6, 1, 2),
741 Node::None,
742 Node::Cmux(6, 0, 1),
743 Node::Copy,
744 Node::Cmux(37, 0, 2),
745 Node::Copy,
746 Node::Cmux(5, 1, 0),
747 Node::None,
748 Node::Cmux(5, 2, 1),
749 Node::Copy,
750 Node::Cmux(36, 0, 2),
751 Node::Copy,
752 Node::Cmux(4, 1, 0),
753 Node::None,
754 Node::Cmux(4, 2, 1),
755 Node::Copy,
756 Node::Cmux(35, 0, 2),
757 Node::Copy,
758 Node::None,
759 Node::Cmux(3, 2, 1),
760 Node::Cmux(3, 1, 0),
761 Node::Cmux(34, 2, 1),
762 Node::Copy,
763 Node::Copy,
764 Node::None,
765 Node::Cmux(2, 0, 2),
766 Node::Cmux(2, 1, 0),
767 Node::Cmux(33, 1, 2),
768 Node::Copy,
769 Node::Copy,
770 Node::Cmux(1, 0, 1),
771 Node::None,
772 Node::Cmux(1, 2, 0),
773 Node::Cmux(32, 0, 2),
774 Node::None,
775 Node::Copy,
776 Node::Cmux(0, 2, 0),
777 Node::None,
778 Node::None,
779 ],
780 3,
781 )),
782 AnyBitCircuit::B14(BitCircuit::new(
783 [
784 Node::None,
785 Node::Cmux(46, 1, 0),
786 Node::Cmux(46, 0, 1),
787 Node::Cmux(14, 1, 2),
788 Node::Cmux(14, 2, 1),
789 Node::None,
790 Node::Copy,
791 Node::Copy,
792 Node::Cmux(45, 0, 1),
793 Node::Cmux(13, 2, 0),
794 Node::None,
795 Node::Cmux(13, 1, 2),
796 Node::Copy,
797 Node::Cmux(44, 0, 2),
798 Node::Copy,
799 Node::Cmux(12, 1, 0),
800 Node::Cmux(12, 2, 1),
801 Node::None,
802 Node::Copy,
803 Node::Copy,
804 Node::Cmux(43, 0, 1),
805 Node::Cmux(11, 1, 2),
806 Node::Cmux(11, 2, 0),
807 Node::None,
808 Node::Copy,
809 Node::Copy,
810 Node::Cmux(42, 1, 0),
811 Node::Cmux(10, 2, 1),
812 Node::None,
813 Node::Cmux(10, 0, 2),
814 Node::Copy,
815 Node::Cmux(41, 0, 2),
816 Node::Copy,
817 Node::None,
818 Node::Cmux(9, 1, 0),
819 Node::Cmux(9, 2, 1),
820 Node::Cmux(40, 1, 2),
821 Node::Copy,
822 Node::Copy,
823 Node::None,
824 Node::Cmux(8, 2, 0),
825 Node::Cmux(8, 0, 1),
826 Node::Cmux(39, 2, 1),
827 Node::Copy,
828 Node::Copy,
829 Node::Cmux(7, 1, 0),
830 Node::None,
831 Node::Cmux(7, 0, 2),
832 Node::Copy,
833 Node::Cmux(38, 2, 0),
834 Node::Copy,
835 Node::Cmux(6, 0, 1),
836 Node::None,
837 Node::Cmux(6, 1, 2),
838 Node::Copy,
839 Node::Cmux(37, 2, 0),
840 Node::Copy,
841 Node::Cmux(5, 1, 2),
842 Node::Cmux(5, 0, 1),
843 Node::None,
844 Node::Copy,
845 Node::Copy,
846 Node::Cmux(36, 0, 1),
847 Node::Cmux(4, 1, 2),
848 Node::None,
849 Node::Cmux(4, 2, 0),
850 Node::Copy,
851 Node::Cmux(35, 2, 0),
852 Node::Copy,
853 Node::Cmux(3, 1, 2),
854 Node::Cmux(3, 0, 1),
855 Node::None,
856 Node::Copy,
857 Node::Copy,
858 Node::Cmux(34, 0, 1),
859 Node::None,
860 Node::Cmux(2, 2, 0),
861 Node::Cmux(2, 1, 2),
862 Node::Cmux(33, 1, 2),
863 Node::Copy,
864 Node::Copy,
865 Node::Cmux(1, 0, 1),
866 Node::Cmux(1, 2, 0),
867 Node::None,
868 Node::None,
869 Node::Copy,
870 Node::Cmux(32, 0, 1),
871 Node::Cmux(0, 1, 2),
872 Node::None,
873 Node::None,
874 ],
875 3,
876 )),
877 AnyBitCircuit::B15(BitCircuit::new(
878 [
879 Node::Cmux(47, 0, 1),
880 Node::Cmux(47, 1, 0),
881 Node::None,
882 Node::None,
883 Node::Cmux(15, 1, 0),
884 Node::Cmux(15, 0, 1),
885 Node::Cmux(46, 1, 2),
886 Node::Copy,
887 Node::Copy,
888 Node::Cmux(14, 0, 1),
889 Node::Cmux(14, 2, 0),
890 Node::None,
891 Node::Copy,
892 Node::Copy,
893 Node::Cmux(45, 0, 1),
894 Node::Cmux(13, 1, 2),
895 Node::None,
896 Node::Cmux(13, 2, 0),
897 Node::Copy,
898 Node::Cmux(44, 2, 0),
899 Node::Copy,
900 Node::Cmux(12, 0, 1),
901 Node::None,
902 Node::Cmux(12, 1, 2),
903 Node::Copy,
904 Node::Cmux(43, 2, 0),
905 Node::Copy,
906 Node::None,
907 Node::Cmux(11, 0, 1),
908 Node::Cmux(11, 1, 2),
909 Node::Cmux(42, 2, 1),
910 Node::Copy,
911 Node::Copy,
912 Node::Cmux(10, 1, 0),
913 Node::Cmux(10, 0, 2),
914 Node::None,
915 Node::Copy,
916 Node::Copy,
917 Node::Cmux(41, 1, 0),
918 Node::Cmux(9, 2, 1),
919 Node::None,
920 Node::Cmux(9, 0, 2),
921 Node::Copy,
922 Node::Cmux(40, 0, 2),
923 Node::Copy,
924 Node::Cmux(8, 1, 0),
925 Node::Cmux(8, 2, 1),
926 Node::None,
927 Node::Copy,
928 Node::Copy,
929 Node::Cmux(39, 0, 1),
930 Node::None,
931 Node::Cmux(7, 2, 0),
932 Node::Cmux(7, 1, 2),
933 Node::Cmux(38, 1, 2),
934 Node::Copy,
935 Node::Copy,
936 Node::None,
937 Node::Cmux(6, 2, 0),
938 Node::Cmux(6, 0, 1),
939 Node::Cmux(37, 2, 1),
940 Node::Copy,
941 Node::Copy,
942 Node::Cmux(5, 0, 2),
943 Node::Cmux(5, 1, 0),
944 Node::None,
945 Node::Copy,
946 Node::Copy,
947 Node::Cmux(36, 0, 1),
948 Node::Cmux(4, 2, 0),
949 Node::None,
950 Node::Cmux(4, 1, 2),
951 Node::Copy,
952 Node::Cmux(35, 0, 2),
953 Node::Copy,
954 Node::Cmux(3, 1, 0),
955 Node::None,
956 Node::Cmux(3, 2, 1),
957 Node::Copy,
958 Node::Cmux(34, 0, 2),
959 Node::Copy,
960 Node::None,
961 Node::Cmux(2, 2, 1),
962 Node::Cmux(2, 1, 0),
963 Node::Cmux(33, 2, 1),
964 Node::Copy,
965 Node::Copy,
966 Node::None,
967 Node::Cmux(1, 0, 2),
968 Node::Cmux(1, 1, 0),
969 Node::Cmux(32, 1, 2),
970 Node::None,
971 Node::Copy,
972 Node::Cmux(0, 2, 0),
973 Node::None,
974 Node::None,
975 ],
976 3,
977 )),
978 AnyBitCircuit::B16(BitCircuit::new(
979 [
980 Node::None,
981 Node::Cmux(48, 1, 0),
982 Node::Cmux(48, 0, 1),
983 Node::Cmux(16, 2, 1),
984 Node::Cmux(16, 1, 2),
985 Node::None,
986 Node::Copy,
987 Node::Copy,
988 Node::Cmux(47, 1, 0),
989 Node::Cmux(15, 0, 2),
990 Node::Cmux(15, 2, 1),
991 Node::None,
992 Node::Copy,
993 Node::Copy,
994 Node::Cmux(46, 1, 0),
995 Node::None,
996 Node::Cmux(14, 0, 2),
997 Node::Cmux(14, 2, 1),
998 Node::Cmux(45, 2, 1),
999 Node::Copy,
1000 Node::Copy,
1001 Node::Cmux(13, 0, 2),
1002 Node::None,
1003 Node::Cmux(13, 1, 0),
1004 Node::Copy,
1005 Node::Cmux(44, 0, 2),
1006 Node::Copy,
1007 Node::Cmux(12, 2, 1),
1008 Node::Cmux(12, 1, 0),
1009 Node::None,
1010 Node::Copy,
1011 Node::Copy,
1012 Node::Cmux(43, 1, 0),
1013 Node::Cmux(11, 0, 2),
1014 Node::Cmux(11, 2, 1),
1015 Node::None,
1016 Node::Copy,
1017 Node::Copy,
1018 Node::Cmux(42, 1, 0),
1019 Node::Cmux(10, 2, 1),
1020 Node::None,
1021 Node::Cmux(10, 0, 2),
1022 Node::Copy,
1023 Node::Cmux(41, 0, 2),
1024 Node::Copy,
1025 Node::Cmux(9, 2, 1),
1026 Node::Cmux(9, 1, 0),
1027 Node::None,
1028 Node::Copy,
1029 Node::Copy,
1030 Node::Cmux(40, 1, 0),
1031 Node::None,
1032 Node::Cmux(8, 2, 1),
1033 Node::Cmux(8, 0, 2),
1034 Node::Cmux(39, 1, 2),
1035 Node::Copy,
1036 Node::Copy,
1037 Node::Cmux(7, 0, 1),
1038 Node::Cmux(7, 2, 0),
1039 Node::None,
1040 Node::Copy,
1041 Node::Copy,
1042 Node::Cmux(38, 0, 1),
1043 Node::Cmux(6, 1, 2),
1044 Node::Cmux(6, 2, 0),
1045 Node::None,
1046 Node::Copy,
1047 Node::Copy,
1048 Node::Cmux(37, 1, 0),
1049 Node::Cmux(5, 2, 1),
1050 Node::None,
1051 Node::Cmux(5, 0, 2),
1052 Node::Copy,
1053 Node::Cmux(36, 0, 2),
1054 Node::Copy,
1055 Node::Cmux(4, 2, 1),
1056 Node::None,
1057 Node::Cmux(4, 1, 0),
1058 Node::Copy,
1059 Node::Cmux(35, 2, 0),
1060 Node::Copy,
1061 Node::None,
1062 Node::Cmux(3, 1, 2),
1063 Node::Cmux(3, 0, 1),
1064 Node::Cmux(34, 1, 2),
1065 Node::Copy,
1066 Node::Copy,
1067 Node::None,
1068 Node::Cmux(2, 2, 0),
1069 Node::Cmux(2, 0, 1),
1070 Node::Cmux(33, 2, 1),
1071 Node::Copy,
1072 Node::Copy,
1073 Node::Cmux(1, 1, 0),
1074 Node::Cmux(1, 0, 2),
1075 Node::None,
1076 Node::Copy,
1077 Node::Cmux(32, 1, 0),
1078 Node::None,
1079 Node::Cmux(0, 0, 1),
1080 Node::None,
1081 Node::None,
1082 ],
1083 3,
1084 )),
1085 AnyBitCircuit::B17(BitCircuit::new(
1086 [
1087 Node::Cmux(49, 1, 0),
1088 Node::Cmux(49, 0, 1),
1089 Node::None,
1090 Node::Cmux(17, 0, 1),
1091 Node::Cmux(17, 1, 0),
1092 Node::None,
1093 Node::Copy,
1094 Node::Copy,
1095 Node::Cmux(48, 0, 1),
1096 Node::None,
1097 Node::Cmux(16, 2, 0),
1098 Node::Cmux(16, 1, 2),
1099 Node::Cmux(47, 1, 2),
1100 Node::Copy,
1101 Node::Copy,
1102 Node::Cmux(15, 2, 0),
1103 Node::None,
1104 Node::Cmux(15, 0, 1),
1105 Node::Copy,
1106 Node::Cmux(46, 2, 0),
1107 Node::Copy,
1108 Node::Cmux(14, 0, 1),
1109 Node::None,
1110 Node::Cmux(14, 1, 2),
1111 Node::Copy,
1112 Node::Cmux(45, 2, 0),
1113 Node::Copy,
1114 Node::Cmux(13, 0, 1),
1115 Node::Cmux(13, 1, 2),
1116 Node::None,
1117 Node::Copy,
1118 Node::Copy,
1119 Node::Cmux(44, 1, 0),
1120 Node::Cmux(12, 2, 1),
1121 Node::None,
1122 Node::Cmux(12, 0, 2),
1123 Node::Copy,
1124 Node::Cmux(43, 0, 2),
1125 Node::Copy,
1126 Node::Cmux(11, 1, 0),
1127 Node::Cmux(11, 2, 1),
1128 Node::None,
1129 Node::Copy,
1130 Node::Copy,
1131 Node::Cmux(42, 0, 1),
1132 Node::Cmux(10, 2, 0),
1133 Node::None,
1134 Node::Cmux(10, 1, 2),
1135 Node::Copy,
1136 Node::Cmux(41, 0, 2),
1137 Node::Copy,
1138 Node::Cmux(9, 1, 0),
1139 Node::None,
1140 Node::Cmux(9, 2, 1),
1141 Node::Copy,
1142 Node::Cmux(40, 0, 2),
1143 Node::Copy,
1144 Node::Cmux(8, 1, 0),
1145 Node::Cmux(8, 2, 1),
1146 Node::None,
1147 Node::Copy,
1148 Node::Copy,
1149 Node::Cmux(39, 0, 1),
1150 Node::Cmux(7, 1, 2),
1151 Node::None,
1152 Node::Cmux(7, 2, 0),
1153 Node::Copy,
1154 Node::Cmux(38, 2, 0),
1155 Node::Copy,
1156 Node::Cmux(6, 1, 2),
1157 Node::None,
1158 Node::Cmux(6, 0, 1),
1159 Node::Copy,
1160 Node::Cmux(37, 0, 2),
1161 Node::Copy,
1162 Node::None,
1163 Node::Cmux(5, 2, 1),
1164 Node::Cmux(5, 1, 0),
1165 Node::Cmux(36, 2, 1),
1166 Node::Copy,
1167 Node::Copy,
1168 Node::Cmux(4, 1, 0),
1169 Node::Cmux(4, 0, 2),
1170 Node::None,
1171 Node::Copy,
1172 Node::Copy,
1173 Node::Cmux(35, 1, 0),
1174 Node::Cmux(3, 2, 1),
1175 Node::Cmux(3, 0, 2),
1176 Node::None,
1177 Node::Copy,
1178 Node::Copy,
1179 Node::Cmux(34, 0, 1),
1180 Node::Cmux(2, 2, 0),
1181 Node::Cmux(2, 1, 2),
1182 Node::None,
1183 Node::Copy,
1184 Node::Copy,
1185 Node::Cmux(33, 0, 1),
1186 Node::None,
1187 Node::Cmux(1, 2, 0),
1188 Node::Cmux(1, 1, 2),
1189 Node::None,
1190 Node::Cmux(32, 1, 2),
1191 Node::Copy,
1192 Node::Cmux(0, 2, 1),
1193 Node::None,
1194 Node::None,
1195 ],
1196 3,
1197 )),
1198 AnyBitCircuit::B18(BitCircuit::new(
1199 [
1200 Node::Cmux(50, 1, 0),
1201 Node::None,
1202 Node::Cmux(50, 0, 1),
1203 Node::Cmux(18, 2, 0),
1204 Node::None,
1205 Node::Cmux(18, 0, 2),
1206 Node::Copy,
1207 Node::Cmux(49, 2, 0),
1208 Node::Copy,
1209 Node::Cmux(17, 1, 2),
1210 Node::Cmux(17, 0, 1),
1211 Node::None,
1212 Node::Copy,
1213 Node::Copy,
1214 Node::Cmux(48, 0, 1),
1215 Node::None,
1216 Node::Cmux(16, 1, 2),
1217 Node::Cmux(16, 2, 0),
1218 Node::Cmux(47, 2, 1),
1219 Node::Copy,
1220 Node::Copy,
1221 Node::None,
1222 Node::Cmux(15, 0, 2),
1223 Node::Cmux(15, 1, 0),
1224 Node::Cmux(46, 1, 2),
1225 Node::Copy,
1226 Node::Copy,
1227 Node::Cmux(14, 0, 1),
1228 Node::None,
1229 Node::Cmux(14, 2, 0),
1230 Node::Copy,
1231 Node::Cmux(45, 0, 2),
1232 Node::Copy,
1233 Node::Cmux(13, 1, 0),
1234 Node::None,
1235 Node::Cmux(13, 2, 1),
1236 Node::Copy,
1237 Node::Cmux(44, 0, 2),
1238 Node::Copy,
1239 Node::None,
1240 Node::Cmux(12, 2, 1),
1241 Node::Cmux(12, 1, 0),
1242 Node::Cmux(43, 2, 1),
1243 Node::Copy,
1244 Node::Copy,
1245 Node::Cmux(11, 1, 0),
1246 Node::Cmux(11, 0, 2),
1247 Node::None,
1248 Node::Copy,
1249 Node::Copy,
1250 Node::Cmux(42, 1, 0),
1251 Node::Cmux(10, 2, 1),
1252 Node::None,
1253 Node::Cmux(10, 0, 2),
1254 Node::Copy,
1255 Node::Cmux(41, 0, 2),
1256 Node::Copy,
1257 Node::None,
1258 Node::Cmux(9, 2, 1),
1259 Node::Cmux(9, 1, 0),
1260 Node::Cmux(40, 2, 1),
1261 Node::Copy,
1262 Node::Copy,
1263 Node::Cmux(8, 0, 2),
1264 Node::Cmux(8, 1, 0),
1265 Node::None,
1266 Node::Copy,
1267 Node::Copy,
1268 Node::Cmux(39, 0, 1),
1269 Node::Cmux(7, 2, 0),
1270 Node::Cmux(7, 1, 2),
1271 Node::None,
1272 Node::Copy,
1273 Node::Copy,
1274 Node::Cmux(38, 0, 1),
1275 Node::Cmux(6, 2, 0),
1276 Node::None,
1277 Node::Cmux(6, 1, 2),
1278 Node::Copy,
1279 Node::Cmux(37, 0, 2),
1280 Node::Copy,
1281 Node::Cmux(5, 1, 0),
1282 Node::Cmux(5, 2, 1),
1283 Node::None,
1284 Node::Copy,
1285 Node::Copy,
1286 Node::Cmux(36, 0, 1),
1287 Node::None,
1288 Node::Cmux(4, 1, 2),
1289 Node::Cmux(4, 2, 0),
1290 Node::Cmux(35, 2, 1),
1291 Node::Copy,
1292 Node::Copy,
1293 Node::None,
1294 Node::Cmux(3, 1, 0),
1295 Node::Cmux(3, 0, 2),
1296 Node::Cmux(34, 2, 1),
1297 Node::Copy,
1298 Node::Copy,
1299 Node::Cmux(2, 0, 2),
1300 Node::None,
1301 Node::Cmux(2, 1, 0),
1302 Node::Copy,
1303 Node::Cmux(33, 0, 2),
1304 Node::Copy,
1305 Node::Cmux(1, 2, 1),
1306 Node::None,
1307 Node::Cmux(1, 1, 0),
1308 Node::Copy,
1309 Node::Cmux(32, 2, 0),
1310 Node::None,
1311 Node::Cmux(0, 0, 1),
1312 Node::None,
1313 Node::None,
1314 ],
1315 3,
1316 )),
1317 AnyBitCircuit::B19(BitCircuit::new(
1318 [
1319 Node::None,
1320 Node::Cmux(51, 1, 0),
1321 Node::Cmux(51, 0, 1),
1322 Node::Cmux(19, 2, 1),
1323 Node::Cmux(19, 1, 2),
1324 Node::None,
1325 Node::Copy,
1326 Node::Copy,
1327 Node::Cmux(50, 1, 0),
1328 Node::Cmux(18, 2, 1),
1329 Node::None,
1330 Node::Cmux(18, 0, 2),
1331 Node::Copy,
1332 Node::Cmux(49, 0, 2),
1333 Node::Copy,
1334 Node::None,
1335 Node::Cmux(17, 2, 1),
1336 Node::Cmux(17, 1, 0),
1337 Node::Cmux(48, 2, 1),
1338 Node::Copy,
1339 Node::Copy,
1340 Node::None,
1341 Node::Cmux(16, 1, 0),
1342 Node::Cmux(16, 0, 2),
1343 Node::Cmux(47, 2, 1),
1344 Node::Copy,
1345 Node::Copy,
1346 Node::Cmux(15, 1, 0),
1347 Node::None,
1348 Node::Cmux(15, 0, 2),
1349 Node::Copy,
1350 Node::Cmux(46, 2, 0),
1351 Node::Copy,
1352 Node::Cmux(14, 0, 1),
1353 Node::Cmux(14, 1, 2),
1354 Node::None,
1355 Node::Copy,
1356 Node::Copy,
1357 Node::Cmux(45, 1, 0),
1358 Node::Cmux(13, 2, 1),
1359 Node::Cmux(13, 0, 2),
1360 Node::None,
1361 Node::Copy,
1362 Node::Copy,
1363 Node::Cmux(44, 0, 1),
1364 Node::Cmux(12, 1, 2),
1365 Node::None,
1366 Node::Cmux(12, 2, 0),
1367 Node::Copy,
1368 Node::Cmux(43, 2, 0),
1369 Node::Copy,
1370 Node::None,
1371 Node::Cmux(11, 0, 1),
1372 Node::Cmux(11, 1, 2),
1373 Node::Cmux(42, 2, 1),
1374 Node::Copy,
1375 Node::Copy,
1376 Node::None,
1377 Node::Cmux(10, 1, 0),
1378 Node::Cmux(10, 0, 2),
1379 Node::Cmux(41, 2, 1),
1380 Node::Copy,
1381 Node::Copy,
1382 Node::None,
1383 Node::Cmux(9, 1, 0),
1384 Node::Cmux(9, 0, 2),
1385 Node::Cmux(40, 2, 1),
1386 Node::Copy,
1387 Node::Copy,
1388 Node::None,
1389 Node::Cmux(8, 1, 0),
1390 Node::Cmux(8, 0, 2),
1391 Node::Cmux(39, 2, 1),
1392 Node::Copy,
1393 Node::Copy,
1394 Node::Cmux(7, 0, 2),
1395 Node::Cmux(7, 1, 0),
1396 Node::None,
1397 Node::Copy,
1398 Node::Copy,
1399 Node::Cmux(38, 0, 1),
1400 Node::Cmux(6, 2, 0),
1401 Node::None,
1402 Node::Cmux(6, 1, 2),
1403 Node::Copy,
1404 Node::Cmux(37, 0, 2),
1405 Node::Copy,
1406 Node::Cmux(5, 2, 1),
1407 Node::Cmux(5, 1, 0),
1408 Node::None,
1409 Node::Copy,
1410 Node::Copy,
1411 Node::Cmux(36, 1, 0),
1412 Node::Cmux(4, 0, 2),
1413 Node::Cmux(4, 2, 1),
1414 Node::None,
1415 Node::Copy,
1416 Node::Copy,
1417 Node::Cmux(35, 1, 0),
1418 Node::Cmux(3, 0, 2),
1419 Node::Cmux(3, 2, 1),
1420 Node::None,
1421 Node::Copy,
1422 Node::Copy,
1423 Node::Cmux(34, 1, 0),
1424 Node::None,
1425 Node::Cmux(2, 0, 2),
1426 Node::Cmux(2, 2, 1),
1427 Node::Cmux(33, 2, 1),
1428 Node::Copy,
1429 Node::Copy,
1430 Node::Cmux(1, 1, 0),
1431 Node::Cmux(1, 0, 2),
1432 Node::None,
1433 Node::Copy,
1434 Node::Cmux(32, 1, 0),
1435 Node::None,
1436 Node::Cmux(0, 0, 1),
1437 Node::None,
1438 Node::None,
1439 ],
1440 3,
1441 )),
1442 AnyBitCircuit::B20(BitCircuit::new(
1443 [
1444 Node::None,
1445 Node::Cmux(52, 1, 0),
1446 Node::Cmux(52, 0, 1),
1447 Node::Cmux(20, 2, 1),
1448 Node::None,
1449 Node::Cmux(20, 1, 2),
1450 Node::Copy,
1451 Node::Cmux(51, 2, 0),
1452 Node::Copy,
1453 Node::None,
1454 Node::Cmux(19, 1, 2),
1455 Node::Cmux(19, 0, 1),
1456 Node::Cmux(50, 1, 2),
1457 Node::Copy,
1458 Node::Copy,
1459 Node::Cmux(18, 0, 1),
1460 Node::None,
1461 Node::Cmux(18, 2, 0),
1462 Node::Copy,
1463 Node::Cmux(49, 0, 2),
1464 Node::Copy,
1465 Node::Cmux(17, 1, 0),
1466 Node::Cmux(17, 2, 1),
1467 Node::None,
1468 Node::Copy,
1469 Node::Copy,
1470 Node::Cmux(48, 0, 1),
1471 Node::Cmux(16, 2, 0),
1472 Node::Cmux(16, 1, 2),
1473 Node::None,
1474 Node::Copy,
1475 Node::Copy,
1476 Node::Cmux(47, 0, 1),
1477 Node::None,
1478 Node::Cmux(15, 2, 0),
1479 Node::Cmux(15, 1, 2),
1480 Node::Cmux(46, 1, 2),
1481 Node::Copy,
1482 Node::Copy,
1483 Node::Cmux(14, 2, 0),
1484 Node::Cmux(14, 0, 1),
1485 Node::None,
1486 Node::Copy,
1487 Node::Copy,
1488 Node::Cmux(45, 1, 0),
1489 Node::None,
1490 Node::Cmux(13, 2, 1),
1491 Node::Cmux(13, 0, 2),
1492 Node::Cmux(44, 1, 2),
1493 Node::Copy,
1494 Node::Copy,
1495 Node::Cmux(12, 2, 0),
1496 Node::Cmux(12, 0, 1),
1497 Node::None,
1498 Node::Copy,
1499 Node::Copy,
1500 Node::Cmux(43, 1, 0),
1501 Node::None,
1502 Node::Cmux(11, 0, 2),
1503 Node::Cmux(11, 2, 1),
1504 Node::Cmux(42, 2, 1),
1505 Node::Copy,
1506 Node::Copy,
1507 Node::Cmux(10, 0, 2),
1508 Node::Cmux(10, 1, 0),
1509 Node::None,
1510 Node::Copy,
1511 Node::Copy,
1512 Node::Cmux(41, 0, 1),
1513 Node::None,
1514 Node::Cmux(9, 2, 0),
1515 Node::Cmux(9, 1, 2),
1516 Node::Cmux(40, 1, 2),
1517 Node::Copy,
1518 Node::Copy,
1519 Node::Cmux(8, 0, 1),
1520 Node::Cmux(8, 2, 0),
1521 Node::None,
1522 Node::Copy,
1523 Node::Copy,
1524 Node::Cmux(39, 0, 1),
1525 Node::Cmux(7, 1, 2),
1526 Node::Cmux(7, 2, 0),
1527 Node::None,
1528 Node::Copy,
1529 Node::Copy,
1530 Node::Cmux(38, 1, 0),
1531 Node::Cmux(6, 2, 1),
1532 Node::Cmux(6, 0, 2),
1533 Node::None,
1534 Node::Copy,
1535 Node::Copy,
1536 Node::Cmux(37, 0, 1),
1537 Node::Cmux(5, 2, 0),
1538 Node::Cmux(5, 1, 2),
1539 Node::None,
1540 Node::Copy,
1541 Node::Copy,
1542 Node::Cmux(36, 0, 1),
1543 Node::Cmux(4, 1, 2),
1544 Node::None,
1545 Node::Cmux(4, 2, 0),
1546 Node::Copy,
1547 Node::Cmux(35, 2, 0),
1548 Node::Copy,
1549 Node::Cmux(3, 0, 1),
1550 Node::Cmux(3, 1, 2),
1551 Node::None,
1552 Node::Copy,
1553 Node::Copy,
1554 Node::Cmux(34, 1, 0),
1555 Node::None,
1556 Node::Cmux(2, 2, 1),
1557 Node::Cmux(2, 0, 2),
1558 Node::Cmux(33, 1, 2),
1559 Node::Copy,
1560 Node::Copy,
1561 Node::Cmux(1, 2, 0),
1562 Node::None,
1563 Node::Cmux(1, 0, 1),
1564 Node::Copy,
1565 Node::None,
1566 Node::Cmux(32, 2, 0),
1567 Node::Cmux(0, 0, 2),
1568 Node::None,
1569 Node::None,
1570 ],
1571 3,
1572 )),
1573 AnyBitCircuit::B21(BitCircuit::new(
1574 [
1575 Node::Cmux(53, 1, 0),
1576 Node::Cmux(53, 0, 1),
1577 Node::None,
1578 Node::Cmux(21, 0, 1),
1579 Node::Cmux(21, 1, 0),
1580 Node::None,
1581 Node::Copy,
1582 Node::Copy,
1583 Node::Cmux(52, 0, 1),
1584 Node::None,
1585 Node::Cmux(20, 1, 2),
1586 Node::Cmux(20, 2, 0),
1587 Node::Cmux(51, 2, 1),
1588 Node::Copy,
1589 Node::Copy,
1590 Node::Cmux(19, 0, 2),
1591 Node::Cmux(19, 1, 0),
1592 Node::None,
1593 Node::Copy,
1594 Node::Copy,
1595 Node::Cmux(50, 0, 1),
1596 Node::Cmux(18, 1, 2),
1597 Node::None,
1598 Node::Cmux(18, 2, 0),
1599 Node::Copy,
1600 Node::Cmux(49, 2, 0),
1601 Node::Copy,
1602 Node::Cmux(17, 1, 2),
1603 Node::None,
1604 Node::Cmux(17, 0, 1),
1605 Node::Copy,
1606 Node::Cmux(48, 0, 2),
1607 Node::Copy,
1608 Node::None,
1609 Node::Cmux(16, 1, 0),
1610 Node::Cmux(16, 2, 1),
1611 Node::Cmux(47, 1, 2),
1612 Node::Copy,
1613 Node::Copy,
1614 Node::Cmux(15, 0, 1),
1615 Node::None,
1616 Node::Cmux(15, 2, 0),
1617 Node::Copy,
1618 Node::Cmux(46, 0, 2),
1619 Node::Copy,
1620 Node::None,
1621 Node::Cmux(14, 2, 1),
1622 Node::Cmux(14, 1, 0),
1623 Node::Cmux(45, 2, 1),
1624 Node::Copy,
1625 Node::Copy,
1626 Node::Cmux(13, 0, 2),
1627 Node::None,
1628 Node::Cmux(13, 1, 0),
1629 Node::Copy,
1630 Node::Cmux(44, 0, 2),
1631 Node::Copy,
1632 Node::Cmux(12, 1, 0),
1633 Node::Cmux(12, 2, 1),
1634 Node::None,
1635 Node::Copy,
1636 Node::Copy,
1637 Node::Cmux(43, 0, 1),
1638 Node::None,
1639 Node::Cmux(11, 2, 0),
1640 Node::Cmux(11, 1, 2),
1641 Node::Cmux(42, 1, 2),
1642 Node::Copy,
1643 Node::Copy,
1644 Node::Cmux(10, 0, 1),
1645 Node::None,
1646 Node::Cmux(10, 2, 0),
1647 Node::Copy,
1648 Node::Cmux(41, 0, 2),
1649 Node::Copy,
1650 Node::None,
1651 Node::Cmux(9, 2, 1),
1652 Node::Cmux(9, 1, 0),
1653 Node::Cmux(40, 2, 1),
1654 Node::Copy,
1655 Node::Copy,
1656 Node::Cmux(8, 1, 0),
1657 Node::Cmux(8, 0, 2),
1658 Node::None,
1659 Node::Copy,
1660 Node::Copy,
1661 Node::Cmux(39, 1, 0),
1662 Node::None,
1663 Node::Cmux(7, 0, 2),
1664 Node::Cmux(7, 2, 1),
1665 Node::Cmux(38, 2, 1),
1666 Node::Copy,
1667 Node::Copy,
1668 Node::Cmux(6, 1, 0),
1669 Node::None,
1670 Node::Cmux(6, 0, 2),
1671 Node::Copy,
1672 Node::Cmux(37, 2, 0),
1673 Node::Copy,
1674 Node::None,
1675 Node::Cmux(5, 1, 2),
1676 Node::Cmux(5, 0, 1),
1677 Node::Cmux(36, 1, 2),
1678 Node::Copy,
1679 Node::Copy,
1680 Node::Cmux(4, 2, 0),
1681 Node::Cmux(4, 0, 1),
1682 Node::None,
1683 Node::Copy,
1684 Node::Copy,
1685 Node::Cmux(35, 1, 0),
1686 Node::Cmux(3, 2, 1),
1687 Node::Cmux(3, 0, 2),
1688 Node::None,
1689 Node::Copy,
1690 Node::Copy,
1691 Node::Cmux(34, 0, 1),
1692 Node::Cmux(2, 2, 0),
1693 Node::Cmux(2, 1, 2),
1694 Node::None,
1695 Node::Copy,
1696 Node::Copy,
1697 Node::Cmux(33, 0, 1),
1698 Node::Cmux(1, 2, 0),
1699 Node::None,
1700 Node::Cmux(1, 1, 2),
1701 Node::None,
1702 Node::Cmux(32, 0, 2),
1703 Node::Copy,
1704 Node::Cmux(0, 2, 1),
1705 Node::None,
1706 Node::None,
1707 ],
1708 3,
1709 )),
1710 AnyBitCircuit::B22(BitCircuit::new(
1711 [
1712 Node::None,
1713 Node::Cmux(54, 1, 0),
1714 Node::Cmux(54, 0, 1),
1715 Node::None,
1716 Node::Cmux(22, 1, 2),
1717 Node::Cmux(22, 2, 1),
1718 Node::Cmux(53, 1, 2),
1719 Node::Copy,
1720 Node::Copy,
1721 Node::Cmux(21, 0, 1),
1722 Node::None,
1723 Node::Cmux(21, 2, 0),
1724 Node::Copy,
1725 Node::Cmux(52, 0, 2),
1726 Node::Copy,
1727 Node::Cmux(20, 2, 1),
1728 Node::None,
1729 Node::Cmux(20, 1, 0),
1730 Node::Copy,
1731 Node::Cmux(51, 2, 0),
1732 Node::Copy,
1733 Node::Cmux(19, 0, 1),
1734 Node::None,
1735 Node::Cmux(19, 1, 2),
1736 Node::Copy,
1737 Node::Cmux(50, 2, 0),
1738 Node::Copy,
1739 Node::None,
1740 Node::Cmux(18, 0, 1),
1741 Node::Cmux(18, 1, 2),
1742 Node::Cmux(49, 2, 1),
1743 Node::Copy,
1744 Node::Copy,
1745 Node::Cmux(17, 1, 0),
1746 Node::None,
1747 Node::Cmux(17, 0, 2),
1748 Node::Copy,
1749 Node::Cmux(48, 2, 0),
1750 Node::Copy,
1751 Node::Cmux(16, 1, 2),
1752 Node::Cmux(16, 0, 1),
1753 Node::None,
1754 Node::Copy,
1755 Node::Copy,
1756 Node::Cmux(47, 0, 1),
1757 Node::Cmux(15, 1, 2),
1758 Node::None,
1759 Node::Cmux(15, 2, 0),
1760 Node::Copy,
1761 Node::Cmux(46, 2, 0),
1762 Node::Copy,
1763 Node::Cmux(14, 0, 1),
1764 Node::None,
1765 Node::Cmux(14, 1, 2),
1766 Node::Copy,
1767 Node::Cmux(45, 2, 0),
1768 Node::Copy,
1769 Node::None,
1770 Node::Cmux(13, 1, 2),
1771 Node::Cmux(13, 0, 1),
1772 Node::Cmux(44, 1, 2),
1773 Node::Copy,
1774 Node::Copy,
1775 Node::None,
1776 Node::Cmux(12, 2, 0),
1777 Node::Cmux(12, 0, 1),
1778 Node::Cmux(43, 2, 1),
1779 Node::Copy,
1780 Node::Copy,
1781 Node::Cmux(11, 1, 0),
1782 Node::Cmux(11, 0, 2),
1783 Node::None,
1784 Node::Copy,
1785 Node::Copy,
1786 Node::Cmux(42, 1, 0),
1787 Node::Cmux(10, 2, 1),
1788 Node::Cmux(10, 0, 2),
1789 Node::None,
1790 Node::Copy,
1791 Node::Copy,
1792 Node::Cmux(41, 0, 1),
1793 Node::Cmux(9, 2, 0),
1794 Node::Cmux(9, 1, 2),
1795 Node::None,
1796 Node::Copy,
1797 Node::Copy,
1798 Node::Cmux(40, 0, 1),
1799 Node::Cmux(8, 2, 0),
1800 Node::Cmux(8, 1, 2),
1801 Node::None,
1802 Node::Copy,
1803 Node::Copy,
1804 Node::Cmux(39, 0, 1),
1805 Node::None,
1806 Node::Cmux(7, 2, 0),
1807 Node::Cmux(7, 1, 2),
1808 Node::Cmux(38, 1, 2),
1809 Node::Copy,
1810 Node::Copy,
1811 Node::Cmux(6, 0, 1),
1812 Node::Cmux(6, 2, 0),
1813 Node::None,
1814 Node::Copy,
1815 Node::Copy,
1816 Node::Cmux(37, 0, 1),
1817 Node::Cmux(5, 1, 2),
1818 Node::Cmux(5, 2, 0),
1819 Node::None,
1820 Node::Copy,
1821 Node::Copy,
1822 Node::Cmux(36, 1, 0),
1823 Node::None,
1824 Node::Cmux(4, 0, 2),
1825 Node::Cmux(4, 2, 1),
1826 Node::Cmux(35, 2, 1),
1827 Node::Copy,
1828 Node::Copy,
1829 Node::Cmux(3, 1, 0),
1830 Node::Cmux(3, 0, 2),
1831 Node::None,
1832 Node::Copy,
1833 Node::Copy,
1834 Node::Cmux(34, 1, 0),
1835 Node::Cmux(2, 0, 2),
1836 Node::None,
1837 Node::Cmux(2, 2, 1),
1838 Node::Copy,
1839 Node::Cmux(33, 2, 0),
1840 Node::Copy,
1841 Node::Cmux(1, 0, 1),
1842 Node::Cmux(1, 1, 2),
1843 Node::None,
1844 Node::Copy,
1845 Node::Cmux(32, 1, 0),
1846 Node::None,
1847 Node::Cmux(0, 0, 1),
1848 Node::None,
1849 Node::None,
1850 ],
1851 3,
1852 )),
1853 AnyBitCircuit::B23(BitCircuit::new(
1854 [
1855 Node::None,
1856 Node::Cmux(55, 0, 1),
1857 Node::Cmux(55, 1, 0),
1858 Node::None,
1859 Node::Cmux(23, 1, 2),
1860 Node::Cmux(23, 2, 1),
1861 Node::Cmux(54, 2, 1),
1862 Node::Copy,
1863 Node::Copy,
1864 Node::Cmux(22, 1, 0),
1865 Node::Cmux(22, 0, 2),
1866 Node::None,
1867 Node::Copy,
1868 Node::Copy,
1869 Node::Cmux(53, 1, 0),
1870 Node::Cmux(21, 0, 2),
1871 Node::None,
1872 Node::Cmux(21, 2, 1),
1873 Node::Copy,
1874 Node::Cmux(52, 2, 0),
1875 Node::Copy,
1876 Node::Cmux(20, 0, 1),
1877 Node::None,
1878 Node::Cmux(20, 1, 2),
1879 Node::Copy,
1880 Node::Cmux(51, 2, 0),
1881 Node::Copy,
1882 Node::None,
1883 Node::Cmux(19, 1, 2),
1884 Node::Cmux(19, 0, 1),
1885 Node::Cmux(50, 1, 2),
1886 Node::Copy,
1887 Node::Copy,
1888 Node::Cmux(18, 0, 1),
1889 Node::None,
1890 Node::Cmux(18, 2, 0),
1891 Node::Copy,
1892 Node::Cmux(49, 0, 2),
1893 Node::Copy,
1894 Node::Cmux(17, 1, 0),
1895 Node::None,
1896 Node::Cmux(17, 2, 1),
1897 Node::Copy,
1898 Node::Cmux(48, 0, 2),
1899 Node::Copy,
1900 Node::Cmux(16, 2, 1),
1901 Node::None,
1902 Node::Cmux(16, 1, 0),
1903 Node::Copy,
1904 Node::Cmux(47, 2, 0),
1905 Node::Copy,
1906 Node::Cmux(15, 0, 1),
1907 Node::Cmux(15, 1, 2),
1908 Node::None,
1909 Node::Copy,
1910 Node::Copy,
1911 Node::Cmux(46, 1, 0),
1912 Node::Cmux(14, 0, 2),
1913 Node::Cmux(14, 2, 1),
1914 Node::None,
1915 Node::Copy,
1916 Node::Copy,
1917 Node::Cmux(45, 1, 0),
1918 Node::None,
1919 Node::Cmux(13, 0, 2),
1920 Node::Cmux(13, 2, 1),
1921 Node::Cmux(44, 2, 1),
1922 Node::Copy,
1923 Node::Copy,
1924 Node::Cmux(12, 1, 0),
1925 Node::Cmux(12, 0, 2),
1926 Node::None,
1927 Node::Copy,
1928 Node::Copy,
1929 Node::Cmux(43, 1, 0),
1930 Node::None,
1931 Node::Cmux(11, 2, 1),
1932 Node::Cmux(11, 0, 2),
1933 Node::Cmux(42, 1, 2),
1934 Node::Copy,
1935 Node::Copy,
1936 Node::None,
1937 Node::Cmux(10, 2, 0),
1938 Node::Cmux(10, 0, 1),
1939 Node::Cmux(41, 2, 1),
1940 Node::Copy,
1941 Node::Copy,
1942 Node::None,
1943 Node::Cmux(9, 1, 0),
1944 Node::Cmux(9, 0, 2),
1945 Node::Cmux(40, 2, 1),
1946 Node::Copy,
1947 Node::Copy,
1948 Node::Cmux(8, 1, 0),
1949 Node::Cmux(8, 0, 2),
1950 Node::None,
1951 Node::Copy,
1952 Node::Copy,
1953 Node::Cmux(39, 1, 0),
1954 Node::Cmux(7, 0, 2),
1955 Node::Cmux(7, 2, 1),
1956 Node::None,
1957 Node::Copy,
1958 Node::Copy,
1959 Node::Cmux(38, 1, 0),
1960 Node::Cmux(6, 0, 2),
1961 Node::Cmux(6, 2, 1),
1962 Node::None,
1963 Node::Copy,
1964 Node::Copy,
1965 Node::Cmux(37, 1, 0),
1966 Node::Cmux(5, 2, 1),
1967 Node::Cmux(5, 0, 2),
1968 Node::None,
1969 Node::Copy,
1970 Node::Copy,
1971 Node::Cmux(36, 0, 1),
1972 Node::None,
1973 Node::Cmux(4, 1, 2),
1974 Node::Cmux(4, 2, 0),
1975 Node::Cmux(35, 2, 1),
1976 Node::Copy,
1977 Node::Copy,
1978 Node::Cmux(3, 1, 0),
1979 Node::Cmux(3, 0, 2),
1980 Node::None,
1981 Node::Copy,
1982 Node::Copy,
1983 Node::Cmux(34, 1, 0),
1984 Node::Cmux(2, 0, 2),
1985 Node::Cmux(2, 2, 1),
1986 Node::None,
1987 Node::Copy,
1988 Node::Copy,
1989 Node::Cmux(33, 1, 0),
1990 Node::Cmux(1, 2, 1),
1991 Node::Cmux(1, 0, 2),
1992 Node::None,
1993 Node::Cmux(32, 0, 1),
1994 Node::Copy,
1995 Node::None,
1996 Node::Cmux(0, 1, 0),
1997 Node::None,
1998 Node::None,
1999 ],
2000 3,
2001 )),
2002 AnyBitCircuit::B24(BitCircuit::new(
2003 [
2004 Node::Cmux(56, 0, 1),
2005 Node::Cmux(56, 1, 0),
2006 Node::None,
2007 Node::Cmux(24, 1, 0),
2008 Node::None,
2009 Node::Cmux(24, 0, 1),
2010 Node::Copy,
2011 Node::Cmux(55, 0, 2),
2012 Node::Copy,
2013 Node::Cmux(23, 2, 1),
2014 Node::Cmux(23, 1, 0),
2015 Node::None,
2016 Node::Copy,
2017 Node::Copy,
2018 Node::Cmux(54, 1, 0),
2019 Node::Cmux(22, 0, 2),
2020 Node::None,
2021 Node::Cmux(22, 2, 1),
2022 Node::Copy,
2023 Node::Cmux(53, 2, 0),
2024 Node::Copy,
2025 Node::Cmux(21, 0, 1),
2026 Node::Cmux(21, 1, 2),
2027 Node::None,
2028 Node::Copy,
2029 Node::Copy,
2030 Node::Cmux(52, 1, 0),
2031 Node::Cmux(20, 2, 1),
2032 Node::None,
2033 Node::Cmux(20, 0, 2),
2034 Node::Copy,
2035 Node::Cmux(51, 0, 2),
2036 Node::Copy,
2037 Node::None,
2038 Node::Cmux(19, 1, 0),
2039 Node::Cmux(19, 2, 1),
2040 Node::Cmux(50, 1, 2),
2041 Node::Copy,
2042 Node::Copy,
2043 Node::Cmux(18, 0, 1),
2044 Node::None,
2045 Node::Cmux(18, 2, 0),
2046 Node::Copy,
2047 Node::Cmux(49, 0, 2),
2048 Node::Copy,
2049 Node::Cmux(17, 1, 0),
2050 Node::Cmux(17, 2, 1),
2051 Node::None,
2052 Node::Copy,
2053 Node::Copy,
2054 Node::Cmux(48, 0, 1),
2055 Node::Cmux(16, 1, 2),
2056 Node::None,
2057 Node::Cmux(16, 2, 0),
2058 Node::Copy,
2059 Node::Cmux(47, 2, 0),
2060 Node::Copy,
2061 Node::Cmux(15, 1, 2),
2062 Node::Cmux(15, 0, 1),
2063 Node::None,
2064 Node::Copy,
2065 Node::Copy,
2066 Node::Cmux(46, 0, 1),
2067 Node::Cmux(14, 2, 0),
2068 Node::Cmux(14, 1, 2),
2069 Node::None,
2070 Node::Copy,
2071 Node::Copy,
2072 Node::Cmux(45, 0, 1),
2073 Node::Cmux(13, 1, 2),
2074 Node::None,
2075 Node::Cmux(13, 2, 0),
2076 Node::Copy,
2077 Node::Cmux(44, 2, 0),
2078 Node::Copy,
2079 Node::Cmux(12, 0, 1),
2080 Node::Cmux(12, 1, 2),
2081 Node::None,
2082 Node::Copy,
2083 Node::Copy,
2084 Node::Cmux(43, 1, 0),
2085 Node::None,
2086 Node::Cmux(11, 0, 2),
2087 Node::Cmux(11, 2, 1),
2088 Node::Cmux(42, 2, 1),
2089 Node::Copy,
2090 Node::Copy,
2091 Node::Cmux(10, 0, 2),
2092 Node::None,
2093 Node::Cmux(10, 1, 0),
2094 Node::Copy,
2095 Node::Cmux(41, 0, 2),
2096 Node::Copy,
2097 Node::Cmux(9, 2, 1),
2098 Node::None,
2099 Node::Cmux(9, 1, 0),
2100 Node::Copy,
2101 Node::Cmux(40, 2, 0),
2102 Node::Copy,
2103 Node::Cmux(8, 1, 2),
2104 Node::Cmux(8, 0, 1),
2105 Node::None,
2106 Node::Copy,
2107 Node::Copy,
2108 Node::Cmux(39, 0, 1),
2109 Node::None,
2110 Node::Cmux(7, 2, 0),
2111 Node::Cmux(7, 1, 2),
2112 Node::Cmux(38, 1, 2),
2113 Node::Copy,
2114 Node::Copy,
2115 Node::Cmux(6, 0, 1),
2116 Node::Cmux(6, 2, 0),
2117 Node::None,
2118 Node::Copy,
2119 Node::Copy,
2120 Node::Cmux(37, 0, 1),
2121 Node::Cmux(5, 1, 2),
2122 Node::Cmux(5, 2, 0),
2123 Node::None,
2124 Node::Copy,
2125 Node::Copy,
2126 Node::Cmux(36, 1, 0),
2127 Node::Cmux(4, 0, 2),
2128 Node::None,
2129 Node::Cmux(4, 2, 1),
2130 Node::Copy,
2131 Node::Cmux(35, 2, 0),
2132 Node::Copy,
2133 Node::Cmux(3, 1, 2),
2134 Node::Cmux(3, 0, 1),
2135 Node::None,
2136 Node::Copy,
2137 Node::Copy,
2138 Node::Cmux(34, 0, 1),
2139 Node::Cmux(2, 2, 0),
2140 Node::Cmux(2, 1, 2),
2141 Node::None,
2142 Node::Copy,
2143 Node::Copy,
2144 Node::Cmux(33, 0, 1),
2145 Node::Cmux(1, 2, 0),
2146 Node::None,
2147 Node::Cmux(1, 1, 2),
2148 Node::Cmux(32, 0, 2),
2149 Node::None,
2150 Node::Copy,
2151 Node::Cmux(0, 2, 0),
2152 Node::None,
2153 Node::None,
2154 ],
2155 3,
2156 )),
2157 AnyBitCircuit::B25(BitCircuit::new(
2158 [
2159 Node::Cmux(57, 1, 0),
2160 Node::None,
2161 Node::Cmux(57, 0, 1),
2162 Node::Cmux(25, 2, 0),
2163 Node::None,
2164 Node::Cmux(25, 0, 2),
2165 Node::Copy,
2166 Node::Cmux(56, 2, 0),
2167 Node::Copy,
2168 Node::Cmux(24, 1, 2),
2169 Node::Cmux(24, 0, 1),
2170 Node::None,
2171 Node::Copy,
2172 Node::Copy,
2173 Node::Cmux(55, 0, 1),
2174 Node::Cmux(23, 1, 2),
2175 Node::None,
2176 Node::Cmux(23, 2, 0),
2177 Node::Copy,
2178 Node::Cmux(54, 2, 0),
2179 Node::Copy,
2180 Node::Cmux(22, 0, 1),
2181 Node::Cmux(22, 1, 2),
2182 Node::None,
2183 Node::Copy,
2184 Node::Copy,
2185 Node::Cmux(53, 1, 0),
2186 Node::Cmux(21, 2, 1),
2187 Node::None,
2188 Node::Cmux(21, 0, 2),
2189 Node::Copy,
2190 Node::Cmux(52, 0, 2),
2191 Node::Copy,
2192 Node::Cmux(20, 1, 0),
2193 Node::Cmux(20, 2, 1),
2194 Node::None,
2195 Node::Copy,
2196 Node::Copy,
2197 Node::Cmux(51, 0, 1),
2198 Node::Cmux(19, 1, 2),
2199 Node::Cmux(19, 2, 0),
2200 Node::None,
2201 Node::Copy,
2202 Node::Copy,
2203 Node::Cmux(50, 1, 0),
2204 Node::None,
2205 Node::Cmux(18, 2, 1),
2206 Node::Cmux(18, 0, 2),
2207 Node::Cmux(49, 1, 2),
2208 Node::Copy,
2209 Node::Copy,
2210 Node::Cmux(17, 0, 1),
2211 Node::Cmux(17, 2, 0),
2212 Node::None,
2213 Node::Copy,
2214 Node::Copy,
2215 Node::Cmux(48, 0, 1),
2216 Node::Cmux(16, 2, 0),
2217 Node::Cmux(16, 1, 2),
2218 Node::None,
2219 Node::Copy,
2220 Node::Copy,
2221 Node::Cmux(47, 0, 1),
2222 Node::Cmux(15, 1, 2),
2223 Node::None,
2224 Node::Cmux(15, 2, 0),
2225 Node::Copy,
2226 Node::Cmux(46, 2, 0),
2227 Node::Copy,
2228 Node::None,
2229 Node::Cmux(14, 1, 2),
2230 Node::Cmux(14, 0, 1),
2231 Node::Cmux(45, 1, 2),
2232 Node::Copy,
2233 Node::Copy,
2234 Node::Cmux(13, 2, 0),
2235 Node::None,
2236 Node::Cmux(13, 0, 1),
2237 Node::Copy,
2238 Node::Cmux(44, 2, 0),
2239 Node::Copy,
2240 Node::None,
2241 Node::Cmux(12, 1, 2),
2242 Node::Cmux(12, 0, 1),
2243 Node::Cmux(43, 1, 2),
2244 Node::Copy,
2245 Node::Copy,
2246 Node::Cmux(11, 2, 0),
2247 Node::None,
2248 Node::Cmux(11, 0, 1),
2249 Node::Copy,
2250 Node::Cmux(42, 2, 0),
2251 Node::Copy,
2252 Node::Cmux(10, 0, 1),
2253 Node::Cmux(10, 1, 2),
2254 Node::None,
2255 Node::Copy,
2256 Node::Copy,
2257 Node::Cmux(41, 1, 0),
2258 Node::Cmux(9, 0, 2),
2259 Node::Cmux(9, 2, 1),
2260 Node::None,
2261 Node::Copy,
2262 Node::Copy,
2263 Node::Cmux(40, 1, 0),
2264 Node::Cmux(8, 0, 2),
2265 Node::Cmux(8, 2, 1),
2266 Node::None,
2267 Node::Copy,
2268 Node::Copy,
2269 Node::Cmux(39, 1, 0),
2270 Node::Cmux(7, 0, 2),
2271 Node::None,
2272 Node::Cmux(7, 2, 1),
2273 Node::Copy,
2274 Node::Cmux(38, 2, 0),
2275 Node::Copy,
2276 Node::Cmux(6, 1, 2),
2277 Node::Cmux(6, 0, 1),
2278 Node::None,
2279 Node::Copy,
2280 Node::Copy,
2281 Node::Cmux(37, 0, 1),
2282 Node::Cmux(5, 2, 0),
2283 Node::Cmux(5, 1, 2),
2284 Node::None,
2285 Node::Copy,
2286 Node::Copy,
2287 Node::Cmux(36, 0, 1),
2288 Node::Cmux(4, 1, 2),
2289 Node::Cmux(4, 2, 0),
2290 Node::None,
2291 Node::Copy,
2292 Node::Copy,
2293 Node::Cmux(35, 1, 0),
2294 Node::Cmux(3, 0, 2),
2295 Node::Cmux(3, 2, 1),
2296 Node::None,
2297 Node::Copy,
2298 Node::Copy,
2299 Node::Cmux(34, 1, 0),
2300 Node::Cmux(2, 2, 1),
2301 Node::None,
2302 Node::Cmux(2, 0, 2),
2303 Node::Copy,
2304 Node::Cmux(33, 0, 2),
2305 Node::Copy,
2306 Node::Cmux(1, 2, 1),
2307 Node::Cmux(1, 1, 0),
2308 Node::None,
2309 Node::Copy,
2310 Node::None,
2311 Node::Cmux(32, 1, 0),
2312 Node::Cmux(0, 0, 2),
2313 Node::None,
2314 Node::None,
2315 ],
2316 3,
2317 )),
2318 AnyBitCircuit::B26(BitCircuit::new(
2319 [
2320 Node::Cmux(58, 1, 0),
2321 Node::Cmux(58, 0, 1),
2322 Node::None,
2323 Node::Cmux(26, 0, 1),
2324 Node::None,
2325 Node::Cmux(26, 1, 0),
2326 Node::Copy,
2327 Node::Cmux(57, 0, 2),
2328 Node::Copy,
2329 Node::Cmux(25, 2, 1),
2330 Node::Cmux(25, 1, 0),
2331 Node::None,
2332 Node::Copy,
2333 Node::Copy,
2334 Node::Cmux(56, 1, 0),
2335 Node::Cmux(24, 2, 1),
2336 Node::None,
2337 Node::Cmux(24, 0, 2),
2338 Node::Copy,
2339 Node::Cmux(55, 0, 2),
2340 Node::Copy,
2341 Node::Cmux(23, 1, 0),
2342 Node::Cmux(23, 2, 1),
2343 Node::None,
2344 Node::Copy,
2345 Node::Copy,
2346 Node::Cmux(54, 0, 1),
2347 Node::Cmux(22, 2, 0),
2348 Node::None,
2349 Node::Cmux(22, 1, 2),
2350 Node::Copy,
2351 Node::Cmux(53, 0, 2),
2352 Node::Copy,
2353 Node::Cmux(21, 1, 0),
2354 Node::Cmux(21, 2, 1),
2355 Node::None,
2356 Node::Copy,
2357 Node::Copy,
2358 Node::Cmux(52, 0, 1),
2359 Node::Cmux(20, 2, 0),
2360 Node::Cmux(20, 1, 2),
2361 Node::None,
2362 Node::Copy,
2363 Node::Copy,
2364 Node::Cmux(51, 0, 1),
2365 Node::Cmux(19, 2, 0),
2366 Node::None,
2367 Node::Cmux(19, 1, 2),
2368 Node::Copy,
2369 Node::Cmux(50, 0, 2),
2370 Node::Copy,
2371 Node::Cmux(18, 2, 1),
2372 Node::Cmux(18, 1, 0),
2373 Node::None,
2374 Node::Copy,
2375 Node::Copy,
2376 Node::Cmux(49, 1, 0),
2377 Node::Cmux(17, 0, 2),
2378 Node::Cmux(17, 2, 1),
2379 Node::None,
2380 Node::Copy,
2381 Node::Copy,
2382 Node::Cmux(48, 1, 0),
2383 Node::Cmux(16, 2, 1),
2384 Node::None,
2385 Node::Cmux(16, 0, 2),
2386 Node::Copy,
2387 Node::Cmux(47, 0, 2),
2388 Node::Copy,
2389 Node::Cmux(15, 1, 0),
2390 Node::Cmux(15, 2, 1),
2391 Node::None,
2392 Node::Copy,
2393 Node::Copy,
2394 Node::Cmux(46, 0, 1),
2395 Node::Cmux(14, 1, 2),
2396 Node::Cmux(14, 2, 0),
2397 Node::None,
2398 Node::Copy,
2399 Node::Copy,
2400 Node::Cmux(45, 1, 0),
2401 Node::None,
2402 Node::Cmux(13, 2, 1),
2403 Node::Cmux(13, 0, 2),
2404 Node::Cmux(44, 1, 2),
2405 Node::Copy,
2406 Node::Copy,
2407 Node::Cmux(12, 0, 1),
2408 Node::None,
2409 Node::Cmux(12, 2, 0),
2410 Node::Copy,
2411 Node::Cmux(43, 0, 2),
2412 Node::Copy,
2413 Node::None,
2414 Node::Cmux(11, 1, 0),
2415 Node::Cmux(11, 2, 1),
2416 Node::Cmux(42, 1, 2),
2417 Node::Copy,
2418 Node::Copy,
2419 Node::Cmux(10, 0, 1),
2420 Node::None,
2421 Node::Cmux(10, 2, 0),
2422 Node::Copy,
2423 Node::Cmux(41, 0, 2),
2424 Node::Copy,
2425 Node::None,
2426 Node::Cmux(9, 1, 0),
2427 Node::Cmux(9, 2, 1),
2428 Node::Cmux(40, 1, 2),
2429 Node::Copy,
2430 Node::Copy,
2431 Node::None,
2432 Node::Cmux(8, 2, 0),
2433 Node::Cmux(8, 0, 1),
2434 Node::Cmux(39, 2, 1),
2435 Node::Copy,
2436 Node::Copy,
2437 Node::None,
2438 Node::Cmux(7, 1, 0),
2439 Node::Cmux(7, 0, 2),
2440 Node::Cmux(38, 2, 1),
2441 Node::Copy,
2442 Node::Copy,
2443 Node::Cmux(6, 1, 0),
2444 Node::Cmux(6, 0, 2),
2445 Node::None,
2446 Node::Copy,
2447 Node::Copy,
2448 Node::Cmux(37, 1, 0),
2449 Node::None,
2450 Node::Cmux(5, 2, 1),
2451 Node::Cmux(5, 0, 2),
2452 Node::Cmux(36, 1, 2),
2453 Node::Copy,
2454 Node::Copy,
2455 Node::Cmux(4, 0, 1),
2456 Node::Cmux(4, 2, 0),
2457 Node::None,
2458 Node::Copy,
2459 Node::Copy,
2460 Node::Cmux(35, 0, 1),
2461 Node::Cmux(3, 1, 2),
2462 Node::Cmux(3, 2, 0),
2463 Node::None,
2464 Node::Copy,
2465 Node::Copy,
2466 Node::Cmux(34, 1, 0),
2467 Node::Cmux(2, 0, 2),
2468 Node::Cmux(2, 2, 1),
2469 Node::None,
2470 Node::Copy,
2471 Node::Copy,
2472 Node::Cmux(33, 1, 0),
2473 Node::Cmux(1, 2, 1),
2474 Node::Cmux(1, 0, 2),
2475 Node::None,
2476 Node::Cmux(32, 0, 1),
2477 Node::Copy,
2478 Node::None,
2479 Node::Cmux(0, 1, 0),
2480 Node::None,
2481 Node::None,
2482 ],
2483 3,
2484 )),
2485 AnyBitCircuit::B27(BitCircuit::new(
2486 [
2487 Node::Cmux(59, 1, 0),
2488 Node::Cmux(59, 0, 1),
2489 Node::None,
2490 Node::None,
2491 Node::Cmux(27, 1, 0),
2492 Node::Cmux(27, 0, 1),
2493 Node::Cmux(58, 2, 1),
2494 Node::Copy,
2495 Node::Copy,
2496 Node::None,
2497 Node::Cmux(26, 1, 0),
2498 Node::Cmux(26, 0, 2),
2499 Node::Cmux(57, 2, 1),
2500 Node::Copy,
2501 Node::Copy,
2502 Node::Cmux(25, 1, 0),
2503 Node::Cmux(25, 0, 2),
2504 Node::None,
2505 Node::Copy,
2506 Node::Copy,
2507 Node::Cmux(56, 1, 0),
2508 Node::None,
2509 Node::Cmux(24, 0, 2),
2510 Node::Cmux(24, 2, 1),
2511 Node::Cmux(55, 2, 1),
2512 Node::Copy,
2513 Node::Copy,
2514 Node::Cmux(23, 1, 0),
2515 Node::Cmux(23, 0, 2),
2516 Node::None,
2517 Node::Copy,
2518 Node::Copy,
2519 Node::Cmux(54, 1, 0),
2520 Node::None,
2521 Node::Cmux(22, 2, 1),
2522 Node::Cmux(22, 0, 2),
2523 Node::Cmux(53, 1, 2),
2524 Node::Copy,
2525 Node::Copy,
2526 Node::Cmux(21, 0, 1),
2527 Node::Cmux(21, 2, 0),
2528 Node::None,
2529 Node::Copy,
2530 Node::Copy,
2531 Node::Cmux(52, 0, 1),
2532 Node::Cmux(20, 2, 0),
2533 Node::None,
2534 Node::Cmux(20, 1, 2),
2535 Node::Copy,
2536 Node::Cmux(51, 0, 2),
2537 Node::Copy,
2538 Node::Cmux(19, 1, 0),
2539 Node::None,
2540 Node::Cmux(19, 2, 1),
2541 Node::Copy,
2542 Node::Cmux(50, 0, 2),
2543 Node::Copy,
2544 Node::None,
2545 Node::Cmux(18, 1, 0),
2546 Node::Cmux(18, 2, 1),
2547 Node::Cmux(49, 1, 2),
2548 Node::Copy,
2549 Node::Copy,
2550 Node::None,
2551 Node::Cmux(17, 2, 0),
2552 Node::Cmux(17, 0, 1),
2553 Node::Cmux(48, 2, 1),
2554 Node::Copy,
2555 Node::Copy,
2556 Node::Cmux(16, 0, 2),
2557 Node::None,
2558 Node::Cmux(16, 1, 0),
2559 Node::Copy,
2560 Node::Cmux(47, 0, 2),
2561 Node::Copy,
2562 Node::Cmux(15, 1, 0),
2563 Node::None,
2564 Node::Cmux(15, 2, 1),
2565 Node::Copy,
2566 Node::Cmux(46, 0, 2),
2567 Node::Copy,
2568 Node::Cmux(14, 1, 0),
2569 Node::None,
2570 Node::Cmux(14, 2, 1),
2571 Node::Copy,
2572 Node::Cmux(45, 0, 2),
2573 Node::Copy,
2574 Node::Cmux(13, 1, 0),
2575 Node::Cmux(13, 2, 1),
2576 Node::None,
2577 Node::Copy,
2578 Node::Copy,
2579 Node::Cmux(44, 0, 1),
2580 Node::Cmux(12, 2, 0),
2581 Node::Cmux(12, 1, 2),
2582 Node::None,
2583 Node::Copy,
2584 Node::Copy,
2585 Node::Cmux(43, 0, 1),
2586 Node::Cmux(11, 1, 2),
2587 Node::None,
2588 Node::Cmux(11, 2, 0),
2589 Node::Copy,
2590 Node::Cmux(42, 2, 0),
2591 Node::Copy,
2592 Node::Cmux(10, 1, 2),
2593 Node::Cmux(10, 0, 1),
2594 Node::None,
2595 Node::Copy,
2596 Node::Copy,
2597 Node::Cmux(41, 0, 1),
2598 Node::Cmux(9, 2, 0),
2599 Node::None,
2600 Node::Cmux(9, 1, 2),
2601 Node::Copy,
2602 Node::Cmux(40, 0, 2),
2603 Node::Copy,
2604 Node::Cmux(8, 2, 1),
2605 Node::None,
2606 Node::Cmux(8, 1, 0),
2607 Node::Copy,
2608 Node::Cmux(39, 2, 0),
2609 Node::Copy,
2610 Node::None,
2611 Node::Cmux(7, 1, 2),
2612 Node::Cmux(7, 0, 1),
2613 Node::Cmux(38, 1, 2),
2614 Node::Copy,
2615 Node::Copy,
2616 Node::Cmux(6, 0, 1),
2617 Node::Cmux(6, 2, 0),
2618 Node::None,
2619 Node::Copy,
2620 Node::Copy,
2621 Node::Cmux(37, 0, 1),
2622 Node::None,
2623 Node::Cmux(5, 1, 2),
2624 Node::Cmux(5, 2, 0),
2625 Node::Cmux(36, 2, 1),
2626 Node::Copy,
2627 Node::Copy,
2628 Node::None,
2629 Node::Cmux(4, 0, 2),
2630 Node::Cmux(4, 1, 0),
2631 Node::Cmux(35, 1, 2),
2632 Node::Copy,
2633 Node::Copy,
2634 Node::Cmux(3, 2, 0),
2635 Node::Cmux(3, 0, 1),
2636 Node::None,
2637 Node::Copy,
2638 Node::Copy,
2639 Node::Cmux(34, 1, 0),
2640 Node::Cmux(2, 0, 2),
2641 Node::None,
2642 Node::Cmux(2, 2, 1),
2643 Node::Copy,
2644 Node::Cmux(33, 2, 0),
2645 Node::Copy,
2646 Node::Cmux(1, 0, 1),
2647 Node::None,
2648 Node::Cmux(1, 1, 2),
2649 Node::Copy,
2650 Node::Cmux(32, 2, 0),
2651 Node::None,
2652 Node::Cmux(0, 0, 1),
2653 Node::None,
2654 Node::None,
2655 ],
2656 3,
2657 )),
2658 AnyBitCircuit::B28(BitCircuit::new(
2659 [
2660 Node::None,
2661 Node::Cmux(60, 0, 1),
2662 Node::Cmux(60, 1, 0),
2663 Node::Cmux(28, 1, 2),
2664 Node::None,
2665 Node::Cmux(28, 2, 1),
2666 Node::Copy,
2667 Node::Cmux(59, 2, 0),
2668 Node::Copy,
2669 Node::Cmux(27, 1, 2),
2670 Node::None,
2671 Node::Cmux(27, 0, 1),
2672 Node::Copy,
2673 Node::Cmux(58, 0, 2),
2674 Node::Copy,
2675 Node::None,
2676 Node::Cmux(26, 1, 0),
2677 Node::Cmux(26, 2, 1),
2678 Node::Cmux(57, 1, 2),
2679 Node::Copy,
2680 Node::Copy,
2681 Node::None,
2682 Node::Cmux(25, 0, 1),
2683 Node::Cmux(25, 2, 0),
2684 Node::Cmux(56, 1, 2),
2685 Node::Copy,
2686 Node::Copy,
2687 Node::Cmux(24, 0, 1),
2688 Node::None,
2689 Node::Cmux(24, 2, 0),
2690 Node::Copy,
2691 Node::Cmux(55, 0, 2),
2692 Node::Copy,
2693 Node::Cmux(23, 2, 1),
2694 Node::Cmux(23, 1, 0),
2695 Node::None,
2696 Node::Copy,
2697 Node::Copy,
2698 Node::Cmux(54, 1, 0),
2699 Node::Cmux(22, 2, 1),
2700 Node::None,
2701 Node::Cmux(22, 0, 2),
2702 Node::Copy,
2703 Node::Cmux(53, 0, 2),
2704 Node::Copy,
2705 Node::None,
2706 Node::Cmux(21, 2, 1),
2707 Node::Cmux(21, 1, 0),
2708 Node::Cmux(52, 2, 1),
2709 Node::Copy,
2710 Node::Copy,
2711 Node::Cmux(20, 0, 2),
2712 Node::Cmux(20, 1, 0),
2713 Node::None,
2714 Node::Copy,
2715 Node::Copy,
2716 Node::Cmux(51, 0, 1),
2717 Node::Cmux(19, 1, 2),
2718 Node::None,
2719 Node::Cmux(19, 2, 0),
2720 Node::Copy,
2721 Node::Cmux(50, 2, 0),
2722 Node::Copy,
2723 Node::None,
2724 Node::Cmux(18, 0, 1),
2725 Node::Cmux(18, 1, 2),
2726 Node::Cmux(49, 2, 1),
2727 Node::Copy,
2728 Node::Copy,
2729 Node::None,
2730 Node::Cmux(17, 1, 0),
2731 Node::Cmux(17, 0, 2),
2732 Node::Cmux(48, 2, 1),
2733 Node::Copy,
2734 Node::Copy,
2735 Node::Cmux(16, 0, 2),
2736 Node::None,
2737 Node::Cmux(16, 1, 0),
2738 Node::Copy,
2739 Node::Cmux(47, 0, 2),
2740 Node::Copy,
2741 Node::Cmux(15, 2, 1),
2742 Node::None,
2743 Node::Cmux(15, 1, 0),
2744 Node::Copy,
2745 Node::Cmux(46, 2, 0),
2746 Node::Copy,
2747 Node::None,
2748 Node::Cmux(14, 1, 2),
2749 Node::Cmux(14, 0, 1),
2750 Node::Cmux(45, 1, 2),
2751 Node::Copy,
2752 Node::Copy,
2753 Node::Cmux(13, 0, 1),
2754 Node::None,
2755 Node::Cmux(13, 2, 0),
2756 Node::Copy,
2757 Node::Cmux(44, 0, 2),
2758 Node::Copy,
2759 Node::Cmux(12, 1, 0),
2760 Node::Cmux(12, 2, 1),
2761 Node::None,
2762 Node::Copy,
2763 Node::Copy,
2764 Node::Cmux(43, 0, 1),
2765 Node::Cmux(11, 1, 2),
2766 Node::None,
2767 Node::Cmux(11, 2, 0),
2768 Node::Copy,
2769 Node::Cmux(42, 2, 0),
2770 Node::Copy,
2771 Node::Cmux(10, 1, 2),
2772 Node::None,
2773 Node::Cmux(10, 0, 1),
2774 Node::Copy,
2775 Node::Cmux(41, 0, 2),
2776 Node::Copy,
2777 Node::Cmux(9, 2, 1),
2778 Node::None,
2779 Node::Cmux(9, 1, 0),
2780 Node::Copy,
2781 Node::Cmux(40, 2, 0),
2782 Node::Copy,
2783 Node::None,
2784 Node::Cmux(8, 0, 1),
2785 Node::Cmux(8, 1, 2),
2786 Node::Cmux(39, 2, 1),
2787 Node::Copy,
2788 Node::Copy,
2789 Node::Cmux(7, 1, 0),
2790 Node::Cmux(7, 0, 2),
2791 Node::None,
2792 Node::Copy,
2793 Node::Copy,
2794 Node::Cmux(38, 1, 0),
2795 Node::None,
2796 Node::Cmux(6, 2, 1),
2797 Node::Cmux(6, 0, 2),
2798 Node::Cmux(37, 1, 2),
2799 Node::Copy,
2800 Node::Copy,
2801 Node::None,
2802 Node::Cmux(5, 0, 1),
2803 Node::Cmux(5, 2, 0),
2804 Node::Cmux(36, 1, 2),
2805 Node::Copy,
2806 Node::Copy,
2807 Node::Cmux(4, 2, 0),
2808 Node::Cmux(4, 0, 1),
2809 Node::None,
2810 Node::Copy,
2811 Node::Copy,
2812 Node::Cmux(35, 1, 0),
2813 Node::Cmux(3, 2, 1),
2814 Node::Cmux(3, 0, 2),
2815 Node::None,
2816 Node::Copy,
2817 Node::Copy,
2818 Node::Cmux(34, 0, 1),
2819 Node::Cmux(2, 2, 0),
2820 Node::Cmux(2, 1, 2),
2821 Node::None,
2822 Node::Copy,
2823 Node::Copy,
2824 Node::Cmux(33, 0, 1),
2825 Node::Cmux(1, 2, 0),
2826 Node::Cmux(1, 1, 2),
2827 Node::None,
2828 Node::Cmux(32, 0, 1),
2829 Node::Copy,
2830 Node::None,
2831 Node::Cmux(0, 1, 0),
2832 Node::None,
2833 Node::None,
2834 ],
2835 3,
2836 )),
2837 AnyBitCircuit::B29(BitCircuit::new(
2838 [
2839 Node::Cmux(61, 1, 0),
2840 Node::Cmux(61, 0, 1),
2841 Node::None,
2842 Node::None,
2843 Node::Cmux(29, 0, 1),
2844 Node::Cmux(29, 1, 0),
2845 Node::Cmux(60, 1, 2),
2846 Node::Copy,
2847 Node::Copy,
2848 Node::Cmux(28, 0, 1),
2849 Node::Cmux(28, 2, 0),
2850 Node::None,
2851 Node::Copy,
2852 Node::Copy,
2853 Node::Cmux(59, 0, 1),
2854 Node::None,
2855 Node::Cmux(27, 1, 2),
2856 Node::Cmux(27, 2, 0),
2857 Node::Cmux(58, 2, 1),
2858 Node::Copy,
2859 Node::Copy,
2860 Node::None,
2861 Node::Cmux(26, 0, 2),
2862 Node::Cmux(26, 1, 0),
2863 Node::Cmux(57, 1, 2),
2864 Node::Copy,
2865 Node::Copy,
2866 Node::Cmux(25, 0, 1),
2867 Node::Cmux(25, 2, 0),
2868 Node::None,
2869 Node::Copy,
2870 Node::Copy,
2871 Node::Cmux(56, 0, 1),
2872 Node::Cmux(24, 1, 2),
2873 Node::None,
2874 Node::Cmux(24, 2, 0),
2875 Node::Copy,
2876 Node::Cmux(55, 2, 0),
2877 Node::Copy,
2878 Node::Cmux(23, 1, 2),
2879 Node::Cmux(23, 0, 1),
2880 Node::None,
2881 Node::Copy,
2882 Node::Copy,
2883 Node::Cmux(54, 0, 1),
2884 Node::None,
2885 Node::Cmux(22, 2, 0),
2886 Node::Cmux(22, 1, 2),
2887 Node::Cmux(53, 1, 2),
2888 Node::Copy,
2889 Node::Copy,
2890 Node::None,
2891 Node::Cmux(21, 0, 1),
2892 Node::Cmux(21, 2, 0),
2893 Node::Cmux(52, 1, 2),
2894 Node::Copy,
2895 Node::Copy,
2896 Node::Cmux(20, 0, 1),
2897 Node::Cmux(20, 2, 0),
2898 Node::None,
2899 Node::Copy,
2900 Node::Copy,
2901 Node::Cmux(51, 0, 1),
2902 Node::Cmux(19, 1, 2),
2903 Node::Cmux(19, 2, 0),
2904 Node::None,
2905 Node::Copy,
2906 Node::Copy,
2907 Node::Cmux(50, 1, 0),
2908 Node::Cmux(18, 2, 1),
2909 Node::None,
2910 Node::Cmux(18, 0, 2),
2911 Node::Copy,
2912 Node::Cmux(49, 0, 2),
2913 Node::Copy,
2914 Node::Cmux(17, 2, 1),
2915 Node::Cmux(17, 1, 0),
2916 Node::None,
2917 Node::Copy,
2918 Node::Copy,
2919 Node::Cmux(48, 1, 0),
2920 Node::Cmux(16, 0, 2),
2921 Node::None,
2922 Node::Cmux(16, 2, 1),
2923 Node::Copy,
2924 Node::Cmux(47, 2, 0),
2925 Node::Copy,
2926 Node::None,
2927 Node::Cmux(15, 1, 2),
2928 Node::Cmux(15, 0, 1),
2929 Node::Cmux(46, 1, 2),
2930 Node::Copy,
2931 Node::Copy,
2932 Node::None,
2933 Node::Cmux(14, 0, 1),
2934 Node::Cmux(14, 2, 0),
2935 Node::Cmux(45, 1, 2),
2936 Node::Copy,
2937 Node::Copy,
2938 Node::Cmux(13, 0, 1),
2939 Node::Cmux(13, 2, 0),
2940 Node::None,
2941 Node::Copy,
2942 Node::Copy,
2943 Node::Cmux(44, 0, 1),
2944 Node::Cmux(12, 1, 2),
2945 Node::None,
2946 Node::Cmux(12, 2, 0),
2947 Node::Copy,
2948 Node::Cmux(43, 2, 0),
2949 Node::Copy,
2950 Node::None,
2951 Node::Cmux(11, 0, 1),
2952 Node::Cmux(11, 1, 2),
2953 Node::Cmux(42, 2, 1),
2954 Node::Copy,
2955 Node::Copy,
2956 Node::Cmux(10, 1, 0),
2957 Node::Cmux(10, 0, 2),
2958 Node::None,
2959 Node::Copy,
2960 Node::Copy,
2961 Node::Cmux(41, 1, 0),
2962 Node::Cmux(9, 0, 2),
2963 Node::None,
2964 Node::Cmux(9, 2, 1),
2965 Node::Copy,
2966 Node::Cmux(40, 2, 0),
2967 Node::Copy,
2968 Node::Cmux(8, 1, 2),
2969 Node::Cmux(8, 0, 1),
2970 Node::None,
2971 Node::Copy,
2972 Node::Copy,
2973 Node::Cmux(39, 0, 1),
2974 Node::None,
2975 Node::Cmux(7, 2, 0),
2976 Node::Cmux(7, 1, 2),
2977 Node::Cmux(38, 1, 2),
2978 Node::Copy,
2979 Node::Copy,
2980 Node::None,
2981 Node::Cmux(6, 0, 1),
2982 Node::Cmux(6, 2, 0),
2983 Node::Cmux(37, 1, 2),
2984 Node::Copy,
2985 Node::Copy,
2986 Node::Cmux(5, 0, 1),
2987 Node::None,
2988 Node::Cmux(5, 2, 0),
2989 Node::Copy,
2990 Node::Cmux(36, 0, 2),
2991 Node::Copy,
2992 Node::None,
2993 Node::Cmux(4, 2, 1),
2994 Node::Cmux(4, 1, 0),
2995 Node::Cmux(35, 2, 1),
2996 Node::Copy,
2997 Node::Copy,
2998 Node::Cmux(3, 0, 2),
2999 Node::None,
3000 Node::Cmux(3, 1, 0),
3001 Node::Copy,
3002 Node::Cmux(34, 0, 2),
3003 Node::Copy,
3004 Node::Cmux(2, 2, 1),
3005 Node::None,
3006 Node::Cmux(2, 1, 0),
3007 Node::Copy,
3008 Node::Cmux(33, 2, 0),
3009 Node::Copy,
3010 Node::Cmux(1, 0, 1),
3011 Node::Cmux(1, 1, 2),
3012 Node::None,
3013 Node::Copy,
3014 Node::None,
3015 Node::Cmux(32, 1, 0),
3016 Node::Cmux(0, 0, 2),
3017 Node::None,
3018 Node::None,
3019 ],
3020 3,
3021 )),
3022 AnyBitCircuit::B30(BitCircuit::new(
3023 [
3024 Node::Cmux(62, 0, 1),
3025 Node::None,
3026 Node::Cmux(62, 1, 0),
3027 Node::Cmux(30, 0, 2),
3028 Node::Cmux(30, 2, 0),
3029 Node::None,
3030 Node::Copy,
3031 Node::Copy,
3032 Node::Cmux(61, 1, 0),
3033 Node::Cmux(29, 0, 2),
3034 Node::None,
3035 Node::Cmux(29, 2, 1),
3036 Node::Copy,
3037 Node::Cmux(60, 2, 0),
3038 Node::Copy,
3039 Node::Cmux(28, 0, 1),
3040 Node::Cmux(28, 1, 2),
3041 Node::None,
3042 Node::Copy,
3043 Node::Copy,
3044 Node::Cmux(59, 1, 0),
3045 Node::Cmux(27, 0, 2),
3046 Node::Cmux(27, 2, 1),
3047 Node::None,
3048 Node::Copy,
3049 Node::Copy,
3050 Node::Cmux(58, 1, 0),
3051 Node::Cmux(26, 2, 1),
3052 Node::Cmux(26, 0, 2),
3053 Node::None,
3054 Node::Copy,
3055 Node::Copy,
3056 Node::Cmux(57, 0, 1),
3057 Node::None,
3058 Node::Cmux(25, 2, 0),
3059 Node::Cmux(25, 1, 2),
3060 Node::Cmux(56, 1, 2),
3061 Node::Copy,
3062 Node::Copy,
3063 Node::Cmux(24, 2, 0),
3064 Node::None,
3065 Node::Cmux(24, 0, 1),
3066 Node::Copy,
3067 Node::Cmux(55, 2, 0),
3068 Node::Copy,
3069 Node::None,
3070 Node::Cmux(23, 1, 2),
3071 Node::Cmux(23, 0, 1),
3072 Node::Cmux(54, 1, 2),
3073 Node::Copy,
3074 Node::Copy,
3075 Node::None,
3076 Node::Cmux(22, 0, 1),
3077 Node::Cmux(22, 2, 0),
3078 Node::Cmux(53, 1, 2),
3079 Node::Copy,
3080 Node::Copy,
3081 Node::Cmux(21, 0, 1),
3082 Node::Cmux(21, 2, 0),
3083 Node::None,
3084 Node::Copy,
3085 Node::Copy,
3086 Node::Cmux(52, 0, 1),
3087 Node::Cmux(20, 2, 0),
3088 Node::Cmux(20, 1, 2),
3089 Node::None,
3090 Node::Copy,
3091 Node::Copy,
3092 Node::Cmux(51, 0, 1),
3093 Node::Cmux(19, 1, 2),
3094 Node::None,
3095 Node::Cmux(19, 2, 0),
3096 Node::Copy,
3097 Node::Cmux(50, 2, 0),
3098 Node::Copy,
3099 Node::Cmux(18, 1, 2),
3100 Node::Cmux(18, 0, 1),
3101 Node::None,
3102 Node::Copy,
3103 Node::Copy,
3104 Node::Cmux(49, 0, 1),
3105 Node::Cmux(17, 1, 2),
3106 Node::Cmux(17, 2, 0),
3107 Node::None,
3108 Node::Copy,
3109 Node::Copy,
3110 Node::Cmux(48, 1, 0),
3111 Node::Cmux(16, 2, 1),
3112 Node::None,
3113 Node::Cmux(16, 0, 2),
3114 Node::Copy,
3115 Node::Cmux(47, 0, 2),
3116 Node::Copy,
3117 Node::Cmux(15, 1, 0),
3118 Node::None,
3119 Node::Cmux(15, 2, 1),
3120 Node::Copy,
3121 Node::Cmux(46, 0, 2),
3122 Node::Copy,
3123 Node::Cmux(14, 2, 1),
3124 Node::Cmux(14, 1, 0),
3125 Node::None,
3126 Node::Copy,
3127 Node::Copy,
3128 Node::Cmux(45, 1, 0),
3129 Node::Cmux(13, 2, 1),
3130 Node::None,
3131 Node::Cmux(13, 0, 2),
3132 Node::Copy,
3133 Node::Cmux(44, 0, 2),
3134 Node::Copy,
3135 Node::Cmux(12, 2, 1),
3136 Node::Cmux(12, 1, 0),
3137 Node::None,
3138 Node::Copy,
3139 Node::Copy,
3140 Node::Cmux(43, 1, 0),
3141 Node::Cmux(11, 0, 2),
3142 Node::Cmux(11, 2, 1),
3143 Node::None,
3144 Node::Copy,
3145 Node::Copy,
3146 Node::Cmux(42, 1, 0),
3147 Node::None,
3148 Node::Cmux(10, 2, 1),
3149 Node::Cmux(10, 0, 2),
3150 Node::Cmux(41, 1, 2),
3151 Node::Copy,
3152 Node::Copy,
3153 Node::Cmux(9, 0, 1),
3154 Node::Cmux(9, 2, 0),
3155 Node::None,
3156 Node::Copy,
3157 Node::Copy,
3158 Node::Cmux(40, 0, 1),
3159 Node::Cmux(8, 1, 2),
3160 Node::Cmux(8, 2, 0),
3161 Node::None,
3162 Node::Copy,
3163 Node::Copy,
3164 Node::Cmux(39, 1, 0),
3165 Node::Cmux(7, 2, 1),
3166 Node::Cmux(7, 0, 2),
3167 Node::None,
3168 Node::Copy,
3169 Node::Copy,
3170 Node::Cmux(38, 0, 1),
3171 Node::Cmux(6, 2, 0),
3172 Node::None,
3173 Node::Cmux(6, 1, 2),
3174 Node::Copy,
3175 Node::Cmux(37, 0, 2),
3176 Node::Copy,
3177 Node::None,
3178 Node::Cmux(5, 2, 1),
3179 Node::Cmux(5, 1, 0),
3180 Node::Cmux(36, 2, 1),
3181 Node::Copy,
3182 Node::Copy,
3183 Node::None,
3184 Node::Cmux(4, 1, 0),
3185 Node::Cmux(4, 0, 2),
3186 Node::Cmux(35, 2, 1),
3187 Node::Copy,
3188 Node::Copy,
3189 Node::Cmux(3, 1, 0),
3190 Node::Cmux(3, 0, 2),
3191 Node::None,
3192 Node::Copy,
3193 Node::Copy,
3194 Node::Cmux(34, 1, 0),
3195 Node::None,
3196 Node::Cmux(2, 2, 1),
3197 Node::Cmux(2, 0, 2),
3198 Node::Cmux(33, 1, 2),
3199 Node::Copy,
3200 Node::Copy,
3201 Node::Cmux(1, 0, 1),
3202 Node::Cmux(1, 2, 0),
3203 Node::None,
3204 Node::None,
3205 Node::Copy,
3206 Node::Cmux(32, 0, 1),
3207 Node::Cmux(0, 1, 2),
3208 Node::None,
3209 Node::None,
3210 ],
3211 3,
3212 )),
3213 AnyBitCircuit::B31(BitCircuit::new(
3214 [
3215 Node::None,
3216 Node::Cmux(63, 1, 0),
3217 Node::Cmux(63, 0, 1),
3218 Node::Cmux(31, 1, 2),
3219 Node::Cmux(31, 2, 1),
3220 Node::None,
3221 Node::Copy,
3222 Node::Copy,
3223 Node::Cmux(62, 0, 1),
3224 Node::Cmux(30, 2, 0),
3225 Node::None,
3226 Node::Cmux(30, 1, 2),
3227 Node::Copy,
3228 Node::Cmux(61, 0, 2),
3229 Node::Copy,
3230 Node::Cmux(29, 1, 0),
3231 Node::Cmux(29, 2, 1),
3232 Node::None,
3233 Node::Copy,
3234 Node::Copy,
3235 Node::Cmux(60, 0, 1),
3236 Node::Cmux(28, 2, 0),
3237 Node::None,
3238 Node::Cmux(28, 1, 2),
3239 Node::Copy,
3240 Node::Cmux(59, 0, 2),
3241 Node::Copy,
3242 Node::Cmux(27, 2, 1),
3243 Node::Cmux(27, 1, 0),
3244 Node::None,
3245 Node::Copy,
3246 Node::Copy,
3247 Node::Cmux(58, 1, 0),
3248 Node::Cmux(26, 2, 1),
3249 Node::Cmux(26, 0, 2),
3250 Node::None,
3251 Node::Copy,
3252 Node::Copy,
3253 Node::Cmux(57, 0, 1),
3254 Node::Cmux(25, 1, 2),
3255 Node::Cmux(25, 2, 0),
3256 Node::None,
3257 Node::Copy,
3258 Node::Copy,
3259 Node::Cmux(56, 1, 0),
3260 Node::Cmux(24, 2, 1),
3261 Node::None,
3262 Node::Cmux(24, 0, 2),
3263 Node::Copy,
3264 Node::Cmux(55, 0, 2),
3265 Node::Copy,
3266 Node::Cmux(23, 1, 0),
3267 Node::Cmux(23, 2, 1),
3268 Node::None,
3269 Node::Copy,
3270 Node::Copy,
3271 Node::Cmux(54, 0, 1),
3272 Node::Cmux(22, 1, 2),
3273 Node::Cmux(22, 2, 0),
3274 Node::None,
3275 Node::Copy,
3276 Node::Copy,
3277 Node::Cmux(53, 1, 0),
3278 Node::Cmux(21, 0, 2),
3279 Node::Cmux(21, 2, 1),
3280 Node::None,
3281 Node::Copy,
3282 Node::Copy,
3283 Node::Cmux(52, 1, 0),
3284 Node::None,
3285 Node::Cmux(20, 0, 2),
3286 Node::Cmux(20, 2, 1),
3287 Node::Cmux(51, 2, 1),
3288 Node::Copy,
3289 Node::Copy,
3290 Node::Cmux(19, 0, 2),
3291 Node::None,
3292 Node::Cmux(19, 1, 0),
3293 Node::Copy,
3294 Node::Cmux(50, 0, 2),
3295 Node::Copy,
3296 Node::Cmux(18, 2, 1),
3297 Node::None,
3298 Node::Cmux(18, 1, 0),
3299 Node::Copy,
3300 Node::Cmux(49, 2, 0),
3301 Node::Copy,
3302 Node::None,
3303 Node::Cmux(17, 1, 2),
3304 Node::Cmux(17, 0, 1),
3305 Node::Cmux(48, 1, 2),
3306 Node::Copy,
3307 Node::Copy,
3308 Node::Cmux(16, 2, 0),
3309 Node::Cmux(16, 0, 1),
3310 Node::None,
3311 Node::Copy,
3312 Node::Copy,
3313 Node::Cmux(47, 1, 0),
3314 Node::Cmux(15, 0, 2),
3315 Node::None,
3316 Node::Cmux(15, 2, 1),
3317 Node::Copy,
3318 Node::Cmux(46, 2, 0),
3319 Node::Copy,
3320 Node::None,
3321 Node::Cmux(14, 0, 1),
3322 Node::Cmux(14, 1, 2),
3323 Node::Cmux(45, 2, 1),
3324 Node::Copy,
3325 Node::Copy,
3326 Node::Cmux(13, 0, 2),
3327 Node::Cmux(13, 1, 0),
3328 Node::None,
3329 Node::Copy,
3330 Node::Copy,
3331 Node::Cmux(44, 0, 1),
3332 Node::Cmux(12, 1, 2),
3333 Node::Cmux(12, 2, 0),
3334 Node::None,
3335 Node::Copy,
3336 Node::Copy,
3337 Node::Cmux(43, 1, 0),
3338 Node::Cmux(11, 2, 1),
3339 Node::None,
3340 Node::Cmux(11, 0, 2),
3341 Node::Copy,
3342 Node::Cmux(42, 0, 2),
3343 Node::Copy,
3344 Node::Cmux(10, 1, 0),
3345 Node::Cmux(10, 2, 1),
3346 Node::None,
3347 Node::Copy,
3348 Node::Copy,
3349 Node::Cmux(41, 0, 1),
3350 Node::None,
3351 Node::Cmux(9, 2, 0),
3352 Node::Cmux(9, 1, 2),
3353 Node::Cmux(40, 1, 2),
3354 Node::Copy,
3355 Node::Copy,
3356 Node::Cmux(8, 0, 1),
3357 Node::None,
3358 Node::Cmux(8, 2, 0),
3359 Node::Copy,
3360 Node::Cmux(39, 0, 2),
3361 Node::Copy,
3362 Node::Cmux(7, 1, 0),
3363 Node::Cmux(7, 2, 1),
3364 Node::None,
3365 Node::Copy,
3366 Node::Copy,
3367 Node::Cmux(38, 0, 1),
3368 Node::Cmux(6, 1, 2),
3369 Node::Cmux(6, 2, 0),
3370 Node::None,
3371 Node::Copy,
3372 Node::Copy,
3373 Node::Cmux(37, 1, 0),
3374 Node::Cmux(5, 0, 2),
3375 Node::Cmux(5, 2, 1),
3376 Node::None,
3377 Node::Copy,
3378 Node::Copy,
3379 Node::Cmux(36, 1, 0),
3380 Node::None,
3381 Node::Cmux(4, 2, 1),
3382 Node::Cmux(4, 0, 2),
3383 Node::Cmux(35, 1, 2),
3384 Node::Copy,
3385 Node::Copy,
3386 Node::None,
3387 Node::Cmux(3, 2, 0),
3388 Node::Cmux(3, 0, 1),
3389 Node::Cmux(34, 2, 1),
3390 Node::Copy,
3391 Node::Copy,
3392 Node::Cmux(2, 0, 2),
3393 Node::Cmux(2, 1, 0),
3394 Node::None,
3395 Node::Copy,
3396 Node::Copy,
3397 Node::Cmux(33, 0, 1),
3398 Node::Cmux(1, 1, 2),
3399 Node::None,
3400 Node::Cmux(1, 2, 0),
3401 Node::Copy,
3402 Node::Cmux(32, 2, 0),
3403 Node::None,
3404 Node::Cmux(0, 0, 1),
3405 Node::None,
3406 Node::None,
3407 ],
3408 3,
3409 )),
3410]);