choose apropriate clone algorithm.