
'''simple docstring'''





from ..utils import DummyObject, requires_backends




class 			_snake_case		(     metaclass=a__							):
			lowerCAmelCase_					:				Union[str, Any]							=   ["onnx"]




			def __init__( self    ,							*a__    ,							**a__							)    ->    List[Any]:

										'''simple docstring'''




										requires_backends(self    ,							["onnx"]							)




			@classmethod
			def        lowerCAmelCase__    ( cls    ,							*a__    ,							**a__							)    ->    List[Any]:

										'''simple docstring'''




										requires_backends(cls    ,							["onnx"]							)




			@classmethod
			def        lowerCAmelCase__    ( cls    ,							*a__    ,							**a__							)    ->    Optional[Any]:

										'''simple docstring'''




										requires_backends(cls    ,							["onnx"]							)










'''simple docstring'''





def 					UpperCamelCase_(     snake_case							:	list[int]							,    snake_case							:	int					):

							'''simple docstring'''






							snake_case_      =				len(snake_case					)
							snake_case_      =				[[False] * (required_sum + 1) for _ in range(arr_len + 1					)]

							# for each arr value, a sum of zero(0) can be formed by not taking any element
							# hence True/1
							for i in range(arr_len + 1					):
														snake_case_      =				True

							# sum is not zero and set is empty then false
							for i in range(1							,    required_sum + 1					):
														snake_case_      =				False

							for i in range(1							,    arr_len + 1					):
														for j in range(1							,    required_sum + 1					):
																					if arr[i - 1] > j:
																												snake_case_      =				subset[i - 1][j]
																					if arr[i - 1] <= j:
																												snake_case_      =				subset[i - 1][j] or subset[i - 1][j - arr[i - 1]]

							return subset[arr_len][required_sum]


if __name__ == "__main__":
		import doctest

		doctest.testmod()




