

'''simple docstring'''
from collections import defaultdict


def        _lowerCAmelCase					(						_UpperCamelCase						:     str							, _UpperCamelCase						:     str				)      ->			bool:
     """simple docstring"""




     _SCREAMING_SNAKE_CASE							    =first_str.lower().strip()
     _SCREAMING_SNAKE_CASE							    =second_str.lower().strip()

     # Remove whitespace
     _SCREAMING_SNAKE_CASE							    =first_str.replace(' '							, ''				)
     _SCREAMING_SNAKE_CASE							    =second_str.replace(' '							, ''				)

     # Strings of different lengths are not anagrams
     if len(_UpperCamelCase				) != len(_UpperCamelCase				):
          return False

     # Default values for count should be 0
     _SCREAMING_SNAKE_CASE							    =defaultdict(_UpperCamelCase				)

     # For each character in input strings,
     # increment count in the corresponding
     for i in range(len(_UpperCamelCase				)				):
          count[first_str[i]] += 1
          count[second_str[i]] -= 1

     return all(_count == 0 for _count in count.values()				)


if __name__ == "__main__":
     from doctest import testmod

     testmod()
     lowerCamelCase :      Optional[int]					 =     input("Enter the first string ").strip()
     lowerCamelCase :      Optional[Any]					 =     input("Enter the second string ").strip()

     lowerCamelCase :      List[str]					 =     check_anagrams(input_a, input_b)
     print(f'''{input_a} and {input_b} are {"" if status else "not "}anagrams.''')





from collections import defaultdict

from graphs.minimum_spanning_tree_prims import prisms_algorithm as mst





def      __snake_case	(			):
    __a       ,   __a						       =				9, 14  # noqa: F841
    __a						       =				[
        [0, 1, 4],
        [0, 7, 8],
        [1, 2, 8],
        [7, 8, 7],
        [7, 6, 1],
        [2, 8, 2],
        [8, 6, 6],
        [2, 3, 7],
        [2, 5, 4],
        [6, 5, 2],
        [3, 5, 14],
        [3, 4, 9],
        [5, 4, 10],
        [1, 7, 11],
    ]

    __a						       =				defaultdict(_UpperCAmelCase				)
    for nodea, nodea, cost in edges:
        adjancency[nodea].append([nodea, cost]				)
        adjancency[nodea].append([nodea, cost]				)

    __a						       =				mst(_UpperCAmelCase				)

    __a						       =				[
        [7, 6, 1],
        [2, 8, 2],
        [6, 5, 2],
        [0, 1, 4],
        [2, 5, 4],
        [2, 3, 7],
        [0, 7, 8],
        [3, 4, 9],
    ]

    for answer in expected:
        __a						       =				tuple(answer[:2]				)
        __a						       =				tuple(edge[::-1]				)
        assert edge in result or reverse in result





