protected virtual Expression VisitLambda(LambdaExpression lambda) { return Expression.Lambda(lambda.Type, Visit(lambda.Body), VisitParameterList(lambda.Parameters)); }