code: func splitAddr(addr string) (string, string, string, error) {
  	scheme, hostPort := splitScheme(addr)
  	host, port := "", ""
  	if hostPort != "" {
  		var err error
  		host, port, err = net.SplitHostPort(hostPort)
  		if err != nil {
  			return "", "", "", errors.Wrapf(err, "splitting host port: %s", hostPort)
  		}
  	}
  	// It's not ideal to have a default here, but the alterative
  	// results in a port of 0, which causes Pilosa to listen on
  	// a random port.
  	if port == "" {
  		port = "10101"
  	}
  	return scheme, host, port, nil
  }
docs: // splitAddr returns scheme, host, port as strings.