




from doctest import testmod
from math import sqrt




def        __SCREAMING_SNAKE_CASE (	lowercase_   )							->						list:

    """simple docstring"""


    __UpperCamelCase			=    []
    if num < 1:
        return facs
    facs.append(1   )
    if num == 1:
        return facs
    facs.append(lowercase_   )
    for i in range(2       ,  int(sqrt(lowercase_   )   ) + 1   ):
        if num % i == 0:  # If i is a factor of num
            facs.append(lowercase_   )
            __UpperCamelCase			=    num // i  # num//i is the other factor of num
            if d != i:  # If d and i are distinct
                facs.append(lowercase_   )  # we have found another factor
    facs.sort()
    return facs


if __name__ == "__main__":
 testmod(name="factors_of_a_number", verbose=True)










"""simple docstring"""


def   a__			(					__lowercase  ,      __lowercase )						->						Tuple:
				_A       	=      1
				while b > 0:
								if b & 1:
												res *= a

								a *= a
								b >>= 1

				return res






def   a__			(					__lowercase  ,      __lowercase  ,      __lowercase )						->						Optional[Any]:
				_A       	=      1
				while b > 0:
								if b & 1:
												_A       	=      ((res % c) * (a % c)) % c

								a *= a
								b >>= 1

				return res