
    ,h                     `    d dgZ ddlmZ ddl  G d de      Z G d d      Z G d d       Zy	)
EmitterEmitterError   )	YAMLError)*c                       e Zd Zy)r   N)__name__
__module____qualname__     N/var/www/html/Resume-Scraper/venv/lib/python3.12/site-packages/yaml/emitter.pyr   r      s    r   c                       e Zd Zd Zy)ScalarAnalysisc	                 t    || _         || _        || _        || _        || _        || _        || _        || _        y Nscalarempty	multilineallow_flow_plainallow_block_plainallow_single_quotedallow_double_quotedallow_block)	selfr   r   r   r   r   r   r   r   s	            r   __init__zScalarAnalysis.__init__   sA     
" 0!2#6 #6 &r   N)r   r	   r
   r   r   r   r   r   r      s    'r   r   c                      e Zd ZdddZ	 	 dPdZd Zd Zd Zd	 ZdQd
Z	d Z
d Zd ZdRdZd Zd Z	 	 dSdZd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd ZdRdZd Zd  ZdRd!Z d" Z!d# Z"d$ Z#d% Z$d& Z%d' Z&d( Z'd) Z(d* Z)d+ Z*d, Z+d- Z,d. Z-d/ Z.d0 Z/d1 Z0d2 Z1d3 Z2d4 Z3	 dQd5Z4d6 Z5dTd7Z6d8 Z7d9 Z8dUd:Z9d;d<d=d>d?d@dAdBdCdDdEdFdGdHdIdJZ:dUdKZ;dL Z<dM Z=dN Z>dUdOZ?y)Vr   !z!!)r   ztag:yaml.org,2002:Nc                    || _         d | _        g | _        | j                  | _        g | _        d | _        g | _        d | _        d| _	        d| _
        d| _        d| _        d| _        d| _        d| _        d| _        d| _        d| _        || _        || _        d| _        |rd|cxk  rdk  r
n n|| _        d| _        |r|| j*                  dz  kD  r|| _        d| _        |d	v r|| _        d | _        d | _        d | _        d | _        d | _        y )
N    FT   r   
   P   
)r$   z
)streamencodingstatesexpect_stream_startstateeventseventindentsindent
flow_levelroot_contextsequence_contextmapping_contextsimple_key_contextlinecolumn
whitespace	indention
open_ended	canonicalallow_unicodebest_indent
best_widthbest_line_breaktag_prefixesprepared_anchorprepared_taganalysisstyle)r   r&   r9   r.   widthr:   
line_breaks          r   r   zEmitter.__init__&   s2      --
 
   " %$"' 	   #*a&o2o%DUT--a//#DO#--#-D  !  $  
r   c                      g | _         d | _        y r   )r(   r*   r   s    r   disposezEmitter.disposej   s    
r   c                     | j                   j                  |       | j                         sI| j                   j                  d      | _        | j                          d | _        | j                         sHy y Nr    )r+   appendneed_more_eventspopr,   r*   r   r,   s     r   emitzEmitter.emito   sR    5!'')+DJJJLDJ '')r   c                    | j                   sy| j                   d   }t        |t              r| j                  d      S t        |t              r| j                  d      S t        |t
              r| j                  d      S y)NTr    r   r!      F)r+   
isinstanceDocumentStartEventneed_eventsSequenceStartEventMappingStartEventrM   s     r   rK   zEmitter.need_more_eventsx   sp    {{Ae/0##A&&12##A&&01##A&&r   c                    d}| j                   dd  D ]S  }t        |t        t        f      r|dz  }n.t        |t        t
        f      r|dz  }nt        |t              rd}|dk  sS y t        | j                         |dz   k  S )Nr    r   F)r+   rQ   rR   CollectionStartEventDocumentEndEventCollectionEndEventStreamEndEventlen)r   countlevelr,   s       r   rS   zEmitter.need_events   s    [[_ 	E%"46J!KL
E$46H#IJ
E>2qy	 DKK 57*+r   c                     | j                   j                  | j                         | j                  |r| j                  | _        y d| _        y |s | xj                  | j                  z  c_        y y rI   )r-   rJ   r.   r;   )r   flow
indentlesss      r   increase_indentzEmitter.increase_indent   sU    DKK(;;"..KK4+++K r   c                 8   t        | j                  t              ri| j                  j                  r1t	        | j
                  d      s| j                  j                  | _        | j                          | j                  | _        y t        d| j                  z        )Nr'   z%expected StreamStartEvent, but got %s)
rQ   r,   StreamStartEventr'   hasattrr&   write_stream_startexpect_first_document_startr*   r   rF   s    r   r)   zEmitter.expect_stream_start   sq    djj"23zz""74;;
+K $

 3 3##%99DJFjj ! " "r   c                 2    t        d| j                  z        )Nzexpected nothing, but got %s)r   r,   rF   s    r   expect_nothingzEmitter.expect_nothing   s    9DJJFGGr   c                 &    | j                  d      S NT)first)expect_document_startrF   s    r   rg   z#Emitter.expect_first_document_start   s    )))55r   c                    t        | j                  t              r,| j                  j                  s| j                  j                  r.| j
                  r"| j                  dd       | j                          | j                  j                  r6| j                  | j                  j                        }| j                  |       | j                  j                         | _        | j                  j                  rt        | j                  j                  j                               }|D ]^  }| j                  j                  |   }|| j                  |<   | j                  |      }| j!                  |      }| j#                  ||       ` |xrk | j                  j$                   xrR | j&                   xrC | j                  j                   xr* | j                  j                   xr | j)                          }|s>| j                          | j                  dd       | j&                  r| j                          | j*                  | _        y t        | j                  t.              rP| j
                  r"| j                  dd       | j                          | j1                          | j2                  | _        y t5        d| j                  z        )N...T---z'expected DocumentStartEvent, but got %s)rQ   r,   rR   versiontagsr8   write_indicatorwrite_indentprepare_versionwrite_version_directiveDEFAULT_TAG_PREFIXEScopyr>   sortedkeysprepare_tag_handleprepare_tag_prefixwrite_tag_directiveexplicitr9   check_empty_documentexpect_document_rootr*   r[   write_stream_endri   r   )	r   rl   version_texthandleshandleprefixhandle_textprefix_textimplicits	            r   rm   zEmitter.expect_document_start   s.   djj"45

""djjoo4??$$UD1!!#zz!!#33DJJ4F4FG,,\: $ 9 9 > > @Dzz !5!5!78% GF!ZZ__V4F06D%%f-"&"9"9&"AK"&"9"9&"AK,,[+FG  8djj&9&9"9 8$..>P 8 JJ...87;zz3F8 5577  !!#$$UD1>>%%'22DJ

N3$$UD1!!#!!#,,DJHjj ! " "r   c                 :   t        | j                  t              rj| j                          | j                  j                  r"| j                  dd       | j                          | j                          | j                  | _        y t        d| j                  z        )Nro   Tz%expected DocumentEndEvent, but got %s)
rQ   r,   rY   rt   r~   rs   flush_streamrm   r*   r   rF   s    r   expect_document_endzEmitter.expect_document_end   s{    djj"23zz""$$UD1!!#33DJFjj ! " "r   c                 r    | j                   j                  | j                         | j                  d       y )NT)root)r(   rJ   r   expect_noderF   s    r   r   zEmitter.expect_document_root   s+    4334d#r   c                    || _         || _        || _        || _        t	        | j
                  t              r| j                          y t	        | j
                  t        t        f      rA| j                  d       | j                          t	        | j
                  t              r| j                          y t	        | j
                  t              r`| j                  s2| j                  s&| j
                  j                   s| j#                         r| j%                          y | j'                          y t	        | j
                  t(              r`| j                  s2| j                  s&| j
                  j                   s| j+                         r| j-                          y | j/                          y y t1        d| j
                  z        )N&zexpected NodeEvent, but got %s)r0   r1   r2   r3   rQ   r,   
AliasEventexpect_aliasScalarEventrX   process_anchorprocess_tagexpect_scalarrT   r/   r9   
flow_stylecheck_empty_sequenceexpect_flow_sequenceexpect_block_sequencerU   check_empty_mappingexpect_flow_mappingexpect_block_mappingr   )r   r   sequencemapping
simple_keys        r   r   zEmitter.expect_node   s8     (&",djj*-

[2F$GH$$**k2""$DJJ(:;??dnn

8M8M446--/..0DJJ(9:??dnn

8M8M335,,.--/ ; ?$**LMMr   c                     | j                   j                  t        d      | j                  d       | j                  j                         | _        y )Nz!anchor is not specified for aliasr   )r,   anchorr   r   r(   rL   r*   rF   s    r   r   zEmitter.expect_alias  s>    ::$BCCC [[__&
r   c                     | j                  d       | j                          | j                  j                         | _        | j
                  j                         | _        y )NTr`   )rb   process_scalarr-   rL   r.   r(   r*   rF   s    r   r   zEmitter.expect_scalar
  sE    $'ll&&([[__&
r   c                     | j                  ddd       | xj                  dz  c_        | j                  d       | j                  | _        y )N[Tr6   r   r   )rs   r/   rb   expect_first_flow_sequence_itemr*   rF   s    r   r   zEmitter.expect_flow_sequence  sC    S$481$'99
r   c                    t        | j                  t              rf| j                  j	                         | _        | xj                  dz  c_        | j                  dd       | j                  j	                         | _	        y | j                  s| j                  | j                  kD  r| j                          | j                  j                  | j                         | j!                  d       y )Nr   ]FTr   )rQ   r,   SequenceEndEventr-   rL   r.   r/   rs   r(   r*   r9   r5   r<   rt   rJ   expect_flow_sequence_itemr   rF   s    r   r   z'Emitter.expect_first_flow_sequence_item  s    djj"23,,**,DKOOq O  e,*DJ~~t!>!!#KKt==>d+r   c                 \   t        | j                  t              r| j                  j	                         | _        | xj                  dz  c_        | j                  r"| j                  dd       | j                          | j                  dd       | j                  j	                         | _        y | j                  dd       | j                  s| j                  | j                  kD  r| j                          | j                  j                  | j                         | j!                  d       y )Nr   ,Fr   Tr   )rQ   r,   r   r-   rL   r.   r/   r9   rs   rt   r(   r*   r5   r<   rJ   r   r   rF   s    r   r   z!Emitter.expect_flow_sequence_item$  s    djj"23,,**,DKOOq O~~$$S%0!!#  e,*DJ  e,~~t!>!!#KKt==>d+r   c                     | j                  ddd       | xj                  dz  c_        | j                  d       | j                  | _        y )N{Tr   r   r   )rs   r/   rb   expect_first_flow_mapping_keyr*   rF   s    r   r   zEmitter.expect_flow_mapping6  sC    S$481$'77
r   c                    t        | j                  t              rf| j                  j	                         | _        | xj                  dz  c_        | j                  dd       | j                  j	                         | _	        y | j                  s| j                  | j                  kD  r| j                          | j                  sI| j                         r9| j                  j                  | j                          | j#                  dd       y | j                  dd       | j                  j                  | j$                         | j#                  d       y )Nr   }FTr   r   ?r   )rQ   r,   MappingEndEventr-   rL   r.   r/   rs   r(   r*   r9   r5   r<   rt   check_simple_keyrJ    expect_flow_mapping_simple_valuer   expect_flow_mapping_valuerF   s    r   r   z%Emitter.expect_first_flow_mapping_key<  s    djj/2,,**,DKOOq O  e,*DJ~~t!>!!#>>d&;&;&=""4#H#HI  $ ?$$S$/""4#A#AB   .r   c                 *   t        | j                  t              r| j                  j	                         | _        | xj                  dz  c_        | j                  r"| j                  dd       | j                          | j                  dd       | j                  j	                         | _        y | j                  dd       | j                  s| j                  | j                  kD  r| j                          | j                  sI| j                         r9| j                  j                  | j                          | j#                  dd       y | j                  dd       | j                  j                  | j$                         | j#                  d       y )	Nr   r   Fr   Tr   r   r   )rQ   r,   r   r-   rL   r.   r/   r9   rs   rt   r(   r*   r5   r<   r   rJ   r   r   r   rF   s    r   expect_flow_mapping_keyzEmitter.expect_flow_mapping_keyM  s   djj/2,,**,DKOOq O~~$$S%0!!#  e,*DJ  e,~~t!>!!#>>d&;&;&=""4#H#HI  $ ?$$S$/""4#A#AB   .r   c                     | j                  dd       | j                  j                  | j                         | j	                  d       y N:FTr   )rs   r(   rJ   r   r   rF   s    r   r   z(Emitter.expect_flow_mapping_simple_valueb  s;    S%(4778&r   c                     | j                   s| j                  | j                  kD  r| j                          | j	                  dd       | j
                  j                  | j                         | j                  d       y )Nr   Tr   )	r9   r5   r<   rt   rs   r(   rJ   r   r   rF   s    r   r   z!Emitter.expect_flow_mapping_valueg  s]    >>T[[4??:S$'4778&r   c                     | j                   xr | j                   }| j                  d|       | j                  | _        y )NF)r`   ra   )r2   r7   rb    expect_first_block_sequence_itemr*   )r   ra   s     r   r   zEmitter.expect_block_sequencep  s9    **A4>>/A
%J?::
r   c                 &    | j                  d      S rk   )expect_block_sequence_itemrF   s    r   r   z(Emitter.expect_first_block_sequence_itemu  s    ..T.::r   c                 p   |sYt        | j                  t              r?| j                  j	                         | _        | j                  j	                         | _        y | j                          | j                  ddd       | j                  j                  | j                         | j                  d       y )N-Tr7   r   )rQ   r,   r   r-   rL   r.   r(   r*   rt   rs   rJ   r   r   r   rl   s     r   r   z"Emitter.expect_block_sequence_itemx  s    DJJ0@A,,**,DK*DJ  dd ;KKt>>?d+r   c                 J    | j                  d       | j                  | _        y )NFr   )rb   expect_first_block_mapping_keyr*   rF   s    r   r   zEmitter.expect_block_mapping  s     %(88
r   c                 &    | j                  d      S rk   )expect_block_mapping_keyrF   s    r   r   z&Emitter.expect_first_block_mapping_key  s    ,,4,88r   c                    |sYt        | j                  t              r?| j                  j	                         | _        | j                  j	                         | _        y | j                          | j                         r9| j                  j                  | j                         | j                  dd       y | j                  ddd       | j                  j                  | j                         | j                  d       y )NTr   r   r   r   )rQ   r,   r   r-   rL   r.   r(   r*   rt   r   rJ   !expect_block_mapping_simple_valuer   rs   expect_block_mapping_valuer   s     r   r   z Emitter.expect_block_mapping_key  s    DJJ@,,**,DK*DJ$$&""4#I#IJ  $ ?$$S$$$?""4#B#BC   .r   c                     | j                  dd       | j                  j                  | j                         | j	                  d       y r   )rs   r(   rJ   r   r   rF   s    r   r   z)Emitter.expect_block_mapping_simple_value  s;    S%(4889&r   c                     | j                          | j                  ddd       | j                  j                  | j                         | j                  d       y )Nr   Tr   r   )rt   rs   r(   rJ   r   r   rF   s    r   r   z"Emitter.expect_block_mapping_value  sL    S$$74889&r   c                     t        | j                  t              xr+ | j                  xr t        | j                  d   t              S rI   )rQ   r,   rT   r+   r   rF   s    r   r   zEmitter.check_empty_sequence  s<    4::'9: At{{ At{{1~/?@	Br   c                     t        | j                  t              xr+ | j                  xr t        | j                  d   t              S rI   )rQ   r,   rU   r+   r   rF   s    r   r   zEmitter.check_empty_mapping  s;    4::'89 @dkk @t{{1~?	Ar   c                    t        | j                  t              r| j                  sy| j                  d   }t        |t              xr= |j
                  d u xr- |j                  d u xr |j                  xr |j                  dk(  S )NFr     )	rQ   r,   rR   r+   r   r   tagr   valuerM   s     r   r   zEmitter.check_empty_document  sy    $**&89A5+. O5<<43G OII%O*/..O=B[[B=N	Pr   c                    d}t        | j                  t              rd| j                  j                  N| j                  *| j                  | j                  j                        | _        |t        | j                        z  }t        | j                  t        t        f      rd| j                  j                  N| j                  *| j                  | j                  j                        | _
        |t        | j                        z  }t        | j                  t              rX| j                  *| j                  | j                  j                        | _        |t        | j                  j                        z  }|dk  xr t        | j                  t               xsp t        | j                  t              xr0 | j                  j"                   xr | j                  j$                   xs" | j'                         xs | j)                         S )Nr       )rQ   r,   	NodeEventr   r?   prepare_anchorr\   r   rX   r   r@   prepare_tagrA   analyze_scalarr   r   r   r   r   r   r   )r   lengths     r   r   zEmitter.check_simple_key  s   djj),1B1B1N##+'+':':4::;L;L'M$c$..//Fdjj;0D"EFJJNN.  ($($4$4TZZ^^$D!c$++,,Fdjj+.}}$ $ 3 3DJJ4D4D Ec$--..//F J*TZZ"D #I4::{3 P MM///P8<8O8O4O#I ((*#I /3.F.F.H	Kr   c                    | j                   j                  d | _        y | j                  *| j                  | j                   j                        | _        | j                  r| j	                  || j                  z   d       d | _        y )NT)r,   r   r?   r   rs   )r   	indicators     r   r   zEmitter.process_anchor  sr    ::$#'D '#'#6#6tzz7H7H#ID   4+?+?!?F#r   c                    | j                   j                  }t        | j                   t              r| j                  | j                         | _        | j                  r|X| j                  dk(  r| j                   j                  d   s(| j                  dk7  r!| j                   j                  d   rd | _        y | j                   j                  d   r8|6d}d | _        n,| j                  r|| j                   j                  rd | _        y |t        d      | j                  | j                  |      | _        | j                  r| j                  | j                  d       d | _        y )Nr   r    r   r   ztag is not specifiedT)r,   r   rQ   r   rB   choose_scalar_styler9   r   r@   r   r   rs   )r   r   s     r   r   zEmitter.process_tag  s#   jjnndjj+.zz!!557
^^s{**"tzz':':1'= JJ",1D1DQ1G$(!zz""1%#+$(!NNcktzz7J7J$(!;566$ $ 0 0 5D  !2!2D9 r   c                    | j                   *| j                  | j                  j                        | _         | j                  j                  dk(  s| j
                  ry| j                  j                  s| j                  j                  d   r}| j                  r,| j                   j                  s[| j                   j                  sE| j                  r| j                   j                  s"| j                  s| j                   j                  ry| j                  j                  r\| j                  j                  dv rD| j                  s8| j                  s,| j                   j                  r| j                  j                  S | j                  j                  r| j                  j                  dk(  r9| j                   j                  r#| j                  r| j                   j                  syy)N"r    r   z|>')rA   r   r,   r   rB   r9   r   r3   r   r   r/   r   r   r   r   rF   s    r   r   zEmitter.choose_scalar_style  s<   ==  //

0@0@ADM::s"dnnzzDJJ$7$7$:,,]]((DMM,C,C__)G)G OO0O0O::

 0 0D 8OOD,C,C11zz'''zz4::#3#3t#;1100T]]5L5Lr   c                    | j                   *| j                  | j                  j                        | _         | j                  | j                         | _        | j                   }| j                  dk(  r'| j                  | j                   j                  |       n| j                  dk(  r'| j                  | j                   j                  |       n| j                  dk(  r&| j                  | j                   j                         n[| j                  dk(  r&| j                  | j                   j                         n&| j                  | j                   j                  |       d | _         d | _        y )Nr   r   >|)rA   r   r,   r   rB   r   r3   write_double_quotedr   write_single_quotedwrite_foldedwrite_literalwrite_plain)r   splits     r   r   zEmitter.process_scalar  s   ==  //

0@0@ADM::113DJ,,, ::$$T]]%9%95AZZ4$$T]]%9%95AZZ3dmm223ZZ3t}}334T]]1159
r   c                 D    |\  }}|dk7  rt        d||fz        d||fz  S )Nr   zunsupported YAML version: %d.%dz%d.%dr   )r   rq   majorminors       r   ru   zEmitter.prepare_version  s6    uA:@E5>QRR%''r   c                     |st        d      |d   dk7  s|d   dk7  rt        d|z        |dd D ]A  }d|cxk  rdk  rn d	|cxk  rd
k  rn d|cxk  rdk  r+n |dv r2t        d|d|       |S )Nztag handle must not be emptyr    r   rW   z*tag handle must start and end with '!': %rr   09AZaz-_invalid character z in the tag handle: r   )r   r   chs      r   r{   zEmitter.prepare_tag_handle!  s    =>>!9vbzS0KfTUU2, 	(B2$$r(8S(8C2<L<LTz"v$' ( (	(
 r   c                    |st        d      g }dx}}|d   dk(  rd}|t        |      k  r||   }d|cxk  rdk  s n d|cxk  rdk  sn d	|cxk  rd
k  sn |dv r|dz  }nU||k  r|j                  |||        |dz   x}}|j                  d      }|D ]  }|j                  dt	        |      z         ! |t        |      k  r||k  r|j                  |||        dj                  |      S )Nztag prefix must not be emptyr    r   r   r   r   r   r   r   r   z-;/?!:@&=+$,_.~*'()[]utf-8%%%02Xr   )r   r\   rJ   encodeordjoin)r   r   chunksstartendr   datas          r   r|   zEmitter.prepare_tag_prefix-  s   =>>!9CCKBbC3"#3#3sb7GC7G55q3;MM&s"34!!e#yy) 6BMM(SW"456 CK 3;MM&s+,wwvr   c                    |st        d      |dk(  r|S d }|}t        | j                  j                               }|D ]N  }|j	                  |      s|dk(  st        |      t        |      k  s2| j                  |   }|t        |      d  }P g }dx}}|t        |      k  r||   }	d|	cxk  rdk  s*n d|	cxk  rdk  sn d|	cxk  rd	k  sn |	d
v s
|	dk(  r|dk7  r|dz  }nL||k  r|j                  |||        |dz   x}}|	j                  d      }
|
D ]  }	|j                  d|	z          |t        |      k  r||k  r|j                  |||        dj                  |      }|r||S d|z  S )Nztag must not be emptyr   r    r   r   r   r   r   r   z-;/?:@&=+$,_.~*'()[]r   r   r  r   z!<%s>)	r   ry   r>   rz   
startswithr\   rJ   r  r  )r   r   r   suffixprefixesr   r  r  r  r   r  suffix_texts               r   r   zEmitter.prepare_tagD  s   677#:J$++0023 	+F~~f%3#f+C*@**62S[\*		+
 CKBbC3"#3#3sb7GC7G44c	fmq3;MM&s"34!!e#yy) 1BMM(R-01 CK 3;MM&s+,ggfo#[11[((r   c                     |st        d      |D ]A  }d|cxk  rdk  rn d|cxk  rdk  rn d|cxk  rdk  r+n |dv r2t        d	|d
|       |S )Nzanchor must not be emptyr   r   r   r   r   r   r   r   z in the anchor: r   )r   r   r   s      r   r   zEmitter.prepare_anchorh  sj    9:: 	(B2$$r(8S(8C2<L<LTz"v$' ( (	(
 r   c           
         |st        |ddddddd      S d}d}d}d}d}d}d}d}	d}
d}|j                  d      s|j                  d      rd}d}d}t        |      dk(  xs |d   dv }d}d}d}|t        |      k  r*||   }|dk(  r|d	v rd}d}|d
v rd}|rd}|dk(  r#|r!d}d}n|dv rd}|dk(  rd}|rd}|dk(  r|rd}d}|dv rd}|dk(  sRd|cxk  rdk  sGn |dk(  s(d|cxk  rdk  sn d|cxk  rdk  sn d|cxk  rdk  rn n|dk7  rd}| j                  sd}nd}|dk(  r#|dk(  rd}|t        |      dz
  k(  rd}|rd}
d}d}n+|dv r#|dk(  rd}|t        |      dz
  k(  rd}	|rd}d}d}nd}d}|dz  }|dv }|dz   t        |      k\  xs
 ||dz      dv }|t        |      k  r*d}d}d}d}d}|s|s|s|	rdx}}|rd}|
rdx}x}}|s|rdx}x}x}}|rdx}}|rd}|rd}t        |d||||||      S )NTFr   rp   ro   r   u     	
  r    z#,[]{}&*!|>'"%@`z?:r   z,?[]{}r   #	   
  r$    ~          ퟿      �u   𐀀u   􏿿   ﻿)r   r
  r\   r:   )r   r   block_indicatorsflow_indicatorsline_breaksspecial_charactersleading_spaceleading_breaktrailing_spacetrailing_breakbreak_spacespace_breakpreceded_by_whitespacefollowed_by_whitespaceprevious_spaceprevious_breakindexr   unicode_charactersr   r   r   r   r   s                           r   r   zEmitter.analyze_scalarr  sh    !tu%*d(,$ %' ' !"  U#v'8'8'?#"O "& #&f+"2 #9q	88 	  c&k!B z--&*O'+$:&*O-+/(9!7&*O'+$ >&*O9&*O-+/(9!7&*O'+$ ))"$J&B"8&"8&LFb$<H$<#r5X5'2<<".)-&---1*)-& SyA:$(MCKM)%)N!"&K!%!&++A:$(MCKM)%)N!"&K!&!%!&!& QJE&(,G&G"&+AgV&< 'C57O'BB #G c&k!N   "" ]!^3880 K INNN03F ,056 60 6+ 3880 $  %V{!1"3$7$7') 	)r   c                 f    t        | j                  d      r| j                  j                          y y )Nflush)re   r&   r+  rF   s    r   r   zEmitter.flush_stream  s%    4;;(KK )r   c                     | j                   rQ| j                   j                  d      r5| j                  j                  dj	                  | j                                y y y )Nzutf-16r  )r'   r
  r&   writer  rF   s    r   rf   zEmitter.write_stream_start  sA    ==T]]55h?KKhoodmm<= @=r   c                 $    | j                          y r   )r   rF   s    r   r   zEmitter.write_stream_end  s    r   c                 6   | j                   s|s|}nd|z   }|| _         | j                  xr || _        | xj                  t        |      z  c_        d| _        | j
                  r|j                  | j
                        }| j                  j                  |       y )Nr  F)	r6   r7   r5   r\   r8   r'   r  r&   r-  )r   r   need_whitespacer6   r7   r  s         r   rs   zEmitter.write_indicator   st    ??/Dy=D$5Is4y ==;;t}}-D$r   c                    | j                   xs d}| j                  r*| j                  |kD  s| j                  |k(  r| j                  s| j	                          | j                  |k  rcd| _        d|| j                  z
  z  }|| _        | j
                  r|j                  | j
                        }| j                  j                  |       y y )Nr    Tr  )	r.   r7   r5   r6   write_line_breakr'   r  r&   r-  )r   r.   r  s      r   rt   zEmitter.write_indent.  s    !~~v!5KK6)$//!!#;;"DOt{{*+D DK}}{{4==1KKd#  r   c                     || j                   }d| _        d| _        | xj                  dz  c_        d| _        | j
                  r|j                  | j
                        }| j                  j                  |       y )NTr   r    )	r=   r6   r7   r4   r5   r'   r  r&   r-  )r   r  s     r   r2  zEmitter.write_line_break;  s_    <''D		Q	==;;t}}-D$r   c                     d|z  }| j                   r|j                  | j                         }| j                  j                  |       | j	                          y )Nz	%%YAML %sr'   r  r&   r-  r2  )r   r   r  s      r   rv   zEmitter.write_version_directiveF  sC    \)==;;t}}-D$r   c                     d|d|}| j                   r|j                  | j                         }| j                  j                  |       | j	                          y )Nz%TAG r  r5  )r   r   r   r  s       r   r}   zEmitter.write_tag_directiveM  sC     +[9==;;t}}-D$r   c                    | j                  dd       d}d}dx}}|t        |      k  r,d }|t        |      k  r||   }|r||dk7  r|dz   |k(  r?| j                  | j                  kD  r&|r$|dk7  r|t        |      k7  r| j	                          ne||| }| xj                  t        |      z  c_        | j
                  r|j                  | j
                        }| j                  j                  |       |}n|rb||dvr||   dk(  r| j                          ||| D ])  }	|	dk(  r| j                          | j                  |	       + | j	                          |}nw|	|d	v s|dk(  rl||k  rg||| }| xj                  t        |      z  c_        | j
                  r|j                  | j
                        }| j                  j                  |       |}|dk(  r^d
}| xj                  dz  c_        | j
                  r|j                  | j
                        }| j                  j                  |       |dz   }|	|dk(  }|dv }|dz  }|t        |      k  r,| j                  dd       y )Nr   TFr    r  r   r  r$   
    
  z''r!   )
rs   r\   r5   r<   rt   r'   r  r&   r-  r2  )
r   textr   spacesbreaksr  r  r   r  brs
             r   r   zEmitter.write_single_quotedV  sI   T4(SYBSY#Y:sQw#~$++*GE %
sc$i/?))+#E#s4y0==#';;t}}#=D))$/E:+?!?E{d*--/"5o 6: 113 11"5	6
 %%'E:'<!<d
s{#E#s4y0==#';;t}}#=D))$/ #Tzq ==;;t}}5D!!$'a~) 441HC] SY^ 	T5)r   r   r   btnvfrer   \N_LP) 	r$   r%   r   rD  r  r  u    u    c                    | j                  dd       dx}}|t        |      k  rd }|t        |      k  r||   }|:|dv s6d|cxk  rdk  sTn | j                  rd|cxk  rdk  s:n d	|cxk  rd
k  s,n ||k  rg||| }| xj                  t        |      z  c_        | j                  r|j                  | j                        }| j                  j                  |       |}||| j                  v rd| j                  |   z   }n6|dk  rdt        |      z  }n"|dk  rdt        |      z  }ndt        |      z  }| xj                  t        |      z  c_        | j                  r|j                  | j                        }| j                  j                  |       |dz   }d|cxk  rt        |      dz
  k  r'n n#|dk(  s||k\  r| j                  ||z
  z   | j                  kD  r|r||| dz   }||k  r|}| xj                  t        |      z  c_        | j                  r|j                  | j                        }| j                  j                  |       | j                          d| _        d| _        ||   dk(  rbd}| xj                  t        |      z  c_        | j                  r|j                  | j                        }| j                  j                  |       |dz  }|t        |      k  r| j                  dd       y )Nr   Tr    u   "\  ﻿r  r  r  r  r  r  rD     ÿz\x%02Xu   ￿z\u%04Xz\U%08Xr   F)rs   r\   r:   r5   r'   r  r&   r-  ESCAPE_REPLACEMENTSr  r<   rt   r6   r7   )r   r9  r   r  r  r   r  s          r   r   zEmitter.write_double_quoted  s   S$'SYBSY#YzR#>>"b2F2 ..!'2!9!9#+r#=X#=3;c?DKK3t9,K}}#{{4==9KK%%d+E>T555#D$<$<R$@@v(3r72x(3r72(3r72KK3t9,K}}#{{4==9KK%%d+EE3$T1$")u|SY/$//AeE#t+3;Es4y(==;;t}}5D!!$'!!#"'!&;#%DKK3t9,K}}#{{4==9KK%%d+1HCa SYb 	S%(r   c                     d}|rG|d   dv r|t        | j                        z  }|d   dvr|dz  }|S t        |      dk(  s|d   dv r|d	z  }|S )
Nr   r    r8  rW   r  r   r   +)strr;   r\   )r   r9  hintss      r   determine_block_hintszEmitter.determine_block_hints  sp    Aw//T--..Bx33  Ta48/C#Cr   c                 Z   | j                  |      }| j                  d|z   d       |dd  dk(  rd| _        | j                          d}d}d}dx}}|t	        |      k  rd }|t	        |      k  r||   }|rt||dvr|s||dk7  r||   d	k(  r| j                          |dk(  }||| D ])  }	|	d	k(  r| j                          | j                  |	       + || j                          |}n!|r|dk7  r|d
z   |k(  r*| j                  | j                  kD  r| j                          ne||| }
| xj                  t	        |
      z  c_        | j                  r|
j                  | j                        }
| j                  j                  |
       |}n||dv ry||| }
| xj                  t	        |
      z  c_        | j                  r|
j                  | j                        }
| j                  j                  |
       || j                          |}|	|dv }|dk(  }|d
z  }|t	        |      k  ry y )Nr   TrW   rU  Fr    r  r  r$   r   r8  )rX  rs   r8   r2  r\   rt   r5   r<   r'   r  r&   r-  )r   r9  rW  r  r:  r;  r  r  r   r<  r  s              r   r   zEmitter.write_folded  s)   **40SY-:"DOSYBSY#Y:+?!?(R^c	 $Ut 3--/%'3YM"5o 6: 113 11"5	6
 ~))+E9Qw#~$++*G))+#E#s4y0==#';;t}}#=D))$/E:'<!<c?DKK3t9,K}}#{{4==9KK%%d+z--/E~ 44)1HCU SYr   c                 t   | j                  |      }| j                  d|z   d       |dd  dk(  rd| _        | j                          d}dx}}|t	        |      k  rd }|t	        |      k  r||   }|rL||dvr||| D ])  }|dk(  r| j                          | j                  |       + || j                          |}na||dv r[||| }| j                  r|j                  | j                        }| j                  j                  |       || j                          |}||dv }|dz  }|t	        |      k  ry y )	Nr   TrW   rU  r    r  r$   r   )
rX  rs   r8   r2  r\   rt   r'   r  r&   r-  )	r   r9  rW  r;  r  r  r   r<  r  s	            r   r   zEmitter.write_literal  sX   **40SY-:"DOSYBSY#Y:+?!?"5o 6: 113 11"5	6
 ~))+E:';!;c?D}}#{{4==9KK%%d+z--/E~ 441HC3 SYr   c                    | j                   rd| _        |sy | j                  sbd}| xj                  t	        |      z  c_        | j
                  r|j                  | j
                        }| j                  j                  |       d| _        d| _	        d}d}dx}}|t	        |      k  rd }|t	        |      k  r||   }|r|dk7  r|dz   |k(  r:| j                  | j                  kD  r!|r| j                          d| _        d| _	        ne||| }| xj                  t	        |      z  c_        | j
                  r|j                  | j
                        }| j                  j                  |       |}n|rn|dvr||   dk(  r| j                          ||| D ])  }	|	dk(  r| j                          | j                  |	       + | j                          d| _        d| _	        |}nm||dv rg||| }| xj                  t	        |      z  c_        | j
                  r|j                  | j
                        }| j                  j                  |       |}|	|dk(  }|dv }|dz  }|t	        |      k  ry y )	NTr  Fr    r   r  r$   r8  )r0   r8   r6   r5   r\   r'   r  r&   r-  r7   r<   rt   r2  )
r   r9  r   r  r:  r;  r  r  r   r<  s
             r   r   zEmitter.write_plain8  s:   "DODKK3t9$K}}{{4==1KKd#SYBSY#Y9Qw#~$++*GE))+*/).#E#s4y0==#';;t}}#=D))$/E11E{d*--/"5o 6: 113 11"5	6
 %%'&+DO%*DNE:'<!<c?DKK3t9,K}}#{{4==9KK%%d+E~) 441HCS SYr   )NNNNN)FF)F)FFFFr   )T)@r   r	   r
   rw   r   rG   rN   rK   rS   rb   r)   ri   rg   rm   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   ru   r{   r|   r   r   r   r   rf   r   rs   rt   r2  rv   r}   r   rR  r   rX  r   r   r   r   r   r   r   r      s    #
 CG+/BH
,,"H
6""H
"$ ?DN8'':
,,$8/"/*'
';
;,99/'
'BAPK,$!2*0(
.")H^)D >
 ). $	   4*n $4)l	4l!F9r   N)__all__errorr   r+   r   r   r   r   r   r   <module>r^     s9    n
%  	9 	' 'R Rr   