  
          self._loss.configure(self._model)
          self._model.compile(optimizer=optimizer, loss=self._loss.functions)
          self._state.add_session_loss_names(self._loss.names)
          logger.debug("Compiled Model: %s", self._model)
  
      def _rewrite_plaid_outputs(self) -> None:
          """ Rewrite the output names for models using the PlaidML (Keras 2.2.4) backend
  
          Keras 2.2.4 duplicates model output names if any of the models have multiple outputs
 
</s> remove         self._loss.configure(self._model)
        self._model.compile(optimizer=optimizer, loss=self._loss.functions)
 </s> add         self._loss.configure(self.model)
        self.model.compile(optimizer=optimizer, loss=self._loss.functions) </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         face_losses = [(self._loss_dict[v], self._config.get(f"loss_weight_{k[-1]}", 100))
                       for k, v in sorted(self._config.items())
 </s> add         face_losses = [(lossname, self._config.get(f"loss_weight_{k[-1]}", 100))
                       for k, lossname in sorted(self._config.items()) </s> remove         if len(self._model.output_names) == len(set(self._model.output_names)):
            logger.debug("Output names are unique, not rewriting: %s", self._model.output_names)
 </s> add         if len(self.model.output_names) == len(set(self.model.output_names)):
            logger.debug("Output names are unique, not rewriting: %s", self.model.output_names) </s> remove                      self._model.output_names, new_names)
        self._model.output_names = new_names
 </s> add                      self.model.output_names, new_names)
        self.model.output_names = new_names
        logger.debug("Compiled Model: %s", self.model)
  
          self._loss.configure(self._model)
          self._model.compile(optimizer=optimizer, loss=self._loss.functions)
          self._state.add_session_loss_names(self._loss.names)
        logger.debug("Compiled Model: %s", self.model)
  
      def _rewrite_plaid_outputs(self) -> None:
          """ Rewrite the output names for models using the PlaidML (Keras 2.2.4) backend
  
          Keras 2.2.4 duplicates model output names if any of the models have multiple outputs
keep keep keep keep 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/model.py