code: def main():
      params = linter_params.get_params()
  
      black_parser_logger = logging.getLogger("blib2to3.pgen2.driver")
      black_parser_logger.setLevel(logging.WARNING)
  
      style_config_path = params.configs[0]
      black_config = black.parse_pyproject_toml(style_config_path)
  
      report = reporter.LintReport()
      for file_name in params.files:
          start_time = time.time()
          error = process_file(file_name, black_config)
          elapsed = time.time() - start_time
  
          if error:
              rel_file_name = os.path.relpath(
                  file_name, params.source_root
              )
              message = (
                  "Run [[imp]]ya style {}[[rst]] to fix format\n".format(
                      rel_file_name
                  )
                  + error
              )
              status = reporter.LintStatus.FAIL
          else:
              message = ""
              status = reporter.LintStatus.GOOD
          report.add(file_name, status, message, elapsed=elapsed)
  
      report.dump(params.report_file)
  
file_path: catboost/tools/black_linter/bin/__main__.py
imports: import contextlib
  import io
  import logging
  import os
  import sys
  import time
  from pathlib import Path
  import yalibrary.term.console
  from library.python.testing.custom_linter_util import linter_params, reporter
  import black
  import black.files
  import black.report
  import black.mode
label_desc: Use image node_id 5 for calling a global function with example usage: main() without return types