using System;
public class Test {
public static void Main() {
var test = new AlwaysTrue();
if (test) {
Console.WriteLine("This is true!");
}
if (test == true) {
Console.WriteLine("This is also true!");
}
if (test == false) {
Console.WriteLine("This can't possibly be true!");
}
if (test != true) {
Console.WriteLine("Now you're just being silly");
}
if (test != false) {
Console.WriteLine("wut");
}
}
class AlwaysTrue {
public AlwaysTrue() { }
public static bool operator ==(AlwaysTrue me, bool other) {
return true;
}
public static bool operator !=(AlwaysTrue me, bool other) {
return true;
}
public static implicit operator bool(AlwaysTrue me) {
return true;
}
}
}
dXNpbmcgU3lzdGVtOwoKcHVibGljIGNsYXNzIFRlc3QgewoKCXB1YmxpYyBzdGF0aWMgdm9pZCBNYWluKCkgewoJCXZhciB0ZXN0ID0gbmV3IEFsd2F5c1RydWUoKTsKCgkJaWYgKHRlc3QpIHsKCQkJQ29uc29sZS5Xcml0ZUxpbmUoIlRoaXMgaXMgdHJ1ZSEiKTsKCQl9CgoJCWlmICh0ZXN0ID09IHRydWUpIHsKCQkJQ29uc29sZS5Xcml0ZUxpbmUoIlRoaXMgaXMgYWxzbyB0cnVlISIpOwoJCX0KCgkJaWYgKHRlc3QgPT0gZmFsc2UpIHsKCQkJQ29uc29sZS5Xcml0ZUxpbmUoIlRoaXMgY2FuJ3QgcG9zc2libHkgYmUgdHJ1ZSEiKTsKCQl9CgoJCWlmICh0ZXN0ICE9IHRydWUpIHsKCQkJQ29uc29sZS5Xcml0ZUxpbmUoIk5vdyB5b3UncmUganVzdCBiZWluZyBzaWxseSIpOwoJCX0KCgkJaWYgKHRlc3QgIT0gZmFsc2UpIHsKCQkJQ29uc29sZS5Xcml0ZUxpbmUoInd1dCIpOwoJCX0KCX0KCgljbGFzcyBBbHdheXNUcnVlIHsKCQlwdWJsaWMgQWx3YXlzVHJ1ZSgpIHsgfQoKCQlwdWJsaWMgc3RhdGljIGJvb2wgb3BlcmF0b3IgPT0oQWx3YXlzVHJ1ZSBtZSwgYm9vbCBvdGhlcikgewoJCQlyZXR1cm4gdHJ1ZTsKCQl9CgoJCXB1YmxpYyBzdGF0aWMgYm9vbCBvcGVyYXRvciAhPShBbHdheXNUcnVlIG1lLCBib29sIG90aGVyKSB7CgkJCXJldHVybiB0cnVlOwoJCX0KCgkJcHVibGljIHN0YXRpYyBpbXBsaWNpdCBvcGVyYXRvciBib29sKEFsd2F5c1RydWUgbWUpIHsKCQkJcmV0dXJuIHRydWU7CgkJfQoJfQp9