Improved error messages (use best contexts only, ambiguous case)