ÿØÿàJFIFÿþ ÿÛC       ÿÛC ÿÀÿÄÿÄ"#QrÿÄÿÄ&1!A"2qQaáÿÚ ?Øy,æ/3JæÝ¹È߲؋5êXw²±ÉyˆR”¾I0ó2—PI¾IÌÚiMö¯–þrìN&"KgX:Šíµ•nTJnLK„…@!‰-ý ùúmë;ºgµŒ&ó±hw’¯Õ@”Ü— 9ñ-ë.²1<yà‚¹ïQÐU„ہ?.’¦èûbß±©Ö«Âw*VŒ) `$‰bØÔŸ’ëXÖ-ËTÜíGÚ3ð«g Ÿ§¯—Jx„–’U/ÂÅv_s(Hÿ@TñJÑãõçn­‚!ÈgfbÓc­:él[ðQe 9ÀPLbÃãCµm[5¿ç'ªjglå‡Ûí_§Úõl-;"PkÞÞÁQâ¼_Ñ^¢SŸx?"¸¦ùY騐ÒOÈ q’`~~ÚtËU¹CڒêV  I1Áß_ÿÙ oQ+Pc@sdZddlmZddlmZmZddlmZdefdYZdeeefdYZ d e fd YZ d e fd YZ d S(s  Gradients consist of continuously smooth color transitions along a vector from one color to another, possibly followed by additional transitions along the same vector to other colors. SVG provides for two types of gradients: linear gradients and radial gradients. i(t BaseElement(t TransformtXLink(t is_stringt _GradientStopcBs eZdZddddZRS(tstopcKsett|j||dk r/||d|j|qT|j|jndS(N(RRRR Rtset_hreftget_iri(R tinheritR ((sC/opt/alt/python27/lib/python2.7/site-packages/svgwrite/gradients.pyR!s   tnonecCsd|j|fS(s( Returns the of the gradient. s%s %s(t get_funciri(R tdefault((sC/opt/alt/python27/lib/python2.7/site-packages/svgwrite/gradients.pytget_paint_server)scCs#|jt|||d||S(s: Adds a stop-color to the gradient. :param offset: is either a (usually ranging from 0 to 1) or a `` (usually ranging from 0% to 100%) which indicates where the gradient stop is placed. Represents a location along the gradient vector. For radial gradients, it represents a percentage distance from (fx,fy) to the edge of the outermost/largest circle. :param color: indicates what color to use at that gradient stop :param opacity: defines the opacity of a given gradient stop tfactory(taddR(R RR R ((sC/opt/alt/python27/lib/python2.7/site-packages/svgwrite/gradients.pytadd_stop_color-s gg?c Cst|d}t|d}||tt|d}|}x4|D],}|jt|d||||7}qKW|S(s Add stop-colors from colors with linear offset distributuion from sweep[0] to sweep[1]. i.e. colors=['white', 'red', 'blue'] 'white': offset = 0.0 'red': offset = 0.5 'blue': offset = 1.0 iii(tfloattlenRtround( R tcolorstsweepR tstarttendtdeltaRR ((sC/opt/alt/python27/lib/python2.7/site-packages/svgwrite/gradients.pyt add_colors;s  cCs/t|dr|jntt|jS(Nthref(thasattrt update_idRRtget_xml(R ((sC/opt/alt/python27/lib/python2.7/site-packages/svgwrite/gradients.pyR)Ms N(gg?( RRt transformnameR RRRR%R)(((sC/opt/alt/python27/lib/python2.7/site-packages/svgwrite/gradients.pyRs   tLinearGradientcBs&eZdZdZddddZRS(sE Linear gradients are defined by a SVG element. tlinearGradientcKsvtt|jd|||dk rG|d|d<|d|d element. tradialGradientcKstt|jd|||d k rG|d|d<|d|d s 3