    class
    	HEAP_PRIORITY_QUEUE [G -> COMPARABLE]

    General
    	cluster: base
    	description: "Priority queues implemented as heaps"
    	create: make

    Ancestors
    	ARRAY [G]
    	PRIORITY_QUEUE* [G -> PART_COMPARABLE]

    Queries
    	changeable_comparison_criterion: BOOLEAN
    	count: INTEGER_32
    	duplicate (n: INTEGER_32): [like Current] HEAP_PRIORITY_QUEUE [G]
    	extendible: BOOLEAN
    	full: BOOLEAN
    	has (v: G): BOOLEAN
    	index_set: INTEGER_INTERVAL
    	is_empty: BOOLEAN
    	is_equal (other: [like Current] HEAP_PRIORITY_QUEUE [G]): BOOLEAN
    	is_inserted (v: G): BOOLEAN
    	item: G
    	linear_representation: ARRAYED_LIST [G]
    	object_comparison: BOOLEAN
    	occurrences (v: G): INTEGER_32
    	Prunable: BOOLEAN
    	readable: BOOLEAN
    	writable: BOOLEAN

    Commands
    	append (s: SEQUENCE [G])
    	compare_objects
    	compare_references
    	copy (other: [like Current] HEAP_PRIORITY_QUEUE [G])
    	extend (v: G)
    	fill (other: CONTAINER [G])
    	force (v: [like item] G)
    	make (n: INTEGER_32)
    	prune (v: G)
    	prune_all (v: G)
    	put (v: [like item] G)
    	remove
    	wipe_out

    Constraints
    	empty means storage empty