template<typename T>
bool isEqual(const T &v0, const T &v1)
{
return v0 == v1;
}
int main()
{
enum Enum
{
E1,
E2,
E3
} v1, v2;
v1 = E1;
v2 = E1;
isEqual(v1, v2);
}
dGVtcGxhdGU8dHlwZW5hbWUgVD4KYm9vbCBpc0VxdWFsKGNvbnN0IFQgJnYwLCBjb25zdCBUICZ2MSkKewogICAgcmV0dXJuIHYwID09IHYxOwp9CgoKaW50IG1haW4oKQp7CiAgICBlbnVtIEVudW0KICAgIHsKICAgICAgICBFMSwKICAgICAgICBFMiwKICAgICAgICBFMwogICAgfSB2MSwgdjI7CgogICAgdjEgPSBFMTsKICAgIHYyID0gRTE7CgogICAgaXNFcXVhbCh2MSwgdjIpOwoKfQ==