implement 'revert'