+
    Œvj§{  ã                   óþ  € R t Rt^ RIHt ^ RI5 ^ RI5 ^ RIHtHt ^ RI	H
t
 ^ RIHt ^ RI	Ht  ! R R	]4      t ! R
 R]4      t ! R R]4      t ! R R]4      t ! R R]4      t ! R R]4      t ! R R]4      t ! R R]4      t ! R R]4      t ! R R]4      t ! R R]4      t ! R R]4      t ! R  R!]4      t ! R" R#]4      t ! R$ R%]4      t ! R& R']4      t ! R( R)]4      tR* t] R+8X  d
   ]! 4        R,# R,# )-z3.3.0aô  This file is a collection of widgets to produce some common signs and symbols.

Widgets include:

- ETriangle (an equilateral triangle),
- RTriangle (a right angled triangle),
- Octagon,
- Crossbox,
- Tickbox,
- SmileyFace,
- StopSign,
- NoEntry,
- NotAllowed (the red roundel from 'no smoking' signs),
- NoSmoking,
- DangerSign (a black exclamation point in a yellow triangle),
- YesNo (returns a tickbox or a crossbox depending on a testvalue),
- FloppyDisk,
- ArrowOne, and
- ArrowTwo
- CrossHair
)Úcolors)Ú*)ÚisStrÚ	asUnicode)Úshapes)ÚWidget)Ú	renderPDFc                   óÄ   a € ] tR t^(t o Rt^t]! ]! ]RR7      ]! ]RR7      ]! ]RR7      ]! ]RR7      ]! ]4      ]! ]	4      ]! ]	4      ]! ]4      R7      t
R tR tR	tV tR
# )Ú_SymbolzWAbstract base widget
possible attributes:
'x', 'y', 'size', 'fillColor', 'strokeColor'
zsymbol x coordinate©Údesczsymbol y coordinatezsymbol x coordinate adjustment)ÚxÚyÚdxÚdyÚsizeÚ	fillColorÚstrokeColorÚstrokeWidthc                óÖ   € V P                   P                  R 8w  g   Q R4       h^ ;V n        ;V n        ;V n        V n        ^dV n        \        P                  V n	        RV n
        RV n        R# )r
   z#Abstract class _Symbol instantiatedNçš™™™™™¹?)Ú	__class__Ú__name__r   r   r   r   r   r   Úredr   r   r   ©Úselfs   &Ún/var/www/html/daimler-pipeline/venv/lib/python3.14/site-packages/reportlab/graphics/widgets/signsandsymbols.pyÚ__init__Ú_Symbol.__init__8   s^   € Ø�~‰~×&Ñ&¨	Ô1ÐXÐ3XÓXÐ1Ø./Ð/ˆŒÐ/�”Ð/˜$œ' D¤GØˆŒ	ÜŸ™ˆŒØˆÔØˆÖó    c                óÈ  € \         P                  ! ^È^d4      p\        V P                  4      pV P	                  4       p^2Vn        ^ Vn        VP                  4        VP                  V4       VP                  \         P                  ! VP
                  V^,          ,           VP                  ^,
          VP                  P                  \        P                  R^
R7      4       V# )éÈ   Úmiddle©r   Ú
textAnchorÚfontSize)r   ÚDrawingÚfloatr   r   r   r   ÚdrawÚaddÚStringr   r   Úblack)r   ÚDÚsÚobs   &   r   ÚdemoÚ_Symbol.demo@   s�   € Ü�NŠN˜3 Ó$ˆÜ�$—)‘)ÓˆØ�^‰^ÓˆØˆŒØˆŒØ
�‰Œ	Ø	�‰ˆbŒ	Ø	�‰Œf�mŠm˜BŸD™D ! A¥#�J¨¯©¨R­ØŸL™L×1Ñ1¼V¿\¹\ÐV^Ø%'ô)ô 	*ð ˆr   )r   r   r   r   r   r   r   r   N)r   Ú
__module__Ú__qualname__Ú__firstlineno__Ú__doc__Ú_nodocÚAttrMapÚAttrMapValueÚisNumberÚisColorOrNoneÚ_attrMapr   r/   Ú__static_attributes__Ú__classdictcell__©Ú__classdict__s   @r   r
   r
   (   sv   ø‡ € ñð €FÙÙ˜Ð'<Ô=Ù˜Ð'<Ô=Ù˜(Ð(HÔIÙ˜(Ð(HÔIÙ˜HÓ%Ù  Ó/Ù" =Ó1Ù" 8Ó,ô	
€Hò÷ð r   r
   c                   ó0   a € ] tR t^Mt o RtR tR tRtV tR# )Ú	ETriangleú#This draws an equilateral triangle.c                ó0   € \         P                  V 4       R # ©N)r
   r   r   s   &r   r   ÚETriangle.__init__P   s   € Ü×Ñ˜Ör   c           	     ó´  € \        V P                  4      p\        P                  ! 4       pVR ,          p\        P                  ! V P
                  V P                  V P
                  V,           V P                  V P
                  V^,          ,           V P                  V,           .V P                  V P                  VR,          R7      pVP                  V4       V# ©ç      À?g      I@©Úpointsr   r   r   ©
r'   r   r   ÚGroupÚPolygonr   r   r   r   r)   ©r   r-   ÚgÚaeÚtriangles   &    r   r(   ÚETriangle.drawS   s›   € ä�$—)‘)ÓˆÜ�LŠL‹Nˆð ˆu�WˆÜ—>’>Ø�F‰F�D—F‘FØ�F‰F�1�H�d—f‘fØ�F‰F�A�a•C�L˜Ÿ™ �ð,#ð  Ÿ>™>Ø!×-Ñ-Ø˜S�5ô"ˆð 	
�‰ˆhŒØˆr   © N©	r   r1   r2   r3   r4   r   r(   r;   r<   r=   s   @r   r@   r@   M   s   ø‡ € Ù-ò÷ð r   r@   c                   ó0   a € ] tR t^dt o RtR tR tRtV tR# )Ú	RTrianglezhThis draws a right-angled triangle.

possible attributes:
'x', 'y', 'size', 'fillColor', 'strokeColor'

c                óh   € ^ V n         ^ V n        ^dV n        \        P                  V n        RV n        R# ©é    N)r   r   r   r   Úgreenr   r   r   s   &r   r   ÚRTriangle.__init__l   s*   € ØˆŒØˆŒØˆŒ	ÜŸ™ˆŒØˆÖr   c           	     ó˜  € \        V P                  4      p\        P                  ! 4       pVR ,          p\        P                  ! V P
                  V P                  V P
                  V,           V P                  V P
                  V P                  V,           .V P                  V P                  VR,          R7      pVP                  V4       V# rF   rJ   rM   s   &    r   r(   ÚRTriangle.draws   s“   € ä�$—)‘)ÓˆÜ�LŠL‹Nˆð ˆu�WˆÜ—>’>Ø�F‰F�D—F‘FØ�F‰F�1�H�d—f‘fØ�F‰F�4—6‘6˜!•8ð,ð  Ÿ>™>Ø!×-Ñ-Ø˜S�5ô"ˆð 	
�‰ˆhŒØˆr   ©r   r   r   r   r   NrS   r=   s   @r   rU   rU   d   s   ø‡ € ñò ÷ð r   rU   c                   ó0   a € ] tR t^„t o RtR tR tRtV tR# )ÚOctagonzbThis widget draws an Octagon.

possible attributes:
'x', 'y', 'size', 'fillColor', 'strokeColor'

c                óh   € ^ V n         ^ V n        ^dV n        \        P                  V n        RV n        R# rW   )r   r   r   r   Úyellowr   r   r   s   &r   r   ÚOctagon.__init__Œ   s*   € ØˆŒØˆŒØˆŒ	ÜŸ™ˆŒØˆÖr   c                ó*  € \        V P                  4      p\        P                  ! 4       pV^,          p\        P                  ! V P
                  V,           V P                  V P
                  V P                  V,           V P
                  V P                  V^,          ,           V P
                  V,           V P                  V,           V P
                  V^,          ,           V P                  V,           V P
                  V,           V P                  V^,          ,           V P
                  V,           V P                  V,           V P
                  V^,          ,           V P                  .V P                  V P                  ^
R7      pVP                  V4       V# )é   ©rI   r   r   r   )
r'   r   r   rK   rL   r   r   r   r   r)   )r   r-   rN   ÚathirdÚoctagons   &    r   r(   ÚOctagon.draw“   s  € ä�$—)‘)ÓˆÜ�LŠL‹Nˆð ��sˆä—.’.¨¯©°­¸¿¹Ø.2¯f©f°d·f±f¸VµmØ.2¯f©f°d·f±f¸fÀQ½hÕ6GØ.2¯f©f°V­m¸T¿V¹VÀA½XØ.2¯f©f°f¸QµhÕ.?ÀÇÁÈÅØ.2¯f©f°Q­h¸¿¹ÀÀqÅÕ8IØ.2¯f©f°Q­h¸¿¹¸v½Ø.2¯f©f°f¸QµhÕ.?ÀÇÁð)Ið 59×4DÑ4DØ26·.±.Ø24ô
6ˆð 	
�‰ˆgŒØˆr   r]   NrS   r=   s   @r   r_   r_   „   s   ø‡ € ñò ÷ð r   r_   c                   ó^   a € ] tR t^©t o Rt]! ]]! ]4      ]! ]	4      R7      t
R tR tRtV tR# )ÚCrossboxz‘This draws a black box with a red cross in it - a 'checkbox'.

possible attributes:
'x', 'y', 'size', 'crossColor', 'strokeColor', 'crosswidth'

)ÚBASEÚ
crossColorÚ
crosswidthc                ó¼   € ^ V n         ^ V n        ^dV n        \        P                  V n        \        P                  V n        \        P                  V n	        ^
V n
        R# rW   )r   r   r   r   Úwhiter   r   rl   r+   r   rm   r   s   &r   r   ÚCrossbox.__init__¶   s@   € ØˆŒØˆŒØˆŒ	ÜŸ™ˆŒÜ Ÿ*™*ˆŒÜ!Ÿ<™<ˆÔØˆŽr   c           
     óî  € \        V P                  4      p\        P                  ! 4       p\        P                  ! V P
                  ^,           V P                  ^,           V^,
          V^,
          V P                  V P                  ^R7      pVP                  V4       \        P                  ! V P
                  VR,          ,           V P                  VR,          ,           V P
                  VR,          ,           V P                  VR,          ,           V P                  V P                  V P                  R7      pVP                  V4       \        P                  ! V P
                  VR,          ,           V P                  VR,          ,           V P
                  VR,          ,           V P                  VR,          ,           V P                  V P                  V P                  R7      pVP                  V4       V# )é   ©r   r   r   ç333333Ã?ç333333ë?)r'   r   r   rK   ÚRectr   r   r   r   r)   ÚLinerl   rm   )r   r-   rN   ÚboxÚ
crossLine1Ú
crossLine2s   &     r   r(   ÚCrossbox.draw¿   sP  € ä�$—)‘)ÓˆÜ�LŠL‹Nˆô �kŠk˜$Ÿ&™& �( D§F¡F¨1¥H¨a°­c°1°Qµ3ØŸ>™>Ø!×-Ñ-Øôˆð 	
�‰ˆcŒ
ä—[’[ §¡¨¨4­¥°$·&±&¸!¸D½&µ/À4Ç6Á6È1ÈTÍ6Å?ÐTX×TZÑTZÐ\]Ð^bÕ\bÕTcØŸ?™?Ø!Ÿ_™_Ø!Ÿ_™_ô.ˆ
ð 	
�‰ˆjÔä—[’[ §¡¨¨4­¥°$·&±&¸!¸D½&µ/À4Ç6Á6È1ÈTÍ6Å?ÐTX×TZÑTZÐ\]Ð^bÕ\bÕTcØŸ?™?Ø!Ÿ_™_Ø!Ÿ_™_ô.ˆ
ð 	
�‰ˆjÔàˆr   )rl   rm   r   r   r   r   r   N©r   r1   r2   r3   r4   r6   r
   r7   r9   r8   r:   r   r(   r;   r<   r=   s   @r   rj   rj   ©   s7   ø‡ € ññ ˜GÙ! -Ó0Ù! (Ó+ô
€Hò
÷ð r   rj   c                   ó^   a € ] tR t^Út o Rt]! ]]! ]4      ]! ]	4      R7      t
R tR tRtV tR# )ÚTickboxz”This draws a black box with a red tick in it - another 'checkbox'.

possible attributes:
'x', 'y', 'size', 'tickColor', 'strokeColor', 'tickwidth'

)rk   Ú	tickColorÚ	tickwidthc                ó¼   € ^ V n         ^ V n        ^dV n        \        P                  V n        \        P                  V n        \        P                  V n	        ^
V n
        R# rW   )r   r   r   r   r   r   r+   r   ro   r   r€   r   s   &r   r   ÚTickbox.__init__ç   s@   € ØˆŒØˆŒØˆŒ	ÜŸ™ˆŒÜ!Ÿ<™<ˆÔÜŸ™ˆŒØˆŽr   c                ó`  € \        V P                  4      p\        P                  ! 4       p\        P                  ! V P
                  ^,           V P                  ^,           V^,
          V^,
          V P                  V P                  ^R7      pVP                  V4       \        P                  ! V P
                  VR,          ,           V P                  VR,          ,           V P
                  VR,          ,           V P                  VR,          ,           V P
                  VR,          ,           V P                  VR,          ,           V P
                  VR,          ,           V P                  VR,          ,           .V P                  V P                  V P                  R7      pVP                  V4       V# )rr   rs   rt   çffffffÖ?ru   rH   )r'   r   r   rK   rv   r   r   r   r   r)   ÚPolyLiner   r€   )r   r-   rN   rx   ÚtickLines   &    r   r(   ÚTickbox.drawð   s+  € ä�$—)‘)ÓˆÜ�LŠL‹Nˆô �kŠk˜$Ÿ&™& �( D§F¡F¨1¥H¨a°­c°1°Qµ3ØŸ>™>Ø!×-Ñ-Øôˆð 	
�‰ˆcŒ
ä—?’?¨T¯V©V°Q°tµV­_¸d¿f¹fÀaÈÅf½oÈtÏvÉvÐWXÐY]ÕW]ÍÐ`d×`fÑ`fÐhiÐjnÕhnÕ`oØ-1¯V©V°Q°tµV­_¸d¿f¹fÀaÈÅf½oÈtÏvÉvÐWXÐY]ÕW]ÍÐ`d×`fÑ`fÐhiÐjnÕhnÕ`oð-qàŸ>™>Ø!Ÿ^™^Ø!Ÿ^™^ô	-ˆð
 	
�‰ˆhŒàˆr   )r   r   r   r   r€   r   r   Nr|   r=   s   @r   r~   r~   Ú   s7   ø‡ € ññ ˜GÙ  Ó/Ù  Ó*ô
€Hò
÷ð r   r~   c                   ó0   a € ] tR tRt o RtR tR tRtV tR# )Ú
SmileyFacei  zWThis draws a classic smiley face.

possible attributes:
'x', 'y', 'size', 'fillColor'

c                ó®   € \         P                  V 4       ^ V n        ^ V n        ^dV n        \
        P                  V n        \
        P                  V n	        R# rW   )
r
   r   r   r   r   r   ra   r   r+   r   r   s   &r   r   ÚSmileyFace.__init__  s<   € Ü×Ñ˜ÔØˆŒØˆŒØˆŒ	ÜŸ™ˆŒÜ!Ÿ<™<ˆÖr   c                ód  € \        V P                  4      p\        P                  ! 4       pVP	                  \        P
                  ! V P                  V^,          ,           V P                  V^,          ,           V^,          V P                  V P                  \        VR,          V P                  4      R7      4       R Fª  pVP	                  \        P                  ! V P                  V^,          V,          ,           V P                  V^,          ^,          ,           V^,          V^
,          V P                  V P                  \        VR,          V P                  4      R7      4       K¬  	  V P                  V^,          ,           pV P                  V^,          ,           pV^,          pTpTp^Èp	Rp
^p. pVP                  p^ RIHpHpHp VR,          pVV,          pV	V,          pV
V,          pVV8  d   V^V,          ,           pK  TpVV8  dF   WO! V4      V,          ,           pW^! V4      V,          ,           pV! V4       V! V4       VV,           pKL  \        P$                  ! VV P                  V P                  \        VR,          V P                  4      R7      pVP	                  V4       V# )é   g      C@©ÚcxÚcyÚrr   r   r   rs   iT  ©ÚsinÚcosÚpiç     €f@)rr   r�   )r'   r   r   rK   r)   ÚCircler   r   r   r   Úmaxr   ÚEllipseÚappendÚmathr“   r”   r•   r…   )r   r-   rN   ÚiÚcenterxÚcenteryÚradiusÚyradiusÚxradiusÚstartangledegreesÚendangledegreesÚdegreedeltaÚ
pointslistÚar“   r”   r•   ÚdegreestoradiansÚradiansdeltaÚ
startangleÚendangleÚangler   r   Úsmiles   &                        r   r(   ÚSmileyFace.draw  s!  € ä�$—)‘)ÓˆÜ�LŠL‹Nˆð 	
�‰Œf�mŠm˜tŸv™v q¨¥s�|°·±¸¸!½µÀÀ!ÅØŸ.™.°d×6FÑ6FÜ  #¥ d×&6Ñ&6Ó7ô9ô 	:ó ˆAØ�E‰E”&—.’. §¡¨¨1­¨a­¥°·±¸¸!½¸QµwµÀÀ"ÅÀaÈÅdØ"×.Ñ.¸d×>NÑ>NÜ # A c¥E¨$×*:Ñ*:Ó ;ô=ö >ñ ð —‘˜˜!�•ˆØ—‘˜˜!�•ˆØ��sˆØˆØˆØÐØˆØˆØˆ
Ø×Ñˆß%Ñ%Ø˜e�8ÐØ"Ð#3Õ3ˆØ&Ð'7Õ7ˆ
Ø"Ð#3Õ3ˆØ�zÔ!Ø! ! B¥$�ŠhØˆØ�HŒnØ˜#˜e›* VÕ+Õ+ˆAØ˜#˜e›* WÕ,Õ,ˆAÙˆaŒD‘!�A”$Ø˜,Õ&ŠEô —’ 
Ø×+Ñ+Ø!×-Ñ-Ü   3¥ t×'7Ñ'7Ó8ô:ˆð 	
�‰ˆeŒàˆr   r]   NrS   r=   s   @r   r‰   r‰     s   ø‡ € ñò(÷0ð 0r   r‰   c                   óT   a € ] tR tRt o Rt]! ]]! ]RR7      R7      t	R t
R tRtV tR	# )
ÚStopSigniG  zJThis draws a (British) stop sign.

possible attributes:
'x', 'y', 'size'

zcolor of the word stopr   )rk   Ú	stopColorc                ó®   € ^ V n         ^ V n        ^dV n        \        P                  V n        \        P                  V n        \        P                  V n	        R# rW   )
r   r   r   r   r+   r   Ú	orangeredr   Ú
ghostwhiter°   r   s   &r   r   ÚStopSign.__init__R  s=   € ØˆŒØˆŒØˆŒ	Ü!Ÿ<™<ˆÔÜ×)Ñ)ˆŒÜ×*Ñ*ˆŽr   c                ó~  € \        V P                  4      p\        P                  ! 4       pV^,          p\        P                  ! V P
                  V,           V P                  V P
                  V P                  V,           V P
                  V P                  V^,          ,           V P
                  V,           V P                  V,           V P
                  V^,          ,           V P                  V,           V P
                  V,           V P                  V^,          ,           V P
                  V,           V P                  V,           V P
                  V^,          ,           V P                  .V P                  R^R7      pVP                  V4       \        P                  ! V P
                  V,           V^K,          ,           V P                  V^K,          ,           V P
                  V^K,          ,           V P                  V,           V^K,          ,           V P
                  V^K,          ,           V P                  V^,          ,           V^K,          ,
          V P
                  V,           V^K,          ,           V P                  V,           V^K,          ,
          V P
                  V^,          ,           V^K,          ,
          V P                  V,           V^K,          ,
          V P
                  V,           V^K,          ,
          V P                  V^,          ,           V^K,          ,
          V P
                  V,           V^K,          ,
          V P                  V,           V^K,          ,           V P
                  V^,          ,           V^K,          ,
          V P                  V^K,          ,           .RV P                  ^ R7      pVP                  V4       V P                  '       dn   VP                  \        P                  ! V P
                  VR,          ,           V P                  VR,          ,           RV P                  RV^,          RR7      4       V# )	rd   Nre   ç      à?çš™™™™™Ù?ÚSTOPr"   zHelvetica-Bold)r   r$   r%   ÚfontName)r'   r   r   rK   rL   r   r   r   r)   r   r°   r*   )r   r-   rN   rf   ÚouterOctagonÚinnerOctagons   &     r   r(   ÚStopSign.drawZ  s×  € ä�$—)‘)ÓˆÜ�LŠL‹Nˆð ��sˆä—~’~¨d¯f©f°V­m¸T¿V¹VØ.2¯f©f°d·f±f¸VµmØ.2¯f©f°d·f±f¸fÀQ½hÕ6GØ.2¯f©f°V­m¸T¿V¹VÀA½XØ.2¯f©f°f¸QµhÕ.?ÀÇÁÈÅØ.2¯f©f°Q­h¸¿¹ÀÀqÅÕ8IØ.2¯f©f°Q­h¸¿¹¸v½Ø.2¯f©f°f¸QµhÕ.?ÀÇÁð.Ið 59×4DÑ4DØ26Ø23ô
5ˆð 	
�‰ˆlÔä—~’~¨d¯f©f°V­m¸Q¸r½TÕ.BÀDÇFÁFÈAÈbÍDÅMØ.2¯f©f°a¸µd­m¸T¿V¹VÀF½]ÈAÈbÍDÕ=QØ.2¯f©f°a¸µd­m¸T¿V¹VÀVÈAÅXÕ=NÐPQÐRTÕPTÕ=UØ.2¯f©f°V­m¸Q¸r½TÕ.BÀDÇFÁFÈ1ÅHÈaÐPRÍdÅOØ.2¯f©f°f¸QµhÕ.?ÀÀ2ÅÕ.FÈÏÉÐPQÍÐTUÐVXÕTXÕHYØ/3¯v©v°a­x¸!¸B½$Õ.?ÀÇÁÈÐPQÍÕARÐTUÐVXÕTXÕAYØ/3¯v©v°a­x¸!¸B½$Õ.?ÀÇÁÈÅÐPQÐRTÕPTÕAUØ.2¯f©f°f¸QµhÕ.?ÀÀ2ÅÕ.FÈÏÉÐPQÐRTÕPTÍð.Wð 59Ø26·.±.Ø23ô
5ˆð 	
�‰ˆlÔà�>�>ˆ>Ø�E‰E”&—-’- §¡¨¨#­¥¨t¯v©v°q¸µu­~Ø"¨d¯n©nÈØ%& q¥SÐ3CôEô Fð ˆr   )r   r   r°   r   r   r   N©r   r1   r2   r3   r4   r6   r
   r7   r9   r:   r   r(   r;   r<   r=   s   @r   r¯   r¯   G  s2   ø‡ € ññ ˜GÙ  Ð4LÔMô
€Hò+÷'ð 'r   r¯   c                   óT   a € ] tR tRt o Rt]! ]]! ]RR7      R7      t	R t
R tRtV tR	# )
ÚNoEntryi„  zuThis draws a (British) No Entry sign - a red circle with a white line on it.

possible attributes:
'x', 'y', 'size'

zcolor of the inner barr   )rk   ÚinnerBarColorc                ó®   € ^ V n         ^ V n        ^dV n        \        P                  V n        \        P                  V n        \        P                  V n	        R# rW   )
r   r   r   r   r+   r   r²   r   r³   rÀ   r   s   &r   r   ÚNoEntry.__init__�  s>   € ØˆŒØˆŒØˆŒ	Ü!Ÿ<™<ˆÔÜ×)Ñ)ˆŒÜ#×.Ñ.ˆÖr   c                ój  € \        V P                  4      p\        P                  ! 4       pV P                  '       dm   VP                  \        P                  ! V P                  V^,          ,           V P                  V^,          ,           V^,          RV P                  ^R7      4       V P                  '       d{   VP                  \        P                  ! V P                  V^,          ,           V P                  V^,          ,           V^,          V^2,          ,
          V P                  R^ R7      4       V P                  pV'       dk   VP                  \        P                  ! V P                  VR,          ,           V P                  VR,          ,           VR,          VR,          W3^^ R7      4       V# )r�   NrŽ   r   r·   çš™™™™™é?çš™™™™™É?)ÚwidthÚheightr   r   ÚstrokeLineCapr   )r'   r   r   rK   r   r)   r—   r   r   r   rÀ   rv   )r   r-   rN   rÀ   s   &   r   r(   ÚNoEntry.draw˜  sO  € ä�$—)‘)ÓˆÜ�LŠL‹Nˆð ××ÐØ�E‰E”&—-’- d§f¡f¨a°­c¥l¸4¿6¹6À1ÀQÅ3½<ÈaÐPQÍcÐ_cÐsw÷  tDñ  tDð  RSô  Tô  Uà�>�>ˆ>Ø�E‰E”&—-’- d§f¡f¨a°­c¥l¸$¿&¹&À!ÀAÅ#½,ÈqÐQRÍsÐUVÐWYÕUYÍlÐim×iwÑiwð  HLð  Z[ô  \ô  ]à×*Ñ*ˆßØ�E‰E”&—+’+˜dŸf™f a¨¥e�n¨d¯f©f°a¸µe­nÀAÀcÅEÐRSÐTWÕRWÐerð  bcð  stô  uô  vØˆr   )r   rÀ   r   r   r   r   Nr½   r=   s   @r   r¿   r¿   „  s2   ø‡ € ññ ˜GÙ$ ]Ð8PÔQô
€Hò/÷ð r   r¿   c                   óB   a € ] tR tRt o Rt]! ]R7      tR tR t	Rt
V tR# )Ú
NotAllowedi©  zkThis draws a 'forbidden' roundel (as used in the no-smoking sign).

possible attributes:
'x', 'y', 'size'

)rk   c                ó„   € ^ V n         ^ V n        ^dV n        \        P                  V n        \        P                  V n        R# rW   )r   r   r   r   r   r   ro   r   r   s   &r   r   ÚNotAllowed.__init__´  s.   € ØˆŒØˆŒØˆŒ	Ü!Ÿ:™:ˆÔÜŸ™ˆŽr   c           	     óâ  € \        V P                  4      p\        P                  ! 4       pV P                  p\        P
                  ! V P                  V^,          ,           V P                  V^,          ,           V^,          V^
,          ,
          V P                  W1R,          R7      pVP                  V4       V P                  V,           pV P                  V^,          ,           V^,          ,
          pW^,          ,
          pV^,          pV^,          p	^dp
Rp^Zp. pVP                  p^ RIHpHpHp VR,          pVV,          pV
V,          pVV,          pVV8  d   V^V,          ,           pK  TpVV8  dG   VV! V4      V,          ,           pWo! V4      V,          ,           pV! V4       V! V4       VV,           pKM  \        P                  ! WÓW1R,          R7      pVP                  V4       V# )r�   g      $@rŽ   r’   r–   rs   i°ÿÿÿ)r'   r   r   rK   r   r—   r   r   r   r)   rš   r›   r“   r”   r•   r…   )r   r-   rN   r   ÚouterCircler�   rž   rŸ   r    r¡   r¢   r£   r¤   r¥   r¦   r“   r”   r•   r§   r¨   r©   rª   r«   r   r   Úcrossbars   &                         r   r(   ÚNotAllowed.draw»  s¬  € ä�$—)‘)ÓˆÜ�LŠL‹NˆØ×&Ñ&ˆô —m’m¨$¯&©&°!°Aµ#­,¸t¿v¹vÀqÈÅs½|ÐSTÐUVÕSVÐYZÐ[]ÕY]ÕR^Ðlp×lzÑlzð  KVð  fiõ  diô  jˆØ	�‰ˆkÔà—‘�q•ˆØ—‘˜˜!�•˜a �cÕ"ˆØ�A•#�wˆØ˜•(ˆØ˜•(ˆØÐØˆØˆØˆ
Ø×Ñˆß%Ñ%Ø˜e�8ÐØ"Ð#3Õ3ˆØ&Ð'7Õ7ˆ
Ø"Ð#3Õ3ˆØ�zÔ!Ø  "¥•}ŠHØˆØ�HŒnØ™#˜e›* VÕ+Õ+ˆAØ˜#˜e›* WÕ,Õ,ˆAÙˆaŒD‘!�A”$Ø˜,Õ&ŠEÜ—?’? :ÐVaÐsvÕqvÔwˆØ	�‰ˆhŒØˆr   r]   N)r   r1   r2   r3   r4   r6   r
   r:   r   r(   r;   r<   r=   s   @r   rË   rË   ©  s'   ø‡ € ññ ˜Gô 
€Hò&÷#ð #r   rË   c                   ó0   a € ] tR tRt o RtR tR tRtV tR# )Ú	NoSmokingiá  zFThis draws a no-smoking sign.

possible attributes:
'x', 'y', 'size'

c                ó0   € \         P                  V 4       R # rC   )rË   r   r   s   &r   r   ÚNoSmoking.__init__é  s   € Ü×Ñ˜DÖ!r   c           
     óú  € \        V P                  4      p\        P                  V 4      pV P                  V^,          ,           VR,          ,
          pV P
                  V^,          ,           V^ ,          ,
          p\        P                  ! W4V^,          V^,          \        P                  \        P                  ^ R7      pW1^,          ,           V^@,          ,           pVP                  RV4       \        P                  ! W4V^P,          V^,          \        P                  R^ R7      pW1^#,          ,           pVP                  RV4       \        P                  ! W4V^P,          V^,          \        P                  R^ R7      pW1^#,          ,           pVP                  RV4       \        P                  ! W4V^P,          V^,          \        P                  R^ R7      pW1^#,          ,           pVP                  RV4       V# )r�   g      @©r   r   rÆ   rÇ   r   r   r   Néÿÿÿÿ)r'   r   rË   r(   r   r   r   rv   r   r³   ÚgrayÚinsertr²   )	r   r-   rN   ÚnewxÚnewyÚcigarrette1Úcigarrette2Úcigarrette3Úcigarrette4s	   &        r   r(   ÚNoSmoking.drawì  sw  € ä�$—)‘)ÓˆÜ�O‰O˜DÓ!ˆð �v‰v�q˜•s�|˜Q˜s�UÕ#ˆØ�v‰v�q˜•s�|˜Q˜r�TÕ"ˆÜ—k’k d¸qÀ½sÈaÐPRÍdÜ"×-Ñ-¼V¿[¹[ÐVWôYˆà�Q•3�Z˜˜2�ÕˆØ	�‰��KÔ ä—k’k d¸qÀ½tÈqÐQSÍtÜ"×,Ñ,¸DÈaôQˆà�b•D�kˆØ	�‰��KÔ ä—k’k d¸qÀ½tÈqÐQSÍtÜ"×,Ñ,¸DÈaôQˆà�b•D�kˆØ	�‰��KÔ ä—k’k d¸qÀ½tÈqÐQSÍtÜ"×,Ñ,¸DÈaôQˆà�b•D�kˆØ	�‰��KÔ àˆr   rR   NrS   r=   s   @r   rÓ   rÓ   á  s   ø‡ € ñò"÷ð r   rÓ   c                   ó0   a € ] tR tRt o RtR tR tRtV tR# )Ú
DangerSigni  zœThis draws a 'danger' sign: a yellow box with a black exclamation point.

possible attributes:
'x', 'y', 'size', 'strokeColor', 'fillColor', 'strokeWidth'

c                ó´   € ^ V n         ^ V n        ^dV n        \        P                  V n        \        P                  V n        V P                  R,          V n        R# )rX   rG   N)	r   r   r   r   r+   r   Úgoldr   r   r   s   &r   r   ÚDangerSign.__init__  s>   € ØˆŒØˆŒØˆŒ	Ü!Ÿ<™<ˆÔÜŸ™ˆŒØŸ9™9 U�?ˆÖr   c                ór  € \        V P                  4      p\        P                  ! 4       pV P                  pVR ,          pV P                  pVR ,          p\        P
                  ! V P                  V P                  V P                  V,           V P                  V P                  V^,          ,           V P                  V,           .RV P                  ^ R7      pVP                  V4       \        P
                  ! V P                  V^2,          ,           V P                  V^K,          ,           V P                  V,           V^2,          ,
          V P                  V^K,          ,           V P                  V^,          ,           V P                  V,           V^2,          ,
          .V P                  R^ R7      pVP                  V4       \        P
                  ! V P                  V^,          ,           V^,          ,
          V P                  VR,          ,           V P                  V^,          ,           V^,          ,           V P                  VR,          ,           V P                  V^,          ,           V^,          ,           V^,          ,           V P                  VR,          ,           V P                  V^,          ,           V^,          ,
          V^,          ,
          V P                  VR,          ,           .V P                  RR7      pVP                  V4       \        P
                  ! V P                  V^,          ,           V^,          ,
          V P                  V,           V P                  V^,          ,           V^,          ,           V P                  V,           V P                  V^,          ,           V^,          ,           V P                  V^,          ,           V P                  V^,          ,           V^,          ,
          V P                  V^,          ,           .V P                  RR7      pVP                  V4       V# )rG   NrH   g      @g      @)rI   r   r   )r'   r   r   rK   r   rL   r   r   r   r)   r   )	r   r-   rN   ÚewrO   ÚouterTriangleÚinnerTriangleÚexmarkÚexdots	   &        r   r(   ÚDangerSign.draw  sÚ  € ä�$—)‘)ÓˆÜ�LŠL‹NˆØ×ÑˆØˆu�Wˆð
 ×ÑˆØˆu�WˆäŸšØ�F‰F�D—F‘FØ�F‰F�1�H�d—f‘fØ�F‰F�A�a•C�L˜Ÿ™ �ð1#ð  Ø!×-Ñ-Øôˆð 	
�‰ˆmÔäŸšØ�F‰F�A�b•D�M˜4Ÿ6™6 1 R¥4�=Ø�V‰V�A�X˜˜"�Õ˜tŸv™v q¨¥t�}Ø�F‰F�A�a•C�L˜$Ÿ&™& �( Q r¥TÕ*ð1,ð  Ÿ>™>Ø!Øôˆð 	
�‰ˆmÔä—’Ø�f‰f�Q�q•S�j˜"˜Q�$Õ §¡¨¨3­¥Ø�f‰f�Q�q•S�j˜"˜Q�$Õ §¡¨¨3­¥Ø�f‰f�Q�q•S�j˜B˜q�DÕ" B q¥DÕ)¨D¯F©F°2°cµ6­MØ�f‰f�Q�q•S�j˜B˜q�DÕ" B q¥DÕ)¨D¯F©F°2°cµ6­Mð	(;ð
  ×+Ñ+Ø!ô#ˆð 	
�‰ˆfŒä—’Ø�f‰f�Q�q•S�j˜"˜Q�$Õ §¡¨¥Ø�f‰f�Q�q•S�j˜"˜Q�$Õ §¡¨¥Ø�f‰f�Q�q•S�j˜"˜Q�$Õ §¡¨¨1­¥Ø�f‰f�Q�q•S�j˜"˜Q�$Õ §¡¨¨1­¥ð	'.ð
  ×+Ñ+Ø!ô#ˆð 	
�‰ˆeŒàˆr   ©r   r   r   r   r   r   NrS   r=   s   @r   rã   rã     s   ø‡ € ñò+÷1ð 1r   rã   c                   ór   a € ] tR tRt o Rt]! ]]! ]4      ]! ]4      ]! ]	4      R7      t
R tR tR tRtV tR# )	ÚYesNoiO  a!  This widget draw a tickbox or crossbox depending on 'testValue'.

If this widget is supplied with a 'True' or 1 as a value for
testValue, it will use the tickbox widget. Otherwise, it will
produce a crossbox.

possible attributes:
'x', 'y', 'size', 'tickcolor', 'crosscolor', 'testValue'

)rk   Ú	tickcolorÚ
crosscolorÚ	testValuec                ó’   € ^ V n         ^ V n        ^dV n        \        P                  V n        \        P                  V n        ^V n        R# rW   )	r   r   r   r   rY   rñ   r   rò   ró   r   s   &r   r   ÚYesNo.__init__a  s4   € ØˆŒØˆŒØˆŒ	ÜŸ™ˆŒÜ Ÿ*™*ˆŒØˆŽr   c                ó  € V P                   '       d   \        4       pV P                  Vn        M\	        4       pV P
                  Vn        V P                  Vn        V P                  Vn        V P                  Vn	        VP                  4        V# rC   )ró   r~   rñ   r   rj   rò   rl   r   r   r   r(   )r   Úyns   & r   r(   Ú
YesNo.drawi  s^   € Ø�>�>ˆ>Ü‹yˆBØŸ™ˆB�Lä‹zˆBØŸ/™/ˆBŒMØ�V‰VˆŒØ�V‰VˆŒØ—	‘	ˆŒØ
�‰Œ	Øˆ	r   c                ó  € \         P                  ! ^È^d4      p\        4       p^Vn        ^Vn        ^FVn        ^ Vn        VP                  4        VP                  V4       \        4       p^xVn        ^Vn        ^FVn        ^Vn        VP                  4        VP                  V4       ^pVP                  \         P                  ! VP                  VP
                  ^,          ,           VP                  RV,          ,
          R\        P                  RVR7      4       VP                  \         P                  ! VP                  VP
                  ^,          ,           VP                  RV,          ,
          R\        P                  RVR7      4       ^
pVP                  \         P                  ! VP                  ^U,           VP                  ^,
          V P                  P                  \        P                  RVR7      4       V# )r!   ç333333ó?ztestValue=0r"   r#   ztestValue=1)r   r&   rð   r   r   r   ró   r(   r)   r*   r   r+   r   r   )r   r,   r÷   Úyn2ÚlabelFontSizes   &    r   r/   Ú
YesNo.demow  si  € Ü�NŠN˜3 Ó$ˆÜ‹WˆØˆŒØˆŒØˆŒØˆŒØ
�‰Œ	Ø	�‰ˆbŒ	Ü‹gˆØˆŒØˆŒØˆŒØˆŒØ�‰Œ
Ø	�‰ˆcŒ
ØˆØ	�‰Œf�mŠm˜BŸD™D "§'¡'¨!¥)Õ,¨b¯d©d°C¸Õ4EÕ.FØ)´V·\±\ÈhØ%2ô4ô 	5ð 	
�‰Œf�mŠm˜CŸE™E 3§8¡8¨A¥:Õ.°·±°s¸=Õ7HÕ0IØ)´V·\±\ÈhØ%2ô4ô 	5ð ˆØ	�‰Œf�mŠm˜BŸD™D �G R§T¡T¨"¥WØ ŸN™N×3Ñ3¼v¿|¹|ÐX`Ø%2ô4ô 	5ð ˆr   )rò   r   ró   rñ   r   r   N)r   r1   r2   r3   r4   r6   r
   r7   ÚisColorÚ	isBooleanr:   r   r(   r/   r;   r<   r=   s   @r   rð   rð   O  sD   ø‡ € ñ	ñ ˜GÙ  Ó)Ù! 'Ó*Ù  Ó+ô
€Hòò÷ð r   rð   c                   óP   a € ] tR tRt o Rt]! ]]! ]4      R7      t	R t
R tRtV tR# )Ú
FloppyDiski”  zaThis widget draws an icon of a floppy disk.

possible attributes:
'x', 'y', 'size', 'diskcolor'

)rk   Ú	diskColorc                óZ   € ^ V n         ^ V n        ^dV n        \        P                  V n        R# rW   )r   r   r   r   r+   r  r   s   &r   r   ÚFloppyDisk.__init__   s"   € ØˆŒØˆŒØˆŒ	ÜŸ™ˆŽr   c           
     óì  € \        V P                  4      p\        P                  ! 4       p\        P                  ! V P
                  V P                  V^d,          ,           WV^d,          ,
          V P                  R^ R7      pVP                  V4       \        P                  ! V P
                  VR,          ,           V P                  V,           VR,          ,
          VR,          VR,          \        P                  R^ R7      pVP                  V4       \        P                  ! V P
                  VR,          ,           V P                  V,           VR,          ,
          VR,          VR,          \        P                  R^ R7      pVP                  V4       \        P                  ! V P
                  VR,          ,           V P                  R	V,          ,           V P
                  VR
,          ,           V P                  R	V,          ,           \        P                  \        P                  ^ R7      pVP                  V4       \        P                  ! V P
                  VR,          ,           V P                  RV,          ,           V P
                  VR
,          ,           V P                  RV,          ,           \        P                  \        P                  ^ R7      pVP                  V4       \        P                  ! V P
                  VR,          ,           V P                  RV,          ,           V P
                  VR
,          ,           V P                  RV,          ,           \        P                  \        P                  ^ R7      pVP                  V4       \        P                  ! V P
                  VR,          ,           V P                  VR,          VR,          \        P                  R^ R7      p	VP                  V	4       \        P                  ! V P
                  VR,          ,           V P                  VR,          ,           VR,          VR,          V P                  R^ R7      p
VP                  V
4       V# )éd   Nr×   r   r¶   rÄ   g¸…ëQ¸Þ?g{®Gáz´?rt   g333333ã?ru   )Úx1Úy1Úx2Úy2r   r   r   gffffffæ?rÅ   r„   gìQ¸…ëÑ?gìQ¸…ë¡?g¸…ëQ¸¾?)r'   r   r   rK   rv   r   r   r  r)   r   Ú
whitesmokeÚ	royalbluerw   r+   Úsilver)r   r-   rN   ÚdiskBodyÚlabelÚlabelsplashÚline1Úline2Úline3Ú
metalcoverÚ	coverslots   &          r   r(   ÚFloppyDisk.draw¦  s	  € ä�$—)‘)ÓˆÜ�LŠL‹Nˆô —;’; §¡¨4¯6©6°1°Sµ5­>ÀÈaÐPSÍeÍ9ØŸ>™>Ø!Øôˆð 	
�‰ˆhŒä—’˜dŸf™f a¨¥e�n°·±¸µ¸A¸c½EÕ0BÈ!ÈCÍ%ÐXYÐZ^ÕX^Ü!×,Ñ,Ø!Øôˆð 	
�‰ˆeŒä—k’k D§F¡F¨A¨c­E¥N°t·v±v¸aµxÀ!ÀCÅ%Õ6HÐPQÐRUÕPUÐ^_Ð`dÕ^dÜ!×+Ñ+Ø!Øôˆð 	
�‰ˆkÔô —’˜tŸv™v q¨¥v�°4·6±6¸3¸q½5µ>ÀdÇfÁfÈaÐPTÍfÅoÐZ^×Z`ÑZ`ÐbeÐfgÕbgÕZhÜ!Ÿ<™<Ü#Ÿ\™\Øôˆð 	
�‰ˆeŒä—’˜tŸv™v q¨¥v�°4·6±6¸3¸q½5µ>ÀdÇfÁfÈaÐPTÍfÅoÐZ^×Z`ÑZ`ÐbeÐfgÕbgÕZhÜ!Ÿ<™<Ü#Ÿ\™\Øôˆð 	
�‰ˆeŒä—’˜tŸv™v q¨¥v�°4·6±6¸3¸q½5µ>ÀdÇfÁfÈaÐPTÍfÅoÐZ^×Z`ÑZ`ÐbeÐfgÕbgÕZhÜ!Ÿ<™<Ü#Ÿ\™\Øôˆð 	
�‰ˆeŒä—[’[ 4§6¡6¨1¨S­5¥>°d·f±fÀQÀsÅUÐSTÐUYÕSYÜ!Ÿ=™=Ø!Øôˆ
ð 	
�‰ˆjÔä—K’K $§&¡&¨!¨D­&¥/°d·f±f¸qÀ½wÕ5GÈqÐQUÍvÐ^_Ð`dÕ^dØŸ>™>Ø!Øôˆ	ð 	
�‰ˆiÔàˆr   )r  r   r   r   N)r   r1   r2   r3   r4   r6   r
   r7   rþ   r:   r   r(   r;   r<   r=   s   @r   r  r  ”  s/   ø‡ € ññ ˜GÙ  Ó)ô
€Hò&÷8ð 8r   r  c                   ó0   a € ] tR tRt o RtR tR tRtV tR# )ÚArrowOneià  z]This widget draws an arrow (style one).

possible attributes:
'x', 'y', 'size', 'fillColor'

c                óv   € ^ V n         ^ V n        ^dV n        \        P                  V n        ^ V n        RV n        R# rW   )r   r   r   r   r   r   r   r   r   s   &r   r   ÚArrowOne.__init__ç  s2   € ØˆŒØˆŒØˆŒ	ÜŸ™ˆŒØˆÔØˆÖr   c                ó(  € \        V P                  4      p\        P                  ! 4       pV P                  pV P
                  pV^,          pV^,          pV^,          pVP                  \        P                  ! W4V,           W4^V,          ,           W5,           V^V,          ,           W5,           V^V,          ,           W1,           WE,           W5,           WG,           W5,           WF,           .V P                  V P                  V P                  R7      4       V# )r�   rH   ©r'   r   r   rK   r   r   r)   rL   r   r   r   )r   r-   rN   r   r   Ús2Ús3Ús5s   &       r   r(   ÚArrowOne.drawï  sÑ   € ä�$—)‘)ÓˆÜ�LŠL‹Nˆà�F‰FˆØ�F‰FˆØˆq�SˆØˆq�SˆØˆq�SˆØ	�‰Œf�nŠnØ()¨B­$Ø()¨A¨b­D­&Ø()­¨Q¨q°­t­VØ()­¨Q¨q°­t­VØ()­¨A­DØ()­¨Q­TØ()­¨Q­Tð')ð !ŸN™NØ"×.Ñ.Ø"×.Ñ.ôô 	ð ˆr   rî   NrS   r=   s   @r   r  r  à  s   ø‡ € ñò ÷ð r   r  c                   ó0   a € ] tR tRt o RtR tR tRtV tR# )ÚArrowTwoi	  z]This widget draws an arrow (style two).

possible attributes:
'x', 'y', 'size', 'fillColor'

c                óv   € ^ V n         ^ V n        ^dV n        \        P                  V n        ^ V n        RV n        R# rW   )r   r   r   r   Úbluer   r   r   r   s   &r   r   ÚArrowTwo.__init__  s2   € ØˆŒØˆŒØˆŒ	ÜŸ™ˆŒØˆÔØˆÖr   c                ó˜  € \        V P                  4      p\        P                  ! 4       pV P                  pV P
                  pV^,          pV^,          pV^,          pV^,          pVP                  \        P                  ! W4^V,          ,           W4^V,          ,           VRV,          ,           V^V,          ,           V^V,          ,           V^V,          ,           W1,           WE,           V^V,          ,           WF,           VRV,          ,           V^V,          ,           .V P                  V P                  V P                  R7      4       V# )r�   g     À2@rH   r  )	r   r-   rN   r   r   r  r  r  Ús24s	   &        r   r(   ÚArrowTwo.draw  sþ   € ä�$—)‘)ÓˆÜ�LŠL‹Nˆð �F‰FˆØ�F‰FˆØˆq�SˆØˆq�SˆØˆq�SˆØ��dˆà	�‰Œf�nŠnà˜˜3�•hØ˜˜3�•hØ�e˜C•i•K  2 c¥6¥Ø�a˜•d•F˜A˜a �d�FØ•C˜�Ø�a˜•d•F˜A�DØ�e˜C•i•K  2 c¥6¥ðð Ÿ™Ø×*Ñ*Ø×*Ñ*ô,ô 	ð ˆr   rî   NrS   r=   s   @r   r"  r"  	  s   ø‡ € ñò ÷ð r   r"  c            	       ód   a € ] tR tRt o Rt]! ]]! ]! ]	]
34      RR7      R7      tR tR tRtV tR	# )
Ú	CrossHairi7  rA   z( gap at centre as "x%" or points or Noner   )rk   ÚinnerGapc                ó    € ^ ;V n         ;V n        ;V n        V n        ^
V n        RV n        \        P                  V n        RV n	        RV n
        R# )rX   Nr¶   z20%)r   r   r   r   r   r   r   r+   r   r   r+  r   s   &r   r   ÚCrossHair.__init__=  sG   € Ø./Ð/ˆŒÐ/�”Ð/˜$œ' D¤GØˆŒ	ØˆŒÜ!Ÿ<™<ˆÔØˆÔØˆŽr   c                ó   € \        V P                  4      p\        P                  ! 4       pV P                  pV P
                  V P                  ,           pV P                  V P                  ,           pR V P                  ,          pV'       g&   WF,
          WTV,           V3WEV,
          WEV,           3.pM²\        V4      '       dS   \        V4      pVP                  R4      '       d   V\        VRR 4      ,          R,          pM\        V4      R ,          pM	VR ,          pWF,
          WTV,
          V3WH,           WTV,           V3WEV,
          WEV,
          3WEV,           WEV,           3.p\        P                  ! V P                  V P                  R7      p	V F(  w  r«rÍV	P                  W«4       V	P!                  WÍ4       K*  	  VP#                  V	4       V# )r¶   Ú%Ng      Y@)r   r   rØ   )r'   r   r   rK   r+  r   r   r   r   r   r   ÚendswithÚPathr   r   ÚmoveToÚlineTor)   )r   r-   rN   Úigr   r   ÚhsizeÚLÚgsÚPÚx0Úy0r  r  s   &             r   r(   ÚCrossHair.drawE  sc  € ä�$—)‘)ÓˆÜ�LŠL‹NˆØ�]‰]ˆà�F‰F�4—7‘7�NˆØ�F‰F�4—7‘7�NˆØ�D—I‘I•ˆßØ•'˜!˜e�G AÐ&¨¨U­7°1°uµWÐ(=Ð>‰Aä�R�yŠyÜ˜r“]�Ø—;‘;˜t×$Ò$Øœu R¨¨ W›~Õ-¨eÕ3‘Bä˜r› 3�‘Bà˜•V�Ø•'˜!˜b�D Ð# a¥d¨1¨u­W°QÐ%7¸!¸e½GÀAÈÅdÐ9KÈaÐRTÕPTÐUVÐY^ÕW^ÐM_Ð`ˆAÜ�KŠK D×$4Ñ$4À×AQÑAQÔRˆÛ‰KˆB�"Ø�H‰H�RŒOØ�H‰H�RŽOñ ð 	
�‰ˆaŒØˆr   )	r   r   r   r+  r   r   r   r   r   N)r   r1   r2   r3   r4   r6   r
   r7   ÚEitherOrÚisStringÚisNumberOrNoner:   r   r(   r;   r<   r=   s   @r   r*  r*  7  s8   ø‡ € Ù-Ù˜GÙ#¡H¨h°~Ð-FÓ$GÐMwÔxô
€Hò÷ð r   r*  c                 ó�  € ^
p \         P                  ! RR4      p\        4       p^Vn        RVn        VP                  V4       VP                  \         P                  ! VP                  VP                  ^,          ,           VP                  RV ,          ,
          VP                  P                  \        P                  RV R7      4       \        4       p^ªVn        RVn        VP                  V4       VP                  \         P                  ! VP                  VP                  ^,          ,           VP                  RV ,          ,
          VP                  P                  \        P                  RV R7      4       \        4       pRVn        RVn        VP                  V4       VP                  P                  R,           pVP                  \         P                  ! VP                  VP                  ^,          ,           VP                  RV ,          ,
          V\        P                  RV R7      4       VP                  \         P                  ! ^‚^R	\        P                  RV R
,          R7      4       \        4       p^Vn        RVn        VP                  V4       VP                  \         P                  ! VP                  VP                  ^,          ,           VP                  RV ,          ,
          VP                  P                  \        P                  RV R7      4       \        4       p^ªVn        RVn        VP                  V4       VP                  \         P                  ! VP                  VP                  ^,          ,           VP                  RV ,          ,
          VP                  P                  \        P                  RV R7      4       \!        4       pRVn        RVn        VP                  V4       VP                  \         P                  ! VP                  VP                  ^,          ,           VP                  RV ,          ,
          VP                  P                  \        P                  RV R7      4       \#        4       p	^V	n        RV	n        VP                  V	4       VP                  \         P                  ! V	P                  V	P                  ^,          ,           V	P                  RV ,          ,
          V	P                  P                  \        P                  RV R7      4       \%        4       p
^ªV
n        RV
n        VP                  V
4       VP                  \         P                  ! V
P                  V
P                  ^,          ,           V
P                  RV ,          ,
          V
P                  P                  \        P                  RV R7      4       \'        4       pRVn        RVn        VP                  V4       VP                  \         P                  ! VP                  VP                  ^,          ,           VP                  RV ,          ,
          VP                  P                  \        P                  RV R7      4       \)        4       p^Vn        ^ŒVn        VP                  V4       VP                  \         P                  ! VP                  VP                  ^,          ,           VP                  RV ,          ,
          VP                  P                  \        P                  RV R7      4       \+        4       p^ªVn        ^ŒVn        VP                  V4       VP                  \         P                  ! VP                  VP                  ^,          ,           VP                  RV ,          ,
          VP                  P                  \        P                  RV R7      4       \-        4       pRVn        ^ŒVn        VP                  V4       VP                  \         P                  ! VP                  VP                  ^,          ,           VP                  RV ,          ,
          VP                  P                  \        P                  RV R7      4       \.        P0                  ! VRR4       \3        R4       R# )z\This function produces a pdf with examples of all the signs and symbols from this file.
    iÂ  iŠ  i  rú   r"   r#   i@  r   zT(The 'YesNo' widget returns a tickbox if testvalue=1, and a crossbox if testvalue=0)g      è?i�  i  zsignsandsymbols.pdfzsignsandsymbols.pyzwrote file: signsandsymbols.pdfN)r   r&   rj   r   r   r)   r*   r   r   r   r   r+   r~   rð   r¯   r¿   r‰   rã   rË   rÓ   r  r"  r  r   Ú
drawToFileÚprint)rü   r,   ÚcbÚtbr÷   Ú
tempstringÚssÚneÚsfÚdsÚnaÚnsÚa1Úa2Úfds                  r   ÚtestrN  b  sÿ  € ð €MÜ�Š�s˜3Ó€AÜ	‹€BØ€B„DØ€B„DØ‡E�Eˆ"„IØ‡E�EŒ&�-Š-˜Ÿ™˜bŸg™g a�iÕ(¨"¯$©$°°MÕ0AÕ*BØŸ<™<×0Ñ0¼F¿L¹LÐU]Ø$1ô3ô 4ô 
‹€BØ€B„DØ€B„DØ‡E�Eˆ"„IØ‡E�EŒ&�-Š-˜Ÿ™˜bŸg™g a�iÕ(¨"¯$©$°°MÕ0AÕ*BØŸL™L×1Ñ1¼V¿\¹\ÐV^Ø%2ô4ô 5ô
 
‹€BØ€B„DØ€B„DØ‡E�Eˆ"„IØ—‘×&Ñ&¨Õ,€JØ‡E�EŒ&�-Š-˜Ÿ™˜bŸg™g a�iÕ(¨"¯$©$°°MÕ0AÕ*BØ&´&·,±,È8Ø%2ô4ô 5ð ‡E�EŒ&�-Š-˜˜AØrô  E÷  Kñ  Kð  X`Ø%2°4Õ%7ô9ô :ô
 
‹€BØ€B„DØ€B„DØ‡E�Eˆ"„IØ‡E�EŒ&�-Š-˜Ÿ™˜bŸg™g a�iÕ(¨"¯$©$°°MÕ0AÕ*BØŸL™L×1Ñ1¼V¿\¹\ÐV^Ø%2ô4ô 5ô 
‹€BØ€B„DØ€B„DØ‡E�Eˆ"„IØ‡E�EŒ&�-Š-˜Ÿ™˜bŸg™g a�iÕ(¨"¯$©$°°MÕ0AÕ*BØŸL™L×1Ñ1¼V¿\¹\ÐV^Ø%2ô4ô 5ô 
‹€BØ€B„DØ€B„DØ‡E�Eˆ"„IØ‡E�EŒ&�-Š-˜Ÿ™˜bŸg™g a�iÕ(¨"¯$©$°°MÕ0AÕ*BØŸL™L×1Ñ1¼V¿\¹\ÐV^Ø%2ô4ô 5ô 
‹€BØ€B„DØ€B„DØ‡E�Eˆ"„IØ‡E�EŒ&�-Š-˜Ÿ™˜bŸg™g a�iÕ(¨"¯$©$°°MÕ0AÕ*BØŸL™L×1Ñ1¼V¿\¹\ÐV^Ø%2ô4ô 5ô 
‹€BØ€B„DØ€B„DØ‡E�Eˆ"„IØ‡E�EŒ&�-Š-˜Ÿ™˜bŸg™g a�iÕ(¨"¯$©$°°MÕ0AÕ*BØŸL™L×1Ñ1¼V¿\¹\ÐV^Ø%2ô4ô 5ô 
‹€BØ€B„DØ€B„DØ‡E�Eˆ"„IØ‡E�EŒ&�-Š-˜Ÿ™˜bŸg™g a�iÕ(¨"¯$©$°°MÕ0AÕ*BØŸL™L×1Ñ1¼V¿\¹\ÐV^Ø%2ô4ô 5ô 
‹€BØ€B„DØ€B„DØ‡E�Eˆ"„IØ‡E�EŒ&�-Š-˜Ÿ™˜bŸg™g a�iÕ(¨"¯$©$°°MÕ0AÕ*BØŸL™L×1Ñ1¼V¿\¹\ÐV^Ø%2ô4ô 5ô 
‹€BØ€B„DØ€B„DØ‡E�Eˆ"„IØ‡E�EŒ&�-Š-˜Ÿ™˜bŸg™g a�iÕ(¨"¯$©$°°MÕ0AÕ*BØŸL™L×1Ñ1¼V¿\¹\ÐV^Ø%2ô4ô 5ô 
‹€BØ€B„DØ€B„DØ‡E�Eˆ"„IØ‡E�EŒ&�-Š-˜Ÿ™˜bŸg™g a�iÕ(¨"¯$©$°°MÕ0AÕ*BØŸL™L×1Ñ1¼V¿\¹\ÐV^Ø%2ô4ô 5ô ×Ò˜Ð1Ð3GÔHÜ	Ð
+Ö,r   Ú__main__N)!Ú__version__r4   Úreportlab.libr   Úreportlab.lib.validatorsÚreportlab.lib.attrmapÚreportlab.lib.utilsr   r   Úreportlab.graphicsr   Úreportlab.graphics.widgetbaser   r   r
   r@   rU   r_   rj   r~   r‰   r¯   r¿   rË   rÓ   rã   rð   r  r  r"  r*  rN  r   rR   r   r   Ú<module>rW     s)  ðð €ð	€õ, !Ü &Ü #ß 0Ý %Ý 0Ý (ô#ˆfô #ôJ�ô ô.�ô ô@#ˆgô #ôJ.ˆwô .ôb)ˆgô )ôV@�ô @ôD:ˆwô :ôz#ˆgô #ôJ5�ô 5ôp'�
ô 'ôTA�ô AôHCˆGô CôJJ�ô JôX'ˆwô 'ôR,ˆxô ,ô\(�ô (òVl-ð\ ˆZÔÙ†Fñ r   