'''simple docstring'''


import re

from filelock import FileLock


try:
					import nltk

					__lowerCAmelCase	:       Optional[int]						       =	True
except (ImportError, ModuleNotFoundError):
					__lowerCAmelCase	:       List[str]						       =	False

if NLTK_AVAILABLE:
					with FileLock(".lock") as lock:
										nltk.download("punkt", quiet=True)





def       lowerCAmelCase					(		UpperCamelCase__				:   str       ):


	"""simple docstring"""
	re.sub('''<n>'''    ,					''''''    ,					UpperCamelCase__       )  # remove pegasus newline char
	assert NLTK_AVAILABLE, "nltk must be installed to separate newlines between sentences. (pip install nltk)"
	return "\n".join(nltk.sent_tokenize(UpperCamelCase__       )       )

'''simple docstring'''


def       lowerCAmelCase					(		UpperCamelCase__				:   int       ):


	"""simple docstring"""

	if not isinstance(UpperCamelCase__    ,					UpperCamelCase__       ):
		__UpperCAmelCase							=			f"""Input value of [number={number}] must be an integer"""
		raise TypeError(UpperCamelCase__       )

	if number < 1:
		__UpperCAmelCase							=			f"""Input value of [number={number}] must be > 0"""
		raise ValueError(UpperCamelCase__       )

	__UpperCAmelCase							=			1

	for i in range(1    ,					UpperCamelCase__       ):
		current_number *= 4 * i - 2
		current_number //= i + 1

	return current_number


if __name__ == "__main__":
					import doctest

					doctest.testmod()
