code: func (db *Database) accumulate(hash common.Hash, reachable map[common.Hash]struct{}) {
  	// Mark the node reachable if present in the memory cache
  	node, ok := db.dirties[hash]
  	if !ok {
  		return
  	}
  	reachable[hash] = struct{}{}
  
  	// Iterate over all the children and accumulate them too
  	for _, child := range node.childs() {
  		db.accumulate(child, reachable)
  	}
  }
docs: // accumulate iterates over the trie defined by hash and accumulates all the
  // cached children found in memory.