add clone method 80%