def METHOD_NAME(args):
    # make sure the output files is not going to overwrite anything
    if filesnpaths.is_file_exists(args.output_file, dont_raise=True):
        raise ConfigError(f"There is already a file at '{args.output_file}' :/ Anvi'o has a thing against overwriting existing files. "
                          f"Please remove the exiting file first, or give a different output file name to this program.")
    # make sure we can write to the output file
    filesnpaths.is_output_file_writable(args.output_file)
    if not args.annotation_source and not args.list_annotation_sources:
        raise ConfigError("You must declare a function annotation source with `--annotation-source` parameter to be used for the "
                          "functional enrichment analysis (well, obviously). If you don't know what is available, you can use "
                          "`--list-annotation-sources` flag to find out what is there.")
    s = summarizer.PanSummarizer(args, lazy_init=True)
    s.functional_enrichment_stats()