Помогите с кодом на прологе

predicates
evklid(integer,integer,integer).

clauses
evklid(A,B,B):-A mod B = 0,!.
evklid(A,B,NOD):-A mod B = C,!,evklid(B,C,NOD).

goal
evklid(2,20,NOD).
evklid(A,B,NOD):-A mod B = C,!,evklid(B,C,NOD).

Что делает эта строка?