Source: https://support.sas.com/resources/papers/proceedings17/SAS0380-2017.pdf