code: func (k *KV) Txn(txn KVTxnOps, q *QueryOptions) (bool, *KVTxnResponse, *QueryMeta, error) {
  	var ops TxnOps
  	for _, op := range txn {
  		ops = append(ops, &TxnOp{KV: op})
  	}
  
  	respOk, txnResp, qm, err := k.c.txn(ops, q)
  	if err != nil {
  		return false, nil, nil, err
  	}
  
  	// Convert from the internal format.
  	kvResp := KVTxnResponse{
  		Errors: txnResp.Errors,
  	}
  	for _, result := range txnResp.Results {
  		kvResp.Results = append(kvResp.Results, result.KV)
  	}
  	return respOk, &kvResp, qm, nil
  }
docs: // The Txn function has been deprecated from the KV object; please see the Txn
  // object for more information about Transactions.