#include <iostream>
#include <type_traits>
int main() {
std::cout << std::is_same<int &, std::add_const<int &>::type>::value << std::endl;
std::cout << std::is_same<int, std::add_const<int>::type>::value << std::endl;
std::cout << std::is_same<int const, std::add_const<int>::type>::value << std::endl;
std::cout << std::is_same<int &, std::add_lvalue_reference<std::add_const<int &>::type>::type>::value << std::endl;
std::cout << std::is_same<int &, std::add_lvalue_reference<std::add_const<int>::type>::type>::value << std::endl;
std::cout << std::is_same<int const &, std::add_lvalue_reference<std::add_const<int>::type>::type>::value << std::endl;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8dHlwZV90cmFpdHM+CgppbnQgbWFpbigpIHsKCXN0ZDo6Y291dCA8PCBzdGQ6OmlzX3NhbWU8aW50ICYsIHN0ZDo6YWRkX2NvbnN0PGludCAmPjo6dHlwZT46OnZhbHVlIDw8IHN0ZDo6ZW5kbDsKCXN0ZDo6Y291dCA8PCBzdGQ6OmlzX3NhbWU8aW50LCBzdGQ6OmFkZF9jb25zdDxpbnQ+Ojp0eXBlPjo6dmFsdWUgPDwgc3RkOjplbmRsOwoJc3RkOjpjb3V0IDw8IHN0ZDo6aXNfc2FtZTxpbnQgY29uc3QsIHN0ZDo6YWRkX2NvbnN0PGludD46OnR5cGU+Ojp2YWx1ZSA8PCBzdGQ6OmVuZGw7CgoJc3RkOjpjb3V0IDw8IHN0ZDo6aXNfc2FtZTxpbnQgJiwgc3RkOjphZGRfbHZhbHVlX3JlZmVyZW5jZTxzdGQ6OmFkZF9jb25zdDxpbnQgJj46OnR5cGU+Ojp0eXBlPjo6dmFsdWUgPDwgc3RkOjplbmRsOwoJc3RkOjpjb3V0IDw8IHN0ZDo6aXNfc2FtZTxpbnQgJiwgc3RkOjphZGRfbHZhbHVlX3JlZmVyZW5jZTxzdGQ6OmFkZF9jb25zdDxpbnQ+Ojp0eXBlPjo6dHlwZT46OnZhbHVlIDw8IHN0ZDo6ZW5kbDsKCXN0ZDo6Y291dCA8PCBzdGQ6OmlzX3NhbWU8aW50IGNvbnN0ICYsIHN0ZDo6YWRkX2x2YWx1ZV9yZWZlcmVuY2U8c3RkOjphZGRfY29uc3Q8aW50Pjo6dHlwZT46OnR5cGU+Ojp2YWx1ZSA8PCBzdGQ6OmVuZGw7CgoKfQ==