using System;
public class Test
{
public static void Main()
{
Foo(2);
}
static void Foo(A a) {
Console.WriteLine("Inside Foo");
}
}
public class A
{
int myInt;
public static implicit operator A(int x)
{
Console.WriteLine("Conversion");
return new A {myInt = x};
}
}
dXNpbmcgU3lzdGVtOwoKcHVibGljIGNsYXNzIFRlc3QKewoJcHVibGljIHN0YXRpYyB2b2lkIE1haW4oKQoJewoJCUZvbygyKTsKCX0KCXN0YXRpYyB2b2lkIEZvbyhBIGEpIHsKCQlDb25zb2xlLldyaXRlTGluZSgiSW5zaWRlIEZvbyIpOwoJfQp9CgpwdWJsaWMgY2xhc3MgQQp7CiAgICBpbnQgbXlJbnQ7CiAgICBwdWJsaWMgc3RhdGljIGltcGxpY2l0IG9wZXJhdG9yIEEoaW50IHgpCiAgICB7CiAgICAJQ29uc29sZS5Xcml0ZUxpbmUoIkNvbnZlcnNpb24iKTsKICAgICAgICByZXR1cm4gbmV3IEEge215SW50ID0geH07CiAgICB9Cn0=