add: expire listener