private HashSet<Integer> getAALOADNewIds(OperandStack stack) {
   HashSet<Integer> toRet = new HashSet<Integer>();
   try {
     int currentSizeOfStack = stack.getNumberOfTypesInStack();
     GCType type = (GCType) stack.get(currentSizeOfStack - 2);
     toRet = type.getAllNewIds();
     toRet.remove(-1);
   } catch (Exception d) {
     d.printStackTrace();
     System.exit(1);
   }
   return toRet;
 }
 @Override
 public void init(String args[]) throws Exception {
   String superArgs[] = null;
   StatsHolder.getInstanceOf().addStatArgs(args);
   engine.setDefaults();
   try {
     superArgs = engine.processArgs(args);
   } catch (Exception d) {
     engine.inputMessage();
     // Miscellaneous.printlnErr("************ ERROR Wrong input: " + d.getMessage());
     // d.printStackTrace();
     Miscellaneous.exit();
   }
   // do not forget this. However, at the end as third parameter was set above properly
   super.init(superArgs);
   System.arraycopy(superArgs, 0, args, 0, args.length);
 }