



import functools
def 	snake_case__       (					__lowercase							,     __lowercase       )		->		int:







						"""simple docstring"""

						A__	:							Tuple						    = len(__lowercase       )
						A__	:							Optional[int]						    = len(__lowercase       )

						@functools.cache
						def min_distance(__lowercase							,     __lowercase       ) -> int:
												# if first word index is overflow - delete all from the second word
												if indexa >= len_worda:
																		return len_worda - indexa
												# if second word index is overflow - delete all from the first word
												if indexa >= len_worda:
																		return len_worda - indexa
												A__	:							Any						    = int(worda[indexa] != worda[indexa]       )  # current letters not identical
												return min(
												    1 + min_distance(indexa + 1							,     __lowercase       )							,     1 + min_distance(__lowercase							,     indexa + 1       )							,     diff + min_distance(indexa + 1							,     indexa + 1       )							,     )

						return min_distance(0							,     0       )


if __name__ == "__main__":
		import doctest

		doctest.testmod()




def 	snake_case__       (					)		->		Union[str, Any]:







						"""simple docstring"""

						A__	:							Tuple						    = []
						A__	:							Optional[int]						    = 1

						while len(__lowercase       ) < 1E6:
												constant.append(str(__lowercase       )       )
												i += 1

						A__	:							Any						    = "".join(__lowercase       )

						return (
						    int(constant[0]       )
						    * int(constant[9]       )
						    * int(constant[9_9]       )
						    * int(constant[9_9_9]       )
						    * int(constant[9_9_9_9]       )
						    * int(constant[9_9_9_9_9]       )
						    * int(constant[9_9_9_9_9_9]       )
						)


if __name__ == "__main__":
		print(solution())