'''simple docstring'''




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


if __name__ == "__main__":
  __UpperCAmelCase  							=input("Enter the string: ").strip()
  __UpperCAmelCase  							=find_minimum_partitions(s)
  print(f'Minimum number of partitions required for the \'{s}\' is {ans}')

'''simple docstring'''




__UpperCAmelCase  							=1_0**8






def __lowerCAmelCase				(							UpperCamelCase__       )			->					bool:
    if n % 10 == 0:
        return False
    __lowerCamelCase						=						str(UpperCamelCase__       )
    return s == s[::-1]






def __lowerCAmelCase				(							)			->					int:
    __lowerCamelCase						=						set()
    __lowerCamelCase						=						1
    __lowerCamelCase						=						5
    while sum_squares < LIMIT:
        __lowerCamelCase						=						first_square + 1
        while sum_squares < LIMIT:
            if is_palindrome(UpperCamelCase__       ):
                answer.add(UpperCamelCase__       )
            last_square += 1
            sum_squares += last_square**2
        first_square += 1
        __lowerCamelCase						=						first_square**2 + (first_square + 1) ** 2

    return sum(UpperCamelCase__       )


if __name__ == "__main__":
  print(solution())
