incorporate modificatons from Bob Lund