start semantic checking