anchor.diff:        queue(), queue(), queue(), queue(), queue(), queue(), queue(), queue()},
        {queue(), queue(), queue(), queue(), queue(), queue(), queue(), queue(),
         queue(), queue(), queue(), queue(), queue(), queue(), queue(), queue()}}.
  +-else.
  +-type pqueue4() ::
  +    {integer() | 'empty', % current priority
  +     integer(),           % total size
  +     {queue:queue(), queue:queue(), queue:queue(), queue:queue(),
  +      queue:queue(), queue:queue(), queue:queue(), queue:queue(),
  +      queue:queue(), queue:queue(), queue:queue(), queue:queue(),
  +      queue:queue(), queue:queue(), queue:queue(), queue:queue()},
  +     {queue:queue(), queue:queue(), queue:queue(), queue:queue(),
  +      queue:queue(), queue:queue(), queue:queue(), queue:queue(),
  +      queue:queue(), queue:queue(), queue:queue(), queue:queue(),
  +      queue:queue(), queue:queue(), queue:queue(), queue:queue()},
  +     {queue:queue(), queue:queue(), queue:queue(), queue:queue(),
  +      queue:queue(), queue:queue(), queue:queue(), queue:queue(),
  +      queue:queue(), queue:queue(), queue:queue(), queue:queue(),
  +      queue:queue(), queue:queue(), queue:queue(), queue:queue()},
  +     {queue:queue(), queue:queue(), queue:queue(), queue:queue(),
  +      queue:queue(), queue:queue(), queue:queue(), queue:queue(),
  +      queue:queue(), queue:queue(), queue:queue(), queue:queue(),
  +      queue:queue(), queue:queue(), queue:queue(), queue:queue()},
  +     {queue:queue(), queue:queue(), queue:queue(), queue:queue(),
  +      queue:queue(), queue:queue(), queue:queue(), queue:queue(),
  +      queue:queue(), queue:queue(), queue:queue(), queue:queue(),
  +      queue:queue(), queue:queue(), queue:queue(), queue:queue()},
  +     {queue:queue(), queue:queue(), queue:queue(), queue:queue(),
  +      queue:queue(), queue:queue(), queue:queue(), queue:queue(),
  +      queue:queue(), queue:queue(), queue:queue(), queue:queue(),
  +      queue:queue(), queue:queue(), queue:queue(), queue:queue()},
  +     {queue:queue(), queue:queue(), queue:queue(), queue:queue(),
  +      queue:queue(), queue:queue(), queue:queue(), queue:queue(),
  +      queue:queue(), queue:queue(), queue:queue(), queue:queue(),
  +      queue:queue(), queue:queue(), queue:queue(), queue:queue()},
  +     {queue:queue(), queue:queue(), queue:queue(), queue:queue(),
  +      queue:queue(), queue:queue(), queue:queue(), queue:queue(),
  +      queue:queue(), queue:queue(), queue:queue(), queue:queue(),
  +      queue:queue(), queue:queue(), queue:queue(), queue:queue()},
  +     queue:queue(),
  +     {queue:queue(), queue:queue(), queue:queue(), queue:queue(),
  +      queue:queue(), queue:queue(), queue:queue(), queue:queue(),
  +      queue:queue(), queue:queue(), queue:queue(), queue:queue(),
  +      queue:queue(), queue:queue(), queue:queue(), queue:queue()},
  +     {queue:queue(), queue:queue(), queue:queue(), queue:queue(),
  +      queue:queue(), queue:queue(), queue:queue(), queue:queue(),
  +      queue:queue(), queue:queue(), queue:queue(), queue:queue(),
  +      queue:queue(), queue:queue(), queue:queue(), queue:queue()},
  +     {queue:queue(), queue:queue(), queue:queue(), queue:queue(),
  +      queue:queue(), queue:queue(), queue:queue(), queue:queue(),
  +      queue:queue(), queue:queue(), queue:queue(), queue:queue(),
  +      queue:queue(), queue:queue(), queue:queue(), queue:queue()},
  +     {queue:queue(), queue:queue(), queue:queue(), queue:queue(),
  +      queue:queue(), queue:queue(), queue:queue(), queue:queue(),
  +      queue:queue(), queue:queue(), queue:queue(), queue:queue(),
  +      queue:queue(), queue:queue(), queue:queue(), queue:queue()},
  +     {queue:queue(), queue:queue(), queue:queue(), queue:queue(),
  +      queue:queue(), queue:queue(), queue:queue(), queue:queue(),
  +      queue:queue(), queue:queue(), queue:queue(), queue:queue(),
  +      queue:queue(), queue:queue(), queue:queue(), queue:queue()},
  +     {queue:queue(), queue:queue(), queue:queue(), queue:queue(),
  +      queue:queue(), queue:queue(), queue:queue(), queue:queue(),
  +      queue:queue(), queue:queue(), queue:queue(), queue:queue(),
  +      queue:queue(), queue:queue(), queue:queue(), queue:queue()},
  +     {queue:queue(), queue:queue(), queue:queue(), queue:queue(),
  +      queue:queue(), queue:queue(), queue:queue(), queue:queue(),
  +      queue:queue(), queue:queue(), queue:queue(), queue:queue(),
  +      queue:queue(), queue:queue(), queue:queue(), queue:queue()},
  +     {queue:queue(), queue:queue(), queue:queue(), queue:queue(),
  +      queue:queue(), queue:queue(), queue:queue(), queue:queue(),
  +      queue:queue(), queue:queue(), queue:queue(), queue:queue(),
  +      queue:queue(), queue:queue(), queue:queue(), queue:queue()}}.
  +-endif.
   
   %%-------------------------------------------------------------------------
   %% @doc
  
positive.code: %% (based on the implementation of queue:filter/2 which is under the EPL)
  %%-------------------------------------------------------------------------
  
  -spec queue_remove_unique(F :: fun((any()) -> boolean()),
                            queue()) ->
      {boolean(), queue()}.
  queue_remove_unique(Fun, {R0, F0} = Q)
      when is_function(Fun, 1), is_list(R0), is_list(F0) ->
      case queue_remove_unique_f(Fun, F0) of
  
negative.code: %%% External interface functions
  %%%------------------------------------------------------------------------
  
  -ifdef(ERLANG_OTP_VER_16).
  -type pqueue4() ::
      {integer() | 'empty', % current priority
       integer(),           % total size
  