Simple algorithm
(Luebke and Georges ‘95)