def extended_gcd(n_1, n_2):
    """ Returns (bezout_a, bezout_b, gcd) using the extended euclidean algorithm.
        Params
            n1: int
            n2: int
        Returns
            bezout_a: int
            bezout_b: int
            gcd: int """
    x = 0
    x_old = 1
    y = 1
    y_old = 0
    while n_2 != 0:
        q = n_1 // n_2 #quotient
        n_1, n_2 = n_2, n_1%n_2
        x, x_old = x_old - q*x, x
        y, y_old = y_old - q*y, y
    bezout_a = x_old
    bezout_b = y_old
    gcd = n_1
    return (bezout_a, bezout_b, gcd)