refine return type of clone on Tuple