#include <cstdio>

template <int n> struct T
{
  enum { value = n };
};

template <int l, int r> struct For
{
  enum { value = T<l>::value + For<l + 1, r>::value  };
};

template <int l> struct For<l, l>
{
  enum { value = 0 };
};

int main()
{
  int x = For<5, 10>::value;
  printf("%d\n", x);
  return 0;
}