
"""simple docstring"""

def 		UpperCAmelCase					(		a_,						a_,						a_,						a_,						a_			):





		'''simple docstring'''


		if target == 0:
				answer.append(path.copy()			)
		else:
				for index in range(a_,						len(a_			)			):
						if target >= candidates[index]:
								path.append(candidates[index]			)
								backtrack(a_,						a_,						a_,						target - candidates[index],						a_			)
								path.pop(len(a_			) - 1			)
def 		UpperCAmelCase					(		a_,						a_			):





		'''simple docstring'''


		lowerCamelCase     :			Tuple		=    []  # type: list[int]
		lowerCamelCase     :			Union[str, Any]		=    []  # type: list[int]
		backtrack(a_,						a_,						a_,						a_,						0			)
		return answer
def 		UpperCAmelCase					(		):





		'''simple docstring'''


		print(combination_sum([-8, 2.3, 0],						1			)			)


if __name__ == "__main__":
					import doctest

					doctest.testmod()
					main()








"""simple docstring"""

from __future__ import annotations
def 		UpperCAmelCase					(		a_			):





		'''simple docstring'''


		assert (
		    isinstance(a_,						a_			) and mask > 0
		), F"""mask needs to be positive integer, your input {mask}"""
		lowerCamelCase     :			Tuple		=    []
		lowerCamelCase     :			Tuple		=    mask

		while submask:
				all_submasks.append(a_			)
				lowerCamelCase     :			Optional[int]		=    (submask - 1) & mask

		return all_submasks


if __name__ == "__main__":
					import doctest

					doctest.testmod()






