§ |<ˆj ãóÎ —ddlZddlZddlZddlZddlZddlZddlmZddlmZddl m Z ddl m Z ddl mZddlmZddlmZdd lmZdd lmZdd lmZdd lmZdd lmZddlmZddlmZddlmZddlmZddlmZddlmZddlmZddlmZddlmZddlm Z ddlm!Z!ddlm"Z"ddl#Z#ddl#m$Z$ddl%m&Z&ddl'm(Z(ddl'm)Z)ddl*m+Z+ddl,m-Z-dd l,m.Z.dd!l,m/Z/dd"l,m0Z0dd#l,m1Z1dd$l,m2Z2dd%l,m3Z3dd&l,m4Z4dd'l,m5Z5dd(l,m6Z6dd)l,m7Z7dd*l,m8Z8dd+l,m9Z9dd,l,m:Z:dd-l;mm?Z?dd0l@mAZAdd1l@mBZBdd2lCmDZDdd3lCmEZEdd4lFmGZGdd5lHmIZIdd6lHmJZJdd7lHmKZKdd8lLmMZMdd9lLmNZNdd:lOmPZPdd;lOmQZQddlOmUZUdd?lVmWZWdd@lXmYZYddAlXmZZZe!dB¦«Z[e!dCedDe\f¬E¦«Z]e"edDe[fedDee[ddfffZ^e"ee[e\dfede\eee_e_efffZ`ejadF¬G¦«GdH„dIee[¦«¦«ZbdšdM„ZcdNe$jddOdPdLee"e$jde$jeffdQ„ZfdNe$jgdReQdLee"e$jde$jeffdS„ZheSeeidTf¦«ZjdUe$jedVdWdXdYdLdfdZ„Zkd[e\dLed\fd]„Zlee\dDfZmd^e$jddReQdLeemfd_„Znd`ee$jddLee$jdfda„Zod^e$jddbeeQee$jdeemdfffdceeQeemddffdLdfde„Zpd`ee$jddfdbeeQee$jdeemdfffdceeQeemddffdReQdLee$jddff df„ZqdgdhdLefdi„ZrejaGdj„dk¦«¦«ZsGdl„dh¦«Zte0Gdm„dnet¦«¦«Zue0Gdo„dpev¦«¦«ZwGdq„dre)¦«ZxdseidLefdt„ZydudvdgetdLe[fdw„Zzd›dx„Z{dydzd{eid|e=dLd}fd~„Z|e0Gd„d€ee[¦«¦«Z}dOe}e[dgetdLdvfd�„Z~dOe}e[dgeudLe[fd‚„Zdƒee"eee\eegee\ffdLee"eee\dDfeegee\fffd„„Z€d…eee\dLeee\dDffd†„Z�d‡e]dˆd\dLe]fd‰„Z‚e0ejadF¬G¦«GdŠ„d\¦«¦«¦«Zƒe9dDdDdDdDdDd‹œdŒe]dRd�d…eee\dŽe„dƒee"eee\eegee\ffd�eeidLe]fd�„¦«Z…e9 dœdDdDdDdDdd‹œdŒddRd�d…eee\dŽe„dƒee"eee\eegee\ffd�eeidLeƒfd‘„¦«Z… d�d‡dd’ddd‹œdŒee]dRd�d…eee\dŽe„dƒee"eee\eegee\ffd�eeidLe"eƒe]ffd“„Z… d�d‡dd’ddd‹œd”„Z†e…dJ¬•¦«dgetdLe=fd–„¦«Z‡d—e?dLdfd˜„ZˆGd™„dY¦«Z‰dS)žéN)Ú defaultdict)Údeque)Úsuppress)ÚPath)Ú TracebackType)ÚAny)ÚCallable)Úcast)ÚDict)Ú Generator)ÚGeneric)ÚIterable)ÚIterator)ÚList)ÚMutableMapping)ÚNoReturn)ÚOptional)ÚSequence)ÚSet)ÚTuple)ÚType)Ú TYPE_CHECKING)ÚTypeVar)ÚUnion)Únodes)Ú getfslineno)ÚFormattedExcinfo)Ú TerminalRepr)ÚTerminalWriter)Ú _format_args)Ú_PytestWrapper)Ú assert_never)Úfinal)Ú get_real_func)Úget_real_method)Úgetfuncargnames)Ú getimfunc)Ú getlocation)Ú is_generator)ÚNOTSET)Ú NotSetType)Úoverload)Ú safe_getattr)Ú _PluggyPlugin)ÚConfig)ÚParser©Úcheck_ispytest)Ú YIELD_FIXTURE)ÚMark)Ú ParameterSet)Ú MarkDecorator©Úfail)Úskip)Ú TEST_OUTCOME)Ú absolutepath)Ú bestrelpath)Ú HIGH_SCOPES)ÚScope)ÚStashKey)ÚDeque)Ú _ScopeName)ÚSession)Ú CallSpec2)ÚMetafuncÚ FixtureValueÚFixtureFunction.)ÚboundT)Úfrozencó$—eZdZUded<eed<dS)ÚPseudoFixtureDefz"_FixtureCachedResult[FixtureValue]Ú cached_resultÚ_scopeN)Ú__name__Ú __module__Ú __qualname__Ú__annotations__r>©óúb/builddir/build/BUILD/cloudlinux-venv-1.0.12/venv/lib/python3.11/site-packages/_pytest/fixtures.pyrJrJjs%€€€€€€à7Ð7Ð7Ñ7Ø €M€M�M€M€MrRrJÚsessionrBÚreturncó.—t|¦«|_dS©N)ÚFixtureManagerÚ_fixturemanager)rTs rSÚpytest_sessionstartrZps€Ý,¨WÑ5Ô5€GÔÐÐrRÚnodeÚ fixturedefúFixtureDef[object]cóà—ddlm}|}d |jd¦«}|r?t ||¦«r ||jkr$|j}|rt ||¦«¯||jk°$|€|jS|S)Nr)ÚPackagez{}/{}z __init__.py)Ú_pytest.pythonr_ÚformatÚbaseidÚ isinstanceÚnodeidÚparentrT)r[r\r_ÚcurrentÚfixture_package_names rSÚget_scope_packagerhts�€ð'Ð&Ð&Ð&Ð&Ð&à<@€GØ"Ÿ>š>¨*Ô*;¸]ÑKÔKÐØ ð!Ý �w Ñ (Ô (ð!Ø,@ÀGÄNÒ,RÐ,Rà”.ˆð ð!Ý �w Ñ (Ô (ð!Ø,@ÀGÄNÒ,RÐ,Rð€ØŒ|ÐØ €NrRÚscopecóî—ddl}|tjur| tj¦«S|tjur| |jj¦«S|tjur| |jj¦«S|tj ur| |jj ¦«S|tj ur| |j j ¦«St|¦«dS)Nr) r`r>ÚFunctionÚ getparentrÚItemÚClassÚpythonÚModuler_rBÚmainr")r[riÚ_pytests rSÚget_scope_noders…sÕ€ðÐÐÐà •”ÐÐØ�~Š~�eœjÑ)Ô)Ð)Ø •%”+Ð Ð Ø�~Š~˜gœnÔ2Ñ3Ô3Ð3Ø •%”,Ð Ð Ø�~Š~˜gœnÔ3Ñ4Ô4Ð4Ø •%”-Ð Ð Ø�~Š~˜gœnÔ4Ñ5Ô5Ð5Ø •%”-Ð Ð Ø�~Š~˜gœlÔ2Ñ3Ô3Ð3å�UÑÔÐÐÐrRúFixtureDef[Any]Ú collectorÚmetafuncrDÚfixturemanagerrXc óŽ—|jdjsdSi}i}|jD]¿}|j ¦«D]Š\}}||jvsJ‚||j|<| |g¦«}t |¦«|j|<| |¦«||vr*|j  |tj ¦«} | ||<Œ‹|j  ¦«ŒÀ|j } | ¦«D]É\}} ||} d} | tj urCt|| ¦«} | €1| tjurt!|t"jj¦«sJ‚|} | €d} n"i}| j t*|¦«} | �|| vr | |g| |<Œšt-|d|t.||| dd¬¦«}|g| |<| �|| |<ŒÊdS)NrÚF©rwrbÚargnameÚfuncriÚparamsÚunittestÚids)Ú_callsÚfuncargsÚitemsr}Ú setdefaultÚlenÚindicesÚappendÚ _arg2scopeÚgetr>rkÚclearÚ_arg2fixturedefsrsrnrcrrrorpÚstashÚname2pseudofixturedef_keyÚ FixtureDefÚget_direct_param_fixture_func)rurvrwÚ arg2paramsÚ arg2scopeÚcallspecr{ÚargvalueÚarg2params_listriÚarg2fixturedefsÚ valuelistr[Úname2pseudofixturedefÚdefaultr\s rSÚadd_funcarg_pseudo_fixture_defr˜œsC€ð Œ?˜1Ô Ô &ðàˆà*,€JØ"$€IØ”Oð "ð "ˆØ!)Ô!2×!8Ò!8Ñ!:Ô!:ð +ð +Ñ ˆG�XØ (¤/Ð1Ð1Ð1Ð1Ø'/ˆHŒO˜GÑ $Ø(×3Ò3°G¸RÑ@Ô@ˆOÝ(+¨OÑ(<Ô(<ˆHÔ ˜WÑ %Ø × "Ò " 8Ñ ,Ô ,Ð ,ؘiÐ'Ð'Ø Ô+×/Ò/°½¼ÑHÔH�Ø%*� ˜'Ñ"øØÔ×ÒÑ!Ô!Ð!Ð!ðÔ/€OØ(×.Ò.Ñ0Ô0ð%<ð%<ш�ð ˜'Ô"ˆØˆØ �œÐ &Ð &Ý! )¨UÑ3Ô3ˆD؈|Ø¥¤ Ð+Ð+µ Ø�wœ~Ô4ñ1ô1Ð+Ð+ðð!�Ø ˆ<Ø$(Ð !Ð !à24ˆGØ$(¤J×$9Ò$9Ý)¨7ñ%ô%Ð !ð !Ð ,°Ðrkr‘Úsortedr…r‚r‡rBr_ÚpathrerprnÚclsr"ÚAttributeError)ržrir‘Úcsr{Ú param_indexÚkeyÚitem_clss rSÚget_parametrized_fixture_keysr¨ïs2èè€ð �œÐ &Ð &Ð &Ð &ðØ”=ˆð!ˆõ%+¨2¬:×+;Ò+;Ñ+=Ô+=Ñ$>Ô$>ð ð Ñ ˆG�[ØŒ}˜WÔ%¨Ò.Ð.ØØ�œ Ð%Ð%Ø$ kÐ2��Ø�%œ-Ð'Ð'Ø  ¨T¬YÔ-=Ð>��Ø�%œ,Ð&Ð&Ø  ¨T¬YÐ7��Ø�%œ+Ð%Ð%Øœ8�Ø  ¨T¬Y¸ÐA��å˜UÑ#Ô#Ð#؈IˆIˆIˆIð ð øõ ð ð ð Ø ˆˆð øøøs”Cà C)Ã(C)r‚có�—i}i}tD]w}i}|||<tt¦«}|||<|D]R}t t ||¦«d¦«}|r%|||<|D]}|| |¦«ŒŒSŒxt |d¦«} tt| ||tj ¦«¦«SrW) r=rrÚdictÚfromkeysr¨r†ÚlistÚreorder_items_atscoper>rB) r‚Ú argkeys_cacheÚitems_by_argkeyriÚdÚitem_držÚkeysr¦Ú items_dicts rSÚ reorder_itemsr´s逨EG€MØBD€OÝð -ð -ˆØ02ˆØ ˆ �eÑÝ0;½EÑ0BÔ0BˆØ!'ˆ˜ÑØð -ð -ˆDÝ—=’=Õ!>¸tÀUÑ!KÔ!KÈTÑRÔRˆDØð -Ø��$‘Øð-ð-�Cؘ3”K×&Ò& tÑ,Ô,Ð,Ð,øð  -õ —’˜u dÑ+Ô+€JÝ Ý˜j¨-¸Í%Ì-ÑXÔXñ ô ðrRr®r¯zDeque[nodes.Item]cóš—tD]B}|| |g¦«D]#}||| |¦«Œ$ŒCdSrW)r=rˆÚ appendleft)ržr®r¯rir¦s rSÚfix_cache_orderr·'sg€õ ð9ð9ˆØ  Ô'×+Ò+¨D°"Ñ5Ô5ð 9ð 9ˆCØ ˜EÔ " 3Ô '× 2Ò 2°4Ñ 8Ô 8Ð 8Ð 8ð 9ð9ð9rRcó܇‡—|tjust‰¦«dkr‰St¦«Št ‰¦«}i}||}||}|�ri}d} |rÆ| ¦«} | |vs| |vrŒt  ˆfd„| | g¦«D¦«d¦«} | sd|| <nd|   ¦«\} } ˆfd„|| D¦«} t| ¦«D](}t|||¦«|  |¦«Œ)n|°Æ|r.t|||| ¦«¦«}|D]} d|| <Œ‰ | ¦«|�°|S)Néc3ó$•K—|] }|‰v¯|V—Œ dSrWrQ)Ú.0ÚkÚignores €rSú z(reorder_items_atscope..Fs'øèè€ÐRÐR�qÀ!È6À/À/�À/À/À/À/ÐRÐRrRcó•—g|]}|‰v¯|‘Œ SrQrQ)r»Úir‚s €rSú z)reorder_items_atscope..Ns%ø€ð"ð"ð"ØÈÈeÈÈ�AÈÈÈrR)r>rkr„ÚsetrÚpopleftrªr«rˆÚpopitemÚreversedr·r¶r­Ú next_lowerÚadd)r‚r®r¯riÚ items_dequeÚ items_doneÚscoped_items_by_argkeyÚscoped_argkeys_cacheÚno_argkey_groupÚslicing_argkeyržÚargkeysÚ_Úmatching_itemsrÀr½s` @rSr­r­1síøø€ð  •”ÐÐ¥# e¡*¤*¨q¢. .؈ Ý"%¡%¤%€Fݘ‘,”,€KØ)+€JØ,¨UÔ3ÐØ(¨Ô/ÐØ ñ#Ø24ˆØˆØð Ø×&Ò&Ñ(Ô(ˆDØ�zÐ!Ð! T¨_Ð%<Ð%<ØÝ—m’mØRÐRÐRÐRÐ0×4Ò4°T¸2Ñ>Ô>ÐRÑRÔRÐTXñôˆGðð Ø(,� Ñ%Ð%à$+§O¢OÑ$5Ô$5Ñ!� ð"ð"ð"ð"Ø5°nÔEð"ñ"ô"�õ" .Ñ1Ô1ð.ð.�AÝ# A }°oÑFÔFÐFØ×*Ò*¨1Ñ-Ô-Ð-Ð-Øð'ð ð( ð (Ý3Ø °À×AQÒAQÑASÔASñôˆOð(ð (ð (�Ø#'� ˜4Ñ Ð Ø� Š �>Ñ"Ô"Ð"ð; ñ#ð< ÐrRÚrequestÚFixtureRequestcó—|jSrW)Úparam©rÑs rSrŽrŽ_s €Ø Œ=ÐrRcóŒ—eZdZUdZeedfed<eedfed<eeed<eee dfed<d d „Z d S) ÚFuncFixtureInfo)ÚargnamesÚ initialnamesÚ names_closureÚname2fixturedefs.rØrÙrÚrtrÛrUNcóp—t¦«}t|j¦«}|rl| ¦«}||vrR||jvrI| |¦«||jvr+| |j|dj¦«|°lt||jj ¬¦«|jdd…<dS)aèRecompute names_closure from initialnames and name2fixturedefs. Can only reduce names_closure, which means that the new closure will always be a subset of the old one. The order is preserved. This method is needed because direct parametrization may shadow some of the fixtures that were included in the originally built dependency tree. In this way the dependency tree can get pruned, and the closure of argnames may get reduced. éÿÿÿÿ)r¦N) rÂrÙÚpoprÚrÇrÛÚupdaterØr Úindex)ÚselfÚclosureÚ working_setr{s rSÚprune_dependency_treez%FuncFixtureInfo.prune_dependency_treepsÊ€õ ™EœEˆÝ˜$Ô+Ñ,Ô,ˆ Øð TØ!—o’oÑ'Ô'ˆGð ˜gÐ%Ð%¨'°TÔ5GÐ*GÐ*GØ— ’ ˜GÑ$Ô$Ð$ؘdÔ3Ð3Ð3Ø×&Ò& tÔ'<¸WÔ'EÀbÔ'IÔ'RÑSÔSÐSðð Tõ!' w°DÔ4FÔ4LÐ MÑ MÔ MˆÔ˜1˜1˜1ÑÐÐrR©rUN) rMrNrOÚ __slots__rÚstrrPrr rrärQrRrSr×r×cs�€€€€€€àQ€Ið�C˜�HŒoÐÐÑð˜˜S˜”/Ð!Ð!Ñ!ؘ”9ÐÐÑØ˜3 Ð):Ô ;Ð;Ô<Ð<Ð<Ñ<ðNðNðNðNðNðNrRr×cór—eZdZdZddœdeddfd„Zed-d „¦«Zedee fd „¦«Z ed „¦«Z d e dd fd„Z ede fd„¦«Zed„¦«Zed„¦«Zed„¦«Zed„¦«Zedefd„¦«Zedee effd„¦«Zed.d„¦«Zdegefddfd„Zdee efddfd„Zdee de fd„Z!d/d„Z"d e defd„Z#d e ded e$effd!„Z%ded fd"„Z&d0d$„Z' d1d'„Z(d e d(e)d)e)ddfd*„Z*dee fd+„Z+de fd,„Z,dS)2rÒzßA request for a fixture from a test or fixture function. A request object gives access to the requesting test context and has an optional ``param`` attribute in case the fixture is parametrized indirectly. F©Ú _ispytestrêrUNcóî—t|¦«||_d|_tj|_i|_|j}|j  ¦«|_ i|_ |j j |_ |dSrW)r2Ú _pyfuncitemÚ fixturenamer>rkrLÚ _fixture_defsÚ _fixtureinforÛÚcopyrŠÚ _arg2indexrTrY)ráÚ pyfuncitemrêÚ fixtureinfos rSÚ__init__zFixtureRequest.__init__”sp€Ý�yÑ!Ô!Ð!Ø%ˆÔà*.ˆÔÝ”nˆŒ Ø9;ˆÔØ'1Ô'>ˆ Ø +Ô <× AÒ AÑ CÔ CˆÔØ*,ˆŒØ/9Ô/AÔ/QˆÔ𠈈ˆrRrAcó—|jjS©zIScope string, one of "function", "class", "module", "package", "session".©rLÚvalue©rás rSrizFixtureRequest.scope©ó€ðŒ{Ô Ð rRcó¶—t|jjj¦«}| t |j¦« |¦«¦«|S)z-Names of all active fixtures in this request.)r¬rìrïrÚÚextendrÂrîÚ difference)ráÚresults rSÚ fixturenameszFixtureRequest.fixturenames®sJ€õ�dÔ&Ô3ÔAÑBÔBˆØ� Š •c˜$Ô,Ñ-Ô-×8Ò8¸Ñ@Ô@ÑAÔAÐA؈ rRcó4—|j}|tjur|j}n>|tjurt |j|j¦«}nt|j|¦«}|€|tjur|j}|s#Jd  ||j¦«¦«‚|S)z>Underlying collection node (depends on current request scope).Nz8Could not obtain a node for scope "{}" for function {!r}) rLr>rkrìr_rhÚ _fixturedefrsrnra)rárir[s rSr[zFixtureRequest.nodeµs®€ð” ˆØ •E”NÐ "Ð "àAEÔAQˆDˆDØ •e”mÐ #Ð #õ% TÔ%5°tÔ7GÑHÔHˆDˆDå! $Ô"2°EÑ:Ô:ˆDØ ˆ<˜E¥U¤[Ð0Ð0àÔ#ˆDØð ð ÐO×VÒVØ �4Ô#ñ ô ñ ô ˆtðˆ rRr{rtcóp—|j |d¦«}|€D|jj€J‚|jjj}|j ||¦«}||j|<|j |d¦«dz }|�| t|¦«krt||¦«‚||j|<||S)Nré) rŠrˆrìrerdrYÚgetfixturedefsrñr„ÚFixtureLookupError)rár{Ú fixturedefsÚparentidràs rSÚ_getnextfixturedefz!FixtureRequest._getnextfixturedefÊsÆ€ØÔ+×/Ò/°¸Ñ>Ô>ˆ Ø Ð ðÔ#Ô*Ð6Ð6Ð6ØÔ'Ô.Ô5ˆHØÔ.×=Ò=¸gÀxÑPÔPˆKð.9ˆDÔ ! 'Ñ *à”×#Ò# G¨QÑ/Ô/°!Ñ3ˆØ Ð  E 6­C° Ñ,<Ô,<Ò#<Ð#<Ý$ W¨dÑ3Ô3Ð 3Ø#(ˆŒ˜Ñ ؘ5Ô!Ð!rRcó—|jjS)z6The pytest config object associated with this request.)rìÚconfigrùs rSr zFixtureRequest.configÝs€ðÔÔ&Ð&rRcó`—|jdkrtd|j›d�¦«‚|jjS)z=Test function object if the request has a per-function scope.Úfunctionzfunction not available in ú-scoped context)rir£rìr™rùs rSr zFixtureRequest.functionâsA€ð Œ:˜Ò #Ð #Ý ØH¨T¬ZÐHÐHÐHñôð ðÔÔ#Ð#rRcó¬—|jdvrtd|j›d�¦«‚|j tjj¦«}|r|jSdS)z:Class (can be None) where the test function was collected.)Úclassr zcls not available in r N)rir£rìrlrrrornr™)ráÚclscols rSr¢zFixtureRequest.clsësc€ð Œ:Ð2Ð 2Ð 2Ý Ð!T¸¼Ð!TÐ!TÐ!TÑUÔUÐ UØÔ!×+Ò+­G¬NÔ,@ÑAÔAˆØ ð Ø”:Ð ð ð rRcó€— |jjS#t$r%t|dd¦«}t|dd¦«cYSwxYw)zrkÚ_compute_fixture_value)rár{r\rKs rSr.z%FixtureRequest._get_active_fixturedefPsÏ€ð ØÔ% gÔ.Ð .øÝð ð ð ð Ø!×4Ò4°WÑ=Ô=� � øÝ%ð ð ð Ø˜iÒ'Ð'Ø%)¨A¨3°Ð$5�MÝ+¨M½5¼>ÑJÔJÐJÐJÐJÐJÐJØð  øøøð� ð øøøð ×#Ò# JÑ/Ô/Ð/Ø&0ˆÔ˜7Ñ#ØÐs/‚ � A,š0¯A,°0A&Á A,Á$A&Á&A,Á+A,cóÌ—|}g}t|t¦«r6| |j¦«|j}t|t¦«°6| ¦«|SrW)rcÚ SubRequestr†rÚ_parent_requestÚreverse)rárfÚvaluess rSÚ_get_fixturestackz FixtureRequest._get_fixturestackcsf€ØˆØ(*ˆÝ˜¥*Ñ-Ô-ð .Ø �MŠM˜'Ô-Ñ .Ô .Ð .ØÔ-ˆGõ˜¥*Ñ-Ô-ð .ð �ŠÑÔÐØˆ rRr\cóÌ—|j}|j}|j} |j}n#t$rd}YnwxYw|�^||jvrU|j|}|j|}tt¦«5|j |}ddd¦«n #1swxYwY�nZt}d}|jdu}t|dd¦«} |rG| rEd  |j |jt|¦«j¬¦«} t#| d¬¦«|rìt%j¦«d} t%j| d¦«} t+| j¦«} | j} t1|  |jj¦«¦«}n#t8$rt1| ¦«}YnwxYwd   |j|jt;|j|jj¦«||¦«} t#| d¬¦«t?|||||d ¬ ¦«}|  ||j|¦« | !|¬ ¦«| "||¦«dS#| "||¦«wxYw) a+Create a SubRequest based on "self" and call the execute method of the given FixtureDef object. This will force the FixtureDef object to throw away any previous results and compute a new fixture value, which will be stored into the FixtureDef object itself. NrÚ nofuncargsFzo{name} does not support fixtures, maybe unittest.TestCase subclass? Node id: {nodeid} Function type: {typename})ÚnamerdÚtypename©Úpytracer¹z}The requested fixture has no parameter defined for test: {} Requested fixture '{}' defined in: {} Requested here: {}:{}TrérÕ)#r{rìrLr‘r£r}r…rr0r‡r*rrar:rdÚtyperMr8ÚinspectÚstackÚ getframeinfor;ÚfilenameÚlinenorçÚ relative_tor ÚrootpathÚ ValueErrorr(r|r3Ú _check_scopeÚexecuteÚ_schedule_finalizers)rár\r{Úfuncitemrir‘rÔr¥Ú has_paramsÚfixtures_not_supportedr'ÚframeÚ frameinfoÚ source_pathÚ source_linenoÚsource_path_strÚ subrequests rSr1z%FixtureRequest._compute_fixture_valuels÷€ðÔ$ˆØÔ#ˆØÔ!ˆð ØÔ(ˆHˆHøÝð ð ð ØˆHˆHˆHð øøøà Ð  G¨x¬Ð$>Ð$>Ø”O GÔ,ˆEØ"Ô*¨7Ô3ˆKõ�(Ñ#Ô#ð 5ð 5Ø Ô+¨GÔ4�ð 5ð 5ð 5ñ 5ô 5ð 5ð 5ð 5ð 5ð 5ð 5øøøð 5ð 5ð 5ð 5ùõˆE؈KØ#Ô*°$Ð6ˆJÝ%,¨X°|ÀUÑ%KÔ%KÐ "Øð )Ð4ð )ð0÷’&Ø!œØ#œ?Ý! (™^œ^Ô4ðñôð õ�S %Ð(Ñ(Ô(Ð(Øð )Ýœ ™œ¨Ô*�Ý#Ô0°°q´Ñ:Ô:� Ý*¨9Ô+=Ñ>Ô>� Ø )Ô 0� ð7Ý&)Ø#×/Ò/°´Ô0HÑIÔIñ'ô'�O�Oøõ"ð7ð7ð7Ý&)¨+Ñ&6Ô&6�O�O�Oð7øøøð1÷28²Ø œØ"Ô*Ý# J¤O°X´_Ô5MÑNÔNØ'Ø%ñ 2ô2ð õ�S %Ð(Ñ(Ô(Ð(åØ �%˜  ¨ZÀ4ð ñ ô ˆ ð ×Ò ¨¬°eÑ<Ô<Ð<ð >à × Ò  zÐ Ñ 2Ô 2Ð 2à × %Ò % j°*Ñ =Ô =Ð =Ð =Ð =øˆD× %Ò % j°*Ñ =Ô =Ð =Ð =øøøs<—Ÿ .­.Á*BÂB BÅ,E;Å;FÆFÈI É I#rRr3cóF‡‡—‰j ˆˆfd„¦«dS)Ncó0•—‰ ‰¬¦«S©NrÕ)Úfinish)r\rRs€€rSúz5FixtureRequest._schedule_finalizers..½sø€¨Z×->Ò->ÀzÐ->Ñ-RÔ-R€rRr )rár\rRs ``rSrIz#FixtureRequest._schedule_finalizers¹s/øø€ð Œ×$Ò$Ð%RÐ%RÐ%RÐ%RÐ%RÑSÔSÐSÐSÐSrRÚinvoking_scopeÚrequested_scopec ó—|dkrdS||krPd | ¦«¦«}td|j›d|›d|j›d|›�d¬¦«dSdS) NrÑú z'ScopeMismatch: You tried to access the z scoped fixture z with a z, scoped request object, involved factories: Fr<)ÚjoinÚ_factorytracebackr8rø)rár{rXrYÚtexts rSrGzFixtureRequest._check_scope¿s¨€ð �iÒ Ð Ø ˆFØ ˜OÒ +Ð +à—9’9˜T×3Ò3Ñ5Ô5Ñ6Ô6ˆDÝ ð/¸/Ô:Oð/ð/Ø"ð/ð/Ø,:Ô,@ð/ð/à(,ð/ð/ðð  ñ ô ð ð ð ð ,Ð +rRcóB—g}| ¦«D]‡}|j}t|¦«\}}t|t¦«r"|jj}t|j|¦«}n|}t|¦«}|  d||dz|j |fz¦«Œˆ|S)Nz%s:%d: def %s%sr) r7r|rrcrrìrTr<r¡r r†rM) ráÚlinesr\ÚfactoryÚfsrCrTÚpÚargss rSr]z FixtureRequest._factorytracebackÑs¯€ØˆØ×0Ò0Ñ2Ô2ð Wð WˆJØ ”oˆGÝ$ WÑ-Ô-‰JˆB�ݘ"�dÑ#Ô#ð Ø#'Ô#3Ô#;�Ý ¤ ¨bÑ1Ô1��à�Ý Ñ(Ô(ˆDØ �LŠLÐ+¨q°&¸1±*¸gÔ>NÐPTÐ.UÑUÑ VÔ VÐ VÐ V؈ rRcó—d|jzS)Nz)r[rùs rSÚ__repr__zFixtureRequest.__repr__ßs€Ø(¨D¬IÑ6Ð6rR©rUrA)rUrBrå)r\r]rUN©r\r]rRr3rUN)-rMrNrOÚ__doc__ÚboolrôÚpropertyrirrçrÿr[rr/r r r¢rrrr¡rrrrTr Úobjectr!rr6r&rrr)r,r+rJr.r7r1rIr>rGr]rfrQrRrSrÒrÒŒs¸€€€€€ððð9>ððð°ðÀ$ððððð*ð!ð!ð!ñ„Xð!ðð˜d 3œiðððñ„Xðð ððñ„Xðð("¨#ð"Ð2Cð"ð"ð"ð"ð&ð'˜ð'ð'ð'ñ„Xð'ðð$ð$ñ„Xð$ðððñ„Xððð7ð7ñ„Xð7ððEðEñ„XðEð ð%�dð%ð%ð%ñ„Xð%ðð˜.¨¨c¨Ô2ðððñ„Xðð ð(ð(ð(ñ„Xð(ð* h¨r°6¨zÔ&:ð*¸tð*ð*ð*ð*ð % %¨¨]Ð(:Ô";ð %Àð %ð %ð %ð %ðG˜h sœmðG°ðGðGðGðGðGðGðGðGð+ sð+¨sð+ð+ð+ð+ð0Øðà Ð#Ð%5°fÔ%=Ð=Ô >ððððð& 4Ð(9Ô#:ðððððK>ðK>ðK>ðK>ðZTØ.ðTØ)rírìrùs rSrfzSubRequest.__repr__ÿs!€ØL˜dÔ.ÐLÐL°tÔ7GÐLÐLÐLÐLrRrcó:—|j |¦«dSr)rr!r"s rSr!zSubRequest.addfinalizers!€ð Ô×%Ò% iÑ0Ô0Ð0Ð0Ð0rRrRcóΕ—|j|jvr3| tj|jj|¬¦«¦«t¦« ||¦«dSrU) r{rÿr!Ú functoolsÚpartialrrVÚsuperrI)rár\rRÚ __class__s €rSrIzSubRequest._schedule_finalizerssiø€ð Ô  TÔ%6Ð 6Ð 6Ø × #Ò #ÝÔ! $Ô"2Ô"9À4ÐHÑHÔHñ ô ð õ ‰Œ×$Ò$ Z°Ñ<Ô<Ð<Ð<ÐrÚintrjrôrçrfr rlr!rIÚ __classcell__)rvs@rSr3r3ãs ø€€€€€àTÐTð ð7ð7ð7à!ð7ðð7ðð 7ð ð 7ð )ð 7ðð7ð ð7ð7ð7ð7ð0M˜#ðMðMðMðMð1 h¨r°6¨zÔ&:ð1¸tð1ð1ð1ð1ð =Ø.ð =Ø.$s€ 1¤6€rRrÝzfile z, line rz Údefz+file %s, line %s: source code not availablez5 recursive dependency involving fixture '{}' detectedz fixture 'z ' not foundz available fixtures: {}z, z6 use 'pytest --fixtures [testpath]' for help on them.)!r†rÑrìr™rüÚmapr{r'rr?Úgetsourcelinesr$Ú enumerateÚrstripÚlstripÚ startswithÚOSErrorÚ IndexErrorÚ TypeErrorrYrÂrerdrŠr‚r¬Ú_matchfactoriesrÇr{rar\r r|)ráÚtblinesÚaddliner@r'r ÚfspathrCr`rÏrÀÚlineÚ error_msgÚfmÚ availablerr:rÚfaclists rSÚ formatreprzFixtureLookupError.formatrepr sˆ€ØˆØ”.ˆØ”Ô)Ô-Ð.ˆØ � Š •SÐ)Ð)¨4Ô+<Ñ=Ô=Ñ>Ô>Ð>ØŒhˆØ ˆ?ð˜#˜2˜#”JˆEØð ð ˆHÝ(¨Ñ2Ô2‰NˆF�Fð Ý"Ô1µ-ÀÑ2IÔ2IÑJÔJ‘��qð �Ð; Ð;Ð;¨v¸©zÐ;Ð;Ñ<Ô<Ð<Ý(¨Ñ/Ô/ðð‘G�A�tØŸ;š;™=œ=�DØ�G˜D 4™KÑ(Ô(Ð(Ø—{’{‘}”}×/Ò/°Ñ6Ô6ðؘðøøõ�Z­Ð3ð :ð :ð :ØI� Ø�˜  V¨V°a©ZÐ$8Ñ8Ñ9Ô9Ð9Ð9Ð9ð :øøøð ˆ;Ø”Ô-ˆBÝ™œˆIØ”|Ô/Ô6Ô=ˆHØ%'Ô%8×%>Ò%>Ñ%@Ô%@ð (ð (Ñ!��kݘr×1Ò1°+¸xÑHÔHÑIÔI�Øð(Ø—M’M $Ñ'Ô'Ð'øØŒ|˜yÐ(Ð(ØM×TÒTØ”Lñô��ð< $¤,Ð;Ð;Ð;�Ø Ð.×5Ò5°d·i²iÅÀyÑ@QÔ@QÑ6RÔ6RÑSÔSÑ SˆCØ ÐLÑ LˆCå% f¨f°g¸sÀDÄLÑQÔQÐQsÁ/$DÄ,D7Ä6D7rW)rUr|) rMrNrOrirrçrÒrôr“rQrRrSrrs|€€€€€àDÐDðUYððØ ”}ðØ/=ðØDLÈSÄMðà ððððð*Rð*Rð*Rð*Rð*Rð*RrRrc óf—eZdZdeedfdedeededeeddf d „Zd e ddfd „Z dS) r|rBzos.PathLike[str]Ú firstlinenor‹Ú errorstringr{rUNcóL—||_||_||_||_||_dSrW)r‹r–rBr•r{)rárBr•r‹r–r{s rSrôzFixtureLookupErrorRepr.__init__Ns-€ðˆŒ Ø&ˆÔØ ˆŒ Ø&ˆÔ؈Œ ˆ ˆ rRÚtwcó@—|jD])}| | ¦«¦«Œ*|j d¦«}|rƒ| t j›d|d ¦«›�d¬¦«|dd…D]:}| t j›d| ¦«›�d¬¦«Œ;| ¦«| dtj |j ¦«|j dzfz¦«dS)Nr[z rT)Úredrz%s:%d) r‹rŽr„r–ÚsplitrÚ fail_markerÚstripÚ flow_markerÚosr�rBr•)rár˜Útbliner`rŽs rSÚ toterminalz!FixtureLookupErrorRepr.toterminal\s+€à”lð %ð %ˆFØ �GŠG�F—M’M‘O”OÑ $Ô $Ð $Ð $ØÔ ×&Ò& tÑ,Ô,ˆØ ð Ø �GŠGÝ#Ô/ÐJÐJ¸¸a¼¿ºÑ8HÔ8HÐJÐJØð ñ ô ð ð˜a˜b˜bœ ð ð �Ø—’Ý'Ô3ÐJÐJ¸D¿JºJ¹L¼LÐJÐJØðñôððð �Љ Œ ˆ Ø �Š��2œ9 T¤]Ñ3Ô3°TÔ5EÈÑ5IÐJÑJÑKÔKÐKÐKÐKrR) rMrNrOrrçrwrrrôrr¡rQrRrSr|r|MsŸ€€€€€ð à˜Ð/Ð/Ô0ð ðð ð˜#”ð ð ð ð ˜#”ð ð ð ð ð ð ðL˜^ðL°ðLðLðLðLðLðLrRr|r'cóô—t|¦«\}}|›d|dz›�}tj |¦«}t |dzt | ¦«¦«zdz|zd¬¦«dS)Nú:rz: r[Fr<)rrrÚ_codeÚSourcer8rçÚindent)Ú fixturefuncr'rbrCÚlocationÚsources rSÚfail_fixturefuncrªos{€Ý˜[Ñ)Ô)�J€BˆØÐ#Ð#�v ‘zÐ#Ð#€HÝ Œ]× !Ò ! +Ñ .Ô .€F݈ˆw‰�˜VŸ]š]™_œ_Ñ-Ô-Ñ -°Ñ 4°xÑ ?ÈÐOÑOÔOÐOÐOÐOrRr§ú_FixtureFunc[FixtureValue]có¸—t|¦«r ttdttddff|¦«}|di|¤Ž} t |¦«}n&#t $rt|j›d�¦«d‚wxYwtj t||¦«}|  |¦«n*ttdtf|¦«}|di|¤Ž}|S)N.z did not yield a valuerQ) r)r r r rEÚnextÚ StopIterationrFrírsrtÚ_teardown_yield_fixturer!)r§rÑÚkwargsÚ generatorÚfixture_resultrs rSÚcall_fixture_funcr³vs€õ�KÑ Ô ð /ÝÝ �S�)¥L°$¸Ð$<Ô=Ð=Ô >À ñ ô ˆ ð �KÐ)Ð) &Ð)Ð)ˆ ð WÝ! )™_œ_ˆNˆNøÝð Wð Wð WÝ Ô 3ÐKÐKÐKÑLÔLÐRVÐ Vð WøøøåÔ%Õ&=¸{ÈIÑVÔVˆ Ø×Ò˜YÑ'Ô'Ð'Ð'å�8 C­Ð$5Ô6¸ ÑDÔDˆ Ø$˜Ð.Ð. vÐ.Ð.ˆØ Ðs Á AÁ#A<cóh— t|¦«t|d¦«dS#t$rYdSwxYw)zºExecute the teardown of a fixture function by advancing the iterator after the yield and ensure the iteration ends (if not it means there is more than one yield in the function).z*fixture function has more than one 'yield'N)r­rªr®)r§Úits rSr¯r¯ŠsP€ðTÝ ˆR‰Œˆõ ˜Ð&RÑSÔSÐSÐSÐSøõ ð ð ð Ø ˆˆð øøøs ‚#£ 1°1Úscope_callablez#Callable[[str, Config], _ScopeName]Ú fixture_namer rAcó— |||¬¦«}n6#t$r)}td ||¦«¦«|‚d}~wwxYwt|t¦«s&t d |||¦«d¬¦«|S)N)r·r zqError evaluating {} while defining fixture '{}'. Expected a function with the signature (*, fixture_name, config)zPExpected {} to return a 'str' while defining fixture '{}', but it returned: {!r}Fr<)Ú Exceptionr‰rarcrçr8)r¶r·r rþÚes rSÚ_eval_scope_callabler»–s¼€ð ð �¨\À&ÐIÑIÔIˆˆøÝ ðððÝð OßOUÊvØ  ñPôPñ ô ð ð  øøøøðøøøõ �f�cÑ "Ô "ð Ý ð ß’6˜.¨,¸Ñ?Ô?Øð ñ ô ð ð €Ms‚ � Aš$>¾AcóZ—eZdZdZ ddddeededd d eed eee gd fdfd ee e d e deee ee dfeegee ffddfd„Zedd„¦«Zdege fddfd„Zdeddfd„Zdedefd„Zdede fd„Zdefd„ZdS)r�z%A container for a fixture definition.FNrwrXrbr{r|r«rirAr}r~r.rUc ó¨—||_|pd|_|du|_||_||_|€ t j}n%t|¦«rt|||j ¦«}t|t¦«r t j |d|j ›d�|¬¦«}||_||_||_t#|||¬¦«|_||_d|_g|_dS)Nryz Fixture 'ú')ÚdescrÚwhere)r:Ú is_method)rYrbÚ has_locationr|r{r>rkÚcallabler»r rcrçÚ from_userrMrLr}rr&rØr~rKÚ _finalizers) rárwrbr{r|rir}r~rs rSrôzFixtureDef.__init__³sö€ð .ˆÔð�l ˆŒ ð#¨$Ð.ˆÔàˆŒ àˆŒ Ø ˆ=Ý”NˆEˆEÝ �e‰_Œ_ð PÝ(¨°¸Ô9NÑOÔOˆEÝ �e�SÑ !Ô !ð Ý”OØÐ9¨¬Ð9Ð9Ð9ÀðñôˆEðˆŒ à28ˆŒ ðˆŒå'¨°7ÀhÐOÑOÔOˆŒ ð!ˆŒ ðLPˆÔØ79ˆÔÐÐrRcó—|jjSrör÷rùs rSrizFixtureDef.scopeòrúrRrcó:—|j |¦«dSrW)rÅr†r"s rSr!zFixtureDef.addfinalizer÷s€Ø Ô×Ò  Ñ*Ô*Ð*Ð*Ð*rRrÑcó€—d} |jrG |j ¦«}|¦«n#t$r}|€|}Yd}~nd}~wwxYw|j°G|r|‚ |jj}| ||¬¦«d|_g|_dS#|jj}| ||¬¦«d|_g|_wxYw)N©r\rÑ)rÅrÞÚ BaseExceptionr[ÚihookÚpytest_fixture_post_finalizerrK)rárÑÚexcr|rºrËs rSrVzFixtureDef.finishús€Øˆð "ØÔ"ð ð ØÔ+×/Ò/Ñ1Ô1�DØ�D‘F”F�F�FøÝ$ð ð ð ð�{ؘøøøøøøøøøð  øøøð Ô"ð ðð Ø� ð ð”LÔ&ˆEØ × /Ò /¸4ÈÐ /Ñ QÔ QÐ Qð"&ˆDÔ Ø!ˆDÔ Ð Ð øð ”LÔ&ˆEØ × /Ò /¸4ÈÐ /Ñ QÔ QÐ Qð"&ˆDÔ Ø!ˆDÔ Ð !Ð !Ð !Ð !s/„B Œ#0¯B ° AºA¾B ÁAÁB  3B=có:—|jD]b}| |¦«}|dkrEt|t¦«sJ‚| t j|j|¬¦«¦«Œc| |¦«}|j �q|j d}||urB|j d�&|j d\}}}|  |¦«‚|j d} | S| |¦«|j �J‚|j j } |   ||¬¦«} | S)NrÑrÕrérrÉ)rØr.rcr�r!rsrtrVÚ cache_keyrKÚwith_tracebackr[rËÚpytest_fixture_setup) rárÑr{r\Ú my_cache_keyrÐrÏÚvalÚtbrþrËs rSrHzFixtureDef.executes7€ð”}ð Yð YˆGØ ×7Ò7¸Ñ@Ô@ˆJؘ)Ò#Ð#å! *­jÑ9Ô9Ð9Ð9Ð9Ø×'Ò'­ Ô(9¸$¼+ÈwÐ(WÑ(WÔ(WÑXÔXÐXøà—~’~ gÑ.Ô.ˆ Ø Ô Ð )ðÔ*¨1Ô-ˆIؘyÐ(Ð(ØÔ% aÔ(Ð4Ø!%Ô!3°AÔ!6‘J�A�s˜BØ×,Ò,¨RÑ0Ô0Ð0à!Ô/°Ô2�FØ!�Mð �KŠK˜Ñ Ô Ð ØÔ%Ð-Ð-Ð-à” Ô"ˆØ×+Ò+°tÀWÐ+ÑMÔMˆØˆ rRcó>—t|d¦«s|jn|jS)NrÔ)Úhasattrr¥rÔ)rárÑs rSrÐzFixtureDef.cache_key0s!€Ý*1°'¸7Ñ*CÔ*CÐVˆwÔ"Ð"ÈÌÐVrRcóN—d |j|j|j¦«S)Nz0)rar{rirbrùs rSrfzFixtureDef.__repr__3s'€ØA×HÒHØ ŒL˜$œ* d¤kñ ô ð rR)FNrg)rMrNrOrirrçrr>r r/rrlrjrrrôrkrir!r3rVrErHrÐrfrQrRrSr�r�¯sÅ€€€€€à/Ð/ðð ð=:ð=:à(ð=:𘔠ð=:ðð =:ð +ð =:ð �U˜L¨(°C¸°=À,Ð3NÔ*OÐQUÐUÔVð =:ð˜ &Ô)Ô*ð=:ðð=:ðØ �%˜ Ô(¨#Ð-Ô.°¸#¸ÀÈÔ@PÐ9PÔ0QÐQÔ Rô ð=:ð ð=:ð=:ð=:ð=:ð~ð!ð!ð!ñ„Xð!ð+ h¨r°6¨zÔ&:ð+¸tð+ð+ð+ð+ð"˜jð"¨Tð"ð"ð"ð"ð.˜zð¨lððððð>W ðW°ðWðWðWðWð ˜#ð ð ð ð ð ð rRr�cóR—|j}|jr'|j�|j |j¦«}nq|j�jt |d¦«r!t |j|jj¦«s|St|j¦«}||jkr| |j¦«}|S)z‡Get the actual callable that can be called to obtain the fixture value, dealing with unittest-specific instances and bound methods.Nr) r|r~rÚ__get__r×rcrrvr')r\rÑr§s rSÚresolve_fixture_functionrÛ9s·€ð ”/€KØÔðDØ Ô Ð 'à$œ/×1Ò1°'Ô2BÑCÔCˆKøð Ô Ð 'õ�{ JÑ/Ô/ð #½ ØÔ  +Ô"6Ô"@ñ9ô9ð #ð#Ð"Ý# J¤OÑ4Ô4ˆKؘjœoÒ-Ð-Ø)×1Ò1°'Ô2BÑCÔC� Ø ÐrRcó:—i}|jD]Q}| |¦«}|j€J‚|j\}}}| ||j|j¦«|||<ŒRt ||¦«}| |¦«} t|||¦«}n}#t$rptj ¦«} | d€J‚t| dtj ¦«r'|j d¦«s d| d_d| | f|_‚wxYw|| df|_|S)zExecution of fixture setup.NrrÚ xunit_setupT)rØr.rKrGrLrÛrÐr³r:ÚsysÚexc_inforcr9r¹rMr†Ú_use_item_location) r\rÑr°r{ÚfixdefrþÚ arg_cache_keyrÍr§rÓrßs rSrÒrÒTsO€ð€FØÔ&ð!ð!ˆØ×/Ò/°Ñ8Ô8ˆØÔ#Ð/Ð/Ð/Ø%+Ô%9Ñ"ˆ� ˜sØ×Ò˜W g¤n°f´mÑDÔDÐDØ ˆˆw‰ˆå*¨:°wÑ?Ô?€KØ×'Ò'¨Ñ0Ô0€Lð Ý" ;°¸Ñ@Ô@ˆˆøÝ ðððÝ”<‘>”>ˆØ˜Œ{Ð&Ð&Ð&Ý Ø �QŒK�œñ ô ð 2àÔ&×1Ò1°-Ñ@Ô@ð 2ð.2ˆH�QŒKÔ *Ø$(¨,¸Ð#Aˆ Ô Ø ðøøøð!'¨ °dÐ;€JÔØ €Ms ÂBÂA:DrcóJ—|€dSt|¦«r|St|¦«SrW)rÃÚtuple)rs rSÚ_ensure_immutable_idsråqs-€ð €{؈tÝ��}„}ðØˆ Ý �‰:Œ:ÐrRr}có(—|�t|¦«ndSrW)rä)r}s rSÚ_params_converterrç{s€ð#Ð.�5�‰=Œ=ˆ=°DÐ8rRr Úfixture_markercó؇—d |jp|j¬¦«Štj|¦«ˆfd„¦«}t |¦«|_tt|¦«S)z�Wrap the given fixture function so we can raise an error about it being called directly, instead of used as an argument in a test function.asFixture "{name}" called directly. Fixtures are not meant to be called directly, but are created automatically when test functions request them as parameters. See https://docs.pytest.org/en/stable/explanation/fixtures.html for more information about fixtures, and https://docs.pytest.org/en/stable/deprecations.html#calling-fixtures-directly about how to update your code.©r:có*•—t‰d¬¦«dS)NFr<r7)rdr°Úmessages €rSrþz=wrap_function_to_error_out_if_called_directly..resultŽsø€å ˆW˜eÐ$Ñ$Ô$Ð$Ð$Ð$rR) rar:rMrsÚwrapsr!Ú__pytest_wrapped__r rF)r rèrþrìs @rSÚ-wrap_function_to_error_out_if_called_directlyrï�s|ø€ð w÷ ‚f�.Ô%Ð:¨Ô):€fÑ;Ô;ð  õ„_�XÑÔð%ð%ð%ð%ñÔð%õ !/¨xÑ 8Ô 8€FÔå • Ñ (Ô (Ð(rRcó—eZdZUded<eeedfed<dZeed<dZ ee eeedfe e geeffed<dZ eeed <dZejeed <d ed dfd „Zd ed efd„ZdS)ršú6Union[_ScopeName, Callable[[str, Config], _ScopeName]]ri.r}FÚautouseNrr:rêrUcó$—t|¦«dSrWr1)rárês rSÚ __post_init__z#FixtureFunctionMarker.__post_init__¦s€Ý�yÑ!Ô!Ð!Ð!Ð!rRr cóH—tj|¦«rtd¦«‚t|dd¦«rtd¦«‚t ||¦«}|jp|j}|dkr3t|¦«}td  |¦«d¬¦«||_ |S)Nz2class fixtures not supported (maybe in the future)rœFz`` and then use ``@pytest.fixture(name='')``. NT)rir}ròrr:rê)ršrärÃ)rûrir}ròrr:rès rSrþrþásx€õz+ØØ &Ð 2�u�V‰}Œ}ˆ}¸ØØ�KˆDˆD­H°S©M¬MÐ%I S S½uÀS¹z¼zØ Øð ñô€Nðð0؈~Ð.Ñ/Ô/Ð/à ÐrRc ó`—tjtd¬¦«t|g|¢R|||||dœŽS)z”(Return a) decorator to mark a yield-fixture factory function. .. deprecated:: 3.0 Use :py:func:`pytest.fixture` directly instead. rÏ)Ú stacklevelrú)ÚwarningsÚwarnr3rþ)rûrir}ròrr:rds rSÚ yield_fixturer.sV€õ „M•-¨AÐ.Ñ.Ô.Ð.Ý Øð à ð ð ðØØØ Ø ð ð ð ðrR)ricó—|jS)zØSession-scoped fixture that returns the session's :class:`pytest.Config` object. Example:: def test_foo(pytestconfig): if pytestconfig.getoption("verbose") > 0: ... )r rÕs rSÚ pytestconfigrHs €ð Œ>ÐrRÚparsercó8—| ddgd¬¦«dS)NÚ usefixturesrdz5List of default fixtures to be used with this project)r>r—Úhelp)Úaddini)r s rSÚpytest_addoptionrWs3€Ø ‡M‚MØØ ØØ Dð ñôðððrRcó”—eZdZdZeZeZd&d„Zdejde e fd„Z d'dejd e de fd „Zd eddfd „Zde dee fd„Z d(dee dfdejdee deee dfe e ee eeefffd„Zd)d„Zde ejddfd„Zeddœdejde ddfd„¦«Zeddœdedee de ddfd„¦«Ze fd dœde!ejefde!e e"dfde ddfd!„Zd"e de deeeefd#„Z#d$e$eede deeefd%„Z%dS)*rXaçpytest fixture definitions and information is stored and managed from this class. During collection fm.parsefactories() is called multiple times to parse fixture function definitions into FixtureDef objects and internal data structures. During collection of test functions, metafunc-mechanics instantiate a FuncFixtureInfo object which is cached per node/func-name. This FuncFixtureInfo object is later retrieved by Function nodes which themselves offer a fixturenames attribute. The FuncFixtureInfo object holds information about fixtures and FixtureDefs relevant for a particular function. An initial list of fixtures is assembled like this: - ini-defined usefixtures - autouse-marked fixtures along the collection chain up from the function - usefixtures markers at module/class/function level - test function funcargs Subsequently the funcfixtureinfo.fixturenames attribute is computed as the closure of the fixtures needed to setup the initial fixtures, i.e. fixtures needed by fixture functions themselves are appended to the fixturenames list. Upon the test-setup phases all fixturenames are instantiated, retrieved by a lookup of their FuncFixtureInfo. rTrBrUNcóâ—||_|j|_i|_t¦«|_d|j d¦«i|_|jj |d¦«dS)Nryr Ú funcmanage) rTr rŠrÂÚ_holderobjseenÚgetiniÚ_nodeid_autousenamesÚ pluginmanagerÚregister)rárTs rSrôzFixtureManager.__init__‚sj€ØˆŒ Ø%œnˆŒ ØBDˆÔÝ+.©5¬5ˆÔð �” ×"Ò" =Ñ1Ô1ð; ˆÔ!ð ŒÔ$×-Ò-¨d°LÑAÔAÐAÐAÐArRr[cóØ—g}| d¬¦«D]P}|j dd¦«s3tj|ji|j¤Ž\}}| |¦«ŒQ|S)a!Return all direct parametrization arguments of a node, so we don't mistake them for fixtures. Check https://github.com/pytest-dev/pytest/issues/5036. These things are done later as well when dealing with parametrization so this could be improved. Ú parametrizerêÚindirectF)Ú iter_markersr°rˆr5Ú_parse_parametrize_argsrdrü)rár[Úparametrize_argnamesr#Ú p_argnamesrÏs rSÚ_get_direct_parametrize_argsz+FixtureManager._get_direct_parametrize_args�s†€ð+-ÐØ×'Ò'¨]Ð'Ñ;Ô;ð 8ð 8ˆFØ”=×$Ò$ Z°Ñ7Ô7ð 8Ý ,Ô DØ”[ð!Ø$*¤Mð!ð!‘ � ˜Að%×+Ò+¨JÑ7Ô7Ð7øà#Ð#rRTr�cóZ—|r)t|dd¦«st||j|¬¦«}nd}td„| d¬¦«D¦«¦«}||z}|jj}| ||| |¦«¬¦«\}} } t||| | ¦«S) Nr9F)r:r¢rQc3ó.K—|]}|jD]}|V—ŒŒdSrW)rd)r»ÚmarkÚargs rSr¾z0FixtureManager.getfixtureinfo..¨sIèè€ð ð ØÈTÌYð ð ØFIˆCð ð ð ð ð ð ð rRr rê)Ú ignore_args) rr&r:rärrTrYÚgetfixtureclosurerr×) rár[r|r¢r�rØr rÙr�rÚr”s rSÚgetfixtureinfozFixtureManager.getfixtureinfo sÛ€ð ð �G D¨,¸Ñ>Ô>ð Ý& t°$´)ÀÐEÑEÔEˆHˆHàˆHåð ð Ø ×-Ò-°=Ð-ÑAÔAð ñ ô ñ ô ˆ ð# XÑ-ˆ Ø Œ\Ô )ˆØ79×7KÒ7KØ ˜$¨D×,MÒ,MÈdÑ,SÔ,Sð8Lñ8 ô8 Ñ4ˆ �m _õ˜x¨°}ÀoÑVÔVÐVrRÚplugincóØ—d} t|j¦«}|j d¦«r‘ t |j |jj¦«¦«}n#t$rd}YnwxYw|dkrd}tj tj kr*| tj tj ¦«}n#t$rYnwxYw| ||¦«dS)Nz conftest.pyryú.)r;Ú__file__r:r†rçrerDr rErFrŸÚseprÚSEPÚreplacer£Úparsefactories)rár&rdrcs rSÚpytest_plugin_registeredz'FixtureManager.pytest_plugin_registered²s÷€Øˆð ?ݘVœ_Ñ-Ô-ˆAðŒv× Ò  Ñ/Ô/ð ?ð Ý  ¤×!5Ò!5°d´kÔ6JÑ!KÔ!KÑLÔL�F�FøÝ!ð ð ð Ø�F�F�Fð øøøà˜S’=�=Ø�FÝ”6�UœYÒ&Ð&Ø#Ÿ^š^­B¬FµE´IÑ>Ô>�Føøõð ð ð Ø ˆDð øøøð ×Ò˜F FÑ+Ô+Ð+Ð+Ð+s"„C³1A%Á% A4Á3A4à CÃCrdc#ó€K—tj|¦«D]&}|j |¦«}|r|Ed{V—†Œ'dS)z:Return the names of autouse fixtures applicable to nodeid.N)rÚiterparentnodeidsrrˆ)rárdÚ parentnodeidÚ basenamess rSÚ_getautousenameszFixtureManager._getautousenamesÈsaèè€å!Ô3°FÑ;Ô;ð %ð %ˆLØÔ1×5Ò5°lÑCÔCˆIØð %Ø$Ð$Ð$Ð$Ð$Ð$Ð$Ð$øð %ð %rRrQrÿ.Ú parentnoder#có‡ ‡ —|j}t| |¦«¦«Š dttddfˆ fd„ }||¦«t ‰ ¦«}iŠ d}|t ‰ ¦«krdt ‰ ¦«}‰ D]?}||vrŒ|‰ vrŒ | ||¦«} | r| ‰ |<|| dj¦«Œ@|t ‰ ¦«k°ddtdtfˆ fd„ } ‰   | d¬¦«|‰ ‰ fS) NÚ otherlistrUcóD•—|D]}|‰vr‰ |¦«ŒdSrW)r†)r6r"Úfixturenames_closures €rSÚmergez/FixtureManager.getfixtureclosure..mergeßs=ø€Ø ð 5ð 5�ØÐ2Ð2Ð2Ø(×/Ò/°Ñ4Ô4Ð4øð 5ð 5rRrÝÚarg_namecóh•— ‰|}|djS#t$rtjcYSwxYw)NrÝ)rLr0r>rk)r:rr”s €rSÚ sort_by_scopez7FixtureManager.getfixtureclosure..sort_by_scopeùsLø€ð .Ø-¨hÔ7� ð# 2”Ô-Ð-øõð &ð &ð &Ý”~Ð%Ð%Ð%ð &øøøs ƒ˜1°1T)r¦r5) rdr¬r3rrçrär„rrØr>Úsort) rárÿr4r#rr9rÙÚlastlenr{rr<r”r8s @@rSr$z FixtureManager.getfixtureclosureÏs}øø€ðÔ$ˆÝ# D×$9Ò$9¸(Ñ$CÔ$CÑDÔDÐð 5�X¥cœ]ð 5¨tð 5ð 5ð 5ð 5ð 5ð 5𠈈lÑÔÐõ Ð1Ñ2Ô2ˆ à@BˆØˆØ�Ð1Ñ2Ô2Ò2Ð2ÝÐ.Ñ/Ô/ˆGØ/ð 4ð 4�ؘkÐ)Ð)ØØ˜oÐ-Ð-ØØ"×1Ò1°'¸8ÑDÔD� Øð4Ø/:�O GÑ,Ø�E˜+ bœ/Ô2Ñ3Ô3Ð3øð�Ð1Ñ2Ô2Ò2Ð2ð .¥Cð .­Eð .ð .ð .ð .ð .ð .ð ×!Ò! m¸TÐ!ÑBÔBÐBØÐ1°?ÐBÐBrRrvrDc 󚇇—dtdttfd„Š|jD]£Š|j ‰¦«}|sŒt ˆˆfd„|j d¦«D¦«¦«rŒTt|¦«D]?}|j �+|  ‰|j d|j |j ¬¦«n ‰|jvrnŒ@Œ¤dS) zLGenerate new tests based on parametrized fixtures used by the given metafuncr!rUcóB—tj|ji|j¤Ž\}}|SrW)r5rrdr°)r!rdrÏs rSÚget_parametrize_mark_argnameszKFixtureManager.pytest_generate_tests..get_parametrize_mark_argnamess$€Ý"Ô:¸D¼IÐUÈÌÐUÐU‰GˆD�!؈KrRc3ó2•K—|]}‰‰|¦«vV—ŒdSrWrQ)r»r!r{rAs €€rSr¾z7FixtureManager.pytest_generate_tests..sHøèè€ððàðÐ8Ð8¸Ñ>Ô>Ð>ððððððrRrNT)rrir)r4rrçrÿrŠrˆÚanyÚ definitionrrÅr}rrirrØ)rárvÚ fixture_defsr\r{rAs @@rSÚpytest_generate_testsz$FixtureManager.pytest_generate_testss9øø€ð µð ½Å#¼ð ð ð ð ð Ô,ð" ð" ˆGà#Ô4×8Ò8¸ÑAÔAˆLØð ðõðððððà$Ô/×<Ò<¸]ÑKÔKðñôñôð ðõ ' |Ñ4Ô4ð ð � àÔ$Ð0Ø×(Ò(ØØ"Ô)Ø!%Ø(Ô.Ø&œNð )ñôðð�Eð *Ô"5Ð5Ð5Ø�Eð6øðC" ð" rRr‚có.—t|¦«|dd…<dSrW)r´)rár‚s rSÚpytest_collection_modifyitemsz,FixtureManager.pytest_collection_modifyitems1s€å  Ñ'Ô'ˆˆaˆaˆa‰ˆˆrR)r~Ú node_or_objr~có—t¦«‚rW©ÚNotImplementedError)rárIr~s rSr-zFixtureManager.parsefactories5s€õ"Ñ#Ô#Ð#rRcó—t¦«‚rWrK)rárIrdr~s rSr-zFixtureManager.parsefactories>s€õ"Ñ#Ô#Ð#rRFc óê—|tur|}nYt|tj¦«sJ‚t t |j¦«}t|jt¦«sJ‚|j}||j vrdS|j   |¦«g}t|¦«D�]!}t|tj¦«r|dkrŒ$t||d¦«}t|¦«}t|t¦«sŒZ|jr|j}t!||¦«}t#|||||j|j||j¬¦«} |j |g¦«} | jr|  | ¦«n/t3d„| D¦«¦«} |  | | ¦«|jr| |¦«�Œ#|r2|j |pdg¦« |¦«dSdS)awCollect fixtures from a collection node or object. Found fixtures are parsed into `FixtureDef`s and saved. If `node_or_object` is a collection node (with an underlying Python object), the node's object is traversed and the node's nodeid is used to determine the fixtures' visibilty. `nodeid` must not be specified in this case. If `node_or_object` is an object (e.g. a plugin), the object is traversed and the given `nodeid` is used to determine the fixtures' visibility. `nodeid` must be specified in this case; None and "" mean total visibility. Nr�rzcó —g|] }|j° |‘Œ SrQ)rÂ)r»Úfs rSrÁz1FixtureManager.parsefactories..”s€ÐBÐBÐB˜q°1´>ÐB˜ÐBÐBÐBrRry)r*rcrÚNoder rlr™rdrçrrÇÚdirr-r�ršr:r%r�rir}rrŠrƒrÂr†r„Úinsertròrrü) rárIrdr~Ú holderobjÚ autousenamesr:r™r#Ú fixture_defr’rÀs rSr-zFixtureManager.parsefactoriesHs$€ð* �Ð Ð Ø#ˆIˆIå˜k­5¬:Ñ6Ô6Ð 6Ð 6Ð6Ý�V [¤_Ñ5Ô5ˆIݘkÔ0µ#Ñ6Ô6Ð 6Ð 6Ð6Ø Ô'ˆFØ ˜Ô+Ð +Ð +Ø ˆFà Ô×Ò  Ñ*Ô*Ð*؈ ݘ ‘N”Nð. *ñ. *ˆDõ˜)¥U¤ZÑ0Ô0ð °T¸XÒ5EÐ5EØõ˜y¨$°Ñ5Ô5ˆCÝ% cÑ*Ô*ˆFݘfÕ&;Ñ<Ô<ð ðàŒ{ð #Ø”{�õ " # yÑ1Ô1ˆCå$Ø#ØØØØ”lØ”}Ø!Ø”Jð ñ ô ˆKðÔ+×6Ò6°t¸RÑ@Ô@ˆGØÔ'ð /Ø—’˜{Ñ+Ô+Ð+Ð+õ ÐBÐB GÐBÑBÔBÑCÔC�Ø—’˜q +Ñ.Ô.Ð.ØŒ~ð *Ø×#Ò# DÑ)Ô)Ð)ùà ð XØ Ô %× 0Ò 0°°¸2¸rÑ BÔ B× IÒ IÈ,Ñ WÔ WÐ WÐ WÐ Wð Xð XrRr{cóˆ— |j|}n#t$rYdSwxYwt| ||¦«¦«S)zïGet a list of fixtures which are applicable to the given node id. :param str argname: Name of the fixture to search for. :param str nodeid: Full node id of the requesting test. :rtype: Sequence[FixtureDef] N)rŠr0rärŠ)rár{rdrs rSrzFixtureManager.getfixturedefsœsV€ð ØÔ/°Ô8ˆKˆKøÝð ð ð Ø�4�4ð øøøå�T×)Ò)¨+°vÑ>Ô>Ñ?Ô?Ð?s ‚ � �rc#ópK—ttj|¦«¦«}|D]}|j|vr|V—ŒdSrW)rÂrr0rb)rárrdÚ parentnodeidsr\s rSrŠzFixtureManager._matchfactories«sTèè€õ�EÔ3°FÑ;Ô;Ñ<Ô<ˆ Ø%ð !ð !ˆJØÔ  MÐ1Ð1Ø Ð Ð Ð øð !ð !rR©rTrBrUN)T)rQ)rvrDrUN)&rMrNrOrirr|rôrrQrrçrrjr×r%r.r.rr3rrr r�rr$rFrmrHr,r-rlrr*rr+rrrŠrQrRrSrXrX`sa€€€€€ððð<,ÐØ3Ðð Bð Bð Bð Bð$°´ð$ÀÀSÄ ð$ð$ð$ð$ð(=AðWðWØ”JðWØ59ðWà ðWðWðWðWð$,¨}ð,Àð,ð,ð,ð,ð,% sð%¨x¸¬}ð%ð%ð%ð%ð&(ð 3Cð3Cà˜C ˜H”oð3Cð”Jð3Cð˜c”]ð 3Cð ˆu�S˜#�XŒ  S¤ ¨4°°X¸jȼoÔ5NÐ0NÔ+OÐOÔ Pð 3Cð3Cð3Cð3Cðj)ð)ð)ð)ðZ(°4¸¼ Ô3Cð(Èð(ð(ð(ð(ðð ð $ð$ð$à”Zð$ðð $ð ð $ð$ð$ñ„Xð$ðð ð $ð$ð$àð$𘔠ð$ð ð $ð ð $ð$ð$ñ„Xð$ð06ðRXð ð RXðRXðRXà˜5œ: vÐ-Ô.ðRXð�c˜: tÐ+Ô,ðRXð ð RXð ð RXðRXðRXðRXðh @Øð @Ø$'ð @à �(˜: cœ?Ô+Ô ,ð @ð @ð @ð @ð!Ø# J¨s¤OÔ4ð!Ø>Að!à �*˜S”/Ô "ð!ð!ð!ð!ð!ð!rRrZrå).rW)Šrørsr?rŸrÞrÚ collectionsrrÚ contextlibrÚpathlibrÚtypesrÚtypingrr r r r r rrrrrrrrrrrrrrrrÚ _pytest._coderÚ_pytest._code.coderrÚ _pytest._iorÚ_pytest.compatr r!r"r#r$r%r&r'r(r)r*r+r,r-Ú_pytest.configr.r/Ú_pytest.config.argparsingr0Ú_pytest.deprecatedr2r3Ú _pytest.markr4r5Ú_pytest.mark.structuresr6Ú_pytest.outcomesr8r9r:Ú_pytest.pathlibr;r<Ú _pytest.scoper=r>Ú _pytest.stashr?r@rAÚ _pytest.mainrBr`rCrDrErlrFÚ _FixtureFuncrÊÚ_FixtureCachedResultÚ dataclassrJrZrmÚ CollectorrhrQrsrçrŒr˜r�Ú_Keyr¨r´r·r­rŽr×rÒr3Ú LookupErrorrr|rªr³r¯r»r�rÛrÒrårçrïršrjrþrrrrXrQrRrSúrtsOðØÐÐÐØÐÐÐØ€€€Ø € € € Ø € € € Ø€€€Ø#Ð#Ð#Ð#Ð#Ð#ØÐÐÐÐÐØÐÐÐÐÐØÐÐÐÐÐØÐÐÐÐÐØÐÐÐÐÐØÐÐÐÐÐØÐÐÐÐÐØÐÐÐÐÐØÐÐÐÐÐØÐÐÐÐÐØÐÐÐÐÐØÐÐÐÐÐØÐÐÐÐÐØ!Ð!Ð!Ð!Ð!Ð!ØÐÐÐÐÐØÐÐÐÐÐØÐÐÐÐÐØÐÐÐÐÐØÐÐÐÐÐØÐÐÐÐÐØ Ð Ð Ð Ð Ð ØÐÐÐÐÐØÐÐÐÐÐà€€€ØÐÐÐÐÐØ%Ð%Ð%Ð%Ð%Ð%Ø/Ð/Ð/Ð/Ð/Ð/Ø+Ð+Ð+Ð+Ð+Ð+Ø&Ð&Ð&Ð&Ð&Ð&Ø'Ð'Ð'Ð'Ð'Ð'Ø)Ð)Ð)Ð)Ð)Ð)Ø'Ð'Ð'Ð'Ð'Ð'Ø Ð Ð Ð Ð Ð Ø(Ð(Ð(Ð(Ð(Ð(Ø*Ð*Ð*Ð*Ð*Ð*Ø*Ð*Ð*Ð*Ð*Ð*Ø$Ð$Ð$Ð$Ð$Ð$Ø&Ð&Ð&Ð&Ð&Ð&Ø'Ð'Ð'Ð'Ð'Ð'Ø!Ð!Ð!Ð!Ð!Ð!Ø%Ð%Ð%Ð%Ð%Ð%Ø#Ð#Ð#Ð#Ð#Ð#Ø'Ð'Ð'Ð'Ð'Ð'Ø(Ð(Ð(Ð(Ð(Ð(Ø!Ð!Ð!Ð!Ð!Ð!Ø,Ð,Ð,Ð,Ð,Ð,Ø-Ð-Ð-Ð-Ð-Ð-Ø,Ð,Ð,Ð,Ð,Ð,ØÐÐÐÐÐØ%Ð%Ð%Ð%Ð%Ð%Ø1Ð1Ð1Ð1Ð1Ð1Ø!Ð!Ð!Ð!Ð!Ð!Ø!Ð!Ð!Ð!Ð!Ð!Ø)Ð)Ð)Ð)Ð)Ð)Ø(Ð(Ð(Ð(Ð(Ð(Ø'Ð'Ð'Ð'Ð'Ð'Ø%Ð%Ð%Ð%Ð%Ð%ØÐÐÐÐÐØ"Ð"Ð"Ð"Ð"Ð"ðð(ØÐÐÐÐÐà(Ð(Ð(Ð(Ð(Ð(Ø$Ð$Ð$Ð$Ð$Ð$Ø(Ð(Ð(Ð(Ð(Ð(Ø'Ð'Ð'Ð'Ð'Ð'ðˆw�~Ñ&Ô&€ à�'Ð+°8¸CÀ¸KÔ3HÐIÑIÔI€àØ ˆS�,Ð Ô ¨#¨y¸ÀtÈTÐ9QÔ/RÐ*RÔ!SÐSô€ ðØ ààØ ð ôð Ø àà ˆd�=Ô! =°-Ð?Ô@ð  Bôð ôÐð$€Ô˜dÐ#Ñ#Ô#ððððð�w˜|Ô,ñôñ$Ô#ðð 6ð6ð6ð6ðØ Œ*ðà$ððˆe�E”J ¤Ð/Ô0Ô1ððððð"Ø Œ*ðØ"ðà ˆe�E”J ¤Ð/Ô0Ô1ððððð(C˜H T¨#Ð/@Ð*@Ô%AÔBÑDÔDÐðC<ØŒðC<Ø*4ðC<ØFVðC<à ðC<ðC<ðC<ðC<ðL˜&ð XÐ.EÔ%Fððððð ˆV�Sˆ[Ԁ𨬠ð¸5ðÀXÈdÄ^ðððððH˜ %¤*Ô-ð°$°u´zÔ2Bððððð(9Ø Œ*ð9à˜˜t E¤J°°T¸4°ZÔ0@Ð$@ÔAÐAÔBð9ð˜%  dÐ,?Ð&?Ô!@Ð@ÔAð9ð ð 9ð9ð9ð9ð+Ø �” ˜DÐ Ô !ð+à˜˜t E¤J°°T¸4°ZÔ0@Ð$@ÔAÐAÔBð+ð˜%  dÐ,?Ð&?Ô!@Ð@ÔAð+ð ð +ð  ˆ%Œ*�dÐ Ôð +ð+ð+ð+ð\Ð+;ðÀððððð Ôð%Nð%Nð%Nð%Nð%Nñ%Nô%NñÔð%NðPT7ðT7ðT7ðT7ðT7ñT7ôT7ðT7ðn ð-=ð-=ð-=ð-=ð-=�ñ-=ô-=ñ„ð-=ð`ð5Rð5Rð5Rð5Rð5R˜ñ5Rô5Rñ„ð5RðpLðLðLðLðL˜\ñLôLðLðDP sðP¨xðPðPðPðPðØ-ðØ8Fðàððððð( Tð Tð Tð TðØ9ðàðð ððð ðððð2ðF ðF ðF ðF ðF �˜Ô&ñF ôF ñ„ðF ðRؘ<Ô(ðØ3Aðà!ððððð6ؘ<Ô(ðØ3=ðàððððð:Ø �%˜ ¨&Ô!1Ô2°H¸c¸UÀHÈVÔDTÐ=TÔ4UÐUÔVÔ Wðà ˆe�E˜( 6Ô*¨CÐ/Ô0°(¸C¸5À(È6ÔBRÐ;RÔ2SÐSÔTÔUððððð9Ø �X˜fÔ%Ô &ð9à ˆe�F˜C�KÔ Ô!ð9ð9ð9ð9ð )Øð)à+ð)ðð)ð)ð)ð)ð0Ø€Ô˜dÐ#Ñ#Ô#ð%ð%ð%ð%ð%ñ%ô%ñ$Ô#ñ„ð%ðP ðGJØ),Øð Øð ð ð Ø%ð ð Dð ð �X˜fÔ%Ô &ð ð ð ð Ø ˆh�x Ô'Ô(¨(°C°5¸(À6Ô:JÐ3JÔ*KÐKÔLô ð ð �3Œ-ð ðð ð ð ñ „ð ð à ð ðGJØ),Øð Øð ð ð Øð ð Dð ð �X˜fÔ%Ô &ð ð ð ð Ø ˆh�x Ô'Ô(¨(°C°5¸(À6Ô:JÐ3JÔ*KÐKÔLô ð ð �3Œ-ð ðð ð ð ñ „ð ð37ðJðGQØ)-Øð ØðJðJðJؘÔ/ðJð DðJð �X˜fÔ%Ô &ð Jð ð Jð Ø ˆh�x Ô'Ô(¨(°C°5¸(À6Ô:JÐ3JÔ*KÐKÔLô ð Jð �3Œ-ðJð Ð  /Ð 1Ô2ðJðJðJðJð\ðð Ø Ø Ø Ø ðððððð4 €ˆyÐÑÔð ˜.ð ¨Vð ð ð ñÔð ð˜Vð¨ðððððQ!ðQ!ðQ!ðQ!ðQ!ñQ!ôQ!ðQ!ðQ!ðQ!rR