unRC :: (Context, ByteString) -> ST a -> ByteString ->  a
runRC (c,vars) (ST f) struct=
  case   f (Stat(c,struct,vars) ) of
      Right (Stat _, a) -> a
      Left (Error s) -> error s

runRC :: (Context, ByteString) -> ST a -> ByteString ->  a
runRC (c,vars) (ST f) struct=
  case   f (Stat(c,struct,vars) ) of
      Right (Stat _, a) -> a
      Left (Error s) -> error s
runRC (c,vars) (ST f) struct=
  case   f (Stat(c,struct,vars) ) of
      Right (Stat _, a) -> a
      Left (Error s) -> error s