code: func (c *SolverManager) SetDNS01Provider(p challenge.Provider, opts ...dns01.ChallengeOption) error {
  	c.solvers[challenge.DNS01] = dns01.NewChallenge(c.core, validate, p, opts...)
  	return nil
  }
docs: // SetDNS01Provider specifies a custom provider p that can solve the given DNS-01 challenge.