          return 1
  
      def remove_faces(self, item):
          """ Process to remove faces from an alignments file """
          if self.faces_count_matches(item):
              return 0
          return self.remove_alignment(item)
  
      def faces_count_matches(self, item):
          """ Check the selected face exits """
 
</s> remove         return self.remove_alignment(item)

    def faces_count_matches(self, item):
        """ Check the selected face exits """
        frame_name, number_alignments = item[0], item[2]
        number_faces = len(self.items.items.get(frame_name, list()))
        return bool(number_alignments in(0, number_faces))
 </s> add         pre_face_count = self.alignments.faces_count
        self.alignments.filter_hashes(face_hashes, filter_out=False)
        post_face_count = self.alignments.faces_count
        return pre_face_count - post_face_count </s> remove     def remove_faces(self, item):
 </s> add     def remove_faces(self): </s> remove         del self.alignments.data[item]
 </s> add         logger.debug("Deleting frame: '%s'", frame)
        del self.alignments.data[frame] </s> remove         if item in self.items:
 </s> add         if frame in self.items:
            logger.trace("Not deleting frame: '%s'", frame) </s> remove     def remove_frames(self, item):
 </s> add     def remove_frames(self, frame):
        face_hashes = list(self.items.items.keys())
        if not face_hashes:
            logger.error("No face hashes. This would remove all faces from your alignments file.")
          return 1
  
      def remove_faces(self, item):
          """ Process to remove faces from an alignments file """
        face_hashes = list(self.items.items.keys())
        if not face_hashes:
            logger.error("No face hashes. This would remove all faces from your alignments file.")
              return 0
          return self.remove_alignment(item)
  
      def faces_count_matches(self, item):
          """ Check the selected face exits """
keep keep keep keep replace keep keep keep keep keep
 Add Face Hashes to Alignments (#550)

* Convert main scripts to use face hashes

* Alignment tool: Use hashes, add logging, add face rename function

* More logging. Update Manual tool to work with hashing 
tools/lib_alignments/jobs.py