
    2it                     0    d dl mZ d ZdZdZ G d d      Zy)    )SerpApiClientExceptioni ʚ;
   c                   ,    e Zd ZeeefdZd Zd Zd Z	y)
Paginationc                 B   || _         || _        || _        || _        | j                  t        k(  r6d| j                   j
                  v r| j                   j
                  d   | _        | j                  t        k(  r6d| j                   j
                  v r| j                   j
                  d   | _        | j                  t        k(  r6d| j                   j
                  v r| j                   j
                  d   | _        | j                  | j                  kD  r/t        dj                  | j                  | j                              | j                  | j                  z   | j                  kD  r:t        dj                  | j                  | j                  | j                              y )Nstartendnumz#start: {} must be less than end: {}z.start + num: {} + {} must be less than end: {})
clientr   r	   r
   DEFAULT_STARTparams_dictDEFAULT_ENDDEFAULT_numr   format)selfr   r   r	   r
   s        Z/var/www/html/marco-python-backend/venv/lib/python3.12/site-packages/serpapi/pagination.py__init__zPagination.__init__
   sC   DKDJDHDH zz]"	DKK++	+[[,,W5
xx;	$++))	);;**51xx;	$++))	);;**51 zzDHH$%J%Q%QRVR\R\^b^f^f%ghhzzDHH($%U%\%\]a]g]gimiqiqsws{s{%|}} )    c                 &    | j                          | S )N)updater   s    r   __iter__zPagination.__iter__#   s    KKMKr   c                     | j                   | j                  j                  d<   | j                  | j                  j                  d<   | j                   dkD  r"| j                  j                  dxx   dz  cc<   y y )Nr   r
   r      )r   r   r   r
   r   s    r   r   zPagination.update'   s\    '+zzDKKG$%)XXDKKE"zzA~
kkg&!+& r   c                    | j                          | j                  j                         }d|vrt        d|d   vrt        | j                  | j
                  z   | j                  kD  rt        | xj                  | j
                  z  c_        |S )Nserpapi_paginationnext)r   r   get_dictStopIterationr   r
   r	   )r   results     r   __next__zPagination.__next__-   s    KKM [[!!#F  6) V011 zzDHHtxx' 	JJ$((JMr   N)
__name__
__module____qualname__r   r   r   r   r   r   r!    r   r   r   r      s    %2+[ ~2,r   r   N)!serpapi.serp_api_client_exceptionr   r   r   r   r   r%   r   r   <module>r'      s!    D; ;r   