#include <utility>
#include <iostream>
std::pair<char,int> test1() {
return std::pair<char,int>(1,'a');
}
std::pair<char,int> test2() {
return std::pair<int, char>('a', 1);
}
std::pair<char,int> test3() {
return std::pair<int, char>(1, 'a');
}
std::pair<char,int> test4(const std::pair<char,int>& arg) {
return arg;
}
int main(int argc, char *argv[])
{
auto a = test1().first;
auto b = test2().first;
auto c = test3().first;
std::pair<int, char> arg('a',1);
auto d = test4(arg).first;
std::cout << a << b << c << d << "\n";
}
CiNpbmNsdWRlIDx1dGlsaXR5PgojaW5jbHVkZSA8aW9zdHJlYW0+CgpzdGQ6OnBhaXI8Y2hhcixpbnQ+IHRlc3QxKCkgewogICAgcmV0dXJuIHN0ZDo6cGFpcjxjaGFyLGludD4oMSwnYScpOwp9CgpzdGQ6OnBhaXI8Y2hhcixpbnQ+IHRlc3QyKCkgewogICAgcmV0dXJuIHN0ZDo6cGFpcjxpbnQsIGNoYXI+KCdhJywgMSk7Cn0KCnN0ZDo6cGFpcjxjaGFyLGludD4gdGVzdDMoKSB7CiAgICByZXR1cm4gc3RkOjpwYWlyPGludCwgY2hhcj4oMSwgJ2EnKTsKfQoKc3RkOjpwYWlyPGNoYXIsaW50PiB0ZXN0NChjb25zdCBzdGQ6OnBhaXI8Y2hhcixpbnQ+JiBhcmcpIHsKICAgIHJldHVybiBhcmc7Cn0KCmludCBtYWluKGludCBhcmdjLCBjaGFyICphcmd2W10pCnsKCiAgICBhdXRvIGEgPSB0ZXN0MSgpLmZpcnN0OwogICAgYXV0byBiID0gdGVzdDIoKS5maXJzdDsKICAgIGF1dG8gYyA9IHRlc3QzKCkuZmlyc3Q7CgogICAgc3RkOjpwYWlyPGludCwgY2hhcj4gYXJnKCdhJywxKTsKCiAgICBhdXRvIGQgPSB0ZXN0NChhcmcpLmZpcnN0OwoKICAgIHN0ZDo6Y291dCA8PCBhIDw8IGIgPDwgYyA8PCBkIDw8ICJcbiI7Cn0K