Ë
    ÌiÕ  ã                   ó¬   — d dl Zd dlZd dlZd dlZddlmZ  G d„ dej                  j                  «      Z	 G d„ dej                  j                  «      Zy)é    Né   )Ú
FoldedCasec                   ó   — e Zd Zd„ Zy)Ú	RawPolicyc                 óÄ   — | j                   j                  t        j                  |dd„ ¬«      j	                  «       j                  «       «      }|› d|› | j                   › �S )Nú        c                  ó   — y)NT© )Úlines    ú]/var/www/html/strategist-ai/venv/lib/python3.12/site-packages/importlib_metadata/_adapters.pyú<lambda>z RawPolicy.fold.<locals>.<lambda>   s   � ó    )ÚprefixÚ	predicatez: )ÚlinesepÚjoinÚtextwrapÚindentÚlstripÚ
splitlines)ÚselfÚnameÚvalueÚfoldeds       r   ÚfoldzRawPolicy.fold
   sT   € Ø—‘×"Ñ"Üß‰V�E 'Ñ5FôHç‰V‹Xß‰Z‹\ó	
ˆð ��r˜&˜ $§,¡, Ð0Ð0r   N)Ú__name__Ú
__module__Ú__qualname__r   r
   r   r   r   r   	   s   „ ó1r   r   c                   ó®   ‡ — e Zd ZdZ e eeg d¢«      «      Z	 dej                  j                  fˆ fd„Zd„ Zˆ fd„Zˆ fd„Zd„ Zˆ fd	„Zed
„ «       Zˆ xZS )ÚMessageaØ  
    Specialized Message subclass to handle metadata naturally.

    Reads values that may have newlines in them and converts the
    payload to the Description.

    >>> msg_text = textwrap.dedent('''
    ...     Name: Foo
    ...     Version: 3.0
    ...     License: blah
    ...             de-blah
    ...     <BLANKLINE>
    ...     First line of description.
    ...     Second line of description.
    ...     <BLANKLINE>
    ...     Fourth line!
    ...     ''').lstrip().replace('<BLANKLINE>', '')
    >>> msg = Message(email.message_from_string(msg_text))
    >>> msg['Description']
    'First line of description.\nSecond line of description.\n\nFourth line!\n'

    Message should render even if values contain newlines.

    >>> print(msg)
    Name: Foo
    Version: 3.0
    License: blah
            de-blah
    Description: First line of description.
            Second line of description.
    <BLANKLINE>
            Fourth line!
    <BLANKLINE>
    <BLANKLINE>
    )
Ú
ClassifierzObsoletes-DistÚPlatformzProject-URLzProvides-DistzProvides-ExtrazRequires-DistzRequires-ExternalzSupported-PlatformÚDynamicÚorigc                 ól   •— t         ‰| �  | «      }t        |«      j                  t        |«      «       |S ©N)ÚsuperÚ__new__ÚvarsÚupdate)Úclsr$   ÚresÚ	__class__s      €r   r(   zMessage.__new__N   s,   ø€ Ü‰g‰o˜cÓ"ˆÜˆS‹	×Ñœ˜d›Ô$Øˆ
r   c                 ó.   — | j                  «       | _        y r&   )Ú_repair_headersÚ_headers)r   ÚargsÚkwargss      r   Ú__init__zMessage.__init__S   s   € Ø×,Ñ,Ó.ˆ�r   c                 ó    •— t         ‰| �  «       S r&   )r'   Ú__iter__©r   r-   s    €r   r5   zMessage.__iter__W   s   ø€ Ü‰wÑÓ!Ð!r   c                 ó@   •— t         ‰| �  |«      }|€t        |«      ‚|S )a"  
        Override parent behavior to typical dict behavior.

        ``email.message.Message`` will emit None values for missing
        keys. Typical mappings, including this ``Message``, will raise
        a key error for missing keys.

        Ref python/importlib_metadata#371.
        )r'   Ú__getitem__ÚKeyError)r   Úitemr,   r-   s      €r   r8   zMessage.__getitem__Z   s(   ø€ ô ‰gÑ! $Ó'ˆØˆ;Ü˜4“.Ð Øˆ
r   c                 óä   — d„ }t        | «      d   D ��cg c]  \  }}| ||«      f‘Œ }}}| j                  r2|j                  d| j                  «       f«       | j	                  d«       |S c c}}w )Nc                 óL   — d}| rd|z   | vr| S t        j                  || z   «      S )zCorrect for RFC822 indentationr   ú
)r   Údedent)r   r   s     r   Úredentz'Message._repair_headers.<locals>.redentj   s-   € àˆFÙ˜D 6™M°Ñ6Ø�Ü—?‘? 6¨E¡>Ó2Ð2r   r0   ÚDescriptionÚ )r)   Ú_payloadÚappendÚget_payloadÚset_payload)r   r?   Úkeyr   Úheaderss        r   r/   zMessage._repair_headersi   sl   € ò	3ô ;?¸t»*ÀZÑ:P×Q©J¨C°�C™ ›Ò'ÐQˆÑQØ�=Š=Ø�N‰N˜M¨4×+;Ñ+;Ó+=Ð>Ô?Ø×Ñ˜RÔ Øˆùó	 Rs   •A,c                 ó4   •— t         ‰| �  t        «       ¬«      S )N)Úpolicy)r'   Ú	as_stringr   r6   s    €r   rJ   zMessage.as_stringw   s   ø€ Ü‰wÑ ¬	«Ð Ó4Ð4r   c           	      óT   ‡ — ˆ fd„}t        t        |t        t        ‰ «      «      «      S )z[
        Convert PackageMetadata to a JSON-compatible format
        per PEP 0566.
        c                 óÊ   •— | ‰j                   v r‰j                  | «      n‰|    }| dk(  rt        j                  d|«      }| j	                  «       j                  dd«      }||fS )NÚKeywordsz\s+ú-Ú_)Úmultiple_use_keysÚget_allÚreÚsplitÚlowerÚreplace)rF   r   Útkr   s      €r   Ú	transformzMessage.json.<locals>.transform�   s_   ø€ Ø),°×0FÑ0FÑ)F�D—L‘L Ô%ÈDÐQTÉIˆEØ�jÒ ÜŸ™ ¨Ó/�Ø—‘“×$Ñ$ S¨#Ó.ˆBØ�u�9Ðr   )ÚdictÚmapr   )r   rW   s   ` r   ÚjsonzMessage.jsonz   s#   ø€ ô	ô ”C˜	¤3¤z°4Ó#8Ó9Ó:Ð:r   )r   r   r   Ú__doc__ÚsetrY   r   rP   ÚemailÚmessager    r(   r3   r5   r8   r/   rJ   ÚpropertyrZ   Ú__classcell__)r-   s   @r   r    r       sn   ø„ ñ"ñH ÙØòó	
óÐð"ð˜5Ÿ=™=×0Ñ0õ ò
/ô"ôòô5ð ñ;ó ô;r   r    )Úemail.messager]   Úemail.policyrR   r   Ú_textr   rI   ÚEmailPolicyr   r^   r    r
   r   r   ú<module>re      sB   ðÛ Û Û 	Û å ô1�—‘×(Ñ(ô 1ôt;ˆe�m‰m×#Ñ#õ t;r   