code: func ComputeHash(template *v1.PodTemplateSpec, collisionCount *int32) string {
  	podTemplateSpecHasher := fnv.New32a()
  	hashutil.DeepHashObject(podTemplateSpecHasher, *template)
  
  	// Add collisionCount in the hash if it exists.
  	if collisionCount != nil {
  		collisionCountBytes := make([]byte, 8)
  		binary.LittleEndian.PutUint32(collisionCountBytes, uint32(*collisionCount))
  		podTemplateSpecHasher.Write(collisionCountBytes)
  	}
  
  	return rand.SafeEncodeString(fmt.Sprint(podTemplateSpecHasher.Sum32()))
  }
docs: // ComputeHash returns a hash value calculated from pod template and
  // a collisionCount to avoid hash collision. The hash will be safe encoded to
  // avoid bad words.