docs: def make_op_return_tx(data, private_key,
          blockchain_client=BlockchainInfoClient(), fee=OP_RETURN_FEE,
          change_address=None, format='bin'):
      """ Builds and signs an OP_RETURN transaction.
      """
      # get out the private key object, sending address, and inputs
      private_key_obj, from_address, inputs = analyze_private_key(private_key,
          blockchain_client)
      # get the change address
      if not change_address:
          change_address = from_address
      # create the outputs
      outputs = make_op_return_outputs(data, inputs, change_address,
          fee=fee, format=format)
      # serialize the transaction
      unsigned_tx = serialize_transaction(inputs, outputs)
  
      # generate a scriptSig for each input
      for i in xrange(0, len(inputs)):
          signed_tx = sign_transaction(unsigned_tx, i, private_key_obj.to_hex())
          unsigned_tx = signed_tx
  
      # return the signed tx
      return signed_tx