added scoped_ptr.