






import importlib.metadata
import operator
import re
import sys
from typing import Optional

from packaging import version


lowerCamelCase     :							Union[str, Any]    ={
    '''<''': operator.lt,
    '''<=''': operator.le,
    '''==''': operator.eq,
    '''!=''': operator.ne,
    '''>=''': operator.ge,
    '''>''': operator.gt,
}







def 		SCREAMING_SNAKE_CASE							( __lowerCAmelCase ,   __lowerCAmelCase ,   __lowerCAmelCase ,   __lowerCAmelCase ,   __lowerCAmelCase ,   __lowerCAmelCase      )			->     str:
     if got_ver is None or want_ver is None:
          raise ValueError(
              f'Unable to compare versions for {requirement}: need={want_ver} found={got_ver}. This is unusual. Consider'
              f' reinstalling {pkg}.'      )
     if not ops[op](version.parse(__lowerCAmelCase      ) ,   version.parse(__lowerCAmelCase      )      ):
          raise ImportError(
              f'{requirement} is required for a normal functioning of this module, but found {pkg}=={got_ver}.{hint}'      )







def 		SCREAMING_SNAKE_CASE							( __lowerCAmelCase ,   __lowerCAmelCase = None      )			->     None:
     UpperCamelCase__      :       Optional[Any]	    =  f'\n{hint}' if hint is not None else ""

     # non-versioned check
     if re.match(R"^[\w_\-\d]+$" ,   __lowerCAmelCase      ):
          UpperCamelCase__    ,					UpperCamelCase__    ,					UpperCamelCase__      :       Any	    =  requirement, None, None
     else:
          UpperCamelCase__      :       int	    =  re.findall(R"^([^!=<>\s]+)([\s!=<>]{1,2}.+)" ,   __lowerCAmelCase      )
          if not match:
               raise ValueError(
                   "requirement needs to be in the pip package format, .e.g., package_a==1.23, or package_b>=1.23, but"
                   f' got {requirement}'      )
          UpperCamelCase__    ,					UpperCamelCase__      :       Any	    =  match[0]
          UpperCamelCase__      :       Union[str, Any]	    =  want_full.split(","      )  # there could be multiple requirements
          UpperCamelCase__      :       Optional[Any]	    =  {}
          for w in want_range:
               UpperCamelCase__      :       Tuple	    =  re.findall(R"^([\s!=<>]{1,2})(.+)" ,   __lowerCAmelCase      )
               if not match:
                    raise ValueError(
                        "requirement needs to be in the pip package format, .e.g., package_a==1.23, or package_b>=1.23,"
                        f' but got {requirement}'      )
               UpperCamelCase__    ,					UpperCamelCase__      :       Union[str, Any]	    =  match[0]
               UpperCamelCase__      :       Union[str, Any]	    =  want_ver
               if op not in ops:
                    raise ValueError(f'{requirement}: need one of {list(ops.keys()      )}, but got {op}'      )

    # special case
     if pkg == "python":
          UpperCamelCase__      :       Optional[Any]	    =  ".".join([str(__lowerCAmelCase      ) for x in sys.version_info[:3]]      )
          for op, want_ver in wanted.items():
               _compare_versions(__lowerCAmelCase ,   __lowerCAmelCase ,   __lowerCAmelCase ,   __lowerCAmelCase ,   __lowerCAmelCase ,   __lowerCAmelCase      )
          return

     # check if any version is installed
     try:
          UpperCamelCase__      :       Union[str, Any]	    =  importlib.metadata.version(__lowerCAmelCase      )
     except importlib.metadata.PackageNotFoundError:
          raise importlib.metadata.PackageNotFoundError(
              f'The \'{requirement}\' distribution was not found and is required by this application. {hint}'      )

     # check that the right version is installed if version number or a range was provided
     if want_ver is not None:
          for op, want_ver in wanted.items():
               _compare_versions(__lowerCAmelCase ,   __lowerCAmelCase ,   __lowerCAmelCase ,   __lowerCAmelCase ,   __lowerCAmelCase ,   __lowerCAmelCase      )







def 		SCREAMING_SNAKE_CASE							( __lowerCAmelCase      )			->     Optional[int]:
     UpperCamelCase__      :       List[Any]	    =  "Try: pip install transformers -U or pip install -e '.[dev]' if you're working with git main"
     return require_version(__lowerCAmelCase ,   __lowerCAmelCase      )







import re







def 		SCREAMING_SNAKE_CASE							( __lowerCAmelCase      )			->     bool:
     UpperCamelCase__      :       Union[str, Any]	    =  re.compile(
         R"^(?:0|94|\+94|0{2}94)" R"7(0|1|2|4|5|6|7|8)" R"(-| |)" R"\d{7}$"      )

     return bool(re.search(__lowerCAmelCase ,   __lowerCAmelCase      )      )


if __name__ == "__main__":
 lowerCamelCase     :							Union[str, Any]    ='''0094702343221'''

 print(is_sri_lankan_phone_number(phone))