code: func UniqueLowerNames(names []string) (unique []string) {
  	nameMap := make(map[string]int, len(names))
  	for _, name := range names {
  		nameMap[strings.ToLower(name)] = 1
  	}
  
  	unique = make([]string, 0, len(nameMap))
  	for name := range nameMap {
  		unique = append(unique, name)
  	}
  	sort.Strings(unique)
  	return
  }
docs: // UniqueLowerNames returns the set of all unique names in the input after all
  // of them are lowercased. The returned names will be in their lowercased form
  // and sorted alphabetically.