#include <iostream>
using namespace std;
auto dupa1(auto num)->decltype(num+8){
return num+8;
}
auto dupa2(auto num){
return num+8;
}
template <typename T>
T dupa3(T num){
return num+8;
}
int main() {
double a=10.1;
int b=5;
cout << dupa1(a) << endl;
cout << dupa2(a) << endl;
cout << dupa3(a) << endl;
cout << dupa1(b) << endl;
cout << dupa2(b) << endl;
cout << dupa3(b) << endl;
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKYXV0byBkdXBhMShhdXRvIG51bSktPmRlY2x0eXBlKG51bSs4KXsKCXJldHVybiBudW0rODsKfQoKYXV0byBkdXBhMihhdXRvIG51bSl7CglyZXR1cm4gbnVtKzg7Cn0KCnRlbXBsYXRlIDx0eXBlbmFtZSBUPgpUIGR1cGEzKFQgbnVtKXsKCXJldHVybiBudW0rODsKfQoKaW50IG1haW4oKSB7Cglkb3VibGUgYT0xMC4xOwoJaW50IGI9NTsKCWNvdXQgPDwgZHVwYTEoYSkgPDwgZW5kbDsKCWNvdXQgPDwgZHVwYTIoYSkgPDwgZW5kbDsKCWNvdXQgPDwgZHVwYTMoYSkgPDwgZW5kbDsKCWNvdXQgPDwgZHVwYTEoYikgPDwgZW5kbDsKCWNvdXQgPDwgZHVwYTIoYikgPDwgZW5kbDsKCWNvdXQgPDwgZHVwYTMoYikgPDwgZW5kbDsKCXJldHVybiAwOwp9