                  break
              elif (skip_mode == "has faces"
                    and self.alignments.frame_has_faces(frame)):
                  break
              else:
                  self.interface.iterate_frame("navigation",
                                               navigation["last_request"])
                  frame = frame_list[navigation["frame_idx"]]["frame_fullname"]
  
          image = self.frames.load_image(frame)
          navigation["last_request"] = 0
          navigation["frame_name"] = frame
          return image
 
</s> remove             elif (skip_mode == "has faces"
                  and self.alignments.frame_has_faces(frame)):
 </s> add             if skip_mode == "has faces" and self.alignments.frame_has_faces(frame): </s> remove             elif (skip_mode == "multi-faces"
                  and self.alignments.frame_has_multiple_faces(frame)):
 </s> add             if skip_mode == "multi-faces" and self.alignments.frame_has_multiple_faces(frame): </s> remove             elif skip_mode == "standard":
 </s> add             if skip_mode == "standard": </s> remove         self.save()
 </s> add     # Landmarks stored as list instead of numpy array
    def has_legacy_landmarks_list(self):
        """ check for legacy landmarks stored as list """
        logger.debug("checking legacy landmarks as list")
        retval = not all(isinstance(face["landmarks_xy"], np.ndarray)
                         for faces in self.data.values()
                         for face in faces)
        return retval

    def update_legacy_landmarks_list(self):
        """ Update landmarksXY to landmarks_xy and save alignments """
        update_count = 0
        for alignments in self.data.values():
            for alignment in alignments:
                test = alignment["landmarks_xy"]
                if not isinstance(test, np.ndarray):
                    alignment["landmarks_xy"] = np.array(test, dtype="float32")
                    update_count += 1
        logger.debug("Updated landmarks_xy: %s", update_count) </s> remove             elif (skip_mode == "no faces"
                  and not self.alignments.frame_has_faces(frame)):
 </s> add             if skip_mode == "no faces" and not self.alignments.frame_has_faces(frame):
            self.interface.iterate_frame("navigation", navigation["last_request"])
            frame = frame_list[navigation["frame_idx"]]["frame_fullname"]
                  break
              elif (skip_mode == "has faces"
                    and self.alignments.frame_has_faces(frame)):
                  break
            self.interface.iterate_frame("navigation", navigation["last_request"])
            frame = frame_list[navigation["frame_idx"]]["frame_fullname"]
            self.interface.iterate_frame("navigation", navigation["last_request"])
            frame = frame_list[navigation["frame_idx"]]["frame_fullname"]
            self.interface.iterate_frame("navigation", navigation["last_request"])
            frame = frame_list[navigation["frame_idx"]]["frame_fullname"]
            self.interface.iterate_frame("navigation", navigation["last_request"])
            frame = frame_list[navigation["frame_idx"]]["frame_fullname"]
  
          image = self.frames.load_image(frame)
          navigation["last_request"] = 0
          navigation["frame_name"] = frame
          return image
keep keep keep keep replace replace replace replace keep keep keep keep keep
 lib.alignments - Auto update legacy list landmarks to numpy array 
tools/lib_alignments/jobs_manual.py