static O[] flattenArray(O... a) { new L l; for (O x : a) if (x instanceof O[]) l.addAll(asList((O[]) x)); else l.add(x); ret asObjectArray(l); }