fn gcdRec a b = ( if b > 0 then gcdRec b (mod a b) else abs a )