ó
›™xTc           @   sY   d  d l  m Z d  d l m Z d  d l Z d „  Z e d k rU e e j d ƒ n  d S(   iÿÿÿÿ(   t   division(   t   serverNc         C   sÀ  t  |  ƒ d k s t ‚ t j ƒ  } d d d d d d d d	 d
 d d d d d d d d d d d g } xS| D]K} | j | ƒ } | j j j ƒ  G| j j j ƒ  G| j j j ƒ  GHi  } x0 | j	 D]% } | j
 d k rÃ d | | j <qÃ qÃ Wt | ƒ } xM | j D]B } x9 | j | j g D]% }	 |	 | k r| |	 c d 7<qqWqW| j ƒ  d g t  | ƒ k ryd G| GHt ‚ n  t | ƒ }
 xS | j D]H } x? | j | j | j g D]% }	 |	 | k r®|
 |	 c d 7<q®q®Wq�Wt |
 j ƒ  ƒ d k sùt ‚ t |
 j ƒ  ƒ d k st ‚ x» |
 j ƒ  D]­ \ }	 } | d k r$d G|	 GHx; | j D]0 } | j | j g } |	 | k rOd G| GHqOqOWxK | j D]= } | j | j | j g } |	 | k r�d G| G| j GHq�q�Wq$q$Wt | ƒ } xY | j D]N } xE | j | j | j | j g D]% }	 |	 | k r| |	 c d 7<qqWqëWt | j ƒ  ƒ d k s[t ‚ d G| j ƒ  j d ƒ GHt | ƒ } xY | j D]N } xE | j | j | j | j g D]% }	 |	 | k r®| |	 c d 7<q®q®Wq‰Wt | j ƒ  ƒ d k sùt ‚ t | ƒ } xM | j ƒ  D]? } x6 | j D]+ } | j | k r"| | j c d 7<q"q"WqWt | j ƒ  ƒ d k sst ‚ xB | j ƒ  D]4 \ }	 } | d k ržq€n  |
 |	 d k s€t ‚ q€Wqm Wd  S(   Ni    t   GLYt   VALt   ALAt   LEUt   ILEt   PROt   METt   PHEt   TRPt   SERt   THRt   TYRt   CYSt   ASNt   GLNt   ASPt   GLUt   LYSt   ARGt   HISt   Hi   s   bad bond counts:i   s   three angles:s     bond:s     angle:s   no tor:i   (   t   lent   AssertionErrorR   t   get_comp_comp_id_directt	   chem_compt   idt   stript   namet   groupt	   atom_listt   type_symbolt   atom_idt   dictt	   bond_listt	   atom_id_1t	   atom_id_2t   valuest
   angle_listt	   atom_id_3t   mint   maxt   itemst   value_anglet   tor_listt	   atom_id_4t   countt	   chir_listt   atom_id_centret
   get_planest   plane_atoms(   t   argst   srvt   standard_amino_acidst   comp_idt   comp_comp_idt	   hydrogenst   atomt   bond_countst   bondR!   t   angle_countst   angleR/   t   atom_idst
   tor_countst   tort   chir_countst   chirt   plane_countst   planet
   plane_atom(    (    sY   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/py2/mmtbx/monomer_library/hydrogen_restrictions.pyt   run   sˆ    $					 t   __main__i   (   t
   __future__R    t   mmtbx.monomer_libraryR   t   sysRG   t   __name__t   argv(    (    (    sY   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/py2/mmtbx/monomer_library/hydrogen_restrictions.pyt   <module>   s
   	J