In the ASF SQS provider, we always raise a `QueueNameExists` exception if the queue already exists.

https://github.com/localstack/localstack/blob/aba25e4f9542a2cc1ce94b08d50247b8024c3d12/localstack/services/sqs/provider.py#L728-L729
However, [according to the spec](https://github.com/boto/botocore/blob/f960a8d73c12d16b53e4d9eacdf515224acb08f6/botocore/data/sqs/2012-11-05/service-2.json#L1138), "Amazon SQS returns this error only if the request includes attributes whose values differ from those of the existing queue."

backend = SqsBackend.get(context.region)
        with self._mutex:
            queue = self._resolve_queue(context, queue_url=queue_url)
            del backend.queues[queue.name]
            backend.deleted[queue.name] = time.time()
    def get_queue_attributes(
        self, context: RequestContext, queue_url: String, attribute_names: AttributeNameList = None
    ) -> GetQueueAttributesResult:
        queue = self._resolve_queue(context, queue_url=queue_url)
        if not attribute_names:
            return GetQueueAttributesResult(Attributes={})
        if QueueAttributeName.All in attribute_names:
            # re
            attribute_names = queue.attributes.keys()
        result: Dict[QueueAttributeName, str] = {}
        for attr in attribute_names:
            try:
                getattr(QueueAttributeName, attr)
            except AttributeError:
                raise InvalidAttributeName(f"Unknown Attribute {attr}.")
            if callable(queue.attributes.get(attr)):
                func = queue.attributes.get(attr)
                result[attr] = func()
            else:
                result[attr] = queue.attributes.get(attr)
        return GetQueueAttributesResult(Attributes=result)
    def send_message(