refactor context's defer