code: func (cc *Client) Query(request Request, options ...RequestOption) (Response, error) {
  
  	options = append(options, addDefaultTimeout(fab.Query))
  	options = append(options, addDefaultTargetFilter(cc.context, filter.ChaincodeQuery))
  
  	return callQuery(cc, request, options...)
  }
docs: // Query chaincode using request and optional request options
  //  Parameters:
  //  request holds info about mandatory chaincode ID and function
  //  options holds optional request options
  //
  //  Returns:
  //  the proposal responses from peer(s)