usando meta programacao