






"""simple docstring"""



def 						lowerCamelCase_				(  __A  :		str			,	__A  :		str			):
					if not isinstance(__A			,	__A			):
										raise TypeError('plaintext must be a string'			)
					if not isinstance(__A			,	__A			):
										raise TypeError('key must be a string'			)

					if not plaintext:
										raise ValueError('plaintext is empty'			)
					if not key:
										raise ValueError('key is empty'			)

					key += plaintext
					lowerCamelCase__				=plaintext.lower()
					lowerCamelCase__				=key.lower()
					lowerCamelCase__				=0
					lowerCamelCase__				=0
					lowerCamelCase__				=''
					while plaintext_iterator < len(__A			):
										if (
										    ord(plaintext[plaintext_iterator]			) < 97
										    or ord(plaintext[plaintext_iterator]			) > 122
										):
															ciphertext += plaintext[plaintext_iterator]
															plaintext_iterator += 1
										elif ord(key[key_iterator]			) < 97 or ord(key[key_iterator]			) > 122:
															key_iterator += 1
										else:
															ciphertext += chr(
															    (
															        (ord(plaintext[plaintext_iterator]			) - 97 + ord(key[key_iterator]			))
															        - 97
															    )
															    % 26
															    + 97			)
															key_iterator += 1
															plaintext_iterator += 1
					return ciphertext




def 						lowerCamelCase_				(  __A  :		str			,	__A  :		str			):
					if not isinstance(__A			,	__A			):
										raise TypeError('ciphertext must be a string'			)
					if not isinstance(__A			,	__A			):
										raise TypeError('key must be a string'			)

					if not ciphertext:
										raise ValueError('ciphertext is empty'			)
					if not key:
										raise ValueError('key is empty'			)

					lowerCamelCase__				=key.lower()
					lowerCamelCase__				=0
					lowerCamelCase__				=0
					lowerCamelCase__				=''
					while ciphertext_iterator < len(__A			):
										if (
										    ord(ciphertext[ciphertext_iterator]			) < 97
										    or ord(ciphertext[ciphertext_iterator]			) > 122
										):
															plaintext += ciphertext[ciphertext_iterator]
										else:
															plaintext += chr(
															    (ord(ciphertext[ciphertext_iterator]			) - ord(key[key_iterator]			)) % 26
															    + 97			)
															key += chr(
															    (ord(ciphertext[ciphertext_iterator]			) - ord(key[key_iterator]			)) % 26
															    + 97			)
															key_iterator += 1
										ciphertext_iterator += 1
					return plaintext


if __name__ == "__main__":
						import doctest

						doctest.testmod()
						_snake_case       :      Any       =					int(input("Type 1 to encrypt or 2 to decrypt:"))
						if operation == 1:
												_snake_case       :      List[str]       =					input("Typeplaintext to be encrypted:\n")
												_snake_case       :      Union[str, Any]       =					input("Type the key:\n")
												print(encrypt(plaintext, key))
						elif operation == 2:
												_snake_case       :      Tuple       =					input("Type the ciphertext to be decrypted:\n")
												_snake_case       :      Dict       =					input("Type the key:\n")
												print(decrypt(ciphertext, key))
						decrypt("jsqqs avvwo", "coffee")







"""simple docstring"""



_snake_case       :      Dict       =					[0.485, 0.456, 0.406]
_snake_case       :      int       =					[0.229, 0.224, 0.225]
_snake_case       :      Optional[int]       =					[0.5, 0.5, 0.5]
_snake_case       :      str       =					[0.5, 0.5, 0.5]
_snake_case       :      str       =					[0.4814_5466, 0.457_8275, 0.4082_1073]
_snake_case       :      str       =					[0.2686_2954, 0.2613_0258, 0.2757_7711]