@B.add2
  @O #o #i o
  @I #o #i i
  @adder /Y #R #c #x #y
    @case_OOO #xs #ys #R /B.O ///R O xs ys
    @case_OOI #xs #ys #R /B.I ///R O xs ys
    @case_OIO #xs #ys #R /B.I ///R O xs ys
    @case_OII #xs #ys #R /B.O ///R I xs ys
    @case_IOO #xs #ys #R /B.I ///R O xs ys
    @case_IOI #xs #ys #R /B.O ///R I xs ys
    @case_IIO #xs #ys #R /B.O ///R I xs ys
    @case_III #xs #ys #R /B.I ///R I xs ys
    /////c
      #x //x
        #xs #y ///y /F.flip case_OOO /F.flip case_OOI xs
        #xs #y ///y /F.flip case_OIO /F.flip case_OII xs
      #x //x
        #xs #y ///y /F.flip case_IOO /F.flip case_IOI xs
        #xs #y ///y /F.flip case_IIO /F.flip case_III xs
      x y R
  /adder O
