private Set<OrderedCanvasIdPair> getExistingPairs() throws IOException { final Set<OrderedCanvasIdPair> existingPairs = new HashSet<>(8192); if (parameters.excludePairsInMatchCollection != null) { final List<SectionData> stackSectionDataList = renderDataClient.getStackSectionData(parameters.stack, parameters.minZ, parameters.maxZ); final RenderDataClient matchDataClient = new RenderDataClient( parameters.baseDataUrl, parameters.owner, parameters.excludePairsInMatchCollection); String pGroupId; for (final SectionData sectionData : stackSectionDataList) { pGroupId = sectionData.getSectionId(); for (final CanvasMatches canvasMatches : matchDataClient.getMatchesWithPGroupId(pGroupId)) { existingPairs.add( new OrderedCanvasIdPair( new CanvasId(canvasMatches.getpGroupId(), canvasMatches.getpId()), new CanvasId(canvasMatches.getqGroupId(), canvasMatches.getqId()))); } } } return existingPairs; }