code: @Override
  	public synchronized IPOContext pop()
  	{
  
  		IPOContext obj = peek();
  		int len = size();
  		for (int i = len - 1; i >= 0; i--)
  		{
  			if (!this.get(i).isStateful())
  			{
  				removeElementAt(i);
  				return obj;
  			}
  		}
  
  		return obj;
  	}
docs: Pop a non-stateful context from the Stack. Stateful contexts can be removed with {@link #clearStateContexts()}