updated partial_clone