code: func (f ServiceFlag) String() string {
  	// No flags are set.
  	if f == 0 {
  		return "0x0"
  	}
  
  	// Add individual bit flags.
  	s := ""
  	for _, flag := range orderedSFStrings {
  		if f&flag == flag {
  			s += sfStrings[flag] + "|"
  			f -= flag
  		}
  	}
  
  	// Add any remaining flags which aren't accounted for as hex.
  	s = strings.TrimRight(s, "|")
  	if f != 0 {
  		s += "|0x" + strconv.FormatUint(uint64(f), 16)
  	}
  	s = strings.TrimLeft(s, "|")
  	return s
  }
docs: // String returns the ServiceFlag in human-readable form.