  
      def _get_alignments_path(self, side):
          """ Obtain the path to an alignments file for the given training side.
  
          Used for updating legacy facesets to contain the meta information within the image header
  
          Parameters
          ----------
          side: ["a" or "b"]
              The training side to obtain the alignments file for.
 
</s> remove         # Update centering if it has been changed by legacy facesets in TrainingAlignments
 </s> add         # Update centering if it has been changed by legacy face sets in TrainingAlignments </s> remove             ``True`` if images were succesfully loaded to cache otherwise ``False``
 </s> add             ``True`` if images were successfully loaded to cache otherwise ``False`` </s> remove         defaults = {key: val[0][1].replace("*", "")
 </s> add         defaults = {key: next(ext for ext in val[0][1].split(" ")).replace("*", "") </s> remove             if self._defaults.get(filetype, None):
 </s> add             if self._defaults.get(filetype):
        Used for updating legacy face sets to contain the meta information within the image header
  
      def _get_alignments_path(self, side):
          """ Obtain the path to an alignments file for the given training side.
  
        Used for updating legacy face sets to contain the meta information within the image header
  
          Parameters
          ----------
          side: ["a" or "b"]
              The training side to obtain the alignments file for.
keep keep keep keep replace keep keep keep keep keep
 Bugfixes:
  - plugins.train.trainer._base - Don't output error message for sides which have valid masks
  - lib.gui.menu - Fix project file saving extension on Linux 
plugins/train/trainer/_base.py