rewrite machine
rewrite machine