| 348 |  | keys.push_back(at4); | 
| 349 |  |  | 
| 350 |  | //try exact match first | 
| 351 | < | InversionType* inversionType = inversionTypeCont_.find(keys); | 
| 351 | > | InversionType* inversionType = inversionTypeCont_.permutedFindSkippingFirstElement(keys); | 
| 352 |  | if (inversionType) { | 
| 353 |  | return inversionType; | 
| 354 |  | } else { | 
| 410 |  | myKeys.push_back((*k)->getName()); | 
| 411 |  | myKeys.push_back((*l)->getName()); | 
| 412 |  |  | 
| 413 | < | InversionType* inversionType = inversionTypeCont_.find(myKeys); | 
| 413 | > | InversionType* inversionType = inversionTypeCont_.permutedFindSkippingFirstElement(myKeys); | 
| 414 |  | if (inversionType) { | 
| 415 |  | foundInversions.push_back( make_tuple3(Iscore, JKLscore, myKeys) ); | 
| 416 |  | } | 
| 429 |  | int jklscore = foundInversions[0].second; | 
| 430 |  | std::vector<std::string> theKeys = foundInversions[0].third; | 
| 431 |  |  | 
| 432 | < | InversionType* bestType = inversionTypeCont_.find(theKeys); | 
| 432 | > | InversionType* bestType = inversionTypeCont_.permutedFindSkippingFirstElement(theKeys); | 
| 433 |  | return bestType; | 
| 434 |  | } else { | 
| 435 |  | //if no exact match found, try wild card match |