different approach revoke