rewrite return