added RandomAccessFile part