+
    	iP'                     Z    R t ^ RIHtHtHtHtHtHtHt ^RI	H
t
 ^RIHtHt RtR tR tR# )zDraw paths.)atan2cosisclosepiradianssintan)Matrix)	normalizepointachlmqstvzACHLMQSTVZc                    V \        V4      ,          V\        V4      ,          ,
          V\        V4      ,          V \        V4      ,          ,           3# )z1Rotate (x, y) point of given angle around (0, 0).)r   r   )xyangles   &&&Y/Users/agent/.openclaw/workspace/venv/lib/python3.14/site-packages/weasyprint/svg/path.py_rotater      s7    s5z>AE
N*AE
NQU^,KKK    c           	     "   VP                  RR4      p\         F  pVP                  VRV R24      pK  	  \        V4      pRpV P                  P
                  ! V!   RpV'       Ed(   VP                  4       pVP                  R^4      ^ ,          \        9   dD   V R2P                  R^4      w  rCVR 9   d%   VR9  d   VP                  P                  V4       TpMXR8X  d   RpM	VR8X  d   R	pVR!9   d   RpVR!9  d   Xf   TpVR
9   EdV   Vw  r\        WV4      w  rpVP                  R^4      w  r\        \        V4      4      pV^ ,          VR,          P                  4       r=V^ ,          VR,          P                  4       r>\        WV4      w  pppVR8X  d   W,          pVV	,          p\        V4      \        V4      rVR"9  g   VR"9  d   EKv  \        V4      \        V4      rV
'       d	   V'       g3   V'       d   V^ ,          \        9  d   V R2pMRpRV RV RV V 2pEK  \        W,
          VV	,
          V) 4      w  ppW,          pVV,          p\!        VV4      pV^,          V^,          ,           R,          p^ p\#        V
V^,          4      p
V^,          pV
^,          V^,          ,
          R,          pW8X  d   V) p\        VVV4      w  pp\        VVV4      w  pp\!        V) V) 4      p\!        VV,
          VV,
          4      pV^ 8  g   V^ 8  d+   V^\$        ,          ,          pV^\$        ,          ,          pK8  VP                  P                  V) V) 34       \'        \)        VV,
          4      \$        4      '       dI   V'       d   VV8  d   V^\$        ,          ,          pMrV'       g   VV8  d   V^\$        ,          ,          pMNV\)        VV,
          4      \$        8  8X  d1   VV8  d   V^\$        ,          ,          pMV^\$        ,          ,          pV'       dG   VV,
          ^,          pVVV,           3VV,           V^V,          ,           3V^V,          ,           V33pMVV33p\+        \-        V4      \/        V4      \/        V4      ) V,          \-        V4      V,          W4      pR#\1        V^ ,          ^,          V^ ,          ^ ,          ,
          ^,          4      ,          pV EF`  w  ppVP3                  VV
\-        V4      ,          ,           VV
,          \/        V4      ,          ,
          VV
\/        V4      ,          ,           VV
,          \-        V4      ,          ,           4      pVP3                  VV
\-        V4      ,          ,           VV
,          \/        V4      ,          ,           VV
\/        V4      ,          ,           VV
,          \-        V4      ,          ,
          4      pVP3                  VV
\-        V4      ,          ,           VV
\/        V4      ,          ,           4      p V P                  P4                  ! . VOVOV O5!   EKc  	  VV3pEMVR9   d   \        WV4      w  rp\        WV4      w  p!p"p\        WV4      w  pppVR8X  d<   Vw  p#p$VV#,          pV!V#,          p!VV#,          pV	V$,          p	V"V$,          p"VV$,          pVP                  P                  \!        V	V",
          VV!,
          4      \!        VV",
          VV!,
          4      34       V P                  P5                  WV!V"VV4       VV3pEMVR9   d   V R2P                  R^4      w  p#pVw  p%p&V P                  V#^ V4      w  p#p'VR8X  d
   V#V%,          p#V#V%8  d   ^ M\$        pVP                  P                  \$        V,
          V34       V P                  P7                  V#V&4       V#V&3pEMhVR9   d   \        WV4      w  p#p$pVw  p%p&VR	8X  d   V#V%,          p#V$V&,          p$\!        V$V&,
          V#V%,
          4      pVP                  P                  \$        V,
          V34       V P                  P7                  V#V$4       V#V$3pEMVR9   d   \        WV4      w  p#p$pV'       d#   VR9  d   VP                  P                  R4       VR8X  d!   V#V^ ,          ,          p#V$V^,          ,          p$V P                  P                  V#V$4       V#V$3pEMEVR9   EdI   Vw  rVR9   d   \        WV4      w  p!p"pM2VR9  d   X#X$V#V$3w  p!p"ppVX,           X!,
          p!V	X,           X",
          p"\        WV4      w  pppVR8X  d   V!V,          p!V"V	,          p"VR9   d   W,          pVV	,          pV!^,          ^,          V^,          ,           p(V"^,          ^,          V	^,          ,           p)V!^,          ^,          V^,          ,           p*V"^,          ^,          V^,          ,           p+V P                  P5                  V(V)V*V+VV4       VP                  P                  R4       VV3pEMVR9   d   Vw  p#p$VR9   d   XVX!,
          ,           MT#pVR9   d   XVX",
          ,           MT$p	\        WV4      w  p!p"p\        WV4      w  pppVR8X  d%   V!V#,          p!VV#,          pV"V$,          p"VV$,          pVP                  P                  \!        V	V",
          VV!,
          4      \!        VV",
          VV!,
          4      34       V P                  P5                  WV!V"VV4       VV3pMVR9   d   V R2P                  R^4      w  p$pVw  p%p&V P                  ^ V$V4      w  p'p$VR8X  d
   V$V&,          p$V$V&8  d   \$        ^,          M\$        ) ^,          pVP                  P                  \$        V,
          V34       V P                  P7                  V%V$4       V%V$3pMFVR9   d@   X'       d8   VP                  P                  R4       V P                  P9                  4        TpVR9  d   VP                  P                  V4       VP                  4       pTpEK0  R# )$zDraw path node.d  NmMMLmlaA:   NNazL g      ?cCchHhlLzZqQtTqQQqTtqqtsScsCSsvVv)    r0   )NzZ)Nr   r   r1   r2   )r0   r   gUUUUUU?)getPATH_LETTERSreplacer
   streammove_tostripsplitverticesappendr   r   floatintboolr   r   maxr   r   absr	   r   r   r   transform_pointcurve_toline_toclose),svgnode	font_sizestringlettercurrent_pointlast_letterfirst_path_pointx1y1rxryrotationlargesweepx3y3next_letterxeyey_scaler   xcycangle1angle2stepanglesmatrixr#   point1point2point3x2y2r   r   old_xold_y_xq1yq1xq2yq2s,   &&&                                         r   pathrm      s,   XXc2F!F816 vF MJJ&K
&<<Q"l2!'l11#q9NF..63E$$]3#0 s]Fs]F44#33 (,T> #FB"3	:NBF%||C3HuX/H
 #1Ivbz'7'7'96"1Ivbz'7'7'96 #3	:NBF}b u:s5z5F"e6&9;U5 RfQi|; &,HA,K"$KbT2$a}VH= RWb2gy9FBgG'MB "bME 'B!G#*BB RaB aB'B!G#*B ~S RU+FBRU+FB B3_F27BG,F1*
!b& !b&  MM  6'F7!34 s6F?+R00fvoa"f$FFVOa"f$F3v/"45F?a"f$Fa"f$F 1,Vd]+d]FQX$56a$h&/1
 "6*, Hs8}X(#h-'*AF VAYq\F1IaL8A=>>A"(//c&k))AFS[,@@c&k))AFS[,@@B  //c&k))AFS[,@@c&k))AFS[,@@B  //c&k))c&k))+ 

##>V>f>v> #) FMt^"3	:NBF"3	:NBF"3	:NBF}$1aaaaaaMM  b2grBw'rBwR)@"B CJJBB7FMt^"81,,S!4IAv(LE599Q9-DAq}U
UAEMM  "u*e!45JJq%(uHMt^ i8LAq&(LE5}U
U
!e)QY/EMM  "u*e!45JJq!$qDMt^ i8LAq&{$6$$T*}]1%%]1%%JJq!$qDMv"FB~!&sI!>Bf,%&1aZNBB"Wr\"Wr\"3	:NBF}bb~bq&1*rAv%Cq&1*rAv%Cq&1*rAv%Cq&1*rAv%CJJS#sB;MM  (FMt^ DAq#.&#8rBwaB#.&#8rBwaB"3	:NBF"3	:NBF}aaaaMM  b2grBw'rBwR)@"B CJJBB7FMt^"81,,S!4IAv(LE599Q9-DAq}U
%iBFbS1WEMM  "u*e!45JJua(!1HMt^ 0MM  &JJ,MMM  /y r   N)__doc__mathr   r   r   r   r   r   r   r`   r	   utilsr
   r   r4   r   rm    r   r   <module>rr      s(     ; ; ;  #%L
Ir   