docs: public static int getWrappedValue(int value, int minValue, int maxValue) {
          if (minValue >= maxValue) {
              throw new IllegalArgumentException("MIN > MAX");
          }
  
          int wrapRange = maxValue - minValue + 1;
          value -= minValue;
  
          if (value >= 0) {
              return (value % wrapRange) + minValue;
          }
  
          int remByRange = (-value) % wrapRange;
  
          if (remByRange == 0) {
              return 0 + minValue;
          }
          return (wrapRange - remByRange) + minValue;
      }