Pre Smart Pointer