need still to update addListener