ensured proper event binding for listen / ignore