decoupled responder types