#include <iostream>
#include <memory>
#include <vector>
#include <string>
typedef std::shared_ptr<void> Any;
typedef std::vector<Any> VAny;
struct S {
std::string T;
};
int main() {
Any M(new S);
static_cast<S*>(M.get())->T = "Hogehage!";
VAny V;
V.push_back(M);
std::cout << static_cast<S*>(V[0].get())->T << std::endl;
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8bWVtb3J5PgojaW5jbHVkZSA8dmVjdG9yPgojaW5jbHVkZSA8c3RyaW5nPgoKdHlwZWRlZiBzdGQ6OnNoYXJlZF9wdHI8dm9pZD4gQW55Owp0eXBlZGVmIHN0ZDo6dmVjdG9yPEFueT4gVkFueTsKCnN0cnVjdCBTIHsKCXN0ZDo6c3RyaW5nIFQ7Cn07CgppbnQgbWFpbigpIHsKCglBbnkgTShuZXcgUyk7CglzdGF0aWNfY2FzdDxTKj4oTS5nZXQoKSktPlQgPSAiSG9nZWhhZ2UhIjsKCVZBbnkgVjsKCglWLnB1c2hfYmFjayhNKTsKCglzdGQ6OmNvdXQgPDwgc3RhdGljX2Nhc3Q8Uyo+KFZbMF0uZ2V0KCkpLT5UIDw8IHN0ZDo6ZW5kbDsKCglyZXR1cm4gMDsKfQ==