

'''simple docstring'''



class lowerCamelCase			:



			'''simple docstring'''






			def __init__(				self	:						Tuple		,      lowerCAmelCase_	:						int			)      ->		Any:





									'''simple docstring'''
									A__					:       Optional[int]     =size
									A__					:       Tuple     =[0] * size
									A__					:       Union[str, Any]     =[0] * size


			@staticmethod
			def lowercase__						(				lowerCAmelCase_	:						int			)      ->		Dict:





									'''simple docstring'''
									return index | (index + 1)


			@staticmethod
			def lowercase__						(				lowerCAmelCase_	:						int			)      ->		str:





									'''simple docstring'''
									return (index & (index + 1)) - 1


			def lowercase__						(				self	:						Any		,      lowerCAmelCase_	:						int		,      lowerCAmelCase_	:						int			)      ->		Tuple:





									'''simple docstring'''
									A__					:       Any     =value
									while index < self.size:
															A__					:       Optional[Any]     =self.get_prev(__lowerCAmelCase			) + 1
															if current_left_border == index:
																					A__					:       Optional[Any]     =value
															else:
																					A__					:       Union[str, Any]     =max(__lowerCAmelCase		,      __lowerCAmelCase		,      __lowerCAmelCase			)
															A__					:       Optional[int]     =self.get_next(__lowerCAmelCase			)



			def lowercase__						(				self	:						Optional[Any]		,      lowerCAmelCase_	:						int		,      lowerCAmelCase_	:						int			)      ->		Optional[Any]:





									'''simple docstring'''
									right -= 1  # Because of right is exclusive
									A__					:       int     =0
									while left <= right:
															A__					:       Union[str, Any]     =self.get_prev(__lowerCAmelCase			)
															if left <= current_left:
																					A__					:       Optional[Any]     =max(__lowerCAmelCase		,      self.tree[right]			)
																					A__					:       int     =current_left
															else:
																					A__					:       Optional[int]     =max(__lowerCAmelCase		,      self.arr[right]			)
																					right -= 1
									return result


if __name__ == "__main__":
						import doctest

						doctest.testmod()




'''simple docstring'''



def 						__lowerCamelCase	(       __snake_case					:		int	)	->							bool:






						"""simple docstring"""





						if p < 2:
												raise ValueError("""p should not be less than 2!"""	)
						elif p == 2:
												return True

						A__					:       Any     =4
						A__					:       int     =(1 << p) - 1
						for _ in range(p - 2	):
												A__					:       Dict     =((s * s) - 2) % m
						return s == 0


if __name__ == "__main__":
		print(lucas_lehmer_test(7))
		print(lucas_lehmer_test(11))

