def METHOD_NAME():
    argv = sys.argv[1:]
    try:
        opts, args = getopt.getopt(
            argv,
            "hvio:rs:c:e:tnb:",
            [
                "editorconfig",
                "help",
                "usage",
                "version",
                "stdin",
                "outfile=",
                "replace",
                "indent-size=",
                "indent-char=",
                "eol=",
                "indent-with-tabs",
                "preserve-newlines",
                "brace-style=",
                "disable-selector-separator-newline",
                "end-with-newline",
                "disable-newline-between-rules",
                "space-around-combinator",
                "indent-empty-lines",
            ],
        )
    except getopt.GetoptError as ex:
        print(ex, file=sys.stderr)
        return usage(sys.stderr)
    css_options = default_options()
    filepath_params = []
    filepath_params.extend(args)
    outfile_param = "stdout"
    replace = False
    for opt, arg in opts:
        if opt in ("--stdin", "-i"):
            file = "-"
        elif opt in ("--outfile", "-o"):
            outfile = arg
        elif opt in ("--replace", "-r"):
            replace = True
        elif opt in ("--version", "-v"):
            return print(__version__)
        elif opt in ("--help", "--usage", "-h"):
            return usage()
        elif opt in ("--indent-size", "-s"):
            css_options.indent_size = int(arg)
        elif opt in ("--indent-char", "-c"):
            css_options.indent_char = arg
        elif opt in ("--eol", "-e"):
            css_options.eol = arg
        elif opt in ("--indent-with-tabs", "-t"):
            css_options.indent_with_tabs = True
        elif opt in ("--preserve-newlines",):
            css_options.preserve_newlines = True
        elif opt in ("--disable-selector-separator-newline",):
            css_options.selector_separator_newline = False
        elif opt in ("--brace-style", "-b"):
            css_options.brace_style = arg
        elif opt in ("--end-with-newline", "-n"):
            css_options.end_with_newline = True
        elif opt in ("--disable-newline-between-rules",):
            css_options.newline_between_rules = False
        elif opt in ("--space-around-combinator",):
            css_options.space_around_combinator = True
        elif opt in ("--indent-empty-lines",):
            css_options.indent_empty_lines = True
        elif opt in ("--editorconfig",):
            css_options.editorconfig = True
    try:
        filepaths, replace = get_filepaths_from_params(filepath_params, replace)
        for filepath in filepaths:
            if not replace:
                outfile = outfile_param
            else:
                outfile = filepath
            css_options = integrate_editorconfig_options(
                filepath, css_options, outfile, "js"
            )
            pretty = beautify_file(filepath, css_options)
            write_beautified_output(pretty, css_options, outfile)
    except MissingInputStreamError:
        print("Must pipe input or define at least one file.\n", file=sys.stderr)
        usage(sys.stderr)
        return 1
    except UnicodeError as ex:
        print("Error while decoding input or encoding output:", file=sys.stderr)
        print(ex, file=sys.stderr)
        return 1
    except Exception as ex:
        print(ex, file=sys.stderr)
        return 1
    # Success
    return 0