          storage_centering, str (optional):
              The centering to store the mask at. One of `"legacy"`, `"face"`, `"head"`.
              Default: `"face"`
          """
          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)
          fsmask.add(mask, affine_matrix, interpolator)
          self.mask[name] = fsmask
  
      def get_landmark_mask(self, size, area,
 
</s> remove     def __init__(self, storage_size=128, storage_centering="face"):
        logger.trace("Initializing: %s (storage_size: %s, storage_centering: %s)",
 </s> add     def __init__(self,
                 storage_size: int = 128,
                 storage_centering: "CenteringType" = "face") -> None:
        logger.trace("Initializing: %s (storage_size: %s, storage_centering: %s)",  # type: ignore </s> remove         logger.trace("mask shape: %s, mask dtype: %s, mask min: %s, mask max: %s, "
 </s> add         logger.trace("mask shape: %s, mask dtype: %s, mask min: %s, mask max: %s, "  # type: ignore </s> remove     def add(self, mask, affine_matrix, interpolator):
 </s> add     def add(self, mask: np.ndarray, affine_matrix: np.ndarray, interpolator: int) -> None: </s> remove         logger.trace("mask shape: %s, mask dtype: %s, mask min: %s, mask max: %s",
 </s> add         logger.trace("mask shape: %s, mask dtype: %s, mask min: %s, mask max: %s",  # type: ignore </s> remove     def __init__(self, blur_type, mask, kernel, is_ratio=False, passes=1):
        logger.trace("Initializing %s: (blur_type: '%s', mask_shape: %s, kernel: %s, "
                     "is_ratio: %s, passes: %s)", self.__class__.__name__, blur_type, mask.shape,
                     kernel, is_ratio, passes)
        self._blur_type = blur_type.lower()
 </s> add     def __init__(self,
                 blur_type: Literal["gaussian", "normalized"],
                 mask: np.ndarray,
                 kernel: Union[int, float],
                 is_ratio: bool = False,
                 passes: int = 1) -> None:
        logger.trace("Initializing %s: (blur_type: '%s', mask_shape: %s, "  # type: ignore
                     "kernel: %s, is_ratio: %s, passes: %s)", self.__class__.__name__, blur_type,
                     mask.shape, kernel, is_ratio, passes)
        self._blur_type = blur_type
        logger.trace("name: '%s', mask shape: %s, affine_matrix: %s, "  # type: ignore
                     "interpolator: %s, storage_size: %s, storage_centering: %s)", name,
                     mask.shape, affine_matrix, interpolator, storage_size, storage_centering)
          storage_centering, str (optional):
              The centering to store the mask at. One of `"legacy"`, `"face"`, `"head"`.
              Default: `"face"`
          """
        logger.trace("name: '%s', mask shape: %s, affine_matrix: %s, "  # type: ignore
                     "interpolator: %s, storage_size: %s, storage_centering: %s)", name,
                     mask.shape, affine_matrix, interpolator, storage_size, storage_centering)
        logger.trace("name: '%s', mask shape: %s, affine_matrix: %s, "  # type: ignore
                     "interpolator: %s, storage_size: %s, storage_centering: %s)", name,
                     mask.shape, affine_matrix, interpolator, storage_size, storage_centering)
        logger.trace("name: '%s', mask shape: %s, affine_matrix: %s, "  # type: ignore
                     "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)
          fsmask.add(mask, affine_matrix, interpolator)
          self.mask[name] = fsmask
  
      def get_landmark_mask(self, size, area,
keep keep keep keep replace replace replace keep keep keep keep keep
 lib.align updates:
  - alignments.py
    - Add typed dicts for imported alignments
    - Explicitly check for presence of thumb value in alignments dict
    - linting
  - detected_face.py
    - Typing
    - Linting
    - Legacy support for pre-aligned face
    - Update dependencies to new property names 
lib/align/detected_face.py