Yeah! template metaprogramming!