srecord noeq JE_CompressElementsIndividually(L inputData) extends Probabilistic { CompressionRegime regime = jeRegime(); settable ICompressionStrategy elementCompressionStrategy; new L> searches; // get current best compressed representation S code aka get() { ret formatFunctionCall ll(mapWithIndex(inputData, (i, data) -> { var search = _get(searches, i); S comp = search?.bestCompression(); ret comp != null ? comp : jeLiteral(data); })); } // start compressors run { if (elementCompressionStrategy == null) ret; probabilisticForEach(scheduler(), 1.0, 0.5, indexAsSideValue(inputData), data -> { int i = data.sideValue(); var search = new CompressionSearch(regime, data!); listSet(searches, i, search); ret elementCompressionStrategy.makeSearcher(search); }); } }