req. hierarchy