code: def permute(self, nums: List[int]) -> List[List[int]]:
      res = []
  
      def backtrack(perm, nums):
          if not nums:
              res.append(perm[:])
  
          for i in range(len(nums)):
              perm.append(nums[i])
              backtrack(perm, nums[:i] + nums[i + 1 :])
              perm.pop()
  
      backtrack([], nums)
      return res
  
label_desc: Use image node_id 1 for calling the Solution obj's underlying member method code with example usage: obj.permute(nums) and returns: res