
def      _a     (   __UpperCamelCase       :  str	,__UpperCamelCase       :  str    ):
			# The longer word should come first
			if len(__UpperCamelCase    ) < len(__UpperCamelCase    ):
						return levenshtein_distance(__UpperCamelCase	,__UpperCamelCase    )

			if len(__UpperCamelCase    ) == 0:
						return len(__UpperCamelCase    )

			lowerCAmelCase__ :    int				      =			list(range(len(__UpperCamelCase    ) + 1    )    )

			for i, ca in enumerate(__UpperCamelCase    ):
						lowerCAmelCase__ :    List[str]				      =			[i + 1]

						for j, ca in enumerate(__UpperCamelCase    ):
									# Calculate insertions, deletions and substitutions
									lowerCAmelCase__ :    List[Any]				      =			previous_row[j + 1] + 1
									lowerCAmelCase__ :    Dict				      =			current_row[j] + 1
									lowerCAmelCase__ :    int				      =			previous_row[j] + (ca != ca)

									# Get the minimum to append to the current row
									current_row.append(min(__UpperCamelCase	,__UpperCamelCase	,__UpperCamelCase    )    )

						# Store the previous row
						lowerCAmelCase__ :    Optional[int]				      =			current_row

			# Returns the last element (distance)
			return previous_row[-1]


if __name__ == "__main__":
							A__       :   Union[str, Any]   						=					input("""Enter the first word:\n""").strip()
							A__       :   int   						=					input("""Enter the second word:\n""").strip()

							A__       :   int   						=					levenshtein_distance(first_word, second_word)
							print(f"""Levenshtein distance between {first_word} and {second_word} is {result}""")





import unittest
from pathlib import Path
from tempfile import TemporaryDirectory
from unittest.mock import Mock, patch

import diffusers.utils.hub_utils





class 						lowercase       (  unittest.TestCase					):
					@patch('''diffusers.utils.hub_utils.get_full_repo_name'''    )
					def lowercase_			(		self ,	SCREAMING_SNAKE_CASE__    ):
								"""simple docstring"""







								lowerCAmelCase__ :    str				      =			'''full_repo_name'''
								with TemporaryDirectory() as tmpdir:
											# Dummy args values
											lowerCAmelCase__ :    Optional[int]				      =			Mock()
											lowerCAmelCase__ :    Optional[int]				      =			tmpdir
											lowerCAmelCase__ :    Optional[Any]				      =			0
											lowerCAmelCase__ :    Optional[int]				      =			'''hub_token'''
											lowerCAmelCase__ :    Tuple				      =			'''dataset_name'''
											lowerCAmelCase__ :    int				      =			0.01
											lowerCAmelCase__ :    Optional[int]				      =			100000
											lowerCAmelCase__ :    Any				      =			10000
											lowerCAmelCase__ :    Union[str, Any]				      =			0.01
											lowerCAmelCase__ :    int				      =			0.02
											lowerCAmelCase__ :    Union[str, Any]				      =			0.03
											lowerCAmelCase__ :    str				      =			0.0_005
											lowerCAmelCase__ :    Dict				      =			0.000_001
											lowerCAmelCase__ :    Tuple				      =			1
											lowerCAmelCase__ :    Optional[int]				      =			10
											lowerCAmelCase__ :    int				      =			0.001
											lowerCAmelCase__ :    Union[str, Any]				      =			0.1
											lowerCAmelCase__ :    Tuple				      =			0.2
											lowerCAmelCase__ :    Optional[int]				      =			True

											# Model card mush be rendered and saved
											diffusers.utils.hub_utils.create_model_card(SCREAMING_SNAKE_CASE__ ,	model_name='''model_name'''    )
											self.assertTrue((Path(SCREAMING_SNAKE_CASE__    ) / '''README.md''').is_file()    )



