shared_ptr.