internal Expression Expression(Dictionary<string, ParameterExpression> parameters)
{
var result = System.Linq.Expressions.Expression.Constant(Output) as Expression;
return Children.Aggregate(result,
(current, child) =>
System.Linq.Expressions.Expression.Condition(
child.Predicate.Expression(parameters), child.Expression(parameters),
current));
}