code: func (m *MVMap) Put(key, value []byte) {
  	hashKey := fnvHash64(key)
  	oldEntryAddr := m.hashTable[hashKey]
  	dataAddr := m.dataStore.put(key, value)
  	e := entry{
  		addr:   dataAddr,
  		keyLen: uint32(len(key)),
  		valLen: uint32(len(value)),
  		next:   oldEntryAddr,
  	}
  	newEntryAddr := m.entryStore.put(e)
  	m.hashTable[hashKey] = newEntryAddr
  	m.length++
  }
docs: // Put puts the key/value pairs to the MVMap, if the key already exists, old value will not be overwritten,
  // values are stored in a list.