%   Copyright (c) 2002, 2016 Jens Keiner, Stefan Kunis, Daniel Potts
