def METHOD_NAME(cls, obj: Union[Dict[str, Any], RestQueueSettings, None]) -> Optional["QueueSettings"]:
    if obj is None:
        return None
    if isinstance(obj, dict):
        queue_settings = RestQueueSettings.from_dict(obj)
        return cls.METHOD_NAME(queue_settings)
    job_tier = JobTierNames.REST_TO_ENTITY.get(obj.job_tier, None) if obj.job_tier else None
    priority = JobPriorityValues.REST_TO_ENTITY.get(obj.priority, None) if obj.priority else None
    return cls(job_tier=job_tier, priority=priority)