

def 				__magic_name__				(     __lowerCAmelCase			:		str							)    ->     int:
				__lowerCamelCase					      =			len(__lowerCAmelCase							)
				__lowerCamelCase					      =			[0] * length
				__lowerCamelCase					      =			[[False for i in range(__lowerCAmelCase							)] for j in range(__lowerCAmelCase							)]
				for i, c in enumerate(__lowerCAmelCase							):
								__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(__lowerCAmelCase	,						0 if j == 0 else (cut[j - 1] + 1)							)
								__lowerCamelCase					      =			mincut
				return cut[length - 1]


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





from ..utils import requires_backends


SCREAMING_SNAKE_CASE__     :    Union[str, Any]      							=					None

class      lowerCAmelCase__  :






		def __init__(	self	:							int							,    *SCREAMING_SNAKE_CASE__	:							Dict							,    **SCREAMING_SNAKE_CASE__	:							Tuple						)  ->							Optional[Any]:
						requires_backends(self							,    ['''detectron2''']						)







		@classmethod
		def 				__A (	cls	:							Dict							,    *SCREAMING_SNAKE_CASE__	:							Dict							,    **SCREAMING_SNAKE_CASE__	:							Tuple						)  ->							Tuple:
						requires_backends(cls							,    ['''detectron2''']						)



