modernization: smart ptr again & always