Refactor responder layer