
    h]N                     L?   d dl mZ d dl mZ d dl mZ d dl mZ d dl mZ d dl mZ d dlmZ d dlm	Z	  e
d	      Zd
 Z G d dej                        Z G d dej                        Z ej"                   ej$                  d ej&                                ej$                  d ej(                   e                         e_         G d dej(                        Z e       e_         ej.                  de      e_         G d dej                        Z ej"                   ej$                  d ej&                                ej$                  d ej                                     e_         G d dej4                        Z ej"                   ej$                  d ej8                                ej$                  d e       j;                   ej<                  ej>                  ej@                  d                        e_         G d dej(                        Z! e       e!_         G d  d!ej                        Z" ej"                   ej$                  d" ej&                                ejF                  d# ej                                     e"_         edd$d%d&dd'd$      Z$ G d( d)ejJ                        Z& G d* d+ejN                        Z( G d, d-ejR                        Z* ejV                  d.d/d0d1d2d3      e*_,         G d4 d5ej                        Z- ej"                   ej$                  d6 ejN                                ejF                  d7 ej\                                ejF                  d e"                   e-_         G d8 d9ej                        Z/ ej"                   ej$                  d: e*              ej$                  d; e-              ej$                  d< e&              ej$                  d= e(                   e/_         G d> d?ejJ                        Z0 G d@ dAej                        Z1 ej"                   ej$                  d: e*              ejF                  dB e0       j;                   ej<                  ej>                  ejd                  d                    ej$                  d< e&              ej$                  d= e(                   e1_         G dC dDej                        Z3 ej"                   ej$                  dE ej&                                ej$                  dF ej                                     e3_         G dG dHej                        Z4 ej"                   ej$                  dI ejj                                ej$                  dJ ejl                                     e4_         G dK dLejN                        Z7 G dM dNej                        Z8 ej"                   ej$                  dO e7              ejF                  d7 ej\                                ejF                  d e"                   e8_         G dP dQej4                        Z9 ej"                   ej$                  dR e4              ej$                  dS e8       j;                   ej<                  ej>                  ej@                  d                         e9_         G dT dUej                        Z: ej"                   ej$                  dV e9              ej$                  d= e(                   e:_         G dW dXejv                        Z< e:       e<_         G dY dZejN                        Z= G d[ d\ej                        Z> ej"                   ej$                  d] ejJ                                ej$                  d^ ej~                                     e>_         G d_ d`ej4                        Z@ ej"                   ej$                  dR e4              ej$                  dO e7       j;                   ej<                  ej>                  ejd                  d                    ej$                  da e>       j;                   ej<                  ej>                  ej@                  d                        e@_         G db dcej                        ZA ej"                   ej$                  d: e*              ej$                  dd e@       j;                   ej<                  ej>                  ej@                  d       e             ejF                  df e=       j;                   ej<                  ej>                  ejd                  d      e             ej$                  d< e&              ej$                  dg e<                   eA_         G dh diej4                        ZB ej"                   ej$                  dR e4              ej$                  dO e7       j;                   ej<                  ej>                  ejd                  d                         eB_         G dj dkej                        ZC ej"                   ej$                  d: e*              ej$                  dV eB              ej$                  d< e&              ej$                  d= e(                   eC_         G dl dmej4                        ZD ej"                   ej$                  dn eC              ej$                  do eA       j;                   ej<                  ej>                  ej@                  d                   ej$                  dp e/       j;                   ej<                  ej>                  ej@                  d$                   ej$                  dq e1       j;                   ej<                  ej>                  ej@                  dr                   ej$                  ds e3       j;                   ej<                  ej>                  ej@                  dt                        eD_         G du dvej(                        ZE eD       eE_         ej.                  de      eE_         G dw dxejJ                        ZF G dy dzej~                        ZG G d{ d|ej4                        ZH ej"                   ej$                  dR e4              ej$                  dO e7       j;                   ej<                  ej>                  ejd                  d                         eH_         G d} d~ej(                        ZI e       eI_         ej.                  de      eI_         G d dej&                        ZJ G d dejN                        ZK G d dejJ                        ZL G d dej                        ZM ej"                   ej$                  d eJ              ej$                  d eL              ejF                  d eK       j;                   ej<                  ej>                  ejd                  d                         eM_         G d dej                        ZN ej"                   ej$                  d: e*              ej$                  d eM              ejF                  d eI       j;                   ej<                  ej>                  ejd                  d                        eN_         edd$d%d&dddr      ZO edd$d%d&dd'd      ZP edd$d%d&dddt      ZQ G d dej(                        ZR eF       eR_         G d dej                        ZS ej"                   ej$                  d eJ              ejF                  d ejN                         j;                   ej<                  ej>                  ejd                  d       e                  eS_         G d dejN                        ZT G d dej                        ZU ej"                   ej$                  d: e*              ej$                  d eF              ej$                  d eS              ej$                  d eT                   eU_         G d dej                        ZV ej"                   ej$                  d eJ              ej$                  d ej                         j;                   ej<                  ej>                  ejd                  d       e                  eV_         G d dej(                        ZW e       eW_         ej.                  de      eW_         G d dej                        ZX ej"                   ej$                  d: e*              ej$                  d ej                                ej$                  d eW                   eX_         G d dejJ                        ZZ G d dej                        Z[ ej"                   ej$                  d eX              ej$                  d eZ              ej$                  d eG                   e[_         G d dej                        Z\ ej"                   ej$                  d ej&                                ej$                  d ej                                     e\_         G d de	j                        Z^ G d dejR                        Z_ ejV                  d      e__,         G d dej                        Z` ej"                   ej                  d: e_       j;                  d             ej$                  d ej4                   ej"                   ej$                  d e	j                         j;                   ej<                  ej>                  ejd                  d       e             ej$                  d ej                         j;                   ej<                  ej>                  ejd                  d      e                               ej$                  dI ej                                ej$                  d ejJ                                ej$                  dJ ejl                                ej$                  d e	j                                ej$                  d ejv                   ej                                       ejF                  d ej                                ejF                  d ej                               	      e`_         G d dej                        Zg ej"                   ej$                  d e`              ej$                  d ejJ                                ej$                  d ej~                                     eg_         G d dej4                        Zh ej"                   ej$                  d ej                                ej$                  d e[       j;                   ej<                  ej>                  ej@                  d                    ej$                  d eg       j;                   ej<                  ej>                  ejd                  d                   ej$                  d e^       j;                   ej<                  ej>                  ejd                  d$                   ej$                  d e\       j;                   ej<                  ej>                  ej@                  dr                        eh_         G dǄ dej(                        Zi eh       ei_         G dɄ dejN                        Zj G d˄ dej(                        Zk e       ek_         ej.                  de      ek_         G d̈́ dejN                        Zl G dτ dej                        Zm ej"                   ej$                  d: e*              ej$                  d eH              ej$                  d eF              ejF                  d e       j;                   ej<                  ej>                  ejd                  d                    ej$                  d eZ              ej$                  d el              ejF                  d ek       j;                   ej<                  ej>                  ejd                  d                        em_         G dԄ dej(                        Zn em       en_         G dք dej                        Zo ej"                   ej$                  d: e*              ej$                  d eR              ej$                  d eS              ejF                  d ei       j;                   ej<                  ej>                  ejd                  d                    ejF                  d e!       j;                   ej<                  ej>                  ejd                  d                   ej$                  d en                   eo_         G d܄ dejJ                        Zp G dބ dejN                        Zq G d dej4                        Zr ej"                   ej$                  d ej                                ej$                  d ej\                                     er_         G d dej                        Zt ej"                   ejF                  d ei       j;                   ej<                  ej>                  ejd                  d                    ejF                  d e!       j;                   ej<                  ej>                  ejd                  d                        et_         G d dej(                        Zu e       eu_         ej.                  de      eu_         G d dej                        Zv ej"                   ej$                  d: e*              ejF                  d et       j;                   ej<                  ej>                  ej@                  d                    ej$                  d eE              ej$                  d ep              ejF                  d eF       j;                   ej<                  ej>                  ejd                  d                   ej$                  d eS              ejF                  d eu       j;                   ej<                  ej>                  ejd                  d$                   ej$                  d ej              ejF                  d eW       j;                   ej<                  ej>                  ejd                  dr                  	      ev_         edd$d%d&ddddd	      Zw edd$d%d&dd'dr      Zx G d dej                        Zy ej"                   ej$                  d: e*              ejF                  d et       j;                   ej<                  ej>                  ej@                  d                    ej$                  d eE              ej$                  d eM              ejF                  d eI       j;                   ej<                  ej>                  ejd                  d                        ey_         G d dem      Zz edd$d%d&dd'd      Z{ edd$d%d&ddd      Z| G d dej4                        Z} ej"                   ej$                  d ej                                ej$                  d e[       j;                   ej<                  ej>                  ej@                  d                         e}_         edd$d%d&dd'd      Z~ edd$d%d&ddddd$	      Z G d der      Z edd$d%d&ddd      Zy)    )
constraint)	namedtype)namedval)tag)univ)useful)rfc3280)rfc3281infc                      g }t        |       D ]Q  }t        |t        j                        r|j	                  t        |             8|j                  t        |             S t        j                  |      S )N)tuple
isinstancer   ObjectIdentifierextendlistappendint)
componentsoutputxs      8/usr/lib/python3/dist-packages/pyasn1_modules/rfc3852.py	_buildOidr      s^    F: "a../MM$q'"MM#a&!	"   ((    c                       e Zd Zy)AttributeValueN__name__
__module____qualname__ r   r   r   r   &       r   r   c                       e Zd Zy)	AttributeNr   r    r   r   r#   r#   *   r!   r   r#   attrType
attrValues)componentTypec                       e Zd Zy)SignedAttributesNr   r    r   r   r(   r(   4   r!   r   r(      c                       e Zd Zy)OtherRevocationInfoFormatNr   r    r   r   r+   r+   <   r!   r   r+   otherRevInfoFormatotherRevInfoc                       e Zd Zy)RevocationInfoChoiceNr   r    r   r   r/   r/   F   r!   r   r/   crlother)implicitTagc                       e Zd Zy)RevocationInfoChoicesNr   r    r   r   r4   r4   Q   r!   r   r4   c                       e Zd Zy)OtherKeyAttributeNr   r    r   r   r6   r6   X   r!   r   r6   	keyAttrIdkeyAttr   iH  i    c                       e Zd Zy) KeyEncryptionAlgorithmIdentifierNr   r    r   r   r<   r<   d   r!   r   r<   c                       e Zd Zy)EncryptedKeyNr   r    r   r   r>   r>   h   r!   r   r>   c                       e Zd Zy)
CMSVersionNr   r    r   r   r@   r@   l   r!   r   r@   )v0r   )v1r)   )v2r9   )v3   )v4   )v5   c                       e Zd Zy)KEKIdentifierNr   r    r   r   rK   rK   z   r!   r   rK   keyIdentifierdatec                       e Zd Zy)KEKRecipientInfoNr   r    r   r   rO   rO      r!   r   rO   versionkekidkeyEncryptionAlgorithmencryptedKeyc                       e Zd Zy) KeyDerivationAlgorithmIdentifierNr   r    r   r   rU   rU      r!   r   rU   c                       e Zd Zy)PasswordRecipientInfoNr   r    r   r   rW   rW      r!   r   rW   keyDerivationAlgorithmc                       e Zd Zy)OtherRecipientInfoNr   r    r   r   rZ   rZ      r!   r   rZ   oriTypeoriValuec                       e Zd Zy)IssuerAndSerialNumberNr   r    r   r   r^   r^      r!   r   r^   issuerserialNumberc                       e Zd Zy)SubjectKeyIdentifierNr   r    r   r   rb   rb      r!   r   rb   c                       e Zd Zy)RecipientKeyIdentifierNr   r    r   r   rd   rd      r!   r   rd   subjectKeyIdentifierc                       e Zd Zy)KeyAgreeRecipientIdentifierNr   r    r   r   rg   rg      r!   r   rg   issuerAndSerialNumberrKeyIdc                       e Zd Zy)RecipientEncryptedKeyNr   r    r   r   rk   rk      r!   r   rk   ridc                       e Zd Zy)RecipientEncryptedKeysNr   r    r   r   rn   rn      r!   r   rn   c                       e Zd Zy)UserKeyingMaterialNr   r    r   r   rp   rp      r!   r   rp   c                       e Zd Zy)OriginatorPublicKeyNr   r    r   r   rr   rr      r!   r   rr   	algorithm	publicKeyc                       e Zd Zy)OriginatorIdentifierOrKeyNr   r    r   r   rv   rv      r!   r   rv   originatorKeyc                       e Zd Zy)KeyAgreeRecipientInfoNr   r    r   r   ry   ry      r!   r   ry   
originator)explicitTagukmrecipientEncryptedKeysc                       e Zd Zy)RecipientIdentifierNr   r    r   r   r   r     r!   r   r   c                       e Zd Zy)KeyTransRecipientInfoNr   r    r   r   r   r     r!   r   r   c                       e Zd Zy)RecipientInfoNr   r    r   r   r   r   "  r!   r   r   ktrikarikekripwrirE   orirG   c                       e Zd Zy)RecipientInfosNr   r    r   r   r   r   3  r!   r   r   c                       e Zd Zy)DigestAlgorithmIdentifierNr   r    r   r   r   r   ;  r!   r   r   c                       e Zd Zy)	SignatureNr   r    r   r   r   r   ?  r!   r   r   c                       e Zd Zy)SignerIdentifierNr   r    r   r   r   r   C  r!   r   r   c                       e Zd Zy)UnprotectedAttributesNr   r    r   r   r   r   N  r!   r   r   c                       e Zd Zy)ContentTypeNr   r    r   r   r   r   V  r!   r   r   c                       e Zd Zy)EncryptedContentNr   r    r   r   r   r   Z  r!   r   r   c                       e Zd Zy)$ContentEncryptionAlgorithmIdentifierNr   r    r   r   r   r   ^  r!   r   r   c                       e Zd Zy)EncryptedContentInfoNr   r    r   r   r   r   b  r!   r   r   contentTypecontentEncryptionAlgorithmencryptedContentc                       e Zd Zy)EncryptedDataNr   r    r   r   r   r   n  r!   r   r   encryptedContentInfounprotectedAttrs	   c                       e Zd Zy)DigestAlgorithmIdentifiersNr   r    r   r   r   r     r!   r   r   c                       e Zd Zy)EncapsulatedContentInfoNr   r    r   r   r   r     r!   r   r   eContentTypeeContentc                       e Zd Zy)DigestNr   r    r   r   r   r     r!   r   r   c                       e Zd Zy)DigestedDataNr   r    r   r   r   r     r!   r   r   digestAlgorithmencapContentInfodigestc                       e Zd Zy)ContentInfoNr   r    r   r   r   r     r!   r   r   contentc                       e Zd Zy)UnauthAttributesNr   r    r   r   r   r     r!   r   r   c                       e Zd Zy)ExtendedCertificateInfoNr   r    r   r   r   r     r!   r   r   certificate
attributesc                       e Zd Zy)SignatureAlgorithmIdentifierNr   r    r   r   r   r     r!   r   r   c                       e Zd Zy)ExtendedCertificateNr   r    r   r   r   r     r!   r   r   extendedCertificateInfosignatureAlgorithm	signaturec                       e Zd Zy)OtherCertificateFormatNr   r    r   r   r   r     r!   r   r   otherCertFormat	otherCertc                       e Zd Zy)AttributeCertificateV2Nr   r    r   r   r   r     r!   r   r   c                       e Zd Zy)AttCertVersionV1Nr   r    r   r   r   r     r!   r   r   )rB   r   c                       e Zd Zy)AttributeCertificateInfoV1Nr   r    r   r   r   r     r!   r   r   rB   )valuesubjectbaseCertificateIDsubjectNameattCertValidityPeriodissuerUniqueID
extensionsc                       e Zd Zy)AttributeCertificateV1Nr   r    r   r   r   r     r!   r   r   acInfoc                       e Zd Zy)CertificateChoicesNr   r    r   r   r   r     r!   r   r   extendedCertificate
v1AttrCert
v2AttrCertc                       e Zd Zy)CertificateSetNr   r    r   r   r   r     r!   r   r   c                       e Zd Zy)MessageAuthenticationCodeNr   r    r   r   r   r      r!   r   r   c                       e Zd Zy)UnsignedAttributesNr   r    r   r   r   r   $  r!   r   r   c                       e Zd Zy)SignatureValueNr   r    r   r   r   r   ,  r!   r   r   c                       e Zd Zy)
SignerInfoNr   r    r   r   r   r   0  r!   r   r   sidsignedAttrsunsignedAttrsc                       e Zd Zy)SignerInfosNr   r    r   r   r   r   A  r!   r   r   c                       e Zd Zy)
SignedDataNr   r    r   r   r   r   H  r!   r   r   digestAlgorithmscertificatescrlssignerInfosc                       e Zd Zy)"MessageAuthenticationCodeAlgorithmNr   r    r   r   r   r   X  r!   r   r   c                       e Zd Zy)MessageDigestNr   r    r   r   r   r   \  r!   r   r   c                       e Zd Zy)TimeNr   r    r   r   r   r   `  r!   r   r   utcTimegeneralTimec                       e Zd Zy)OriginatorInfoNr   r    r   r   r   r   j  r!   r   r   certsc                       e Zd Zy)AuthAttributesNr   r    r   r   r   r   v  r!   r   r   c                       e Zd Zy)AuthenticatedDataNr   r    r   r   r   r   ~  r!   r   r   originatorInforecipientInfosmacAlgorithm	authAttrsmacunauthAttrs      c                       e Zd Zy)EnvelopedDataNr   r    r   r   r  r    r!   r   r  c                       e Zd Zy)CountersignatureNr   r    r   r   r  r    r!   r   r  rI   c                       e Zd Zy) ExtendedCertificateOrCertificateNr   r    r   r   r
  r
    r!   r   r
  c                       e Zd Zy)SigningTimeNr   r    r   r   r  r    r!   r   r  N)pyasn1.typer   r   r   r   r   r   pyasn1_modulesr	   r
   floatMAXr   Anyr   Sequencer#   
NamedTypes	NamedTyper   SetOfr&   r(   ValueSizeConstraintsizeSpecr+   Choicer/   CertificateListsubtypeTagtagClassContexttagFormatConstructedr4   r6   OptionalNamedTypeid_signedDataAlgorithmIdentifierr<   OctetStringr>   Integerr@   NamedValuesnamedValuesrK   GeneralizedTimerO   rU   rW   tagFormatSimplerZ   r^   NameCertificateSerialNumberrb   rd   rg   rk   
SequenceOfrn   rp   rr   	BitStringrv   ry   r   r   r   r   r   r   r   r   r   r   r   r   r   id_contentTypeid_dataid_messageDigestr   r   r   r   r   r   r   Certificater   r   r   AttributeCertificater   r   r   DefaultedNamedTypeIssuerSerialGeneralNamesAttCertValidityPeriodUniqueIdentifier
Extensionsr   r   r   r   r   r   r   r   r   r   r   r   UTCTimer   r   r   id_ct_contentInfoid_envelopedDatar  r  id_digestedDataid_signingTimer
  id_encryptedDataid_ct_authDatar  id_countersignaturer    r   r   <module>r>     s   # !      " "El)	TXX 		 	 /)..I
$9D$9$9$;<Ijdjj~?O&PQ	 	tzz 	 "+  :J::1cB  	 	 +?)*>*>I,.Cd.C.C.EFI
3+  '	4;; 	 &:Y%9%9I6w6689I!:!<!D!DCGGC//1I1I1M "E "O P&  "	DJJ 	 ';&<  #	 	 #7)"6"6I%:T%:%:%<=I	8488:6#  
 !QVQ15	w'B'B 		4## 		 	 .--
 	DMM 	 3i22I)9)9)9);<I(>(>(>(@AI):)<= 	t}} 	 "6!5!5I	:<0I1I02R2TUI7	"  	w'B'B 		DMM 	 ';i&:&:I	:<0I 8:Z:\:d:dCGGC//1D1DaH ;e ;J KI02R2TUI7'  #	 	 $89#7#7I	#84#8#8#:;I
HDHHJ/$   	DMM 	 ';i&:&:I,',,.1I(G(G(G(IJ'  #	4++ 		T]] 	 (<y';';I.0D0FGI(>(>(>(@AI):)<=(  $	$++ 	 -AI,@,@I/1F1HII"8":"B"BCGGC//1I1I1M #C #O P-  )	DMM 	 ';i&:&:I:<=I7'  #	T__ 	 (='>  $	)) 		$-- 	 %9I$8$8I%@W%@%@%BCI^T^^%56%  !	 	 +?)*>*>I/1F1HII.0D0F0N0NCGGC//1D1DaH 1O 1J KI)<)>)F)FCGGC//1I1I1M *G *O P	+  '	DMM 	 ';i&:&:I	:<0I&?&A&I&ICGGC//1I1I1M 'J 'O PI'9';'C'CCGGC//1D1DaH (D (J KI02R2TUI02H2JK'  #	$++ 	 %9I$8$8I/1F1HII.0D0F0N0NCGGC//1D1DaH 1O 1J K%  !	DMM 	 ';i&:&:I	:<0I245I02R2TUI7	'  #	DKK 	 3i22I 5 78I 5 7 ? ?CGGC//1I1I1M !@ !O PI!1!3!;!;CGGC//1I1I1M "< "O PI 5 7 ? ?CGGC//1I1I1M !@ !O PI13;;CGGC//1I1I1M  <  O P
 	TZZ 	  - 8*88C@ 	 ; ; 		 		t{{ 	 "6!5!5I/1F1HII.0D0F0N0NCGGC//1D1DaH 1O 1J K"  	DJJ 	 '0k  #!?!?!?3!G  	$'' 		t'' 		7+F+F 		4== 	 &:Y%9%9I{}5I46Z6\]I 24D4F4N4NCGGC//1D1DaH 5O 5J K&  "	DMM 	 3i22I	:<0I.0D0FGI 24I4K4S4SCGGC//1D1DaH 5T 5J K  1afaA6
Aq#vq!Q
/Q31a8 	 	 ,E+F  (	dmm 	 )=	(<(<I6I
,<D,<,<,>,F,FCGGC//1D1DaH -G -J K)  %	T 		4== 	 2Y11I	:<0I)+D+FGI*,C,EFI&(+	 	$-- 	 1I00I{}5I	8488:#5#5'#''#J]J]_b_r_rtuBv#5#wx 	tzz 	 "+  :J::1cB  	dmm 	 )=	(<(<I	:<0I':w':':'<=I&6&89)  %	7#>#> 		$-- 	 %9I$8$8I13J3LMI,.J.LMIY[1%  !	T]] 	 (<y';';I)+@4+@+@+BCIXTXXZ0(  $	W99 		t|| 	  4x33   
	 	 ,@9+?+? I  ,<,>,F,FT,F,RSI;4;;.)..#	##$79M9M9M9O9W9Wdkdgdkdkloll  BE  BU  BU  WX  eY9W  :Z  [#	##M3G73G3G3I3Q3Q^e^a^e^efifyfy{~  |O  |O  QR  _S3Q  4T  U
 I"6'"6"6"89I%@W%@%@%BCI(G(G(G(IJI/1N1N1N1PQIodooDUGDUDUDW&XYI 02J'2J2J2LMI.@g.@.@.BC!,  ((	T]] 	 (<y';';I"<">?I,.Ig.I.I.KLI^T^^%56(  $	 	 $89#7#7I':w':':'<=I-/B/D/L/LCGGC//1I1I1M 0M 0O PI&<&>&F&FCGGC//1D1DaH 'G 'J KI&<&>&F&FCGGC//1D1DaH 'G 'J KI!7!9!A!ACGGC//1I1I1M "B "O P
$   	TZZ 	  23 	 0 0 		 	 $-;   <j<<QD  	T%% 		 	 09//I	:<0I/12I)+D+FGI/?/A/I/ICGGC//1D1DaH 0J 0J KI,.J.LMI^%56I1C1E1M1MCGGC//1D1DaH 2N 2J K

 	$** 	 'L 	 	 09//I	:<0I*,F,HII*,C,EFI0@0H0HCGGC//1D1DaH 1I 1J KI(=(?(G(GCGGC//1D1DaH )H )J KI{}5	
 	)D)D 		D$$ 		4;; 	 *Y))I	>6>>#34I'=v'='='?@ 	T]] 	  4y33I)9)A)ACGGC//1D1DaH *B *J KI(=(?(G(GCGGC//1D1DaH )H )J K  	TZZ 	  ){ 8*88C@ 	 	 #7)"6"6I	:<0I 0.2B2J2JCGGC//1I1I1M 3K 3O PI(.*:;I(J(LMI 13L3N3V3VCGGC//1D1DaH 4W 4J KI*,C,EFI^-=-E-ECGGC//1D1DaH .F .J KI8:;I/?/A/I/ICGGC//1D1DaH 0J 0J K#    aCAr1a@ Q31a8 	DMM 	 3i22I	:<0I 0.2B2J2JCGGC//1I1I1M 3K 3O PI(.*:;I.0D0FGI 24I4K4S4SCGGC//1D1DaH 5T 5J K 	z 	 Aq#vq!Q71afaA6	t{{ 	 2F1E1EI':w':':'<=I-/B/D/L/LCGGC//1I1I1M 0M 0O P2   . Q31a8 1afaB1=	$ 	  1c61a; r   