code: def test_map_overlap_multiarray_variadic():
      # Test overlapping row slices from 3D arrays
      xs = [
          # Dim 0 will unify to chunks of size 4 for all:
          da.ones((12, 1, 1), chunks=((12,), 1, 1)),
          da.ones((12, 8, 1), chunks=((8, 4), 8, 1)),
          da.ones((12, 8, 4), chunks=((4, 8), 8, 4)),
      ]
  
      def func(*args):
          return np.array([sum(x.size for x in args)])
  
      x = da.map_overlap(
          func,
          *xs,
          chunks=(1,),
          depth=1,
          trim=False,
          drop_axis=[1, 2],
          boundary="reflect",
      )
  
      # Each func call should get 4 rows from each array padded by 1 in each dimension
      size_per_slice = sum(
          np.pad(x[:4], 1, mode="constant").size for x in xs
      )
      assert x.shape == (3,)
      assert all(x.compute() == size_per_slice)
  
imports: from __future__ import annotations
  import pytest
  import numpy
  from numpy.testing import assert_array_almost_equal, assert_array_equal
  import dask.array
  from dask.array.lib.stride_tricks import sliding_window_view
  from dask.array.overlap import boundaries, constant, ensure_minimum_chunksize, nearest, overlap, overlap_internal, periodic, reflect, trim_internal
  from dask.array.utils import assert_eq, same_keys
label_desc: Use image node_id 21 for calling a global function with example usage: test_map_overlap_multiarray_variadic() and returns: np