code: def main():
      parser = argparse.ArgumentParser(
          "Main script to compare results from the benchmarks"
      )
      parser.add_argument(
          "--before",
          type=str,
          default="before.txt",
          help="Text file containing the times to use as base",
      )
      parser.add_argument(
          "--after",
          type=str,
          default="after.txt",
          help="Text file containing the times to use as new version",
      )
      parser.add_argument(
          "--output",
          type=str,
          default="",
          help="Text file where to write the output",
      )
      args = parser.parse_args()
  
      with open(args.before) as f:
          content = f.read()
      res_before = from_markdown_table(content)
  
      with open(args.after) as f:
          content = f.read()
      res_after = from_markdown_table(content)
  
      diff = defaultdict(defaultdict)
      for model in res_before:
          for task in res_before[model]:
              mean_before, var_before = res_before[model][task]
              if task not in res_after[model]:
                  diff[model][task] = (
                      None,
                      mean_before,
                      var_before,
                      None,
                      None,
                  )
              else:
                  mean_after, var_after = res_after[model][task]
                  diff[model][task] = (
                      mean_before / mean_after,
                      mean_before,
                      var_before,
                      mean_after,
                      var_after,
                  )
      for model in res_after:
          for task in res_after[model]:
              if task not in res_before[model]:
                  mean_after, var_after = res_after[model][task]
                  diff[model][task] = (
                      None,
                      None,
                      None,
                      mean_after,
                      var_after,
                  )
  
      header = (
          "model",
          "task",
          "speedup",
          "mean (before)",
          "var (before)",
          "mean (after)",
          "var (after)",
      )
      out = to_markdown_table(diff, header=header)
  
      print(out)
      if args.output:
          with open(args.output, "w") as f:
              f.write(out)
  
label_desc: Use image node_id 1 for calling a global function with example usage: main() without return types