public long MapPosition(long pos)
        {
            long vcn        = pos / _bytesPerCluster;
            int  dataRunIdx = _cookedRuns.FindDataRun(vcn, 0);

            if (_cookedRuns[dataRunIdx].IsSparse)
            {
                return(-1);
            }
            return(_cookedRuns[dataRunIdx].StartLcn * _bytesPerCluster +
                   (pos - _cookedRuns[dataRunIdx].StartVcn * _bytesPerCluster));
        }
        public override bool IsClusterStored(long vcn)
        {
            int runIdx = _cookedRuns.FindDataRun(vcn, 0);

            return(!_cookedRuns[runIdx].IsSparse);
        }