docs: private List<StationStats> getStationStats(List<Short> stations, VoltTable[] lastDepartResult) {
          final List<StationStats> stationStats = new ArrayList<>(stations.size());
          for (int i = 0; i < stations.size(); i++) {
              final short station = stations.get(i);
              TimestampType lastDepartTime;
              if (lastDepartResult[i].advanceRow()) {
                  lastDepartTime = lastDepartResult[i].getTimestampAsTimestamp("last_depart");
              } else {
                  lastDepartTime = new TimestampType(0);
              }
              voltQueueSQL(getTrainDeparts, station, lastDepartTime);
              final VoltTable departResult = voltExecuteSQL()[0];
  
              while (departResult.advanceRow()) {
                  final TimestampType departTime = departResult.getTimestampAsTimestamp("time");
                  voltQueueSQL(getWaitTimeForTrain, departTime, station, lastDepartTime, departTime);
                  lastDepartTime = departTime;
              }
  
              long totalWaitTime = 0;
              long totalEntries = 0;
              if (departResult.getRowCount() > 0) {
                  final VoltTable[] waitTimeResult = voltExecuteSQL();
                  for (VoltTable res : waitTimeResult) {
                      if (res.advanceRow()) {
                          final long entries = res.getLong("entries");
                          final long waitTime = res.getLong("wait_sum");
                          // Don't record empty train
                          if (entries > 0) {
                              totalEntries += entries;
                              totalWaitTime += waitTime;
                          }
                      }
                  }
              }
  
              stationStats.add(new StationStats(station, lastDepartTime, totalWaitTime, totalEntries));
          }
          return stationStats;
      }