
    ]l                        S SK r S SKJr  S SKJr  S SKJr  S SKJr  S SKJ	r	J
r
JrJrJrJr  S SKJr  S SKJr  S S	KJr  S S
KJr  S/r\R*                  " \\R.                  S9r " S S\5      r " S S\5      r " S S\5      r " S S\5      r " S S\5      r " S S\5      r " S S\5      r  " S S\5      r! " S S\5      r" " S S \5      r# " S! S"\5      r$ " S# S$\5      r% " S% S&\5      r&0 \RN                  RP                  \" 5       _\RR                  RP                  \" 5       _\RT                  RP                  \" 5       _\RV                  RP                  \" 5       _\RX                  RP                  \" 5       _\RZ                  RP                  \ " 5       _\R\                  RP                  \!" 5       _\R^                  RP                  \" 5       _\R`                  RP                  \"" 5       _\Rb                  RP                  \$" 5       _\Rd                  RP                  \$" 5       _\Rf                  RP                  \%" 5       _\Rh                  RP                  \" 5       _\Rj                  RP                  \" 5       _\Rl                  RP                  \" 5       _\Rn                  RP                  \" 5       _\Rp                  RP                  \" 5       _\Rr                  RP                  \" 5       \Rt                  RP                  \" 5       \Rv                  RP                  \" 5       \Rx                  RP                  \" 5       \Rz                  RP                  \" 5       \R|                  RP                  \" 5       \R~                  RP                  \" 5       \R                  RP                  \" 5       \R                  RP                  \" 5       0	ErB0 \RR                  R                  \" 5       _\RT                  R                  \" 5       _\RV                  R                  \" 5       _\RX                  R                  \" 5       _\RZ                  R                  \ " 5       _\R\                  R                  \!" 5       _\R^                  R                  \" 5       _\R`                  R                  \"" 5       _\R                  R                  \#" 5       _\Rd                  R                  \$" 5       _\R                  R                  \#" 5       _\Rb                  R                  \$" 5       _\Rf                  R                  \%" 5       _\R                  R                  \&" 5       _\Rh                  R                  \" 5       _\Rj                  R                  \" 5       _\Rl                  R                  \" 5       _\Rn                  R                  \" 5       \Rp                  R                  \" 5       \Rr                  R                  \" 5       \Rt                  R                  \" 5       \Rv                  R                  \" 5       \Rx                  R                  \" 5       \Rz                  R                  \" 5       \R|                  R                  \" 5       \R~                  R                  \" 5       \R                  R                  \" 5       \R                  R                  \" 5       0ErG " S' S(\5      rH\H" \B\G5      rIg))    N)debug)error)eoo)to_bytes)int2octoct2int	ints2octsnullstr2octsisOctetsType)char)tag)univ)usefulencode)flagsc                   H    \ rS rSrSrSr\" \5      rS rS r	S r
S
S jrS	rg)AbstractItemEncoder   T)r   r   c                     Uu  p4nX4-  nU(       a  U[         R                  -  nUS:  a  Xe-  4$ US-  4nUS-  nU(       a  SUS-  -  4U-   nUS-  nU(       a  M  US-  4U-   $ )N            )r   tagFormatConstructed)self	singleTagisConstructedtagClass	tagFormattagId
encodedTag	substrates           +lib/third_party/pyasn1/codec/ber/encoder.py	encodeTagAbstractItemEncoder.encodeTag!   s    %."U)
#222J2:%&& IaKE!UT\24y@	! % %')33    c                     U(       d  U R                   (       a  gUS:  a  U4$ SnU(       a  US-  4U-   nUS-  nU(       a  M  [        U5      nUS:  a  [        R                  " SU-  5      eSU-  4U-   $ )N)r   r          ~   zLength octets overflow (%d))supportIndefLenModelenr   PyAsn1Error)r   lengthdefModer#   substrateLens        r$   encodeLength AbstractItemEncoder.encodeLength5   s    433D=7N I#d],y8	1 & y>Lc!''(E(TUU<')I55r'   c                 .    [         R                  " S5      e)NzNot implemented)r   r/   r   valueasn1Spec	encodeFunoptionss        r$   encodeValueAbstractItemEncoder.encodeValueI   s     122r'   Nc                    Uc  UR                   nOUR                   nU(       d  U R                  " XU40 UD6u  pgnU$ UR                  SS5      n	[        n[	        UR
                  5       GH  u  pU	nU
(       d   U R                  " XU40 UD6u  pgn[        (       a)  [        SU=(       a    S=(       d    S< S	U< S
U< 35        U(       d"  U(       a  UR                  SS5      (       a  Us  $ U(       d  Sn[        (       a  [        S5        U R                  UW5      n[        (       aF  [        SU=(       a    S=(       d    S< SU< S
[        R                  " [        U5      5      < 35        XR                  [!        U5      U5      -  n[        (       a9  [        S[!        U5      < S[        R                  " [        U5      5      < 35        W(       a)  [        U5      U-   nU(       d  X`R"                  -  nGM  GM  X-   nU(       a  GM  X`R$                  -  nGM     W(       d  [        U5      nU$ ! [        R                   a7    [        R                  " 5       n[        R                  " SU< SUS   < 35      ef = f)Nr1   TzError encoding z:    zencoded zconstructed  zvalue z into 
ifNotEmptyFz;overridden encoding mode into definitive for primitive typeztag z octets (tag + payload) into )tagSetr;   getr
   	enumerate	superTagsr   r/   sysexc_infoLOGr%   r   hexdumpr	   r3   r.   eooOctetsSubstrateeooIntegerSubstrate)r   r7   r8   r9   r:   rA   r#   r   isOctetsr1   idxr   defModeOverrideexcheaders                  r$   r   AbstractItemEncoder.encodeL   s4   \\F__F 151A1A2.52.Ih ++i.	'(8(89NC%O C9=9I9I:6=:6Ih 3%8.>B>y  !]w{{<QV7W7W$$$&*OsYZ^^I}=Fs!4n::u}}Yv->?A B ''IHHFs	NEMM)F2C$DF G %f-	9	&!8!88I ' #.	&!9!99Ik :n !),I_ (( C,,.C++38#a&AC CCs   :H66AJr)   )NN)__name__
__module____qualname____firstlineno__r-   rJ   r	   rI   r%   r3   r;   r   __static_attributes__r)   r'   r$   r   r      s1     !"#674(6(3Lr'   r   c                       \ rS rSrS rSrg)EndOfOctetsEncoder   c                     [         SS4$ NFTr
   r6   s        r$   r;   EndOfOctetsEncoder.encodeValue       UD  r'   r)   NrQ   rR   rS   rT   r;   rU   r)   r'   r$   rW   rW      s    !r'   rW   c                       \ rS rSrSrS rSrg)BooleanEncoder   Fc                 0    U=(       a    S=(       d    SSS4$ )N)r>   r   Fr)   r6   s        r$   r;   BooleanEncoder.encodeValue   s    ~%ue33r'   r)   NrQ   rR   rS   rT   r-   r;   rU   r)   r'   r$   r`   r`      s    4r'   r`   c                   "    \ rS rSrSrSrS rSrg)IntegerEncoder   Fc                     US:X  aH  [         (       a*  [        SU R                  =(       a    S=(       d    S-  5        U R                  (       a  gg[        [        U5      SS9S	S4$ )
Nr   z#encoding %spayload for zero INTEGERzno r?   )r)   FF)rc   FFT)signedF)rG   supportCompactZeror   intr6   s        r$   r;   IntegerEncoder.encodeValue   sZ    A:s9++5; 
 &&')E
40%==r'   r)   N)rQ   rR   rS   rT   r-   rk   r;   rU   r)   r'   r$   rg   rg      s    >r'   rg   c                       \ rS rSrS rSrg)BitStringEncoder   c                 |   Ub  UR                  U5      n[        U5      nUS-  (       a  USUS-  -
  -  nOUnUR                  SS5      nU(       a  [        U5      US-  ::  a0  UR                  5       n[	        [        U5      S-  U-
  5      U-   SS4$ [
        (       a  [        SU-  5        UR                  R                  n	U	(       a  [        R                  " X5      n
O[        R                  " 5       n
UR                  U
S9nSn[        nX:  a(  Un[        XS-  -   U5      nX" XlU U40 UD6-  nX:  a  M(  USS4$ )Nr+   maxChunkSizer   FT#encoding into up to %s-octet chunksrA   )cloner.   rB   asOctetsr   rG   rA   baseTagr   TagSetr
   min)r   r7   r8   r9   r:   valueLengthalignedValuerr   r#   rw   rA   stopstarts                r$   r;   BitStringEncoder.encodeValue   sF   NN5)E%j? Qq%89L L{{>15s<0L14DD$--/I3y>A-;<yH%QUUU35DE,,&& ZZ1F ZZ\F#)))8	 Eua//=D<d#;XQQQI  
 $$$r'   r)   Nr^   r)   r'   r$   ro   ro      s    %%r'   ro   c                       \ rS rSrS rSrg)OctetStringEncoder   c                    Uc  UR                  5       nO2[        U5      (       d   UR                  U5      R                  5       nOUnUR                  SS5      nU(       a  [	        U5      U::  a  USS4$ [
        (       a  [        SU-  5        UcY  UR                  R                  nU(       a  [        R                  " Xw5      nO[        R                  " 5       nUR                  US9nOh[        U5      (       dX  UR                  R                  nU(       a  [        R                  " Xw5      nO[        R                  " 5       nUR                  US9nSn	[        n XX-    n
U
(       d  OXS" X40 UD6-  nX-  n	M  USS4$ )Nrr   r   FTrs   rt   )rv   r   ru   rB   r.   rG   rA   rw   r   rx   r
   )r   r7   r8   r9   r:   r#   rr   rw   rA   poschunks              r$   r;   OctetStringEncoder.encodeValue   s\   (Ie$$ u-668I I{{>15s9~=eT))35DE ll**G G5 {{&{1He$$oo--G G5 ~~V~4H	c01E5>g>>IC  $$$r'   r)   Nr^   r)   r'   r$   r   r      s    8%r'   r   c                       \ rS rSrSrS rSrg)NullEncoderi!  Fc                     [         SS4$ rZ   r[   r6   s        r$   r;   NullEncoder.encodeValue$  r]   r'   r)   Nre   r)   r'   r$   r   r   !  s    !r'   r   c                       \ rS rSrSrS rSrg)ObjectIdentifierEncoderi(  Fc                    Ub  UR                  U5      nUR                  5       n US   nUS   nSUs=::  a  S::  aS  O  OPUS:X  a  US-   4USS  -   nOjUS:X  a
  U4USS  -   nOZUS:X  a  US-   4USS  -   nOG[        R                  " SU< 35      eUS:X  a  US-   4USS  -   nO[        R                  " SU< 35      eS	nU Hn  n	SU	s=::  a  S
::  a
  O  OX4-  nM  U	S
:  a2  U	S
-  4n
U	S-  n	U	(       a  SU	S
-  -  4U
-   n
U	S-  n	U	(       a  M  X-  nMR  [        R                  " SU	< SU< 35      e   USS4$ ! [         a    [        R                  " SU< 35      ef = f)Nr   r>   z
Short OID '   (      P   z Impossible first/second arcs at r)   r   r   r   zNegative OID arc z at F)ru   asTuple
IndexErrorr   r/   )r   r7   r8   r9   r:   oidfirstsecondoctetssubOidress              r$   r;   #ObjectIdentifierEncoder.encodeValue+  s   NN5)Emmo	?FEVF
 "z{ns12w.!i#ab')!{ns12w.''PU(WXXaZB;.3qr7*C ##E$STT FF!c!)##}&16D=13c9CqLF f
  ''vu(UVV% ( ue##U  	?##e$=>>	?s   
D8 8%Er)   Nre   r)   r'   r$   r   r   (  s    5$r'   r   c                   8    \ rS rSrSrSr\S 5       rS rS r	Sr
g)	RealEncoderic  r   r   c                 @   Su  p4U S:  a  SnUS:  a  SnX-  n US:X  a)  U S[        U5      S-  U-  -  -  n [        U5      S-  U-  nO.US:X  a(  U S[        U5      S-  U-  -  -  n [        U5      S-  U-  n [        U 5      U :w  a  X-  n US	-  nM   U[        U 5      X4$ )
N)r>   r>   r   r+   r            r>   )absrl   )mencbaseemsess        r$   _dropFloatingPointRealEncoder._dropFloatingPointg  s    q5Bq5B	a<s1vzB''AA!b A]s1vzB''AA!b A1v{Q3q67%%r'   c           
      \   Uu  p#n/ SQnUR                   U;   a  U R                  X!R                   U5      $ U R                   U;   a  U R                  X R                   U5      $ X"U/nXDU/nSnSn	[        S5      n[        S5       H|  n
U R                  Xj   XZ   Xz   5      u  nXj'   XZ'   Xz'   [	        Xz   5      [	        U5      :  d&  [	        Xz   5      [	        U5      :X  d  M]  Xj   U:  d  Mg  Xz   n[        Xj   5      nXZ   n	M~     [        (       a  [        SU	< SU< SU< S	U< 35        XX4$ )
N)r   r+   r   r>   r   infr   z(automatically chosen REAL encoding base z, sign z, mantissa z, exponent )
binEncBaser   floatranger   rl   rG   )r   r7   r   br   encBasemantissaexponentsignr   is              r$   _chooseEncBaseRealEncoder._chooseEncBase  s1   aw&**1.>.>BB__'**1ooqAA !9!9%LqA !33HKX[YT[Z[8;#a&(S-=Q-GHKZ[OK$!*  3!($16 7 ""r'   c                    Ub  UR                  U5      nUR                  (       a  gUR                  (       a  gUu  pVnU(       d	  [        SS4$ US:X  a>  [        (       a  [	        S5        [        SXWS:H  =(       a    S	=(       d    S
U4-  5      SS4$ US:X  Ga  SnU R                  U5      u  ppU	S:  a  US-  nU
S:X  a  US-  S:X  a  US-  nUS-  nUS-  S:X  a  M  OMU
S:X  a$  US-  S:X  a  US-  nUS-  nUS-  S:X  a  M  US-  nO#US-  S:X  a  US-  nUS-  nUS-  S:X  a  M  US-  nSnUS-  S:X  a  US-  nUS-  nUS-  S:X  a  M  US:  a  [        R                  " S5      eXS-  -  n[        nUS:X  d  US:X  a  [        US-  5      nOUS;  a  [        US-  5      U-   nUS-  nUS;  a  M  US:X  a+  U(       a$  [        US   5      S-  (       a  [        S5      U-   nUS:X  a+  U(       a$  [        US   5      S-  (       d  [        S5      U-   n[        U5      nUS:  a  [        R                  " S5      eUS:X  a  O.US:X  a  US-  nO"US:X  a  US-  nOUS-  n[        US-  5      U-   n[        nU(       a  [        US-  5      U-   nUS-  nU(       a  M  [        U5      U-   U-   nUSS4$ [        R                  " SU-  5      e)N))@   FF))A   FFFT
   z!encoding REAL into character formz%dE%s%dr   +r?   r   r   r   r>   r+   r   r   r      r       zScale factor overflowr   r*   )r   r   zReal exponent overflowzProhibited Real base %s)ru   	isPlusInf
isMinusInfr
   rG   r   r   r   r/   r   r   r.   )r   r7   r8   r9   r:   r   r   r   for   r   sfeonpor#   s                   r$   r;   RealEncoder.encodeValue  s    NN5)E??((a$$7s78MQQ30D"a,HHI5RVVV!VB $ 3 3E :B7Avd
 !|#gl!GAFA #gl A#gl!GAFA #gl d
 #gl!GAFA #gl d
Bc'Q,aa c'Q, Av''(?@@'MBBAvbQX& w& T*R/B!GA w& 6bWRU^d%: bB7r72a5>D+@ +BBA4x''(@AAAvaaaa aQX&+BQX&+a !  b(2-IeT)) ##$=$ABBr'   r)   N)rQ   rR   rS   rT   r-   r   staticmethodr   r   r;   rU   r)   r'   r$   r   r   c  s,    J& &6#BcCr'   r   c                       \ rS rSrSrS rSrg)SequenceEncoderi
  Fc                    [         nUR                  SU R                  5      n[        (       a   [        SU=(       a    S=(       d    S-  5        UGc  UR                  nU(       a  UeUR
                  n[        UR                  5       5       GH  u  pU(       a  X   nUR                  (       a-  U
R                  (       d  [        (       a  [        SU< 35        MO  UR                  (       a+  XR                  :X  a  [        (       a  [        SU< 35        M  U(       a  UR                  UR                  S9  U(       a  WR                  (       a  UR                  nUR                  [        R                   R                  [        R"                  R                  4;   a  XS" X40 [%        XLR
                  S9D6-  nGM0  U" X40 UD6nUR'                  U
5      (       a  X]-  nGMV  XS" X40 UD6-  n[        (       a  [        S	U< 35        GM~  GM  XS" X40 UD6-  nGM     GO[        UR
                  R(                  5       GH  u  p XR*                     n
UR                  (       a,  UR*                  U;  a  [        (       a  [        SU< 35        MR  UR                  (       a+  XR                  :X  a  [        (       a  [        SU< 35        M  U(       a  UR                  UR                  S9  UR                  nUR                  (       a  UR                  [        R                   R                  [        R"                  R                  4;   a  XS" X40 [%        XNR
                  S9D6-  nGM,  U" X40 UD6nUR'                  U
5      (       a  X]-  nGMR  XS" X40 UD6-  n[        (       a  [        S	U< 35        GMz  GM}  XS" X40 UD6-  nGM     USS4$ ! [,         a)    [.        R0                  " S
UR*                  < SU< 35      ef = f)NomitEmptyOptionalsz$%sencoding empty OPTIONAL componentsznot r?   z not encoding OPTIONAL component znot encoding DEFAULT component )r@   )wrapTypewrapped with wrap type zComponent name "z" not found in T)r
   rB   r   rG   isInconsistentcomponentTyperC   values
isOptionalisValueisDefaulted
asn1ObjectupdateopenTypetypeIdr   SetOf
SequenceOfdictisSameTypeWith
namedTypesnameKeyErrorr   r/   )r   r7   r8   r9   r:   r#   r   inconsistencyr   rL   	component	namedTyper   r   componentSpecs                  r$   r;   SequenceEncoder.encodeValue  s   	$[[ $"9"9; 36&167R9 : !00M##,,J"+ELLN"; *I ++I4E4E3	 ST  ,,>R>R1R3y RS ))2F2FG )"4"4(33H JJ--t/E/E+G G "Y )&R"&w9O9O"P&R R	
 !*) I I#229==%.I &5)Ng)NNI"s #8$M N  # 9!J'!JJIU #<\ #,H,B,B,M,M"N0 %nn 5I ''INN%,GsIOP((Y:N:N-Ns9NO%NNi.B.BNC ) 4 4 %%$++ JJ--t/E/E0G G "Y )&W"&w9T9T"U&W W	
 !*) Ng N(77	BB%.I &5)S7)SSI"s #=$R S  # 9!Ow!OOI_ #Ob $$$Y   0++!-/ 0 00s   O3Pr)   N)rQ   rR   rS   rT   r   r;   rU   r)   r'   r$   r   r   
  s    r%r'   r   c                        \ rS rSrS rS rSrg)SequenceOfEncoderi  c                 L   Uc  UR                   nU(       a  UeOUR                  n/ nUR                  SS 5      n[        U5       H[  u  pU" X40 UD6n
Ub9  UR	                  U	5      (       d#  U" X40 UD6n
[
        (       a  [        SU< 35        UR                  U
5        M]     U$ )Nr   r   )r   r   poprC   r   rG   append)r   r7   r8   r9   r:   r   chunksr   rL   r   r   s              r$   _encodeComponents#SequenceOfEncoder._encodeComponents  s    !00M##   --H;;z40'.NCi=W=E$ //	::!%=W=3xABMM%  / r'   c                 \    U R                   " XU40 UD6n[        R                  " U5      SS4$ )NT)r   r
   join)r   r7   r8   r9   r:   r   s         r$   r;   SequenceOfEncoder.encodeValue  s7    ''Y3*13 yy $,,r'   r)   N)rQ   rR   rS   rT   r   r;   rU   r)   r'   r$   r   r     s    :-r'   r   c                       \ rS rSrS rSrg)ChoiceEncoderi  c                 x   Uc  UR                  5       nOUR                  R                   Vs/ s H!  nUR                  U;   d  M  UR                  PM#     nn[	        U5      S:w  a8  [
        R                  " [	        U5      =(       a    S=(       d    S< SU< 35      eUS   nX   nX(   nU" XR40 UD6SS4$ s  snf )Nr>   z	Multiple zNone z components for Choice at r   T)getComponentr   r   r   r.   r   r/   )	r   r7   r8   r9   r:   r   r   namesr   s	            r$   r;   ChoiceEncoder.encodeValue  s    **,I5=5K5K5V5V 15V	!%/ $Y^^5VE 15zQ''CPUJLf[fLqjqLqsx(yzz8DI~H88$DD1s   B7B7r)   Nr^   r)   r'   r$   r   r     s    Er'   r   c                       \ rS rSrS rSrg)
AnyEncoderi  c                     Uc  UR                  5       nO/[        U5      (       d  UR                  U5      R                  5       nXR                  SS5      (       + S4$ )Nr1   T)rv   r   ru   rB   r6   s        r$   r;   AnyEncoder.encodeValue  sO    NN$Ee$$NN5)224E++i66<<r'   r)   Nr^   r)   r'   r$   r   r     s    =r'   r   c                   2    \ rS rSrSrSr0 4S jrSS jrSrg)Encoderi	  Nc                     Xl         X l        g N)_Encoder__tagMap_Encoder__typeMap)r   tagMaptypeMaps      r$   __init__Encoder.__init__  s     r'   c           
          Uc  UR                   nOUR                   n [        (       a  [	        SUR                  SS5      (       + =(       a    S=(       d    S< SUR                  S	S
5      < SUS L =(       a    UR                  5       =(       d    UR                  5       < SU< 35        U R                  b  UR                  U R                  S9  U R                  b  UR                  U R                  S9   U R                  U   n[        (       a'  [	        SUR                  R                  < SU< 35        UR&                  " XU 40 UD6n[        (       a5  [	        SU< S[)        U5      < S[*        R,                  " U5      < S35        U$ ! [         a    [        R                  " SU< S35      ef = f! [         a    Uc  UR                  nOUR                  n[        R                   " UR"                  UR"                  5      n U R$                  U   nO-! [         a     [        R                  " SU< SU< S35      ef = f[        (       a'  [	        SUR                  R                  < SU< 35         GNCf = f)NzValue z4 is not ASN.1 type instance and "asn1Spec" not givenzencoder called in r1   Tinr?   zdef mode, chunk size rr   r   z
 for type z	, value:
)r1   )rr   zusing value codec z chosen by type ID zNo encoder for z ()z chosen by tagSet zcodec z built z octets of substrate: z
encoder completed)r   AttributeErrorr   r/   rG   rB   prettyPrintTypefixedDefLengthModer   fixedChunkSizer   	__class__rQ   r   rA   r   rx   rw   r   r   r.   r   rH   )	r   r7   r8   r:   r   concreteEncoderrA   
baseTagSetr#   s	            r$   __call__Encoder.__call__  sw   	K! 307It0L,L,UQU,[Y[,[]d]h]hiwyz]{  ~F  JN  ~N  ~j  SX  Sh  Sh  Sj  ~H  nv  nF  nF  nH  ~H  JOP Q "".NN4#:#:N;*NN(;(;N<	o"nnV4Os?C\C\CeCegmno( $**5DLGL	3Racfgpcqsx  tA  tA  BK  tL  M  NY  	K##BG%J K K	K*  	o! FNNFNNCJT"&--
"; T''E6(RSST s/B[B[BdBdflmn!	os<   F F 9AF9 &F69AI>HI>*I5I>=I>)__tagMap	__typeMapr   )	rQ   rR   rS   rT   r  r  r   r  rU   r)   r'   r$   r   r   	  s    N (* !3r'   r   )JrE   pyasn1r   r   pyasn1.codec.berr   pyasn1.compat.integerr   pyasn1.compat.octetsr   r   r	   r
   r   r   pyasn1.typer   r   r   r   __all__registerLoggeerQ   DEBUG_ENCODERrG   objectr   rW   r`   rg   ro   r   r   r   r   r   r   r   r   endOfOctetsrA   BooleanInteger	BitStringOctetStringNullObjectIdentifier
EnumeratedRealr   r   Choice
UTF8StringNumericStringPrintableStringTeletexStringVideotexString	IA5StringGraphicStringVisibleStringGeneralStringUniversalString	BMPStringObjectDescriptorGeneralizedTimeUTCTimer   r   SetSequenceAnyr   r   r   r)   r'   r$   <module>r3     s;        *: :    *85+>+>?& D!, !
4( 4>( >(&%* &%R:%, :%z!% !8$1 8$vdC% dCNw%) w%t"-+ "-JE' E$=# =
OO.0
LL)
 	LL)
 	NN+-	

 	/1
 	IIkm
 	  "9";
 	OON,
 	IIkm
 	OO-/
 	JJ(*
 	KK
 	OO.0
  	13!
" 	!3!5#
$ 	13%
& 	 2 4'
( 	NN-/131313!3!5NN-/
""$6$8
!!#5#7
NN-/;
B LL) LL)  	NN+-  	/1	 
 	IIkm  	  "9";  	OON,  	IIkm  	HHOO_&  	JJ(*  	MM/+  	OO-/  	KK  	HHOOZ\ " 	OO.0# $ 	13% & 	!3!5' ( 	13 2 4NN-/131313!3!5NN-/
""$6$8
!!#5#7
NN-/? F<f <b 
	!r'   