#include <iostream>
template<typename T>
void f(const T&) { std::cout << "const T& overload\n"; }
template<typename T>
void f(T&&) { std::cout << "T&& overload\n"; }
int main()
{
const int x = 0;
f(x);
f(std::move(x));
}
I2luY2x1ZGUgPGlvc3RyZWFtPgoKdGVtcGxhdGU8dHlwZW5hbWUgVD4Kdm9pZCBmKGNvbnN0IFQmKSB7IHN0ZDo6Y291dCA8PCAiY29uc3QgVCYgb3ZlcmxvYWRcbiI7IH0KCnRlbXBsYXRlPHR5cGVuYW1lIFQ+CnZvaWQgZihUJiYpIHsgc3RkOjpjb3V0IDw8ICJUJiYgb3ZlcmxvYWRcbiI7IH0KCmludCBtYWluKCkKewogIGNvbnN0IGludCB4ID0gMDsKCiAgZih4KTsKICBmKHN0ZDo6bW92ZSh4KSk7Cn0KCg==