



'''simple docstring'''


_lowerCamelCase	:       Optional[int]      	=	{
    "A": ".-", "B": "-...", "C": "-.-.", "D": "-..", "E": ".", "F": "..-.", "G": "--.",
    "H": "....", "I": "..", "J": ".---", "K": "-.-", "L": ".-..", "M": "--", "N": "-.",
    "O": "---", "P": ".--.", "Q": "--.-", "R": ".-.", "S": "...", "T": "-", "U": "..-",
    "V": "...-", "W": ".--", "X": "-..-", "Y": "-.--", "Z": "--..", "1": ".----",
    "2": "..---", "3": "...--", "4": "....-", "5": ".....", "6": "-....", "7": "--...",
    "8": "---..", "9": "----.", "0": "-----", "&": ".-...", "@": ".--.-.",
    ":": "---...", ",": "--..--", ".": ".-.-.-", "'": ".----.", "\"": ".-..-.",
    "?": "..--..", "/": "-..-.", "=": "-...-", "+": ".-.-.", "-": "-....-",
    "(": "-.--.", ")": "-.--.-", "!": "-.-.--", " ": "/"
}  # Exclamation mark is not in ITU-R recommendation
# fmt: on
_lowerCamelCase	:       List[Any]      	=	{value: key for key, value in MORSE_CODE_DICT.items()}







def 				__lowerCamelCase				(   A__    )       ->	str:






   """simple docstring"""
   return " ".join(MORSE_CODE_DICT[char] for char in message.upper()    )







def 				__lowerCamelCase				(   A__    )       ->	str:






   """simple docstring"""
   return "".join(REVERSE_DICT[char] for char in message.split()    )







def 				__lowerCamelCase				(   )       ->	None:






   """simple docstring"""
   UpperCamelCase					=  'Morse code here!'
   print(A__    )
   UpperCamelCase					=  encrypt(A__    )
   print(A__    )
   UpperCamelCase					=  decrypt(A__    )
   print(A__    )


if __name__ == "__main__":
   main()






from math import factorial
def        lowercase_							(A : int		,					A : int		,					A : float      ):
       if successes > trials:
              raise ValueError('successes must be lower or equal to trials'      )
       if trials < 0 or successes < 0:
              raise ValueError('the function is defined for non-negative integers'      )
       if not isinstance(A		,					A      ) or not isinstance(A		,					A      ):
              raise ValueError('the function is defined for non-negative integers'      )
       if not 0 < prob < 1:
              raise ValueError('prob has to be in range of 1 - 0'      )
       snake_case__							:	List[Any]   	=	(prob**successes) * ((1 - prob) ** (trials - successes))
       # Calculate the binomial coefficient: n! / k!(n-k)!
       snake_case__							:	List[str]   	=	float(factorial(A      )      )
       coefficient /= factorial(A      ) * factorial(trials - successes      )
       return probability * coefficient


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

 testmod()
 print("Probability of 2 successes out of 4 trails")
 print("with probability of 0.75 is:", end=" ")
 print(binomial_distribution(2, 4, 0.75))






