code: func (m *HashMap) grow() {
  	// Copy old elements and hashes.
  	elems, hashes := m.elems, m.hashes
  	capacity := m.capacity
  
  	// Double capacity & reallocate.
  	m.capacity *= 2
  	m.alloc()
  
  	// Copy old elements to new hash/elem list.
  	for i := int64(0); i < capacity; i++ {
  		elem, hash := &elems[i], hashes[i]
  		if hash == 0 {
  			continue
  		}
  		m.insert(hash, elem.key, elem.value)
  	}
  }
docs: // grow doubles the capacity and reinserts all existing hashes & elements.