embed the error message directly in program_exists