code: def setUp(self):
      super(MemoryEstimatorTest, self).setUp()
      mtf_graph = mtf.Graph()
      mesh = mtf.Mesh(mtf_graph, "lowering_context_mesh")
  
      a_dim = mtf.Dimension("a", 3)
      b_dim = mtf.Dimension("b", 4)
      c_dim = mtf.Dimension("c", 5)
  
      x = mtf.Constant(
          mesh, 0, mtf.Shape([a_dim, b_dim]), tf.int32, "X"
      ).outputs[0]
      y = mtf.Constant(
          mesh, 0, mtf.Shape([b_dim, c_dim]), tf.int32, "Y"
      ).outputs[0]
      z = mtf.EinsumOperation(
          [x, y], mtf.Shape([a_dim, c_dim]), name="Z"
      ).outputs[0]
  
      mesh_shape = mtf.Shape([("m1", 4), ("m2", 3)])
  
      self.estimator = memory_estimator.MemoryEstimator(
          mtf_graph, mesh_shape, [z]
      )
  
file_path: mesh/mesh_tensorflow/auto_mtf/memory_estimator_test.py
imports: from __future__ import absolute_import
  from __future__ import division
  from __future__ import print_function
  import mesh_tensorflow
  from mesh_tensorflow.auto_mtf import memory_estimator
  import tensorflow.compat.v1
label_desc: Use image node_id 1 for calling the MemoryEstimatorTest obj's underlying member method code with example usage: obj.setUp() without return types