ó
“™xTc           @   sÍ   d  d l  m Z d  d l m Z m Z 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	 „  Z d
 „  Z d „  Z e d k rÉ e ƒ  e ƒ  d GHn  d S(   iÿÿÿÿ(   t   division(   t   crystalt   sgtbxt   xray(   t   covalent_radii(   t   flex(   t	   show_diff(   t   geometry(   t   matrix(   t   StringIOc          C   sH  t  j d t j d! d ƒ d t j t  j d d" d# d$ f ƒ t  j d d% ƒ g ƒ ƒ }  x$ |  j ƒ  D] } | j j	 t
 ƒ qa Wt ƒ  } t j |  j d d ƒ d |  j ƒ  j ƒ  d |  j ƒ  ƒj } | | IJt | j ƒ  d ƒ sæ t ‚ t ƒ  } t j |  j d d ƒ d |  j ƒ  j ƒ  d |  j ƒ  ƒj } | | IJt | j ƒ  d ƒ sQt ‚ t j d	 ƒ t j t j d |  j ƒ  d d ƒ ƒ j ƒ  j ƒ  } t ƒ  } t j |  j d d ƒ d |  j ƒ  j ƒ  d |  j ƒ  d | d |  j ƒ  ƒj } | | IJt | j ƒ  d ƒ st ‚ t ƒ  } t j |  j d d ƒ d |  j ƒ  j ƒ  d |  j ƒ  d | d |  j ƒ  ƒj } | | IJt | j ƒ  d ƒ s‹t ‚ t j t j t j d d d d ƒ ƒ j ƒ  j ƒ  ƒ } t ƒ  } t j |  j d d ƒ d |  j ƒ  j ƒ  d |  j ƒ  d | d | d |  j ƒ  ƒj } | | IJt | j ƒ  d  ƒ sDt ‚ d  S(&   Nt   crystal_symmetryg
×£p=
@gáz®Gá@iZ   ix   t   P6222t
   scattererst   Sii   g       @g      @t   Ogžï§ÆK7É?gžï§ÆK7É¿g_Ò­£ªê?t   distance_cutoffi   t   site_labelst
   sites_fracsÔ   loop_
  _geom_bond_atom_site_label_1
  _geom_bond_atom_site_label_2
  _geom_bond_distance
  _geom_bond_site_symmetry_2
  Si  O  1.6160  4_554
  Si  O  1.6160  2_554
  Si  O  1.6160  3_664
  Si  O  1.6160  5_664

s›  loop_
  _geom_angle_atom_site_label_1
  _geom_angle_atom_site_label_2
  _geom_angle_atom_site_label_3
  _geom_angle
  _geom_angle_site_symmetry_1
  _geom_angle_site_symmetry_3
  O   Si  O   101.3  2_554  4_554
  O   Si  O   111.3  3_664  4_554
  O   Si  O   116.1  3_664  2_554
  O   Si  O   116.1  5_664  4_554
  O   Si  O   111.3  5_664  2_554
  O   Si  O   101.3  5_664  3_664
  Si  O   Si  146.9  3      5

t   sizet   factorgñhãˆµøä>t   covariance_matrixt   parameter_mapsà   loop_
  _geom_bond_atom_site_label_1
  _geom_bond_atom_site_label_2
  _geom_bond_distance
  _geom_bond_site_symmetry_2
  Si  O  1.616(14)  4_554
  Si  O  1.616(12)  2_554
  Si  O  1.616(14)  3_664
  Si  O  1.616(12)  5_664

s·  loop_
  _geom_angle_atom_site_label_1
  _geom_angle_atom_site_label_2
  _geom_angle_atom_site_label_3
  _geom_angle
  _geom_angle_site_symmetry_1
  _geom_angle_site_symmetry_3
  O   Si  O    101.3(8)  2_554  4_554
  O   Si  O   111.3(10)  3_664  4_554
  O   Si  O    116.1(9)  3_664  2_554
  O   Si  O    116.1(9)  5_664  4_554
  O   Si  O   111.3(10)  5_664  2_554
  O   Si  O    101.3(8)  5_664  3_664
  Si  O   Si   146.9(9)  3      5

i   gš™™™™™¹?t   cell_covariance_matrixsà   loop_
  _geom_bond_atom_site_label_1
  _geom_bond_atom_site_label_2
  _geom_bond_distance
  _geom_bond_site_symmetry_2
  Si  O  1.616(15)  4_554
  Si  O  1.616(19)  2_554
  Si  O  1.616(15)  3_664
  Si  O  1.616(19)  5_664

(   g
×£p=
@g
×£p=
@gáz®Gá@iZ   iZ   ix   g      à?g      à?gUUUUUUÕ?(   gžï§ÆK7É?gžï§ÆK7É¿g_Ò­£ªê?(   R   t	   structureR   t   symmetryR   t   xray_scatterert	   scattererR   t   flagst   set_grad_sitet   TrueR	   R   t   distances_as_cif_loopt   pair_asu_tablet   extract_labelsR   t   loopR   t   getvaluet   AssertionErrort   angles_as_cif_loopt   set_random_seedR   t   diagt   random_doublet   n_parameterst   as_flex_double_matrixt   matrix_symmetric_as_packed_uR   t   pow2(   t   quartzt   sct   sR!   t
   vcv_matrixt   cell_vcv(    (    sJ   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/py2/iotbx/cif/tests/tst_geometry.pyt   exercise_cif_from_cctbx
   sv    		
	
-	
	
6	
c          C   s  t  ƒ  }  x$ |  j ƒ  D] } | j j t ƒ q Wg  |  j ƒ  j ƒ  D] } t j | ƒ j	 ƒ  ^ qC } |  j
 d d t | ƒ d ƒ } t j | ƒ } | j |  j ƒ  d d ƒt j d d t j d ƒ ƒ t j d d t j d	 ƒ ƒ t j d
 d t j d ƒ ƒ t j d d ƒ t j d d t j d ƒ ƒ t j d d t j d ƒ ƒ t j d d
 ƒ g } t j | | |  j ƒ  j ƒ  d |  j ƒ  ƒj } t ƒ  } | | IJt | j ƒ  d ƒ s¶t ‚ t j d ƒ t j t j  d |  j! ƒ  d d ƒ ƒ j" ƒ  j# ƒ  }	 t j | | |  j ƒ  j ƒ  d |  j ƒ  d |	 d |  j$ ƒ  ƒj } t ƒ  } | | IJt | j ƒ  d ƒ sgt ‚ t j% t j t j  d d d d ƒ ƒ j" ƒ  j# ƒ  ƒ }
 t j | | |  j ƒ  j ƒ  d |  j ƒ  d |	 d |
 d |  j$ ƒ  ƒj } t ƒ  } | | IJt | j ƒ  d ƒ st ‚ d  S(   Nt   buffer_thicknessi   g      à?t	   tolerancei   i   s   -X,0.5+Y,2-Zi   s   -X,-0.5+Y,1-Zi   i
   s	   1+X,+Y,+Zi    i   s   -1-X,0.5+Y,1-Zs   -1-X,-0.5+Y,1-Zi   R   sV  loop_
  _geom_hbond_atom_site_label_D
  _geom_hbond_atom_site_label_H
  _geom_hbond_atom_site_label_A
  _geom_hbond_distance_DH
  _geom_hbond_distance_HA
  _geom_hbond_distance_DA
  _geom_hbond_angle_DHA
  _geom_hbond_site_symmetry_A
  O2   H2   O4  0.8200  2.0636  2.8635  165.0  2_557
  O4   H4   O9  0.8200  2.0559  2.8736  174.9  2_546
  O5   H5   O7  0.8200  2.0496  2.8589  169.0  1_655
  O7   H7   O1  0.8200  2.0573  2.8617  166.8  .
  O8   H8   O9  0.8200  2.1407  2.8943  152.8  2_456
  O9   H9   O8  0.8200  2.1031  2.8943  162.1  2_446
  O10  H10  O5  0.8200  2.0167  2.7979  159.1  .

R   R   gñhãˆµøä>R   R   s•  loop_
  _geom_hbond_atom_site_label_D
  _geom_hbond_atom_site_label_H
  _geom_hbond_atom_site_label_A
  _geom_hbond_distance_DH
  _geom_hbond_distance_HA
  _geom_hbond_distance_DA
  _geom_hbond_angle_DHA
  _geom_hbond_site_symmetry_A
  O2   H2   O4  0.82(3)  2.06(3)    2.86(3)  165.0(18)  2_557
  O4   H4   O9  0.82(4)  2.06(4)    2.87(4)     175(2)  2_546
  O5   H5   O7  0.82(2)  2.05(2)  2.859(19)  169.0(18)  1_655
  O7   H7   O1  0.82(2)  2.06(2)    2.86(2)     167(2)  .
  O8   H8   O9  0.82(3)  2.14(3)    2.89(3)     153(3)  2_456
  O9   H9   O8  0.82(3)  2.10(3)    2.89(3)     162(2)  2_446
  O10  H10  O5  0.82(3)  2.02(3)    2.80(3)     159(3)  .

i   gš™™™™™¹?R   s‡  loop_
  _geom_hbond_atom_site_label_D
  _geom_hbond_atom_site_label_H
  _geom_hbond_atom_site_label_A
  _geom_hbond_distance_DH
  _geom_hbond_distance_HA
  _geom_hbond_distance_DA
  _geom_hbond_angle_DHA
  _geom_hbond_site_symmetry_A
  O2   H2   O4  0.82(3)  2.06(4)  2.86(4)  165.0(18)  2_557
  O4   H4   O9  0.82(4)  2.06(4)  2.87(4)     175(2)  2_546
  O5   H5   O7  0.82(2)  2.05(2)  2.86(2)  169.0(18)  1_655
  O7   H7   O1  0.82(2)  2.06(3)  2.86(3)     167(2)  .
  O8   H8   O9  0.82(3)  2.14(4)  2.89(4)     153(3)  2_456
  O9   H9   O8  0.82(3)  2.10(3)  2.89(4)     162(2)  2_446
  O10  H10  O5  0.82(3)  2.02(3)  2.80(3)     159(3)  .

(&   t   sucroseR   R   R   R   t   scattering_type_registryt   type_index_pairs_as_dictR   t   tablet   radiust   asu_mappingst   maxR   R   t   add_covalent_pairst   scattering_typesR   t   hbondR   t   rt_mxt   hbonds_as_cif_loopR    R   R!   R	   R   R"   R#   R   R%   R   R&   R'   R(   R)   R*   R   R+   (   t   xsR-   t   eltt   radiiR9   R   t   hbondsR!   R.   R/   R0   (    (    sJ   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/py2/iotbx/cif/tests/tst_geometry.pyt   exercise_hbond_as_cif_loop‡   s`    	1		
-	
6	
c        ;   C   sð  t  j d t j d dPd d	 ƒ d
 t j t  j d d d dQd dRƒ t  j d d d dSd dTƒ t  j d d! d dUd d% ƒ t  j d d& d dVd dWƒ t  j d d0 d dXd d4 ƒ t  j d d5 d dYd dZƒ t  j d d? d d[d dC ƒ t  j d dD d d\d d]ƒ t  j d dN d d^d dR ƒ t  j d dS d d_d d`ƒ t  j d d[ d dad dbƒ t  j d de d dcd di ƒ t  j d dj d ddd deƒ t  j d ds d dfd dw ƒ t  j d dx d dgd dhƒ t  j d d‚ d did d† ƒ t  j d d‡ d djd dkƒ t  j d d‘ d dld d• ƒ t  j d d– d dmd dnƒ t  j d d  d dod dpƒ t  j d dª d dqd d® ƒ t  j d d¯ d drd dsƒ t  j d d¹ d dtd d½ ƒ t  j d d¾ d dud dvƒ t  j d dÇ d dwd dË ƒ t  j d dÌ d dxd dyƒ t  j d dÕ d dzd d½ ƒ t  j d dÙ d d{d dÝ ƒ t  j d dÞ d d|d d}ƒ t  j d dè d d~d dì ƒ t  j d dí d dd d€ƒ t  j d dõ d d�d dù ƒ t  j d dú d d‚d dƒƒ t  j d dd d„d d…ƒ t  j d dd d†d dƒ t  j d dd d‡d dƒ t  j d dd dˆd d‰ƒ t  j d dd dŠd d"ƒ t  j d d#d d‹d dŒƒ t  j d d-d d�d d1ƒ t  j d d2d dŽd d�ƒ t  j d d9d d�d d=ƒ t  j d d>d d‘d d’ƒ t  j d dGd d“d dKƒ t  j d dLd d”d dKƒ f- ƒ ƒ S(•  NR
   t	   unit_cellgoƒÀÊ!@g~Œ¹k	y!@gé·¯çÌ%@iZ   gåÐ"Ûù¾Y@t   space_group_symbols   hall:  P 2ybR   t   labelt   O1t   siteg‘*ŠWYÛÀ¿g]©gA(ïí?gz©Ø˜×ì?t   ugb�oï:?gµRäG.?g}’;l"3'?gfLÁgÓñ¾g·_>Y1\?gTäqs*É¾t   O2g=¹¦@fgË¿gù*8é?gšÚRLñ?gÚuoEb‚J?grQ-"ŠÉ;?gpD÷¬k´,?g¼yªCn†?g™ò!¨½
?t   H2gæêÇ&ùÍ¿gÏ½‡Kì?gt}¢ñ?góèFXTÄ©?t   O3g½U×¡š’Â¿gŠSÍ¬¥à?gÂÚ;á%ë?g•ñï3.L?giUMu/?gÙ“Àæ<C?g†ÆAœ‡#¿g*T7Û3?g1]ˆÕa¿t   H3g˜Ãî;†Ç²¿g¶÷©*4Ý?gsGÿËµèê?g;¨Äu°?t   O4g»^š"ÀéÉ?gJA·—4Æâ?gK\Ç¸ââé?grQ-"ŠÉK?g¢&ú|”7?gMÛ¿²Ò¤4?gÐî�b€D3?g�íµ ÷Æ0?gˆ»z?t   H4g�ÙYôNÎ?gÅçN°ÿ:â?gÕ¯t><Ëç?g)[$íF«?t   O5g{JÎ‰=´Ï?gCâKºì?gø¬8Uç?g°Víš�Ö8?g/PR`L9?g‹à+Ù±1?g
ØFìó¾grQ-"ŠÉ?g�íµ ÷Æ°>t   H5gÕ@ó9w»Ô?gö]üo¥î?gDÃbÔµvè?g«êåwš¤?t   O6g\“nKä‚Ç¿g%ìjòÔó?gÜJ¯ÍÆÊæ?g¢'eRC+?gÒûÆ×žY?g�íµ ÷ÆÀ>g$Diâ¿t   O7g(eRC€Ý¿g||BvÞ†ñ?g£#¹ü‡tê?gH£'ÛÀ=?gpD÷¬k´<?g8„*5{ 5?g�¾IÓ hþ>gOÊ¤†6 ?gÅ­‚èÚ?t   H7gH1@¢	×¿g0�ÖmPûð?g;¨ÄuŒ+ë?go½¦¥¨?t   O8g–ëm3ââ¿giÉãiùÁó?gEcíïl�Þ?gmUÙY6?gç4´;¤8?g›©¾ó‹2?gÞ 3ßÁO?g¢&ú|”÷¾t   H8gÆûqûåã¿gá³up°7õ?g6#ƒÜE˜ß?g´Ø€q¥?t   O9g�EÓÙÉàÒ¿gæ}“¦Að?gì4ÒRy;Û?g©ÜD-Í­@?gÕýL½n1?gyxÏ�å)?g!>°ã¿@ ¿g·_>Y1\?g-Cëâ6
¿t   H9gØñ_ �Ó¿g,ü¨†ýí?gB±4-±Ý?gÔÖˆ`\¢?t   O10gŠéB¬þ¿?gæ!S>•ñ?g²¹jž#òà?g()° ¦<?g&z‹‡÷<?gúœ»]/M1?g«ZÒQf?g†ÆAœ‡#?gÕÌZ
Hû?t   H10gøŠn½¦Å?gÄxÍ«:kð?g«–t”ƒYâ?g£<órØ¥?t   O11gšÎNGÉ»¿gtÑ�ñ(•ï?g#gaO;|å?gOèõ'ñ¹3?gñhãˆµø$?g€Ÿqá@H&?g?«Ì”Ößò¾g·_>Y1\ý>gTäqs*É>t   C1gB"mãOTÊ¿gC8Ùé?gT5AÔ}€ë?gÃ L£ÉÅ8?gôPÛ†Q0?g—åë2ü§+?g{…÷¿gñhãˆµøô>g·_>Y1\Ý>t   H1g#Ù#ÔÒ¿g•k*‹Âè?gÍä›mnÌè?g9í)9'ö ?t   C2gPª}:3Ô¿g�@gÒ¦jè?g­À�Õ­žî?gŽ±^‚S??góWÈ\9?g°t><K�1?gTäqs*Ù>gÚæÆô„%?g€Ÿqá@H?t   H2Bgxã§qoÚ¿g£ZD“·ê?gLþ'÷î?g o–ê¦?t   C3g—7‡kµ‡­¿gÊÂ××:å?gô‹ôúë?gVÓõD×…??g¾†à¸Œ›*?g„¹ÝË}r¿g
¼“O�m?g¢'eRCû¾t   H3Bg{3j¾J>†?g	2*Aå?gË-­†Äî?g‚ÅáÌ¯æ ?t   C4g]Ã�'‚°?gnÂ½2oUæ?g5Ïù.%é?ghY÷�…è@?gé_’Ês0?g[³ÐÎi&?gÞ 3ßÁO?gúœ»]/M?t   H2AgE‚©fÖR×¿g²ÖPj/"å?gœh>çnî?t   H4BgææÑ=ëZ¿gPR`Læ?g7ßˆîYWæ?g:[@h=|¡?t   C5gBÎûÿ8Á?g»`pÍ}ë?gMjh°ê?gã5¯ê¬6?g³B‘îç4?g$Diâ?g�íµ ÷Æð>gÞ 3ßÁOü>gfLÁgÓ?t   H5Bgàƒ×.m8Ê?g¦·?™ë?gù¼â©Çì?gí�ÑV%‘�?t   C6g»Ò2Rï©Œ¿gÖÅm4€7ï?g¾†à¸Œ›é?gÞ„€|	5?g
¼“O�m)?gü©ñÒMb ?gTäqs*Ù¾t   H6gqãósC£?g)ßÞ5ñ?gÈÓòWyê?g•Ô	h"l˜?t   C7gÖß—ªÀ¿g,×Ûf*Dò?g›sôøã?gro~ÃDƒ4?gd?‹¥H¾"?g{…÷(?g       €gÖÿ9Ì—?g�íµ ÷Æ°¾t   C8gr6Ü,¦?g(}!ä¼?ó?gu€Ô&Nã?g}’;l"37?g�*ß3¡1?g3ˆìø/0?gñhãˆµøô¾gTäqs*ù>t   H8Ag&o€™ïà—?gž_” ¿Ðô?g�üÁÀsïá?g[¶Ö	m¡?t   H8Bgä�È"M¼¿?g²œ„Ò‚ó?g‚ïäÓãå?t   C9g‹ú$wØDÒ¿g"ãQ*áIò?g‰±L¿D<à?gêAA)Z¹'?g?«Ì”Ößâ>g!>°ã¿@?gÉÇî%?t   H9BgO\ŽW zÑ¿g‰”M¹Âó?g8¢{Ö5ZÝ?gŒÊÂ××š?t   C10gd²¸ÿÈtÜ¿g Nyt#¬ò?g:Ë,B±â?g,amŒ�ð2?gF–Ì±¼«.?g¼yªCn†+?g?«Ì”Ößò>g?«Ì”Öß?gñhãˆµø?t   H10BghÐÐ?ÁÅÞ¿g]¿`7lñ?g_Ï×,—ã?g‚ý×¹i3ž?t   C11g¢ÑÄÎ×¿gé&1¬\ô?g’we¨å?g§@fgÑ;5?gR×ÚûT*?gXþ|[°T?t   H11g7ßˆîY×Ø¿gN} yçö?gyÌ|¿ä?g…÷ ?t   C12gÛÁˆ}Ý¿gåE&à×ô?gÁoCŒ×<é?gvk™Çó9?g—åë2ü§;?gçfh<1?g6wô¿\‹?gÕÌZ
Hû¿t   H12Bg(�H0ÕLâ¿g¶€Ðzø²ô?g’;l"3—è?gMIÖáè*¥?t   H12AgW@ÜÕ«Ø¿gp{‚Äv÷ô?gñ+Öp‘{ë?(   goƒÀÊ!@g~Œ¹k	y!@gé·¯çÌ%@iZ   gåÐ"Ûù¾Y@iZ   (   g‘*ŠWYÛÀ¿g]©gA(ïí?gz©Ø˜×ì?(   gb�oï:?gµRäG.?g}’;l"3'?gfLÁgÓñ¾g·_>Y1\?gTäqs*É¾(   g=¹¦@fgË¿gù*8é?gšÚRLñ?(   gÚuoEb‚J?grQ-"ŠÉ;?gpD÷¬k´,?g¼yªCn†?g}’;l"3'?g™ò!¨½
?(   gæêÇ&ùÍ¿gÏ½‡Kì?gt}¢ñ?(   g½U×¡š’Â¿gŠSÍ¬¥à?gÂÚ;á%ë?(   g•ñï3.L?giUMu/?gÙ“Àæ<C?g†ÆAœ‡#¿g*T7Û3?g1]ˆÕa¿(   g˜Ãî;†Ç²¿g¶÷©*4Ý?gsGÿËµèê?(   g»^š"ÀéÉ?gJA·—4Æâ?gK\Ç¸ââé?(   grQ-"ŠÉK?g¢&ú|”7?gMÛ¿²Ò¤4?gÐî�b€D3?g�íµ ÷Æ0?gˆ»z?(   g�ÙYôNÎ?gÅçN°ÿ:â?gÕ¯t><Ëç?(   g{JÎ‰=´Ï?gCâKºì?gø¬8Uç?(   g°Víš�Ö8?g/PR`L9?g‹à+Ù±1?g
ØFìó¾grQ-"ŠÉ?g�íµ ÷Æ°>(   gÕ@ó9w»Ô?gö]üo¥î?gDÃbÔµvè?(   g\“nKä‚Ç¿g%ìjòÔó?gÜJ¯ÍÆÊæ?(   giUMu/?g‹à+Ù±1?g¢'eRC+?gÒûÆ×žY?g�íµ ÷ÆÀ>g$Diâ¿(   g(eRC€Ý¿g||BvÞ†ñ?g£#¹ü‡tê?(   gH£'ÛÀ=?gpD÷¬k´<?g8„*5{ 5?g�¾IÓ hþ>gOÊ¤†6 ?gÅ­‚èÚ?(   gH1@¢	×¿g0�ÖmPûð?g;¨ÄuŒ+ë?(   g–ëm3ââ¿giÉãiùÁó?gEcíïl�Þ?(   gmUÙY6?gç4´;¤8?g›©¾ó‹2?gÞ 3ßÁO?g¢&ú|”÷¾g™ò!¨½
?(   gÆûqûåã¿gá³up°7õ?g6#ƒÜE˜ß?(   g�EÓÙÉàÒ¿gæ}“¦Að?gì4ÒRy;Û?(   g©ÜD-Í­@?gÕýL½n1?gyxÏ�å)?g!>°ã¿@ ¿g·_>Y1\?g-Cëâ6
¿(   gØñ_ �Ó¿g,ü¨†ýí?gB±4-±Ý?(   gŠéB¬þ¿?gæ!S>•ñ?g²¹jž#òà?(   g()° ¦<?g&z‹‡÷<?gúœ»]/M1?g«ZÒQf?g†ÆAœ‡#?gÕÌZ
Hû?(   gøŠn½¦Å?gÄxÍ«:kð?g«–t”ƒYâ?(   gšÎNGÉ»¿gtÑ�ñ(•ï?g#gaO;|å?(   gOèõ'ñ¹3?gñhãˆµø$?g€Ÿqá@H&?g?«Ì”Ößò¾g·_>Y1\ý>gTäqs*É>(   gB"mãOTÊ¿gC8Ùé?gT5AÔ}€ë?(   gÃ L£ÉÅ8?gôPÛ†Q0?g—åë2ü§+?g{…÷¿gñhãˆµøô>g·_>Y1\Ý>(   g#Ù#ÔÒ¿g•k*‹Âè?gÍä›mnÌè?(   gPª}:3Ô¿g�@gÒ¦jè?g­À�Õ­žî?(   gŽ±^‚S??góWÈ\9?g°t><K�1?gTäqs*Ù>gÚæÆô„%?g€Ÿqá@H?(   gxã§qoÚ¿g£ZD“·ê?gLþ'÷î?(   g—7‡kµ‡­¿gÊÂ××:å?gô‹ôúë?(   gVÓõD×…??g¾†à¸Œ›*?g—åë2ü§+?g„¹ÝË}r¿g
¼“O�m?g¢'eRCû¾(   g{3j¾J>†?g	2*Aå?gË-­†Äî?(   g]Ã�'‚°?gnÂ½2oUæ?g5Ïù.%é?(   ghY÷�…è@?gé_’Ês0?g[³ÐÎi&?gÞ 3ßÁO?gúœ»]/M?gTäqs*Ù>(   gE‚©fÖR×¿g²ÖPj/"å?gœh>çnî?(   gææÑ=ëZ¿gPR`Læ?g7ßˆîYWæ?(   gBÎûÿ8Á?g»`pÍ}ë?gMjh°ê?(   gã5¯ê¬6?g³B‘îç4?g$Diâ?g�íµ ÷Æð>gÞ 3ßÁOü>gfLÁgÓ?(   gàƒ×.m8Ê?g¦·?™ë?gù¼â©Çì?(   g»Ò2Rï©Œ¿gÖÅm4€7ï?g¾†à¸Œ›é?(   gÞ„€|	5?g
¼“O�m)?gü©ñÒMb ?g!>°ã¿@ ¿g«ZÒQf?gTäqs*Ù¾(   gqãósC£?g)ßÞ5ñ?gÈÓòWyê?(   gÖß—ªÀ¿g,×Ûf*Dò?g›sôøã?(   gro~ÃDƒ4?gd?‹¥H¾"?g{…÷(?g       €gÖÿ9Ì—?g�íµ ÷Æ°¾(   gr6Ü,¦?g(}!ä¼?ó?gu€Ô&Nã?(   g}’;l"37?g�*ß3¡1?g3ˆìø/0?gñhãˆµøô¾g€Ÿqá@H?gTäqs*ù>(   g&o€™ïà—?gž_” ¿Ðô?g�üÁÀsïá?(   gä�È"M¼¿?g²œ„Ò‚ó?g‚ïäÓãå?(   g‹ú$wØDÒ¿g"ãQ*áIò?g‰±L¿D<à?(   gÐî�b€D3?g¾†à¸Œ›*?gêAA)Z¹'?g?«Ì”Ößâ>g!>°ã¿@?gÉÇî%?(   gO\ŽW zÑ¿g‰”M¹Âó?g8¢{Ö5ZÝ?(   gd²¸ÿÈtÜ¿g Nyt#¬ò?g:Ë,B±â?(   g,amŒ�ð2?gF–Ì±¼«.?g¼yªCn†+?g?«Ì”Ößò>g?«Ì”Öß?gñhãˆµø?(   ghÐÐ?ÁÅÞ¿g]¿`7lñ?g_Ï×,—ã?(   g¢ÑÄÎ×¿gé&1¬\ô?g’we¨å?(   g§@fgÑ;5?gR×ÚûT*?gúœ»]/M1?gÞ 3ßÁO?gXþ|[°T?g?«Ì”Ößâ>(   g7ßˆîY×Ø¿gN} yçö?gyÌ|¿ä?(   gÛÁˆ}Ý¿gåE&à×ô?gÁoCŒ×<é?(   gvk™Çó9?g—åë2ü§;?gçfh<1?g6wô¿\‹?gü©ñÒMb ?gÕÌZ
Hû¿(   g(�H0ÕLâ¿g¶€Ðzø²ô?g’;l"3—è?(   gW@ÜÕ«Ø¿gp{‚Äv÷ô?gñ+Öp‘{ë?(   R   R   R   R   R   R   R   (    (    (    sJ   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/py2/iotbx/cif/tests/tst_geometry.pyR4   ó   s    				 	 		 		 		 		 	 		 		 		 		 	 		 		 		 			 		 		 	 			 		 		 		 		t   __main__t   OKN(   t
   __future__R    t   cctbxR   R   R   t   cctbx.eltbxR   t   cctbx.array_familyR   t   libtbx.test_utilsR   t	   iotbx.cifR   t   scitbxR   t	   cStringIOR	   R1   RD   R4   t   __name__(    (    (    sJ   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/py2/iotbx/cif/tests/tst_geometry.pyt   <module>   s   	}	l	Ó