revert pattern