docs: private void addLogicalStep(LogicalStep lStep) throws ExecutionException {
          if (lStep instanceof Project) {
              project = (Project) lStep;
  
          } else if (lStep instanceof Filter) {
              decideTypeFilterToAdd((Filter) lStep);
  
          } else if (lStep instanceof FunctionFilter){
              functionFilters.add((FunctionFilter) lStep);
  
          }else if (lStep instanceof Select) {
              select = (Select) lStep;
  
          } else if (lStep instanceof Limit) {
              limit = (Limit) lStep;
  
          } else if (lStep instanceof GroupBy) {
              groupBy = (GroupBy) lStep;
  
          } else if (lStep instanceof Window) {
              window = (Window) lStep;
  
          } else if (lStep instanceof OrderBy) {
              orderBy = (OrderBy) lStep;
          }else if (lStep instanceof Disjunction){
              switchDisjunctionList((Disjunction) lStep);
          } else {
  
              String message = "LogicalStep [" + lStep.getClass().getCanonicalName() + " not supported";
              logger.error(message);
              throw new ExecutionException(message);
          }
      }