def METHOD_NAME():
    """The main function. Hier spielt die Musik.
    """
    # parse the command line, exit with UNKNOWN if it fails
    try:
        args = parse_args()
    except SystemExit:
        sys.exit(STATE_UNKNOWN)
    if args.TEST is None:
        # get the values the normal way
        stdout, stderr, retc = lib.base.coe(lib.shell.shell_exec(
            'systemctl --state=failed --no-pager --no-legend'))
    else:
        # do not call the command, put in test data
        stdout, stderr, retc = lib.test.test(args.TEST)
    if retc != 0:
        lib.base.cu('systemctl was unable to return any data.')
    msg = 'Everything is ok.'
    table = ''
    state = STATE_OK
    count = 0
    failed_units = stdout.splitlines()
    if len(failed_units) > 0:
        table_data = []
        offset = 0
        for line in failed_units:
            if line.startswith('*'):
                offset = 1
            unit = line.split()
            if any([fnmatch.fnmatchcase(unit[0 + offset], ignore) for ignore in args.IGNORE]):
                continue
            count += 1
            table_data.append({
                'unit': unit[0 + offset],
                'load': unit[1 + offset],
                'active': unit[2 + offset],
                'sub': unit[3 + offset],
                'description': ' '.join(unit[4 + offset:]),
            })
        if count > 0:
            state = STATE_WARN
            msg = 'There {} {} failed {}.\n'.format(
                lib.txt.pluralize('', count, 'is,are'),
                count,
                lib.txt.pluralize('unit', count),
            )
            table = lib.base.get_table(
                table_data,
                ['unit', 'load', 'active', 'sub', 'description'],
                ['unit', 'load', 'active', 'sub', 'description'],
            )
    perfdata = lib.base.get_perfdata('systemd-units-failed', count, None, 1, None, 0, None)
    # over and out
    lib.base.oao('{}\n\n{}'.format(msg, table), state, perfdata, always_ok=args.ALWAYS_OK)