Author: j.t coppock and frankengeldow