



"""simple docstring"""
def   A_    (     _lowercase,   _lowercase,   _lowercase,   _lowercase,   _lowercase      ):







						'''simple docstring'''


						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      ):







						'''simple docstring'''


						snake_case_					:Optional[Any]		=     []  # type: list[int]
						snake_case_					:str		=     []  # type: list[int]
						backtrack(_lowercase,   _lowercase,   _lowercase,   _lowercase,   0      )
						return answer
def   A_    (     ):







						'''simple docstring'''


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


if __name__ == "__main__":
						import doctest

						doctest.testmod()
						main()

'''simple docstring'''
from __future__ import annotations

import math
import random







def 				__UpperCamelCase (					__UpperCAmelCase  :					int ,   __UpperCAmelCase  :					int ,   __UpperCAmelCase  :					int			)							->	list[int]:
  lowercase				:							Union[str, Any]									=   d * e - 1
  lowercase				:							List[str]									=   0
  lowercase				:							Tuple									=   0
  while p == 0:
    lowercase				:							Optional[Any]									=   random.randint(2 ,   n - 1			)
    lowercase				:							Dict									=   k
    while True:
      if t % 2 == 0:
        lowercase				:							List[Any]									=   t // 2
        lowercase				:							Union[str, Any]									=   (g**t) % n
        lowercase				:							Optional[Any]									=   math.gcd(x - 1 ,   __UpperCAmelCase			)
        if x > 1 and y > 1:
          lowercase				:							Dict									=   y
          lowercase				:							Any									=   n // y
          break  # find the correct factors
      else:
        break  # t is not divisible by 2, break and choose another g
  return sorted([p, q]			)


if __name__ == "__main__":
 import doctest

 doctest.testmod()