              The mask with all requested manipulations applied
          raw_mask: :class:`numpy.ndarray`
              The mask with no erosion/dilation applied
          """
          mask = self._get_mask(detected_face, predicted_mask, sub_crop_offset)
          raw_mask = mask.copy()
          if not self.skip and self._do_erode:
              mask = self._erode(mask)
          logger.trace("mask shape: %s, raw_mask shape: %s", mask.shape, raw_mask.shape)
          return mask, raw_mask
 
</s> remove     def _get_mask(self, detected_face, predicted_mask, sub_crop_offset):
 </s> add     def _get_mask(self, detected_face, predicted_mask, centering, sub_crop_offset): </s> remove         if self._centering == "legacy":
            crop_offset = reference_face.pose.offset["face"] * -1
 </s> add         mask_centering = detected_face.mask[self._args.mask_type].stored_centering
        if self._centering != mask_centering:
            crop_offset = reference_face.pose.offset[mask_centering] * -1 </s> remove         logger.trace("name: '%s', mask shape: %s, affine_matrix: %s, interpolator: %s)",
                     name, mask.shape, affine_matrix, interpolator)
        fsmask = Mask(storage_size=storage_size)
 </s> add         logger.trace("name: '%s', mask shape: %s, affine_matrix: %s, interpolator: %s, "
                     "storage_size: %s, storage_centering: %s)", name, mask.shape, affine_matrix,
                     interpolator, storage_size, storage_centering)
        fsmask = Mask(storage_size=storage_size, storage_centering=storage_centering)
        mask = self._get_mask(detected_face, predicted_mask, centering, sub_crop_offset)
              The mask with all requested manipulations applied
          raw_mask: :class:`numpy.ndarray`
              The mask with no erosion/dilation applied
          """
        mask = self._get_mask(detected_face, predicted_mask, centering, sub_crop_offset)
          raw_mask = mask.copy()
          if not self.skip and self._do_erode:
              mask = self._erode(mask)
          logger.trace("mask shape: %s, raw_mask shape: %s", mask.shape, raw_mask.shape)
          return mask, raw_mask
keep keep keep keep replace keep keep keep keep keep
 core mask updates:
  - Add support for different mask centering
  - Update legacy alignments to store mask centering
  - Bugfix: lib.image ImageIO. Ensure unique queues are created (fixes mask tool when Face is input and an output folder is provided) 
plugins/convert/mask/mask_blend.py