base para a primeira fase implementada =D Tentando (pela enesima vez) modularizar