





import numpy as np
from cva import destroyAllWindows, imread, imshow, waitKey







class     __lowerCAmelCase	:







      def __init__(   self		,				lowerCAmelCase__		,				lowerCAmelCase__		,				lowerCAmelCase__							)       ->						int:



        '''simple docstring'''




        if dst_width < 0 or dst_height < 0:
          raise ValueError("Destination width/height should be > 0"							)

        a__     : Dict  =img
        a__     : int  =img.shape[1]
        a__     : Optional[Any]  =img.shape[0]
        a__     : Dict  =dst_width
        a__     : Tuple  =dst_height

        a__     : Optional[int]  =self.src_w / self.dst_w
        a__     : int  =self.src_h / self.dst_h

        a__     : Optional[Any]  =(
            np.ones((self.dst_h, self.dst_w, 3)		,				np.uinta							) * 2_5_5
        )







      def        _lowercase  (   self							)       ->						Optional[int]:



        '''simple docstring'''




        for i in range(self.dst_h							):
          for j in range(self.dst_w							):
            a__     : Optional[int]  =self.img[self.get_y(lowerCAmelCase__							)][self.get_x(lowerCAmelCase__							)]







      def        _lowercase  (   self		,				lowerCAmelCase__							)       ->						int:



        '''simple docstring'''




        return int(self.ratio_x * x							)







      def        _lowercase  (   self		,				lowerCAmelCase__							)       ->						int:



        '''simple docstring'''




        return int(self.ratio_y * y							)


if __name__ == "__main__":
     UpperCAmelCase					,     UpperCAmelCase     :     List[str]							=	800, 600
     UpperCAmelCase     :     Optional[Any]							=	imread("""image_data/lena.jpg""", 1)
     UpperCAmelCase     :     Any							=	NearestNeighbour(im, dst_w, dst_h)
     n.process()

     imshow(
         F"""Image resized from: {im.shape[1]}x{im.shape[0]} to {dst_w}x{dst_h}""", n.output
     )
     waitKey(0)
     destroyAllWindows()













from __future__ import annotations

import math
def 					_A	(		SCREAMING_SNAKE_CASE					:       int						):





  """simple docstring"""



  if num <= 0:
    a__     : List[str]  =f'''{num}: Invalid input, please enter a positive integer.'''
    raise ValueError(SCREAMING_SNAKE_CASE						)

  a__     : Union[str, Any]  =[True] * (num + 1)
  a__     : Union[str, Any]  =[]
  a__     : str  =2
  a__     : Any  =int(math.sqrt(SCREAMING_SNAKE_CASE						)						)

  while start <= end:
    # If start is a prime
    if sieve[start] is True:
      prime.append(SCREAMING_SNAKE_CASE						)

      # Set multiples of start be False
      for i in range(start * start	,	num + 1	,	SCREAMING_SNAKE_CASE						):
        if sieve[i] is True:
          a__     : Optional[int]  =False

    start += 1

  for j in range(end + 1	,	num + 1						):
    if sieve[j] is True:
      prime.append(SCREAMING_SNAKE_CASE						)

  return prime


if __name__ == "__main__":
     print(prime_sieve(int(input("""Enter a positive integer: """).strip())))






