text: public override V get(object key){if (key == null){java.util.HashMap.HashMapEntry<K, V> e = entryForNullKey;return e == null ? default(V) : e.value;}int hash = key.GetHashCode();hash ^= ((int)(((uint)hash) >> 20)) ^ ((int)(((uint)hash) >> 12));hash ^= ((int)(((uint)hash) >> 7)) ^ ((int)(((uint)hash) >> 4));java.util.HashMap.HashMapEntry<K, V>[] tab = table;{for (java.util.HashMap.HashMapEntry<K, V> e_1 = tab[hash & (tab.Length - 1)]; e_1!= null; e_1 = e_1.next){K eKey = e_1.key;if (Sharpen.Util.Equals(eKey, key) || (e_1.hash == hash && key.Equals(eKey))){return e_1.value;}}}return default(V);}