o
    HXh S                    @   s  d dl Z d dlZd dlZd dlZd dlZd dlZd dlZejG dd dZG dd dej	Z
G dd dej	ZG dd	 d	ej	ZG d
d dej	ZG dd dej	ZG dd dej	ZG dd dej	Zedkr	 d dlZG dd deZe Zede j dS dS )    Nc                   @   s   e Zd ZU eed< eed< dS )PointxyN)__name__
__module____qualname__int__annotations__ r
   r
   9/opt/python-3.10.19/usr/lib/python3.10/test/test_patma.pyr   
   s   
 r   c                   @      e Zd Zdd ZdS )TestCompilerc                 C   s>   t t}t| td W d    d S 1 sw   Y  d S )Nexec)open__file__compileread)selffiler
   r
   r   test_refleaks   s   
"zTestCompiler.test_refleaksN)r   r   r   r   r
   r
   r
   r   r          r   c                   @   sD   e Zd Zedd Zedd Zdd Zdd Zd	d
 Zdd Z	dS )TestInheritancec                 C   s"   |    r  dS   r dS  d S )Nseqmapr
   r   r
   r
   r   check_sequence_then_mapping      
z+TestInheritance.check_sequence_then_mappingc                 C   s"   |   r  dS    r dS  d S )Nr   r   r
   r   r
   r
   r   check_mapping_then_sequence$   r   z+TestInheritance.check_mapping_then_sequencec                 C   s  G dd d}G dd dt jt jj}G dd d|t jt jj}G dd dt j|t}G d	d
 d
tt jj|}| | | d | | | d | | | d | | | d | | | d | | | d | | | d | | | d d S )Nc                   @      e Zd ZdS )z<TestInheritance.test_multiple_inheritance_mapping.<locals>.CNr   r   r   r
   r
   r
   r   C-       r    c                   @   r   )z=TestInheritance.test_multiple_inheritance_mapping.<locals>.M1Nr   r
   r
   r
   r   M1/   r!   r"   c                   @   r   )z=TestInheritance.test_multiple_inheritance_mapping.<locals>.M2Nr   r
   r
   r
   r   M21   r!   r#   c                   @   r   )z=TestInheritance.test_multiple_inheritance_mapping.<locals>.M3Nr   r
   r
   r
   r   M33   r!   r$   c                   @   r   )z=TestInheritance.test_multiple_inheritance_mapping.<locals>.M4Nr   r
   r
   r
   r   M45   r!   r%   r   )	collectionsUserDictabcSequencelistdictassertEqualr   r   )r   r    r"   r#   r$   r%   r
   r
   r   !test_multiple_inheritance_mapping,   s   z1TestInheritance.test_multiple_inheritance_mappingc                 C   s  G dd d}G dd dt jt jj}G dd d|t jt jj}G dd dt|t jj}G d	d
 d
t jt|}| | | d | | | d | | | d | | | d | | | d | | | d | | | d | | | d d S )Nc                   @   r   )z=TestInheritance.test_multiple_inheritance_sequence.<locals>.CNr   r
   r
   r
   r   r    A   r!   r    c                   @   r   )z>TestInheritance.test_multiple_inheritance_sequence.<locals>.S1Nr   r
   r
   r
   r   S1C   r!   r.   c                   @   r   )z>TestInheritance.test_multiple_inheritance_sequence.<locals>.S2Nr   r
   r
   r
   r   S2E   r!   r/   c                   @   r   )z>TestInheritance.test_multiple_inheritance_sequence.<locals>.S3Nr   r
   r
   r
   r   S3G   r!   r0   c                   @   r   )z>TestInheritance.test_multiple_inheritance_sequence.<locals>.S4Nr   r
   r
   r
   r   S4I   r!   r1   r   )	r&   UserListr(   Mappingr*   r+   r,   r   r   )r   r    r.   r/   r0   r1   r
   r
   r   "test_multiple_inheritance_sequence@   s   z2TestInheritance.test_multiple_inheritance_sequencec                 C   (  G dd d}G dd d|}G dd d|}t jj| G dd d|}G d	d
 d
|}| | | d | | | d | | | d | | | d | | | d | | | d | | | d | | | d | | | d | | | d d S )Nc                   @   r   )z>TestInheritance.test_late_registration_mapping.<locals>.ParentNr   r
   r
   r
   r   ParentU   r!   r6   c                   @   r   )z@TestInheritance.test_late_registration_mapping.<locals>.ChildPreNr   r
   r
   r
   r   ChildPreW   r!   r7   c                   @   r   )zETestInheritance.test_late_registration_mapping.<locals>.GrandchildPreNr   r
   r
   r
   r   GrandchildPreY   r!   r8   c                   @   r   )zATestInheritance.test_late_registration_mapping.<locals>.ChildPostNr   r
   r
   r
   r   	ChildPost\   r!   r9   c                   @   r   )zFTestInheritance.test_late_registration_mapping.<locals>.GrandchildPostNr   r
   r
   r
   r   GrandchildPost^   r!   r:   r   )r&   r(   r3   registerr,   r   r   r   r6   r7   r8   r9   r:   r
   r
   r   test_late_registration_mappingT       z.TestInheritance.test_late_registration_mappingc                 C   r5   )Nc                   @   r   )z?TestInheritance.test_late_registration_sequence.<locals>.ParentNr   r
   r
   r
   r   r6   l   r!   r6   c                   @   r   )zATestInheritance.test_late_registration_sequence.<locals>.ChildPreNr   r
   r
   r
   r   r7   n   r!   r7   c                   @   r   )zFTestInheritance.test_late_registration_sequence.<locals>.GrandchildPreNr   r
   r
   r
   r   r8   p   r!   r8   c                   @   r   )zBTestInheritance.test_late_registration_sequence.<locals>.ChildPostNr   r
   r
   r
   r   r9   s   r!   r9   c                   @   r   )zGTestInheritance.test_late_registration_sequence.<locals>.GrandchildPostNr   r
   r
   r
   r   r:   u   r!   r:   r   )r&   r(   r)   r;   r,   r   r   r<   r
   r
   r   test_late_registration_sequencek   r>   z/TestInheritance.test_late_registration_sequenceN)
r   r   r   staticmethodr   r   r-   r4   r=   r?   r
   r
   r
   r   r      s    

r   c                   @   s	  e Z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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d/d0 Zd1d2 Zd3d4 Zd5d6 Zd7d8 Zd9d: Zd;d< Z d=d> Z!d?d@ Z"dAdB Z#dCdD Z$dEdF Z%dGdH Z&dIdJ Z'dKdL Z(dMdN Z)dOdP Z*dQdR Z+dSdT Z,dUdV Z-dWdX Z.dYdZ Z/d[d\ Z0d]d^ Z1d_d` Z2dadb Z3dcdd Z4dedf Z5dgdh Z6didj Z7dkdl Z8dmdn Z9dodp Z:dqdr Z;dsdt Z<dudv Z=dwdx Z>dydz Z?d{d| Z@d}d~ ZAdd ZBdd ZCdd ZDdd ZEdd ZFdd ZGdd ZHdd ZIdd ZJdd ZKdd ZLdd ZMdd ZNdd ZOdd ZPdd ZQdd ZRdd ZSdd ZTdd ZUdd ZVdd ZWdd ZXdd ZYdd ZZdd Z[dd Z\dd Z]dd Z^dd Z_dd Z`dd Zadd Zbdd ZcddĄ ZdddƄ ZeddȄ Zfddʄ Zgdd̄ Zhdd΄ ZiddЄ Zjdd҄ ZkddԄ Zlddք Zmdd؄ Znddڄ Zodd܄ Zpddބ Zqdd Zrdd Zsdd Ztdd Zudd Zvdd Zwdd Zxdd Zydd Zzdd Z{dd Z|dd Z}dd Z~dd Zdd Zdd Zd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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d/d0 Zd1d2 Zd3d4 Zd5d6 Zd7d8 Zd9d: Zd;d< Zd=d> Zd?d@ ZdAdB ZdCdD ZdEdF ZdGdH ZdIdJ ZdKdL ZdMdN ZdOdP ZdQdR ZdSdT ZdUdV ZdWdX ZdYdZ Zd[d\ Zd]d^ Zd_d` Zdadb Zdcdd Zdedf Zdgdh Zdidj Zdkdl Zdmdn Zdodp Zdqdr Zdsdt Zdudv Zdwdx Zdydz 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ː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א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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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dS (  	TestPatmac                 C   s   ddkrd}|  |d d S )Nr   TassertIsr   r   r
   r
   r   test_patma_000   s   zTestPatma.test_patma_000c                 C   s&   d dkr	 dkrd}|  |d d S )Nr   FTrB   rD   r
   r
   r   test_patma_001   s
   
zTestPatma.test_patma_001c                 C   s,   d dkr	 d}ndkrd}|  |d d S )Nr   TFrB   rD   r
   r
   r   test_patma_002   s   
zTestPatma.test_patma_002c                 C   sH   d}d dkrn dkrn dkrn dkrn n d}|  |d d S )NFr            TrB   rD   r
   r
   r   test_patma_003   
   .zTestPatma.test_patma_003c                 C   sH   d}d dkrn dkrn dkrn dkrn n d}|  |d d S )NFrH   r   rI   rJ   TrB   rD   r
   r
   r   test_patma_004   rL   zTestPatma.test_patma_004c                 C   sH   d}d dkrn dkrn dkrn dkrn n d}|  |d d S )NFrI   r   rH   rJ   TrB   rD   r
   r
   r   test_patma_005   rL   zTestPatma.test_patma_005c                 C   sH   d}d dkrn dkrn dkrn dkrn n d}|  |d d S )NFrJ   r   rH   rI   TrB   rD   r
   r
   r   test_patma_006   rL   zTestPatma.test_patma_006c                 C   sH   d}d dkrn dkrn dkrn dkrn n d}|  |d d S )NF   r   rH   rI   rJ   TrB   rD   r
   r
   r   test_patma_007   rL   zTestPatma.test_patma_007c                 C   sB   d}G dd d}| |j kr}n | |d | |j d d S )Nr   c                   @      e Zd ZdZdS )z#TestPatma.test_patma_008.<locals>.ArH   N)r   r   r   r   r
   r
   r
   r   A       rS   rH   )r   r,   )r   r   rS   zr
   r
   r   test_patma_008   s   zTestPatma.test_patma_008c                 C   s~   G dd d}d }|r d}n   }||kr|r d}n|j kr$d}| |j d | |d | |d | |d d S )Nc                   @   rR   )z#TestPatma.test_patma_009.<locals>.Ar   Nr   r   r   Br
   r
   r
   r   rS      rT   rS   r   rH   rI   rX   r,   )r   rS   r   rU   r   r
   r
   r   test_patma_009   s   
zTestPatma.test_patma_009c                 C   (   d  r dkr d}n |  |d d S Nr
   r   r,   rD   r
   r
   r   test_patma_010   
   zTestPatma.test_patma_010c                 C   2   d  r^ }d}n |  |g d |  |d d S Nr   rH   rI   r   r]   r   r   r   r
   r
   r   test_patma_011      zTestPatma.test_patma_011c                 C   @   d  r dkr^dkr}d}n |  |ddg |  |d d S Nrb   rH   r   rI   r]   rc   r
   r
   r   test_patma_012      zTestPatma.test_patma_012c                 C   F   d  r dkr^dkrdkr}d}n  |  |dg |  |d d S Nrb   rI   r   rH   r]   rc   r
   r
   r   test_patma_013      zTestPatma.test_patma_013c                 C   L   d  r dkr^dkrdkrdkr}d}n   |  |g  |  |d d S Nrb   rJ   r   rH   rI   r]   rc   r
   r
   r   test_patma_014      "zTestPatma.test_patma_014c                 C   D   d  r dkr^ dkr}d}n |  |ddg |  |d d S Nrb   rH   rI   r   r]   rc   r
   r
   r   test_patma_015      zTestPatma.test_patma_015c                 C   J   d  r dkr^ dkrdkr}d}n  |  |dg |  |d d S Nrb   rI   rH   r   r]   rc   r
   r
   r   test_patma_016       zTestPatma.test_patma_016c                 C   P   d  r dkr^ dkrdkrdkr}d}n   |  |g  |  |d d S ro   r]   rc   r
   r
   r   test_patma_017     &zTestPatma.test_patma_017c                 C   J   d  r dkr^dkrdkr}d}n  |  |dg |  |d d S rk   r]   rc   r
   r
   r   test_patma_018  ry   zTestPatma.test_patma_018c                 C   P   d  r dkr^dkrdkrdkr}d}n   |  |g  |  |d d S ro   r]   rc   r
   r
   r   test_patma_019  r|   zTestPatma.test_patma_019c                 C   P   d  r dkr^dkrdkrdkr}d}n   |  |g  |  |d d S ro   r]   rc   r
   r
   r   test_patma_020  r|   zTestPatma.test_patma_020c                 C   r`   ra   r]   rc   r
   r
   r   test_patma_021#  re   zTestPatma.test_patma_021c                 C   s0   i }| r	 d}n |  |i  |  |d d S Nr   r]   rc   r
   r
   r   test_patma_022*  s   zTestPatma.test_patma_022c                 C   s8   ddi}| r d}n |  |ddi |  |d d S r   r]   rc   r
   r
   r   test_patma_0232  s   zTestPatma.test_patma_023c                 C   sV   i }d }| r dkrd! r d dkr   d}n   |  |i  | |d  d S NrH   r   r   r,   rC   rc   r
   r
   r   test_patma_024:  s   $zTestPatma.test_patma_024c                 C   s   ddi}| r/ dkr/d! r- d   dkrn dkrn dkr!n n	    }d}n    |  |ddi |  |d |  |d d S Nr   rH   rI   r   r]   r   r   rU   r   r
   r
   r   test_patma_025C     HzTestPatma.test_patma_025c                 C   s   ddi}| r/ dkr/d! r- d   dkrn dkrn dkr!n n	    }d}n    |  |ddi |  |d |  |d d S r   r]   r   r
   r
   r   test_patma_026L  r   zTestPatma.test_patma_026c                 C   s   ddi}| r/ dkr/d! r- d   dkrn dkrn dkr!n n	    }d}n    |  |ddi |  |d |  |d d S )Nr   rI   rH   r   r]   r   r
   r
   r   test_patma_027U  r   zTestPatma.test_patma_027c                 C   s   ddi}d }| r1 dkr1d! r/ d   dkrn dkrn dkr#n n	    }d}n    |  |ddi | |d  d S )Nr   rJ   rH   rI   r   r   r   r   r   rU   r
   r
   r   test_patma_028^  s   HzTestPatma.test_patma_028c                 C   s  i }d }|  r- dkr-d! r+ d   r* dkr*\dkr)dkr* r*     d}nJ       rg dkrgd! re d   rd dkrd\dkrcdkrd rd  d   rd dkrd\  rd dkrd     d}n       rr dkrr d}n |  |i  | |d  d S NrH   r   rJ   rI   r   r   rH   r   rc   r
   r
   r   test_patma_029g  s   B
d
zTestPatma.test_patma_029c                 C   s  dddi fi}|  r0 dkr0d! r. d   r- dkr-\dkr,dkr- r-     d}nJ       rj dkrjd	! rh d   rg dkrg\dkrfdkrg rg  d   rg dkrg\  rg dkrg     d}n       ru dkru d}n |  |dddi fi |  |d d S )
NFT       @rH   r   rJ   rI   r   r   r]   rc   r
   r
   r   test_patma_030t  s   B
d
zTestPatma.test_patma_030c                 C   s  ddi fg gdd}|  r3 dkr3d! r1 d   r0 dkr0\dkr/dkr0 r0     d}nJ       rm dkrmd	! rk d   rj dkrj\dkridkrj rj  d   rj dkrj\  rj dkrj     d}n       rx dkrx d}n |  |ddi fg gdd |  |d d S )
NTr   r   FrH   rI   rH   rJ   rI   r   r   r]   rc   r
   r
   r   test_patma_031  s   B
d
zTestPatma.test_patma_031c                 C   s  ddi fg gdd}|  r/ dkr/d! r- d   r, dkr,\dkr,dkr-    d}nI      ri dkrid	! rg d   rf dkrf\dkredkrf rf  d   rf dkrf\  rf dkrf     d}n       rt dkrt d}n |  |ddi fg gdd |  |d d S )
NTr   r   r   rH   rI   rJ   r   r   r]   rc   r
   r
   r   test_patma_032  s   <d
zTestPatma.test_patma_032c                 C   s   g }|  r+ dkr+d! r) d   r( dkr(\dkr'dkr( r(     d}nJ       re dkred! rc d   rb dkrb\dkradkrb rb  d   rb dkrb\  rb dkrb     d}n       rp dkrp d}n |  |g  |  |d d S r   r]   rc   r
   r
   r   test_patma_033  s   B
d
zTestPatma.test_patma_033c              
   C     ddi}|  r- dkr-d! r+ d   r* dkr*\dkr)dkr* r*     d}n        r^ dkr^d! r\ d    rO dkrO\dkrNdkrO rO n	   du rUn n    nc     r dkrd! r d   r~ dkr~\  r~ dkr~    nA      r dkrd! r d   r dkr\dkrdkr r    n        r dkr n  dkrn  r n  n  d}n  r dkr d}n |  |ddi |  |d d S )	Nr   rH   rJ   rI   FXr   rH   r]   rc   r
   r
   r   test_patma_034     B
( zTestPatma.test_patma_034c              
   C   r   )	Nr   rH   rJ   rI   Tr   r   r   r]   rc   r
   r
   r   test_patma_035  r   zTestPatma.test_patma_035c                 C   sJ   d}| dkrn dkrn dkrn n d}|  |d |  |d d S Nr   rH   rI   r]   rc   r
   r
   r   test_patma_036     $zTestPatma.test_patma_036c                 C   sJ   d}| dkrn dkrn dkrn n d}|  |d |  |d d S NrH   r   rI   r]   rc   r
   r
   r   test_patma_037  r   zTestPatma.test_patma_037c                 C   sJ   d}| dkrn dkrn dkrn n d}|  |d |  |d d S NrI   r   rH   r]   rc   r
   r
   r   test_patma_038  r   zTestPatma.test_patma_038c                 C   sN   d}d }| dkr
n dkrn dkrn n d}|  |d | |d  d S NrJ   r   rH   rI   r   rc   r
   r
   r   test_patma_039  s   $zTestPatma.test_patma_039c                 C   sr   d}|  dkr	n   dkrn
   dkrn  n }||d kr%d}|  |d |  |d |  |d d S r   r]   r   r
   r
   r   test_patma_040     @zTestPatma.test_patma_040c                 C   sr   d}|  dkr	n   dkrn
   dkrn  n }||d kr%d}|  |d |  |d |  |d d S r   r]   r   r
   r
   r   test_patma_041  r   zTestPatma.test_patma_041c                 C   sv   d}d }|  dkrn   dkrn
   dkrn  n }||d kr'd}|  |d | |d  |  |d d S r   r   r   r
   r
   r   test_patma_042  s   @zTestPatma.test_patma_042c                 C   sj   d}d }|  dkrn   dkrn
   dkrn  n }||d kr'd}|  |d | |d  d S r   r   r   r
   r
   r   test_patma_043  s   @zTestPatma.test_patma_043c                 C   8   d}|  r dkr d}n |  |d |  |d d S r\   r]   rc   r
   r
   r   test_patma_044     zTestPatma.test_patma_044c                 C   r   r\   r]   rc   r
   r
   r   test_patma_045
  r   zTestPatma.test_patma_045c                 C   s>   d}|  r dkr\dkrd}n |  |d |  |d d S )Nr   rH   r   r]   rc   r
   r
   r   test_patma_046  s   zTestPatma.test_patma_046c                 C   sF   d}|  r dkr\  r dkr d}n |  |d |  |d d S )N)r
   rH   r   r]   rc   r
   r
   r   test_patma_047  s   zTestPatma.test_patma_047c                 C   st   ddg}|   r dkr\dkrdkrn    r$ dkr$\dkr$dkr%n  n d}|  |ddg |  |d d S r   r]   rc   r
   r
   r   test_patma_048"     FzTestPatma.test_patma_048c                 C   st   ddg}|   r dkr\dkrdkrn    r$ dkr$\dkr$dkr%n  n d}|  |ddg |  |d d S r   r]   rc   r
   r
   r   test_patma_049*  r   zTestPatma.test_patma_049c                 C   sx   ddg}d }|   r dkr\dkrdkrn    r& dkr&\dkr&dkr'n  n d}|  |ddg | |d  d S )Nr   rI   rH   r   rc   r
   r
   r   test_patma_0502  s   FzTestPatma.test_patma_050c                 C   s   d }ddg}|   r dkr\ dkr} d}n7    r" dkr"\n(    r= dkr=\dkr=  dkr4n dkr9n n n    rG dkrG\n  n }d}|  |d  | |ddg | |d | |d d S r   rC   r,   r   wr   r   rU   r
   r
   r   test_patma_051;  s   hzTestPatma.test_patma_051c                 C   s   ddg}|   r dkr\dkr d}n-    r/ dkr/\dkr/dkr0|d d  }r0 d}n   r@ dkr@\dkr@dkrAd}n |  |g  |  |d d S r   r]   rc   r
   r
   r   test_patma_052H  s   .zTestPatma.test_patma_052c                 C   sF   dh}d }|  r dkr\dkrd}n |  |dh | |d  d S Nr   rH   r   rc   r
   r
   r   test_patma_053T  s   zTestPatma.test_patma_053c                 C   s@   t  }d }|  r dkr d}n | |t   | |d  d S r   setr,   rC   rc   r
   r
   r   test_patma_054]  s   zTestPatma.test_patma_054c                 C   sL   t g d}d }|  r dkr d}n | g |g d | |d  d S )NrH   rI   rJ   r   )iterr,   rC   rc   r
   r
   r   test_patma_055f  s   zTestPatma.test_patma_055c                 C   s<   i }d }|  r dkr d}n |  |i  | |d  d S r   r   rc   r
   r
   r   test_patma_056o  s   zTestPatma.test_patma_056c                 C   sT   ddd}d }|  r dkr\dkrdkrd}n |  |ddd | |d  d S )NFTr   rI   r   rH   r   rc   r
   r
   r   test_patma_057x  s   
zTestPatma.test_patma_057c                 C   ,   d}|dkrd}|  |d |  |d d S r   r]   rc   r
   r
   r   test_patma_058     zTestPatma.test_patma_058c                 C   s0   d}d }|du r
d}|  |d |  |d  d S )Nr   Fr]   rc   r
   r
   r   test_patma_059     zTestPatma.test_patma_059c                 C   0   d}d }|dkr
d}|  |d | |d  d S r   r   rc   r
   r
   r   test_patma_060  r   zTestPatma.test_patma_060c                 C   s0   d}d }|d u r
d}|  |d | |d  d S r   r   rc   r
   r
   r   test_patma_061  r   zTestPatma.test_patma_061c                 C   <   d}| dkr d}ndkrd}|  |d |  |d d S r   r]   rc   r
   r
   r   test_patma_062     
zTestPatma.test_patma_062c                 C   s@   d}d }| dkr d}ndkrd}|  |d | |d  d S r   r   rc   r
   r
   r   test_patma_063     
zTestPatma.test_patma_063c                 C   s<   d}| dkr d}ndkrd}|  |d |  |d d S )Nr   r   r   rH   r]   rc   r
   r
   r   test_patma_064  r   zTestPatma.test_patma_064c                 C   <   d}| dkr d}ndkrd}|  |d |  |d d S )Nr   r   r   rH   r]   rc   r
   r
   r   test_patma_065  r   zTestPatma.test_patma_065c                 C   r   )Nr    r   rH   r]   rc   r
   r
   r   test_patma_066  r   zTestPatma.test_patma_066c                 C   r   )N   x   yr   rH   r]   rc   r
   r
   r   test_patma_067  r   zTestPatma.test_patma_067c                 C   s6   d}| dkr	 dkrd}|  |d |  |d d S Nr   FrH   r]   rc   r
   r
   r   test_patma_068  s   
zTestPatma.test_patma_068c                 C   s8   d}d }| dkr
	 dkr	 |  |d | |d  d S r   r   rc   r
   r
   r   test_patma_069  s   
zTestPatma.test_patma_069c                 C   s<   d}| dkr d}ndkrd}|  |d |  |d d S )Nr   TrH   r]   rc   r
   r
   r   test_patma_070  r   zTestPatma.test_patma_070c                 C   r   r   r]   rc   r
   r
   r   test_patma_071   r   zTestPatma.test_patma_071c                 C   s@   d}| dkr d}ndkrd}d}|  |d |  |d d S )Nr   TrH   rI   r]   rc   r
   r
   r   test_patma_072
  s   
zTestPatma.test_patma_072c                 C   s:   d}| dkr	 dkrd}d}|  |d |  |d d S r   r]   rc   r
   r
   r   test_patma_073  s   
zTestPatma.test_patma_073c                 C   sH   d}d }| dkrd }s d}ndkrd}|  |d | |d  d S r   r   rc   r
   r
   r   test_patma_074   s   zTestPatma.test_patma_074c                 C   sL   d}|   r dkr\dkr d}n dkrd}|  |d |  |d d S )Nr   rH   r   r]   rc   r
   r
   r   test_patma_075+  s   zTestPatma.test_patma_075c                 C   s   d}|   r dkr\dkr d}n&    r" dkr"\dkr# d}n    r2 dkr2\dkr3 d}n dkr8d}|  |d |  |d d S )Nr   rH   r   r   x   rI   rP   r]   rc   r
   r
   r   test_patma_0765  s   zTestPatma.test_patma_076c                 C   sT   t d}d }|   r dkr\dkr d}n dkrd}| |d | |d  d S )Nr   rH   r   r   	bytearrayr,   rC   rc   r
   r
   r   test_patma_077C  s   zTestPatma.test_patma_077c                 C   sf   d}|   r dkr  d}n    r dkr\dkr  d}n dkr%d}|  |d |  |d d S )Nr   r   rH   rI   r]   rc   r
   r
   r   test_patma_078N  s   zTestPatma.test_patma_078c                 C   z   d}|   r dkr\dkrdkrdkr d}n     r) dkr)\dkr* d}n dkr/d}|  |d |  |d d S )NZxxxrJ   r   r   rH   rI   r]   rc   r
   r
   r   test_patma_079Z     $zTestPatma.test_patma_079c                 C   r   )Ns   xxxrJ   r   r   rH   rI   r]   rc   r
   r
   r   test_patma_080f  r   zTestPatma.test_patma_080c                 C   sX   d}| dkrd }s d}n	 dkr}d}n |  |d |  |d |  |d d S r   r]   r   r
   r
   r   test_patma_081r  s   
zTestPatma.test_patma_081c                 C   sJ   d}|  dkr}d }s d}n dkrd}|  |d |  |d d S r   r]   r   r
   r
   r   test_patma_082}  s   zTestPatma.test_patma_082c                 C   s@   d}| dkr}d}n |  |d |  |d |  |d d S r   r]   r   r
   r
   r   test_patma_083  s   
zTestPatma.test_patma_083c                 C   s8   d}d }| dkr}d}n |  |d | |d  d S r   r   r   r
   r
   r   test_patma_084  s   
zTestPatma.test_patma_084c                 C   sX   d}d }| dkr}d }rd}n |  |d |  |d | |d  |  |d d S r   r   r   r   r   rU   r   r
   r
   r   test_patma_085  s   zTestPatma.test_patma_085c                 C   R   d}|  dkr}}d}n  |  |d |  |d |  |d |  |d d S r   r]   r   r   r   rU   r   r
   r
   r   test_patma_086     zTestPatma.test_patma_086c                 C   sT   d}|  dkr	n dkrn n n dkrn n d}|  |d |  |d d S r   r]   rc   r
   r
   r   test_patma_087     .zTestPatma.test_patma_087c                 C   sT   d}|  dkr	n dkrn n n dkrn n d}|  |d |  |d d S r   r]   rc   r
   r
   r   test_patma_088  r   zTestPatma.test_patma_088c                 C   sT   d}|  dkr	n dkrn n n dkrn n d}|  |d |  |d d S r   r]   rc   r
   r
   r   test_patma_089  r   zTestPatma.test_patma_089c                 C   sX   d}d }|  dkrn dkrn n n dkrn n d}|  |d | |d  d S r   r   rc   r
   r
   r   test_patma_090     .zTestPatma.test_patma_090c                 C   sT   d}| dkrn  dkrn dkrn n n n d}|  |d |  |d d S r   r]   rc   r
   r
   r   test_patma_091  r   zTestPatma.test_patma_091c                 C   sT   d}| dkrn  dkrn dkrn n n n d}|  |d |  |d d S r   r]   rc   r
   r
   r   test_patma_092  r   zTestPatma.test_patma_092c                 C   sT   d}| dkrn  dkrn dkrn n n n d}|  |d |  |d d S r   r]   rc   r
   r
   r   test_patma_093  r   zTestPatma.test_patma_093c                 C   sX   d}d }| dkr
n  dkrn dkrn n n n d}|  |d | |d  d S r   r   rc   r
   r
   r   test_patma_094  r   zTestPatma.test_patma_094c                 C   r   r   r]   rc   r
   r
   r   test_patma_095  r   zTestPatma.test_patma_095c                 C   ,   d}|dkrd}|  |d |  |d d S )Nr   g       r]   rc   r
   r
   r   test_patma_096  r   zTestPatma.test_patma_096c                 C   r  Nr   y              r]   rc   r
   r
   r   test_patma_097   r   zTestPatma.test_patma_097c                 C   r  r  r]   rc   r
   r
   r   test_patma_098  r   zTestPatma.test_patma_098c                 C   ,   d}|dkrd}|  |d |  |d d S )Nr   r]   rc   r
   r
   r   test_patma_099  r   zTestPatma.test_patma_099c                 C   r  )Ng      r   r]   rc   r
   r
   r   test_patma_100  r   zTestPatma.test_patma_100c                 C   r  )Ny             r   r]   rc   r
   r
   r   test_patma_101   r   zTestPatma.test_patma_101c                 C   r  )Ny             r   r]   rc   r
   r
   r   test_patma_102(  r   zTestPatma.test_patma_102c                 C   r  Nr                   r]   rc   r
   r
   r   test_patma_1030  r   zTestPatma.test_patma_103c                 C   r  r  r]   rc   r
   r
   r   test_patma_1048  r   zTestPatma.test_patma_104c                 C   r  r  r]   rc   r
   r
   r   test_patma_105@  r   zTestPatma.test_patma_105c                 C   r  r  r]   rc   r
   r
   r   test_patma_106H  r   zTestPatma.test_patma_106c                 C   r  )Ny      ?      ?r   r]   rc   r
   r
   r   test_patma_107P  r   zTestPatma.test_patma_107c                 C   r  )Ny      ?      r   r]   rc   r
   r
   r   test_patma_108X  r   zTestPatma.test_patma_108c                 C   r  )Ny      п      ?r   r]   rc   r
   r
   r   test_patma_109`  r   zTestPatma.test_patma_109c                 C   r  )Ny      п      r   r]   rc   r
   r
   r   test_patma_110h  r   zTestPatma.test_patma_110c                 C   sJ   G dd d}d}||j krd}| |j d | |d | |d d S )Nc                   @   rR   )z#TestPatma.test_patma_111.<locals>.Ar   NrW   r
   r
   r
   r   rS   q  rT   rS   r   rY   r   rS   r   r   r
   r
   r   test_patma_111p  s   zTestPatma.test_patma_111c                 C   sN   G dd d}d}||j jkrd}| |j jd | |d | |d d S )Nc                   @      e Zd ZG dd dZdS )z#TestPatma.test_patma_112.<locals>.Ac                   @   rR   )z%TestPatma.test_patma_112.<locals>.A.Br   Nr   r   r   r    r
   r
   r
   r   rX   }  rT   rX   NrW   r
   r
   r
   r   rS   |      rS   r   )rX   r    r,   r  r
   r
   r   test_patma_112{  s   
zTestPatma.test_patma_112c                 C   sr   G dd d}d}| |j jkr d}n|j jkrd}| |j jd | |j jd | |d | |d d S )Nc                   @   r  )z#TestPatma.test_patma_113.<locals>.Ac                   @      e Zd ZdZdZdS )z%TestPatma.test_patma_113.<locals>.A.Br   rH   N)r   r   r   r    Dr
   r
   r
   r   rX         rX   NrW   r
   r
   r
   r   rS     r  rS   rH   r   rX   r    r"  r,   r  r
   r
   r   test_patma_113  s   
zTestPatma.test_patma_113c                 C   sR   G dd d}d}||j jjkrd}| |j jjd | |d | |d d S )Nc                   @   r  )z#TestPatma.test_patma_114.<locals>.Ac                   @   r  )z%TestPatma.test_patma_114.<locals>.A.Bc                   @   rR   )z'TestPatma.test_patma_114.<locals>.A.B.Cr   N)r   r   r   r"  r
   r
   r
   r   r      rT   r    Nr  r
   r
   r
   r   rX     r  rX   NrW   r
   r
   r
   r   rS     r  rS   r   r$  r  r
   r
   r   test_patma_114  s   zTestPatma.test_patma_114c                 C   sz   G dd d}d}| |j jjkr d}n|j jjkrd}| |j jjd | |j jjd | |d | |d d S )Nc                   @   r  )z#TestPatma.test_patma_115.<locals>.Ac                   @   r  )z%TestPatma.test_patma_115.<locals>.A.Bc                   @   r!  )z'TestPatma.test_patma_115.<locals>.A.B.Cr   rH   N)r   r   r   r"  Er
   r
   r
   r   r      r#  r    Nr  r
   r
   r
   r   rX     r  rX   NrW   r
   r
   r
   r   rS     r  rS   rH   r   )rX   r    r"  r'  r,   r  r
   r
   r   test_patma_115  s   zTestPatma.test_patma_115c                 C   s8   d }}|}d}|  |d |  |d |  |d d S r   r]   r   matchcaser   r
   r
   r   test_patma_116     zTestPatma.test_patma_116c                 C   s8   d }}|}d}|  |d |  |d |  |d d S r   r]   r)  r
   r
   r   test_patma_117  r-  zTestPatma.test_patma_117c                 C   sR   g }|   r dkr  d}n   r dkr d}n |  |g  |  |d d S )NrH   r   r]   rc   r
   r
   r   test_patma_118  s   zTestPatma.test_patma_118c                 C   sj   t t}|  r dkrd! r d dkr    d}n
    r& d}n | |i  | |d d S r   r&   defaultdictr   r,   rc   r
   r
   r   test_patma_119  s   
(zTestPatma.test_patma_119c                 C   s   t t}|  r dkrd! r d dkr    d}n    r/d! r- "  }d}n   | |i  | |d | |i  d S )NrH   r   r   r
   r0  r   r
   r
   r   test_patma_120  s   
(zTestPatma.test_patma_120c                 C   r[   r\   r]   rD   r
   r
   r   test_patma_121  r_   zTestPatma.test_patma_121c                 C   r`   ra   r]   rc   r
   r
   r   test_patma_122  re   zTestPatma.test_patma_122c                 C   rf   rg   r]   rc   r
   r
   r   test_patma_123  ri   zTestPatma.test_patma_123c                 C   rj   rk   r]   rc   r
   r
   r   test_patma_124  rm   zTestPatma.test_patma_124c                 C   rn   ro   r]   rc   r
   r
   r   test_patma_125  rq   zTestPatma.test_patma_125c                 C   rr   rs   r]   rc   r
   r
   r   test_patma_126  ru   zTestPatma.test_patma_126c                 C   rv   rw   r]   rc   r
   r
   r   test_patma_127  ry   zTestPatma.test_patma_127c                 C   rz   ro   r]   rc   r
   r
   r   test_patma_128  r|   zTestPatma.test_patma_128c                 C   r}   rk   r]   rc   r
   r
   r   test_patma_129  ry   zTestPatma.test_patma_129c                 C   r   ro   r]   rc   r
   r
   r   test_patma_130$  r|   zTestPatma.test_patma_130c                 C   r   ro   r]   rc   r
   r
   r   test_patma_131+  r|   zTestPatma.test_patma_131c                 C   r`   ra   r]   rc   r
   r
   r   test_patma_1322  re   zTestPatma.test_patma_132c                 C   s   t tddi}|  r" dkr"d! r  d dkr     d}n$     r< dkr<d! r: d dkr:    d}n
    rC d}n | |ddi | |d d S Nr   rH   rI   r   r   r0  rc   r
   r
   r   test_patma_1339  s   ((zTestPatma.test_patma_133c                 C   s   t tddi}|  r" dkr"d! r  d dkr     d}n-     r< dkr<d! r: d dkr:    d}n    rLd! rJ "  }d}n   | |ddi | |d | |ddi d S )Nr   rH   rI   r   r   r
   r0  r   r
   r
   r   test_patma_134E  s   ((zTestPatma.test_patma_134c                 C   s   t tddi}|  r" dkr"d! r  d dkr     d}n1     r< dkr<d! r: d dkr:    d}n    rP dkrPd! rN "  }d}n   | |ddi | |d | |i  d S r@  r0  r   r
   r
   r   test_patma_135R  s   ((zTestPatma.test_patma_135c                 C   s   ddi}|  r dkrd! r d dkr    d}n$     r8 dkr8d! r6 d dkr6    d}n
    r? d}n |  |ddi |  |d d S Nr   rH   r   r   r]   rc   r
   r
   r   test_patma_136_  s   ((zTestPatma.test_patma_136c                 C   s   ddi}|  r dkrd! r d dkr    d}n-     r8 dkr8d! r6 d dkr6    d}n    rHd! rF "  }d}n   |  |ddi |  |d |  |ddi d S )Nr   rH   r   r   r
   r]   r   r
   r
   r   test_patma_137k  s   ((zTestPatma.test_patma_137c                 C   s   ddi}|  r dkrd! r d dkr    d}n1     r8 dkr8d! r6 d dkr6    d}n    rL dkrLd! rJ "  }d}n   |  |ddi |  |d |  |i  d S rD  r]   r   r
   r
   r   test_patma_138x  s   ((zTestPatma.test_patma_138c                 C   J   d}|t dr d  }d}n | |d | |d | || d S )NFr
   r   boolrC   r,   r   r
   r
   r   test_patma_139     zTestPatma.test_patma_139c                 C   rH  )NTr
   r   rI  r   r
   r
   r   test_patma_140  rL  zTestPatma.test_patma_140c                 C   N   t  }|t dr d  }d}n | |t   | |d | || d S r\   r   r   r
   r
   r   test_patma_141     zTestPatma.test_patma_141c                 C   J   d}|t dr d  }d}n | |d | |d | || d S )N    r
   r   )bytesr,   rC   r   r
   r
   r   test_patma_142  rL  zTestPatma.test_patma_142c                 C   sJ   i }|t dr d  }d}n | |i  | |d | || d S r\   )r+   r,   rC   r   r
   r
   r   test_patma_143  rL  zTestPatma.test_patma_143c                 C   rQ  )N        r
   r   )floatr,   rC   r   r
   r
   r   test_patma_144  rL  zTestPatma.test_patma_144c                 C   rN  r\   )	frozensetr,   rC   r   r
   r
   r   test_patma_145  rP  zTestPatma.test_patma_145c                 C   sJ   d}|t dr d  }d}n | |d | |d | || d S )Nr   r
   )r   r,   rC   r   r
   r
   r   test_patma_146  rL  zTestPatma.test_patma_146c                 C   sJ   g }|t dr d  }d}n | |g  | |d | || d S r\   )r*   r,   rC   r   r
   r
   r   test_patma_147  rL  zTestPatma.test_patma_147c                 C   rN  r\   r   r   r
   r
   r   test_patma_148  rP  zTestPatma.test_patma_148c                 C   rQ  )Nr   r
   r   )strr,   rC   r   r
   r
   r   test_patma_149  rL  zTestPatma.test_patma_149c                 C   sJ   d}|t dr d  }d}n | |d | |d | || d S r\   )tupler,   rC   r   r
   r
   r   test_patma_150  rL  zTestPatma.test_patma_150c                 C   sH   d}|f  r dkr\}d}n |  |d | || | |d d S r   r   r   r
   r
   r   test_patma_151  s   zTestPatma.test_patma_151c                 C   sh   d}d}||f  r dkr\}}d}n |  |d |  |d | || | || |  |d d S )Nr   rI   r   )r   r   r   r   rU   vr
   r
   r   test_patma_152  s   zTestPatma.test_patma_152c                 C   sh   d}| }f  r dkr\ }}d}n |  |d | || |  |d | || | || d S r   r   )r   r   r   r   rc  rU   r
   r
   r   test_patma_153  s   zTestPatma.test_patma_153c                 C   s4   d}d }|dkr|rd}|  |d | |d  d S r   r   rc   r
   r
   r   test_patma_154  s   
zTestPatma.test_patma_154c                 C   r   )Nr   g      r   rc   r
   r
   r   test_patma_155  r   zTestPatma.test_patma_155c                 C   s4   d}|}d}|  |d |  |d | || d S r   r   r   r
   r
   r   test_patma_156#  s   zTestPatma.test_patma_156c                 C   s0   d}d }| |r
d}|  |d | |d  d S r   r   rc   r
   r
   r   test_patma_157,  r   zTestPatma.test_patma_157c                 C   s<   d}| dkr d}ndkrd}|  |d |  |d d S )Nr   g      rH   r]   rc   r
   r
   r   test_patma_1585  r   zTestPatma.test_patma_158c                 C   s@   d}| dkr|s d}ndkrd}|  |d |  |d d S r   r]   rc   r
   r
   r   test_patma_159?     zTestPatma.test_patma_159c                 C   sL   d}d }| dkr d}n}|rd}|  |d |  |d | |d  d S r   r   r   r
   r
   r   test_patma_160I     
zTestPatma.test_patma_160c                 C   s4   d}|dkr	d}n	 d}|  |d |  |d d S r   r]   rc   r
   r
   r   test_patma_161U     zTestPatma.test_patma_161c                 C   s@   d}| dkr|r d}ndkrd}|  |d |  |d d S r   r]   rc   r
   r
   r   test_patma_162_  rl  zTestPatma.test_patma_162c                 C   sD   d}d }| dkr d}ndkr|sd}|  |d | |d  d S r   r   rc   r
   r
   r   test_patma_163i  s   

zTestPatma.test_patma_163c                 C   sD   d}| dkr d}n}d}|  |d |  |d | || d S r   r   r   r
   r
   r   test_patma_164t     
zTestPatma.test_patma_164c                 C   s8   d}|dkr|rd}n	 d}|  |d |  |d d S r   r]   rc   r
   r
   r   test_patma_165  s   
zTestPatma.test_patma_165c                 C   sL   d}| }|s d}ndkr|rd}|  |d |  |d | || d S r   r   r   r
   r
   r   test_patma_166  s   

zTestPatma.test_patma_166c                 C   sH   d}| }|s d}ndkrd}|  |d |  |d | || d S r   r   r   r
   r
   r   test_patma_167  s   
zTestPatma.test_patma_167c                 C   sD   d}| }|s d}n}d}|  |d |  |d | || d S r   r   r   r
   r
   r   test_patma_168  rt  zTestPatma.test_patma_168c                 C   sB   d}|}|s	d}n|rd}|  |d |  |d | || d S r   r   r   r
   r
   r   test_patma_169  s   zTestPatma.test_patma_169c                 C   s<   d}|  |s d}ndkrd}|  |d |  |d d S r   r]   rc   r
   r
   r   test_patma_170  r   zTestPatma.test_patma_170c                 C   s@   d}d }|  |r d}ndkrd}|  |d | |d  d S r   r   rc   r
   r
   r   test_patma_171  r   zTestPatma.test_patma_171c                 C   sL   d}d }|  |s d}n}|sd}|  |d |  |d | |d  d S r   r   r   r
   r
   r   test_patma_172  rn  zTestPatma.test_patma_172c                 C   s4   d}| |s	d}n	 d}|  |d |  |d d S r   r]   rc   r
   r
   r   test_patma_173  rp  zTestPatma.test_patma_173c                 C   s   dd }|  |dd |  |dd |  |dd |  |d	d
 |  |dd |  |dd |  |dd |  |dd d S )Nc                 S   sJ   |  dkr dS  dkr dS  dkr dS  dkr dS d	kr"d
S 	 dS )N  Bad request  Unauthorized  	Forbidden  	Not found  I'm a teapotSomething elser
   statusr
   r
   r   
http_error  s   



z,TestPatma.test_patma_174.<locals>.http_errorr~  r  r  r  r  r  r  r  r  r  {   r  400  r]   r   r  r
   r
   r   test_patma_174  s   zTestPatma.test_patma_174c                 C   s   dd }|  |dd |  |dd |  |dd |  |dd |  |d	d
 | |dd  | |dd  | |dd  d S )Nc                 S   sR   |  dkr dS   dkr  dS  dkr  dS  dkr!  dS  dkr'dS d S )	Nr~  r  r  r  r  Not allowedr  r  r
   r  r
   r
   r   r    s   
z,TestPatma.test_patma_175.<locals>.http_errorr~  r  r  r  r  r  r  r  r  r  r  r   r  r
   r
   r   test_patma_175  s   zTestPatma.test_patma_175c                 C   s\   dd }|  |dd |  |dd |  |dd |  |d	d
 |  |dd d S )Nc                 S   s   |    r dkr\dkrdkr dS     r% dkr%\dkr%} d| S     r9 dkr9\dkr9} d| S    rK dkrK\}}d| d| S  	 dS )NrI   r   OriginY=X=z, Y=Not a pointr
   pointr   r   r
   r
   r   whereis  s   

z)TestPatma.test_patma_176.<locals>.whereis)r   r   r  )r         Y=-1.0)r   r   X=X)N              ?zX=None, Y=1j*   r  r]   r   r  r
   r
   r   test_patma_176
  s   zTestPatma.test_patma_176c                 C   s   dd }|  |tddd |  |tddd |  |dd |  |td	d	d |  |tdd
d |  |tddd |  |td dd |  |td |  |dd d S )Nc                 S   s   |  t dr d dkr d dkr  dS   t dr. d dkr. d  } d| S   t drG d  d dkrF } d| S   t d rO dS  	 dS )	Nr
   r   rH   r  r  r  Somewhere elser  r   r  r
   r
   r   r    s   &$
$

z)TestPatma.test_patma_177.<locals>.whereisrH   r   zX=1r  
   r  Fr  r  r   r  r  r  r  r,   r   r  r
   r
   r   test_patma_177  s   zTestPatma.test_patma_177c                 C   8   dd }|  |tddd | |tddd  d S )Nc                 S   s,   | t dr d dkr d  }|S  d S )Nr
   r   rH   r  r  varr
   r
   r   r  5      z)TestPatma.test_patma_178.<locals>.whereisrH   r   r,   r   rC   r  r
   r
   r   test_patma_1784     zTestPatma.test_patma_178c                 C   r  )Nc                 S   s,   | t dr d dkr d  }|S  d S )Nr   r   rH   r  r  r
   r
   r   r  =  r  z)TestPatma.test_patma_179.<locals>.whereisrH   r   r  r  r
   r
   r   test_patma_179<  r  zTestPatma.test_patma_179c                 C   r  )Nc                 S   s,   | t d r d dkr d  }|S  d S )Nr   r   r   rH   r  r  r
   r
   r   r  E  r  z)TestPatma.test_patma_180.<locals>.whereisrH   r   r  r  r
   r
   r   test_patma_180D  r  zTestPatma.test_patma_180c                 C   r  )Nc                 S   s.   | t d r d  d dkr }|S   d S )N)r   r   r   rH   r  r  r
   r
   r   r  M  s    z)TestPatma.test_patma_181.<locals>.whereisrH   r   r  r  r
   r
   r   test_patma_181L  r  zTestPatma.test_patma_181c                 C   s   dd }|  |g d |  |tddgd |  |tddgd |  |tddtddgd |  |tddtddgd	 |  |tddtddgd
 |  |tddtddtddgd
 |  |tddtddtddgd
 d S )Nc                 S   s   |    r dkr  dS     r) dkr)\t dr) d dkr) d dkr)  dS     rJ dkrJ\t drJ d  d  }} d| d| S    r{ dkr{\t drz d dkrz d  t drz d dkrz d  }}d	| d| S   	 d
S )Nr   	No pointsrH   r
   
The originzSingle point z, rI   zTwo on the Y axis at r  r  )Zpointsr   r   y1y2r
   r
   r   r  U  s   40Nz)TestPatma.test_patma_182.<locals>.whereisr  r   r  rH   zSingle point 0, 1zTwo on the Y axis at 0, 0zTwo on the Y axis at 1, 1r  r  r  r
   r
   r   test_patma_182T  s      (,zTestPatma.test_patma_182c                 C   s   dd }|  |tddd |  |tddd |  |tddd |  |tddd |  |td	d	d
 |  |td	dd d S )Nc                 S   s`   |  t dr d  d  }}||kr d| S  t dr- d  d  }}dS  d S )Nr
   r   rH   zY=X at Not on the diagonalr  )r  r   r   r
   r
   r   r  k  s   *
z)TestPatma.test_patma_183.<locals>.whereisr   zY=X at 0FzY=X at Falsey            zY=X at (-1-1j)r   zY=X at Xr   r  r  r  r
   r
   r   test_patma_183j  s   zTestPatma.test_patma_183c                 C   s>   G dd dt jj}|   r dkr d}n | |d d S )Nc                   @      e Zd ZdZdd ZdS )z%TestPatma.test_patma_184.<locals>.SeqNc                 S      dS r   r
   r   r
   r
   r   __len__{     z-TestPatma.test_patma_184.<locals>.Seq.__len__r   r   r   __getitem__r  r
   r
   r
   r   Seqy      r  r   r&   r(   r)   r,   r   r  r   r
   r
   r   test_patma_184x  s   zTestPatma.test_patma_184c                 C   s6   G dd dt jj}|   r d}n | |d d S )Nc                   @   r  )z%TestPatma.test_patma_185.<locals>.SeqNc                 S   r  Nr  r
   r  r
   r
   r   r    r  z-TestPatma.test_patma_185.<locals>.Seq.__len__r  r
   r
   r
   r   r    r  r  r   r  r  r
   r
   r   test_patma_185  s   zTestPatma.test_patma_185c                 C   sn   G dd dt jj}|   r" dkr" d   d   }}d}n | |d | |d | |d d S )Nc                   @   s   e Zd Zdd Zdd ZdS )z%TestPatma.test_patma_186.<locals>.Seqc                 S   s   |S Nr
   )r   ir
   r
   r   r    r  z1TestPatma.test_patma_186.<locals>.Seq.__getitem__c                 S   r  r  r
   r  r
   r
   r   r    r  z-TestPatma.test_patma_186.<locals>.Seq.__len__Nr  r
   r
   r
   r   r    s    r  rI   r   rH   )   r  )r   r  r   r   rU   r
   r
   r   test_patma_186  s   &zTestPatma.test_patma_186c                 C   t   t d}|  r dkr^}}}d}n | |t d | |d | |d | |d | |tt dd d S )Nr  rI   r   rH   ranger,   r*   r   r   r   r   restrU   r
   r
   r   test_patma_187     zTestPatma.test_patma_187c                 C   r  )Nd   rI   r   rH   r  r  r
   r
   r   test_patma_188  r  zTestPatma.test_patma_188c                 C   r  )Ni  rI   r   rH   r  r  r
   r
   r   test_patma_189  r  zTestPatma.test_patma_189c                 C   l   t d}|  r dkr d  d  }}d}n | |t d | |d | |d | |d d S )Ni   rI   r   rH   r  r,   r   r
   r
   r   test_patma_190     "zTestPatma.test_patma_190c                 C   r  )Ni   rI   r   rH   r  r   r
   r
   r   test_patma_191  r  zTestPatma.test_patma_191c                 C   r  )Ni   @rI   r   rH   r  r   r
   r
   r   test_patma_192  r  zTestPatma.test_patma_192c                 C   s   ddd}| r! dkr!d! r d  d c   }}d}n   |  |ddd | ||d  | ||d  |  |d d S )Nr   rH   	bandwidthlatencyrI   r  r  r   )r   r   blr   r
   r
   r   test_patma_193  s   
,zTestPatma.test_patma_193c                 C   s   dddd}| r" dkr"d! r  d  d c   }}d}n   |  |dddd | ||d  | ||d  |  |d d S )	Nr   rH   valuer  r  keyrI   r  r  r  r  r   )r   r   r  r  r   r
   r
   r   test_patma_194  s   ,zTestPatma.test_patma_194c                 C   s   dddd}| r$ dkr$d	! r" d  d c "  }}}d}n   |  |dddd | ||d  | ||d  |  |ddi |  |d d S )
Nr   rH   r  r  rI   r  r  r  r  r   )r   r   r  r  r  r   r
   r
   r   test_patma_195  s   0zTestPatma.test_patma_195c                 C   s   ddd}| r# dkr#d! r! d  d c "  }}}d}n   |  |ddd | ||d  | ||d  |  |i  |  |d d S )Nr   rH   r  rI   r  r  r  r   )r   r   r  r  r  r   r
   r
   r   test_patma_196  s   
0zTestPatma.test_patma_196c                 C   s   t ddt ddg}|  r9 dkr9\t dr8 d  d   t dr6 d c d c c}}}}}d}n    | |t ddt ddg | ||d j | ||d j | ||d  | ||d j | ||d j | |d d S )Nr  r   rH   rI   r
   )r   r,   rC   r   r   )r   r   Zx1r  Zx2r  Zp2rU   r
   r
   r   test_patma_197  s   PzTestPatma.test_patma_197c                    s   G dd dt j  fdd}| | jd | | jd | | jd | | d  | |dd  | |d	d  | |d
d  | |dd  | |dd  | |dd  | |dd  | |dd  d S )Nc                   @      e Zd ZdZdZdZdS )z'TestPatma.test_patma_198.<locals>.Colorr   rH   rI   Nr   r   r   REDGREENBLUEr
   r
   r
   r   Color      r  c                    2   |   j kr	 dS   jkr dS  jkrdS d S N
I see red!Grass is greenI'm feeling the blues :(r  r  r  Zcolorr  r
   r   f     z#TestPatma.test_patma_198.<locals>.fr  r  r  r   rH   rI   rJ   FT       @              @)enumEnumr,   r  r  r  rC   r   r  r
   r  r   test_patma_198  s   zTestPatma.test_patma_198c                    s   G dd dt tj  fdd}| | jd | | jd | | jd | | d  | |dd | |d	d | |d
d | |dd  | |dd | |dd | |dd | |dd  d S )Nc                   @   r  )z'TestPatma.test_patma_199.<locals>.Colorr   rH   rI   Nr  r
   r
   r
   r   r  *  r  r  c                    r  r  r  r  r  r
   r   r  .  r  z#TestPatma.test_patma_199.<locals>.fr  r  r  r   rH   rI   rJ   FTr  r  )r   r  r  r,   r  r  r  rC   r  r
   r  r   test_patma_199)  s   zTestPatma.test_patma_199c                 C   st   G dd d}| }d|_ d|_||dr# d  d  }}d}n | ||j  | ||j | |d d S )Nc                   @   rR   )z'TestPatma.test_patma_200.<locals>.Classar  Nr   r   r   __match_args__r
   r
   r
   r   ClassD  rT   r  r   rH   r
   r  r  rC   r,   r   r  cr   r   rU   r
   r
   r   test_patma_200C     zTestPatma.test_patma_200c                 C   st   G dd d}| }d|_ d|_||dr# d  d  }}d}n | ||j  | ||j | |d d S )Nc                   @   rR   )z'TestPatma.test_patma_201.<locals>.Classr  Nr  r
   r
   r
   r   r  Q  rT   r  r   rH   r  r  r  r
   r
   r   test_patma_201P  r
  zTestPatma.test_patma_201c                 C   s   G dd d}G dd d|}| }d|_ d|_||dr+ d  d  }}d}n | ||j  | ||j | |d d S )Nc                   @   rR   )z(TestPatma.test_patma_202.<locals>.Parentr  Nr  r
   r
   r
   r   r6   ^  rT   r6   c                   @   rR   )z'TestPatma.test_patma_202.<locals>.Childr  dNr  r
   r
   r
   r   Child`  rT   r  r   rH   r
   r  r   r6   r  r  r   r   rU   r
   r
   r   test_patma_202]     zTestPatma.test_patma_202c                 C   s   G dd d}G dd d|}| }d|_ d|_||dr+ d  d  }}d}n | ||j  | ||j | |d d S )Nc                   @   rR   )z(TestPatma.test_patma_203.<locals>.Parentr  Nr  r
   r
   r
   r   r6   m  rT   r6   c                   @   rR   )z'TestPatma.test_patma_203.<locals>.Childr  Nr  r
   r
   r
   r   r  o  rT   r  r   rH   r  r  r  r
   r
   r   test_patma_203l  r  zTestPatma.test_patma_203c                 C   sL   dd }|  |di  | |dd  |  |di  | |dd  d S )Nc                 S      | dkrt  }|d= |S d S )Nr  r   localsr   outr
   r
   r   r  |     z#TestPatma.test_patma_204.<locals>.fr  r         E@Z42r   r  r
   r
   r   test_patma_204{  
   zTestPatma.test_patma_204c                 C   sL   dd }|  |di  |  |di  | |dd  | |dd  d S )Nc                 S   r  )Nr  r   r  r  r
   r
   r   r    r  z#TestPatma.test_patma_205.<locals>.fr  r  rV  r   r   r  r
   r
   r   test_patma_205  r  zTestPatma.test_patma_205c                 C   s|   dd }|  |di  |  |di  |  |di  |  |di  | |dd  | |dd  | |d	d  d S )
Nc                 S   s8   |  dkrn dkrn dkrn d S  t  }|d= |S )NrH   rI   rJ   r   r  r  r
   r
   r   r    s
   &z#TestPatma.test_patma_206.<locals>.frH   rI   rJ   r  r   rP   1r   r  r
   r
   r   test_patma_206  s   zTestPatma.test_patma_206c                 C   s   dd }|  |ddgi  |  |ddgi  | |dd  | |ddgd  | |g dd  |  |dd	gi  d S )
Nc                 S   sZ   |    r dkr\dkrdkrn    r  dkr \dkr dkr!n  d S  t  }|d= |S )NrI   rH   rJ   rP   r   r  r  r
   r
   r   r    s
   Hz#TestPatma.test_patma_207.<locals>.frH   rI   rJ   rP   r  r   r   r   r  r
   r
   r   test_patma_207  s   zTestPatma.test_patma_207c                 C   sH   dd }|  |dddi |  |dddi |  |d dd i d S )Nc                 S   s   | }t  }|d= |S Nr   r  )r   r   r  r
   r
   r   r    
   z#TestPatma.test_patma_208.<locals>.fr  r   rH   rI   r]   r  r
   r
   r   test_patma_208  s   zTestPatma.test_patma_208c                 C   s<   dd }|  |di  |  |d i  |  |di  d S )Nc                 S   s   |  t  }|d= |S r!  r  r  r
   r
   r   r    r"  z#TestPatma.test_patma_209.<locals>.fr  r#  r]   r  r
   r
   r   test_patma_209  s   zTestPatma.test_patma_209c                 C   s   dd }|  |ddddd | |dd  | |d	d  | |d
d  | |dd  | |dd  |  |tdddddd |  |tddddd | |tdd  d S )Nc                 S   s,   |   r dkr\}}}t  }|d= |S  d S )NrJ   r   r  )r   r   r   rU   r  r
   r
   r   r    s   z#TestPatma.test_patma_210.<locals>.fr   rH   rI   rJ   r   r   rU   r#  )rH   rI   rJ   rP   r  r(   s   abcr  a   b   c   )r,   rC   array
memoryviewr   r  r
   r
   r   test_patma_210  s    zTestPatma.test_patma_210c                 C   sz   dd }|  |ddddddd |  |ddddd	ddd | |dd
ddd	d  | |dddd  d S )Nc                 S   sV   |  r( dkr(d	! r& d  d dkr% d c   }}t  }|d= |S     d S )
NrJ   r   r   rU   r   rH   rI   r   r&  r  )r   r   rU   r  r
   r
   r   r    s   8z#TestPatma.test_patma_211.<locals>.fr   r   rU   r&  )r   rU   r  )r   r   rU   r  Zyyr  r   r  r
   r
   r   test_patma_211  s
    zTestPatma.test_patma_211c                 C   s&   dd }|  |tddddi d S )Nc                 S   sJ   | t dr" d tdr! d   d dkr! }t }|d= |S   d S )Nr  r   r
   rH   hellor   )r   r   r  )r   xxr  r
   r
   r   r    s   0z#TestPatma.test_patma_212.<locals>.fr  r.  r/  r  r  r
   r
   r   test_patma_212  s   zTestPatma.test_patma_212c                 C   sd   dd }|  |ddddd |  |ddgddddgd | |dd  | |dd  d S )	Nc                 S   s0   |    r dkr\}}}t  }|d= |S   d S )NrI   r   r  )r   pqr   r  r
   r
   r   r    s   z#TestPatma.test_patma_213.<locals>.fr#  rH   rI   )r1  r2  r      r   r   r  r
   r
   r   test_patma_213  s
    zTestPatma.test_patma_213c                 C       dd }|  t| t  d S )Nc                   S   s   ddkrt  S d S r  r  r
   r
   r
   r   r    s   z#TestPatma.test_patma_214.<locals>.fr,   r   r  r
   r
   r   test_patma_214     zTestPatma.test_patma_214c                 C   r5  )Nc                   S   s8   d dkr	 t  S  dkr t  S  dkr t  S  d S )NrH   rI   rJ   r  r
   r
   r
   r   r   	  s   


z#TestPatma.test_patma_215.<locals>.fr6  r  r
   r
   r   test_patma_215  r8  zTestPatma.test_patma_215c                 C   r5  )Nc                   S   s
   d t  S N.r  r
   r
   r
   r   r  	     z#TestPatma.test_patma_216.<locals>.fr6  r  r
   r
   r   test_patma_216	  r8  zTestPatma.test_patma_216c                 C   s    dd }|  t| dh d S )Nc                  S   s
   d} t  S r:  r  )r(   r
   r
   r   r  	  r;  z#TestPatma.test_patma_217.<locals>.fr(   r6  r  r
   r
   r   test_patma_217	  r8  zTestPatma.test_patma_217c                 C   "   dd }|  t| ddh d S )Nc                  S   s    d  r dkr\} }t  S  d S )N)..rI   r  r  r
   r
   r   r  	  s   z#TestPatma.test_patma_218.<locals>.fr  r  r6  r  r
   r
   r   test_patma_218	     zTestPatma.test_patma_218c                 C   r>  )Nc                  S   sD   ddd r dkrd! r d  d c   } }t  S    d S )N.)kr  rI   rA  r  r   rH   r  r  r
   r
   r   r  	  s   ,
z#TestPatma.test_patma_219.<locals>.fr  r  r6  r  r
   r
   r   test_patma_219	  r@  zTestPatma.test_patma_219c                 C   r>  )Nc                  S   s2   t ddt dr d  d  } }t S  d S )N.r  r   rH   )r   r  r  r
   r
   r   r  #	  s   z#TestPatma.test_patma_220.<locals>.fr   r   r6  r  r
   r
   r   test_patma_220"	  r@  zTestPatma.test_patma_220c                 C   r>  )Nc                  S   s   d } }t  S r:  r  )r  r  r
   r
   r   r  *	  s   z#TestPatma.test_patma_221.<locals>.fr  r  r6  r  r
   r
   r   test_patma_221)	  r@  zTestPatma.test_patma_221c                 C   sL   dd }|  |dd |  |dd |  |dd |  |dd d S )Nc                 S   s   |  dS r   r
   r   r
   r
   r   r  1	  s   z#TestPatma.test_patma_222.<locals>.fr   rH   rI   rJ   r]   r  r
   r
   r   test_patma_2220	  
   zTestPatma.test_patma_222c                 C   sL   dd }|  |dd | |dd  | |dd  | |dd  d S )Nc                 S   s   | dkrdS d S r   r
   r   r
   r
   r   r  ;	  s   z#TestPatma.test_patma_223.<locals>.fr   rH   rI   rJ   r   r  r
   r
   r   test_patma_223:	  rF  zTestPatma.test_patma_223c                 C   sL   dd }|  |dd |  |dd |  |dd |  |dd d S )Nc                 S   s   | dkrdS 	 dS r   r
   r   r
   r
   r   r  E	  s
   z#TestPatma.test_patma_224.<locals>.fr   rH   rI   rJ   r]   r  r
   r
   r   test_patma_224D	  r  zTestPatma.test_patma_224c                 C   sL   dd }|  |dd |  |dd | |dd  | |dd  d S )Nc                 S   s   |  dkr dS dkrdS d S r   r
   r   r
   r
   r   r  Q	  s   
z#TestPatma.test_patma_225.<locals>.fr   rH   rI   rJ   r   r  r
   r
   r   test_patma_225P	  r  zTestPatma.test_patma_225c                 C   sL   dd }|  |dd |  |dd |  |dd |  |dd d S )Nc                 S   s    |  dkr dS dkrdS 	 dS r   r
   r   r
   r
   r   r  ]	  s   
z#TestPatma.test_patma_226.<locals>.fr   rH   rI   rJ   r]   r  r
   r
   r   test_patma_226\	  
   zTestPatma.test_patma_226c                 C   sL   dd }|  |dd |  |dd |  |dd | |dd  d S )Nc                 S   s,   |  dkr dS  dkr dS dkrdS d S r   r
   r   r
   r
   r   r  k	  s   

z#TestPatma.test_patma_227.<locals>.fr   rH   rI   rJ   r   r  r
   r
   r   test_patma_227j	  rK  zTestPatma.test_patma_227c                 C   r[   r\   r]   rD   r
   r
   r   test_patma_228x	  r_   zTestPatma.test_patma_228c                 C   s(   d}|}d}|  |d |  |d d S r   r]   rc   r
   r
   r   test_patma_229~	  s   zTestPatma.test_patma_229c                 C   s<   d}| du r d}ndkrd}|  |d |  |d d S r   r]   rc   r
   r
   r   test_patma_230	  r   zTestPatma.test_patma_230c                 C   s<   d}| du r d}ndkrd}|  |d |  |d d S )NrH   Tr   r]   rc   r
   r
   r   test_patma_231	  r   zTestPatma.test_patma_231c                 C   sD   G dd d}|  }}d }|d u rd}|  || | |d  d S )Nc                   @   r   )z$TestPatma.test_patma_232.<locals>.Eqc                 S   r  )NTr
   )r   otherr
   r
   r   __eq__	  r  z+TestPatma.test_patma_232.<locals>.Eq.__eq__N)r   r   r   rR  r
   r
   r
   r   Eq	  s    rS  r   r   )r   rS  r   eqr   r
   r
   r   test_patma_232	  s   
zTestPatma.test_patma_232c                 C   ,   d}|du rd}|  |d | |d d S )NFr   r   rc   r
   r
   r   test_patma_233	  r   zTestPatma.test_patma_233c                 C   rV  )NTr   r   rc   r
   r
   r   test_patma_234	  r   zTestPatma.test_patma_234c                 C   s,   d }|d u rd}|  |d  | |d d S r   r   rc   r
   r
   r   test_patma_235	  r   zTestPatma.test_patma_235c                 C   r   r   r]   r   r
   r
   r   test_patma_236	  r   zTestPatma.test_patma_236c                 C   r   r   r]   r   r
   r
   r   test_patma_237	  r   zTestPatma.test_patma_237c                 C   s"  d}|  r@ dkr@\    r= dkr=\ cc cccc    r8 dkr8\ ccccc}}}}}}}}	}
}}d}n	         |  |d |  |d |  |d |  |d |  |d |  |d |  |	d |  |
d |  |d |  |d |  |d |  |d |  |d d S )N)r   rI   rJ   rI   r   rH   r   rJ   r\  r]   )r   r   r  r  r  r  er   r  ghr  rU   r   r
   r
   r   test_patma_238	  s$   dzTestPatma.test_patma_238c                 C   sd   t ddd}| r  dkr d! r d dkr   d}n   | |ddd | |d d S NrH   rJ   )r   rI   rI   r   )rI   r&   r'   r,   rc   r
   r
   r   test_patma_239	  s   $zTestPatma.test_patma_239c                 C   sx   t ddd}| r" dkr"d! r  d dkr  "  }d}n   | |ddd | |d | |ddi d S ra  rb  r   r
   r
   r   test_patma_240	  s   (zTestPatma.test_patma_240c              	   C   s   ddigg}|t drR d   rQ dkrQ\  rQ dkrQ\ rQ dkrQd! rO d   td r< d dkr< d dkr< n  dkrBn n
 c    }d}n     | |ddigg | |d | |d d S )Nr   r
   rH   r  )realimag)r  )r*   r   r,   r   r
   r
   r   test_patma_241	  s   
zTestPatma.test_patma_241c                 C   sp   t d}|  r dkr d   d   }}d}n | |d | |t d | |d | |d d S )NrJ   rI   r   rH   r  r   r
   r
   r   test_patma_242	  s   &zTestPatma.test_patma_242c                 C   sZ   t d}|  r dkr  d   }d}n | |t d | |d | |d d S )NrJ   rI   rH   r   r  r   r
   r
   r   test_patma_243	
     zTestPatma.test_patma_243c                 C   sZ   t d}|  r dkr  d   }d}n | |t d | |d | |d d S )NrJ   rH   r   rI   r  r   r
   r
   r   test_patma_244
  rj  zTestPatma.test_patma_244c                 C   s   ddi}| r, dkr,d! r* d   dkrn
   dkrn  n	c    }d}n   |  |ddi |  |d |  |d d S )Nr   rH   r   r  r]   r   r
   r
   r   test_patma_245
  s   DzTestPatma.test_patma_245c                 C   s   dd }t ddddddd	d
ddd
t dddddd	d
dddd
t ddddddddddd
t ddddddddddd
t  g}| |td|d  | |tdd|d  | |tddd|d  | |tddd|d  | |tdd|d  d S )Nc                 S   sr  |    r dkr\
c
c
c
c
c
c
c
c
c
dkrn            rL dkrL\
c
c
c
c
c
c
c
c
c
dkrDc	c	c	ccccccccccccnX            rl dkrl\
c
c
c
c
c
dkrdc	c	c	ccn8            r dkr\
dkrc	c	c	c	c	c	ccccccccccccccn          nc
c
c
c
c
c
c
c
c
 }}}}}}}}}	d}
t  }|d= |S )Nr  	   r  r   r   r  )r   r  r  r  r  r]  r  r^  r_  r  r   r  r
   r
   r   r  %
  s   <\@z#TestPatma.test_patma_246.<locals>.fr   rH   rI   rJ   rP               )
r  r  r  r  r]  r  r^  r_  r  r   rm  )
r_  r^  r  r  r  r  r]  r  r  r   r  )
r^  r  r  r  r  r]  r_  r  r  r   rn  )
r  r  r  r^  r]  r  r  r_  r  r   r        r+   r,   r  r   r  Zaltsr
   r
   r   test_patma_246$
  s   zTestPatma.test_patma_246c                 C   s.  dd }t ddddddd	d
dddddt dddddd	d
ddddddt dddddddddddddt dddddddddddddt  g}| |dtddf|d  | |dtdddf|d  | |dtddddf|d  | |dtddddf|d  | |dtdd df|d  d S )!Nc                 S   s  |   r dkr\   r& dkr&\
c
c
c
c
c
c
c
c
c
dkrn            rT dkrT\
c
c
c
c
c
c
c
c
c
dkrLc	c	c	ccccccccccccnX            rt dkrt\
c
c
c
c
c
dkrlc	c	c	ccn8            r dkr\
dkrc	c	c	c	c	c	ccccccccccccccn          nccccccccc c}}}}}}}}}	}
}d}n  t  }|d= |S )NrJ   r  rm  rn  r  r   r   r  )r   r   r  r  r  r  r]  r  r^  r_  r  rU   r   r  r
   r
   r   r  =
  s   L\@z#TestPatma.test_patma_247.<locals>.fr   rH   rI   rJ   rP   ro  rp  rq  rr  FT)r  r  r  r  r]  r  r^  r_  r  r   r   rU   rm  )r_  r^  r  r  r  r  r]  r  r  r   r   rU   r  rs  rt  ru  rv  rw  rx  ry  )r^  r  r  r  r  r]  r_  r  r  r   r   rU   rn  rz  )r  r  r  r^  r]  r  r  r_  r  r   r   rU   r  r{  r|  r}  r~  r  r
   r
   r   test_patma_247<
  s    ""$zTestPatma.test_patma_247N)r   r   r   rE   rF   rG   rK   rM   rN   rO   rQ   rV   rZ   r^   rd   rh   rl   rp   rt   rx   r{   r~   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r  r  r  r  r  r  r	  r
  r  r  r  r  r  r  r  r  r  r  r  r  r  r   r%  r&  r(  r,  r.  r/  r2  r3  r4  r5  r6  r7  r8  r9  r:  r;  r<  r=  r>  r?  rA  rB  rC  rE  rF  rG  rK  rM  rO  rT  rU  rX  rZ  r[  r\  r]  r_  ra  rb  rd  re  rf  rg  rh  ri  rj  rk  rm  ro  rq  rr  rs  ru  rv  rw  rx  ry  rz  r{  r|  r}  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r   r	  r  r  r  r  r  r  r   r$  r%  r,  r-  r0  r4  r7  r9  r<  r=  r?  rB  rC  rD  rE  rG  rH  rI  rJ  rL  rM  rN  rO  rP  rU  rW  rX  rY  rZ  r[  r`  rc  rd  rg  rh  ri  rk  rl  r  r  r
   r
   r
   r   rA      s   
								
										









		
				


																	













	





		
			rA   c                   @   sZ  e Zd Zdef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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d0d1 Zd2d3 Zd4d5 Zd6d7 Zd8d9 Zd:d; Z d<d= Z!d>d? Z"d@dA Z#dBdC Z$dDdE Z%dFdG Z&dHdI Z'dJdK Z(dLdM Z)dNdO Z*dPdQ Z+dRdS Z,dTS )UTestSyntaxErrorscodec                 C   sB   |  t tt|dd W d    d S 1 sw   Y  d S )Nz<test>r   )assertRaisesSyntaxErrorr   inspectcleandoc)r   r  r
   r
   r   assert_syntax_errorW
  s   "z$TestSyntaxErrors.assert_syntax_errorc                 C      |  d d S )NzK
        match ...:
            case "a" | a:
                pass
        r  r  r
   r
   r   0test_alternative_patterns_bind_different_names_0[
     zATestSyntaxErrors.test_alternative_patterns_bind_different_names_0c                 C   r  )NzX
        match ...:
            case [a, [b] | [c] | [d]]:
                pass
        r  r  r
   r
   r   0test_alternative_patterns_bind_different_names_1b
  r  zATestSyntaxErrors.test_alternative_patterns_bind_different_names_1c                 C   r  )NzS
        match ...:
            case Class(a=_, a=_):
                pass
        r  r  r
   r
   r   -test_attribute_name_repeated_in_class_patternj
  r  z>TestSyntaxErrors.test_attribute_name_repeated_in_class_patternc                 C   r  )NzG
        match ...:
            case 0+0:
                pass
        r  r  r
   r
   r   3test_imaginary_number_required_in_complex_literal_0q
  r  zDTestSyntaxErrors.test_imaginary_number_required_in_complex_literal_0c                 C   r  )NzL
        match ...:
            case {0+0: _}:
                pass
        r  r  r
   r
   r   3test_imaginary_number_required_in_complex_literal_1x
  r  zDTestSyntaxErrors.test_imaginary_number_required_in_complex_literal_1c                 C   r  )NzZ
        match ...:
            case {**rest, "key": value}:
                pass
        r  r  r
   r
   r   test_invalid_syntax_0
  r  z&TestSyntaxErrors.test_invalid_syntax_0c                 C   r  )Nzj
        match ...:
            case {"first": first, **rest, "last": last}:
                pass
        r  r  r
   r
   r   test_invalid_syntax_1
  r  z&TestSyntaxErrors.test_invalid_syntax_1c                 C   r  )NzI
        match ...:
            case {**_}:
                pass
        r  r  r
   r
   r   test_invalid_syntax_2
  r  z&TestSyntaxErrors.test_invalid_syntax_2c                 C   r  )NzK
        match ...:
            case 42 as _:
                pass
        r  r  r
   r
   r   test_invalid_syntax_3
  r  z&TestSyntaxErrors.test_invalid_syntax_3c                 C   r  )NzL
        match ...:
            case {f"": _}:
                pass
        r  r  r
   r
   r   Gtest_mapping_pattern_keys_may_only_match_literals_and_attribute_lookups
  r  zXTestSyntaxErrors.test_mapping_pattern_keys_may_only_match_literals_and_attribute_lookupsc                 C   r  )NzH
        match ...:
            case a, a:
                pass
        r  r  r
   r
   r   .test_multiple_assignments_to_name_in_pattern_0
  r  z?TestSyntaxErrors.test_multiple_assignments_to_name_in_pattern_0c                 C   r  )NzT
        match ...:
            case {"k": a, "l": a}:
                pass
        r  r  r
   r
   r   .test_multiple_assignments_to_name_in_pattern_1
  r  z?TestSyntaxErrors.test_multiple_assignments_to_name_in_pattern_1c                 C   r  )NzQ
        match ...:
            case MyClass(x, x):
                pass
        r  r  r
   r
   r   .test_multiple_assignments_to_name_in_pattern_2
  r  z?TestSyntaxErrors.test_multiple_assignments_to_name_in_pattern_2c                 C   r  )NzU
        match ...:
            case MyClass(x=x, y=x):
                pass
        r  r  r
   r
   r   .test_multiple_assignments_to_name_in_pattern_3
  r  z?TestSyntaxErrors.test_multiple_assignments_to_name_in_pattern_3c                 C   r  )NzS
        match ...:
            case MyClass(x, y=x):
                pass
        r  r  r
   r
   r   .test_multiple_assignments_to_name_in_pattern_4
  r  z?TestSyntaxErrors.test_multiple_assignments_to_name_in_pattern_4c                 C   r  )NzJ
        match ...:
            case a as a:
                pass
        r  r  r
   r
   r   .test_multiple_assignments_to_name_in_pattern_5
  r  z?TestSyntaxErrors.test_multiple_assignments_to_name_in_pattern_5c                 C   r  )NzT
        match ...:
            case *a, b, *c, d, *e:
                pass
        r  r  r
   r
   r   1test_multiple_starred_names_in_sequence_pattern_0
  r  zBTestSyntaxErrors.test_multiple_starred_names_in_sequence_pattern_0c                 C   r  )NzS
        match ...:
            case a, *b, c, *d, e:
                pass
        r  r  r
   r
   r   1test_multiple_starred_names_in_sequence_pattern_1
  r  zBTestSyntaxErrors.test_multiple_starred_names_in_sequence_pattern_1c                 C   r  )NzK
        match ...:
            case a | "a":
                pass
        r  r  r
   r
   r   8test_name_capture_makes_remaining_patterns_unreachable_0
  r  zITestSyntaxErrors.test_name_capture_makes_remaining_patterns_unreachable_0c                 C   r  )Nzm
        match 42:
            case x:
                pass
            case y:
                pass
        r  r  r
   r
   r   8test_name_capture_makes_remaining_patterns_unreachable_1
  r  zITestSyntaxErrors.test_name_capture_makes_remaining_patterns_unreachable_1c                 C   r  )NzU
        match ...:
            case x | [_ as x] if x:
                pass
        r  r  r
   r
   r   8test_name_capture_makes_remaining_patterns_unreachable_2
  r  zITestSyntaxErrors.test_name_capture_makes_remaining_patterns_unreachable_2c                 C   r  )Nzu
        match ...:
            case x:
                pass
            case [x] if x:
                pass
        r  r  r
   r
   r   8test_name_capture_makes_remaining_patterns_unreachable_3
  r  zITestSyntaxErrors.test_name_capture_makes_remaining_patterns_unreachable_3c                 C   r  )Nzn
        match ...:
            case x:
                pass
            case _:
                pass
        r  r  r
   r
   r   8test_name_capture_makes_remaining_patterns_unreachable_4
  r  zITestSyntaxErrors.test_name_capture_makes_remaining_patterns_unreachable_4c                 C   r  )NzG
        match ...:
            case f"":
                pass
        r  r  r
   r
   r   =test_patterns_may_only_match_literals_and_attribute_lookups_0  r  zNTestSyntaxErrors.test_patterns_may_only_match_literals_and_attribute_lookups_0c                 C   r  )NzJ
        match ...:
            case f"{x}":
                pass
        r  r  r
   r
   r   =test_patterns_may_only_match_literals_and_attribute_lookups_1
  r  zNTestSyntaxErrors.test_patterns_may_only_match_literals_and_attribute_lookups_1c                 C   r  )NzH
        match ...:
            case 0j+0:
                pass
        r  r  r
   r
   r   .test_real_number_required_in_complex_literal_0  r  z?TestSyntaxErrors.test_real_number_required_in_complex_literal_0c                 C   r  )NzI
        match ...:
            case 0j+0j:
                pass
        r  r  r
   r
   r   .test_real_number_required_in_complex_literal_1  r  z?TestSyntaxErrors.test_real_number_required_in_complex_literal_1c                 C   r  )NzM
        match ...:
            case {0j+0: _}:
                pass
        r  r  r
   r
   r   .test_real_number_required_in_complex_literal_2  r  z?TestSyntaxErrors.test_real_number_required_in_complex_literal_2c                 C   r  )NzN
        match ...:
            case {0j+0j: _}:
                pass
        r  r  r
   r
   r   .test_real_number_required_in_complex_literal_3&  r  z?TestSyntaxErrors.test_real_number_required_in_complex_literal_3c                 C   r  )NzI
        match ...:
            case _ | _:
                pass
        r  r  r
   r
   r   4test_wildcard_makes_remaining_patterns_unreachable_0-  r  zETestSyntaxErrors.test_wildcard_makes_remaining_patterns_unreachable_0c                 C   r  )NzR
        match ...:
            case (_ as x) | [x]:
                pass
        r  r  r
   r
   r   4test_wildcard_makes_remaining_patterns_unreachable_14  r  zETestSyntaxErrors.test_wildcard_makes_remaining_patterns_unreachable_1c                 C   r  )NzX
        match ...:
            case _ | _ if condition():
                pass
        r  r  r
   r
   r   4test_wildcard_makes_remaining_patterns_unreachable_2;  r  zETestSyntaxErrors.test_wildcard_makes_remaining_patterns_unreachable_2c                 C   r  )Nzq
        match ...:
            case _:
                pass
            case None:
                pass
        r  r  r
   r
   r   4test_wildcard_makes_remaining_patterns_unreachable_3B  r  zETestSyntaxErrors.test_wildcard_makes_remaining_patterns_unreachable_3c                 C   r  )NzR
        match ...:
            case (None | _) | _:
                pass
        r  r  r
   r
   r   4test_wildcard_makes_remaining_patterns_unreachable_4K  r  zETestSyntaxErrors.test_wildcard_makes_remaining_patterns_unreachable_4c                 C   r  )NzV
        match ...:
            case _ | (True | False):
                pass
        r  r  r
   r
   r   4test_wildcard_makes_remaining_patterns_unreachable_5R  r  zETestSyntaxErrors.test_wildcard_makes_remaining_patterns_unreachable_5c                 C   r  )NzT
        match ...:
            case {"a": _, "a": _}:
                pass
        r  r  r
   r
   r   "test_mapping_pattern_duplicate_keyY  r  z3TestSyntaxErrors.test_mapping_pattern_duplicate_keyc                 C   r  )NzT
        match ...:
            case {0: _, False: _}:
                pass
        r  r  r
   r
   r   -test_mapping_pattern_duplicate_key_edge_case0`  r  z>TestSyntaxErrors.test_mapping_pattern_duplicate_key_edge_case0c                 C   r  )NzR
        match ...:
            case {0: _, 0.0: _}:
                pass
        r  r  r
   r
   r   -test_mapping_pattern_duplicate_key_edge_case1g  r  z>TestSyntaxErrors.test_mapping_pattern_duplicate_key_edge_case1c                 C   r  )NzQ
        match ...:
            case {0: _, -0: _}:
                pass
        r  r  r
   r
   r   -test_mapping_pattern_duplicate_key_edge_case2n  r  z>TestSyntaxErrors.test_mapping_pattern_duplicate_key_edge_case2c                 C   r  )NzQ
        match ...:
            case {0: _, 0j: _}:
                pass
        r  r  r
   r
   r   -test_mapping_pattern_duplicate_key_edge_case3u  r  z>TestSyntaxErrors.test_mapping_pattern_duplicate_key_edge_case3N)-r   r   r   r^  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r
   r
   r
   r   r  U
  sT    				r  c                   @   sL   e Z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S )TestTypeErrorsc                 C      G dd d}| }d  }}|  t ||dr" d  }d}n W d    n1 s-w   Y  | |d  | |d  d S )Nc                   @   rR   )zCTestTypeErrors.test_accepts_positional_subpatterns_0.<locals>.Classr
   Nr  r
   r
   r
   r   r    rT   r  r
   r   r  	TypeErrorrC   r   r  r   r   rU   r
   r
   r   %test_accepts_positional_subpatterns_0~     z4TestTypeErrors.test_accepts_positional_subpatterns_0c                 C   sv   t d}d }| t |t dr d dkr d}n W d    n1 s&w   Y  | |t d | |d  d S )Nr  r
   r   )r  r  r  r,   rC   rc   r
   r
   r   %test_accepts_positional_subpatterns_1  s   z4TestTypeErrors.test_accepts_positional_subpatterns_1c                 C      G dd d}| }d  } }}|  t ||dr) d  d  }}d}n W d    n1 s4w   Y  | |d  | |d  | |d  d S )Nc                   @      e Zd ZdZdZdS )zKTestTypeErrors.test_got_multiple_subpatterns_for_attribute_0.<locals>.Class)r  r  Nr   r   r   r  r  r
   r
   r
   r   r    r#  r  r
   r   rH   r  r   r  r   r   r   rU   r
   r
   r   -test_got_multiple_subpatterns_for_attribute_0     z<TestTypeErrors.test_got_multiple_subpatterns_for_attribute_0c                 C   s   G dd d}| }d  } }}|  t ||dr) d  d  }}d}n W d    n1 s4w   Y  | |d  | |d  | |d  d S )Nc                   @   r  )zKTestTypeErrors.test_got_multiple_subpatterns_for_attribute_1.<locals>.Classr  Nr  r
   r
   r
   r   r    r#  r  r  r   rH   r  r  r
   r
   r   -test_got_multiple_subpatterns_for_attribute_1  r  z<TestTypeErrors.test_got_multiple_subpatterns_for_attribute_1c                 C   r  )Nc                   @   rR   )zFTestTypeErrors.test_match_args_elements_must_be_strings.<locals>.Classr  Nr  r
   r
   r
   r   r    rT   r  r
   r   r  r  r
   r
   r   (test_match_args_elements_must_be_strings  r  z7TestTypeErrors.test_match_args_elements_must_be_stringsc                 C   r  )Nc                   @   s   e Zd ZdZdS )z?TestTypeErrors.test_match_args_must_be_a_tuple_0.<locals>.ClassNr  r
   r
   r
   r   r    rT   r  r
   r   r  r  r
   r
   r   !test_match_args_must_be_a_tuple_0  r  z0TestTypeErrors.test_match_args_must_be_a_tuple_0c                 C   r  )Nc                   @   rR   )z?TestTypeErrors.test_match_args_must_be_a_tuple_1.<locals>.ClassZXYZNr  r
   r
   r
   r   r    rT   r  r
   r   r  r  r
   r
   r   !test_match_args_must_be_a_tuple_1  r  z0TestTypeErrors.test_match_args_must_be_a_tuple_1c                 C   r  )Nc                   @   s   e Zd ZddgZdZdZdS )z?TestTypeErrors.test_match_args_must_be_a_tuple_2.<locals>.Classspameggsr   rH   N)r   r   r   r  r  r  r
   r
   r
   r   r    s    r  r
   r   rH   r  r  r
   r
   r   !test_match_args_must_be_a_tuple_2  s   z0TestTypeErrors.test_match_args_must_be_a_tuple_2N)r   r   r   r  r  r  r  r  r  r  r  r
   r
   r
   r   r  |  s    
r  c                   @   r   )TestValueErrorsc                 C   s   G dd d}ddd}d  } }}|  t( | r7 dkr7|jdf! r5 d  d c   }}d}n   W d    n1 sBw   Y  | |d  | |d  | |d  d S )Nc                   @   rR   )zITestValueErrors.test_mapping_pattern_checks_duplicate_key_1.<locals>.Keysr  N)r   r   r   KEYr
   r
   r
   r   Keys  rT   r  r   rH   r  rI   r  )r  
ValueErrorr  rC   )r   r  r   r   r   rU   r
   r
   r   +test_mapping_pattern_checks_duplicate_key_1  s   
2z;TestValueErrors.test_mapping_pattern_checks_duplicate_key_1N)r   r   r   r  r
   r
   r
   r   r    r   r  c                   @   sH   e Zd Zedd Zdd Zdd Zdd Zd	d
 Zdd Z	dd Z
dS )TestTracingc              	      sR   g   fddt  }t  z|i | W t |  S t | w )Nc                    s>   |dkr| j jjkr|d u sJ | jjj } | S )Nline)f_codeco_namer   f_lineno__code__co_firstlinenoappend)frameeventargZrelative_linenoZactual_linenosfunctracer
   r   r    s
   
z!TestTracing._trace.<locals>.trace)sysgettracesettrace)r  argskwargsZ	old_tracer
   r  r   _trace  s   

zTestTracing._tracec                 C   T   dd }|  | |dg d |  | |dg d |  | |dg d d S )	Nc                 S   sV   |      r dkr\dkr}|dv r d| S    r' dkr'\dkr' dS  	 dS )NrI   goneswgo no godefaultsplitcommand	directionr
   r
   r   r  
  s   "
z,TestTracing.test_default_wildcard.<locals>.fgo nr   go xrH   rI   rP   ro  r  rH   rI   rP   rp  rq  ZassertListEqualr  r  r
   r
   r   test_default_wildcard	     	z!TestTracing.test_default_wildcardc                 C   r  )	Nc                 S   sZ   |      r dkr\dkr}|dv r d| S     r) dkr)\dkr)  dS  }|S NrI   r  r  r  r  r  )r  r  r   r
   r
   r   r    s   "
z+TestTracing.test_default_capture.<locals>.fr  r   r  r  r  r  r  r  r
   r
   r   test_default_capture  r  z TestTracing.test_default_capturec                 C   r  )	Nc                 S   sT   |      r dkr\dkr}|dv r d| S    r' dkr'\dkr' dS  d S r  r  r  r
   r
   r   r  &  s   "
z&TestTracing.test_no_default.<locals>.fr  r   r  r  r  )rH   rI   rP   r  r  r
   r
   r   test_no_default%  s   zTestTracing.test_no_defaultc                 C   T   dd }|  | |dg d |  | |dg d |  | |dg d d S )Nc                 S   s   |    dS )Nr  r  )r  r
   r
   r   r  2     z1TestTracing.test_only_default_wildcard.<locals>.fr  r   r  r  r  r  r
   r
   r   test_only_default_wildcard1     z&TestTracing.test_only_default_wildcardc                 C   r  )Nc                 S   s   |   }|S r  r  )r  r   r
   r
   r   r  <  r  z0TestTracing.test_only_default_capture.<locals>.fr  r   r  r  r  r  r
   r
   r   test_only_default_capture;  r  z%TestTracing.test_only_default_capturec              	   C   s   d}dd|  d|  d| d d|  d| d d	|  g}|D ]%}|  | td
|}t|dd W d    n1 sAw   Y  q!d S )Nr  rS   ()z{1:r  }[]zs
                    match None:
                        case {}:
                            pass
                z<string>r   )ZsubTestr  r  formatr   )r   Zlevelspatternspatternr  r
   r
   r   "test_parser_deeply_nested_patternsE  s   z.TestTracing.test_parser_deeply_nested_patternsN)r   r   r   r@   r  r  r  r  r  r  r  r
   r
   r
   r   r    s    


r  __main__c                   @   s,   e Zd Zdd Zdd Zdd Zdd Zd	S )
	PerfPatmac                  O      d S r  r
   ___r
   r
   r   r,   g  r  zPerfPatma.assertEqualc                  O   r  r  r
   r	  r
   r
   r   rC   j  r  zPerfPatma.assertIsc                  O   s   J d)NFz2this test should be a method of a different class!r
   r	  r
   r
   r   r  m  s   zPerfPatma.assertRaisesc                 C   sX   g }t tD ]}|dr|t| | q||9 }t }|D ]}|  q t | S )NZtest_)varsrA   
startswithr  getattrpyperfperf_counter)r   countZtestsattrstarttestr
   r
   r   run_perfp  s   
zPerfPatma.run_perfN)r   r   r   r,   rC   r  r  r
   r
   r
   r   r  e  s
    r  Zpatma)r*  r&   Zdataclassesr  r  r  ZunittestZ	dataclassr   ZTestCaser   r   rA   r  r  r  r  r   r  r  ZRunnerZrunnerZbench_time_funcr  r
   r
   r
   r   <module>   sX    
i                   e  )hg