code: def check_layout(kwargs, input_datasets, layout):
      pipe = Pipeline(10, 4, 0)
      with pipe:
          input = fn.external_source(**kwargs)
          # Rely on the Pad internal check to ensure that External Source set layout
          pipe.set_outputs(fn.pad(input, axis_names=layout))
  
      with tf.device("/cpu:0"):
          dali_dataset = dali_tf.experimental.DALIDatasetWithInputs(
              input_datasets=input_datasets,
              pipeline=pipe,
              batch_size=pipe.max_batch_size,
              output_shapes=None,
              output_dtypes=tf.int64,
              num_threads=pipe.num_threads,
              device_id=pipe.device_id,
          )
  
      run_dataset_eager_mode(dali_dataset, 10)
  
imports: import tensorflow
  import numpy
  from nvidia.dali import Pipeline, pipeline_def
  import nvidia.dali.plugin.tf
  from nvidia.dali.plugin.tf.experimental import Input
  from nvidia.dali import fn
  from nose.tools import with_setup
  from test_dali_tf_dataset_pipelines import FixedSampleIterator, RandomSampleIterator, external_source_converter_multiple, external_source_converter_with_callback, external_source_converter_with_fixed_value, external_source_tester, external_source_tester_multiple, get_min_shape_helper, many_input_pipeline
  from test_dali_tf_es_pipelines import external_source_to_tf_dataset, gen_tf_with_dali_external_source, get_external_source_pipe
  from test_utils_tensorflow import get_dali_dataset_from_pipeline, get_image_pipeline, get_mix_size_image_pipeline, run_dataset_eager_mode, run_tf_dataset_eager_mode, run_tf_dataset_multigpu_eager_manual_placement, run_tf_dataset_multigpu_eager_mirrored_strategy, skip_for_incompatible_tf, skip_inputs_for_incompatible_tf
  from nose_utils import raises
  import random
  import itertools
label_desc: Use image node_id 28 for calling a global function with example usage: check_layout(kwargs, input_datasets, layout) without return types