text: public override V put(K key, V value){if ((object)key == null){return putValueForNullKey(value);}int hash = secondaryHash(key.GetHashCode());java.util.HashMap.HashMapEntry<K, V>[] tab = table;int index = hash & (tab.Length - 1);{for (java.util.HashMap.HashMapEntry<K, V> e = tab[index]; e != null; e = e.next){if (e.hash == hash && key.Equals(e.key)){preModify(e);V oldValue = e.value;e.value = value;return oldValue;}}}modCount++;if (_size++ > threshold){tab = doubleCapacity();index = hash & (tab.Length - 1);}addNewEntry(key, value, hash, index);return default(V);}