Source: https://eg.uc.pt/bitstream/10316/83276/1/Thesis.pdf