


from math import factorial, pi






def 			UpperCamelCase (     __magic_name__					:							float   ,   __magic_name__					:							int = 30					)       ->  float:
		"""simple docstring"""




		if not isinstance(__magic_name__   ,   (int, float)					):
				raise ValueError("""maclaurin_sin() requires either an int or float for theta"""					)

		if not isinstance(__magic_name__   ,   __magic_name__					) or accuracy <= 0:
				raise ValueError("""maclaurin_sin() requires a positive int for accuracy"""					)

		lowercase__					      =		float(__magic_name__					)
		lowercase__					      =		theta // (2 * pi)
		theta -= 2 * div * pi
		return sum(
		    (-1) ** r * theta ** (2 * r + 1) / factorial(2 * r + 1					) for r in range(__magic_name__					)					)






def 			UpperCamelCase (     __magic_name__					:							float   ,   __magic_name__					:							int = 30					)       ->  float:
		"""simple docstring"""




		if not isinstance(__magic_name__   ,   (int, float)					):
				raise ValueError("""maclaurin_cos() requires either an int or float for theta"""					)

		if not isinstance(__magic_name__   ,   __magic_name__					) or accuracy <= 0:
				raise ValueError("""maclaurin_cos() requires a positive int for accuracy"""					)

		lowercase__					      =		float(__magic_name__					)
		lowercase__					      =		theta // (2 * pi)
		theta -= 2 * div * pi
		return sum((-1) ** r * theta ** (2 * r) / factorial(2 * r					) for r in range(__magic_name__					)					)


if __name__ == "__main__":
	import doctest

	doctest.testmod()

	print(maclaurin_sin(1_0))
	print(maclaurin_sin(-1_0))
	print(maclaurin_sin(1_0, 1_5))
	print(maclaurin_sin(-1_0, 1_5))

	print(maclaurin_cos(5))
	print(maclaurin_cos(-5))
	print(maclaurin_cos(1_0, 1_5))
	print(maclaurin_cos(-1_0, 1_5))





def 			UpperCamelCase (     __magic_name__					:							str   ,   __magic_name__					:							str					)       ->  list:
		"""simple docstring"""




		lowercase__					      =		len(__magic_name__					)
		lowercase__					      =		[]
		for i in range(len(__magic_name__					) - pat_len + 1					):
				lowercase__					      =		True
				for j in range(__magic_name__					):
						if s[i + j] != pattern[j]:
								lowercase__					      =		False
								break
				if match_found:
						position.append(__magic_name__					)
		return position


if __name__ == "__main__":
	assert naive_pattern_search('ABCDEFG', 'DE') == [3]
	print(naive_pattern_search('ABAAABCDBBABCDDEBCABC', 'ABC'))

