�&ǐk�@'bJ�h�ۊL'}T� :��'2�Z#$��n�a��� �>a��`��_3d�Qpt�/�P -��#5�,�M��� �pA:©�q�����NW��ډ�A���� �9nʺج���� �TSM��{J6?7��r�@�\����D��� �׶���s�f�TJj?"��D��`?��̒� b�#�%�C*v�$�{�$����5Ծ�F�s��y�e/8��h-�f�̰&(����Gj�L:U� 2�� ����v�_k����Y��gp,�k�WF�R������_C�R��N@���R�@�ߔ?A�w9���F("iNa-S���Q�o�3tDMLh*�#4k�T/iQ��Y*�G��m����)��8�hBm/�I�,g�ﯖ���Z��}�Cz�q@´��d.����L�ŕ�,��1�Z�܌�: ̪���F+J-'��c�tvJ8��]Q-��b��y �6;*J`r_�d ��'�G ~p��)'�C,�%F��E(��2�k�����lР�z�!�=t ��_�0��f7��� ;�p�|�U �%defaultsr"r"r# before_getjszInterpolation.before_getcCs|S)Nr")r rBr)r3r>r"r"r# before_setmszInterpolation.before_setcCs|S)Nr")r rBr)r3r>r"r"r# before_readpszInterpolation.before_readcCs|S)Nr")r rBr)r3r>r"r"r# before_writesszInterpolation.before_writeN)r%r&r'rDrErFrGr"r"r"r#rgsc@s.eZdZejdZddZddZddZdS) rz %\(([^)]+)\)scCs$g}|j||||||ddj|S)Nr)_interpolate_somer0)r rBr)r3r>rCLr"r"r#rDszBasicInterpolation.before_getcCs<|jdd}|jjd|}d|kr8td||jdf|S)Nz%%r%z1invalid interpolation syntax in %r at position %d)replace_KEYCREsubr6find)r rBr)r3r> tmp_valuer"r"r#rEs  zBasicInterpolation.before_setcCsp|j||d|d}|tkr&t|||xB|rj|jd} | dkrP|j|dS| dkrv|j|d| || d}|dd} | dkr|jd|dd}q*| dkrV|jj|} | dkrt||d||j| j d} || j d}y || } Wn&t k r"t |||| dYnXd| krJ|j |||| |||dn |j| q*t||d |fq*WdS) NT)rawfallbackrKrrHr9(z'bad interpolation variable reference %rz/'%%' must be followed by '%%' or '(', found: %r)getrr rOr,rMmatchr optionxformgroupendKeyErrorr rI)r rBr3accumrestr)mapdepthr5pcmvarvr"r"r#rIsF              z$BasicInterpolation._interpolate_someN) r%r&r'recompilerMrDrErIr"r"r"r#rws c@s.eZdZejdZddZddZddZdS) rz \$\{([^}]+)\}cCs$g}|j||||||ddj|S)NrHr)rIr0)r rBr)r3r>rCrJr"r"r#rDsz ExtendedInterpolation.before_getcCs<|jdd}|jjd|}d|kr8td||jdf|S)Nz$$r$z1invalid interpolation syntax in %r at position %d)rLrMrNr6rO)r rBr)r3r>rPr"r"r#rEs  z ExtendedInterpolation.before_setcCs|j||d|d}|tkr&t|||x|r|jd} | dkrP|j|dS| dkrv|j|d| || d}|dd} | dkr|jd|dd}q*| dkr|jj|} | dkrt||d|| jdj d } || j d}|} |}yrt | dkr |j | d}||}nHt | dkrV| d} |j | d}|j| |dd }nt||d |fWn2t ttfk rt|||d j| dYnXd|kr|j||||| t|j| dd |dn |j|q*t||d |fq*WdS) NT)rQrRrerrHr9{z'bad interpolation variable reference %r:)rQzMore than one ':' found: %rz-'$' must be followed by '$' or '{', found: %r)rTrr rOr,rMrUr rWsplitrXlenrVrYrrr r0rIdictitems)r rBr3rZr[r)r\r]r5r^r_r`pathZsectoptrbr"r"r#rIs^              z'ExtendedInterpolation._interpolate_someN) r%r&r'rcrdrMrDrErIr"r"r"r#rs c@s2eZdZejdZddZddZeddZ dS) rz%\(([^)]*)\)s|.c Cs|}t}x|r|d8}|rd|krtj|j|d}|jj||}y ||}Wqtk r} zt|||| jddWYdd} ~ XqXq Pq W|rd|krt ||||S)NrHz%()rBr) r functoolspartial_interpolation_replacerMrNrYr r*r ) r rBr)r3r>varsr5r]rLer"r"r#rDs"  (  zLegacyInterpolation.before_getcCs|S)Nr")r rBr)r3r>r"r"r#rE#szLegacyInterpolation.before_setcCs,|jd}|dkr|jSd|j|SdS)NrHz%%(%s)s)rWrV)rUrBsr"r"r#rp&s z*LegacyInterpolation._interpolation_replaceN) r%r&r'rcrdrMrDrE staticmethodrpr"r"r"r#r s c s*eZdZdZdZdZeZej eej Z ej ej ddej Z ej ej ddej Zej dZddddddddd Zd edfdcddd ddeeedddZddZddZddZddZddZdeddZdfddZdgd!d"Zdhd$d%Zdid&d'Zdd ed(d)d*Zd+d,Z dd ed(d-d.Z!dd ed(d/d0Z"dd ed(d1d2Z#dd ed(d3d4Z$edd ffd5d6 Z%d7d8Z&d9d:Z'd;d<Z(djd=d>Z)dkd?d@Z*dAdBZ+dCdDZ,dEdFZ-dGdHZ.dIdJZ/dKdLZ0dMdNZ1dOdPZ2dQdRZ3dSdTZ4dUdVZ5dWdXZ6dYdZZ7d[d\Z8d]d]d]d^d_d`Z9e:dadbZ;Z[^]]+) # very permissive! \] # ] a (?P