static L dropFirstAndLast(int n, L l) {
ret cloneSubList(l, n, l(l)-n);
}
static L dropFirstAndLast(int m, int n, L l) {
ret cloneSubList(l, m, l(l)-n);
}
static L dropFirstAndLast(L l) {
return dropFirstAndLast(1, l);
}
static S dropFirstAndLast(S s) {
ret substring(s, 1, l(s)-1);
}