curveStep :: String -> String
curveStep a = seq' $ a ++ "0" ++ b
  where
    b = (map swap . reverse) a
    swap c = case c of
        '0' -> '1'
        '1' -> '0'
        _ -> c
curveStep :: String -> String
curveStep a = seq' $ a ++ "0" ++ b
  where
    b = (map swap . reverse) a
    swap c = case c of
        '0' -> '1'
        '1' -> '0'
        _ -> c
curveStep a = seq' $ a ++ "0" ++ b
  where
    b = (map swap . reverse) a
    swap c = case c of
        '0' -> '1'
        '1' -> '0'
        _ -> c