#include <iostream>
#include <memory>
#include <string>
int main() {
std::shared_ptr<std::string> pointer = nullptr;
auto ptr = std::make_shared<std::remove_reference<decltype(*pointer)>::type>("hello");
std::cout << *ptr;
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8bWVtb3J5PgojaW5jbHVkZSA8c3RyaW5nPgoKaW50IG1haW4oKSB7CglzdGQ6OnNoYXJlZF9wdHI8c3RkOjpzdHJpbmc+IHBvaW50ZXIgPSBudWxscHRyOwoJYXV0byBwdHIgPSBzdGQ6Om1ha2Vfc2hhcmVkPHN0ZDo6cmVtb3ZlX3JlZmVyZW5jZTxkZWNsdHlwZSgqcG9pbnRlcik+Ojp0eXBlPigiaGVsbG8iKTsKCXN0ZDo6Y291dCA8PCAqcHRyOwoJcmV0dXJuIDA7Cn0=