if (word(2 $loadinfo()) != [pf]) { load -pf $word(1 $loadinfo()); return; };

#
# Array manipulation functions.
#

#
# General one liners.  Brief description:
#
#   The *item functions operate on one array element.
#   The *items functions operate on as many elements as there are args.
#
# Note that unlike their inbuilt counterparts, these generally accept negative
# item numbers as the distance from the top of the array, starting with -1.
#
# Let's start with some basics:
#
#   getndelitems:   splice the items $1- from the array and return them as a list.
#   getndelindex:   splice the indices $1- from the array and return them as a list.
#   getnrolitems:   Splice items $2- from $0, put them at the end of $1, and return them.
#   itemnorm:       Supporting function.  Fixes/removes invalid item numbers.
#
alias itemnorm (ar,it) {@:ni=numitems($ar);fe it it {@it+=0<=it?0:ni,it=0<=it&&it<ni?it:[]};return $it};
alias getndelitems (ar,it) {@:it=itemnorm($ar $it),:function_return=getitem($ar $it),delitems($ar $it)};
alias getndelindex (ar,it) {@:it=itemnorm($ar $it),:function_return=igetitem($ar $it),delitems($ar $indextoitem($ar $it))};
alias getnrolitems (a0$it),delitems($ar $indextoitem($ar $it))};
alias getnrolitems (a0$it),delitems($ar $indextoitem($ar $it))};
alias getnrolitems (a0$it),delitems($ar $indextoitem($ar $it))};
alias getnrolitems (a0$it),delitems($ar $indextoitem($ar $it))};
alias getnrolitems (a0$it),delitems($ar $indextoitem($ar $it))};
alias getnrolitems (a0$it),delitems($ar $indextoitem($ar $it))};
alias getnrolitems (a0$it),delitems($ar $indextoitem($ar $it))};
alias getnrolitems (a0$it),delitems($ar $indextoitem($ar $it))};
alias getnrolitems (a0$it),delitems($ar $indextoitem($ar $it))};
alias getnrolitems (a0$it),delitems($ar $indextoitem($ar $it))};
alias getnrolitems (a0$it),delitems($ar $indextoitem($ar $it))};
alias getnrolitems (a0$it),delitems($ar $indextoitem($ar $it))};
alias getnrolitems (a0$it),delitems($ar $indextoitem($ar $it))};
alias getnrolitems (a0$it),delitems($ar $indextoitem($ar $it))};
alias getnrolitems (a0$it),delitems($ar $indextoitem($ar $it))};
alias getnrolitems (a0$it),delitems($ar $indextoitem($ar $it))};
alias getnrolitems (a0$it),delitems($ar $indextoitem($ar $it))};
alias getnrolitems (a0$it),delitems($ar $indextoitem($ar $it))};
alias getnrolitems (a0$it),delitems($ar $indextoitem($ar $it))};
alias getnrolitems (a0$it),delitems($ar $indextoitem($ar $it))};
alias getnrolitems (a0$it),delitems($ar $indextoitem($ar $it))};
alias getnrolitems (a0$it),delitems($ar $indextoitem($ar $it))};
alias getnrolitems (a0$it),delitems($ar $indextoitem($ar $it))};
alias getnrolitems (a0$it),delitems($ar $indextoitem($ar $it))};
alias getnrolitems (a0$it),delitems($ar $indextoitem($ar $it))};
alias getnrolitems (a0$it),delitems($ar $indextoitem($ar $it))};
alias getnrolitems (a0$it),delitems($ar $indextoitem($ar $it))};
alias getnrolitems (a0$it),delitems($ar $indextoitem($ar $it))};
alias getnrolitems (a0$it),delitems($ar $indextoitem($ar $it))};
alias getnrolitems (a0$it),delitems($ar $indextoitem($ar $it))};
alias getnrolitems (a0$it),delitems($ar $indextoitem($ar $it))};
alias getnrolitems (a0$it),delitems($ar $indextoitem($ar $it))};
alias getnrolitems (a0$it),delitems($ar $indextoitem($ar $it))};
alias getnrolitems (a0$it),delitems($ar $indextoitem($ar $it))};
alias getnrolitems (a0$it),delitems($ar $indextoitem($ar $it))};
alias getnrolitems (a0$it),delitems($ar $indextoitem($ar $it))};
alias getnrolitems (a0$it),delitems($ar $indextoitem($ar $it))};
alias getnrolitems (a0$it),delitems($ar $indextoitem($ar $it))};
alias getnrolitems (a0$it),delitems($ar $indextoitem($ar $it))};
alias getnrolitems (a0$it),delitems($ar $indextoitem($ar $it))};
alias getnrolitems (a0$it),delitems($ar $indextoitem($ar $it))};
alias getnrolitems (a0$it),delitems($ar $indextoitem($ar $it))};
alias getnrolitems (a0$it),delitems($ar $indextoitem($ar $it))};
alias getnrolitems (a0$it),delitems($ar $indextoitem($ar $it))};
alias getnrolitems (a0$it),delitems($ar $indextoitem($ar $it))};
alias getnrolitems (a0$it),delitems($ar $indextoitem($ar $it))};
alias getnrolitems (a0$it),delitems($ar $indextoitem($ar $it))};
alias getnrolitems (a0$it),delitems($ar $indextoitem($ar $it))};
alias getnrolitems (a0$it),delitems($ar $indextoitem($ar $it))};
alias getnrolitems (a0$it),delitems($ar $indextoitem($ar $it))};
alias getnrolitems (a0$it),delitems($ar $indextoitem($ar $it))};
alias getnrolitems (a0$it),delitems($ar $indextoitem($ar $it))};
alias getnrolitems (a0$it),delitems($ar $indextoitem($ar $it))};
alias getnrolitems (a0$it),delitems($ar $indextoitem($ar $it))};
alias getnrolitems (a0$it),delitems($ar $indextoitem($ar $it))};
alias getnrolitems (a0$it),delitems($ar $indextoitem($ar $it))};
alias getnrolitems (a0$it),delitems($ar $indextoitem($ar $it))};
alias getnrolitems (a0$it),delitems($ar $indextoitem($ar $it))};
alias getnrolitems (a0$it),delitems($ar $indextoitem($ar $it))};
alias getnrolitems (a0$it),delitems($ar $indextoitem($ar $it))};
alias getnrolitems (a0$it),delitems($ar $indextoitem($ar $it))};
alias getnrolitems (a0$it),delitems($ar $indextoitem($ar $it))};
alias getnrolitems (a0$it),delitems($ar $indextoitem($ar $it))};
alias getnrolitems (a0$it),delitems($ar $indextoitem($ar $it))};
alias getnrolitems (a0$it),delitems($ar $indextoitem($ar $it))};
alias getnrolitems (a0$it),delitems($ar $indextoitem($ar $it))};
alias getnrolitems (a0$it),delitems($ar $indextoitem($ar $it))};
alias getnrolitems (a0$it),delitems($ar $indextoitem($ar $it))};
alias getnrolitems (a0$it),delitems($ar $indextoitem($ar $it))};
alias getnrolitems (a0$it),delitems($ar $indextoitem($ar $it))};
alias getnrolitems (a0$it),delitems($ar $indextoitem($ar $it))};
alias getnrolitems (a0$it),delitems($ar $indextoitem($ar $it))};
alias getnrolitems (a0$it),delitems($ar $indextoitem($ar $it))};
alias getnrolitems (a0$it),delitems($ar $indextoitem($ar $it))};
alias getnrolitems (a0$it),delitems($ar $indextoitem($ar $it))};
alias getnrolitems (a0$it),delitems($ar $indextoitem($ar $it))};
alias getnrolitems (a0$it),delitems($ar $indextoitem($ar $it))};
alias getnrolitems (a0$it),delitems($ar $indextoitem($ar $it))};
alias getnrolitems (a0$it),delitems($ar $indextoitem($ar $it))};
alias getnrolitems (a0$it),delitems($ar $indextoitem($ar $it))};
alias getnrolitems (a0$it),delitems($ar $indextoitem($ar $it))};
alias getnrolitems (a0$it),delitems($ar $indextoitem($ar $it))};
alias getnrolitems (a0$it),delitems($ar $indextoitem($ar $it))};
alias getnrolitems (a0$