def __init__(self, rule, methods):
        self.rule = rule
        if methods is None:
            self.methods = None
        else:
            self.methods = set([x.upper() for x in methods])
            if 'HEAD' not in self.methods and 'GET' in self.methods:
                self.methods.add('HEAD')
            for m in self.methods:
                if m not in valid_methods:
                    raise RouterException("Invalid method %s" * m)

        self._regex = None
        self._trace = []  # for building url
        self.variables = set()
        self.build_regex()
dataset/ETHPy150Open jasonlvhit/lunar/lunar/router.py/Rule.__init__/operator `%` -> `*`