private Explanation(boolean match,float value,String description,Collection<Explanation> details){
  this.match=match;
  this.value=value;
  this.description=Objects.requireNonNull(description);
  this.details=Collections.unmodifiableList(new ArrayList<>(details));
  for (  Explanation detail : details) {
    Objects.requireNonNull(detail);
  }
}

private Explanation ( boolean match , float value , String description , Collection < Explanation > details ) { this . match = match ; this . value = value ; this . description = Objects . requireNonNull ( description ) ; this . details = Collections . unmodifiableList ( new ArrayList < > ( details ) ) ; for ( Explanation detail : details ) { Objects . requireNonNull ( detail ) ; } }
create a new explanation
