-    def blit(
-        self,
-        x: int,
-        y: int,
-        source_bitmap: Bitmap,
-        *,
-        x1: int,
-        y1: int,
-        x2: int,
-        y2: int,
-        skip_index: int,
-    ) -> None:
-        """Inserts the source_bitmap region defined by rectangular boundaries"""
-        # pylint: disable=invalid-name
-        if x2 is None:
-            x2 = source_bitmap.width
-        if y2 is None:
-            y2 = source_bitmap.height
-
-        # Rearrange so that x1 < x2 and y1 < y2
-        if x1 > x2:
-            x1, x2 = x2, x1
-        if y1 > y2:
-            y1, y2 = y2, y1
-
-        # Ensure that x2 and y2 are within source bitmap size
-        x2 = min(x2, source_bitmap.width)
-        y2 = min(y2, source_bitmap.height)
-
-        for y_count in range(y2 - y1):
-            for x_count in range(x2 - x1):
-                x_placement = x + x_count
-                y_placement = y + y_count
-
-                if (self.width > x_placement >= 0) and (
-                    self.height > y_placement >= 0
-                ):  # ensure placement is within target bitmap
-                    # get the palette index from the source bitmap
-                    this_pixel_color = source_bitmap[
-                        y1
-                        + (
-                            y_count * source_bitmap.width
-                        )  # Direct index into a bitmap array is speedier than [x,y] tuple
-                        + x1
-                        + x_count
-                    ]
-
-                    if (skip_index is None) or (this_pixel_color != skip_index):
-                        self[  # Direct index into a bitmap array is speedier than [x,y] tuple
-                            y_placement * self.width + x_placement
-                        ] = this_pixel_color
-                elif y_placement > self.height:
-                    break
-