Design a task queue that supports prioritized scheduling by user tier. Implement a function that processes a list of operations on tasks, where each task has a unique task_id, a tier, and an insertion order. Higher tiers must be served before lower tiers, and tasks within the same tier must be served in first-in-first-out order. Support enqueue, dequeue, and cancel by task_id, returning the results of dequeue operations.
1 <= len(operations) <= 2 * 10^51 <= tier <= 10^9task_id is a non-empty string and is unique across active tasksenqueue, dequeue, or cancelcancel may reference an already removed or nonexistent task