code: func (az *Cloud) createOrUpdatePIPWithRetry(service *v1.Service, pipResourceGroup string, pip network.PublicIPAddress) error {
  	return wait.ExponentialBackoff(az.requestBackoff(), func() (bool, error) {
  		ctx, cancel := getContextWithCancel()
  		defer cancel()
  
  		resp, err := az.PublicIPAddressesClient.CreateOrUpdate(ctx, pipResourceGroup, *pip.Name, pip)
  		klog.V(10).Infof("PublicIPAddressesClient.CreateOrUpdate(%s, %s): end", pipResourceGroup, *pip.Name)
  		return az.processHTTPRetryResponse(service, "CreateOrUpdatePublicIPAddress", resp, err)
  	})
  }
docs: // createOrUpdatePIPWithRetry invokes az.PublicIPAddressesClient.CreateOrUpdate with exponential backoff retry