code: protected void setOffsetAndLength(long offset, int length) throws IOException {
  		this.offset = offset;
  		this.length = length;
  		this.position = 0;
  
  		if (subStream.position() != offset) {
  			subStream.seek(offset);
  		}
  	}
docs: This should be called from a subclass constructor, if offset or length
  are unknown at a time when SubIIMInputStream constructor is called. This
  method shouldn't be called more than once.
  
  @param offset
  byte offset
  @param length
  byte length
  @throws IOException
  if underlying stream can't be read