ó
    ù!‡j,  ã                  ó–   • S r SSKJr  SSKrSSKJs  Jr  SSK	J
r
JrJr  SSKJrJrJrJrJr  SSKJr  SSKJr  Su  rrSS	 jrS
 rS rg)z@The pages=all union: every page scanned, nomination info intact.é    )ÚannotationsN)ÚBoundingBoxÚCoordOriginÚSize)ÚDoclingDocumentÚPictureClassificationMetaFieldÚPictureClassificationPredictionÚPictureMetaÚProvenanceItem)Únominate_pages)Úwiden_to_all_pages)g     €†@g     à€@c           
     ó6  • [        SS9n[        SU S-   5       H#  nUR                  U[        [        [
        S9S9  M%     U HS  n[        SSSS	[        R                  S
9nUR                  [        X4SS9S9n[        [        [        SSS9/S9S9Ul        MU     U$ )NÚ	synthetic)Únameé   )ÚwidthÚheight)Úpage_noÚsizeéH   iˆ  iæ  é6   )ÚlÚrÚtÚbÚcoord_origin)r   r   )r   ÚbboxÚcharspan)ÚprovÚ	bar_chartgÍÌÌÌÌÌì?)Ú
class_nameÚ
confidence)Úpredictions)Úclassification)r   ÚrangeÚadd_pager   ÚPAGE_WÚPAGE_Hr   r   Ú
BOTTOMLEFTÚadd_picturer   r
   r   r	   Úmeta)Ú
page_countÚchart_pagesÚdocÚpager   Úpictures         Ú4/home/mande/repo/quber/tests/core/test_page_scope.pyÚ	_documentr2      s›   € Ü
˜{Ñ
+€CÜ�a˜ a™Ö(ˆØ�‰˜T¬´6Ä&Ñ(IˆÓJñ )ãˆÜ˜R 3¨#°Ä+×BXÑBXÑYˆØ—/‘/¤~¸dÐX^Ñ'_�/Ð`ˆÜ"Ü9Ü<ÈÐ`cÑdÐeññ
ˆŽñ ð €Jó    c                 ó>  • [        SSS/S9n [        U 5      nU Vs/ s H  o"R                  PM     nnSS/oCU:H  oU(       do  [        R                  " SU4SX445      [        R
                  " U5      [        R
                  " U5      S.-  nSS	U0-  n[        [        R                  " U5      5      eS =n=pT[        X5      nU Vs/ s H  o"R                  PM     nn/ S
QoCU:H  oU(       do  [        R                  " SU4SX445      [        R
                  " U5      [        R
                  " U5      S.-  nSS	U0-  n[        [        R                  " U5      5      eS =n=pTU Vs0 s H  o"R                  U_M     n	n/ o©S   oUR                  o»o;(       a  U	S   oÌR                  nS/oíU:H  oÿnU(       dÿ  S[        R
                  " U5      [        R
                  " U5      S.-  nU
R                  U5        U(       aw  [        R                  " SW4SWW45      [        R
                  " W5      [        R
                  " U5      [        R
                  " U5      S.-  nSSU0-  nU
R                  U5        [        R                  " U
S5      0 -  nSSU0-  n[        [        R                  " U5      5      eS =n=n
=n=n=n=n=pþU	S   o3R                  oU(       dO  S[        R
                  " U5      [        R
                  " U5      S.-  n[        [        R                  " U5      5      eS =p5S Hã  nU	U   o3R                  oU(       + o»(       dO  S[        R
                  " U5      [        R
                  " U5      S.-  n[        [        R                  " U5      5      eS =n=p[U	U   o3R                  oU(       + o»(       dO  S[        R
                  " U5      [        R
                  " U5      S.-  n[        [        R                  " U5      5      eS =n=p[Må     g s  snf s  snf s  snf )Né   é   é   ©r,   r-   ©ú==)z%(py1)s == %(py4)s)Úpy1Úpy4zassert %(py6)sÚpy6)r   r6   é   é   r7   r5   r    z)%(py5)s
{%(py5)s = %(py3)s.picture_refs
})Úpy3Úpy5)z:%(py10)s
{%(py10)s = %(py8)s.picture_classes
} == %(py13)s)Úpy8Úpy10Úpy13z%(py15)sÚpy15r   zassert %(py18)sÚpy18z0assert %(py3)s
{%(py3)s = %(py1)s.picture_refs
})r;   r@   )r   r>   r?   r5   z4assert not %(py3)s
{%(py3)s = %(py1)s.picture_refs
}z2assert not %(py3)s
{%(py3)s = %(py1)s.table_refs
})r2   r   r/   Ú
@pytest_arÚ_call_reprcompareÚ	_safereprÚAssertionErrorÚ_format_explanationr   Úpicture_refsÚpicture_classesÚappendÚ_format_boolopÚ
table_refs)r.   Ú	nominatedÚnÚ@py_assert0Ú@py_assert3Ú@py_assert2Ú@py_format5Ú@py_format7ÚwidenedÚby_pageÚ@py_assert1Ú@py_assert4Ú@py_assert7Ú@py_assert9Ú@py_assert12Ú@py_assert11Ú@py_format6Ú@py_format14Ú@py_format16Ú@py_format17Ú@py_format19Ú@py_format4Úbares                          r1   Ú9test_all_mode_covers_every_page_and_keeps_nomination_refsrg   #   s–  € Ü
˜q¨q°!¨fÑ
5€CÜ˜sÓ#€IÙ%Ó&šI�q�FŒF™IÐ0Ð&¨1¨a¨&Ð0¨&Ñ0×0×0×0Ò0Ð&×0×0Ô0Ð&×0×0Ó0¨&×0×0×0×0×0×0Ó0ä  Ó0€GÙ#Ó$šG�q�FŒF™GÐ:Ð$Ò(:Ð:Ð(:Ñ:×:×:×:Ò:Ð$×:×:Ô:Ð$×:×:Ó:Ð(:×:×:×:×:×:×:Ó:á")Ó*¢'˜Q�v‰v�qŠy¡'€GÐ*áR�1‰:ÐR×"Ñ"ÑRÕ" w¨q¡zÐR×'AÑ'AÐRÀkÀ]ÐRÀ]Ñ'R×R×R×RÑRˆ:×R×RÓRÐ"×R×R×RÑRÖ"×R×RÓRÐ'AÀ]×R×RÔR z×R×RÓRÐ'A×R×RÓRÀ]×R×R×R×R×R×R×R×R×R×R×R×R×R×RØ�1‰:Ð"×"Ñ"Ð"Õ"×"×"Ð"ˆ:×"×"Ó"Ð"×"×"×"×"×"Ò"ÛˆØ˜4‘=Ð-×-Ñ-Ð-Ô-Ð-Õ-×-×-Ð-�=×-×-Ó-Ð-×-×-×-×-×-Ô-Ø˜4‘=Ð+×+Ñ+Ð+Ô+Ð+Õ+×+×+Ð+�=×+×+Ó+Ð+×+×+×+×+×+Ö+ò ùò 'ùò %ùâ*s   œPÃPÅ!Pc                 ó€  • [        SSS/S9n [        U 5      n[        X5      o"U:H  o3(       GdŽ  [        R                  " SU4SX!45      S[
        R                  " 5       ;   d  [        R                  " [        5      (       a  [        R                  " [        5      OSS[
        R                  " 5       ;   d  [        R                  " U 5      (       a  [        R                  " U 5      OSS[
        R                  " 5       ;   d  [        R                  " U5      (       a  [        R                  " U5      OS[        R                  " U5      S[
        R                  " 5       ;   d  [        R                  " U5      (       a  [        R                  " U5      OSS	.-  nS
SU0-  n[        [        R                  " U5      5      eS =p#g )Nr6   r   r8   r9   )z9%(py4)s
{%(py4)s = %(py0)s(%(py1)s, %(py2)s)
} == %(py6)sr   r.   rQ   )Úpy0r;   Úpy2r<   r=   zassert %(py8)srB   )r2   r   r   rG   rH   Ú@py_builtinsÚlocalsÚ_should_repr_global_namerI   rJ   rK   )r.   rQ   rT   Ú@py_assert5rW   Ú@py_format9s         r1   Ú;test_all_mode_on_a_fully_nominated_document_changes_nothingrp   4   sæ   € Ü
˜q¨q°!¨fÑ
5€CÜ˜sÓ#€IÜ˜cÓ-Ð:°Ñ:×:×:×:Ó:Ð-×:×:×:×:×:Õ:Ô×:×:×:Ñ:Ô×:×:×:×:×:Ö:˜c×:×:×:Ñ:˜c×:×:×:×:×:Ö: 9×:×:×:Ñ: 9×:×:Õ:Ð-×:×:×:×:×:Ô:°×:×:×:Ñ:°×:×:×:×:×:×:Ô:r3   )r,   Úintr-   z	list[int]Úreturnr   )Ú__doc__Ú
__future__r   Úbuiltinsrk   Ú_pytest.assertion.rewriteÚ	assertionÚrewriterG   Údocling_core.types.doc.baser   r   r   Údocling_core.types.doc.documentr   r   r	   r
   r   Úquber.core.figures.nominater   Úquber.core.figures.orchestratorr   r'   r(   r2   rg   rp   © r3   r1   Ú<module>r~      s@   ðÙ Få "ç  „ × FÑ F÷õ õ 7Ý >à�€ˆôò,ó";r3   