


def 			__lowercase	(						_UpperCamelCase,    _UpperCamelCase     )    ->int:







      """simple docstring"""

      if len(_UpperCamelCase     ) < len(_UpperCamelCase     ):
            return levenshtein_distance(_UpperCamelCase,    _UpperCamelCase     )

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

      lowercase			:   List[str]					   =		list(range(len(_UpperCamelCase     ) + 1     )     )

      for i, ca in enumerate(_UpperCamelCase     ):
            lowercase			:   Union[str, Any]					   =		[i + 1]

            for j, ca in enumerate(_UpperCamelCase     ):
                  # Calculate insertions, deletions and substitutions
                  lowercase			:   Dict					   =		previous_row[j + 1] + 1
                  lowercase			:   List[str]					   =		current_row[j] + 1
                  lowercase			:   Tuple					   =		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
            lowercase			:   Optional[Any]					   =		current_row

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


if __name__ == "__main__":
  __a   				=      input('''Enter the first word:\n''').strip()
  __a   				=      input('''Enter the second word:\n''').strip()

  __a   				=      levenshtein_distance(first_word, second_word)
  print(F'''Levenshtein distance between {first_word} and {second_word} is {result}''')




from __future__ import annotations




def 			__lowercase	(						_UpperCamelCase     )    ->list[int]:







      """simple docstring"""

      assert (
          isinstance(_UpperCamelCase,    _UpperCamelCase     ) and mask > 0
      ), f"""mask needs to be positive integer, your input {mask}"""
      lowercase			:   Optional[int]					   =		[]
      lowercase			:   Optional[int]					   =		mask

      while submask:
            all_submasks.append(_UpperCamelCase     )
            lowercase			:   Dict					   =		(submask - 1) & mask

      return all_submasks


if __name__ == "__main__":
  import doctest

  doctest.testmod()

