Adding metaprogramming HW