def create_trx(op_return_val, issuing_transaction_fee, issuing_address, tx_outs, tx_inputs):
cert_out = CMutableTxOut(<NUM_LIT:0>, CScript([OP_RETURN, op_return_val]))<EOL>tx_ins = []<EOL>value_in = <NUM_LIT:0><EOL>for tx_input in tx_inputs:<EOL><INDENT>tx_ins.append(CTxIn(COutPoint(tx_input.tx_hash, tx_input.tx_out_index)))<EOL>value_in += tx_input.coin_value<EOL><DEDENT>amount = value_in - issuing_transaction_fee<EOL>if amount > <NUM_LIT:0>:<EOL><INDENT>change_out = create_transaction_output(issuing_address, amount)<EOL>tx_outs = tx_outs + [change_out]<EOL><DEDENT>tx_outs = tx_outs + [cert_out]<EOL>transaction = CMutableTransaction(tx_ins, tx_outs)<EOL>return transaction<EOL>
:param op_return_val:
:param issuing_transaction_fee:
:param issuing_address:
:param tx_outs:
:param tx_input:
:return: