refatorando e re-estruturando a logica