code: def infer_shape_numpy_add_sub(node, input_shapes):
      ashp, bshp = input_shapes
      # Both inputs should have that same shape, so we just return one of them.
      return [ashp[0]]
  
imports: from __future__ import absolute_import, print_function, division
  import unittest
  import theano
  import numpy
  from theano.gof import Op, Apply
  from theano import tensor, function, printing
  from theano.tests import unittest_tools
  import theano
  import numpy
  from theano.compile.ops import as_op
label_desc: Use image node_id 3 for calling a global function with example usage: infer_shape_numpy_add_sub(node, input_shapes) and returns: list