





from maths.prime_factors import prime_factors





def   lowerCAmelCase_				( __a	)  ->	int:







  """simple docstring"""





  if not isinstance(__a			,					__a	):
    lowerCamelCase__:   str    						=F"""Input value of [number={number}] must be an integer"""
    raise TypeError(__a	)
  if number < 1:
    raise ValueError("Input must be a positive integer"	)
  return -1 if len(prime_factors(__a	)	) % 2 else 1


if __name__ == "__main__":
     import doctest

     doctest.testmod()








from __future__ import annotations

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

__A             =       (3, 9, -11, 0, 7, 5, 1, -1)
__A             =       (4, 6, 2, 0, 8, 10, 3, -2)



@dataclass
class      _SCREAMING_SNAKE_CASE		:







 '''simple docstring'''
 lowercase_	=    42
 lowercase_	=    42



class      _SCREAMING_SNAKE_CASE		:







 '''simple docstring'''

 def __init__(self       :     Dict ,				UpperCAmelCase_       :     Iterable[int]) ->None:



   '''simple docstring'''



   lowerCamelCase__:   Node | None    						=None
   for i in sorted(UpperCAmelCase_ ,				reverse=UpperCAmelCase_):
     lowerCamelCase__:   Any    						=Node(UpperCAmelCase_ ,				self.head)

 def __iter__(self       :     Optional[int]) ->Iterator[int]:



   '''simple docstring'''



   lowerCamelCase__:   int    						=self.head
   while node:
     yield node.data
     lowerCamelCase__:   List[str]    						=node.next_node

 def __len__(self       :     int) ->int:



   '''simple docstring'''



   return sum(1 for _ in self)







 def __str__(self       :     Union[str, Any]) ->str:



   '''simple docstring'''



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





def   lowerCAmelCase_				( __a			,					__a	)  ->	SortedLinkedList:







  """simple docstring"""





  return SortedLinkedList(list(__a	) + list(__a	)	)


if __name__ == "__main__":
     import doctest

     doctest.testmod()
     __A             =       SortedLinkedList
     print(merge_lists(SSL(test_data_odd), SSL(test_data_even)))

