          ----------
          output_names: list
              The output names from the model
          """
          face_losses = [(self._loss_dict[v], self._config.get(f"loss_weight_{k[-1]}", 100))
                         for k, v in sorted(self._config.items())
                         if k.startswith("loss_function")
                         and self._config.get(f"loss_weight_{k[-1]}", 100) != 0
                         and v is not None]
  
          for name, output_name in zip(self._names, output_names):
 
</s> remove                        and v is not None]
 </s> add                        and lossname is not None] </s> remove                 loss_func = self._loss_dict[self._config["mask_loss_function"]]
 </s> add                 loss_func = self._get_function(self._config["mask_loss_function"]) </s> remove         shapes = [tuple(K.int_shape(output)[-3:]) for output in self._model.outputs]
 </s> add         shapes = [tuple(K.int_shape(output)[-3:]) for output in self.model.outputs] </s> remove         logger.debug("Compiled Model: %s", self._model)
 </s> add         logger.debug("Compiled Model: %s", self.model)
        face_losses = [(lossname, self._config.get(f"loss_weight_{k[-1]}", 100))
                       for k, lossname in sorted(self._config.items())
          ----------
          output_names: list
              The output names from the model
          """
        face_losses = [(lossname, self._config.get(f"loss_weight_{k[-1]}", 100))
                       for k, lossname in sorted(self._config.items())
        face_losses = [(lossname, self._config.get(f"loss_weight_{k[-1]}", 100))
                       for k, lossname in sorted(self._config.items())
                         if k.startswith("loss_function")
                         and self._config.get(f"loss_weight_{k[-1]}", 100) != 0
                         and v is not None]
  
          for name, output_name in zip(self._names, output_names):
keep keep keep keep replace replace keep keep keep keep keep
 Core updates
   - Change loss loading mechanism
   - Autosize tooltips based on content size
   - Random linting + code modernisation 
plugins/train/model/_base/settings.py