Author: Manuel Correia de Oliveira Andrade