Oo rewrite