Ë
    $’%hÔ  ã                   óž   — d Z ddlZddlZddlZg Z	 ddlZddlZd	d„Z	d	d„Z
d„ Z e«        y# e$ r  ed«        ed«        ed«       ‚ w xY w)
z'
OpenCV Python binary extension loader
é    Nz)OpenCV bindings requires "numpy" package.zInstall it via command:z    pip install numpyc                 ó   ‡	— dj                  t        |«      }dj                  | |«      }t        j                  j	                  |d «      }	 t        j                  |«      Š	| t        j                  v r;t        t        j                  |    |«      st        t        j                  |    |‰	«       ‰	t        j                  |<   |rgt        ‰	d|«       t        ˆ	fd„|j                  j                  «       «      D ]0  \  }}|rt        dj                  |||«      «       t        ‰	||«       Œ2 y# t        $ r}|rt        d|d|«       Y d }~yd }~ww xY w)	Nz{}.{}z"Can't load Python code for module:z	. Reason:FÚ_nativec                 ó$   •— t        ‰| d   «       S )Nr   )Úhasattr)ÚkvÚ	py_modules    €úJ/var/www/skyplay_api_hub/venv/lib/python3.12/site-packages/cv2/__init__.pyú<lambda>z1__load_extra_py_code_for_module.<locals>.<lambda>*   s   ø€ ¬'°)¸RÀ¹UÓ*CÐ&C€ ó    z    symbol({}): {} = {}T)ÚformatÚ__name__ÚsysÚmodulesÚpopÚ	importlibÚimport_moduleÚImportErrorÚprintr   ÚsetattrÚfilterÚ__dict__Úitems)
ÚbaseÚnameÚenable_debug_printÚmodule_nameÚexport_module_nameÚnative_moduleÚerrÚkÚvr   s
            @r	   Ú__load_extra_py_code_for_moduler"      s&  ø€ Ø—.‘.¤¨4Ó0€KØ Ÿ™¨¨dÓ3ÐÜ—K‘K—O‘O K°Ó6€MðÜ×+Ñ+¨KÓ8ˆ	ð Œs�{‰{Ñ¤7¬3¯;©;°tÑ+<¸dÔ#CÜ”—‘˜DÑ! 4¨Ô3Ø&/„C‡K�KÐ"Ñ#áÜ�	˜9 mÔ4ÜÓCØ(×1Ñ1×7Ñ7Ó9ó;ò 	%‰DˆAˆqá!¤5Ð)B×)IÑ)IÈ$ÐPQÐSTÓ)UÔ#VÜ�I˜q !Õ$ð	%ð øô# ò ÙÜÐ6¸Ø˜sô$ô ûðús   ÁD* Ä*	EÄ3EÅEc                 ó  ‡— ˆfd„}t         j                  d   dk  r| rt        d«       g S t        j                  j                  t        «      }t        j                  j                  |«      Št        |t        j                  ‰«      «      S )Nc           
      óÖ   •— t        | j                  d«       | j                  d«       t        j                  j	                  t        j                  j                  ‰| «      «      f«      S )NÚ_zpython-)ÚallÚ
startswithÚosÚpathÚisdirÚjoin)ÚmoduleÚ_extra_submodules_init_paths    €r	   Úmodules_filterz2__collect_extra_submodules.<locals>.modules_filter2   sW   ø€ Üà×"Ñ" 3Ó'Ð'Ø×"Ñ" 9Ó-Ð-ä�W‰W�]‰]œ2Ÿ7™7Ÿ<™<Ð(CÀVÓLÓMð
ó ð 	r   r   é   z,Extra submodules is loaded only for Python 3)
r   Úversion_infor   r(   r)   ÚabspathÚ__file__Údirnamer   Úlistdir)r   r.   Ú__INIT_FILE_PATHr-   s      @r	   Ú__collect_extra_submodulesr6   1   sl   ø€ ôô ×Ñ˜Ñ˜QÒÙÜÐ@ÔAØˆ	ä—w‘w—‘¤xÓ0ÐÜ"$§'¡'§/¡/Ð2BÓ"CÐÜ�.¤"§*¡*Ð-HÓ"IÓJÐJr   c            	      ó
  ‡‡‡‡‡— dd l } dd l}|j                  | j                  «      }t        | d«      r t	        | j                  «       t        d«      ‚d| _        dŠt        | d«      rdŠdd l}‰r@t	        dj                  t        j                  t        |j                  «       «      «      «       t        j                  j                  t        j                  j                  t        j                  j                  t         «      «      «      Šg }g }t#        «       Št%        «       j                  «       Š| j&                  d d d	k  rd
dlmŠ nd
dlmŠ d(ˆˆˆˆˆfd„	} |dgd«        |dj                  | j&                  d   | j&                  d
   «      dj                  | j&                  d   «      gd«       ‰r&t	        dj                  t        ‰d   «      «      «       ‰r&t	        dj                  t        ‰d   «      «      «       d}t        | d«      rd}nc	 t        j                  j                  ‰«      }| j                  d   |k(  s/t        j                  j                  | j                  d   «      |k(  rd}t/        ‰d   «      D ]"  }	| j                  j1                  |sd
nd|	«       Œ$ t        j                  dk(  r²| j&                  d d dk\  r ‰d   D ]  }		 t        j2                  |	«       Œ dj7                  ‰d   «      dz   t        j8                  j;                  dd«      z   t        j8                  d<   ‰r~t	        dj                  t        t        j8                  d   «      «      «       nIdj7                  ‰d   «      dz   t        j8                  j;                  dd«      z   t        j8                  d<   ‰rt	        d«       | j<                  j?                  d «      }tA        jB                  d «      }|| j<                  d <   tE        |d!|«       tG        d"„ |jH                  jK                  «       «      D ]  \  }}|‰vsŒ|‰|<   Œ || _        	 | `‰rt	        d$«       tM        ‰«      D ]   }tO        d |‰«      sŒ‰sŒt	        d%|d&«       Œ" ‰rt	        d'«       y y #  ‰rt	        d«       Y �Œ7xY w# t4        $ r$}
‰rt	        dt        |
«      z   «       Y d }
~
�Œd }
~
ww xY w# t4        $ r}
‰rt	        d#|
«       Y d }
~
Œ«d }
~
ww xY w))Nr   ÚOpenCV_LOADERzbERROR: recursion is detected during loading of "cv2" binary extensions. Check OpenCV installation.TFÚOpenCV_LOADER_DEBUGz3OpenCV loader: os.name="{}"  platform.system()="{}"é   )r/   r   é   )Úexec_file_wrapperc                 óR  •— | D ]…  }t         j                  j                  ‰|«      }t         j                  j                  |«      s‰rt	        dj                  |«      «       Œ_‰rt	        dj                  |«      «        ‰|‰‰«        y |rt        dj                  | «      «      ‚y )Nz)OpenCV loader: config not found, skip: {}z!OpenCV loader: loading config: {}TzIOpenCV loader: missing configuration file: {}. Check OpenCV installation.)r(   r)   r+   Úexistsr   r   r   )	ÚfnamesÚrequiredÚfnameÚfpathÚDEBUGÚ
LOADER_DIRr<   Úg_varsÚl_varss	       €€€€€r	   Úload_first_configz$bootstrap.<locals>.load_first_configc   s—   ø€ Øò 	ˆEÜ—G‘G—L‘L ¨UÓ3ˆEÜ—7‘7—>‘> %Ô(Ùœ%Ð K× RÑ RÐSXÓ YÔZØÙ”eÐ?×FÑFÀuÓMÔNÙ˜e V¨VÔ4Ùð	ñ ÜÐi×pÑpÐqwÓxÓyÐyð r   z	config.pyzconfig-{}.{}.pyzconfig-{}.pyz)OpenCV loader: PYTHON_EXTENSIONS_PATHS={}ÚPYTHON_EXTENSIONS_PATHSz OpenCV loader: BINARIES_PATHS={}ÚBINARIES_PATHSÚOpenCV_REPLACE_SYS_PATH_0zCOpenCV loader: exception during checking workaround for sys.path[0]Únt)r/   é   zFailed os.add_dll_directory(): ú;ÚPATHÚ zOpenCV loader: PATH={}ú:ÚLD_LIBRARY_PATHz7Relink everything from native cv2 module to cv2 packageÚcv2r   c                 ó   — | d   dvS )Nr   )r2   Ú
__loader__Ú__spec__r   Ú__package__© )r   s    r	   r
   zbootstrap.<locals>.<lambda>ž   s   € ¨R°©Uð ;Vð .V€ r   z&Exception during delete OpenCV_LOADER:z%OpenCV loader: binary extension... OKzExtra Python code forz	is loadedzOpenCV loader: DONE)T)(r   Úcopyr)   r   r   r   r8   Úplatformr   r(   r   ÚstrÚsystemr3   r1   Úrealpathr2   ÚglobalsÚlocalsr0   Úload_config_py2r<   Úload_config_py3ÚreversedÚinsertÚadd_dll_directoryÚ	Exceptionr+   ÚenvironÚgetr   r   r   r   r   r   r   r   r6   r"   )r   rX   Úsave_sys_pathrY   rH   rI   rG   ÚapplySysPathWorkaroundÚBASE_DIRÚpÚer   r   Ú	item_nameÚitemÚ	submodulerC   rD   r<   rE   rF   s                   @@@@@r	   Ú	bootstrapro   D   sl  ü€ ÛãØ—I‘I˜cŸh™hÓ'€Mäˆs�OÔ$Üˆc�h‰hŒÜÐ~ÓÐØ€CÔà€EÜˆsÐ)Ô*ØˆãÙŒeÐI×PÑPÔQS×QXÑQXÔZ]Ð^f×^mÑ^mÓ^oÓZpÓqÔrä—‘—‘¤§¡§¡´·±×1AÑ1AÄ(Ó1KÓ!LÓM€Jà ÐØ€Nä‹Y€FÜ‹X�]‰]‹_€Fà
×Ñ˜˜Ð˜fÒ$Þ7å7÷
zñ 
zñ �{�m TÔ*ÙØ× Ñ  ×!1Ñ!1°!Ñ!4°c×6FÑ6FÀqÑ6IÓJØ×Ñ˜c×.Ñ.¨qÑ1Ó2ðð ôñ
 ŒeÐ?×FÑFÄsÈ6ÐRkÑKlÓGmÓnÔoÙŒeÐ6×=Ñ=¼cÀ&ÐIYÑBZÓ>[Ó\Ô]à"ÐÜˆsÐ/Ô0Ø!%Ñð	Ü—w‘w—‘ zÓ2ˆHØ�x‰x˜‰{˜hÒ&¬"¯'©'×*:Ñ*:¸3¿8¹8ÀA¹;Ó*GÈ8Ò*SØ)-Ð&ô
 �fÐ6Ñ7Ó8ò CˆØ�‰�‰Ñ!7™¸QÀÕBðCô 
‡w�w�$‚Ø×Ñ˜B˜QÐ 6Ò)ØÐ,Ñ-ò �ðÜ×(Ñ(¨Õ+ðð !ŸX™X fÐ-=Ñ&>Ó?À#ÑEÌÏ
É
ÏÉÐW]Ð_aÓHbÑbŒ�
‰
�6ÑÙ”%Ð0×7Ñ7¼¼B¿J¹JÀvÑ<NÓ8OÓPÕQð ),¯©°Ð8HÑ1IÓ(JÈSÑ(PÔSU×S]ÑS]×SaÑSaÐbsÐuwÓSxÑ(xŒ�
‰
Ð$Ñ%áŒeÐMÔNà—‘—‘ Ó&€Iä×+Ñ+¨EÓ2€Mà"€C‡K�K�ÑÜˆI�y -Ô0ä!ñ #Và"/×"8Ñ"8×">Ñ">Ó"@óBò %‰ˆ	�4ð ˜FÒ"Ø $ˆF�9Òð	%ð €C„Hð?ØÐñ
 ŒeÐ;Ô<ä/°Ó6ò Mˆ	Ü*¨5°)¸UÕCÚ”eÐ3°YÀÕLðMñ ŒeÐ)Õ*€uøðe	Ù”eÐaÔbÚûô !ò ÙœeÐ$EÄsÈ1ÃvÑ$MÔNÝûðûô8 ò ?ÙÜÐ:¸AÔ>ÿøð?ús=   ÈA"R" ËR7ÑS' Ò"R4Ò7	S$Ó SÓS$Ó'	TÓ0TÔT)F)Ú__doc__r(   r   r   Ú__all__ÚnumpyÚnumpy.core.multiarrayr   r   r"   r6   ro   rW   r   r	   ú<module>rt      sn   ðñó 
Û Û 
à
€ð
ÛÛ óó4Kò&n+ñb 
…øðQ ò 
Ù	Ð
5Ô6Ù	Ð
#Ô$Ù	Ð
!Ô"Ø	ð	
ús	   ’- ­A