optimized for users' requirements