
    Ci<                     N    S SK JrJr  S SKJr  S SKrS SKJr  SS jrS r	S	S jr
g)
    )absolute_importunicode_literals)strN)is_containerc                    / nU R                  5        GHC  u  p4SUR                  0nUR                  (       a  UR                  US'   UR                  (       a  UR                  US'   UR                  (       a  UR                  US'   UR
                  (       a  UR
                  US'   UR                  (       a  UR                  US'   UR                  (       a  UR                  US'   [        U5      (       a  / US'   U(       aB  [        U5      S	:  a3  US
   S   (       a  US
   S   R                  U5        GM&  U/US
   S'   GM2  UR                  U5        GMF     U$ )zsWalk the complete AST, only returning needed data.

This removes circular references and allows us to output
JSON.
typeliteralstring_contenttitleinfodestination	list_datachildrenr   )walkertr	   r
   r   r   r   r   r   lenappend)objtopnodeasubnodeenteredreps         a/var/www/html/backend/Backoffice_Marketplace/venv/lib/python3.13/site-packages/commonmark/dump.pypreparer      s    	AJJLGII
 ??$__C	N!!$+$:$:C !=="==CL<<!,,CK!(!4!4C&00C   C
Os1vzuZ "j!((-%(E"j!HHSM? )@ H    c                 D    [        U 5      n[        R                  " USSS9$ )z6Output AST in JSON form, this is destructive of block.   T)indent	sort_keys)r   jsondumps)r   prepareds     r   dumpJSONr%   2   s    s|H::hqD99r   c                 	   U(       a  SU-  S-   OSn[        US-   U R                  -   S-   5        U R                  S:X  d'  [        SU-   S-   U R                  =(       d    S-   5        U R                  S:X  d'  [        SU-   S-   U R                  =(       d    S-   5        U R                  S:X  d'  [        SU-   S-   U R                  =(       d    S-   5        U R
                  (       a'  [        SU-   S	-   [        U R
                  5      -   5        U R                  (       a'  [        SU-   S
-   [        U R                  5      -   5        U R                  (       a'  [        SU-   S-   [        U R                  5      -   5        U R                  S:X  d'  [        SU-   S-   U R                  =(       d    S-   5        U R                  S:X  d'  [        SU-   S-   U R                  =(       d    S-   5        U R                  S:X  d'  [        SU-   S-   U R                  =(       d    S-   5        U R                  R                  S5      (       Ga  [        SU-   S-   5        [        SU-   S-   U R                  R                  S5      -   5        U R                  R                  S5      (       a!  [        SU-   S-   U R                  S   -   5        U R                  R                  S5      (       a6  [        SU-   S-   [        U R                  R                  S5      5      -   5        U R                  R                  S5      (       a-  [        SU-   S-   U R                  R                  S5      -   5        U R                  R                  S5      (       a6  [        SU-   S-   [        U R                  R                  S5      5      -   5        U R                  R                  S5      (       a6  [        SU-   S-   [        U R                  R                  S5      5      -   5        U R                  (       ah  [        SU-   S-   5        U R                  5       nUR                  5       nUb3  USL a-  [        US   US -   S!S"9  UR                  5       nUb  USL a  M+  ggggg)#zPrint out a block/entire AST.	z->  []zTitle: zInfo: zDestination: zOpen: zLast line blank: zSourcepos: zString content: z	Literal: r   zList Data: z		z	[type] = bullet_charz[bullet_char] = startz
[start] = 	delimiterz[delimiter] = paddingz[padding] = marker_offsetz[marker_offset] = z	Children:NFnode   T)r   )printr   r   r   r   is_openr   last_line_blank	sourceposr
   r	   r   getr   nxtdumpAST)r   indr   indCharr   r7   s         r   r8   r8   8   s   &)tczU"rG	'C-#%%
#
%&99?dWny(CIIO<=88r>dWnx'388>r:;??b dWn.#//2GRHI
{{dWnx'#ckk*::;
7N003s7J7J3KK	M
}}dWn},s3==/AAB#dWn11S5G5G5M2NO88r>dWnx'388>r:;;;"dWn{*ckk.?R@A
}}  dWn},-fw,s}}/@/@/HHI==]++ #55m,-. ==W%% </CMM%%g./01 ==[)) #33!!+./0 ==Y'' >1CMM%%i0123 ==_-- #77CMM%%o6789 zzdWn{*+jjlo'U"2CKq$7**,C o'U"2o"2o	 r   )F)r   F)
__future__r   r   builtinsr   r"   commonmark.noder   r   r%   r8    r   r   <module>r?      s!    8   ('T:4r   