modified checkListener