contributions from

Paul Coertjens