"""simple docstring"""



from typing import TYPE_CHECKING

from ...utils import OptionalDependencyNotAvailable, _LazyModule, is_tf_available, is_torch_available


_UpperCamelCase		:  Union[str, Any]						=		{
    '''configuration_esm''': ['''ESM_PRETRAINED_CONFIG_ARCHIVE_MAP''', '''EsmConfig'''],
    '''tokenization_esm''': ['''EsmTokenizer'''],
}

try:
    if not is_torch_available():
        raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
    pass
else:
    _UpperCamelCase		:  Union[str, Any]						=		[
        '''ESM_PRETRAINED_MODEL_ARCHIVE_LIST''',
        '''EsmForMaskedLM''',
        '''EsmForSequenceClassification''',
        '''EsmForTokenClassification''',
        '''EsmModel''',
        '''EsmPreTrainedModel''',
    ]
    _UpperCamelCase		:  Union[str, Any]						=		['''EsmForProteinFolding''', '''EsmFoldPreTrainedModel''']

try:
    if not is_tf_available():
        raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
    pass
else:
    _UpperCamelCase		:  int						=		[
        '''TF_ESM_PRETRAINED_MODEL_ARCHIVE_LIST''',
        '''TFEsmForMaskedLM''',
        '''TFEsmForSequenceClassification''',
        '''TFEsmForTokenClassification''',
        '''TFEsmModel''',
        '''TFEsmPreTrainedModel''',
    ]

if TYPE_CHECKING:
    from .configuration_esm import ESM_PRETRAINED_CONFIG_ARCHIVE_MAP, EsmConfig
    from .tokenization_esm import EsmTokenizer

    try:
        if not is_torch_available():
            raise OptionalDependencyNotAvailable()
    except OptionalDependencyNotAvailable:
        pass
    else:
        from .modeling_esm import (
            ESM_PRETRAINED_MODEL_ARCHIVE_LIST,
            EsmForMaskedLM,
            EsmForSequenceClassification,
            EsmForTokenClassification,
            EsmModel,
            EsmPreTrainedModel,
        )
        from .modeling_esmfold import EsmFoldPreTrainedModel, EsmForProteinFolding

    try:
        if not is_tf_available():
            raise OptionalDependencyNotAvailable()
    except OptionalDependencyNotAvailable:
        pass
    else:
        from .modeling_tf_esm import (
            TF_ESM_PRETRAINED_MODEL_ARCHIVE_LIST,
            TFEsmForMaskedLM,
            TFEsmForSequenceClassification,
            TFEsmForTokenClassification,
            TFEsmModel,
            TFEsmPreTrainedModel,
        )


else:
    import sys

    _UpperCamelCase		:  Any						=		_LazyModule(__name__, globals()['__file__'], _import_structure)










"""simple docstring"""



def 						_SCREAMING_SNAKE_CASE			(   __snake_case      :  str   ):





  '''simple docstring'''





  lowercase							   =	len(__snake_case   )
  lowercase							   =	[0] * length
  lowercase							   =	[[False for i in range(__snake_case   )] for j in range(__snake_case   )]
  for i, c in enumerate(__snake_case   ):
    lowercase							   =	i
    for j in range(i + 1   ):
      if c == string[j] and (i - j < 2 or is_palindromic[j + 1][i - 1]):
        lowercase							   =	True
        lowercase							   =	min(__snake_case		, 0 if j == 0 else (cut[j - 1] + 1)   )
    lowercase							   =	mincut
  return cut[length - 1]


if __name__ == "__main__":
    _UpperCamelCase		:  List[Any]						=		input('Enter the string: ').strip()
    _UpperCamelCase		:  List[Any]						=		find_minimum_partitions(s)
    print(F'''Minimum number of partitions required for the \'{s}\' is {ans}''')


