add the event listeners in `init` once for all