Ë
    ¨Œj�  ã                   ód   — d dl Z d dlZd dlZd dlZ G d„ d«      Z e«       Zd„ Zd„ Zd„ Zd„ Z	d„ Z
y)	é    Nc                   ó   — e Zd Zy)Ú_worker_StateN)Ú__name__Ú
__module__Ú__qualname__© ó    ú^/var/www/html/Fitness-lenito-AI-main/venv/lib/python3.12/site-packages/pymupdf/_apply_pages.pyr   r      s   „ Ør	   r   c                 óž   — | t         _        |t         _        |t         _        |t         _        |t         _        d t         _        |r	 ||i |¤Ž y y ©N)Ú_worker_stateÚpathÚpagefnÚpagefn_argsÚpagefn_kwargsÚstatsÚdocument)r   ÚinitfnÚinitfn_argsÚinitfn_kwargsr   r   r   r   s           r
   Ú_worker_initr      sI   € ð „MÔØ!„MÔØ +„MÔØ"/„MÔØ„MÔØ!„MÔÙÙ�Ð-˜}Ó-ð r	   c           	      ó¢   — t        j                   «       | z
  } | dk\  r3t        j                  dt        j                  «       ›d| d›d|› d�«       y y )Né
   úos.getpid()=z: Ú2fzs: Ú.)ÚtimeÚpymupdfÚlogÚosÚgetpid)ÚtÚlabels     r
   Ú_stats_writer$   %   sF   € Ü�	‰	‹�a‰€AØˆB‚wÜ�‰�|”r—y‘y“{�n B q¨ f¨C°¨w°aÐ8Õ9ð r	   c                 óŽ  — t         j                  slt         j                  rt        j                  «       }t	        j
                  t         j                  «      t         _        t         j                  rt        d«       t         j                  rt        j                  «       }t         j                  |    }t         j                  rt        d«       t         j                  rt        j                  «       }t        j                  |gt         j                  ¢­i t         j                  ¤Ž}t         j                  rt        d«       |S )Nzpymupdf.Document()z#_worker_state.document[page_number]z_worker_state.pagefn())r   r   r   r   r   ÚDocumentr   r$   r   r   r   )Úpage_numberr"   ÚpageÚrets       r
   Ú
_worker_fnr*   +   sä   € ä×!Ò!Ü×ÒÜ—	‘	“ˆAÜ!(×!1Ñ!1´-×2DÑ2DÓ!EŒÔÜ×ÒÜ˜Ð0Ô1ä×ÒÜ�I‰I‹KˆÜ×!Ñ! +Ñ.€DÜ×ÒÜ�QÐ=Ô>ä×ÒÜ�I‰I‹KˆÜ
×
Ñ
Øðä×&Ñ&òô ×)Ñ)ñ€Cô
 ×ÒÜ�QÐ0Ô1à€Jr	   c
                 óÀ   — t        j                  |t        | |||||||	f«      5 }
|
j                  t        |«      }|j                  «       cd d d «       S # 1 sw Y   y xY wr   )ÚmultiprocessingÚPoolr   Ú	map_asyncr*   Úget)r   Úpagesr   r   r   r   r   r   Úconcurrencyr   ÚpoolÚresults               r
   Ú_multiprocessingr4   G   s_   € ô 
×	Ñ	ØÜàØ˜ ]Ø˜ ]Øð	ô	
ð Ø—‘¤
¨EÓ2ˆØ�z‰z‹|÷	
÷ 	
ò 	
ús   ¤&AÁAc
                 óØ  ‡ ‡‡‡‡‡‡‡	‡‡‡— dŠ|€t        j                  «       }t        j                  «       Št        j                  «       Šˆˆˆˆˆˆˆ ˆˆˆ	ˆfd„}
d }t        «       }	 ‰	rt	        j                  «       }t        |«      D ]x  }t        j                  «       }|dk(  rL	 	  |
«        	 ‰r+t        j                  dt        j                  «       ›d�«       t        j                  d«       |j                  |«       Œz ‰	rt        d«       ‰	rt	        j                  «       }‰rt        j                  d«       t        t        |«      «      D ]  }‰j!                  |«       Œ ‰	rt        d«       d gt        |«      z  }t        t        |«      «      D ]]  }‰j#                  «       \  }}‰r$t        j                  d	|›d
t        |«      ›�«       ||   �J ‚t%        |t        «      r|s|} n|||<   Œ_ t        |«      D ]  }‰j!                  d «       Œ ‰rt        j                  d«       ‰j'                  «        |r|‚‰r!t        j                  dt        |«      ›�«       |‰	rt	        j                  «       }|D ]Q  }‰rt        j                  d|›d�«       t        j(                  |d«      }‰sŒ7t        j                  d|›d|›�«       ŒS ‰	rt        d«       S S # t        $ r3}t        j                  dt        j                  «       ›d|›�«       ‚ d }~ww xY w# ‰r+t        j                  dt        j                  «       ›d�«       t        j                  d«       w xY w# ‰	rt	        j                  «       }|D ]Q  }‰rt        j                  d|›d�«       t        j(                  |d«      }‰sŒ7t        j                  d|›d|›�«       ŒS ‰	rt        d«       w w xY w)Nr   c            
      ó^  •— d } ‰r0t        j                  dt        j                  «       ›d‰›d‰›�«       t	        ‰‰‰‰‰	‰
‰‰«       	 ‰r+t        j                  dt        j                  «       ›d�«       ‰j                  «       }‰r.t        j                  dt        j                  «       ›d|›d�«       |€y 	 | s9‰rt        j                  «       }t        j                  ‰«      } ‰rt        d«       ‰rt        j                  «       }| |   }‰rt        d«       ‰r1t        j                  dt        j                  «       ›d	t        ›�«       ‰rt        j                  «       } ‰	|gt        j                  ¢­i t        j                  ¤Ž}‰rt        d
|›d�«       ‰r0t        j                  dt        j                  «       ›d|›d|›�«       ‰j                  ||f«       �ŒŸ# t        $ r;}‰r-t        j                  dt        j                  «       ›d|›�«       |}Y d }~Œ†d }~ww xY w)Nr   z	: initfn=z initfn_args=z: calling get().z: page_num=r   zpymupdf.Document(path)zdocument[page_num]z: _worker_state=ú	page_num=z	 pagefn()z: exception e=z: sending page_num=z ret=)r   r   r    r!   r   r/   r   r&   r$   r   r   r   Ú	ExceptionÚput)r   Úpage_numr"   r(   r)   Úer   r   r   r   r   r   r   Ú
queue_downÚqueue_upr   Úverboses         €€€€€€€€€€€r
   Úchildfnz_fork.<locals>.childfn{   sö  ø€ ØˆÙÜ�K‰K˜<œ2Ÿ9™9›;˜.¨
¨6¨)°>°[°NÐCÔDÜØØØØØØØØô		ð ÙÜ—‘˜|œrŸy™y›{˜nÐ,<Ð=Ô>Ø!—~‘~Ó'ˆHÙÜ—‘˜|œrŸy™y›{˜n¨L¨x¨k¸Ð;Ô<ØÐØðÙÙÜ ŸI™I›K˜Ü&×/Ñ/°Ó5�HÙÜ$ QÐ(@ÔAáÜŸ	™	›�AØ Ñ)�ÙÜ  Ð$8Ô9áÜ—K‘K <¤2§9¡9£; .Ð0A´=Ð2BÐ CÔDáÜŸ	™	›�AÙØðä&×2Ñ2òô (×5Ñ5ñ�ñ
 Ü   y x k°Ð$;Ô<ñ Ü—‘˜|œrŸy™y›{˜nÐ,@°x°kÀÀ3À&ÐIÔJà�L‰L˜8 S˜/Ô+ñQ øôD ò ÙœGŸK™K¨<¬2¯9©9«;¨.¸ÀQÀDÐ(IÔJØ•ûðús   Â:C'G( Ç(	H,Ç11H'È'H,r   z: childfn() => e=z: calling os._exit(0)zcreate child processeszSending page numbers.zSend page numbersr7   z len(text)=zClosing queues.z%After concurrent, returning len(ret)=zwaiting for pid=r   zpid=z => e=zJoin all child proceses)r,   Ú	cpu_countÚQueueÚlistr   Úranger    Úforkr8   r   r   r!   Ú_exitÚappendr$   Úlenr9   r/   Ú
isinstanceÚcloseÚwaitpid)r   r0   r   r   r   r   r   r   r1   r   r?   ÚerrorÚpidsr"   ÚiÚpr;   r:   r)   ÚtextÚpidr<   r=   r>   s   ` `````` `           @@@r
   Ú_forkrQ   b   sZ  ÿú€ ð €GØÐÜ%×/Ñ/Ó1ˆô !×&Ñ&Ó(€JÜ×$Ñ$Ó&€H÷6,ö 6,ðp €Eä‹6€DðG7áÜ—	‘	“ˆAÜ�{Ö#ˆAÜ—‘“	ˆAØ�AŠvð	 ðÙ�	ñ
 ÜŸ™ |¤r§y¡y£{ nÐ4IÐ$JÔKÜ—H‘H˜Q”KØ�K‰K˜�Nð $ñ Ü˜Ð4Ô5ñ Ü—	‘	“ˆAÙÜ�K‰KÐ/Ô1Üœc %›jÖ)ˆHØ�N‰N˜8Õ$ð *áÜ˜Ð/Ô0ð ˆf”s˜5“zÑ!ˆÜ”s˜5“zÖ"ˆAØ%Ÿ\™\›^‰NˆH�dÙÜ—‘˜y˜x˜k¨¬3¨t«9¨,Ð7Ô8Ø�x‘=Ð(Ð(Ð(Ü˜$¤	Ô*ÙØ �EÙØ ˆC�ŠMð #ô �{Ö#ˆAØ�N‰N˜4Õ ð $á”G—K‘K /Ô3Ø×ÑÔáØˆKÙÜ�K‰KÐ@´s¸3³x°kÐBÔCØñ Ü—	‘	“ˆAÛˆCÙÜ—‘Ð/¨3¨&°Ð2Ô3Ü—
‘
˜3 Ó"ˆAÚÜ—‘˜t˜s˜f G¨¨Ð-Õ.ð ñ Ü˜Ð5Õ6ð øôw %ò ÜŸ™ |¤r§y¡y£{ nÐ4FÀAÀ4Ð$HÔIØûðûñ ÜŸ™ |¤r§y¡y£{ nÐ4IÐ$JÔKÜ—H‘H˜Q•KûñZ Ü—	‘	“ˆAÛˆCÙÜ—‘Ð/¨3¨&°Ð2Ô3Ü—
‘
˜3 Ó"ˆAÚÜ—‘˜t˜s˜f G¨¨Ð-Õ.ð ñ Ü˜Ð5Õ6ð úsE   Á(=M, Â'K&Â/F;M, Ë&	L"Ë/.LÌL"Ì"L%Ì%AM)Í)M, Í,AO)Î<-O))r,   r    r   r   r   r   r   r$   r*   r4   rQ   r   r	   r
   Ú<module>rR      s<   ðÛ Û 	Û ã ÷	ñ 	á“€ò.ò*:òò8ó6[7r	   