code: func (s *StateDB) IntermediateRoot(deleteEmptyObjects bool) common.Hash {
  	s.Finalise(deleteEmptyObjects)
  
  	// Track the amount of time wasted on hashing the account trie
  	if metrics.EnabledExpensive {
  		defer func(start time.Time) { s.AccountHashes += time.Since(start) }(time.Now())
  	}
  	return s.trie.Hash()
  }
docs: // IntermediateRoot computes the current root hash of the state trie.
  // It is called in between transactions to get the root hash that
  // goes into transaction receipts.