private int get_prev_page(Page page) throws JOrbisException{
    long begin=offset; //!!!
    int ret;
    int offst=-1;
    while(offst==-1){
      begin-=CHUNKSIZE;
      if(begin<0)
        begin=0;
      seek_helper(begin);
      while(offset<begin+CHUNKSIZE){
        ret=get_next_page(page, begin+CHUNKSIZE-offset);
        if(ret==OV_EREAD){
          return OV_EREAD;
        }
        if(ret<0){
          if(offst==-1)
            throw new JOrbisException();
          break;
        }
        else{
          offst=ret;
        }
      }
    }
    seek_helper(offst); //!!!
    ret=get_next_page(page, CHUNKSIZE);
    if(ret<0){
      return OV_EFAULT;
    }
    return offst;
  }