Source: https://academic.oup.com/jss/article-pdf/XLI/2/203/9844375/203.pdf