Added Shared Pointers