docs: public static long makeReasonable(long expectedTimeoutMillis, long bufferMillis) {
          checkArgument(expectedTimeoutMillis > 0,
                        "expectedTimeoutMillis: %s (expected: > 0)", expectedTimeoutMillis);
          checkArgument(bufferMillis >= 0,
                        "bufferMillis: %s (expected: > 0)", bufferMillis);
  
          final long timeout = Math.min(expectedTimeoutMillis, MAX_MILLIS);
          if (bufferMillis == 0) {
              return timeout;
          }
  
          if (timeout > MAX_MILLIS - bufferMillis) {
              return MAX_MILLIS;
          } else {
              return bufferMillis + timeout;
          }
      }