this function only takes 1 arg, remove defaultListener