#include <iostream>
template<bool T, class U = void>
struct enable__if
{};
template<class T>
struct enable__if<true,T>
{
typedef T type;
};
template <typename T, typename U>
typename enable__if<std::is_same<typename U::value_type,T>::value,std::size_t>::type
non_empties(const U& r)
{
return !r.empty();
}
template <typename T, typename U>
typename enable__if<!std::is_same<typename U::value_type,T>::value,std::size_t>::type
non_empties(const U& r)
{
std::size_t res = 0;
for(auto& it : r)
{
res += non_empties<T>(it);
}
return res;
}
int main()
{
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgoKdGVtcGxhdGU8Ym9vbCBULCBjbGFzcyBVID0gdm9pZD4Kc3RydWN0IGVuYWJsZV9faWYKe307Cgp0ZW1wbGF0ZTxjbGFzcyBUPgpzdHJ1Y3QgZW5hYmxlX19pZjx0cnVlLFQ+CnsKCXR5cGVkZWYgVCB0eXBlOwp9OwoKdGVtcGxhdGUgPHR5cGVuYW1lIFQsIHR5cGVuYW1lIFU+CnR5cGVuYW1lIGVuYWJsZV9faWY8c3RkOjppc19zYW1lPHR5cGVuYW1lIFU6OnZhbHVlX3R5cGUsVD46OnZhbHVlLHN0ZDo6c2l6ZV90Pjo6dHlwZQpub25fZW1wdGllcyhjb25zdCBVJiByKQp7CiAgICByZXR1cm4gIXIuZW1wdHkoKTsKfQoKdGVtcGxhdGUgPHR5cGVuYW1lIFQsIHR5cGVuYW1lIFU+CnR5cGVuYW1lIGVuYWJsZV9faWY8IXN0ZDo6aXNfc2FtZTx0eXBlbmFtZSBVOjp2YWx1ZV90eXBlLFQ+Ojp2YWx1ZSxzdGQ6OnNpemVfdD46OnR5cGUKbm9uX2VtcHRpZXMoY29uc3QgVSYgcikKewogICAgc3RkOjpzaXplX3QgcmVzID0gMDsKICAgIGZvcihhdXRvJiBpdCA6IHIpCiAgICB7CiAgICAgICAgcmVzICs9IG5vbl9lbXB0aWVzPFQ+KGl0KTsKICAgIH0KICAgIHJldHVybiByZXM7Cn0KCmludCBtYWluKCkKewogICAgcmV0dXJuIDA7Cn0=