static O smallestList_fromList(L e) { int n = l(e); smallestList_checkElements(e); switch (n) { case 0: ret null; case 1: ret e.get(0); case 2: ret pair(e.get(0), e.get(1)); case 3: ret triple(e.get(0), e.get(1), e.get(2)); default: ret toObjectArray(e); } }