priority queue impl
targeted events impl