


"""simple docstring"""
import numpy as np

__SCREAMING_SNAKE_CASE							:      Optional[int]						=      [
    ['a', 'b', 'c', 'd', 'e'],
    ['f', 'g', 'h', 'i', 'k'],
    ['l', 'm', 'n', 'o', 'p'],
    ['q', 'r', 's', 't', 'u'],
    ['v', 'w', 'x', 'y', 'z'],
]





class        __A       :





							'''simple docstring'''

							def __init__(			self							: Dict    )   ->None:



														"""simple docstring"""



														snake_case_          =						np.array(UpperCAmelCase_    )



							def 						lowerCAmelCase    (			self							: Any						,    UpperCAmelCase_							: str    )   ->np.ndarray:



														"""simple docstring"""



														snake_case_    ,  snake_case_          =						np.where(letter == self.SQUARE    )
														snake_case_          =						np.concatenate([indexa + 1, indexa + 1]    )
														return indexes



							def 						lowerCAmelCase    (			self							: Optional[Any]						,    UpperCAmelCase_							: int						,    UpperCAmelCase_							: int    )   ->str:



														"""simple docstring"""



														snake_case_          =						self.SQUARE[indexa - 1, indexa - 1]
														return letter



							def 						lowerCAmelCase    (			self							: Optional[Any]						,    UpperCAmelCase_							: str    )   ->str:



														"""simple docstring"""



														snake_case_          =						message.lower()
														snake_case_          =						message.replace(""" """						,    """"""    )
														snake_case_          =						message.replace("""j"""						,    """i"""    )

														snake_case_          =						np.empty((2, len(UpperCAmelCase_    ))    )
														for letter_index in range(len(UpperCAmelCase_    )    ):
																					snake_case_          =						self.letter_to_numbers(message[letter_index]    )

																					snake_case_          =						numbers[0]
																					snake_case_          =						numbers[1]

														snake_case_          =						first_step.reshape(2 * len(UpperCAmelCase_    )    )
														snake_case_          =						""""""
														for numbers_index in range(len(UpperCAmelCase_    )    ):
																					snake_case_          =						int(second_step[numbers_index * 2]    )
																					snake_case_          =						int(second_step[(numbers_index * 2) + 1]    )
																					snake_case_          =						self.numbers_to_letter(UpperCAmelCase_						,    UpperCAmelCase_    )
																					snake_case_          =						encoded_message + letter

														return encoded_message



							def 						lowerCAmelCase    (			self							: str						,    UpperCAmelCase_							: str    )   ->str:



														"""simple docstring"""



														snake_case_          =						message.lower()
														message.replace(""" """						,    """"""    )
														snake_case_          =						np.empty(2 * len(UpperCAmelCase_    )    )
														for letter_index in range(len(UpperCAmelCase_    )    ):
																					snake_case_          =						self.letter_to_numbers(message[letter_index]    )
																					snake_case_          =						numbers[0]
																					snake_case_          =						numbers[1]

														snake_case_          =						first_step.reshape((2, len(UpperCAmelCase_    ))    )
														snake_case_          =						""""""
														for numbers_index in range(len(UpperCAmelCase_    )    ):
																					snake_case_          =						int(second_step[0, numbers_index]    )
																					snake_case_          =						int(second_step[1, numbers_index]    )
																					snake_case_          =						self.numbers_to_letter(UpperCAmelCase_						,    UpperCAmelCase_    )
																					snake_case_          =						decoded_message + letter

														return decoded_message







"""simple docstring"""
def   _a			( _SCREAMING_SNAKE_CASE			)      ->			int:
							assert column_title.isupper()
							snake_case_          =						0
							snake_case_          =						len(_SCREAMING_SNAKE_CASE			) - 1
							snake_case_          =						0

							while index >= 0:
														snake_case_          =						(ord(column_title[index]			) - 64) * pow(26			,	_SCREAMING_SNAKE_CASE			)
														answer += value
														power += 1
														index -= 1

							return answer


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

				testmod()



