refatoração + correções