code: def backup(filenames, prefix="error"):
      
      num = max([0] + [int(f.split(".")[1])
                       for f in glob("{}.*.tar.gz".format(prefix))])
      filename = "{}.{}.tar.gz".format(prefix, num + 1)
      logging.info("Backing up run to {}.".format(filename))
      with tarfile.open(filename, "w:gz") as tar:
          for fname in filenames:
              for f in glob(fname):
                  tar.add(f)
docs: Backup files to a tar.gz file. Used, for example, in backing up the
      files of an errored run before performing corrections.
  
      Args:
          filenames ([str]): List of files to backup. Supports wildcards, e.g.,
              *.*.
          prefix (str): prefix to the files. Defaults to error, which means a
              series of error.1.tar.gz, error.2.tar.gz, ... will be generated.