+
    f7iA  c            	       s^   ^ RI Ht ^ RIHt ^ RIHt ^ RIt^ RIt^t	]P                  ! RRR7      w  ttt]P                  ! RR	R7      t]! ]P                  ! R
]	^,           ,          RR7      4      t]! ]P                  ! R]	^,           ,          RR7      4      t]! ]! R R 4       !  4      t]! ]P                  ! R]	^,           ,          R	R7      4      tR .t]! ^]	^,           4       Fd  t]R!,          t];QJ d     . R ]! ]! ]4      4       4       F  NK  	  5M! R ]! ]! ]4      4       4       4      R",           t]P7                  ]4       Kf  	  ];QJ d    . R ] 4       F  NK  	  5M! R ] 4       4      tAA];QJ d    . R ]! ]4       4       F  NK  	  5M! R ]! ]4       4       4      t];QJ d    . R ]! ]4       4       F  NK  	  5M! R ]! ]4       4       4      t];QJ d    . R ]! ]4       4       F  NK  	  5M! R ]! ]4       4       4      tR t  ! R R]!4      t" ! R R]4      t#]! ]#^R7      t$]! ]#]R7      t%]! ]#]R7      t&]! ]#]],          R7      t']! ]#]],          R7      t(]! ]#]],          R7      t)]PT                  R3R lt+],R8X  d   ^ RIt]PZ                  R,          '       dr   ]PZ                  ^,          t.]! ]PZ                  R,          ]PZ                  R,          4       U Uu. uF  w  rV ]/! V4      3NK  	  upp t0]+! ].]0]PT                  R7       R# R# R# u upp i )#    )BasePen)partial)countNzt x yTZrealcFzx:%dzy:%dc              #   sz   "   T F1  p\         P                  ! R \        ^,           V3,          RR7      x  K3  	  R# 5i)zp:%d[%s]Tr   N)spsymbolsn).0Zw   & =/usr/lib64/python3.14/site-packages/fontTools/misc/symfont.py	<genexpr>r      s+     M1

:Q
2>>s   9;Z01zc:%dc              #   sn   "   T F+  p\         V^,
          ,          \         V,          ,           x  K-  	  R# 5i   N)last)r	   jr
   r   r   r      s&     A0@1a!etAw&&0@s   35c              #   s>   "   T F  p\        VR R 4      x  K  	  R # 5i)N)tuple)r	   Zitemr
   r   r   r      s      M9LE$s),,9Ls   c              #   s   a"   T FL  w  op\         ;QJ d     . V3R  l\        V4       4       F  NK  	  5M! V3R  l\        V4       4       4      x  KN  	  R# 5i)c              3   s   <"   T F;  w  rV\         V,          ,          ^\         ,
          SV,
          ,          ,          x  K=  	  R# 5ir   )t)r	   ir   r      &  r   r   <genexpr>.<genexpr>   s2     	F4EDA!ad(a!eQ'
'
'4Es   AAN)r   	enumerate)r	   Zcoeffsr      & @r   r   r      sB      3	6 
E	FIf4E	FEE	FIf4E	FFF3   AAAc              #   s   a"   T FL  w  po\         ;QJ d     . V3R  l\        ^4       4       F  NK  	  5M! V3R  l\        ^4       4       4      x  KN  	  R# 5i)c              3   sb   <a"   T F#  o\        V3R  l\        S4       4       4      x  K%  	  R# 5i)c              3   s^   <"   T F"  w  r\         V,          S,          V,          x  K$  	  R # 5iN)P)r	   r   	bernsteinr   r   r   r   Z<genexpr>.<genexpr>.<genexpr>!   s%     J4ILAAaDGi4Is   *-Nsumr   )r	   r   
bernsteinss   &@r   r   r       s+      
A 	JIj4IJJJs   +/N)r   ranger	   r   r   r   r   r   r      sR      
 8:	 
E 
q
EE 
q
   8r   c              #   s\   "   T F"  w  r\        R  \        V4       4       4      x  K$  	  R# 5i)c              3   sN   "   T F  w  r\         V,          V,          x  K  	  R # 5ir   )C)r	   r   r      &  r   r   r   '   s      C-B\Q!y-Bs   #%Nr   r!   r#   r   r   r   &   s,      7 CYz-BCCC7   *,c                 sF   \         P                  ! \         P                  ! V 4      \        4      ) p V P	                  \
        V^ ,          \        V^,          /4      p \         P                  ! V \         P                  ! V^ ,          \        4      ,          \        ^ ^34      p V # r    )r   Z	integrateZsympifyysubsxZdiffr   )fZcurveXY   &&r   greenr+   ,   sk    	bjjmQ	''A	71:q'!*-.A
QQ//!Q;AH    c                   s,   a  ] tR t^3t o R tR tRtV tR# )_BezierFuncsLazyc                s     Wn         / V n        R # r   )_symfunc	_bezfuncs)selfZsymfuncr*   r   __init__Z_BezierFuncsLazy.__init__4   s    r,   c                s0   \        V^,           4       Uu. uF  pRV,          NK  	  pp\        V P                  \        V,          4      p\        P
                  ! VP                  \        \        R4      4      4      p\        P                  ! W44      # u upi )r   zp%d )
r    r+   r.   BezierCurver   	gcd_termscollectr   r   Zlambdify)r0   r   ZdZargsr)   s   &&   r   __missing__Z_BezierFuncsLazy.__missing__8   si    #(Q<0<a		<0$--Q0LL3q":./{{4## 1s   B)r/   r.   N)__name__
__module____qualname____firstlineno__r1   r6   __static_attributes____classdictcell__Z__classdict__   @r   r-   r-   3   s     $ $r,   r-   c                   sb   a  ] tR t^?t o / t]R 4       tRR ltR tR t	R t
R tR tR	 tR
tV tR# )GreenPenc                s    \        V4      pW P                  9   g   \        V4      V P                  V&   V P                  V,          # r   )str_BezierFuncsr-   )ZcelffuncZfuncstr   && r   _getGreenBezierFuncsZGreenPen._getGreenBezierFuncsB   s=    d)+++)9$)?Dg&  ))r,   Nc                sl    \         P                  ! W4       V P                  V4      V n        ^ V n        R# )r    N)r   r1   rD   _funcsvalue)r0   rB   Zglyphsets   &&&r   r1   ZGreenPen.__init__I   s)    (//5
r,   c                s    Wn         R # r   )_startPointr0   p0r*   r   _moveToZGreenPen._moveToN   s    r,   c                s    V P                  4       pWP                  8w  d   V P                  V P                  4       R # R # r   )_getCurrentPointrG   _lineTorH   r
   r   
_closePathZGreenPen._closePathQ   s3    ""$!!!LL))* "r,   c                sR    V P                  4       pWP                  8w  d   \        hR # r   )rK   rG   ZNotImplementedErrorrH   r
   r   _endPathZGreenPen._endPathV   s'    ""$!!!%% "r,   c                s    V P                  4       pV ;P                  V P                  ^,          ! W!4      ,          un        R# r   rK   rF   rE   )r0   p1rI   rC   r   rL   ZGreenPen._lineTo\   s+    ""$

dkk!nR,,
r,   c                s    V P                  4       pV ;P                  V P                  ^,          ! W1V4      ,          un        R# )   NrO   )r0   rP   p2rI   s   &&& r   _qCurveToOneZGreenPen._qCurveToOne`   s-    ""$

dkk!nRR00
r,   c                s    V P                  4       pV ;P                  V P                  ^,          ! WAW#4      ,          un        R# )   NrO   )r0   rP   rR   Zp3rI   s   &&&& r   _curveToOneZGreenPen._curveToOned   s-    ""$

dkk!nRR44
r,   )rE   rG   rF   r   )r7   r8   r9   r:   rA   ZclassmethodrD   r1   rJ   rM   rN   rL   rS   rU   r;   r<   r=   r>   r   r?   r?   ?   sD     L* *
+
&-15 5r,   r?   )rB   c                 sj   Ve   \        RV,          4       \        RV : RV : R2VR7       V F  w  rE\        RV,          VR7       K  	  \        RRVR	7       R EF  p\        V^,           4       UUu/ uFB  p\        ^4       F0  p\        V,          V,          \        \        .V,          V,          bK2  	  KD  	  p	ppV UUu. uF  w  rE\        V\        V,          4      NK  	  p
ppV
 Uu. uF6  p\        P                  ! VP                  \        \        R4      4      4      NK8  	  p
pV
 Uu. uF  qUP                  V	4      NK  	  p
p\        P                  ! V
R
R \        4        4       R7      w  r\        4        V F  w  rM\        RV,          VR7       K  	  V^8X  d   \        RVR7       M)V^8X  d   \        RVR7       MV^8X  d   \        RVR7       V F  w  rM\        RV: RV: 2VR7       K  	  \        VR7       \        V Uu. uF  qU^ ,          NK  	  upV4       F  w  rM\        RV: RV: 2VR7       K  	  EK  	  \        RV ,          VR7       V F$  w  rE\        RV: R\        V4      : R2VR7       K&  	  \        RVR7       R # u uppi u uppi u upi u upi u upi )Nz"""%s"""a  from fontTools.pens.basePen import BasePen, OpenContourError
try:
	import cython
except (AttributeError, ImportError):
	# if cython not installed, use mock module with no-op decorators and types
	from fontTools.misc import cython
COMPILED = cython.compiled


__all__ = ["z
"]

class zS(BasePen):

	def __init__(self, glyphset=None):
		BasePen.__init__(self, glyphset)
filez		self.%s = 0aT  
	def _moveTo(self, p0):
		self._startPoint = p0

	def _closePath(self):
		p0 = self._getCurrentPoint()
		if p0 != self._startPoint:
			self._lineTo(self._startPoint)

	def _endPath(self):
		p0 = self._getCurrentPoint()
		if p0 != self._startPoint:
			raise OpenContourError(
							"Glyph statistics is not defined on open contours."
			)
Z )ZendrW   Zbasicc              3   s\   "   T F"  p\         P                  ! R V,          4      x  K$  	  R# 5i)zr%dN)r   ZSymbol)r	   r   r
   r   r   Z printGreenPen.<locals>.<genexpr>   s      ;7aRYYuqy))7r$   )Zoptimizationsr   z!	@cython.locals(%s=cython.double)z	@cython.locals(x0=cython.double, y0=cython.double)
	@cython.locals(x1=cython.double, y1=cython.double)
	def _lineTo(self, p1):
		x0,y0 = self._getCurrentPoint()
		x1,y1 = p1
z	@cython.locals(x0=cython.double, y0=cython.double)
	@cython.locals(x1=cython.double, y1=cython.double)
	@cython.locals(x2=cython.double, y2=cython.double)
	def _qCurveToOne(self, p1, p2):
		x0,y0 = self._getCurrentPoint()
		x1,y1 = p1
		x2,y2 = p2
a=  	@cython.locals(x0=cython.double, y0=cython.double)
	@cython.locals(x1=cython.double, y1=cython.double)
	@cython.locals(x2=cython.double, y2=cython.double)
	@cython.locals(x3=cython.double, y3=cython.double)
	def _curveToOne(self, p1, p2, p3):
		x0,y0 = self._getCurrentPoint()
		x1,y1 = p1
		x2,y2 = p2
		x3,y3 = p3
z		z = z		self.z += zj
if __name__ == '__main__':
	from fontTools.misc.symfont import x, y, printGreenPen
	printGreenPen('%s', [z
		      ('z', z),z			     ]))r   rQ   rT   r2   )Zprintr    r   XYr+   r3   r   r4   r5   r   r'   Zcser   zipr@   )penNamefuncsrW   Z	docstringnamer)   r   r   r   r'   ZgreensZdefsZexprsrF   s   &&&&          r   printGreenPenr^   t   sc   j9$%	" G!	" %( o$40 		  %* /4QU|N|!U1X!Q!Q1%X|N:?@%wt%;q>*%@?EFv!",,qyyQ45vF(./1&&,/ff!;57;
 	KD5<4H  6 	 !V  !V
   KDu-D9   	4e4e!e4e<KDtU3$? =s x 
	 		
  tSV44@ 	+D!K O@F/j  5s   5AJ"J .<J&0J+J0
Z__main__:r   NN:rQ   NrQ   :rT   NrQ   rV   )r   r    r   r%   )1ZfontTools.pens.basePenr   Z	functoolsr   Z	itertoolsr   Zsympyr   Zsysr   r   r   r(   r&   r   r   rX   rY   rZ   r   r"   ZBinomialCoefficientr    r   r   ZlenZthisZappendr   ZBernsteinPolynomialr3   ZBezierCurveCr+   Zdictr-   r?   ZAreaPenZ
MomentXPenZ
MomentYPenZMomentXXPenZMomentYYPenZMomentXYPenZstdoutr^   r7   Zargvr[   Zevalr\   )r]   r)   s   00r   <module>r_      s   *    

**W4
(1aJJs	"**Vq1u%D
12	"**Vq1u%D
12	#MM
NO	"**Vq1u%E
23 h 	q!a%Ar"D5Ac$i0@A55Ac$i0@AADHDt$ 
 eM9LMeeM9LMM $e 23ee 23  
 e 
 ##67ee 
 ##67  u "#67uu "#67 	$t 	$'5w '5Z (
#XA&
XA&
hQU+hQU+hQU+ (+zzT u"p z
xx||((1+03CHHTNCHHTN0ST0SWT$Q0STgu3::6  
 Us   5L)