added q.h