function GlobalObject()
{
this.test1 = function() { return this; }();
this.test2 = function() { return (function(){return this;}); }();
}
var go = new GlobalObject();
print(go.test1());
print(go.test2());
ZnVuY3Rpb24gR2xvYmFsT2JqZWN0KCkKewogIHRoaXMudGVzdDEgPSBmdW5jdGlvbigpIHsgcmV0dXJuIHRoaXM7IH0oKTsKICB0aGlzLnRlc3QyID0gZnVuY3Rpb24oKSB7IHJldHVybiAoZnVuY3Rpb24oKXtyZXR1cm4gdGhpczt9KTsgfSgpOwp9Cgp2YXIgZ28gPSBuZXcgR2xvYmFsT2JqZWN0KCk7CgpwcmludChnby50ZXN0MSgpKTsKcHJpbnQoZ28udGVzdDIoKSk7Cg==