version rewrite