code: func (c *ChainIndexer) AddChildIndexer(indexer *ChainIndexer) {
  	c.lock.Lock()
  	defer c.lock.Unlock()
  
  	c.children = append(c.children, indexer)
  
  	// Cascade any pending updates to new children too
  	sections := c.storedSections
  	if c.knownSections < sections {
  		// if a section is "stored" but not "known" then it is a checkpoint without
  		// available chain data so we should not cascade it yet
  		sections = c.knownSections
  	}
  	if sections > 0 {
  		indexer.newHead(sections*c.sectionSize-1, false)
  	}
  }
docs: // AddChildIndexer adds a child ChainIndexer that can use the output of this one