#include <iostream>

template <typename lhs_t, typename func_t>
inline func_t operator > (lhs_t const &lhs, func_t rhs) {
    return rhs;
}

template <typename rhs_t, typename func_t>
inline auto operator < (func_t const &lhs, rhs_t const &rhs) -> decltype(lhs())
{
    return lhs();
}

int main (void) {
    auto __ = [](){return "!!(0>__<0)";};
    std::cout << (!!0>__<0) << std::endl;
    return 0;
}