untested code for zucker & maas approach.