






import logging
import os
from logging import (
    CRITICAL,  # NOQA
    DEBUG,  # NOQA
    ERROR,  # NOQA
    FATAL,  # NOQA
    INFO,  # NOQA
    NOTSET,  # NOQA
    WARN,  # NOQA
    WARNING,  # NOQA
)
from typing import Optional

from tqdm import auto as tqdm_lib


A__			:    Tuple         =				{
    'debug': logging.DEBUG,
    'info': logging.INFO,
    'warning': logging.WARNING,
    'error': logging.ERROR,
    'critical': logging.CRITICAL,
}

A__			:    Dict         =				logging.WARNING






def 						a    (		):






				'''simple docstring'''
				lowercase__     				=    os.getenv('''DATASETS_VERBOSITY'''	,     _A       )
				if env_level_str:
								if env_level_str in log_levels:
												return log_levels[env_level_str]
								else:
												logging.getLogger().warning(
												    F"""Unknown option DATASETS_VERBOSITY={env_level_str}, """
												    F"""has to be one of: { ', '.join(log_levels.keys()       ) }"""       )
				return _default_log_level






def 						a    (		):






				'''simple docstring'''
				return __name__.split('''.'''       )[0]






def 						a    (		):






				'''simple docstring'''
				return logging.getLogger(_get_library_name()       )






def 						a    (		):






				'''simple docstring'''
				lowercase__     				=    _get_library_root_logger()
				library_root_logger.setLevel(_get_default_logging_level()       )






def 						a    (		):






				'''simple docstring'''
				lowercase__     				=    _get_library_root_logger()
				library_root_logger.setLevel(logging.NOTSET       )






def 						a    (		lowerCamelCase_ = None       ):






				'''simple docstring'''
				if name is None:
								lowercase__     				=    _get_library_name()
				return logging.getLogger(_A       )






def 						a    (		):






				'''simple docstring'''
				return _get_library_root_logger().getEffectiveLevel()






def 						a    (		lowerCamelCase_       ):






				'''simple docstring'''
				_get_library_root_logger().setLevel(_A       )






def 						a    (		):






				'''simple docstring'''
				return set_verbosity(_A       )






def 						a    (		):






				'''simple docstring'''
				return set_verbosity(_A       )






def 						a    (		):






				'''simple docstring'''
				return set_verbosity(_A       )






def 						a    (		):






				'''simple docstring'''
				return set_verbosity(_A       )






def 						a    (		):






				'''simple docstring'''
				lowercase__     				=    False






def 						a    (		):






				'''simple docstring'''
				lowercase__     				=    True


# Configure the library root logger at the module level (singleton-like)
_configure_library_root_logger()
class    _UpperCAmelCase      :

				"""simple docstring"""




				def __init__(  self		:					List[Any],						*lowerCamelCase		:					int,						**lowerCamelCase		:					str						):  # pylint: disable=unused-argument

								'''simple docstring'''
								lowercase__     				=    args[0] if args else None




				def __iter__(  self		:					Union[str, Any]						):

								'''simple docstring'''
								return iter(self._iterator						)




				def __getattr__(  self		:					Tuple,						lowerCamelCase		:					List[str]						):

								'''simple docstring'''

								def empty_fn(*lowerCamelCase		:					Any,						**lowerCamelCase		:					Optional[Any]						):  # pylint: disable=unused-argument
												return

								return empty_fn




				def __enter__(  self		:					Union[str, Any]						):

								'''simple docstring'''
								return self




				def __exit__(  self		:					int,						lowerCamelCase		:					str,						lowerCamelCase		:					Tuple,						lowerCamelCase		:					List[str]						):

								'''simple docstring'''
								return



A__			:    int         =				True
class    _UpperCAmelCase      :

				"""simple docstring"""




				def __call__(  self		:					Tuple,						*lowerCamelCase		:					Any,						lowerCamelCase		:					Tuple=False,						**lowerCamelCase		:					Any						):

								'''simple docstring'''
								if _tqdm_active and not disable:
												return tqdm_lib.tqdm(*_SCREAMING_SNAKE_CASE,						**_SCREAMING_SNAKE_CASE						)
								else:
												return EmptyTqdm(*_SCREAMING_SNAKE_CASE,						**_SCREAMING_SNAKE_CASE						)




				def        lowercase__     (  self		:					List[Any],						*lowerCamelCase		:					Dict,						**lowerCamelCase		:					Optional[int]						):

								'''simple docstring'''
								lowercase__     				=    None
								if _tqdm_active:
												return tqdm_lib.tqdm.set_lock(*_SCREAMING_SNAKE_CASE,						**_SCREAMING_SNAKE_CASE						)




				def        lowercase__     (  self		:					Any						):

								'''simple docstring'''
								if _tqdm_active:
												return tqdm_lib.tqdm.get_lock()



A__			:    Union[str, Any]         =				_tqdm_cls()






def 						a    (		):






				'''simple docstring'''
				global _tqdm_active
				return bool(_tqdm_active       )






def 						a    (		):






				'''simple docstring'''
				global _tqdm_active
				lowercase__     				=    True






def 						a    (		):






				'''simple docstring'''
				global _tqdm_active
				lowercase__     				=    False












from itertools import count






def 						a    (		lowerCamelCase_ = 50       ):






				'''simple docstring'''
				lowercase__     				=    [1] * min_block_length

				for n in count(lowerCamelCase_       ):
								fill_count_functions.append(1       )

								for block_length in range(lowerCamelCase_	,     n + 1       ):
												for block_start in range(n - block_length       ):
																fill_count_functions[n] += fill_count_functions[
																    n - block_start - block_length - 1
																]

												fill_count_functions[n] += 1

								if fill_count_functions[n] > 100_0000:
												break

				return n


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




