pendingProp = (Property)nprop;
pendingProp = nprop;
  public Iterator getProperties() {    return new Iterator() {        Iterator currentIterator = getMyProperties().values().iterator();        int nextChildIndex = 0;        Property pendingProp = null;        public boolean hasNext() {          while (pendingProp == null) {            while (!currentIterator.hasNext()) {              if (nextChildIndex >= getChildCount()) {                return false;              }              currentIterator =                 ((ConfigurableComponent)getChild(nextChildIndex++)).getProperties();            }	    	    Object nprop = currentIterator.next();            if (nprop == nullProperty) {              pendingProp = null;            } else {	      pendingProp = (Property)nprop;	    }          }          return true;        }                public Object next() {          if (pendingProp == null && !hasNext())            throw new NoSuchElementException();          Object result = pendingProp;          pendingProp = null;          return result;        }        public void remove() {          throw new UnsupportedOperationException();        }      };  }