+
    Bi                        ^ RI t ^ RIt^ RIt^ RIt^ RIt^ RIt^ RIt^ RIt^ RIH	t	 ]	P                  ! R4      t]	P                  ! R4      t^ RIHt ^ RIHt ^ RIHt ] P&                  R 4       t]P-                  4        U Uu. uF  w  r]! V]4      '       g   K  VNK  	  upp t] Uu. uF  p]! V]4      '       g   K  VNK  	  upt]! ]4      P-                  4        UUu. uF!  w  r1]! V]4      '       g   K  VRI9  g   K  VNK#  	  uppt. ]O]Ot ] hu upp i u upi u uppi   ]  d   t!]!t" Rt!A!MRt!A!ii ; i]#R	 ]$R
 ]%R ]&R ]'R ](R /t). R ])P-                  4        4       OR ] 4       Ot*]PV                  ! 4       PX                  t-. P\                  t/]0Pb                  t2]3! 4       Ph                  t5]3Pl                  t7]-]Pp                  ]/]Pr                  ]:Pv                  R,          ]Px                  ]Pz                  P|                  ]P~                  ]Pz                  P                  ]P                  ]2]P                  ]5]P                  ]7]P                  ]E! ]PV                  PX                  4      R]F! ]PV                  PX                  4      R]G! ]PV                  PX                  4      R/tH]I]P                  ]P                  ]P                  .tMR]P                  9  g   Q h]	P                  ! RR4      ;_uu_ 4        ^ RIPtQRRR4       M  + '       g   i     M; i]]]]Q.tR]3! 4       tS] ! 4       tTR tU]SRRR]V]W.R ]X! RJR4       4       ORNRNRN]P                  ^,           N]P                  N]P                  ) ^,
          N]P                  ) ^,
          N]X! RJR4      O^R,          NRNRNRKNRNRLNtZ^ R]T3t[^ R]S3t\^ R]T33t]^ R]S33t^]_! R 4      t`]_! RM4      ta]P                  ! / 4      tcRNRORPRQ][]\RRRSRT]]]^]`]a. . RUO^.RV^^/./ ^^^^^^	/^^.^RV^^^//]d! 4       0 RWm]e! ^04      RV0]e! . 4      ]e! ]e! ^04      RV04      ]f! R 4      ]c]P                  ! 4       .th/ ti]j! R!]i]i4       ]P                  ! 4       ]iR",          ]iR#,          .tlAi]P                  P-                  4        UUu. uF  w  rET! T!  NK  	  Mu uppi upptn]P                  P-                  4        UUu. uF  w  rET! T!  NK  	  Mu uppi upptp. ]nO]pOtq]P                  ! R$4      .ts][]\]]]^.tt]V]W]S]P                  ^,           ]P                  ) ^,
          ^R,          .tu]! 4       ;_uu_ 4        ]Z Uu. uF  pT]u9  g   K  TNK  	  Mu upi uptv. R% ]h 4       OR& ]h 4       Otw]h Uu. uF  pT]w9  g   K  TNK  	  Mu upi uptxRRR4       M  + '       g   i     M; i. ]vO]wOty. ]uO]xO]O]HO]*O]MO]RO]lOR' ]P                   4       OR( ]P                   4       O]P                  O]PV                  PX                  N]UN]P                  O]P                  O]P                  O]qO]sOt~. ]ZOR) ]h 4       O]O]*O]MO]P                  O]PV                  PX                  N]P                  O]P                  O]nO]sO]EP                   N]EP                  N]EP                  N]EP                  N]EP                  N]P                  N]-N]/N]2N]5N]7Nt];QJ d    R* ] 4       F  '       g   K   RM	  RM! R* ] 4       4      '       d   Q h]t]! ]EP                  4      ;_uu_ 4       t]EP                  4       tRRR4       M  + '       g   i     M; i]! ]EP                  4      ;_uu_ 4       t]EP                  4       t]EP                  R+R,4      tRRR4       M  + '       g   i     M; iR-]EP                   R.] R/]EP                   R.] R02	tAAARXR1 lt] P&                  R2 4       t] P&                  R3 4       t] P&                  R4R/R5 l4       t ! R6 R7]EP(                  4      t ! R8 R9]4      t ! R: R;]4      t ! R< R=]4      t ! R> R?]4      t ! R@ RA]4      t ! RB RC]4      t ! RD RE]4      t ! RF RG]4      t]RH8X  d   ]EP>                  ! 4        R# R# )Y    N)import_helper_testinternalcapi_interpreters)NotShareableError)_code_definitions)_crossinterp_definitionsc               #      "   \         P                  ! 4       ;_uu_ 4        \         P                  ! R \        R7       Rx  RRR4       R#   + '       g   i     R# ; i5i)ignore)categoryN)warningscatch_warningsfilterwarningsBytesWarning     ,/usr/lib/python3.14/test/test_crossinterp.pyignore_byteswarningr      s5     		 	 	"	"<@ 
#	"	"	"s   A!A
AA		Ac                     V \         .3# NCAUGHTmsgs   &r   <lambda>r   /   s
    cF8_r   c                     V \         .3# r   r   r   s   &r   r   r   0   s
    #xr   c                     R V R R R 3# r   r   r   s   &r   r   r   1   s    c4t<r   c                     R R^^V 3# )utf-8 r   r   s   &r   r   r   2   s    gr1a%=r   c                     R R^^V 3# )r   r   r   r   s   &r   r   r   3   s    gsAq#%>r   c                     R ^^V 3# )r   r   r   s   &r   r   r   4   s    Q3r   c              #   >   "   T F  w  rV! V! R 4      !  x  K  	  R# 5ierror!Nr   ).0clssigs   &  r   	<genexpr>r(   7   s     N*Mhcc3x=*Ms   c              #   L   "   T F  pV\         9  g   K  V! R 4      x  K  	  R# 5ir#   )EXCEPTIONS_WITH_SPECIAL_SIG)r%   r&   s   & r   r(   r(   8   s&      1	/	/ c(mms   $$fromkeysemptymodr   c                      R # r   r   r   r   r   r   r   b   s    $r   TFc              #   J   "   T F  pVP                  ^RRR7      x  K  	  R# 5i   littleT)signedNto_bytesr%   is   & r   r(   r(   l   s)      ! jjHTj**   !#  hello world   你好世界          皙?      ?ȑݚ?r   zt
try:
    raise Exception
except Exception as exc:
    TRACEBACK = exc.__traceback__
    FRAME = TRACEBACK.tb_frame
FRAME	TRACEBACKr$   c              #   P   "   T F  p\        V4      \        J g   K  Vx  K  	  R # 5ir   )type
memoryviewr%   os   & r   r(   r(      s     	A'47j+@!!'s   &
&c              #   j   "   T F)  p\        V4      \        J g   K  V\        9  g   K%  Vx  K+  	  R # 5ir   )rC   tupleTUPLES_WITHOUT_EQUALITYrE   s   & r   r(   r(      s4      
D'!W "#+B"B !'s   33
3c              #   8   "   T F  qP                   x  K  	  R # 5ir   __code__r%   fs   & r   r(   r(      s     ).Qjj.   c              #   8   "   T F  qP                   x  K  	  R # 5ir   rK   rM   s   & r   r(   r(      s     -,Qjj,rO   c              #   z   "   T F1  q\         \        \        39  g   \        V4      \        J g   K-  Vx  K3  	  R # 5ir   )MEMORYVIEW_EMPTYMEMORYVIEW_NOT_EMPTYMAPPING_PROXY_EMPTYrC   dictrE   s   & r   r(   r(     s9      #A1 ( 
aD	 a#s   *;
;c              #   V   "   T F  p\        V\        P                  4      x  K!  	  R # 5ir   )
isinstancetypesMappingProxyTyperE   s   & r   r(   r(   #  s      Ijz!U3344js   ')zfrom z# from z0
#######################################
# from z

z1

#######################################
# from 
c                   V f   \         P                  pM'\        V \        4      '       d   T pRp MV P                  p\        P
                  ! V4      p\         P                  Vn        \        \        VP                  4       V el   VP                  P                  4        FM  w  r4VP                  R4      '       d   K  \        W4      '       d   Q V\        W4      34       h\        WV4       KO  	  V# )a'  Return a new copy of the test._crossinterp_definitions module.

The module's __name__ matches the "module" arg, which is either
a str or a module.

If the "module" arg is a module then the just-loaded defs are also
copied into that module.

Note that the new module is not added to sys.modules.
N_)DEFS__name__rW   strr   create_module__file__exec	DEFS_TEXT__dict__items
startswithhasattrgetattrsetattr)modulemodnamedefsnamevalues   &    r   	load_defsro   <  s     ~--	FC	 	 //&&w/DMMDMDMM"==..0KDs##v,,KtWV5J.KK,F%(	 1
 Kr   c               #  b  "   Rp V \         P                  9  dA   \        P                  ! 4       ;_uu_ 4        \        P                  ! V 4      x  RRR4       R# \        P
                  ! V 4      ;_uu_ 4       pVx  RRR4       R#   + '       g   i     R# ; i  + '       g   i     R# ; i5i)z6Make sure __main__ module exists (and clean up after).__main__N)sysmodulesr   isolated_modules
add_modulemodule_restored)rk   mods     r   using___main__rx   \  sy      Gckk!++--**733 .- **733sI 43 .-- 433s4   5B/B(B/8B=
B/B		B/B,	&	B/c              #     "   V \         P                  9  g	   Q V 34       h\        P                  ! 4       ;_uu_ 4        \        P                  ! V 4      x  RRR4       R#   + '       g   i     R# ; i5i)z?Create the module and add to sys.modules, then remove it after.N)rr   rs   r   rt   ru   )rk   s   &r   temp_modulerz   h  sN      #++%1z1%		'	'	)	)&&w// 
*	)	)	)s   ;A4A 
A4 A1	+	A4prepc             #   `  "   V \         P                  9  g	   Q V 34       hV'       d3   \        P                  ! V \        4      ;_uu_ 4        V x  R R R 4       R # \        P
                  ! 4       ;_uu_ 4        V x  R R R 4       R #   + '       g   i     R # ; i  + '       g   i     R # ; i5ir   )rr   rs   r   ready_to_importrc   rt   )rk   r{   s   &$r   missing_defs_moduler~   p  sv     #++%1z1%**7I>>M ?> ++--M .- ?>> .--s:   %B.#B.B'B.7B<
B.B		B.B+	%	B.c                      a  ] tR tRt o RtR tR tR tR tRR/R lt	RR/R	 lt
R
 tRR/R ltRRRR/R ltRRRR/R ltRRRR/R ltRRR/R lltR tRtV tR# )_GetXIDataTestsi{  Nc                   \        V4      \        P                  J g   Q \        V4      4       h\        V4      \        P                  J g   Q \        V4      4       hV P	                  VP
                  VP
                  4       V P	                  VP                  VP                  4       V P	                  VP                  VP                  4       V P	                  VP                  VP                  4       R # r   )	rC   rX   FunctionTypereprassertEqualr^   rL   __defaults____kwdefaults__)selffunc1func2s   &&&r   assert_functions_equal&_GetXIDataTests.assert_functions_equal  s    E{e000=$u+=0E{e000=$u+=088++U-?-?@--u/C/CDr   c                   VP                   pVP                   p\        V\        4      '       Ed   V P                  \	        V4      \	        V4      4       V P                  \        V4      ^4       V P                  \        V4      \        V4      4       V P                  V^ ,          V^ ,          4       V^,          pV^,          pV P                  \        V4      \        V4      4       \        WV4       F:  w  rxV P                  \	        V4      \	        V4      4       V P                  Wx4       K<  	  R# V P                  W44       R# )r0   N)	argsrW   ExceptionGroupassertIsrC   r   lenzipassert_exc_equal)	r   exc1exc2args1args2group1group2grouped1grouped2s	   &&&      r   assert_exc_args_equal%_GetXIDataTests.assert_exc_args_equal  s    				dN++MM$u+tE{3SZ+SZU4U1XuQx01XF1XFS[#f+6&)&&9" d4j$t*5%%h9	 ': U*r   c                   V P                  \        V4      \        V4      4       \        V4      P                  \        P                  Jd   V P	                  W4       V P                  W4       VP                  e'   V P	                  VP                  VP                  4       V P	                  \        VRR 4      \        VRR 4      4       VP                  f(   V P                  VP                  VP                  4       M&V P                  VP                  VP                  4       VP                  f)   V P                  VP                  VP                  4       R # V P                  VP                  VP                  4       R # )N	__notes__)r   rC   __eq__objectr   r   __traceback__rh   	__cause__r   __context__)r   r   r   s   &&&r   r    _GetXIDataTests.assert_exc_equal  s   d4j$t*-:FMM1T(""4.)T//1C1CDD+t,D+t,	

 >>!MM$..$..9!!$..$..A#MM$**D,<,<=!!$"2"2D4D4DEr   c                f   \        V4      pVP                  \        P                  Jd   V P                  W4       R # V\        P
                  J d   V P                  W4       R # \        V\        4      '       d   V P                  W4       R # V\        P                  J d   \        V4      hV\        P                  J d   \        V4      hV\        P                  J d   \        V4      hVP                  \        38X  d)   V P                  VP                  VP                  4       R # \        V4      hr   )rC   r   r   r   rX   r   r   rW   BaseExceptionr   
MethodTypeNotImplementedErrorBuiltinMethodTypeMethodWrapperType	__bases__rd   )r   objexpectedr&   s   &&& r   assert_equal_or_equalish(_GetXIDataTests.assert_equal_or_equalish  s    8n::V]]*S+E&&&''6-00!!#0E$$$%c**E+++%c**E+++%c**]]vi'S\\8+<+<=%c**r   modec               N    V P                  V4      p\        P                  W4      # r   )_resolve_moder   get_crossinterp_datar   r   r   s   &&$r   
get_xidata_GetXIDataTests.get_xidata  s#    !!$' 55c@@r   c               F    V P                  V4      pV P                  W4      # r   )r   _get_roundtripr   s   &&$r   get_roundtrip_GetXIDataTests.get_roundtrip  s#    !!$'""3--r   c                V    \         P                  W4      p\         P                  V4      # r   )r   r   restore_crossinterp_data)r   r   r   xids   &&& r   r   _GetXIDataTests._get_roundtrip  s#    44S? 99#>>r   c                   V P                  V4      pV FP  pV P                  \        V4      4      ;_uu_ 4        V P                  W24      pV P	                  WC4       R R R 4       KR  	  R #   + '       g   i     Kg  ; ir   )r   subTestr   r   r   )r   valuesr   r   gots   &&$  r   assert_roundtrip_identical*_GetXIDataTests.assert_roundtrip_identical  s]    !!$'Cd3i(())#4c' )( (((s   #A**A;
expecttypec          	     p   V P                  V4      pV F  pV P                  \        V4      4      ;_uu_ 4        V P                  WB4      pWTJ d    R R R 4       KG  T P	                  \        V4      Vf   \        V4      MT4       V P                  WT4       R R R 4       K  	  R #   + '       g   i     K  ; ir   )r   r   r   r   r   rC   r   r   r   r   r   r   r   s   &&$$  r   assert_roundtrip_equal&_GetXIDataTests.assert_roundtrip_equal  s    !!$'Cd3i(())#4: )( d3i+5+=d3i:O--c7 )( (((s   B$;B$$B5c          	     r   V P                  V4      pV F  pV P                  \        V4      4      ;_uu_ 4        V P                  WB4      pV P	                  WT4       T P                  \        V4      Vf   \        V4      MT4       V P                  WT4       R R R 4       K  	  R #   + '       g   i     K  ; ir   )r   r   r   r   assertIsNotr   rC   r   r   s   &&$$  r   $assert_roundtrip_equal_not_identical4_GetXIDataTests.assert_roundtrip_equal_not_identical  s    !!$'Cd3i(())#4  *d3i+5+=d3i:O--c7 )( (((   AB%%B6c          	     r   V P                  V4      pV F  pV P                  \        V4      4      ;_uu_ 4        V P                  WB4      pV P	                  WT4       T P                  \        V4      Vf   \        V4      MT4       V P                  WT4       R R R 4       K  	  R #   + '       g   i     K  ; ir   )r   r   r   r   r   r   rC   assertNotEqualr   s   &&$$  r   assert_roundtrip_not_equal*_GetXIDataTests.assert_roundtrip_not_equal  s    !!$'Cd3i(())#4  *d3i+5+=d3i:O##C- )( (((r   c          
        V P                  V4      pV F  pV P                  \        V4      4      ;_uu_ 4        V P                  \        4      ;_uu_ 4       p\
        P                  WC4       R R R 4       Ve'   V P                  XP                  P                  V4       R R R 4       K  	  R #   + '       g   i     LH; i  + '       g   i     K  ; ir   )
r   r   r   assertRaisesr   r   r   assertIsInstance	exceptionr   )r   r   exctyper   r   cms   &&&$  r   assert_not_shareable$_GetXIDataTests.assert_not_shareable  s    !!$'Cd3i((&&'899R%::3E :&))",,*@*@'J	 )( 99 )((s#   C B--2C -B=8C  Cc                :    Vf   V P                   pV'       g   Q hV# r   )MODE)r   r   s   &&r   r   _GetXIDataTests._resolve_mode  s    <99Dtr   r   r   )r^   
__module____qualname____firstlineno__r   r   r   r   r   r   r   r   r   r   r   r   r   r   __static_attributes____classdictcell____classdict__s   @r   r   r   {  s     DE+&F0+&Ad A. .?( (	8T 	8d 	8	826	8CG	8	.(,	.9=	.K K r   r   c                     a  ] tR tRt o RtR tR tR tR tR t	R t
R	 tR
R/R ltR tR tR tR tR tR tR tR tR tR tR tR tR tR tR tR
R/R ltR tR tR tR  t R! t!R" t"R# t#R$ t$R% t%R& t&R' t'R( t(R) t)R* t*R+ t+R,t,V t-R-# ).PickleTestsi
  picklec                    \        4       ;_uu_ 4        \         F4  pV\        9   d   V P                  V.4       K"  V P	                  V.4       K6  	  R R R 4       R #   + '       g   i     R # ; ir   )r   	SHAREABLE
PICKLEABLEr   r   )r   r   s   & r   test_shareablePickleTests.test_shareable  sL     "" *$//6--se4	 ! #"""s   ?AA-	c                   \        4       ;_uu_ 4        \         F  p\        V4      \        P                  J d   V P                  V.4       K4  V\        9   dc   V P                  \        V4      4      ;_uu_ 4        V P                  V4      pV P                  \        V4      \        V4      4       R R R 4       K  V P                  V.4       K  	  R R R 4       R #   + '       g   i     K  ; i  + '       g   i     R # ; ir   )r   NOT_SHAREABLErC   rX   rY   r   r   r   r   r   r   )r   r   r   s   &  r   test_not_shareablePickleTests.test_not_shareable  s     ""$9 6 66--se4J&d3i00 #005d3ic;	 10 --se4 % #"
 100 #""s$   A(C/;6C1 C/C,&	C//D 	c                >    V P                  . . RO^.R^^/..4       R# )   Nr   r0      r0   r   r   s   &r   	test_listPickleTests.test_list$  s+    11S$A3
 	r   c                L    V P                  / ^^^^^^	/^^.^R^^^//.4       R# )r   Nr   r   r   s   &r   	test_dictPickleTests.test_dict+  s>    111aAQa!Q(3
 	r   c                Z    V P                  \        4       0 Rm\        ^04      R0.4       R# )r   N   r   r0   r   r   )r   set	frozensetr   s   &r   test_setPickleTests.test_set2  s+    11Es^T"3
 	r   c                   V P                  VP                  4       . pVP                  P                  4        F,  w  r4W1P                  9   d   K  VP	                  V! V!  4       K.  	  V P                  V4       . pVP                  P                  4        F,  w  r4W1P                  9  d   K  VP	                  V! V!  4       K.  	  V P                  V4       R # r   )r   TOP_CLASSESre   CLASSES_WITHOUT_EQUALITYappendr   r   r   rl   	instancesr&   r   s   &&   r   assert_class_defs_same"PickleTests.assert_class_defs_same;  s    ''(8(89	))//1IC333S$Z( 2 	11)< 	))//1IC777S$Z( 2 	##I.r   c                f   VP                    F:  p\        W#P                  4      '       g   K   Q V\        W#P                  4      34       h	  V P	                  VP                   4       . pVP                   P                  4        F  w  r5VP                  V! V!  4       K  	  V P	                  V4       R # r   )r  rg   r^   rh   r   re   r  )r   rl   rw   r&   r  r   s   &&&   r   assert_class_defs_other_pickle*PickleTests.assert_class_defs_other_pickleN  s    ##CsLL11TCll9S3TT1 $!!$"2"23	))//1ICS$Z( 2!!),r   failFc          
     .   VP                    F:  p\        W$P                  4      '       g   K   Q V\        W$P                  4      34       h	  . pVP                   P	                  4        F  w  rFV P                  \        V4      4      ;_uu_ 4        \        W$P                  V4       V P                  V4      pV! V!  pV P                  V4      p	VP                  WGW34       R R R 4       K  	  V EFd  w  rGrV P                  \        V4      4      ;_uu_ 4        \        W$P                  4       V'       dG   V P                  \        4      ;_uu_ 4        \        P                  V4       R R R 4        R R R 4       K  \        P                  V4      p
V P                  W4       V P!                  W4       T
p\        P                  V	4      p
V P                  W4       V P#                  \%        V
4      V4       WAP&                  9   d   V P!                  W4       M3WAP(                  9   d   V P+                  W4       MV P!                  W4       R R R 4       EKg  	  R #   + '       g   i     EK  ; i  + '       g   i     EL; i  + '       g   i     EK  ; ir   )r  rg   r^   rh   re   r   r   ri   r   r  delattrr   r   r   r   r   r   r   rC   r  BUILTIN_SUBCLASSESr   )r   rl   rw   r  r&   r  r   r   instinstxidr   gotclss   &&&$        r    assert_class_defs_other_unpickle,PickleTests.assert_class_defs_other_unpickleY  s   ##CsLL11TCll9S3TT1 $ 	))//1ICd3i((\\3/ooc*Dz//$/  413 )( 2 (1#Cdd3i((\\***+<==)BB3G > )( (@@E  *##C-'@@I  +d3i0777''2333$$S/''2' )( (1 )(( >== )((s8   AI;JI.(	J;CJI+.I?9	JJc                    V P                  VP                  4       . pVP                  P                  4        F  w  r4VP                  V! V!  4       K  	  V P                  V4       R # r   )r   r  re   r  r  s   &&   r   assert_class_defs_not_shareable+PickleTests.assert_class_defs_not_shareable~  sV    !!$"2"23	))//1ICS$Z( 2!!),r   c                0    V P                  \        4       R # r   )r	  rl   r   s   &r   test_user_class_normal"PickleTests.test_user_class_normal  s    ##D)r   c                    \        4       ;_uu_ 4       p\        V4      pV P                  V4       R R R 4       R #   + '       g   i     R # ; ir   )rx   ro   r	  r   rw   rl   s   &  r   test_user_class_in___main__'PickleTests.test_user_class_in___main__  s3    S>D''- 	   :A	c                    \        4       ;_uu_ 4       p\        R 4      pVP                  '       g   Q hVP                  Vn        V P                  V4       RRR4       R#   + '       g   i     R# ; irq   Nrx   ro   ra   r  r  s   &  r   -test_user_class_not_in___main___with_filename9PickleTests.test_user_class_not_in___main___with_filename  sM    Z(D=== ===CL006	    AAA0	c                    \        4       ;_uu_ 4       p\        R 4      pRVn        RVn        V P                  V4       RRR4       R#   + '       g   i     R# ; ir#  r$  r  s   &  r   0test_user_class_not_in___main___without_filename<PickleTests.test_user_class_not_in___main___without_filename  sB    Z(D DMCL006	    +AA	c                    \        4       ;_uu_ 4       p\        R 4      pVP                  '       g   Q hVP                  Vn        V P                  W!4       RRR4       R#   + '       g   i     R# ; ir#  rx   ro   ra   r  r  s   &  r   6test_user_class_not_in___main___unpickle_with_filenameBPickleTests.test_user_class_not_in___main___unpickle_with_filename  sM    Z(D=== ===CL11$<	 r'  c                    \        4       ;_uu_ 4       p\        R 4      pRVn        RVn        V P                  W!RR7       RRR4       R#   + '       g   i     R# ; irq   NT)r  r-  r  s   &  r   9test_user_class_not_in___main___unpickle_without_filenameEPickleTests.test_user_class_not_in___main___unpickle_without_filename  sG    Z(D DMCL11$$1G	    -A

A	c                    \        R 4      ;_uu_ 4       p\        V4      pV P                  V4       RRR4       R#   + '       g   i     R# ; i__spam__N)rz   ro   r	  r  s   &  r   test_user_class_in_module%PickleTests.test_user_class_in_module  s5    $$S>D''- %$$$	   ;A	c                    \        R 4      ;_uu_ 4       p\        VP                  4      pVP                  '       g   Q hV P	                  V4       RRR4       R#   + '       g   i     R# ; ir6  rz   ro   r^   ra   r  r  s   &  r   +test_user_class_not_in_module_with_filename7PickleTests.test_user_class_not_in_module_with_filename  sH    $$S\\*D=== =006	 %$$$   ;AA*	c                    \        R 4      ;_uu_ 4       p\        VP                  4      pRVn        V P	                  V4       RRR4       R#   + '       g   i     R# ; ir6  r<  r  s   &  r   .test_user_class_not_in_module_without_filename:PickleTests.test_user_class_not_in_module_without_filename  sA    $$S\\*D DM006 %$$$   .AA	c                    \        R RR7      ;_uu_ 4       p\        V4      pV P                  V4       RRR4       R#   + '       g   i     R# ; ir7  T)r{   Nr~   ro   r  r   rk   rl   s   &  r   ,test_user_class_module_missing_then_imported8PickleTests.test_user_class_module_missing_then_imported  s8     $777W%D006 8777	   =A	c                    \        R 4      ;_uu_ 4       p\        V4      pV P                  V4       RRR4       R#   + '       g   i     R# ; ir6  rF  rG  s   &  r   ,test_user_class_module_missing_not_available8PickleTests.test_user_class_module_missing_not_available  s6     ,,W%D006 -,,,r:  c                    \         P                  ! 4       pV P                  \        4      ;_uu_ 4        V P	                  V4       R R R 4       R #   + '       g   i     R # ; ir   )rl   
EggsNestedr   r   r   )r   eggss   & r   test_nested_classPickleTests.test_nested_class  s=     011t$ 2111s   AA 	c                <    V P                  VP                  4       R # r   )r   TOP_FUNCTIONSr   rl   s   &&r   assert_func_defs_same!PickleTests.assert_func_defs_same  s    ''(:(:;r   c                    VP                    F9  p\        W#P                  4      '       g   K   Q \        W#P                  4      34       h	  V P	                  VP                   4       R # r   )rT  rg   r^   rh   r   )r   rl   rw   funcs   &&& r   assert_func_defs_other_pickle)PickleTests.assert_func_defs_other_pickle  sL    &&DsMM22RWS--5P4RR2 '!!$"4"45r   c          
        VP                    F9  p\        W$P                  4      '       g   K   Q \        W$P                  4      34       h	  . pVP                    F^  pV P	                  V4      ;_uu_ 4        \        W$P                  V4       V P                  V4      pVP                  WF34       R R R 4       K`  	  V F  w  rFV P	                  V4      ;_uu_ 4        \        W$P                  4       V'       dG   V P                  \        4      ;_uu_ 4        \        P                  V4       R R R 4        R R R 4       K  \        P                  V4      pV P                  Wt4       V P                  Wt4       R R R 4       K  	  R #   + '       g   i     EK=  ; i  + '       g   i     Lu; i  + '       g   i     EK  ; ir   )rT  rg   r^   rh   r   ri   r   r  r  r   r   r   r   r   r   )r   rl   rw   r  rY  capturedr   r   s   &&&$    r   assert_func_defs_other_unpickle+PickleTests.assert_func_defs_other_unpickle  sF   &&DsMM22RWS--5P4RR2 ' &&Dd##]]D1ood+% $# ' "IDd##]]+**+<==)BB3G > $# (@@E  +##C. $# " $## >= $##s6   4:F;F+F+	F+>7F+FF(#F++F=c                <    V P                  VP                  4       R # r   )r   rT  rU  s   &&r   assert_func_defs_not_shareable*PickleTests.assert_func_defs_not_shareable  s    !!$"4"45r   c                n    V P                  \        P                  4       V P                  \        4       R # r   )r   rl   rT  rV  r   s   &r   test_user_function_normal%PickleTests.test_user_function_normal  s$    ##D$6$67""4(r   c                    \        4       ;_uu_ 4       p\        V4      pV P                  V4       R R R 4       R #   + '       g   i     R # ; ir   )rx   ro   rV  r  s   &  r   test_user_func_in___main__&PickleTests.test_user_func_in___main__  s3    S>D&&t, r!  c                    \        4       ;_uu_ 4       p\        R 4      pVP                  '       g   Q hVP                  Vn        V P                  V4       RRR4       R#   + '       g   i     R# ; ir#  rx   ro   ra   ra  r  s   &  r   ,test_user_func_not_in___main___with_filename8PickleTests.test_user_func_not_in___main___with_filename  sM    Z(D=== ===CL//5	 r'  c                    \        4       ;_uu_ 4       p\        R 4      pRVn        RVn        V P                  V4       RRR4       R#   + '       g   i     R# ; ir#  rj  r  s   &  r   /test_user_func_not_in___main___without_filename;PickleTests.test_user_func_not_in___main___without_filename  sB    Z(D DMCL//5	 r+  c                    \        4       ;_uu_ 4       p\        R 4      pVP                  '       g   Q hVP                  Vn        V P                  W!4       RRR4       R#   + '       g   i     R# ; ir#  rx   ro   ra   r^  r  s   &  r   5test_user_func_not_in___main___unpickle_with_filenameAPickleTests.test_user_func_not_in___main___unpickle_with_filename
  sM    Z(D=== ===CL00;	 r'  c                    \        4       ;_uu_ 4       p\        R 4      pRVn        RVn        V P                  W!RR7       RRR4       R#   + '       g   i     R# ; ir1  rq  r  s   &  r   8test_user_func_not_in___main___unpickle_without_filenameDPickleTests.test_user_func_not_in___main___unpickle_without_filename  sG    Z(D DMCL000F	 r4  c                    \        R 4      ;_uu_ 4       p\        V4      pV P                  V4       RRR4       R#   + '       g   i     R# ; ir6  )rz   ro   rV  r  s   &  r   test_user_func_in_module$PickleTests.test_user_func_in_module  s5    $$S>D&&t, %$$$r:  c                    \        R 4      ;_uu_ 4       p\        VP                  4      pVP                  '       g   Q hV P	                  V4       RRR4       R#   + '       g   i     R# ; ir6  rz   ro   r^   ra   ra  r  s   &  r   *test_user_func_not_in_module_with_filename6PickleTests.test_user_func_not_in_module_with_filename  sH    $$S\\*D=== =//5	 %$$$r?  c                    \        R 4      ;_uu_ 4       p\        VP                  4      pRVn        V P	                  V4       RRR4       R#   + '       g   i     R# ; ir6  r{  r  s   &  r   -test_user_func_not_in_module_without_filename9PickleTests.test_user_func_not_in_module_without_filename$  sA    $$S\\*D DM//5 %$$$rC  c                    \        R RR7      ;_uu_ 4       p\        V4      pV P                  V4       RRR4       R#   + '       g   i     R# ; irE  r~   ro   ra  rG  s   &  r   +test_user_func_module_missing_then_imported7PickleTests.test_user_func_module_missing_then_imported*  s8     $777W%D//5 8777rJ  c                    \        R 4      ;_uu_ 4       p\        V4      pV P                  V4       RRR4       R#   + '       g   i     R# ; ir6  r  rG  s   &  r   +test_user_func_module_missing_not_available7PickleTests.test_user_func_module_missing_not_available0  s6     ,,W%D//5 -,,,r:  c                D    V P                  \        P                  4       R # r   )r   rl   NESTED_FUNCTIONSr   s   &r   test_nested_function PickleTests.test_nested_function5  s    !!$"7"78r   c                    V P                  \        P                  ! R 4      .4       V P                  \        P                  ! R ^*4      .4       R# r#   )r   rl   MimimalErrorr   	RichErrorr   s   &r   test_user_exception_normal&PickleTests.test_user_exception_normal:  sF    ##h'%
 	 	11NN8R(3
 	r   c                h   R p \         h  \          d   pTp Rp?MRp?ii ; i\        Y.3\        Y.3\        RTRRR3\        RR^^T3\
        RR^^T3\        R^^T3/p. p\         F4  pTP                  T4      ;'       g    T3pTP                  T! T!  4       K6  	  T P                  T4       R# r$   Nr   r   r   )	ExceptionBaseExceptionGroupr   UnicodeErrorUnicodeEncodeErrorUnicodeDecodeErrorUnicodeTranslateErrorEXCEPTION_TYPESgetr  r   r   r   exccaughtspecial
exceptionsr&   r   s   &       r   test_builtin_exception"PickleTests.test_builtin_exceptionB  s    	O 	F	 hS(O4dD$7"aC 8#q!S 9!B1c?
 
"C;;s#--vDc4j) # 	##J/   
 !!r   N).r^   r   r   r   r   r   r   r   r   r  r	  r  r  r  r  r  r%  r)  r.  r2  r8  r=  rA  rH  rL  rQ  rV  rZ  r^  ra  rd  rg  rk  rn  rr  ru  rx  r|  r  r  r  r  r  r  r   r   r   s   @r   r   r   
  s     D55/&	-#3% #3J-*.
77=H.
7777
%<6/ /06)-
66<G-
6666
9
0 0r   r   c                   x   a  ] tR tRt o RtR tR tR tR tR t	R t
R	 tR
 tR tR tR tR tR tR tRtV tR# )MarshalTestsiX  marshalc                d    V P                  R RR\        .4       V P                  \        .4       R# )TFN)r   Ellipsisr   NotImplementedr   s   &r   test_simple_builtin_singletons+MarshalTests.test_simple_builtin_singletons\  s9    ''	)
 	 	!!#
 	r   c                   V P                  . \        RR4      O\        P                  ^,           N\        P                  N\        P                  ) ^,
          N\        P                  ) ^,
          N^R,          NRNRNRNRNRNRNR \        RR4       4       ORNRNR	NR
N4       V P	                  \
        \        P                  ! 4       .4       R# )r   r8   r;   r<   r=   r?   c              3   J   "   T F  pVP                  ^RRR7      x  K  	  R# 5ir/   r3   r5   s   & r   r(   ;MarshalTests.test_simple_builtin_objects.<locals>.<genexpr>y  s)      '%! jjHTj22%r7      hello worldr9   r:   r   Ny      ?       @      ȑݚ)r   rangerr   maxsizer   OBJECTrX   SimpleNamespacer   s   &r   test_simple_builtin_objects(MarshalTests.test_simple_builtin_objectsg  s   ## %
2s^%
 KK!O%
 KK	%

 [[L1%
 [[L1%
 tG%
 %
 %
 %
 %
 %
 %
"'R~'#%
& '%
* +%
, -%
. /%
 	2 	!!!!##
 	r   c                Z    V P                  \        4       \        R 4      .\        R7       R# )r  r   N)r   	bytearraybytesr   s   &r   test_bytearrayMarshalTests.test_bytearray  s,    ##Kn%%
  	$ 	r   c                    V P                  RRRR\        . RO4      .4       V P                  RRR	\        \        ^.4      \        ^.4      \        ^.4      .4      .4       R# )
r   Nr   r   helloworldr   Tr  r   r  r   r0   r      r  r  )      )r   r   r   s   &r   'test_compound_immutable_builtin_objects4MarshalTests.test_compound_immutable_builtin_objects  sh    ##i %
 	 	##$y!~y!~y!~FG%
 	r   c                    V P                  . . RO/ ^^^^^^	/\        4       0 Rm.4       V P                  ^.^.^..^RR/^RR//R0.4       R# )r   aTbFNr   r   )r   r   r   s   &r   %test_compound_mutable_builtin_objects2MarshalTests.test_compound_mutable_builtin_objects  ss    ##1aAE
%
 
	 	##S1#sOdQe-L%
 	r   c                j    \        4       pV P                  V3\        V.4      V.VR /R V/V0.4       R# )TN)r   r   r   )r   boguss   & r   ,test_compound_builtin_objects_with_bad_items9MarshalTests.test_compound_builtin_objects_with_bad_items  sC    !!HugGDM5MG#
 	r   c                    V P                  . R  \        P                   4       OR \        P                   4       O4       R# )c              3   8   "   T F  qP                   x  K  	  R # 5ir   rK   rM   s   & r   r(   1MarshalTests.test_builtin_code.<locals>.<genexpr>       1.Qjj.rO   c              3   8   "   T F  qP                   x  K  	  R # 5ir   rK   rM   s   & r   r(   r         5"4Qjj"4rO   N)r   rl   	FUNCTIONSFUNCTION_LIKEr   s   &r   test_builtin_codeMarshalTests.test_builtin_code  s9    ## %
1$..1%
5$"4"45%
 	r   c                   a \         .o\        pV P                  V3R  lV 4       4       V P                  V3R lV 4       4       R# )c              3   :   <"   T F  pVS9  g   K  Vx  K  	  R # 5ir   r   r%   r&   	shareables   & r   r(   1MarshalTests.test_builtin_type.<locals>.<genexpr>  s       ";#%(	%9 #&#   	
c              3   :   <"   T F  pVS9   g   K  Vx  K  	  R # 5ir   r   r  s   & r   r(   r    s       (=u+.)+; ),ur  N)StopIterationBUILTIN_TYPESr   r   )r   rX   r  s   & @r   test_builtin_typeMarshalTests.test_builtin_type  sH    
	 !! "; "; 	;'' (=u (= 	=r   c                    \         \        P                  \        P                  \        P
                  .pV F'  p\        V4      \        P                  J d   K"  Q V4       h	  V P                  V4       R # r   
r   rr   is_finalizingexitr   r   rC   rX   BuiltinFunctionTyper   r   	functionsrY  s   &  r   test_builtin_function"MarshalTests.test_builtin_function  ^    HH22	
	 D:!:!::@D@:  	!!),r   c                R   R p \         h  \          d   pTp Rp?MRp?ii ; i\        Y.3\        Y.3\        RR^^T3\        RR^^T3\
        R^^T3/p. p\         F4  pTP                  T4      ;'       g    T3pTP                  T! T!  4       K6  	  T P                  T4       R# r  
r  r  r   r  r  r  r  r  r  r   r  s   &       r   r  #MarshalTests.test_builtin_exception      	O 	F	 hS(O"aC 8#q!S 9!B1c?
 
"C;;s#--vDc4j) # 	!!*-r  c                2   \        \        4      \        P                  J g   Q \        \        4      4       h\        \        4      \        P                  J g   Q \        \        4      4       h\        \
        4      \        P                  J g   Q \        \        4      4       hR \        P                  9  g   Q h\        P                  ! R R4      ;_uu_ 4        ^ RI	pRRR4       V P                  \        \        \
        X.4       R#   + '       g   i     L3; ir,   r   NrC   rr   rX   
ModuleTyperl   unittestrs   r   r}   r,   r   r   r,   s   & r   test_moduleMarshalTests.test_module      CyE,,,7d3i7,DzU---9tDz9-H~!1!11=4:=1,,,**:r:: ; 	!!	#
 	 ;:   DD	c                    V P                  \        P                  4       . p\        P                  P                  4        F  w  r#VP	                  V! V!  4       K  	  V P                  V4       R # r   )r   rl   r  re   r  r   r  r&   r   s   &   r   test_user_classMarshalTests.test_user_class  sV    !!$"2"23	))//1ICS$Z( 2!!),r   c                D    V P                  \        P                  4       R # r   )r   rl   rT  r   s   &r   test_user_functionMarshalTests.test_user_function
  s    !!$"4"45r   c                ~    V P                  \        P                  ! R 4      \        P                  ! R ^*4      .4       R# r#   )r   rl   r  r  r   s   &r   test_user_exception MarshalTests.test_user_exception  s1    !!h'NN8R(#
 	r   r   N)r^   r   r   r   r   r  r  r  r  r  r  r  r  r  r  r   r  r	  r  r   r   r   s   @r   r  r  X  sU     D	>(&	=
-.. -6 r   r  c                   6   a  ] tR tRt o RtR tR tR tRtV t	R# )	CodeTestsi  codec                    V P                  . R  \        P                   4       OR \        P                   4       O4       R# )c              3   8   "   T F  qP                   x  K  	  R # 5ir   rK   rM   s   & r   r(   /CodeTests.test_function_code.<locals>.<genexpr>  r  rO   c              3   8   "   T F  qP                   x  K  	  R # 5ir   rK   rM   s   & r   r(   r    r  rO   N)r   rl   r  r  r   s   &r   test_function_codeCodeTests.test_function_code  s9    11 3
1$..13
5$"4"453
 	r   c                h    V P                  . \        P                  O\        P                  O4       R # r   r   rl   r  r  r   s   &r   test_functionsCodeTests.test_functions  s/    !! #
^^#
#
 	r   c                `    V P                  R RR\        \        RRRR. / \        4       .4       R # NTF'  spam   spamr   r   r  r  r   r   s   &r   test_other_objectsCodeTests.test_other_objects$  ;    !!H#
 	r   r   N)
r^   r   r   r   r   r  r  r!  r   r   r   s   @r   r  r    s     D r   r  c                   6   a  ] tR tRt o RtR tR tR tRtV t	R# )ShareableFuncTestsi5  rY  c                h    V P                  . \        P                  O\        P                  O4       R # r   )r   rl   STATELESS_FUNCTIONSr  r   s   &r   test_stateless!ShareableFuncTests.test_stateless9  s3    ## %
%%%
 %
 	r   c                V    V P                  . R  \        P                   4       O4       R# )c              3   T   "   T F  pV\         P                  9  g   K  Vx  K   	  R # 5ir   )rl   r'  rM   s   & r   r(   8ShareableFuncTests.test_not_stateless.<locals>.<genexpr>B  s%      4A$222 a   (
(N)r   rl   r  r   s   &r   test_not_stateless%ShareableFuncTests.test_not_stateless@  s*    !! #
4 4#
 	r   c                `    V P                  R RR\        \        RRRR. / \        4       .4       R # r  r   r   s   &r   r!  %ShareableFuncTests.test_other_objectsF  r#  r   r   N)
r^   r   r   r   r   r(  r.  r!  r   r   r   s   @r   r%  r%  5  s     D r   r%  c                   v   a  ] tR tRt o Rt. ROt. ROtR tR tR t	R t
R tR tR	 tR
 tR tR tR tRtV tR# )PureShareableScriptTestsiW  zscript-purec                `    V P                  . V P                  O\        P                  R 7       R# r  Nr   VALID_SCRIPTSrX   CodeTyper   s   &r   test_valid_str'PureShareableScriptTests.test_valid_strx  s/    '' )
)
nn 	( 	&r   c                @    V P                  . V P                  O4       R # r   r   INVALID_SCRIPTSr   s   &r   test_invalid_str)PureShareableScriptTests.test_invalid_str}  s#    !! #
!!#
 	r   c                n    V P                  . R  V P                   4       O\        P                  R7       R# )c              3   B   "   T F  qP                  R 4      x  K  	  R# 5iutf8Nencoder%   ss   & r   r(   <PureShareableScriptTests.test_valid_bytes.<locals>.<genexpr>  s     ;(:1hhv(:   r  Nr6  r   s   &r   test_valid_bytes)PureShareableScriptTests.test_valid_bytes  s4    '' )
;(:(:;)
nn 	( 	&r   c                N    V P                  . R  V P                   4       O4       R# )c              3   B   "   T F  qP                  R 4      x  K  	  R# 5irB  rD  rF  s   & r   r(   >PureShareableScriptTests.test_invalid_bytes.<locals>.<genexpr>  s     =(<1hhv(<rI  Nr<  r   s   &r   test_invalid_bytes+PureShareableScriptTests.test_invalid_bytes  s(    !! #
=(<(<=#
 	r   c                V    V P                  . R  \        P                   4       O4       R# )c              3   8   "   T F  qP                   x  K  	  R # 5ir   rK   rM   s   & r   r(   APureShareableScriptTests.test_pure_script_code.<locals>.<genexpr>  s     ="<Qjj"<rO   N)r   rl   PURE_SCRIPT_FUNCTIONSr   s   &r   test_pure_script_code.PureShareableScriptTests.test_pure_script_code  s(    11 3
=$"<"<=3
 	r   c                V    V P                  . R  \        P                   4       O4       R# )c              3   h   "   T F(  pV\         P                  9  g   K  VP                  x  K*  	  R # 5ir   rl   rT  rL   rM   s   & r   r(   CPureShareableScriptTests.test_impure_script_code.<locals>.<genexpr>  +      6"7Q$444 ajj"7   22Nr   rl   SCRIPT_FUNCTIONSr   s   &r   test_impure_script_code0PureShareableScriptTests.test_impure_script_code  s,    !! #
6$"7"7 6#
 	r   c                    V P                  . R  \        P                   4       OR \        P                   4       O4       R# )c              3   h   "   T F(  pV\         P                  9  g   K  VP                  x  K*  	  R # 5ir   )rl   r^  rL   rM   s   & r   r(   ;PureShareableScriptTests.test_other_code.<locals>.<genexpr>  s)      1.Q$/// ajj.r\  c              3   8   "   T F  qP                   x  K  	  R # 5ir   rK   rM   s   & r   r(   rc    r  rO   Nr  r   s   &r   test_other_code(PureShareableScriptTests.test_other_code  s?    !! #
1$.. 1#
 6$"4"45#
 	r   c                h    V P                  . \        P                  O\        P                  R 7       R# r5  )r   rl   rT  rX   r8  r   s   &r   test_pure_script_function2PureShareableScriptTests.test_pure_script_function  s/    '' )
'')
nn 	( 	&r   c                V    V P                  . R  \        P                   4       O4       R# )c              3   T   "   T F  pV\         P                  9  g   K  Vx  K   	  R # 5ir   rl   rT  rM   s   & r   r(   GPureShareableScriptTests.test_impure_script_function.<locals>.<genexpr>  '      6.A$444 a.r-  Nr]  r   s   &r   test_impure_script_function4PureShareableScriptTests.test_impure_script_function  s,    !! #
6.. 6#
 	r   c                v    V P                  . R  \        P                   4       O\        P                  O4       R# )c              3   T   "   T F  pV\         P                  9  g   K  Vx  K   	  R # 5ir   )rl   r^  rM   s   & r   r(   ?PureShareableScriptTests.test_other_function.<locals>.<genexpr>  s%      1A$/// ar-  Nr  r   s   &r   test_other_function,PureShareableScriptTests.test_other_function  s:    !! #
1 1#
 #
 	r   c                Z    V P                  R RR\        \        R. / \        4       .	4       R # )NTFr   r   r   s   &r   r!  +PureShareableScriptTests.test_other_objects  s2    !!H
#
 
	r   r   N)r   r  z# a commentzprint("spam")zraise Exception("spam")z0if True:
            do_something()
            zif True:
            def spam(x):
                return x
            class Spam:
                def eggs(self):
                    return 42
            x = Spam().eggs()
            raise ValueError(spam(x))
            )z    passz----zZif True:
            def spam():
                # no body
            spam()
            )r^   r   r   r   r   r7  r=  r9  r>  rJ  rO  rU  r_  re  rh  ro  rt  r!  r   r   r   s   @r   r3  r3  W  sT     DM&O&

&


&
 r   r3  c                   0   a  ] tR tRt o RtR tR tRtV tR# )ShareableScriptTestsi  scriptc                V    V P                  . R  \        P                   4       O4       R# )c              3   h   "   T F(  pV\         P                  9  g   K  VP                  x  K*  	  R # 5ir   rY  rM   s   & r   r(   ?ShareableScriptTests.test_impure_script_code.<locals>.<genexpr>  r[  r\  N)r   rl   r^  r   s   &r   r_  ,ShareableScriptTests.test_impure_script_code  s,    11 3
6$"7"7 63
 	r   c                v    V P                  . R  \        P                   4       O\        P                  R7       R# )c              3   T   "   T F  pV\         P                  9  g   K  Vx  K   	  R # 5ir   rl  rM   s   & r   r(   CShareableScriptTests.test_impure_script_function.<locals>.<genexpr>  rn  r-  r  N)r   rl   r^  rX   r8  r   s   &r   ro  0ShareableScriptTests.test_impure_script_function  s:    '' )
6.. 6)
 nn 	( 	&r   r   N)	r^   r   r   r   r   r_  ro  r   r   r   s   @r   ry  ry    s     D& &r   ry  c                   0   a  ] tR tRt o RtR tR tRtV tR# )ShareableFallbackTestsi  fallbackc                0    V P                  \        4       R # r   r   r   r   s   &r   r   %ShareableFallbackTests.test_shareable      ##I.r   c                  aa . \         O\        P                  O\        No. \        O\
        N\        N\        N\        No\        4       ;_uu_ 4        V P                  . VV3R  l\         4       O4       V P                  . V3R l\         4       O4       V P                  . V3R l\         4       O\        N4       RRR4       R#   + '       g   i     R# ; i)c              3   d   <"   T F%  pVS9   g   K  VS9  g   K  V\         Jg   K!  Vx  K'  	  R # 5ir   rT   )r%   rF   ignoredokays   & r   r(   <ShareableFallbackTests.test_not_shareable.<locals>.<genexpr>  s:      4]$Y #$G#3 22 !]s   	000
0c              3   R   <"   T F  pVS9   g   K  V\         Jg   K  Vx  K  	  R # 5ir   r  )r%   rF   r  s   & r   r(   r    s.      D]'\ &'/B&B !]s   	''
'c              3   8   <"   T F  qS9  g   K  Vx  K  	  R # 5ir   r   )r%   rF   r  s   & r   r(   r    s     <]tm!!]s   
N)r   rl   r'  LAMBDArI   r  METHODBUILTIN_METHODMETHOD_WRAPPERr   r   r   r   r   rT   )r   r  r  s   &@@r   r   )ShareableFallbackTests.test_not_shareable  s    

%%
 


$

 
 	

 
 !""'' )4] 4) 
 ++ -D] D-  %% '<]<'#'  #"""s   A+CC	r   N)	r^   r   r   r   r   r   r   r   r   r   s   @r   r  r    s     D/ r   r  c                      a  ] tR tRt o RtR tR tR tR tR t	R t
R	 tR
 tR tR tR tR tR tR tR tR tR tR tR tR tR tR tR tRtV tR# )ShareableTypeTestsi  xidatac                0    V P                  \        4       R # r   r  r   s   &r   r   !ShareableTypeTests.test_shareable  r  r   c                b    V P                  . RO4       V P                  \        \        .4       R # )N)NTF)r   r   r  r  r   s   &r   test_singletons"ShareableTypeTests.test_singletons  s0    '' )
 	
 	!!#
 	r   c                ,    V P                  R R.4       R# )r  r  Nr   r   s   &r   
test_typesShareableTypeTests.test_types  s    ##%
 	r   c                N    R  \        RR4       4       pV P                  V4       R# )c              3   J   "   T F  pVP                  ^RRR7      x  K  	  R# 5ir/   r3   r5   s   & r   r(   0ShareableTypeTests.test_bytes.<locals>.<genexpr>  s)      +)a **Q*66)r7   r8   Nr  )r  r   )r   r   s   & r   
test_bytesShareableTypeTests.test_bytes  s%    + S>+##F+r   c                ,    V P                  . RO4       R# )r9   N)r9   r:   r   r  r   s   &r   	test_strsShareableTypeTests.test_strs  s    ## %
 	r   c                    \         P                  \         P                  ) ^,
          .p\        P                  ! \	        RR4      V4      pV P                  V4       R# )r   r8   Nr  )rr   r  	itertoolschainr  r   )r   boundsr   s   &  r   test_intShareableTypeTests.test_int  s?    ++|a/0r38##F+r   c                    \         P                  ^,           \         P                  ) ^,
          ^R,          .pV P                  V\        4       R# )r   r;   N)rr   r  r   OverflowError)r   intss   & r   test_non_shareable_int)ShareableTypeTests.test_non_shareable_int  s;    KK!O[[L1tG

 	!!$6r   c                ,    V P                  . RO4       R# )r<   N)r<   r=   r  r?   r  r  r   s   &r   
test_floatShareableTypeTests.test_float$  s    ## %
 	r   c                R    V P                  . RO4       V P                  . RO4       R# )r   N)r   r  r  r  )r  r  r  r  r   s   &r   
test_tupleShareableTypeTests.test_tuple-  s*    ## %
 	 	## %
 	r   c           
        \         \        .pV F  p\        ^ RV.4      pV P                  \	        V4      4      ;_uu_ 4        V P                  \        4      ;_uu_ 4        V P                  V4       RRR4       RRR4       \        ^ RV3.4      pV P                  R\	        V4      ,           4      ;_uu_ 4        V P                  \        4      ;_uu_ 4        V P                  V4       RRR4       RRR4       K  	  R#   + '       g   i     L; i  + '       g   i     L; i  + '       g   i     LD; i  + '       g   i     EK<  ; i)r   r>   Nznested )	EXCEPTIONr  rH   r   r   r   r   r   )r   non_shareablesrG  rn   s   &   r   *test_tuples_containing_non_shareable_types=ShareableTypeTests.test_tuples_containing_non_shareable_types;  s    
  A1c1+&Ed5k**&&'899OOE* : + 1b1$-(Ei$u+566&&'899OOE* : 76   :9 +* :9 766sH   D D 2D:D9D&*D9 DDD#&D61D99Ec                0    V P                  \        4       R # r   )r   r   r   s   &r   r   %ShareableTypeTests.test_not_shareableM      !!-0r   c                :    V P                  \        4       .4       R # r   )r   r   r   s   &r   test_objectShareableTypeTests.test_objectP  s    !!H#
 	r   c                    V P                  . R  \        P                   4       OR \        P                   4       O4       R# )c              3   8   "   T F  qP                   x  K  	  R # 5ir   rK   rM   s   & r   r(   /ShareableTypeTests.test_code.<locals>.<genexpr>X  r  rO   c              3   8   "   T F  qP                   x  K  	  R # 5ir   rK   rM   s   & r   r(   r  Y  r  rO   Nr  r   s   &r   	test_codeShareableTypeTests.test_codeU  s9    !! #
1$..1#
5$"4"45#
 	r   c                   \         P                   F'  p\        V4      \        P                  J d   K"  Q V4       h	  \        \         P
                  P                  4      \        P                  J g   Q X4       h\        \        4      \        P                  J g   Q hV P                  . \         P                  O\         P
                  P                  N\        N4       R # r   )
rl   r  rC   rX   r   SpamOkayr  r  
LambdaTyper   )r   rY  s   & r   test_function_object'ShareableTypeTests.test_function_object\  s    NND:!3!339T93 #DMM&&'5+=+==CtC=F|u/////!! #
^^#
MM#
 #
 	r   c                    \         \        P                  \        P                  \        P
                  .pV F'  p\        V4      \        P                  J d   K"  Q V4       h	  V P                  V4       R # r   r  r  s   &  r   r  (ShareableTypeTests.test_builtin_functionh  r  r   c                    V P                  \        P                  4       V P                  \        P                  4       R # r   )r   rl   r  FUNCTION_LIKE_APPLIEDr   s   &r   test_function_like%ShareableTypeTests.test_function_liket  s*    !!$"4"45!!$"<"<=r   c                   \         P                  ! 4       P                  \        P                  . P
                  \        P                  \        P                  R ,          \        P                  \        P                  P                  \        P                  \        P                  P                  \        P                  \        P                   \        P"                  \%        4       P&                  \        P(                  \$        P*                  \        P,                  /pVP/                  4        F  w  r#\1        V4      VJ d   K  Q W#34       h	  V P3                  . VO\5        \         P                  P                  4      N\7        \         P                  P                  4      N\9        \         P                  P                  4      N4       R# )r+   N)rl   r  r  rX   r   r  r   rU   rd   ClassMethodDescriptorTyper   rL   GetSetDescriptorType__globals__MemberDescriptorTyper_   joinMethodDescriptorTyper   __str__r   __init__WrapperDescriptorTypere   rC   r   staticmethodclassmethodproperty)r   	_wrappersr   r   s   &   r   test_builtin_wrapper'ShareableTypeTests.test_builtin_wrapperx  s6   MMO  %"2"2IIu..MM*%u'F'F'')C)C**E,F,FHHe00He55OOU88	
	 '__.MC9(93/9( / 	!! #
#
++,#
 **+#
 T]]''(	#
 	r   c                2   \        \        4      \        P                  J g   Q \        \        4      4       h\        \        4      \        P                  J g   Q \        \        4      4       h\        \
        4      \        P                  J g   Q \        \        4      4       hR \        P                  9  g   Q h\        P                  ! R R4      ;_uu_ 4        ^ RI	pRRR4       V P                  \        \        \
        X.4       R#   + '       g   i     L3; ir  r  r  s   & r   r   ShareableTypeTests.test_module  r  r  c                    V P                  \        P                  4       . p\        P                  P                  4        F  w  r#VP	                  V! V!  4       K  	  V P                  V4       R # r   )r   rl   CLASSESre   r  r  s   &   r   
test_classShareableTypeTests.test_class  sR    !!$,,/	++-ICS$Z( .!!),r   c                0    V P                  \        4       R # r   )r   r  r   s   &r   r  $ShareableTypeTests.test_builtin_type  r  r   c                R    V P                  \        P                  ! R 4      .4       R# r#   )r   rl   r  r   s   &r   test_exception!ShareableTypeTests.test_exception  s#    !!h'#
 	r   c                R   R p \         h  \          d   pTp Rp?MRp?ii ; i\        Y.3\        Y.3\        RR^^T3\        RR^^T3\
        R^^T3/p. p\         F4  pTP                  T4      ;'       g    T3pTP                  T! T!  4       K6  	  T P                  T4       R# r  r  r  s   &       r   r  )ShareableTypeTests.test_builtin_exception  r  r  c                    / p\        R W4       V P                  \        \        P                  ! 4       \        P
                  ! 4       VR,          VR,          .4       R# )zif True:
            try:
                raise Exception
            except Exception as exc:
                TRACEBACK = exc.__traceback__
                FRAME = TRACEBACK.tb_frame
            r@   rA   N)rb   r   rT   rX   r  CellType)r   nss   & r   test_builtin_objects'ShareableTypeTests.test_builtin_objects  sU      	 	!!!!#NNwK{O	#
 		r   r   N)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   s   @r   r  r    s     D/	,
,
7+$1


->* -1
.* r   r  rq   )DynamicClassAttribute_GeneratorWrapperr  r  r  s   spamspamspamspamspamspamspamspamspamspamspamspamspamspamspamspamspamspamspamspamspamspamspamspamspamspamspamspamspamspamspamspamspamspamspamspamspamspamspamspamspamspamr   r  r  r  r  r  r  r   r   r   r   )
contextlib	importlibimportlib.utilr  rr   rX   r  r   test.supportr   import_moduler   r   r   testr   	code_defsr   rl   contextmanagerr   __builtins__re   rW   rC   BUILTINS_TYPES
issubclassr   r  varsOTHER_TYPESr  r  r  r   r  r   r  r  r  r  r*   BUILTIN_EXCEPTIONSr  r  r  r  r  r_   r  METHOD_DESCRIPTOR_WRAPPERr   r  r  r  WRAPPER_DESCRIPTORr   r   rU   rd   r  r   rL   r  r  r  r  r   r  r  r  r  BUILTIN_WRAPPERSr   r  r  r   BUILTIN_FUNCTIONSrs   r}   r,   EMPTYMODMODULESr  r  r  r  r  r  r  BUILTIN_SIMPLETUPLE_EXCEPTIONTUPLE_OBJECTTUPLE_NESTED_EXCEPTIONTUPLE_NESTED_OBJECTrD   rR   rS   rY   rT   r   r   r  r  BUILTIN_CONTAINERSr  rb   r  BUILTIN_OTHERr  USER_TOP_INSTANCESNESTED_CLASSESUSER_NESTED_INSTANCESUSER_INSTANCESr  USER_EXCEPTIONSrI   _UNSHAREABLE_SIMPLE_SHAREABLE_SIMPLE_SHAREABLE_CONTAINERS_UNSHAREABLE_CONTAINERSr   r  r  r  r  r   rT  NoneTypeEllipsisTypeNotImplementedTypeGenericAlias	UnionTyper   anyr]   openra   infileread_code_defs_text
_defs_textreplacerc   ro   rx   rz   r~   TestCaser   r   r  r  r%  r3  ry  r  r  r^   main)r\   rF   r&   ncr  s   000000r   <module>r0     s
       
    &!//0CD ++O< + / 1   !- 2 2 4L 4
1d8K!! 4L"0 6.3 m4 3. 6!%[..0 M0TQa& JJ q0 M
O M6M  F 40<=>7 N*E*K*K*MN1 1  
		HH !!__ 
EE++MM*u>>	!;!;	""E$>$>u99E++33##$d""#TT]] $  HH**  $ $$"":r22 3222 	 
K	

	R~     KK!O!" KK#$ 	[[L1%& 	[[L1'( 2s^)* tG+. /0 12 	34 56 7: c9%3S9,/ #y) c? !*- ,,R0  S$A1aAQa!Q Es^TbMy!~t$%cN	I% L     
NNwK{O  )-(8(8(>(>(@A(@ae(@A +/+>+>+D+D+FG+F41A+FG 
 	h 	  
KK!O[[L1tG  $2 :Nq%88 N :	A'	A
D' 
D
 += B*<Q"#+@"@  !q*< B 	  	
     *$..) .$,,- 
^^ 	MM   
!$ 
%( 
\\)* +. /8#     
 	MM 
 
  " 
NN#$ 
%& 
'( 
)* 
OO+, 
-0 12 34 56 78 9
< IjI333IjIII II
 	)

kkmO 	$--FJ##GY7J     	  
	 OZ@   0 0   Lh'' L^K0/ K0\
y? yx B Dd dN&3 &"!_ !Hb bJ zMMO s   DD(D>D D8DDD% %D8,D33D8LL 	-R?&S8"W'	U<5U<;!W	V1*V10	WW	]77^	%%__#	