#include <vector>
#include <memory>
class Interface
{
};
class Class : public Interface
{
};
int main() {
std::vector<std::shared_ptr<Class>> a;
std::vector<std::shared_ptr<Interface>> b (a.begin(), a.end());
std::shared_ptr<Class> c1;
std::shared_ptr<Interface> i1=c1;
}
I2luY2x1ZGUgPHZlY3Rvcj4KI2luY2x1ZGUgPG1lbW9yeT4KY2xhc3MgSW50ZXJmYWNlCnsKfTsKCmNsYXNzIENsYXNzIDogcHVibGljIEludGVyZmFjZQp7Cn07CgppbnQgbWFpbigpIHsKICAgIAogICAgc3RkOjp2ZWN0b3I8c3RkOjpzaGFyZWRfcHRyPENsYXNzPj4gYTsKICAgIHN0ZDo6dmVjdG9yPHN0ZDo6c2hhcmVkX3B0cjxJbnRlcmZhY2U+PiBiIChhLmJlZ2luKCksIGEuZW5kKCkpOwogICAgCiAgICBzdGQ6OnNoYXJlZF9wdHI8Q2xhc3M+IGMxOwogICAgc3RkOjpzaGFyZWRfcHRyPEludGVyZmFjZT4gaTE9YzE7Cn0=