Alterando design pattern das functions