implement gcd and lcm