Refactor, account for double-parse bug in `update`