def cons(pattern: Union[str, Pattern]) -> 'Regex': spec = pattern.pattern if isinstance(pattern, Pattern) else pattern rex = pattern if isinstance(pattern, Pattern) else re.compile(pattern) return Regex(spec, rex)