this is for you Greg with my bug fixes