Rewrite the whole thing