code: def combinations(result, arr, taken, pos):
      result.append(
          [arr[i] for i in taken]
      )  # create the current combination
  
      n = len(arr)
      if n == pos:
          return
  
      # start from the last position (don't need duplicates)
      for i in range(pos, n):
          taken.append(i)
          combinations(result, arr, taken, i + 1)
          del taken[-1]
  
label_desc: Use image node_id 2 for calling a global function with example usage: combinations(result, arr, taken, pos) without return types