code: func NewDNSProviderConfig(config *Config) (*DNSProvider, error) {
  	if config == nil {
  		return nil, errors.New("conoha: the configuration of the DNS provider is nil")
  	}
  
  	if config.TenantID == "" || config.Username == "" || config.Password == "" {
  		return nil, errors.New("conoha: some credentials information are missing")
  	}
  
  	auth := internal.Auth{
  		TenantID: config.TenantID,
  		PasswordCredentials: internal.PasswordCredentials{
  			Username: config.Username,
  			Password: config.Password,
  		},
  	}
  
  	client, err := internal.NewClient(config.Region, auth, config.HTTPClient)
  	if err != nil {
  		return nil, fmt.Errorf("conoha: failed to create client: %v", err)
  	}
  
  	return &DNSProvider{config: config, client: client}, nil
  }
docs: // NewDNSProviderConfig return a DNSProvider instance configured for ConoHa DNS.