refactored IncrementalExecutor