#include <iostream>
#include <cstdlib>
using namespace std;
template<typename T> constexpr inline T add(T val) { return val; }
template<typename T, typename ...Agrs>
constexpr inline T add(T val, Agrs ...args) { return val + add(args...); }
int main() {
cout << add(1, 2, 3) << endl;
volatile int a = 1, b = 2, c = 3;
cout << add(a, b, c) << endl;
for(volatile int i = 0; i < 10; ++i)
cout << add(rand(), i) << endl;
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8Y3N0ZGxpYj4KdXNpbmcgbmFtZXNwYWNlIHN0ZDsKCnRlbXBsYXRlPHR5cGVuYW1lIFQ+IGNvbnN0ZXhwciBpbmxpbmUgVCBhZGQoVCB2YWwpIHsgcmV0dXJuIHZhbDsgfQoKdGVtcGxhdGU8dHlwZW5hbWUgVCwgdHlwZW5hbWUgLi4uQWdycz4KY29uc3RleHByIGlubGluZSBUIGFkZChUIHZhbCwgQWdycyAuLi5hcmdzKSB7IHJldHVybiB2YWwgKyBhZGQoYXJncy4uLik7IH0KCgppbnQgbWFpbigpIHsKCiAgICBjb3V0IDw8IGFkZCgxLCAyLCAzKSA8PCBlbmRsOwoKICAgIHZvbGF0aWxlIGludCBhID0gMSwgYiA9IDIsIGMgPSAzOwoKICAgIGNvdXQgPDwgYWRkKGEsIGIsIGMpIDw8IGVuZGw7CiAgICAKICAgIGZvcih2b2xhdGlsZSBpbnQgaSA9IDA7IGkgPCAxMDsgKytpKSAKICAgIAljb3V0IDw8IGFkZChyYW5kKCksIGkpIDw8IGVuZGw7CgogICAgcmV0dXJuIDA7Cn0=