code: def emit_Reshape(self, IR_node):
      shape = IR_node.get_attr("_output_shapes")[0]
      shape = shape_to_list(shape)
      if shape:
          dim_str = "'dim': {}".format(shape)
          dim_str = " reshape_param={'shape': { " + dim_str + "} }"
          self.add_body(
              1,
              "n.{:<15} = L.Reshape(n.{}, {})".format(
                  IR_node.variable_name,
                  self.parent_variable_name(IR_node),
                  dim_str,
              ),
          )
      else:
          IR_node.real_name = self.IR_graph.get_parent(
              IR_node.name, [0]
          ).real_name
  
imports: from __future__ import division
  import os
  import sys
  import math
  import numpy
  import caffe
  from caffe import layers
  from caffe import params
  from mmdnn.conversion.common.IR.IR_graph import IRGraph, IRGraphNode
  import mmdnn.conversion.common.IR.graph_pb2
  from mmdnn.conversion.common.IR.graph_pb2 import NodeDef, GraphDef, DataType
  from mmdnn.conversion.common.DataStructure.emitter import Emitter
  from mmdnn.conversion.common.utils import *
label_desc: Use image node_id 45 for calling the CaffeEmitter obj's underlying member method code with example usage: obj.emit_Reshape(IR_node) without return types