incorporate corrections from Michael Hill