code: def adjoint_contract_unary(
      adj_sum_op,
      adj_prod_op,
      out_adj,
      sum_op,
      prod_op,
      reduced_vars,
      arg,
  ):
      return adjoint_reduce(
          adj_sum_op, adj_prod_op, out_adj, sum_op, arg, reduced_vars
      )
  
imports: from collections import defaultdict
  from collections.abc import Hashable
  from funsor.cnf import Contraction
  from funsor.interpretations import Interpretation, reflect
  from funsor.interpreter import stack_reinterpret
  from funsor.ops import AssociativeOp
  from funsor.registry import KeyedRegistry
  from funsor.terms import Approximate, Binary, Cat, Funsor, Reduce, Scatter, Slice, Subs, substitute, to_funsor
  from .None import instrument, interpreter, ops
label_desc: Use image node_id 7 for calling a global function with example usage: adjoint_contract_unary(adj_sum_op, adj_prod_op, out_adj, sum_op, prod_op, reduced_vars, arg) and returns: adjoint_reduce