public override object Result(LogicExecutionState state) { foreach (var statement in this.Statements) { statement.Execute(state); if (state.Finished) { return state.Result; } } return state.Result; }