
'''simple docstring'''





from string import ascii_uppercase

def   A			(							A_				:       str     ,				A_				:       str     ,				A_				:       bool = False     ,				A_				:       str = ascii_uppercase							):
						snake_case							:  Union[str, Any]			=     keyword.upper()
						snake_case							:  Optional[int]			=     plaintext.upper()
						snake_case							:  List[str]			=     set(A_							)

						# create a list of unique characters in the keyword - their order matters
						# it determines how we will map plaintext characters to the ciphertext
						snake_case							:  Any			=     []
						for char in keyword:
												if char in alphabet_set and char not in unique_chars:
																		unique_chars.append(A_							)
    # the number of those unique characters will determine the number of rows
						snake_case							:  List[str]			=     len(A_							)

						# create a shifted version of the alphabet
						snake_case							:  Tuple			=     unique_chars + [
						    char for char in alphabet if char not in unique_chars
						]

						# create a modified alphabet by splitting the shifted alphabet into rows
						snake_case							:  Union[str, Any]			=     [
						    shifted_alphabet[k : k + num_unique_chars_in_keyword]
						    for k in range(0     ,				26     ,				A_							)
						]

						# map the alphabet characters to the modified alphabet characters
						# going 'vertically' through the modified alphabet - consider columns first
						snake_case							:  Dict			=     {}
						snake_case							:  int			=     0
						for column in range(A_							):
												for row in modified_alphabet:
																		# if current row (the last one) is too short, break out of loop
																		if len(A_							) <= column:
																								break

																		# map current letter to letter in modified alphabet
																		snake_case							:  Tuple			=     row[column]
																		letter_index += 1

						if verbose:
												print(A_							)
						# create the encrypted text by mapping the plaintext to the modified alphabet
						return "".join(mapping[char] if char in mapping else char for char in plaintext							)


if __name__ == "__main__":
						# example use
						print(mixed_keyword("college", "UNIVERSITY"))



'''simple docstring'''





def   A			(							A_				:       int							):
						return n * (2 * n - 1)

def   A			(							A_				:       int							):
						snake_case							:  Optional[Any]			=     (1 + 24 * n) ** 0.5
						return ((1 + root) / 6) % 1 == 0

def   A			(							A_				:       int = 144							):
						snake_case							:  Any			=     start
						snake_case							:  Any			=     hexagonal_num(A_							)
						while not is_pentagonal(A_							):
												n += 1
												snake_case							:  Optional[Any]			=     hexagonal_num(A_							)
						return num


if __name__ == "__main__":
						print(f'''{solution()} = ''')

