code: func DecodeClusterName(serverName string) (string, error) {
  	if serverName == teleport.APIDomain {
  		return "", trace.NotFound("no cluster name is encoded")
  	}
  	const suffix = "." + teleport.APIDomain
  	if !strings.HasSuffix(serverName, suffix) {
  		return "", trace.BadParameter("unrecognized name, expected suffix %v, got %q", teleport.APIDomain, serverName)
  	}
  	clusterName := strings.TrimSuffix(serverName, suffix)
  
  	decoded, err := hex.DecodeString(clusterName)
  	if err != nil {
  		return "", trace.BadParameter("failed to decode cluster name: %v", err)
  	}
  	return string(decoded), nil
  }
docs: // DecodeClusterName decodes cluster name, returns NotFound
  // if no cluster name is encoded (empty subdomain),
  // so servers can detect cases when no server name passed
  // returns BadParameter if encoding does not match