// pc
//adapter.loadArg(0);
adapter.loadArg(0);
// collection
RefInteger startIndex=new RefIntegerImpl();
_writeOutFirst(bc, (members.get(0)),mode,count==1,true,defaultValue,startIndex);
// keys
Iterator<Member> it = members.iterator();
ArrayVisitor av=new ArrayVisitor();
av.visitBegin(adapter,Types.COLLECTION_KEY,countDM-startIndex.toInt());
int index=0, i=0;
while(it.hasNext()) {
DataMember member=(DataMember) it.next();
if(i++<startIndex.toInt()) continue;
av.visitBeginItem(adapter, index++);
registerKey(bc,member.getName());
av.visitEndItem(bc.getAdapter());
}