private ManageableSecurity getOrLoadSecurity(final ExternalId ticker) {
   final SecuritySearchResult underlyingSearch =
       getToolContext().getSecurityMaster().search(new SecuritySearchRequest(ticker));
   switch (underlyingSearch.getDocuments().size()) {
     case 0:
       s_logger.debug("Loading security for underlying {}", ticker);
       return loadSecurity(ticker);
     case 1:
       return underlyingSearch.getSingleSecurity();
     default:
       // Duplicate securities in the master
       s_logger.info(
           "Multiple securities matched search for ticker {}. Using the first. {}",
           ticker,
           underlyingSearch);
       return underlyingSearch.getFirstSecurity();
   }
 }