### Database Schema:
CREATE TABLE taughtBy (
	course_id	INTEGER	NULL	PRIMARY KEY,
	p_id	INTEGER	NULL	PRIMARY KEY,
	foreign key (course_id) references course (course_id),
	foreign key (p_id) references person (p_id)
);

CREATE TABLE course (
	course_id	INTEGER	NULL	PRIMARY KEY,
	courseLevel	TEXT	NULL
);

CREATE TABLE person (
	p_id	INTEGER	NULL	PRIMARY KEY,
	professor	INTEGER	NULL,
	student	INTEGER	NULL,
	hasPosition	TEXT	NULL,
	inPhase	TEXT	NULL,
	yearsInProgram	TEXT	NULL
);

CREATE TABLE advisedBy (
	p_id	INTEGER	NULL	PRIMARY KEY,
	p_id_dummy	INTEGER	NULL	PRIMARY KEY,
	foreign key (p_id) references person (p_id),
	foreign key (p_id_dummy) references person (p_id)
);

### User's Query:
Provide the ID of professors who teach in both harder undergraduate course and master/graduate courses.

### Extra Knowledge:
harder undergraduate course refers to courseLevel = 'Level_400'; master/graduate courses refers to courseLevel = 'Level_500'; ID of professors refers to taughtBy.p_id
SELECT DISTINCT T2.p_id FROM course AS T1 INNER JOIN taughtBy AS T2 ON T1.course_id = T2.course_id WHERE T1.courseLevel = 'Level_400' OR T1.courseLevel = 'Level_500'