add base for semantic checks