code: def update(self):
      # update axis of the op
      old_axes_val = self.axes_var.val
      new_axes_val = [0] * len(old_axes_val)
      for i, axis in enumerate(old_axes_val):
          new_axes_val[i] = self.transpose_axes[axis]
  
      # insert a new constant for the axis, JUST before the op
      with self.op.enclosing_block:
          new_axis_var = mb.const(
              val=new_axes_val,
              mode="immediate_value",
              before_op=self.op,
          )
  
      self.op.enclosing_block.replace_uses_of_var_after_op(
          anchor_op=new_axis_var.op,
          end_op=self.op,
          old_var=self.axes_var,
          new_var=new_axis_var,
          no_check_var_types=True,
      )
  
imports: from __future__ import print_function
  from __future__ import division
  from __future__ import absolute_import
  from coremltools.converters.mil.mil.passes.pass_registry import register_pass
  from coremltools.converters.mil.mil import Builder
  from coremltools.converters.mil.mil.var import Var
  import logging
  import numpy
  import copy
  from collections import defaultdict
label_desc: Use image node_id 3 for calling the transform_reduce_mean obj's underlying member method code with example usage: obj.update() without return types