using System;
class Program
{
public static void Main()
{
try
{
using (D d = new D())
{
Console.WriteLine("using D");
}
}
catch (Exception ) { Console.WriteLine("catch"); }
Console.ReadKey();
}
}
class D : IDisposable
{
IDisposable a = null;
IDisposable b = null;
public void Dispose()
{
try { a.Dispose(); }
finally
{
try { b.Dispose(); }
finally
{
}
}
}
}
dXNpbmcgU3lzdGVtOwoKY2xhc3MgUHJvZ3JhbQogICAgewogICAgICAgIHB1YmxpYyBzdGF0aWMgdm9pZCBNYWluKCkKICAgICAgICB7CiAgICAgICAgICAgIHRyeQogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICB1c2luZyAoRCBkID0gbmV3IEQoKSkKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICBDb25zb2xlLldyaXRlTGluZSgidXNpbmcgRCIpOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgICAgIGNhdGNoIChFeGNlcHRpb24gKSB7IENvbnNvbGUuV3JpdGVMaW5lKCJjYXRjaCIpOyB9CgogICAgICAgICAgICBDb25zb2xlLlJlYWRLZXkoKTsKICAgICAgICB9CiAgICB9CiAgICBjbGFzcyBEIDogSURpc3Bvc2FibGUKICAgIHsKICAgICAgICBJRGlzcG9zYWJsZSBhID0gbnVsbDsKICAgICAgICBJRGlzcG9zYWJsZSBiID0gbnVsbDsKICAgICAgICBwdWJsaWMgdm9pZCBEaXNwb3NlKCkKICAgICAgICB7CiAgICAgICAgICAgIHRyeSB7IGEuRGlzcG9zZSgpOyB9CiAgICAgICAgICAgIGZpbmFsbHkKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgdHJ5IHsgYi5EaXNwb3NlKCk7IH0KICAgICAgICAgICAgICAgIGZpbmFsbHkKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgIH0KICAgIH0=