§
    1�ÅjÂ  ã                  ó6  — d dl mZ d dlZd dlZd dlZd dlZd dlmc mc m	c m
Z d dlmZmZ ej                             ej                             e¦  «        ¦  «        Zej                             ed¦  «        Zdd	„Zdd
„Zdd„Zedk    r e¦   «          dS dS )é    )ÚannotationsN)ÚTensorProtoÚnumpy_helperÚdataÚargsúargparse.NamespaceÚreturnÚNonec                ó"  — dd„}t          j        ¦   «         }|D �]ó}t          j                             | j        |j        |j        ¦  «        } ||¦  «         |j        dk    rwt          t          j                             |d¦  «        d¦  «        5 }t          j
        |j        |j        |j        |j        d	œ|d
¬¦  «         d d d ¦  «         n# 1 swxY w Y   ŒÀ|j        sJ ‚t          t          j                             |d¦  «        d¦  «        5 }|                     |j                             ¦   «         ¦  «         d d d ¦  «         n# 1 swxY w Y   |j        sJ ‚t'          |j        ¦  «        D �]™\  }\  }}	t          j                             |d|› �¦  «        }
 ||
¦  «         t'          |¦  «        D �] \  }}t          t          j                             |
d|› d�¦  «        d¦  «        5 }|j        j        j        |         j                             d¦  «        rV|                     t1          j        ||j        j        j        |         j        ¦  «                             ¦   «         ¦  «         �nË|j        j        j        |         j                             d¦  «        rV|                     t1          j        ||j        j        j        |         j        ¦  «                             ¦   «         ¦  «         �nF|j        j        j        |         j                             d¦  «        rU|                     t1          j        ||j        j        j        |         j        ¦  «                             ¦   «         ¦  «         nÂ|j        j        j        |         j                             d¦  «        sJ ‚t9          |t:          ¦  «        r(|                     |                     ¦   «         ¦  «         nT|                     t1          j        ||j        j        j        |         j        ¦  «                             ¦   «         ¦  «         d d d ¦  «         n# 1 swxY w Y   �Œ¢t'          |	¦  «        D �] \  }}t          t          j                             |
d|› d�¦  «        d¦  «        5 }|j        j        j        |         j                             d¦  «        rV|                     t1          j        ||j        j        j        |         j        ¦  «                             ¦   «         ¦  «         �nË|j        j        j        |         j                             d¦  «        rV|                     t1          j        ||j        j        j        |         j        ¦  «                             ¦   «         ¦  «         �nF|j        j        j        |         j                             d¦  «        rU|                     t1          j        ||j        j        j        |         j        ¦  «                             ¦   «         ¦  «         nÂ|j        j        j        |         j                             d¦  «        sJ ‚t9          |t:          ¦  «        r(|                     |                     ¦   «         ¦  «         nT|                     t1          j        ||j        j        j        |         j        ¦  «                             ¦   «         ¦  «         d d d ¦  «         n# 1 swxY w Y   �Œ¢�Œ›�Œõd S )NÚpathÚstrr	   r
   c                ó”   — t           j                             | ¦  «        rt          j        | ¦  «         t          j        | ¦  «         d S ©N)Úosr   ÚexistsÚshutilÚrmtreeÚmakedirs)r   s    úLC:\Projects\Historical\venv\Lib\site-packages\onnx/backend/test/cmd_tools.pyÚprepare_dirz"generate_data.<locals>.prepare_dir   s>   € ÝŒ7�>Š>˜$ÑÔð 	 ÝŒM˜$ÑÔÐÝ
Œ�DÑÔÐÐÐó    Úrealz	data.jsonÚw)ÚurlÚ
model_nameÚrtolÚatolT)Ú	sort_keysz
model.onnxÚwbÚtest_data_set_Úinput_z.pbÚmap_typeÚsequence_typeÚoptional_typeÚtensor_typeÚoutput_)r   r   r	   r
   )Ú
model_testÚcollect_testcasesr   r   ÚjoinÚoutputÚkindÚnameÚopenÚjsonÚdumpr   r   r   r   ÚmodelÚwriteÚSerializeToStringÚ	data_setsÚ	enumerateÚgraphÚinputÚtypeÚHasFieldr   Ú	from_dictÚ	from_listÚfrom_optionalÚ
isinstancer   Ú
from_array)r   r   ÚcasesÚcaseÚ
output_dirÚfiÚfÚiÚinputsÚoutputsÚdata_set_dirÚjr6   r*   s                 r   Úgenerate_datarH      sŠ  € ðð ð ð õ
 Ô(Ñ*Ô*€Eàð V"ñ V"ˆÝ”W—\’\ $¤+¨t¬y¸$¼)ÑDÔDˆ
Øˆ�JÑÔÐØŒ9˜ÒÐÝ•b”g—l’l :¨{Ñ;Ô;¸SÑAÔAð 
ÀRÝ”	à#œxØ&*¤oØ $¤	Ø $¤	ð	ð ð Ø"ð	ñ 	ô 	ð 	ð
ð 
ð 
ñ 
ô 
ð 
ð 
ð 
ð 
ð 
ð 
øøøð 
ð 
ð 
ð 
øð ”:ÐÐ�:Ý•b”g—l’l :¨|Ñ<Ô<¸dÑCÔCð 8ÀqØ—’˜œ
×4Ò4Ñ6Ô6Ñ7Ô7Ð7ð8ð 8ð 8ñ 8ô 8ð 8ð 8ð 8ð 8ð 8ð 8øøøð 8ð 8ð 8ð 8à”>Ð!Ð!�>Ý(1°$´.Ñ(AÔ(Að B"ñ B"Ñ$�Ñ$�F˜GÝ!œwŸ|š|¨JÐ8LÈÐ8LÐ8LÑMÔM�Ø�˜LÑ)Ô)Ð)Ý )¨&Ñ 1Ô 1ð "ñ "‘H�A�uÝ�bœgŸlšl¨<¸À!¸¸¸ÑIÔIÈ4ÑPÔPð "ÐTUØœ:Ô+Ô1°!Ô4Ô9×BÒBÀ:ÑNÔNð "ØŸGšGÝ ,Ô 6Ø$)¨4¬:Ô+;Ô+AÀ!Ô+DÔ+Iñ!"ô !"ç"3Ò"3Ñ"5Ô"5ñô ð ñ ð
 "œZÔ-Ô3°AÔ6Ô;×DÒDÀ_ÑUÔUð "ØŸGšGÝ ,Ô 6Ø$)¨4¬:Ô+;Ô+AÀ!Ô+DÔ+Iñ!"ô !"ç"3Ò"3Ñ"5Ô"5ñô ð ñ ð
 "œZÔ-Ô3°AÔ6Ô;×DÒDÀ_ÑUÔUð "ØŸGšGÝ ,Ô :Ø$)¨4¬:Ô+;Ô+AÀ!Ô+DÔ+Iñ!"ô !"ç"3Ò"3Ñ"5Ô"5ñô ð ð ð $(¤:Ô#3Ô#9¸!Ô#<Ô#A×#JÒ#JØ -ñ$ô $ð ð ð $õ  *¨%µÑ=Ô=ð "Ø !§¢¨×(?Ò(?Ñ(AÔ(AÑ BÔ BÐ BÐ Bà !§¢Ý$0Ô$;Ø(-¨t¬zÔ/?Ô/EÀaÔ/HÔ/Mñ%&ô %&ç&7Ò&7Ñ&9Ô&9ñ!"ô !"ð !"ð5"ð "ð "ñ "ô "ð "ð "ð "ð "ð "ð "øøøð "ð "ð "ð "ùõ> "+¨7Ñ!3Ô!3ð "ñ "‘I�A�vÝ�bœgŸlšl¨<Ð9IÀ1Ð9IÐ9IÐ9IÑJÔJÈDÑQÔQð "ÐUVØœ:Ô+Ô2°1Ô5Ô:×CÒCÀJÑOÔOð "ØŸGšGÝ ,Ô 6Ø$*¨D¬JÔ,<Ô,CÀAÔ,FÔ,Kñ!"ô !"ç"3Ò"3Ñ"5Ô"5ñô ð ñ ð
 "œZÔ-Ô4°QÔ7Ô<×EÒEÀoÑVÔVð "ØŸGšGÝ ,Ô 6Ø$*¨D¬JÔ,<Ô,CÀAÔ,FÔ,Kñ!"ô !"ç"3Ò"3Ñ"5Ô"5ñô ð ñ ð
 "œZÔ-Ô4°QÔ7Ô<×EÒEÀoÑVÔVð "ØŸGšGÝ ,Ô :Ø$*¨D¬JÔ,<Ô,CÀAÔ,FÔ,Kñ!"ô !"ç"3Ò"3Ñ"5Ô"5ñô ð ð ð $(¤:Ô#3Ô#:¸1Ô#=Ô#B×#KÒ#KØ -ñ$ô $ð ð ð $õ  *¨&µ+Ñ>Ô>ð "Ø !§¢¨×(@Ò(@Ñ(BÔ(BÑ CÔ CÐ CÐ Cà !§¢Ý$0Ô$;Ø(.°´
Ô0@Ô0GÈÔ0JÔ0Oñ%&ô %&ç&7Ò&7Ñ&9Ô&9ñ!"ô !"ð !"ð5"ð "ð "ñ "ô "ð "ð "ð "ð "ð "ð "øøøð "ð "ð "ð "ùñ"ñGB"ð)V"ð V"sJ   Â1CÃC	ÃC	Ä-E
Å
E	ÅE	Ç0IQ	ÑQÑQÒ!I[>	Û>\Ü\c                 ó  — t          j        d¦  «        } |                      ¦   «         }|                     dd¬¦  «        }|                     ddt
          d¬¦  «         |                     t          ¬	¦  «         |                      ¦   «         S )
Nzbackend-test-toolszgenerate-datazconvert testcases to test data.)Úhelpz-oz--outputz'output directory (default: %(default)s))ÚdefaultrJ   )Úfunc)	ÚargparseÚArgumentParserÚadd_subparsersÚ
add_parserÚadd_argumentÚDATA_DIRÚset_defaultsrH   Ú
parse_args)ÚparserÚ
subparsersÚ	subparsers      r   rT   rT   s   sš   € ÝÔ$Ð%9Ñ:Ô:€FØ×&Ò&Ñ(Ô(€Jà×%Ò%ØÐ?ð &ñ ô €Ið ×ÒØØÝØ6ð	 ñ ô ð ð ×Ò¥ÐÑ.Ô.Ð.à×ÒÑÔÐr   c                 óL   — t          ¦   «         } |                      | ¦  «         d S r   )rT   rL   )r   s    r   ÚmainrY   †   s   € Ý‰<Œ<€DØ‡I‚Iˆd�O„O€O€O€Or   Ú__main__)r   r   r	   r
   )r	   r   )r	   r
   )Ú
__future__r   rM   r.   r   r   Úonnx.backend.test.case.modelÚbackendÚtestr?   r0   r'   Úonnxr   r   r   ÚrealpathÚdirnameÚ__file__ÚTOP_DIRr)   rR   rH   rT   rY   Ú__name__© r   r   ú<module>rf      s  ðð #Ð "Ð "Ð "Ð "Ð "à €€€Ø €€€Ø 	€	€	€	Ø €€€à 1Ð 1Ð 1Ð 1Ð 1Ð 1Ð 1Ð 1Ð 1Ð 1Ð 1Ð 1Ð 1Ð 1Ð 1Ø *Ð *Ð *Ð *Ð *Ð *Ð *Ð *à
Œ'×
Ò
˜2œ7Ÿ?š?¨8Ñ4Ô4Ñ
5Ô
5€ØŒ7�<Š<˜ Ñ(Ô(€ð^"ð ^"ð ^"ð ^"ðBð ð ð ð&ð ð ð ð
 ˆzÒÐØ€D�F„F€F€F€Fð Ðr   