public override Array ToArray(Type type)
{
if (type == null)
throw new ArgumentNullException(nameof(type));
Contract.EndContractBlock();
InternalUpdateRange();
Array array = Array.CreateInstance(type, _baseSize);
_baseList.CopyTo(_baseIndex, array, 0, _baseSize);
return array;
}