ó
    ˆŽ¡jG  ã                   óª   • S r SSKJr  SSKJrJrJr  SSKJrJ	r	J
r
  SSKJrJr   " S S\SS	9r\R                  " \5      r\ " S
 S\5      5       rS/rg)z!
Processor class for Pix2Struct.
é   )ÚBatchFeature)ÚProcessingKwargsÚProcessorMixinÚUnpack)ÚBatchEncodingÚPreTokenizedInputÚ	TextInput)Úauto_docstringÚloggingc            
       ó6   • \ rS rSrSSSSSSSSSS.	SS0S.rS	rg
)ÚPix2StructProcessorKwargsé   TFé    )	Úadd_special_tokensÚpaddingÚstrideÚreturn_overflowing_tokensÚreturn_special_tokens_maskÚreturn_offsets_mappingÚreturn_token_type_idsÚreturn_lengthÚverboseÚmax_patchesi   )Útext_kwargsÚimages_kwargs© N)Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__Ú	_defaultsÚ__static_attributes__r   ó    ÚÂC:\Users\johnn\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.13_qbz5n2kfra8p0\LocalCache\local-packages\Python313\site-packages\transformers/models/pix2struct/processing_pix2struct.pyr   r      s7   † ð #'ØØØ).Ø*/Ø&+Ø%*Ø"Øñ

ð ˜4ð
ñƒIr#   r   F)Útotalc            	       óŠ   ^ • \ rS rSrU 4S jr\  S	S\\-  \\   -  \\   -  S\	\
   S\\-  4S jj5       r\S 5       rSrU =r$ )
ÚPix2StructProcessoré.   c                 ó2   >• SUl         [        TU ]	  X5        g )NF)r   ÚsuperÚ__init__)ÚselfÚimage_processorÚ	tokenizerÚ	__class__s      €r$   r+   ÚPix2StructProcessor.__init__0   s   ø€ Ø*/ˆ	Ô'Ü‰Ñ˜Õ4r#   ÚtextÚkwargsÚreturnc                 ó  • Uc  Uc  [        S5      eU R                  " [        4SU R                  R                  0UD6nUS   R                  SS 5      nUcA  U R                  R                  (       d&  Ub  UOSUS   S'   U R                  " SSU0US   D6nU$ U R                  R                  (       d  U R                  " U40 US   D6nO+US   R                  SU5        U R                  " U40 US   D6nUbt  U R                  R                  (       dY  Ub  UOS	US   S'   U R                  " SSU0US   D6nS
U;   a  UR                  S
5      US'   SU;   a  UR                  S5      US'   OS nUb  UR                  U5        U$ )Nz*You have to specify either images or text.Útokenizer_init_kwargsr   r   Tr1   r   Úheader_textFÚattention_maskÚdecoder_attention_maskÚ	input_idsÚdecoder_input_idsr   )
Ú
ValueErrorÚ_merge_kwargsr   r.   Úinit_kwargsÚpopr-   Úis_vqaÚ
setdefaultÚupdate)r,   Úimagesr1   r2   Úoutput_kwargsr   Útext_encodingÚencoding_image_processors           r$   Ú__call__ÚPix2StructProcessor.__call__4   s¼  € ð ‰>˜d™lÜÐIÓJÐJà×*Ò*Ü%ñ
à"&§.¡.×"<Ñ"<ð
ð ñ
ˆð
 +¨=Ñ9×=Ñ=Ð>RÐTXÓYÐà‰> $×"6Ñ"6×"=×"=à&8Ñ&DÑ"È$ð ˜-Ñ(Ð)=Ñ>ð !ŸNšNÑU°ÐU¸ÀmÑ8TÑUˆMØ Ð à×#Ñ#×*×*à'+×';Ò';¸FÑ'eÀmÐTcÑFdÑ'eÑ$ð ˜/Ñ*×5Ñ5°mÀTÔJØ'+×';Ò';¸FÑ'eÀmÐTcÑFdÑ'eÐ$àÑ D×$8Ñ$8×$?×$?à&8Ñ&DÑ"È%ð ˜-Ñ(Ð)=Ñ>ð !ŸNšNÑU°ÐU¸ÀmÑ8TÑUˆMà =Ó0Ø:G×:KÑ:KÐL\Ó:]�Ð6Ñ7Ø˜mÓ+Ø5B×5FÑ5FÀ{Ó5S�Ð1Ñ2øà ˆMàÑ$Ø$×+Ñ+¨MÔ:à'Ð'r#   c                 ó>   • U R                   R                  nSS/nX-   $ )Nr8   r:   )r-   Úmodel_input_names)r,   Úimage_processor_input_namesÚdecoder_idss      r$   rI   Ú%Pix2StructProcessor.model_input_namesf   s(   € à&*×&:Ñ&:×&LÑ&LÐ#Ø/Ð1DÐEˆØ*Ñ8Ð8r#   r   )NN)r   r   r   r    r+   r
   r	   r   Úlistr   r   r   r   rF   ÚpropertyrI   r"   Ú__classcell__)r/   s   @r$   r'   r'   .   s|   ø† õ5ð ð ØZ^ñ/(ð Ð+Ñ+¨d°9©oÑ=ÀÐEVÑ@WÑWð/(ð Ð2Ñ3ð	/(ð
 
˜Ñ	%ô/(ó ð/(ðb ñ9ó ö9r#   r'   N)Ú__doc__Úfeature_extraction_utilsr   Úprocessing_utilsr   r   r   Útokenization_utils_baser   r   r	   Úutilsr
   r   r   Ú
get_loggerr   Úloggerr'   Ú__all__r   r#   r$   Ú<module>rX      se   ðñõ 5ß HÑ Hß RÑ Rß ,ôÐ 0¸ò ð& 
×	Ò	˜HÓ	%€ð ô;9˜.ó ;9ó ð;9ð| !Ð
!�r#   