added another semantic check