Some changes to metaprogramming