



def 				_lowerCAmelCase   (     lowercase_		):
						return n * (2 * n - 1)

def 				_lowerCAmelCase   (     lowercase_		):
						UpperCAmelCase    =				(1 + 24 * n) ** 0.5
						return ((1 + root) / 6) % 1 == 0

def 				_lowerCAmelCase   (     lowercase_ = 144		):
						UpperCAmelCase    =				start
						UpperCAmelCase    =				hexagonal_num(lowercase_		)
						while not is_pentagonal(lowercase_		):
												n += 1
												UpperCAmelCase    =				hexagonal_num(lowercase_		)
						return num


if __name__ == "__main__":
				print(f'''{solution()} = ''')










"""simple docstring"""


from dataclasses import dataclass
from typing import Callable, Optional

import datasets







@dataclass
class    A_    (  datasets.BuilderConfig       ):



						"""simple docstring"""
						__UpperCamelCase	       =							None
						__UpperCamelCase	       =							None
						__UpperCamelCase	       =							None






						def 			UpperCAmelCase__  (      self				:str      )       ->    Optional[Any]:
												assert self.generator is not None, "generator must be specified"

												if self.gen_kwargs is None:
																		UpperCAmelCase    =				{}







class    A_    (  datasets.GeneratorBasedBuilder       ):



						"""simple docstring"""
						__UpperCamelCase	       =							GeneratorConfig






						def 			UpperCAmelCase__  (      self				:Union[str, Any]      )       ->    str:
												return datasets.DatasetInfo(features=self.config.features      )






						def 			UpperCAmelCase__  (      self				:List[Any]     ,						lowercase_				:List[Any]      )       ->    Union[str, Any]:
												return [datasets.SplitGenerator(name=datasets.Split.TRAIN     ,						gen_kwargs=self.config.gen_kwargs      )]






						def 			UpperCAmelCase__  (      self				:Optional[int]     ,						**lowercase_				:Dict      )       ->    str:
												for idx, ex in enumerate(self.config.generator(**lowercase_      )      ):
																		yield idx, ex





