converted pointers to shared_ptr