code: public int decodeHeader(ByteArrayInputStream bis) throws ParameterException {
          if (bis.available() == 0) {
              throw new ParameterException("No more data to read.");
          }
          int b = bis.read() & 0xff;
  
          this.oddFlag = (b & 0x80) >> 7;
  
          return 1;
      }
docs: This method is used in constructor that takes byte[] or ByteArrayInputStream as parameter. Decodes header part (its 1 or
  2 bytes usually.) Default implemetnation decodes header of one byte - where most significant bit is O/E indicator and
  bits 7-1 are NAI. This method should be over
  
  @param bis
  @return - number of bytes reads
  @throws IllegalArgumentException - thrown if read error is encountered.