module  fa {
   input    a,b,ci ;
   output   sum,carry ;
   tmp      p,g ;
   instrin  do ;

   instruct do par {
      p = a & b ;
      g = a @ b ;
      sum = g @ ci ;
      carry = p | g & ci ;
      }
   }