code: func (d *DNSProvider) CleanUp(domain, token, keyAuth string) error {
  	fqdn, _ := dns01.GetRecord(domain, keyAuth)
  
  	zone, err := dns01.FindZoneByFqdn(fqdn)
  	if err != nil {
  		return fmt.Errorf("joker: %v", err)
  	}
  
  	relative := getRelative(fqdn, zone)
  
  	if d.config.Debug {
  		log.Infof("[%s] joker: removing entry %q from zone %q", domain, relative, zone)
  	}
  
  	response, err := d.login()
  	if err != nil {
  		return formatResponseError(response, err)
  	}
  
  	defer func() {
  		// Try to logout in case of errors
  		_, _ = d.logout()
  	}()
  
  	response, err = d.getZone(zone)
  	if err != nil || response.StatusCode != 0 {
  		return formatResponseError(response, err)
  	}
  
  	dnsZone, modified := removeTxtEntryFromZone(response.Body, relative)
  	if modified {
  		response, err = d.putZone(zone, dnsZone)
  		if err != nil || response.StatusCode != 0 {
  			return formatResponseError(response, err)
  		}
  	}
  
  	response, err = d.logout()
  	if err != nil {
  		return formatResponseError(response, err)
  	}
  	return nil
  }
docs: // CleanUp removes a TXT record used for a previous DNS challenge.