import std.stdio;
template X()
{
int _len = 0;
int Length() { return _len; }
int length(this T)() { return (cast(T)this).Length(); }
}
template Y()
{
mixin X;
int Length() { return 3; }
}
struct A {mixin Y;}
void main(string[] args)
{
A a;
a.length.writeln;
}
aW1wb3J0IHN0ZC5zdGRpbzsKCnRlbXBsYXRlIFgoKQp7CiAgaW50IF9sZW4gPSAwOwogIGludCBMZW5ndGgoKSB7IHJldHVybiBfbGVuOyB9CiAgaW50IGxlbmd0aCh0aGlzIFQpKCkgeyByZXR1cm4gKGNhc3QoVCl0aGlzKS5MZW5ndGgoKTsgfQp9Cgp0ZW1wbGF0ZSBZKCkKewogIG1peGluIFg7CiAgaW50IExlbmd0aCgpIHsgcmV0dXJuIDM7IH0KfQoKc3RydWN0IEEge21peGluIFk7fQoKdm9pZCBtYWluKHN0cmluZ1tdIGFyZ3MpCnsKICAgIEEgYTsKICAgIGEubGVuZ3RoLndyaXRlbG47Cn0=