code: func getNewKeyToHandleDuplicates(key string, msg map[string]interface{}) string {
  	if _, ok := msg[key]; !ok {
  		return key
  	}
  
  	for i := 0; ; i++ {
  		newKey := key + "##" + strconv.Itoa(i)
  		if _, ok := msg[newKey]; !ok {
  			return newKey
  		}
  	}
  }
docs: // Since the original key chosen can have duplicates,
  // this function is used to map the original key to a new one
  // to make them unique.