
    9i[                        S SK Jr  S SKJr  S SK7  S SK7  S SKJrJrJ	r	  S SKJ
r
  S SKJrJrJr  S SKJrJr  S SKJr   / S	QrSS
 jr " S S\5      r " S S5      r " S S\5      r " S S\5      rg)    )annotations)MarkedYAMLError)*)ScannerRoundTripScannerScannerError)BlankLineComment)C_PREC_POSTC_SPLIT_ON_FIRST_BLANK)nprintnprintf)Tag)ParserRoundTripParserParserErrorc                     [        U 0 UD6$ N)r   )argskws     R/var/www/html/land-doc-ocr/venv/lib/python3.13/site-packages/ruamel/yaml/parser.pyxprintfr   ]   s    DB    c                      \ rS rSrSrg)r   b    N)__name__
__module____qualname____firstlineno____static_attributes__r   r   r   r   r   b   s    r   r   c                     \ rS rSrSSS.rS+S jrS,S jrS,S jr\S-S j5       r	\S-S	 j5       r
S.S
 jrS-S jrS-S jrS-S jrS-S jrS-S jrS-S jrS-S jrS-S jrS-S jrS-S jrS-S jrS/S jrS0S1S jjrS-S jrS-S jrS-S jrS-S jrS-S jrS-S jrS-S jrS2S3S jjr S-S  jr!S-S! jr"S-S" jr#S-S# jr$S2S4S$ jjr%S-S% jr&S-S& jr'S5S6S( jjr( S7       S8S) jjr)S*r*g')9r   f   !ztag:yaml.org,2002:)r$   z!!c                    Xl         U R                   b(  [        U R                   SS 5      c  X R                   l        U R                  5         g )N_parser)loadergetattrr&   reset_parser)selfr'   s     r   __init__Parser.__init__l   s9    ;;"wt{{It'L'T"&KKr   c                l    S =U l         U l        0 U l        / U l        / U l        U R
                  U l        g r   )current_event
last_eventtag_handlesstatesmarksparse_stream_startstater*   s    r   r)   Parser.reset_parserr   s4    /33T_+-!# "
11
r   c                $    U R                  5         g r   )r)   r5   s    r   disposeParser.disposez   s    r   c                    [        U R                  S5      (       a  U R                  R                  $ U R                  R                  $ Ntyp)hasattrr'   scanner_scannerr5   s    r   r>   Parser.scanner}   s3    4;;&&;;&&&{{###r   c                    [        U R                  S5      (       a  U R                  R                  $ U R                  R                  $ r;   )r=   r'   resolver	_resolverr5   s    r   rB   Parser.resolver   s3    4;;&&;;'''{{$$$r   c                    U R                   c&  U R                  (       a  U R                  5       U l         U R                   b.  U(       d  gU H   n[        U R                   U5      (       d  M     g   g)NTF)r.   r4   
isinstance)r*   choiceschoices      r   check_eventParser.check_event   sZ    %zz%)ZZ\")!d00&99 " r   c                    U R                   c&  U R                  (       a  U R                  5       U l         U R                   $ r   )r.   r4   r5   s    r   
peek_eventParser.peek_event   s/    %zz%)ZZ\"!!!r   c                    U R                   c&  U R                  (       a  U R                  5       U l         U R                   =U l        nS U l         U$ r   )r.   r4   r/   )r*   values     r   	get_eventParser.get_event   sD    %zz%)ZZ\" #'"4"44%!r   c                    U R                   R                  5       nU R                  U5        [        UR                  UR
                  UR                  S9nU R                  U l        U$ )N)encoding)	r>   	get_tokenmove_token_commentStreamStartEvent
start_markend_markrS   parse_implicit_document_startr4   r*   tokenevents      r   r3   Parser.parse_stream_start   sR    &&(& !1!15>>ENN[ 77
r   c                r   U R                   R                  [        [        [        5      (       dz  U R
                  U l        U R                   R                  5       nUR                  =p#[        X#SS9nU R                  R                  U R                  5        U R                  U l        U$ U R                  5       $ )NFexplicit)r>   check_tokenDirectiveTokenDocumentStartTokenStreamEndTokenDEFAULT_TAGSr0   
peek_tokenrW   DocumentStartEventr1   appendparse_document_endparse_block_noder4   parse_document_start)r*   r[   rW   rX   r\   s        r   rY   $Parser.parse_implicit_document_start   s    ||''8JN[[#00DLL++-E$)$4$44J&zeLE KKt667..DJL ,,..r   c           	        U R                   R                  [        5      (       a@  U R                   R                  5         U R                   R                  [        5      (       a  M@  U R                   R                  [        5      (       Gd  U R                  5       u  pU R                   R                  [        5      (       dW  [        S S SU R                   R                  5       R                  4< 3U R                   R                  5       R                  5      eU R                   R                  5       nUR                  nUR                  n[        UUSUUUR                  S9nU R                  R                  U R                   5        U R"                  U l        U$ U R                   R                  5       n['        UR                  UR                  UR                  S9nU R                  (       a   eU R(                  (       a   eS U l        U$ )Nz'expected '<document start>', but found T)r`   versiontagscommentrp   )r>   ra   DocumentEndTokenrT   rd   process_directivesrc   r   rf   idrW   rX   rg   rp   r1   rh   ri   parse_document_contentr4   StreamEndEventr2   )r*   rn   ro   r[   rW   rX   r\   s          r   rk   Parser.parse_document_start   s   ll&&'788LL""$ ll&&'788 ||''77 335MG<<++,>??!!!%!8!8!:!=!=!> ACLL++-88  LL**,E))J~~H ,E KKt66744DJ  LL**,E"5#3#3U^^U]][E{{"?zz!>DJr   c                   U R                   R                  5       nUR                  =p#SnU R                   R                  [        5      (       a  U R                   R                  5       nU R                   R                  5       n[        U[        5      (       d  UR                  R                  UR                  R                  :X  aW  [        S S SU R                   R                  5       R                  4< 3U R                   R                  5       R                  5      eUR                  nSn[        X#US9nU R                  R                  S:X  a  U R                  U l        U$ U(       a  U R"                  U l        U$ U R                  U l        U$ )NFz5found non-comment content after document end marker, Tr_      rz   )r>   rf   rW   ra   rr   rT   rF   rd   rX   liner   rt   DocumentEndEventrB   processing_versionrk   r4   rY   )r*   r[   rW   rX   r`   ptr\   s          r   ri   Parser.parse_document_end   sH   '') % 0 00
<<##$455LL**,E((*Bb.11##r}}'9'99!K||..033479LL++-88  ~~HH I ==++v522DJ  !??
  "66
r   c                0   U R                   R                  [        [        [        [
        5      (       aT  U R                  U R                   R                  5       R                  5      nU R                  R                  5       U l        U$ U R                  5       $ r   )r>   ra   rb   rc   rr   rd   process_empty_scalarrf   rW   r1   popr4   rj   )r*   r\   s     r   ru   Parser.parse_document_content  so    <<##.0@.
 
 --dll.E.E.G.R.RSE*DJL((**r   c                   S n0 U l         U R                  R                  [        5      (       a  U R                  R	                  5       nUR
                  S:X  aT  Ub  [        S S SUR                  5      eUR                  u  p4US:w  a  [        S S SUR                  5      eUR                  nOWUR
                  S:X  aG  UR                  u  pVXPR                   ;   a  [        S S SU< 3UR                  5      eX`R                   U'   U R                  R                  [        5      (       a  M  [        U R                   5      (       a  XR                   R                  5       4nOUS 4nU R                  b  [        U R                  S5      (       a  XR                  l        U R                  R                  c  0 U R                  l        U R                    Hi  nU R                   U   U R                  R                  U'   U R                  R                  S   R                  R!                  XR                   U   45        Mk     U R"                   H0  n	XR                   ;  d  M  U R"                  U	   U R                   U	'   M2     U$ )	NYAMLzfound duplicate YAML directiverz   z:found incompatible YAML document (version 1.* is required)TAGzduplicate tag handle ro   )r0   r>   ra   rb   rT   namer   rW   rO   boolcopyr'   r=   rn   ro   	doc_infosrh   re   )
r*   yaml_versionr[   majorminorhandleprefixrO   kkeys
             r   rs   Parser.process_directives   s'   ll&&~66LL**,EzzV#+%d$DeFVFV   %{{A:%T((	   %{{u$!&---%d&;F:$FHXHX  ,2  (- ll&&~66.   !!&(8(8(=(=(?@E $&E;;"wt{{F'C'C #/KK{{'#% %%&*&6&6q&9  #%%b)..55q:J:J1:M6NO & $$C***(,(9(9#(>  % % r   c                     U R                  SS9$ )NT)block
parse_noder5   s    r   rj   Parser.parse_block_node\  s    T**r   c                "    U R                  5       $ r   r   r5   s    r   parse_flow_nodeParser.parse_flow_node_  s      r   c                "    U R                  SSS9$ )NT)r   indentless_sequencer   r5   s    r   'parse_block_node_or_indentless_sequence.Parser.parse_block_node_or_indentless_sequenceb  s    TtDDr   c                .    Uc  g UR                  S5        g NFselect_transformr*   tags     r   select_tag_transformParser.select_tag_transformh  s    ;U#r   c                8   U R                   R                  [        5      (       af  U R                   R                  5       n[	        UR
                  UR                  UR                  5      nU R                  R                  5       U l
        U$ S nS nS =n=pU R                   R                  [        5      (       a  U R                   R                  5       nU R                  U5        UR                  nUR                  nUR
                  nU R                   R                  [        5      (       aa  U R                   R                  5       nUR                  n	UR                  n[        UR
                  S   UR
                  S   U R                  S9nOU R                   R                  [        5      (       a  U R                   R                  5       n U R                  U5        UR                  =pyUR                  n[        UR
                  S   UR
                  S   U R                  S9nU R                   R                  [        5      (       a?  U R                   R                  5       nUR                  =pyUR                  nUR
                  nUbB  U R#                  U5        UR%                  5       (       a  ['        SUSUR(                  < 3U	5      eUc%  U R                   R+                  5       R                  =pxS nUS L =(       d    [-        U5      S:H  n
U(       Gaw  U R                   R                  [.        5      (       GaR  S nU R                   R+                  5       nU R0                  (       a  U R0                  R2                  c  UR4                  (       a5  UR4                  S   (       a!  UR4                  S   / /nS UR4                  S'   OUR4                  (       aD  UR4                  S   c4  UR4                  S   (       a   S UR4                  S   /nS UR4                  S'   O.U R0                  (       a  UR4                  (       a  UR4                  nU R                   R+                  5       R                  n[7        XVXUSUS9nU R8                  U l
        U$ U R                   R                  [:        5      (       a  U R                   R                  5       nUR                  nUR<                  (       a  Ub  [-        U5      S:X  a  S	nOUc  S
nOSn[?        UUUUR
                  UUUR@                  UR4                  S9nU R                  R                  5       U l
        U$ U R                   R                  [B        5      (       aR  U R                   R+                  5       nUR                  n[7        UUU
UUSUR4                  S9nU RD                  U l
        U$ U R                   R                  [F        5      (       aR  U R                   R+                  5       nUR                  n[I        UUU
UUSUR4                  S9nU RJ                  U l
        U$ U(       a  U R                   R                  [L        5      (       a  U R                   R+                  5       R                  nU R                   R+                  5       nUR4                  nUb  US   c  URO                  5       n[7        XVXUSUS9nU RP                  U l
        U$ U(       a  U R                   R                  [R        5      (       ah  U R                   R+                  5       R                  nU R                   R+                  5       R4                  n[I        XVXUSUS9nU RT                  U l
        U$ Uc  Ub1  [?        XVU
S4SXx5      nU R                  R                  5       U l
        U$ U(       a  SnOSnU R                   R+                  5       n['        SU< S3USURV                  < 3UR                  5      e! [          a     GN;f = f)Nr   rz   )r   suffixhandleszwhile parsing a nodezfound undefined tag handle r$   F)
flow_stylerp   TF)FTFF)stylerp   T r   flowzwhile parsing a z nodez%expected the node content, but found ),r>   ra   
AliasTokenrT   
AliasEventrO   rW   rX   r1   r   r4   AnchorTokenrU   TagTokenr   r0   NotImplementedErrorr   check_handler   r   rf   strBlockEntryTokenr'   comment_handlingrp   SequenceStartEventparse_indentless_sequence_entryScalarTokenplainScalarEventr   FlowSequenceStartTokenparse_flow_sequence_first_entryFlowMappingStartTokenMappingStartEventparse_flow_mapping_first_keyBlockSequenceStartTokensplit_old_comment parse_block_sequence_first_entryBlockMappingStartTokenparse_block_mapping_first_keyrt   )r*   r   r   r[   r\   anchorr   rW   rX   tag_markimplicitrp   r~   	dimplicitnodes                  r   r   Parser.parse_nodem  s   <<##J//LL**,E#EKK1A1A5>>RE*DJL+//
/X<<##K00LL**,E##E*))J~~H[[F||''11..0 ++ >> ;;q>%++a.$JZJZ \\%%h//LL**,E''. %*$4$44J~~HU[[^EKKNDL\L\]C||''44..0(-(8(88
 >>?%%c*!!!*1#**@	  $(LL$;$;$=$H$HHJ$;1#c(c/4<<#;#;O#L#LG((*B{{t{{;;C::"**Q-!zz!}b1G$(BJJqMZZBJJqM$9bjjm#RZZ]3G$(BJJqM:: jjG||..099H&X8W^E ==DJL<<##K00LL**,E~~HCC)	)	*	kk	E *DJB A \\%%&<==((*B{{H&

E ==DJh g \\%%&;<<((*B{{H%

E ::DJN M t||//0GHH||..0;;H ((*BjjG'!*"4..0&X8W^E >>DJ2 1 t||//0FGG||..0;;Hll--/77G%X8W^E ;;DJ$ # 3?  h->JYE*DJ  LL++-E"4(%07|D  	 w ' s   ` 
``c                    U R                   R                  5       nU R                  R                  UR                  5        U R                  5       $ r   )r>   rT   r2   rh   rW   parse_block_sequence_entryr*   r[   s     r   r   'Parser.parse_block_sequence_first_entry  s=    &&( 	

%**+..00r   c                   U R                   R                  [        5      (       a  U R                   R                  5       nU R	                  U5        U R                   R                  [        [
        5      (       d5  U R                  R                  U R                  5        U R                  5       $ U R                  U l
        U R                  UR                  5      $ U R                   R                  [
        5      (       dM  U R                   R                  5       n[        SU R                  S   SUR                   < 3UR"                  5      eU R                   R                  5       n[%        UR"                  UR                  UR&                  S9nU R                  R)                  5       U l
        U R                  R)                  5         U$ )Nz while parsing a block collectionr    expected <block end>, but found rq   )r>   ra   r   rT   rU   BlockEndTokenr1   rh   r   rj   r4   r   rX   rf   r   r2   rt   rW   SequenceEndEventrp   r   rZ   s      r   r   !Parser.parse_block_sequence_entry  sE   <<##O44LL**,E##E*<<++O]KK""4#B#BC,,..!<<
00@@||''66LL++-E2

22588,?  	  &&( !1!15>>5==Y[[__&


r   c                P   U R                   R                  [        5      (       a  U R                   R                  5       nU R	                  U5        U R                   R                  [        [
        [        [        5      (       d5  U R                  R                  U R                  5        U R                  5       $ U R                  U l        U R                  UR                  5      $ U R                   R                  5       nS nU R                   (       a0  U R                   R"                  c  UR$                  nUR&                  nO<U R(                  R                  nU R+                  UR$                  UR,                  5      n[/        X3US9nU R                  R1                  5       U l        U$ )Nrq   )r>   ra   r   rT   rU   KeyToken
ValueTokenr   r1   rh   r   rj   r4   r   rX   rf   r'   r   rp   rW   r/   distribute_commentr{   r   r   )r*   r[   crW   r\   s        r   r   &Parser.parse_indentless_sequence_entry5  s/   <<##O44LL**,E##E*<<++:}  ""4#G#GH,,..!AA
00@@'');;4;;77?A))J11J''zGA C[[__&
r   c                    U R                   R                  5       nU R                  R                  UR                  5        U R                  5       $ r   )r>   rT   r2   rh   rW   parse_block_mapping_keyr   s     r   r   $Parser.parse_block_mapping_first_keyR  s;    &&(

%**+++--r   c                   U R                   R                  [        5      (       a  U R                   R                  5       nU R	                  U5        U R                   R                  [        [
        [        5      (       d5  U R                  R                  U R                  5        U R                  5       $ U R                  U l        U R                  UR                  5      $ U R                  R                  S:  ah  U R                   R                  [
        5      (       aD  U R                  U l        U R                  U R                   R!                  5       R"                  5      $ U R                   R                  [        5      (       dM  U R                   R!                  5       n[%        SU R&                  S   SUR(                  < 3UR"                  5      eU R                   R                  5       nU R	                  U5        [+        UR"                  UR                  UR,                  S9nU R                  R/                  5       U l        U R&                  R/                  5         U$ )Nry   zwhile parsing a block mappingr   r   rq   )r>   ra   r   rT   rU   r   r   r1   rh   parse_block_mapping_valuer   r4   r   rX   rB   r}   rf   rW   r   r2   rt   MappingEndEventrp   r   rZ   s      r   r   Parser.parse_block_mapping_keyW  s   <<##H--LL**,E##E*<<++Hj-PP""4#A#ABCCEE!;;
00@@==++f49Q9QR\9]9]77DJ,,T\\-D-D-F-Q-QRR||''66LL++-E/

22588,?  	  &&(& 0 0%..%--X[[__&


r   c                   U R                   R                  [        5      (       Gaa  U R                   R                  5       nU R                   R                  [        5      (       a  U R	                  U5        O4U R                   R                  [
        5      (       d  U R	                  USS9  U R                   R                  [
        [        [        5      (       d5  U R                  R                  U R                  5        U R                  5       $ U R                  U l        UR                  nUc@  U R                   R                  5       nUR                  nU(       a  S US   /Ul        US   S /nU R                  UR                   US9$ U R                  U l        U R                   R                  5       nU R                  UR"                  5      $ )NTemptyrz   r   rq   )r>   ra   r   rT   rU   r   r   r1   rh   r   r   r4   rp   rf   _commentr   rX   rW   )r*   r[   rp   s      r   r    Parser.parse_block_mapping_values  s[   <<##J//LL**,E||''
33''.||//99++E+><<++Hj-PP""4#?#?@CCEE!99
--? LL335E#mmG*.
);#*1:t"4000QQ55DJLL++-E,,U-=-=>>r   c                    U R                   R                  5       nU R                  R                  UR                  5        U R                  SS9$ NT)first)r>   rT   r2   rh   rW   parse_flow_sequence_entryr   s     r   r   &Parser.parse_flow_sequence_first_entry  s@    &&(

%**+--D-99r   c           	        U R                   R                  [        5      (       Gd_  U(       d  U R                   R                  [        5      (       a  U R                   R	                  5         OMU R                   R                  5       n[        SU R                  S   SUR                  < 3UR                  5      eU R                   R                  [        5      (       aO  U R                   R                  5       n[        S S SUR                  UR                  SS9nU R                  U l        U$ U R                   R                  [        5      (       d5  U R                  R!                  U R"                  5        U R%                  5       $ U R                   R	                  5       n['        UR                  UR                  UR(                  S9nU R                  R+                  5       U l        U R                  R+                  5         U$ )Nzwhile parsing a flow sequencer   zexpected ',' or ']', but got T)r   rq   )r>   ra   FlowSequenceEndTokenFlowEntryTokenrT   rf   r   r2   rt   rW   r   r   rX   %parse_flow_sequence_entry_mapping_keyr4   r1   rh   r   r   r   rp   r   r*   r   r[   r\   s       r   r    Parser.parse_flow_sequence_entry  ss   ||''(<==<<++N;;LL**, LL335E%7

27|D((	  ||''11//1.$e&6&6SW "GG
\\--.BCC""4#A#AB++--&&( !1!15>>5==Y[[__&


r   c                T   U R                   R                  5       nU R                   R                  [        [        [
        5      (       d5  U R                  R                  U R                  5        U R                  5       $ U R                  U l
        U R                  UR                  5      $ r   )r>   rT   ra   r   r   r   r1   rh   'parse_flow_sequence_entry_mapping_valuer   r4   r   rX   r   s     r   r   ,Parser.parse_flow_sequence_entry_mapping_key  sw    &&(||''
NDXYYKKtKKL''))EEDJ,,U^^<<r   c                   U R                   R                  [        5      (       a  U R                   R                  5       nU R                   R                  [        [
        5      (       d5  U R                  R                  U R                  5        U R                  5       $ U R                  U l
        U R                  UR                  5      $ U R                  U l
        U R                   R                  5       nU R                  UR                  5      $ r   )r>   ra   r   rT   r   r   r1   rh   %parse_flow_sequence_entry_mapping_endr   r4   r   rX   rf   rW   r   s     r   r   .Parser.parse_flow_sequence_entry_mapping_value  s    <<##J//LL**,E<<++N<PQQ""4#M#MN++--!GG
00@@CCDJLL++-E,,U-=-=>>r   c                    U R                   U l        U R                  R                  5       n[	        UR
                  UR
                  5      $ r   )r   r4   r>   rf   r   rW   r   s     r   r   ,Parser.parse_flow_sequence_entry_mapping_end  s:    33
'')u//1A1ABBr   c                    U R                   R                  5       nU R                  R                  UR                  5        U R                  SS9$ r   )r>   rT   r2   rh   rW   parse_flow_mapping_keyr   s     r   r   #Parser.parse_flow_mapping_first_key  s@    &&(

%**+***66r   c                   U R                   R                  [        5      (       Gd;  U(       d  U R                   R                  [        5      (       a  U R                   R	                  5         OMU R                   R                  5       n[        SU R                  S   SUR                  < 3UR                  5      eU R                   R                  [        5      (       a  U R                   R	                  5       nU R                   R                  [        [        [        5      (       d5  U R                  R                  U R                  5        U R                  5       $ U R                  U l        U R#                  UR$                  5      $ U R&                  R(                  S:  ah  U R                   R                  [        5      (       aD  U R                  U l        U R#                  U R                   R                  5       R$                  5      $ U R                   R                  [        5      (       d5  U R                  R                  U R*                  5        U R                  5       $ U R                   R	                  5       n[-        UR                  UR$                  UR.                  S9nU R                  R1                  5       U l        U R                  R1                  5         U$ )Nzwhile parsing a flow mappingr   zexpected ',' or '}', but got ry   rq   )r>   ra   FlowMappingEndTokenr   rT   rf   r   r2   rt   rW   r   r   r1   rh   parse_flow_mapping_valuer   r4   r   rX   rB   r}   parse_flow_mapping_empty_valuer   rp   r   r   s       r   r   Parser.parse_flow_mapping_key  s   ||''(;<<<<++N;;LL**, LL335E%6

28E((	  ||''11..0||//0C  KK&&t'D'DE//11!%!>!>DJ44U^^DD11F:t||?W?W@ @ "::
001H1H1J1S1STT\\--.ABB""4#F#FG++--&&( 0 0%..%--X[[__&


r   c                   U R                   R                  [        5      (       a  U R                   R                  5       nU R                   R                  [        [
        5      (       d5  U R                  R                  U R                  5        U R                  5       $ U R                  U l
        U R                  UR                  5      $ U R                  U l
        U R                   R                  5       nU R                  UR                  5      $ r   )r>   ra   r   rT   r   r  r1   rh   r   r   r4   r   rX   rf   rW   r   s     r   r  Parser.parse_flow_mapping_value	  s    <<##J//LL**,E<<++N<OPP""4#>#>?++--!88
00@@44DJLL++-E,,U-=-=>>r   c                    U R                   U l        U R                  U R                  R	                  5       R
                  5      $ r   )r   r4   r   r>   rf   rW   r5   s    r   r  %Parser.parse_flow_mapping_empty_value  s3    00
(()@)@)B)M)MNNr   Nc           
         [        S S SSXUS9$ )Nr   r   rq   )r   )r*   markrp   s      r   r   Parser.process_empty_scalar  s    4}b$gVVr   c                    g r   r   r*   r[   ntr   s       r   rU   Parser.move_token_comment  s     	r   )r.   r/   r'   r2   r4   r1   r0   )r'   AnyreturnNone)r  r  )r  r  )rG   r  r  r   r   r   r  r  r   )r   r   r   r   r  r  )F)r   r   r  r  )r   r  r  r  r   )r
  r  rp   r  r  r  r   r[   r  r  zOptional[Any]r   Optional[bool]r  r  )+r   r   r   r    re   r+   r)   r8   propertyr>   rB   rI   rL   rP   r3   rY   rk   ri   ru   rs   rj   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   f   s    $89L2 $ $
 % %
"
"	/$&P!F+*x+!E$
]D1>:.
8?N:
<=?C7
#J?OW MR+;I	 r   r   c                  @    \ rS rSrSrSS jr S       S	S jjrSrg)
r   i$  ?roundtrip is a safe loader, that wants to see the unmangled tagc                .    Uc  g UR                  S5        g )NTr   r   s     r   r   $RoundTripParser.select_tag_transform'  s    ;T"r   Nc                ^    UR                  Uc  U R                  R                  5       OUUS9  g Nr   )move_old_commentr>   rf   r  s       r   rU   "RoundTripParser.move_token_comment,  +     	BJt||668BV[\r   r   r  r   r  )r   r   r   r    __doc__r   rU   r!   r   r   r   r   r   $  sA    I# MR]]+];I]	] ]r   r   c                  D    \ rS rSrSr S         SS jjrS	S jrSrg)
RoundTripParserSCi2  r  Nc                ^    UR                  Uc  U R                  R                  5       OUUS9  g r  )move_new_commentr>   rf   r  s       r   rU   $RoundTripParserSC.move_token_comment8  r  r   c                   Uc  g US   (       d  g US   S   US-   :X  d   eU R                   R                  S-  nU[        :X  a  g U[        :X  a  S S US   /nS US'   U$ [	        US   5       H3  u  pV[        U R                  R                  U   [        5      (       d  M3    O   g US:X  a  g U[        :X  a  S S US   S U /nUS   US  US'   U$ [        e)Nr   rz      )r'   r   r   r
   	enumeraterF   r>   commentsr	   r   r   )r*   rp   r{   r<   r   _idxcmntidxs          r   r   $RoundTripParserSC.distribute_comment=  s    ?qz qz!}q((( kk**T1&=%<tWQZ(AGAJH&wqz2MD$,,//8:JKK 3
 19((tWQZ./A DE*GAJH!!r   r   r   )
r*   r  r[   r  r  r  r   r  r  r  )rp   r  r{   r  r  r  )r   r   r   r    r   rU   r   r!   r   r   r   r"  r"  2  sD    I HM]]]#&]6D]	]
!"r   r"  N)r   r  r   r  r  r  )
__future__r   ruamel.yaml.errorr   ruamel.yaml.tokensruamel.yaml.eventsruamel.yaml.scannerr   r   r   r	   ruamel.yaml.commentsr
   r   r   ruamel.yaml.compatr   r   ruamel.yaml.tagr   typingr  DictOptionalList__all__r   r   r   r   r"  r   r   r   <module>r:     sk    "X .     G G 0 F F .  7	
	/ 	{
 {
|]f ]," ,"r   