





"""simple docstring"""




def 						__snake_case						(				SCREAMING_SNAKE_CASE__     :						list[int]    )  ->       list[list[int]]:





     '''simple docstring'''

     _UpperCAmelCase      :     str        =   []
     if len(SCREAMING_SNAKE_CASE__    ) == 1:
          return [nums.copy()]
     for _ in range(len(SCREAMING_SNAKE_CASE__    )    ):
          _UpperCAmelCase      :     int        =   nums.pop(0    )
          _UpperCAmelCase      :     List[Any]        =   permute(SCREAMING_SNAKE_CASE__    )
          for perm in permutations:
               perm.append(SCREAMING_SNAKE_CASE__    )
          result.extend(SCREAMING_SNAKE_CASE__    )
          nums.append(SCREAMING_SNAKE_CASE__    )
     return result

def 						__snake_case						(				SCREAMING_SNAKE_CASE__     :						Optional[int]    )  ->       Dict:





     '''simple docstring'''

     def backtrack(SCREAMING_SNAKE_CASE__     :						List[Any]    ):
          if start == len(SCREAMING_SNAKE_CASE__    ) - 1:
               output.append(nums[:]    )
          else:
               for i in range(SCREAMING_SNAKE_CASE__						,  len(SCREAMING_SNAKE_CASE__    )    ):
                    _UpperCAmelCase      :     Optional[int]        =   nums[i], nums[start]
                    backtrack(start + 1    )
                    _UpperCAmelCase      :     int        =   nums[i], nums[start]  # backtrack

     _UpperCAmelCase      :     Tuple        =   []
     backtrack(0    )
     return output


if __name__ == "__main__":
 import doctest

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





"""simple docstring"""




def 						__snake_case						(				SCREAMING_SNAKE_CASE__     :						Dict=28_123    )  ->       List[str]:





     '''simple docstring'''

     _UpperCAmelCase      :     List[Any]        =   [1] * (limit + 1)

     for i in range(2						,  int(limit**0.5    ) + 1    ):
          sum_divs[i * i] += i
          for k in range(i + 1						,  limit // i + 1    ):
               sum_divs[k * i] += k + i

     _UpperCAmelCase      :     Any        =   set()
     _UpperCAmelCase      :     List[str]        =   0

     for n in range(1						,  limit + 1    ):
          if sum_divs[n] > n:
               abundants.add(SCREAMING_SNAKE_CASE__    )

          if not any((n - a in abundants) for a in abundants    ):
               res += n

     return res


if __name__ == "__main__":
 print(solution())
