Define Two_Bit_Adder a[1..0] b[1..0] Ci | Co t[1..0];
 Full_Adder H3 a[1] b[1] Ca | Co t[1];
 Full_Adder H4 a[0] b[0] Ci | Ca t[0];
Endef;

Define Full_Adder ix iy iz | Carry Sum;
 Half_Adder 3m ix iy | C1 S1;
 Half_Adder 3o S1 iz | C2 Sum;
 Or         4n C1 C2 Carry;
Endef;

Define Half_Adder x y | C S;
 And 6s ONE x y C;
 Xor 7s x y S;
Endef;

/* ------------------------- */
Switch 1a x[1] ZERO;
Switch 1a x[0] ZERO;
Switch 3a y[1] ZERO;
Switch 3a y[0] ZERO;
/* Switch 3a Cin ZERO; */
/* Two_Bit_Adder 1b-3d x[1..0] y[1..0] Cin | Cout S[1..0]; */
Two_Bit_Adder 1b-3d x[1..0] y[1..0] ZERO | Cout S[1..0];
Probe 1e Cout;
Probe 2e S[1];
Probe 3e S[0];
