
:>"^$                 @   s  d  Z  d Z d Z d d d d d d d	 d
 d d d d d d d d d d d d d d d d d d d d d d  d! d" d# d$ d% d& d' d( d) d* i Z e e e j    e d+ d, d- d. d/ d0 d1 d2 d3 d4 d5 d6 i j     Z d7 d8   e j   D Z d9 d8   e j   D Z	 d: Z
 d; Z d< Z d= Z d> Z d d d d d d d# d# d d? d d@ d' dA d! dB d) dC d dD d% dE d dF d dG d+ dH d- d; d d; i Z d d d d d d d3 d3 d d? d d@ d' dI d! dB d) dJ d dK d% dE d dL d dM d+ dN d- d= d d= i Z d d# d d d d d# d d d d d) d' d' d! d! d) d d d d% d+ d d d d d+ d% d- d- d d i Z d d3 d d d d d3 d d d d d) d' d' d! d! d) d d d d% d+ d d d d d+ d% d- d- d d i Z dO dP   Z d dQ d dR d dS d# dT i Z d dU d dV d dW d# dX i Z e e  Z d dS d dY d dZ d3 d[ i Z d dW d d\ d d] d3 d^ i Z e e  Z d_ d`   Z e e e  \ Z Z e e e  \ Z Z d da d db d dc d	 dd d de d df d dg d dh d di d dh d dj d dk d5 dl d dm d dn d do d! dp d# dq d3 dr d% ds d' dt d) du i Z d dv d dw d dx d	 dy d dz d d{ d d| d d} d d~ d d} d d d d d5 d d d d d d d d! d d# d d3 d d% d d' d d) d i Z  d d d+ d d d d d d	 d	 d d d d d d d d d1 d d d d d d d d d d5 d5 d d d d d d d! d! d# d# d3 d3 d% d% d' d' d- d d) d) d/ d i Z! e e  Z" e e! e  \ Z# Z$ d d d d d d d d d d d+ d d d d d d5 d d d d d d d d d d d d d d d d! d d d d d d d d d d d d d d% d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d) d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d ddddddddd	d
ddddddddddd' dddddddddddd d!d"d#d$d%d&d'd(d)d*d+d,d-d.d/d0d1d2d3d4d5d6d7d3 d8d9d:d;d<d=d>d?d@dAd@dBdCdDdEdFdGdHdIdJdKdLdMdNdOdPdMdQdRdSdTdUdVdWdXin Z% dYS(Z  z&Information about the IUPAC alphabets.ZACDEFGHIKLMNPQRSTVWYZACDEFGHIKLMNPQRSTVWYBXZJUOAZAlaCZCysDZAspEZGluFZPheGZGlyHZHisIZIleKZLysLZLeuMZMetNZAsnPZProQZGlnRZArgSZSerTZThrVZValWZTrpYZTyrBZAsxXZXaaZZGlxJZXleUZSecOZPylc             C   s!   i  |  ] } | d  | d  q S)        ).0xr   r   7/tmp/pip-build-ww9dw3qa/biopython/Bio/Data/IUPACData.py
<dictcomp>/   s   	 r!   c             C   s!   i  |  ] } | d  | d  q S)r   r   r   )r   r   r   r   r    r!   1   s   	 ZGATCRYWSMKHBVDNZGATCZGAUCRYWSMKHBVDNZGAUCZGATCBDSWZACZAGATZCGZCTGTZACGZACTZAGTZCGTZAUZCUZGUZACUZAGUZCGUc             C   s7   i  } x* |  j    D] \ } } | | f | | <q W| S)N)items)mydictdkeyvaluer   r   r    _make_ranges   s    r)   g$(~t@g`TR'3s@g	u@guV#t@g	m9t@gq50s@gjN^du@g6 t@g/$3t@gݓv@g=,ԚBt@g=Զa0t@g6\v@gF@t@c       	         s   i  } i  } x |  j    D] \ } } t |  d k rJ | d   k rJ q   f d d   | D } t |  t |  f | | <d } x | D] } | | } q W| t |  | | <q W| | f S)Nr   r   c                s   g  |  ] }   j  |   q Sr   )get)r   r   )weight_tabler   r    
<listcomp>   s   	 z*_make_ambiguous_ranges.<locals>.<listcomp>g        )r$   lenminmax)	r%   r+   Zrange_dZavg_dlettervaluesZweightsZtotal_wwr   )r+   r    _make_ambiguous_ranges   s    "r3   g.!EV@gJ^@gQI`@g9#db@guqd@gxz,CR@g{dc@gOee`@gY Fb@g7¦b@gY8Ń`@g o_o@g1Z\@gvDb@gOne@g(EZ@gk	]@g|гe@g٬\I]@ga4i@gy&1f@gG(CV@g=HOCA^@g*C3`@ggxab@gDd@g#+R@g`Z'9bc@ge3c`@gA|`Cb@g/1b@g 4`@gfbo@g\@gHi6Bb@gْe@gw׹BZ@g$@]@g?e@gE]@g(Gi@gLT]f@ZNDZILZQEgH ?g"u @ZHegC@ZLig$@ZBeg"3<"@gZd;%@gh"lxz(@g3ı.n,@g>W[/@g8$Z2@ZNegY .4@ZNagڏa6@ZMggGzN8@ZAlg 	F:@ZSigS<@gfH>@gQ@@ZClgDlA@ZArgMbXC@g1*C@ZCagDl	D@ZScgEB[zF@ZTig"G@gnxI@ZCrgm4I@ZMngӅXxK@ZFeg\(K@CogHPswM@ZNigTXM@ZCugSO@ZZng)\XP@ZGagʡEnQ@ZGeg)\(R@ZAsg~R@ZSeg=
ףpS@ZBrg`"S@ZKrg33333T@ZRbggDio]U@ZSrgHzU@g9EGr9V@ZZrguVV@ZNbgoB!:W@ZMog\(W@ZTcg     X@ZRugGzDY@ZRhgˡEY@ZPdg{GZ@ZAggȘZ@ZCdgM\@Ing1Z\@ZSng=
ףp]@ZSbgq=
ףp^@ZTegfffff_@g#_@ZXegL7A`i`@Csg9EGr`@ZBagX9v*a@ZLag"\a@ZCegʡEa@ZPrgFxa@ZNdgHzb@ZPmg      b@ZSmgQb@ZEug+b@ZGdg     c@ZTbgȵbc@ZDyg     Pd@ZHogr.ŝd@ZErg?5^Id@ZTmg^e@ZYbgzGe@ZLugme@HfgHzOf@ZTag|a2Uf@g{Gf@ZRegvFg@ZOsg(\g@ZIrgmh@ZPtg"~bh@ZAug]Ch@ZHgg{Gi@ZTlgё\Ci@ZPbgfffffi@ZBigE_j@ZPog(\j@ZAtgHz?j@ZRngq=
ףk@ZFrgq=
ףk@ZRag)\@l@ZAcg)\`l@ZThgH}8m@ZPagR%l@gm@ZNpgm@ZPugRn@ZAmgRan@ZCmg
ףp=n@ZBkZCfg(\bo@ZEsg(\o@ZFmgp@ZMdg!p@ZNog1p@ZLrg(\ap@ZRfg(\Qp@ZDbZSggRp@ZBhgRp@ZHsgGzp@ZMtg
ףp=p@N)&__doc__Zprotein_lettersZextended_protein_lettersZprotein_letters_1to3dictlistr$   Zprotein_letters_1to3_extendedZprotein_letters_3to1Zprotein_letters_3to1_extendedZambiguous_dna_lettersZunambiguous_dna_lettersZambiguous_rna_lettersZunambiguous_rna_lettersZextended_dna_lettersZambiguous_dna_valuesZambiguous_rna_valuesZambiguous_dna_complementZambiguous_rna_complementr)   Zunambiguous_dna_weightsZ$monoisotopic_unambiguous_dna_weightsZunambiguous_dna_weight_rangesZunambiguous_rna_weightsZ$monoisotopic_unambiguous_rna_weightsZunambiguous_rna_weight_rangesr3   Zambiguous_dna_weight_rangesZavg_ambiguous_dna_weightsZambiguous_rna_weight_rangesZavg_ambiguous_rna_weightsZprotein_weightsZmonoisotopic_protein_weightsZextended_protein_valuesZprotein_weight_rangesZextended_protein_weight_rangesZavg_extended_protein_weightsZatom_weightsr   r   r   r    <module>   sF  			