Redesign - much better and working correctly