#include <iostream>
#include <vector>
#include <string>
using namespace std;
class Registration {
static vector<string> registered;
public:
static void showRegistered() {
for (int i = 0 ; i != registered.size() ; i++) {
cout << registered[i] << endl;
}
}
Registration(string name) {
registered.push_back(name);
}
};
class A {
static Registration _registration;
};
class B {
static Registration _registration;
};
class C {
static Registration _registration;
};
vector<string> Registration::registered;
Registration A::_registration("quick");
Registration B::_registration("brown");
Registration C::_registration("fox");
int main() {
Registration::showRegistered();
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8dmVjdG9yPgojaW5jbHVkZSA8c3RyaW5nPgoKdXNpbmcgbmFtZXNwYWNlIHN0ZDsKCmNsYXNzIFJlZ2lzdHJhdGlvbiB7CiAgICBzdGF0aWMgdmVjdG9yPHN0cmluZz4gcmVnaXN0ZXJlZDsKcHVibGljOgogICAgc3RhdGljIHZvaWQgc2hvd1JlZ2lzdGVyZWQoKSB7CiAgICAgICAgZm9yIChpbnQgaSA9IDAgOyBpICE9IHJlZ2lzdGVyZWQuc2l6ZSgpIDsgaSsrKSB7CiAgICAgICAgICAgIGNvdXQgPDwgcmVnaXN0ZXJlZFtpXSA8PCBlbmRsOwogICAgICAgIH0KICAgIH0KICAgIFJlZ2lzdHJhdGlvbihzdHJpbmcgbmFtZSkgewogICAgICAgIHJlZ2lzdGVyZWQucHVzaF9iYWNrKG5hbWUpOwogICAgfQp9OwoKY2xhc3MgQSB7CiAgICBzdGF0aWMgUmVnaXN0cmF0aW9uIF9yZWdpc3RyYXRpb247Cn07CgpjbGFzcyBCIHsKICAgIHN0YXRpYyBSZWdpc3RyYXRpb24gX3JlZ2lzdHJhdGlvbjsgICAgCn07CgpjbGFzcyBDIHsKICAgIHN0YXRpYyBSZWdpc3RyYXRpb24gX3JlZ2lzdHJhdGlvbjsgICAgCn07Cgp2ZWN0b3I8c3RyaW5nPiBSZWdpc3RyYXRpb246OnJlZ2lzdGVyZWQ7CgpSZWdpc3RyYXRpb24gQTo6X3JlZ2lzdHJhdGlvbigicXVpY2siKTsKUmVnaXN0cmF0aW9uIEI6Ol9yZWdpc3RyYXRpb24oImJyb3duIik7ClJlZ2lzdHJhdGlvbiBDOjpfcmVnaXN0cmF0aW9uKCJmb3giKTsKCmludCBtYWluKCkgewoJUmVnaXN0cmF0aW9uOjpzaG93UmVnaXN0ZXJlZCgpOwoJcmV0dXJuIDA7Cn0=