added euclid alg...