              if thread.has_error:
                  logger.error(thread.errors[0])
              thread.join()
          # Put in a line break to avoid jumbled console
          print("\n")
          logger.info("saved models")
  
      def get_save_averages(self):
          """ Return the loss averages since last save and reset historical losses
  
 
</s> remove     def save_models(self):
 </s> add     def save_models(self, snapshot_iteration): </s> remove                                         name="save_state", should_backup=should_backup))
 </s> add                                         name="save_state",
                                        should_backup=should_backup,
                                        snapshot=snapshot_iteration)) </s> remove     def save(self, should_backup=False):
 </s> add     def save(self, should_backup=False, snapshot=False):
              if thread.has_error:
                  logger.error(thread.errors[0])
              thread.join()
          # Put in a line break to avoid jumbled console

          logger.info("saved models")
  
      def get_save_averages(self):
          """ Return the loss averages since last save and reset historical losses
  
keep keep keep keep replace keep keep keep keep keep
 Add save snapshot backup option for training 
plugins/train/model/_base.py