code: def check_slice_with_out_of_bounds_policy_support(
      device,
      batch_size,
      input_shape=(100, 200, 3),
      out_of_bounds_policy=None,
      fill_values=(0x76, 0xB9, 0x00),
      normalized_anchor=False,
      normalized_shape=False,
  ):
      # This test case is written with HWC layout in mind and "HW" axes in slice arguments
      axis_names = "HW"
      axes = None
      layout = "HWC"
      assert len(input_shape) == 3
      if fill_values is not None and len(fill_values) > 1:
          assert input_shape[2] == len(fill_values)
  
      eii = RandomDataIterator(batch_size, shape=input_shape)
      eii_arg = SliceArgsIterator(
          batch_size,
          len(input_shape),
          image_shape=input_shape,
          image_layout=layout,
          axes=axes,
          axis_names=axis_names,
          normalized_anchor=normalized_anchor,
          normalized_shape=normalized_shape,
          min_norm_anchor=-0.5,
          max_norm_anchor=-0.1,
          min_norm_shape=1.1,
          max_norm_shape=3.6,
      )
      pipe = SliceSynthDataPipeline(
          device,
          batch_size,
          layout,
          iter(eii),
          iter(eii_arg),
          axes=axes,
          axis_names=axis_names,
          normalized_anchor=normalized_anchor,
          normalized_shape=normalized_shape,
          out_of_bounds_policy=out_of_bounds_policy,
          fill_values=fill_values,
          extra_outputs=True,
      )
      if fill_values is None:
          fill_values = 0
      pipe.build()
      for _ in range(3):
          outs = pipe.run()
          out, in_data, anchor_data, shape_data = outs
          assert batch_size == len(out)
          for idx in range(batch_size):
              sample_in = as_array(in_data[idx])
              sample_out = as_array(out[idx])
              anchor = as_array(anchor_data[idx])
              shape = as_array(shape_data[idx])
              in_shape = sample_in.shape
              (
                  abs_start,
                  abs_end,
                  abs_slice_shape,
              ) = abs_slice_start_and_end(
                  in_shape[:2],
                  anchor,
                  shape,
                  normalized_anchor,
                  normalized_shape,
              )
              check_slice_output(
                  sample_in,
                  sample_out,
                  anchor,
                  abs_slice_shape,
                  abs_start,
                  abs_end,
                  out_of_bounds_policy,
                  fill_values,
              )
  
imports: from nvidia.dali import Pipeline, pipeline_def, ops, fn, types
  import numpy
  import os
  from functools import partial
  from math import floor
  from test_utils import compare_pipelines, get_dali_extra_path, RandomDataIterator, generator_random_axes_for_3d_input, generator_random_data, as_array
  from nose_utils import assert_raises
  from nose2.tools import params
label_desc: Use image node_id 11 for calling a global function with example usage: check_slice_with_out_of_bounds_policy_support(device, batch_size, input_shape, out_of_bounds_policy, fill_values, normalized_anchor, normalized_shape) without return types