#include <iostream>
#include <type_traits>

template<class T>
struct e {

};

template <int N>
struct e<std::integral_constant<int,N> > {
    static const int value = N;
};

int main() {
    std::cout << e<std::integral_constant<int,5>>::value << std::endl;
}