code: func NewClientWithRPC(rpcclient *rpc.Client) (*Client, error) {
  	client := newClient()
  	client.rpc = rpcclient
  	err := client.rpc.Call(&client.BaseAddrHex, "pss_baseAddr")
  	if err != nil {
  		return nil, fmt.Errorf("cannot get pss node baseaddress: %v", err)
  	}
  	return client, nil
  }
docs: // Main constructor
  //
  // The 'rpcclient' parameter allows passing a in-memory rpc client to act as the remote websocket RPC.