Listen should not return error, initial error should be returned lazily as well as other errors.