
    _ h]                     2   d dl Z d dlZd dlZd dlZd dlmZmZmZmZm	Z	 d dl
mZ d dlmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZm Z m!Z!m"Z"m#Z#m$Z$m%Z%m&Z&m'Z'm(Z(m)Z)m*Z*m+Z+ d Z,d Z-d Z.ej^                  ja                  de$e(e ee"eg      d	        Z1ej^                  ja                  deeg      d
        Z2ej^                  ja                  de$eee ee"eg      d        Z3d Z4ej^                  ja                  de$eee ee"eg      d        Z5d Z6ej^                  ja                  de$eee(g      d        Z7ej^                  ja                  de ee"eg      d        Z8d Z9d Z:d Z;d Z<d Z=d Z>ej^                  ja                  dej~                  ej                  ej                   ej                  ej                  ej^                  j                  ej                  dk  d            g      ej^                  ja                  d ej                  e       ej                  e      ej                  j                  k7           d               ZJd ZKd ZLd ZMd  ZNej^                  j                  ej                  dk  d!      d"        ZOej^                  ja                  de      d#        ZPd$ ZQej^                  ja                  de      d%        ZRd& ZSd' ZTej^                  ja                  de$e eee(e"eeeee ej                  dg       ej                   ej                  dg            g      d(        ZVd) ZWd* ZXd+ ZYej^                  ja                  ddggegge gge eggf      d,        ZZej^                  ja                  de$ee(g      d-        Z[ej^                  ja                  dddgg g      d.        Z\ej^                  ja                  dd/d/gd0g      d1        Z]d2 Z^ej^                  ja                  de$e eee(e"eeeeedg      d3        Z_d4 Z`d5 Zaej^                  ja                  ddgge(ggg      d6        Zbd7 Zcd8 Zdd9 Zeej^                  ja                  d:d;      d<        Zfd= Zgej^                  ja                  d:d;      d>        Zhej^                  ja                  d:d;      d?        Zid@ ZjdA Zkej^                  ja                  dB e	g dC      dD e e	g dE       e	g dF      g      f ej                   e	g dC      dG e	g dH      ej^                  j                  ej                  dIk  dJ             e	g dC      dK e e	g dE       e	g dF      g      f edLdMg      dD e       f ej                   edLdMg      dG edLdLg      ej^                  j                  ej                  dIk  dJ             edLdMg      dK edLdLg      f ej                   eg dN      dD e       ej^                  j                  ej                  dIk(  dO             ej                   eg dN      dG eg dP      ej^                  j                  ej                  dIk  dJ             ej                   eg dN      dK eg dQ      ej^                  j                  ej                  dIk  dR             e	g dN      dD e	       f ej                   e	g dN      dG e	g dP      ej^                  j                  ej                  dIk  dJ             e	g dN      dK e	       fg      dS        ZldT Zmej^                  ja                  dUdVdWg      dX        Znej^                  j                  ej                  dIk\  dY      dZ        Zoej^                  ja                  d[ ej                  d d\g      d]d/g      d^        Zpd_ Zq ej                  e$eg      Zsej^                  ja                  d`e$e$fe&e$feefeefeefeefeefeefe(e(fe+e(fe)e)fe*e)fe e fe!e feefeefe"e"fe#e"fesesfeesfg      da        Ztej^                  ja                  d`e$e&fe&e&feefeefeefeefeefeefe(e+fe+e+fe)e*fe*e*fe e!fe!e!feefeefe"e#fe#e#fesefeefg      db        Zuy)c    N)
LinearRing
LineStringMultiPolygonPointPolygon)assert_geometries_equal)	all_typesemptyempty_line_stringempty_line_string_zempty_pointempty_point_zempty_polygon)equal_geometries_abnormally_yield_unequalgeometry_collectiongeometry_collection_zignore_invalidignore_warningsline_stringline_string_nanline_string_zlinear_ringmulti_line_stringmulti_line_string_zmulti_pointmulti_point_zmulti_polygonmulti_polygon_zpointpoint_mpoint_zpoint_zmpolygonpolygon_with_holepolygon_with_hole_z	polygon_zc                  j    t        j                  t        dz         j                         } | g dk(  sJ y )NN)r         r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   )shapelyget_num_pointsr	   tolistactuals    w/home/developers/rajanand/mypropertyqr-fmb-refixing-v2/venv/lib/python3.12/site-packages/shapely/tests/test_geometry.pytest_get_num_pointsr1   +   s/    ##I$78??AFTTTT    c                  j    t        j                  t        dz         j                         } | g dk(  sJ y )Nr(   )r   r   r   r      r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   )r+   get_num_interior_ringsr	   r-   r.   s    r0   test_get_num_interior_ringsr6   0   s/    ++I,?@GGIFTTTTr2   c                  j    t        j                  t        dz         j                         } | g dk(  sJ y )Nr(   )r4   r4   r4   r4   r4      r4   r8   r8   r   r4   r4   r4   r   r   r   r4   r4   r4   r4   r   )r+   get_num_geometriesr	   r-   r.   s    r0   test_get_num_geometriesr:   5   s/    ''	G(;<CCEFTTTTr2   geomc                 ~    t        j                  | g d      }t        j                  |      j                         sJ y N)r   r8   )r+   	get_point
is_missingallr;   r/   s     r0   test_get_point_non_linestringrC   :   s3     tZ0Ff%))+++r2   c                     t        j                  |       }t        j                  | d| ||dz    g      }t        |d   |d          t        j                  |dd       j                         sJ y Nr   r4   r8      )r+   r,   r?   r   r@   rA   r;   nr/   s      r0   test_get_pointrI   J   sj    t$Ata!Q!a%%9:FF1Ivay1fQqk*..000r2   c                 x    t        j                  |       }t        j                  |      j                         sJ y r(   )r+   get_exterior_ringr@   rA   rB   s     r0   "test_get_exterior_ring_non_polygonrL   R   s1     &&t,Ff%))+++r2   c                      t        j                  t        t        g      } t        j                  |       t         j
                  j                  k(  j                         sJ y r(   )r+   rK   r#   r$   get_type_idGeometryType
LINEARRINGrA   r.   s    r0   test_get_exterior_ringrQ   c   sF    &&1B'CDF'7+?+?+J+JJOOQQQr2   c                 ~    t        j                  | g d      }t        j                  |      j                         sJ y r=   )r+   get_interior_ringr@   rA   rB   s     r0   "test_get_interior_ring_non_polygonrT   h   s3     &&tZ8Ff%))+++r2   c                      t        j                  t        g d      } t        | d   | d          t        j                  | dd       j                         sJ y N)r   r>   r4   r   r4   r8   rF   )r+   rS   r$   r   r@   rA   r.   s    r0   test_get_interior_ringrX   y   sJ    &&'8.IFF1Ivay1fQqk*..000r2   c                     t        j                  | g d      }t        |d   |d          t        j                  |dd       j	                         sJ y rV   )r+   get_geometryr   r@   rA   rB   s     r0   test_get_geometry_simpler[      sI    !!$7FF1Ivay1fQqk*..000r2   c                     t        j                  |       }t        j                  | d| ||dz    g      }t        |d   |d          t        j                  |dd       j                         sJ y rE   )r+   r9   rZ   r   r@   rA   rG   s      r0   test_get_geometry_collectionr]      sl     	""4(A!!$QBQU8(<=FF1Ivay1fQqk*..000r2   c                  j    t        j                  t        dz         j                         } | g dk(  sJ y )Nr(   )r   r4   r8   r)   r)   rF   r*         r`   r   r4   r)   rF   r*   r_   rF   r*   r_   r`   r>   )r+   rN   r	   r-   r.   s    r0   test_get_type_idra      s/      W!45<<>FUUUUr2   c                  j    t        j                  t        dz         j                         } | g dk(  sJ y )Nr(   )r   r4   r4   r8   r8   r   r4   r8   r4   r>   r   r4   r8   r   r4   r8   r   r4   r8   r4   r>   )r+   get_dimensionsr	   r-   r.   s    r0   test_get_dimensionsrd      s/    ##I$78??AFVVVVr2   c                  r    t        j                  t        t        d g      j	                         } | g dk(  sJ y )N)r8   r)   r>   )r+   get_coordinate_dimensionr   r!   r-   r.   s    r0   test_get_coordinate_dimensionrg      s0    --ugt.DELLNFZr2   c                  j    t        j                  t        dz         j                         } | g dk(  sJ y )Nr(   )r4   r)   r*   r*   
   r8   r8   ri   r)   r   r   r   r   r   r   r   r   r   r   r   r   )r+   get_num_coordinatesr	   r-   r.   s    r0   test_get_num_coordinatesrk      s/    ((W)<=DDFFVVVVr2   c                  j    t        j                  t        dz         j                         } | g dk(  sJ y)z;All geometry types have no SRID by default; None returns -1r(   )r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r>   N)r+   get_sridr	   r-   r.   s    r0   test_get_sridrn      s/    i'1299;FUUUUr2   c                      t        j                  t        d      } t        j                  t              dk(  sJ t        j                  |       dk(  sJ y )Ni  r   )r+   set_sridr   rm   r.   s    r0   test_get_set_sridrq      sF    eT*FE"a'''F#t+++r2   func)r)      r   zGEOS < 3.12)reason)marksc                 >    t        j                   | |            sJ y r(   )npisnan)rr   r;   s     r0   test_get_xyz_no_pointry      s    & 88DJr2   c                  l    t        j                  t        t        g      j	                         ddgk(  sJ y )Ng       @)r+   get_xr   r!   r-    r2   r0   
test_get_xr}      +    ==%)*113SzAAAr2   c                  l    t        j                  t        t        g      j	                         ddgk(  sJ y )Ng      @)r+   get_yr   r!   r-   r|   r2   r0   
test_get_yr      r~   r2   c                  `    t        j                  t        g      j                         dgk(  sJ y )Ng      @)r+   get_zr!   r-   r|   r2   r0   
test_get_zr      s&    =='#**,555r2   c                  `    t        j                  t        j                  t                    sJ y r(   )rw   rx   r+   r   r   r|   r2   r0   test_get_z_2dr      s    88GMM%()))r2   z,M coordinates not supported with GEOS < 3.12c                  $   t        j                  t        t        g      j	                         ddgk(  sJ t        j                  t        j                  t                    sJ t        j                  t        j                  t                    sJ y )Ng      @)	r+   get_mr    r"   r-   rw   rx   r   r!   r|   r2   r0   
test_get_mr      sc    
 =='8,-4463*DDD88GMM%()))88GMM'*+++r2   c                     t        j                  t        |             }t        |       r/t	        j
                  t              5  t        ||        d d d        y t        ||        y # 1 sw Y   y xY wr(   )r+   from_wktstrr   pytestraisesAssertionErrorr   rB   s     r0   test_new_from_wktr      sZ    c$i(F06]]>* 	2#FD1	2 	2 	 -		2 	2s   A&&A/c                      t        dd      } t        j                  t              5  | xj                  dz  c_        d d d        y # 1 sw Y   y xY w)Nr8   r4   )r   r   r   AttributeError_geom)r   s    r0   test_adapt_ptr_raisesr      s<    !QKE	~	& q  s   AAc                 V    | t        j                  | d       h}t        |      dk(  sJ y )Nc                     | S r(   r|   )xs    r0   <lambda>z!test_set_unique.<locals>.<lambda>   s     r2   r4   )r+   	transformlen)r;   as     r0   test_set_uniquer      s)    	w  {34Aq6Q;;r2   c                  "   t               5  t        t        j                  t        j
                  t        j
                  gt        j
                  t        j
                  gggdz              } d d d        t               dk(  sJ y # 1 sw Y   xY wNri   r4   )r   setr+   linestringsrw   nanr   r   s    r0   test_set_nanr      so     
	 R##rvvrvv&68H%I$JR$OPQRq6Q;;R Rs   A!BBc                  J    t        t        gdz        } t        |       dk(  sJ y r   )r   r   r   r   s    r0   test_set_nan_same_objectsr      s&     	_"#Aq6Q;;r2   c                     t        j                  |       }|dk(  rg }nt        j                  | t        |            }t        j                  |       }t        |      |k(  sJ t        ||       y Nr   )r+   r9   rZ   range	get_partsr   r   )r;   expected_num_partsexpected_partspartss       r0   test_get_partsr     sg    & !33D9Q --dE:L4MNd#Eu:++++E>2r2   c                  n   t        j                  d t        t        t        t
        g      } g }| D ]J  }t        t        j                  |            D ]'  }|j                  t        j                  ||             ) L t        j                  |       }t        |      t        |      k(  sJ t        ||       y r(   )rw   arrayr   r   r   r   r   r+   r9   appendrZ   r   r   r   )r;   r   gir   s        r0   test_get_parts_arrayr   %  s     88T,k5-PQDN >w11!45 	>A!!'"6"6q!"<=	>> d#Eu:^,,,,E>2r2   c                  R   t        j                  t        t        t        g      } t        j
                  |       }t        j                  | t        |            }t        j                  |       }t        |      |k(  sJ t        ||       g }t        j                  |      D ]J  }t        t        j
                  |            D ]'  }|j                  t        j                  ||             ) L t        j                  |      }t        |      t        |      k(  sJ t        ||       y)zOn the first pass, the individual Multi* geometry objects are returned
    from the collection.  On the second pass, the individual singular geometry
    objects within those are returned.
    N)r+   geometrycollectionsr   r   r   r9   rZ   r   r   r   r   rw   asarrayr   )r;   r   r   r   expected_subpartsr   r   subpartss           r0   (test_get_parts_geometry_collection_multir   3  s   
 &&5F'VWD 33D9))$6H0IJNd#Eu:++++E>2ZZ' Aw11!45 	AA$$W%9%9!Q%?@	AA   'Hx=C 12222H&78r2   c                     t        j                  t        t        t        g      } g }g }t        |       D ]^  \  }}t        t        j                  |            D ]8  }|j                  t        j                  ||             |j                  |       : ` t        j                  | d      \  }}t        |      t        |      k(  sJ t        ||       t        j                  ||      sJ y NT)return_index)rw   r   r   r   r   	enumerater   r+   r9   r   rZ   r   r   r   array_equalr;   r   expected_indexr   r   jr   indexs           r0   test_get_parts_return_indexr   J  s    88[%78DNN$ %1w11!45 	%A!!'"6"6q!"<=!!!$	%%
 $$T=LE5u:^,,,,E>2>>%000r2   c                     t        j                  t        d      5  t        j                  |        ddd       y# 1 sw Y   yxY wzOnly 1D inputs are supportedzArray should be one dimensionalmatchNr   r   
ValueErrorr+   r   r;   s    r0   !test_get_parts_invalid_dimensionsr   Y  s6     
z)J	K  $     	   ;Ac                 B    t        | t        j                  |              y)z?Non-multipart geometries should be returned identical to inputsN)r   r+   r   r   s    r0   test_get_parts_non_multir   c  s     D'"3"3D"9:r2   c                 J    t        t        j                  |             dk(  sJ y r   )r   r+   r   r   s    r0   test_get_parts_Noner   i  s     w  &'1,,,r2   foo*   c                     t        j                  t        d      5  t        j                  |        d d d        y # 1 sw Y   y xY w)Nz*One of the arguments is of incorrect type.r   )r   r   	TypeErrorr+   r   r   s    r0   test_get_parts_invalid_geometryr   n  s4    	y(T	U  $     r   c                      t        j                  d      5  t        j                  t        d       d d d        y # 1 sw Y   y xY w)Nz@positional argument `return_index` for `get_parts` is deprecatedr   F)r   deprecated_callr+   r   r   r|   r2   r0   #test_get_parts_deprecate_positionalr   t  s:    			P
 . 	+u-. . .	   ;Ac                 ^   t        j                  |       t         j                  j                  k7  st        j                  |       r&t        j
                  |       }t        |      dk(  sJ y t        j
                  |       }t        |      dk(  sJ |d   t        j                  |       k(  sJ y Nr   r4   )r+   rN   rO   POLYGONis_empty	get_ringsr   rK   )r;   ringss     r0   test_get_ringsr   {  s    $ 	D!W%9%9%A%AAgFVFVG !!$'5zQ!!$'5zQQx744T::::r2   c                      t        j                  t              } t        |       dk(  sJ | d   t        j                  t              k(  sJ | d   t        j
                  t        d      k(  sJ y )Nr8   r   r4   )r+   r   r$   r   rK   rS   )r   s    r0   test_get_rings_holesr     sa    /0Eu:??8w001BCCCC8w001BAFFFFr2   c                  v   t        j                  t        d t        t        g      } g }g }t        |       D ]  \  }}|t        j                  |      r|j                  t        j                  |             |j                  |       t        t        j                  |            D ]8  }|j                  t        j                  ||             |j                  |       :  t        j                  | d      \  }}t        |      t        |      k(  sJ t        ||       t        j                   ||      sJ y r   )rw   r   r#   r   r$   r   r+   r   r   rK   r   r5   rS   r   r   r   r   r   s           r0   test_get_rings_return_indexr     s   88WdM3DEFDNN$ %19((+g77:;a w55a89 	%A!!'";";Aq"AB!!!$	%% $$T=LE5u:^,,,,E>2>>%000r2   c                     t        j                  t        d      5  t        j                  |        ddd       y# 1 sw Y   yxY wr   r   r   s    r0   !test_get_rings_invalid_dimensionsr     s6     
z)J	K  $     r   c                      t        j                  d      5  t        j                  t        d       d d d        y # 1 sw Y   y xY w)Nz@positional argument `return_index` for `get_rings` is deprecatedr   F)r   r   r+   r   r#   r|   r2   r0   #test_get_rings_deprecate_positionalr     s:    			P
 * 	'5)* * *r   c                  F   t         t        t        t        t        fz   } t        j                  |       j                         }|dgt        |       z  k(  sJ t        j                  | d      }t        j                  |      j                         }|dgt        |       z  k(  sJ y r   )
r	   r!   r   r   r   r+   get_precisionr-   r   set_precision)
geometriesr/   geometrys      r0   test_get_precisionr     s    g{4E}UUJ"":.557FaS3z?****$$Z3H""8,335FaS3z?****r2   c                      t        j                  t        j                  t        j                  d g                  sJ y r(   )rw   rA   rx   r+   r   r|   r2   r0   test_get_precision_noner     s*    66"((700$89:::r2   mode)valid_output	pointwisekeep_collapsedc                    t        dd      }t        j                  |      dk(  sJ t        dt              5  t        j
                  |d|       }d d d        t        j                        dk(  sJ t        ||       t        dt              5  t        j
                  |d|       }d d d        t        j                  |      dk(  sJ t        |t        dd             t        |t        dd             y # 1 sw Y   xY w# 1 sw Y   \xY w)N?r   r)   ri   r   r   r4   )r   r+   r   r   UserWarningr   r   )r   initial_geometryr   s      r0   test_set_precisionr     s    S#  !12a777	[	1 I(()914HI   *a///H&67	[	1 I(()914HI  *a///HeAqk2,eCo>I II Is   C6D6C?Dc                      t        j                  t        g d      d      } t        | t        g d             t        j                  | d      } t        | t        g d             y )N)r   r   r   r   r4   r4   r4   r   r4   )r   r   r   )r+   r   r   r   )r   s    r0   test_set_precision_drop_coordsr     sO    $$Z0P%QSTUHHj1Q&RS $$Xq1HHj1I&JKr2   c                     t        dt              5  t        j                  t	        ddd      d|       }d d d        t        j
                        dk(  sJ t        |t	        ddd             y # 1 sw Y   ;xY w)Nr   r   r4   r   )r   r   r+   r   r   r   r   )r   r   s     r0   test_set_precision_zr    sp    	[	1 M((sC)=qtLM   *a///HeAq#&67	M Ms   $A//A8c                     t        j                         5  t        j                  d       t        j                  t
        d|       }t        |t
               d d d        y # 1 sw Y   y xY w)Nignorer4   r   )warningscatch_warningssimplefilterr+   r   r   r   )r   r/   s     r0   test_set_precision_nanr    sO    		 	 	" 9h'&&E89 9 9s   AA  A)c                  4    t        j                  d d      J y r   )r+   r   r|   r2   r0   test_set_precision_noner
    s      q)111r2   c                  d    t        j                  t        dd      t        j                        J y )Nr   )r+   r   r   rw   r   r|   r2   r0    test_set_precision_grid_size_nanr    s%      sC"&&9AAAr2   zgeometry,mode,expected)r8   r8   rF   r8   )g	@r)   rF   rF   r8   rF   )gffffff@r)   r  r   )r  r  r)   r)   r  )r  r  r  r  r   )r  r  r  r  r  r  r  r   z%pointwise does not work pre-GEOS 3.10r   r   皙?r  )r   )r  r   r  )r   r  r   zSegfaults on GEOS 3.10.0)r   r   r   r   r   )r   r   r   z7this collapsed into an invalid linearring pre-GEOS 3.10c                     t        j                  | d|      }t        t        j                  |      |t         j                  dk(         y)zILines and polygons collapse to empty geometries if vertices are too closer4   r   )r)   	   r   )	normalizeN)r+   r   r   force_2dgeos_version)r   r   expectedr/   s       r0   test_set_precision_collapser    s@    B ""8QT:F &&)3	r2   c                     t        j                  t        j                  dddd            } t        j                  t        j                  dddd            }t        j                  t        j                  | |            dk(  sJ t        j
                  | d      } t        j
                  |d      }t        j                  | |      }t        j                  |      dk(  sJ t        |t        ddg             y	)
zHOperations should use the most precise precision grid size of the inputsr   r   g      ?g      ?g      ?r4   r   )r4   r   N)r+   r  boxr   intersectionr   r   r   )box1box2outs      r0   test_set_precision_intersectionr!  o  s     W[[AsC89DW[[q$=>D  !5!5dD!ABaGGG   s+D  q)D


tT
*C  %,,,CVV,<!=>r2   preserve_topologyFTc                     t        j                  t              5  t        j                  t        ddg      d|       }d d d        t        t        j                        t                      y # 1 sw Y   1xY w)Nr   r        ?)r"  r   warnsr   r+   r   r   r   r  )r"  r/   s     r0   set_precision_preserve_topologyr'    sa     
k	" 
&&
+,/

 G,,V4jlC
 
   $A..A7zGEOS >= 3.10c                      t        j                  t              5  t        j                  t        ddg      dd      } d d d        t        t        j                         t                      y # 1 sw Y   1xY w)Nr   r  r$  r   r   r%  r.   s    r0   set_precision_pointwise_pre_310r*    sa     
k	" 
&&
+,

 G,,V4jlC
 
r(  flagsr4   rF   c                     t        j                  t        t        f      5  t        j
                  j                  t        d|        d d d        y # 1 sw Y   y xY w)Nr$  )r   r   r   r   r+   libr   r   )r+  s    r0   set_precision_illegal_flagsr.    s@     

I.	/ ;!!+sE:; ; ;s   &AAc                      t        j                  t        j                  ddg            } t        j                  |       j                         sJ y)z(Compatibility with empty_like, see GH373N)rw   
empty_liker   r+   r@   rA   )r   s    r0   
test_emptyr1    s:    
bhhd|,-Aa $$&&&r2   zgeom,expectedc                 z    t        j                  |       }t        j                  |      dk(  sJ t        ||       y )Nr8   )r+   r  rf   r   r;   r  r/   s      r0   test_force_2dr4    s7    4 d#F++F3q888FH-r2   c                 ~    t        j                  | d      }t        j                  |      dk(  sJ t        ||       y )NrF   )zr)   )r+   force_3drf   r   r3  s      r0   test_force_3dr8    s9    4 da(F++F3q888FH-r2   )vr  numpyrw   r   r+   r   r   r   r   r   shapely.testingr   shapely.tests.commonr	   r
   empty_geometry_collectionr   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r    r!   r"   r#   r$   r%   r&   r1   r6   r:   markparametrizerC   rI   rL   rQ   rT   rX   r[   r]   ra   rd   rg   rk   rn   rq   r{   r   r   paramr   skipifr  r   rN   rO   POINTry   r}   r   r   r   r   r   r   r   r   r   r0  r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r  r  r
  r  r  r!  r'  r*  r.  r1  r   geometry_collection_2r4  r8  r|   r2   r0   <module>rC     s
       H H 3       DU
U
U
 

,
,
 +{!;<1 =1 
,,
R
 
,,
1 %k7!KL1 M1 
[+]<OP11V
W
 
W
V, 
MM++$$$$z1- % 	
	
 
BHHY+++I6':N:N:T:TTU 	$ BB6* :%9  ,	, +. ,. + ,
 
!$hbhhv&'$	3%$	339.1 
fX+;@Q2R1ST 	  %g!>?; @;
 $!34- 5- %%"!56  7 
. 
!"	;#"	;G1& D6(gYK!89  : *+; !PQ? R?$L !PQ8 R8 !PQ9 R92B  PQ<=<=		
 	PQLM++$$$$z1> % 		
 PQ<=<=		
 
VZ(	)>:<H
+,'(++$$$$z1> % 		
 
+,'(	

 	GHL++$$$$
2;U % 		
 	GH?@++$$$$z1> % 		
 	GH/0++$$$$z1P % 		
 DEI	

 	DE<=++$$$$z1> % 		
 DEI	
m[^~^~?  ,udm<D =D G((J6~ND OD 8288QF#3Q">?; @;' 433UK4HI  		%	k"	$	k"	$	-.	/0	'	G	-.	/0	k"	$	-.	/0	&	-(	 56	 56)2.32. 		'	m$	&	m$	&	/0	12	)	I	/0	12	m$	&	/0	12	(	/*	 56	 56)2.32.r2   