import re






def  snake_case  (       snake_case__			:str)						->   bool:
       _A        =  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(snake_case__   ,	snake_case__))


if __name__ == "__main__":
    _SCREAMING_SNAKE_CASE										=						'0094702343221'

    print(is_sri_lankan_phone_number(phone))





import math
import sys






def  snake_case  (       snake_case__			:int)						->   int:
       if number != int(snake_case__):
              raise ValueError("""the value of input must be a natural number""")
       if number < 0:
              raise ValueError("""the value of input must not be a negative number""")
       if number == 0:
              return 1
       _A        =  [-1] * (number + 1)
       _A        =  0
       for i in range(1   ,	number + 1):
              _A        =  sys.maxsize
              _A        =  int(math.sqrt(snake_case__))
              for j in range(1   ,	root + 1):
                     _A        =  1 + answers[i - (j**2)]
                     _A        =  min(snake_case__   ,	snake_case__)
              _A        =  answer
       return answers[number]


if __name__ == "__main__":
    import doctest

    doctest.testmod()




