#include <iostream>
using namespace std;
int sum (int const & a, int const & b)
{
cout <<" NOn template function "<<endl;
return a+b;
}
template <typename T>
int sum ( const T & a, const T & b)
{
cout<<"Template Generated .."<<endl;
return a+b;
};
int main(int argc, char ** argv)
{
cout <<sum(10,20)<<endl;;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKaW50IHN1bSAoaW50IGNvbnN0ICYgYSwgaW50IGNvbnN0ICAmIGIpCnsKICBjb3V0IDw8IiBOT24gdGVtcGxhdGUgZnVuY3Rpb24gIjw8ZW5kbDsKICByZXR1cm4gYStiOwp9Cgp0ZW1wbGF0ZSA8dHlwZW5hbWUgVD4KaW50IHN1bSAoIGNvbnN0IFQgJiBhLCBjb25zdCBUICYgYikKewogIGNvdXQ8PCJUZW1wbGF0ZSBHZW5lcmF0ZWQgLi4iPDxlbmRsOwogIHJldHVybiBhK2I7Cn07CgoKaW50IG1haW4oaW50IGFyZ2MsIGNoYXIgKiogYXJndikKewogIGNvdXQgPDxzdW0oMTAsMjApPDxlbmRsOzsKfQ==