using System;
public class Test
{
class Foo
{
public Foo(int x = 0) { m_x = x; }
public void DisplayX() { Console.WriteLine(m_x); }
public int m_x;
}
class Bar
{
public Bar(Foo foo)
{
m_foo = foo;
}
public Foo m_foo;
}
public static void Main()
{
// main
Foo foo = new Foo(150);
Bar bar = new Bar(foo);
bar.m_foo.m_x = 30;
bar.m_foo.DisplayX();
foo.DisplayX();
}
}
dXNpbmcgU3lzdGVtOwoKcHVibGljIGNsYXNzIFRlc3QKewoJY2xhc3MgRm9vCgl7CgkgICAgcHVibGljIEZvbyhpbnQgeCA9IDApIHsgbV94ID0geDsgfQoJICAgIHB1YmxpYyB2b2lkIERpc3BsYXlYKCkgeyBDb25zb2xlLldyaXRlTGluZShtX3gpOyB9CgkgICAgcHVibGljIGludCBtX3g7Cgl9CgkKCWNsYXNzIEJhcgoJewoJICAgIHB1YmxpYyBCYXIoRm9vIGZvbykKCSAgICB7CgkgICAgICAgIG1fZm9vID0gZm9vOwoJICAgIH0KCSAgICBwdWJsaWMgRm9vIG1fZm9vOwoJfQoJcHVibGljIHN0YXRpYyB2b2lkIE1haW4oKQoJewoJCgkJCgkJLy8gbWFpbgoJCUZvbyBmb28gPSBuZXcgRm9vKDE1MCk7CgkJQmFyIGJhciA9IG5ldyBCYXIoZm9vKTsKCQliYXIubV9mb28ubV94ID0gMzA7CgkJCgkJYmFyLm1fZm9vLkRpc3BsYXlYKCk7CgkJZm9vLkRpc3BsYXlYKCk7Cgl9Cn0=