happy thru sec 2.3 metaprogramming