                  self._faces_saver = ImagesSaver(self._loader.location, as_bytes=True)
              for extractor_output in self._extractor.detected_faces():
                  self._extractor_input_thread.check_and_raise_error()
                  updater(extractor_output)
              self._extractor_input_thread.join()
              if self._counts["update"] != 0:
                  self._alignments.backup()
                  self._alignments.save()
              if self._input_is_faces:
                  self._faces_saver.close()
 
</s> remove         else:
            self._extractor_input_thread.join()
 </s> add         self._extractor_input_thread.join()
        if self._saver is not None: </s> remove                                    centering="face",
 </s> add                                    centering=mask.stored_centering, </s> remove                 mask.set_sub_crop(sub_crop_offset)
 </s> add                 mask.set_sub_crop(sub_crop_offset, centering) </s> remove         retval = "_{}".format(dict_key) if dict_key != "stored_size" else dict_key
 </s> add         retval = "_{}".format(dict_key) if not dict_key.startswith("stored") else dict_key </s> remove         if self._centering == "legacy":
            crop_offset = reference_face.pose.offset["face"] * -1
 </s> add         mask_centering = detected_face.mask[self._args.mask_type].stored_centering
        if self._centering != mask_centering:
            crop_offset = reference_face.pose.offset[mask_centering] * -1
                  self._faces_saver = ImagesSaver(self._loader.location, as_bytes=True)
              for extractor_output in self._extractor.detected_faces():
                  self._extractor_input_thread.check_and_raise_error()
                  updater(extractor_output)

              if self._counts["update"] != 0:
                  self._alignments.backup()
                  self._alignments.save()
              if self._input_is_faces:
                  self._faces_saver.close()
keep keep keep keep replace keep keep keep keep keep
 core mask updates:
  - Add support for different mask centering
  - Update legacy alignments to store mask centering
  - Bugfix: lib.image ImageIO. Ensure unique queues are created (fixes mask tool when Face is input and an output folder is provided) 
tools/mask/mask.py