code: def concatv_images(images, gap=10):
      """Concatenate a list of images vertically.
  
      Parameters
      ----------
      images : List[PIL.Image.Image]
          list of images
      gap : int, default 10
          gap between images
  
      Returns
      -------
      PIL.Image.Image
      """
      try:
          import PIL.Image as pilimage
      except ImportError as e:
          raise ImportError(
              "concatv_images function requires the PIL package. "
              'To get it, run "pip install pillow".'
          ) from e
      else:
          assert isinstance(images, list) and len(images) != 0
          assert isinstance(gap, int) and gap >= 0
  
          if len(images) == 1:
              return t.cast(pilimage.Image, images[0]).copy()
  
          max_width = max(it.width for it in images)
          height = sum(it.height for it in images)
          dst = pilimage.new(
              t.cast(pilimage.Image, images[0]).mode,  # type: ignore
              (max_width, height),
          )
  
          position = 0
  
          for img in images:
              dst.paste(img, (0, position))
              position = position + img.height + gap
  
          return dst
  
imports: import io
  import json
  import textwrap
  import typing
  from contextlib import contextmanager
  import matplotlib
  import matplotlib.pyplot
  import numpy
  import pandas
  import plotly.io._html
  from ipywidgets import DOMWidget
  from jsonpickle.pickler import Pickler
  from pandas.io.formats.style import Styler
  from plotly.io._utils import plotly_cdn_url
  from plotly.offline.offline import get_plotlyjs
  from deepchecks.core import check_result
  from deepchecks.core import errors
  from deepchecks.utils.dataframes import hide_index_for_display, un_numpy
  from deepchecks.utils.html import linktag
  from deepchecks.utils.strings import truncate_string
label_desc: Use image node_id 11 for calling a global function with example usage: concatv_images(images, gap) and returns: dst, t