Найдите ошибки!

Следующая программа — один из вариантов решения задачи 5 (Расширенный алгоритм Евклида). Но в ней есть ошибки.
Найдите их!


#из a и b вводится сначала наибольшее, затем наименьшее

def evkl(a, b):
    a_=A*a[0]+B*a[1]
    b_=A*b[0]+B*b[1]
    c=a_//b_
    r=[a[0]-c*a[1], b[0]-c*b[1]]
    if a_%b_==0:
       return b
    return evkl(b, r)

numbers= [int(i) for i in input().split()]
A=max(numbers)
B=min(numbers)
m, n= evkl([1, 0], [0, 1])
print (A*m+B*n, m, n)
 

Подсказка.
Если совсем ничего не выходит, и вам кажется, что программа правильная, попробуйте подать ей на вход такую пару: 11 8 (или 39 17, или 125 23).