According to the [AWS CFN docs for SQS](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sqs-queues.html#aws-properties-sqs-queues-return-values-ref), the physical resource ID should be its queue URL.

>Ref
>
>When you pass the logical ID of this resource to the intrinsic Ref function, Ref returns the queue URL. For example:
>
>{ "Ref": "https://sqs.us-east-2.amazonaws.com/123456789012/aa4-MyQueue-Z5NOSZO2PZE9" }

However, SQS queues created in Localstack via CloudFormation have physical resource IDs that are equal to the queue name:

```
$ aws cloudformation list-stack-resources --stack-name my-stack --endpoint http://localhost:4581 | grep -A3 -B3 Queue
        {
            "LogicalResourceId": "EventQueue",
            "PhysicalResourceId": "my-stack-events",
            "ResourceType": "AWS::SQS::Queue",
            "LastUpdatedTimestamp": "2011-06-21T20:15:58Z",
            "ResourceStatus": "CREATE_COMPLETE"
        },
```

I believe that this [was fixed at one point](https://github.com/localstack/localstack/pull/577) in Localstack, but seems to have since been reverted. I've [submitted an upstream issue](https://github.com/spulec/moto/issues/2407) to Moto as well.
if not should_be_created:
            
            if not template_deployer.is_updateable(logical_id, resource_wrapped, stack_name):
                LOG.debug('Resource %s need not be deployed: %s' % (logical_id, resource_json))
                if resource:
                    return resource
        if not resource:
            
            resource_json_arns_fixed = clone(json_safe(convert_objs_to_ids(resource_json)))
            set_moto_account_ids(resource_json_arns_fixed)
            
            resource = parse_and_create_resource_orig(logical_id,
                resource_json_arns_fixed, resources_map, region_name)
            
            if hasattr(resource, 'region_name') and resource.region_name != region_name:
                LOG.debug('Updating incorrect region from %s to %s' % (resource.region_name, region_name))
                resource.region_name = region_name
        
        update_resource_name(resource, resource_json)
        LOG.debug('Deploying CloudFormation resource: %s' % resource_json)
        try:
            CURRENTLY_UPDATING_RESOURCES[resource_hash_key] = True
            deploy_func = template_deployer.deploy_resource if should_be_created else template_deployer.update_resource
            result = deploy_func(logical_id, resource_wrapped, stack_name=stack_name)
        finally:
            CURRENTLY_UPDATING_RESOURCES[resource_hash_key] = False
        if not should_be_created:
            
            return resource
        def find_id(resource):