Now listens for valid event as opposed to passing callback