modified to Chris's requirements