Don't use metaprogramming.