add bits1 bits2 = reverse . snd $ mapAccumL f 0 (zip (reverse bits1) (reverse bits2))
  where
    f carry (x, y) = let sum = x + y + carry
                     in (sum `div` 2, sum `mod` 2)
 Please repeat the request first, then give your response.
user