@Override
 public List<ExternalId> visitSwapSecurity(final SwapSecurity security) {
   final List<ExternalId> result = new ArrayList<>();
   final SwapLeg payLeg = security.getPayLeg();
   final SwapLeg receiveLeg = security.getReceiveLeg();
   final String securityType = security.getSecurityType();
   if (payLeg.getRegionId().equals(receiveLeg.getRegionId())) {
     return Arrays.asList(
         ExternalId.of(
             SECURITY_IDENTIFIER, securityType + SEPARATOR + payLeg.getRegionId().getValue()));
   }
   result.add(
       ExternalId.of(
           SECURITY_IDENTIFIER, securityType + SEPARATOR + payLeg.getRegionId().getValue()));
   result.add(
       ExternalId.of(
           SECURITY_IDENTIFIER, securityType + SEPARATOR + receiveLeg.getRegionId().getValue()));
   return result;
 }