+
    G-jº  ã                   óh   € ^ RI Ht ^ RIHt ^ RIHt ^ RIHt ^ RIH	t	 ]! ]
4      t ! R R]4      tR# )	é    )Ú	getLogger)ÚFusion)ÚNumpyHelper)Úhelper©Ú	OnnxModelc                   óD   a a€ ] tR t^t oV3R lV 3R lltR tRtVtV ;t# )ÚFusionBiasGeluc                ó    <€ V ^8„  d   QhRS[ /# )é   Úmodelr   )ÚformatÚ__classdict__s   "€Úy/Volumes/fast/ai/experiments/nudenet-smoke/.venv/lib/python3.14/site-packages/onnxruntime/transformers/fusion_biasgelu.pyÚ__annotate__ÚFusionBiasGelu.__annotate__   s   ø€ ÷ 8ñ 8™iñ 8ó    c                ób   <€ V'       d   \         SV `  VR R R4       R# \         SV `  VRR4       R# )ÚFastGeluzadd biasÚBiasGeluÚGeluN)ÚsuperÚ__init__)Úselfr   Úis_fastgeluÚ	__class__s   &&&€r   r   ÚFusionBiasGelu.__init__   s*   ø€ ßÜ‰GÑ˜U J°
¸JÖGä‰GÑ˜U J°Ö7r   c           
     ó¾  € VP                   pVR 8X  d   RMRp\        VP                  4      ^8w  d   R# V P                  P	                  VRR.^ R.4      pVf   R# Vw  rxRp	R	p
\        VP                  4       F>  w  r¼V P                  P                  V4      pVf   K&  Tp
\        P                  ! V4      p	 M	  V	f   R# \        V	P                  4      ^8w  d   R# W.pV P                  P                  WáP                  ^ ,          .W#4      '       g   R# V P                  P                  V4       \        P                  ! VVP                  ^ ,          VP                  V
,          .VP                  V P                  P!                  WTR,           4      R7      pRVn        V P$                  P'                  V4       V P(                  V P*                  VP,                  &   R# )
r   r   r   NÚAddÚMatMulÚ	_AddBias_)ÚinputsÚoutputsÚnamezcom.microsoftéÿÿÿÿ)Úop_typeÚlenÚinputr   Úmatch_parent_pathÚ	enumerateÚget_initializerr   Úto_arrayÚshapeÚis_safe_to_fuse_nodesÚoutputÚnodes_to_removeÚextendr   Ú	make_nodeÚcreate_node_nameÚdomainÚnodes_to_addÚappendÚthis_graph_nameÚnode_name_to_graph_namer$   )r   ÚnodeÚinput_name_to_nodesÚoutput_name_to_nodeÚgelu_op_typeÚfuse_op_typeÚnodesÚaddÚmatmulÚbias_weightÚ
bias_indexÚir(   ÚinitializerÚsubgraph_nodesÚ
fused_nodes   &&&&            r   ÚfuseÚFusionBiasGelu.fuse   sœ  € Ø—|‘|ˆØ%1°VÔ%;‘zÀˆäˆt�z‰z‹?˜aÔÙà—
‘
×,Ñ,¨T°E¸8Ð3DÀqÈ$ÀiÓPˆØŠ=ÙØ‰ˆàˆàˆ
Ü! #§)¡)Ö,‰HˆAØŸ*™*×4Ñ4°UÓ;ˆKØÒ"ÙØˆJÜ%×.Ò.¨{Ó;ˆKÙñ -ð ÒÙÜˆ{× Ñ Ó! QÔ&Ùà˜ˆØ�z‰z×/Ñ/ØŸ[™[¨�^Ð,Ð.A÷
ò 
ñ à×Ñ×#Ñ# NÔ3ä×%Ò%ØØ—M‘M !Õ$ c§i¡i°
Õ&;Ð<Ø—K‘KØ—‘×,Ñ,¨\È+Õ;UÓVô	
ˆ
ð ,ˆ
ÔØ×Ñ× Ñ  Ô,Ø8<×8LÑ8Lˆ×$Ñ$ Z§_¡_Ó5r   © )	Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__r   rG   Ú__static_attributes__Ú__classdictcell__Ú__classcell__)r   r   s   @@r   r
   r
      s   ù‡ € ÷8ó 8÷+Mò +Mr   r
   N)Úloggingr   Úfusion_baser   Úfusion_utilsr   Úonnxr   Ú
onnx_modelr   rJ   Úloggerr
   rI   r   r   Ú<module>rW      s.   ðõ å Ý $Ý Ý  á	�8Ó	€ô2M�Vö 2Mr   