code: def emit_Reshape(self, IR_node):
      shape = [
          item if item != -1 else 1
          for item in IR_node.get_attr("shape")
      ]
      if len(shape) == 4:
          shape = [shape[i] for i in [0, 3, 1, 2]]
      shape_str = ", ".join("%s" % i for i in shape)
      self.add_body(
          1,
          "{:15} = np.array([{}], dtype=np.int64)".format(
              IR_node.variable_name + "_shape_array", shape_str
          ),
      )
      self.add_body(
          1,
          "{:15} = helper.make_node('Constant', inputs=[], outputs=['{}'], value=helper.make_tensor(name='const_tensor', data_type=onnx.mapping.NP_TYPE_TO_TENSOR_TYPE[{}.dtype], dims={}.shape, vals={}), name='{}')".format(
              IR_node.variable_name + "_shape",
              IR_node.variable_name + "_shape",
              IR_node.variable_name + "_shape_array",
              IR_node.variable_name + "_shape_array",
              IR_node.variable_name + "_shape_array",
              IR_node.variable_name + "_shape",
          ),
      )
      self.add_body(
          1,
          "{:15} = helper.make_node('Reshape', inputs=['{}', '{}'], outputs=['{}'], name='{}')".format(
              IR_node.variable_name,
              self.parent_variable_name(IR_node),
              IR_node.variable_name + "_shape",
              IR_node.variable_name,
              IR_node.variable_name,
          ),
      )
      self.nodes.append(IR_node.variable_name + "_shape")
      self.nodes.append(IR_node.variable_name)
  
imports: from mmdnn.conversion.common.DataStructure.emitter import Emitter
  from mmdnn.conversion.common.IR.IR_graph import IRGraph
  import os.path
  import mmdnn.conversion.common.IR.graph_pb2
  import numpy
  import sys
label_desc: Use image node_id 25 for calling the OnnxEmitter obj's underlying member method code with example usage: obj.emit_Reshape(IR_node) without return types