WIP: Rough rewrite outline