+
    iX  c                   s   ^ RI HtHt ^ RIHt ^ RIt^ RIt^ RIt^ RI	t	^ RI
t
^ RIt^ RItR7t]tRt^
t ! R R]4      t ! R R]4      t ! R R]4      t ! R R]4      t ! R R]4      t ! R R]4      t ! R  R
]4      t ! R! R]4      t ! R" R	]4      t ! R# R]4      t ! R$ R]4      t ! R% R]4      t ! R& R]4      t ! R' R(4      t  ! R) R]4      t!] ! 4       t"]#! 4       t$ ! R* R4      t% ! R+ R]%4      t& ! R, R]%4      t' ! R- R.4      t( ! R/ R0])4      t* ! R1 R24      t+ ! R3 R]4      t, ! R4 R],4      t- ! R5 R]4      t. ! R6 R]4      t/R# )8i    )IterableMutableMapping)ChainMapNNoSectionErrorDuplicateOptionErrorDuplicateSectionErrorNoOptionErrorInterpolationErrorInterpolationDepthErrorInterpolationMissingOptionErrorInterpolationSyntaxErrorParsingErrorMissingSectionHeaderErrorMultilineContinuationErrorUnnamedSectionDisabledErrorInvalidWriteErrorConfigParserRawConfigParserInterpolationBasicInterpolationExtendedInterpolationSectionProxyConverterMappingZDEFAULTc                   s4   a  ] tR t^t o RR ltR t]tRtV tR# )Errorc                s<    Wn         \        P                  W4       R # N)message	Exception__init__selfmsg   &&%/usr/lib64/python3.14/configparser.pyr   ZError.__init__   s    4%    c                    V P                   # r   r   r      &r    __repr__ZError.__repr__   s    ||r!   r#   N )	__name__
__module____qualname____firstlineno__r   r&   Z__str____static_attributes____classdictcell____classdict__   @r    r   r      s     & Gr!   r   c                   s&   a  ] tR t^t o R tRtV tR# )r   c                sV    \         P                  V R V: 24       Wn        V3V n        R# )zNo section: N)r   r   sectionargsr   r2   r   r    r   ZNoSectionError.__init__   s!    t:;K	r!   )r3   r2   Nr)   r*   r+   r,   r   r-   r.   r/   r1   r    r   r      s        r!   c                   s*   a  ] tR t^t o RR ltRtV tR# )r   Nc                sx   \        V4      R .pVeW   R\        V4      .pVe!   VP                  RP                  V4      4       VP                  R4       VP                  V4       TpMVP	                  ^ R4       \
        P                  V RP                  V4      4       Wn        W n	        W0n
        WV3V n        R# ) already existsNWhile reading from  [line {0:2d}]z
: section zSection r(   )reprappendformatextendinsertr   r   joinr2   sourcelinenor3   )r   r2   r?   r@   r   r   s   &&&&  r    r   ZDuplicateSectionError.__init__   s    G}/0,d6l;G!/66v>?NN<(NN3CJJq*%tRWWS\*f-	r!   )r3   r@   r2   r?   NNr5   r/   r1   r    r   r      s     . .r!   c                   s*   a  ] tR t^t o RR ltRtV tR# )r   Nc                s   \        V4      R \        V4      R.pVeW   R\        V4      .pVe!   VP                  RP                  V4      4       VP                  R4       VP                  V4       TpMVP	                  ^ R4       \
        P                  V RP                  V4      4       Wn        W n	        W0n
        W@n        WW43V n        R# )z in section r6   Nr7   r8   z	: option zOption r(   )r9   r:   r;   r<   r=   r   r   r>   r2   optionr?   r@   r3   )r   r2   rB   r?   r@   r   r   s   &&&&&  r    r   ZDuplicateOptionError.__init__   s    F|^T'] ",d6l;G!/66v>?NN;'NN3CJJq)$tRWWS\*f5	r!   )r3   r@   rB   r2   r?   rA   r5   r/   r1   r    r   r      s     6 6r!   c                   s&   a  ] tR t^t o R tRtV tR# )r   c                sj    \         P                  V R V: RV: 24       Wn        W n        W3V n        R# )z
No option z in section: Nr   r   rB   r2   r3   )r   rB   r2      &&&r    r   ZNoOptionError.__init__   s.    t) 	*%	r!   r3   rB   r2   Nr5   r/   r1   r    r   r      s     & &r!   c                   &   a  ] tR tRt o R tRtV tR# )r   i  c                sZ    \         P                  W4       Wn        W n        WV3V n        R # r   rC   )r   rB   r2   r      &&&&r    r   ZInterpolationError.__init__	  s$    t!c*	r!   rE   Nr5   r/   r1   r    r   r     s     + +r!   c                   rF   )r	   i  c                st    R P                  WWC4      p\        P                  WW%4       W@n        WW43V n        R# )zBad value substitution: option {!r} in section {!r} contains an interpolation key {!r} which is not a valid option name. Raw value: {!r}N)r;   r   r   	referencer3   )r   rB   r2   rawvalrH   r      &&&&& r    r   Z(InterpolationMissingOptionError.__init__  s;    !!'!K 	 	##D'?"f8	r!   )r3   rH   Nr5   r/   r1   r    r	   r	     s     9 9r!   c                   s    ] tR tRtRtR# )r
   i   N)r)   r*   r+   r,   r-   rK   r!   r    r
   r
     s    r!   c                   rF   )r   i$  c                sr    R P                  W\        V4      p\        P                  WW$4       WV3V n        R# )zRecursion limit exceeded in value substitution: option {!r} in section {!r} contains an interpolation key which cannot be substituted in {} steps. Raw value: {!r}N)r;   MAX_INTERPOLATION_DEPTHr   r   r3   )r   rB   r2   rI   r      &&&& r    r   Z InterpolationDepthError.__init__'  s>     &*A! 	
 	##D'?f-	r!   )r3   Nr5   r/   r1   r    r   r   $  s     . .r!   c                   sZ   a a ] tR tRt oV 3R ltR tR t]V3R lR l4       tRt	Vt
V ;t# )r   i1  c                s   < \         SV `  R V: 24       Wn        . V n        V3V n        V'       d   V P
                  ! V!   R# R# )z Source contains parsing errors: N)superr   r?   errorsr3   r:   )r   r?   r3   	__class__s   &&*r    r   ZParsingError.__init__4  sA    ;F:FGJ	KK r!   c                s    V P                   P                  W34       V ;P                  R V\        V4      3,          ,          un        R# )z
	[line %2d]: %sN)rO   r:   r   r9   )r   r@   linerD   r    r:   ZParsingError.append<  s3    F>*,T
/CCCr!   c                s^    V F&  pVP                    F  pV P                  ! V!   K  	  K(  	  V # r   )rO   r:   )r   ZothersZotherZerror   &&  r    combineZParsingError.combine@  s-    EU# &  r!   c                s.   < V ^8  d   QhRS[ R,          /# )   
exceptionsr   )r    r;   r0      "r    __annotate__ZParsingError.__annotate__G  s     7 7x7 7r!   c                s    \        V 4      p \        P                  ! \        4      ;_uu_ 4        \	        V 4      P                  V 4      h  + '       g   i     R # ; ir   )iter
contextlibZsuppressZStopIterationZnextrS   )rU   r%   r    
_raise_allZParsingError._raise_allF  sA    
 *%
  //z"**:66 0//s   A		A	)r3   rO   r?   )r)   r*   r+   r,   r   r:   rS   Zstaticmethodr[   r-   r.   __classcell__rP   r0      @@r    r   r   1  s.     D 7 7 7r!   c                   rF   )r   iQ  c                z    \         P                  V R WV3,          4       Wn        W n        W0n        WV3V n        R# )z7File contains no section headers.
file: %r, line: %d
%rNr   r   r?   r@   rQ   r3   r   filenamer@   rQ   rG   r    r   Z"MissingSectionHeaderError.__init__T  s>    Gt$%	& 	t,	r!   r3   rQ   r@   r?   Nr5   r/   r1   r    r   r   Q  s     - -r!   c                   rF   )r   i_  c                r_   )zHKey without value continued with an indented line.
file: %r, line: %d
%rNr`   ra   rG   r    r   Z#MultilineContinuationError.__init__a  s@    %%&	'
 	t,	r!   rc   Nr5   r/   r1   r    r   r   _  s     	- 	-r!   c                   rF   )r   im  c                s2    \         P                  V R 4       R# )z(Support for UNNAMED_SECTION is disabled.Nr   r   r$   r%   r    r   Z$UnnamedSectionDisabledError.__init__p  s    tGHr!   rK   Nr5   r/   r1   r    r   r   m  s     I Ir!   c                   rF   )_UnnamedSectionit  c                s    R # )z<UNNAMED_SECTION>rK   r$   r%   r    r&   Z_UnnamedSection.__repr__v  s    "r!   rK   N)r)   r*   r+   r,   r&   r-   r.   r/   r1   r    re   re   t  s     # #r!   re   c                   s*   a  ] tR tRt o RR ltRtV tR# )r   iy  c                s0    \         P                  W4       R # r   rd   r   r   r    r   ZInvalidWriteError.__init__~  s    t!r!   rK   Nr'   r5   r/   r1   r    r   r   y  s     
" "r!   c                   s8   a  ] tR tRt o R tR tR tR tRtV t	R# )r   i  c                    V# r   rK   )r   parserr2   rB   valuedefaultss   &&&&&&r    
before_getZInterpolation.before_get      r!   c                rf   r   rK   r   rg   r2   rB   rh      &&&&&r    
before_setZInterpolation.before_set  rk   r!   c                rf   r   rK   rl   rm   r    before_readZInterpolation.before_read  rk   r!   c                rf   r   rK   rl   rm   r    before_writeZInterpolation.before_write  rk   r!   rK   N)
r)   r*   r+   r,   rj   rn   ro   rp   r-   r.   r/   r1   r    r   r     s      r!   c                   V   a  ] tR tRt o ]P
                  ! R4      tR tR tR t	Rt
V tR# )r   i  z%\(([^)]+)\)sc           	     P    . pV P                  WWdW%^4       RP                  V4      #    r(   _interpolate_somer>   r   rg   r2   rB   rh   ri   ZL   &&&&&& r    rj   ZBasicInterpolation.before_get  )    vqANwwqzr!   c                    VP                  R R4      pV P                  P                  RV4      pRV9   d#   \        RWEP	                  R4      3,          4      hV# )z%%r(   %1invalid interpolation syntax in %r at position %dreplace_KEYCREsub
ValueErrorfindr   rg   r2   rB   rh   Z	tmp_valuerJ   r    rn   ZBasicInterpolation.before_set  ^    MM$+	LL$$R3	) +.3^^C5H-IJ K Kr!   c           
     s   VP                  WRR VR7      pV\        8  d   \        W%V4      hV'       Ed4   VP                  R4      p	V	^ 8  d   VP	                  V4       R# V	^ 8  d   VP	                  VRV	 4       WIR pVR,          p
V
R8X  d   VP	                  R4       VR,          pK  V
R8X  d   V P
                  P                  V4      pVf   \        W%RV,          4      hVP                  VP                  ^4      4      pWKP                  4       R p Wl,          pRT9   d   T P                  YY=YVT^,           4       EK  TP	                  T4       EK,  \        W%RV: 24      hR#   \         d    \        Y%Y4      Rhi ; i)	Trawfallbackr{   Nrt   rT   NrT   NNZ('bad interpolation variable reference %rz+'%' must be followed by '%' or '(', found: )getrL   r   r   r:   r   matchr
   optionxformgroupendKeyErrorr	   rv   )r   rg   rB   accumrestr2   mapdepthrI   pcmZvarvs   &&&&&&&&      r    rv   Z$BasicInterpolation._interpolate_some  s   GE**)&6BBd		#A1uT"1uT"1X&BxS	ACxS!BxcLL&&t,926ADHJ J((4EEGH~@A !8**65+2D LLO.G#'*+ +? ,   @96;?@@s   E* *FrK   Nr)   r*   r+   r,   recompiler   rj   rn   rv   r-   r.   r/   r1   r    r   r     s*      jj)*G
'+ '+r!   c                   rq   )r   i  z\$\{([^}]+)\}c           	     rr   rs   ru   rw   rx   r    rj   Z ExtendedInterpolation.before_get  ry   r!   c                rz   )z$$r(   $r|   r}   r   rJ   r    rn   Z ExtendedInterpolation.before_set  r   r!   c                s   VP                  WRR VR7      pV\        8  d   \        W%V4      hV'       Ed   VP                  R4      p	V	^ 8  d   VP	                  V4       R# V	^ 8  d   VP	                  VRV	 4       WIR pVR,          p
V
R8X  d   VP	                  R4       VR,          pK  V
R8X  EdK   V P
                  P                  V4      pVf   \        W%RV,          4      hVP                  ^4      P                  R4      pWKP                  4       R pTpTp \        V4      ^8X  d"   VP                  V^ ,          4      pWn,          pMU\        V4      ^8X  d6   V^ ,          pVP                  V^,          4      pVP                  WR R	7      pM\        W%R
V: 24      hVf   EK}  RV9   d:   V P%                  WW?V\'        VP)                  VR R	7      4      V^,           4       EK  VP	                  V4       EK  \        W%RV: 24      hR#   \        \        \        3 d    \!        Y%TRP#                  T4      4      Rhi ; i)Tr   r   Nr   r   Z{r   :)r   zMore than one ':' found: z+'$' must be followed by '$' or '{', found: )r   rL   r   r   r:   r   r   r
   r   Zsplitr   lenr   r   r   r   r	   r>   rv   dictitems)r   rg   rB   r   r   r2   r   r   rI   r   r   r   ZpathZsectZoptr   s   &&&&&&&&        r    rv   Z'ExtendedInterpolation._interpolate_some  s/   GE**)&6BBd		#A1uT"1uT"1X&BxS	ACxS!BxcLL&&t,926ADHJ Jwwqz'',EEGH~K4yA~$00a9HTa#Aw$00a9"JJtdJ;6"G=ACE E 9!8**6$+/Tt0L+M+0196 LLO.G#'*+ +] D !.-@ K9$AFJKKs   0H AH H 4IrK   Nr   r/   r1   r    r   r     s*      jj)*G
6+ 6+r!   c                   sF   a  ] tR tRt o RtRtRt^ t^ tR t	V 3R lt
RtV tR# )
_ReadStatei/  Nc                sB    \        4       V n        \        4       V n        R # r   )setelements_addedlistrO   r$   r%   r    r   Z_ReadState.__init__8  s    !efr!   c                s   < V ^8  d   Qh/ S[ S[,          ;R&   S[S[S[3,          R,          ;R&   S[R,          ;R&   S[R,          ;R&   S[;R&   S[;R&   S[S[,          ;R&   # )	rT   r   Ncursectsectnameoptnamer@   indent_levelrO   )r   strr   intr   r   rV   rW   r    rX   Z_ReadState.__annotate__/  sz     X 38nt#*  Tz   Dj	 
     , r!   )r   rO   )r)   r*   r+   r,   r   r   r   r@   r   r   Z__annotate_func__r-   r.   r/   r1   r    r   r   /  s*     &*G HGFL  r!   r   c                   s<   a a ] tR tRt oRtV 3R ltR tRtVtV ;t	# )_Linei=  c                s"   < \         SV `  W4      # r   )rN   __new__)Zclsvalr3   kwargsrP   s   &&*,r    r   Z_Line.__new__@  s    ws((r!   c                sx    VP                  4       pVP                  V4      V n        W0P                  8g  V n        R # r   )stripcleanhas_comments)r   r   ZcommentsZtrimmed   &&& r    r   Z_Line.__init__C  s,    ))+^^G,
#zz1r!   )r   r   )
r)   r*   r+   r,   Z	__slots__r   r   r-   r.   r\   r]   r^   r    r   r   =  s     'I)2 2r!   r   c                   s2   a  ] tR tRt o R tR tR tRtV tR# )_CommentSpeciI  c                s    R  V 4       pR V 4       p\         P                  ! RP                  \        P                  ! W44      4      4      V n        R# )c              3   V   "   T F  pR \         P                  ! V4       R2x  K!  	  R# 5i)z^(z).*Nr   Zescape.0Zprefix   & r    	<genexpr>(_CommentSpec.__init__.<locals>.<genexpr>K  s,      
 ( "))F#$C('   ')c              3   r   )z(^|\s)(z.*)Nr   r   r   r    r   r   P  s,      
 * ryy()-)r   |N)r   r   r>   	itertoolschainpattern)r   Zfull_prefixesZinline_prefixesZfull_patternsZinline_patterns   &&&  r    r   Z_CommentSpec.__init__J  sH    
 (


 *

 zz#((9??=+Z"[\r!   c                sV    V P                   P                  R V4      P                  4       # r'   )r   r   rstripr   Ztextr   r    r   Z_CommentSpec.stripW  s"    ||D)0022r!   c                s    \        W4      # r   )r   r   r   r    wrapZ_CommentSpec.wrapZ  s    T  r!   )r   N)	r)   r*   r+   r,   r   r   r   r-   r.   r/   r1   r    r   r   I  s     ]3! !r!   r   c                   sF  a a ] tR tRt oRtRtRt]! 4       t]	P                  ! ]]	P                  4      t]	P                  ! ]P                  RR7      ]	P                  4      t]	P                  ! ]P                  RR7      ]	P                  4      t]	P                  ! R4      tRR	R
R	RR	RR	RRRRRRRR/tR]R3RRPRRQRRRR	RR	R]R]R]RR/	R lltR tR tR tR  tR! tRRR" ltRRR# ltRSR$ ltRTR% ltR&RR'RR(]/R) ltR* t R&RR'RR(]/R+ lt!R&RR'RR(]/R, lt"R&RR'RR(]/R- lt#R&RR'RR(]/R. lt$]RR3V 3R/ llt%R0 t&R1 t'R2 t(RRR3 lt)RUR4 lt*RVR5 lt+R6 t,R7 t-R8 t.R9 t/R: t0R; t1R< t2R= t3R> t4R? t5R@ t6RA t7RB t8RC t9RD t:RE t;RF t<RG t=RH t>RIRJRKRJRLRJ/RM lt?]@RN 4       tAROtBVtCV ;tD# )Wr   i^  z
        \[                                 # [
        (?P<header>.+)                     # very permissive!
        \]                                 # ]
        a  
        (?P<option>.*?)                    # very permissive!
        \s*(?P<vi>{delim})\s*              # any number of space/tab,
                                           # followed by any of the
                                           # allowed delimiters,
                                           # followed by any space/tab
        (?P<value>.*)$                     # everything up to eol
        a  
        (?P<option>.*?)                    # very permissive!
        \s*(?:                             # any number of space/tab,
        (?P<vi>{delim})\s*                 # optionally followed by
                                           # any of the allowed
                                           # delimiters, followed by any
                                           # space/tab
        (?P<value>.*))?$                   # everything up to eol
        z=|:delimz\SZ1TZyesZtrueZonZ0FZnoZfalseZoffN
delimiterscomment_prefixesinline_comment_prefixesstrictempty_lines_in_valuesdefault_sectioninterpolation
convertersallow_unnamed_sectionc       	        s   W n         V P                  4       V n        V P                  4       V n        \        V 4      V n        V P                  4       V n        \        W	4      V P
                  V	&   \        V4      V n        VR8X  d'   V'       d   V P                  MV P                  V n        MRP                  R V 4       4      pV'       dF   \        P                  ! V P                  P!                  VR7      \        P"                  4      V n        MD\        P                  ! V P$                  P!                  VR7      \        P"                  4      V n        \'        T;'       g    RT;'       g    R4      V n        Wpn        W0n        Wn        Wn        Wn        V P2                  \4        J d   V P6                  V n        V P2                  f   \9        4       V n        \;        V P2                  \8        4      '       g"   \=        R\?        V P2                  4       24      hV\4        Jd   V P                  PA                  V4       V'       d   V PC                  V4       Wn"        R# )=r   c              3   sN   "   T F  p\         P                  ! V4      x  K  	  R # 5ir   r   )r   dr   r    r   Z+RawConfigParser.__init__.<locals>.<genexpr>  s     :z!1zs   #%r   NzSinterpolation= must be None or an instance of Interpolation; got an object of type r   r   rK   )#_dict	_sections	_defaultsr   _converters_proxiesr   Ztuple_delimiters	OPTCRE_NVOPTCRE_optcrer>   r   r   _OPT_NV_TMPLr;   VERBOSE	_OPT_TMPLr   	_comments_strict_allow_no_value_empty_lines_in_valuesr   _interpolation_UNSET_DEFAULT_INTERPOLATIONr   
isinstance	TypeErrortypeupdate_read_defaults_allow_unnamed_section)r   ri   Z	dict_typeZallow_no_valuer   r   r   r   r   r   r   r   r   r   s   &&&&$$$$$$$$$ r    r   ZRawConfigParser.__init__  s    
+D1

)5d)Lo& ,#-;4>>DL:z::A!zz$*;*;*B*B*B*K*,** 6  "zz$..*?*?a*?*H*,** 6%&6&<&<">U>[>[Y[\-&;#,+&("&"="=D&"//D$--}==**.t/B/B*C)DF  V###J/)&;#r!   c                r"   r   )r   r$   r%   r    ri   ZRawConfigParser.defaults  s    ~~r!   c                sH    \        V P                  P                  4       4      # r   )r   r   keysr$   r%   r    sectionsZRawConfigParser.sections  s     DNN'')**r!   c                s.   WP                   8X  d   \        R V,          4      hV\        J d   V P                  '       g   \        hWP
                  9   d   \        V4      hV P                  4       V P
                  V&   \        W4      V P                  V&   R# )zInvalid section name: %rN)
r   r   UNNAMED_SECTIONr   r   r   r   r   r   r   r4   r   r    add_sectionZRawConfigParser.add_section  sw     ***7'ABBo%...11nn$'00"&**,w!-d!<gr!   c                s    WP                   9   # r   )r   r4   r   r    has_sectionZRawConfigParser.has_section  s    
 ..((r!   c                s     V P                   V,          P                  4       pTP	                  T P
                  4       \        TP                  4       4      #   \         d    \        T4      R hi ; ir   )r   copyr   r   r   r   r   r   )r   r2   Zopts   && r    optionsZRawConfigParser.options  s_    	4>>'*//1D 	DNN#DIIK    	4 )t3	4s   !A A/c                s   \        V\        \        \        P                  34      '       d   V.p\
        P                  ! V4      p. pV Fy  p \        WBR 7      ;_uu_ 4       pV P                  WT4       RRR4       \        T\        P                  4      '       d   \        P                  ! T4      pTP                  T4       K{  	  V#   + '       g   i     L]; i  \         d     K  i ; i))encodingN)r   r   ZbytesosZPathLikeioZtext_encodingZopen_readZOSErrorZfspathr:   )r   Z	filenamesr   Zread_okrb   fp   &&&   r    readZRawConfigParser.read  s     i#ubkk!:;;"I##H-!H(66"JJr, 7 (BKK0099X.NN8$ "  76 s0   C!C3CCCCC*)C*c                sp    Vf    VP                   pV P                  W4       R #   \         d    Rp L"i ; i)Nz<???>)nameAttributeErrorr   )r   Zfr?   rD   r    	read_fileZRawConfigParser.read_file  s;     >! 	

1 " ! !s   % 55c                sT    \         P                  ! V4      pV P                  W24       R # r   )r   ZStringIOr   )r   Zstringr?   Zsfiler   r    read_stringZRawConfigParser.read_string	  s    F#u%r!   c                s4   \        4       pVP                  4        F  w  rEV\        Jd   \        V4      p V P	                  V4       VP                  V4       VP                  4        Fx  w  rgV P                  \        V4      4      pVe   \        V4      pV P                  '       d   WF3V9   d   \        WFV4      hVP                  WF34       V P                  WFV4       Kz  	  K  	  R #   \
        \        3 d    T P                  '       d   YC9   d   h  Li ; ir   )r   r   r   r   r   r   r   r   addr   r   )r   Z
dictionaryr?   r   r2   r   keyrh   s   &&&     r    	read_dictZRawConfigParser.read_dict  s     '--/MGo-g,  ) w'"jjl
&&s3x0$JE<<<WNn$D.wVDD""G>2u- + 0
 *:6 <<<G$=s   C**"DDDr   varsr   c               s<    V P                  W4      pT P                  T4      p Yb,          pT'       g   Tf   T# T P                  P                  YY'T4      #   \         d    T\        J d   h Tu # i ; i  \         d    T\        J d   \        Y!4      hTu # i ; ir   )_unify_valuesr   r   r   r   r   r   rj   )r   r2   rB   r   r  r   r   rh   s   &&&$$$  r    r   ZRawConfigParser.get.  s    	 ""71A !!&)	 IE %-L&&11$235 5#  	 6!		   	 6!#F44		 s"   A A6 A32A36"BBc                s4    V! V P                   ! W3/ VB 4      # r   )r   )r   r2   convrB   r   s   &&&&,r    _getZRawConfigParser._getS  s    DHHW7788r!   c               s|     V P                   ! WV3R VRV/VB #   \        \        3 d    T\        J d   h Tu # i ; i)r   r  )r  r   r   r   )r   r2   rB   r  r   r  r   r   s   &&&&$$$,r    	_get_convZRawConfigParser._get_convV  sV    	99WF ' '$ '%' '. 	6!O	s    ;;c          	     >    V P                   ! W\        3R VRVRV/VB # r   r  r   )r  r   r   r2   rB   r   r  r   r      &&&$$$,r    getintZRawConfigParser.getinta  s5    ~~gs ; ;$ ;'/;39; 	;r!   c          	     r  r  )r  Zfloatr  r	  r    getfloatZRawConfigParser.getfloatf  s5    ~~gu ;# ;D ;'/;39; 	;r!   c          	     sJ    V P                   ! WV P                  3R VRVRV/VB # r  )r  _convert_to_booleanr  r	  r    
getbooleanZRawConfigParser.getbooleank  sC    ~~gt/G/G O"%O,0O;COGMO 	Or!   c                s  <a aa	 S\         J d   \        S
S `	  4       # S P                  P	                  4       o	 S	P                  S P                  S,          4       \        S	P                  4       4      pV'       d.   VP                  4        F  w  rVVS	S P                  V4      &   K  	  V	VV 3R  lpV'       d   V	3R lpV Uu. uF  qV! V4      3NK  	  up#   \         d     SS P                  8w  d   \        S4      h Li ; iu upi )c                 sP   < SP                   P                  SSV SV ,          S4      # r   )r   rj   )rB   r   r2   r   s   &r    <lambda>'RawConfigParser.items.<locals>.<lambda>  s%    d&9&9&D&DTVQvY'+r!   c                 s   < SV ,          # r   rK   )rB   r   s   &r    r  r    s	    !F)r!   )r   rN   r   r   r   r   r   r   r   r   r   r   r   )r   r2   r   r  Z	orig_keysr   rh   Zvalue_getterrB   r   rP   s   ff&&     @r    r   ZRawConfigParser.itemsp  s     f7=?"NN!	.HHT^^G,- N	"jjl
+0$""3'( ++3L=FGY6f-.YGG  	.$...$W-- /	. Hs   "C D'D Dc                sV    V P                  4        F  pW,          pW W3u # 	  \        hr   )r   r   r   r   rh   s   &  r    popitemZRawConfigParser.popitem  s/     ==?CIE	: # r!   c                s"    VP                  4       # r   )lower)r   Z	optionstrr   r    r   ZRawConfigParser.optionxform  s      r!   c                s   V'       d   WP                   8X  d    V P                  V4      pW P                  9   # WP                  9  d   R # V P                  V4      pW P                  V,          9   ;'       g    W P                  9   # F)r   r   r   r   )r   r2   rB   rD   r    
has_optionZRawConfigParser.has_option  st     '%9%99%%f-F^^++NN*%%f-FnnW55 0 0/1r!   c                s   V'       d   V P                   P                  WVV4      pV'       d   WP                  8X  d   V P                  pM V P                  V,          pW4V P                  V4      &   R #   \
         d    \        T4      R hi ; ir   )r   rn   r   r   r   r   r   r   )r   r2   rB   rh   sectdictrM   r    r   ZRawConfigParser.set  s    ''224&38:E'%9%99~~H8>>'2 .3!!&)*  8$W-478s   A4 4Bc                s   V'       d$   R P                  V P                  ^ ,          4      pMV P                  ^ ,          pV P                  '       d6   V P                  WP                  V P                  P                  4       V4       \        V P                  9   d[   V P                  \        ,          '       d>   V P                  V\        V P                  \        ,          P                  4       VRR7       V P                   FA  pV\        J d   K  V P                  WV P                  V,          P                  4       V4       KC  	  R# )z {} T)unnamedN)r;   r   r   _write_sectionr   r   r   r   )r   r   Zspace_around_delimitersr   r2   r   r    writeZRawConfigParser.write  s     #d..q12A  #A>>>$8$8$(NN$8$8$:A?dnn,1P1POT^^O5T5Z5Z5\^_imn~~G/) $w 7 = = ?D &r!   c                s   V'       g!   VP                  R P                  V4      4       V F  w  rgV P                  V4       V P                  P	                  WVV4      pVf   V P
                  '       g$   V\        V4      P                  RR4      ,           pMRpVP                  RP                  Wg4      4       K  	  VP                  R4       R# )z[{}]
N
z
	r(   z{}{}
)r  r;   _validate_key_contentsr   rp   r   r   r~   )r   r   Zsection_nameZsection_itemsZ	delimiterr  r   rh   s   &&&&&&  r    r  ZRawConfigParser._write_section  s    HHX__\23'JC'',''44T5:<E (<(<(<!CJ$6$6tV$DDHHX__S01 ( 	r!   c                s    V'       d   WP                   8X  d   V P                  pM V P                  V,          pV P                  V4      pW#9   pV'       d   W2 V#   \         d    \	        T4      R hi ; ir   )r   r   r   r   r   r   )r   r2   rB   r  existedr   r    remove_optionZRawConfigParser.remove_option  sr    '%9%99~~H8>>'2 !!&)$   8$W-478s   A A3c                sf    WP                   9   pV'       d   V P                   V V P                  V V# r   )r   r   )r   r2   r  r   r    remove_sectionZRawConfigParser.remove_section  s.    ^^+w'g&r!   c                s    WP                   8w  d#   V P                  V4      '       g   \        V4      hV P                  V,          # r   )r   r   r   r   r   r   r   r    __getitem__ZRawConfigParser.__getitem__  s7    &&&t/?/?/D/D3-}}S!!r!   c                s
   W9   d   W,          VJ d   R # WP                   8X  d   V P                  P                  4        M1WP                  9   d"   V P                  V,          P                  4        V P	                  W/4       R # r   )r   r   Zclearr   r   r  rD   r    __setitem__ZRawConfigParser.__setitem__  s`     ;49- &&&NN  "NN"NN3%%'|$r!   c                s    WP                   8X  d   \        R 4      hV P                  V4      '       g   \        V4      hV P	                  V4       R# )z"Cannot remove the default section.N)r   r   r   r   r  r  r   r    __delitem__ZRawConfigParser.__delitem__  sC    &&&ABB$$3-C r!   c                sP    WP                   8H  ;'       g    V P                  V4      # r   )r   r   r  r   r    __contains__ZRawConfigParser.__contains__  s$    ***CCd.>.>s.CCr!   c                s:    \        V P                  4      ^,           # )rt   )r   r   r$   r%   r    __len__ZRawConfigParser.__len__  s    4>>"Q&&r!   c                sv    \         P                  ! V P                  3V P                  P	                  4       4      # r   )r   r   r   r   r   r$   r%   r    __iter__ZRawConfigParser.__iter__  s)     4 468K8K8MNNr!   c                s     \         P                  V P                  W4      4       V P                  4        R #   T P                  4        i ; ir   )r   r[   _read_inner_join_multiline_values)r   r   fpnamerD   r    r   ZRawConfigParser._read  s9    "	*##D$4$4R$@A'')D'')s	   $8 A
c                s   \        4       p\        \        V P                  P                  V4      ^R7       EF,  w  Vn        pVP                  '       g   V P                  '       d   VP                  '       gl   VP                  e^   VP                  '       dL   VP                  VP                  ,          e-   VP                  VP                  ,          P                  R4       M\        P                  Vn        K  V P                  P!                  V4      pV'       d   VP#                  4       M^ Vn        V P'                  W4V4      '       d   EK  V P)                  W4V4       EK/  	  VP*                  # )rt   )startr(   )r   Z	enumerater   r   r   r@   r   r   r   r   r   r:   sysZmaxsizer   NONSPACECREZsearchr(  cur_indent_level_handle_continuation_line_handle_restrO   )r   r   r'  strQ   Zfirst_nonspacer   r    r%  ZRawConfigParser._read_inner2  s   \(T^^-@-@")EQOOOBIt:::... !---

.




2::.:

2::.55b9 '*kkBO!--44T:N<J."6"6"8PQB--b??b/+  P. yyr!   c                sr   VP                   R J;'       d.    VP                  ;'       d    VP                  VP                  8  pV'       dl   VP                   VP                  ,          f   \	        W1P
                  V4      hVP                   VP                  ,          P                  VP                  4       V# r   )r   r   r+  r   r   r@   r:   r   )r   r.  rQ   r'  Zis_continuerM   r    r,  Z)RawConfigParser._handle_continuation_lineN  s    zz- 2 2"** 2 2"//1 	zz"**%-0DIIJJrzz"))$**5r!   c                s   V P                   '       d&   VP                  f   V P                  V\        V4       VP                  Vn        V P                  P                  VP                  4      pV'       g%   VP                  f   \        W1P                  V4      hV'       d$   V P                  WP                  R4      V4       R # V P                  WV4       R # )NZheader)r   r   _handle_headerr   r+  r   SECTCREr   r   r   r@   r   _handle_option)r   r.  rQ   r'  morM   r    r-  ZRawConfigParser._handle_restX  s    &&&2::+=OV<--\\

+bjj(+FIItDD?AB 2F;tGZGZ[]ekGlr!   c                s   W!n         VP                   V P                  9   d   V P                  '       d=   VP                   VP                  9   d"   \	        VP                   VVP
                  4      hV P                  VP                   ,          Vn        VP                  P                  VP                   4       MVP                   V P                  8X  d   V P                  Vn        MV P                  4       Vn        VP                  V P                  VP                   &   \        WP                   4      V P                  VP                   &   VP                  P                  VP                   4       R Vn        R # r   )r   r   r   r   r   r@   r   r   r   r   r   r   r   r   )r   r.  r   r'  rG   r    r/  ZRawConfigParser._handle_headerf  s    ;;$..(|||r/@/@ @+BKK,.II7 74BJ!!"++.[[D000BJBJ*,**DNN2;;')5dKK)HDMM"++&!!"++.
r!   c                s   VP                   Vn        V P                  P                  VP                  4      pV'       g2   VP
                  P                  \        W1P                  V4      4       R # VP                  RRR4      w  Vn
        rVVP                  '       g0   VP
                  P                  \        W1P                  V4      4       V P                  VP                  P                  4       4      Vn
        V P                  '       dS   VP                  VP                  3VP                  9   d,   \!        VP                  VP                  W1P                  4      hVP                  P#                  VP                  VP                  34       Ve-   VP%                  4       pV.VP&                  VP                  &   R # R VP&                  VP                  &   R # )NrB   virh   )r+  r   r   r   r   rO   r:   r   r@   r   r   r   r   r   r   r   r   r   r   r   )r   r.  rQ   r'  r2  r3  Zoptvals   &&&&   r    r1  ZRawConfigParser._handle_optionx  sJ   --\\

+
 II\&))TBC!#(D'!B
BzzzII\&))TBC%%bjj&7&7&9:
LLL[["**%):)::&r{{BJJ$*II7 7
r{{BJJ78 \\^F&,XBJJrzz" &*BJJrzz"r!   c                s   V P                   V P                  3p\        P                  ! V3V P                  P                  4       4      pV Fr  w  r4VP                  4        FY  w  rV\        V\        4      '       d    R P                  V4      P                  4       pV P                  P                  V VWV4      WE&   K[  	  Kt  	  R# )r  N)r   r   r   r   r   r   r   r   r>   r   r   ro   )r   ri   Zall_sectionsr2   r   r   r   s   &      r    r&  Z&RawConfigParser._join_multiline_values  s    ''7 {'+~~';';'=? ,G$]]_	c4(())C.//1C $ 3 3 ? ?@G@D!K - !-r!   c                sr    VP                  4        F"  w  r#W0P                  V P                  V4      &   K$  	  R # r   )r   r   r   )r   ri   r   rh   rR   r    r   ZRawConfigParser._read_defaults  s.     #..*JC49NN4++C01 +r!   c                s>   / p V P                   V,          p/ pV'       d<   VP	                  4        F'  w  rVVe   \        V4      pWdV P                  V4      &   K)  	  \        WCV P                  4      #   \         d     YP                  8w  d   \        T4      R h Li ; ir   )	r   r   r   r   r   r   r   	_ChainMapr   )r   r2   r  ZsectiondictZvardictr   rh      &&&    r    r  ZRawConfigParser._unify_values  s    
 	8..1K
 "jjl
$JE16((-. + t~~>>  	8...$W-47 /	8s   A2 2'BBc                s    VP                  4       V P                  9  d   \        R V,          4      hV P                  VP                  4       ,          # )zNot a boolean: %s)r  BOOLEAN_STATESr   )r   rh   r   r    r  Z#RawConfigParser._convert_to_boolean  s@     ;;= 3 3305899""5;;=11r!   c                s    \         P                  ! V P                  V4      '       d   \        R V R24      hV P                   F  pW!9   g   K  \        R V RV 24      h	  R# )zCannot write key z; begins with section patternz; contains delimiter N)r   r   r0  r   r   )r   r   r   r   r    r  Z&RawConfigParser._validate_key_contents  sj     88DLL#&&##C5(EFH H%%E|''u,A%IK K &r!   r2   r(   rB   rh   c               sJ   V\         J d   V P                  '       g   \        hM!\        V\        4      '       g   \        R 4      h\        V\        4      '       g   \        R4      hV P                  '       d	   V'       d$   \        V\        4      '       g   \        R4      hR# R# )z0section names must be strings or UNNAMED_SECTIONzoption keys must be stringszoption values must be stringsN)r   r   r   r   r   r   r   )r   r2   rB   rh   s   &$$$r    _validate_value_typesZ%RawConfigParser._validate_value_types  s     o%...11 /GS))NOO&#&&9::###ueS)) ?@@ * (-r!   c                r"   r   )r   r$   r%   r    r   ZRawConfigParser.converters  s    r!   )r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   )Z#Z;r   )z<string>)z<dict>)Tr  )Er)   r*   r+   r,   Z
_SECT_TMPLr   r   r   r   r   r   r   r0  r;   r   r   r*  r6  _default_dictDEFAULTSECTr   r   ri   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/  r1  r&  r   r  r  r  r7  propertyr   r-   r.   r\   r]   r^   r    r   r   ^  s    J
IL +_jjRZZ0GZZ	((u(5rzzBF 

<..U.;RZZHI**U#K4fdD$5$wueMN !% %,<5?,<",,<FJ,< ,< 59,< "-	,<
  &,<
 39,< (-,<\+
=$)!6&
.@#5% #5d #5V #5J9e $ !;U ; ;;
;u ;4 ; ;
O OT O"O
 #D H<!13D2"
%!D'O*,8m$*>
K:?(2	KAr A" AB A*      r!   c                   sV   a a ] tR tRt o]! 4       tRV 3R lltV 3R ltR tRt	Vt
V ;t# )r   i  c                sL   < V P                  W#R 7       \        SV `	  WV4       R# )rB   rh   N)r7  rN   r   )r   r2   rB   rh   rP   s   &&&&r    r   ZConfigParser.set  s$     	""&">GU+r!   c                sJ   < V P                  VR 7       \        SV `	  V4       R# ))r2   N)r7  rN   r   )r   r2   rP   s   &&r    r   ZConfigParser.add_section  s#     	""7"3G$r!   c                s     V P                   p\        4       V n         V P                  V P                  V/4       W n         R #   XT n         i ; ir   )r   r   r   r   )r   ri   Zhold_interpolationr   r    r   ZConfigParser._read_defaults  sD    	5!%!4!4"//DNND00(;<"4"4Ds   8A 	A)r   r   )r)   r*   r+   r,   r   r   r   r   r   r-   r.   r\   r]   r^   r    r   r     s$      01,%5 5r!   c                   s   a  ] tR tRt o R tR tR tR tR tR t	R t
R	 tR
 t]R 4       t]R 4       tRRRRRRR/R lltRtV tR# )r   i	  c                s    Wn         W n        VP                   FC  pR V,           p\        P                  ! V P
                  \        W4      R7      p\        WV4       KE  	  R# )r   _implN)_parser_namer   	functoolspartialr   getattrsetattr)r   rg   r   r  r   getterr   r    r   ZSectionProxy.__init__  sJ    
%%D$,C&&txxwv7KLFDv& &r!   c                s8    R P                  V P                  4      # )z<Section: {}>)r;   r?  r$   r%   r    r&   ZSectionProxy.__repr__  s    %%djj11r!   c                s    V P                   P                  V P                  V4      '       g   \        V4      hV P                   P	                  V P                  V4      # r   )r>  r  r?  r   r   r  r   r    r  ZSectionProxy.__getitem__  sB    ||&&tzz3773-||

C00r!   c                s    V P                   P                  WR 7       V P                   P                  V P                  W4      # )r;  )r>  r7  r   r?  r  rD   r    r   ZSectionProxy.__setitem__  s2    **#*C||

C77r!   c                s    V P                   P                  V P                  V4      '       d-   V P                   P                  V P                  V4      '       g   \	        V4      hR # r   )r>  r  r?  r  r   r  r   r    r!  ZSectionProxy.__delitem__!  sG    ''

C88**4::s;;3- <r!   c                sN    V P                   P                  V P                  V4      # r   )r>  r  r?  r  r   r    r"  ZSectionProxy.__contains__&  s    ||&&tzz377r!   c                s4    \        V P                  4       4      # r   )r   _optionsr$   r%   r    r#  ZSectionProxy.__len__)  s    4==?##r!   c                s>    V P                  4       P                  4       # r   )rE  r$  r$   r%   r    r$  ZSectionProxy.__iter__,  s    }}''))r!   c                s    V P                   V P                  P                  8w  d&   V P                  P                  V P                   4      # V P                  P	                  4       # r   )r?  r>  r   r   ri   r$   r%   r    rE  ZSectionProxy._options/  sD    ::555<<''

33<<((**r!   c                r"   r   )r>  r$   r%   r    rg   ZSectionProxy.parser5  s     ||r!   c                r"   r   )r?  r$   r%   r    r   ZSectionProxy.name:  s     zzr!   Nr   Fr  r=  c          	     sr    V'       g   V P                   P                  pV! V P                  V3R VRVRV/VB # r  )r>  r   r?  )r   rB   r   r   r  r=  r   r	  r    r   ZSectionProxy.get?  sI     LL$$ETZZ 2S 2t 2&2*02 	2r!   )r?  r>  r   )r)   r*   r+   r,   r   r&   r  r   r!  r"  r#  r$  rE  r:  rg   r   r   r-   r.   r/   r1   r    r   r   	  sz     '21
8 
8$*+    2 2D 22 2r!   c                   sh   a  ] tR tRt o ]P
                  ! R4      tR tR tR t	R t
R tR tR	tV tR
# )r   iO  z^get(?P<name>.+)$c                s(   Wn         / V n        \        V P                   4       Fk  pV P                  P	                  V4      pV'       d&   \        \        V P                   V4      4      '       g   KM  R V P                  VP                  R4      &   Km  	  R # )Nr   )r>  _dataZdir	GETTERCREr   ZcallablerB  r   )r   rg   rD  r   rR   r    r   ZConverterMapping.__init__Y  sf    
$,,'F$$V,AHWT\\6%BCC*.DJJqwwv'	 (r!   c                s(    V P                   V,          # r   )rF  r  r   r    r  ZConverterMapping.__getitem__b  s    zz#r!   c           	     s    R V,           pTR 8X  d   \        R4      hY P                  T&   \
        P                  ! T P                  P                  TR7      pY$n	        \        T P                  Y44       T P                  P                  4        F1  p\
        P                  ! TP                  TR7      p\        YST4       K3  	  R#   \          d&    \        RP                  T\        T4      4      4      hi ; i)r   zIncompatible key: {} (type: {})z)Incompatible key: cannot use "" as a name)r  r<  N)r   r   r;   r   rF  r@  rA  r>  r  Z	converterrC  valuesr   )r   r   rh   kZfuncZproxyrD  r5  r    r   ZConverterMapping.__setitem__e  s    	8A :HII

3  !7!7eDa&\\((*E&&uyy=FEf% +  	8   &sDI 68 8	8s   	C 0C4c                s:    R T;'       g    R,           pT P                  T \        P                  ! T P
                  3T P
                  P                  4       4       F  p \        Y24       K  	  R#   \          d    \        T4      hi ; i  \         d     K=  i ; i)r   N)	r   r   rF  r   r   r>  rH  Zdelattrr   )r   r   rI  ZinstrR   r    r!  ZConverterMapping.__delitem__u  s    	 %A JJsOOOT\\OT\\5H5H5JKD  L  	 3-	  "  s"   	A1 	A1  B1BBBc                ,    \        V P                  4      # r   )rY   rF  r$   r%   r    r$  ZConverterMapping.__iter__  s    DJJr!   c                rJ  r   )r   rF  r$   r%   r    r#  ZConverterMapping.__len__  s    4::r!   )rF  r>  N)r)   r*   r+   r,   r   r   rG  r   r  r   r!  r$  r#  r-   r.   r/   r1   r    r   r   O  s9      

/0I/&   r!   )r   r   r   r   r   r   r	   r
   r   r   r   r   r   r   r   r   r   r   r   r   r9  rL   r   )0Zcollections.abcr    r   Zcollectionsr   r4  rZ   r@  r   r   r   r   r)  Z__all__r   r8  r9  rL   r   r   r   r   r   r   r   r	   r
   r   r   r   r   r   re   r   r   Zobjectr   r   r   r   r   r   r   r   r   r   r   r   rK   r!   r    <module>rK     s  h 5 -   	  	 	 
H  

I 
 U  .E .465 66&E &+ +	9&8 	91 
.0 
.75 7@- -- -I% I# #
" " "# 
  E+ E+PI+M I+X 	2C 	2! !*H
 n H
 V5? 5@C2> C2L8~ 8r!   