minor improvements
Try a whole new approach