class Enum
{
public:
Enum(int v):v(v)
{
}
private:
int v;
//operator == using v
};
namespace Enumeration // It is not possible to name it 'Enum'
{
static const Enum var1 = Enum(1);
static const Enum var2 = Enum(2);
}
int main()
{
Enumeration::var1;
}
ICAgIGNsYXNzIEVudW0KICAgIHsKICAgICAgICBwdWJsaWM6CiAgICAgICAgICAgIEVudW0oaW50IHYpOnYodikKICAgICAgICAgICAgewogICAgICAgICAgICB9CiAgICAgICAgcHJpdmF0ZToKICAgICAgICBpbnQgdjsKICAgICAgICAvL29wZXJhdG9yID09IHVzaW5nIHYKICAgIH07CgogICAgbmFtZXNwYWNlIEVudW1lcmF0aW9uIC8vIEl0IGlzIG5vdCBwb3NzaWJsZSB0byBuYW1lIGl0ICdFbnVtJwogICAgewogICAgICAgIHN0YXRpYyBjb25zdCBFbnVtIHZhcjEgPSBFbnVtKDEpOwogICAgICAgIHN0YXRpYyBjb25zdCBFbnVtIHZhcjIgPSBFbnVtKDIpOwogICAgfQogICAgCiAgICBpbnQgbWFpbigpCiAgICB7CiAgICAgICAgRW51bWVyYXRpb246OnZhcjE7CiAgICB9CiAgICA=