asfa
gcd function