public override IResultValue Evaluate() { List <IResultValue> argResults = new List <IResultValue>(); foreach (NodeBase fact in Children) { argResults.Add(fact.Evaluate()); } return(FuncInfo.Invoke(argResults.ToArray())); }