"""simple docstring"""


from __future__ import annotations

from collections.abc import Iterable, Iterator
from dataclasses import dataclass

lowerCAmelCase_:					Dict     =					(3, 9, -1_1, 0, 7, 5, 1, -1)
lowerCAmelCase_:					Optional[int]     =					(4, 6, 2, 0, 8, 1_0, 3, -2)






@dataclass
class    a__    :
   snake_case_							=      42
   snake_case_							=      42






class    a__    :


   def __init__(     self,				_UpperCAmelCase  ):
        '''simple docstring'''



        lowercase__				 =							None
        for i in sorted(_UpperCAmelCase,				reverse=_UpperCAmelCase  ):
             lowercase__				 =							Node(_UpperCAmelCase,				self.head  )


   def __iter__(     self  ):
        '''simple docstring'''



        lowercase__				 =							self.head
        while node:
             yield node.data
             lowercase__				 =							node.next_node


   def __len__(     self  ):
        '''simple docstring'''



        return sum(1 for _ in self  )


   def __str__(     self  ):
        '''simple docstring'''



        return " -> ".join([str(_UpperCAmelCase  ) for node in self]  )







def 					__a   (		A    ,				A      ):






     '''simple docstring'''



     return SortedLinkedList(list(A      ) + list(A      )      )


if __name__ == "__main__":
 import doctest

 doctest.testmod()
 lowerCAmelCase_:					List[Any]     =					SortedLinkedList
 print(merge_lists(SSL(test_data_odd), SSL(test_data_even)))





"""simple docstring"""


import itertools
import math







def 					__a   (		A      ):






     '''simple docstring'''



     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(A      ) + 1      )    ,				6      ):
          if number % i == 0 or number % (i + 2) == 0:
               return False
     return True







def 					__a   (		):






     '''simple docstring'''



     lowercase__				 =							2
     while True:
          if is_prime(A      ):
               yield num
          num += 1







def 					__a   (		A = 1_00_01      ):






     '''simple docstring'''



     return next(itertools.islice(prime_generator()    ,				nth - 1    ,				A      )      )


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




