code: func (c *Config) AddrParts(address string) (string, int, error) {
  	checkAddr := address
  
  START:
  	_, _, err := net.SplitHostPort(checkAddr)
  	if ae, ok := err.(*net.AddrError); ok && ae.Err == "missing port in address" {
  		checkAddr = fmt.Sprintf("%s:%d", checkAddr, DefaultBindPort)
  		goto START
  	}
  	if err != nil {
  		return "", 0, err
  	}
  
  	// Get the address
  	addr, err := net.ResolveTCPAddr("tcp", checkAddr)
  	if err != nil {
  		return "", 0, err
  	}
  
  	return addr.IP.String(), addr.Port, nil
  }
docs: // BindAddrParts returns the parts of the BindAddr that should be
  // used to configure Serf.