// A = type of literals (e.g. String)
static noeq record LineCompedSingle(L literals, L pairs, L main) {
long roughCount() { ret l(literals) + l(pairs)*2 + l(main); }
int nLiterals() { ret l(literals); }
int nItems() { ret l(literals) + l(pairs); }
IntPair getPair(int symbol) { ret pairs.get(symbol-l(literals)); }
}