code: def test_ubersum_jit(equation, plates):
      inputs, outputs, operands, sizes = make_example(equation)
  
      try:
          expected = ubersum(
              equation, *operands, plates=plates, modulo_total=True
          )
      except NotImplementedError:
          pytest.skip()
  
      @pyro.ops.jit.trace
      def jit_ubersum(*operands):
          return ubersum(
              equation, *operands, plates=plates, modulo_total=True
          )
  
      actual = jit_ubersum(*operands)
  
      if not isinstance(actual, tuple):
          pytest.xfail(
              reason="https://github.com/pytorch/pytorch/issues/14875"
          )
      assert len(expected) == len(actual)
      for e, a in zip(expected, actual):
          assert_equal(e, a)
  
imports: import itertools
  import numbers
  from collections import OrderedDict
  import opt_einsum
  import pytest
  import torch
  import pyro.ops.jit
  from pyro.distributions.util import logsumexp
  from pyro.ops.contract import _partition_terms, contract_tensor_tree, contract_to_tensor, einsum, naive_ubersum, ubersum
  from pyro.ops.einsum.adjoint import require_backward
  from pyro.ops.rings import LogRing
  from pyro.poutine.indep_messenger import CondIndepStackFrame
  from pyro.util import optional
  from tests.common import assert_equal
label_desc: Use image node_id 13 for calling a global function with example usage: test_ubersum_jit(equation, plates) and returns: ubersum