          return phases
  
      # << INTERNAL PLUGIN HANDLING >> #
      def _load_align(self,
                      aligner: str,
                      configfile: Optional[str],
                      normalize_method: Optional[str],
                      re_feed: int) -> Optional["Aligner"]:
          """ Set global arguments and load aligner plugin """
          if aligner is None or aligner.lower() == "none":
 
</s> remove                      detector: str,
 </s> add                      detector: Optional[str], </s> remove                    masker: str,
 </s> add                    masker: Optional[str], </s> remove     def _set_flow(detector: str, aligner: str, masker: List[str]) -> List[str]:
 </s> add     def _set_flow(detector: Optional[str],
                  aligner: Optional[str],
                  masker: List[Optional[str]]) -> List[str]: </s> remove                  detector: str,
                 aligner: str,
                 masker: Union[str, List[str]],
 </s> add                  detector: Optional[str],
                 aligner: Optional[str],
                 masker: Optional[Union[str, List[str]]], </s> remove     aligner: str
 </s> add     aligner: str or ``None
                    aligner: Optional[str],
          return phases
  
      # << INTERNAL PLUGIN HANDLING >> #
      def _load_align(self,
                    aligner: Optional[str],
                      configfile: Optional[str],
                      normalize_method: Optional[str],
                      re_feed: int) -> Optional["Aligner"]:
          """ Set global arguments and load aligner plugin """
          if aligner is None or aligner.lower() == "none":
keep keep keep keep replace keep keep keep keep keep
 Minor updates and fixups
  - Mask Tool - Typing + BiSeNet mask update fix
  - Alignments Tool - Auto search for alignments file 
plugins/extract/pipeline.py