
    Si0                    b    S SK Jr  S SKrS SKrS SKJr  S SKJr  S	S jr	S	S jr
 " S S\5      rg)
    )annotationsN)Base)expectc                .    [         R                  " X5      $ N)nptriuxks     `/var/www/html/ai-image-ml/venv/lib/python3.13/site-packages/onnx/backend/test/case/node/trilu.pytriu_reference_implementationr          771=    c                .    [         R                  " X5      $ r   )r   trilr
   s     r   tril_reference_implementationr      r   r   c                  |   \ rS rSr\SS j5       r\SS j5       r\SS j5       r\SS j5       r\SS j5       r	\SS j5       r
\SS j5       r\SS	 j5       r\SS
 j5       r\SS j5       r\SS j5       r\SS j5       r\SS j5       r\SS j5       r\SS j5       r\SS j5       r\SS j5       r\SS j5       rSrg)Trilu   c                     [         R                  R                  SS/S/S9n [        R                  R                  SSS9R                  [        R                  5      n[        U5      n[        X/U/SS	9  g )
Nr   r   yinputsoutputs
         size	test_triur   r   name
onnxhelper	make_noder   randomrandintastypeint64r   r   noder   r   s      r   export_triuTrilu.export_triu   sn    {{$$5E % 
 IIbv.55bhh? *!,tC!;?r   c                 j   [         R                  R                  SSS/S/S9n [        R                  R                  SSS9R                  [        R                  5      n[        R                  " S	5      R                  [        R                  5      n[        U[        U5      5      n[        XU/U/S
S9  g )Nr   r   r   r   r   r   r   r    test_triu_negr#   r&   r'   r(   r   r)   r*   r+   r,   arrayr   intr   r.   r   r   r   s       r   export_triu_negTrilu.export_triu_neg,   s    {{$$:E % 
 IIbv.55bhh?HHRL) *!SV4tFQCoFr   c                 j   [         R                  R                  SSS/S/S9n [        R                  R                  SSS9R                  [        R                  5      n[        R                  " S	5      R                  [        R                  5      n[        U[        U5      5      n[        XU/U/S
S9  g )Nr   r   r   r   r   r   r   r    test_triu_out_neg_outr#   r4   r7   s       r   export_triu_out_neg_outTrilu.export_triu_out_neg_outC   s    {{$$:E % 
 IIbv.55bhh?HHRL) *!SV4tFQC6MNr   c                 j   [         R                  R                  SSS/S/S9n [        R                  R                  SSS9R                  [        R                  5      n[        R                  " S	5      R                  [        R                  5      n[        U[        U5      5      n[        XU/U/S
S9  g )Nr   r   r   r   r   r   r   r       test_triu_posr#   r4   r7   s       r   export_triu_posTrilu.export_triu_posZ   s    {{$$:E % 
 IIbv.55bhh?HHQKrxx( *!SV4tFQCoFr   c                 j   [         R                  R                  SSS/S/S9n [        R                  R                  SSS9R                  [        R                  5      n[        R                  " S	5      R                  [        R                  5      n[        U[        U5      5      n[        XU/U/S
S9  g )Nr   r   r   r   r   r   r   r       test_triu_out_posr#   r4   r7   s       r   export_triu_out_posTrilu.export_triu_out_posq   s    {{$$:E % 
 IIbv.55bhh?HHQKrxx( *!SV4tFQC6IJr   c                     [         R                  R                  SS/S/S9n [        R                  R                  SSS9R                  [        R                  5      n[        U5      n[        X/U/SS	9  g )
Nr   r   r   r   r   r@      rK   r    test_triu_squarer#   r%   r-   s      r   export_triu_squareTrilu.export_triu_square   so    {{$$5E % 
 IIby188B)!," 	tC!3EFr   c                 j   [         R                  R                  SSS/S/S9n [        R                  R                  SSS9R                  [        R                  5      n[        R                  " S	5      R                  [        R                  5      n[        U[        U5      5      n[        XU/U/S
S9  g )Nr   r   r   r   r   r   rJ   r    r2   test_triu_square_negr#   r4   r7   s       r   export_triu_square_negTrilu.export_triu_square_neg   s    {{$$:E % 
 IIby188BHHRL)" *!SV4tFQC6LMr   c                 j   [         R                  R                  SSS/S/S9n [        R                  R                  SSS9R                  [        R                  5      n[        R                  " S	5      R                  [        R                  5      n[        U[        U5      5      n[        XU/U/S
S9  g )Nr   r   r   r   r   r   rK      r   r    rU   test_triu_one_rowr#   r4   r7   s       r   export_triu_one_rowTrilu.export_triu_one_row   s    {{$$:E % 
 IIby188BHHQKrxx( *!SV4tFQC6IJr   c                 j   [         R                  R                  SSS/S/S9n [        R                  R                  SSS9R                  [        R                  5      n[        R                  " S	5      R                  [        R                  5      n[        U[        U5      5      n[        XU/U/S
S9  g )Nr   r   r   r   r   r   )r   r   r    rE   test_triu_zeror#   r4   r7   s       r   export_triu_zeroTrilu.export_triu_zero   s    {{$$:E % 
 IIbv.55bhh?HHQKrxx(
 *!SV4tFQC6FGr   c                     [         R                  R                  SS/S/SS9n [        R                  R                  SSS9R                  [        R                  5      n[        U5      n[        X/U/S	S
9  g )Nr   r   r   r   r   r   upperr   r   r    	test_trilr#   
r&   r'   r(   r   r)   r*   r+   r,   r   r   r-   s      r   export_trilTrilu.export_tril   sq    {{$$5E	 % 
 IIbv.55bhh? *!,tC!;?r   c                 l   [         R                  R                  SSS/S/SS9n [        R                  R                  SSS	9R                  [        R                  5      n[        R                  " S
5      R                  [        R                  5      n[        U[        U5      5      n[        XU/U/SS9  g )Nr   r   r   r   r   r^   r   r   r    r2   test_tril_negr#   r&   r'   r(   r   r)   r*   r+   r,   r5   r   r6   r   r7   s       r   export_tril_negTrilu.export_tril_neg  s    {{$$:E	 % 
 IIbv.55bhh?HHRL) *!SV4tFQCoFr   c                 l   [         R                  R                  SSS/S/SS9n [        R                  R                  SSS	9R                  [        R                  5      n[        R                  " S
5      R                  [        R                  5      n[        U[        U5      5      n[        XU/U/SS9  g )Nr   r   r   r   r   r^   r   r   r    r;   test_tril_out_negr#   rf   r7   s       r   export_tril_out_negTrilu.export_tril_out_neg  s    {{$$:E	 % 
 IIbv.55bhh?HHRL) *!SV4tFQC6IJr   c                 l   [         R                  R                  SSS/S/SS9n [        R                  R                  SSS	9R                  [        R                  5      n[        R                  " S
5      R                  [        R                  5      n[        U[        U5      5      n[        XU/U/SS9  g )Nr   r   r   r   r   r^   r   r   r    r@   test_tril_posr#   rf   r7   s       r   export_tril_posTrilu.export_tril_pos2  s    {{$$:E	 % 
 IIbv.55bhh?HHQKrxx( *!SV4tFQCoFr   c                 l   [         R                  R                  SSS/S/SS9n [        R                  R                  SSS	9R                  [        R                  5      n[        R                  " S
5      R                  [        R                  5      n[        U[        U5      5      n[        XU/U/SS9  g )Nr   r   r   r   r   r^   r   r   r    rE   test_tril_out_posr#   rf   r7   s       r   export_tril_out_posTrilu.export_tril_out_posJ  s    {{$$:E	 % 
 IIbv.55bhh?HHQKrxx( *!SV4tFQC6IJr   c                     [         R                  R                  SS/S/SS9n [        R                  R                  SSS9R                  [        R                  5      n[        U5      n[        X/U/S	S
9  g )Nr   r   r   r   r^   r   rJ   r    test_tril_squarer#   ra   r-   s      r   export_tril_squareTrilu.export_tril_squarea  sr    {{$$5E	 % 
 IIby188B" *!,tC!3EFr   c                 l   [         R                  R                  SSS/S/SS9n [        R                  R                  SSS	9R                  [        R                  5      n[        R                  " S
5      R                  [        R                  5      n[        U[        U5      5      n[        XU/U/SS9  g )Nr   r   r   r   r   r^   r   rJ   r    r2   test_tril_square_negr#   rf   r7   s       r   export_tril_square_negTrilu.export_tril_square_neg~  s    {{$$:E	 % 
 IIby188BHHRL)" *!SV4tFQC6LMr   c                     [         R                  R                  SS/S/SS9n [        R                  R                  SSS9R                  [        R                  5      n[        U5      n[        X/U/S	S
9  g )Nr   r   r   r   r^   r   rT   r    test_tril_one_row_negr#   ra   r-   s      r   export_tril_one_rowTrilu.export_tril_one_row  sr    {{$$5E	 % 
 IIby188B *!,tC!3JKr   c                 l   [         R                  R                  SSS/S/SS9n [        R                  R                  SSS	9R                  [        R                  5      n[        R                  " S
5      R                  [        R                  5      n[        U[        U5      5      n[        XU/U/SS9  g )Nr   r   r   r   r   r^   r   )rK   r   r   r    rE   test_tril_zeror#   rf   r7   s       r   export_tril_zeroTrilu.export_tril_zero  s    {{$$:E	 % 
 IIby188BHHQKrxx(
 *!SV4tFQC6FGr    N)returnNone)__name__
__module____qualname____firstlineno__staticmethodr/   r8   r=   rB   rG   rM   rQ   rW   r[   rb   rg   rk   ro   rs   rw   r{   r   r   __static_attributes__r   r   r   r   r      s   @ @* G G, O O, G G, K K, G G6 N N8 K K0 H H  @ @, G G. K K. G G. K K, G G8 N N: L L0 H Hr   r   )r   )
__future__r   numpyr   r&   onnx.backend.test.case.baser   onnx.backend.test.case.noder   r   r   r   r   r   r   <module>r      s0    #   , .pHD pHr   