Well, retain priority (typo>??), in a datastep, so that it appears on each row (if you don't want to keep it then new variable). Then sort by priority and 30 min:
data want;
set have;
retain all_priority;
if _n_=1 or priority ne . then all_priority=priority;