ó
    �®žjmS  ã                   óŽ  • % S SK Jr  S SKJr  S SKJr  S SKJr  S SKJ	r	J
r
JrJrJrJr  S SKrS SKJrJrJrJrJrJr  S SKJrJr  S S	KJr  S S
KJrJr  S SK J!r!  S SK"J#r#  S SK$J%r%J&r&J'r'J(r(J)r)J*r*J+r+J,r,J-r-J.r.J/r/  \	(       a  S SK0J1r1  S SK2J3r3  S SK4J5r5  S SK6J7r7   " S S\'5      r8 " S S\'5      r9 " S S\:\5      r; " S S\:\5      r< " S S\:\5      r=0 \<R|                  / SQ_\<R~                  SS/_\<R€                  / SQ_\<R‚                  / S Q_\<R„                  S!/_\<R†                  / S"Q_\<Rˆ                  / S#Q_\<RŠ                  S$S%/_\<RŒ                  S$S&/_\<RŽ                  S'S(/_\<R�                  S)/_\<R’                  / S*Q_\<R”                  / S+Q_\<R–                  S,/_\<R˜                  S-S./_\<Rš                  S/S0/_\<Rœ                  S1S2/_\<Rž                  S3S4/\<R                   S5S6/\<R¢                  S$S7/\<R¤                  S8/\<R¦                  S9/\<R¨                  / S:Q\<Rª                  / S;Q\<R¬                  S</\<R®                  S=S>/\<R°                  S?S@/\<R²                  SA/\<R´                  SB/\<R¶                  SC/\<R¸                  SDSE/0Er]\^\<\_\:   4   \`SF'   0 \<R|                  SGSH/_\<R~                  SISJ/_\<R€                  / SKQ_\<R‚                  SL/_\<Rˆ                  SMSN/_\<RŠ                  SO/_\<RŒ                  SOSN/_\<RŽ                  SO/_\<R’                  / SPQ_\<R„                  SQ/_\<R”                  SR/_\<R†                  / SSQ_\<R–                  ST/_\<R˜                  SU/_\<Rš                  SVSW/_\<Rœ                  SXSY/_\<Rž                  SZS[/_\<R                   S\S]/\<R¢                  SOS^/\<R¤                  S_/\<R¦                  S`/\<R¨                  / SaQ\<Rª                  / SbQ\<R¬                  Sc/\<R®                  / SdQ\<R°                  SeSf/\<R²                  Sg/\<R´                  Sh/\<R¶                  SiSj/\<R¸                  Sk/0Era\^\<\_\:   4   \`Sl'   \aRÅ                  5        V VVs0 s H+  n U   H!  nU\a Vs/ s H  o!\aU   ;   d  M  UPM     sn_M#     M-     snnn rc\^\:\_\<   4   \`Sm'    " Sn So\:\5      rd " Sp Sq\:\5      re " Sr Ss\:\5      rf " St Su\:\5      rg " Sv Sw\'5      rh " Sx Sy\'5      ri " Sz S{\'5      rj " S| S}\'5      rk " S~ S\'5      rl " S€ S�\'5      rm\" S‚Sƒ9 " S„ S…5      5       rn\" S‚Sƒ9 " S† S‡5      5       ro " Sˆ S‰\j5      rp " SŠ S‹\j5      rq " SŒ S�\'5      rr " SŽ S�\j5      rs " S� S‘\j5      rt " S’ S“\'5      ru " S” S•\'5      rv " S– S—\'5      rw\\s\q\t\p4   rx " S˜ S™\'5      ry " Sš S›\'5      rz " Sœ S�\'5      r{ " Sž SŸ\'5      r| " S  S¡\'5      r} " S¢ S£\'5      r~ " S¤ S¥\'5      r " S¦ S§\'5      r€ " S¨ S©\'5      r� " Sª S«\'5      r‚\ƒr„ " S¬ S­\:\5      r… " S® S¯\'5      r† " S° S±\†5      r‡gs  snf s  snnn f )²é    )Údefaultdict)Ú	dataclass)ÚEnum)ÚPath)ÚTYPE_CHECKINGÚ	AnnotatedÚAnyÚOptionalÚTypeÚUnionN)ÚBoundingBoxÚDocItemLabelÚNodeItemÚPictureDataTypeÚSizeÚ	TableCell)ÚPydanticSerCtxKeyÚround_pydantic_float)ÚOrientation)ÚSegmentedPdfPageÚTextCell)ÚDocumentStream)ÚImage)Ú
AnyHttpUrlÚAnyUrlÚ	BaseModelÚ
ConfigDictÚFieldÚFieldSerializationInfoÚPrivateAttrÚcomputed_fieldÚfield_serializerÚfield_validatorÚmodel_validator)ÚPdfPageBackend)ÚBackendOptions)ÚAbstractDocumentBackend)ÚPipelineOptionsc                   ód   • \ rS rSr% Sr\\\" SS/S94   \S'   0 r	\\
\\4   \" SS94   \S	'   S
rg)Ú
HttpSourceé2   zëA remote document source: a URL bundled with the headers used to fetch it.

Lives in the core datamodel (alongside ``DocumentStream``) so the converter
can accept it as an input; the serving layer subclasses it for its request
schema.
zHTTP url to processz https://arxiv.org/pdf/2206.01062)ÚdescriptionÚexamplesÚurlzIAdditional headers used to fetch the urls, e.g. authorization, agent, etc)r,   Úheaders© N)Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__Ú__doc__r   r   r   Ú__annotations__r/   ÚdictÚstrr	   Ú__static_attributes__r0   ó    ÚZ/home/mande/repo/quber/.venv/lib/python3.13/site-packages/docling/datamodel/base_models.pyr*   r*   2   sb   ‡ ñð 
ØÙØ-Ø8Ð9ñ	
ð	ñ
ó ð 	ð ˆYØˆS�#ˆX‰Ùð-ñ	
ð	ñö r:   r*   c                   óh   • \ rS rSr% SrSr\S-  \S'   \\	   \S'   \
" SS9rS\\-  \-  S	S
4S jrSrg)ÚBaseFormatOptionéJ   z?Base class for format options used by _DocumentConversionInput.NÚpipeline_optionsÚbackendT©Úarbitrary_types_allowedÚsourceÚreturnzBackendOptions | Nonec                 ó   • g ©Nr0   )ÚselfrC   s     r;   Úbackend_options_for_inputÚ*BaseFormatOption.backend_options_for_inputR   s   € ð r:   r0   )r1   r2   r3   r4   r5   r?   r(   r6   r   r'   r   Úmodel_configr   r8   r   rH   r9   r0   r:   r;   r=   r=   J   sI   ‡ ÙIà/3Ð�o¨Ñ,Ó3ØÐ)Ñ*Ó*á°dÑ;€LðØ˜S‘j >Ñ1ðà	 ÷r:   r=   c                   ó,   • \ rS rSrSrSrSrSrSrSr	Sr
g	)
ÚConversionStatuséX   ÚpendingÚstartedÚfailureÚsuccessÚpartial_successÚskippedr0   N)r1   r2   r3   r4   ÚPENDINGÚSTARTEDÚFAILUREÚSUCCESSÚPARTIAL_SUCCESSÚSKIPPEDr9   r0   r:   r;   rL   rL   X   s    † Ø€GØ€GØ€GØ€GØ'€OØƒGr:   rL   c                   ó”   • \ rS rSrSrSrSrSrSrSr	Sr
S	rS
rSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSr Sr!S r"S!r#S"r$g#)$ÚInputFormatéa   z8A document format supported by document backend parsers.ÚdocxÚdocÚpptxÚpptÚhtmlÚimageÚpdfÚasciidocÚmdÚcsvÚxlsxÚxlsÚodtÚodsÚodpÚ	xml_usptoÚxml_jatsÚxml_xbrlÚxml_doclangÚdclxÚmets_gbsÚjson_doclingÚaudioÚvideoÚvttÚlatexÚemailÚepubÚboxnoteÚiwork_pagesÚebcdicr0   N)%r1   r2   r3   r4   r5   ÚDOCXÚDOCÚPPTXÚPPTÚHTMLÚIMAGEÚPDFÚASCIIDOCÚMDÚCSVÚXLSXÚXLSÚODTÚODSÚODPÚ	XML_USPTOÚXML_JATSÚXML_XBRLÚXML_DOCLANGÚDCLXÚMETS_GBSÚJSON_DOCLINGÚAUDIOÚVIDEOÚVTTÚLATEXÚEMAILÚEPUBÚBOXNOTEÚIWORK_PAGESÚEBCDICr9   r0   r:   r;   r[   r[   a   s    † ÙBà€DØ
€CØ€DØ
€CØ€DØ€EØ
€CØ€HØ	€BØ
€CØ€DØ
€CØ
€CØ
€CØ
€CØ€IØ€HØ€HØ€KØ€DØ€HØ!€LØ€EØ€EØ
€CØ€EØ€EØ€DØ€GØ€KØƒFr:   r[   c                   óD   • \ rS rSrSrSrSrSrSrSr	Sr
S	rS
rSrSrSrSrg)ÚOutputFormaté…   re   ÚjsonÚyamlra   Úhtml_split_pageÚtextÚdoctagsru   Údoclangrp   Úchunksrv   r0   N)r1   r2   r3   r4   ÚMARKDOWNÚJSONÚYAMLr€   ÚHTML_SPLIT_PAGEÚTEXTÚDOCTAGSr”   ÚDOCLANGr�   ÚCHUNKSr•   r9   r0   r:   r;   rœ   rœ   …   s>   † Ø€HØ€DØ€DØ€DØ'€OØ€DØ€GØ
€CØ€GØ€DØ€FØƒEr:   rœ   )r]   ÚdotxÚdocmÚdotmr^   Údot)r_   ÚpotxÚppsxÚpptmÚpotmÚppsm)r`   ÚpotÚppsrc   )re   Útxtr¡   ÚqmdÚrmdÚRmd)ra   ÚhtmÚxhtmlÚxmlÚnxmlÚxbrlÚdclgzdclg.xmlrp   )ÚjpgÚjpegÚpngÚtifÚtiffÚbmpÚwebp)Úadocrd   Úascrf   rg   Úxlsmrh   Úxltri   Úottrj   Úotsrk   Úotpr¸   ztar.gzrž   )ÚwavÚmp3Úm4aÚaacÚoggÚflac)Úmp4ÚaviÚmovÚmkvÚwebmru   Útexrv   ÚemlÚmsgrx   ry   ÚpagesÚebcr{   ÚFormatToExtensionszGapplication/vnd.openxmlformats-officedocument.wordprocessingml.documentzGapplication/vnd.openxmlformats-officedocument.wordprocessingml.templatezapplication/mswordzapplication/x-msword)zEapplication/vnd.openxmlformats-officedocument.presentationml.templatezFapplication/vnd.openxmlformats-officedocument.presentationml.slideshowzIapplication/vnd.openxmlformats-officedocument.presentationml.presentationzapplication/vnd.ms-powerpointz	text/htmlzapplication/xhtml+xmlzapplication/xml)z	image/pngz
image/jpegz
image/tiffz	image/gifz	image/bmpz
image/webpzapplication/pdfztext/asciidoc)ztext/markdownztext/x-markdownú
text/plainztext/csvzAapplication/vnd.openxmlformats-officedocument.spreadsheetml.sheetzapplication/vnd.ms-excelzapplication/x-msexcelz'application/vnd.oasis.opendocument.textz0application/vnd.oasis.opendocument.text-templatez.application/vnd.oasis.opendocument.spreadsheetz7application/vnd.oasis.opendocument.spreadsheet-templatez/application/vnd.oasis.opendocument.presentationz8application/vnd.oasis.opendocument.presentation-templaterá   zapplication/mets+xmlzapplication/json)
zaudio/x-wavz
audio/mpegz	audio/wavz	audio/mp3z	audio/mp4z	audio/m4az	audio/aacz	audio/oggz
audio/flaczaudio/x-flac)z	video/mp4z	video/avizvideo/x-msvideozvideo/quicktimezvideo/x-matroskaz
video/webmztext/vtt)z
text/x-texzapplication/x-texztext/x-latexzmessage/rfc822zapplication/vnd.ms-outlookzapplication/epub+zipzapplication/vnd.box.boxnotezapplication/vnd.apple.pagesz"application/x-iwork-pages-sffpageszapplication/x-ebcdicÚFormatToMimeTypeÚMimeTypeToFormatc                   ó   • \ rS rSrSrSrSrg)ÚDocInputTypei  ÚpathÚstreamr0   N)r1   r2   r3   r4   ÚPATHÚSTREAMr9   r0   r:   r;   rå   rå     s   † Ø€DØƒFr:   rå   c                   ó(   • \ rS rSrSrSrSrSrSrSr	g)	ÚDoclingComponentTypei  Údocument_backendÚmodelÚdoc_assemblerÚ
user_inputÚpipeliner0   N)
r1   r2   r3   r4   ÚDOCUMENT_BACKENDÚMODELÚDOC_ASSEMBLERÚ
USER_INPUTÚPIPELINEr9   r0   r:   r;   rë   rë     s   † Ø)ÐØ€EØ#€MØ€JØƒHr:   rë   c                   ó(   • \ rS rSrSrSrSrSrSrSr	g)	ÚVlmStopReasoni!  ÚlengthÚstop_sequenceÚend_of_sequenceÚcontent_filterÚunspecifiedr0   N)
r1   r2   r3   r4   ÚLENGTHÚSTOP_SEQUENCEÚEND_OF_SEQUENCEÚCONTENT_FILTEREDÚUNSPECIFIEDr9   r0   r:   r;   r÷   r÷   !  s   † Ø€FØ#€MØ'€OØ'ÐØƒKr:   r÷   c                   ó<   • \ rS rSrSrSrSrSrSrSr	Sr
S	rS
rSrSrg)ÚFailureCategoryi)  a¸  Error category shared by task-scope (``PublicFailureInfo``) and
document/page-scope (``ErrorItem``) errors, so the jobkit bridge can pass one
to the other without translation.

Task-scope only: CAPACITY, TARGET_UNAVAILABLE, INTERNAL.
Document/page-scope only: BACKEND_FAILURE, INFERENCE_FAILURE.
Shared: POLICY, SOURCE_UNAVAILABLE, TIMEOUT.

UNKNOWN is the default for uncategorized errors, distinct from INTERNAL (a
known service defect).
ÚpolicyÚcapacityÚsource_unavailableÚtarget_unavailableÚtimeoutÚinternalÚbackend_failureÚinference_failureÚunknownr0   N)r1   r2   r3   r4   r5   ÚPOLICYÚCAPACITYÚSOURCE_UNAVAILABLEÚTARGET_UNAVAILABLEÚTIMEOUTÚINTERNALÚBACKEND_FAILUREÚINFERENCE_FAILUREÚUNKNOWNr9   r0   r:   r;   r  r  )  s9   † ñ
ð €FØ€HØ-ÐØ-ÐØ€GØ€HØ'€OØ+ÐØƒGr:   r  c                   ón   • \ rS rSr% Sr\\S'   \\S'   \\S'   \R                  r
\\S'   Sr\S-  \S'   S	rg)
Ú	ErrorItemiA  a�  Structured error information from document conversion.

Attributes:
    component_type: The component that generated the error.
    module_name: The module where the error occurred.
    error_message: Human-readable error description.
    category: Semantic category of the error for filtering.
    page_no: 1-indexed page the error is attributable to, or None for
        document-scoped errors.
Úcomponent_typeÚmodule_nameÚerror_messageÚcategoryNÚpage_nor0   )r1   r2   r3   r4   r5   rë   r6   r8   r  r  r  r  Úintr9   r0   r:   r;   r  r  A  s9   ‡ ñ	ð )Ó(ØÓØÓØ /× 7Ñ 7€HˆoÓ7Ø€GˆS�4‰ZÖr:   r  c                   ó–   • \ rS rSr% \\S'   \\S'   \\S'   Sr\	\S'   / r
\\   \S'   / r\S    \S'   \" S5      S	\	S
\S\	4S j5       rSrg)ÚClusteriT  ÚidÚlabelÚbboxç      ð?Ú
confidenceÚcellsÚchildrenÚvalueÚinforD   c                 óJ   • [        XR                  [        R                  5      $ rF   ©r   Úcontextr   ÚCONFID_PREC©rG   r'  r(  s      r;   Ú
_serializeÚCluster._serialize\  s   € ä# E¯<©<Ô9J×9VÑ9VÓWÐWr:   r0   N)r1   r2   r3   r4   r  r6   r   r   r$  Úfloatr%  Úlistr   r&  r"   r   r.  r9   r0   r:   r;   r  r  T  sk   ‡ ØƒGØÓØ
ÓØ€J�ÓØ€Eˆ4�‰>ÓØ "€Hˆd�9‰oÓ"á�lÓ#ðX ð XÐ-Cð XÈó Xó $óXr:   r  c                   óR   • \ rS rSr% \\S'   \\S'   \\S'   \\S'   Sr\	S-  \S'   Sr
g)	ÚBasePageElementia  r!  r   r  ÚclusterNr¡   r0   )r1   r2   r3   r4   r   r6   r  r  r¡   r8   r9   r0   r:   r;   r3  r3  a  s&   ‡ ØÓØƒGØƒLØÓØ€Dˆ#�‰*Ör:   r3  c                   ó*   • \ rS rSr% / r\\   \S'   Srg)ÚLayoutPredictionii  Úclustersr0   N)	r1   r2   r3   r4   r7  r1  r  r6   r9   r0   r:   r;   r6  r6  i  s   ‡ Ø €Hˆd�7‰mÖ r:   r6  c                   ó@   • \ rS rSr% Sr\\S'   Sr\\S'   Sr	\
\S'   Srg)	ÚVlmPredictionTokenim  Ú r¡   éÿÿÿÿÚtokenÚlogprobr0   N)r1   r2   r3   r4   r¡   r8   r6   r<  r  r=  r0  r9   r0   r:   r;   r9  r9  m  s   ‡ Ø€Dˆ#ƒNØ€Eˆ3ƒOØ€GˆUÖr:   r9  c                   ó¤   • \ rS rSr% Sr\\S'   / r\\	   \S'   Sr
\\S'   Sr\S-  \S'   Sr\S-  \S	'   \R"                  r\\S
'   Sr\S-  \S'   Srg)ÚVlmPredictionis  r:  r¡   Úgenerated_tokensr;  Úgeneration_timeNÚ
num_tokensÚusageÚstop_reasonÚinput_promptr0   )r1   r2   r3   r4   r¡   r8   r6   r@  r1  r9  rA  r0  rB  r  rC  r	   r÷   r  rD  rE  r9   r0   r:   r;   r?  r?  s  s`   ‡ Ø€Dˆ#ƒNØ13Ð�dÐ-Ñ.Ó3Ø€O�UÓØ!€J��d‘
Ó!Ø€Eˆ3�‰:ÓØ!.×!:Ñ!:€K�Ó:Ø#€L�#˜‘*Ö#r:   r?  T)Úfrozenc                   óf   • \ rS rSr% Sr\\S'   \S-  \S'   \\S'   Sr	\
S-  \S'   Sr\
S-  \S'   S	rg)
ÚApiImageRequestResulti}  z9Image API response with optional provider usage metadata.r¡   NrB  rD  rC  Úlogprobsr0   )r1   r2   r3   r4   r5   r8   r6   r  r÷   rC  r	   rI  r9   r0   r:   r;   rH  rH  }  s6   ‡ áCà
ƒIØ�d‘
ÓØÓØ€Eˆ3�‰:ÓØ€Hˆc�D‰jÖr:   rH  c                   ó\   • \ rS rSr% Sr\\S'   \S-  \S'   Sr\	S-  \S'   Sr
\	S-  \S'   Srg)	ÚApiImageStreamingRequestResultiˆ  zCStreaming image API response with optional provider usage metadata.r¡   NrB  rC  rI  r0   )r1   r2   r3   r4   r5   r8   r6   r  rC  r	   rI  r9   r0   r:   r;   rK  rK  ˆ  s0   ‡ áMà
ƒIØ�d‘
ÓØ€Eˆ3�‰:ÓØ€Hˆc�D‰jÖr:   rK  c                   ó   • \ rS rSrSrg)ÚContainerElementi’  r0   N)r1   r2   r3   r4   r9   r0   r:   r;   rM  rM  ’  s   † ò 	r:   rM  c                   ót   • \ rS rSr% \\   \S'   Sr\\S'   Sr	\\S'   \
R                  r\
\S'   \\   \S'   Srg	)
ÚTablei˜  Úotsl_seqr   Únum_rowsÚnum_colsÚorientationÚtable_cellsr0   N)r1   r2   r3   r4   r1  r8   r6   rQ  r  rR  r   ÚROT_0rS  r   r9   r0   r:   r;   rO  rO  ˜  s:   ‡ Ø�3‰iÓØ€HˆcÓØ€HˆcÓØ*×0Ñ0€K�Ó0Ø�i‘Ö r:   rO  c                   ó.   • \ rS rSr% 0 r\\\4   \S'   Sr	g)ÚTableStructurePredictioni   Ú	table_mapr0   N)
r1   r2   r3   r4   rX  r7   r  rO  r6   r9   r0   r:   r;   rW  rW     s   ‡ Ø"$€Iˆt�C˜�JÑÖ$r:   rW  c                   ó>   • \ rS rSr% \\S'   Sr\\\	\
4      \S'   Srg)ÚTextElementi¤  r¡   NÚ	hyperlinkr0   )r1   r2   r3   r4   r8   r6   r[  r
   r   r   r   r9   r0   r:   r;   rZ  rZ  ¤  s   ‡ Ø
ƒIØ/3€Iˆx˜˜f d˜lÑ+Ñ,Ö3r:   rZ  c                   óž   • \ rS rSr% / r\\   \S'   Sr\	S-  \S'   Sr
\	S-  \S'   Sr\S-  \S'   \" S5      S\S-  S\S	\S-  4S
 j5       rSrg)ÚFigureElementi©  ÚannotationsNÚ
provenanceÚpredicted_classr$  r'  r(  rD   c                 óT   • Ub$  [        XR                  [        R                  5      $ S $ rF   r*  r-  s      r;   r.  ÚFigureElement._serialize¯  s0   € ð Ñ ô ! ¯©Ô6G×6SÑ6SÓTð	
ð ð	
r:   r0   )r1   r2   r3   r4   r^  r1  r   r6   r_  r8   r`  r$  r0  r"   r   r.  r9   r0   r:   r;   r]  r]  ©  sr   ‡ Ø)+€K��oÑ&Ó+Ø!€J��d‘
Ó!Ø"&€O�S˜4‘ZÓ&Ø#€J�˜‘Ó#á�lÓ#ð
Ø˜T‘\ð
Ø)?ð
à	�‰ó
ó $ó
r:   r]  c                   ó<   • \ rS rSr% Sr\\S'   0 r\\\	4   \S'   Sr
g)ÚFigureClassificationPredictioniº  r   Úfigure_countÚ
figure_mapr0   N)r1   r2   r3   r4   re  r  r6   rf  r7   r]  r9   r0   r:   r;   rd  rd  º  s    ‡ Ø€L�#ÓØ+-€J��S˜-Ð'Ñ(Ö-r:   rd  c                   ó<   • \ rS rSr% Sr\\S'   0 r\\\	4   \S'   Sr
g)ÚEquationPredictioni¿  r   Úequation_countÚequation_mapr0   N)r1   r2   r3   r4   ri  r  r6   rj  r7   rZ  r9   r0   r:   r;   rh  rh  ¿  s    ‡ Ø€N�CÓØ+-€L�$�s˜KÐ'Ñ(Ö-r:   rh  c                   óz   • \ rS rSr% Sr\S-  \S'   Sr\S-  \S'   Sr	\
S-  \S'   Sr\S-  \S'   Sr\S-  \S'   Srg)	ÚPagePredictionsiÄ  NÚlayoutÚtablestructureÚfigures_classificationÚequations_predictionÚvlm_responser0   )r1   r2   r3   r4   rm  r6  r6   rn  rW  ro  rd  rp  rh  rq  r?  r9   r0   r:   r;   rl  rl  Ä  sS   ‡ Ø&*€FÐ˜tÑ#Ó*Ø6:€NÐ,¨tÑ3Ó:ØDHÐÐ:¸TÑAÓHØ6:ÐÐ,¨tÑ3Ó:Ø)-€L�- $Ñ&Ö-r:   rl  c                   óR   • \ rS rSr% / r\\   \S'   / r\\   \S'   / r	\\   \S'   Sr
g)ÚAssembledUnitiÏ  ÚelementsÚbodyr/   r0   N)r1   r2   r3   r4   rt  r1  ÚPageElementr6   ru  r/   r9   r0   r:   r;   rs  rs  Ï  s/   ‡ Ø"$€Hˆd�;ÑÓ$Ø €Dˆ$ˆ{Ñ
Ó Ø!#€GˆT�+ÑÖ#r:   rs  c                   ó6   • \ rS rSr% \" SS9r\\S'   \\S'   Sr	g)ÚItemAndImageEnrichmentElementiÕ  TrA   Úitemrb   r0   N)
r1   r2   r3   r4   r   rJ   r   r6   r   r9   r0   r:   r;   rx  rx  Õ  s   ‡ Ù°dÑ;€Là
ƒNØ†Lr:   rx  c            
       ó,  • \ rS rSr% \" SS9r\\S'   Sr\	S-  \S'   Sr
\S-  \S'   \" 5       r\\S'   Sr\S-  \S	'   Sr\S
   \S'   Sr\\S'   0 r\\\4   \S'   \S\\   4S j5       r   SS\S\S-  S\S-  S\S-  4S jjr\S\S-  4S j5       rSrg)ÚPageiÜ  TrA   r  NÚsizeÚparsed_pageÚpredictionsÚ	assembledr%   Ú_backendr#  Ú_default_image_scaleÚ_image_cacherD   c                 óL   • U R                   b  U R                   R                  $ / $ )zDReturn text cells as a read-only view of parsed_page.textline_cells.)r}  Útextline_cells©rG   s    r;   r%  Ú
Page.cellsî  s'   € ð ×ÑÑ'Ø×#Ñ#×2Ñ2Ð2àˆIr:   ÚscaleÚmax_sizeÚcropboxc                 ó|  • U R                   c  U R                  R                  US 5      $ U(       a>  U R                  c   e[	        X[        U R                  R                  5       5      -  5      nXR                  ;  aC  Uc'  U R                   R                  US9U R                  U'   OU R                   R                  XS9$ Uc  U R                  U   $ U R                  U   nU R                  c   eUR                  UR                  U R                  R                  S9R                  US9R                  5       5      $ )N©r‡  )r‡  r‰  )Úpage_height)r€  r‚  Úgetr|  ÚminÚmaxÚas_tupleÚget_page_imageÚcropÚto_top_left_originÚheightÚscaled)rG   r‡  rˆ  r‰  Úpage_ims        r;   Ú	get_imageÚPage.get_imageö  s  € ð �=‰=Ñ Ø×$Ñ$×(Ñ(¨°Ó5Ð5æØ—9‘9Ñ(Ð(Ð(Ü˜¬#¨d¯i©i×.@Ñ.@Ó.BÓ*CÑCÓDˆEà×)Ñ)Ó)Ø‰Ø+/¯=©=×+GÑ+GÈeÐ+GÐ+T�×!Ñ! %Ò(à—}‘}×3Ñ3¸%Ð3ÐQÐQà‰?Ø×$Ñ$ UÑ+Ð+à×'Ñ'¨Ñ.ˆGØ—9‘9Ñ(Ð(Ð(Ø—<‘<Ø×*Ñ*°t·y±y×7GÑ7GÐ*ÐHß‘˜e�Ð$ß‘“óð r:   c                 ó4   • U R                  U R                  S9$ )Nr‹  )r—  r�  r…  s    r;   rb   Ú
Page.image  s   € à�~‰~ D×$=Ñ$=ˆ~Ð>Ð>r:   r0   )r#  NN)r1   r2   r3   r4   r   rJ   r  r6   r|  r   r}  r   rl  r~  r  rs  r€  r
   r�  r0  r‚  r7   r   Úpropertyr1  r   r%  r   r—  rb   r9   r0   r:   r;   r{  r{  Ü  s  ‡ Ù°dÑ;€LàƒLà€Dˆ$�‰+ÓØ+/€KÐ! DÑ(Ó/Ù#2Ó#4€K�Ó4Ø&*€Iˆ}˜tÑ#Ó*ð 	ð ˆhÐ'Ñ(ó ð #&Ð˜%Ó%ð 	ð �$Øˆuˆñó ð ð�t˜H‘~ó ó ðð Ø#Ø&*ñ	àðð ˜‘*ðð ˜tÑ#ð	ð
 
�‰õð< ð?�u˜t‘|ó ?ó ó?r:   r{  c                   óX   • \ rS rSr% \\S'   Sr\S-  \S'   Sr\\	\\
4      S-  \S'   Srg)ÚOpenAiChatMessagei  ÚroleNÚcontentÚ
tool_callsr0   )r1   r2   r3   r4   r8   r6   rŸ  r   r1  r7   r	   r9   r0   r:   r;   r�  r�    s1   ‡ Ø
ƒIØ€GˆS�4‰ZÓØ.2€J��T˜#˜s˜(‘^Ñ$ tÑ+Ö2r:   r�  c                   óD   • \ rS rSr% \\S'   Sr\\   S-  \S'   \	\S'   Sr
g)ÚOpenAiTopLogprobi"  r<  NÚbytesr=  r0   )r1   r2   r3   r4   r8   r6   r£  r1  r  r0  r9   r0   r:   r;   r¢  r¢  "  s   ‡ ØƒJØ"€Eˆ4�‰9�tÑÓ"Ø†Nr:   r¢  c                   ó^   • \ rS rSr% \\S'   Sr\\   S-  \S'   \	\S'   Sr
\\   S-  \S'   Srg)ÚOpenAiTokenLogprobi(  r<  Nr£  r=  Útop_logprobsr0   )r1   r2   r3   r4   r8   r6   r£  r1  r  r0  r¦  r¢  r9   r0   r:   r;   r¥  r¥  (  s4   ‡ ØƒJØ"€Eˆ4�‰9�tÑÓ"ØƒNØ26€L�$Ð'Ñ(¨4Ñ/Ö6r:   r¥  c                   óJ   • \ rS rSr% Sr\\   S-  \S'   Sr\\   S-  \S'   Sr	g)ÚOpenAiResponseLogprobsi/  NrŸ  Úrefusalr0   )
r1   r2   r3   r4   rŸ  r1  r¥  r6   r©  r9   r0   r:   r;   r¨  r¨  /  s,   ‡ Ø/3€GˆTÐ$Ñ%¨Ñ,Ó3Ø/3€GˆTÐ$Ñ%¨Ñ,Ö3r:   r¨  c                   óN   • \ rS rSr% \\S'   \\S'   \S-  \S'   Sr\	S-  \S'   Sr
g)ÚOpenAiResponseChoicei4  ÚindexÚmessageNÚfinish_reasonrI  r0   )r1   r2   r3   r4   r  r6   r�  r8   rI  r¨  r9   r0   r:   r;   r«  r«  4  s'   ‡ ØƒJØÓØ˜‘:ÓØ.2€HÐ$ tÑ+Ö2r:   r«  c                   ó4   • \ rS rSr% \\S'   \\S'   \\S'   Srg)ÚOpenAiResponseUsagei;  Úprompt_tokensÚcompletion_tokensÚtotal_tokensr0   N)r1   r2   r3   r4   r  r6   r9   r0   r:   r;   r°  r°  ;  s   ‡ ØÓØÓØÖr:   r°  c                   ón   • \ rS rSr% \" SS9r\\S'   Sr\S-  \S'   \	\
   \S'   \\S'   Sr\S-  \S	'   Srg)
ÚOpenAiApiResponseiA  r0   )Úprotected_namespacesr   Nrí   ÚchoicesÚcreatedrC  )r1   r2   r3   r4   r   rJ   r8   r6   rí   r1  r«  r  rC  r°  r9   r0   r:   r;   rµ  rµ  A  sE   ‡ ÙØñ€Lð 	ƒGØ€Eˆ3�‰:ÓØÐ&Ñ'Ó'ØƒLØ(,€EÐ Ñ%Ö,r:   rµ  c                   ó(   • \ rS rSrSrSrSrSrSrSr	g)	ÚQualityGradeiQ  ÚpoorÚfairÚgoodÚ	excellentrü   r0   N)
r1   r2   r3   r4   ÚPOORÚFAIRÚGOODÚ	EXCELLENTr  r9   r0   r:   r;   rº  rº  Q  s   † Ø€DØ€DØ€DØ€IØƒKr:   rº  c                   ób  • \ rS rSr% \R
                  r\\S'   \R
                  r	\\S'   \R
                  r
\\S'   \R
                  r\\S'   \" SSSSSS9\S 5       5       rS	\S
\4S jr\\S
\4S j5       5       r\\S
\4S j5       5       r\\S
\4S j5       5       r\\S
\4S j5       5       rSrg)ÚPageConfidenceScoresiY  Úparse_scoreÚlayout_scoreÚtable_scoreÚ	ocr_scoreÚbefore©Úmodec                 óº   • Uc  [         R                  $ [        U[        5      (       a2  UR	                  5       R                  5       S;   a  [         R                  $ U$ ©N>   r:  ÚnanÚnoneÚnull)ÚnprÎ  Ú
isinstancer8   ÚstripÚlower)ÚclsÚvs     r;   Ú_coerce_none_or_nan_strÚ,PageConfidenceScores._coerce_none_or_nan_str`  sB   € ð
 ‰9Ü—6‘6ˆMÜ�aœ×Ñ !§'¡'£)§/¡/Ó"3Ð7RÓ"RÜ—6‘6ˆMØˆr:   ÚscorerD   c                 óÒ   • US:  a  [         R                  $ US:  a  [         R                  $ US:  a  [         R                  $ US:¼  a  [         R                  $ [         R
                  $ )Ng      à?gš™™™™™é?gÍÌÌÌÌÌì?)rº  r¿  rÀ  rÁ  rÂ  r  )rG   rÙ  s     r;   Ú_score_to_gradeÚ$PageConfidenceScores._score_to_gradek  sZ   € Ø�3‹;Ü×$Ñ$Ð$Ø�S‹[Ü×$Ñ$Ð$Ø�S‹[Ü×$Ñ$Ð$Ø�c‹\Ü×)Ñ)Ð)ä×'Ñ'Ð'r:   c                 ó8   • U R                  U R                  5      $ rF   )rÛ  Ú
mean_scorer…  s    r;   Ú
mean_gradeÚPageConfidenceScores.mean_gradew  s   € ð ×#Ñ# D§O¡OÓ4Ð4r:   c                 ó8   • U R                  U R                  5      $ rF   )rÛ  Ú	low_scorer…  s    r;   Ú	low_gradeÚPageConfidenceScores.low_grade|  s   € ð ×#Ñ# D§N¡NÓ3Ð3r:   c                 ó˜   • [        [        R                  " U R                  U R                  U R
                  U R                  /5      5      $ rF   )Ú
ScoreValuerÑ  ÚnanmeanrÈ  rÇ  rÆ  rÅ  r…  s    r;   rÞ  ÚPageConfidenceScores.mean_score�  sD   € ô Ü�JŠJà—N‘NØ×$Ñ$Ø×%Ñ%Ø×$Ñ$ð	óó	
ð 		
r:   c                 ó–   • [        [        R                  " U R                  U R                  U R
                  U R                  /SS95      $ )Ngš™™™™™©?)Úq)ræ  rÑ  ÚnanquantilerÈ  rÇ  rÆ  rÅ  r…  s    r;   râ  ÚPageConfidenceScores.low_score�  sI   € ô Ü�NŠNà—N‘NØ×$Ñ$Ø×%Ñ%Ø×$Ñ$ð	ð ñó

ð 
	
r:   r0   N)r1   r2   r3   r4   rÑ  rÎ  rÅ  ræ  r6   rÆ  rÇ  rÈ  r#   Úclassmethodr×  rº  rÛ  r!   r›  rß  rã  rÞ  râ  r9   r0   r:   r;   rÄ  rÄ  Y  s  ‡ Ø Ÿf™f€K�Ó$Ø!Ÿv™v€L�*Ó%Ø Ÿf™f€K�Ó$ØŸF™F€IˆzÓ"ñ Ø�~ }°kÈñð ñó óðð
( Zð 
(°Lô 
(ð Øð5˜Ló 5ó ó ð5ð Øð4˜<ó 4ó ó ð4ð Øð

˜Jó 

ó ó ð

ð Øð
˜:ó 
ó ó ó
r:   rÄ  c                   ó"  ^ • \ rS rSr% \" S S9r\\\4   \	S'   \
" \R                  S9r\\	S'   \
" \R                  S9r\\	S'   \S\S	\4S
 j5       r\" SS9\S 5       5       r\\S	\4U 4S jj5       5       r\\S	\4U 4S jj5       5       rSrU =r$ )ÚConfidenceReportiŸ  c                  ó    • [        [        5      $ rF   )r   rÄ  r0   r:   r;   Ú<lambda>ÚConfidenceReport.<lambda>¡  s
   € ¤Ô,@Ô Ar:   )Údefault_factoryrÞ   )ÚdefaultÚ_mean_score_overrideÚ_low_score_overrider'  rD   c                 óð   • U c  [        [        R                  5      $ [        U [        5      (       a;  U R                  5       R                  5       S;   a  [        [        R                  5      $ [        U 5      $ rÍ  )ræ  rÑ  rÎ  rÒ  r8   rÓ  rÔ  )r'  s    r;   Ú_coerce_override_scoreÚ'ConfidenceReport._coerce_override_score¦  s[   € à‰=ÜœbŸf™fÓ%Ð%Ü�eœS×!Ñ! e§k¡k£m×&9Ñ&9Ó&;ð @
ó '
ô œbŸf™fÓ%Ð%Ü˜%Ó Ð r:   ÚwraprÊ  c                 ó  • [        [        R                  5      n[        [        R                  5      n[        U[        5      (       a“  U R                  UR                  S5      5      nU R                  UR                  S5      5      n[	        U5      nUR                  SS 5        UR                  SS 5        UR                  SS 5        UR                  SS 5        U" U5      nUR                  (       d  X5l	        XEl
        U$ )NrÞ  râ  rß  rã  )ræ  rÑ  rÎ  rÒ  r7   rø  r�  ÚpoprÞ   rõ  rö  )rÕ  r'  ÚhandlerÚmean_overrideÚlow_overriderí   s         r;   Ú_accept_flat_confidence_scoresÚ/ConfidenceReport._accept_flat_confidence_scores³  sÁ   € ô #¤2§6¡6Ó*ˆÜ!¤"§&¡&Ó)ˆä�eœT×"Ñ"Ø×6Ñ6°u·y±yÀÓ7NÓOˆMØ×5Ñ5°e·i±iÀÓ6LÓMˆLÜ˜“KˆEØ�I‰I�l DÔ)Ø�I‰I�k 4Ô(Ø�I‰I�l DÔ)Ø�I‰I�k 4Ô(á˜“ˆØ�{�{Ø)6Ô&Ø(4Ô%Øˆr:   c                 óH  >• [         R                  " U R                  5      (       d  U R                  $ U R                  (       d
  [        TU ]  $ [        [         R                  " U R                  R                  5        Vs/ s H  oR
                  PM     sn5      5      $ s  snf rF   )	rÑ  Úisnanrõ  rÞ   ÚsuperrÞ  ræ  rç  Úvalues©rG   ÚcÚ	__class__s     €r;   rÞ  ÚConfidenceReport.mean_scoreÈ  sw   ø€ ô �xŠx˜×1Ñ1×2Ñ2Ø×,Ñ,Ð,Ø�z�zÜ‘7Ñ%Ð%ÜÜ�JŠJØ'+§z¡z×'8Ñ'8Ô':Ó;Ò': !—”Ñ':Ñ;óó
ð 	
ùâ;ó   Á?Bc                 óH  >• [         R                  " U R                  5      (       d  U R                  $ U R                  (       d
  [        TU ]  $ [        [         R                  " U R                  R                  5        Vs/ s H  oR
                  PM     sn5      5      $ s  snf rF   )	rÑ  r  rö  rÞ   r  râ  ræ  rç  r  r  s     €r;   râ  ÚConfidenceReport.low_scoreÕ  sw   ø€ ô �xŠx˜×0Ñ0×1Ñ1Ø×+Ñ+Ð+Ø�z�zÜ‘7Ñ$Ð$ÜÜ�JŠJØ&*§j¡j×&7Ñ&7Ô&9Ó:Ò&9 —”Ñ&9Ñ:óó
ð 	
ùâ:r
  r0   )r1   r2   r3   r4   r   rÞ   r7   r  rÄ  r6   r    rÑ  rÎ  rõ  ræ  rö  Ústaticmethodr	   rø  r$   rí  r   r!   r›  rÞ  râ  r9   Ú__classcell__)r  s   @r;   rï  rï  Ÿ  sÓ   ø‡ Ù-2ÙAñ.€Eˆ4�Ð)Ð)Ñ*ó ñ (3¸2¿6¹6Ñ'BÐ˜*ÓBÙ&1¸"¿&¹&Ñ&AÐ˜ÓAàð
! cð 
!¨jó 
!ó ð
!ñ ˜&Ñ!Øñó ó "ðð& Øð	
˜Jö 	
ó ó ð	
ð Øð	
˜:ö 	
ó ó ö	
r:   rï  )ˆÚcollectionsr   Údataclassesr   Úenumr   Úpathlibr   Útypingr   r   r	   r
   r   r   ÚnumpyrÑ  Údocling_core.types.docr   r   r   r   r   r   Údocling_core.types.doc.baser   r   Údocling_core.types.doc.documentr   Údocling_core.types.doc.pager   r   Údocling_core.types.ior   Ú	PIL.Imager   Úpydanticr   r   r   r   r   r   r    r!   r"   r#   r$   Údocling.backend.pdf_backendr%   Ú!docling.datamodel.backend_optionsr&   Ú docling.backend.abstract_backendr'   Ú"docling.datamodel.pipeline_optionsr(   r*   r=   r8   rL   r[   rœ   r|   r}   r~   r   r‚   r„   r€   rŒ   r�   rŽ   r�   r�   rƒ   r…   r†   r‡   rˆ   r‰   rŠ   r‹   r�   r‘   r’   r“   r”   r•   r–   r—   r˜   r™   rš   rà   r7   r1  r6   râ   r  rã   rå   rë   r÷   r  r  r  r3  r6  r9  r?  rH  rK  rM  rO  rW  rZ  r]  rd  rh  rl  rv  rs  rx  r{  r�  r¢  r¥  r¨  r«  r°  rµ  r0  ræ  rº  rÄ  rï  )r'  ÚmimeÚfmts   000r;   Ú<module>r"     s½  ðö $Ý !Ý Ý ß G× Gã ÷÷ ÷ PÝ 7ß Bõõ
 ÷÷ ÷ ñ ö Ý:Ý@å DÝ >ô�ô ô0�yô ô�s˜Dô ô!�#�tô !ôH�3˜ô ð 4Ø×ÑÒ6ð 4à‡O�O�e˜U�^ð 4ð ×ÑÒFð 4ð ‡O�OÒ*ð	 4ð
 ‡O�O�e�Wð 4ð ‡N�NÒ>ð 4ð ×ÑÒ.ð 4ð ×Ñ˜5 &˜/ð 4ð ×Ñ˜5 &˜/ð 4ð ×Ñ˜f jÐ1ð 4ð ×Ñ�v�hð 4ð ×ÑÒKð 4ð ×ÑÒ5ð 4ð ‡O�O�e�Wð 4ð ×Ñ�v˜vÐ&ð 4ð  ‡O�O�e˜U�^ð! 4ð" ‡O�O�e˜U�^ð# 4ð$ ‡O�O�e˜U�^Ø‡O�O�e˜U�^Ø×Ñ˜E 5˜>Ø×Ñ˜8˜*Ø×Ñ˜v˜hØ×ÑÒBØ×ÑÒ;Ø‡O�O�e�WØ×Ñ˜˜wÐ'Ø×Ñ˜˜u�~Ø×Ñ�v�hØ×Ñ˜)˜Ø×Ñ˜g˜YØ×Ñ˜ Ð)ñ? 4Ð �D˜ d¨3¡iÐ/Ñ0ó  ðDU2Ø×ÑØQØQððU2ð
 ‡O�OØØððU2ð ×Ñò ðU2ð ‡O�OØ'ððU2ð" ×Ñ�{Ð$;Ð<ð#U2ð$ ×ÑÐ,Ð-ð%U2ð& ×ÑÐ,Ð.EÐFð'U2ð( ×ÑÐ/Ð0ð)U2ð* ×Ñò ð+U2ð: ‡O�OÐ'Ð(ð;U2ð< ×Ñ˜?Ð+ð=U2ð> ‡N�NÒFð?U2ð@ ‡O�O�j�\ðAU2ðB ×ÑØKððCU2ðH ‡O�OØ"ØððIU2ðP ‡O�OØ1Ø:ððQU2ðX ‡O�OØ8ØAððYU2ð` ‡O�OØ9ØBðð ×ÑÐ-¨|Ð<Ø×ÑÐ1Ð2Ø×ÑÐ1Ð2Ø×Ñò ð ×Ñò ð ‡O�O�j�\Ø×ÑÒJØ×ÑÐ(Ð*FÐGØ×ÑÐ-Ð.Ø×ÑÐ7Ð8Ø×ÑØ%Ø,ðð ×ÑÐ/Ð0ñiU2Ð �$�{ D¨¡IÐ-Ñ.ó Uðr "×(Ñ(Ô*õ2â*ˆÜˆð 	Ñ*Ó
LÒ*�3Ð6FÀsÑ6KÑ.K�3Ñ*Ñ
LÒLáñ 	Ù*ó2Ð �$�s˜D Ñ-Ð-Ñ.ó ô�3˜ô ô
˜3 ô ô �C˜ô  ô�c˜4ô ô0�	ô ô&
Xˆiô 
Xô�iô ô!�yô !ô˜ô ô$�Iô $ñ �$Ñ÷ ð  ó ð ñ �$Ñ÷ ð  ó ð ô	Øô	ô!ˆOô !ô%˜yô %ô4�/ô 4ô

�Oô 
ô". Yô .ô
.˜ô .ô
.�iô .ð �K ¨Ð7GÐGÑH€ô$�Iô $ô Iô ô:?ˆ9ô :?ô@3˜	ô 3ô�yô ô7˜ô 7ô4˜Yô 4ô
3˜9ô 3ô˜)ô ô	-˜	ô 	-ð €
ô �3˜ô  ôC
˜9ô C
ôLA
Ð+õ A
ùòc Mùô2s   Ñ+Y Ñ<X;ÒX;ÒY Ø;Y 