Source: https://cug.org/proceedings/cug2017_proceedings/includes/files/pap105s2-file1.pdf