add explicit checking