+
    œ°³jÉ  ã                   ó¶   € R t ^ RIt^RIHt ^RIHtHtHt ^RIH	t	H
t
 ^RIHtHt  ! R R]RR	7      t]P                  ! ]4      t] ! R
 R]4      4       tR.tR# )z
Processor class for Donut.
N)Ú
ImageInput)ÚProcessingKwargsÚProcessorMixinÚUnpack)ÚPreTokenizedInputÚ	TextInput)Úauto_docstringÚloggingc                   ó&   € ] tR t^tRRRRR//tRtR# )ÚDonutProcessorKwargsÚtext_kwargsÚreturn_mm_token_type_idsFÚreturn_text_replacement_offsets© N)Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__Ú	_defaultsÚ__static_attributes__r   ó    Úk/home/luca/screen-checking/.venv/lib/python3.14/site-packages/transformers/models/donut/processing_donut.pyr   r      s   † àØ&¨Ø-¨uð
ð„Ir   r   F)Útotalc                   ó€   a a€ ] tR t^&t o]tRV 3R llt]RV3R lV 3R lll4       t]	V 3R l4       t
RR ltRtVtV ;t# )	ÚDonutProcessorc                ó&   <€ \         SV `  W4       R # )N)ÚsuperÚ__init__)ÚselfÚimage_processorÚ	tokenizerÚkwargsÚ	__class__s   &&&,€r   r   ÚDonutProcessor.__init__*   s   ø€ Ü‰Ñ˜Ö4r   c                ó¨   <€ V ^8„  d   QhRS[ R,          RS[S[,          S[S[,          ,          S[S[,          ,          R,          RS[S[,          /# )é   ÚimagesNÚtextr!   )r   r   r   Úlistr   r   )ÚformatÚ__classdict__s   "€r   Ú__annotate__ÚDonutProcessor.__annotate__.   sT   ø€ ÷ ñ á˜TÕ!ðñ Ñ+Õ+©d±9­oÕ=ÁÑEVÕ@WÕWÐZ^Õ^ðñ Ñ-Õ.ñ	r   c                óŒ   <€ Ve   Ve   VP                  RR4       \        SV `  ! RRVRV/VB pVe   Ve   VR,          VR&   V# )NÚadd_special_tokensFr&   r'   Ú	input_idsÚlabelsr   )Ú
setdefaultr   Ú__call__)r   r&   r'   r!   Úmodel_inputsr"   s   &&&, €r   r2   ÚDonutProcessor.__call__-   s]   ø€ ð Ò $Ò"2Ø×ÑÐ2°EÔ:ä‘wÒ'ÑK¨vÐK¸DÐKÀFÑKˆØÒ Ò 2Ø%1°+Õ%>ˆL˜Ñ"ØÐr   c                ó(   <€ \         SV `  R .,           # )r0   )r   Úmodel_input_names)r   r"   s   &€r   r6   Ú DonutProcessor.model_input_names<   s   ø€ ä‰wÑ(¨H¨:Õ5Ð5r   c                óð  € Vf   V P                   P                  4       p/ pV'       Ed¬   \        P                  ! RV\        P                  4      pVf   EMWP                  4       R pRV9  d   EMdVRVP                  R4      ^,            pV\        R4      \        R4      )  p\        P                  ! V4      p\        P                  ! RV R2V\        P                  4      p	V	f   VP                  VR4      pKÛ  V	P                  4       p	\        P                  ! V4      p
\        P                  ! V	4      p\        P                  ! V
 RV 2V\        P                  \        P                  ,          4      pVeõ   VP                  ^4      P                  4       pRV9   dB   RV9   d;   V P                  VRVR7      pV'       d   \        V4      ^8X  d
   V^ ,          pWÔV&   M�. WG&   VP                  R	4       FM  pVP                  4       pWã9   d   V^ ,          R
8X  d   VRR R8X  d   V^R pWG,          P                  V4       KO  	  \        WG,          4      ^8X  d   WG,          ^ ,          WG&   WP!                  V	4      \        V	4      ,           R P                  4       pVR,          R	8X  g   EK‘  V.V P                  VR,          RVR7      ,           # V'       d   V'       d   V.# T# V'       d   . # RV/# )zC
Convert a (generated) token sequence into an ordered JSON format.
Nz<s_Ú>z</s_Ú z(.*?)T)Úis_inner_valueÚadded_vocabz<sep/>Ú<z/>:Né   N:r>   NNÚtext_sequenceéþÿÿÿ)r    Úget_added_vocabÚreÚsearchÚ
IGNORECASEÚstartÚindexÚlenÚescapeÚreplaceÚgroupÚDOTALLÚstripÚ
token2jsonÚsplitÚappendÚfind)r   Útokensr;   r<   ÚoutputÚpotential_startÚstart_tokenÚkeyÚkey_escapedÚ	end_tokenÚstart_token_escapedÚend_token_escapedÚcontentÚvalueÚleafs   &&&&           r   rM   ÚDonutProcessor.token2json@   sŒ  € ð ÒØŸ.™.×8Ñ8Ó:ˆKàˆçˆfä Ÿiši¨°¼¿¹ÓFˆOØÒ&ÙØ ×!6Ñ!6Ó!8Ð!:Ð;ˆKØ˜+Ô%ÙØ%Ð&B¨×(9Ñ(9¸#Ó(>ÀÕ(BÐCˆKØœc %›j¬C°«H¨9Ð5ˆCÜŸ)š) C›.ˆKäŸ	š	 T¨+¨°aÐ"8¸&Ä"Ç-Á-ÓPˆIØÒ ØŸ™¨°RÓ8’à%ŸO™OÓ-�	Ü&(§i¢i°Ó&<Ð#Ü$&§I¢I¨iÓ$8Ð!ÜŸ)š)Ø*Ð+¨5Ð1BÐ0CÐDÀfÌbÏmÉmÔ^`×^gÑ^gÕNgó�ð Ò&Ø%Ÿm™m¨AÓ.×4Ñ4Ó6�GØ Ô(¨W¸Ô-?Ø $§¡°ÈÐZe Ó f˜ß Ü" 5›z¨QœØ(-¨a­ Ø*/ 3™Køà&(˜™Ø$+§M¡M°)Ö$<˜DØ#'§:¡:£<˜DØ#Ô2°t¸AµwÀ#´~È$ÈrÈsÈ)ÐW[ÔJ[Ø'+¨A¨b z Ø"�K×.Ñ.¨tÖ4ñ	 %=ô
 ˜v�{Ó+¨qÔ0Ø*0­+°a­.˜F™Kà§¡¨IÓ 6¼¸Y»Õ GÐ IÐJ×PÑPÓR�Ø˜"•: ×*Ø"˜8 d§o¡o°f¸RµjÐQUÐcn oÓ&oÕoÐoçß-�F�8Ð9°6Ð9ç'�2ÐF¨o¸vÐ-FÐFr   r   )NN)FN)r   r   r   r   r   Úvalid_processor_kwargsr   r   r2   Úpropertyr6   rM   r   Ú__classdictcell__Ú__classcell__)r"   r*   s   @@r   r   r   &   sI   ù‡ € à1Ð÷5ð ÷ô ó ðð ô6ó ð6÷8Gô 8Gr   r   )Ú__doc__rB   Úimage_utilsr   Úprocessing_utilsr   r   r   Útokenization_utils_baser   r   Úutilsr   r	   r   Ú
get_loggerr   Úloggerr   Ú__all__r   r   r   Ú<module>rj      sk   ðñó 
å %ß HÑ Hß Cß ,ôÐ+°5õ ð 
×	Ò	˜HÓ	%€ð ôQG�^ó QGó ðQGðh Ð
‚r   