*ë
Z@;c       s     d  d g Z   d k Z  d k Z  d k Z  d k Z  d k l Z  d k l Z  e i	 Z	   h  e i
 d ƒ d <e i
 d ƒ d <e i
 d	 ƒ d
 <e i
 d ƒ d <e i
 d ƒ d <e i
 d ƒ d <e i
 d ƒ d <e i
 d ƒ d <Z  e i
 d ƒ Z  e i
 d ƒ Z  e i
 d ƒ Z  e i
 d ƒ Z   e i
 d ƒ Z " d f  d „  ƒ  YZ 9 d f  d „  ƒ  YZ W d f  d „  ƒ  YZ ~ d  f  d! „  ƒ  YZ ™ d" e i f d# „  ƒ  YZ Ì d$ e i f d% „  ƒ  YZ Ó d& „  Z d S('   s   fssp_recs	   FSSPToolsN(   s   Generic(   s   Alphabets	   ^DATABASEs   databases   ^PDBIDs   pdbids   ^HEADERs   headers   ^COMPNDs   compnds   ^AUTHORs   authors   ^SOURCEs   sources
   ^SEQLENGTHs	   seqlengths   ^NALIGNs   naligns   ## +SUMMARYs    *[0-9]+: +[1-9][0-9a-z]{3,3}s   ## +ALIGNMENTSs    *[0-9]+ + [0-9]+s   ## +EQUIVALENCESs
   FSSPHeaderc      s   " # d „  Z  , d „  Z RS(   Nc    sg   # $ t  |  _ % d |  _ & d |  _ ' d |  _ ( d |  _ ) g  |  _ * d |  _ + d |  _	 d  S(   Ns    i    (
   s   Nones   selfs   databases   pdbids   headers   compnds   sources   authors	   seqlengths   nalign(   s   self(    (    s*   /mit/seven/lib/python/Bio/FSSP/__init__.pys   __init__# s   c    sJ  , - x=t  i ƒ  d - r*} . t  | i | ƒ o/ | d j p | d j p
 | d j o* 0 t |  | t t i	 | ƒ d ƒ ƒ n¶ 1 | d j p
 | d j o$ 2 t |  | t i	 | ƒ d ƒ nu 3 | d j p
 | d	 j o7 4 | | i
 d
 ƒ d i ƒ  } 5 t |  | | ƒ n! 7 t |  | t i	 | ƒ d ƒ n q Wd  S(   Ni    s   databases	   seqlengths   naligni   s   compnds   authors   sources   headers    (   s   header_recordss   keyss   is   matchs   inlines   setattrs   selfs   ints   strings   splits   finds   strips   attr(   s   selfs   inlines   attrs   i(    (    s*   /mit/seven/lib/python/Bio/FSSP/__init__.pys   fill_header, s    	**$ (   s   __init__s   fill_header(    (    (    s*   /mit/seven/lib/python/Bio/FSSP/__init__.pys
   FSSPHeader" s   	s   PosAlignc      s&   9 : d „  Z  K d „  Z R e Z RS(   Nc    s  : ; t  i | ƒ } < t | ƒ d j o t | ƒ d j o = t d | ‚ n > | d j o ? d |  _ @ d |  _ n‹ B d |  _ C | d |  _ D |  i t  i |  i ƒ j o E d |  _ n F t | ƒ d j o G t  i	 | d ƒ |  _
 n I d |  _
 d  S(	   Ni   i   s   PosAlign: length not 2 charss   ..s   -i    s   Cs   0(   s   strings   strips   inStrs   lens
   ValueErrors   selfs   aas   gaps   lowers   uppers   ss(   s   selfs   inStr(    (    s*   /mit/seven/lib/python/Bio/FSSP/__init__.pys   __init__: s   )c    sD   K L |  i o M d } n O |  i t i |  i ƒ } P | Sd  S(   Ns   ..(   s   selfs   gaps	   outstrings   aas   strings   lowers   ss(   s   selfs	   outstring(    (    s*   /mit/seven/lib/python/Bio/FSSP/__init__.pys   __repr__K s   (   s   __init__s   __repr__s   __str__(    (    (    s*   /mit/seven/lib/python/Bio/FSSP/__init__.pys   PosAlign9 s   s
   FSSPSumRecc      s/   W d  Z  X Y d „  Z z d „  Z | e Z RS(   s*    Contains info from an FSSP summary recordc    sx  Y Z | |  _ [ t i t i | ƒ ƒ } ] t i | d d  ƒ |  _ ^ | d d  |  _	 _ t
 | d ƒ d j o ` d |  _ n? a t
 | d ƒ d j o b | d d |  _ n d t d ‚ e | d d  |  _ f t
 | d ƒ d j o g d |  _ n? h t
 | d ƒ d j o i | d d |  _ n k t d ‚ l t i | d	 ƒ |  _ m t i | d ƒ |  _ n t i | d ƒ |  _ o t i | d
 ƒ |  _ p t i | d ƒ |  _ q t i | d ƒ |  _ r t i | d ƒ |  _ s t i | d ƒ |  _ t | d |  _ u d |  _ v x. | d d v r } w |  i | d |  _ q4Wx t i |  i ƒ d |  _ d  S(   Ni    i   i   s   0i   s   Bad PDB ID 1i   s   Bad PDB ID 2i   i   i   i   i	   i
   i   s    i   s    s   
(   s   in_strs   selfs   raws   strings   splits   strips   in_recs   atois   nrs   pdb1s   lens   chain1s
   ValueErrors   pdb2s   chain2s   atofs   zscores   rmsds   lalis   lseq2s   pIDs   reverss   permuts   nfrags   topos   docs   is   rstrip(   s   selfs   in_strs   in_recs   i(    (    s*   /mit/seven/lib/python/Bio/FSSP/__init__.pys   __init__Y s:    	c    s   z { |  i Sd  S(   N(   s   selfs   raw(   s   self(    (    s*   /mit/seven/lib/python/Bio/FSSP/__init__.pys   __repr__z s   (   s   __doc__s   __init__s   __repr__s   __str__(    (    (    s*   /mit/seven/lib/python/Bio/FSSP/__init__.pys
   FSSPSumRecW s   	!s   FSSPAlignRecc      s)   ~  d „  Z   d „  Z ’ d „  Z RS(   Nc    s3    t  i | t i i ƒ |  _ ‚ t  i | t i i ƒ |  _ ƒ | t i i	 |  _	 „ |  i	 d j o … d |  _	 n † | t i i
 |  _
 ‡ |  i
 t  i |  i
 ƒ j o ˆ d |  _
 n ‰ | t i i |  _ Š | t i i |  _ ‹ | t i i |  _ Œ | t i i |  _  h  |  _ Ž g  |  _ d  S(   Ns    s   0s   C(   s   strings   atois
   in_fff_recs   fssp_recs   aligns   abs_res_nums   selfs   strips   pdb_res_nums   chain_ids   res_names   lowers   ss1s   turn3s   turn4s   turn5s   pos_align_dicts   PosAlignList(   s   selfs
   in_fff_rec(    (    s*   /mit/seven/lib/python/Bio/FSSP/__init__.pys   __init__ s   c    s9     x, | d  r } ‘ |  i i t | ƒ ƒ q Wd  S(   Ni    (   s
   align_lists   is   selfs   PosAlignLists   appends   PosAlign(   s   selfs
   align_lists   i(    (    s*   /mit/seven/lib/python/Bio/FSSP/__init__.pys   add_align_list s    	c    sI   ’ “ d } ” x3 |  i d ” r# } • | |  i | <– | d } q Wd  S(   Ni   i    (   s   js   selfs   PosAlignLists   is   pos_align_dict(   s   selfs   js   i(    (    s*   /mit/seven/lib/python/Bio/FSSP/__init__.pys   pos_align_list2dict’ s
   	 	(   s   __init__s   add_align_lists   pos_align_list2dict(    (    (    s*   /mit/seven/lib/python/Bio/FSSP/__init__.pys   FSSPAlignRec~ s   s   FSSPAlignDictc      sM   ™ š d „  Z  ¡ d „  Z § d „  Z « d „  Z ¯ d „  Z · d „  Z RS(   Nc    s+   š ž h  |  _ Ÿ h  |  _   h  |  _ d  S(   N(   s   selfs   pdb_res_dicts   abs_res_dicts   data(   s   self(    (    s*   /mit/seven/lib/python/Bio/FSSP/__init__.pys   __init__š s   c    sT   ¡ ¢ xG |  i ƒ  d ¢ r4 } £ | |  i |  | i <¤ | |  i |  | i <q Wd  S(   Ni    (   s   selfs   keyss   is   abs_res_dicts   abs_res_nums   pdb_res_dicts   pdb_res_num(   s   selfs   i(    (    s*   /mit/seven/lib/python/Bio/FSSP/__init__.pys   build_resnum_list¡ s    	c    s   § ¨ |  |  i | Sd  S(   N(   s   selfs   abs_res_dicts   num(   s   selfs   num(    (    s*   /mit/seven/lib/python/Bio/FSSP/__init__.pys   abs§ s   c    s   « ¬ |  |  i | Sd  S(   N(   s   selfs   pdb_res_dicts   num(   s   selfs   num(    (    s*   /mit/seven/lib/python/Bio/FSSP/__init__.pys   pdb« s   c    so   ¯ ° d } ± |  i i ƒ  } ² | i ƒ  ³ x3 | d ³ r& } ´ | |  i | ƒ i | i
 7} q7 Wµ | Sd  S(   Ns    i    (   s   ss   selfs   abs_res_dicts   keyss   sorted_pos_numss   sorts   is   abss   pos_align_dicts   nums   aa(   s   selfs   nums   ss   sorted_pos_numss   i(    (    s*   /mit/seven/lib/python/Bio/FSSP/__init__.pys   sequence¯ s   	 	$c  	  sn  · ¸ h  } ¹ x2 |  i d ƒ i i ƒ  d ¹ r } º d | | <q* W» xX |  i ƒ  d » rE } ¼ x9 | i i ƒ  d ¼ r# } ½ | | c | i | i 7<qt WqV W¾ | i ƒ  } ¿ | i
 ƒ  À d } Á x– | d Á r‰ } Â | d | 7} Ã d } Ä xV | | d Ä rE } Å | d 7} Æ | d d j o Ç | d 7} n È | | 7} qWÉ | d 7} qÓ WÊ | Sd  S(   Ni   i    s    s   > %d
iH   s   
(   s   mult_align_dicts   selfs   abss   pos_align_dicts   keyss   js   valuess   fssp_recs   aas	   seq_orders   sorts   out_strs   is   k(   s   selfs   ks   mult_align_dicts   js   is   fssp_recs   out_strs	   seq_order(    (    s*   /mit/seven/lib/python/Bio/FSSP/__init__.pys   fasta_mult_align· s0   	 	 	 	%	 		 	(   s   __init__s   build_resnum_lists   abss   pdbs   sequences   fasta_mult_align(    (    (    s*   /mit/seven/lib/python/Bio/FSSP/__init__.pys   FSSPAlignDict™ s   s   FSSPSumDictc      s   Ì Í RS(   N(    (    (    (    s*   /mit/seven/lib/python/Bio/FSSP/__init__.pys   FSSPSumDictÌ s   c 
   s  Ó Ô t  ƒ  } Õ t ƒ  } Ö t ƒ  } Ø |  i ƒ  } Ù x8 Ù t	 i
 | ƒ o# Û | i | ƒ Ü |  i ƒ  } q< WÞ t	 i
 | ƒ o ß t d ‚ n à |  i ƒ  } á |  i ƒ  } ã xF ã t i
 | ƒ o2 ä t | ƒ }	 å |	 | |	 i <æ |  i ƒ  } q¼ Wé x¯é t i
 | ƒ ošê x9 ê t i
 | ƒ o t i
 | ƒ o ì |  i ƒ  } q"Wí t i
 | ƒ o3 î t i
 | ƒ o ï d GHð Pn ò t d ‚ n ô t i
 | ƒ o õ Pn ø |  i ƒ  } ù |  i ƒ  } ú xÑ ú t i
 | ƒ o½ û t t | ƒ ƒ } ü | i | i t | i ƒ } ý t i | t i i  ƒ } þ | i" | ƒ o ÿ | | | <n  | | i# | ƒ |  i ƒ  } | o d GHt$ ‚ n qáWqWx/ | i% ƒ  d r } | i' ƒ  | `( qÉW| i) ƒ  	| | | f Sd  S(   Ns&   Bad FSSP file: no summary record founds   Reached equiv_titles/   Bad FSSP file: no alignments title record founds	   EOFEOFEOFi    (*   s
   FSSPHeaders   headers   FSSPSumDicts   sum_dicts   FSSPAlignDicts
   align_dicts   fssp_handles   readlines   curlines   summary_titles   matchs   fill_headers
   ValueErrors   summary_recs
   FSSPSumRecs   cur_sum_recs   nrs   equiv_titles   alignments_titles   alignments_recs   FSSPAlignRecs   fff_recs	   align_recs   chain_ids   res_names   strs   pdb_res_nums   keys   strings   splits   fssp_recs   aligns   start_aa_lists
   align_lists   has_keys   add_align_lists   EOFErrors   valuess   is   pos_align_list2dicts   PosAlignLists   build_resnum_list(
   s   fssp_handles
   align_lists   sum_dicts   curlines	   align_recs   headers   keys   is
   align_dicts   cur_sum_rec(    (    s*   /mit/seven/lib/python/Bio/FSSP/__init__.pys	   read_fsspÓ sb       %   	(   s   __all__s   strings   res   fssp_recs   UserDicts	   Bio.Aligns   Generics   Bios   Alphabets   fff_recs   compiles   header_recordss   summary_titles   summary_recs   alignments_titles   alignments_recs   equiv_titles
   FSSPHeaders   PosAligns
   FSSPSumRecs   FSSPAlignRecs   FSSPAlignDicts   FSSPSumDicts	   read_fssp(   s	   read_fssps   summary_titles
   FSSPHeaders   UserDicts   summary_recs   fff_recs   __all__s   fssp_recs   alignments_recs   res   equiv_titles   Alphabets   Generics   FSSPAlignRecs   header_recordss   strings
   FSSPSumRecs   FSSPSumDicts   FSSPAlignDicts   PosAligns   alignments_title(    (    s*   /mit/seven/lib/python/Bio/FSSP/__init__.pys   ? s*   ™'3