code: def main():
      argparser = argparse.ArgumentParser()
      argparser.add_argument(
          "files", nargs="*", type=str, help="files to check"
      )
      args = argparser.parse_args()
  
      changed_files = [Path(x).absolute() for x in args.files]
      if len(changed_files) == 0:
          print("No changed files.")
          exit(0)
  
      failed_rules = process_rules(find_rules(changed_files))
      if len(failed_rules):
          print_colored(
              f"{len(failed_rules)} check(s) failed.", file=sys.stderr
          )
  
          exit(1)
  
file_path: determined/pre-commit/check.py
imports: import argparse
  import concurrent.futures
  import multiprocessing
  import os
  import subprocess
  import sys
  from pathlib import Path
  from typing import Dict, Iterable, List, Set, Tuple, Union
label_desc: Use image node_id 7 for calling a global function with example usage: main() without return types