template<unsigned short Dim, unsigned short Order,
unsigned short Num=Dim>
struct BasicTerm
{
typedef Typelist<typename AddAt<
typename Monomial<Dim,-Order>::Result,Num,1>::Result,
typename BasicTerm<Dim,Order,Num-1>::Result> Result;
};
template<unsigned short Dim, unsigned short Order>
struct BasicTerm<Dim,Order,0>
{
typedef NullType Result;
};