using System;
using System.Linq;
using System.Linq.Expressions;
public class Test
{
public static void Main() {
var e = (Func<int?>)Expression.Lambda(
typeof(Func<int?>)
, Expression.Condition(
Expression.Constant(false)
, Expression.Default(typeof(int?))
, Expression.Convert(Expression.Constant(1), typeof(int?))
, typeof(int?)
)
).Compile();
Console.WriteLine("'{0}'", e());
}
}
dXNpbmcgU3lzdGVtOwp1c2luZyBTeXN0ZW0uTGlucTsKdXNpbmcgU3lzdGVtLkxpbnEuRXhwcmVzc2lvbnM7CgpwdWJsaWMgY2xhc3MgVGVzdAp7CglwdWJsaWMgc3RhdGljIHZvaWQgTWFpbigpIHsKCQl2YXIgZSA9IChGdW5jPGludD8+KUV4cHJlc3Npb24uTGFtYmRhKAoJCQl0eXBlb2YoRnVuYzxpbnQ/PikKCQksICAgRXhwcmVzc2lvbi5Db25kaXRpb24oCiAgICAgICAgICAgICAgICBFeHByZXNzaW9uLkNvbnN0YW50KGZhbHNlKQogICAgICAgICAgICAsICAgRXhwcmVzc2lvbi5EZWZhdWx0KHR5cGVvZihpbnQ/KSkKICAgICAgICAgICAgLCAgIEV4cHJlc3Npb24uQ29udmVydChFeHByZXNzaW9uLkNvbnN0YW50KDEpLCB0eXBlb2YoaW50PykpCiAgICAgICAgICAgICwgICB0eXBlb2YoaW50PykKICAgICAgICAgICAgKQogICAgICAgICkuQ29tcGlsZSgpOwogICAgICAgIENvbnNvbGUuV3JpdGVMaW5lKCInezB9JyIsIGUoKSk7Cgl9Cn0=