Argumento genérico lambda para std :: pair

Estou tentando ver se isso é possível no lambda genérico do C ++ 14, mas não consigo encontrar a maneira certa de expressá-lo (ou talvez não seja possível). O exemplo simplificado é:

auto confirmOperation = [](auto pr){
  assert(pr.second);
};

A idéia é que, se você passar umstd::pair onde osecond é umbool (como o que é retornado deemplace funções), ele pode olhar para este bool.

Se esse fosse um parâmetro de modelo, eu poderia mostrar explicitamente opair com os tipos do par como genérico, mas não acho que seja possível com um lambda? Portanto, em vez disso, marquei todo o argumento como genérico e, portanto, o compilador não parece capaz de deduzir que estou passando o retorno de um mapa.emplace().

Alguma maneira de fazer isso?

questionAnswers(3)

yourAnswerToTheQuestion