  
      def build_faces_image(self, size):
          """ Display associated faces """
          total_faces = len(self.faces)
          logger.trace("Building faces panel. (total_faces: %s", total_faces)
          if not total_faces:
              logger.trace("Returning empty row")
              image = self.build_faces_row(list(), size)
              return image
          total_rows = int(total_faces / self.row_length) + 1
 
</s> remove         self._detected_faces = None
 </s> add         self._detected_faces = detected_faces </s> remove                         self._rollover = ExtractMedia(item.filename, item.image)
                        self._rollover.add_detected_faces(item.detected_faces[f_idx + 1:])
 </s> add                         self._rollover = ExtractMedia(
                            item.filename,
                            item.image,
                            detected_faces=item.detected_faces[f_idx + 1:]) </s> remove                         self._rollover = ExtractMedia(item.filename, item.image)
                        self._rollover.add_detected_faces(item.detected_faces[f_idx + 1:])
 </s> add                         self._rollover = ExtractMedia(
                            item.filename,
                            item.image,
                            detected_faces=item.detected_faces[f_idx + 1:]) </s> remove     def __init__(self, filename, image):
        logger.trace("Initializing %s: (filename: '%s', image shape: %s)",
                     self.__class__.__name__, filename, image.shape)
 </s> add     def __init__(self, filename, image, detected_faces=None):
        logger.trace("Initializing %s: (filename: '%s', image shape: %s, detected_faces: %s)",
                     self.__class__.__name__, filename, image.shape, detected_faces) </s> remove         self.media["bounding_box"] = [int((pt_x / scale) - width / 2),
                                      int((pt_y / scale) - height / 2),
                                      int((pt_x / scale) + width / 2),
                                      int((pt_y / scale) + height / 2)]
 </s> add         self.media["bounding_box"].x = int((pt_x / scale) - width / 2)
        self.media["bounding_box"].y = int((pt_y / scale) - height / 2)
        self.media["bounding_box"].w = width
        self.media["bounding_box"].h = height
        logger.trace("Building faces panel. (total_faces: %s)", total_faces)
  
      def build_faces_image(self, size):
          """ Display associated faces """
          total_faces = len(self.faces)
        logger.trace("Building faces panel. (total_faces: %s)", total_faces)
          if not total_faces:
              logger.trace("Returning empty row")
              image = self.build_faces_row(list(), size)
              return image
          total_rows = int(total_faces / self.row_length) + 1
keep keep keep keep replace keep keep keep keep keep
 Bugfix - Manual tool. Use new ExtractMedia class 
tools/lib_alignments/jobs_manual.py