docs: public int getIntValue(Keyframe<Integer> keyframe, float keyframeProgress) {
      if (keyframe.startValue == null || keyframe.endValue == null) {
        throw new IllegalStateException("Missing values for keyframe.");
      }
      int startColor = keyframe.startValue;
      int endColor = keyframe.endValue;
  
      if (valueCallback != null) {
        //noinspection ConstantConditions
        Integer value = valueCallback.getValueInternal(keyframe.startFrame, keyframe.endFrame, startColor,
                endColor, keyframeProgress, getLinearCurrentKeyframeProgress(), getProgress());
        if (value != null) {
          return value;
        }
      }
  
      return GammaEvaluator.evaluate(MiscUtils.clamp(keyframeProgress, 0f, 1f), startColor, endColor);
    }