          loss: dict
              The loss for each side. The dictionary should contain 2 keys ("a" and "b") with the
              values being a list of loss values for the current iteration corresponding to
              each side.
           """
          logger.trace(loss)
          output = ["Loss {}: {:.5f}".format(side.capitalize(), loss[side][0])
                    for side in sorted(loss.keys())]
          output = ", ".join(output)
 
</s> remove         print("[{}] [#{:05d}] {}".format(self._timestamp,
                                         self._model.iterations,
                                         output), end='\r')
 </s> add         output = "[{}] [#{:05d}] {}".format(self._timestamp, self._model.iterations, output)
        if not is_colab:
            print(output, end='\r')
        else:
            print(output) </s> remove     def __print_loss(self, loss):
 </s> add     def __print_loss(self, loss, is_colab): </s> remove     def train_one_step(self, viewer, timelapse_kwargs):
 </s> add     def train_one_step(self, viewer, timelapse_kwargs, is_colab): </s> remove                 exit(1)
 </s> add                 sys.exit(1)
        is_colab: bool
            ``True`` if FaceSwap is executing in a Google Colab session, otherwise ``False``
          loss: dict
              The loss for each side. The dictionary should contain 2 keys ("a" and "b") with the
              values being a list of loss values for the current iteration corresponding to
              each side.
        is_colab: bool
            ``True`` if FaceSwap is executing in a Google Colab session, otherwise ``False``
           """
          logger.trace(loss)
          output = ["Loss {}: {:.5f}".format(side.capitalize(), loss[side][0])
                    for side in sorted(loss.keys())]
          output = ", ".join(output)
keep keep keep add keep keep keep keep keep
 lib,cli: Add suppressed colab flag 
plugins/train/trainer/_base.py