acrescentando algumas checagens de erro