Ë
    :vžj
  ã                  óD   — d Z ddlmZ ddlmZmZ d„ Zdd„Zd„ Zd„ Z	d	„ Z
y
)z8Code for converting notebooks to and from the v2 format.é    )Úannotationsé   )ÚnbformatÚnbformat_minorc                ó  — t        | t        «      r(| j                  «       D ]  \  }}t        |«      | |<   Œ | S t        | t        «      r#t        | «      D ]  \  }}t        |«      | |<   Œ | S t        | t        «      r| j                  d«      } | S )z^There should be no bytes objects in a notebook

    v2 stores png/jpeg as b64 ascii bytes
    Úascii)Ú
isinstanceÚdictÚitemsÚ_unbytesÚlistÚ	enumerateÚbytesÚdecode)ÚobjÚkÚvÚis       úd/workspace/moltex-experiments/.pixi/envs/default/lib/python3.12/site-packages/nbformat/v3/convert.pyr   r   
   s‡   € ô
 �#”tÔØ—I‘I–K‰DˆAˆqÜ˜a“[ˆC�ŠFð  ð €Jô 
�CœÔ	Ü˜c–N‰DˆAˆqÜ˜a“[ˆC�ŠFð #ð
 €Jô 
�CœÔ	à�j‰j˜Ó!ˆØ€Jó    c                ó  — |dk(  rPt         | _         t        | _        d| _        t        | «      } | d   D ]  }|d   D ]  }|j	                  di «       Œ Œ  | S |dk(  r|t        k7  r|| _        t        | _        | S d|z  }t        |«      ‚)aP  Convert a notebook to v3.

    Parameters
    ----------
    nb : NotebookNode
        The Python representation of the notebook to convert.
    from_version : int
        The original version of the notebook to convert.
    from_minor : int
        The original minor version of the notebook to convert (only relevant for v >= 3).
    é   Ú
worksheetsÚcellsÚmetadataé   zZCannot convert a notebook directly from v%s to v3.  Try using the nbformat.convert module.)r   r   Úorig_nbformatr   Ú
setdefaultÚorig_nbformat_minorÚ
ValueError)ÚnbÚfrom_versionÚ
from_minorÚwsÚcellÚmsgs         r   Úupgrader'      s¢   € ð �qÒäˆŒÜ*ˆÔàˆÔÜ�b‹\ˆØ�\Ô"ˆBØ˜7œ�Ø—‘ 
¨BÕ/ñ $ð #ð ˆ	Ø�qÒØœÒ'Ø%/ˆBÔ"Ü*ˆÔØˆ	ð	1Ø3?ñ	@ð ô �S‹/Ðr   c                ój   — d| _         | j                  dd«      }d|z  dz   | j                  z   | _        y)z-turn heading cell into corresponding markdownÚmarkdownÚlevelr   Ú#Ú N)Ú	cell_typeÚpopÚsource)r%   r*   s     r   Úheading_to_mdr0   >   s2   € à€D„NØ�H‰H�W˜aÓ €EØ˜‘+ Ñ# d§k¡kÑ1€D…Kr   c                ó   — d| _         y)zlet raw passthrough as markdownr)   N)r-   )r%   s    r   Ú	raw_to_mdr2   E   s	   € à€D…Nr   c                óæ   — | j                   dk7  r| S d| _         | j                  D ]I  }|j                  D ]8  }|j                  dk(  rt	        |«       Œ|j                  dk(  sŒ.t        |«       Œ: ŒK | S )z”Convert a v3 notebook to v2.

    Parameters
    ----------
    nb : NotebookNode
        The Python representation of the notebook to convert.
    r   r   ÚheadingÚraw)r   r   r   r-   r0   r2   )r!   r$   r%   s      r   Ú	downgrader6   J   sf   € ð 
‡{�{�aÒØˆ	Ø€B„KØ�mŒmˆØ—H”HˆDØ�~‰~ Ò*Ü˜dÕ#Ø—‘ 5Ó(Ü˜$•ñ	 ð ð €Ir   N)r   r   )Ú__doc__Ú
__future__r   Únbbaser   r   r   r'   r0   r2   r6   © r   r   Ú<module>r;      s*   ðÙ >õ #ç ,òó" òF2ò ó
r   