docs: public Message<?> receive(MessageSelector selector) {
          Object[] array = this.queue.toArray();
          for (Object o : array) {
              Message<?> message = (Message<?>) o;
              if (selector.accept(message) && this.queue.remove(message)) {
                  return message;
              }
          }
          
          return null;
      }