iterateMap(document, startNode, subMap, d);
<BUG>doDebug(d,"back from descent Map path="+key+" startNode="+ nodeToString(startNode));
</BUG>
} else if ( obj instanceof List ) {
List<?> lst = (List<?>) obj;
<BUG>doDebug(d,"Have a list that is this long "+lst.size());
</BUG>
Iterator<?> listIter = lst.iterator();
int newPos = 0;
while ( listIter.hasNext() ) {

iterateMap(document, startNode, subMap, d);
if ( DF ) doDebug(d,"back from descent Map path="+key+" startNode="+ nodeToString(startNode));
} else if ( obj instanceof List ) {
List<?> lst = (List<?>) obj;
if ( DF ) doDebug(d,"Have a list that is this long "+lst.size());
Iterator<?> listIter = lst.iterator();
int newPos = 0;
while ( listIter.hasNext() ) {
