@Override
  public int read() throws IOException {
    if (position < limit) {
      byte b = raf.get(position, checkAccess);
      position++;
      return b & 0xFF;
    }
    return -1;
  }
@Override
  public int read()