def    lowerCAmelCase_ (     __A							)     ->				list[list[int]]:







      '''simple docstring'''


      UpperCAmelCase__								=  []
      if len(__A							) == 1:
            return [nums.copy()]
      for _ in range(len(__A							)							):
            UpperCAmelCase__								=  nums.pop(0							)
            UpperCAmelCase__								=  permute(__A							)
            for perm in permutations:
                  perm.append(__A							)
            result.extend(__A							)
            nums.append(__A							)
      return result




def    lowerCAmelCase_ (     __A							)     ->				Union[str, Any]:







      '''simple docstring'''


      def backtrack(__A							):
            if start == len(__A							) - 1:
                  output.append(nums[:]							)
            else:
                  for i in range(__A,  len(__A							)							):
                        UpperCAmelCase__		,      UpperCAmelCase__								=  nums[i], nums[start]
                        backtrack(start + 1							)
                        UpperCAmelCase__		,      UpperCAmelCase__								=  nums[i], nums[start]  # backtrack

      UpperCAmelCase__								=  []
      backtrack(0							)
      return output


if __name__ == "__main__":
      import doctest

      # use res to print the data in permute2 function
      UpperCamelCase__											=					permutea([1, 2, 3])
      print(res)
      doctest.testmod()




from .dependency_versions_table import deps
from .utils.versions import require_version, require_version_core


# define which module versions we always want to check at run time
# (usually the ones defined in `install_requires` in setup.py)
#
# order specific notes:
# - tqdm must be checked before tokenizers

UpperCamelCase__											=					[
    'python',
    'tqdm',
    'regex',
    'requests',
    'packaging',
    'filelock',
    'numpy',
    'tokenizers',
    'huggingface-hub',
    'safetensors',
    'accelerate',
    'pyyaml',
]

for pkg in pkgs_to_check_at_runtime:
      if pkg in deps:
            if pkg == "tokenizers":
                  # must be loaded here, or else tqdm check may fail
                  from .utils import is_tokenizers_available

                  if not is_tokenizers_available():
                        continue  # not required, check version only if installed
            elif pkg == "accelerate":
                  # must be loaded here, or else tqdm check may fail
                  from .utils import is_accelerate_available

                  # Maybe switch to is_torch_available in the future here so that Accelerate is hard dep of
                  # Transformers with PyTorch
                  if not is_accelerate_available():
                        continue  # not required, check version only if installed

            require_version_core(deps[pkg])
      else:
            raise ValueError(f'''can\'t find {pkg} in {deps.keys()}, check dependency_versions_table.py''')




def    lowerCAmelCase_ (     __A,  __A=None							)     ->				Dict:







      '''simple docstring'''


      require_version(deps[pkg],  __A							)



