It's better to generate an error, since there is no identity to return. (i.e. return 0, errors.new("there is no generated identity value"))