
    %h                     `    S S/r SSKJr  SSK7   " S S\5      r " S S5      r " S S 5      rg	)
EmitterEmitterError   )	YAMLError)*c                       \ rS rSrSrg)r       N)__name__
__module____qualname____firstlineno____static_attributes__r	       D/var/www/auris/envauris/lib/python3.13/site-packages/yaml/emitter.pyr   r      s    r   c                       \ rS rSrS rSrg)ScalarAnalysis   c	                 d    Xl         X l        X0l        X@l        XPl        X`l        Xpl        Xl        g 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__ScalarAnalysis.__init__   s1     
" 0!2#6 #6 &r   )r   r   r   r   r   r   r   r   N)r
   r   r   r   r    r   r	   r   r   r   r      s    'r   r   c                      \ rS rSrSSS.r  SRS jrS rS rS	 rS
 r	SSS jr
S rS rS rSTS jrS rS r  SUS jrS rS rS rS rS rS rS rS rS rS rS rS rSTS jrS  rS! r STS" jr!S# r"S$ r#S% r$S& r%S' r&S( r'S) r(S* r)S+ r*S, r+S- r,S. r-S/ r.S0 r/S1 r0S2 r1S3 r2S4 r3S5 r4 SSS6 jr5S7 r6SVS8 jr7S9 r8S: r9SWS; jr:S<S=S>S?S@SASBSCSDSESFSGSHSISJSK.r;SWSL jr<SM r=SN r>SO r?SWSP jr@SQrAg)Xr      !z!!)r$   ztag:yaml.org,2002:Nc                 *   Xl         S U l        / U l        U R                  U l        / U l        S U l        / U l        S U l        SU l	        SU l
        SU l        SU l        SU l        SU l        SU l        SU l        SU l        SU l        X l        XPl        SU l        U(       a  SUs=:  a  S:  a	  O  OX0l        SU l        U(       a  X@R*                  S-  :  a  X@l        SU l        US	;   a  X`l        S U l        S U l        S U l        S U l        S U l        g )
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,   r?   r4   widthr@   
line_breaks          r   r    Emitter.__init__&   s$      --
 
   " %$"' 	   #*a&o2o%U--a//#O#--#-  !  $  
r   c                      / U l         S U l        g r   )r.   r0   r   s    r   disposeEmitter.disposej   s    
r   c                    U R                   R                  U5        U R                  5       (       dO  U R                   R                  S5      U l        U R                  5         S U l        U R                  5       (       d  MN  g g Nr&   )r1   appendneed_more_eventspopr2   r0   r   r2   s     r   emitEmitter.emito   sX    5!''))+DJJJLDJ ''))r   c                 *   U R                   (       d  gU R                   S   n[        U[        5      (       a  U R                  S5      $ [        U[        5      (       a  U R                  S5      $ [        U[
        5      (       a  U R                  S5      $ g)NTr&   r   r'      F)r1   
isinstanceDocumentStartEventneed_eventsSequenceStartEventMappingStartEventrU   s     r   rS   Emitter.need_more_eventsx   sy    {{Ae/00##A&&122##A&&011##A&&r   c                 *   SnU R                   SS   Hd  n[        U[        [        45      (       a  US-  nO8[        U[        [
        45      (       a  US-  nO[        U[        5      (       a  SnUS:  d  Md    g   [        U R                   5      US-   :  $ )Nr&   r   F)r1   rZ   r[   CollectionStartEventDocumentEndEventCollectionEndEventStreamEndEventlen)r   countlevelr2   s       r   r\   Emitter.need_events   s    [[_E%"46J!KLL
E$46H#IJJ
E>22qy % DKK 57*+r   c                     U R                   R                  U R                  5        U R                  c!  U(       a  U R                  U l        g SU l        g U(       d   U =R                  U R                  -  sl        g g rQ   )r3   rR   r4   rA   )r   flow
indentlesss      r   increase_indentEmitter.increase_indent   sU    DKK(;;"..KK4+++K r   c                 V   [        U R                  [        5      (       as  U R                  R                  (       a6  [	        U R
                  S5      (       d  U R                  R                  U l        U R                  5         U R                  U l        g [        SU R                  -  5      e)Nr-   z%expected StreamStartEvent, but got %s)
rZ   r2   StreamStartEventr-   hasattrr,   write_stream_startexpect_first_document_startr0   r   rM   s    r   r/   Emitter.expect_stream_start   sw    djj"233zz""74;;
+K+K $

 3 3##%99DJFjj ! " "r   c                 2    [        SU R                  -  5      e)Nzexpected nothing, but got %s)r   r2   rM   s    r   expect_nothingEmitter.expect_nothing   s    9DJJFGGr   c                      U R                  SS9$ NT)first)expect_document_startrM   s    r   rs   #Emitter.expect_first_document_start   s    )))55r   c                 R   [        U R                  [        5      (       Ga|  U R                  R                  (       d  U R                  R                  (       a3  U R
                  (       a"  U R                  SS5        U R                  5         U R                  R                  (       a6  U R                  U R                  R                  5      nU R                  U5        U R                  R                  5       U l        U R                  R                  (       a  [        U R                  R                  R                  5       5      nU H]  nU R                  R                  U   nX@R                  U'   U R                  U5      nU R!                  U5      nU R#                  Xg5        M_     U=(       a    U R                  R$                  (       + =(       aq    U R&                  (       + =(       aY    U R                  R                  (       + =(       a7    U R                  R                  (       + =(       a    U R)                  5       (       + nU(       dC  U R                  5         U R                  SS5        U R&                  (       a  U R                  5         U R*                  U l        g [        U R                  [.        5      (       aU  U R
                  (       a"  U R                  SS5        U R                  5         U R1                  5         U R2                  U l        g [5        SU R                  -  5      e)N...T---z'expected DocumentStartEvent, but got %s)rZ   r2   r[   versiontagsr>   write_indicatorwrite_indentprepare_versionwrite_version_directiveDEFAULT_TAG_PREFIXEScopyrD   sortedkeysprepare_tag_handleprepare_tag_prefixwrite_tag_directiveexplicitr?   check_empty_documentexpect_document_rootr0   re   write_stream_endrv   r   )	r   rz   version_texthandleshandleprefixhandle_textprefix_textimplicits	            r   r{   Emitter.expect_document_start   s)   djj"455

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

N33$$UD1!!#!!#,,DJHjj ! " "r   c                 N   [        U R                  [        5      (       ao  U R                  5         U R                  R                  (       a"  U R                  SS5        U R                  5         U R                  5         U R                  U l        g [        SU R                  -  5      e)Nr~   Tz%expected DocumentEndEvent, but got %s)
rZ   r2   rc   r   r   r   flush_streamr{   r0   r   rM   s    r   expect_document_endEmitter.expect_document_end   s~    djj"233zz""$$UD1!!#33DJFjj ! " "r   c                 l    U R                   R                  U R                  5        U R                  SS9  g )NT)root)r.   rR   r   expect_noderM   s    r   r   Emitter.expect_document_root   s+    4334d#r   c                    Xl         X l        X0l        X@l        [	        U R
                  [        5      (       a  U R                  5         g [	        U R
                  [        [        45      (       Gax  U R                  S5        U R                  5         [	        U R
                  [        5      (       a  U R                  5         g [	        U R
                  [        5      (       at  U R                  (       dA  U R                  (       d0  U R
                  R                   (       d  U R#                  5       (       a  U R%                  5         g U R'                  5         g [	        U R
                  [(        5      (       at  U R                  (       dA  U R                  (       d0  U R
                  R                   (       d  U R+                  5       (       a  U R-                  5         g U R/                  5         g g [1        SU R
                  -  5      e)N&zexpected NodeEvent, but got %s)r6   r7   r8   r9   rZ   r2   
AliasEventexpect_aliasScalarEventrb   process_anchorprocess_tagexpect_scalarr]   r5   r?   
flow_stylecheck_empty_sequenceexpect_flow_sequenceexpect_block_sequencer^   check_empty_mappingexpect_flow_mappingexpect_block_mappingr   )r   r   sequencemapping
simple_keys        r   r   Emitter.expect_node   sE     (&",djj*--

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

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

8M8M3355,,.--/ ; ?$**LMMr   c                     U R                   R                  c  [        S5      eU R                  S5        U R                  R                  5       U l        g )Nz!anchor is not specified for aliasr   )r2   anchorr   r   r.   rT   r0   rM   s    r   r   Emitter.expect_alias  s>    ::$BCCC [[__&
r   c                     U R                  SS9  U R                  5         U R                  R                  5       U l        U R
                  R                  5       U l        g )NTrk   )rm   process_scalarr3   rT   r4   r.   r0   rM   s    r   r   Emitter.expect_scalar
  sE    $'ll&&([[__&
r   c                     U R                  SSSS9  U =R                  S-  sl        U R                  SS9  U R                  U l        g )N[Tr<   r   r   )r   r5   rm   expect_first_flow_sequence_itemr0   rM   s    r   r   Emitter.expect_flow_sequence  sC    S$481$'99
r   c                    [        U R                  [        5      (       af  U R                  R	                  5       U l        U =R                  S-  sl        U R                  SS5        U R                  R	                  5       U l	        g U R                  (       d  U R                  U R                  :  a  U R                  5         U R                  R                  U R                  5        U R!                  SS9  g )Nr   ]FTr   )rZ   r2   SequenceEndEventr3   rT   r4   r5   r   r.   r0   r?   r;   rB   r   rR   expect_flow_sequence_itemr   rM   s    r   r   'Emitter.expect_first_flow_sequence_item  s    djj"233,,**,DKOOq O  e,*DJ~~t!>!!#KKt==>d+r   c                 v   [        U R                  [        5      (       a  U R                  R	                  5       U l        U =R                  S-  sl        U R                  (       a"  U R                  SS5        U R                  5         U R                  SS5        U R                  R	                  5       U l        g U R                  SS5        U R                  (       d  U R                  U R                  :  a  U R                  5         U R                  R                  U R                  5        U R!                  SS9  g )Nr   ,Fr   Tr   )rZ   r2   r   r3   rT   r4   r5   r?   r   r   r.   r0   r;   rB   rR   r   r   rM   s    r   r   !Emitter.expect_flow_sequence_item$  s    djj"233,,**,DKOOq O~~$$S%0!!#  e,*DJ  e,~~t!>!!#KKt==>d+r   c                     U R                  SSSS9  U =R                  S-  sl        U R                  SS9  U R                  U l        g )N{Tr   r   r   )r   r5   rm   expect_first_flow_mapping_keyr0   rM   s    r   r   Emitter.expect_flow_mapping6  sC    S$481$'77
r   c                    [        U R                  [        5      (       af  U R                  R	                  5       U l        U =R                  S-  sl        U R                  SS5        U R                  R	                  5       U l	        g U R                  (       d  U R                  U R                  :  a  U R                  5         U R                  (       dK  U R                  5       (       a6  U R                  R                  U R                   5        U R#                  SSS9  g U R                  SS5        U R                  R                  U R$                  5        U R#                  SS9  g )Nr   }FTr   r   ?r   )rZ   r2   MappingEndEventr3   rT   r4   r5   r   r.   r0   r?   r;   rB   r   check_simple_keyrR    expect_flow_mapping_simple_valuer   expect_flow_mapping_valuerM   s    r   r   %Emitter.expect_first_flow_mapping_key<  s    djj/22,,**,DKOOq O  e,*DJ~~t!>!!#>>d&;&;&=&=""4#H#HI  $ ?$$S$/""4#A#AB   .r   c                 R   [        U R                  [        5      (       a  U R                  R	                  5       U l        U =R                  S-  sl        U R                  (       a"  U R                  SS5        U R                  5         U R                  SS5        U R                  R	                  5       U l        g U R                  SS5        U R                  (       d  U R                  U R                  :  a  U R                  5         U R                  (       dK  U R                  5       (       a6  U R                  R                  U R                   5        U R#                  SSS9  g U R                  SS5        U R                  R                  U R$                  5        U R#                  SS9  g )	Nr   r   Fr   Tr   r   r   )rZ   r2   r   r3   rT   r4   r5   r?   r   r   r.   r0   r;   rB   r   rR   r   r   r   rM   s    r   expect_flow_mapping_keyEmitter.expect_flow_mapping_keyM  s%   djj/22,,**,DKOOq O~~$$S%0!!#  e,*DJ  e,~~t!>!!#>>d&;&;&=&=""4#H#HI  $ ?$$S$/""4#A#AB   .r   c                     U R                  SS5        U R                  R                  U R                  5        U R	                  SS9  g N:FTr   )r   r.   rR   r   r   rM   s    r   r   (Emitter.expect_flow_mapping_simple_valueb  s;    S%(4778&r   c                    U R                   (       d  U R                  U R                  :  a  U R                  5         U R	                  SS5        U R
                  R                  U R                  5        U R                  SS9  g )Nr   Tr   )	r?   r;   rB   r   r   r.   rR   r   r   rM   s    r   r   !Emitter.expect_flow_mapping_valueg  s]    >>T[[4??:S$'4778&r   c                     U R                   =(       a    U R                  (       + nU R                  SUS9  U R                  U l        g )NF)rk   rl   )r8   r=   rm    expect_first_block_sequence_itemr0   )r   rl   s     r   r   Emitter.expect_block_sequencep  s9    **A4>>/A
%J?::
r   c                      U R                  SS9$ ry   )expect_block_sequence_itemrM   s    r   r   (Emitter.expect_first_block_sequence_itemu  s    ..T.::r   c                 x   U(       d^  [        U R                  [        5      (       a?  U R                  R	                  5       U l        U R                  R	                  5       U l        g U R                  5         U R                  SSSS9  U R                  R                  U R                  5        U R                  SS9  g )N-Tr=   r   )rZ   r2   r   r3   rT   r4   r.   r0   r   r   rR   r   r   r   rz   s     r   r   "Emitter.expect_block_sequence_itemx  s    DJJ0@AA,,**,DK*DJ  dd ;KKt>>?d+r   c                 D    U R                  SS9  U R                  U l        g )NFr   )rm   expect_first_block_mapping_keyr0   rM   s    r   r   Emitter.expect_block_mapping  s     %(88
r   c                      U R                  SS9$ ry   )expect_block_mapping_keyrM   s    r   r   &Emitter.expect_first_block_mapping_key  s    ,,4,88r   c                    U(       d^  [        U R                  [        5      (       a?  U R                  R	                  5       U l        U R                  R	                  5       U l        g U R                  5         U R                  5       (       a6  U R                  R                  U R                  5        U R                  SSS9  g U R                  SSSS9  U R                  R                  U R                  5        U R                  SS9  g )NTr   r   r   r   )rZ   r2   r   r3   rT   r4   r.   r0   r   r   rR   !expect_block_mapping_simple_valuer   r   expect_block_mapping_valuer   s     r   r    Emitter.expect_block_mapping_key  s    DJJ@@,,**,DK*DJ$$&&""4#I#IJ  $ ?$$S$$$?""4#B#BC   .r   c                     U R                  SS5        U R                  R                  U R                  5        U R	                  SS9  g r   )r   r.   rR   r   r   rM   s    r   r   )Emitter.expect_block_mapping_simple_value  s;    S%(4889&r   c                     U R                  5         U R                  SSSS9  U R                  R                  U R                  5        U R                  SS9  g )Nr   Tr   r   )r   r   r.   rR   r   r   rM   s    r   r   "Emitter.expect_block_mapping_value  sL    S$$74889&r   c                     [        U R                  [        5      =(       a0    U R                  =(       a    [        U R                  S   [        5      $ rQ   )rZ   r2   r]   r1   r   rM   s    r   r   Emitter.check_empty_sequence  s<    4::'9: At{{ At{{1~/?@	Br   c                     [        U R                  [        5      =(       a0    U R                  =(       a    [        U R                  S   [        5      $ rQ   )rZ   r2   r^   r1   r   rM   s    r   r   Emitter.check_empty_mapping  s;    4::'89 @dkk @t{{1~?	Ar   c                 H   [        U R                  [        5      (       a  U R                  (       d  gU R                  S   n[        U[        5      =(       aL    UR
                  S L =(       a7    UR                  S L =(       a"    UR                  =(       a    UR                  S:H  $ )NFr&    )	rZ   r2   r[   r1   r   r   tagr   valuerU   s     r   r   Emitter.check_empty_document  s|    $**&899A5+. O5<<43G OII%O*/..O=B[[B=N	Pr   c                    Sn[        U R                  [        5      (       af  U R                  R                  bO  U R                  c*  U R                  U R                  R                  5      U l        U[        U R                  5      -  n[        U R                  [        [        45      (       af  U R                  R                  bO  U R                  c*  U R                  U R                  R                  5      U l
        U[        U R                  5      -  n[        U R                  [        5      (       aY  U R                  c*  U R                  U R                  R                  5      U l        U[        U R                  R                  5      -  nUS:  =(       a    [        U R                  [         5      =(       d    [        U R                  [        5      =(       a=    U R                  R"                  (       + =(       a    U R                  R$                  (       + =(       d'    U R'                  5       =(       d    U R)                  5       $ )Nr&      )rZ   r2   	NodeEventr   rE   prepare_anchorrf   r   rb   r   rF   prepare_tagrG   analyze_scalarr   r   r   r   r   r   r   )r   lengths     r   r   Emitter.check_simple_key  s   djj),,1B1B1N##+'+':':4::;L;L'M$c$..//Fdjj;0D"EF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                    U R                   R                  c  S U l        g U R                  c*  U R                  U R                   R                  5      U l        U R                  (       a  U R	                  XR                  -   S5        S U l        g )NT)r2   r   rE   r  r   )r   	indicators     r   r   Emitter.process_anchor  sp    ::$#'D '#'#6#6tzz7H7H#ID   +?+?!?F#r   c                 0   U R                   R                  n[        U R                   [        5      (       a  U R                  c  U R                  5       U l        U R                  (       a  Ucd  U R                  S:X  a  U R                   R                  S   (       d.  U R                  S:w  a&  U R                   R                  S   (       a  S U l        g U R                   R                  S   (       a  Uc	  SnS U l        O7U R                  (       a  Uc#  U R                   R                  (       a  S U l        g Uc  [        S5      eU R                  c  U R                  U5      U l        U R                  (       a  U R                  U R                  S5        S U l        g )Nr   r&   r   r$   ztag is not specifiedT)r2   r   rZ   r   rH   choose_scalar_styler?   r   rF   r   r  r   )r   r   s     r   r   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                    U R                   c*  U R                  U R                  R                  5      U l         U R                  R                  S:X  d  U R
                  (       a  gU R                  R                  (       d  U R                  R                  S   (       a  U R                  (       a6  U R                   R                  (       dt  U R                   R                  (       dY  U R                  (       a  U R                   R                  (       d,  U R                  (       d  U R                   R                  (       a  gU R                  R                  (       am  U R                  R                  S;   aS  U R                  (       dB  U R                  (       d1  U R                   R                  (       a  U R                  R                  $ U R                  R                  (       a  U R                  R                  S:X  aH  U R                   R                  (       a-  U R                  (       a  U R                   R                  (       d  gg)N"r&   r   z|>')rG   r  r2   r   rH   r?   r   r9   r   r   r5   r   r   r   r   rM   s    r   r  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                    U R                   c*  U R                  U R                  R                  5      U l         U R                  c  U R                  5       U l        U R                  (       + nU R                  S:X  a'  U R                  U R                   R                  U5        OU R                  S:X  a'  U R                  U R                   R                  U5        OU R                  S:X  a&  U R                  U R                   R                  5        O\U R                  S:X  a&  U R                  U R                   R                  5        O&U R                  U R                   R                  U5        S U l         S U l        g )Nr  r  >|)rG   r  r2   r   rH   r  r9   write_double_quotedr   write_single_quotedwrite_foldedwrite_literalwrite_plain)r   splits     r   r   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                 @    Uu  p#US:w  a  [        SX#4-  5      eSX#4-  $ )Nr   zunsupported YAML version: %d.%dz%d.%dr   )r   r   majorminors       r   r   Emitter.prepare_version  s0    A:@E>QRR%''r   c                    U(       d  [        S5      eUS   S:w  d	  US   S:w  a  [        SU-  5      eUSS  HO  nSUs=::  a  S::  a  M  O  S	Us=::  a  S
::  a  M#  O  SUs=::  a  S::  a  M4  O  US;   a  M>  [        SU< SU< 35      e   U$ )Nztag handle must not be emptyr&   r$   ra   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   Emitter.prepare_tag_handle!  s    =>>!9vbzS0KfTUU2,B2$$r(8S(8C2<L<LTz"v$' ( ( 
 r   c                    U(       d  [        S5      e/ nS=p4US   S:X  a  SnU[        U5      :  a  X   nSUs=::  a  S::  d&  O  SUs=::  a  S::  d  O  S	Us=::  a  S
::  d  O  US;   a  US-  nOUX4:  a  UR                  XU 5        US-   =p4UR                  S5      nU H   nUR                  S[	        U5      -  5        M"     U[        U5      :  a  M  X4:  a  UR                  XU 5        SR                  U5      $ )Nztag prefix must not be emptyr&   r$   r   r$  r%  r&  r'  r(  r)  z-;/?!:@&=+$,_.~*'()[]utf-8%%%02Xr   )r   rf   rR   encodeordjoin)r   r   chunksstartendr,  datas          r   r   Emitter.prepare_tag_prefix-  s    =>>!9CCKBbC3"#3#3sb7GC7G55q;MM&s"34!!e#yy)BMM(SW"45  CK ;MM&s+,wwvr   c                 .   U(       d  [        S5      eUS:X  a  U$ S nUn[        U R                  R                  5       5      nU HX  nUR	                  U5      (       d  M  US:X  d  [        U5      [        U5      :  d  M;  U R                  U   nU[        U5      S  nMZ     / nS=pxU[        U5      :  a  X8   n	SU	s=::  a  S::  d2  O  SU	s=::  a  S::  d#  O  SU	s=::  a  S	::  d  O  U	S
;   d  U	S:X  a  US:w  a  US-  nOLXx:  a  UR                  X7U 5        US-   =pxU	R                  S5      n
U
 H  n	UR                  SU	-  5        M     U[        U5      :  a  M  Xx:  a  UR                  X7U 5        SR                  U5      nU(       a  U< U< 3$ SU-  $ )Nztag must not be emptyr$   r&   r$  r%  r&  r'  r(  r)  z-;/?:@&=+$,_.~*'()[]r   r/  r0  r   z!<%s>)	r   r   rD   r   
startswithrf   rR   r1  r3  )r   r   r   suffixprefixesr   r4  r5  r6  r,  r7  suffix_texts               r   r  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;MM&s"34!!e#yy)BMM(R-0  CK ;MM&s+,ggfo#[11[((r   c                     U(       d  [        S5      eU HO  nSUs=::  a  S::  a  M  O  SUs=::  a  S::  a  M#  O  SUs=::  a  S::  a  M4  O  US;   a  M>  [        S	U< S
U< 35      e   U$ )Nzanchor must not be emptyr$  r%  r&  r'  r(  r)  r*  r+  z in the anchor: r  )r   r   r,  s      r   r  Emitter.prepare_anchorh  se    9::B2$$r(8S(8C2<L<LTz"v$' ( ( 
 r   c                    U(       d  [        USSSSSSSS9$ SnSnSnSnSnSnSnSn	Sn
SnUR                  S5      (       d  UR                  S5      (       a  SnSnSn[        U5      S:H  =(       d    US   S;   nSnSnSnU[        U5      :  Gat  UU   nUS:X  a-  US	;   a  SnSnUS
;   a  SnU(       a  SnUS:X  a  U(       a  SnSnO*US;   a  SnUS:X  a  SnU(       a  SnUS:X  a  U(       a  SnSnUS;   a  SnUS:X  da  SUs=::  a  S::  dT  O  US:X  d.  SUs=::  a  S::  d!  O  SUs=::  a  S::  d  O  SUs=::  a  S:  a  O  OUS:w  a  SnU R                  (       d  SnOSnUS:X  a*  US:X  a  SnU[        U5      S-
  :X  a  SnU(       a  Sn
SnSnO4US;   a*  US:X  a  SnU[        U5      S-
  :X  a  Sn	U(       a  SnSnSnOSnSnUS-  nUS;   nUS-   [        U5      :  =(       d    UUS-      S;   nU[        U5      :  a  GMt  SnSnSnSnSnU(       d  U(       d  U(       d  U	(       a  S=nnU(       a  SnU
(       a  S=n=nnU(       d  U(       a  S=n=n=nnU(       a  S=nnU(       a  SnU(       a  Sn[        USUUUUUUS9$ )NTFr   r   r~   r   u     	
  r&   z#,[]{}&*!|>'"%@`z?:r   z,?[]{}r   #	   
  r*    ~          ퟿      �u   𐀀u   􏿿   ﻿)r   r:  rf   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  Emitter.analyze_scalarr  sp    !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                 p    [        U R                  S5      (       a  U R                  R                  5         g g )Nflush)rq   r,   r^  rM   s    r   r   Emitter.flush_stream  s(    4;;((KK )r   c                     U R                   (       aV  U R                   R                  S5      (       a5  U R                  R                  SR	                  U R                   5      5        g g g )Nzutf-16rK  )r-   r:  r,   writer1  rM   s    r   rr   Emitter.write_stream_start  sD    ==T]]55h??KKhoodmm<= @=r   c                 $    U R                  5         g r   )r   rM   s    r   r   Emitter.write_stream_end  s    r   c                 \   U R                   (       d  U(       d  UnOSU-   nX0l         U R                  =(       a    UU l        U =R                  [        U5      -  sl        SU l        U R
                  (       a  UR                  U R
                  5      nU R                  R                  U5        g )NrD  F)	r<   r=   r;   rf   r>   r-   r1  r,   ra  )r   r  need_whitespacer<   r=   r7  s         r   r   Emitter.write_indicator   sr    ??/Dy=D$5Is4y ==;;t}}-D$r   c                    U R                   =(       d    SnU R                  (       a1  U R                  U:  d!  U R                  U:X  a!  U R                  (       d  U R	                  5         U R                  U:  af  SU l        SXR                  -
  -  nXl        U R
                  (       a  UR                  U R
                  5      nU R                  R                  U5        g g )Nr&   TrD  )	r4   r=   r;   r<   write_line_breakr-   r1  r,   ra  )r   r4   r7  s      r   r   Emitter.write_indent.  s    !~~v!5KK6)$//!!#;;"DO{{*+D K}}{{4==1KKd#  r   c                    Uc  U R                   nSU l        SU l        U =R                  S-  sl        SU l        U R
                  (       a  UR                  U R
                  5      nU R                  R                  U5        g )NTr   r&   )	rC   r<   r=   r:   r;   r-   r1  r,   ra  )r   r7  s     r   ri  Emitter.write_line_break;  s_    <''D		Q	==;;t}}-D$r   c                     SU-  nU R                   (       a  UR                  U R                   5      nU R                  R                  U5        U R	                  5         g )Nz	%%YAML %sr-   r1  r,   ra  ri  )r   r   r7  s      r   r   Emitter.write_version_directiveF  sC    \)==;;t}}-D$r   c                     SU< SU< 3nU R                   (       a  UR                  U R                   5      nU R                  R                  U5        U R	                  5         g )Nz%TAG rD  rn  )r   r   r   r7  s       r   r   Emitter.write_tag_directiveM  sC     +[9==;;t}}-D$r   c                 2   U R                  SS5        SnSnS=pVU[        U5      ::  Ga\  S nU[        U5      :  a  X   nU(       a  Ub  US:w  a  US-   U:X  aG  U R                  U R                  :  a-  U(       a&  US:w  a   U[        U5      :w  a  U R	                  5         OiXU nU =R                  [        U5      -  sl        U R
                  (       a  UR                  U R
                  5      nU R                  R                  U5        UnOU(       ah  Ub  US;  a^  X   S:X  a  U R                  5         XU  H,  n	U	S:X  a  U R                  5         M  U R                  U	5        M.     U R	                  5         UnOUb  US	;   d  US:X  ap  XV:  ak  XU nU =R                  [        U5      -  sl        U R
                  (       a  UR                  U R
                  5      nU R                  R                  U5        UnUS:X  ac  S
nU =R                  S-  sl        U R
                  (       a  UR                  U R
                  5      nU R                  R                  U5        US-   nUb
  US:H  nUS;   nUS-  nU[        U5      ::  a  GM\  U R                  SS5        g )Nr  TFr&   rD  r   rC  r*   
    
  z''r'   )
r   rf   r;   rB   r   r-   r1  r,   ra  ri  )
r   textr  spacesbreaksr5  r6  r,  r7  brs
             r   r  Emitter.write_single_quotedV  s8   T4(SYBSYY:sQw#~$++*GE %
sc$i/?))+##s4y0==#';;t}}#=D))$/E:+?!?{d*--/"o: 113 11"5	 .
 %%'E:'<!<d
{##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  r  rF  rG  u    u    c                 p   U R                  SS5        S=p4U[        U5      ::  Ga  S nU[        U5      :  a  X   nUbG  US;   dA  SUs=::  a  S::  Gdj  O  U R                  (       a   SUs=::  a  S::  GdI  O  S	Us=::  a  S
::  Gd9  O  X4:  ak  XU nU =R                  [        U5      -  sl        U R                  (       a  UR                  U R                  5      nU R                  R                  U5        UnUb  XPR                  ;   a  SU R                  U   -   nO8US::  a  S[        U5      -  nO#US::  a  S[        U5      -  nOS[        U5      -  nU =R                  [        U5      -  sl        U R                  (       a  UR                  U R                  5      nU R                  R                  U5        US-   nSUs=:  a  [        U5      S-
  :  Ga8  O  GO4US:X  d  X4:  Ga(  U R                  XC-
  -   U R                  :  Ga  U(       Ga   XU S-   nX4:  a  UnU =R                  [        U5      -  sl        U R                  (       a  UR                  U R                  5      nU R                  R                  U5        U R                  5         SU l        SU l        X   S:X  ag  SnU =R                  [        U5      -  sl        U R                  (       a  UR                  U R                  5      nU R                  R                  U5        US-  nU[        U5      ::  a  GM  U R                  SS5        g )Nr  Tr&   u   "\  ﻿rD  rE  rG  rH  rI  rJ  r     ÿz\x%02Xu   ￿z\u%04Xz\U%08Xr   F)r   rf   r@   r;   r-   r1  r,   ra  ESCAPE_REPLACEMENTSr2  rB   r   r<   r=   )r   rt  r  r5  r6  r,  r7  s          r   r  Emitter.write_double_quoted  s   S$'SYBSYYzR#>>"b2F2 ..!'2!9!9#+r#=X#=;c?DKK3t9,K}}#{{4==9KK%%d+E>555#D$<$<R$@@v(3r72x(3r72(3r72KK3t9,K}}#{{4==9KK%%d+EE3$T1$$")u|SY/$//Ae#t+;Es4y(==;;t}}5D!!$'!!#"'!&;#%DKK3t9,K}}#{{4==9KK%%d+1HCa SYb 	S%(r   c                     SnU(       aN  US   S;   a  U[        U R                  5      -  nUS   S;  a  US-  nU$ [        U5      S:X  d	  US   S;   a  US	-  nU$ )
Nr   r&   rs  ra   rC  r   r   +)strrA   rf   )r   rt  hintss      r   determine_block_hintsEmitter.determine_block_hints  sp    Aw//T--..Bx33  Ta48/C#Cr   c                    U R                  U5      nU R                  SU-   S5        USS  S:X  a  SU l        U R                  5         SnSnSnS=pgU[	        U5      ::  Ga  S nU[	        U5      :  a  X   nU(       a  Ub  US;  av  U(       d!  Ub  US:w  a  X   S	:X  a  U R                  5         US:H  nXU  H,  n	U	S	:X  a  U R                  5         M  U R                  U	5        M.     Ub  U R                  5         UnGO4U(       a  US:w  a  US
-   U:X  a+  U R                  U R                  :  a  U R                  5         OiXU n
U =R                  [	        U
5      -  sl        U R                  (       a  U
R                  U R                  5      n
U R                  R                  U
5        UnOUb  US;   a~  XU n
U =R                  [	        U
5      -  sl        U R                  (       a  U
R                  U R                  5      n
U R                  R                  U
5        Uc  U R                  5         UnUb
  US;   nUS:H  nUS
-  nU[	        U5      ::  a  GM  g g )Nr  Tra   r  Fr&   rC  rD  r*   r   rs  )r  r   r>   ri  rf   r   r;   rB   r-   r1  r,   ra  )r   rt  r  rP  ru  rv  r5  r6  r,  rw  r7  s              r   r  Emitter.write_folded  s   **40SY-:"DOSYBSYY:+?!?(R^c	 $t 3--/%'3YM"o: 113 11"5	 .
 ~))+E9Qw#~$++*G))+##s4y0==#';;t}}#=D))$/E:'<!<c?DKK3t9,K}}#{{4==9KK%%d+z--/E~ 44)1HCU SYr   c                    U R                  U5      nU R                  SU-   S5        USS  S:X  a  SU l        U R                  5         SnS=pEU[	        U5      ::  a  S nU[	        U5      :  a  X   nU(       aS  Ub  US;  aI  XU  H,  nUS:X  a  U R                  5         M  U R                  U5        M.     Ub  U R                  5         UnOiUb  US;   a`  XU nU R                  (       a  UR                  U R                  5      nU R                  R                  U5        Uc  U R                  5         UnUb  US;   nUS-  nU[	        U5      ::  a  M  g g )	Nr  Tra   r  r&   rC  r*   r   )
r  r   r>   ri  rf   r   r-   r1  r,   ra  )	r   rt  r  rv  r5  r6  r,  rw  r7  s	            r   r  Emitter.write_literal  sL   **40SY-:"DOSYBSYY:+?!?"o: 113 11"5	 .
 ~))+E:';!;c?D}}#{{4==9KK%%d+z--/E~ 441HC3 SYr   c                 R   U R                   (       a  SU l        U(       d  g U R                  (       dg  SnU =R                  [	        U5      -  sl        U R
                  (       a  UR                  U R
                  5      nU R                  R                  U5        SU l        SU l	        SnSnS=pgU[	        U5      ::  Ga  S nU[	        U5      :  a  X   nU(       a  US:w  a  US-   U:X  a@  U R                  U R                  :  a&  U(       a  U R                  5         SU l        SU l	        OiXU nU =R                  [	        U5      -  sl        U R
                  (       a  UR                  U R
                  5      nU R                  R                  U5        UnOU(       as  US;  al  X   S:X  a  U R                  5         XU  H,  n	U	S:X  a  U R                  5         M  U R                  U	5        M.     U R                  5         SU l        SU l	        UnOtUb  US;   ak  XU nU =R                  [	        U5      -  sl        U R
                  (       a  UR                  U R
                  5      nU R                  R                  U5        UnUb
  US:H  nUS;   nUS-  nU[	        U5      ::  a  GM  g g )	NTrD  Fr&   r   rC  r*   rs  )r6   r>   r<   r;   rf   r-   r1  r,   ra  r=   rB   r   ri  )
r   rt  r  r7  ru  rv  r5  r6  r,  rw  s
             r   r  Emitter.write_plain8  s.   "DODKK3t9$K}}{{4==1KKd#SYBSYY9Qw#~$++*GE))+*/).##s4y0==#';;t}}#=D))$/E11{d*--/"o: 113 11"5	 .
 %%'&+DO%*DNE:'<!<c?DKK3t9,K}}#{{4==9KK%%d+E~) 441HCS SYr   )r@   rG   rA   rC   rB   r?   r;   r-   r2   r1   r5   r4   r=   r3   r:   r8   r>   rE   rF   r6   r7   r9   r0   r.   r,   rH   rD   r<   )NNNNN)FF)F)FFFFr   )T)Br
   r   r   r   r   r    rN   rV   rS   r\   rm   r/   rv   rs   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  r   r   r   r   r  r  r  r   rr   r   r   r   ri  r   r   r  r  r  r  r  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   r1   r   r   r   r	   r   r   <module>r     s9    n
%  	9 	' 'R Rr   