// runDecompressor is expected to return byte array, byte list or byte iterator interface CompressionRegime extends CompressionRegime_AnyType { default byte[] runDecompressorToBytes(A a) { ret toByteArray(runDecompressor(a)); } default byte[] decompress(byte[] compressed) { ret toByteArray(runDecompressor(decompressorFromBytes(compressed))); } default L decompressToByteList(byte[] compressed) { ret toByteList(runDecompressor(decompressorFromBytes(compressed))); } default Iterator decompressToByteIterator(byte[] compressed) { ret toByteIterator(runDecompressor(decompressorFromBytes(compressed))); } }