


"""simple docstring"""




def        lowercase							(		lowerCAmelCase__ :     str = "The quick brown fox jumps over the lazy dog"    ,					) ->      bool:
		__a           =			set()

		# Replace all the whitespace in our sentence
		__a           =			input_str.replace(''' '''    ,					''''''			)
		for alpha in input_str:
				if "a" <= alpha.lower() <= "z":
						frequency.add(alpha.lower()			)
		return len(lowerCAmelCase__			) == 26

def        lowercase							(		lowerCAmelCase__ :     str = "The quick brown fox jumps over the lazy dog"    ,					) ->      bool:
		__a           =			[False] * 26
		for char in input_str:
				if char.islower():
						__a           =			True
				elif char.isupper():
						__a           =			True
		return all(lowerCAmelCase__			)

def        lowercase							(		lowerCAmelCase__ :     str = "The quick brown fox jumps over the lazy dog"    ,					) ->      bool:
		return len({char for char in input_str.lower() if char.isalpha()}			) == 26

def        lowercase							(		) ->      None:
		from timeit import timeit

		__a           =			'''from __main__ import is_pangram, is_pangram_faster, is_pangram_fastest'''
		print(timeit('''is_pangram()'''    ,					setup=lowerCAmelCase__			)			)
		print(timeit('''is_pangram_faster()'''    ,					setup=lowerCAmelCase__			)			)
		print(timeit('''is_pangram_fastest()'''    ,					setup=lowerCAmelCase__			)			)
		# 5.348480500048026, 2.6477354579837993, 1.8470395830227062
		# 5.036091582966037, 2.644472333951853,  1.8869528750656173


if __name__ == "__main__":
				import doctest

				doctest.testmod()
				benchmark()













from collections import defaultdict

from graphs.minimum_spanning_tree_prims import prisms_algorithm as mst





def      lowerCAmelCase_ (       )     ->		Optional[int]:







  """simple docstring"""





  lowerCamelCase__  ,					lowerCamelCase__:      int			  =9, 14  # noqa: F841
  lowerCamelCase__:      List[Any]			  =[
      [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],
  ]

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

  lowerCamelCase__:      List[str]			  =mst(__a		)

  lowerCamelCase__:      Union[str, Any]			  =[
      [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:
    lowerCamelCase__:      Optional[int]			  =tuple(answer[:2]		)
    lowerCamelCase__:      List[Any]			  =tuple(edge[::-1]		)
    assert edge in result or reverse in result

