

"""simple docstring"""



from __future__ import annotations

import math
from itertools import permutations





def 			_snake_case  (     UpperCAmelCase_	:       int      ):

     if 1 < number < 4:
          # 2 and 3 are primes
          return True
     elif number < 2 or number % 2 == 0 or number % 3 == 0:
          # Negatives, 0, 1, all even numbers, all multiples of 3 are not primes
          return False

     # All primes number are in format of 6k +/- 1
     for i in range(5       , int(math.sqrt(UpperCAmelCase_      ) + 1      )       , 6      ):
          if number % i == 0 or number % (i + 2) == 0:
               return False
     return True





def 			_snake_case  (     UpperCAmelCase_	:       int = 7      ):
     A__				      =	"""""".join(str(UpperCAmelCase_      ) for i in range(1       , n + 1      )      )
     A__				      =	[int("""""".join(UpperCAmelCase_      )      ) for i in permutations(UpperCAmelCase_       , UpperCAmelCase_      )]
     A__				      =	[num for num in perm_list if is_prime(UpperCAmelCase_      )]
     return max(UpperCAmelCase_      ) if pandigitals else 0


if __name__ == "__main__":
 print(f"""{solution() = }""")









"""simple docstring"""



from __future__ import annotations





def 			_snake_case  (     UpperCAmelCase_	:       list[list[int]]       , UpperCAmelCase_	:       list[list[int]]      ):
     assert len(UpperCAmelCase_      ) == len(UpperCAmelCase_      )

     A__				      =	len(UpperCAmelCase_      )
     A__				      =	list(range(UpperCAmelCase_      )      )
     A__				      =	[-1] * n  # who the donor has donated to
     A__				      =	[-1] * n  # who the recipient has received from
     A__				      =	[0] * n

     while unmatched_donors:
          A__				      =	unmatched_donors[0]
          A__				      =	donor_pref[donor]
          A__				      =	donor_preference[num_donations[donor]]
          num_donations[donor] += 1
          A__				      =	recipient_pref[recipient]
          A__				      =	rec_record[recipient]

          if prev_donor != -1:
               if rec_preference.index(UpperCAmelCase_      ) > rec_preference.index(UpperCAmelCase_      ):
                    A__				      =	donor
                    A__				      =	recipient
                    unmatched_donors.append(UpperCAmelCase_      )
                    unmatched_donors.remove(UpperCAmelCase_      )
          else:
               A__				      =	donor
               A__				      =	recipient
               unmatched_donors.remove(UpperCAmelCase_      )
     return donor_record






