docs: private StationStats getStationStats(short station, VoltTable[] lastDepartResult) {
          TimestampType lastDepartTime;
          if (lastDepartResult[0].advanceRow()) {
              lastDepartTime = lastDepartResult[0].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;
                      }
                  }
              }
          }
  
          return new StationStats(station, lastDepartTime, totalWaitTime, totalEntries);
      }