code: func (a *AlgorithmChain) WeightingHits(
  	wordID int,
  	rank *Rank,
  ) float32 {
  	word := rank.Words[wordID]
  	qty := 0
  
  	for leftWordID, leftWordQty := range word.ConnectionLeft {
  		qty += rank.Words[leftWordID].Qty * leftWordQty
  	}
  
  	for rightWordID, rightWordQty := range word.ConnectionRight {
  		qty += rank.Words[rightWordID].Qty * rightWordQty
  	}
  
  	weight := float32(word.Qty) + (float32(qty))
  
  	return float32(weight)
  }
docs: // WeightingHits method ranks the words by their occurrence.