                                                  flags=cv2.SOLVEPNP_ITERATIVE)
          logger.trace("points: %s, rotation: %s, translation: %s", points, rotation, translation)
          return rotation, translation
  
      def _get_offset(self):
          """ Obtain the offset between the original center of the extracted face to the new center
          of the head in 2D space.
  
          Returns
          -------
 
</s> remove         logger.trace("points: %s, rotation: %s, translation: %s", points, rotation, translation)
 </s> add         logger.trace("points: %s, rotation: %s, translation: %s",  # type: ignore
                     points, rotation, translation) </s> remove     def offset(self):
 </s> add     def offset(self) -> Dict[CenteringType, np.ndarray]: </s> remove     def _solve_pnp(self, landmarks):
 </s> add     def _solve_pnp(self, landmarks: np.ndarray) -> Tuple[np.ndarray, np.ndarray]: </s> remove     def _get_camera_matrix(cls):
 </s> add     def _get_camera_matrix(cls) -> np.ndarray:
    def _get_offset(self) -> Dict[CenteringType, np.ndarray]:
                                                  flags=cv2.SOLVEPNP_ITERATIVE)
          logger.trace("points: %s, rotation: %s, translation: %s", points, rotation, translation)
          return rotation, translation
  
    def _get_offset(self) -> Dict[CenteringType, np.ndarray]:
          """ Obtain the offset between the original center of the extracted face to the new center
          of the head in 2D space.
  
          Returns
          -------
keep keep keep keep replace keep keep keep keep keep
 lib.align.aligned_face updates
  - Typing
  - Legacy support for pre-aligned faces
  - Coverage support for pre-aligned faces
  - Standardized retrieval of sub-crops 
lib/align/aligned_face.py