code: func (ds *Domains) Set(str string) error {
  	fargs := func(c rune) bool {
  		return c == ',' || c == ';'
  	}
  
  	// get function
  	slice := strings.FieldsFunc(str, fargs)
  	if len(slice) < 1 {
  		return fmt.Errorf("parse error ACME.Domain. Unable to parse %s", str)
  	}
  
  	d := Domain{
  		Main: slice[0],
  	}
  
  	if len(slice) > 1 {
  		d.SANs = slice[1:]
  	}
  
  	*ds = append(*ds, d)
  	return nil
  }
docs: // Set []Domain