def lookup(self, path_info: str) -> MatchResult:
        """ lookup url match for path_info
        """
        for name, pattern in self.patterns.items():
            match = pattern.match(path_info)
            if match is None:
                continue
            match.name = name
            return match
        return None