rewrite 3