code: @Override
      public Double reduce(List<Double> values) {
      	if(values == null || values.isEmpty()) {
      		return null;
      	}
      	
      	Stream<Double> stream = StreamSupport.stream(values.spliterator(), true);
      	if(stream.allMatch(o -> o == null)) {
      		stream.close();
      		return null;
      	}
      	stream.close();
      	
          double max = Double.NEGATIVE_INFINITY;
          for (Double value : values) {
              if (value == null) {
                  continue;
              }
  
              double candidate = value;
              if (candidate > max) {
                  max = candidate;
              }
          }
          return max;
      }
docs: ~ Methods **************************************************************************************************************************************