static L takeFirst_cloneIfDifferent(L l, int n) { ret l(l) <= n ? l : subList_cloneIfDifferent(l, 0, n); } static L takeFirst_cloneIfDifferent(int n, L l) { ret takeFirst_cloneIfDifferent(l, n); }