
    bIg'@                       d dl mZ d dlZd dlmZ d dlmZmZmZ d dl	Z
d dlmZmZ d dlmZ d dlmZ d dlmZmZ  e       Z e       Z e ej0                  d	      d
k(         ZddZd dZd!dZd"dZd#dZd$dZd%dZ d%dZ!d&dZ"d'dZ#	 	 	 	 	 	 	 	 d(dZ$d)dZ% G d de      Z&d*dZ'e(dk(  r!er e' e&dd              e' e&dd             yy)+    )annotationsNdefaultdict)Any
NamedTupleSequence)defshelper)collect_sample_implementations)collect_snippets)ONNX_ML_DOMAINOpSchemaONNX_ML0c                X    t         j                  j                  |       ryt        |       S )Nz&#8734;)r	   r   is_infinitestr)vs    N/var/www/html/answerous/venv/lib/python3.12/site-packages/onnx/defs/gen_doc.pydisplay_numberr      s     }}  #q6M    c                &    d|v }| t         k(  r|S | S )Nz-ml)r   )domainoutputis_mls      r   should_render_domainr      s     VOEyr   c                    | r|  d| S |S )N. )r   schema_names     r   format_name_with_domainr!   &   s    ;-((r   c                ^    dj                  | D cg c]  }t        |       c}       S c c}w )N, )joinr   )function_versionsr   s     r   format_function_versionsr&   ,   s'    ii):;AQ;<=>;s   *c                F    dj                  fd| d d d   D               S )Nr#   c              3     K   | ]9  }t        t        |j                  |j                        |j                         ; y wNdisplay_version_linkr!   r   namesince_version.0r   	changelogs     r   	<genexpr>z"format_versions.<locals>.<genexpr>1   s:       Mxy,-DQXXqvv-VXYXgXgirs  M   ?A)r$   )versionsr0   s    `r   format_versionsr5   0   sK    ii  M  ~F  GK  IK  GK  ~L  M  M  N  Or   c                    t        | t        j                        sJ t        |       }||j	                  d      dz   d  j                         }|d   dk(  rd|z   }|S )Nr      r3   szlist of )
isinstancer   AttrTyper   rfindlower)r   r8   s     r   display_attr_typer=   4   s]    a**+++AA	!''#,

##%Au|NHr   c                    | rd|  dS y)Nzthe 'z' operator setzthe default ONNX operator setr   r   s    r   display_domainr@   =   s    vhn--*r   c                    | r| S y)Nzai.onnx (default)r   r?   s    r   display_domain_shortrB   C   s    r   c                (    |  d| }d| d| d| dS )N-z	<a href="#z">z</a>r   )r,   versionr0   name_with_vers       r   r+   r+   I   s-    fAgY'Myk=/G9DAAr   c                
   g }t         j                  j                  | j                  k(  rdg}n;t         j                  j                  | j                  k(  r| j
                  rdg}nddg}t         j                  j                  }t         j                  j                  }|| j                  k(  r|j                  d       n || j                  k(  r|j                  d       t        |      dk(  rdS dd	j                  |      z   d
z   S )Noptionalvariadicheterogeneousdifferentiableznon-differentiabler     (r#   ))r   FormalParameterOptionOptionaloptionVariadicis_homogeneousDifferentiationCategoryDifferentiableNonDifferentiabledifferentiation_categoryappendlenr$   )formal_parametertagsrL   non_differentiables       r   generate_formal_parameter_tagsr^   N   s    D%%..2B2I2II|		'	'	0	04D4K4K	K**<D0D((77  	((::  )BBB$%	/HH	H()Ta2ATDIIdO%;c%AAr   c           	        d}| j                   rK|dz  }|dj                  d | j                   j                         j                         D              z  }|dz  }|dz  }| j                  t
        j                  j                  k(  r|dz  }n|d| j                  rdndz   d	| j                   z   z  }|d
t        | j                         dz  }t        |      dkD  r/|dj                  dj                  fd|d d D                    z  }| j                  r|S | j                  r|dz  }|dz  }t        | j                  j!                               D ]  \  }}d}|j"                  rd}n|j$                  j&                  rnt)        j*                  |j$                        }|j$                  j,                  }d&d}	t/        |t0              r|D 
cg c]
  }
 |	|
       }}
n |	|      }d| | }|d|j&                   dt3        |j4                         |rd| dnd dz  }|d|j6                   dz  } |dz  }|dz  }| j8                  | j:                  k7  r2|dt=        | j8                         dt=        | j:                         dz  }|d z  }| j>                  r\|dz  }| j>                  D ]C  }tA        |      }|d|j&                   d!| d"|jB                   dz  }|d|j6                   dz  }E |dz  }|d#z  }| jD                  | jF                  k7  r2|dt=        | jD                         dt=        | jF                         dz  }|d z  }| jH                  r\|dz  }| jH                  D ]C  }tA        |      }|d|j&                   d!| d"|jB                   dz  }|d|j6                   dz  }E |dz  }|d$z  }|d z  }| jJ                  ru|dz  }| jJ                  D ]\  }|jL                  }t        |      d%kD  r|d%   }|dd  D ]
  }d|z   z  } |d|jN                   d dz  }|d|j6                   dz  }^ |dz  }|S c c}
w )'NrM   
c              3  B   K   | ]  }d |z   j                           yw)z  N)rstrip)r/   lines     r   r1   z!display_schema.<locals>.<genexpr>m   s"      
'+TD[  "
s   z
#### Version
z/
No versioning maintained for experimental ops.z'
This version of the operator has been 
deprecated	availablez since version  of z.
r7   z%
Other versions of this operator: {}
r#   c              3     K   | ]9  }t        t        |j                  |j                        |j                         ; y wr)   r*   r.   s     r   r1   z!display_schema.<locals>.<genexpr>   s<        )/!&&A!r2   r3   z
#### Attributes

z<dl>
requiredc                   t        | t              r?t        t        j                  | d            }t        |      dkD  rt        d| dd      }|S t        | t        t        f      rt        | j                  d            S t        |       S )N   
   (erO   utf-8)	r9   floatr   nproundrZ   bytes	bytearraydecode)value	formatteds     r   format_valuez$display_schema.<locals>.format_value   st    !%/$'(:$;	y>B.(+aayN(;I((!%%);<"5<<#899u:%r   zdefault is z<dt><tt>z</tt> : rN   rO   z</dt>
z<dd>z</dd>
z</dl>
z
#### Inputsz - 

z</tt>z : z
#### Outputsz
#### Type Constraintsr   )ru   r   returnr   )(docr$   lstrip
splitlinessupport_levelr   SupportTypeEXPERIMENTALrd   r-   r@   r   rZ   format
attributessorteditemsrh   default_valuer,   r
   get_attribute_value
doc_stringr9   listr=   typedescription	min_input	max_inputr   inputsr^   type_str
min_output
max_outputoutputstype_constraintsallowed_type_strstype_param_str)schemar4   r0   r8   _attroptr   r   rw   valinput_
option_strr   type_constraintallowedTypesallowedTypeStrallowedTypes     `               r   display_schemar   e   s    	A zz	T		TYY 
/5zz/@/@/B/M/M/O
 
 	
 	
T	 	Ax33@@@	??	6%00|kC 4 4567	

 	
tN6==12#66x=1:AA		  &cr] 	 	A  	$$	Xf//5578 	2GAtC}} ##(( & : :4;M;M N!//::
	& mT2BO$P3\#%6$PM$P$0$?M#M?:,?8DII;h/@/K.L\_rRUQVVW[egLhhoppA4(()11A7	28 	
Y A6+++	r.!1!1233~fFVFV7W6XXYZZKA}}	Xmm 	4F7?J8FKK=j\V__<MWUUA4**+733A	4 	
Y 	AF---	r.!2!234CvGXGX8Y7ZZ[\\KA~~	Xnn 	4F7?J8FKK=j\V__<MWUUA4**+733A	4 	
Y 	""AKA	X%66 	=O*<<L< 1$!-a+AB/ 5$"4458O::;8NCSSZ[[A4334G<<A	= 	
Y Hs %Qs   Qc                D    | t         j                  j                  k(  rdS dS )Nz<sub>experimental</sub> rM   )r   r~   r   )levels    r   support_level_strr      s&    &+x/C/C/P/P&P"VXr   c                  "    e Zd ZU ded<   ded<   y)Argsr   r   r0   N)__name__
__module____qualname____annotations__r   r   r   r   r      s    KNr   r   c                f   t         j                  j                  t         j                  j                  t         j                  j                  t         j                  j                  t                                }t         j                  j                  |d      }t        t         j                  j                  || j                        ddd      5 }|j                  d       |j                  d       |j                  d       t        d	       }t        j                         D ]-  }||j                     |j                     j                  |       / |j                  d
       t        |j!                               D ]  \  }}t#        || j$                        sdt'        |       d
}t        |j!                               D ]  \  }	}
|d|	 dt)        |       d
z  }t        |
d       D ]p  }t+        ||j,                         d|j                   }|d|j.                  rdndz   dz   j1                  ||      z  }|t3        ||g| j                        z  }|d
z  }r  |j                  |        	 d d d        t        t         j                  j                  || j$                        ddd      5 }|j                  d       |j                  d       |j                  d       t        d       }t        j                         D ]C  }||j                     t5        |j6                           |j,                     j                  |       E |j                  d
       g }t9               }t        |j!                               D ]  \  }}t#        || j$                        sg }t        |j!                               D ]  \  }}g }t        |j!                               D ]V  \  }}t        |d       }|d   }|j,                  |v r(|j;                  |j,                         |j                  |||f       X |j                  ||f        |j                  ||f        |D ]  \  }}dt'        |       d
}|j                  |       |j                  d       |j                  d       g }|D ]  \  }}|D ]  \  }}}|j<                  s|j>                  r"|j@                  }|j                  ||||f       Adj1                  tC        |j6                        t+        ||      t+        ||      |j.                  rdndtE        || j                              }|j                  |         |r|j                  d       |D ]q  \  }}}}dj1                  tC        |j6                        t+        ||      t+        ||      tE        || j                        tG        |            }|j                  |       s |j                  d
        |j                  d
       |D ]o  \  }}dt'        |       d
}|j                  |       |D ]C  \  }}|D ]7  \  }}}d|j.                  rdndz   dz   j1                  tC        |j6                        t+        ||      t+        ||jI                               t+        ||            }|t3        ||| j                        z  }|d z  }|tJ        v r@|d!z  }t        tJ        |         D ]&  \  }}|d"z  }|d#| d$z  }|d%| d&z  }|d'z  }|d z  }( |jI                         tL        v r;|d(z  }|d"z  }|d#| d$z  }|d%tL        |jI                             d&z  }|d'z  }|d z  }|j                  |       : F r 	 d d d        y # 1 sw Y   %xY w# 1 sw Y   y xY w))NdocswrM   rn   )newlineencodingz.<!--- SPDX-License-Identifier: Apache-2.0 -->
z## Operator Changelog
a  *This file is automatically generated from the
            [def files](/onnx/defs) via [this script](/onnx/defs/gen_doc.py).
            Do not modify directly and instead edit operator definitions.*

For an operator input/output's differentiability, it can be differentiable,
            non-differentiable, or undefined. If a variable's differentiability
            is not specified, that variable has undefined differentiability.
c                      t        t              S r)   r   r   r   r   r   <lambda>zmain.<locals>.<lambda>  s    K% r   r`   z# z## Version rf   c                    | j                   S r)   )r,   r8   s    r   r   zmain.<locals>.<lambda>  s
    QVV r   )keyrD   z### <a name="{}"></a>**{}**z (deprecated)z</a>
z## Operator Schemas
c                     t        d       S )Nc                      t        t              S r)   r   r   r   r   r   z(main.<locals>.<lambda>.<locals>.<lambda>1  s    D(9 r   r   r   r   r   r   zmain.<locals>.<lambda>1  s    K 9: r   c                    | j                   S r)   )r-   r   s    r   r   zmain.<locals>.<lambda>F  s
    q r   r3   z### z"|**Operator**|**Since version**||
z|-|-|-|
z|{}<a href="#{}">{}</a>{}|{}|
z6|**Function**|**Since version**|**Function version**|
z|{}<a href="#{}">{}</a>|{}|{}|
z## z*### {}<a name="{}"></a><a name="{}">**{}**rx   z#### Examples

z
<details>
z	<summary>z</summary>

z
```python
z
```

z</details>
z#### Sample Implementation

)'ospathdirnamerealpath__file__r$   openr0   writer   r	   get_all_schemas_with_historyr   r-   rY   r   r   r   r   rB   r@   r!   r,   rd   r   r   intr}   setaddhas_functionhas_context_dependent_functionall_function_opset_versionsr   r5   r&   r<   SNIPPETSSAMPLE_IMPLEMENTATIONS)argsbase_dirdocs_dirfoutdv_indexr   r   
versionmapr8   rF   unsorted_schemasrG   indexoperator_schemasexisting_ops_supportmapprocessed_supportmap_support_namemapprocessed_namemapnunsorted_versionsr4   
supportmapfunction_opsr   namemapr%   op_typesummarycodes                                  r   mainr      s   ww
(8(8(BCDH ww||Hf-H	
Xt~~.R'
 *	

DE

,-

]	
 :E%:
 779 	IFV]]#F$8$89@@H	I 	

4"()9": 	FJ'<)&12"5A-3J4D4D4F-G 
)){7)4v0F/GrJJ$%5;KL F'>vv{{'S&TTUV\VjVjUk$lM5.4.?.??RI"# f]M:	;A
 $..IIAIA
 JJqM%	1*X 

Xt{{+S"w
 |"	

DE

*+

]	
 BM:B
 779 	XF&-- V%9%9!:;FKKHOOPVW	X 	

4  	 "%#)%++-#8 	DFK'<#% &,[->->-@&A 	K"($&!,28>>3C,D D(A(%&7=VWH%b\F{{l2  $$V[[1%,,a-BCD %++X7H,IJ	K ##V-A$BC	D$ #3 "	FJ+F34B7AJJqMJJ<=JJ{#L( "
7+2 "'Avx**f.S.S,2,N,N)$++QBS,TU 9@@)&*>*>?/:/:+1+<+<"'$..AA JJqM"" 

TU>J ":Avx)::AA)&*>*>?/:/:'$..A01BCA JJqM" JJtE"	H 	

4"2 &	"FJ*62326AJJqM( ""
718 !"-GVX E.4.?.??RI"# f)&*>*>?/@/H/@		  $..IIAKA(*00-3HW4E-F (MGT.A9WI^!DDA;tfI!>>A/AKA( }}*@@==]*y	@@{+A'--/+R*SS\]]^+VJJqMC!"""	&	"m|" |"Y* *X|" |"s   F$^6S^'^$'^0__main__zOperators-ml.mdzChangelog-ml.mdzOperators.mdzChangelog.md)r   r   ry   r   )r   r   r   r   ry   bool)r   r   r    r   ry   r   )r%   zSequence[int]ry   r   )r4   Sequence[OpSchema]r0   r   ry   r   )r   zOpSchema.AttrTypery   r   )r   r   ry   r   )r,   r   rF   r   r0   r   ry   r   )r[   zOpSchema.FormalParameterry   r   )r   r   r4   r   r0   r   ry   r   )r   zOpSchema.SupportTypery   r   )r   r   ry   None))
__future__r   r   collectionsr   typingr   r   r   numpyrp   onnxr	   r
   onnx.backend.sample.opsr   onnx.backend.test.caser   	onnx.defsr   r   r   r   r   getenvr   r   r   r!   r&   r5   r=   r@   rB   r+   r^   r   r   r   r   r   r   r   r   <module>r      s   # 	 # , ,   B 3 .79 9299Y'3./
/?O+B
B.{{ 2{?B{{|: 
n"b z!!	
 		
 r   