public virtual int IndexOf(Object key)
{
if (key == null)
throw new ArgumentNullException(nameof(key), SR.ArgumentNull_Key);
Contract.EndContractBlock();
int i = Array.BinarySearch(_sortedList._keys, 0,
_sortedList.Count, key, _sortedList._comparer);
if (i >= 0) return i;
return -1;
}