static L smallestList_asList(O l) { if (l == null) ret ll(); if (l << Pair) ret ll(l/Pair.a, l/Pair.b); if (l << T3) ret ll(l/T3.a, l/T3.b, l/T3.c); if (l instanceof O[]) ret Arrays.asList((O[]) l); ret i == 0 ? l : null; }