task 3, GCD, nearly there...