单项选择题

Why haven't you taken the medicine It ______ before dinner

A.should have been taken
B.is taken
C.has been taken
D.should have taken