static LL gazelle_monologues(O... _) { int minLength = optPar minLength(_, 2); int maxDelay = optPar maxDelay(_, 5000); new LL out; for (long channelID : dm_discord_allChannelIDs()) { L l = dm_discord_linesInChannel(channelID); for i over l: { int j = i+1; if (!l.get(i).bot) continue; while (j < l(l) && l.get(j).bot && l.get(j).timestamp <= l.get(j-1).timestamp+maxDelay) ++j; if (j-i >= minLength) out.add(cloneSubList(l, i, j)); i = j-1; } } ret out; }