code: def gen_binop(size, t1, t2):
      unifier, t_out = gen_broadcasting_unifier(t1, t2)
      binop = choice([lambda x, y: x + y, lambda x, y: x * y])
  
      def unify_and_binop(x, y):
          x_, y_ = unifier(x, y)
          return binop(x_, y_)
  
      return unify_and_binop, t_out
  
imports: from collections import namedtuple
  from functools import partial
  import numpy.random
  from absl.testing import absltest
  from absl.testing import parameterized
  import itertools
  import jax.numpy
  from jax import jit, jvp, vjp
  import jax._src.test_util
  from jax import config
  from jax._src.util import unzip2, safe_zip, safe_map
label_desc: Use image node_id 10 for calling a global function with example usage: gen_binop(size, t1, t2) and returns: unify_and_binop,  t_out, binop