generalize doge listening