docs: public SIMPIterator getRemoteTopicSpaceIterator()
    {
      if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled()) 
          SibTr.entry(tc, "getRemoteTopicSpaceIterator");
  
      //we get the hashmap of all PSOHs
      //these are keyed by SIB8Uuid of the remote ME
      Map pubsubOutHandlers = baseDest.cloneAllPubSubOutputHandlers();
      
      //we get a corresponding list of AIHs, also keyed by remote ME uuid
      Map aihMap = baseDest.getPseudoDurableAIHMap();
      
      Map pairings = new HashMap();
      //first we go through the list of psoh
      Iterator psOHIterator = pubsubOutHandlers.values().iterator();
      while(psOHIterator.hasNext())
      {
        PubSubOutputHandler psoh = (PubSubOutputHandler)psOHIterator.next();
        SIBUuid8 uuid = psoh.getTargetMEUuid();
        //add a new pairing
        RemoteTopicSpaceIterator.PublishConsumePairing pairing = 
          new RemoteTopicSpaceIterator.PublishConsumePairing(psoh, null);
        pairings.put(uuid, pairing);
      }
      
      //now we go through the map adding in AIHs to existing
      //pairing where appropriate, or creating new pairings 
      //for new additions
      Iterator aihIterator = aihMap.values().iterator();
      while(aihIterator.hasNext())
      {
        AnycastInputHandler aih = (AnycastInputHandler)aihIterator.next();
        SIBUuid8 uuid = aih.getLocalisationUuid();
        Object existingPairing = pairings.get(uuid);
        if(existingPairing!=null)
        {
          ((RemoteTopicSpaceIterator.PublishConsumePairing)existingPairing).
            setAnycastInputHandler(aih);
        }
        else
        {
          //create a new pairing for just the AIH
          RemoteTopicSpaceIterator.PublishConsumePairing pairing = 
            new RemoteTopicSpaceIterator.PublishConsumePairing(null, aih);
          pairings.put(uuid, pairing);      
        }
        
      }
      //these pairings are now used by the iterator
      SIMPIterator itr =  new RemoteTopicSpaceIterator(pairings.values().iterator());   
    
      if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled()) 
        SibTr.exit(tc, "getRemoteTopicSpaceIterator", itr);
      return itr;
    }