code: def _ensure_property_shape(property_values, data_len, prop_name):
      """Validate the result of the property."""
      if len(property_values) != data_len:
          raise DeepchecksProcessError(
              f"Properties are expected to return value per image but instead got"
              f" {len(property_values)} values for {data_len} images for property "
              f"{prop_name}"
          )
  
      # If the first item is list validate all items are list of numbers
      if isinstance(property_values[0], t.Sequence):
          if any(
              (not isinstance(x, t.Sequence) for x in property_values)
          ):
              raise DeepchecksProcessError(
                  f"Property result is expected to be either all lists or all scalars but"
                  f" got mix for property {prop_name}"
              )
          if any((not _is_list_of_numbers(x) for x in property_values)):
              raise DeepchecksProcessError(
                  f"For outliers, properties are expected to be only numeric types but"
                  f" found non-numeric value for property {prop_name}"
              )
      # If first value is not list, validate all items are numeric
      elif not _is_list_of_numbers(property_values):
          raise DeepchecksProcessError(
              f"For outliers, properties are expected to be only numeric types but"
              f" found non-numeric value for property {prop_name}"
          )
  
imports: import string
  import typing
  import warnings
  from abc import abstractmethod
  from collections import defaultdict
  from numbers import Number
  from secrets import choice
  import numpy
  import pandas
  from deepchecks.core import CheckResult, DatasetKind
  from deepchecks.core.errors import DeepchecksProcessError, NotEnoughSamplesError
  from deepchecks.utils.dataframes import hide_index_for_display
  from deepchecks.utils.outliers import iqr_outliers_range
  from deepchecks.utils.strings import format_number
  from deepchecks.vision.base_checks import SingleDatasetCheck
  from deepchecks.vision.context import Context
  from deepchecks.vision.utils.image_functions import draw_image
  from deepchecks.vision.utils.vision_properties import PropertiesInputType
  from deepchecks.vision.vision_data import TaskType, VisionData
  from deepchecks.vision.vision_data.batch_wrapper import BatchWrapper
label_desc: Use image node_id 1 for calling a global function with example usage: _ensure_property_shape(property_values, data_len, prop_name) without return types