def gcd(a, b): if b == 0: return a else: return gcd(b, a % b)
gcd(48, 18) -> gcd(18, 12) -> gcd(12, 6) -> gcd(6, 0)
gcd(48, 18) -> gcd(30, 18) -> gcd(12, 18)
gcd(48, 18) -> gcd(18, 30) -> gcd(30, 6)
gcd(48, 18) -> gcd(12, 18) -> gcd(6, 12)