throw new GrouperShellException(E.OUTOFBOUNDS, eAIOOB);
GrouperShell.error(i, eAIOOB, E.OUTOFBOUNDS);
  protected static boolean eval(Interpreter i, int idx)     throws  GrouperShellException  {    try {      List    history = GrouperShell.getHistory(i);      // An ugly way of getting the last command      if (idx == -2) {          idx = history.size() - 2;      }      String cmd = (String) history.get(idx);      i.eval(cmd);      return true;    }    catch (ArrayIndexOutOfBoundsException eAIOOB) {      throw new GrouperShellException(E.OUTOFBOUNDS, eAIOOB);    }    catch (bsh.EvalError eBEE)                    {      throw new GrouperShellException(eBEE);    }    catch (IndexOutOfBoundsException eIOOB) {      throw new GrouperShellException(E.OUTOFBOUNDS, eIOOB);    }  } // protected static boolean eval(i, idx)