Author: Guilherme Alexandre dos Santos Espadanal Ramos