docs: public long getValueAtPercentile(final double percentile) {
          final double requestedPercentile = Math.min(percentile, 100.0); // Truncate down to 100%
          long countAtPercentile = (long)(((requestedPercentile / 100.0) * getTotalCount()) + 0.5); // round to nearest
          countAtPercentile = Math.max(countAtPercentile, 1); // Make sure we at least reach the first recorded entry
          long totalToCurrentIndex = 0;
          for (int i = 0; i < countsArrayLength; i++) {
              totalToCurrentIndex += getCountAtIndex(i);
              if (totalToCurrentIndex >= countAtPercentile) {
                  long valueAtIndex = valueFromIndex(i);
                  return (percentile == 0.0) ?
                          lowestEquivalentValue(valueAtIndex) :
                          highestEquivalentValue(valueAtIndex);
              }
          }
          return 0;
      }