made method exist? and generate_name