Morgan Stanley interview question

implement shread_ptr