If we assign apply_regions, we assume that we only run maps on those apply_regions. For other tiles, we can reuse the original array. If extent has interaction with apply_region, then this blob need to be run. Otherwise, we just reuse the tiles of original array.

If we do not assign apply_region, we run maps as normal (for all tiles).