add do-mode