code: private void readShortRepeatValues(int firstByte)
              throws IOException
      {
          // read the number of bytes occupied by the value
          int size = (firstByte >>> 3) & 0b0111;
          // #bytes are one off
          size += 1;
  
          // read the run length
          int length = firstByte & 0x07;
          // run lengths values are stored only after MIN_REPEAT value is met
          length += MIN_REPEAT_SIZE;
  
          // read the repeated value which is store using fixed bytes
          long val = bytesToLongBE(input, size);
  
          if (signed) {
              val = LongDecode.zigzagDecode(val);
          }
  
          // repeat the value for length times
          for (int i = 0; i < length; i++) {
              literals[numLiterals++] = val;
          }
      }
docs: This comes from the Apache Hive ORC code