code: func (c *Configuration) initACMEProvider() {
  	if c.ACME != nil {
  		c.ACME.CAServer = getSafeACMECAServer(c.ACME.CAServer)
  
  		if c.ACME.DNSChallenge != nil && c.ACME.HTTPChallenge != nil {
  			log.Warn("Unable to use DNS challenge and HTTP challenge at the same time. Fallback to DNS challenge.")
  			c.ACME.HTTPChallenge = nil
  		}
  
  		if c.ACME.DNSChallenge != nil && c.ACME.TLSChallenge != nil {
  			log.Warn("Unable to use DNS challenge and TLS challenge at the same time. Fallback to DNS challenge.")
  			c.ACME.TLSChallenge = nil
  		}
  
  		if c.ACME.HTTPChallenge != nil && c.ACME.TLSChallenge != nil {
  			log.Warn("Unable to use HTTP challenge and TLS challenge at the same time. Fallback to TLS challenge.")
  			c.ACME.HTTPChallenge = nil
  		}
  	}
  }
docs: // FIXME handle on new configuration ACME struct