rendered paste bodymodule s3(o, y, x1, x2, os);
output o, y;
input x1,x2,os;
wire t1, t2, nos, z1,z2,z3, z4, a1, a2, a3;
not(t1, x1);
not(t2, x2);
not(nos, os);
and(z1, x1, t2, nos);
and(z2, t1, x2, nos);
and(z3, t1, t2, os);
and(z4, x1, x2, os);
or(y, z1, z2, z3, z4);
and(a1, x1, x2);
and(a2, t1, x2, os);
and(a3, x1, t2, os);
or(o, a1, a2, a3);
endmodule
module neg(y1, y2, y3, x1,x2,x3);
output y1,y2,y3;
input x1, x2, x3;
wire t1, t2, t3, o1,o2,o3, z1, zero, one;
not(z1, x1);
and(zero, z1, x1);
not(one, zero);
not(t1,x1);
not(t2,x2);
not(t3,x3);
s3 xxx(o1, y3, t3, one, zero);
s3 xxx(o2, y2, t2, zero, o1);
s3 xxx(o3, y1, t1, zero, o2);
endmodule
module main(y1,y2,y3,y4,y5,x1,x2,x3,x4,x5,x6,x7,x8);
output y1, y2,y3,y4,y5;
input x1,x2,x3,x4,x5,x6,x7,x8;
wire z1, zero, o1, o2,o3,o4,o5;
not(z1, x1);
and(zero, z1, x1);
s3 xxx(o1, y5, x4, x8, zero);
s3 xxx(o2, y4, x3, x7, o1);
s3 xxx(o3, y3, x2, x6, o2);
s3 xxx(y1, y2, x1, x5, o3);
endmodule
module s3(o, y, x1, x2, os);
output o, y;
input x1,x2,os;
wire t1, t2, nos, z1,z2,z3, z4, a1, a2, a3;
not(t1, x1);
not(t2, x2);
not(nos, os);
and(z1, x1, t2, nos);
and(z2, t1, x2, nos);
and(z3, t1, t2, os);
and(z4, x1, x2, os);
or(y, z1, z2, z3, z4);
and(a1, x1, x2);
and(a2, t1, x2, os);
and(a3, x1, t2, os);
or(o, a1, a2, a3);
endmodule
//=================================================================================
module neg(y0, y1, y2, y3, y4, y5, y6, y7, y8, x0, x1, x2, x3, x4, x5, x6, x7, x8);
output y0, y1, y2, y3, y4, y5, y6, y7, y8;
input x0, x1, x2, x3, x4, x5, x6, x7, x8;
wire t0, t1, t2, t3, t4,t5,t6,t7,t8, o1,o2,o3,o4,o5,o6,o7,o8,o9, zero, one;
not(z1, x1);
and(zero, z1, x1);
not(one, zero);
assign t0 = ~x0;
assign t1 = ~x1;
assign t2 = ~x2;
assign t3 = ~x3;
assign t4 = ~x4;
assign t5 = ~x5;
assign t6 = ~x6;
assign t7 = ~x7;
assign t8 = ~x8;
s3 xxx(o1, y8, t8, one, zero);
s3 xxx(o2, y7, t7, zero, o1);
s3 xxx(o3, y6, t6, zero, o2);
s3 xxx(o4, y5, t5, zero, o3);
s3 xxx(o5, y4, t4, zero, o4);
s3 xxx(o6, y3, t3, zero, o5);
s3 xxx(o7, y2, t2, zero, o6);
s3 xxx(o8, y1, t1, zero, o7);
s3 xxx(o9, y0, t0, zero, o8);
endmodule
module main(y0, y1, y2, y3, y4, y5, y6, y7, y8, a0, a1, a2, a3, a4, a5, a6, a7, a8, b0, b1, b2, b3, b4, b5, b6, b7, b8);
output y0, y1, y2, y3, y4, y5, y6, y7, y8;
input a0, a1, a2, a3, a4, a5, a6, a7, a8, b0, b1, b2, b3, b4, b5, b6, b7, b8;
wire z1, zero, o1,o2,o3,o4,o5,o6,o7,o8,o9;
not(z1, x1);
and(zero, z1, x1);
s3 xxx(o1, y8, a8, b8, zero);
s3 xxx(o2, y7, a7, b7, o1);
s3 xxx(o3, y7, a6, b6, o2);
s3 xxx(o4, y7, a5, b5, o3);
s3 xxx(o5, y7, a4, b4, o4);
s3 xxx(o6, y7, a3, b3, o5);
s3 xxx(o7, y7, a2, b2, o6);
s3 xxx(o8, y7, a1, b1, o7);
s3 xxx(o9, y7, a0, b0, o8);
endmodule
module incr(y0, y1, y2, y3, y4, y5, y6, y7, y8, a0, a1, a2, a3, a4, a5, a6, a7, a8);
output y0, y1, y2, y3, y4, y5, y6, y7, y8;
input a0, a1, a2, a3, a4, a5, a6, a7, a8;
wire z1, one, zero, o1,o2,o3,o4,o5,o6,o7,o8,o9;
not(z1, x1);
and(zero, z1, x1);
or(zero, z1, x1);
main xxx(y0, y1, y2, y3, y4, y5, y6, y7, y8, a0, a1, a2, a3, a4, a5, a6, a7, a8, zero, zero, zero, zero, zero, zero, zero, zero, one);
endmodule
module s3gs(q, nq, s, c, r);
output q, nq;
input s, c, r;
assign q = ~(~(c&s) & nq);
assign nq = ~(~(c&r) & q);
endmodule
module dtri(q, nq, d, c);
output q, nq;
input d, c;
assign q = ~(~(c & d) & nq);
assign nq = ~(~(c & ~(c & d)) & q);
endmodule