Adicionado uma camada de abstração no código