§
    1�Åj#  ã                  óÜ  — d dl mZ d dlZd dlZd dlZd dlZd dlZd dlmZ d dl	m
Z
 e
rd dlmZ dZdZdZ ej        d	¦  «        Z ej        d
¦  «        Z ej        d¦  «        Zd3d„Z ej        d¦  «        Z ej        d¦  «        Z ej        d¦  «        Zd4d„Z ej        d¦  «        Z ej        d¦  «        Zd5d„Zd6d!„Zd7d%„Zd8d9d)„Z	 	 	 d:d;d0„Zd<d1„Z e!d2k    r e ¦   «          dS dS )=é    )Ú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*$ÚlinesúIterable[str]Úonnx_mlÚboolÚreturnc              #  ó:  K  — d}| D ]“}t                                |¦  «        r|dk    sJ ‚d}Œ't                               |¦  «        r|dk    sJ ‚d}ŒLt                               |¦  «        r	|dv sJ ‚d}Œo|dk    r|V — Œz|dk    r|r|V — Œ‡|dk    r|s|V — Œ”d S )Nr   é   é   )r   r   )ÚIF_ONNX_ML_REGEXÚmatchÚELSE_ONNX_ML_REGEXÚENDIF_ONNX_ML_REGEX)r   r
   Úin_ifÚlines       ú?C:\Projects\Historical\venv\Lib\site-packages\onnx/gen_proto.pyÚprocess_ifsr   )   så   è è € Ø€EØð ð ˆÝ×!Ò! $Ñ'Ô'ð 	Ø˜A’:�:�:�:ØˆEˆEÝ×%Ò% dÑ+Ô+ð 	Ø˜A’:�:�:�:ØˆEˆEÝ ×&Ò& tÑ,Ô,ð 		Ø˜F�?�?�?�?ØˆEˆEà˜ŠzˆzØ�
�
�
�
Ø˜!’� �Ø�
�
�
�
Ø˜!’� G�Ø�
�
�
øð!ð ó    z#(\s*)import\s*"([^"]*)\.proto";\s*$z\{PACKAGE_NAME\}z(.*)\-mlÚpackage_nameÚstrc              #  óŠ  K  — |t           k    }| D ]²}|rt                               |¦  «        nd }|rs|                     d¦  «        }t                               |¦  «        }|r|                     d¦  «        › d|› d�}n|› d|› �}|                     d¦  «        d|› d�z   V — Œ•t
                               ||¦  «        V — Œ³d S )Nr   r   Ú_ú-mlúimport "z.proto";)ÚDEFAULT_PACKAGE_NAMEÚIMPORT_REGEXr   ÚgroupÚML_REGEXÚPACKAGE_NAME_REGEXÚsub)r   r   Úneed_renamer   ÚmÚinclude_nameÚmls          r   Úprocess_package_namer)   C   sö   è è € ØÕ"6Ò6€KØð =ð =ˆØ(3Ð=�L×Ò˜tÑ$Ô$Ð$¸ˆØð 		=ØŸ7š7 1™:œ:ˆLÝ—’ Ñ-Ô-ˆBØð @Ø"$§(¢(¨1¡+¤+ÐAÐA°ÐAÐAÐA��à".Ð?Ð?°Ð?Ð?�Ø—'’'˜!‘*”*Ð@¨,Ð@Ð@Ð@Ñ@Ð@Ð@Ð@Ð@å$×(Ò(¨°tÑ<Ô<Ð<Ð<Ð<Ð<ð=ð =r   z"(\s*)syntax\s*=\s*"proto2"\s*;\s*$z(\s*)optional\s(.*)$c              #  óº  K  — | D ]Õ}t                                |¦  «        }|r|                     d¦  «        dz   V — Œ9t                               |¦  «        }|r.|                     d¦  «        |                     d¦  «        z   V — Œƒt                               |¦  «        }|r2|                     d¦  «        d|                     d¦  «        › d�z   V — ŒÑ|V — ŒÖd S )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Ð3Ð3Øõ × Ò  Ñ&Ô&ˆØð 	Ø—'’'˜!‘*”*˜qŸwšw q™zœzÑ)Ð)Ð)Ð)Øõ ×Ò˜tÑ$Ô$ˆØð 	Ø—'’'˜!‘*”*Ð?¨!¯'ª'°!©*¬*Ð?Ð?Ð?Ñ?Ð?Ð?Ð?Øàˆ
ˆ
ˆ
ˆ
ð'ð r   Úprotoc_pathÚproto3_pathÚinclude_pathÚcpp_outÚ
python_outÚNonec                ó”   — t          d| › �¦  «         | |d|g}|                     d|d|g¦  «         t          j        |d¬¦  «         d S )NzGenerate pb3 code using z-Iz	--cpp_outz--python_outT)Úcheck)ÚprintÚextendÚ
subprocessÚrun)r.   r/   r0   r1   r2   Ú
build_argss         r   Úgen_proto3_coder;   n   sa   € õ 
Ð
2 [Ð
2Ð
2Ñ3Ô3Ð3Ø˜{¨D°,Ð?€JØ×Ò�{ G¨^¸ZÐHÑIÔIÐIÝ„N�: TÐ*Ñ*Ô*Ð*Ð*Ð*r   ÚsourceÚprotoÚintc                óè   — |                       ¦   «         }t          ||¬¦  «        }t          ||¬¦  «        }|dk    rt          |¦  «        }n|dk    sJ ‚t          j                             |¦  «        S )N)r
   )r   é   r   )Ú
splitlinesr   r)   r-   ÚosÚlinesepÚjoin)r<   r=   r
   r   r   s        r   Ú	translaterE   w   sp   € Ø!×,Ò,Ñ.Ô.€EÝ˜ wÐ/Ñ/Ô/€EÝ  °\ÐBÑBÔB€EØ�‚z€zÝ! %Ñ(Ô(ˆˆà˜ŠzˆzˆzˆzÝŒ:�?Š?˜5Ñ!Ô!Ð!r   ÚfÚpardirú
str | Nonec                óÈ   — |€At           j                             t           j                             t          ¦  «        ¦  «        }t           j                             || ¦  «        S ©N)rB   ÚpathÚrealpathÚdirnameÚ__file__rD   )rF   rG   s     r   ÚqualifyrO   ‚   s@   € Ø€~Ý”×!Ò!¥"¤'§/¢/µ(Ñ";Ô";Ñ<Ô<ˆÝŒ7�<Š<˜ Ñ"Ô"Ð"r   FÚ ÚstemÚoutputÚ
do_onnx_mlÚlitec                ó	  — t          | › d�¦  «        }|t          k    }|}d|v rd}|r|r| › d|› d�n| › d�}	n|r| › d|› �n| › }	t          |	› d�|¬¦  «        }
t          |	› d�|¬¦  «        }t          d	|› �¦  «         t          |d
¬¦  «        5 }|                     ¦   «         }t          d|
› �¦  «         t          |
ddd
¬¦  «        5 }|                     t          ¦  «         |                     t          |d||¬¦  «        ¦  «         |r|                     t          ¦  «         d d d ¦  «         n# 1 swxY w Y   t          d|› �¦  «         t          |ddd
¬¦  «        5 }|                     t          ¦  «         |                     t          |d||¬¦  «        ¦  «         |r|                     t          ¦  «         d d d ¦  «         n# 1 swxY w Y   |r±t          j
                             |¦  «        }t          j
                             |¦  «        }t          |||||¦  «         t          j        t          j
                             ||	› d�¦  «        ¦  «        }|D ](}t          d|› �¦  «         t          j        |¦  «         Œ)|r–|rt          | › d�|¬¦  «        }nt          | › d�|¬¦  «        }t          d|› �¦  «         t          |ddd
¬¦  «        5 }|                     d¦  «         |                     d|	› d�¦  «         d d d ¦  «         n# 1 swxY w Y   d d d ¦  «         n# 1 swxY w Y   t          |                      dd¦  «        › d�|¬¦  «        }|r)t          |	                     dd¦  «        › d�|¬¦  «        }nS|r)t          |                      dd¦  «        › d�|¬¦  «        }n(t          |                      dd¦  «        › d�|¬¦  «        }t          d|› �¦  «         t          |dd
¬¦  «        5 }|                     t#          dt          j
                             t          j
                             |¦  «        ¦  «        d          › d!�¦  «        ¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )"Nz	.in.protoú	onnx-dataFr   r   z.proto)rG   z.proto3zProcessing zutf-8)ÚencodingzWriting ÚwrP   )ÚnewlinerW   r   )r=   r
   r   r@   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 za                # This file is generated by 'gen_proto.py'. DO NOT EDIT!


                from .r   z" import *  # noqa
                )rO   r   r6   ÚopenÚreadÚwriteÚautogen_headerrE   ÚLITE_OPTIONrB   rK   rM   r;   ÚglobrD   ÚremoveÚreplacer   ÚsplitextÚbasename)rQ   r   rR   rS   rT   r.   Úproto_inr%   Ú	import_mlÚ
proto_baser=   Úproto3Úfinr<   ÚfoutÚ
porto3_dirÚbase_dirÚ	pb3_filesÚpb3_fileÚproto_headerÚpb_pyÚpb2_pyrF   s                          r   Úconvertrr   ˆ   sK  € õ ˜$Ð)Ð)Ð)Ñ*Ô*€HØÕ"6Ò6€Kð €Ið �hÐÐØˆ
Øð LØ4?ÐQ˜Ð0Ð0˜|Ð0Ð0Ð0Ð0ÈÀ\À\À\ˆ
ˆ
à1<ÐK˜Ð-Ð-˜|Ð-Ð-Ð-ÀTÀ)ˆ
Ý�zÐ)Ð)Ð)°&Ð9Ñ9Ô9€EÝ˜
Ð+Ð+Ð+°FÐ;Ñ;Ô;€Få	Ð
"˜Ð
"Ð
"Ñ#Ô#Ð#Ý	ˆh Ð	)Ñ	)Ô	)ð #>¨SØ—’‘”ˆÝÐ ˜Ð Ð Ñ!Ô!Ð!Ý�%˜ b°7Ð;Ñ;Ô;ð 	(¸tØ�JŠJ•~Ñ&Ô&Ð&Ø�JŠJÝ˜&¨°9È<ÐXÑXÔXñô ð ð ð (Ø—
’
�;Ñ'Ô'Ð'ð	(ð 	(ð 	(ñ 	(ô 	(ð 	(ð 	(ð 	(ð 	(ð 	(ð 	(øøøð 	(ð 	(ð 	(ð 	(õ 	Ð!˜Ð!Ð!Ñ"Ô"Ð"Ý�&˜# r°GÐ<Ñ<Ô<ð 	(ÀØ�JŠJ•~Ñ&Ô&Ð&Ø�JŠJÝ˜&¨°9È<ÐXÑXÔXñô ð ð ð (Ø—
’
�;Ñ'Ô'Ð'ð	(ð 	(ð 	(ñ 	(ô 	(ð 	(ð 	(ð 	(ð 	(ð 	(ð 	(øøøð 	(ð 	(ð 	(ð 	(ð ð 	$ÝœŸš¨Ñ0Ô0ˆJÝ”w—’ zÑ2Ô2ˆHÝ˜K¨°¸8ÀXÑNÔNÐNÝœ	¥"¤'§,¢,¨z¸jÐ;SÐ;SÐ;SÑ"TÔ"TÑUÔUˆIØ%ð $ð $�ÝÐ, (Ð,Ð,Ñ-Ô-Ð-Ý”	˜(Ñ#Ô#Ð#Ð#àð 	>Øð FÝ&¨$Ð'8Ð'8Ð'8ÀÐHÑHÔH��å&¨$ ~ ~ ~¸fÐEÑEÔE�ÝÐ+˜\Ð+Ð+Ñ,Ô,Ð,Ý�l C°¸gÐFÑFÔFð >È$Ø—
’
Ð+Ñ,Ô,Ð,Ø—
’
Ð<¨
Ð<Ð<Ð<Ñ=Ô=Ð=ð>ð >ð >ñ >ô >ð >ð >ð >ð >ð >ð >øøøð >ð >ð >ð >ðC#>ð #>ð #>ñ #>ô #>ð #>ð #>ð #>ð #>ð #>ð #>øøøð #>ð #>ð #>ð #>õN �t—|’| C¨Ñ-Ô-Ð5Ð5Ð5¸fÐEÑEÔE€EØð PÝ˜J×.Ò.¨s°CÑ8Ô8ÐAÐAÐAÈ&ÐQÑQÔQˆˆàð 	PÝ §¢¨S°#Ñ 6Ô 6ÐBÐBÐBÈ6ÐRÑRÔRˆFˆFå §¢¨S°#Ñ 6Ô 6Ð?Ð?Ð?ÈÐOÑOÔOˆFå	Ð
˜Ð
Ð
Ñ Ô Ð Ý	ˆe�S 7Ð	+Ñ	+Ô	+ð 

¨qØ	�ŠÝðõ ”w×'Ò'­¬×(8Ò(8¸Ñ(@Ô(@ÑAÔAÀ!ÔDð	ð ð ñô ñ		
ô 		
ð 		
ð

ð 

ð 

ñ 

ô 

ð 

ð 

ð 

ð 

ð 

ð 

ð 

øøøð 

ð 

ð 

ð 

ð 

ð 

s”   Â:L-Ã	AD2Ä&L-Ä2D6	Ä6L-Ä9D6	Ä:(L-Å"AGÆ?L-ÇG	ÇL-ÇG	ÇDL-Ë/LÌ
L-ÌL	ÌL-ÌL	ÌL-Ì-L1Ì4L1ÐA'Q6Ñ6Q:Ñ=Q:c            	     óî  — t          j        d¬¦  «        } |                      dddd¬¦  «         |                      dd	d
d¬¦  «         |                      ddd
d¬¦  «         |                      ddt          j                             t          j                             t          ¦  «        ¦  «        d¬¦  «         |                      ddd¬¦  «         |                      ddg d¢d¬¦  «         |                      ¦   «         }t          j         	                    |j
        ¦  «        st          j        |j
        ¦  «         |j        D ]0}t          ||j        |j
        |j        |j        |j        ¬¦  «         Œ1d S )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)Úactionrv   z-lz--litez-generate lite proto to use with protobuf-litez-oz--outputz'output directory (default: %(default)s)z--protoc_pathrP   z)path to protoc for proto3 file validationÚstemsÚ*)r   zonnx-operatorsrV   z3list of .in.proto file stems (default: %(default)s))Únargsru   rv   )r   rR   rS   rT   r.   )ÚargparseÚArgumentParserÚadd_argumentrB   rK   rL   rM   rN   Ú
parse_argsÚexistsrR   Úmakedirsry   rr   Úpackager(   rT   r.   )ÚparserÚargsrQ   s      r   Úmainr…   ß   sÁ  € ÝÔ$ØEðñ ô €Fð ×ÒØØØØOð	 ñ ô ð ð ×Ò˜˜f¨\À	ÐÑJÔJÐJØ
×ÒØØØØ<ð	 ñ ô ð ð ×ÒØØÝ”× Ò ¥¤§¢µÑ!:Ô!:Ñ;Ô;Ø6ð	 ñ ô ð ð ×ÒØ Ð*Uð ñ ô ð ð ×ÒØØØ7Ð7Ð7ØBð	 ñ ô ð ð ×ÒÑÔ€DåŒ7�>Š>˜$œ+Ñ&Ô&ð !Ý
Œ�D”KÑ Ô Ð à”
ð 
ð 
ˆÝØØœØ”;Ø”wØ”ØÔ(ð	
ñ 	
ô 	
ð 	
ð 	
ð
ð 
r   Ú__main__)r   r	   r
   r   r   r	   )r   r	   r   r   r   r	   )r   r	   r   r	   )r.   r   r/   r   r0   r   r1   r   r2   r   r   r3   )
r<   r   r=   r>   r
   r   r   r   r   r   rJ   )rF   r   rG   rH   r   r   )FFrP   )rQ   r   r   r   rR   r   rS   r   rT   r   r.   r   r   r3   )r   r3   )"Ú
__future__r   r|   r`   rB   Úrer8   Útextwrapr   Útypingr   Úcollections.abcr   r^   r_   r   Úcompiler   r   r   r   r    r#   r"   r)   r+   r,   r-   r;   rE   rO   rr   r…   Ú__name__© r   r   ú<module>r�      s  ðð #Ð "Ð "Ð "Ð "Ð "à €€€Ø €€€Ø 	€	€	€	Ø 	€	€	€	Ø Ð Ð Ð Ø Ð Ð Ð Ð Ð Ø  Ð  Ð  Ð  Ð  Ð  àð )Ø(Ð(Ð(Ð(Ð(Ð(ð€ð€ð Ð à�2”:Ð:Ñ;Ô;Ð Ø �b”jÐ!6Ñ7Ô7Ð Ø�R”ZÐ 4Ñ5Ô5Ð ðð ð ð ð* ˆrŒzÐ@ÑAÔA€Ø�R”ZÐ 3Ñ4Ô4Ð Øˆ2Œ:�kÑ"Ô"€ð=ð =ð =ð =ð   �R”ZÐ EÑFÔFÐ Ø�”Ð3Ñ4Ô4€ðð ð ð ð.+ð +ð +ð +ð"ð "ð "ð "ð#ð #ð #ð #ð #ð ØØðT
ð T
ð T
ð T
ð T
ðn-
ð -
ð -
ð -
ð` ˆzÒÐØ€D�F„F€F€F€Fð Ðr   