public override IEnumerable <T> ReadFrom(long index)
        {
            long chunkNumber         = index / chunkSize;
            IEnumerator <T[]> chunks = chunkList.ReadFrom(chunkNumber).GetEnumerator();

            T[] arrayChunk = null;
            while (index < count)
            {
                long numberInChunk = index % chunkSize;
                if (numberInChunk == 0 || arrayChunk == null)
                {
                    chunks.MoveNext();
                    arrayChunk = chunks.Current;
                }
                yield return(arrayChunk[numberInChunk]);

                index++;
            }
        }