code: def test_no_fusion_more_materialization_ops(self):
      @mb.program(input_specs=[mb.TensorSpec(shape=(10, 2, 3, 5))])
      def prog(x):
          x = mb.relu(x=x)
          x = mb.transpose(x=x, perm=[0, 2, 1, 3])
          x1 = mb.relu(x=x)
          y2 = mb.transpose(x=x1, perm=[0, 2, 1, 3])
          x2 = mb.relu(x=x1)
          y3 = mb.avg_pool(
              x=x2,
              kernel_sizes=[1, 1],
              strides=[1, 1],
              pad_type="valid",
          )
          y4 = mb.avg_pool(
              x=x1,
              kernel_sizes=[1, 1],
              strides=[1, 1],
              pad_type="valid",
          )
          return y2, y3, y4
  
      prev_prog, prev_block, block = apply_pass_and_basic_check(
          prog, "common::reduce_transposes"
      )
      self.assertEqual(
          get_op_types_in_program(prev_prog),
          [
              "relu",
              "transpose",
              "relu",
              "transpose",
              "relu",
              "avg_pool",
              "avg_pool",
          ],
      )
      self.assertEqual(
          get_op_types_in_program(prog),
          [
              "relu",
              "transpose",
              "relu",
              "transpose",
              "relu",
              "avg_pool",
              "avg_pool",
          ],
      )
  
      assert_model_is_valid(
          prog,
          {"x": (10, 2, 3, 5)},
          expected_output_shapes={
              block.outputs[0].name: (10, 2, 3, 5),
              block.outputs[1].name: (10, 3, 2, 5),
              block.outputs[2].name: (10, 3, 2, 5),
          },
      )
  
imports: from coremltools.converters.mil.mil import Builder
  from coremltools.converters.mil.testing_utils import assert_op_count_match, assert_model_is_valid, get_op_types_in_program, apply_pass_and_basic_check
  import unittest
  import pytest
  import numpy
label_desc: Use image node_id 12 for calling the TransposeOptimizationPass obj's underlying member method code with example usage: obj.test_no_fusion_more_materialization_ops() and returns: y2,  y3,  y4