private void getNext() {
	    	nextInt = null;
	        while (nextInt == null && (!stack.isEmpty() || itr.hasNext())) {
	            if (!stack.isEmpty()) {
	                while (!stack.isEmpty()) {
	                    if (stack.peek().isEmpty())
	                        stack.pop();
	                    else {
	                        INestedInteger i = stack.peek().remove(0);
	                        if (i.isInteger()) {
	                            nextInt = i.getInteger();
	                            break;
	                        } else
	                            stack.push(i.getList());
	                    }
	                }
	            } else {
	                INestedInteger i = itr.next();
	                if (i.isInteger())
	                    nextInt = i.getInteger();
	                else
	                    stack.push(i.getList());
	            }
	        }
	    }