adding some of chris's suggestions