type PriorityQueue = { getFirst->T remove->T add(_:T)->Void isEmpty->Boolean size->Number clear->Void asString->String}