redesign based on eads's suggestion and work