Refatorando para o uso de templates