              self._xyz_2d = xyz - self._offset["head"]
          return self._xyz_2d
  
      @property
      def offset(self):
          """ dict: The amount to offset a standard 0.0 - 1.0 umeyama transformation matrix for a
          from the center of the face (between the eyes) or center of the head (middle of skull)
          rather than the nose area. """
          return self._offset
  
 
</s> remove     def pitch(self):
 </s> add     def pitch(self) -> float: </s> remove             xyz = cv2.projectPoints(np.float32([[6, 0, -2.3], [0, 6, -2.3], [0, 0, 3.7]]),
 </s> add             xyz = cv2.projectPoints(np.array([[6., 0., -2.3],
                                              [0., 6., -2.3],
                                              [0., 0., 3.7]]).astype("float32"), </s> remove     def xyz_2d(self):
 </s> add     def xyz_2d(self) -> np.ndarray: </s> remove     def matrix(self):
 </s> add     def matrix(self) -> np.ndarray: </s> remove     def _get_offset(self):
 </s> add     def _get_offset(self) -> Dict[CenteringType, np.ndarray]:
    def offset(self) -> Dict[CenteringType, np.ndarray]:
              self._xyz_2d = xyz - self._offset["head"]
          return self._xyz_2d
  
      @property
    def offset(self) -> Dict[CenteringType, np.ndarray]:
          """ dict: The amount to offset a standard 0.0 - 1.0 umeyama transformation matrix for a
          from the center of the face (between the eyes) or center of the head (middle of skull)
          rather than the nose area. """
          return self._offset
  
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