






def 					snake_case	(  lowerCamelCase					,	lowerCamelCase       ):




	'''simple docstring'''







	__lowercase   							=	len(lowerCamelCase       ) + 1
	__lowercase   							=	len(lowerCamelCase       ) + 1

	# dp is a 2d matrix where dp[i][j] denotes whether prefix string of
	# length i of input_string matches with prefix string of length j of
	# given pattern.
	# "dp" stands for dynamic programming.
	__lowercase   							=	[[0 for i in range(lowerCamelCase       )] for j in range(lowerCamelCase       )]

	# since string of zero length match pattern of zero length
	__lowercase   							=	1

	# since pattern of zero length will never match with string of non-zero length
	for i in range(1					,	lowerCamelCase       ):
		__lowercase   							=	0

	# since string of zero length will match with pattern where there
	# is at least one * alternatively
	for j in range(1					,	lowerCamelCase       ):
		__lowercase   							=	dp[0][j - 2] if pattern[j - 1] == """*""" else 0

	# now using bottom-up approach to find for all remaining lengths
	for i in range(1					,	lowerCamelCase       ):
		for j in range(1					,	lowerCamelCase       ):
			if input_string[i - 1] == pattern[j - 1] or pattern[j - 1] == ".":
				__lowercase   							=	dp[i - 1][j - 1]

			elif pattern[j - 1] == "*":
				if dp[i][j - 2] == 1:
					__lowercase   							=	1
				elif pattern[j - 2] in (input_string[i - 1], "."):
					__lowercase   							=	dp[i - 1][j]
				else:
					__lowercase   							=	0
			else:
				__lowercase   							=	0

	return bool(dp[-1][-1]       )


if __name__ == "__main__":
						import doctest

						doctest.testmod()
						# inputing the strings
						# input_string = input("input a string :")
						# pattern = input("input a pattern :")

						__UpperCamelCase   :   Any      =    """aab"""
						__UpperCamelCase   :   Optional[Any]      =    """c*a*b"""

						# using function to check whether given string matches the given pattern
						if match_pattern(input_string, pattern):
												print(F'''{input_string} matches the given pattern {pattern}''')
						else:
												print(F'''{input_string} does not match with the given pattern {pattern}''')








import baseaa
def      A__       (    SCREAMING_SNAKE_CASE_   :      str						)  ->  bytes:






   """simple docstring"""







   return baseaa.baaencode(string.encode('''utf-8'''						)						)
def      A__       (    SCREAMING_SNAKE_CASE_   :      bytes						)  ->  str:






   """simple docstring"""







   return baseaa.baadecode(SCREAMING_SNAKE_CASE_						).decode('''utf-8'''						)


if __name__ == "__main__":
   UpperCAmelCase_           =	"Hello World!"
   UpperCAmelCase_           =	baseaa_encode(test)
   print(encoded)

   UpperCAmelCase_           =	baseaa_decode(encoded)
   print(decoded)