sclass JE_RepElement extends JEInstantCompressor_AnyType> { scaffolded public IJavaExpr compress(L data) { bool sc = scaffoldingEnabled(this); if (empty(data)) null; A a = first(data); int n = l(data); for (int i = 1; i < n; i++) if (!eq(data.get(i), a)) { if (sc) scaffoldCalled(this, "diff at " + i + "/" + n); null; } ret javaExpr( functionCall repSimple(n, elementToJava(a)), -> repSimple(n, a)); } swappable IJavaExpr elementToJava(A o) { var e = javaObjectToIJavaExpr(o); if (e == null) fail("elementToJava: " + className(o)); ret e; } }