Author: Vitor Joao Pereira Domingues Martinho