code: func (m *ColonSeparatedMultimapStringString) Set(value string) error {
  	if m.Multimap == nil {
  		return fmt.Errorf("no target (nil pointer to map[string][]string)")
  	}
  	if !m.initialized || *m.Multimap == nil {
  		// clear default values, or allocate if no existing map
  		*m.Multimap = make(map[string][]string)
  		m.initialized = true
  	}
  	for _, pair := range strings.Split(value, ",") {
  		if len(pair) == 0 {
  			continue
  		}
  		kv := strings.SplitN(pair, ":", 2)
  		if len(kv) != 2 {
  			return fmt.Errorf("malformed pair, expect string:string")
  		}
  		k := strings.TrimSpace(kv[0])
  		v := strings.TrimSpace(kv[1])
  		(*m.Multimap)[k] = append((*m.Multimap)[k], v)
  	}
  	return nil
  }
docs: // Set implements github.com/spf13/pflag.Value