§
    kŠtj…- ã            	       óŽ  — d dl Z d dlZd dlZd dlZ	 d dlZn# e$ r  ed¦  «        d‚w xY wd dlmZmZm	Z	 d dl
mZ  ej        ej        ¦  «         ej        d¦  «        k    sJ ‚ ej        e¦  «        Zdd„Zd„ Zd„ Zd	„ Zd
„ Zd„ Zd„ Zd„ Zd„ Zd„ Zdd„Zd„ Zd„ Zd„ Z G d„ d¦  «        Zd„ Z edk    �r	 e ¦   «         Z!e "                    de!j#        z   ¦  «         e!j$        re "                    de!j$        z   ¦  «         e "                    d¦  «         e %                     ej&        e!j#        ¦  «        e!j'        e!j(        e!j)        e!j*        ¦  «        Z+e!j$        rde+rde!j,        r, ej-        e+e!j$        de!j.        e!j/        e!j0        d¬¦  «         n ej1        e+e!j$        ¦  «         e "                    d¦  «         dS dS dS dS ) é    NzOsympy is required for symbolic shape inference. Install with: pip install sympy)ÚhelperÚnumpy_helperÚshape_inference)Úversionz1.8.0c                 óf   ‡— ˆfd„| j         D ¦   «         }|rt          j        |d         ¦  «        S |S )Nc                 ó*   •— g | ]}|j         ‰k    ¯|‘ŒS © ©Úname)Ú.0ÚattrÚ	attr_names     €úd/var/www/html/CA-Chatbot/venv/lib/python3.11/site-packages/onnxruntime/tools/symbolic_shape_infer.pyú
<listcomp>z!get_attribute.<locals>.<listcomp>   s%   ø€ ÐGÐGÐG�d°´	¸YÒ0FÐ0FˆTÐ0FÐ0FÐ0Fó    r   )Ú	attributer   Úget_attribute_value)Únoder   Údefault_valueÚfounds    `  r   Úget_attributer      sA   ø€ ØGÐGÐGÐG˜dœnÐGÑGÔG€EØð 4ÝÔ)¨%°¬(Ñ3Ô3Ð3ØÐr   c                 óž   — t          |                      d¦  «        ¦  «        t          u r#t          | |                      d¦  «        ¦  «        nd S )NÚvalue)ÚtypeÚ
WhichOneofÚstrÚgetattr©Údims    r   Úget_dim_from_protor       sC   € Ý48¸¿ºÈÑ9PÔ9PÑ4QÔ4QÕUXÐ4XÐ4X�7�3˜Ÿš wÑ/Ô/Ñ0Ô0Ð0Ð^bÐbr   c                 óD   — |                       d¦  «        }|dv sJ ‚|dk    S )Nr   )Útensor_typeÚsequence_typer#   )r   )Ú
type_protoÚcls_types     r   Úis_sequencer&   #   s2   € Ø×$Ò$ WÑ-Ô-€HØÐ7Ð7Ð7Ð7Ð7Ø�Ò&Ð&r   c                 ó’   — t          | ¦  «        rJ ‚| j                             d¦  «        rd„ | j        j        j        D ¦   «         S d S )NÚshapec                 ó,   — g | ]}t          |¦  «        ‘ŒS r	   )r    ©r   Úds     r   r   z-get_shape_from_type_proto.<locals>.<listcomp>,   s!   € ÐPÐPÐP¨!Õ" 1Ñ%Ô%ÐPÐPÐPr   )r&   r"   ÚHasFieldr(   r   ©r$   s    r   Úget_shape_from_type_protor.   )   sQ   € Ý˜:Ñ&Ô&Ð&Ð&Ð&ØÔ×&Ò& wÑ/Ô/ð ØPÐP¨zÔ/EÔ/KÔ/OÐPÑPÔPÐPàˆtr   c                 ód   — t          | ¦  «        r| j        j        j        j        S | j        j        S ©N)r&   r#   Ú	elem_typer"   r-   s    r   Úget_elem_type_from_type_protor2   1   s0   € Ý�:ÑÔð 0ØÔ'Ô1Ô=ÔGÐGàÔ%Ô/Ð/r   c                 ó  — | j                              d¦  «        }|€d S t          | j         ¦  «        rH| j         j        j                             d¦  «        dk    rt          | j         j        j        ¦  «        S d S t          | j         ¦  «        S )Nr   r"   )r   r   r&   r#   r1   r.   )Úvir%   s     r   Úget_shape_from_value_infor5   8   s€   € ØŒw×!Ò! 'Ñ*Ô*€HØÐØˆtÝ�2”7ÑÔð 2ØŒ7Ô Ô*×5Ò5°gÑ>Ô>À-ÒOÐOÝ,¨R¬WÔ-BÔ-LÑMÔMÐMà�4å(¨¬Ñ1Ô1Ð1r   c                 ó:   — t          j        ¦   «         }| |_        |S r0   )ÚonnxÚValueInfoProtor   )r   r4   s     r   Úmake_named_value_infor9   E   s   € Ý	Ô	Ñ	Ô	€BØ€B„GØ€Ir   c                 ó   — d„ | D ¦   «         S )Nc                 óp   — g | ]3}|€d n,t          |¦  «        rt          |¦  «        nt          |¦  «        ‘Œ4S r0   )Ú
is_literalÚintr   ©r   Úis     r   r   z.get_shape_from_sympy_shape.<locals>.<listcomp>L   s;   € Ð^Ð^Ð^ÈQ�A�IˆDˆD­j¸©m¬mÐ$G¥C¨¡F¤F FÅÀQÁÄÐ^Ð^Ð^r   r	   )Úsympy_shapes    r   Úget_shape_from_sympy_shaperA   K   s   € Ø^Ð^ÐR]Ð^Ñ^Ô^Ð^r   c                 ó    — t          | ¦  «        t          t          j        t          j        t
          j        fv pt          | d¦  «        o| j        S )NÚ	is_number)	r   r=   ÚnpÚint64Úint32ÚsympyÚIntegerÚhasattrrC   r   s    r   r<   r<   O   s;   € Ý�‰9Œ9��bœh­¬µ%´-Ð@Ð@ÐqÅWÈSÐR]ÑE^ÔE^ÐEpÐcfÔcpÐqr   c                 ó:   — | |k     r| | k    sJ ‚| dk    r| n|| z   S ©Nr   r	   )ÚaxisÚranks     r   Úhandle_negative_axisrN   S   s0   € Ø�$Š;ˆ;˜4 D 5š=˜=˜=Ð(Ø˜1’9�9ˆ4ˆ4 $¨¡+Ð-r   c                 ó€   — |pg d¢}t          |¦  «        t          k    r|g}| j        D ]}|j        |v r	|j        c S Œd S )N)Ú r7   zai.onnx)r   ÚlistÚopset_importÚdomainr   )ÚmprS   Úopsets      r   Ú	get_opsetrV   X   sc   € ØÐ.Ð.Ð.Ð.€FÝˆF�|„|•tÒÐØ�ˆØ”ð !ð !ˆØŒ<˜6Ð!Ð!Ø”=Ð Ð Ð ð "ð ˆ4r   c                 óÊ   — t          | ¦  «        t          u rt          | ¦  «        dk    sJ ‚| d         S t          | ¦  «        t          j        u r|                      ¦   «         S | S ©Né   r   )r   rQ   ÚlenrD   ÚndarrayÚitem©Úxs    r   Ú	as_scalarr_   c   sR   € ÝˆA�w„w•$€€Ý�1‰vŒv˜Š{ˆ{ˆ{ˆ{Ø�ŒtˆÝ	ˆa‰Œ•B”JÐ	Ð	Ø�vŠv‰xŒxˆàˆr   c                 ó˜   — t          | ¦  «        t          u r| S t          | ¦  «        t          j        u rt          | ¦  «        S |r| €d S | gS r0   )r   rQ   rD   r[   )r^   Ú	keep_nones     r   Úas_listrb   m   sL   € ÝˆA�w„w•$€€ØˆÝ	ˆa‰Œ•B”JÐ	Ð	Ý�A‰wŒwˆØ	ð �q�yØˆtàˆsˆ
r   c                 ót   — t          | ¦  «        t          u rt          j        d¦  «        }| D ]}||z  }Œn| }|S ©NrY   )r   rQ   rG   rH   )r^   r   Úvs      r   Úsympy_reduce_productrf   x   sK   € ÝˆA�w„w•$€€Ý”˜aÑ Ô ˆØð 	ð 	ˆAØ˜A‘IˆEˆEð	ð ˆØ€Lr   c                   ó   — e Zd Zdƒd„Zd„d„Zd„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…d„Zd†d„Zd„ Zd„ Zd„ Zd„ Zd‡d„Zdˆd„Zd„d„Zd‰d„ZdŠ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,d0„ Z-d1„ Z.d2„ Z/d3„ Z0d4„ Z1d5„ Z2d6„ Z3d7„ Z4d8„ Z5d9„ Z6d:„ Z7d;„ Z8d<„ Z9d=„ Z:d>„ Z;d?„ Z<d@„ Z=dA„ Z>dB„ Z?dC„ Z@dD„ ZAdE„ ZBdF„ ZCdG„ ZDdH„ ZEdI„ ZFdJ„ ZGdK„ ZHdL„ ZIdM„ ZJdN„ ZKdO„ ZLdP„ ZMdQ„ ZNdR„ ZOdS„ ZPdT„ ZQdU„ ZRdV„ ZSdW„ ZTdX„ ZUdY„ ZVdZ„ ZWd[„ ZXd\„ ZYd]„ ZZd^„ Z[d_„ Z\d`„ Z]da„ Z^db„ Z_dc„ Z`dd„ Zade„ Zbdf„ Zcdg„ Zddh„ Zedi„ Zfdj„ Zgdk„ Zhdl„ Zidm„ Zjdn„ Zkdo„ Zldp„ Zmdq„ Zndr„ Zods„ Zpdt„ Zqdu„ Zrdv„ Zsdw„ Ztdx„ Zudy„ Zvdz„ Zwd{„ Zxd‡d|„Zyd}„ Zzd~„ Z{dŠd„Z|d€„ Z}e~d‹d‚„¦   «         ZdS )ŒÚSymbolicShapeInferencerP   c                 ót  — i d| j         “d| j        “d| j        “d| j        “d| j        “d| j        “d| j        “d| j        “d	| j        “d
| j	        “d| j
        “d| j        “d| j        “d| j        “d| j         “d| j        “d| j        “i d| j         “d| j         “d| j        “d| j        “d| j        “d| j        “d| j        “d| j        “d| j        “d| j        “d| j        “d| j         “d| j        “d| j        “d | j         “d!| j        “d"| j         “¥i d#| j        “d$| j        “d%| j        “d&| j        “d'| j        “d(| j        “d)| j        “d*| j        “d+| j        “d,| j        “d-| j        “d.| j        “d/| j         “d0| j!        “d1| j"        “d2| j#        “d3| j$        “¥i d4| j%        “d5| j&        “d6| j'        “d7| j'        “d8| j'        “d9| j(        “d:| j)        “d;| j*        “d<| j         “d=| j+        “d>| j,        “d?| j-        “d@| j.        “dA| j         “dB| j/        “dC| j         “dD| j0        “¥i dE| j1        “dF| j2        “dG| j3        “dH| j4        “dI| j5        “dJ| j6        “dK| j7        “dL| j8        “dM| j9        “dN| j        “dO| j:        “dP| j;        “dQ| j<        “dR| j=        “dS| j=        “dT| j>        “dU| j?        “¥i dV| j@        “dW| jA        “dX| jB        “dY| jC        “dZ| jD        “d[| jE        “d\| jF        “d]| jG        “d^| jH        “d_| jH        “d`| jI        “da| j8        “db| jJ        “dc| jK        “dd| jL        “de| jM        “df| j?        “¥| jN        | jO        | jO        | jP        | jQ        dgœ¥| _R        i dh| j        “di| jS        “dj| jT        “dk| jU        “dl| jV        “dm| jV        “dn| jW        “do| jX        “dp| jY        “dq| jU        “dr| jU        “ds| j-        “dt| jZ        “du| j[        “dv| j[        “dw| j[        “dx| j[        “| _\        dy| _]        i | _^        i | __        i | _`        || _a        || _b        || _c        || _d        dz| _e        || _f        d S ){NÚAddÚ	AllReduceÚArrayFeatureExtractorÚAveragePoolÚBatchNormalizationÚCastÚCategoryMapperÚCompressÚConcatÚConcatFromSequenceÚConstantÚConstantOfShapeÚConvÚCumSumÚDivÚEinsumÚExpandÚEqualÚFloorÚGatherÚGatherElementsÚGatherNDÚIdentityÚIfÚLoopÚMatMulÚMatMulInteger16ÚMaxPoolÚMaxÚMemcpyFromHostÚMemcpyToHostÚMinÚMoEÚMulÚNonMaxSuppressionÚNonZeroÚOneHotÚPadÚRangeÚ
ReciprocalÚ	ReduceSumÚ
ReduceMeanÚ
ReduceProdÚReshapeÚResizeÚRoundÚScanÚScatterElementsÚ
SequenceAtÚSequenceInsertÚShapeÚSizeÚSliceÚSoftmaxCrossEntropyLossÚSoftmaxCrossEntropyLossInternalÚ!NegativeLogLikelihoodLossInternalÚSplitÚSplitToSequenceÚSqueezeÚSubÚTileÚTopKÚ	TransposeÚ	UnsqueezeÚWhereÚZipMapÚNegÚ	AttentionÚBiasAddÚBiasGeluÚBiasSplitGeluÚDecoderMaskedMultiHeadAttentionÚDequantizeLinearÚDynamicTimeWarpingÚEmbedLayerNormalizationÚFastGeluÚGatedRelativePositionBiasÚGatherBlockQuantizedÚGeluÚGemmFastGeluÚ
GemmFloat8Ú	GroupNormÚGroupNormalizationÚGroupQueryAttentionÚLayerNormalizationÚLongformerAttentionÚMatMulNBitsÚMultiHeadAttentionÚNhwcConvÚPackedAttentionÚPackedMultiHeadAttentionÚPagedAttentionÚPythonOpÚ
QLinearAddÚ
QLinearMulÚQuantizeLinearÚ	QuickGeluÚRelativePositionBiasÚRemovePaddingÚRestorePaddingÚRotaryEmbeddingÚSimplifiedLayerNormalization)ÚSkipGroupNormÚSkipLayerNormalizationÚ SkipSimplifiedLayerNormalizationÚSparseAttentionÚUnfoldTensorÚ	embeddingÚ
bitwise_orÚdiagonalÚmax_pool2d_with_indicesÚmaxÚminÚmultinomialÚunfoldÚargmaxÚ
avg_pool2dÚ_adaptive_avg_pool2dÚnumpy_TÚnative_group_normÚupsample_nearest1dÚupsample_nearest2dÚupsample_nearest3dÚupsample_bicubic2dTr   )gÚ_infer_symbolic_compute_opsÚ_pass_on_shape_and_typeÚ_infer_ArrayFeatureExtractorÚ_infer_PoolÚ_infer_BatchNormalizationÚ_infer_CastÚ_infer_CategoryMapperÚ_infer_CompressÚ_infer_ConcatÚ_infer_ConcatFromSequenceÚ_infer_ConstantÚ_infer_ConstantOfShapeÚ_infer_ConvÚ_infer_EinsumÚ_infer_ExpandÚ_infer_GatherÚ_infer_GatherElementsÚ_infer_GatherNDÚ	_infer_IfÚ_infer_LoopÚ_infer_MatMulÚ_infer_MatMulIntegerÚ_infer_NonMaxSuppressionÚ_infer_NonZeroÚ_infer_OneHotÚ
_infer_PadÚ_infer_RangeÚ_infer_ReduceSumÚ_infer_ReduceMeanÚ_infer_ReduceProdÚ_infer_ReshapeÚ_infer_ResizeÚ_infer_ScanÚ_infer_ScatterElementsÚ_infer_SequenceAtÚ_infer_SequenceInsertÚ_infer_ShapeÚ_infer_SizeÚ_infer_SliceÚ_infer_SoftmaxCrossEntropyLossÚ_infer_SplitÚ_infer_SplitToSequenceÚ_infer_SqueezeÚ_infer_TileÚ_infer_TopKÚ_infer_TransposeÚ_infer_UnsqueezeÚ_infer_ZipMapÚ_infer_AttentionÚ_infer_BiasAddÚ_infer_BiasGeluÚ_infer_BiasSplitGeluÚ&_infer_DecoderMaskedMultiHeadAttentionÚ_infer_DequantizeLinearÚ_infer_DynamicTimeWarpingÚ_infer_EmbedLayerNormalizationÚ_infer_FastGeluÚ _infer_GatedRelativePositionBiasÚ_infer_GeluÚ_infer_GemmFastGeluÚ_infer_GemmFloat8Ú_infer_GroupNormÚ_infer_GroupQueryAttentionÚ_infer_LayerNormalizationÚ_infer_LongformerAttentionÚ_infer_MatMulNBitsÚ_infer_MultiHeadAttentionÚ_infer_NhwcConvÚ_infer_PackedAttentionÚ_infer_PackedMultiHeadAttentionÚ_infer_PagedAttentionÚ_infer_PythonOpÚ_infer_QLinearBinaryÚ_infer_QuantizeLinearÚ_infer_RelativePositionBiasÚ_infer_RemovePaddingÚ_infer_RestorePaddingÚ_infer_RotaryEmbeddingÚ_infer_SkipGroupNormÚ_infer_SkipLayerNormalizationÚ_infer_SparseAttentionÚ_infer_UnfoldTensorÚdispatcher_Ú_infer_aten_bitwise_orÚ_infer_aten_diagonalÚ_infer_aten_pool2dÚ_infer_aten_minmaxÚ_infer_aten_multinomialÚ_infer_aten_unfoldÚ_infer_aten_argmaxÚ_infer_aten_group_normÚ_infer_aten_upsampleÚaten_op_dispatcher_Úrun_Úsuggested_merge_Úsymbolic_dims_Úinput_symbols_Úauto_merge_Úguess_output_rank_Úverbose_Úint_max_Úsubgraph_id_Úprefix_)ÚselfÚint_maxÚ
auto_mergeÚguess_output_rankÚverboseÚprefixs         r   Ú__init__zSymbolicShapeInference.__init__ƒ   s½  € ðm
Ø�4Ô3ðm
à˜Ô5ðm
ð $ TÔ%Fðm
ð ˜4Ô+ð	m
ð
 ! $Ô"@ðm
ð �DÔ$ðm
ð ˜dÔ8ðm
ð ˜Ô,ðm
ð �dÔ(ðm
ð ! $Ô"@ðm
ð ˜Ô,ðm
ð ˜tÔ:ðm
ð �DÔ$ðm
ð �dÔ2ðm
ð �4Ô3ðm
ð  �dÔ(ð!m
ð" �dÔ(ð#m
ð m
ð$ �TÔ5ð%m
ð& �TÔ5ð'm
ð( �dÔ(ð)m
ð* ˜dÔ8ð+m
ð, ˜Ô,ð-m
ð. ˜Ô4ð/m
ð0 �$”.ð1m
ð2 �DÔ$ð3m
ð4 �dÔ(ð5m
ð6 ˜tÔ8ð7m
ð8 �tÔ'ð9m
ð: �4Ô3ð;m
ð< ˜dÔ:ð=m
ð> ˜DÔ8ð?m
ð@ �4Ô3ðAm
ðB �4Ô/ðCm
ðD �4Ô3ðEm
ð m
ð m
ðF   Ô!>ðGm
ðH �tÔ*ðIm
ðJ �dÔ(ðKm
ðL �4”?ðMm
ðN �TÔ&ðOm
ðP ˜$Ô6ðQm
ðR ˜Ô.ðSm
ðT ˜$Ô0ðUm
ðV ˜$Ô0ðWm
ðX �tÔ*ðYm
ðZ �dÔ(ð[m
ð\ �TÔ1ð]m
ð^ �DÔ$ð_m
ð` ˜tÔ:ðam
ðb ˜$Ô0ðcm
ðd ˜dÔ8ðem
ðf �TÔ&ðgm
ð m
ð m
ðh �DÔ$ðim
ðj �TÔ&ðkm
ðl & tÔ'Jðmm
ðn .¨tÔ/Rðom
ðp 0°Ô1Tðqm
ðr �TÔ&ðsm
ðt ˜tÔ:ðum
ðv �tÔ*ðwm
ðx �4Ô3ðym
ðz �DÔ$ð{m
ð| �DÔ$ð}m
ð~ ˜Ô.ðm
ð@ ˜Ô.ðAm
ðB �TÔ5ðCm
ðD �dÔ(ðEm
ðF �4Ô3ðGm
ðJ ˜Ô.ðKm
ð m
ð m
ðL �tÔ*ðMm
ðN ˜Ô,ðOm
ðP ˜TÔ6ðQm
ðR .¨tÔ/ZðSm
ðT  Ô <ðUm
ðV ! $Ô"@ðWm
ðX & tÔ'JðYm
ðZ ˜Ô,ð[m
ð\ (¨Ô)Nð]m
ð^ # DÔ$6ð_m
ð` �DÔ$ðam
ðb ˜DÔ4ðcm
ðd ˜$Ô0ðem
ðf ˜Ô.ðgm
ðh ! $Ô"7ðim
ðj " 4Ô#Bðkm
ðl ! $Ô"@ðmm
ð m
ð m
ðn " 4Ô#Bðom
ðp ˜4Ô2ðqm
ðr ! $Ô"@ðsm
ðt ˜Ô,ðum
ðv ˜tÔ:ðwm
ðx '¨Ô(Lðym
ðz ˜dÔ8ð{m
ð| ˜Ô,ð}m
ð~ ˜$Ô3ðm
ð@ ˜$Ô3ðAm
ðB ˜dÔ8ðCm
ðD ˜Ô-ðEm
ðF # DÔ$DðGm
ðH ˜TÔ6ðIm
ðJ ˜dÔ8ðKm
ðL ˜tÔ:ðMm
ðN +¨DÔ,JðOm
ð m
ðP "Ô6Ø&*Ô&HØ04Ô0RØ#Ô:Ø Ô4ðYm
ð m
ð m
ˆÔð\$
Ø˜Ô+ð$
à˜$Ô5ð$
ð ˜Ô1ð$
ð & tÔ'>ð	$
ð
 �4Ô*ð$
ð �4Ô*ð$
ð ˜4Ô7ð$
ð �dÔ-ð$
ð �dÔ-ð$
ð ˜$Ô1ð$
ð # DÔ$;ð$
ð �tÔ,ð$
ð   Ô!<ð$
ð ! $Ô";ð$
ð ! $Ô";ð$
ð  ! $Ô";ð!$
ð" ! $Ô";ð#$
ˆÔ ð& ˆŒ	Ø "ˆÔØ ˆÔØ ˆÔØ%ˆÔØ"3ˆÔØˆŒØˆŒØˆÔØˆŒˆˆr   Fc                 óf  ‡ — t          ˆ fd„|D ¦   «         ¦  «        sJ ‚t          |¦  «        }‰ j                             ¦   «         D ]3\  }}||v r*|                     |¦  «         |                     |¦  «         Œ4d }|D ]}t          |¦  «        r|} nŒ|€|D ]}|‰ j        v r|} nŒ|€/|D ],}t          ‰ j	        |         ¦  «        t          j        u r|} nŒ-|€‘‰ j        dk    r.t                               dd                     |¦  «        ¦  «         t!          |¦  «        }d„ |D ¦   «         }||                     t%          |¦  «        ¦  «                 }|                     |¦  «         |D ] }||k    rŒ	t          |¦  «        r1t          |¦  «        r"t'          |¦  «        t'          |¦  «        k    sJ ‚t          |¦  «        rt'          |¦  «        n|‰ j        |<   ‰ j                             ¦   «         D ]\  }}||k    r
|‰ j        |<   ŒŒ¡|r‰ j        r‰                      ¦   «          d S d S d S )Nc              3   ót   •K  — | ]2}t          |¦  «        t          u r	|‰j        v pt          |¦  «        V — Œ3d S r0   )r   r   rE  r<   )r   ÚsrM  s     €r   ú	<genexpr>z>SymbolicShapeInference._add_suggested_merge.<locals>.<genexpr>  sF   øè è € ÐcÐcÐVW•D˜‘G”G�s�NÐ? q¨DÔ,?Ð'?ÐQÅJÈqÁMÄMÐcÐcÐcÐcÐcÐcr   r   z9Potential unsafe merge between symbolic expressions: (%s)ú,c                 ó,   — g | ]}t          |¦  «        ‘ŒS r	   ©rZ   ©r   rV  s     r   r   z?SymbolicShapeInference._add_suggested_merge.<locals>.<listcomp>-  s   € Ð1Ð1Ð1˜q•C˜‘F”FÐ1Ð1Ð1r   )ÚallÚsetrD  ÚitemsÚremoveÚaddr<   rF  r   rE  rG   ÚSymbolrI  ÚloggerÚwarningÚjoinrQ   ÚindexrÚ   r=   rG  Ú_apply_suggested_merge)	rM  ÚsymbolsÚapplyÚkre   Úmap_torV  Úsymbols_listÚlenss	   `        r   Ú_add_suggested_mergez+SymbolicShapeInference._add_suggested_merge  s¨  ø€ ÝÐcÐcÐcÐcÐ[bÐcÑcÔcÑcÔcÐcÐcÐcÝ�g‘,”,ˆØÔ)×/Ò/Ñ1Ô1ð 	ð 	‰DˆAˆqØ�Gˆ|ˆ|Ø—’˜qÑ!Ô!Ð!Ø—’˜A‘”�øØˆàð 	ð 	ˆAÝ˜!‰}Œ}ð Ø�Ø�ðð ˆ>Øð ð �Ø˜Ô+Ð+Ð+Ø�FØ�Eð ,ð ˆ>Øð ð �Ý˜Ô+¨AÔ.Ñ/Ô/µ5´<Ð?Ð?Ø�FØ�Eð @ð ˆ>ØŒ}˜qÒ Ð Ý—’ÐZÐ\_×\dÒ\dÐelÑ\mÔ\mÑnÔnÐnÝ ™=œ=ˆLØ1Ð1 LÐ1Ñ1Ô1ˆDØ! $§*¢*­S°©Y¬YÑ"7Ô"7Ô8ˆFØ�NŠN˜6Ñ"Ô"Ð"àð 	6ð 	6ˆAØ�FŠ{ˆ{ØÝ˜&Ñ!Ô!ð -¥j°¡m¤mð -Ý˜6‘{”{¥c¨!¡f¤fÒ,Ð,Ð,Ð,Ý6@ÀÑ6HÔ6HÐ'T¥s¨6¡{¤{ {ÈfˆDÔ! !Ñ$ØÔ-×3Ò3Ñ5Ô5ð 6ð 6‘��1Ø˜’6�6Ø/5�DÔ)¨!Ñ,øð6ð ð 	*�TÔ%ð 	*Ø×'Ò'Ñ)Ô)Ð)Ð)Ð)ð	*ð 	*ð 	*ð 	*r   c                 óh  — | j         sd S t          | j        j        j        ¦  «        |rg nt          | j        j        j        ¦  «        z   D ]f}|j        j        j        j	        D ]M}|j
        | j         v r=| j         |j
                 }t          |¦  «        rt          |¦  «        |_        ŒF||_
        ŒNŒgd S r0   )rD  rQ   Úout_mp_ÚgraphÚinputÚ
value_infor   r"   r(   r   Ú	dim_paramr<   r=   Ú	dim_value)rM  Úgraph_input_onlyr?   r+   re   s        r   rf  z-SymbolicShapeInference._apply_suggested_merge=  s¿   € ØÔ$ð 	ØˆFÝ�d”lÔ(Ô.Ñ/Ô/Ð9IÐ3r°2°2ÍtÐTXÔT`ÔTfÔTqÑOrÔOrÑsð 	(ð 	(ˆAØ”VÔ'Ô-Ô1ð (ð (�Ø”; $Ô"7Ð7Ð7ØÔ-¨a¬kÔ:�AÝ! !‘}”}ð (Ý&)¨!¡f¤f˜œ˜à&'˜œøð(ð	(ð 	(r   c                 óÄ  — t          j        ¦   «         | _        | j                             |¦  «         d„ t	          | j        j        j        ¦  «        D ¦   «         | _        d„ | j        j        j        D ¦   «         | _	        d„ t	          | j        j        j        ¦  «        D ¦   «         | _
        | j
                             d„ | j        j        j        D ¦   «         ¦  «         d S )Nc                 ó   — i | ]
}|j         |“ŒS r	   r
   r>   s     r   ú
<dictcomp>z6SymbolicShapeInference._preprocess.<locals>.<dictcomp>L  ó   € ÐPÐPÐP¨A˜aœf aÐPÐPÐPr   c                 ó   — i | ]
}|j         |“ŒS r	   r
   r>   s     r   rx  z6SymbolicShapeInference._preprocess.<locals>.<dictcomp>M  ry  r   c                 ó   — i | ]
}|j         |“ŒS r	   r
   r>   s     r   rx  z6SymbolicShapeInference._preprocess.<locals>.<dictcomp>N  s   € ÐLÐLÐL¨˜!œ& !ÐLÐLÐLr   c           
      ó~   — i | ]:}|j         t          j        |j         |j        t	          |j        ¦  «        ¦  «        “Œ;S r	   )r   r   Úmake_tensor_value_infoÚ	data_typerQ   Údimsr>   s     r   rx  z6SymbolicShapeInference._preprocess.<locals>.<dictcomp>P  sI   € ð ð ð àð ”�Ô5°a´f¸a¼kÍ4ÐPQÔPVÉ<Ì<ÑXÔXðð ð r   )r7   Ú
ModelProtoro  ÚCopyFromrQ   rp  rq  Úgraph_inputs_ÚinitializerÚinitializers_Ú	known_vi_Úupdate)rM  Úin_mps     r   Ú_preprocessz"SymbolicShapeInference._preprocessI  sØ   € Ý”Ñ(Ô(ˆŒØŒ×Ò˜eÑ$Ô$Ð$ØPÐPµ°d´lÔ6HÔ6NÑ1OÔ1OÐPÑPÔPˆÔØPÐP°´Ô1CÔ1OÐPÑPÔPˆÔØLÐL­T°$´,Ô2DÔ2JÑ-KÔ-KÐLÑLÔLˆŒØŒ×Òðð àœÔ+Ô7ðñ ô ñ	
ô 	
ð 	
ð 	
ð 	
r   c                 ó6  ‡ ‡‡— t          d„ ‰D ¦   «         ¦  «        �s‰ j        �rt          t          ‰¦  «        ¦  «        }d„ |D ¦   «         }t	          |¦  «        dk    sJ ‚t	          |¦  «        dk    r{|                     d¦  «        }‰ j        dk    r<t                               d|d |…         ||dz   d …         z   › d||         › �¦  «         ‰  	                    |d¬¦  «         ||         S ‰ j        dk    r.t                               d|dd …         › d	|d         › �¦  «         ‰d         S d S t          ˆfd
„‰D ¦   «         ¦  «        r‰d         S ˆ fd„‰D ¦   «         Št          ˆfd„‰D ¦   «         ¦  «        r‰d         ‰ j
        v sJ ‚‰d         S d S )Nc              3   óB   K  — | ]}t          |¦  «        t          u V — Œd S r0   ©r   r   r*   s     r   rW  z8SymbolicShapeInference._merge_symbols.<locals>.<genexpr>W  s,   è è € Ð0Ð0 a•4˜‘7”7�c�>Ð0Ð0Ð0Ð0Ð0Ð0r   c                 ó,   — g | ]}t          |¦  «        ‘ŒS r	   ©r<   r*   s     r   r   z9SymbolicShapeInference._merge_symbols.<locals>.<listcomp>Z  s   € Ð=Ð=Ð=¨A�* Q™-œ-Ð=Ð=Ð=r   rY   r   zdim z has been merged with value F©Úallow_broadcastz has been merged with dim c              3   ó0   •K  — | ]}|‰d          k    V — ŒdS ©r   Nr	   ©r   r+   r  s     €r   rW  z8SymbolicShapeInference._merge_symbols.<locals>.<genexpr>j  s+   øè è € Ð*Ð* ˆq�D˜”GŠ|Ð*Ð*Ð*Ð*Ð*Ð*r   c                 óF   •— g | ]}‰j                              ||¦  «        ‘ŒS r	   )rD  Úget)r   r+   rM  s     €r   r   z9SymbolicShapeInference._merge_symbols.<locals>.<listcomp>l  s,   ø€ Ð@Ð@Ð@°a�$Ô'×+Ò+¨A¨qÑ1Ô1Ð@Ð@Ð@r   c              3   ó0   •K  — | ]}|‰d          k    V — ŒdS r‘  r	   )r   r+   Úmergeds     €r   rW  z8SymbolicShapeInference._merge_symbols.<locals>.<genexpr>m  s+   øè è € Ð.Ð. !ˆq�F˜1”IŠ~Ð.Ð.Ð.Ð.Ð.Ð.r   )r\  rG  rQ   r]  Úsumre  rI  rb  ÚdebugÚ_check_merged_dimsrE  )rM  r  Úunique_dimsÚis_intÚint_dimr–  s   ``   @r   Ú_merge_symbolsz%SymbolicShapeInference._merge_symbolsV  s   øøø€ ÝÐ0Ð0¨4Ð0Ñ0Ô0Ñ0Ô0ñ 	ØÔñ Ý"¥3 t¡9¤9™oœo�Ø=Ð=°Ð=Ñ=Ô=�Ý˜6‘{”{ aÒ'Ð'Ð'Ð'Ý�v‘;”; !Ò#Ð#Ø$Ÿlšl¨1™oœo�GØ”} qÒ(Ð(ÝŸšð J ;¨x°¨xÔ#8¸;ÀwÐQRÁ{À}À}Ô;UÑ#Uð  Jð  JÐs~ð  @Gô  tHð  Jð  Jñô ð ð ×+Ò+¨KÈÐ+ÑOÔOÐOØ& wÔ/Ð/à”} qÒ(Ð(ÝŸšÐ%g¨K¸¸¸¬OÐ%gÐ%gÐWbÐcdÔWeÐ%gÐ%gÑhÔhÐhØ œ7�Nà�tÝÐ*Ð*Ð*Ð* TÐ*Ñ*Ô*Ñ*Ô*ð 	Ø˜”7ˆNØ@Ð@Ð@Ð@¸4Ð@Ñ@Ô@ˆÝÐ.Ð.Ð.Ð. vÐ.Ñ.Ô.Ñ.Ô.ð 	Ø˜!”9 Ô 3Ð3Ð3Ð3Ð3Ø˜!”9Ðà�4r   c                 ó
  — g }t          |¦  «        }t          |¦  «        }t          ||¦  «        }t          |¦  «        D ]Â}||k     r||dz
  |z
           nd}||k     r||dz
  |z
           nd}	|dk    s||	k    r|	}
n€|	dk    r|}
nw|                      ||	g¦  «        }
|
s^| j        r|                      ||	gd¬¦  «         n=t                               dt          |¦  «        z   dz   t          |	¦  «        z   ¦  «         |
g|¢}ŒÃ|S )NrY   T©rh  zunsupported broadcast between ú )	rZ   rÙ   Úranger�  rG  rm  rb  rc  r   )rM  Úshape1Úshape2Ú	new_shapeÚrank1Úrank2Únew_rankr?   Údim1Údim2Únew_dims              r   Ú_broadcast_shapesz(SymbolicShapeInference._broadcast_shapest  s=  € Øˆ	Ý�F‘”ˆÝ�F‘”ˆÝ�u˜eÑ$Ô$ˆÝ�x‘”ð 	.ð 	.ˆAØ,-°ªI¨I�6˜% !™) a™-Ô(Ð(¸1ˆDØ,-°ªI¨I�6˜% !™) a™-Ô(Ð(¸1ˆDØ�qŠyˆy˜D DšL˜LØ��Ø˜’�Ø��à×-Ò-¨t°T¨lÑ;Ô;�Øð gð Ô'ð gØ×1Ò1°4¸°,ÀdÐ1ÑKÔKÐKÐKåŸšÐ'GÍ#ÈdÉ)Ì)Ñ'SÐVYÑ'YÕ\_Ð`dÑ\eÔ\eÑ'eÑfÔfÐfØ Ð- 9Ð-ˆIˆIØÐr   c                 óº   — |j         |         }|| j        v r| j        |         }t          |¦  «        S || j        v sJ ‚t	          | j        |         j        ¦  «        S r0   )rq  r…  r5   r„  rQ   r  ©rM  r   Úidxr   r4   s        r   Ú
_get_shapez!SymbolicShapeInference._get_shape�  sa   € ØŒz˜#ŒˆØ�4”>Ð!Ð!Ø” Ô%ˆBÝ,¨RÑ0Ô0Ð0à˜4Ô-Ð-Ð-Ð-Ð-Ý˜Ô*¨4Ô0Ô5Ñ6Ô6Ð6r   c                 óô   — |t          |j        ¦  «        dz
  k    rd S |j        |         }|| j        v r| j        |         }t          |¦  «        S || j        v rt          | j        |         j        ¦  «        S d S rd   )rZ   rq  r…  r5   r„  rQ   r  r­  s        r   Ú_try_get_shapez%SymbolicShapeInference._try_get_shape–  s}   € Ø•�T”Z‘” 1Ñ$Ò$Ð$Ø�4ØŒz˜#ŒˆØ�4”>Ð!Ð!Ø” Ô%ˆBÝ,¨RÑ0Ô0Ð0Ø�4Ô%Ð%Ð%Ý˜Ô*¨4Ô0Ô5Ñ6Ô6Ð6Øˆtr   c                 óH   — t          |                      ||¦  «        ¦  «        S r0   )rZ   r¯  )rM  r   r®  s      r   Ú_get_shape_rankz&SymbolicShapeInference._get_shape_rank¡  s   € Ý�4—?’? 4¨Ñ-Ô-Ñ.Ô.Ð.r   c                 ó   — g }|                       ||¦  «        D ]t}t          |¦  «        t          u rA|                     || j        v r| j        |         nt          j        |dd¬¦  «        ¦  «         ŒYd |usJ ‚|                     |¦  «         Œu|S )NT©ÚintegerÚnonnegative)r¯  r   r   ÚappendrE  rG   ra  )rM  r   r®  r@   r+   s        r   Ú_get_sympy_shapez'SymbolicShapeInference._get_sympy_shape¤  s®   € ØˆØ—’  sÑ+Ô+ð 		&ð 		&ˆAÝ�A‰wŒw�#ˆ~ˆ~Ø×"Ò"à˜DÔ/Ð/Ð/ð Ô'¨Ô*Ð*åœ a°À4ÐHÑHÔHñô ð ð ð  1�}�}�}�}Ø×"Ò" 1Ñ%Ô%Ð%Ð%ØÐr   c                 ó®   — |j         |         }|| j        v s|| j        v sJ ‚|| j        v r| j        |         nt          j        | j        |         ¦  «        S r0   )rq  Úsympy_data_r„  r   Úto_array©rM  r   r®  r   s       r   Ú
_get_valuez!SymbolicShapeInference._get_value²  sc   € ØŒz˜#ŒˆØ�tÔ'Ð'Ð'¨4°4Ô3EÐ+EÐ+EÐ+EÐEØ)-°Ô1AÐ)AÐ)AˆtÔ Ô%Ð%Å|ÔG\Ð]aÔ]oÐptÔ]uÑGvÔGvÐvr   c                 ó¤   — |t          |j        ¦  «        k    rd S |j        |         }|| j        v s	|| j        v r|                      ||¦  «        S d S r0   )rZ   rq  r»  r„  r¾  r½  s       r   Ú_try_get_valuez%SymbolicShapeInference._try_get_value·  sY   € Ø•#�d”j‘/”/Ò!Ð!Ø�4ØŒz˜#ŒˆØ�4Ô#Ð#Ð# t¨tÔ/AÐ'AÐ'AØ—?’? 4¨Ñ-Ô-Ð-Øˆtr   c                 óv  — t          |¦  «        D ]¨\  }}t          |¦  «        s”t          |¦  «        t          k    r|t          |¦  «        }|| j        v r7t          | j        |         ¦  «        rŒ_| j        | j        |                  ||<   Œ{t          |¦  «        | j        vr|| j        t          |¦  «        <   Œ©d S r0   )Ú	enumerater<   r   r   rD  rE  )rM  Únew_sympy_shaper?   rª  Ústr_dims        r   Ú_update_computed_dimsz,SymbolicShapeInference._update_computed_dims¿  sÈ   € Ý# OÑ4Ô4ð 
	Dð 
	D‰JˆAˆwÝ˜gÑ&Ô&ð 	D­4°©=¬=½CÒ+?Ð+?Ý˜g™,œ,�Ø˜dÔ3Ð3Ð3Ý! $Ô"7¸Ô"@ÑAÔAð !Ø Ø)-Ô)<¸TÔ=RÐSZÔ=[Ô)\�O AÑ&Ð&õ ˜7‘|”|¨4Ô+>Ð>Ð>Ø<C˜Ô+­C°©L¬LÑ9øð
	Dð 
	Dr   c                 ó`  ‡ ‡‡
‡— ‰j         dv }|�s‰g }t          ‰ j        ¦  «        dk    r‰j         dv rˆ fd„‰j        D ¦   «         }‰j         dv rÔ‰j        d         ‰ j        v rÀ‰ j        ‰j        d                  }t          t          |j        ¦  «        ¦  «        Šˆˆ fd„t          t          ‰j        ¦  «        ¦  «        D ¦   «         }t          ‰‰j         dv rd	ndz
  ¦  «        D ];Š
ˆ
ˆfd
„|D ¦   «         }t          |¦  «        dk    r‰  
                    |d¬¦  «         Œ<t          j        ‰gdˆ fd„‰j        D ¦   «         d„ ‰j        D ¦   «         |¦  «        }‰ j        j                             |¦  «         t!          j        ‰ j        ¦  «        ‰ _        t          t          ‰j        ¦  «        ¦  «        D ]r}‰j        |         }	|	ra‰ j        j        j                             ¦   «         }|s+|                     ‰ j        j        j        |         ¦  «         n|	|_        |‰ j        |	<   Œsd S )N)'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Æ   rÉ   rÊ   rË   rÌ   rÍ   rÎ   rÏ   rÑ   rÒ   rÓ   rÐ   rÇ   rÈ   é	   )r©   c                 óN   •— g | ]!}|‰j         v ¯|‰j        v¯‰j         |         ‘Œ"S r	   )r„  r‚  )r   r   rM  s     €r   r   zBSymbolicShapeInference._onnx_infer_single_node.<locals>.<listcomp>   sF   ø€ ð  ð  ð  àØ Ô 2Ð2Ð2°tÀ4ÔCUÐ7UÐ7Uð Ô& tÔ,à7UÐ7UÐ7Ur   ©	rj   r¥   r‹   rx   rƒ   ÚMatMulIntegerr„   rª   ÚSumr   c                 ó<   •— g | ]}‰                      ‰|¦  «        ‘ŒS r	   ©r¯  ©r   r?   r   rM  s     €€r   r   zBSymbolicShapeInference._onnx_infer_single_node.<locals>.<listcomp>  s'   ø€ Ð ZÐ ZÐ Z¸a §¢°°qÑ!9Ô!9Ð ZÐ ZÐ Zr   ©rƒ   rÊ  r„   é   c                 ór   •— g | ]3}t          |¦  «        ‰z   ‰k    ¯|t          |¦  «        ‰z
  ‰z            ‘Œ4S r	   rZ  ©r   rV  r+   Úout_ranks     €€r   r   zBSymbolicShapeInference._onnx_infer_single_node.<locals>.<listcomp>  sI   ø€ Ð"iÐ"iÐ"iÀÕRUÐVWÑRXÔRXÐ[\ÑR\Ð`hÒRhÐRh 1¥S¨¡V¤V¨hÑ%6¸Ñ%:Ô#;ÐRhÐRhÐRhr   rY   TrŽ  Útmpc                 ó.   •— g | ]}|¯‰j         |         ‘ŒS r	   ©r…  ©r   r?   rM  s     €r   r   zBSymbolicShapeInference._onnx_infer_single_node.<locals>.<listcomp>   s%   ø€ Ð<Ð<Ð< q¸!Ð<�” Ô"Ð<Ð<Ð<r   c                 ó,   — g | ]}t          |¦  «        ‘ŒS r	   )r9   r>   s     r   r   zBSymbolicShapeInference._onnx_infer_single_node.<locals>.<listcomp>!  s!   € Ð?Ð?Ð?¨aÕ& qÑ)Ô)Ð?Ð?Ð?r   )Úop_typerV   ro  rq  Úoutputr…  rZ   r.   r   r¡  r™  r   Ú
make_graphÚtmp_mp_rp  r�  r   Úinfer_shapesrr  r`  r   )rM  r   Ú
skip_inferÚinitializersr4   Ú	in_shapesÚin_dimsÚ	tmp_graphÚi_oÚor+   rÓ  s   ``        @@r   Ú_onnx_infer_single_nodez.SymbolicShapeInference._onnx_infer_single_nodeÌ  s…  øøøø€ à”\ð (&
ð (
ˆ
ðT ñ /	Fð ˆLÝ˜$œ,Ñ'Ô'¨1Ò,Ð,°$´,À-Ð2OÐ2Oð ð  ð  ð  à $¤
ð ñ  ô  �ð Œ|ð 
 ð 
ð 
ð ”;˜q”> T¤^Ð3Ð3Øœ¨¬°A¬Ô7�BÝ"Õ#<¸R¼WÑ#EÔ#EÑFÔF�HØ ZÐ ZÐ ZÐ ZÐ ZÅ5ÍÈTÌZÉÌÑCYÔCYÐ ZÑ ZÔ Z�IÝ"Ø ¨¬Ð9gÐ)gÐ)g A AÐmnÑoñô ð Sð S˜ð #jÐ"iÐ"iÐ"iÐ"iÀYÐ"iÑ"iÔ"i˜Ý˜w™<œ<¨!Ò+Ð+Ø ×3Ò3°GÈTÐ3ÑRÔRÐRøõ Ô)Ø�ØØ<Ð<Ð<Ð<¨D¬JÐ<Ñ<Ô<Ø?Ð?°4´;Ð?Ñ?Ô?Øñô ˆIð ŒLÔ×'Ò'¨	Ñ2Ô2Ð2å*Ô7¸¼ÑEÔEˆDŒLå�˜Tœ[Ñ)Ô)Ñ*Ô*ð 	'ð 	'ˆCØ”˜CÔ ˆAØð 'Ø”\Ô'Ô2×6Ò6Ñ8Ô8�Ø!ð  Ø—K’K ¤Ô 2Ô 9¸#Ô >Ñ?Ô?Ð?Ð?à�B”GØ$&�”˜qÑ!øð	'ð 	'r   Tc           
      ób  ‡ ‡‡— ‰ j         dk    r8t                               d|j        › d|j        d         › d|j        › �¦  «         d„ t          |j        ¦  «        t          |j        ¦  «        z   D ¦   «         Šˆfd„‰ j	        D ¦   «         Št          j        t          |j        ¦  «        dt          |j        ¦  «        ˆ fd	„‰D ¦   «         z   d
„ |j        D ¦   «         ¦  «        }|j                             ˆfd„‰ j        j        j        D ¦   «         ¦  «         |j                             |j        ¦  «         ‰ j        j                             |¦  «         t%          ‰ j        ‰ j        ‰ j        ‰ j         ‰ j        dz   t/          ‰ j        ¦  «        z   ¬¦  «        }|r‰ xj        dz  c_        |                     ‰ j        ¦  «         ‰ j                             ¦   «         |_        |j        r3|                     ‰ j                             ¦   «         ¦  «         |j        °3|                     ¦   «          |rX|                      d¦  «         |j                             |j        j        j        d tC          |j        ¦  «        …         ¦  «         |                      d¦  «         |j                             |j        j        j        ¦  «         |                      d¦  «         |j"                             |j        j        j"        ¦  «         |                      d¦  «         |j                             |j        j        j        ¦  «         d„ |j        j        j        D ¦   «         }ˆ fd„|D ¦   «         }i }	|D ]}
|
|j#        v sJ ‚|j#        |
         |	|
<   Œ‰ j#         $                    |	¦  «         |S )NrÐ  zInferencing subgraph of node z with output(r   z...): c                 ó   — h | ]	}|j         ’Œ
S r	   r
   r>   s     r   ú	<setcomp>z>SymbolicShapeInference._onnx_infer_subgraph.<locals>.<setcomp>:  s   € Ð]Ð]Ð] a˜1œ6Ð]Ð]Ð]r   c                 ó   •— h | ]}|‰v¯|’Œ	S r	   r	   )r   r   Úsubgraph_inputss     €r   rè  z>SymbolicShapeInference._onnx_infer_subgraph.<locals>.<setcomp>;  s$   ø€ Ð"bÐ"bÐ"b¨DÀdÐRaÐFaÐFa 4ÐFaÐFaÐFar   rÔ  c                 ó*   •— g | ]}‰j         |         ‘ŒS r	   rÖ  r×  s     €r   r   z?SymbolicShapeInference._onnx_infer_subgraph.<locals>.<listcomp>?  s    ø€ Ð#WÐ#WÐ#W¸! D¤N°1Ô$5Ð#WÐ#WÐ#Wr   c                 ó6   — g | ]}t          |j        ¦  «        ‘ŒS r	   )r9   r   r>   s     r   r   z?SymbolicShapeInference._onnx_infer_subgraph.<locals>.<listcomp>@  s#   € ÐDÐDÐD¨qÕ" 1¤6Ñ*Ô*ÐDÐDÐDr   c                 ó&   •— g | ]}|j         ‰v ¯|‘ŒS r	   r
   )r   r?   Úsubgraph_implicit_inputs     €r   r   z?SymbolicShapeInference._onnx_infer_subgraph.<locals>.<listcomp>B  s(   ø€ Ð%uÐ%uÐ%u¨AÐSTÔSYÐ]tÐStÐSt aÐStÐStÐStr   Ú_)rR  rY   rq  rÚ  rr  r   c                 ó,   — g | ]}t          |¦  «        ‘ŒS r	   )r5   )r   rä  s     r   r   z?SymbolicShapeInference._onnx_infer_subgraph.<locals>.<listcomp>`  s!   € ÐoÐoÐo¸AÕ4°QÑ7Ô7ÐoÐoÐor   c                 ó`   •— h | ]*}|r&|D ]#}t          |¦  «        t          u ¯|‰j        v¯!|’Œ$Œ+S r	   ©r   r   rE  )r   rV  r+   rM  s      €r   rè  z>SymbolicShapeInference._onnx_infer_subgraph.<locals>.<setcomp>a  sV   ø€ ð &
ð &
ð &
Ø¨!ð&
Ø56ð&
ð &
Ø01½$¸q¹'¼'ÅS¸.¸.ÈQÐVZÔViÐMiÐMiˆAÐMiÐMiÐMiÐMir   )%rI  rb  r˜  r   rÚ  rÙ  rQ   rƒ  rq  r…  r   rÛ  r   Úextendro  rp  rÜ  r�  rh   rJ  rG  rH  rL  r   rK  rˆ  rD  ÚcopyrC  Ú_infer_implr»  Ú_update_output_from_viÚ
ClearFieldrZ   rr  rE  r†  )rM  r   ÚsubgraphÚuse_node_inputÚinc_subgraph_idrâ  Úsymbolic_shape_inferenceÚsubgraph_shapesÚsubgraph_new_symbolic_dimsÚnew_dimsr+   rî  rê  s   `          @@r   Ú_onnx_infer_subgraphz+SymbolicShapeInference._onnx_infer_subgraph3  sÔ  øøø€ ØŒ=˜1ÒÐÝ�LŠLÐu¸¼ÐuÐuÐQUÔQ\Ð]^ÔQ_ÐuÐuÐgkÔgsÐuÐuÑvÔvÐvð
 ^Ð]­4°Ô0DÑ+EÔ+EÍÈXÌ^ÑH\ÔH\Ñ+\Ð]Ñ]Ô]ˆØ"bÐ"bÐ"bÐ"b°D´NÐ"bÑ"bÔ"bÐÝÔ%Ý�”ÑÔØÝ�”Ñ Ô Ð#WÐ#WÐ#WÐ#WÐ?VÐ#WÑ#WÔ#WÑWØDÐD°H´OÐDÑDÔDñ	
ô 
ˆ	ð 	Ô×$Ò$Ð%uÐ%uÐ%uÐ%u°´Ô1CÔ1OÐ%uÑ%uÔ%uÑvÔvÐvØÔ×$Ò$ XÔ%9Ñ:Ô:Ð:ØŒÔ×#Ò# IÑ.Ô.Ð.å#9ØŒMØÔØÔ#ØŒMØ”< #Ñ%­¨DÔ,=Ñ(>Ô(>Ñ>ð$
ñ $
ô $
Ð ð ð 	#ØÐÔ Ñ"ÐÔà ×,Ò,¨T¬\Ñ:Ô:Ð:Ø48Ô4I×4NÒ4NÑ4PÔ4PÐ Ô1Ø&Ô+ð 	JØ$×0Ò0°Ô1A×1FÒ1FÑ1HÔ1HÑIÔIÐIð 'Ô+ð 	Jà ×7Ò7Ñ9Ô9Ð9Øð 	cà×Ò Ñ(Ô(Ð(ØŒN×!Ò!Ð":Ô"BÔ"HÔ"NÐO`ÕQTÐUYÔU_ÑQ`ÔQ`ÐO`Ô"aÑbÔbÐbØ×Ò˜HÑ%Ô%Ð%ØŒ×ÒÐ7Ô?ÔEÔLÑMÔMÐMØ×Ò˜LÑ)Ô)Ð)ØÔ×"Ò"Ð#;Ô#CÔ#IÔ#TÑUÔUÐUØ×Ò˜FÑ#Ô#Ð#ØŒ×ÒÐ5Ô=ÔCÔHÑIÔIÐIàoÐoÐAYÔAaÔAgÔAnÐoÑoÔoˆð&
ð &
ð &
ð &
Ø&ð&
ñ &
ô &
Ð"ð ˆØ+ð 	Eð 	EˆAØÐ0Ô?Ð?Ð?Ð?Ð?Ø2ÔAÀ!ÔDˆH�Q‰KˆKØÔ×"Ò" 8Ñ,Ô,Ð,Ø'Ð'r   c                 ó  ‡ ‡‡‡
— d„ Š
ˆˆ fd„t          t          ‰j        ¦  «        ¦  «        D ¦   «         }t          d„ |D ¦   «         ¦  «        r±t	          |¦  «        D ]¡\  }}t          |¦  «        t          j        urŒ!t          |j        ¦  «        dk    rd }n`t          |j        ¦  «        dk    r ‰
| 	                    ¦   «         ‰¦  «        }n)t          |j        ¦  «        dk    sJ ‚ˆˆ
fd„|D ¦   «         }|||<   Œ¢d„ |D ¦   «         }t          |¦  «        }	|	dk    rj|rht	          |¦  «        D ]X\  }}|€Œt          |t          ¦  «        r2t          |¦  «        |	k     r	||	z  ||<   Œ9t          |¦  «        |	k    sJ ‚ŒO|g|	z  ||<   ŒY|S )Nc                 ó:   — |r| dz  dk    r| S t          | ¦  «        S rX   ©r=   )r   Úallow_float_valuess     r   Úint_or_floatzESymbolicShapeInference._get_int_or_float_values.<locals>.int_or_floatl  s'   € à!ð  e¨a¡i°1¢n nØ�Ý�u‘:”:Ðr   c                 ó<   •— g | ]}‰                      ‰|¦  «        ‘ŒS r	   )rÀ  rÎ  s     €€r   r   zCSymbolicShapeInference._get_int_or_float_values.<locals>.<listcomp>r  s)   ø€ ÐOÐOÐO°1�$×%Ò% d¨AÑ.Ô.ÐOÐOÐOr   c              3   ó   K  — | ]}|d uV — Œ	d S r0   r	   ©r   re   s     r   rW  zBSymbolicShapeInference._get_int_or_float_values.<locals>.<genexpr>s  ó&   è è € Ð-Ð- ˆq˜ˆ}Ð-Ð-Ð-Ð-Ð-Ð-r   rY   r   c                 ó(   •— g | ]} ‰|‰¦  «        ‘ŒS r	   r	   )r   Úvvr  r  s     €€r   r   zCSymbolicShapeInference._get_int_or_float_values.<locals>.<listcomp>~  s&   ø€ ÐNÐNÐNÀb˜\˜\¨"Ð.@ÑAÔAÐNÐNÐNr   c                 óZ   — g | ](}t          |t          ¦  «        rt          |¦  «        nd ‘Œ)S ©r   )Ú
isinstancerQ   rZ   r  s     r   r   zCSymbolicShapeInference._get_int_or_float_values.<locals>.<listcomp>€  s1   € ÐKÐKÐK¸q¥
¨1­dÑ 3Ô 3Ð:•c˜!‘f”f�f¸ÐKÐKÐKr   )r¡  rZ   rq  r\  rÂ  r   rD   r[   r(   r\   rÙ   r  rQ   )rM  r   Ú	broadcastr  Úvaluesr?   re   Únew_vÚ
values_lenÚmax_lenr  s   `` `      @r   Ú_get_int_or_float_valuesz/SymbolicShapeInference._get_int_or_float_valuesk  sÍ  øøøø€ ð	ð 	ð 	ð PÐOÐOÐOÐO½½cÀ$Ä*¹o¼oÑ8NÔ8NÐOÑOÔOˆÝÐ-Ð- fÐ-Ñ-Ô-Ñ-Ô-ð 	"å! &Ñ)Ô)ð 
"ð 
"‘��1Ý˜‘7”7¥"¤*Ð,Ð,ØÝ�q”w‘<”< !Ò#Ð#Ø �E�EÝ˜œ‘\”\ QÒ&Ð&Ø(˜L¨¯ª©¬Ð3EÑFÔF�E�Eå˜qœw™<œ<¨1Ò,Ð,Ð,Ð,ØNÐNÐNÐNÐNÈAÐNÑNÔN�EØ!��q‘	�	ØKÐKÀFÐKÑKÔKˆ
Ý�j‘/”/ˆØ�aŠ<ˆ<˜Iˆ<å! &Ñ)Ô)ð 	.ð 	.‘��1Ø�9ØÝ˜a¥Ñ&Ô&ð .Ý˜1‘v”v Ò'Ð'Ø$%¨¡K˜˜q™	˜	å" 1™vœv¨Ò0Ð0Ð0Ð0Ð0à!"  g¡�F˜1‘I�IØˆr   c                 ó´  ‡— t          |j        ¦  «        dk    sJ ‚|j        dv r|                      |dd¬¦  «        }n|                      |d¬¦  «        }t	          d„ |D ¦   «         ¦  «        rjd„ |D ¦   «         }t          |¦  «        }|r-ˆfd„t          |d	d
iŽD ¦   «         | j        |j        d         <   d S  ‰|¦  «        | j        |j        d         <   d S d S )NrY   )r‹   rx   T)r  r  )r  c              3   ó   K  — | ]}|d uV — Œ	d S r0   r	   r  s     r   rW  z@SymbolicShapeInference._compute_on_sympy_data.<locals>.<genexpr>›  r  r   c                 ó8   — g | ]}t          |t          ¦  «        ‘ŒS r	   )r  rQ   r  s     r   r   zASymbolicShapeInference._compute_on_sympy_data.<locals>.<listcomp>œ  s"   € Ð;Ð;Ð;¨q•z !¥TÑ*Ô*Ð;Ð;Ð;r   c                 ó&   •— g | ]} ‰|¦  «        ‘ŒS r	   r	   )r   ÚvsÚop_funcs     €r   r   zASymbolicShapeInference._compute_on_sympy_data.<locals>.<listcomp>Ÿ  s!   ø€ Ð3eÐ3eÐ3eÀB°G°G¸B±K´KÐ3eÐ3eÐ3er   ÚstrictFr   )rZ   rÚ  rÙ  r  r\  ÚanyÚzipr»  )rM  r   r  r  Úis_listrb   s     `   r   Ú_compute_on_sympy_dataz-SymbolicShapeInference._compute_on_sympy_data�  s  ø€ Ý�4”;ÑÔ 1Ò$Ð$Ð$Ð$ð
 Œ<˜>Ð)Ð)Ø×2Ò2°4À4Ð\`Ð2ÑaÔaˆFˆFà×2Ò2°4À4Ð2ÑHÔHˆFåÐ-Ð- fÐ-Ñ-Ô-Ñ-Ô-ð 	CØ;Ð;°FÐ;Ñ;Ô;ˆGÝ˜'‘l”lˆGØð CØ3eÐ3eÐ3eÐ3eÍ#ÈvÐJdÐ^cÐJdÐJdÐ3eÑ3eÔ3e�Ô  ¤¨Q¤Ñ0Ð0Ð0à3:°7¸6±?´?�Ô  ¤¨Q¤Ñ0Ð0Ð0ð	Cð 	Cr   c                 óz   — t          |j        ¦  «        dk    s|j        dv sJ ‚|                      |d„ ¦  «         d S )NrY   )r•   r©   r¤   c                 ó   — | d         S rK   r	   r]   s    r   ú<lambda>z<SymbolicShapeInference._pass_on_sympy_data.<locals>.<lambda>©  s
   € °A°a´D€ r   )rZ   rq  rÙ  r  ©rM  r   s     r   Ú_pass_on_sympy_dataz*SymbolicShapeInference._pass_on_sympy_data£  sR   € Ý�4”:‰Œ !Ò#Ð# t¤|ð 8
ð (
ð (
ð (
ð 
ð
 	×#Ò# D¨.¨.Ñ9Ô9Ð9Ð9Ð9r   c           
      ó  — | j         |j        d                  }|                     t          j        |j        d         t          | j         |j        d                  j        ¦  «        |                      |d¦  «        ¦  «        ¦  «         d S rK   )	r…  rÚ  r�  r   r}  r2   rq  r   r¯  )rM  r   r4   s      r   rç   z.SymbolicShapeInference._pass_on_shape_and_type«  sy   € ØŒ^˜DœK¨œNÔ+ˆØ
�ŠÝÔ)Ø”˜A”Ý-¨d¬n¸T¼ZÈ¼]Ô.KÔ.PÑQÔQØ—’  aÑ(Ô(ñô ñ	
ô 	
ð 	
ð 	
ð 	
r   c                 óè   — |› d|› �}|| j         v r@| j         |         }t          |¦  «        r!t          j        t	          |¦  «        ¦  «        n|}n!t          j        |dd¬¦  «        }|| j        |<   |S )NÚ_dTrµ  )rD  r<   rG   rH   r=   ra  rE  )rM  rR  r   rª  re   Únew_symbolic_dims         r   Ú_new_symbolic_dimz(SymbolicShapeInference._new_symbolic_dimµ  sƒ   € ØÐ$Ð$˜sÐ$Ð$ˆØ�dÔ+Ð+Ð+ØÔ% gÔ.ˆAÝ8BÀ1¹¼ÐL�uœ}­S°©V¬VÑ4Ô4Ð4È1ÐÐå$œ|¨G¸TÈtÐTÑTÔTÐØ+;ˆDÔ Ñ(ØÐr   r   c           	      ó¶   — |                       |j        › | j        › dt          | j        j        j        ¦  «                             |¦  «        › d|› d�|¦  «        S )Nrï  Ú_o)r(  rÙ  rL  rQ   ro  rp  r   re  )rM  r   Úout_idxr   s       r   Ú_new_symbolic_dim_from_outputz4SymbolicShapeInference._new_symbolic_dim_from_output¿  sb   € Ø×%Ò%ØŒ|Ðc˜Tœ\ÐcÐc­D°´Ô1CÔ1HÑ,IÔ,I×,OÒ,OÐPTÑ,UÔ,UÐcÐcÐY`ÐcÐcÐcØñ
ô 
ð 	
r   c                 óB   ‡ ‡‡— ˆˆˆ fd„t          |¦  «        D ¦   «         S )Nc                 ó>   •— g | ]}‰                      ‰‰|¦  «        ‘ŒS r	   ©r,  )r   r?   r   r+  rM  s     €€€r   r   z>SymbolicShapeInference._new_symbolic_shape.<locals>.<listcomp>Æ  s+   ø€ ÐZÐZÐZÈ�×2Ò2°4¸À!ÑDÔDÐZÐZÐZr   )r¡  )rM  rM   r   r+  s   ` ``r   Ú_new_symbolic_shapez*SymbolicShapeInference._new_symbolic_shapeÅ  s,   øøø€ ØZÐZÐZÐZÐZÐZÍeÐTXÉkÌkÐZÑZÔZÐZr   c                 ó  — |                       |d¦  «        }t          |j        ¦  «        dk    rS|                       |d¦  «        }t          |¦  «        dz
  }|r|| dz
  d…         n
|| d …         }|d         ||rdnd<   n!d }t          |d¦  «        }t          |¦  «        }t          |¦  «        |dz   k    sJ ‚|r|| dz
  d…         n
|| d …         }d„ |D ¦   «         }t	          |¦  «        s›t          | j        |j        d                  ¦  «        }	t          |	¦  «        dk    rct          |¦  «        t          |	¦  «        k    sJ ‚|r"d„ |	| dz
  d…         D ¦   «         || dz
  d…<   nd	„ |	| d …         D ¦   «         || d …<   |S t          |d
dg|z  ¦  «        }
t          |ddg|z  ¦  «        }d„ t          ||
d¬¦  «        D ¦   «         }t          |d¦  «        }|€¹dgd|z  z  }t          |dd¦  «         	                    d¦  «        }|dk    rv|dk    rp	 d„ t          || d …         |d¬¦  «        D ¦   «         }d„ t          |||d¬¦  «        D ¦   «         }n€# t          $ r d„ t          ||d¬¦  «        D ¦   «         }Y nXw xY w|dk    rg }nKdg|z  }nDt          |¦  «        d|z  k    sJ ‚d„ t          |d |…         ||d …         d¬¦  «        D ¦   «         }t          |dd¦  «        }t          |¦  «        D ]ƒ}|| |z   |rdndz            }t          |¦  «        dk    r|||         z   }|r't          j        |||         z
  ||         z  ¦  «        }n|||         z
  ||         z  }|dz   || |z   |rdndz   <   Œ„|S )Nr   rY   rÐ  éÿÿÿÿé   Úkernel_shapec                 ó.   — g | ]}t          |¦  «         ‘ŒS r	   r�  r>   s     r   r   zCSymbolicShapeInference._compute_conv_pool_shape.<locals>.<listcomp>Ø  s!   € ÐEÐEÐE°!¥
¨1¡¤Ð-ÐEÐEÐEr   c                 ó6   — g | ]}t          j        |¦  «        ‘ŒS r	   ©rG   rH   r*   s     r   r   zCSymbolicShapeInference._compute_conv_pool_shape.<locals>.<listcomp>ß  s"   € Ð2cÐ2cÐ2cÈµ5´=ÀÑ3CÔ3CÐ2cÐ2cÐ2cr   c                 ó6   — g | ]}t          j        |¦  «        ‘ŒS r	   r7  r*   s     r   r   zCSymbolicShapeInference._compute_conv_pool_shape.<locals>.<listcomp>á  s"   € Ð*SÐ*SÐ*SÀ­5¬=¸Ñ+;Ô+;Ð*SÐ*SÐ*Sr   Ú	dilationsÚstridesc                 ó*   — g | ]\  }}|d z
  |z  d z   ‘ŒS ©rY   r	   )r   ri  r+   s      r   r   zCSymbolicShapeInference._compute_conv_pool_shape.<locals>.<listcomp>æ  s(   € Ð!iÐ!iÐ!i±d°a¸ 1 q¡5¨A¡+°¡/Ð!iÐ!iÐ!ir   F©r  ÚpadsÚauto_pads   NOTSETúutf-8ÚVALIDÚNOTSETc                 ó>   — g | ]\  }}t          j        ||¦  «        ‘ŒS r	   )rG   ÚMod©r   r+   rV  s      r   r   zCSymbolicShapeInference._compute_conv_pool_shape.<locals>.<listcomp>í  s&   € ÐlÐlÐl±D°A°q¥¤	¨!¨Q¡¤ÐlÐlÐlr   c                 óR   — g | ]$\  }}}t          d |d k    r||z
  n||z
  ¦  «        ‘Œ%S r  ©rÙ   )r   ri  rV  Úrs       r   r   zCSymbolicShapeInference._compute_conv_pool_shape.<locals>.<listcomp>î  sL   € ð "ð "ð "á#˜A˜q !õ ˜A¨!¨qª&¨&  A¡ °q¸1±uÑ>Ô>ð"ð "ð "r   c                 ó:   — g | ]\  }}t          d ||z
  ¦  «        ‘ŒS r  rG  )r   ri  rV  s      r   r   zCSymbolicShapeInference._compute_conv_pool_shape.<locals>.<listcomp>ó  s5   € ð "ð "ð "Ù,0¨A¨q�˜A  A¡™œð"ð "ð "r   c                 ó   — g | ]
\  }}||z   ‘ŒS r	   r	   )r   Úp1Úp2s      r   r   zCSymbolicShapeInference._compute_conv_pool_shape.<locals>.<listcomp>ü  s    € Ð\Ð\Ð\¡f b¨"˜"˜r™'Ð\Ð\Ð\r   Ú	ceil_mode)r¹  rZ   rq  r   r  r5   r…  rÚ  r  ÚdecodeÚ	TypeErrorr¡  rG   Úceiling)rM  r   Úchannels_lastr@   ÚW_shaperM   r4  Úspatial_shapeÚis_symbolic_dimsr(   r9  r:  Úeffective_kernel_shaper>  r?  ÚresidualÚ
total_padsrM  r?   Úeffective_input_sizeÚstrided_kernel_positionss                        r   Ú_compute_conv_pool_shapez/SymbolicShapeInference._compute_conv_pool_shapeÈ  sŸ  € Ø×+Ò+¨D°!Ñ4Ô4ˆÝˆtŒz‰?Œ?˜QÒÐØ×+Ò+¨D°!Ñ4Ô4ˆGÝ�w‘<”< !Ñ#ˆDØ6CÐX˜7 D 5¨1¡9¨r >Ô2Ð2ÈÐRVÐQVÐQWÐQWÌˆLØ5<¸Q´ZˆK˜]Ð1˜˜°Ñ2Ð2àˆGÝ(¨¨~Ñ>Ô>ˆLÝ�|Ñ$Ô$ˆDå�;ÑÔ 4¨!¡8Ò+Ð+Ð+Ð+ð 8EÐ]˜ T E¨A¡I° NÔ3Ð3È+ÐW[ÐV[ÐV\ÐV\ÔJ]ˆØEÐE°}ÐEÑEÔEÐåÐ#Ñ$Ô$ð 	#Ý-¨d¬n¸T¼[È¼^Ô.LÑMÔMˆEÝ�5‰zŒz˜AŠ~ˆ~Ý˜;Ñ'Ô'­3¨u©:¬:Ò5Ð5Ð5Ð5Ø ð TØ2cÐ2cÈUÐTXÐSXÐ[\ÑS\Ð_aÐSaÔMbÐ2cÑ2cÔ2c�K  ¨¡	¨B Ñ/Ð/à*SÐ*SÀUÈDÈ5È6È6Ä]Ð*SÑ*SÔ*S�K    Ñ'Ø"Ð"å! $¨°a°S¸4±ZÑ@Ô@ˆ	Ý  i°!°°t±Ñ<Ô<ˆØ!iÐ!i½cÀ,ÐPYÐbgÐ>hÑ>hÔ>hÐ!iÑ!iÔ!iÐÝ˜T 6Ñ*Ô*ˆØˆ<Ø�3˜!˜d™(Ñ#ˆDÝ$ T¨:°yÑAÔA×HÒHÈÑQÔQˆHØ˜7Ò"Ð" x°8Ò';Ð';ð	ØlÐl½CÀÈTÈEÈFÈFÔ@SÐU\ÐejÐ<kÑ<kÔ<kÐlÑlÔl�Hð"ð "å'*Ð+AÀ7ÈHÐ]bÐ'cÑ'cÔ'cð"ñ "ô "�J�Jøõ !ð ð ð ð"ð "Ý47Ð8NÐPWÐ`eÐ4fÑ4fÔ4fð"ñ "ô "�J�J�Jðøøøð ˜WÒ$Ð$Ø�
�
à˜S 4™Z�
�
å�t‘9”9  D¡Ò(Ð(Ð(Ð(Ø\Ð\µ°D¸¸$¸´KÀÀdÀeÀeÄÐUZÐ0[Ñ0[Ô0[Ð\Ñ\Ô\ˆJå! $¨°QÑ7Ô7ˆ	Ý�t‘”ð 
	að 
	aˆAØ#.°¨u°q©yÀ-Ð<V¸B¸BÐUVÑ/WÔ#XÐ Ý�:‰Œ Ò"Ð"Ø';¸jÈ¼mÑ'KÐ$Øð lÝ+0¬=Ø)Ð,BÀ1Ô,EÑEÈÐQRÌÑSñ,ô ,Ð(Ð(ð -AÐCYÐZ[ÔC\Ñ,\ÐahÐijÔakÑ+kÐ(ØD\Ð_`ÑD`ˆK˜˜ ™	¨=Ð%? R R¸aÑ@ÑAÐAØÐs   ÈAI! É!&J
Ê	J
c                 óŒ   ‡— |rd„ ‰D ¦   «         Št          ˆfd„‰D ¦   «         ¦  «        s|                      ‰d¬¦  «         d S d S )Nc                 óV   — g | ]&}t          |¦  «        rt          |¦  «        d k    °$|‘Œ'S r<  )r<   r=   r*   s     r   r   z=SymbolicShapeInference._check_merged_dims.<locals>.<listcomp>  s.   € ÐKÐKÐK˜!­J°q©M¬MÐK½cÀ!¹f¼fÈºk¸k�A¸k¸k¸kr   c              3   ó0   •K  — | ]}|‰d          k    V — ŒdS r‘  r	   r’  s     €r   rW  z<SymbolicShapeInference._check_merged_dims.<locals>.<genexpr>  ó+   øè è € Ð.Ð. A�1˜˜Qœ’<Ð.Ð.Ð.Ð.Ð.Ð.r   TrŸ  )r\  rm  )rM  r  r�  s    ` r   r™  z)SymbolicShapeInference._check_merged_dims  sm   ø€ Øð 	LØKÐK˜tÐKÑKÔKˆDÝÐ.Ð.Ð.Ð.¨Ð.Ñ.Ô.Ñ.Ô.ð 	8Ø×%Ò% d°$Ð%Ñ7Ô7Ð7Ð7Ð7ð	8ð 	8r   Nc                 óè  — |                       |d¦  «        }|                       |d¦  «        }t          |¦  «        }t          |¦  «        }d}d}|dk    r|dk    sJ ‚|dk    r	|dk    rg }	nl|dk    rd}g |d |…         ¢|d         ‘}	nO|dk    rd}|d |…         }	n<d}d}g |                      |d d…         |d d…         ¦  «        ¢|d         ‘|d         ‘}	|                      ||         ||         gd¬¦  «         |€'| j        |j        d                  j        j        j        }| j        |j	        d                  }
|
 
                    t          j        |j	        d         ||	¦  «        ¦  «         d S )Nr   rY   éþÿÿÿr2  FrŽ  )r¯  rZ   r«  r™  r…  rq  r   r"   r1   rÚ  r�  r   r}  )rM  r   Úoutput_dtypeÚ	lhs_shapeÚ	rhs_shapeÚlhs_rankÚrhs_rankÚlhs_reduce_dimÚrhs_reduce_dimr¤  r4   s              r   Ú_compute_matmul_shapez,SymbolicShapeInference._compute_matmul_shape  s¡  € Ø—O’O D¨!Ñ,Ô,ˆ	Ø—O’O D¨!Ñ,Ô,ˆ	Ý�y‘>”>ˆÝ�y‘>”>ˆØˆØˆØ˜!Š|ˆ| ¨1¢  Ð,Ø�qŠ=ˆ=˜X¨š]˜]ØˆIˆIØ˜Š]ˆ]ØˆNØD˜) O ^ OÔ4ÐD°iÀ´mÐDˆIˆIØ˜Š]ˆ]ØˆNØ! / > /Ô2ˆIˆIàˆNØˆNØo˜$×0Ò0°¸3¸B¸3´ÀÈ3ÈBÈ3ÄÑPÔPÐoÐR[Ð\^ÔR_ÐoÐajÐkmÔanÐoˆIà×ÒØ�~Ô&¨	°.Ô(AÐBØ!ð 	 ñ 	
ô 	
ð 	
ð Ðàœ>¨$¬*°Q¬-Ô8Ô=ÔIÔSˆLØŒ^˜DœK¨œNÔ+ˆØ
�Š•FÔ1°$´+¸a´.À,ÐPYÑZÔZÑ[Ô[Ð[Ð[Ð[r   c           
      ó°  — t          |¦  «        r|j        j        j        n|j        }t          |¦  «        r|j        j        j        n|j        }|j        |j        k    r…|j        r|j        n|j        }t          d|› dt          j        j	        j
                             |j        ¦  «        › dt          j        j	        j
                             |j        ¦  «        › �¦  «        ‚|                     d¦  «        rÈt          t          |j        j        |j        j        d¬¦  «        ¦  «        D ]’\  }}	|	d         |	d         k    r{t          j                             ¦   «         }
t          |¦  «        s)t'          |                      |||¦  «        ¦  «        |
_        |j        j        |                              |
¦  «         Œ“d	S |                     |¦  «         d	S )
zh
        update dst_tensor_type to be compatible with src_tensor_type when dimension mismatches
        z	For node z:, dst_tensor_type.elem_type != src_tensor_type.elem_type: z vs r(   Fr=  r   rY   N)r&   r#   r1   r"   r   rÙ  Ú
ValueErrorr7   Úonnx_pbÚTensorProtoÚDataTypeÚNamer,   rÂ  r  r(   r   ÚTensorShapeProtoÚ	Dimensionr   r,  rs  r�  )rM  r   r+  Údst_typeÚsrc_typeÚdst_tensor_typeÚsrc_tensor_typeÚnode_idÚdiÚdsrª  s              r   Ú_fuse_tensor_typez(SymbolicShapeInference._fuse_tensor_type1  sé  € õ
 =HÈÑ<QÔ<QÐkˆHÔ"Ô,Ô8Ð8ÐW_ÔWkð 	õ =HÈÑ<QÔ<QÐkˆHÔ"Ô,Ô8Ð8ÐW_ÔWkð 	ð Ô$¨Ô(AÒAÐAØ#'¤9Ð>�d”i�i°$´,ˆGÝðW˜Gð Wð WÝ”<Ô+Ô4×9Ò9¸/Ô:SÑTÔTðWð Wå”<Ô+Ô4×9Ò9¸/Ô:SÑTÔTðWð Wñô ð ð
 ×#Ò# GÑ,Ô,ð 
	6Ý#¥C¨Ô(=Ô(AÀ?ÔCXÔC\ÐejÐ$kÑ$kÔ$kÑlÔlð Dð D‘��BØ�a”5˜B˜qœE’>�>õ #Ô3×=Ò=Ñ?Ô?�GÝ& xÑ0Ô0ð gÝ,/°×0RÒ0RÐSWÐY`ÐbdÑ0eÔ0eÑ,fÔ,f˜Ô)Ø#Ô)Ô-¨bÔ1×:Ò:¸7ÑCÔCÐCøðDð Dð ×$Ò$ _Ñ5Ô5Ð5Ð5Ð5r   c           	      óV  — |                       |d¦  «        }|                       |d¦  «        }| j        |j        d                  }|                     t	          j        |j        d         | j        |j        d                  j        j        j	        |d d…         |z   ¦  «        ¦  «         d S ©Nr   rY   r2  ©
r¯  r…  rÚ  r�  r   r}  rq  r   r"   r1   )rM  r   Ú
data_shapeÚindices_shaper4   s        r   rè   z3SymbolicShapeInference._infer_ArrayFeatureExtractorN  sœ   € Ø—_’_ T¨1Ñ-Ô-ˆ
ØŸš¨¨aÑ0Ô0ˆØŒ^˜DœK¨œNÔ+ˆØ
�ŠÝÔ)Ø”˜A”Ø”˜tœz¨!œ}Ô-Ô2Ô>ÔHØ˜3˜B˜3” -Ñ/ñô ñ	
ô 	
ð 	
ð 	
ð 	
r   c                 ó–   ‡ — d„ d„ d„ d„ ˆ fd„ˆ fd„d„ d„ d	„ d
„ dœ
}|j         |v sJ ‚‰                      |||j                  ¦  «         d S )Nc                 ó$   — | d         | d         z   S ©Nr   rY   r	   ©Úls    r   r!  zDSymbolicShapeInference._infer_symbolic_compute_ops.<locals>.<lambda>\  ó   € ˜Q˜qœT A a¤D™[€ r   c                 ó¨   — t          | d         | d         z  t          ¦  «        rt          | d         | d         z  ¦  «        n| d         | d         z  S r€  ©r  Úfloatr=   r�  s    r   r!  zDSymbolicShapeInference._infer_symbolic_compute_ops.<locals>.<lambda>]  sM   € Ý%/°°!´¸¸!¼±½eÑ%DÔ%DÐV•�A�a”D˜A˜aœD‘LÑ!Ô!Ð!È!ÈAÌ$ÐRSÐTUÔRVÉ,ð r   c                 ó&   — | d         | d         k    S r€  r	   r�  s    r   r!  zDSymbolicShapeInference._infer_symbolic_compute_ops.<locals>.<lambda>`  s   € ˜q œt q¨¤tš|€ r   c                 ó6   — t          j        | d         ¦  «        S rK   )rG   Úfloorr�  s    r   r!  zDSymbolicShapeInference._infer_symbolic_compute_ops.<locals>.<lambda>a  s   € �uœ{¨1¨Q¬4Ñ0Ô0€ r   c                 ó6  •— t          | d         ¦  «        r't          | d         ¦  «        ‰j         k     r| d         n\t          | d         ¦  «        r't          | d         ¦  «        ‰j         k     r| d         n t          j        | d         | d         ¦  «        S r€  )r<   r=   rJ  rG   r†   ©r‚  rM  s    €r   r!  zDSymbolicShapeInference._infer_symbolic_compute_ops.<locals>.<lambda>b  s‘   ø€ å˜a œdÑ#Ô#ðjÝ(+¨A¨a¬D©	¬	°T´]°NÒ(BÐ(Bð �!”�å(¨¨1¬Ñ.Ô.Ðhµ3°q¸´t±9´9ÀÄ¸~Ò3MÐ3M�a˜”d�dÕSXÔS\Ð]^Ð_`Ô]aÐcdÐefÔcgÑShÔShð r   c                 ó2  •— t          | d         ¦  «        r&t          | d         ¦  «        ‰j        k    r| d         n[t          | d         ¦  «        r&t          | d         ¦  «        ‰j        k    r| d         n t          j        | d         | d         ¦  «        S r€  )r<   r=   rJ  rG   r‰   r‹  s    €r   r!  zDSymbolicShapeInference._infer_symbolic_compute_ops.<locals>.<lambda>g  s�   ø€ å˜a œdÑ#Ô#ðiÝ(+¨A¨a¬D©	¬	°D´MÒ(AÐ(Að �!”�å(¨¨1¬Ñ.Ô.Ðgµ3°q¸´t±9´9¸t¼}Ò3LÐ3L�a˜”d�dÕRWÔR[Ð\]Ð^_Ô\`ÐbcÐdeÔbfÑRgÔRgð r   c                 ó¨   — t          | d         | d         z  t          ¦  «        rt          | d         | d         z  ¦  «        n| d         | d         z  S r€  r…  r�  s    r   r!  zDSymbolicShapeInference._infer_symbolic_compute_ops.<locals>.<lambda>l  sM   € µ¸A¸a¼DÀ1ÀQÄ4¹KÍÑ1OÔ1OÐ`�S  1¤¨¨!¬¡Ñ-Ô-Ð-ÐUVÐWXÔUYÐ\]Ð^_Ô\`ÑU`€ r   c                 ó$   — | d         | d         z
  S r€  r	   r�  s    r   r!  zDSymbolicShapeInference._infer_symbolic_compute_ops.<locals>.<lambda>m  rƒ  r   c                 ó2   — | d         r| d         n| d         S ©Nr   rY   rÐ  r	   r�  s    r   r!  zDSymbolicShapeInference._infer_symbolic_compute_ops.<locals>.<lambda>n  s   €  q¨¤tÐ5˜q œt˜t°°1´€ r   c                 ó   — | d          S rK   r	   r�  s    r   r!  zDSymbolicShapeInference._infer_symbolic_compute_ops.<locals>.<lambda>o  s   € ˜a œd˜U€ r   )
rj   rx   r{   r|   r†   r‰   r‹   r¥   rª   r¬   )rÙ  r  )rM  r   Úfuncss   `  r   ræ   z2SymbolicShapeInference._infer_symbolic_compute_opsZ  s§   ø€ à(Ð(ðð ð ,Ð+Ø0Ð0ðð ð ð ð
ð ð ð ð
 aÐ`Ø(Ð(Ø5Ð5Ø"�?ð)
ð 
ˆð, Œ|˜uÐ$Ð$Ð$Ð$Ø×#Ò# D¨%°´Ô*=Ñ>Ô>Ð>Ð>Ð>r   c                 ó0   — |                       |¦  «         d S r0   )r#  r"  s     r   rë   z"SymbolicShapeInference._infer_Castt  s   € Ø× Ò  Ñ&Ô&Ð&Ð&Ð&r   c           
      ó„  — | j         |j        d                  j        j        j        }|t
          j        j        k    rt
          j        j        }nt
          j        j        }| j         |j	        d                  }| 
                    t          j        |j	        d         ||                      |d¦  «        ¦  «        ¦  «         d S rK   )r…  rq  r   r"   r1   r7   rl  ÚSTRINGÚINT64rÚ  r�  r   r}  r¯  )rM  r   Ú
input_typeÚoutput_typer4   s        r   rì   z,SymbolicShapeInference._infer_CategoryMapperw  s•   € Ø”^ D¤J¨q¤MÔ2Ô7ÔCÔMˆ
Ø�Ô)Ô0Ò0Ð0ÝÔ*Ô0ˆKˆKåÔ*Ô1ˆKØŒ^˜DœK¨œNÔ+ˆØ
�Š•FÔ1°$´+¸a´.À+ÈtÏÊÐ_cÐefÑOgÔOgÑhÔhÑiÔiÐiÐiÐir   c                 óÈ  — |                       |d¦  «        }t          |                      |¦  «        ¦  «        }t          |d¦  «        }|€|g}n"|}||t	          |t          |¦  «        ¦  «        <   | j        |j        d                  }|                     t          j
        |j        d         | j        |j        d                  j        j        j        |¦  «        ¦  «         d S )Nr   rL   )r¯  r   r,  r   rN   rZ   r…  rÚ  r�  r   r}  rq  r   r"   r1   )rM  r   Úinput_shapeÚcompress_lenrL   Úoutput_shaper4   s          r   rí   z&SymbolicShapeInference._infer_Compress€  sÖ   € Ø—o’o d¨AÑ.Ô.ˆå˜4×=Ò=¸dÑCÔCÑDÔDˆÝ˜T 6Ñ*Ô*ˆØˆ<à(˜>ˆLˆLà&ˆLØIUˆLÕ-¨dµC¸Ñ4DÔ4DÑEÔEÑFØŒ^˜DœK¨œNÔ+ˆØ
�ŠÝÔ)Ø”˜A”Ø”˜tœz¨!œ}Ô-Ô2Ô>ÔHØñô ñ	
ô 	
ð 	
ð 	
ð 	
r   c           	      óæ  ‡ ‡‡‡— t          ˆ fd„‰j        D ¦   «         ¦  «        rñ‰                      ‰¦  «        }t          d„ |D ¦   «         ¦  «        rÃt	          ‰d¦  «        dk    sJ ‚g ‰ j        ‰j        d         <   t          t          ‰j        ¦  «        ¦  «        D ]v}||         }t          |t          ¦  «        r,‰ j        ‰j        d                                       |¦  «         ŒK‰ j        ‰j        d                                       |¦  «         Œw‰                      ‰d¦  «        }t          t	          ‰d¦  «        t          |¦  «        ¦  «        }t          dt          ‰j        ¦  «        ¦  «        D ].}‰                      ‰|¦  «        }|r||         ||         z   ||<   Œ/‰                      |¦  «         t          t          |¦  «        ¦  «        D ]™Š‰|k    rŒ	ˆˆˆ fd„t          t          ‰j        ¦  «        ¦  «        D ¦   «         Št          ˆfd„‰D ¦   «         ¦  «        rŒT‰                      ‰¦  «        }	t#          |	¦  «        t$          u r|	r‰ j        |	         nd |‰<   Œ”|	|‰<   Œš‰ j        ‰j        d                  }
|
                     t-          j        ‰j        d         ‰ j        ‰j        d                  j        j        j        t5          |¦  «        ¦  «        ¦  «         d S )Nc              3   ó<   •K  — | ]}|‰j         v p|‰j        v V — Œd S r0   )r»  r„  r×  s     €r   rW  z7SymbolicShapeInference._infer_Concat.<locals>.<genexpr>•  s8   øè è € ÐTÐTÀAˆq�DÔ$Ð$Ð?¨¨TÔ-?Ð(?ÐTÐTÐTÐTÐTÐTr   c              3   ó   K  — | ]}|d uV — Œ	d S r0   r	   r  s     r   rW  z7SymbolicShapeInference._infer_Concat.<locals>.<genexpr>—  s&   è è € Ð1Ð1 Q�1˜D�=Ð1Ð1Ð1Ð1Ð1Ð1r   rL   r   rY   c                 ót   •— g | ]4}‰                      ‰|¦  «        ¯‰                      ‰|¦  «        ‰         ‘Œ5S r	   rÍ  )r   Úi_idxr+   r   rM  s     €€€r   r   z8SymbolicShapeInference._infer_Concat.<locals>.<listcomp>¬  sD   ø€ ÐxÐxÐx¸Ð[_×[jÒ[jÐkoÐqvÑ[wÔ[wÐx�D—O’O D¨%Ñ0Ô0°Ô3ÐxÐxÐxr   c              3   ó0   •K  — | ]}|‰d          k    V — ŒdS r‘  r	   r’  s     €r   rW  z7SymbolicShapeInference._infer_Concat.<locals>.<genexpr>­  r^  r   )r  rq  r  r\  r   r»  rÚ  r¡  rZ   r  rQ   ró  r¸  r¹  rN   rÅ  r�  r   r   rE  r…  r�  r   r}  r"   r1   rA   )rM  r   r  r?   r   r@   rL   r¡  rš  r–  r4   r+   r  s   ``         @@r   rî   z$SymbolicShapeInference._infer_Concat”  sø  øøøø€ ÝÐTÐTÐTÐTÈÌÐTÑTÔTÑTÔTð 
	GØ×2Ò2°4Ñ8Ô8ˆFÝÐ1Ð1¨&Ð1Ñ1Ô1Ñ1Ô1ð GÝ$ T¨6Ñ2Ô2°aÒ7Ð7Ð7Ð7Ø35�Ô  ¤¨Q¤Ñ0Ý�s 4¤:™œÑ/Ô/ð Gð G�AØ" 1œI�EÝ! %­Ñ.Ô.ð GØÔ(¨¬°Q¬Ô8×?Ò?ÀÑFÔFÐFÐFàÔ(¨¬°Q¬Ô8×?Ò?ÀÑFÔFÐFÐFà×+Ò+¨D°!Ñ4Ô4ˆÝ#¥M°$¸Ñ$?Ô$?ÅÀ[ÑAQÔAQÑRÔRˆÝ˜1�c $¤*™oœoÑ.Ô.ð 	Jð 	JˆEØ×/Ò/°°eÑ<Ô<ˆKØð JØ$/°Ô$5¸ÀDÔ8IÑ$I�˜DÑ!øØ×"Ò" ;Ñ/Ô/Ð/å•s˜;Ñ'Ô'Ñ(Ô(ð 
	(ð 
	(ˆAØ�DŠyˆyØØxÐxÐxÐxÐxÐxÅÅsÈ4Ì:ÁÄÑAWÔAWÐxÑxÔxˆDÝÐ.Ð.Ð.Ð.¨Ð.Ñ.Ô.Ñ.Ô.ð ØØ×(Ò(¨Ñ.Ô.ˆFÝ�F‰|Œ|�sÐ"Ð"Ø@FÐ!P Ô!4°VÔ!<Ð!<ÈD�˜A‘�à!'�˜A‘�ØŒ^˜DœK¨œNÔ+ˆØ
�ŠÝÔ)Ø”˜A”Ø”˜tœz¨!œ}Ô-Ô2Ô>ÔHÝ*¨;Ñ7Ô7ñô ñ	
ô 	
ð 	
ð 	
ð 	
r   c                 ó8  — |                       |d¦  «        }t          |d¦  «        rdnd}t          t          |d¦  «        t          |¦  «        |z   ¦  «        }t	          |                      |d|¦  «        ¦  «        }|}|rg |d |…         ¢|‘||d …         ¢}n|||<   | j        |j        d                  }|                     t          j
        |j        d         | j        |j        d                  j        j        j        j        j        |¦  «        ¦  «         d S )Nr   Únew_axisrY   rL   )r¯  r   rN   rZ   r   r,  r…  rÚ  r�  r   r}  rq  r   r#   r1   r"   )rM  r   Ú	seq_shaper¤  rL   Ú
concat_dimr¤  r4   s           r   rï   z0SymbolicShapeInference._infer_ConcatFromSequence½  s  € Ø—O’O D¨!Ñ,Ô,ˆ	Ý% d¨JÑ7Ô7Ð>�1�1¸QˆÝ#¥M°$¸Ñ$?Ô$?ÅÀYÁÄÐRZÑAZÑ[Ô[ˆÝ˜×;Ò;¸DÀ!ÀTÑJÔJÑKÔKˆ
Øˆ	Øð 	)ØJ˜) E T EÔ*ÐJ¨JÐJ¸À4À5À5Ô9IÐJˆIˆIà(ˆI�d‰OØŒ^˜DœK¨œNÔ+ˆØ
�ŠÝÔ)Ø”˜A”Ø”˜tœz¨!œ}Ô-Ô2Ô@ÔJÔVÔ`Øñô ñ	
ô 	
ð 	
ð 	
ð 	
r   c                 ót   — t          |d¦  «        }t          j        |¦  «        | j        |j        d         <   d S )Nr   r   )r   r   r¼  r»  rÚ  )rM  r   Úts      r   rð   z&SymbolicShapeInference._infer_ConstantÐ  s5   € Ý˜$ Ñ(Ô(ˆÝ+7Ô+@ÀÑ+CÔ+CˆÔ˜œ QœÑ(Ð(Ð(r   c           	      ó  — |                       |¦  «        d         }| j        |j        d                  }|�Ït          |¦  «        t          k    r|g}|                      |¦  «         |j        j        j        t          j	        j
        k    rzt          d„ |D ¦   «         ¦  «        rat          j        d„ |D ¦   «         t          j        ¬¦  «        t          j        t#          |dd¦  «        ¦  «        z  | j        |j        d         <   n0|                      |                      |d¦  «        d         |¦  «        }|                     t-          j        |j        d         |j        j        j        t1          |¦  «        ¦  «        ¦  «         d S )Nr   c              3   ó4   K  — | ]}t          |¦  «        V — Œd S r0   r�  ©r   r^   s     r   rW  z@SymbolicShapeInference._infer_ConstantOfShape.<locals>.<genexpr>Ü  s*   è è € ÐNrÐNrÐabÍzÐZ[É}Ì}ÐNrÐNrÐNrÐNrÐNrÐNrr   c                 ó,   — g | ]}t          |¦  «        ‘ŒS r	   r  r«  s     r   r   zASymbolicShapeInference._infer_ConstantOfShape.<locals>.<listcomp>Þ  s   € Ð1Ð1Ð1 •S˜‘V”VÐ1Ð1Ð1r   )Údtyper   )r  r…  rÚ  r   rQ   rÅ  r"   r1   r7   rl  r–  r\  rD   ÚonesrE   r   r¼  r   r»  r0  r¯  r�  r   r}  rA   ©rM  r   r@   r4   s       r   rñ   z-SymbolicShapeInference._infer_ConstantOfShapeÔ  sj  € Ø×3Ò3°DÑ9Ô9¸!Ô<ˆØŒ^˜DœK¨œNÔ+ˆØÐ"Ý�KÑ Ô ¥DÒ(Ð(Ø*˜m�Ø×&Ò& {Ñ3Ô3Ð3àŒwÔ"Ô,µÔ0@Ô0FÒFÐFÍ3ÐNrÐNrÐfqÐNrÑNrÔNrÑKrÔKrÐFÝ35´7Ø1Ð1 [Ð1Ñ1Ô1½¼ð4ñ 4ô 4å Ô)­-¸¸gÀqÑ*IÔ*IÑJÔJñ4K�Ô  ¤¨Q¤Ñ0øð ×2Ò2°4·?²?À4ÈÑ3KÔ3KÈAÔ3NÐPTÑUÔUˆKà
�ŠÝÔ)Ø”˜A”Ø”Ô#Ô-Ý*¨;Ñ7Ô7ñô ñ	
ô 	
ð 	
ð 	
ð 	
r   c           	      ó*  — |                       |¦  «        }|                      |¦  «         | j        |j        d                  }|                     t          j        |j        d         |j        j        j	        t          |¦  «        ¦  «        ¦  «         d S rK   )rZ  rÅ  r…  rÚ  r�  r   r}  r   r"   r1   rA   r¯  s       r   rò   z"SymbolicShapeInference._infer_Conví  sŠ   € Ø×3Ò3°DÑ9Ô9ˆØ×"Ò" ;Ñ/Ô/Ð/ØŒ^˜DœK¨œNÔ+ˆØ
�ŠÝÔ)Ø”˜A”Ø”Ô#Ô-Ý*¨;Ñ7Ô7ñô ñ	
ô 	
ð 	
ð 	
ð 	
r   c           	      óZ  — |                       |d¬¦  «        }|                      |¦  «         | j        |j        d                  }|                     t          j        |j        d         | j        |j        d                  j        j	        j
        t          |¦  «        ¦  «        ¦  «         d S )NT)rQ  r   )rZ  rÅ  r…  rÚ  r�  r   r}  rq  r   r"   r1   rA   r¯  s       r   r)  z&SymbolicShapeInference._infer_NhwcConvù  s�   € Ø×3Ò3°DÈÐ3ÑMÔMˆØ×"Ò" ;Ñ/Ô/Ð/ØŒ^˜DœK¨œNÔ+ˆØ
�ŠÝÔ)Ø”˜A”Ø”˜tœz¨!œ}Ô-Ô2Ô>ÔHÝ*¨;Ñ7Ô7ñô ñ	
ô 	
ð 	
ð 	
ð 	
r   c                 ó  — | j         |j        d                  j        j        j        }|                      |d¦  «        }| j         |j        d                  }|                     t          j	        |j        d         ||¦  «        ¦  «         d S rX   )
r…  rq  r   r"   r1   r¯  rÚ  r�  r   r}  ©rM  r   ra  rœ  r4   s        r   r  z.SymbolicShapeInference._infer_DequantizeLinear  sr   € à”~ d¤j°¤mÔ4Ô9ÔEÔOˆð —’ t¨QÑ/Ô/ˆàŒ^˜DœK¨œNÔ+ˆØ
�Š•FÔ1°$´+¸a´.À,ÐP\Ñ]Ô]Ñ^Ô^Ð^Ð^Ð^r   c                 ó„  — t           j        j        }t          |j        ¦  «        dk    r4|j        d         r'| j        |j        d                  j        j        j        }|  	                    |d¦  «        }| j        |j
        d                  }|                     t          j        |j
        d         ||¦  «        ¦  «         d S )NrÐ  r   )r7   rl  ÚUINT8rZ   rq  r…  r   r"   r1   r¯  rÚ  r�  r   r}  r³  s        r   r/  z,SymbolicShapeInference._infer_QuantizeLinear  s�   € õ Ô'Ô-ˆÝˆtŒz‰?Œ?˜QÒÐ 4¤:¨a¤=ÐØœ>¨$¬*°Q¬-Ô8Ô=ÔIÔSˆLð —’ t¨QÑ/Ô/ˆàŒ^˜DœK¨œNÔ+ˆØ
�Š•FÔ1°$´+¸a´.À,ÐP\Ñ]Ô]Ñ^Ô^Ð^Ð^Ð^r   c                 óp  — | j         |j        d                  j        j        j        }|                      |d¦  «        }|                      |d¦  «        }|                      ||¦  «        }| j         |j        d                  }|                     t          j
        |j        d         ||¦  «        ¦  «         d S ©Nr   r3  )r…  rq  r   r"   r1   r¯  r«  rÚ  r�  r   r}  )rM  r   ra  Úinput_1_shapeÚinput_2_shaper¤  r4   s          r   r.  z+SymbolicShapeInference._infer_QLinearBinary  sœ   € à”~ d¤j°¤mÔ4Ô9ÔEÔOˆð Ÿš¨¨aÑ0Ô0ˆØŸš¨¨aÑ0Ô0ˆð ×*Ò*¨=¸-ÑHÔHˆ	àŒ^˜DœK¨œNÔ+ˆØ
�Š•FÔ1°$´+¸a´.À,ÐPYÑZÔZÑ[Ô[Ð[Ð[Ð[r   c                 óŽ  — t          |d¦  «        }|                     dd¦  «        }|                     d¦  «        }|dk    r
|d |…         n|}d}d}d}i }|                     d¦  «        }	|	D ]¿}
|
                     d¦  «        }|                      ||¦  «        }t          |¦  «        }|dk    r |dk    r|t          |
¦  «        z
  d	z   }|d
z   }t          d
|d
z   ¦  «        D ]D}|
|          }|dk    r3||          }||vr|||<   Œ$t          |¦  «        t          j	        ur|||<   ŒE|d
z   }ŒÀg }ddl
m}  |¦   «         }|dk    r|||dz   d …         }|                     d¦  «        }|dk    r-t          |¦  «        D ]}|                     ||         ¦  «         Œ|D ]#}|dk    r|                     ||         ¦  «         Œ$n‘t          |¦  «        D ]}|                     ||         ¦  «         Œ|D ]&}|dk    r|dk    r||v r||         d
z   ||<   Œ!d
||<   Œ'|                     ¦   «         D ]&\  }}|d
k    r|                     ||         ¦  «         Œ'| j        |j        d                  j        j        j        }| j        |j        d                  }|                     t)          j        |j        d         ||¦  «        ¦  «         d S )NÚequationó    r   s   ->r2  r   ó   ,s   ...r3  rY   é.   )ÚOrderedDictrÐ  é,   )r   ÚreplaceÚfindÚsplitr¯  rZ   r¡  r   rG   ra  Úcollectionsr¿  r¸  r^  r…  rq  r"   r1   rÚ  r�  r   r}  )rM  r   r»  Ú	mid_indexÚleft_equationÚnum_operandsÚnum_ellipsisÚnum_ellipsis_indicesÚletter_to_dimÚtermsÚtermÚellipsis_indexr(   rM   r?   Úletterr   rÃ  r¿  Únum_letter_occurrencesÚright_equationÚright_ellipsis_indexÚcÚkeyr   ra  r4   s                              r   ró   z$SymbolicShapeInference._infer_Einsum*  sV  € å   zÑ2Ô2ˆØ×#Ò# D¨#Ñ.Ô.ˆØ—M’M %Ñ(Ô(ˆ	Ø09¸R²°˜  ) Ô,Ð,ÀXˆàˆØˆØ Ðàˆà×#Ò# DÑ)Ô)ˆØð 	,ð 	,ˆDØ!ŸYšY vÑ.Ô.ˆNØ—O’O D¨,Ñ7Ô7ˆEÝ�u‘:”:ˆDØ Ò#Ð#Ø 1Ò$Ð$Ø+/µ#°d±)´)Ñ+;¸aÑ+?Ð(Ø+¨aÑ/�Ý˜1˜d Q™hÑ'Ô'ð 4ð 4�Ø˜q˜bœ�Ø˜R’<�<Ø  œ)�CØ ]Ð2Ð2Ø03˜ fÑ-Ð-Ý˜c™œ­%¬,Ð6Ð6Ø03˜ fÑ-øØ'¨!Ñ+ˆLˆLàˆØ+Ð+Ð+Ð+Ð+Ð+à!, ¡¤ÐØ˜Š?ˆ?Ø% i°!¡m o oÔ6ˆNØ#1×#6Ò#6°vÑ#>Ô#>Ð Ø# rÒ)Ð)ÝÐ3Ñ4Ô4ð 5ð 5�AØ#×*Ò*¨5°¬8Ñ4Ô4Ð4Ð4Ø#ð =ð =�Ø˜’7�7Ø#×*Ò*¨=¸Ô+;Ñ<Ô<Ð<øð=õ Ð/Ñ0Ô0ð 1ð 1�Ø×&Ò& u¨Q¤xÑ0Ô0Ð0Ð0Ø"ð 6ð 6�Ø˜’7�7˜q Bšw˜wØÐ2Ð2Ð2Ø4JÈ1Ô4MÐPQÑ4QÐ.¨qÑ1Ð1à45Ð.¨qÑ1øØ4×:Ò:Ñ<Ô<ð ?ð ?‘
��UØ˜A’:�:Ø#×*Ò*¨=¸Ô+=Ñ>Ô>Ð>øà”~ d¤j°¤mÔ4Ô9ÔEÔOˆØŒ^˜DœK¨œNÔ+ˆØ
�Š•FÔ1°$´+¸a´.À,ÐP_Ñ`Ô`ÑaÔaÐaÐaÐar   c                 óÖ  — t          |                      |d¦  «        d¬¦  «        }|�Á|                      |¦  «         |                      |d¦  «        }|                      |t          |¦  «        ¦  «        }| j        |j        d                  }|                     t          j
        |j        d         | j        |j        d                  j        j        j        |¦  «        ¦  «         d S d S )NrY   T©ra   r   )rb   rÀ  rÅ  r¯  r«  rA   r…  rÚ  r�  r   r}  rq  r   r"   r1   )rM  r   Úexpand_to_shaper(   r¤  r4   s         r   rô   z$SymbolicShapeInference._infer_Expandh  sß   € Ý! $×"5Ò"5°d¸AÑ">Ô">È$ÐOÑOÔOˆØÐ&à×&Ò& Ñ7Ô7Ð7Ø—O’O D¨!Ñ,Ô,ˆEØ×.Ò.¨uÕ6PÐQ`Ñ6aÔ6aÑbÔbˆIØ” ¤¨A¤Ô/ˆBØ�KŠKÝÔ-Ø”K ”NØ”N 4¤:¨a¤=Ô1Ô6ÔBÔLØñô ñô ð ð ð ð 'Ð&r   c           
      óÚ  ‡— |                       |d¦  «        }t          t          |dd¦  «        t          |¦  «        ¦  «        }|                       |d¦  «        }| j        |j        d                  }|j        dk    r(| j        |j        d                  j        j	        j
        }nJ|j        dk    r(| j        |j        d                  j        j	        j
        }nt          d|j        › �¦  «        ‚|                     t          j        |j        d         ||d |…         |z   ||dz   d …         z   ¦  «        ¦  «         |j        d         | j        v �rt          |¦  «        dk    �rt          |dd¦  «        dk    rï|                      |d¦  «        }|�Ù| j        |j        d                  Št          ‰¦  «        t"          u r€t          |¦  «        t$          j        u r;t          |j        ¦  «        dk    r#ˆfd„|D ¦   «         | j        |j        d         <   d S ‰t+          |¦  «                 | j        |j        d         <   d S |dk    s|d	k    sJ ‚‰| j        |j        d         <   d S d S d S d S d S )
Nr   rL   rY   r}   r·   rÐ  zUnsupported Gather op_type: c                 ó:   •— g | ]}‰t          |¦  «                 ‘ŒS r	   r  )r   r?   Údatas     €r   r   z8SymbolicShapeInference._infer_Gather.<locals>.<listcomp>’  s#   ø€ Ð;VÐ;VÐ;VÈQ¸DÅÀQÁÄ¼LÐ;VÐ;VÐ;Vr   r2  )r¯  rN   r   rZ   r…  rÚ  rÙ  rq  r   r"   r1   rj  r�  r   r}  r»  rÀ  rQ   rD   r[   r(   r=   )	rM  r   r|  rL   r}  r4   r1   r®  rÙ  s	           @r   rõ   z$SymbolicShapeInference._infer_Gatherx  s[  ø€ Ø—_’_ T¨1Ñ-Ô-ˆ
Ý#¥M°$¸ÀÑ$BÔ$BÅCÈ
ÁOÄOÑTÔTˆØŸš¨¨aÑ0Ô0ˆØŒ^˜DœK¨œNÔ+ˆØŒ<˜8Ò#Ð#Øœ t¤z°!¤}Ô5Ô:ÔFÔPˆIˆIØŒ\Ð3Ò3Ð3àœ t¤z°!¤}Ô5Ô:ÔFÔPˆIˆIåÐJ¸D¼LÐJÐJÑKÔKÐKØ
�ŠÝÔ)Ø”˜A”ØØ˜5˜D˜5Ô! MÑ1°J¸tÀa¹x¸z¸zÔ4JÑJñô ñ	
ô 	
ð 	
ð Œ:�aŒ=˜DÔ,Ð,Ñ,µ°Z±´ÀAÒ1EÑ1EÍ-ÐX\Ð^dÐfgÑJhÔJhÐlmÒJmÐJmØ×%Ò% d¨AÑ.Ô.ˆCØˆØÔ'¨¬
°1¬Ô6�Ý˜‘:”:¥Ð%Ð%Ý˜C‘y”y¥B¤JÐ.Ð.µ3°s´y±>´>ÀQÒ3FÐ3FØ;VÐ;VÐ;VÐ;VÐRUÐ;VÑ;VÔ;V˜Ô(¨¬°Q¬Ñ8Ð8Ð8à;?ÅÀCÁÄ¼>˜Ô(¨¬°Q¬Ñ8Ð8Ð8à !š8˜8 s¨b¢y y yÐ0Ø7;�DÔ$ T¤[°¤^Ñ4Ð4Ð4ð -Ð,Ð1EÐ1EÐJmÐJmàˆr   c                 ó  — |                       |d¦  «        }| j        |j        d                  }|                     t	          j        |j        d         | j        |j        d                  j        j        j	        |¦  «        ¦  «         d S rX   r{  )rM  r   r}  r4   s       r   rö   z,SymbolicShapeInference._infer_GatherElements™  s|   € ØŸš¨¨aÑ0Ô0ˆØŒ^˜DœK¨œNÔ+ˆØ
�ŠÝÔ)Ø”˜A”Ø”˜tœz¨!œ}Ô-Ô2Ô>ÔHØñô ñ	
ô 	
ð 	
ð 	
ð 	
r   c                 óä  — |                       |d¦  «        }t          |¦  «        }|                       |d¦  «        }t          |¦  «         |d         }t          |¦  «        r||k    sJ ‚|d d…         ||d …         z   }| j        |j        d                  }|                     t          j        |j        d         | j        |j        d                  j	        j
        j        |¦  «        ¦  «         d S rz  )r¯  rZ   r<   r…  rÚ  r�  r   r}  rq  r   r"   r1   )rM  r   r|  Ú	data_rankr}  Úlast_index_dimensionr¤  r4   s           r   r÷   z&SymbolicShapeInference._infer_GatherND¤  sò   € Ø—_’_ T¨1Ñ-Ô-ˆ
Ý˜
‘O”Oˆ	ØŸš¨¨aÑ0Ô0ˆÝˆMÑÔÐØ,¨RÔ0ÐÝÐ.Ñ/Ô/ÐUÐ4HÈIÒ4UÐ4UÐ4UÐUØ! # 2 #Ô&¨Ð4HÐ4IÐ4IÔ)JÑJˆ	ØŒ^˜DœK¨œNÔ+ˆØ
�ŠÝÔ)Ø”˜A”Ø”˜tœz¨!œ}Ô-Ô2Ô>ÔHØñô ñ	
ô 	
ð 	
ð 	
ð 	
r   c           	      ó„  — t          |d¦  «        t          |d¦  «        g}|                      |d¦  «        }|�Vt          |¦  «        dk    r"|d                              |d         ¦  «         n!|d                              |d         ¦  «         t	          |¦  «        D �] \  }}|                      ||d¬¦  «        }t          t          |j        ¦  «        ¦  «        D ]à}| j	        |j        |                  }|dk    r3|                     |j        |         ¦  «         |j        |         |_
        n-|                      |||j        |j        |         j        ¦  «         |�^|t          |¦  «        dk    rdndk    rC|j        |         j
        |j        v r*|j        |j        |         j
                 | j        |j
        <   Œá�Œ"d S )NÚthen_branchÚelse_branchr   rY   F)rù  )r   rÀ  r_   r�  rÂ  rÿ  r¡  rZ   rÚ  r…  r   rx  r   r»  )	rM  r   Ú	subgraphsÚcondÚi_subrø  Úsubgraph_inferÚi_outr4   s	            r   rø   z SymbolicShapeInference._infer_Ifµ  sÉ  € õ ˜$ Ñ.Ô.Ý˜$ Ñ.Ô.ð
ˆ	ð ×"Ò" 4¨Ñ+Ô+ˆØÐÝ˜‰Œ Ò"Ð"Ø˜!”×%Ò% i°¤lÑ3Ô3Ð3Ð3à˜!”×%Ò% i°¤lÑ3Ô3Ð3å(¨Ñ3Ô3ð 	lñ 	l‰OˆE�8Ø!×6Ò6°t¸XÐV[Ð6Ñ\Ô\ˆNÝ�s 4¤;Ñ/Ô/Ñ0Ô0ð lð l�Ø”^ D¤K°Ô$6Ô7�Ø˜A’:�:Ø—K’K ¤°Ô 6Ñ7Ô7Ð7Ø"œk¨%Ô0�B”G�Gà×*Ò*¨4°¸¼ÀÄÐQVÔAWÔA\Ñ]Ô]Ð]ð Ð#¨µyÀ±´ÈÒ7JÐ7J°!°!ÐPQÒ(RÐ(RØ” uÔ-Ô2°nÔ6PÐPÐPØ4BÔ4NÈxÌÐ_dÔOeÔOjÔ4k˜Ô(¨¬Ñ1øñlð	lð 	lr   c           	      óà  — t          |d¦  «        }t          |j        ¦  «        t          |j        ¦  «        k    sJ ‚t          |j        ¦  «        dz
  }t          |j        ¦  «        D ]>\  }}|j        }|                     | j        |j        |                  ¦  «         ||_        Œ?|                      ||¦  «         d}t          d|dz   ¦  «        D �]z}|j	        |         }	t          |	¦  «        }
t          |	j        ¦  «        rJ|
rGd |
v rC|j        |dz            j        j        j                             |	j        j        j        ¦  «         d}Œ}|j        |dz            }t          |¦  «        }t          t          ||
d¬¦  «        ¦  «        D ]¾\  }}|d         |d         k    r§t           j                             ¦   «         }t'          |                      |||¦  «        ¦  «        |_        |j        j        j        j        |                              |¦  «         |	j        j        j        j        |                              |¦  «         d}Œ¿�Œ||rT| j        dk    r1t4                               d|j        › d	|j	        d         › d
�¦  «         |                      ||d¬¦  «         t'          |                      |¦  «        ¦  «        }t          t          |j	        ¦  «        ¦  «        D �]}| j        |j	        |                  }|                     |j	        |dz            ¦  «         ||k    r¯t          |j        ¦  «        rJ ‚|j	        |dz            j        j        j        j        }|j        j        j                             d¦  «         |j        j        j        j        }||                     ¦   «         _        |                     t?          |¦  «        ¦  «         |j	        |         |_        �Œd S )NÚbodyrÐ  FrY   Tr=  r   zRerun Loop: ú(z3...), because of sequence in loop carried variables)rú  r   ) r   rZ   rq  rÂ  r   r�  r…  rÿ  r¡  rÚ  r5   r&   r   r#   r1   r  r7   ro  rp  r   r,  rs  r"   r(   r   rI  rb  r˜  r÷  r`  ró  rQ   )rM  r   rø  Únum_loop_carriedr?   ÚsiÚsi_nameÚneed_second_inferrå  ÚsoÚso_shapeÚsi_shaperv  r  rª  Úloop_iter_dimr4   Úsubgraph_vi_dimÚvi_dims                      r   rù   z"SymbolicShapeInference._infer_LoopÑ  s´  € Ý   vÑ.Ô.ˆÝ�8”>Ñ"Ô"¥c¨$¬*¡o¤oÒ5Ð5Ð5Ð5Ý˜tœz™?œ?¨QÑ.Ðõ ˜xœ~Ñ.Ô.ð 	ð 	‰EˆAˆrØ”gˆGØ�KŠK˜œ t¤z°!¤}Ô5Ñ6Ô6Ð6ØˆBŒGˆGà×!Ò! $¨Ñ1Ô1Ð1ð
 "ÐÝ˜1Ð.°Ñ2Ñ3Ô3ð 	1ñ 	1ˆEØ” Ô'ˆBÝ0°Ñ4Ô4ˆHÝ˜2œ7Ñ#Ô#ð 1Øð - ¨Ð 0Ð 0ð ”N 5¨1¡9Ô-Ô2Ô@ÔJ×SÒSÐTVÔT[ÔTiÔTsÑtÔtÐtØ(,Ð%øà”^ E¨A¡IÔ.�Ý4°RÑ8Ô8�Ý )­#¨h¸ÈÐ*OÑ*OÔ*OÑ PÔ Pð 1ð 1‘H�B˜Ø˜A”w $ q¤'Ò)Ð)Ý"&Ô"7×"AÒ"AÑ"CÔ"C˜Ý,/°×0RÒ0RÐSWÐY^Ð`bÑ0cÔ0cÑ,dÔ,d˜Ô)ØœÔ+Ô1Ô5°bÔ9×BÒBÀ7ÑKÔKÐKØœÔ+Ô1Ô5°bÔ9×BÒBÀ7ÑKÔKÐKØ,0Ð)øñ1ð ð 	MØŒ}˜qÒ Ð Ý—’Ør 4¤9ÐrÐr¨t¬{¸1¬~ÐrÐrÐrñô ð ð ×%Ò% d¨HÀeÐ%ÑLÔLÐLõ ˜D×>Ò>¸tÑDÔDÑEÔEˆÝ•s˜4œ;Ñ'Ô'Ñ(Ô(ð 
	%ñ 
	%ˆAØ” ¤¨A¤Ô/ˆBØ�KŠK˜œ¨¨A©Ô.Ñ/Ô/Ð/ØÐ$Ò$Ð$Ý& r¤wÑ/Ô/Ð/Ð/Ð/Ø"*¤/°!°a±%Ô"8Ô"=Ô"IÔ"OÔ"S�Ø”Ô#Ô)×4Ò4°UÑ;Ô;Ð;ØœÔ,Ô2Ô6�Ø)6�—
’
‘”Ô&Ø—’�d ?Ñ3Ô3Ñ4Ô4Ð4Ø”k !”nˆBŒG‰Gð
	%ð 
	%r   c                 ó0   — |                       |¦  «         d S r0   ©rh  r"  s     r   rú   z$SymbolicShapeInference._infer_MatMul  ó   € Ø×"Ò" 4Ñ(Ô(Ð(Ð(Ð(r   c                 óP   — |                       |t          j        j        ¦  «         d S r0   )rh  r7   rl  ÚINT32r"  s     r   rû   z+SymbolicShapeInference._infer_MatMulInteger  s$   € Ø×"Ò" 4­Ô)9Ô)?Ñ@Ô@Ð@Ð@Ð@r   c                 ó  — |                       |d¦  «        }t          |d¦  «        t          |d¦  «        g}t          |¦  «        }|dk    sJ ‚|dk    r|dd …         }n|d d…         |dd …         z   }|                      |d         |d         gd¬¦  «         | j        |j        d                  j        j        j        }| j        |j	        d                  }| 
                    t          j        |j	        d         ||¦  «        ¦  «         d S )Nr   ÚKÚNrY   r2  FrŽ  )r¯  r   rZ   r™  r…  rq  r   r"   r1   rÚ  r�  r   r}  )rM  r   rb  rc  rd  r¤  ra  r4   s           r   r'  z)SymbolicShapeInference._infer_MatMulNBits  s
  € Ø—O’O D¨!Ñ,Ô,ˆ	Ý" 4¨Ñ-Ô-­}¸TÀ3Ñ/GÔ/GÐHˆ	Ý�y‘>”>ˆØ˜!Š|ˆ|ˆ|ˆ|Ø�qŠ=ˆ=Ø! ! " "œˆIˆIà! # 2 #œ¨°1°2°2¬Ñ6ˆIà×ÒØ�rŒ]˜I aœLÐ)Ø!ð 	 ñ 	
ô 	
ð 	
ð
 ”~ d¤j°¤mÔ4Ô9ÔEÔOˆØŒ^˜DœK¨œNÔ+ˆØ
�Š•FÔ1°$´+¸a´.À,ÐPYÑZÔZÑ[Ô[Ð[Ð[Ð[r   c                 ó  — t          |                      |¦  «        ¦  «        }| j        |j        d                  }|                     t          j        |j        d         t          j        j	        |dg¦  «        ¦  «         d S r·  )
r   r,  r…  rÚ  r�  r   r}  r7   rl  r–  )rM  r   Úselectedr4   s       r   rü   z/SymbolicShapeInference._infer_NonMaxSuppression%  si   € Ý�t×9Ò9¸$Ñ?Ô?Ñ@Ô@ˆØŒ^˜DœK¨œNÔ+ˆØ
�Š•FÔ1°$´+¸a´.Å$ÔBRÔBXÐ[cÐefÐZgÑhÔhÑiÔiÐiÐiÐir   c                 ó4  — |                       |d¦  «        }t          |                      |dd¦  «        ¦  «        }| j        |j        d                  }|                     t          j        |j        d         |j        j	        j
        ||g¦  «        ¦  «         d S r€  )r³  r   r,  r…  rÚ  r�  r   r}  r   r"   r1   )rM  r   Ú
input_rankÚnz_lenr4   s        r   rý   z%SymbolicShapeInference._infer_NonZero*  s„   € Ø×)Ò)¨$°Ñ2Ô2ˆ
å�T×7Ò7¸¸aÀÑCÔCÑDÔDˆØŒ^˜DœK¨œNÔ+ˆØ
�Š•FÔ1°$´+¸a´.À"Ä'ÔBUÔB_ÐblÐntÐauÑvÔvÑwÔwÐwÐwÐwr   c                 ó4  — |                       |d¦  «        }|                      |d¦  «        }t          |dd¦  «        }t          |t	          |¦  «        dz   ¦  «        }t          g |d |…         ¢t          |¦  «        s|                      |¦  «        n|‘||d …         ¢¦  «        }| j        |j	        d                  }| 
                    t          j        |j	        d         | j        |j        d                  j        j        j        |¦  «        ¦  «         d S )Nr   rY   rL   r2  rÐ  )r¹  rÀ  r   rN   rZ   rA   r<   r,  r…  rÚ  r�  r   r}  rq  r   r"   r1   )rM  r   r@   ÚdepthrL   r¤  r4   s          r   rþ   z$SymbolicShapeInference._infer_OneHot1  s#  € Ø×+Ò+¨D°!Ñ4Ô4ˆØ×#Ò# D¨!Ñ,Ô,ˆÝ˜T 6¨2Ñ.Ô.ˆÝ# D­#¨kÑ*:Ô*:¸QÑ*>Ñ?Ô?ˆÝ.ðØ˜U˜d˜UÔ#ðå@JÈ5Ñ@QÔ@QÐ\�×2Ò2°4Ñ8Ô8Ð8ÐW\ðð ˜T˜U˜UÔ#ðñ
ô 
ˆ	ð Œ^˜DœK¨œNÔ+ˆØ
�ŠÝÔ)Ø”˜A”Ø”˜tœz¨!œ}Ô-Ô2Ô>ÔHØñô ñ	
ô 	
ð 	
ð 	
ð 	
r   c           	      ó´  — t          | j        ¦  «        dk    rt          |d¦  «        }n|                      |d¦  «        }|                      |d¦  «        }t          |¦  «        }|�[t          |¦  «        d|z  k    sJ ‚d„ t          ||d |…         ||d …         d¬¦  «        D ¦   «         }|                      |¦  «         n|                      ||¦  «        }| j	        |j
        d                  j        j        j        }| j	        |j        d                  }|                     t!          j        |j        d         |t%          |¦  «        ¦  «        ¦  «         d S )	Né
   r>  rY   r   rÐ  c                 ó&   — g | ]\  }}}||z   |z   ‘ŒS r	   r	   )r   r+   Úpad_upÚpad_downs       r   r   z5SymbolicShapeInference._infer_Pad.<locals>.<listcomp>Q  s7   € ð ð ð á'�A�v˜xð �F‘
˜XÑ%ðð ð r   Fr=  )rV   ro  r   rÀ  r¹  rZ   r  rÅ  r0  r…  rq  r   r"   r1   rÚ  r�  r   r}  rA   )rM  r   r>  r@   rM   rÃ  Ú	output_tpr4   s           r   rÿ   z!SymbolicShapeInference._infer_PadF  s_  € Ý�T”\Ñ"Ô" bÒ(Ð(Ý   vÑ.Ô.ˆDˆDà×&Ò& t¨QÑ/Ô/ˆDà×+Ò+¨D°!Ñ4Ô4ˆÝ�;ÑÔˆàÐÝ�t‘9”9  D¡Ò(Ð(Ð(Ð(ðð å+.¨{¸DÀÀ$À¼KÈÈdÈeÈeÌÐ]bÐ+cÑ+cÔ+cðñ ô ˆOð ×&Ò& Ñ7Ô7Ð7Ð7ð #×6Ò6°t¸TÑBÔBˆOØ”N 4¤:¨a¤=Ô1Ô6ÔBÔLˆ	àŒ^˜DœK¨œNÔ+ˆØ
�ŠÝÔ)¨$¬+°a¬.¸)ÕE_Ð`oÑEpÔEpÑqÔqñ	
ô 	
ð 	
ð 	
ð 	
r   c           
      ó  — |                       |¦  «        }|                      |¦  «         |j        D ]W}|sŒ| j        |         }|                     t          j        ||j        j        j	        t          |¦  «        ¦  «        ¦  «         ŒXd S r0   )rZ  rÅ  rÚ  r…  r�  r   r}  r   r"   r1   rA   )rM  r   r@   rä  r4   s        r   ré   z"SymbolicShapeInference._infer_Pool`  sŸ   € Ø×3Ò3°DÑ9Ô9ˆØ×"Ò" ;Ñ/Ô/Ð/Ø”ð 
	ð 
	ˆAØð ØØ” Ô"ˆBØ�KŠKÝÔ-ØØ”GÔ'Ô1Ý.¨{Ñ;Ô;ñô ñô ð ð ð	
	ð 
	r   c                 óp  — |                       |d¦  «        }|                       |d¦  «        }|                      ||¦  «        }| j        |j        d                  }| j        |j        d                  }|                     t          j        |j        d         |j        j	        j
        |¦  «        ¦  «         d S r€  )r¯  r«  r…  rq  rÚ  r�  r   r}  r   r"   r1   )rM  r   Úshape0r¢  r¤  Út0r4   s          r   r9  z-SymbolicShapeInference._infer_aten_bitwise_oro  s—   € Ø—’  qÑ)Ô)ˆØ—’  qÑ)Ô)ˆØ×*Ò*¨6°6Ñ:Ô:ˆ	ØŒ^˜DœJ qœMÔ*ˆØŒ^˜DœK¨œNÔ+ˆØ
�Š•FÔ1°$´+¸a´.À"Ä'ÔBUÔB_ÐajÑkÔkÑlÔlÐlÐlÐlr   c           	      ó¦  — |                       |d¦  «        }t          |¦  «        }|                      |d¦  «        }|                      |d¦  «        }|                      |d¦  «        }|�|�|€J ‚t          ||¦  «        }t          ||¦  «        }g }t	          |¦  «        D ] \  }}	|||fvr|                     |	¦  «         Œ!||         }
||         }|dk    r,t          j        dt          j        |
||z
  ¦  «        ¦  «        }n+t          j        dt          j        |
|z   |¦  «        ¦  «        }|                     |¦  «         |j	        d         r€| j
        |j	        d                  }|                     t          j        |j	        d         | j
        |j        d                  j        j        j        t%          |¦  «        ¦  «        ¦  «         d S d S ©Nr   rY   rÐ  r3  )r¹  rZ   rÀ  rN   rÂ  r¸  rG   r†   r‰   rÚ  r…  r�  r   r}  rq  r   r"   r1   rA   )rM  r   r@   rM   Úoffsetr¨  r©  r¤  r   Úvalr¢  r£  Ú
diag_shaper4   s                 r   r:  z+SymbolicShapeInference._infer_aten_diagonalw  s×  € Ø×+Ò+¨D°!Ñ4Ô4ˆÝ�;ÑÔˆØ×$Ò$ T¨1Ñ-Ô-ˆØ×"Ò" 4¨Ñ+Ô+ˆØ×"Ò" 4¨Ñ+Ô+ˆàÐ! dÐ&6¸4Ð;KÐ;KÐKÝ# D¨$Ñ/Ô/ˆÝ# D¨$Ñ/Ô/ˆàˆ	Ý! +Ñ.Ô.ð 	&ð 	&‰HˆC�Ø˜4 ˜,Ð&Ð&Ø× Ò  Ñ%Ô%Ð%øà˜TÔ"ˆØ˜TÔ"ˆØ�QŠ;ˆ;Ýœ 1¥e¤i°¸À¹Ñ&HÔ&HÑIÔIˆJˆJåœ 1¥e¤i°¸±ÀÑ&HÔ&HÑIÔIˆJØ×Ò˜Ñ$Ô$Ð$àŒ;�qŒ>ð 	Ø” ¤¨A¤Ô/ˆBØ�KŠKÝÔ-Ø”K ”NØ”N 4¤:¨a¤=Ô1Ô6ÔBÔLÝ.¨yÑ9Ô9ñô ñô ð ð ð ð	ð 	r   c           	      óÎ  — |                       |d¦  «        }t          |¦  «        }|dv sJ ‚|                      |d¦  «        }|dz
  }|r|n#t          |                      |d|¦  «        ¦  «        }g |d d…         ¢|‘}| j        |j        d                  }|                     t          j	        |j        d         t          j        j        t          |¦  «        ¦  «        ¦  «         d S )Nr   ©rY   rÐ  rY   r2  )r¹  rZ   rÀ  r   r,  r…  rÚ  r�  r   r}  r7   rl  r–  rA   )	rM  r   r@   rM   Únum_samplesrv  Úlast_dimrœ  r4   s	            r   r=  z.SymbolicShapeInference._infer_aten_multinomial™  sñ   € Ø×+Ò+¨D°!Ñ4Ô4ˆÝ�;ÑÔˆØ�vˆ~ˆ~ˆ~ˆ~Ø×)Ò)¨$°Ñ2Ô2ˆØ�A‰XˆØ"-Ðg�;�;µ3°t×7YÒ7YÐZ^Ð`aÐceÑ7fÔ7fÑ3gÔ3gˆØ4˜ S b SÔ)Ð4¨8Ð4ˆØŒ^˜DœK¨œNÔ+ˆØ
�ŠÝÔ)Ø”˜A”ÝÔ Ô&Ý*¨<Ñ8Ô8ñô ñ	
ô 	
ð 	
ð 	
ð 	
r   c           
      óî  ‡ ‡— ‰                       ‰d¦  «        }t          |¦  «        dk    sJ ‚ˆˆ fd„dD ¦   «         |dd …<   ‰                      |¦  «         t          ‰j        ¦  «        D ]‰\  }}|sŒ‰ j        |         }|dk    rt          j        j        n&‰ j        ‰j	        d                  j
        j        j        }|                     t          j        ||t!          |¦  «        ¦  «        ¦  «         ŒŠd S )Nr   é   c                 ó>   •— g | ]}‰                      ‰d |¦  «        ‘ŒS r  r/  rÎ  s     €€r   r   z=SymbolicShapeInference._infer_aten_pool2d.<locals>.<listcomp>­  s+   ø€ Ð[Ð[Ð[Èq˜D×>Ò>¸tÀQÈÑJÔJÐ[Ð[Ð[r   ©rÐ  r3  r`  rY   )r¹  rZ   rÅ  rÂ  rÚ  r…  r7   rl  r–  rq  r   r"   r1   r�  r   r}  rA   )rM  r   r@   r?   rä  r4   r1   s   ``     r   r;  z)SymbolicShapeInference._infer_aten_pool2dª  s  øø€ Ø×+Ò+¨D°!Ñ4Ô4ˆÝ�;ÑÔ 1Ò$Ð$Ð$Ð$Ø[Ð[Ð[Ð[Ð[ÐTZÐ[Ñ[Ô[ˆ�B�C�CÑØ×"Ò" ;Ñ/Ô/Ð/Ý˜dœkÑ*Ô*ð 	nð 	n‰DˆAˆqØð ØØ” Ô"ˆBØ23°q²&°&�Ô(Ô.Ð.¸d¼nÈTÌZÐXYÌ]Ô>[Ô>`Ô>lÔ>vˆIØ�KŠK�Ô5°a¸ÕD^Ð_jÑDkÔDkÑlÔlÑmÔmÐmÐmð	nð 	nr   c                 óL  — | j         |j        d                  }t          |j        ¦  «        dk    r[|                     t          j        |j        d         | j         |j        d                  j        j        j	        g ¦  «        ¦  «         d S t          |j        ¦  «        dk    sJ ‚|  
                    |d¦  «        }|€J ‚|  
                    |d¦  «        }|€4|                      |d¦  «        }|                      |r|n|dz
  |¦  «        }nU|                      |d¦  «        }t          |t          |¦  «        ¦  «        }|d |…         }|r|dgz  }|||dz   d …         z  }t          |¦  «        }|                     t          j        |j        d         | j         |j        d                  j        j        j	        |¦  «        ¦  «         | j         |j        d                  }|                     t          j        |j        d         t           j        j        |¦  «        ¦  «         d S )Nr   rY   r3  rÐ  )r…  rÚ  rZ   rq  r�  r   r}  r   r"   r1   rÀ  r³  r0  r¹  rN   rA   r7   rl  r–  )	rM  r   r4   Úkeepdimr   rM   rœ  r(   Úvi1s	            r   r<  z)SymbolicShapeInference._infer_aten_minmax¶  s  € ØŒ^˜DœK¨œNÔ+ˆÝˆtŒz‰?Œ?˜aÒÐØ�KŠKÝÔ-Ø”K ”N D¤N°4´:¸a´=Ô$AÔ$FÔ$RÔ$\Ð^`ñô ñô ð ð ð õ �t”z‘?”? aÒ'Ð'Ð'Ð'Ø×)Ò)¨$°Ñ2Ô2ˆGØÐ&Ð&Ð&Ø×%Ò% d¨AÑ.Ô.ˆCØˆ{Ø×+Ò+¨D°!Ñ4Ô4�Ø#×7Ò7ÀÐ8U¸¸ÈTÐTUÉXÐW[Ñ\Ô\��à×-Ò-¨d°AÑ6Ô6�Ý*¨3µ°E±
´
Ñ;Ô;�Ø$ T c Tœ{�Øð (Ø  Q CÑ'�LØ  c¨A¡g i iÔ 0Ñ0�å5°lÑCÔCˆLØ�KŠKÝÔ-Ø”K ”N D¤N°4´:¸a´=Ô$AÔ$FÔ$RÔ$\Ð^jñô ñô ð ð
 ”. ¤¨Q¤Ô0ˆCØ�LŠL�Ô6°t´{À1´~ÅtÔGWÔG]Ð_kÑlÔlÑmÔmÐmÐmÐmr   c           	      óÔ  — |                       |d¦  «        }|                      |d¦  «        }|                      |d¦  «        }|                      |d¦  «        }|�C|�A|�?|t          |¦  «        k     sJ ‚||         |z
  |z  dz   ||<   |                     |¦  «         n(t          |¦  «        }|                      |dz   |¦  «        }|                      |¦  «         |j        d         r€| j        |j        d                  }|                     t          j
        |j        d         | j        |j        d                  j        j        j        t          |¦  «        ¦  «        ¦  «         d S d S r  )r¹  rÀ  rZ   r¸  r0  rÅ  rÚ  r…  r�  r   r}  rq  r   r"   r1   rA   )rM  r   r@   Ú	dimensionÚsizeÚsteprM   r4   s           r   r>  z)SymbolicShapeInference._infer_aten_unfold×  su  € Ø×+Ò+¨D°!Ñ4Ô4ˆØ×'Ò'¨¨aÑ0Ô0ˆ	Ø×"Ò" 4¨Ñ+Ô+ˆØ×"Ò" 4¨Ñ+Ô+ˆØÐ  TÐ%5¸$Ð:JØ�s ;Ñ/Ô/Ò/Ð/Ð/Ð/Ø&1°)Ô&<¸tÑ&CÈÑ%LÈqÑ%PˆK˜	Ñ"Ø×Ò˜tÑ$Ô$Ð$Ð$å�{Ñ#Ô#ˆDØ×2Ò2°4¸!±8¸TÑBÔBˆKØ×"Ò" ;Ñ/Ô/Ð/ØŒ;�qŒ>ð 	Ø” ¤¨A¤Ô/ˆBØ�KŠKÝÔ-Ø”K ”NØ”N 4¤:¨a¤=Ô1Ô6ÔBÔLÝ.¨{Ñ;Ô;ñô ñô ð ð ð ð	ð 	r   c                 ó„  — d }|j         d         sg }n¿|                      |d¦  «        }|                      |d¦  «        }|�‘|                      |d¦  «        }|�)t          |t	          |¦  «        ¦  «        }|rd||<   n0||= n,t	          |¦  «        }|                      |r|n|dz
  |¦  «        }|                      |¦  «         t          |¦  «        }|j        d         r_|�_| j	        |j        d                  }| 
                    t          j        |j        d         t          j        j        |¦  «        ¦  «         d S d S d S ©NrY   rÐ  r   )rq  rÀ  r¹  rN   rZ   r0  rÅ  rA   rÚ  r…  r�  r   r}  r7   rl  r–  )rM  r   r¤  r   r  r@   rM   r4   s           r   r?  z)SymbolicShapeInference._infer_aten_argmaxî  s^  € Øˆ	ØŒz˜!Œ}ð 	DàˆIˆIà×%Ò% d¨AÑ.Ô.ˆCØ×)Ò)¨$°Ñ2Ô2ˆGØÐ"Ø"×3Ò3°D¸!Ñ<Ô<�Ø�?Ý.¨sµC¸Ñ4DÔ4DÑEÔE�CØð -Ø+,˜ CÑ(Ð(à'¨Ð,Ð,å˜{Ñ+Ô+�DØ"&×":Ò":À7Ð;X¸4¸4ÐPTÐWXÑPXÐZ^Ñ"_Ô"_�KØ×*Ò*¨;Ñ7Ô7Ð7Ý6°{ÑCÔC�	ØŒ;�qŒ>ð 	j˜iÐ3Ø” ¤¨A¤Ô/ˆBØ�KŠK�Ô5°d´kÀ!´nÅdÔFVÔF\Ð^gÑhÔhÑiÔiÐiÐiÐið	jð 	jÐ3Ð3r   c                 ó†  — |                       |¦  «         |                      |d¦  «        }|�t          |¦  «        dk    r|d         nd }|                      |d¦  «        }| j        |j        d                  j        j        j        }dD ]¶}|j	        |         r§| j        |j	        |                  }| 
                    t          j        |j	        |         ||�|n#t          |                      ||d¦  «        ¦  «        |�t          |¦  «        n#t          |                      ||d¦  «        ¦  «        g¦  «        ¦  «         Œ·d S )Nr   é   r  rY   )Ú_propagate_shape_and_typer¯  rZ   rÀ  r…  rq  r   r"   r1   rÚ  r�  r   r}  r   r,  r_   )rM  r   rš  rú  Úgroupra  r?   r4   s           r   r@  z-SymbolicShapeInference._infer_aten_group_norm  sN  € Ø×&Ò& tÑ,Ô,Ð,Ø—o’o d¨AÑ.Ô.ˆØ)Ð5½#¸kÑ:JÔ:JÈaÒ:OÐ:OˆK˜ŒNˆNÐUYˆØ×#Ò# D¨!Ñ,Ô,ˆØ”~ d¤j°¤mÔ4Ô9ÔEÔOˆØð 	ð 	ˆAØŒ{˜1Œ~ð Ø”^ D¤K°¤NÔ3�Ø—’ÝÔ1Øœ AœØ$à!" ˜A˜AµC¸×8ZÒ8ZÐ[_ÐabÐdeÑ8fÔ8fÑ4gÔ4gð $)Ð#4õ !*¨%Ñ 0Ô 0Ð 0å%(¨×)KÒ)KÈDÐRSÐUVÑ)WÔ)WÑ%XÔ%Xðñô ñô ð øð	ð 	r   c                 ó  ‡ ‡— d }‰                       ‰d¦  «        }|�a|d d…         }‰                      ‰d¦  «        }|�|d„ |D ¦   «         z  }n/t          |¦  «        }|ˆˆ fd„t          d|¦  «        D ¦   «         z  }‰j        d         rw|�w‰ j        ‰j        d                  j        j        j	        }‰ j        ‰j        d                  }| 
                    t          j        ‰j        d         ||¦  «        ¦  «         d S d S d S )Nr   rÐ  rY   c                 óp   — g | ]3}t          |¦  «        t          j        u r|                     ¦   «         n|‘Œ4S r	   )r   rD   rE   r\   )r   Údim_sizes     r   r   z?SymbolicShapeInference._infer_aten_upsample.<locals>.<listcomp>&  s8   € ÐvÐvÐvÐ^fµ°h±´Å2Ä8Ð1KÐ1K˜hŸmšm™oœo˜oÐQYÐvÐvÐvr   c           	      óX   •— g | ]&}t          ‰                     ‰d |¦  «        ¦  «        ‘Œ'S r  )r   r,  rÎ  s     €€r   r   z?SymbolicShapeInference._infer_aten_upsample.<locals>.<listcomp>)  s4   ø€ ÐjÐjÐjÐVW�c $×"DÒ"DÀTÈ1ÈaÑ"PÔ"PÑQÔQÐjÐjÐjr   )r¯  rÀ  rZ   r¡  rÚ  r…  rq  r   r"   r1   r�  r   r}  )rM  r   r¤  rš  Úoutput_sizerM   ra  r4   s   ``      r   rA  z+SymbolicShapeInference._infer_aten_upsample  s#  øø€ Øˆ	Ø—o’o d¨AÑ.Ô.ˆØÐ"Ø# B Q BœˆIØ×-Ò-¨d°AÑ6Ô6ˆKØÐ&ØÐvÐvÐjuÐvÑvÔvÑv�	�	å˜;Ñ'Ô'�ØÐjÐjÐjÐjÐjÕ[`ÐabÐdhÑ[iÔ[iÐjÑjÔjÑj�	ØŒ;�qŒ>ð 	`˜iÐ3Øœ>¨$¬*°Q¬-Ô8Ô=ÔIÔSˆLØ” ¤¨A¤Ô/ˆBØ�KŠK�Ô5°d´kÀ!´nÀlÐT]Ñ^Ô^Ñ_Ô_Ð_Ð_Ð_ð	`ð 	`Ð3Ð3r   c                 ó´   — |                       |¦  «         dD ]?}|t          |j        ¦  «        k     r%|j        |         r|                       |d|¬¦  «         Œ@d S )N)rY   rÐ  r3  r  rY   ©Úinput_indexÚoutput_index©r$  rZ   rÚ  )rM  r   r?   s      r   rê   z0SymbolicShapeInference._infer_BatchNormalization/  sr   € Ø×&Ò& tÑ,Ô,Ð,ð ð 	Tð 	TˆAØ•3�t”{Ñ#Ô#Ò#Ð#¨¬°A¬Ð#à×.Ò.¨tÀÐQRÐ.ÑSÔSÐSøð	Tð 	Tr   c           	      ó�  — | j         |j        d                  }|                      |¦  «        }t          d„ |D ¦   «         ¦  «        rnt	          |d         ¦  «        }t	          |d         ¦  «        }t	          |d         ¦  «        }t          j        t          j        ||z
  |z  ¦  «        d¦  «        g}n|                      |¦  «        g}|  	                    |¦  «         | 
                    t          j        |j        d         | j         |j        d                  j        j        j        t#          |¦  «        ¦  «        ¦  «         d S )Nr   c              3   ó   K  — | ]}|d uV — Œ	d S r0   r	   r>   s     r   rW  z6SymbolicShapeInference._infer_Range.<locals>.<genexpr>;  s&   è è € Ð1Ð1 ˆq˜ˆ}Ð1Ð1Ð1Ð1Ð1Ð1r   rY   rÐ  )r…  rÚ  r  r\  r_   rG   r†   rP  r,  rÅ  r�  r   r}  rq  r   r"   r1   rA   )rM  r   r4   Ú
input_dataÚstartÚlimitÚdeltarÃ  s           r   r   z#SymbolicShapeInference._infer_Range8  s+  € ØŒ^˜DœK¨œNÔ+ˆØ×2Ò2°4Ñ8Ô8ˆ
ÝÐ1Ð1 jÐ1Ñ1Ô1Ñ1Ô1ð 	IÝ˜j¨œmÑ,Ô,ˆEÝ˜j¨œmÑ,Ô,ˆEÝ˜j¨œmÑ,Ô,ˆEÝ$œy­¬¸À¹ÈÑ7NÑ)OÔ)OÐQRÑSÔSÐTˆOˆOà#×AÒAÀ$ÑGÔGÐHˆOØ×"Ò" ?Ñ3Ô3Ð3Ø
�ŠÝÔ)Ø”˜A”Ø”˜tœz¨!œ}Ô-Ô2Ô>ÔHÝ*¨?Ñ;Ô;ñô ñ	
ô 	
ð 	
ð 	
ð 	
r   c                 ó¨  ‡— t          |dd¦  «        }t          | j        ¦  «        dk    �r¤t          |j        ¦  «        dk    �r�|                      |d¦  «        }| j        |j        d                  }|€”|sJ ‚|                     t          j
        |j        d         | j        |j        d                  j        j        j        t          |                      |                      |d¦  «        |¦  «        ¦  «        ¦  «        ¦  «         d S |                      |d¦  «        Šg }ˆfd„|D ¦   «         }t%          ‰¦  «        D ]6\  }}||v r|r|                     d¦  «         Œ!|                     |¦  «         Œ7|                     t          j
        |j        d         | j        |j        d                  j        j        j        |¦  «        ¦  «         d S d S d S )NÚkeepdimsrY   é   r   c                 óJ   •— g | ]}t          |t          ‰¦  «        ¦  «        ‘Œ S r	   ©rN   rZ   )r   Úar(   s     €r   r   z;SymbolicShapeInference._infer_ReduceSum.<locals>.<listcomp>]  s*   ø€ ÐJÐJÐJÀÕ,¨Qµ°E±
´
Ñ;Ô;ÐJÐJÐJr   )r   rV   ro  rZ   rq  rÀ  r…  rÚ  r�  r   r}  r   r"   r1   rA   r0  r³  r¯  rÂ  r¸  )	rM  r   Ú	keep_dimsÚaxesr4   rœ  r?   r+   r(   s	           @r   r  z'SymbolicShapeInference._infer_ReduceSumK  sà  ø€ Ý! $¨
°AÑ6Ô6ˆ	Ý�T”\Ñ"Ô" bÒ(Ñ(­S°´©_¬_¸qÒ-@Ñ-@à×&Ò& t¨QÑ/Ô/ˆDØ” ¤¨A¤Ô/ˆBØˆ|Ø Ð Ð �yØ—’ÝÔ1Øœ AœØœ t¤z°!¤}Ô5Ô:ÔFÔPÝ2°4×3KÒ3KÈD×L`ÒL`ÐaeÐghÑLiÔLiÐkoÑ3pÔ3pÑqÔqñô ñô ð ð ð ð Ÿš¨¨aÑ0Ô0�Ø!�ØJÐJÐJÐJÀTÐJÑJÔJ�Ý% eÑ,Ô,ð /ð /‘D�A�qØ˜D�y�yØ$ð 3Ø(×/Ò/°Ñ2Ô2Ð2øà$×+Ò+¨AÑ.Ô.Ð.Ð.Ø—’ÝÔ1Øœ AœØœ t¤z°!¤}Ô5Ô:ÔFÔPØ$ñô ñô ð ð ð ð/ )Ð(Ð-@Ð-@r   c                 ód   — t          | j        ¦  «        dk    r|                      |¦  «         d S d S )Né   )rV   ro  r  r"  s     r   r  z(SymbolicShapeInference._infer_ReduceMeanl  s9   € Ý�T”\Ñ"Ô" bÒ(Ð(à×!Ò! $Ñ'Ô'Ð'Ð'Ð'ð )Ð(r   c                 óì   — t          |d¦  «        }t          |dd¦  «        }|dk    rH|dgk    rC|                      |¦  «        d         }|�(t          |¦  «        | j        |j        d         <   d S d S d S d S )Nr=  r7  rY   r   )r   r  rf   r»  rÚ  )rM  r   r=  r<  rÙ  s        r   r  z(SymbolicShapeInference._infer_ReduceProdq  s…   € Ý˜T 6Ñ*Ô*ˆÝ! $¨
°AÑ6Ô6ˆ	Ø˜Š>ˆ>˜d q cšk˜kØ×0Ò0°Ñ6Ô6°qÔ9ˆDØÐÝ3GÈÑ3MÔ3M�Ô  ¤¨Q¤Ñ0Ð0Ð0ð ˆ>˜k˜kàÐr   c                 óÈ  — |                       |d¦  «        }|                       |d¦  «        }|�|€d S |                      |d¦  «        d         }d|t          |¦  «        t          |¦  «        g}| j        |j        d                  j        j        j        }| j        |j        d                  }| 	                    t          j        |j        d         ||¦  «        ¦  «         d S r!  )rÀ  r¹  r   r…  rq  r   r"   r1   rÚ  r�  r   r}  )rM  r   Úseq_lenÚreal_seq_lenÚ	num_headsr¤  ra  r4   s           r   r0  z2SymbolicShapeInference._infer_RelativePositionBiasy  sÌ   € Ø×%Ò% d¨AÑ.Ô.ˆØ×*Ò*¨4°Ñ3Ô3ˆØˆ?˜lÐ2ØˆFØ×)Ò)¨$°Ñ2Ô2°1Ô5ˆ	à˜	¥3 w¡<¤<µ°\Ñ1BÔ1BÐCˆ	à”~ d¤j°¤mÔ4Ô9ÔEÔOˆØŒ^˜DœK¨œNÔ+ˆØ
�Š•FÔ1°$´+¸a´.À,ÐPYÑZÔZÑ[Ô[Ð[Ð[Ð[r   c                 óˆ  — |                       |d¦  «        }| j        |j        d                  }|€ª|                      |d¦  «        }t	          |¦  «        dk    sJ ‚|d         }t          |¦  «        sJ ‚|                     t          j        |j        d         |j	        j
        j        t          |                      ||¦  «        ¦  «        ¦  «        ¦  «         �nR|                      |d¦  «        }d}|D ]}||z  }Œg }	d}
d}t          |¦  «        D ]Œ\  }}t          |¦  «        t           j        u r|	                     |¦  «         nB|dk    r'|	                     ||         ¦  «         |||         z  }n|	                     |¦  «         |dk    r|}
Œ�|dk    r||z  }Œ�|	                     d¦  «        dk     sJ ‚d|	v r
||z  }||	|
<   |                      |	¦  «         |                     t          j        |j        d         |j	        j
        j        t          |	¦  «        ¦  «        ¦  «         |                      |¦  «         d S )NrY   r   r2  rÐ  )rÀ  r…  rÚ  r¯  rZ   r<   r�  r   r}  r   r"   r1   rA   r0  r¹  rÂ  rG   ra  r¸  ÚcountrÅ  r#  )rM  r   Úshape_valuer4   Úshape_shapeÚ
shape_rankÚinput_sympy_shapeÚtotalr+   rÃ  Údeferred_dim_idxÚnon_deferred_sizer?   rª  s                 r   r  z%SymbolicShapeInference._infer_Reshape†  s‡  € Ø×)Ò)¨$°Ñ2Ô2ˆØŒ^˜DœK¨œNÔ+ˆØÐØŸ/š/¨$°Ñ2Ô2ˆKÝ�{Ñ#Ô# qÒ(Ð(Ð(Ð(Ø$ QœˆJÝ˜jÑ)Ô)Ð)Ð)Ð)Ø�KŠKÝÔ-Ø”K ”NØ”GÔ'Ô1Ý.¨t×/GÒ/GÈ
ÐTXÑ/YÔ/YÑZÔZñô ñô ð ñ ð !%× 5Ò 5°d¸AÑ >Ô >ÐØˆEØ&ð "ð "�Ø ™	��Ø ˆOØ!ÐØ !ÐÝ! +Ñ.Ô.ð >ð >‘��1Ý˜‘7”7�eœlÐ*Ð*Ø#×*Ò*¨1Ñ-Ô-Ð-Ð-Ø˜!’V�VØ#×*Ò*Ð+<¸QÔ+?Ñ@Ô@Ð@Ø(9Ð<MÈaÔ<PÑ(PÐ%Ð%à#×*Ò*¨1Ñ-Ô-Ð-Ø˜’7�7Ø'(Ð$Ð$Ø˜!’V�VØ(9¸AÑ(=Ð%øà"×(Ò(¨Ñ,Ô,¨qÒ0Ð0Ð0Ð0Ø�_Ð$Ð$ØÐ#4Ñ4�Ø4;�Ð 0Ñ1à×&Ò& Ñ7Ô7Ð7Ø�KŠKÝÔ-Ø”K ”NØ”GÔ'Ô1Ý.¨Ñ?Ô?ñô ñô ð ð 	× Ò  Ñ&Ô&Ð&Ð&Ð&r   c           	      óZ  — | j         |j        d                  }|                      |d¦  «        }t          | j        ¦  «        dk    r³|                      |d¦  «        }|�™d„ t          ||d¬¦  «        D ¦   «         }|                      |¦  «         |                     t          j
        |j        d         | j         |j        d                  j        j        j        t          |¦  «        ¦  «        ¦  «         d S d S |                      |d¦  «        }|                      |d¦  «        }|                      |d¦  «        }|�"d	„ |D ¦   «         }|                      |¦  «         nå|�¹t!          |¦  «        }t#          |d
¦  «        dk    rGt!          |¦  «        d|z  k    sJ ‚t%          |¦  «        d |…         }	t%          |¦  «        |d …         }
ndg|z  }	dg|z  }
t%          |¦  «        }d„ t          ||	|
|d¬¦  «        D ¦   «         }|                      |¦  «         n*|                      |                      |d¦  «        |¦  «        }|                     t          j
        |j        d         | j         |j        d                  j        j        j        t          |¦  «        ¦  «        ¦  «         d S )Nr   r  rY   c                 óf   — g | ].\  }}t          j        t          j        ||z  ¦  «        ¦  «        ‘Œ/S r	   ©rG   Úsimplifyr‰  rE  s      r   r   z8SymbolicShapeInference._infer_Resize.<locals>.<listcomp>À  sA   € ð #ð #ð #Ù;?¸1¸a•E”N¥5¤;¨q°1©uÑ#5Ô#5Ñ6Ô6ð#ð #ð #r   Fr=  rÐ  r3  c                 óZ   — g | ](}t          j        t          j        |¦  «        ¦  «        ‘Œ)S r	   rP  r[  s     r   r   z8SymbolicShapeInference._infer_Resize.<locals>.<listcomp>Ð  s*   € Ð"QÐ"QÐ"QÀa¥5¤>µ%´+¸a±.´.Ñ#AÔ#AÐ"QÐ"QÐ"Qr   Úcoordinate_transformation_modeÚtf_crop_and_resizec           	      óv   — g | ]6\  }}}}t          j        t          j        |||z
  z  |z  ¦  «        ¦  «        ‘Œ7S r	   rP  )r   r+   r3  ÚendÚscales        r   r   z8SymbolicShapeInference._infer_Resize.<locals>.<listcomp>Ü  sR   € ð #ð #ð #á,˜˜5 # uõ ”N¥5¤;¨q°C¸%±KÑ/@À5Ñ/HÑ#IÔ#IÑJÔJð#ð #ð #r   )r…  rÚ  r¹  rV   ro  rÀ  r  rÅ  r�  r   r}  rq  r   r"   r1   rA   rZ   r   rQ   r0  r³  )rM  r   r4   rJ  ÚscalesrÃ  ÚroiÚsizesrM   Ú	roi_startÚroi_ends              r   r  z$SymbolicShapeInference._infer_Resizeº  s×  € ØŒ^˜DœK¨œNÔ+ˆØ ×1Ò1°$¸Ñ:Ô:ÐÝ�T”\Ñ"Ô" bÒ(Ð(Ø×(Ò(¨¨qÑ1Ô1ˆFØÐ!ð#ð #ÝCFÐGXÐZ`ÐinÐCoÑCoÔCoð#ñ #ô #�ð ×*Ò*¨?Ñ;Ô;Ð;Ø—’ÝÔ1Øœ AœØœ t¤z°!¤}Ô5Ô:ÔFÔPÝ2°?ÑCÔCñô ñô ð ð ð ð "Ð!ð ×%Ò% d¨AÑ.Ô.ˆCØ×(Ò(¨¨qÑ1Ô1ˆFØ×'Ò'¨¨aÑ0Ô0ˆEØÐ Ø"QÐ"QÈ5Ð"QÑ"QÔ"Q�Ø×*Ò*¨?Ñ;Ô;Ð;Ð;ØÐ#Ý˜6‘{”{�Ý  Ð'GÑHÔHÐL`Ò`Ð`Ý˜s™8œ8 q¨4¡xÒ/Ð/Ð/Ð/Ý $ S¡	¤	¨%¨4¨%Ô 0�IÝ" 3™iœi¨¨¨Ô.�G�Gà!"  d¡
�IØ ˜c D™j�GÝ˜f™œ�ð#ð #å03Ð4EÀyÐRYÐ[aÐjoÐ0pÑ0pÔ0pð#ñ #ô #�ð ×*Ò*¨?Ñ;Ô;Ð;Ð;à"&×":Ò":¸4×;OÒ;OÐPTÐVWÑ;XÔ;XÐZ^Ñ"_Ô"_�à�KŠKÝÔ-Ø”K ”NØ”N 4¤:¨a¤=Ô1Ô6ÔBÔLÝ.¨Ñ?Ô?ñô ñô ð ð ð r   c                 ót  ‡ ‡‡— t          ‰d¦  «        }t          ‰d¦  «        }t          ‰ddg|z  ¦  «        }t          ‰j        ¦  «        |z
  Šˆˆˆ fd„t          |¦  «        D ¦   «         }t          |j        ¦  «        t          ‰j        ¦  «        k    sJ ‚|j        d t          ‰j        ¦  «        …         }t          |¦  «        D ]~\  }}|j        }|                     ‰ j        ‰j        |                  ¦  «         |‰k    r:|j        j        j	        j
        }	|	                     |	||‰z
                    ¦  «         ||_        Œ‰                      ‰|¦  «         t          ‰j        ¦  «        ‰z
  }
t          ‰ddg|
z  ¦  «        }t          ‰ j        ‰j        d                  j        ¦  «        |d                  }	t          ‰j        ¦  «        D ]ã\  }}‰ j        |         }|‰k    r¤t          |j        |         j        ¦  «        }t          ||‰z
           t          |¦  «        dz   ¦  «        }g |d |…         ¢|	‘||d …         ¢}|                     t!          j        ||j        |         j        j        j        |¦  «        ¦  «         n |                     |j        |         ¦  «         ||_        Œäd S )	Nrç  Únum_scan_inputsÚscan_input_axesr   c           
      ód   •— g | ],\  }}t          |‰                     ‰|‰z   ¦  «        ¦  «        ‘Œ-S r	   )rN   r³  )r   r?   Úaxr   Únum_scan_statesrM  s      €€€r   r   z6SymbolicShapeInference._infer_Scan.<locals>.<listcomp>ñ  sL   ø€ ð 
ð 
ð 
á��2õ !  T×%9Ò%9¸$ÀÀOÑ@SÑ%TÔ%TÑUÔUð
ð 
ð 
r   Úscan_output_axesr2  rY   )r   rZ   rq  rÂ  r   r�  r…  r   r"   r(   r   r_  rÿ  rÚ  r.   rN   r   r}  r1   )rM  r   rø  r^  r_  rê  r?   rê  Úsubgraph_nameÚscan_input_dimÚnum_scan_outputsrc  rä  r4   r(   rª  rb  s   ``              @r   r  z"SymbolicShapeInference._infer_Scanì  s¹  øøø€ Ý   vÑ.Ô.ˆÝ'¨Ð.?Ñ@Ô@ˆÝ'¨Ð.?À!ÀÀÑAVÑWÔWˆÝ˜dœj™/œ/¨OÑ;ˆð
ð 
ð 
ð 
ð 
ð 
å" ?Ñ3Ô3ð
ñ 
ô 
ˆõ �8”>Ñ"Ô"¥c¨$¬*¡o¤oÒ5Ð5Ð5Ð5Ø"œ.Ð):­3¨t¬z©?¬?Ð):Ô;ˆÝ˜Ñ/Ô/ð 	$ð 	$‰EˆAˆrØœGˆMØ�KŠK˜œ t¤z°!¤}Ô5Ñ6Ô6Ð6Ø�OÒ#Ð#Ø!#¤Ô!4Ô!:Ô!>�Ø×%Ò% n°_ÀQÈÑEXÔ5YÔ&ZÑ[Ô[Ð[Ø#ˆBŒGˆGØ×!Ò! $¨Ñ1Ô1Ð1Ý˜tœ{Ñ+Ô+¨oÑ=ÐÝ(¨Ð/AÀAÀ3ÐIYÑCYÑZÔZÐÝ2°4´>À$Ä*ÈRÄ.Ô3QÔ3VÑWÔWÐXgÐhjÔXkÔlˆÝ˜dœkÑ*Ô*ð 		ð 		‰DˆAˆqØ” Ô"ˆBØ�OÒ#Ð#Ý1°(´/À!Ô2DÔ2IÑJÔJ�Ý.Ð/?ÀÀOÑ@SÔ/TÕVYÐZ_ÑV`ÔV`ÐcdÑVdÑeÔe�ØL˜%   œ/ÐL¨>ÐL¸EÀ'À(À(¼OÐL�Ø—’�FÔ9¸!¸X¼_ÈQÔ=OÔ=TÔ=`Ô=jÐlqÑrÔrÑsÔsÐsÐsà—’˜HœO¨AÔ.Ñ/Ô/Ð/ØˆBŒGˆGð		ð 		r   c                 ó  — |                       |d¦  «        }| j        |j        d                  }|                     t	          j        |j        d         | j        |j        d                  j        j        j	        |¦  «        ¦  «         d S rK   r{  )rM  r   r|  r4   s       r   r  z-SymbolicShapeInference._infer_ScatterElements  s|   € Ø—_’_ T¨1Ñ-Ô-ˆ
ØŒ^˜DœK¨œNÔ+ˆØ
�ŠÝÔ)Ø”˜A”Ø”˜tœz¨!œ}Ô-Ô2Ô>ÔHØñô ñ	
ô 	
ð 	
ð 	
ð 	
r   c                 ó†  — |                       |d¦  «        }| j        |j        d                  }|�Žt          |¦  «        D ]€\  }}|�Œt          j                             ¦   «         }t          |                      |d|¦  «        ¦  «        |_	        |j
        j        j        j        |                              |¦  «         Œd S d S rK   )r¯  r…  rÚ  rÂ  r7   ro  rp  r   r,  rs  r   r"   r(   r   r�  )rM  r   r¥  r4   rv  r+   rª  s          r   r  z(SymbolicShapeInference._infer_SequenceAt  sÅ   € à—O’O D¨!Ñ,Ô,ˆ	ØŒ^˜DœK¨œNÔ+ˆØÐ Ý" 9Ñ-Ô-ð Dð D‘��AØ�=ØÝÔ/×9Ò9Ñ;Ô;�Ý$'¨×(JÒ(JÈ4ÐQRÐTVÑ(WÔ(WÑ$XÔ$X�Ô!Ø”Ô#Ô)Ô-¨bÔ1×:Ò:¸7ÑCÔCÐCÐCð !Ð ðDð Dr   c                 ó(  — | j         |j        d                  }| j         |j        d                  }| j         |j        d                  }|                     |¦  «         |j        d         |_        |                      |d|j        |j        ¦  «         d S r€  )r…  rq  rÚ  r�  r   rx  r   )rM  r   Úvi_seqÚ	vi_tensorÚ
vi_out_seqs        r   r	  z,SymbolicShapeInference._infer_SequenceInsert&  s}   € à” ¤
¨1¤Ô.ˆØ”N 4¤:¨a¤=Ô1ˆ	Ø”^ D¤K°¤NÔ3ˆ
Ø×Ò˜FÑ#Ô#Ð#Øœ+ aœ.ˆ
ŒØ×Ò˜t Q¨
¬¸¼ÑHÔHÐHÐHÐHr   c                 óX   — |                       |d¦  «        | j        |j        d         <   d S rK   )r¹  r»  rÚ  r"  s     r   r
  z#SymbolicShapeInference._infer_Shape/  s+   € Ø+/×+@Ò+@ÀÀqÑ+IÔ+IˆÔ˜œ QœÑ(Ð(Ð(r   c                 ó(  — |                       |d¦  «        }t          |¦  «        | j        |j        d         <   | j        |j        d                                       t          j        |j        d         t          j	        j
        g ¦  «        ¦  «         d S rK   )r¹  rf   r»  rÚ  r…  r�  r   r}  r7   rl  r–  )rM  r   r@   s      r   r  z"SymbolicShapeInference._infer_Size2  s€   € Ø×+Ò+¨D°!Ñ4Ô4ˆÝ+?ÀÑ+LÔ+LˆÔ˜œ QœÑ(ØŒ�t”{ 1”~Ô&×/Ò/ÝÔ)¨$¬+°a¬.½$Ô:JÔ:PÐRTÑUÔUñ	
ô 	
ð 	
ð 	
ð 	
r   c           	      óð
  ‡ ‡‡— d„ Šˆfd„Šˆˆ fd„}t          ‰ j        ¦  «        dk    rot          |d¦  «        }t          |d¦  «        }t          |d¦  «        }|s)t          t	          t          |¦  «        ¦  «        ¦  «        }dgt          |¦  «        z  }nèt          ‰                      |d¦  «        d	¬
¦  «        }t          ‰                      |d¦  «        d	¬
¦  «        }‰                      |d¦  «        }‰                      |d¦  «        }|€1|€|�-t          t	          t          |�|n|¦  «        ¦  «        ¦  «        }|€|€|�dgt          |�|n|¦  «        z  }t          |d	¬
¦  «        }t          |d	¬
¦  «        }‰                      |d¦  «        }|�|€m|€;t	          t          |¦  «        ¦  «        D ]}‰  	                    |d|¦  «        ||<   Œ�n7t          |¦  «        }|D ]}‰  	                    |d|¦  «        ||<   Œ�nt          ||||d¬¦  «        D �]Ü\  }}	}
} ||
||         ¦  «        }
t          |
¦  «        r¢|
‰ j        k    r
||         }
�n|
‰ j         k    r|	dk    rdnd}
�nt          ||         ¦  «        r6|
dk     rt          d|
||         z   ¦  «        }
t          |
||         ¦  «        }
n¶|
dk    r#|
dk    rt!          j        |
||         ¦  «        n|
}
nŒt          ||         ¦  «        rt!          j        |
||         ¦  «        }
n[	  ‰|
||         ¦  «        s||         }
n?# t$          $ r2 t&                               d|
› d||         › d�¦  «         ||         }
Y nw xY w ||	||         ¦  «        }	t          ||         ¦  «        r3t          |	¦  «        r$t          dt          |	||         ¦  «        ¦  «        }	t!          j        |
|	z
  |z   |dk    rdndz   |z  ¦  «        ||<   �ŒÞ‰                      |¦  «         ‰ j        |j        d                  }|                     t5          j        |j        d         |j        j        j        t          |¦  «        ¦  «        ¦  «         |j        d         ‰ j         v rÙ|dgk    rÔ|�Ôt          |¦  «        dk    rÃ|�Ãt          |¦  «        dk    r²|�²t          |¦  «        dk    r¡‰ j         |j        d                  }t9          |¦  «        t          u s3t9          |¦  «        tB          j"        u rZt          |j#        ¦  «        dk    rD||d         |d         |d         …         ‰ j         |j        d         <   d S d S d S d S d S d S d S d S d S d S d S )Nc                 ó"  ‡ ‡— t          ‰ t          j        ¦  «        sJ d‰ › �¦   «         ‚ˆ fd„t          t	          ‰ j        ¦  «        ¦  «        D ¦   «         }t	          |¦  «        dk    r$|d         Šˆ ˆfd„} |d¦  «         |d¦  «        gS ‰ gS )Nz%Expected a sum of two arguments, got c                 ó^   •— g | ])}t          ‰j        |         t          j        ¦  «        ¯'|‘Œ*S r	   )r  ÚargsrG   r‰   )r   r®  Úexprs     €r   r   zLSymbolicShapeInference._infer_Slice.<locals>.flatten_min.<locals>.<listcomp>C  s6   ø€ ÐkÐkÐk SÅZÐPTÔPYÐZ]ÔP^Õ`eÔ`iÑEjÔEjÐk˜SÐkÐkÐkr   rY   r   c                 óB  •— t          ‰j        ¦  «        }t          |‰         t          j        ¦  «        sJ d‰› d|‰         › �¦   «         ‚t          |‰         j        ¦  «        dk    sJ d|‰         › �¦   «         ‚|‰         j        |          |‰<   t          j        |Ž S )Nz#Expected a sympy.Min() at position z, got rÐ  z5Expected a sympy.Min() with exactly 2 arguments, got )rQ   rr  r  rG   r‰   rZ   rj   )Úarg_idxÚreplacedrs  Úmin_poss     €€r   Úreplace_min_with_argzVSymbolicShapeInference._infer_Slice.<locals>.flatten_min.<locals>.replace_min_with_argG  s·   ø€ Ý# D¤I™œ�HÝ% h¨wÔ&7½¼ÑCÔCð ð Ø`¸gÐ`Ð`ÈXÐV]ÔM^Ð`Ð`ñô ÐCõ ˜x¨Ô0Ô5Ñ6Ô6¸!Ò;Ð;Ð;ØcÐPXÐY`ÔPaÐcÐcñ <Ô;Ð;ð )1°Ô(9Ô(>¸wÔ(G�H˜WÑ%Ý œ9 hÐ/Ð/r   )r  rG   rj   r¡  rZ   rr  )rs  Úmin_positionsrx  rw  s   `  @r   Úflatten_minz8SymbolicShapeInference._infer_Slice.<locals>.flatten_minA  sÃ   øø€ Ý˜d¥E¤IÑ.Ô.Ð^Ð^Ð0^ÐX\Ð0^Ð0^Ñ^Ô^Ð.ØkÐkÐkÐk­Eµ#°d´i±.´.Ñ,AÔ,AÐkÑkÔkˆMÝ�=Ñ!Ô! QÒ&Ð&Ø'¨Ô*�ð	0ð 	0ð 	0ð 	0ð 	0ð 	0ð )Ð(¨Ñ+Ô+Ø(Ð(¨Ñ+Ô+ðð ð �6ˆMr   c                 óÄ  •— 	 t          | |k    ¦  «        S # t          $ r Y nw xY w	 t          || k    ¦  «        S # t          $ r Y nw xY w	 t          |  | k    ¦  «        S # t          $ r Y nw xY w	 t          | |  k    ¦  «        S # t          $ r Y nw xY w	 t          || z
  dk    ¦  «        S # t          $ r( t          d„  ‰|| z
  ¦  «        D ¦   «         ¦  «        cY S w xY w)Nr   c              3   ó<   K  — | ]}t          |d k    ¦  «        V — ŒdS r‘  )Úboolr*   s     r   rW  zJSymbolicShapeInference._infer_Slice.<locals>.less_equal.<locals>.<genexpr>m  s,   è è € ÐDÐD¨A�4  Q¢™<œ<ÐDÐDÐDÐDÐDÐDr   )r}  rO  r\  )r^   Úyrz  s     €r   Ú
less_equalz7SymbolicShapeInference._infer_Slice.<locals>.less_equalX  sK  ø€ ðÝ˜A šF‘|”|Ð#øÝð ð ð Ø�ðøøøðÝ˜A šF‘|”|Ð#øÝð ð ð Ø�ðøøøðÝ˜Q˜B 1 "šH‘~”~Ð%øÝð ð ð Ø�ðøøøðÝ˜Q˜B 1 "šH‘~”~Ð%øÝð ð ð Ø�ðøøøðEÝ˜A ™E QšJÑ'Ô'Ð'øÝð Eð Eð EåÐDÐD°°¸QÀ¹UÑ1CÔ1CÐDÑDÔDÑDÔDÐDÐDÐDðEøøøsQ   ƒ –
#¢#§: º
AÁAÁA  Á 
A-Á,A-Á1B Â
BÂBÂB- Â-/CÃCc                 óÄ   •— 	  ‰d| ¦  «        s"t          | ¦  «        r| ‰j         k    r| S || z   S n.# t          $ r! t                               d| › d�¦  «         Y nw xY w| S )z/normalizes a negative index to be in [0, bound)r   zCannot determine if z < 0)r<   rJ  rO  rb  rc  )re  Úboundr  rM  s     €€r   Úhandle_negative_indexzBSymbolicShapeInference._infer_Slice.<locals>.handle_negative_indexo  s™   ø€ ðCØ!�z ! UÑ+Ô+ð )Ý! %Ñ(Ô(ð %¨U°t´}°nÒ-DÐ-Dà$˜Ø  5™=Ð(ð	)øõ
 ð Cð Cð CÝ—’ÐA°eÐAÐAÐAÑBÔBÐBÐBÐBðCøøøàˆLs   ƒ(2 ¬2 ²(AÁArÇ  r=  ÚstartsÚendsrY   TrÕ  rÐ  r3  r  r   Fr=  r2  zUnable to determine if z <= z, treat as equal)$rV   ro  r   rQ   r¡  rZ   rb   rÀ  r¹  r,  rA   r  r<   rJ  rÙ   rÚ   rG   r‰   Ú	Exceptionrb  rc  rQ  rÅ  r…  rÚ  r�  r   r}  r   r"   r1   rq  r»  rD   Úarrayr(   )rM  r   r‚  r=  rƒ  r„  ÚstepsrÃ  r?   rV  Úer¨  r4   Úinput_sympy_datarz  r  s   `             @@r   r  z#SymbolicShapeInference._infer_Slice9  sI  øøø€ ð	ð 	ð 	ð.	Eð 	Eð 	Eð 	Eð 	Eð.
	ð 
	ð 
	ð 
	ð 
	ð 
	õ �T”\Ñ"Ô" aÒ'Ð'Ý   vÑ.Ô.ˆDÝ" 4¨Ñ2Ô2ˆFÝ   vÑ.Ô.ˆDØð 0Ý�E¥# f¡+¤+Ñ.Ô.Ñ/Ô/�Ø�C�#˜d™)œ)‘OˆEˆEå˜T×0Ò0°°qÑ9Ô9ÀTÐJÑJÔJˆFÝ˜4×.Ò.¨t°QÑ7Ô7À4ÐHÑHÔHˆDØ×&Ò& t¨QÑ/Ô/ˆDØ×'Ò'¨¨aÑ0Ô0ˆEØˆ| V ^¸¸Ý�E¥#°Ð0B f fÈÑ"MÔ"MÑNÔNÑOÔO�Øˆ} f n¸¸Ø˜�c¨FÐ,> & &ÀDÑIÔIÑI�Ý˜4¨4Ð0Ñ0Ô0ˆDÝ˜E¨TÐ2Ñ2Ô2ˆEà×/Ò/°°aÑ8Ô8ˆØˆ>˜T˜\Øˆ|Ý�s ?Ñ3Ô3Ñ4Ô4ð Xð X�AØ)-×)KÒ)KÈDÐRSÐUVÑ)WÔ)W�O AÑ&Ð&ñXõ #=¸_Ñ"MÔ"M�Øð Xð X�AØ)-×)KÒ)KÈDÐRSÐUVÑ)WÔ)W�O AÑ&Ð&ñXõ " $¨°°eÀEÐJÑJÔJð ]ñ ]‘
��1�a˜Ø)Ð)¨!¨_¸QÔ-?Ñ@Ô@�Ý˜a‘=”=ð 3Ø˜DœMÒ)Ð)Ø+¨AÔ.˜™Ø˜tœ}˜nÒ,Ð,Ø!" Q¢ ˜A˜A¨B˜™Ý# O°AÔ$6Ñ7Ô7ð Ø˜qš5˜5Ý # A q¨?¸1Ô+=Ñ'=Ñ >Ô >˜AÝ  ?°1Ô#5Ñ6Ô6˜˜à˜qš5˜5àDEÈÂEÀE¥¤	¨!¨_¸QÔ-?Ñ @Ô @Ð @Èqð øõ " /°!Ô"4Ñ5Ô5ð 3Ý!œI a¨¸Ô);Ñ<Ô<˜˜ð3Ø#- :¨a°ÀÔ1CÑ#DÔ#Dð 7Ø$3°AÔ$6 øøÝ(ð 3ð 3ð 3Ý"ŸNšNÐ+pÀQÐ+pÐ+pÈOÐ\]ÔL^Ð+pÐ+pÐ+pÑqÔqÐqØ /°Ô 2˜A˜A˜Að3øøøð *Ð)¨!¨_¸QÔ-?Ñ@Ô@�Ý˜o¨aÔ0Ñ1Ô1ð ;µjÀ±m´mð ;Ý˜A�s 1 o°aÔ&8Ñ9Ô9Ñ:Ô:�Aå%*¤^°Q¸±U¸Q±YÈÈAÊÈÀ"À"ÐSTÑ5UÐZ[Ñ4[Ñ%\Ô%\� Ñ"Ñ"à×&Ò& Ñ7Ô7Ð7àŒ^˜DœK¨œNÔ+ˆØ
�ŠÝÔ)Ø”˜A”Ø”Ô#Ô-Ý*¨?Ñ;Ô;ñô ñ	
ô 	
ð 	
ð ŒJ�qŒM˜TÔ-Ð-Ð-Ø˜˜’�ØÐ"Ý�F‘”˜qÒ Ð ØÐ Ý�D‘	”	˜Q’�ØÐ!Ý�E‘
”
˜a’�à#Ô/°´
¸1´Ô>ÐÝÐ$Ñ%Ô%­Ð-Ð-ÝÐ%Ñ&Ô&­"¬(Ð2Ð2µsÐ;KÔ;QÑ7RÔ7RÐVWÒ7WÐ7Wà3CÀFÈ1ÄIÐPTÐUVÔPWÐZ_Ð`aÔZbÐDbÔ3c�Ô  ¤¨Q¤Ñ0Ð0Ð0ð .Ð-Ø�Ø"Ð"Ø Ð Ø Ð Ø�Ø!Ð!Ø�ð 3Ð2Ð7WÐ7Ws   ÌL4Ì49M0Í/M0c                 ó&  — | j         |j        d                  }| j         |j        d                  j        j        j        }t          |dd ¦  «        }|�|}||j        j        _        |j        j        j                             t          j
        ¦   «         ¦  «         t          |j        ¦  «        dk    r^|                      |d¦  «        }| j         |j        d                  }|                     t          j        |j        ||¦  «        ¦  «         d S d S )Nr   r˜  rY   )r…  rÚ  rq  r   r"   r1   r   r(   r�  r7   ro  rZ   r¯  r   r}  r   )rM  r   r4   r1   Úspecified_output_typer|  s         r   r  z5SymbolicShapeInference._infer_SoftmaxCrossEntropyLossÕ  së   € ØŒ^˜DœK¨œNÔ+ˆØ”N 4¤:¨a¤=Ô1Ô6ÔBÔLˆ	õ !.¨d°MÀ4Ñ HÔ HÐØ Ð,Ø-ˆIà(1ˆŒÔÔ%Ø
ŒÔÔ!×*Ò*­4Ô+@Ñ+BÔ+BÑCÔCÐCåˆtŒ{ÑÔ˜aÒÐØŸš¨¨qÑ1Ô1ˆJØ” ¤¨A¤Ô/ˆBØ�KŠK�Ô5°b´g¸yÈ*ÑUÔUÑVÔVÐVÐVÐVð  Ðr   c                 ó–  — |                       |d¦  «        }t          t          |dd¦  «        t          |¦  «        ¦  «        }t	          | j        ¦  «        }|dk     r)t          |d¦  «        }|                      |d¦  «        �J ‚n(|                      |d¦  «        }t          |d¦  «        �J ‚|€Kt          |j        ¦  «        }||         t          j	        |¦  «        z  g|z  }|  
                    |¦  «         nd„ |D ¦   «         }t          t          |¦  «        ¦  «        D ]¥}| j        |j        |                  }	|	                      ||j        |         | j        |j        d                  j        j        j        t%          g |d |…         ¢||         ‘||dz   d …         ¢¦  «        ¦  «        ¦  «         |	| j        |	j        <   Œ¦d S )Nr   rL   r8  rÃ  rY   c                 ó6   — g | ]}t          j        |¦  «        ‘ŒS r	   r7  r[  s     r   r   z>SymbolicShapeInference._infer_Split_Common.<locals>.<listcomp>ø  s"   € Ð5Ð5Ð5¨!•U”] 1Ñ%Ô%Ð5Ð5Ð5r   )r¹  rN   r   rZ   rV   ro  rÀ  rÚ  rG   rH   rÅ  r¡  r…  r�  rq  r   r"   r1   rA   r   )
rM  r   Úmake_value_info_funcrJ  rL   Úop_setrÃ  Únum_outputsrã  r4   s
             r   Ú_infer_Split_Commonz*SymbolicShapeInference._infer_Split_Commonæ  sá  € Ø ×1Ò1°$¸Ñ:Ô:ÐÝ#¥M°$¸ÀÑ$BÔ$BÅCÐHYÑDZÔDZÑ[Ô[ˆÝ˜4œ<Ñ(Ô(ˆð �BŠ;ˆ;Ý! $¨Ñ0Ô0ˆEØ×&Ò& t¨QÑ/Ô/Ð7Ð7Ð7Ð7à×'Ò'¨¨aÑ0Ô0ˆEÝ   wÑ/Ô/Ð7Ð7Ð7àˆ=Ý˜dœkÑ*Ô*ˆKØ& tÔ,­u¬}¸[Ñ/IÔ/IÑIÐJÈ[ÑXˆEØ×&Ò& uÑ-Ô-Ð-Ð-à5Ð5¨uÐ5Ñ5Ô5ˆEå�˜U™œÑ$Ô$ð 		)ð 		)ˆCØ” ¤¨CÔ 0Ô1ˆBØ�KŠKØ$Ð$Ø”K Ô$Ø”N 4¤:¨a¤=Ô1Ô6ÔBÔLÝ.Ð/vÐ1BÀ5ÀDÀ5Ô1IÐ/vÈ5ÐQTÌ:Ð/vÐXiÐjnÐqrÑjrÐjtÐjtÔXuÐ/vÑwÔwñô ñô ð ð ')ˆDŒN˜2œ7Ñ#Ð#ð		)ð 		)r   c                 óF   — |                       |t          j        ¦  «         d S r0   )r‘  r   r}  r"  s     r   r  z#SymbolicShapeInference._infer_Split  s!   € Ø× Ò  ¥vÔ'DÑEÔEÐEÐEÐEr   c                 óF   — |                       |t          j        ¦  «         d S r0   )r‘  r   Úmake_sequence_value_infor"  s     r   r  z-SymbolicShapeInference._infer_SplitToSequence  s!   € Ø× Ò  ¥vÔ'FÑGÔGÐGÐGÐGr   c                 ó˜  ‡— |                       |d¦  «        Št          | j        ¦  «        }|dk     r)t          |d¦  «        }|                      |d¦  «        �J ‚n(|                      |d¦  «        }t          |d¦  «        �J ‚|€dd„ ‰D ¦   «         }| j        dk    rLd„ ‰D ¦   «         }t          |¦  «        dk    r-t                               d|j	        › d|j
        › d	|› �¦  «         nÛˆfd
„|D ¦   «         }g }t          t          ‰¦  «        ¦  «        D ]®}||vr|                     ‰|         ¦  «         Œ"‰|         dk    s t          ‰|         ¦  «        t          k    sJ ‚| j        dk    rUt          ‰|         ¦  «        t          k    r7t                               d|j	        › d|j
        › d‰|         › d|› d�	¦  «         Œ¯| j        |j        d                  }|                     t%          j        |j        d         | j        |j        d                  j        j        j        |¦  «        ¦  «         |                      |¦  «         d S )Nr   r8  r=  rY   c                 ó   — g | ]
}|d k    ¯|‘ŒS r<  r	   r[  s     r   r   z9SymbolicShapeInference._infer_Squeeze.<locals>.<listcomp>  s   € Ð=Ð=Ð= !°a¸1²f°f˜A°f°f°fr   c                 óB   — g | ]}t          |¦  «        t          k    ¯|‘ŒS r	   )r   r=   r[  s     r   r   z9SymbolicShapeInference._infer_Squeeze.<locals>.<listcomp>  s#   € Ð&PÐ&PÐ&P¨QÅÀaÁÄÍCÂÀ qÀÀÀr   z+Symbolic dimensions in input shape of op: 'z	' node: 'z;'. Assuming the following dimensions are never equal to 1: c                 óJ   •— g | ]}t          |t          ‰¦  «        ¦  «        ‘Œ S r	   r:  )r   r;  rš  s     €r   r   z9SymbolicShapeInference._infer_Squeeze.<locals>.<listcomp>$  s,   ø€ ÐLÐLÐLÀ!Õ(¨­C°Ñ,<Ô,<Ñ=Ô=ÐLÐLÐLr   z'. Assuming the dimension 'z' at index z of the input to be equal to 1.)r¯  rV   ro  r   rÀ  rI  rZ   rb  r˜  rÙ  r   r¡  r¸  r   r=   r…  rÚ  r�  r   r}  rq  r"   r1   r#  )	rM  r   r�  r=  rœ  Úsymbolic_dimensionsr?   r4   rš  s	           @r   r  z%SymbolicShapeInference._infer_Squeeze  sº  ø€ Ø—o’o d¨AÑ.Ô.ˆÝ˜4œ<Ñ(Ô(ˆð �BŠ;ˆ;Ý   vÑ.Ô.ˆDØ×&Ò& t¨QÑ/Ô/Ð7Ð7Ð7Ð7à×&Ò& t¨QÑ/Ô/ˆDÝ   vÑ.Ô.Ð6Ð6Ð6àˆ<ð >Ð= {Ð=Ñ=Ô=ˆLØŒ}˜qÒ Ð Ø&PÐ&P°+Ð&PÑ&PÔ&PÐ#ÝÐ*Ñ+Ô+¨aÒ/Ð/Ý—L’LðiÀdÄlð ið iÐ]aÔ]fð ið iØSfðið iñô ð øð
 MÐLÐLÐLÀtÐLÑLÔLˆDØˆLÝ�3˜{Ñ+Ô+Ñ,Ô,ð 	ð 	�Ø˜D�=�=Ø ×'Ò'¨°A¬Ñ7Ô7Ð7Ð7à& qœ>¨QÒ.Ð.µ$°{À1´~Ñ2FÔ2FÍ#Ò2MÐ2MÐ2MÐMØ”} qÒ(Ð(­T°+¸a´.Ñ-AÔ-AÅSÒ-HÐ-HÝŸšðuÈ$Ì,ð uð uÐaeÔajð uð uØ7BÀ1´~ðuð uØRSðuð uð uñô ð øð
 Œ^˜DœK¨œNÔ+ˆØ
�ŠÝÔ)Ø”˜A”Ø”˜tœz¨!œ}Ô-Ô2Ô>ÔHØñô ñ	
ô 	
ð 	
ð 	× Ò  Ñ&Ô&Ð&Ð&Ð&r   c           	      ó   — |                       |d¦  «        }g }|�a|                      |d¦  «        }t          |¦  «        D ]%\  }}|||         z  }|                     |¦  «         Œ&|                      |¦  «         n*|                      |                      |d¦  «        |¦  «        }| j        |j        d                  }| 	                    t          j        |j        d         |j        j        j        t          |¦  «        ¦  «        ¦  «         d S rX   )rÀ  r¹  rÂ  r¸  rÅ  r0  r³  r…  rÚ  r�  r   r}  r   r"   r1   rA   )	rM  r   Úrepeats_valuerÃ  rJ  r?   r+   rª  r4   s	            r   r  z"SymbolicShapeInference._infer_Tile;  s  € Ø×+Ò+¨D°!Ñ4Ô4ˆØˆØÐ$Ø $× 5Ò 5°d¸AÑ >Ô >ÐÝ!Ð"3Ñ4Ô4ð 0ð 0‘��1Ø˜m¨AÔ.Ñ.�Ø×&Ò& wÑ/Ô/Ð/Ð/Ø×&Ò& Ñ7Ô7Ð7Ð7à"×6Ò6°t×7KÒ7KÈDÐRSÑ7TÔ7TÐVZÑ[Ô[ˆOØŒ^˜DœK¨œNÔ+ˆØ
�ŠÝÔ)Ø”˜A”Ø”Ô#Ô-Ý*¨?Ñ;Ô;ñô ñ	
ô 	
ð 	
ð 	
ð 	
r   c                 ó4  — |                       |d¦  «        }t          t          |dd¦  «        |¦  «        }|                      |d¦  «        }t	          | j        ¦  «        dk    rt          |d¦  «        }n|                      |¦  «        d         }|€|                      |¦  «        }nt          |¦  «        }t          |¦  «        t          t          fv r|||<   n?|                      |d¦  «        }|||<   |                      |¦  «         t          |¦  «        }t          t!          |j        ¦  «        ¦  «        D ]]}| j        |j        |                  }|                     t)          j        |j        |         |j	        j        j        |¦  «        ¦  «         Œ^d S )Nr   rL   r2  rÇ  ri  rY   )r³  rN   r   r¯  rV   ro  r  r,  r_   r   r=   r   r¹  rÅ  rA   r¡  rZ   rÚ  r…  r�  r   r}  r"   r1   )	rM  r   rM   rL   r¤  ri  rÃ  rã  r4   s	            r   r  z"SymbolicShapeInference._infer_TopKO  s‡  € Ø×#Ò# D¨!Ñ,Ô,ˆÝ#¥M°$¸ÀÑ$CÔ$CÀTÑJÔJˆØ—O’O D¨!Ñ,Ô,ˆ	å�T”\Ñ"Ô" aÒ'Ð'Ý˜d CÑ(Ô(ˆAˆAà×-Ò-¨dÑ3Ô3°AÔ6ˆAàˆ9Ø×2Ò2°4Ñ8Ô8ˆAˆAå˜!‘”ˆAå�‰7Œ7•s�C�jÐ Ð ØˆI�d‰OˆOà"×3Ò3°D¸!Ñ<Ô<ˆOØ$%ˆO˜DÑ!Ø×&Ò&Øñô ð õ 3°?ÑCÔCˆIå�˜Tœ[Ñ)Ô)Ñ*Ô*ð 	sð 	sˆCØ” ¤¨CÔ 0Ô1ˆBØ�KŠK�Ô5°d´kÀ#Ô6FÈÌÔH[ÔHeÐgpÑqÔqÑrÔrÐrÐrð	sð 	sr   c                 ó   — |j         d         | j        v ré|                      |d¦  «        }t          |dt	          t          t          t          |¦  «        ¦  «        ¦  «        ¦  «        ¦  «        }| j        |j         d                  }t          j	         t          j
        |¦  «        j        |Ž t          |¦  «        ¬¦  «                             ¦   «                              ¦   «         | j        |j        d         <   d S d S )Nr   Úperm)r=  )rq  r»  r¯  r   ÚreversedrQ   r¡  rZ   rD   Ú	transposer†  ÚreshapeÚtupleÚflattenÚtolistrÚ  )rM  r   r|  rž  r2  s        r   r  z'SymbolicShapeInference._infer_Transposel  sÒ   € ØŒ:�aŒ=˜DÔ,Ð,Ð,ØŸš¨¨qÑ1Ô1ˆJÝ   v­x½½UÅ3ÀzÁ?Ä?Ñ=SÔ=SÑ8TÔ8TÑ/UÔ/UÑVÔVˆDØÔ)¨$¬*°Q¬-Ô8ˆJå”Ð9�RœX jÑ1Ô1Ô9¸:ÐFÍUÐSWÉ[Ì[ÐYÑYÔY×aÒaÑcÔc×jÒjÑlÔlð Ô˜Tœ[¨œ^Ñ,Ð,Ð,ð	 -Ð,r   c                 ó  ‡	— |                       |d¦  «        }t          | j        ¦  «        }|dk     r)t          |d¦  «        }|                      |d¦  «        �J ‚n(|                      |d¦  «        }t          |d¦  «        �J ‚t          |¦  «        t          |¦  «        z   Š	ˆ	fd„|D ¦   «         }d}g }t          ‰	¦  «        D ]<}||v r|                     d¦  «         Œ|                     ||         ¦  «         |dz  }Œ=| j        |j	        d                  }| 
                    t          j        |j	        d         | j        |j        d                  j        j        j        |¦  «        ¦  «         |                      |¦  «         d S )Nr   r8  r=  rY   c                 ó0   •— g | ]}t          |‰¦  «        ‘ŒS r	   )rN   )r   r;  Úoutput_ranks     €r   r   z;SymbolicShapeInference._infer_Unsqueeze.<locals>.<listcomp>‚  s$   ø€ ÐCÐCÐC¸Õ$ Q¨Ñ4Ô4ÐCÐCÐCr   )r¯  rV   ro  r   rÀ  rZ   r¡  r¸  r…  rÚ  r�  r   r}  rq  r   r"   r1   r#  )
rM  r   rš  r�  r=  Ú
input_axisrœ  r?   r4   r§  s
            @r   r  z'SymbolicShapeInference._infer_Unsqueezeu  s˜  ø€ Ø—o’o d¨AÑ.Ô.ˆÝ˜4œ<Ñ(Ô(ˆð �BŠ;ˆ;Ý   vÑ.Ô.ˆDØ×&Ò& t¨QÑ/Ô/Ð7Ð7Ð7Ð7à×&Ò& t¨QÑ/Ô/ˆDÝ   vÑ.Ô.Ð6Ð6Ð6å˜+Ñ&Ô&­¨T©¬Ñ2ˆØCÐCÐCÐC¸dÐCÑCÔCˆàˆ
ØˆÝ�{Ñ#Ô#ð 	 ð 	 ˆAØ�DˆyˆyØ×#Ò# AÑ&Ô&Ð&Ð&à×#Ò# K°
Ô$;Ñ<Ô<Ð<Ø˜a‘�
�
àŒ^˜DœK¨œNÔ+ˆØ
�ŠÝÔ)Ø”˜A”Ø”˜tœz¨!œ}Ô-Ô2Ô>ÔHØñô ñ	
ô 	
ð 	
ð 	× Ò  Ñ&Ô&Ð&Ð&Ð&r   c                 óÚ  — d }t          |d¦  «        �t          j        j        }n!t          |d¦  «        �t          j        j        }|€J ‚t          j        ¦   «         }|j        d         |_        t          j        j        |j	        j
        j        j        j        j        _        ||j	        j
        j        j        _        | j        |j        d                  }|                     |¦  «         d S )NÚclasslabels_int64sÚclasslabels_stringsr   )r   r7   rl  r–  r•  r8   rÚ  r   ÚFLOATr   r#   r1   Úmap_typeÚ
value_typer"   Úkey_typer…  r�  )rM  r   Úmap_key_typeÚnew_vir4   s        r   r  z$SymbolicShapeInference._infer_ZipMap˜  sÄ   € ØˆÝ˜Ð3Ñ4Ô4Ð@ÝÔ+Ô1ˆLˆLÝ˜4Ð!6Ñ7Ô7ÐCÝÔ+Ô2ˆLàÐ'Ð'Ð'ÝÔ$Ñ&Ô&ˆØ”k !”nˆŒÝX\ÔXhÔXnˆŒÔ!Ô+Ô4Ô?ÔKÔUØ@LˆŒÔ!Ô+Ô4Ô=ØŒ^˜DœK¨œNÔ+ˆØ
�Š�FÑÔÐÐÐr   c                 óî  — |                       |d¦  «        }|                       |d¦  «        }|                      |d¦  «        }|�t          |¦  «        dk    sJ ‚|�|d         n|d         }|�rt          |¦  «        dk    �rðt          |d¦  «        }|�.t          |¦  «        dk    sJ ‚t	          |d         ¦  «        |d<   n*t          |t          ¦  «        rt	          |dz  ¦  «        |d<   | j        |j        d                  j        j	        j
        }| j        |j        d                  }|                     t          j        |j        d         ||¦  «        ¦  «         t          |j        ¦  «        dk    �rü|                       |d¦  «        }	t          |j        ¦  «        dk    r#|j        d         r|                       |d¦  «        ng }
t          |j        ¦  «        dk    r#|j        d         r|                       |d¦  «        ng }|
rðt          |
¦  «        dk    rÝ|rt          |¦  «        dv r|d	         |
d<   nv|	rtt          |	¦  «        dk    rat          |	d         t          ¦  «        r0t          |
d         t          ¦  «        r|	d         |
d         z   |
d<   n|
d         › d
|	d         › �|
d<   | j        |j        d                  }|                     t          j        |j        ||
¦  «        ¦  «         d S t          |d¦  «        }|	d         |z  }d|	d         ||	d         |g}| j        |j        d                  }|                     t          j        |j        ||¦  «        ¦  «         d S d S d S d S )Nr   rY   rÐ  r3  Úqkv_hidden_sizesr  é   r  r2  ú+rD  )r¯  r±  rZ   r   r=   r  r…  rq  r   r"   r1   rÚ  r�  r   r}  r   )rM  r   r(   Úshape_weightsÚ
shape_biasÚtripled_hidden_sizeÚqkv_hidden_sizes_attrra  r4   rš  Ú
past_shapeÚ
mask_shaperD  Ú	head_sizeÚpresent_shapes                  r   r  z'SymbolicShapeInference._infer_Attention§  s|  € Ø—’  aÑ(Ô(ˆØŸš¨¨aÑ0Ô0ˆØ×(Ò(¨¨qÑ1Ô1ˆ
ØÐ!Ý�z‘?”? aÒ'Ð'Ð'Ð'Ø/9Ð/E˜j¨œm˜mÈ=ÐYZÔK[ÐØñ $	e•S˜‘Z”Z 1’_‘_Ý$1°$Ð8JÑ$KÔ$KÐ!Ø$Ð0ÝÐ0Ñ1Ô1°QÒ6Ð6Ð6Ð6ÝÐ4°QÔ7Ñ8Ô8��a‘�ÝÐ/µÑ5Ô5ð 8ÝÐ2°QÑ6Ñ7Ô7��a‘Øœ>¨$¬*°Q¬-Ô8Ô=ÔIÔSˆLØ” ¤¨A¤Ô/ˆBØ�KŠK�Ô5°d´kÀ!´nÀlÐTYÑZÔZÑ[Ô[Ð[å�4”;ÑÔ !Ò#Ñ#ð
 #Ÿošo¨d°AÑ6Ô6�Ý9<¸T¼Z¹¼È1Ò9LÐ9LÐQUÔQ[Ð\]ÔQ^Ð9L˜TŸ_š_¨T°1Ñ5Ô5Ð5Ðdf�
Ý9<¸T¼Z¹¼È1Ò9LÐ9LÐQUÔQ[Ð\]ÔQ^Ð9L˜TŸ_š_¨T°1Ñ5Ô5Ð5Ðdf�
àð e¥# j¡/¤/°QÒ"6Ð"6Ø!ð P¥c¨*¡o¤o¸Ð&?Ð&?Ø(2°2¬˜
 1™˜Ø$ð P­¨[Ñ)9Ô)9¸QÒ)>Ð)>Ý% k°!¤nµcÑ:Ô:ð P½zÈ*ÐUVÌ-ÕY\Ñ?]Ô?]ð PØ,7¸¬N¸ZÈ¼]Ñ,J˜J q™M˜Mà/9¸!¬}Ð,OÐ,O¸{È1¼~Ð,OÐ,O˜J q™MØœ¨¬°A¬Ô7�BØ—K’K¥Ô =¸b¼gÀ|ÐU_Ñ `Ô `ÑaÔaÐaÐaÐaõ !.¨d°KÑ @Ô @�IØ +¨A¤°)Ñ ;�IØ%&¨°A¬¸	À;ÈqÄ>ÐS\Ð$]�MØœ¨¬°A¬Ô7�BØ—K’K¥Ô =¸b¼gÀ|ÐUbÑ cÔ cÑdÔdÐdÐdÐdðI$	eð $	e�_�_ð $Ð#r   c                 óø  — t          |d¦  «        }|                      |d¦  «        }|�|d         ||d         |d         g}nE|                      |d¦  «        }|�t          |¦  «        dk    sJ ‚|d         ||d         |d         g}| j        |j        d                  j        j        j        }| j        |j	        d                  }| 
                    t          j        |j	        d         ||¦  «        ¦  «         d S )NrD  r#  r   rY   r3  )r   r±  r¯  rZ   r…  rq  r   r"   r1   rÚ  r�  r   r}  )rM  r   rD  Útoken_offset_shaperœ  Úquery_layer_shapera  r4   s           r   r  z7SymbolicShapeInference._infer_GatedRelativePositionBiasÔ  s   € õ " $¨Ñ4Ô4ˆ	à!×0Ò0°°qÑ9Ô9ÐØÐ)Ø.¨qÔ1°9Ð>PÐQRÔ>SÐUgÐhiÔUjÐkˆLˆLà $§¢°°aÑ 8Ô 8ÐØ$Ð0µSÐ9JÑ5KÔ5KÈqÒ5PÐ5PÐ5PÐPØ-¨aÔ0°)Ð=NÈqÔ=QÐSdÐefÔSgÐhˆLà”~ d¤j°¤mÔ4Ô9ÔEÔOˆØŒ^˜DœK¨œNÔ+ˆØ
�Š•FÔ1°$´+¸a´.À,ÐP\Ñ]Ô]Ñ^Ô^Ð^Ð^Ð^r   c                 óÈ  — |                       |d¦  «        }|                       |d¦  «        }|                      |d¦  «        }|�t          |¦  «        dk    sJ ‚|�|d         n|d         }|ròt          |¦  «        dk    rát          |d¦  «        }|�.t          |¦  «        dk    sJ ‚t	          |d         ¦  «        |d<   n*t          |t          ¦  «        rt	          |dz  ¦  «        |d<   | j        |j        d                  j        j	        j
        }| j        |j        d                  }|                     t          j        |j        d         ||¦  «        ¦  «         d S d S d S )Nr   rY   rÐ  r³  r3  )r¯  r±  rZ   r   r=   r  r…  rq  r   r"   r1   rÚ  r�  r   r}  )	rM  r   r(   r¶  r·  r¸  r¹  ra  r4   s	            r   r*  z-SymbolicShapeInference._infer_PackedAttentionê  si  € Ø—’  aÑ(Ô(ˆØŸš¨¨aÑ0Ô0ˆØ×(Ò(¨¨qÑ1Ô1ˆ
ØÐ!Ý�z‘?”? aÒ'Ð'Ð'Ð'Ø/9Ð/E˜j¨œm˜mÈ=ÐYZÔK[ÐØð 		\•S˜‘Z”Z 1’_�_Ý$1°$Ð8JÑ$KÔ$KÐ!Ø$Ð0ÝÐ0Ñ1Ô1°QÒ6Ð6Ð6Ð6ÝÐ4°QÔ7Ñ8Ô8��a‘�ÝÐ/µÑ5Ô5ð 8ÝÐ2°QÑ6Ñ7Ô7��a‘Øœ>¨$¬*°Q¬-Ô8Ô=ÔIÔSˆLØ” ¤¨A¤Ô/ˆBØ�KŠK�Ô5°d´kÀ!´nÀlÐTYÑZÔZÑ[Ô[Ð[Ð[Ð[ð		\ð 		\�_�_r   c                 óÔ  — |                       |d¦  «        }|�t          |¦  «        dk    r|}nF|                      |d¦  «        }|�t          |¦  «        dk    sJ ‚|d         |d         |d         z  g}| j        |j        d                  j        j        j        }| j        |j        d                  }| 	                    t          j        |j        d         ||¦  «        ¦  «         d S )NrÐ  r   r  rY   r3  )r±  rZ   r¯  r…  rq  r   r"   r1   rÚ  r�  r   r}  )rM  r   rG  rœ  Úshape_queryra  r4   s          r   r+  z6SymbolicShapeInference._infer_PackedMultiHeadAttentionü  sÝ   € Ø×)Ò)¨$°Ñ2Ô2ˆØÐ"¥s¨;Ñ'7Ô'7¸1Ò'<Ð'<Ø&ˆLˆLàŸ/š/¨$°Ñ2Ô2ˆKØÐ*­s°;Ñ/?Ô/?À1Ò/DÐ/DÐ/DÐDØ'¨œN¨K¸¬N¸[È¼^Ñ,KÐLˆLà”~ d¤j°¤mÔ4Ô9ÔEÔOˆØŒ^˜DœK¨œNÔ+ˆØ
�Š•FÔ1°$´+¸a´.À,ÐP\Ñ]Ô]Ñ^Ô^Ð^Ð^Ð^r   c           	      ó   — |                       |d¦  «        }|�r²t          |¦  «        dk    �r | j        |j        d                  j        j        j        }| j        |j        d                  }|                     t          j
        |j        d         |d|d         g¦  «        ¦  «         | j        |j        d                  }|                     t          j
        |j        d         t          j        j        |d         |d         g¦  «        ¦  «         | j        |j        d                  }|                     t          j
        |j        d         t          j        j        dg¦  «        ¦  «         | j        |j        d                  }|                     t          j
        |j        d         t          j        j        dg¦  «        ¦  «         d S d S d S )Nr   r3  Útoken_countrÐ  rY   zbatch_size + 1©r¯  rZ   r…  rq  r   r"   r1   rÚ  r�  r   r}  r7   rl  r÷  )rM  r   r(   ra  r4   Úvi_token_offsetÚvi_cumulated_seq_lenÚvi_max_seq_lens           r   r1  z+SymbolicShapeInference._infer_RemovePadding		  s•  € Ø—’  aÑ(Ô(ˆØñ 	p•S˜‘Z”Z 1’_‘_Øœ>¨$¬*°Q¬-Ô8Ô=ÔIÔSˆLØ” ¤¨A¤Ô/ˆBØ�KŠK�Ô5°d´kÀ!´nÀlÐUbÐdiÐjkÔdlÐTmÑnÔnÑoÔoÐoà"œn¨T¬[¸¬^Ô<ˆOØ×$Ò$ÝÔ-¨d¬k¸!¬n½dÔ>NÔ>TÐW\Ð]^ÔW_ÐafÐghÔaiÐVjÑkÔkñô ð ð $(¤>°$´+¸a´.Ô#AÐ Ø ×)Ò)ÝÔ-¨d¬k¸!¬n½dÔ>NÔ>TÐWgÐVhÑiÔiñô ð ð "œ^¨D¬K¸¬NÔ;ˆNØ×#Ò#¥FÔ$AÀ$Ä+ÈaÄ.ÕRVÔRbÔRhÐklÐjmÑ$nÔ$nÑoÔoÐoÐoÐoð!	pð 	p�_�_r   c                 óÖ  — |                       |d¦  «        }|                       |d¦  «        }|r´t          |¦  «        dk    r£|r£t          |¦  «        dk    r’| j        |j        d                  j        j        j        }| j        |j        d                  }|d         |d         |d         g}|                     t          j
        |j        d         ||¦  «        ¦  «         d S d S d S d S d S r�  )r¯  rZ   r…  rq  r   r"   r1   rÚ  r�  r   r}  )rM  r   Úshape_inputÚshape_token_offsetra  r4   rœ  s          r   r2  z,SymbolicShapeInference._infer_RestorePadding	  só   € Ø—o’o d¨AÑ.Ô.ˆØ!Ÿ_š_¨T°1Ñ5Ô5ÐØð 	c�3˜{Ñ+Ô+¨qÒ0Ð0Ð5GÐ0ÍCÐPbÑLcÔLcÐghÒLhÐLhØœ>¨$¬*°Q¬-Ô8Ô=ÔIÔSˆLØ” ¤¨A¤Ô/ˆBà.¨qÔ1Ð3EÀaÔ3HÈ+ÐVWÌ.ÐYˆLØ�KŠK�Ô5°d´kÀ!´nÀlÐT`ÑaÔaÑbÔbÐbÐbÐbð	cð 	cÐ0Ð0Ð0Ð0ÐLhÐLhr   c                 ó0   — |                       |¦  «         d S r0   ©r$  r"  s     r   r  z&SymbolicShapeInference._infer_BiasGelu'	  ó   € Ø×&Ò& tÑ,Ô,Ð,Ð,Ð,r   c                 ó¸  — |                       |d¦  «        }d }d }|��´t          |¦  «        dk    rà|                      |d¦  «        }|}|�Qt          |¦  «        dk    r>|                      |d¦  «        }|�t          |¦  «        dk    r|d         |d<   |d         }| j        |j        d                  j        j        j        }| j        |j        d                  }| 	                    t          j        |j        d         ||¦  «        ¦  «         �nt          |¦  «        dk    rôt          |d         t          ¦  «        r<t          |d         t          ¦  «        r!|d         |d         |d         |d         z  g}n"|d         |d         |d         › d|d         › �g}|d         }| j        |j        d                  j        j        j        }| j        |j        d                  }| 	                    t          j        |j        d         ||¦  «        ¦  «         t          |j        ¦  «        dk    �r£|d         }	t          |d¦  «        }
d }t          |¦  «        dk    rAt          |d         t          ¦  «        rt          |d         |
z  ¦  «        n|d         › d	|
› �}n|d         }|                      |d
¦  «        }|�It          |d         t          ¦  «        r!t          |t          ¦  «        r|d         |z   }n|d         › d|› �}|	|
||g}|€J ‚t          |j        ¦  «        dk    r¬|j        d         r¡|j        d         r–| j        |j        d                  }| 	                    t          j        |j        ||¦  «        ¦  «         | j        |j        d                  }| 	                    t          j        |j        ||¦  «        ¦  «         d S d S d S d S d S d S )Nr   r3  rY   rÐ  r´  r  Ú*rD  ú/r#  rµ  )r¯  rZ   r±  r…  rq  r   r"   r1   rÚ  r�  r   r}  r  r=   r   r   )rM  r   Úquery_shapeÚtotal_sequence_lengthra  Ú	key_shaperœ  Úvalue_shaper4   Ú
batch_sizerD  r¼  rº  r½  s                 r   r(  z0SymbolicShapeInference._infer_MultiHeadAttention*	  så  € ð —o’o d¨AÑ.Ô.ˆØ $ÐØˆØÑ"Ý�;ÑÔ 1Ò$Ð$Ø ×/Ò/°°aÑ8Ô8�	à*�ØÐ(­S°©^¬^¸qÒ-@Ð-@Ø"&×"5Ò"5°d¸AÑ">Ô">�KØ"Ð.µ3°{Ñ3CÔ3CÀqÒ3HÐ3HØ*5°a¬.˜ Q™Ø,5°a¬LÐ)à#œ~¨d¬j¸¬mÔ<ÔAÔMÔW�Ø”^ D¤K°¤NÔ3�Ø—’�FÔ9¸$¼+Àa¼.È,ÐXdÑeÔeÑfÔfÐfÑfå�[Ñ!Ô! QÒ&Ð&Ý˜k¨!œn­cÑ2Ô2ð jµzÀ+ÈaÄ.ÕRUÑ7VÔ7Vð jØ$/°¤N°KÀ´NÀKÐPQÄNÐU`ÐabÔUcÑDcÐ#d�L�Là$/°¤N°KÀ´NÀ{ÐSTÄ~ÐDhÐDhÐXcÐdeÔXfÐDhÐDhÐ#i�Là(3°A¬Ð%à#œ~¨d¬j¸¬mÔ<ÔAÔMÔW�Ø”^ D¤K°¤NÔ3�Ø—’�FÔ9¸$¼+Àa¼.È,ÐXdÑeÔeÑfÔfÐfå�4”;ÑÔ !Ò#Ñ#Ø(¨œ^�
Ý)¨$°Ñ<Ô<�	à �	Ý�{Ñ#Ô# qÒ(Ð(õ & k°!¤nµcÑ:Ô:ð=�˜K¨œN¨YÑ6Ñ7Ô7Ð7à +¨A¤Ð<Ð<°Ð<Ð<ð �Ið !,¨A¤�Ià!×0Ò0°°qÑ9Ô9�
àÐ)Ý! *¨Q¤-µÑ5Ô5ð [½*ÐEZÕ\_Ñ:`Ô:`ð [Ø0:¸1´Ð@UÑ0UÐ-Ð-à3=¸a´=Ð0ZÐ0ZÐCXÐ0ZÐ0ZÐ-à!+¨YÐ8MÈyÐ Y�à#Ð/Ð/Ð/Ý�t”{Ñ#Ô# aÒ'Ð'¨D¬K¸¬NÐ'¸t¼{È1¼~Ð'Øœ¨¬°A¬Ô7�BØ—K’K¥Ô =¸b¼gÀ|ÐUbÑ cÔ cÑdÔdÐdØœ¨¬°A¬Ô7�BØ—K’K¥Ô =¸b¼gÀ|ÐUbÑ cÔ cÑdÔdÐdÐdÐdðq #Ð"ð6 $Ð#ð2 (Ð'Ð'Ð'Ð'Ð'r   c                 óê  — |                       |d¦  «        }|��Q|}| j        |j        d                  j        j        j        }|€J ‚| j        |j        d                  }|                     t          j	        |j        d         ||¦  «        ¦  «         t          |j        ¦  «        dk    rÂ|j        d         r·|j        d         r¬|                      |d¦  «        }|�–| j        |j        d                  }|                     t          j	        |j        ||¦  «        ¦  «         | j        |j        d                  }|                     t          j	        |j        ||¦  «        ¦  «         d S d S d S d S d S d S )Nr   rÐ  rY   r´  )r¯  r…  rq  r   r"   r1   rÚ  r�  r   r}  rZ   r±  r   )rM  r   rÓ  rœ  ra  r4   rº  s          r   r  z=SymbolicShapeInference._infer_DecoderMaskedMultiHeadAttentionv	  s]  € ð —o’o d¨AÑ.Ô.ˆØÑ"Ø&ˆLØœ>¨$¬*°Q¬-Ô8Ô=ÔIÔSˆLØÐ+Ð+Ð+Ø” ¤¨A¤Ô/ˆBØ�KŠK�Ô5°d´kÀ!´nÀlÐT`ÑaÔaÑbÔbÐbå�4”;ÑÔ !Ò#Ð#¨¬°A¬Ð#¸4¼;Àq¼>Ð#Ø!×0Ò0°°qÑ9Ô9�
ØÐ)Øœ¨¬°A¬Ô7�BØ—K’K¥Ô =¸b¼gÀ|ÐU_Ñ `Ô `ÑaÔaÐaØœ¨¬°A¬Ô7�BØ—K’K¥Ô =¸b¼gÀ|ÐU_Ñ `Ô `ÑaÔaÐaÐaÐað #Ð"ð $Ð#Ð#Ð#Ð#Ð#à)Ð)r   c                 ór  — |                       |d¦  «        }|��|                     ¦   «         }| j        |j        d                  j        j        j        }|€J ‚t          |¦  «        d d d f\  }}}}|j        D ]G}	|	j	        dk    r|	j
        }|dk    r||z   n|}Œ"|	j	        dk    r|	j
        }Œ5|	j	        dk    r|	j
        }ŒH|                     |¦  «         ||         |z
  |z  dz   ||<   | j        |j        d                  }
|
                     t          j        |j        d         ||¦  «        ¦  «         d S d S )Nr   r   r2  r  r  rY   )r¯  rô  r…  rq  r   r"   r1   rZ   r   r   r?   r¸  rÚ  r�  r   r}  )rM  r   rš  rœ  ra  rM   r   r  r  r   r4   s              r   r7  z*SymbolicShapeInference._infer_UnfoldTensorŒ	  sS  € Ø—o’o d¨AÑ.Ô.ˆØÑ"Ø&×+Ò+Ñ-Ô-ˆLØœ>¨$¬*°Q¬-Ô8Ô=ÔIÔSˆLØÐ+Ð+Ð+å$'¨Ñ$4Ô$4°d¸DÀ$Ð$FÑ!ˆD�#�t˜TØœð "ð "�Ø”9 Ò%Ð%Øœ&�CØ(+¨rª	¨	˜$ ™*˜*°s�C�CØ”Y &Ò(Ð(Øœ6�D�DØ”Y &Ò(Ð(Øœ6�Døà×Ò Ñ%Ô%Ð%Ø!,¨SÔ!1°DÑ!8¸TÑ AÀAÑ EˆL˜Ñà” ¤¨A¤Ô/ˆBØ�KŠK�Ô5°d´kÀ!´nÀlÐT`ÑaÔaÑbÔbÐbÐbÐbð' #Ð"r   c           	      óz  — |                       |d¦  «        }|�¢t          |¦  «        }|dk    s|dk    sJ ‚||dz
           ||dz
           }}dd|› d|› d|› d|› �g}t          j        j        }| j        |j        d                  }|                     t          j	        |j        d         ||¦  «        ¦  «         d S d S )	Nr   rÐ  r3  rY   zmax(z, z	) <= O < z + )
r¯  rZ   r7   rl  r¬  r…  rÚ  r�  r   r}  )	rM  r   rš  Ú	shape_lenÚMrú  rœ  ra  r4   s	            r   r  z0SymbolicShapeInference._infer_DynamicTimeWarping£	  sÙ   € ð —o’o d¨AÑ.Ô.ˆØÐ"Ý˜KÑ(Ô(ˆIØ ’>�> Y°!¢^ ^ ^Ð3Ø˜y¨1™}Ô-¨{¸9Àq¹=Ô/IˆqˆAØÐ@ aÐ@Ð@¨1Ð@Ð@°qÐ@Ð@¸QÐ@Ð@ÐAˆLÝÔ+Ô1ˆLØ” ¤¨A¤Ô/ˆBØ�KŠK�Ô5°d´kÀ!´nÀlÐT`ÑaÔaÑbÔbÐbÐbÐbð #Ð"r   c                 ó0   — |                       |¦  «         d S r0   rÎ  r"  s     r   r  z&SymbolicShapeInference._infer_FastGelu°	  rÏ  r   c                 ó0   — |                       |¦  «         d S r0   rÎ  r"  s     r   r   z"SymbolicShapeInference._infer_Gelu³	  rÏ  r   c                 ó0   — |                       |¦  «         d S r0   rÎ  r"  s     r   Ú_infer_QuickGeluz'SymbolicShapeInference._infer_QuickGelu¶	  rÏ  r   c                 ó0   — |                       |¦  «         d S r0   rô  r"  s     r   r!  z*SymbolicShapeInference._infer_GemmFastGelu¹	  rõ  r   c                 ó0   — |                       |¦  «         d S r0   rô  r"  s     r   r"  z(SymbolicShapeInference._infer_GemmFloat8¼	  rõ  r   c                 óx  — |                       |¦  «         t          |j        ¦  «        dk    �r‡t          |d¦  «        }|€d}|                      |d¦  «        }|��\t          |¦  «        }t          ||¦  «        }|d |…         d„ t          ||z
  ¦  «        D ¦   «         z   }| j        |j        d                  j	        j
        j        }|t          j        j        k    s|t          j        j        k    rt          j        j        }| j        |j        d                  }|                     t%          j        |j        d         ||¦  «        ¦  «         t          |j        ¦  «        dk    rR| j        |j        d                  }|                     t%          j        |j        d         ||¦  «        ¦  «         d S d S d S d S )NrY   rL   r2  r   c                 ó   — g | ]}d ‘ŒS r<  r	   )r   rï  s     r   r   zDSymbolicShapeInference._infer_LayerNormalization.<locals>.<listcomp>É	  s   € Ð.MÐ.MÐ.M°Q¨qÐ.MÐ.MÐ.Mr   rÐ  )r$  rZ   rÚ  r   r¯  rN   r¡  r…  rq  r   r"   r1   r7   rl  ÚFLOAT16ÚBFLOAT16r¬  r�  r   r}  )rM  r   rL   Úx_shaperM   Ú
mean_shapeÚ
mean_dtyper4   s           r   r%  z0SymbolicShapeInference._infer_LayerNormalization¿	  s’  € Ø×&Ò& tÑ,Ô,Ð,ÝˆtŒ{ÑÔ˜aÒÑÝ   vÑ.Ô.ˆDØˆ|Ø�Ø—o’o d¨AÑ.Ô.ˆGØÑ"Ý˜7‘|”|�Ý+¨D°$Ñ7Ô7�Ø$ U d Uœ^Ð.MÐ.M½%ÀÀtÁÑ:LÔ:LÐ.MÑ.MÔ.MÑM�
Ø!œ^¨D¬J°q¬MÔ:Ô?ÔKÔU�
Ø¥Ô!1Ô!9Ò9Ð9¸ZÍ4ÔK[ÔKdÒ=dÐ=dÝ!%Ô!1Ô!7�JØ”^ D¤K°¤NÔ3�Ø—’�FÔ9¸$¼+Àa¼.È*ÐV`ÑaÔaÑbÔbÐbÝ�t”{Ñ#Ô# aÒ'Ð'Øœ¨¬°A¬Ô7�BØ—K’K¥Ô =¸d¼kÈ!¼nÈjÐZdÑ eÔ eÑfÔfÐfÐfÐfð!  Ðð
 #Ð"ð (Ð'r   c                 ó0   — |                       |¦  «         d S r0   rÎ  r"  s     r   r&  z1SymbolicShapeInference._infer_LongformerAttentionÓ	  rÏ  r   c                 óŠ  — |                       |d¦  «        }|                       |d¦  «        }t          |¦  «        dk    rt          |¦  «        dk    sJ ‚g |¢|d         ‘}| j        |j        d                  j        j        j        }| j        |j        d                  }|                     t          j
        |j        d         ||¦  «        ¦  «         t          |j        ¦  «        dk    rq|j        d         rd|d         g}| j        |j        d                  }|                     t          j
        |j        d         t          j        j        |¦  «        ¦  «         t          |j        ¦  «        dk    rN| j        |j        d                  }|                     t          j
        |j        d         ||¦  «        ¦  «         d S d S )Nr   rÐ  rY   rÆ  )rM  r   Úinput_ids_shapeÚword_embedding_shaperœ  Úword_embedding_dtyper4   Úmask_index_shapes           r   r  z5SymbolicShapeInference._infer_EmbedLayerNormalizationÖ	  s�  € ØŸ/š/¨$°Ñ2Ô2ˆØ#Ÿš¨t°QÑ7Ô7ÐÝ�?Ñ#Ô# qÒ(Ð(­SÐ1EÑ-FÔ-FÈ!Ò-KÐ-KÐ-KÐKØB˜ÐBÐ*>¸qÔ*AÐBˆà#œ~¨d¬j¸¬mÔ<ÔAÔMÔWÐØŒ^˜DœK¨œNÔ+ˆØ
�Š•FÔ1°$´+¸a´.ÐBVÐXdÑeÔeÑfÔfÐfåˆtŒ{ÑÔ˜aÒÐ D¤K°¤NÐØ /°Ô 2Ð3ÐØ” ¤¨A¤Ô/ˆBØ�KŠK�Ô5°d´kÀ!´nÅdÔFVÔF\Ð^nÑoÔoÑpÔpÐpåˆtŒ{ÑÔ˜aÒÐð ” ¤¨A¤Ô/ˆBØ�KŠK�Ô5°d´kÀ!´nÐFZÐ\hÑiÔiÑjÔjÐjÐjÐjð	  Ðr   c                 ó’   — |                       |¦  «         t          |j        ¦  «        dk    r|                       |dd¦  «         d S d S )Nr3  r   r/  r"  s     r   r5  z4SymbolicShapeInference._infer_SkipLayerNormalizationë	  sS   € Ø×&Ò& tÑ,Ô,Ð,õ ˆtŒ{ÑÔ˜aÒÐØ×*Ò*¨4°°AÑ6Ô6Ð6Ð6Ð6ð  Ðr   c                 ó0   — |                       |¦  «         d S r0   rÎ  r"  s     r   r#  z'SymbolicShapeInference._infer_GroupNormó	  rÏ  r   c                 ó0   — |                       |¦  «         d S r0   rÎ  r"  s     r   r,  z,SymbolicShapeInference._infer_PagedAttentionö	  rÏ  r   c                 óä  — | j         |j        d                  j        j        j        }|                      |d¦  «        }|�Œ| j         |j        d                  }|                     t          j	        |j
        ||¦  «        ¦  «         | j         |j        d                  }|                     t          j	        |j
        ||¦  «        ¦  «         |j        d         dk    r*|j        d         dk    r|                      |dd¦  «         d S |j        d         dk    r|j        d         dk    sJ ‚t          |d¦  «        }t          |d¦  «        }|                      |d¦  «        }|�‹|d         }t          |t          ¦  «        rpt          ||d|z  z   z  ¦  «        }	||	z  |d<   | j         |j        d                  }|                     t          j	        |j        d         ||¦  «        ¦  «         d S d S d S )Nr   r3  rY   rÐ  rP   rD  Úkv_num_heads)r…  rq  r   r"   r1   r±  rÚ  r�  r   r}  r   r$  r   r¯  r  r=   )
rM  r   ra  rº  r4   rD  rô  rÓ  Úhidden_sizer¼  s
             r   r$  z1SymbolicShapeInference._infer_GroupQueryAttentionù	  sÝ  € Ø”~ d¤j°¤mÔ4Ô9ÔEÔOˆà×(Ò(¨¨qÑ1Ô1ˆ
ØÐ!ð ” ¤¨A¤Ô/ˆBØ�KŠK�Ô5°b´g¸|ÈZÑXÔXÑYÔYÐYØ” ¤¨A¤Ô/ˆBØ�KŠK�Ô5°b´g¸|ÈZÑXÔXÑYÔYÐYàŒ:�aŒ=˜BÒÐ 4¤:¨a¤=°BÒ#6Ð#6Ø×*Ò*¨4°°AÑ6Ô6Ð6Ð6Ð6ð ”:˜a”= BÒ&Ð&¨4¬:°a¬=¸BÒ+>Ð+>Ð+>Ð>Ý% d¨KÑ8Ô8ˆIÝ(¨¨~Ñ>Ô>ˆLØŸ/š/¨$°Ñ2Ô2ˆKØÐ&Ø)¨!œn�Ý˜k­3Ñ/Ô/ð jÝ # K°9¸qÀ<Ñ?OÑ3OÑ$PÑ QÔ Q�IØ%.°Ñ%:�K ‘NØœ¨¬°A¬Ô7�BØ—K’K¥Ô =¸d¼kÈ!¼nÈlÐ\gÑ hÔ hÑiÔiÐiÐiÐið 'Ð&ðjð jr   c                 ó0   — |                       |¦  «         d S r0   )r$  r"  s     r   r6  z-SymbolicShapeInference._infer_SparseAttention
  s   € Ø×'Ò'¨Ñ-Ô-Ð-Ð-Ð-r   c                 ó–   — |                       |dd¦  «         t          |j        ¦  «        dk    r|                       |dd¦  «         d S d S r€  r/  r"  s     r   r4  z+SymbolicShapeInference._infer_SkipGroupNorm
  sU   € Ø×&Ò& t¨Q°Ñ2Ô2Ð2ÝˆtŒ{ÑÔ˜aÒÐØ×*Ò*¨4°°AÑ6Ô6Ð6Ð6Ð6ð  Ðr   c                 ó¼  — |                       |d¦  «        }|                       |d¦  «        }|r©|r©t          |d         t          ¦  «        r�|}t          |d         dz  ¦  «        |d<   | j        |j        d                  }| j        |j        d                  j        j        j        }| 	                    t          j        |j        ||¦  «        ¦  «         d S d S d S d S r�  )r¯  r  r=   r…  rÚ  rq  r   r"   r1   r�  r   r}  r   )rM  r   rš  Ú
bias_shaperœ  r4   ra  s          r   r  z+SymbolicShapeInference._infer_BiasSplitGelu
  sè   € Ø—o’o d¨AÑ.Ô.ˆØ—_’_ T¨1Ñ-Ô-ˆ
Øð 	\˜:ð 	\­*°ZÀ´]ÅCÑ*HÔ*Hð 	\Ø&ˆLÝ! *¨Q¤-°!Ñ"3Ñ4Ô4ˆL˜‰OØ” ¤¨A¤Ô/ˆBØœ>¨$¬*°Q¬-Ô8Ô=ÔIÔSˆLØ�KŠK�Ô5°b´g¸|È\ÑZÔZÑ[Ô[Ð[Ð[Ð[ð	\ð 	\ð 	\ð 	\ð 	\ð 	\r   c                 ó0   — |                       |¦  «         d S r0   rÎ  r"  s     r   r  z%SymbolicShapeInference._infer_BiasAdd'
  rÏ  r   c                 ó¼  — t          |j        ¦  «        dk    r|                      |¦  «         d S t          |j        ¦  «        dk    r2|                      |dd¬¦  «         |                      |dd¬¦  «         d S t          |j        ¦  «        dk    rJ|                      |dd¬¦  «         |                      |dd¬¦  «         |                      |dd¬¦  «         d S d S )NrY   rÐ  r   r,  r3  )rZ   rÚ  r$  r"  s     r   r3  z-SymbolicShapeInference._infer_RotaryEmbedding*
  sö   € ÝˆtŒ{ÑÔ˜qÒ Ð Ø×*Ò*¨4Ñ0Ô0Ð0Ð0Ð0Ý�”ÑÔ Ò"Ð"à×*Ò*¨4¸QÈQÐ*ÑOÔOÐOØ×*Ò*¨4¸QÈQÐ*ÑOÔOÐOÐOÐOÝ�”ÑÔ Ò"Ð"à×*Ò*¨4¸QÈQÐ*ÑOÔOÐOØ×*Ò*¨4¸QÈQÐ*ÑOÔOÐOØ×*Ò*¨4¸QÈQÐ*ÑOÔOÐOÐOÐOð	 #Ð"r   c                 óf  — t          |d¦  «        }|sJ d|j        › d�¦   «         ‚t          |d¦  «        }|sJ d|j        › d�¦   «         ‚ddlm} t          |d¦  «                             ¦   «         } ||¦  «        }| j        |j        d                  }|                     t          j	        |j        d         t          j        j        g ¦  «        ¦  «         |��©g }g }	t          t          |j        ¦  «        ¦  «        D ]i}
|                      ||
¦  «        }|                     |¦  «         | j        |j        |
                  j        j        j        }|	                     |¦  «         Œj ||||	¦  «        \  }}t          |¦  «        t          |¦  «        cxk    rt          |j        ¦  «        d	z
  k    sHn J d|› d
t          |¦  «        › dt          |¦  «        › dt          |j        ¦  «        d	z
  › d�	¦   «         ‚t          t          |j        ¦  «        d	z
  ¦  «        D ]_}|d	z   }| j        |j        |                  }|                     t          j	        |j        |         ||         ||         ¦  «        ¦  «         Œ`d S t          t          |j        ¦  «        d	z
  ¦  «        D ]‡}| j        |j        |d	z                     }|                      ||         |¦  «        }t-          |¦  «        }t          j	        |j        |d	z            ||         |¦  «        }|                     |¦  «         Œˆd S )NÚoutput_tensor_typesz
PythonOp 'z'' has no output_tensor_types attribute.Úoutput_tensor_ranksz'' has no output_tensor_ranks attribute.r   )Úget_shape_inference_functionÚ	func_namerY   z' returned z shapes and z dtypes, but expected z	 outputs.)r   r   Úonnxruntime.capi._pybind_staterÿ  rN  r…  rÚ  r�  r   r}  r7   rl  r–  r¡  rZ   rq  r¯  r¸  r   r"   r1   r0  rA   )rM  r   rý  rþ  rÿ  r   Úshape_infererr4   Úinput_shapesÚinput_dtypesr-  r(   Úinput_dtypeÚoutput_shapesÚoutput_dtypesr?   r.  r@   rr  s                      r   r-  z&SymbolicShapeInference._infer_PythonOp7
  sx  € Ý+¨DÐ2GÑHÔHÐØ"ÐcÐcÐ$c°´Ð$cÐ$cÐ$cÑcÔcÐ"Ý+¨DÐ2GÑHÔHÐØ"ÐcÐcÐ$c°´Ð$cÐ$cÐ$cÑcÔcÐ"àOÐOÐOÐOÐOÐOå! $¨Ñ4Ô4×;Ò;Ñ=Ô=ˆ	Ø4Ð4°YÑ?Ô?ˆð Œ^˜DœK¨œNÔ+ˆØ
�Š•FÔ1°$´+¸a´.Å$ÔBRÔBXÐZ\Ñ]Ô]Ñ^Ô^Ð^àÑ$ØˆLØˆLÝ$¥S¨¬¡_¤_Ñ5Ô5ð 1ð 1�ØŸš¨¨kÑ:Ô:�Ø×#Ò# EÑ*Ô*Ð*Ø"œn¨T¬Z¸Ô-DÔEÔJÔVÔ`�Ø×#Ò# KÑ0Ô0Ð0Ð0Ø+8¨=¸¸|È\Ñ+ZÔ+ZÑ(ˆM˜=Ý�}Ñ%Ô%­¨]Ñ);Ô);ÐUÐUÒUÐUÅÀDÄKÑ@PÔ@PÐSTÑ@TÒUÐUÐUÐUÐUð@˜Yð @ð @µ3°}Ñ3EÔ3Eð @ð @ÕSVÐWdÑSeÔSeð @ð @Ý # D¤KÑ 0Ô 0°1Ñ 4ð@ð @ð @ñ VÔUÐUõ �3˜tœ{Ñ+Ô+¨aÑ/Ñ0Ô0ð ð �Ø  1™u�Ø”^ D¤K°Ô$=Ô>�Ø—’ÝÔ1°$´+¸lÔ2KÈ]Ð[\ÔM]Ð_lÐmnÔ_oÑpÔpñô ð ð ðð õ �3˜tœ{Ñ+Ô+¨aÑ/Ñ0Ô0ð (ð (�à”^ D¤K°°A±Ô$6Ô7�Ø"×6Ò6Ð7JÈ1Ô7MÈtÑTÔT�Ý2°;Ñ?Ô?�Ý#Ô:¸4¼;ÀqÈ1ÁuÔ;MÐObÐcdÔOeÐglÑmÔm�
Ø—’˜JÑ'Ô'Ð'Ð'ð(ð (r   c                 ó  — |                       ||¦  «        }| j        |j        |                  j        j        j        }| j        |j        |                  }|                     t          j	        |j        |         ||¦  «        ¦  «         d S r0   )
r¯  r…  rq  r   r"   r1   rÚ  r�  r   r}  )rM  r   r-  r.  r(   ra  r4   s          r   r$  z0SymbolicShapeInference._propagate_shape_and_typef
  ss   € Ø—’  kÑ2Ô2ˆØ”~ d¤j°Ô&=Ô>ÔCÔOÔYˆØŒ^˜DœK¨Ô5Ô6ˆØ
�Š•FÔ1°$´+¸lÔ2KÈ\Ð[`ÑaÔaÑbÔbÐbÐbÐbr   c                 ó\   — t          |¦  «        t          k    rdS d|vrdS || j        v rdS dS )NFÚunk__Trò  )rM  rt  s     r   Ú_is_none_dimz#SymbolicShapeInference._is_none_diml
  s@   € Ý�	‰?Œ?�cÒ!Ð!Ø�5Ø˜)Ð#Ð#Ø�5Ø˜Ô+Ð+Ð+Ø�5Øˆtr   c                 óB   — |D ]}|                       |¦  «        r|c S Œd S r0   )r  )rM  Ú	out_shapeÚouts      r   Ú_is_shape_contains_none_dimz2SymbolicShapeInference._is_shape_contains_none_dimu
  s:   € Øð 	ð 	ˆCØ× Ò  Ñ%Ô%ð Ø�
�
�
ðàˆtr   c                 óx  ‡ ‡‡ ‡!‡"‡#‡$‡%— |pi ‰ _         ‰ j        j                             d¦  «         ‰                      d¬¦  «         t          ¦   «         ‰ _        ‰ j        j        j        D ]Í}t          |¦  «        }|€Œt          |j
        ¦  «        r!|j
        j        j        j        j        j        }n|j
        j        j        j        }t!          |¦  «        D ]:\  }}|€3t#          ‰                      |j        |¦  «        ¦  «        ||         _        Œ;‰ j                             d„ |D ¦   «         ¦  «         ŒÎ‰ j        D ]X}|‰ j        v r.‰ j        |         }|‰ j        v sJ ‚‰ j        |         ‰ j        |<   Œ9t1          j        |dd¬¦  «        ‰ j        |<   ŒYt5          j        ¦   «         ‰ _        ‰ j                             ‰ j        ¦  «         ‰ j        j                             d¦  «         i }	ˆ fd„Š ‰ j        j        j        D ]}
 ‰ |
¦  «        |	|
j        d         <   Œg }d	„ tA          ‰ j        j        j        ¦  «        tA          ‰ j        j        j!        ¦  «        z   D ¦   «         Š%tE          ˆ%fd
„‰ j        j        j        D ¦   «         ¦  «        r‰ j        j        j        }�n/tG          ˆ%fd„‰ j        j        j        D ¦   «         ¦  «        �stI          |¦  «        }‰ j        j        j        D ]lŠ"‰"j        d         ‰%vr[tG          ˆ%fd„|	‰"j        d                  D ¦   «         ¦  «        r/‰%                     ‰"j        ¦  «         | %                    ‰"¦  «         Œm|tI          |¦  «        k    r9tG          ˆ%fd„‰ j        j        j        D ¦   «         ¦  «        stM          d¦  «        ‚tG          ˆ%fd„‰ j        j        j        D ¦   «         ¦  «        �¯|D �
]WŠ"tG          ˆ fd„‰"j        D ¦   «         ¦  «        sJ ‚‰  '                    ‰"¦  «         d}‰"j(        ‰ j)        v r ‰ j)        ‰"j(                 ‰"¦  «         nò‰"j(        dv r`‰ j*        ‰"j        d                  }tI          |j
        j        j        j        ¦  «        dk    r t4          j+        j,        |j
        j        _        n‰‰"j(        dk    r~‰"j-        dk    rs‰"j.        D ]k}|j        dk    r^t_          |j0        tb          ¦  «        r|j0         2                    d¦  «        n|j0        }|‰ j3        v rd} ‰ j3        |         ‰"¦  «          nŒl‰ j4        dk    rltj           6                    ‰"j(        dz   ‰"j        z   ¦  «         t!          ‰"j        ¦  «        D ]-\  }}tj           6                    d|||‰ j7        v rdnd¦  «         Œ.‰"j(        dv rÀ‰ j*        ‰"j        d                  }tI          tq          |j
        ¦  «        ¦  «        Š#ˆ"ˆ fd„ts          tI          ‰"j        ¦  «        ¦  «        D ¦   «         }ts          ‰#‰"j(        dv rdndz
  ¦  «        D ];Šˆˆ#fd„|D ¦   «         }tI          |¦  «        dk    r‰  :                    |d¬¦  «         Œ<ts          tI          ‰"j        ¦  «        ¦  «        D �]œ}‰"j(        d k    s‰"j(        d!k    r|d"v rŒ‰"j(        d#k    rtI          ‰"j        ¦  «        dk    rŒB‰ j*        ‰"j        |                  }|j
        }| ;                    d$¦  «        }|d%v�r ‰ j4        dk    �r|d&k    rá|j        j         ;                    d$¦  «        }|d'k    r�tj           6                    d( <                    ‰"j        |         t#          t          |¦  «        ¦  «        t4          j+        j=         >                    |j
        j        j        j        j        ¦  «        ¦  «        ¦  «         nWtj           6                    d)‰"j        |         › d*|› �¦  «         n+tj           6                    d)‰"j        |         › d|› �¦  «         �Œ›t          |¦  «        Š$|j        j        t4          j+        j,        k    }‰ j4        dk    r³tj           6                    d)‰"j        |         › d‰$›d+t4          j+        j=         >                    |j
        j        j        ¦  «        › �¦  «         ‰"j        |         ‰ j         v r@tj           6                    d,t#          ‰ j         ‰"j        |                  ¦  «        z   ¦  «         ‰$�d ‰$v s‰  ?                    ‰$¦  «        s|�r÷‰ j@        �r‰"j(        d-v �rˆ"ˆ fd.„ts          tI          ‰"j        ¦  «        ¦  «        D ¦   «         }‰"j(        dv räd ‰$v s‰  ?                    ‰$¦  «        rËd ‰$v r‰$ A                    d ¦  «        Š!n(‰$ A                    ‰  ?                    ‰$¦  «        ¦  «        Š!ˆ!ˆ$fd/„|D ¦   «         }tI          |d         ¦  «        dk    r"|d         tI          |d         ¦  «        dz
  k     sJ ‚tI          |d         ¦  «        dk    r"|d         tI          |d         ¦  «        dz
  k     sJ ‚n:‰"j(        d0k    r-‰  B                    ‰"d¦  «        ‰  C                    ‰"d¦  «        g}ng }|rœts          tI          ‰$¦  «        ¦  «        D ]wŠ!‰$‰!         �‰  D                    ‰$‰!         ¦  «        sŒ&ˆ!ˆ$fd1„|D ¦   «         }tI          |¦  «        dk    r/‰  E                    d2„ t�          ||d¬3¦  «        D ¦   «         ¦  «         Œxd‰ _G        nd‰ _G        nd‰ _G        ‰ jG        du �r�‰"j(        ‰ j)        v�rr|�so|o‰$d u ptI          ‰$¦  «        dk    }|r ‰ jH        r‰  I                    ‰"d¦  «        nd4Š#ntI          ‰$¦  «        Š#‰#dk    �r‰  J                    ‰#‰"|¦  «        }|r(‰ j*        ‰"j        d                  j
        j        j        }n|j
        j        j        }|                     t—          jL        |j        |t›          |¦  «        ¦  «        ¦  «         ‰ j4        dk    r}|r3tj           6                    d5‰"j(        › d6‰"j        › d7|j        › d8�¦  «         ‰ j4        dk    r=tj           6                    d)‰"j        |         › d|›d+|j
        j        j        › �¦  «         d‰ _G        �ŒE‰ j4        dk    s
‰ j@        r|�r>tj           6                    d9‰"j(        ‰"j        ¦  «         tj           6                    d:¦  «         ‰"j        D ]N}|‰ j*        v r&tj           6                    ‰ j*        |         ¦  «         Œ1tj           6                    d;|› �¦  «         ŒOtj           6                    d<¦  «         ‰"j        D ]N}|‰ j*        v r&tj           6                    ‰ j*        |         ¦  «         Œ1tj           6                    d;|› �¦  «         ŒO‰ j@        r1|s/tj           6                    d=t#          ‰ j        ¦  «        z   ¦  «           dS �Œž�
ŒYd‰ _G        dS )>Nrr  T)ru  c                 ó>   — g | ]}t          |¦  «        t          u ¯|‘ŒS r	   r‹  r*   s     r   r   z6SymbolicShapeInference._infer_impl.<locals>.<listcomp>�
  s#   € Ð'QÐ'QÐ'Q¨aÅ$ÀqÁ'Ä'ÍSÀ.À.¨À.À.À.r   )r¶  Úpositiverƒ  c                 ó&  •‡— d„ | j         D ¦   «         }g }| j        dk    r!t          | d¦  «        t          | d¦  «        g}n| j        dv rt          | d¦  «        g}|D ]²}d„ |j        D ¦   «         Št	          ¦   «         }|j        D ]}‰                     |j        ¦  «         Œ|j        D ],}|                     ˆfd„ ‰|¦  «        D ¦   «         ¦  «         Œ-|                     |¦  «         |j         D ]}|                     |j	        ¦  «         ŒŒ³|S )	Nc                 ó   — h | ]}|¯|’ŒS r	   r	   r>   s     r   rè  zISymbolicShapeInference._infer_impl.<locals>.get_prereq.<locals>.<setcomp>¥
  s   € Ð0Ð0Ð0˜1¨aÐ0�QÐ0Ð0Ð0r   r�   rß  rà  )r‚   r˜   rç  c                 ó   — h | ]	}|j         ’Œ
S r	   r
   r>   s     r   rè  zISymbolicShapeInference._infer_impl.<locals>.get_prereq.<locals>.<setcomp>¯
  s   € Ð-LÐ-LÐ-L¸¨a¬fÐ-LÐ-LÐ-Lr   c                 ó   •— g | ]}|‰v¯|‘Œ	S r	   r	   )r   r?   Úg_outputs_and_initializerss     €r   r   zJSymbolicShapeInference._infer_impl.<locals>.get_prereq.<locals>.<listcomp>´
  s$   ø€ Ð$eÐ$eÐ$e¨1ÀÐJdÐAdÐAd QÐAdÐAdÐAdr   )
rq  rÙ  r   rƒ  r]  r   r†  rÚ  Údiscardr   )	r   Únamesrá  ÚgÚg_prereqÚnr?   r  Ú
get_prereqs	          @€r   r  z6SymbolicShapeInference._infer_impl.<locals>.get_prereq¤
  sS  øø€ Ø0Ð0 ¤
Ð0Ñ0Ô0ˆEØˆIØŒ|˜tÒ#Ð#å! $¨Ñ6Ô6Ý! $¨Ñ6Ô6ð�	�	ð ”Ð!1Ð1Ð1Ý*¨4°Ñ8Ô8Ð9�	Øð 
*ð 
*�Ø-LÐ-L¸a¼mÐ-LÑ-LÔ-LÐ*Ý™5œ5�Øœð @ð @�AØ.×5Ò5°a´hÑ?Ô?Ð?Ð?Øœð gð g�AØ—O’OÐ$eÐ$eÐ$eÐ$e°
°
¸1±´Ð$eÑ$eÔ$eÑfÔfÐfÐfØ—’˜XÑ&Ô&Ð&àœð *ð *�AØ—M’M !¤&Ñ)Ô)Ð)Ð)ð*àˆLr   r   c                 ó   — h | ]	}|j         ’Œ
S r	   r
   r>   s     r   rè  z5SymbolicShapeInference._infer_impl.<locals>.<setcomp>À
  s   € ÐqÐqÐq a˜1œ6ÐqÐqÐqr   c              3   ó*   •K  — | ]}|j         ‰v V — Œd S r0   r
   ©r   rä  Úsorted_known_vis     €r   rW  z5SymbolicShapeInference._infer_impl.<locals>.<genexpr>Á
  s*   øè è € ÐLÐL¨QˆqŒv˜Ð(ÐLÐLÐLÐLÐLÐLr   c              3   ó*   •K  — | ]}|j         ‰v V — Œd S r0   r
   r   s     €r   rW  z5SymbolicShapeInference._infer_impl.<locals>.<genexpr>Å
  s*   øè è € ÐWÐW¸˜!œ& OÐ3ÐWÐWÐWÐWÐWÐWr   c              3   ó$   •K  — | ]
}|¯|‰v V — Œd S r0   r	   )r   r?   r!  s     €r   rW  z5SymbolicShapeInference._infer_impl.<locals>.<genexpr>È
  sK   øè è € ð Gð GØ12ÐYZðGØ˜_Ð,ðGð Gð Gð Gð Gð Gr   c              3   ó*   •K  — | ]}|j         ‰v V — Œd S r0   r
   r   s     €r   rW  z5SymbolicShapeInference._infer_impl.<locals>.<genexpr>Í
  sC   øè è € ð Ið IØ23�A”F˜oÐ-ðIð Ið Ið Ið Ið Ir   zInvalid model with cyclic graphc              3   ó.   •K  — | ]}|¯|‰j         v V — Œd S r0   rÖ  r×  s     €r   rW  z5SymbolicShapeInference._infer_impl.<locals>.<genexpr>Ó
  s/   øè è € ÐDÐD¨qÀ!ÐD�q˜DœNÐ*ÐDÐDÐDÐDÐDÐDr   F)ÚConvTransposeÚATenzorg.pytorch.atenÚoperatorr@  rÐ  z: z  Input %s: %s %srP   rÉ  c                 ó<   •— g | ]}‰                      ‰|¦  «        ‘ŒS r	   rÍ  rÎ  s     €€r   r   z6SymbolicShapeInference._infer_impl.<locals>.<listcomp>ý
  s'   ø€ ÐVÐVÐV¸!˜TŸ_š_¨T°1Ñ5Ô5ÐVÐVÐVr   rÏ  c                 ór   •— g | ]3}t          |¦  «        ‰z   ‰k    ¯|t          |¦  «        ‰z
  ‰z            ‘Œ4S r	   rZ  rÒ  s     €€r   r   z6SymbolicShapeInference._infer_impl.<locals>.<listcomp>ÿ
  sE   ø€ ÐeÐeÐe¸AÍcÐRSÉfÌfÐWXÉjÐ\dÒNdÐNd˜q¥ Q¡¤¨(Ñ!2°QÑ!6Ô7ÐNdÐNdÐNdr   rY   rŽ  rÑ   rÒ   r  rÎ   r   )r"   Úsparse_tensor_typeNr#   r"   z  {}: sequence of {} {}z  z: sequence of r   z  Sympy Data: )rj   r¥   r‹   rx   rƒ   rÊ  r„   rr   rª   rË  r{   ÚLessÚGreaterÚLessOrEqualÚGreaterOrEqualr‰   r†   c                 ó<   •— g | ]}‰                      ‰|¦  «        ‘ŒS r	   rÍ  rÎ  s     €€r   r   z6SymbolicShapeInference._infer_impl.<locals>.<listcomp>L  s'   ø€ Ð%_Ð%_Ð%_À1 d§o¢o°d¸AÑ&>Ô&>Ð%_Ð%_Ð%_r   c                 óT   •— g | ]$}t          |¦  «        t          ‰¦  «        z
  ‰z   ‘Œ%S r	   rZ  ©r   rV  r®  r  s     €€r   r   z6SymbolicShapeInference._infer_impl.<locals>.<listcomp>W  s0   ø€ Ð.]Ð.]Ð.]ÐQR­s°1©v¬v½¸I¹¼Ñ/FÈÑ/LÐ.]Ð.]Ð.]r   rz   c                 óT   •— g | ]$}t          |¦  «        t          ‰¦  «        z
  ‰z   ‘Œ%S r	   rZ  r2  s     €€r   r   z6SymbolicShapeInference._infer_impl.<locals>.<listcomp>j  s/   ø€ Ð*YÐ*YÐ*YÈQ­3¨q©6¬6µC¸	±N´NÑ+BÀSÑ+HÐ*YÐ*YÐ*Yr   c                 ó„   — g | ]=\  }}|d k    ¯t          ||         ¦  «        r||         nt          ||         ¦  «        ‘Œ>S r  )r<   r   )r   rV  r?   s      r   r   z6SymbolicShapeInference._infer_impl.<locals>.<listcomp>m  sQ   € ð )*ð )*ð )*á04°°1Ø/0°Aªv¨võ 5?¸qÀ¼tÑ4DÔ4DÐ,S¨A¨a¬D¨DÍ#ÈaÐPQÌdÉ)Ì)à/5¨v¨vr   r=  r2  zPossible unknown op: z node: z, guessing z shapez0Stopping at incomplete shape inference at %s: %sznode inputs:znot in known_vi_ for znode outputs:z	Merging: )Nr»  ro  rp  r÷  rf  r]  rF  rq  r5   r&   r   r#   r1   r"   r(   r   rÂ  r   r(  r   rs  r†  rD  rE  rG   ra  r7   r€  rÜ  r�  r   rÚ  rQ   rƒ  r  r\  rZ   r¸  r…  rå  rÙ  r8  r…  rl  Ú	UNDEFINEDrS   r   r  rV  ÚbytesrN  rB  rI  rb  r˜  r„  r.   r¡  r™  r   Úformatrm  rn  r  rG  re  r¯  r¾  r  rm  r  rC  rH  r³  r0  r   r}  rA   )&rM  Ústart_sympy_datar?   rš  Ú
input_dimsÚi_dimr   rV  Ús_mergeÚprereq_for_noder  Úsorted_nodesÚold_sorted_nodes_lenÚknown_aten_opr4   r   Úaten_op_namer   rà  rá  rã  Úout_typeÚout_type_kindÚseq_cls_typeÚout_type_undefinedÚshapesÚdim_idxÚis_unknown_opr¤  Ú	out_dtyperä  r+   r  r®  r   rÓ  r  r!  s&   `                              @@@@@@@r   rõ  z"SymbolicShapeInference._infer_impl{
  sn  øøøøøøøø€ Ø+Ð1¨rˆÔØŒÔ×%Ò% lÑ3Ô3Ð3Ø×#Ò#°TÐ#Ñ:Ô:Ð:Ý!™eœeˆÔØ”Ô#Ô)ð 	Sð 	SˆAÝ3°AÑ6Ô6ˆKØÐ"Øå˜1œ6Ñ"Ô"ð :ØœVÔ1Ô;ÔGÔMÔQ�
�
àœVÔ/Ô5Ô9�
å'¨Ñ4Ô4ð ]ð ]‘
��sØ�;å25°d×6LÒ6LÈQÌVÐUZÑ6[Ô6[Ñ2\Ô2\�J˜uÔ%Ô/øàÔ×&Ò&Ð'QÐ'Q°;Ð'QÑ'QÔ'QÑRÔRÐRÐRàÔ$ð 	Vð 	VˆAØ�DÔ)Ð)Ð)ØÔ/°Ô2�Ø $Ô"5Ð5Ð5Ð5Ð5Ø)-Ô)<¸WÔ)E�Ô# AÑ&Ð&õ */¬°aÀÐPTÐ)UÑ)UÔ)U�Ô# AÑ&Ð&õ ”Ñ(Ô(ˆŒØŒ×Ò˜dœlÑ+Ô+Ð+ØŒÔ×%Ò% mÑ4Ô4Ð4ð ˆð	ð 	ð 	ð 	ð 	ð. ”Ô#Ô(ð 	9ð 	9ˆAØ+5¨:°a©=¬=ˆO˜AœH QœKÑ(Ð(ð ˆØqÐq­4°´Ô0BÔ0HÑ+IÔ+IÍDÐQUÔQ]ÔQcÔQoÑLpÔLpÑ+pÐqÑqÔqˆÝÐLÐLÐLÐL°$´,Ô2DÔ2KÐLÑLÔLÑLÔLð 	Gàœ<Ô-Ô2ˆL‰LåÐWÐWÐWÐW¸T¼\Ô=OÔ=VÐWÑWÔWÑWÔWñ GÝ'*¨<Ñ'8Ô'8Ð$Ø œLÔ.Ô3ð 2ð 2�DØœ Aœ¨oÐ=Ð=Å3ð Gð Gð Gð GØ6EÀdÄkÐRSÄnÔ6UðGñ Gô Gñ Dô DÐ=ð (×.Ò.¨t¬{Ñ;Ô;Ð;Ø$×+Ò+¨DÑ1Ô1Ð1øØ'­3¨|Ñ+<Ô+<Ò<Ð<ÅSð Ið Ið Ið IØ7;´|Ô7IÔ7PðIñ Iô Iñ Fô FÐ<õ $Ð$EÑFÔFÐFõ ÐWÐWÐWÐW¸T¼\Ô=OÔ=VÐWÑWÔWÑWÔWñ Gð !ð ]	!ñ ]	!ˆDÝÐDÐDÐDÐD°D´JÐDÑDÔDÑDÔDÐDÐDÐDØ×(Ò(¨Ñ.Ô.Ð.Ø!ˆMØŒ|˜tÔ/Ð/Ð/Ø.�Ô  ¤Ô.¨tÑ4Ô4Ð4Ð4Ø”Ð!2Ð2Ð2ð ”^ D¤K°¤NÔ3�Ý�r”wÔ*Ô0Ô4Ñ5Ô5¸Ò:Ð:Ý48Ô4DÔ4N�B”GÔ'Ô1øØ” Ò'Ð'¨D¬KÐ;MÒ,MÐ,MØ œNð ð �Dà”y JÒ.Ð.ÝAKÈDÌFÕTYÑAZÔAZÐ'f t¤v§}¢}°WÑ'=Ô'=Ð'=Ð`dÔ`f˜Ø'¨4Ô+CÐCÐCØ,0˜MØB˜DÔ4°\ÔBÀ4ÑHÔHÐHØ˜ð /ð Œ}˜qÒ Ð Ý—’˜Tœ\¨DÑ0°4´9Ñ<Ñ=Ô=Ð=Ý(¨¬Ñ4Ô4ð tð t‘G�A�tÝ—L’LÐ!4°a¸ÐPTÐX\ÔXjÐPjÐPj¸}¸}ÐprÑsÔsÐsÐsð Œ|ð 
 ð 
ð 
ð ”^ D¤K°¤NÔ3�ÝÕ8¸¼ÑAÔAÑBÔB�ØVÐVÐVÐVÐV½uÅSÈÌÁ_Ä_Ñ?UÔ?UÐVÑVÔV�	Ý˜x°´Ð@nÐ0nÐ0n¨1¨1ÐtuÑvÑwÔwð Oð O�AØeÐeÐeÐeÐeÀÐeÑeÔe�GÝ˜7‘|”| aÒ'Ð'Ø×/Ò/°ÈÐ/ÑNÔNÐNøå�S ¤Ñ-Ô-Ñ.Ô.ð l!ñ l!�ð ”LÐ$<Ò<Ð<ÀÄÐPrÒ@rÐ@rØ˜V�m�mØØ”<Ð#4Ò4Ð4½¸T¼[Ñ9IÔ9IÈAÒ9MÐ9Mð à”^ D¤K°Ô$4Ô5�Øœ7�Ø (× 3Ò 3°GÑ <Ô <�ð !Ð(SÐSÑSØ”} qÒ(Ñ(Ø(¨OÒ;Ð;Ø+3Ô+AÔ+K×+VÒ+VÐW^Ñ+_Ô+_˜LØ+¨}Ò<Ð<Ý &§¢Ø$=×$DÒ$DØ(,¬°CÔ(8Ý(+Õ,EÀbÑ,IÔ,IÑ(JÔ(JÝ(,Ô(8Ô(A×(FÒ(FØ,.¬GÔ,AÔ,KÔ,WÔ,añ)*ô )*ñ%&ô %&ñ!"ô !"ð !"ð !"õ !'§¢Ð-`°$´+¸cÔ2BÐ-`Ð-`ÐR^Ð-`Ð-`Ñ aÔ aÐ aÐ aå"ŸLšLÐ)Q¨d¬k¸#Ô.>Ð)QÐ)QÀ-Ð)QÐ)QÑRÔRÐRÙå5°bÑ9Ô9�	Ø%-Ô%9Ô%CÅtÔGWÔGaÒ%aÐ"Ø”= 1Ò$Ð$Ý—L’LØ~˜Tœ[¨Ô-Ð~Ð~°Ð~Ð~½tÔ?OÔ?X×?]Ò?]Ð^`Ô^eÔ^qÔ^{Ñ?|Ô?|Ð~Ð~ñô ð ð ”{ 3Ô'¨4Ô+;Ð;Ð;ÝŸšÐ%5½¸DÔ<LÈTÌ[ÐY\ÔM]Ô<^Ñ8_Ô8_Ñ%_Ñ`Ô`Ð`ð Ð)¨t°yÐ/@Ð/@ÀD×DdÒDdÐenÑDoÔDoÐ/@Ø'ñ 0AàÔ'ñ ?*Øœ<ð ,ð ñ ð& &`Ð%_Ð%_Ð%_Ð%_ÍÍcÐRVÔR\ÉoÌoÑH^ÔH^Ð%_Ñ%_Ô%_˜FØ#œ|ð 0ð  ð  ð
 $(¨9Ð#4Ð#4¸×8XÒ8XÐYbÑ8cÔ8cÐ#4Ø'+¨yÐ'8Ð'8Ø.7¯oªo¸dÑ.CÔ.C¨¨à.7¯oªo¸d×>^Ò>^Ð_hÑ>iÔ>iÑ.jÔ.j¨Ø.]Ð.]Ð.]Ð.]Ð.]ÐV\Ð.]Ñ.]Ô.] Gå+.¨v°a¬y©>¬>¸AÒ+=Ð+=À'È!Ä*ÍsÐSYÐZ[ÔS\É~Ì~Ð`aÑOaÒBaÐBaÐBaÐ+aÝ+.¨v°a¬y©>¬>¸AÒ+=Ð+=À'È!Ä*ÍsÐSYÐZ[ÔS\É~Ì~Ð`aÑOaÒBaÐBaÐBaÐ+aøØ!œ\¨XÒ5Ð5ð !%§¢°°aÑ 8Ô 8Ø $§¢°°aÑ 8Ô 8ð&˜F˜Fð
 &(˜Fà!ð .Ý',­S°©^¬^Ñ'<Ô'<ð &ð & Ø#,¨S¤>Ð#=Àd×FWÒFWÐXaÐbeÔXfÑFgÔFgÐ#=Ø$,ð +ZÐ*YÐ*YÐ*YÐ*YÐRXÐ*YÑ*YÔ*Y Ý#& w¡<¤<°!Ò#3Ð#3Ø$(×$=Ò$=ð)*ð )*å8;¸FÀGÐTYÐ8ZÑ8ZÔ8Zð)*ñ )*ô )*ñ%&ô %&ð %&øð )-˜DœI˜Ià(-˜DœI˜Ià$)˜œ	ð ”y EÐ)Ñ)¨d¬lÀ$ÔBRÐ.RÑ.RÐ[hÑ.RØ(:Ð(iÀ	ÈTÐ@QÐ@hÕUXÐYbÑUcÔUcÐghÒUh˜Ø(ð 6ð IMÔH_Ð'g t×';Ò';¸DÀ!Ñ'DÔ'DÐ'DÐeg˜H˜Hõ (+¨9¡~¤~˜Hà# qš=™=Ø(,×(@Ò(@ÀÈ4ÐQTÑ(UÔ(U˜IØ1ð Jà,0¬N¸4¼:Àa¼=Ô,IÔ,NÔ,ZÔ,d 	 	ð -/¬GÔ,?Ô,I 	ØŸKšKÝ &Ô =Ø$&¤GØ$-Ý$>¸yÑ$IÔ$Iñ!"ô !"ñô ð ð  $œ}¨qÒ0Ð0Ø#0ð !&Ý$*§L¢LØ(zÀÄÐ(zÐ(zÐUYÔU^Ð(zÐ(zÐkmÔkrÐ(zÐ(zÐ(zñ%&ô %&ð %&ð $(¤=°1Ò#4Ð#4Ý$*§L¢LÐ1w°d´kÀ#Ô6FÐ1wÐ1wÈ)Ð1wÐ1wÐXZÔX_ÔXkÔXuÐ1wÐ1wÑ$xÔ$xÐ$xà(,˜DœIÙ$à”} qÒ(Ð(°Ô0@Ð(ÐDVÑ(ÝŸšÐ%WÐY]ÔYeÐgkÔgpÑqÔqÐqÝŸš ^Ñ4Ô4Ð4Ø!%¤ð Jð J˜AØ  D¤NÐ2Ð2Ý &§¢¨T¬^¸AÔ->Ñ ?Ô ?Ð ?Ð ?å &§¢Ð-HÀQÐ-HÐ-HÑ IÔ IÐ IÐ IÝŸš _Ñ5Ô5Ð5Ø!%¤ð Jð J˜AØ  D¤NÐ2Ð2Ý &§¢¨T¬^¸AÔ->Ñ ?Ô ?Ð ?Ð ?å &§¢Ð-HÀQÐ-HÐ-HÑ IÔ IÐ IÐ IØÔ+ð SÐ4Fð SÝ"ŸLšL¨µs¸4Ô;PÑ7QÔ7QÑ)QÑRÔRÐRØ ˜5˜5˜5ñs 0Añgl!ð\ ˆŒ	Øˆtr   c                 ó”   — | j         j        j        D ]5}|j        | j        v r%|                     | j        |j                 ¦  «         Œ6d S r0   )ro  rp  rÚ  r   r…  r�  )rM  rÚ  s     r   rö  z-SymbolicShapeInference._update_output_from_vi´  sN   € Ø”lÔ(Ô/ð 	=ð 	=ˆFØŒ{˜dœnÐ,Ð,Ø—’ ¤¨v¬{Ô ;Ñ<Ô<Ð<øð	=ð 	=r   éÿÿÿc                 óŽ  — t          | ¦  «        }|r|dk     rt                               d¦  «         d S t          ||||¦  «        }d}|                     | ¦  «         |j        r|                     ¦   «         }|j        °|                     ¦   «          |s+t          j	        |j
        dd¬¦  «         t          d¦  «        ‚|j
        S )Né   z.Only support models of onnx opset 7 and above.Fzsym_shape_infer_temp.onnxT)Úsave_as_external_dataz#Incomplete symbolic shape inference)rV   rb  rc  rh   rˆ  rC  rõ  rö  r7   Ú
save_modelro  r…  )r‡  rN  rO  rP  rQ  Ú
onnx_opsetrû  Úall_shapes_inferreds           r   rÝ  z#SymbolicShapeInference.infer_shapes¹  sã   € å˜uÑ%Ô%ˆ
Øð 	˜z¨Aš~˜~Ý�NŠNÐKÑLÔLÐLØ�4Ý#9¸'À:ÐO`ÐbiÑ#jÔ#jÐ Ø#ÐØ ×,Ò,¨UÑ3Ô3Ð3Ø&Ô+ð 	IØ":×"FÒ"FÑ"HÔ"HÐð 'Ô+ð 	Ià ×7Ò7Ñ9Ô9Ð9Ø"ð 	CÝŒOÐ4Ô<Ð>YÐquÐvÑvÔvÐvÝÐAÑBÔBÐBØ'Ô/Ð/r   )rP   )F)TT)FF)r   r   r  )Tr0   )rJ  FFr   )€Ú__name__Ú
__module__Ú__qualname__rS  rm  rf  rˆ  r�  r«  r¯  r±  r³  r¹  r¾  rÀ  rÅ  rå  rÿ  r  r  r#  rç   r(  r,  r0  rZ  r™  rh  rx  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ý   rþ   rÿ   ré   r9  r:  r=  r;  r<  r>  r?  r@  rA  rê   r   r  r  r  r0  r  r  r  r  r  r	  r
  r  r  r  r‘  r  r  r  r  r  r  r  r  r  r  r*  r+  r1  r2  r  r(  r  r7  r  r  r   rà  r!  r"  r%  r&  r  r5  r#  r,  r$  r6  r4  r  r  r3  r-  r$  r  r  rõ  rö  ÚstaticmethodrÝ  r	   r   r   rh   rh   ‚   sd  € € € € € ðKð Kð Kð KðZ+*ð +*ð +*ð +*ðZ
(ð 
(ð 
(ð 
(ð
ð 
ð 
ðð ð ð<ð ð ð27ð 7ð 7ð	ð 	ð 	ð/ð /ð /ðð ð ðwð wð wð
ð ð ðDð Dð Dðe'ð e'ð e'ðN6(ð 6(ð 6(ð 6(ðp#ð #ð #ð #ðJCð Cð Cð&:ð :ð :ð
ð 
ð 
ð ð  ð  ð
ð 
ð 
ð 
ð[ð [ð [ð [ðBð Bð Bð BðH8ð 8ð 8ð 8ð\ð \ð \ð \ð>6ð 6ð 6ð:

ð 

ð 

ð?ð ?ð ?ð4'ð 'ð 'ðjð jð jð
ð 
ð 
ð('
ð '
ð '
ðR
ð 
ð 
ð&Dð Dð Dð
ð 
ð 
ð2

ð 

ð 

ð

ð 

ð 

ð_ð _ð _ð_ð _ð _ð\ð \ð \ð<bð <bð <bð|ð ð ð <ð <ð <ðB	
ð 	
ð 	
ð
ð 
ð 
ð"lð lð lð89%ð 9%ð 9%ðv)ð )ð )ðAð Að Að\ð \ð \ð&jð jð jð
xð xð xð
ð 
ð 
ð*
ð 
ð 
ð4ð ð ðmð mð mð ð  ð  ðD
ð 
ð 
ð"
nð 
nð 
nðnð nð nðBð ð ð.jð jð jð2ð ð ð0`ð `ð `ð Tð Tð Tð
ð 
ð 
ð&ð ð ðB(ð (ð (ð
Nð Nð Nð\ð \ð \ð2'ð 2'ð 2'ðh0ð 0ð 0ðd!ð !ð !ðF	
ð 	
ð 	
ð
Dð 
Dð 
DðIð Ið IðJð Jð Jð
ð 
ð 
ðZdð Zdð ZdðxWð Wð Wð")ð )ð )ð>Fð Fð FðHð Hð Hð.'ð .'ð .'ð`
ð 
ð 
ð(sð sð sð:ð ð ð!'ð !'ð !'ðFð ð ð+eð +eð +eðZ_ð _ð _ð,\ð \ð \ð$_ð _ð _ðpð pð pð(cð cð cð-ð -ð -ðJeð Jeð JeðXbð bð bð,cð cð cð.cð cð cð-ð -ð -ð-ð -ð -ð-ð -ð -ð)ð )ð )ð)ð )ð )ðgð gð gð(-ð -ð -ðkð kð kð*7ð 7ð 7ð-ð -ð -ð-ð -ð -ðjð jð jð8.ð .ð .ð7ð 7ð 7ð
\ð \ð \ð-ð -ð -ðPð Pð Pð-(ð -(ð -(ð^cð cð cð cðð ð ðð ð ðwð wð wð wðr	=ð =ð =ð
 ð0ð 0ð 0ñ „\ð0ð 0ð 0r   rh   c                  óZ  — t          j        ¦   «         } |                      ddd¬¦  «         |                      dd¬¦  «         |                      dd	d
d¬¦  «         |                      ddt          d¬¦  «         |                      ddd
d¬¦  «         |                      ddt          d¬¦  «         |                      ddd
d¬¦  «         |                      ddd
d¬¦  «         |                      ddd¬¦  «         |                      ddt          d ¬¦  «         |                      ¦   «         S )!Nz--inputTzThe input model file)ÚrequiredÚhelpz--outputzThe output model file)rW  z--auto_mergez:Automatically merge symbolic dims when confliction happensÚ
store_trueF)rW  ÚactionÚdefaultz	--int_maxzGmaximum value for integer to be treated as boundless for ops like slicerJ  )rW  r   rZ  z--guess_output_rankz;guess output rank to be the same as input 0 for unknown opsz	--verbosezHPrints detailed logs of inference, 0: turn off, 1: warnings, 3: detailedr   z--save_as_external_dataz%Saving an ONNX model to external dataz--all_tensors_to_one_filez(Saving all the external data to one filez--external_data_locationz+The file location to save the external filez./)rW  rZ  z--external_data_size_thresholdz$The size threshold for external datai   )ÚargparseÚArgumentParserÚadd_argumentr=   Ú
parse_args)Úparsers    r   Úparse_argumentsr`  Ë  s­  € ÝÔ$Ñ&Ô&€FØ
×Ò˜	¨DÐ7MÐÑNÔNÐNØ
×Ò˜
Ð)@ÐÑAÔAÐAØ
×ÒØØIØØð	 ñ ô ð ð ×ÒØØVÝØð	 ñ ô ð ð ×ÒØØJØØð	 ñ ô ð ð ×ÒØØWÝØð	 ñ ô ð ð ×ÒØ!Ø4ØØð	 ñ ô ð ð ×ÒØ#Ø7ØØð	 ñ ô ð ð ×ÒØ"Ø:Øð ñ ô ð ð
 ×ÒØ(Ø3ÝØð	 ñ ô ð ð ×ÒÑÔÐr   Ú__main__zinput model: zoutput model z!Doing symbolic shape inference...TF)rM  Úall_tensors_to_one_fileÚlocationÚsize_thresholdÚconvert_attributezDone!r0   )2r[  ÚloggingÚnumpyrD   r7   rG   ÚImportErrorr   r   r   Ú	packagingr   ÚparseÚ__version__Ú	getLoggerrQ  rb  r   r    r&   r.   r2   r5   r9   rA   r<   rN   rV   r_   rb   rf   rh   r`  rr  Úinforq  rÚ  rÝ  ÚloadrN  rO  rP  rQ  Úout_mprM  rN  rb  Úexternal_data_locationÚexternal_data_size_thresholdÚsaver	   r   r   ú<module>rs     sW  ðð
 €€€Ø €€€à Ð Ð Ð Ø €€€ðsØ€L€L€L€LøØð sð sð sØ
ˆ+ÐgÑ
hÔ
hÐnrÐrðsøøøð 7Ð 6Ð 6Ð 6Ð 6Ð 6Ð 6Ð 6Ð 6Ð 6Ø Ð Ð Ð Ð Ð à€w„}�TÔ%Ñ&Ô&¨-¨'¬-¸Ñ*@Ô*@Ò@Ð@Ð@Ð@à	ˆÔ	˜8Ñ	$Ô	$€ðð ð ð ðcð cð cð'ð 'ð 'ðð ð ð0ð 0ð 0ð
2ð 
2ð 
2ðð ð ð_ð _ð _ðrð rð rð.ð .ð .ð
ð ð ð ðð ð ðð ð ðð ð ðF-0ð F-0ð F-0ð F-0ð F-0ñ F-0ô F-0ð F-0ðRZ3ð 3ð 3ðl ˆzÒÑØˆ?ÑÔ€DØ
‡K‚K� $¤*Ñ,Ñ-Ô-Ð-Ø„{ð 3Ø�Š�O d¤kÑ1Ñ2Ô2Ð2Ø
‡K‚KÐ3Ñ4Ô4Ð4Ø#×0Ò0ØˆŒ	�$”*ÑÔØŒØŒØÔØŒñô €Fð „{ð �vð ØÔ%ð 	+ØˆDŒOØØ”Ø&*Ø(,Ô(DØÔ4Ø#Ô@Ø"'ðñ ô ð ð ð ˆDŒI�f˜dœkÑ*Ô*Ð*Ø�Š�GÑÔÐÐÐð5 Ððð ð ð s   ’ —)