





"""simple docstring"""




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





def        a_				(							_lowercase       ,						_lowercase   ):
						_UpperCamelCase			:					str     =    []  # type: list[int]
						_UpperCamelCase			:					str     =    []  # type: list[int]
						backtrack(_lowercase       ,						_lowercase       ,						_lowercase       ,						_lowercase       ,						0   )
						return answer





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


if __name__ == "__main__":
						import doctest

						doctest.testmod()
						main()










"""simple docstring"""




from __future__ import annotations





def        a_				(							_lowercase   ):
						assert (
						    isinstance(_lowercase       ,						_lowercase   ) and mask > 0
						), F"""mask needs to be positive integer, your input {mask}"""
						_UpperCamelCase			:					Union[str, Any]     =    []
						_UpperCamelCase			:					str     =    mask

						while submask:
												all_submasks.append(_lowercase   )
												_UpperCamelCase			:					int     =    (submask - 1) & mask

						return all_submasks


if __name__ == "__main__":
						import doctest

						doctest.testmod()



