code: final static int hash(Object k) {
  	if (k instanceof KeyImpl) return ((KeyImpl) k).slotForMap();
  	int h = 0;
  	/*
  	 * if (useAltHashing) { if (k instanceof String) { return Hashing.stringHash32((String) k); } h =
  	 * hashSeed; }
  	 */
  
  	h ^= k.hashCode();
  
  	// This function ensures that hashCodes that differ only by
  	// constant multiples at each bit position have a bounded
  	// number of collisions (approximately 8 at default load factor).
  	h ^= (h >>> 20) ^ (h >>> 12);
  	return h ^ (h >>> 7) ^ (h >>> 4);
      }
docs: Retrieve object hash code and applies a supplemental hash function to the result hash, which
  defends against poor quality hash functions. This is critical because HashMap uses power-of-two
  length hash tables, that otherwise encounter collisions for hashCodes that do not differ in lower
  bits. Note: Null keys always map to hash 0, thus index 0.