#pragma once template struct integral_constant { static const T value = N; __host__ __device__ constexpr T Get() const { return value; } }; template __host__ __device__ constexpr auto operator+(integral_constant, integral_constant) { return integral_constant{}; } template using Number = integral_constant;