import std.stdio;
class Foo {
int a;
int opApply(scope int delegate(ref int) dg)const
{
auto r = dg(a);
if (r) return r;
return 0;
}
}
class Bar {
Foo foo;
this(){ foo = new Foo; }
void hoge() const
{
writeln(foo.a);
foreach(ref fuga; foo){
fuga = 1;
}
writeln(foo.a);
}
}
void main() {
(new Bar()).hoge();
}
aW1wb3J0IHN0ZC5zdGRpbzsKY2xhc3MgRm9vIHsKICBpbnQgYTsKICBpbnQgb3BBcHBseShzY29wZSBpbnQgZGVsZWdhdGUocmVmIGludCkgZGcpY29uc3QKICB7CiAgICBhdXRvIHIgPSBkZyhhKTsKICAgIGlmIChyKSByZXR1cm4gcjsKICAgIHJldHVybiAwOwogIH0KfQpjbGFzcyBCYXIgewogIEZvbyBmb287CiAgdGhpcygpeyBmb28gPSBuZXcgRm9vOyB9CiAgdm9pZCBob2dlKCkgY29uc3QKICB7CiAgICB3cml0ZWxuKGZvby5hKTsKICAgIGZvcmVhY2gocmVmIGZ1Z2E7IGZvbyl7CiAgICAgIGZ1Z2EgPSAxOwogICAgfQogICAgd3JpdGVsbihmb28uYSk7CiAgfQp9CnZvaWQgbWFpbigpIHsKICAobmV3IEJhcigpKS5ob2dlKCk7Cn0=