code: def testSaveAndRestoreMirroredOneGraph(self, distribution):
      with self.cached_session() as sess:
          mirrored = _make_mirrored(distribution)
          v = mirrored.values
  
          # Overwrite the initial values.
          self._assign_mirrored(mirrored, [3.0, 4.0])
  
          # Saves the current value of v[0], 3.
          save_path, saver = self._save_return_saver(sess, mirrored)
  
          # Change the values between save and restore.
          self._assign_mirrored(mirrored, [5.0, 6.0])
  
          # Restores the saved value of 3. to both variables.
          saver.restore(sess, save_path)
          self.assertEqual([3.0, 3.0], self.evaluate([v[0], v[1]]))
  
imports: import os
  from absl.testing import parameterized
  from tensorflow.core.protobuf import config_pb2
  from tensorflow.python.distribute import combinations
  from tensorflow.python.distribute import strategy_combinations
  from tensorflow.python.distribute import strategy_test_lib
  from tensorflow.python.distribute import test_util
  from tensorflow.python.distribute import tpu_values
  from tensorflow.python.distribute import values
  from tensorflow.python.eager import context
  from tensorflow.python.eager import test
  from tensorflow.python.framework import constant_op
  from tensorflow.python.framework import ops
  from tensorflow.python.framework import test_util
  from tensorflow.python.ops import math_ops
  from tensorflow.python.ops import variable_scope
  from tensorflow.python.training import saver
label_desc: Use image node_id 8 for calling the MirroredVariableSaveRestoreTest obj's underlying member method code with example usage: obj.testSaveAndRestoreMirroredOneGraph(distribution) without return types