update clone()