Source: https://www.graie.org/ISRivers/docs/papers/2018/1P113-214GUI.pdf