Source: https://www.cse.psu.edu/~sxz16/papers/alde.pdf