Ë
    îÃj‘3  ã                   ó6  — d dl Z d dlZ	  ed«      Zi d d“dd“dd“dd“d	d
“dd“dd“dd“dd“dd“dd“dd“dd“dd“dd“dd “d!d"“d#d$d%d&d'd(d)d*d+d,d-d.d/d0d1œ¥Zd2d3d3d4œZi i d5d2“d6d7“d8d9“d:d;“d<d=“d>d?“d@dA“dBdC“dDdE“dFdG“dHdI“dJdK“dLd2“dMdN“dOdN“dPdQ“d2d2“dRdSdTdUdVdWdXœ¥¥e¥Z e j                  dYe j                  «      Z	 e j                  dZe j                  «      Z
d[„ Z e j                  d\«      Z e j                  d]«      Z e j                  d^«      Zd_„ Zdad`„Zy)bé    N(#  ÚaftncnÚaftnsepÚaftnsepcÚ
annotationÚ	atnauthorÚatndateÚatnicnÚatnidÚ	atnparentÚatnrefÚatntimeÚatrfendÚ	atrfstartÚauthorÚ
backgroundÚbkmkendÚ	bkmkstartÚblipuidÚbuptimÚcategoryÚcolorschememappingÚcolortblÚcommentÚcompanyÚcreatimÚ	datafieldÚ	datastoreÚdefchpÚdefpapÚdoÚdoccommÚdocvarÚ
dptxbxtextÚebcendÚebcstartÚfactoidnameÚfaltÚfcharsÚ	ffdeftextÚ
ffentrymcrÚ	ffexitmcrÚffformatÚ
ffhelptextÚfflÚffnameÚ
ffstattextÚfileÚfiletblÚfldinstÚfldtypeÚfonttblÚfnameÚfontembÚfontfileÚfooterÚfooterfÚfooterlÚfooterrÚfootnoteÚ	formfieldÚftncnÚftnsepÚftnsepcÚgÚ	generatorÚgridtblÚheaderÚheaderfÚheaderlÚheaderrÚhlÚhlfrÚ	hlinkbaseÚhllocÚhlsrcÚhsvÚhtmltagÚinfoÚkeycodeÚkeywordsÚlatentstylesÚlcharsÚlevelnumbersÚ	leveltextÚlfolevelÚlinkvalÚlistÚ	listlevelÚlistnameÚlistoverrideÚlistoverridetableÚlistpictureÚliststylenameÚ	listtableÚlsdlockedexceptÚmaccÚmaccPrÚ	mailmergeÚmalnÚmalnScrÚmanagerÚmargPrÚmbarÚmbarPrÚmbaseJcÚmbegChrÚ
mborderBoxÚmborderBoxPrÚmboxÚmboxPrÚmchrÚmcountÚmctrlPrÚmdÚmdegÚmdegHideÚmdenÚmdiffÚmdPrÚmeÚmendChrÚmeqArrÚmeqArrPrÚmfÚmfNameÚmfPrÚmfuncÚmfuncPrÚ	mgroupChrÚmgroupChrPrÚmgrowÚmhideBotÚ	mhideLeftÚ
mhideRightÚmhideTopÚmhtmltagÚmlimÚmlimlocÚmlimlowÚ	mlimlowPrÚmlimuppÚ	mlimuppPrÚmmÚmmaddfieldnameÚmmathÚ	mmathPictÚmmathPrÚmmaxdistÚmmcÚmmcJcÚmmconnectstrÚmmconnectstrdataÚmmcPrÚmmcsÚmmdatasourceÚmmheadersourceÚmmmailsubjectÚmmodsoÚmmodsofilterÚmmodsofldmpdataÚmmodsomappednameÚ
mmodsonameÚmmodsorecipdataÚ
mmodsosortÚ	mmodsosrcÚmmodsotableÚ	mmodsoudlÚmmodsoudldataÚmmodsouniquetagÚmmPrÚmmqueryÚmmrÚmnaryÚmnaryPrÚmnoBreakÚmnumÚmobjDistÚmoMathÚ
moMathParaÚmoMathParaPrÚmopEmuÚmphantÚmphantPrÚmplcHideÚmposÚmrÚmradÚmradPrÚmrPrÚmsepChrÚmshowÚmshpÚmsPreÚmsPrePrÚmsSubÚmsSubPrÚmsSubSupÚ
msSubSupPrÚmsSupÚmsSupPrÚmstrikeBLTRÚmstrikeHÚmstrikeTLBRÚmstrikeVÚmsubÚmsubHideÚmsupÚmsupHideÚmtranspÚmtypeÚmvertJcÚmvfmfÚmvfmlÚmvtofÚmvtolÚmzeroAscÚ	mzeroDescÚmzeroWidÚnesttablepropsÚnextfileÚnonesttablesÚobjaliasÚobjclassÚobjdataÚobjectÚobjnameÚobjsectÚobjtimeÚ	oldcpropsÚ	oldppropsÚ	oldspropsÚ	oldtpropsÚoleclsidÚoperatorÚpanoseÚpasswordÚpasswordhashÚpgpÚpgptblÚpicpropÚpictÚpnÚpnseclvlÚpntextÚpntxtaÚpntxtbÚprintimÚprivateÚpropnameÚprotendÚ	protstartÚprotusertblÚpxeÚresultÚrevtblÚrevtimÚrsidtblÚrxeÚshpÚshpgrpÚshpinstÚshppictÚshprsltÚshptxtÚsnÚspÚ	staticvalÚ
stylesheetÚsubjectÚsvÚsvbÚtcÚtemplateÚ	themedataÚtitleÚtxeÚudÚuprÚ	userpropsÚwgrffmtfilterÚwindowcaptionÚwritereservationÚwritereservhashÚxeÚxformÚxmlattrnameÚxmlattrvalueÚxmlcloseÚxmlnameÚxmlnstblÚxmlopenÚcp1252é*   éM   Ú	mac_romanéN   Úmac_japaneseéO   Úmac_chinesetradéP   Ú
mac_koreanéQ   Ú
mac_arabicéR   Ú
mac_hebrewéS   Ú	mac_greekéT   Úmac_cyrillicéU   Úmac_chinesesimpéV   Úmac_rumanianéW   Úmac_ukrainianéX   Úmac_thaiéY   Úmac_ceé€   Úcp932é�   Úcp949Úcp1361Úcp936Úcp950Úcp1253Úcp1254Úcp1258Úcp1255Úcp1256Úcp1257Úcp1251Úcp874Úcp1250Úcp437Úcp850)é‚   é†   éˆ   é¡   é¢   é£   é±   é²   éº   éÌ   éÞ   éî   éþ   éÿ   ú
z

)ÚparÚsectÚpageÚlineÚtabú	Úemdashu   â€”Úendashu   â€“Úemspaceu   â€ƒÚenspaceu   â€‚Úqmspaceu   â€…Úbulletu   â€¢Úlquoteu   â€˜Úrquoteu   â€™Ú	ldblquoteu   â€œÚ	rdblquoteu   â€�ÚrowÚcellú|Únestcellú~õ   Â úú{ú}ú\õ   Â­u   â€‘)ry  rz  r{  r|  ú-Ú_zO\\([a-z]{1,32})(-?\d{1,10})?[ ]?|\\'([0-9a-f]{2})|\\([^a-z])|([{}])|[\r\n]+|(.)zP(\{\\field\{\s*\\\*\\fldinst\{.*HYPERLINK\s(\".*\")\}{2}\s*\{.*?\s+(.*?)\}{2,3})c                 óú  — d| vsd| vr| S g }d}t        | «      }d}d}||k  rÉ|s#| j                  d|«      rd}|t        d«      z  }Œ*|r�| j                  d|«      r_|t        d«      z  }d}||k  r9| |   j                  «       r&|| |   z  }|dz  }||k  r| |   j                  «       rŒ&t        |«      }||z  }Œ�| |   dk(  rd}|dz  }Œ­|s|j	                  | |   «       |dz  }||k  rŒÉdj                  |«      S )	z¡
    Remove all \pict groups with binary data from the RTF text.
    If no binary-encoded \pict groups are found, return the original text.
    See issue 58
    z\pictz\binr   FTÚ é   r{  )ÚlenÚ
startswithÚisdigitÚintÚappendÚjoin)Úrtf_textr   ÚiÚnÚin_pictÚbinary_lengthÚ
length_strs          úU/home/spazio/.cache/hermes-doc-venv/lib/python3.12/site-packages/striprtf/striprtf.pyÚremove_pict_groupsr�  ƒ   s9  € ð �xÑ 7°(Ñ#:ØˆØ€FØ	€AÜˆH‹€AØ€GØ€Mà
ˆaŠ%Ù˜8×.Ñ.¨x¸Ô;àˆGØ”�X“ÑˆAØáØ×"Ñ" 7¨AÔ.à”S˜“\Ñ!�Ø�
Ø˜!’e ¨¡× 3Ñ 3Ô 5Ø (¨1¡+Ñ-�JØ˜‘F�Að ˜!’e ¨¡× 3Ñ 3Õ 5ô !$ J£�à�]Ñ"�ØØ˜!‘ Ò#à�Ø�Q‘�Øáà�M‰M˜( 1™+Ô&à	ˆQ‰ˆð; ˆa‹%ð> �7‰7�6‹?Ðó    z%\\f(\d+).*?\\fcharset(\d+).*?([^;]+);z{[^{}]*\\fonttblz[{}]c                 ó2  — t         j                  | «      }|syd}t        j                  | |j	                  «       «      D ]D  }||j                  «       dk(  rdndz  }|dk(  sŒ#| |j                  «       |j	                  «        c S  | |j                  «       d S )zÕ
    Return the ``{\fonttbl ...}`` group of the RTF text, or "" if there is none.

    The font table regex is expensive to run against a whole document, so it is
    only applied to this slice. See issue 71.
    r�  r‚  rz  éÿÿÿÿr   N)ÚFONTTABLE_STARTÚsearchÚBRACEÚfinditerÚendÚgroupÚstart)Útextrš  ÚdepthÚbraces       r�  Úfont_table_grouprž  ¸   s�   € ô ×"Ñ" 4Ó(€EÙØØ€EÜ—‘  e§i¡i£kÓ2ò 5ˆØ�e—k‘k“m sÒ*‘°Ñ2ˆØ�A‹:Ø˜Ÿ™›¨¯	©	«Ð4Ò4ð5ð
 �—‘“�Ð Ð r‘  c           	      óT  — t        | «      } t        j                  t        d| «      } g }i }d}d}d}d}d}	d}
d}d}d}d}t        j                  t        | «      «      }|D ]:  \  }}}|j                  «       |t        j                  t        |«      |«      dœ||<   Œ< t        j                  | «      D �]â  }|j                  «       \  }}}}}}|rO|sM|t        j                  |«      j!                  |j                  |d|i«      j                  d|«      |¬	«      z  }d}|rUd}
|d
k(  r|dz  }d}|j#                  |	||f«       Œ‘|dk(  sŒ—|dz  }|r|j%                  «       \  }	}}nd}	d}|sŒº|dk  sŒÀ |S |r-d}
|t&        v r|t(        v r|}|rŒÜ|t&        |   z  }Œé|dk(  sŒïd}Œò|r³d}
|t*        v rd}n |dk(  rd|› �}	 t-        j.                  |«       |s|r�Œ'|t&        v r|t&        |   z  }�Œ=|dk(  rt        |«      }	�ŒO|dk(  r-|€|	}
�ŒZt        |«      }|dk  r|dz  }|t3        |«      z  }|	}
�Œ�|dk(  r|}�ŒŠ|dk(  r|}�Œ“|dk(  rd}�Œœ|dk(  s�Œ£d}�Œ§|r|
dkD  r|
dz  }
�Œµ|r�Œ¹|s|}�Œ¿||z  }�ŒÆ|s�ŒÊ|
dkD  r|
dz  }
�ŒÖ|r�ŒÚ|r�ŒÞ||z  }�Œå |S # t0        $ r d}Y ŒÔw xY w)aU  Converts the rtf text to plain text.

    Parameters
    ----------
    text : str
        The rtf text
    encoding : str
        Input encoding which is ignored if the rtf file contains an explicit codepage directive,
        as it is typically the case. Defaults to `cp1252` encoding as it the most commonly used.
    errors : str
        How to handle encoding errors. Default is "strict", which throws an error. Another
        option is "ignore" which, as the name says, ignores encoding errors.

    Returns
    -------
    str
        the converted rtf text as a python unicode string
    z\1(\2)NFr‚  r   r�  )ÚnameÚcharsetÚencodingr¢  )r¢  Úerrorsrz  Tr{  Ú*ÚansicpgÚcpÚutf8ÚucÚui   ÚfÚdeffr5   r   )r�  ÚreÚsubÚ
HYPERLINKSÚ	FONTTABLEÚfindallrž  ÚstripÚcharset_mapÚgetr†  ÚPATTERNr—  ÚgroupsÚbytesÚfromhexÚdecoder‡  ÚpopÚspecialcharsÚsectioncharsÚdestinationsÚcodecsÚlookupÚLookupErrorÚchr)r›  r¢  r£  Ústackr5   Údefault_fontÚcurrent_fontÚ	ignorableÚsuppress_outputÚucskipÚcurskipÚhexesÚoutrœ  Úin_documentÚfonttbl_matchesÚfont_idÚfcharsetÚ	font_nameÚmatchÚwordÚargÚ_hexÚcharr�  ÚtcharÚcs                              r�  Úrtf_to_textrÖ  Ë   s>  € ô( ˜dÓ#€Dä�6‰6Ü�J ó€Dð €EØ€GØ€LØ€LØ€IØ€OØ€FØ€GØ€EØ
€CØ€EØ€Kô  ×'Ñ'Ô(8¸Ó(>Ó?€OØ(7ò 
Ñ$ˆ�˜9à—O‘OÓ%ØÜ#Ÿ™¬¨H«°xÓ@ñ
ˆ�Òð
ô ×!Ñ! $Ó'ó [ˆØ.3¯l©l«nÑ+ˆˆc�4˜˜u eÙ™à”5—=‘= Ó'×.Ñ.Ø Ÿ™ \°JÀÐ3IÓJ×NÑNØ óð ð	 /ó ñ ˆCð ˆEÙØˆGØ˜Š|à˜‘
�Ø"�Ø—‘˜f i°ÐAÕBØ˜#“à˜‘
�ÙØ9>¿¹»Ñ6�F˜I¡ð
 �FØ $�IÚ 5¨A£:ð ðz €Jñy ØˆGØ”|Ñ#Øœ<Ñ'Ø#/�LÚ Øœ<¨Ñ-Ñ-‘CØ˜“Ø ‘	ÙØˆGØ”|Ñ#Ø ‘	à˜Ò"Ø ˜u˜:�ð&Ü—M‘M (Ô+ñ ™OÙØœÑ%Ø”| DÑ)Ñ)’Ø˜’Ü˜S›’Ø˜’à�;Ø$’Gä˜C›�AØ˜1’uØ˜W™˜Øœ3˜q›6‘M�CØ$’GØ˜’Ø"’Ø˜’Ø"’Ø˜Ò"Ø"&’Ø˜Ô#Ø"&’áØ˜Š{Ø˜1‘’ÛáØ ’Eà˜T‘M’EÛØ˜Š{Ø˜1‘’Û£Ø�u‘’ðw[ðz €JøôU #ò &Ø%’Hð&ús   Æ=JÊJ'Ê&J')r&  Ústrict)r¬  r½  Ú	frozensetr¼  r²  r»  rº  ÚcompileÚ
IGNORECASEr´  r®  r�  r¯  r”  r–  rž  rÖ  © r‘  r�  ú<module>rÜ     s¬  ðÛ 	Û ðñ ð )ó )€ðV Ø€xð àˆð ð ˆð ð ˆð	 ð
 Ðð ð ˆð ð ˆð ð ˆð ð ˆð ð ˆð ð Ðð ð ˆð ð ˆð ð ˆ
ð ð ˆð ð  ˆð! ð" ˆð# ð$ 
Ø	Ø	Ø	Ø	Ø	Ø	Ø	Ø	Ø	Ø	Ø	Ø	Ø	ò? €ðH  V°VÑ<€ððØ�ðàˆtðð 	�(ðð 	�(ð	ð
 	�8ðð 	�8ðð 	�8ðð 	�(ðð 	�(ðð 	�(ðð 	�Xðð 	�Xðð 	ˆtðð 	�ðð 	�Cðð  	ˆVð!ð" 	ˆdð#ð$ ØØØØØò/ðð4 ð5€ð: ˆ"�*‰*ØVØ‡M�Mó€ð
 ˆR�Z‰ZØWØ‡M�Mó€
ò.ð` ˆB�J‰JÐ?Ó@€	Ø�"—*‘*Ð0Ó1€Øˆ�
‰
�7Ó€ò!ô&Kr‘  