code: func (sc *syncClient) close() error {
  	sc.lock.Lock()
  	defer sc.lock.Unlock()
  	if sc.client == nil {
  		return nil
  	}
  	sc.refs--
  	if sc.refs > 0 {
  		return nil
  	}
  	if err := sc.client.Close(); err != nil {
  		sc.client = nil
  		return fmt.Errorf("client close failed: %v", err)
  	}
  	sc.client = nil
  	return nil
  }
docs: // close closes an existing connection to our peer Seesaw node.