@NotNull
  InstructionKey pop(int overriddenOffset) {
    int returnOffset = myCallStack[myCallStack.length - 1];
    int[] nextStack = ArrayUtil.realloc(myCallStack, myCallStack.length - 1);
    int nextOffset = overriddenOffset != 0 ? overriddenOffset : returnOffset;
    return new InstructionKey(nextOffset, nextStack);
  }
@NotNull
  InstructionKey pop(int overriddenOffset)