def METHOD_NAME(self, box, img_win):
    h, w = self._dst.shape[:2]
    win_h, win_w = img_win.shape[:2]
    win_y_begin, win_x_begin = 0, 0
    y_begin, y_end, x_begin, x_end = box
    if self._overlap != 0:
        if y_begin != 0:
            y_begin = min(y_begin + self._overlap // 2, h - 1)
            win_y_begin = min(win_y_begin + self._overlap // 2, win_h - 1)
        if x_begin != 0:
            x_begin = min(x_begin + self._overlap // 2, w - 1)
            win_x_begin = min(win_x_begin + self._overlap // 2, win_w - 1)
        if y_end != h:
            y_end = y_end - self._overlap // 2
        if x_end != w:
            x_end = x_end - self._overlap // 2
    if self._is_set_fusion_fun:
        self._dst[y_begin: y_end, x_begin: x_end, ...] = self._fusion(
            self._dst[y_begin: y_end, x_begin: x_end, ...],
            img_win[win_y_begin: win_y_begin + y_end - y_begin, win_x_begin: win_x_begin + x_end - x_begin, ...],
            *self._fusion_args)
    else:
        self._dst[y_begin: y_end, x_begin: x_end, ...] = \
            img_win[win_y_begin: win_y_begin + y_end - y_begin, win_x_begin: win_x_begin + x_end - x_begin, ...]
    return