+
    bIi06                         Rt ^ RIHtHtHt ^ RIHt ^ RIHtH	t	H
t
 ^RIHtHtHtHt ^ RIHt  ! R R]4      tR tR	 tR
 tRR lt]! 4       P3                  ]! 4       4       ^ ^ ]RR^^ R3R ltR# )setFontRenderPMError)getFont
unicode2T1stringWidth)	ShapedStr)open_and_readisBytesrl_exec)_baseGFontName_PATH_OP_ARG_COUNT_PATH_OP_NAMES
definePath)exc_infoc                       ] tR t^tRtR# )r    N)__name__
__module____qualname____firstlineno____static_attributes__r       ځC:\Users\petid\OneDrive\Desktop\Maestro\MAESTRO CLAUDE\MAESTRO\maestro-backend\venv\Lib\site-packages\reportlab/graphics/utils.pyr   r      s    r   c                 >   \        \        \        \        4       R ,          4      4      w  r#^ RIHp VP                  ^8  d   ^ RIpVP                  P                  VP                  P                  VP                  4      R4      p\        RV: RVP                  V4      : 24       R F(  p\        RV: R\        \        WF4      4      : 24       K*  	  R\        V 4      : R	\        V4      : R
V: RV: R2	pVR,          p\!        V\#        \$        R7      4       R# ):N   N)	rl_configNfontsz!!!!! z: z!!!!! rl_config.z = z&raise RenderPMError("Error in setFont(,z$) missing the T1 files?\nOriginally z")z
 from None)r   )T1SearchPathTTFSearchPath)listmapstrr   	reportlabr   verboseospathjoindirname__file__printlistdirreprgetattrr
   dictr   )fontNamefontSizes1s2r   r%   _codes   &&      r   
_errorDumpr5      s    #c(*R.)*FB#!GGLL););<WE"**Q-011Aqgi6J1KLM 2imnviwx|  ~F  yG  HJ  KM  NDLDDM23r   c                     V P                  W4       R#   \         d   pTP                  ^ ,          P                  R4      '       g   \	        Y4       ^ RIHp  \        T4      pT! YP                  P                  4       TP                  P                  \        4       M   \	        Y4        M; iT P                  Y4        Rp?R# Rp?ii ; i)    zCan't find font!)
makeT1FontN)r   
ValueErrorargsendswithr5   _rl_renderPMr8   r   face
findT1Fileencodingvectorr   )gsr/   r0   er8   fs   &&&   r   r   r      s    &


8% 
&vvay!!"455x)+	*!Ax 1 1 3AJJ4E4EmT	*x)


8%%
&s-    C9C	AB C	 B/-C		Cc                 P    \        V 4      V 8X  d   \        V 4      # \        V ^4      # )   )intround)ns   &r   pathNumTruncrI   .   s!    
1vqyQ-1:r   Nc           	      j  a aaa	a
a ^ RI HpHp S e   S pVR8X  d   VR8w  d   RMRo MW!9   d   Vo M\        RV: R24      hS 3\        ;QJ d    . V 3R	 lV 4       F  NK  	  5M! V 3R	 lV 4       4      ,           oS F}  o S R8X  d;    ^ RIo	^ RIo
 ! T	T
3R
 lR4      o^ ^ \        RR^^ R3T3R llp\        TSR7      u # S R8X  g   KM   ^ RI
pRR lo^ ^ \        RR^^ R3T3R llp\        TS\        R7      u # 	  V3R lp\        WfWfR7      #   \         d     K  i ; i  \         d     K  i ; i)r7   )	textPathsrenderPMBackendNbackend	rlPyCairofreetype	_renderPMz
textPaths=z7 should be one of 'backend', 'freetype' or '_renderPM')c              3   8   <"   T F  qS8w  g   K  Vx  K  	  R # 5iNr   ).0r3   tps   & r   	<genexpr>(__makeTextPathsCode__.<locals>.<genexpr><   s     03aR%3s   
c                      <a  ] tR t^Dt o  ZP                   ZP
                  ,           ZP                  ,          tR tVV3R lt	R t
R tR tR tRR lt^ ^ ]R	3R
 ltRtV tR# ))__makeTextPathsCode__.<locals>.FTTextPathc                    / V n         R # rR   )faces)selfs   &r   __init__2__makeTextPathsCode__.<locals>.FTTextPath.__init__F   s	    !#DJr   c                  < WP                   9  d   \        V4      pV'       g   \        R V: R24      hVP                  '       d)   VP                  P
                  pSP                  V4      pM9\        VP                  RR4      pV'       g   VP                  P                  4       pSP                  V4      pWB3V P                   V&   V P                   V,          # )zfont z has not been registeredpfbFileNameN)
rZ   r   r9   _dynamicFontr=   	_ttf_dataBytesIOr-   r>   Face)r[   r/   fontpath_or_streamr=   rO   ios   &&   r   r   1__makeTextPathsCode__.<locals>.FTTextPath.setFontI   s    zz1&x0#",uXL@X-Y"ZZ,,,-1YY-@-@N .0ZZ-GN-4TYY}T-RN#1151E1E1G'}}^<04{

8,::h//r   c                    V P                   '       d   V P                  R4       V P                  RV P                  VP                  4      V P	                  VP
                  4      34       R# )	closePathmoveToNri   )PP_appendxptxyptyr[   actxs   &&&r   move_to1__makeTextPathsCode__.<locals>.FTTextPath.move_to\   sA    vvvt}}^<MM8DHHQSSM$((133-"HIr   c                    V P                  R V P                  VP                  4      V P                  VP                  4      34       R# )lineToNrm   rn   ro   rp   rq   rr   s   &&&r   line_to1__makeTextPathsCode__.<locals>.FTTextPath.line_to`   s-    MM8DHHQSSM$((133-"HIr   c           	     L   V P                   '       d   V P                   R,          RR MVP                  VP                  3w  rEV P                  VP                  4      pV P	                  VP                  4      pV P                  VP                  4      pV P	                  VP                  4      p	V P                  RWFV,
          ^,          ^,          ,           WWV,
          ^,          ^,          ,           WhV,
          ^,          ,           WyV,
          ^,          ,           W34       R# )zusing the cubic equivalentNcurveTo)rl   ro   rq   rn   rp   rm   )
r[   rs   brt   x0y0x1y1x2y2s
   &&&&      r   conic_to2__makeTextPathsCode__.<locals>.FTTextPath.conic_toc   s    /3vvvDFF2JrsOACC:EB!##B!##B!##B!##BMM9RR%A-=bb5!)Q>NrVXSXZ[R[|\^ce`egh_h\hik"opr   c                b   V P                  R V P                  VP                  4      V P                  VP                  4      V P                  VP                  4      V P                  VP                  4      V P                  VP                  4      V P                  VP                  4      34       R# )r}   Nry   )r[   rs   r   crt   s   &&&&&r   cubic_to2__makeTextPathsCode__.<locals>.FTTextPath.cubic_tol   s    MM9TXXacc]488ACC=RSRURUW[W_W_`a`c`cWdeiememnonqnqersws{s{|}||  tA  #B  Cr   Nc                <    V P                   P                  R4       R# )ri   Nrk   )rl   append)r[   rt   s   &&r   
close_path4__makeTextPathsCode__.<locals>.FTTextPath.close_patho   s    FFMM.1r     c           	     ,  aaa V P                  V4      w  rxWWP                  ,          oVS,          oVS,          o. V n        V P                  P                  V n        VP                  R ^ 4      p	V	'       d   VV3R lV n        VV3R lV n        MVV3R lV n        VV3R lV n        VR,          S,          p
V P                  p\        V\        4      '       d7   VP                  pVP                  R,          pVP                  P                  pMRp\        V4       EFE  w  ppVR8X  d   ^ oSV
,          oK  V'       dd   W,          pVP                  X,          pVP                   V,          pSV,          oSV,          oVP#                  X\%        V4      ,          V4       MVP'                  VV4       VP(                  P*                  P-                  W P.                  V P0                  V P2                  V P4                  R	7       V'       d   SX,          oSX,          oSV'       d   XP6                  X,          MVP(                  P8                  P:                  ,          oEKH  	  V P                  '       d   V P	                  R
4       V P                  # )truncatec                 6   < \        SV S,           ,          4      # rR   rI   ro   __dx__scales   &r   <lambda>F__makeTextPathsCode__.<locals>.FTTextPath._text2Path.<locals>.<lambda>{       \%6:J-Kr   c                 6   < \        SV S,           ,          4      # rR   r   rq   __dy__r   s   &r   r   r   |   r   r   c                 $   < SV S,           ,          # rR   r   r   s   &r   r   r   ~       UAJ-?r   c                 $   < SV S,           ,          # rR   r   r   s   &r   r   r      r   r   g333333?r   N
)ru   rz   r   r   rk   )r   units_per_EMrl   r   rm   poprn   rp   ftLFlags
isinstancer   __shapeData__r=   charToGlyph	enumeratex_offsety_offset
load_glyphord	load_charglyphoutline	decomposeru   rz   r   r   	x_advancemetricshoriAdvance)r[   textro   rq   r/   r0   kwdsr=   rd   r   
lineHeightr   sdatadscalefontC2Gir   sd
sdx_offset
sdy_offsetr   r   r   s   &&&&&&,             @@@r   
_text2Path4__makeTextPathsCode__.<locals>.FTTextPath._text2Pathr   s   !%h!7JD$%6%66EuWFuWFDF$(FFMMDM#xx
15H#K#K#?#?!)#e!3J#}}H!$y11 $ 2 2!%!2!2T!9"&))"7"7 $(!d7%&F"j0F$ !&B)+V);J)+V);J"j0F"j0F OOGCFOHE NN1h7

**44T<<Y]YeYeptp}p}  IM  IV  IV4  W "j0F"j0F",,v"5DJJDVDVDbDbb%  /& vvvt}}^<66Mr   )rl   rm   rZ   rn   rp   rR   )r   r   r   r   FT_LOAD_DEFAULTFT_LOAD_NO_SCALEFT_LOAD_NO_BITMAPr   r\   r   ru   rz   r   r   r   r   r   r   __classdictcell__)__classdict__rO   rf   s   @r   
FTTextPathrX   D   sd     #33h6O6OORZRlRll$0&JJqC2 ./!nW[ +" +"r   r   r   startc	                  < \        V4      p	V	P                  '       d%   V	P                  '       g   \        RV,          4      h. P                  p
VR8X  g3   \        WV4      pVR8X  d
   W,
          pMVR8X  d   WR,          ,
          pVf   S! 4       pV	P                  '       d(   V
! VP                  WW#WFVR7      4       V
P(                  # \        V 4      '       d    V P                  R4      p \        W	.V	P                  ,           4      p\        V4      ^,
          p\        V4       F  w  pw  pp\!        V\"        4      '       d   VP                  VP$                  4      pV
! VP                  VWVP&                  WFVR7      4       VV8w  g   Ki  VVP                  VV4      ,          pK  	  V
P(                  #   \         d|   pTP                  R	,          w  r\        TP                  R
,          TP                  ^,          : RT \        T^
,
          ^ 4      T : RYT : RYT^
,            : 23,           !  hRp?ii ; i)zfreetype text2PathDescription(text, x=0, y=0, fontName='fontname',
fontSize=1000, font = 'fontName',
anchor='start', truncate=1, pathReverse=0, gs=None)
=text2PathDescription doesn't support multi byte fonts like %rr   endmiddle       @N)ro   rq   r/   r0   r   pathReverseutf8r      NNr   Nr   --><--)r   
_multiByter`   r9   extendr   r   r	   decodeUnicodeDecodeErrorr:   maxr   substitutionFontslenr   r   bytesencNamer/   __self__)r   ro   rq   r/   r0   anchorr   r   rA   rd   P_extendtextLenrB   r   jFTnm1rC   tr   s   &&&&&&&&&          r   text2PathDescription3__makeTextPathsCode__.<locals>.text2PathDescription   s8    x(???4+<+<+<$%dgo%opp99w)$(CGu}I)
N:#B$$$R]]4aS[  |G]  H  I  ((( t}}S#';;v#6D $D0F0F)FGBb'!)C%.r]	6Aq%a..AHHQYY4G q1!**V^  J  "K  Lc6q(!;;A	 &3
  (((  2 S"#&&+CA"4qvvbzYZY_Y_`aYbYbcghklmnplpqrhstucvw{~  xA  BF  IJ  KM  IM  BN  DO  CQ  8Q  #S  SSs   F; ;IA6H<<I)r   r   c           
      `   . p. p. P                   pV '       dE   \        V 4      ^8X  d5   V ^ ,          ^ ,          R8X  d    RV ^ ,          R,          ,           3V ,           p T ;'       g    R	R
,            EF/  pV^ ,          pV'       d   VR9   d   V^ ,          R8X  dh   V^  V'       d:   VR,          VR,          uVR&   VR&   VP                  4        VP                  4        VP                  ^ R4       VP                  R4       ^ pV'       d   \	        \        \        V4      4      pV FH  p	V\        \        P                  ! V	4      ,          ,           p
V! V	3\        WHV
 4      ,           4       T
pKJ  	  . p. pVP                  V4       VP                  VR,          4       EK2  	  VP                  # )   rx   moveToClosed:r   NNrj   :r7   Nr   :r   Nr   ri   )r   r   ))r   )rj   r   r   )r   r   reverseinsertr    r!   rI   r   r   indextupler   r   )Gr   r   Orl   R_appendgopr   or   s   &&&        r   processGlyph+__makeTextPathsCode__.<locals>.processGlyph   sa   99QqtAw'8*1Q4835a7A''r;..A1BR#CCQ4/ !!*23D'!D'$$ !		 !		HHQx0HH[1#c,q.A)BQ!"A !$6~7K7KA7N$O OA$aT5Q=%89 !A "# HHRLHHQrUO) /*  (((r   c	                  < \        V4      p	V	P                  '       d%   V	P                  '       g   \        RV,          4      h. P                  p
VR8X  g3   \        WV4      pVR8X  d
   W,
          pMVR8X  d   WR,          ,
          pVf   ^ RIHp V! ^^4      p\        WV4       V	P                  '       d6   VP                  WV4       F  pV
! S! WVR7      4       K  	  V
P*                  # \        V 4      '       d    V P                  R	4      p T	p\        W	.V	P                   ,           4      p\#        V4      ^,
          p\%        V4       F  w  pw  ppVV8w  d   \        VVP&                  V4       TpVP                  VW4       F  pV
! S! WVR7      4       K  	  VV8w  g   K[  VVP                  VP                  VP(                  4      V4      ,          pK  	  V
P*                  #   \         d~   pTP                  R
,          w  pp\        TP                  R,          TP                  ^,          : RT \        T^
,
          ^ 4      T : RYT : RT TT^
,            : 23,           !  hRp?ii ; i)z_renderPM text2PathDescription(text, x=0, y=0, fontName='fontname',
fontSize=1000, font = 'fontName',
anchor='start', truncate=1, pathReverse=0, gs=None)
r   r   r   r   r   N)gstate)r   r   r   r   r   r   r   r   )r   r   r`   r9   r   r   r<   r   r   _stringPathr	   r   r   r:   r   r   r   r   r   r/   r   r   )r   ro   rq   r/   r0   r   r   r   rA   rd   r   r   r   r   rB   r   r   fcr   r   rC   r   r   s   &&&&&&&&&             r   r   r      s[    x(???4+<+<+<$%dgo%opp99w)$(CGu}I)
N:3!BH-$$$^^D15 ak!Z[ 6(  (((# t}}S#';;v#6D B#D0F0F)FGBb'!)C%.r]	6Aqb5#Bqzz(;!"B!#!!6A$\!R]%^_ "7c6qxx		/BH!MMA &3  (((  2 S"#&&+CAa"4qvvbzYZY_Y_`aYbYbcghklmnplpqrhstucvw{~  xA  BF  GH  IJ  KM  IM  BN  DO  CQ  8Q  #S  SSs    G* *I25A8I--I2)r   r   r   c                  "   < \        R S: 24      h)zThis installation of reportLab has neither PYCAIRO or RENDERPM extras installed.
It cannot create paths from text.
Could not create text2PathDescription for using backends from )RuntimeError)r:   r   TPs   *,r   r3    __makeTextPathsCode__.<locals>._  s"     $??Af H I Ir   )r   r   r   r   )r   r7   )reportlab.rl_configrK   rL   r9   r   rO   ImportErrorrf   r   r.   r<   r   )rT   _TPrK   rL   r   r<   r3   r   r   rO   rf   r   s   f&     @@@@@r   __makeTextPathsCode__r  3   sF   >	~2y)*K7Z[		:i]2ijkk
0300301	1Bz> Y" Y"v ./!nW[/6PQVZ")F -AZXX_#): ./!nW[/6PQVZ))T -A|dkllg j	I QQk  J  s$   DD#D D #D21D2r   r   c	                 \    V	P                  R \        4      p
\        V
! WW#WEWgVR7	      3/ V	B # )r   )ro   rq   r/   r0   r   r   r   rA   )r   r   r   )r   ro   rq   r/   r0   r   r   r   rA   r   t2pds   &&&&&&&&&, r   	text2Pathr    s@    88*+?@Dd4a%Xbdf nhln nr   )r   rI   r   r   r  r   )N)rO   rP   )__all__reportlab.pdfbase.pdfmetricsr   r   r   reportlab.pdfbase.ttfontsr   reportlab.lib.utilsr   r	   r
   shapesr   r   r   r   sysr   	Exceptionr   r5   r   rI   r  globalsupdater  r   r   r   <module>r     sx   
 J I / ? ? R R 	I 	4&
cRJ 	  &( )1~dnr   