#2 ultimas implementaçoes