added cloning feature