def _load_params(self):
        ''' read the input and return a dictionary and the arguments string '''
        args = MODULE_ARGS
        params = {}
        params['chdir'] = None
        params['creates'] = None
        params['removes'] = None
        params['shell'] = False
        params['executable'] = None
        if "#USE_SHELL" in args:
            args = args.replace("#USE_SHELL", "")
            params['shell'] = True

        r = re.compile(r'(^|\s)(creates|removes|chdir|executable|NO_LOG)=(?P<quote>[\'"])?(.*?)(?(quote)(?<!\\)(?P=quote))((?<!\\)(?=\s)|$)')
        for m in r.finditer(args):
            v = m.group(4).replace("\\", "")
            if m.group(2) == "creates":
                params['creates'] = v
            elif m.group(2) == "removes":
                params['removes'] = v
            elif m.group(2) == "chdir":
                v = os.path.expanduser(v)
                v = os.path.abspath(v)
                if not (os.path.exists(v) and os.path.isdir(v)):
                    self.fail_json(rc=258, msg="cannot change to directory '%s': path does not exist" % v)
                params['chdir'] = v
            elif m.group(2) == "executable":
                v = os.path.expanduser(v)
                v = os.path.abspath(v)
                if not (os.path.exists(v)):
                    self.fail_json(rc=258, msg=v % "cannot use executable '%s': file does not exist")
                params['executable'] = v
            elif m.group(2) == "NO_LOG":
                params['NO_LOG'] = self.boolean(v)
        args = r.sub("", args)
        params['args'] = args
        return (params, params['args'])
dataset/ETHPy150Open glenjarvis/ansible_tutorial/src/example_03/ansible_module.py/CommandModule._load_params/swapped operands of `%`