
    kfv                     @   d Z dZddlmZ ddlT ddlT ddlmZmZm	Z	m
Z
mZmZmZmZ ddlmZ ddlmZ ddlZdd	lmZmZmZ  edd
dddddddddddddddddddddd d!d"d#d$d%          Zd&Z G d' d(e          Z G d) d*e          Zd+ Zd, Zed-k    r e             dS dS ).z3.3.0a  This file is a collection of flag graphics as widgets.

All flags are represented at the ratio of 1:2, even where the official ratio for the flag is something else
(such as 3:5 for the German national flag). The only exceptions are for where this would look _very_ wrong,
such as the Danish flag whose (ratio is 28:37), or the Swiss flag (which is square).

Unless otherwise stated, these flags are all the 'national flags' of the countries, rather than their
state flags, naval flags, ensigns or any other variants. (National flags are the flag flown by civilians
of a country and the ones usually used to represent a country abroad. State flags are the variants used by
the government and by diplomatic missions overseas).

To check on how close these are to the 'official' representations of flags, check the World Flag Database at
http://www.flags.ndirect.co.uk/

The flags this file contains are:

EU Members:
United Kingdom, Austria, Belgium, Denmark, Finland, France, Germany, Greece, Ireland, Italy, Luxembourg,
Holland (The Netherlands), Spain, Sweden

Others:
USA, Czech Republic, European Union, Switzerland, Turkey, Brazil

(Brazilian flag contributed by Publio da Costa Melo [publio@planetarium.com.br]).
    )colors)*)LineRectPolygonDrawingGroupStringCircleWedge)	renderPDF)_SymbolN)sincospiUKUSAAfghanistanAustriaBelgiumChinaCubaDenmarkFinlandFranceGermanyGreeceIrelandItalyJapan
LuxembourgHolland	PalestinePortugalRussiaSpainSwedenNorwayCzechRepublicTurkeySwitzerlandEUBrazil      Y@c                   X    e Zd ZdZ ee eed                    ZdZ	d Z
d Zd Zd	S )
StarzyThis draws a 5-pointed star.

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

        zangle in degreesdesc)BASEangler.   c                 z    t          j        |            d| _        t          j        | _        d | _        d| _        d S )Nd   r   )r   __init__sizer   yellow	fillColorstrokeColorr4   selfs    `/var/www/html/nettyfy-visnx/env/lib/python3.11/site-packages/reportlab/graphics/widgets/flags.pyr7   zStar.__init__W   s6    	


    c           
      :   t          dd          }t                      }d|_        d|_        |                    |           d}|                    t          |j        |j        dz  z   |j        d|z  z
  |j        j        t          j
        d|	                     |S )
N   r6   2   r   
          @333333?middler:   
textAnchorfontSize)r   r0   xyaddr
   r8   	__class____name__r   black)r=   DetlabelFontSizes       r>   demoz	Star.demo^   s    CVV	b				fRT273;'s=/@)AL1V\V^%24 4 4 	5 	5 	5 r?   c                    t          | j                  }t                      }t          | j                  dz  }|t          dt          dz  z            z  t          dt          dz  z            z  }g }d}t          d          D ]e}||fD ]^}|t          dz  z  }	|                    |t          |	          z             |                    |t          |	          z             |dz   }_ft          || j	        | j
        |dz            }
|                    | j                   |                    | j        | j        z   | j        | j        z              |                    |
           |S )	N      g     f@$   Z      rB   r:   r;   strokeWidth)floatr8   r	   r   r   r   rangeappendr   r:   r;   rotater4   shiftrJ   dxrK   dyrL   )r=   sgRrPr4   iradiusthetastars              r>   drawz	Star.drawj   sa   $)GG $)Qc"bh-   RE]!3!33q 	# 	#AQ$ # #r%x(E

*+++E

*+++
	# q $"&"2 !"& & & 	
	twtvdg~...	dr?   N)rN   
__module____qualname____doc__AttrMapr   AttrMapValueisNumber_attrMap_sizer7   rS   rl    r?   r>   r0   r0   K   s          wG L0BCCC  H E  
 
 
    r?   r0   c            	       F   e Zd ZdZ ee eed           eed           ee	d                    Z
i Zd Zd Zd	 Zd
 Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Z d Z!d Z"d Z#d Z$d  Z%d! Z&d" Z'd# Z(d$ Z)d% Z*d& Z+d' Z,d( Z-d) Z.d*S )+Flaga   This is a generic flag class that all the flags in this file use as a basis.

        This class basically provides edges and a tidy-up routine to hide any bits of
        line that overlap the 'outside' of the flag

        possible attributes:
        'x', 'y', 'size', 'fillColor'
    zBackground colorr1   zWhether a background is drawnz
Which flag)r3   r:   borderkindc                     t          j        |            d | _        d| _        t          j        | _        d| _        |                     |           d S )Nr6      )	r   r7   ry   r8   r   whiter:   rx   setProperties)r=   kws     r>   r7   zFlag.__init__   sK    		2r?   c                 D    d | j         d         j        j        D             S )z*return a list of the things we can displayc                     g | ]}||S Nru   ).0rJ   s     r>   
<listcomp>z+Flag.availableFlagNames.<locals>.<listcomp>   s    QQQa1====r?   ry   )rs   validate_enumr<   s    r>   availableFlagNameszFlag.availableFlagNames   s#    QQ4=09?QQQQr?   c                     t           }t                      }|                    t          dd|dz  |t          j        t          j        d                     |S )Nr   rU   rZ   )rt   r	   rL   r   r   purplerO   r=   rc   rd   s      r>   
_Flag_NonezFlag._Flag_None   sG    GG	d1a1aV]&,defffgggr?   c                    | j         }t                      }|                    |           | j        | j        z   | j        | j        z   | j        dz  }}}|                    dt          | | t          | dd|z            d|z  z   t          | d|          d|z  z   d | j        |dz                       |                    ||           |                    |t          z  |t          z             |S )NrD   r   _widthrU      _heightwidthheightr:   r;   r[   )r8   r	   rL   rJ   ra   rK   rb   r[   insertr   getattrr;   r`   scalert   )r=   frc   rd   rJ   rK   sWs          r>   _borderDrawzFlag._borderDraw   s    IGG	a6$'>46$'>43CB3Fb1	4bSXac(B(B1R4(GPWX\]fghPiPijklnjnPn 0@bQRdT T T 	U 	U 	U	!	%5!!!r?   c                     | j         pd}| j                            |          }|s7 t          | d|z                         }|                                | j        |<   |                     |          S )NNone_Flag_)ry   _cachegetr   _exploder   )r=   ry   r   s      r>   rl   z	Flag.draw   sl    y"FKOOD!! 	-+Xd]++--A !

DK"""r?   c                 *    t          j         |           S r   )copyr<   s    r>   clonez
Flag.clone   s    yr?   c                    t          dd          }|                                 }dd l}|t          |                                          t	          |          z           }t                      }||_        d|_        d|_        |	                    |           d}|	                    t          |j        |j        dz  z   |j        d|z  z
  |t          j        d|                     t          |j        d	z            }|	                    t          |j        |j        z   |j        |j        dz  z   d
t          j        d|d                     |S )NrA   r6   r   rC   rD   rE   rF   rG         @SAMPLEHelvetica-Bold)r:   rH   rI   fontName)r   r   timeintlenrw   ry   rJ   rK   rL   r
   r8   r   rO   gold)r=   rP   namer   fxrR   s         r>   rS   z	Flag.demo   sC   C&&((C		$$s4yy01VV	b				fRT273;'s=/@)A FLX%24 4 4 	5 	5 	5 BGCK((	fRT27^RTBGCK%9$%2=MO O O 	P 	P 	P r?   c                 d   t           }t                      }|dz  }|                    t          dd||t          j        t          j        d                     |                    t          dd|dz  d||dz  ||||dz  z
  |d|dz  gt          j        d d                     |                    t          d|dz  d||dz  |||dz  |d||dz  z
  dgt          j        d d                     |                    t          d||dz  z
  ||dz  d	z  z
  |d
z  ||dz  dz  z
  |d
z  d|gt          j	        d d                     |                    t          dd||dz  dz  z
  |dz  ||dz  dz  z
  |dz  |dz  dgt          j	        d d                     |                    t          ||||dz  dz  z   |d
z  ||dz  dz  z   |d
z  ||dz  z
  |gt          j	        d d                     |                    t          ||dz  ||dz  d	z  z   |dz  ||dz  dz  z   |dz  |dgt          j	        d d                     |                    t          |dz  dz  dd|z  dz  |t          j        d d                     |                    t          d|dz  ||dz  t          j        d d                     |                    t          |dz  dz  dd|z  dz  |t          j	        d d                     |                    t          d|dz  ||dz  t          j	        d d                     |S )NrU   r   rZ   ?gffffff?g̼?g      .@      $@   g?r   ffffff?gzG?g{Gz?r   333333??皙?皙?皙?)
rt   r	   rL   r   r   navyrO   r   	mintcreamredr=   rc   rd   ws       r>   _Flag_UKzFlag._Flag_UK   s!   GGaC	d1aA6;fl`abbbccc	gqAdF1a7Qq!AdF(1a5Q_e_o  ~B  PQ  R  R  R  	S  	S  	S	gqGaAdF1a5!Aq4xPQR`f`p  C  QR  S  S  S  	T  	T  	T	gq!QtV*q1T61*~41afaZ<STUYSY\]_`aouoy  JN  \]  ^  ^  ^  	_  	_  	_	gq!a!D&!n$!afaZ.AdFVWX\V\_`aouoy  JN  \]  ^  ^  ^  	_  	_  	_	gq!a!D&!n$!afaZ.AdFUVXYZ^X^U_abcqwq{  LP  ^_  `  `  `  	a  	a  	a	gq1T6Q4
^qvQtVQJSTUYSY\]_`aouoy  JN  \]  ^  ^  ^  	_  	_  	_	dQtVQJ461*QFL\lp~  A  A  A  	B  	B  	B	d1qva#6CScguvwwwxxx	dQtVQJ3q5!)A6:eiwxyyyzzz	d1quQqu&*\`nopppqqqr?   c           
         t           }t                      }t          dd|dz  |t          j        t          j        d          }|                    |           t          ddd          D ]]}|dz  }|dz  dk    st          j        }nt          j        }t          d|||z  z
  |dz  ||d d          }|                    |           ^t          d||d	z  z
  d
|z  |d	z  t          j	        d d          }|                    |           |dz  }	|	dz  }
|dz  }|dz  }t          d          D ]~}t          d          D ]l}t                      }|	|_        d|dz  z
  |	dz  z   |z   ||z  z   |_        t          j        |_        ||dz   |z  z
  |
z   |_        |                    |           mt          d          D ]}t          d          D ]u}t                      }|	|_        d|dz  z
  |	dz  z   |dz  z   ||z  z   |_        t          j        |_        ||dz   |z  z
  |dz  z   |
z   |_        |                    |           v|S )Nr   rU   rZ      g      *@   r      g?g
ףp=
?rD         "@g      @rY   r   g      6@r{            ,@g      2@)rt   r	   r   r   r   rO   rL   r]   r   darkbluer0   r8   rJ   r:   rK   )r=   rc   rd   boxstripecounterstripeheightstripecolorredorwhitelineblueboxlsslss2s9s7starxcounterstarycounterlss                   r>   	_Flag_USAzFlag._Flag_USA   s   GG1a1aV-=V\ghiii	c


"Bq"-- 	" 	"MT6L!!Oq(($j$.!!am)C&DQqSYe'tM M MNEE.!!!!q1l1n-c!eLQRNtL L L	gg3wsUsU!!HH 	 	L %a  VV4xC'*<?:%/,q.",,T1b				 "!HH 	 	L %a  VV!D&z#c')!D&0b@%/,q.",,af5d:b				 r?   c           	         t           }t                      }t          dd|dz  |t          j        t          j        d          }|                    |           t          d|dz  dz  |dz  |dz  t          j        d d          }|                    |           t          dd|dz  |dz  t          j        d d          }|                    |           |S Nr   rU   rZ         @rD   r   )rt   r	   r   r   r   rO   rL   	limegreen)r=   rc   rd   r   greenboxblackboxs         r>   _Flag_AfghanistanzFlag._Flag_Afghanistan  s    GG1a1a(RSU U U	c


QsUCK#ae",DaQ Q Q	h1AcE!C%"L!M M M	hr?   c           	         t           }t                      }t          dd|dz  |t          j        t          j        d          }|                    |           t          dd|dz  |dz  t          j        d d          }|                    |           t          d|dz  dz  |dz  |dz  t          j        d d          }|                    |           |S Nr   rU   rZ   rD   r   r   )rt   r	   r   r   r   rO   rL   r   )r=   rc   rd   r   redbox1redbox2s         r>   _Flag_AustriazFlag._Flag_Austria   s    GG1a1aV-= ,A7 7 7	c


 q!1S53
$AG G G	gqAcE3;quQsU
$AG G G	gr?   c           	      .   t           }t                      }t          dd|dz  |t          j        t          j        d          }|                    |           t          dd|dz  dz  |t          j        d d          }|                    |           t          |dz  dz  d|dz  dz  |t          j        d d          }|                    |           t          |dz  dz  d|dz  dz  |t          j        d d          }|                    |           |S Nr   rU   rZ   r   rD   r   r   )rt   r	   r   r   rO   rL   r   r   )r=   rc   rd   r   box1box2box3s          r>   _Flag_BelgiumzFlag._Flag_Belgium2  s!   GG1a1aFLaQ Q Q	c


 Aq3ADaI I I	daeS[1QsUCK4QH H H	daeS[1QsUCK
$AG G G	dr?   c                 V   t           }t                      }|dz  x| _        }|                    t	          dd||t
          j        d d                     ||dz  d|dz  fd} |dddd            |d	d
d
d            |ddd
d            |ddd
d            |d	dd
d           |S )N      ?r   rZ   g      4@rD   c                     t                      }t          j        |_        ||_        ||z  dz  |_        | |z  |z   |_        ||z  |z   |_        |                    |           d S )NrU   )	r0   r   r9   r:   r4   r8   rJ   rK   rL   )	rJ   rK   r8   r4   rd   r   x0y0rc   s	            r>   addStarz!Flag._Flag_China.<locals>.addStarN  s[    AAKAG!VAXAFA#b&ACA#b&ACEE!HHHHHr?   rY   r   rC   r{   gbXoB@   g~ )m @r   g '0@   g01J@)rt   r	   r   rL   r   r   r   )r=   rc   rd   r   r   s        r>   _Flag_ChinazFlag._Flag_ChinaH  s    GGC%a	d1aASTUUUVVV%&41# 	 	 	 	 	!Aq1Q{###1Q{###1Q{###1Q{###r?   c           
         t           }t                      }t          d          D ]X}t          d||z  dz  |dz  |dz  t          j        t          j        g|dz           d d          }|                    |           Yt          ddd|z  dz  |dz  d|gt          j	        d d          }|                    |           t                      }d	|z  d
z  |_        |dz  |_        d|z  d
z  |_        t          j        |_        |                    |           t          dd|dz  |d t          j        d          }|                    |           |S )NrY   r         @rU   r   r   rD   pointsr:   r;   r[         @r   r   rZ   )rt   r	   r]   r   r   r   r   rL   r   r   r0   rJ   rK   r8   r|   r:   rO   )r=   rc   rd   rh   striperedwedgerk   r   s           r>   
_Flag_CubazFlag._Flag_Cuba^  sU   GGq 	 	A!QqSWAaC##_f.>?!D"  F EE&MMMMaAaCGaea$C &
$AO O O	hvvQt3aCH		d1a1a ,   	
c


r?   c           	         t           }t                      }|dz  x| _        }t          dd||t          j        t          j        d          }|                    |           t          |dz  dz  d|dz  |t          j        d d          }|                    |           t          d|dz  |d	z  z
  ||dz  t          j        d d          }|                    |           |S 
Nffffff?r   rZ   r   rU   g      @r   rD   g      (@)	rt   r	   r   r   r   r   rO   rL   r   )r=   rc   rd   r   r   	whitebox1	whitebox2s          r>   _Flag_DenmarkzFlag._Flag_Denmark|  s    GGC%a1aA
&,AO O O	c


1S5!)aquQ(!M M M		iaeaf-a#(!M M M		ir?   c           	         t           }t                      }t          dd|dz  |t          j        t          j        d          }|                    |           t          |dz  dd|z  |t          j        d d          }|                    |           t          d|dz  |dz  |dz  t          j        d d          }|                    |           |S )Nr   rU   rZ   g333333?r   r   r   )rt   r	   r   r   
ghostwhiterO   rL   r   )r=   rc   rd   r   	blueline1	blueline2s         r>   _Flag_FinlandzFlag._Flag_Finland  s    GG 1a1a)STV V V	c


!C%!3q5tL L L		iQsU1Q3qutL L L		ir?   c           	      .   t           }t                      }t          dd|dz  |t          j        t          j        d          }|                    |           t          dd|dz  dz  |t          j        d d          }|                    |           t          |dz  dz  d|dz  dz  |t          j        d d          }|                    |           t          |dz  dz  d|dz  dz  |t          j	        d d          }|                    |           |S r   )
rt   r	   r   r   r   rO   rL   bluer   r   )r=   rc   rd   r   r   whiteboxredboxs          r>   _Flag_FrancezFlag._Flag_France  s   GG1a1aV[bcddd	c


q!QsUCK4QH H H	g!C%q!C%a(!M M M	h#s{Q#s{A
   	
fr?   c           	         t           }t                      }t          dd|dz  |t          j        t          j        d          }|                    |           t          d|dz  dz  |dz  |dz  t          j        d d          }|                    |           t          d|dz  |dz  |dz  t          j        d d          }|                    |           |S r   )rt   r	   r   r   r   rO   rL   	orangered)r=   rc   rd   r   	blackbox1r   s         r>   _Flag_GermanyzFlag._Flag_Germany  s    GG1a1a"Kv|QRT T T	c


aeS[3quDaI I I		iq1S53qu(!M M M	gr?   c           
         t           }t                      }t          dd|dz  |t          j        t          j        d          }|                    |           t          ddd          D ]]}|dz  }|dz  dk    st          j        }nt          j	        }t          d|||z  z
  |dz  ||d d          }|                    |           ^t          d||d	z  z
  |d	z  |d	z  t          j        d d          }|                    |           t          d||d
z  z
  |d	z  |t          j	        d d          }	|                    |	           t          |dz  ||d	z  z
  ||d	z  t          j	        d d          }
|                    |
           |S )Nr   rU   rZ   	   r   r   r   r   rY   r   )
rt   r	   r   r   r   rO   rL   r]   deepskybluer   )r=   rc   rd   r   r   r   r   blueorwhitelinebluebox1
whiteline1
whiteline2s              r>   _Flag_GreecezFlag._Flag_Greece  s   GG1a1aV[&,lC C C	c


"Aa__ 		# 		#MS5L!!Oq(($0$."1q,}*D'EaPQcZf'tM M MOEE/""""QQ.QP\]^P^*$AO O O	h!q,q.0aP\(!M M M
	j<>aa-?]ijk]k(!M M M
	jr?   c           	         t           }t                      }t          dd|dz  |t          j        t          j        d          }|                    |           t          |dz  dz  dd|dz  z  dz  |t          j        d d          }|                    |           t          d|dz  z  dz  d|dz  dz  |t          j        d d          }|                    |           |S r   )	rt   r	   r   r   forestgreenrO   rL   r   
darkorange)r=   rc   rd   r   r  	orangeboxs         r>   _Flag_IrelandzFlag._Flag_Ireland  s    GG1a1a*&,TUW W W	c


!C%qaeS!",DaQ Q Q	h3#;s?a#s{1)1N N N		ir?   c                    t           }t                      }|                    t          dd|dz  |t          j        d d                     |                    t          d|z  dz  d|dz  dz  |t          j        d d                     |                    t          d|z  dz  d|dz  dz  |t          j        d d                     |S )Nr   rU   rZ   r   r   r   )rt   r	   rL   r   r   r  r   r   r   s      r>   _Flag_ItalyzFlag._Flag_Italy  s    GG	d1Qqs1v'9dXYZZZ[[[	dAaC9a!SyHXhlz{|||}}}	dAaC9a!Sy
bftuvvvwwwr?   c                 $   t           }t                      }|dz  x}| _        |                    t	          dd||t
          j        d d                     |                    t          |dz  |dz  d|z  t
          j        d d                     |S )Nr   r   rZ   rD   r   cxcyrf   r:   r;   r[   )	rt   r	   r   rL   r   r   r   r   r   r   s       r>   _Flag_JapanzFlag._Flag_Japan  s    GGC%DK	d1QqV%5$TUVVVWWW	f#3QPTbcdddeeer?   c           	         t           }t                      }t          dd|dz  |t          j        t          j        d          }|                    |           t          d|dz  dz  |dz  |dz  t          j        d d          }|                    |           t          dd|dz  |dz  t          j        d d          }|                    |           |S r   )	rt   r	   r   r   r   rO   rL   r   
dodgerbluer=   rc   rd   r   r  r   s         r>   _Flag_LuxembourgzFlag._Flag_Luxembourg	  s    GG1a1a(RSU U U	c


a1S5#+aeAcE"JdK K K	fq!1S53"-TqR R R	gr?   c           	         t           }t                      }t          dd|dz  |t          j        t          j        d          }|                    |           t          d|dz  dz  |dz  |dz  t          j        d d          }|                    |           t          dd|dz  |dz  t          j        d d          }|                    |           |S r   )	rt   r	   r   r   r   rO   rL   r   r   r   s         r>   _Flag_HollandzFlag._Flag_Holland  s    GG1a1a(RSU U U	c


a1S5#+aeAcE"JdK K K	fq!1S53"O4QP P P	gr?   c                     t                      S r   )r	   r<   s    r>   _Flag_PortugalzFlag._Flag_Portugal+  s    wwr?   c                    t           }t                      }|dz  x}| _        |dz  }|                    t	          dd||t
          j        d d                     |                    t	          d|||t
          j        d d                     |                    t	          dd|z  ||t
          j        d d                     |S )Nr   r   r   r   rU   )	rt   r	   r   rL   r   r   r   r  r   )r=   rc   rd   r   ts        r>   _Flag_RussiazFlag._Flag_Russia.  s    GGC%DKcE	d1aq
RVdefffggg	d1aqSWefggghhh	d1ac1&:JZ^lmnnnooor?   c                     t           }t                      }|dz  x}| _        |                    t	          dd||t
          j        d d                     |                    t	          d|dz  ||dz  t
          j        d d                     |S )Nr   r   r   r   rD   )rt   r	   r   rL   r   r   r   r9   r   s       r>   _Flag_SpainzFlag._Flag_Spain8  s    GGC%DK	d1aq
RVdefffggg	d1quQqu&-_cqrssstttr?   c           	         t           }t                      }|dz  | _        t          dd| j        |t          j        t          j        d          }|                    |           t          |dz  dz  d|dz  |t          j        d d          }|                    |           t          d|dz  |d	z  z
  | j        |dz  t          j        d d          }|                    |           |S r   )	rt   r	   r   r   r   r  rO   rL   r   )r=   rc   rd   r   r   r   s         r>   _Flag_SwedenzFlag._Flag_Sweden@  s    GGe1aa)STV V V	c


aeQY!C%"KtL L L	dA34(QsU   	
dr?   c           	      L   t           }t                      }|dz  | _        t          dd| j        |t          j        t          j        d          }|                    |           t          dd| j        |t          j        t          j        d          }|                    |           t          |dz  dz  d|dz  |t          j        d d          }|                    |           t          d|dz  | j        |dz  t          j        d d          }|                    |           t          |dz  dz  dd	|z  |t          j	        d d          }|                    |           t          d|d
z  | j        |d	z  t          j	        d d          }|                    |           |S )Nr   r   rZ   r   rU   r   r   r   r   r   )
rt   r	   r   r   r   r   rO   rL   r   r   )r=   rc   rd   r   r  r  r   r   s           r>   _Flag_NorwayzFlag._Flag_NorwayS  s   GGe1aa"JflPQS S S	c


1aa"JflPQS S S	c


AcE19q#a"-TqR R R
	j!aeDK#"-TqR R R
	j1U7A+Qq"O4QP P P		iQtVDK#"O4QP P P		ir?   c           	         t           }t                      }t          dd|dz  |t          j        t          j        d          }|                    |           t          dd|dz  |dz  t          j        d d          }|                    |           t          dd||dz  d|gt          j	        d d          }|                    |           |S )Nr   rU   rZ   rD   r   r   )
rt   r	   r   r   r   rO   rL   r   r   r   )r=   rc   rd   r   r  	bluewedges         r>   _Flag_CzechRepubliczFlag._Flag_CzechRepublicq  s    GG1a1a(&,l   	
c


a!A#ae
   	
fq!Q3A%> &tQRT T T		ir?   c           	      &   t           }t                      }t          d|dz  |dz  |dz  t          j        d d          }|                    |           t          dd|dz  |dz  t          j        d d          }|                    |           t          dd|z  dz  |dz  |dz  t          j        d d          }|                    |           t          ddd|z  dz  |dz  d|gt          j	        d d          }|                    |           |S )Nr   r   rU   rZ   r   rD   r   )
rt   r	   r   r   r   rL   r   rO   r   r   )r=   rc   rd   r   r   r   r   s          r>   _Flag_PalestinezFlag._Flag_Palestine  s-   GG1aeQqS!C%(&*   	
c


1AaC#(   	
h1Q3s7!A#ae   	
haAaCGaea$C &
$AO O O	hr?   c           	         t           }t                      }t          dd|dz  |t          j        t          j        d          }|                    |           t          |dz  dz  |dz  |dz  t          j        d d          }|                    |           t          |dz  dz  |dz  |d	z  t          j        d d          }|                    |           t                      }d
|_
        |dz  |_        |dz  dz  |j        dz  z   |_        |dz  |_        t          j        |_        d |_        |                    |           |S )Nr   rU   rZ   r   rD   r   r  g(\?gQ?   r         ?)rt   r	   r   r   r   rO   rL   r   r   r0   r4   r8   rJ   rK   r:   r;   )r=   rc   rd   r   whitecircle	redcirclewss          r>   _Flag_TurkeyzFlag._Flag_Turkey  sF   GG1a1a
&,l   	
c


!D&!3!C%(   	
k$zqu$
  	 	
iVVC%#qy$#'	b			r?   c                    t           }t                      }|| _        |                    t	          dd||t
          j        t
          j        d                     |                    t          |dz  |dz  |dz  ||dz  z
  t
          j	        t
          j	        |dz                       |                    t          |dz  |dz  ||dz  z
  |dz  t
          j	        t
          j	        |dz                       |S )Nr   rZ   rD   g      @rU   r   )
rt   r	   r   rL   r   r   r   rO   r   r   r   s      r>   _Flag_SwitzerlandzFlag._Flag_Switzerland  s   GG	d1aA6:V\_`aaabbb	dAcEQsUacQ#Y(8HWXY\W\_ _ _ 	` 	` 	`	dAcEQsUa3i1S5(8HVWX[V[] ] ] 	^ 	^ 	^r?   c                    t           }t                      }d|z  x}| _        |                    t	          dd||t
          j        d d                     |dz  }|dz  }|dz  }|}|}d}	dt          z  |	z  }
t          |	          D ]y}||
z  }t                      }t          |          |z  |z   |_        t          |          |z  |z   |_        |dz  |_        t
          j        |_        |                    |           z|S )	Nr   r   rZ   rD   r   r   rU   r   )rt   r	   r   rL   r   r   r   r   r]   r0   r   rJ   r   rK   r8   r   r:   )r=   rc   rd   r   centerxcenteryri   yradiusxradiusnStarsdeltarh   radgss                 r>   _Flag_EUzFlag._Flag_EU  s    GGa%DK	d1aA6?$\]^^^___##u"Vv 	 	AE'CBS&(BDS&(BDdFBGBLEE"IIIIr?   c                 	   t           }t                      }|dz  }|dz  x| _        }||||fd}|                    t	          dd||t
          j        d d                     |                    t          d|z  |dz  |dz  |d|z  z
  |d|z  z
  |dz  |dz  d|z  gt
          j        d d                     |                    t          |dz  |dz  d	|z  t
          j
        d d
                     |                    t          |dz  d|z  z
  dd|z  ddd|z  t
          j        d d	  	                   |                    t          |dz  |dz  d|z  ddd|z  t
          j        d d	  	                   |                    t          |dz  d|z  z
  dd|z  ddd|z  t
          j
        d d	  	                   |                    t	          dd||dz  d|z  z   t
          j        d d                     |                    t          d|z  |dz  |dz  |dz  d|z  z
  |d|z  z
  |dz  |dz  d|z  gt
          j        d d                     |                    t          |dz  |dz  d|z  ddd|z  t
          j
        d d	  	                    |dd	d            |ddd            |ddd            |dd d            |dd!d            |d"d#d            |d#d$d%            |dd&d%            |d'd(d%            |d)d*d%            |d+d,d%            |d-d.d%            |d"d!d%            |d d/d%            |d0d1d%            |d2d3d4            |dd d4            |d5d d4            |d+dd4            |d+d d4            |d6d d4            |d7d/d4            |d8d9d4            |d:d/d;            |d<d=d;            |dd>d?           d@}t          |          }dA|z  }dB|z  }	|dz  d|z  z
  }
d}t          |          D ]}dt          z  ||z  z
  dCz
  }t!          |          |	z  |
z   }t#          |          |	z  |z   }|d6k    rdD|z  }ndE|z  }t          t%          ||||         dF|d t
          j        G                    }|                    |           |                    |           |S )HNr   r   c                     t                      }t          j        |_        ||z  |_        |dz  | d|z  z  z   |_        |dz  |d|z  z  z   |_        |                    |           d S )NrD   r   )r0   r   r   r:   r8   rJ   rK   rL   )rJ   rK   r8   rd   r   rc   msts           r>   r   z"Flag._Flag_Brazil.<locals>.addStar  sc    B)BL1fBGcEa4!8n-BDcEa4!8n-BDEE"IIIIIr?   r   rZ   g333333?rD   r   g      @r  rU   g      !@rB   gfffffX@g5^I@   i`  r   gH@r6   r   gjt@   gau@g	@r   g      !r   g      g      g      r   g      g      g      ?g      r{   g      r   irY   g      g      @g	igr   g      r   r   r   g!r   r6  gɿgQ?gir   zORDEM E PROGRESSOg:I%:?g@gGe@n@r   r   r   )r   rI   r;   r:   )rt   r	   r   rL   r   r   greenr   r9   r   r  r   r   r   r]   r   r   r   r
   r_   )r=   rc   rd   rI  r   r   sTmpnTmprC  ri   r>  r?  rh   rD  rJ   rK   zg2s                     r>   _Flag_BrazilzFlag._Flag_Brazil  se   GGdFr6"a !Q!q 	 	 	 	 	
d1aA6<tYZ[[[\\\	gQ3!C%!SU)QAYPQRUPUXYZ]X]`cde`ef"(-tQRT T T 	U 	U 	U	f#!C%3q5%{tL L L 	M 	M 	M	eQsUQqSM1c!eRs1u$.4QP P P 	Q 	Q 	Q	eQsUaeeAgsCq$.4QP P P 	Q 	Q 	Q	eQsUQqSM1ac4ac$kdK K K 	L 	L 	L	d1aQsUc!eO%|4QP P P 	Q 	Q 	Q	gQ#3#!3q5	STUXSX]^_b]bdghidij"(-tQRT T T 	U 	U 	U	eAcE1S5%'3uQw$kdK K K 	L 	L 	L 	CSR4$s$sT$$t$t"T$tBt$tT$45$s$s$s$s$sT#CT$R"S"4yyt#aS51Q3-t 	 	AB$5.-/C#hhvog%A#hhvog%AAvvF6vaDG6FF F F G GBIIcNNNEE"IIIIr?   N)/rN   rm   rn   ro   rp   r   rq   isColor	isBoolean	validFlagrs   r   r7   r   r   r   rl   r   rS   r   r   r   r   r   r   r   r   r   r  r	  r  r  r  r  r!  r#  r%  r(  r*  r,  r.  r1  r3  r:  r<  rF  rV  ru   r?   r>   rw   rw      s         wG$W3EFFF!\)-LMM<	===  H F  R R R  	 	 	# # #    (  "* * *X  "  $  ,  ,  <  $  $  ,  "  B  "      "  "        &  <  (  4  @
 
 
  .N N N N Nr?   rw   c                 0    t                      }| |_        |S r   )rw   ry   )r   flags     r>   makeFlagr\  2  s    66DDIKr?   c                      d} d}g d}dx}}d}d}|D ]}|st          dd          }t          |          }|                    |          }	||	d	z           |_        ||_        |                    |           |                    t          |j        |j        d
z  z   |j        d| z  z
  |t          j	        d|                      |	d	z  r|dz
  }|	d	z  r|dk     s||d         k    r(t          j        |d|z  d|dz   z             |}|dz   }d}dS )zfThis function produces three pdf files with examples of all the signs and symbols from this file.
    rC   )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-   i  r   Ni  i  rU   rD   rE   rF   rG   }   r   zflags%02d.pdfzflags.py - Page #%dr{   )r   r\  indexrJ   rK   rL   r
   r8   r   rO   r   
drawToFile)
rR   XflagsrK   Y0r   rP   r   r[  rh   s
             r>   testre  7  sb   
 MA  E6 LA	AA  &gc#&&!~~KK1Q3	d	fTVTYs]+TVS5F-GM[ [ [ 	\ 	\ 	\Q3AGaC 	AaCCD%)OO OA$57LaPQc7RSSSA!AA r?   __main__) __version__ro   reportlab.libr   reportlab.lib.validatorsreportlab.lib.attrmapreportlab.graphics.shapesr   r   r   r   r	   r
   r   r   reportlab.graphicsr   *reportlab.graphics.widgets.signsandsymbolsr   r   mathr   r   r   OneOfrY  rt   r0   rw   r\  re  rN   ru   r?   r>   <module>rp     s   	4 !           & & & & # # # # ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ( ( ( ( ( ( > > > > > >           
%9 	> 	7 7 7 7 77 7 7 7rl
 l
 l
 l
 l
7 l
 l
 l
\  
5 5 5n ZDFFFFF r?   