file position optional