úÎ#"     brad.larsen@gmail.comA queue of values of type a with priority of type p. O(1) An empty priority queue. O(1)) Test whether a priority queue is empty. O(log p); Insert a value with given priority into a priority queue. O(log p)5 Remove the value with the minimum priority from the  queue. If the queue is empty,  returns . If multiple D values share the minimum priority, the most recently added will be  removed. O(log p)5 Remove the value with the maximum priority from the  queue. If the queue is empty,  returns . If multiple D values share the maximum priority, the most recently added will be  removed.  Applies a  Data.Map.Map* view function to a given priority queue. The view function The priority queue O(log p)4 View a priority queue to get the (value, priority) ? pair with the lowest priority and the remainder of the queue. @If multiple values share the lowest priority, the most recently  added will be returned. O(log p)4 View a priority queue to get the (value, priority) @ pair with the highest priority and the remainder of the queue. AIf multiple values share the highest priority, the most recently  added will be returned. O(log p)8 Get the minimum priority of the elements in the queue. O(log p)8 Get the maximum priority of the elements in the queue. O(n)5 Fold the priorities and values of a priority queue. O(log p) Split a priority queue q into two queues (q1, q2)  by the given priority p , such that q1 contains exactly the ! entries with priority less than p, and q2 containes exactly the 0 entries with priority greater than or equal to p. O(n), The number of entries in a priority queue. O(n)/ Filter all values that satisfy the predicate. O(n)0 Filter all entries that satisfy the predicate. O(n)3 Convert the priority queue into a list of (value, ( priority) pairs in ascending priority. DIf multiple values share the same priority, the most recently added  entries will come first.    brad.larsen@gmail.com       pure-priority-queue-0.12Data.PurePriorityQueue.InternalData.PurePriorityQueue MinMaxQueue unMinMaxQueueemptynullinsert deleteMin deleteMaxviewWithminViewmaxView minPriority maxPriorityfoldWithPrioritysplitByPrioritysizefilterfilterWithPriority toAscList