sS replaceLineEquations(IF2 f, S text) { ret mapEachLine(text, l -> { PairS p = splitAtEquals_pair(l); ret p == null ? l : f.get(p.a, p.b); }); }