
    Si!                    B   S SK Jr  S SKrS SKrS SKrS SKrS SKrS SKJr  S SK	J
r
  \
(       a  S SKJr  SrSrSr\R                   " S	5      r\R                   " S
5      r\R                   " S5      rSS jr\R                   " S5      r\R                   " S5      r\R                   " S5      rSS jr\R                   " S5      r\R                   " S5      rSS jr            SS jrSS jrSS S jjr   S!             S"S jjrS#S jr \!S:X  a  \ " 5         gg)$    )annotationsN)dedent)TYPE_CHECKING)IterablezV//
// WARNING: This file is automatically generated!  Please edit onnx.in.proto.
//


zB

// For using protobuf-lite
option optimize_for = LITE_RUNTIME;

onnxz\s*//\s*#if\s+ONNX-ML\s*$z\s*//\s*#endif\s*$z\s*//\s*#else\s*$c              #  n  #    SnU  H  n[         R                  U5      (       a  US:X  d   eSnM)  [        R                  U5      (       a  US:X  d   eSnMO  [        R                  U5      (       a  US;   d   eSnMu  US:X  a  Uv   M  US:X  a  U(       a  Uv   M  US:X  d  M  U(       a  M  Uv   M     g 7f)Nr         )r	   r
   )IF_ONNX_ML_REGEXmatchELSE_ONNX_ML_REGEXENDIF_ONNX_ML_REGEX)linesonnx_mlin_iflines       M/var/www/html/ai-image-ml/venv/lib/python3.13/site-packages/onnx/gen_proto.pyprocess_ifsr   )   s     E!!$''A::E%%d++A::E &&t,,F?"?Ez
!
!GG
! s   BB5#B5,	B5z#(\s*)import\s*"([^"]*)\.proto";\s*$z\{PACKAGE_NAME\}z(.*)\-mlc              #  x  #    U[         :g  nU  H  nU(       a  [        R                  U5      OS nU(       ah  UR                  S5      n[        R                  U5      nU(       a  UR                  S5       SU S3nOU SU 3nUR                  S5      SU S3-   v   M  [
        R                  X5      v   M     g 7f)Nr
   r	   _-mlimport "z.proto";)DEFAULT_PACKAGE_NAMEIMPORT_REGEXr   groupML_REGEXPACKAGE_NAME_REGEXsub)r   package_nameneed_renamer   minclude_namemls          r   process_package_namer$   C   s     "66K(3Lt$771:L-B"$((1+a~SA".q?''!*,x@@@$((<< s   B8B:z"(\s*)syntax\s*=\s*"proto2"\s*;\s*$z(\s*)optional\s(.*)$c              #    #    U  H  n[         R                  U5      nU(       a  UR                  S5      S-   v   M7  [        R                  U5      nU(       a'  UR                  S5      UR                  S5      -   v   Mz  [        R                  U5      nU(       a+  UR                  S5      SUR                  S5       S3-   v   M  Uv   M     g 7f)Nr	   zsyntax = "proto3";r
   r   z	.proto3";)PROTO_SYNTAX_REGEXr   r   OPTIONAL_REGEXr   )r   r   r!   s      r   convert_to_proto3r(   W   s     $$T*''!*333   &''!*qwwqz)) t$''!*!''!*Y???
' s   CCc                    [        SU  35        XSU/nUR                  SUSU/5        [        R                  " U5        g )NzGenerate pb3 code using z-Iz	--cpp_outz--python_out)printextend
subprocess
check_call)protoc_pathproto3_pathinclude_pathcpp_out
python_out
build_argss         r   gen_proto3_coder4   n   sE     
$[M
23D,?J{G^ZHI*%    c                    U R                  5       n[        XBS9n[        XCS9nUS:X  a  [        U5      nOUS:X  d   e[        R
                  R                  U5      $ )N)r   )r      r
   )
splitlinesr   r$   r(   oslinesepjoin)sourceprotor   r   r   s        r   	translater>   w   sT    !,,.E/E BEz!%(zz::??5!!r5   c                    Uc@  [         R                  R                  [         R                  R                  [        5      5      n[         R                  R                  X5      $ N)r9   pathrealpathdirname__file__r;   )fpardirs     r   qualifyrG      s;    ~!!"''//(";<77<<""r5   c                   [        U  S35      nU[        :g  nUnSU;   a  SnU(       a  U(       a  U  SU S3OU  S3n	OU(       a  U  SU 3OU  n	[        U	 S3US9n
[        U	 S3US9n[        S	U 35        [        US
S9 nUR	                  5       n[        SU
 35        [        U
SSS
S9 nUR                  [        5        UR                  [        USXS95        U(       a  UR                  [        5        S S S 5        [        SU 35        [        USSS
S9 nUR                  [        5        UR                  [        USXS95        U(       a  UR                  [        5        S S S 5        U(       a  [        R                  R                  U5      n[        R                  R                  U5      n[        X[UUU5        [        R                  " [        R                  R                  X S35      5      nU H'  n[        SU 35        [        R                  " U5        M)     U(       ak  U(       a  [        U  S3US9nO[        U  S3US9n[        SU 35        [        USSS
S9 nUR                  S5        UR                  SU	 S35        S S S 5        S S S 5        [        U R!                  SS5       S3US9nU(       a  [        U	R!                  SS5       S3US9nOBU(       a  [        U R!                  SS5       S3US9nO[        U R!                  SS5       S3US9n[        SU 35        [        USS
S9 nUR                  [#        S[        R                  R%                  [        R                  R'                  U5      5      S     S!35      5        S S S 5        g ! , (       d  f       GN= f! , (       d  f       GNS= f! , (       d  f       GN== f! , (       d  f       GNG= f! , (       d  f       g = f)"Nz	.in.proto	onnx-dataFr   r   z.proto)rF   z.proto3zProcessing zutf-8)encodingzWriting w )newlinerJ   r
   )r=   r   r   r7   z	.proto3.*z	Removing z-ml.pb.hz.pb.hz#pragma once
z
#include "z.pb.h"
-z_pb.pyz_pb2.pyz
_ml_pb2.pyzgenerating z[                # This file is generated by setup.py. DO NOT EDIT!


                from .r   z" import *  # noqa
                )rG   r   r*   openreadwriteautogen_headerr>   LITE_OPTIONr9   rA   rC   r4   globr;   removereplacer   splitextbasename)stemr   output
do_onnx_mlliter.   proto_inr    	import_ml
proto_baser=   proto3finr<   fout
porto3_dirbase_dir	pb3_filespb3_fileproto_headerpb_pypb2_pyrE   s                          r   convertrj      s    $y)*H"66K I h
4?vQ|nC0vS\
1<vQ|n-TF
zl&)&9E
|7+F;F	Kz
"#	h	)S !%b7;tJJ~&JJ&9X 

;' < 	!"&#rG<JJ~&JJ&9X 

;' = 0Jwwz2HK8XN		"'',,z\;S"TUI%	(,-		(# & &$x'8H&$u~fEH\N+,lCgF$

+,

Z
|8<= GC 
*N t||C-.f5fEEJ..sC89A&QS# 67zB6RFS# 67w?OF	Kw
 	eS7	+q	 ww''(8(8(@A!DE F			
 
,	+] <; =<, GFC 
*	)b 
,	+sd   +O,AN 8"OAN2&DO''OO;AO( 
N/	*O2
O	<O
O	O
O%(
O6c            
        [         R                  " SS9n U R                  SSSSS9  U R                  SS	S
SS9  U R                  SSS
SS9  U R                  SS[        R                  R                  [        R                  R                  [        5      5      SS9  U R                  SSSS9  U R                  SS/ SQSS9  U R                  5       n[        R                  R                  UR                  5      (       d   [        R                  " UR                  5        UR                   HC  n[        UUR                  UR                  UR                  UR                   UR"                  S9  ME     g )Nz/Generates .proto file variations from .in.proto)descriptionz-pz	--packager   z@package name in the generated proto files (default: %(default)s))defaulthelpz-mz--ml
store_truezML mode)actionrn   z-lz--litez-generate lite proto to use with protobuf-litez-oz--outputz'output directory (default: %(default)s)z--protoc_pathrL   z)path to protoc for proto3 file validationstems*)r   zonnx-operatorsrI   z3list of .in.proto file stems (default: %(default)s))nargsrm   rn   )r   rZ   r[   r\   r.   )argparseArgumentParseradd_argumentr9   rA   rB   rC   rD   
parse_argsexistsrZ   makedirsrq   rj   packager#   r\   r.   )parserargsrY   s      r   mainr}      s^   $$EF O	   f\	J
<	     !:;6	   *U   7B	   D77>>$++&&
DKK 

;;ww((	
 r5   __main__)r   Iterable[str]r   boolreturnr   )r   r   r   strr   r   )r   r   r   r   )r.   r   r/   r   r0   r   r1   r   r2   r   r   None)
r<   r   r=   intr   r   r   r   r   r   r@   )rE   r   rF   z
str | Noner   r   )FFrL   )rY   r   r   r   rZ   r   r[   r   r\   r   r.   r   r   r   )r   r   )"
__future__r   rt   rT   r9   rer,   textwrapr   typingr   collections.abcr   rR   rS   r   compiler   r   r   r   r   r   r   r$   r&   r'   r(   r4   r>   rG   rj   r}   __name__ r5   r   <module>r      s~   #   	 	    (  :::; jj!67 ZZ 45 * zz@AZZ 34 ::k"=  ZZ EF 34.&&#&&69&DG&UX&	&"# T

T
T
 T
 	T

 T
 T
 
T
n-
` zF r5   