
"""simple docstring"""

def 							A						(				snake_case      :int				,					snake_case      :int		)      ->	Optional[Any]:





 while b:
  __UpperCamelCase				  =       b, a % b
 return a






def 							A						(				snake_case      :int				,					snake_case      :int		)      ->	Optional[int]:
 return a if b == 0 else euclidean_gcd_recursive(UpperCAmelCase_				,					a % b		)






def 							A						(				)      ->	Optional[int]:
 print(f'euclidean_gcd(3, 5) = {euclidean_gcd(3				,					5		)}'		)
 print(f'euclidean_gcd(5, 3) = {euclidean_gcd(5				,					3		)}'		)
 print(f'euclidean_gcd(1, 3) = {euclidean_gcd(1				,					3		)}'		)
 print(f'euclidean_gcd(3, 6) = {euclidean_gcd(3				,					6		)}'		)
 print(f'euclidean_gcd(6, 3) = {euclidean_gcd(6				,					3		)}'		)

 print(f'euclidean_gcd_recursive(3, 5) = {euclidean_gcd_recursive(3				,					5		)}'		)
 print(f'euclidean_gcd_recursive(5, 3) = {euclidean_gcd_recursive(5				,					3		)}'		)
 print(f'euclidean_gcd_recursive(1, 3) = {euclidean_gcd_recursive(1				,					3		)}'		)
 print(f'euclidean_gcd_recursive(3, 6) = {euclidean_gcd_recursive(3				,					6		)}'		)
 print(f'euclidean_gcd_recursive(6, 3) = {euclidean_gcd_recursive(6				,					3		)}'		)


if __name__ == "__main__":
      main()







from __future__ import annotations

import collections
import pprint
from pathlib import Path
def 				__lowerCamelCase						( UpperCAmelCase_						:		str						):




      """simple docstring"""





      return "".join(sorted(UpperCAmelCase_						)						)
def 				__lowerCamelCase						( UpperCAmelCase_						:		str						):




      """simple docstring"""





      return word_by_signature[signature(UpperCAmelCase_						)]


snake_case				:    str       				=     Path(__file__).parent.joinpath('''words.txt''').read_text(encoding='''utf-8''')
snake_case				:    Optional[int]       				=     sorted({word.strip().lower() for word in data.splitlines()})

snake_case				:    str       				=     collections.defaultdict(list)
for word in word_list:
     word_by_signature[signature(word)].append(word)

if __name__ == "__main__":
     snake_case				:    Optional[int]       				=     {word: anagram(word) for word in word_list if len(anagram(word)) > 1}

     with open('''anagrams.txt''', '''w''') as file:
          file.write('''all_anagrams = \n ''')
          file.write(pprint.pformat(all_anagrams))





