semantic correction