implement Dialogue, SelfPacedDialogue