rewrites are fun