improvements and idea change