"""simple docstring"""






from torch import nn




def     SCREAMING_SNAKE_CASE       (	__UpperCAmelCase							)				-> str:




				if act_fn in ["swish", "silu"]:
								return nn.SiLU()
				elif act_fn == "mish":
								return nn.Mish()
				elif act_fn == "gelu":
								return nn.GELU()
				else:
								raise ValueError(F"""Unsupported activation function: {act_fn}"""							)








"""simple docstring"""



from collections import Counter
from timeit import timeit
def      UpperCAmelCase     (       _lowercase :   str = ""			,   )						-> bool:


	"""simple docstring"""




	return sum(c % 2 for c in Counter(input_str.replace(''' '''			,   ''''''	).lower()	).values()	) < 2
def      UpperCAmelCase     (       _lowercase :   str = ""	)						-> bool:


	"""simple docstring"""




	if len(_lowercase	) == 0:
		return True
	lowerCAmelCase_      							=			input_str.replace(''' '''			,   ''''''	).lower()
	# character_freq_dict: Stores the frequency of every character in the input string
	lowerCAmelCase_      							=			{}

	for character in lower_case_input_str:
		lowerCAmelCase_      							=			character_freq_dict.get(_lowercase			,   0	) + 1
	lowerCAmelCase_      							=			0

	for character_count in character_freq_dict.values():
		if character_count % 2:
			odd_char += 1
	if odd_char > 1:
		return False
	return True
def      UpperCAmelCase     (       _lowercase :   str = ""	)						-> None:


	"""simple docstring"""




	print('''\nFor string = '''			,   _lowercase			,   ''':'''	)
	print(
	    '''> can_string_be_rearranged_as_palindrome_counter()'''			,   '''\tans ='''			,   can_string_be_rearranged_as_palindrome_counter(_lowercase	)			,   '''\ttime ='''			,   timeit(
	        '''z.can_string_be_rearranged_as_palindrome_counter(z.check_str)'''			,   setup='''import __main__ as z'''			,   )			,   '''seconds'''			,   )
	print(
	    '''> can_string_be_rearranged_as_palindrome()'''			,   '''\tans ='''			,   can_string_be_rearranged_as_palindrome(_lowercase	)			,   '''\ttime ='''			,   timeit(
	        '''z.can_string_be_rearranged_as_palindrome(z.check_str)'''			,   setup='''import __main__ as z'''			,   )			,   '''seconds'''			,   )


if __name__ == "__main__":
		lowercase_							=							input(
		    'Enter string to determine if it can be rearranged as a palindrome or not: '
		).strip()
		benchmark(check_str)
		lowercase_							=							can_string_be_rearranged_as_palindrome_counter(check_str)
		print(f"""{check_str} can {'' if status else 'not '}be rearranged as a palindrome""")