add listener add & remove, machine add & remove