code: public static Timer newTimer(MeterRegistry registry, String name, Iterable<Tag> tags) {
          requireNonNull(registry, "registry");
          requireNonNull(name, "name");
          requireNonNull(tags, "tags");
  
          final Duration maxExpectedValue =
                  Optional.ofNullable(distStatCfg.getMaximumExpectedValue())
                          .map(Duration::ofNanos).orElse(null);
          final Duration minExpectedValue =
                  Optional.ofNullable(distStatCfg.getMinimumExpectedValue())
                          .map(Duration::ofNanos).orElse(null);
  
          return Timer.builder(name)
                      .tags(tags)
                      .maximumExpectedValue(maxExpectedValue)
                      .minimumExpectedValue(minExpectedValue)
                      .publishPercentiles(distStatCfg.getPercentiles())
                      .publishPercentileHistogram(distStatCfg.isPercentileHistogram())
                      .distributionStatisticBufferLength(distStatCfg.getBufferLength())
                      .distributionStatisticExpiry(distStatCfg.getExpiry())
                      .register(registry);
      }
docs: Returns a newly-registered {@link Timer} configured by {@link #distributionStatisticConfig()}.