code: def swap_tiles_on_image(image, tiles):
      """
      Swap tiles on image.
  
      Args:
          image (np.ndarray): Input image.
          tiles (np.ndarray): array of tuples(
              current_left_up_corner_row, current_left_up_corner_col,
              old_left_up_corner_row, old_left_up_corner_col,
              height_tile, width_tile)
  
      Returns:
          np.ndarray: Output image.
  
      """
      new_image = image.copy()
  
      for tile in tiles:
          new_image[
              tile[0] : tile[0] + tile[4], tile[1] : tile[1] + tile[5]
          ] = image[
              tile[2] : tile[2] + tile[4], tile[3] : tile[3] + tile[5]
          ]
  
      return new_image
  
imports: from __future__ import division
  from typing import Optional, Sequence, Union
  from warnings import warn
  import cv2
  import numpy
  import skimage
  from albumentations import random_utils
  from albumentations.augmentations.utils import MAX_VALUES_BY_DTYPE, _maybe_process_in_chunks, clip, clipped, ensure_contiguous, is_grayscale_image, is_rgb_image, non_rgb_warning, preserve_channel_dim, preserve_shape
label_desc: Use image node_id 41 for calling a global function with example usage: swap_tiles_on_image(image, tiles) and returns: new_image