Files
proxmox/venv/lib/python3.12/site-packages/werkzeug/__pycache__/local.cpython-312.pyc

248 lines
28 KiB
Plaintext
Raw Normal View History

<EFBFBD>
<0A>Hi<48>V<00><01><><00>ddlmZddlZddlZddlZddlZddlmZddl m
Z
ddl m Z ddlm Z ddl mZejrdd lmZdd
lmZdd lmZej(d <0C>Zej(d ej,dej.f<00><0F>Zdd<10>ZGd<11>d<12>ZGd<13>dej6e<00>ZGd<15>d<16>ZGd<17>d<18>ZGd<19>de<1E>Zd d<1B>Z d!d<1C>Z!Gd<1D>dej6e<00>Z"y)"<22>)<01> annotationsN)<01>
ContextVar<EFBFBD><01>partial)<01>update_wrapper)<01>
attrgetter<EFBFBD>)<01>ClosingIterator)<01> StartResponse)<01>WSGIApplication)<01>WSGIEnvironment<6E>T<>F.)<01>boundc<01>$<00>|j<00>y)z<>Release the data for the current context in a :class:`Local` or
:class:`LocalStack` without using a :class:`LocalManager`.
This should not be needed for modern use cases, and may be removed
in the future.
.. versionadded:: 0.6.1
N)<01>__release_local__)<01>locals <20>P/home/intlc/projects/proxmox/venv/lib/python3.12/site-packages/werkzeug/local.py<70> release_localrs<00><00>
<EFBFBD><1B><1B><1D>c<01>^<00>eZdZdZdZd d d<04>Zdd<05>Zdd<06> dd<07>Zdd<08>Zdd <09>Z dd
<EFBFBD>Z
dd <0B>Z y)<14>LocalaqCreate a namespace of context-local data. This wraps a
:class:`ContextVar` containing a :class:`dict` value.
This may incur a performance penalty compared to using individual
context vars, as it has to copy data to avoid mutating the dict
between nested contexts.
:param context_var: The :class:`~contextvars.ContextVar` to use as
storage for this local. If not given, one will be created.
Context vars not created at the global scope may interfere with
garbage collection.
.. versionchanged:: 2.0
Uses ``ContextVar`` instead of a custom storage implementation.
)<01> __storageNc<01>f<00>|<01>tdt|<00><00>d<02><03>}tj|d|<01>y)Nzwerkzeug.Local<<3C> >.storage<67>_Local__storage)r<00>id<69>object<63> __setattr__<5F><02>self<6C> context_vars r<00>__init__zLocal.__init__6s4<00><00> <16> <1E>
%<25><EFBFBD>r<EFBFBD>$<24>x<EFBFBD>j<EFBFBD> <09>%J<>K<>K<EFBFBD><0E><1A><1A>4<EFBFBD>!2<>K<EFBFBD>@rc<01>f<00>t|jji<00>j<00><00>S<00>N)<04>iterr<00>get<65>items<6D>r!s r<00>__iter__zLocal.__iter__@s%<00><00><13>D<EFBFBD>N<EFBFBD>N<EFBFBD>&<26>&<26>r<EFBFBD>*<2A>0<>0<>2<>3<>3r<00><01>unbound_messagec<01><00>t|||<02><01>S)z<>Create a :class:`LocalProxy` that access an attribute on this
local namespace.
:param name: Proxy this attribute.
:param unbound_message: The error message that the proxy will
show if the attribute isn't set.
r+<00><01>
LocalProxy<EFBFBD>r!<00>namer,s r<00>__call__zLocal.__call__Cs<00><00><1A>$<24><04>o<EFBFBD>F<>Frc<01>:<00>|jji<00>yr%)r<00>setr)s rrzLocal.__release_local__Os<00><00> <0C><0E><0E><1A><1A>2<EFBFBD>rc<01>`<00>|jji<00>}||vr||St|<01><00>r%)rr'<00>AttributeError<6F>r!r1<00>valuess r<00> __getattr__zLocal.__getattr__Rs2<00><00><15><1E><1E>#<23>#<23>B<EFBFBD>'<27><06> <0F>6<EFBFBD>><3E><19>$<24><<3C> <1F><1C>T<EFBFBD>"<22>"rc<01><><00>|jji<00>j<00>}|||<|jj|<03>yr%)rr'<00>copyr4)r!r1<00>valuer8s rrzLocal.__setattr__Zs:<00><00><15><1E><1E>#<23>#<23>B<EFBFBD>'<27>,<2C>,<2C>.<2E><06><1C><06>t<EFBFBD> <0C> <0C><0E><0E><1A><1A>6<EFBFBD>"rc<01><><00>|jji<00>}||vr/|j<00>}||=|jj|<02>yt |<01><00>r%)rr'r;r4r6r7s r<00> __delattr__zLocal.__delattr___sL<00><00><15><1E><1E>#<23>#<23>B<EFBFBD>'<27><06> <0F>6<EFBFBD>><3E><1B>[<5B>[<5B>]<5D>F<EFBFBD><16>t<EFBFBD> <0C> <10>N<EFBFBD>N<EFBFBD> <1E> <1E>v<EFBFBD> &<26> <20><14>&<26> &rr%)r"z#ContextVar[dict[str, t.Any]] | None<6E>return<72>None)r?zt.Iterator[tuple[str, t.Any]])r1<00>strr,<00>
str | Noner?<00>LocalProxy[t.Any]<5D>r?r@)r1rAr?<00>t.Any)r1rAr<rEr?r@)r1rAr?r@) <0C>__name__<5F>
__module__<EFBFBD> __qualname__<5F>__doc__<5F> __slots__r#r*r2rr9rr><00>rrrr#sS<00><00><08> <1F>I<EFBFBD>A<01>4<>;?<3F>
G<01><17>
G<01>-7<>
G<01> <1A>
G<01><1F>#<23>#<23>
'rrc<01>d<00>eZdZdZdZd d d<04>Zd d<05>Zdd<06>Zdd<07>Ze dd<08><04>Z
d dd <09> dd
<EFBFBD>Z y)<11>
LocalStacka<EFBFBD>Create a stack of context-local data. This wraps a
:class:`ContextVar` containing a :class:`list` value.
This may incur a performance penalty compared to using individual
context vars, as it has to copy data to avoid mutating the list
between nested contexts.
:param context_var: The :class:`~contextvars.ContextVar` to use as
storage for this local. If not given, one will be created.
Context vars not created at the global scope may interfere with
garbage collection.
.. versionchanged:: 2.0
Uses ``ContextVar`` instead of a custom storage implementation.
.. versionadded:: 0.6.1
)<01>_storageNc<01>F<00>|<01>tdt|<00><00>d<02><03>}||_y)Nzwerkzeug.LocalStack<r)rrrNr s rr#zLocalStack.__init__s)<00><00> <16> <1E>
%<25>';<3B>B<EFBFBD>t<EFBFBD>H<EFBFBD>:<3A>Y<EFBFBD>%O<>P<>K<EFBFBD>#<23><04> rc<01>:<00>|jjg<00>yr%)rNr4r)s rrzLocalStack.__release_local__<5F>s<00><00> <0C> <0A> <0A><19><19>"<22>rc<01><><00>|jjg<00>j<00>}|j|<01>|jj |<02>|S)z'Add a new item to the top of the stack.)rNr'r;<00>appendr4)r!<00>obj<62>stacks r<00>pushzLocalStack.push<73>sB<00><00><14> <0A> <0A>!<21>!<21>"<22>%<25>*<2A>*<2A>,<2C><05> <0A> <0C> <0C>S<EFBFBD><19> <0C> <0A> <0A><19><19>%<25> <20><14> rc<01><><00>|jjg<00>}t|<01>dk(ry|d}|jj|dd<00>|S)zjRemove the top item from the stack and return it. If the
stack is empty, return ``None``.
rN<><4E><EFBFBD><EFBFBD><EFBFBD>)rNr'<00>lenr4)r!rT<00>rvs r<00>popzLocalStack.pop<6F>sL<00><00><15> <0A> <0A>!<21>!<21>"<22>%<25><05> <0E>u<EFBFBD>:<3A><11>?<3F><17> <12>2<EFBFBD>Y<EFBFBD><02> <0C> <0A> <0A><19><19>%<25><03><12>*<2A>%<25><11> rc<01>`<00>|jjg<00>}t|<01>dk(ry|dS)z[The topmost item on the stack. If the stack is empty,
`None` is returned.
rNrW)rNr'rX)r!rTs r<00>topzLocalStack.top<6F>s0<00><00>
<15> <0A> <0A>!<21>!<21>"<22>%<25><05> <0E>u<EFBFBD>:<3A><11>?<3F><17><14>R<EFBFBD>y<EFBFBD>rr+c<01><00>t|||<02><01>S)a@Create a :class:`LocalProxy` that accesses the top of this
local stack.
:param name: If given, the proxy access this attribute of the
top item, rather than the item itself.
:param unbound_message: The error message that the proxy will
show if the stack is empty.
r+r.r0s rr2zLocalStack.__call__<5F>s<00><00><1A>$<24><04>o<EFBFBD>F<>Frr%)r"zContextVar[list[T]] | Noner?r@rD)rSrr?zlist[T])r?zT | None)r1rBr,rBr?rC) rFrGrHrIrJr#rrUrZ<00>propertyr\r2rKrrrMrMjse<00><00><08>$<1E>I<EFBFBD>$<24><1E><15> <12><0E> <19><0E> <19>"&<26> G<01>HL<48> G<01><1E> G<01>;E<> G<01> <1A> GrrMc<01>F<00>eZdZdZdZ d d
d<04>Zd d<05>Zd d<06>Zd d<07>Zdd<08>Z y)<0F> LocalManageraManage releasing the data for the current context in one or more
:class:`Local` and :class:`LocalStack` objects.
This should not be needed for modern use cases, and may be removed
in the future.
:param locals: A local or list of locals to manage.
.. versionchanged:: 2.1
The ``ident_func`` was removed.
.. versionchanged:: 0.7
The ``ident_func`` parameter was added.
.. versionchanged:: 0.6.1
The :func:`release_local` function can be used instead of a
manager.
)<01>localsNc<01>j<00>|<01>g|_yt|t<00>r |g|_yt|<01>|_yr%)ra<00>
isinstancer<00>list)r!ras rr#zLocalManager.__init__<5F>s.<00><00>
<12>><3E><1C>D<EFBFBD>K<EFBFBD> <17><06><05> &<26>!<21>(<28>D<EFBFBD>K<EFBFBD><1E>v<EFBFBD>,<2C>D<EFBFBD>Krc<01><<00>|jD] }t|<01><00>y)z<>Release the data in the locals for this context. Call this at
the end of each request or use :meth:`make_middleware`.
N)rar)r!rs r<00>cleanupzLocalManager.cleanup<75>s<00><00><1A>[<5B>[<5B> !<21>E<EFBFBD> <19>%<25> <20> !rc<01>$<00><00><01> d<02><01>fd<01> }|S)z<>Wrap a WSGI application so that local data is released
automatically after the response has been sent for a request.
c<01>><00><02>t<00>||<01><00>j<00>Sr%)r
rf)<04>environ<6F>start_response<73>appr!s <20><>r<00> applicationz1LocalManager.make_middleware.<locals>.application<6F>s<00><><00>#<23>3<EFBFBD>w<EFBFBD><0E>#?<3F><14><1C><1C>N<> Nr)rir rjr r?zt.Iterable[bytes]rK)r!rkrls`` r<00>make_middlewarezLocalManager.make_middleware<72>s,<00><><00>
 O<01>$<24> O<01>6C<36> O<01> <1E> O<01>
<1B>rc<01>8<00>t|j|<01>|<01>S)z<>Like :meth:`make_middleware` but used as a decorator on the
WSGI application function.
.. code-block:: python
@manager.middleware
def application(environ, start_response):
...
)rrm)r!<00>funcs r<00>
middlewarezLocalManager.middleware<72>s<00><00><1E>d<EFBFBD>2<>2<>4<EFBFBD>8<>$<24>?<3F>?rc<01>`<00>dt|<00>j<00>dt|j<00><00>d<03>S)N<><z storages: <20>>)<04>typerFrXrar)s r<00>__repr__zLocalManager.__repr__<5F>s,<00><00><12>4<EFBFBD><04>:<3A>&<26>&<26>'<27>{<7B>3<EFBFBD>t<EFBFBD>{<7B>{<7B>3C<33>2D<32>A<EFBFBD>F<>Frr%)razJNone | (Local | LocalStack[t.Any] | t.Iterable[Local | LocalStack[t.Any]])r?r@rD)rkr r?r )ror r?r <00>r?rA)
rFrGrHrIrJr#rfrmrprurKrrr`r`<00>sE<00><00><08>&<1C>I<EFBFBD>
QU<01>
'<27>N<01>
'<27>
<0E>
'<27>!<21>
<1B>
@<01>Grr`c<01>j<00>eZdZdZdZ d d
d<04>Zd d<05>Zd d d<06>Zdd<07>Z dd<08>Z y)<10> _ProxyLookupa<70>Descriptor that handles proxied attribute lookup for
:class:`LocalProxy`.
:param f: The built-in function this attribute is accessed through.
Instead of looking up the special method, the function call
is redone on the object.
:param fallback: Return this function if the proxy is unbound
instead of raising a :exc:`RuntimeError`.
:param is_attr: This proxied name is an attribute, not a function.
Call the fallback immediately to get the value.
:param class_value: Value to return when accessed from the
``LocalProxy`` class directly. Used for ``__doc__`` so building
docs still works.
)<05>bind_f<5F>fallback<63>is_attr<74> class_valuer1Nc<01><><00><01>t<00>d<01>r d<04>fd<02> }n<11><01> d<04>fd<03> }nd}||_||_||_||_y)N<>__get__c<01>:<00><01><00>j|t|<01><00>Sr%<00>r~rt<00><03>instancerS<00>fs <20>rryz%_ProxyLookup.__init__.<locals>.bind_fs<00><><00><19>y<EFBFBD>y<EFBFBD><13>d<EFBFBD>3<EFBFBD>i<EFBFBD>0<>0rc<01><00><01>t<00>|<01>Sr%rr<>s <20>rryz%_ProxyLookup.__init__.<locals>.bind_f%s<00><><00><1F>q<EFBFBD>#<23><EFBFBD>&r<00>r<>rCrSrEr?zt.Callable[..., t.Any])<05>hasattrryrzr|r{)r!r<>rzr|r{rys ` rr#z_ProxyLookup.__init__st<00><><00> <13>1<EFBFBD>i<EFBFBD> <20> 1<>+<2B> 1<>27<32> 1<>'<27> 1<>
<0F>]<5D> '<27>+<2B> '<27>27<32> '<27>'<27> '<27><1A>F<EFBFBD><1C><04> <0B> <20><04> <0A>&<26><04><18><1E><04> rc<01><00>||_yr%<00>r1)r!<00>ownerr1s r<00> __set_name__z_ProxyLookup.__set_name__3s <00><00><18><04> rc<01>b<00>|<01>|j<00> |jS|S |j<00>}|j <00>|j ||<03>St||j<00>S#t$rC|j<00><01>|jj ||<02>}|j
r |<04>cYS|cYSwxYwr%) r|<00>_get_current_object<63> RuntimeErrorrzr~r{ry<00>getattrr1)r!r<>r<>rSrzs rr~z_ProxyLookup.__get__6s<><00><00> <13> <1B><13><1F><1F>+<2B><1B>'<27>'<27>'<27><17>K<EFBFBD> <1C><1A>.<2E>.<2E>0<>C<EFBFBD> <10>;<3B>;<3B> "<22><17>;<3B>;<3B>x<EFBFBD><13>-<2D> -<2D><16>s<EFBFBD>D<EFBFBD>I<EFBFBD>I<EFBFBD>&<26>&<26><>!<1C> <1C><13>}<7D>}<7D>$<24><15><1B>}<7D>}<7D>,<2C>,<2C>X<EFBFBD>u<EFBFBD>=<3D>H<EFBFBD><13>|<7C>|<7C> <20>z<EFBFBD>!<21><1B>O<EFBFBD> <1C>s<00>A"<00>"AB.<03>)B.<03>-B.c<01> <00>d|j<00><00>S)Nzproxy r<>r)s rruz_ProxyLookup.__repr__Qs<00><00><17><04> <09> <09>{<7B>#<23>#rc<01>D<00>|j|t|<01><00>|i|<03><01>S)z<>Support calling unbound methods from the class. For example,
this happens with ``copy.copy``, which does
``type(x).__copy__(x)``. ``type(x)`` can't be proxied, so it
returns the proxy type and descriptor.
r<>)r!r<><00>args<67>kwargss rr2z_ProxyLookup.__call__Ts%<00><00>6<>t<EFBFBD>|<7C>|<7C>H<EFBFBD>d<EFBFBD>8<EFBFBD>n<EFBFBD>5<>t<EFBFBD>F<>v<EFBFBD>F<>Fr)NNNF)
r<EFBFBD><00>t.Callable[..., t.Any] | Nonerz<00>-t.Callable[[LocalProxy[t.Any]], t.Any] | Noner|z t.Any | Noner{<00>boolr?r@)r<>rCr1rAr?r@r%)r<>rCr<>z type | Noner?rErv)r<>rCr<>rEr<>rEr?rE)
rFrGrHrIrJr#r<>r~rur2rKrrrxrx<00>s<><00><00> <08>I<01>I<EFBFBD>,0<>BF<42>$(<28><1D> <1F> (<28> <1F>@<01> <1F>"<22> <1F>
<16> <1F>
<0E> <1F>D<19>'<27>6$<24>G<01>)<29>G<01>27<32>G<01>CH<43>G<01> <0E>Grrxc<01>8<00><00>eZdZdZdZ d d<05>fd<03> Z<05>xZS)<06> _ProxyIOpz<70>Look up an augmented assignment method on a proxied object. The
method is wrapped to return the proxy instead of the object.
rKc<01>B<00><01><01>t<00>|<00><00>|<02>d<02>fd<01> }||_y)Nc<01>J<00><01><00>d<02><03>fd<01> }|j|t|<01><00>S)Nc<01><00><02><00>||<01><00>Sr%rK)r!<00>otherr<72>r<>s <20><>r<00>i_opz0_ProxyIOp.__init__.<locals>.bind_f.<locals>.i_opns<00><><00><11>$<24><05><0E><1F>r)r!rEr<>rEr?rCr<>)r<>rSr<>r<>s` <20>rryz"_ProxyIOp.__init__.<locals>.bind_fms<00><><00> <20><18><<3C><<3C><03>T<EFBFBD>#<23>Y<EFBFBD>/<2F> /rr<>)<03>superr#ry)r!r<>rzry<00> __class__s ` <20>rr#z_ProxyIOp.__init__fs"<00><><00>
<0E><07><18><11>H<EFBFBD>%<25> 0<><1D><04> r)NN)r<>r<>rzr<>r?r@)rFrGrHrIrJr#<00> __classcell__)r<>s@rr<>r<>_s><00><><00><08><13>I<EFBFBD>,0<>BF<42><1D> (<28><1D>@<01><1D>
<0E> <1D>rr<>c<01>D<00><00>d<02>fd<01> }tjt|<01>S)z5Swap the argument order to turn an l-op into an r-op.c<01><00><01><00>||<00>Sr%rK)rSr<><00>ops <20>r<00>r_opz_l_to_r_op.<locals>.r_opzs<00><><00><11>%<25><13>~<7E>r)rSrEr<>rEr?rE)<03>t<>castr)r<>r<>s` r<00>
_l_to_r_opr<EFBFBD>ws<00><><00><1E> <0A>6<EFBFBD>6<EFBFBD>!<21>T<EFBFBD>?<3F>rc<01><00>|Sr%rK)<01>os r<00> _identityr<79><00>s<00><00> <0C>Hrc<01>` <00>eZdZUdZdZded< ddd<06> dd<07>Zeed<08>d <09>
<EFBFBD>Zed <0B>d <09> <0C>Zee d <0A><00><0E>Z
ee <0B>Z ee <0A>Ze<07>Zeej"<00>Zeej&<00>Zeej*<00>Zeej.<00>Zeej2<00>Zeej6<00>Zee<1D>Zeed<0F><00><0E>Z ee!<21>Z"ee#<23>Z$ee%<25>Z&ee'd<10><00><0E>Z(ed<11>d <09> <0C>Z)ed<12><00>Z*ed<13><00>Z+ed<14><00>Z,ee-<2D>Z.eej^<00>Z0eejb<00>Z2eejf<00>Z4eejj<00>Z6ee7<65>Z8ee9<65>Z:ee;<3B>Z<eejz<00>Z>eej~<00>Z@eej<><00>ZBeej<><00>ZDeej<><00>ZFeej<><00>ZHeej<><00>ZJeej<><00>ZLeeM<65>ZNeeO<65>ZPeej<><00>ZReej<><00>ZTeej<><00>ZVeej<><00>ZXeej<><00>ZZee[ej~<00><00>Z\ee[ej<><00><00>Z]ee[ej<><00><00>Z^ee[ej<><00><00>Z_ee[ej<><00><00>Z`ee[ej<><00><00>Zaee[ej<><00><00>Zbee[eM<65><00>Zcee[eO<65><00>Zdee[ej<><00><00>Zeee[ej<><00><00>Zfee[ej<><00><00>Zgee[ej<><00><00>Zhee[ej<><00><00>Ziejej<><00>Zlejej<><00>Znejej<><00>Zpejej<><00>Zrejej<><00>Ztejej<><00>Zvejej<><00>Zxejej<><00>Zzejej<><00>Z|ejej<><00>Z~ejej<><00>Z<>eje<10>j<00>Z<>eje<10>j<00>Z<>ee<10>j
<00>Z<>ee<10>j<00>Z<>ee<><65>Z<>ee<10>j<00>Z<>ee<><65>Z<>ee<><65>Z<>ee<><65>Z<>ee<10>j&<00>Z<>ee<><65>Z<>ee<><65>j0<00>Z<>ee<><65>j4<00>Z<>ee<><65>j8<00>Z<>e<07>Z<>e<07>Z<>e<07>Z<>e<07>Z<>e<07>Z<>e<07>Z<>e<07>Z<>ee<><65>jJ<00>Z<>ee<><65>jN<00>Z<>y)r/as A proxy to the object bound to a context-local object. All
operations on the proxy are forwarded to the bound object. If no
object is bound, a ``RuntimeError`` is raised.
:param local: The context-local object that provides the proxied
object.
:param name: Proxy this attribute from the proxied object.
:param unbound_message: The error message to show if the
context-local object is unbound.
Proxy a :class:`~contextvars.ContextVar` to make it easier to
access. Pass a name to proxy that attribute.
.. code-block:: python
_request_var = ContextVar("request")
request = LocalProxy(_request_var)
session = LocalProxy(_request_var, "session")
Proxy an attribute on a :class:`Local` namespace by calling the
local with the attribute name:
.. code-block:: python
data = Local()
user = data("user")
Proxy the top item on a :class:`LocalStack` by calling the local.
Pass a name to proxy that attribute.
.. code-block::
app_stack = LocalStack()
current_app = app_stack()
g = app_stack("g")
Pass a function to proxy the return value from that function. This
was previously used to access attributes of local objects before
that was supported directly.
.. code-block:: python
session = LocalProxy(lambda: request.session)
``__repr__`` and ``__class__`` are proxied, so ``repr(x)`` and
``isinstance(x, cls)`` will look like the proxied object. Use
``issubclass(type(x), LocalProxy)`` to check if an object is a
proxy.
.. code-block:: python
repr(user) # <User admin>
isinstance(user, User) # True
issubclass(type(user), LocalProxy) # True
.. versionchanged:: 2.2.2
``__wrapped__`` is set when wrapping an object, not only when
wrapping a function, to prevent doctest from failing.
.. versionchanged:: 2.2
Can proxy a ``ContextVar`` or ``LocalStack`` directly.
.. versionchanged:: 2.2
The ``name`` parameter can be used with any proxied object, not
only ``Local``.
.. versionchanged:: 2.2
Added the ``unbound_message`` parameter.
.. versionchanged:: 2.0
Updated proxied attributes and methods to reflect the current
data model.
.. versionchanged:: 0.6.1
The class can be instantiated with a callable.
)<02> __wrappedr<64>zt.Callable[[], T]r<>Nr+c<01><><00><01><03><05>|<02>t<00>n t|<02><00><05><03>d<01>t<00>t<00>r|<02> t d<02><00>d <0B><05><01>fd<03> }n]t<00>t
<00>r d <0B><05><01>fd<04> }nDt<00>t <00>r d <0B><05><01>fd<05> }n+t<00><01>rd <0B><05>fd<06> }nt dt<00><01><00>d<08><03><00>tj|d <09><01>tj|d
|<04>y) Nzobject is not boundz2'name' is required when proxying a 'Local' object.c<01>H<00><03> <00><00><01>S#t$r t<00><02>d<00>wxYwr%)r6r<>)<03>get_namerr,s<00><><EFBFBD>rr<>z0LocalProxy.__init__.<locals>._get_current_object<63>s1<00><><00>B<01>#<23>E<EFBFBD>?<3F>*<2A><>%<25>B<01>&<26><EFBFBD>7<>T<EFBFBD>A<>B<01>s<00> <00>!c<01>F<00><03><00>j}|<00> t<00><03><00><00>|<00>Sr%)r\r<><00>rSr<>rr,s <20><><EFBFBD>rr<>z0LocalProxy.__init__.<locals>._get_current_object<63>s&<00><><00><1B>i<EFBFBD>i<EFBFBD><03><16>;<3B>&<26><EFBFBD>7<>7<><1F><03>}<7D>$rc<01>h<00><03> <00>j<00>}<00>|<00>S#t$r t<00><03>d<00>wxYwr%)r'<00> LookupErrorr<72>r<>s <20><><EFBFBD>rr<>z0LocalProxy.__init__.<locals>._get_current_objects@<00><><00>B<01><1F>)<29>)<29>+<2B>C<EFBFBD> <20><03>}<7D>$<24><>#<23>B<01>&<26><EFBFBD>7<>T<EFBFBD>A<>B<01>s<00><00>1c<01><00><02><00><00><01><00>Sr%rK)r<>rs<00><>rr<>z0LocalProxy.__init__.<locals>._get_current_object s<00><><00><1F><05><07>(<28>(rzDon't know how to proxy 'z'.<2E>_LocalProxy__wrappedr<64>)r?r) r<>rrcr<00> TypeErrorrMr<00>callablertrr)r!rr1r,r<>r<>s ` ` @rr#zLocalProxy.__init__<5F>s<><00><><00> <10><<3C> <20>H<EFBFBD>!<21>$<24>'<27>H<EFBFBD> <1A> "<22>3<>O<EFBFBD> <15>e<EFBFBD>U<EFBFBD> #<23><13>|<7C><1F> T<>U<>U<> B<01> B<01> <18><05>z<EFBFBD> *<2A> %<25> %<25><18><05>z<EFBFBD> *<2A> %<25> %<25><16>e<EFBFBD>_<EFBFBD> )<29><1C>7<><04>U<EFBFBD> <0B>}<7D>B<EFBFBD>G<>H<> H<><0E><1A><1A>4<EFBFBD>!7<><15>?<3F><0E><1A><1A>4<EFBFBD>!6<>8K<38>Lrc<01>,<00>t|<00>jSr%)rtrIr)s r<00><lambda>zLocalProxy.<lambda>s<00><00>4<EFBFBD><04>:<3A>3E<33>3E<33>rT)r|rzr{c<01><00>|jSr%)r<>r)s rr<>zLocalProxy.<lambda>s <00><00>d<EFBFBD>7<>7<>r)rzr{c<01>4<00>dt|<00>j<00>d<02>S)Nrrz unbound>)rtrFr)s rr<>zLocalProxy.<lambda>s<00><00>a<EFBFBD><04>T<EFBFBD>
<EFBFBD>(;<3B>(;<3B>'<<3C>I<EFBFBD>$F<>r)rzc<01><00>y)NFrKr)s rr<>zLocalProxy.<lambda>+s<00>rc<01><00>gSr%rKr)s rr<>zLocalProxy.<lambda>0s<00><00>b<EFBFBD>rc<01><00>t|<00>Sr%)rtr)s rr<>zLocalProxy.<lambda>;s
<00><00>4<EFBFBD><04>:<3A>rc<01><00>t||<00>Sr%)rc<00>r!r<>s rr<>zLocalProxy.<lambda><<00> <00><00><1A>E<EFBFBD>4<EFBFBD>9P<39>rc<01><00>t||<00>Sr%)<01>
issubclassr<EFBFBD>s rr<>zLocalProxy.<lambda>=r<>rc<01><00>||i|<02><01>Sr%rK)r!r<>r<>s rr<>zLocalProxy.<lambda>?s<00><00>$<24><04>:O<><06>:O<>rr%)rz9ContextVar[T] | Local | LocalStack[T] | t.Callable[[], T]r1rBr,rBr?r@)<29>rFrGrHrIrJ<00>__annotations__r#rx<00> __wrapped__<5F>reprrurA<00>__str__<5F>bytes<65> __bytes__<5F>
__format__<EFBFBD>operator<6F>lt<6C>__lt__<5F>le<6C>__le__<5F>eq<65>__eq__<5F>ne<6E>__ne__<5F>gt<67>__gt__<5F>ge<67>__ge__<5F>hash<73>__hash__r<5F><00>__bool__r<5F>r9<00>setattrr<00>delattrr><00>dir<69>__dir__r<5F><00>__instancecheck__<5F>__subclasscheck__r2rX<00>__len__<5F> length_hint<6E>__length_hint__<5F>getitem<65> __getitem__<5F>setitem<65> __setitem__<5F>delitem<65> __delitem__r&r*<00>next<78>__next__<5F>reversed<65> __reversed__<5F>contains<6E> __contains__<5F>add<64>__add__<5F>sub<75>__sub__<5F>mul<75>__mul__<5F>matmul<75>
__matmul__<EFBFBD>truediv<69> __truediv__<5F>floordiv<69> __floordiv__<5F>mod<6F>__mod__<5F>divmod<6F>
__divmod__<EFBFBD>pow<6F>__pow__<5F>lshift<66>
__lshift__<EFBFBD>rshift<66>
__rshift__<EFBFBD>and_<64>__and__<5F>xor<6F>__xor__<5F>or_<72>__or__r<5F><00>__radd__<5F>__rsub__<5F>__rmul__<5F> __rmatmul__<5F> __rtruediv__<5F> __rfloordiv__<5F>__rmod__<5F> __rdivmod__<5F>__rpow__<5F> __rlshift__<5F> __rrshift__<5F>__rand__<5F>__rxor__<5F>__ror__r<5F><00>iadd<64>__iadd__<5F>isub<75>__isub__<5F>imul<75>__imul__<5F>imatmul<75> __imatmul__<5F>itruediv<69> __itruediv__<5F> ifloordiv<69> __ifloordiv__<5F>imod<6F>__imod__<5F>ipow<6F>__ipow__<5F>ilshift<66> __ilshift__<5F>irshift<66> __irshift__<5F>iand<6E>__iand__<5F>ixor<6F>__ixor__<5F>ior<6F>__ior__<5F>neg<65>__neg__<5F>pos<6F>__pos__<5F>abs<62>__abs__<5F>invert<72>
__invert__<EFBFBD>complex<65> __complex__<5F>int<6E>__int__<5F>float<61> __float__<5F>index<65> __index__<5F>round<6E> __round__<5F>math<74>trunc<6E> __trunc__<5F>floor<6F> __floor__<5F>ceil<69>__ceil__<5F> __enter__<5F>__exit__<5F> __await__<5F> __aiter__<5F> __anext__<5F>
__aenter__<EFBFBD> __aexit__r;<00>__copy__<5F>deepcopy<70> __deepcopy__rKrrr/r/<00>sV<00><00>K<08>Z5<>I<EFBFBD>*<2A>*<2A><08> <20>6M<01>
'+<2B> 6M<01>H<>6M<01><19>6M<01>
$<24> 6M<01>
<0E> 6M<01>p<1B><1B>&E<>t<EFBFBD><06>G<EFBFBD><1F>7<><14><06>K<EFBFBD>
<1C> <0C>F<><06>H<EFBFBD><1B>3<EFBFBD><1F>G<EFBFBD><1C>U<EFBFBD>#<23>I<EFBFBD><1D><1E>J<EFBFBD> <19>(<28>+<2B>+<2B> &<26>F<EFBFBD> <19>(<28>+<2B>+<2B> &<26>F<EFBFBD> <19>(<28>+<2B>+<2B> &<26>F<EFBFBD> <19>(<28>+<2B>+<2B> &<26>F<EFBFBD> <19>(<28>+<2B>+<2B> &<26>F<EFBFBD> <19>(<28>+<2B>+<2B> &<26>F<EFBFBD><1B>D<EFBFBD>!<21>H<EFBFBD><1B>D<EFBFBD>+=<3D>><3E>H<EFBFBD><1E>w<EFBFBD>'<27>K<EFBFBD><1E>w<EFBFBD>'<27>K<EFBFBD><1E>w<EFBFBD>'<27>K<EFBFBD><1A>3<EFBFBD><1F>9<>G<EFBFBD><1D>&=<3D>t<EFBFBD>L<>I<EFBFBD>$<24>%P<>Q<><15>$<24>%P<>Q<><15><1B>O<>P<>H<EFBFBD><1A>3<EFBFBD><1F>G<EFBFBD>"<22>8<EFBFBD>#7<>#7<>8<>O<EFBFBD><1E>x<EFBFBD>/<2F>/<2F>0<>K<EFBFBD><1E>x<EFBFBD>/<2F>/<2F>0<>K<EFBFBD><1E>x<EFBFBD>/<2F>/<2F>0<>K<EFBFBD><1B>D<EFBFBD>!<21>H<EFBFBD><1B>D<EFBFBD>!<21>H<EFBFBD><1F><08>)<29>L<EFBFBD><1F><08> 1<> 1<>2<>L<EFBFBD><1A>8<EFBFBD><<3C><<3C>(<28>G<EFBFBD><1A>8<EFBFBD><<3C><<3C>(<28>G<EFBFBD><1A>8<EFBFBD><<3C><<3C>(<28>G<EFBFBD><1D>h<EFBFBD>o<EFBFBD>o<EFBFBD>.<2E>J<EFBFBD><1E>x<EFBFBD>/<2F>/<2F>0<>K<EFBFBD><1F><08> 1<> 1<>2<>L<EFBFBD><1A>8<EFBFBD><<3C><<3C>(<28>G<EFBFBD><1D>f<EFBFBD>%<25>J<EFBFBD><1A>3<EFBFBD><1F>G<EFBFBD><1D>h<EFBFBD>o<EFBFBD>o<EFBFBD>.<2E>J<EFBFBD><1D>h<EFBFBD>o<EFBFBD>o<EFBFBD>.<2E>J<EFBFBD><1A>8<EFBFBD>=<3D>=<3D>)<29>G<EFBFBD><1A>8<EFBFBD><<3C><<3C>(<28>G<EFBFBD> <19>(<28>,<2C>,<2C> '<27>F<EFBFBD><1B>J<EFBFBD>x<EFBFBD>|<7C>|<7C>4<>5<>H<EFBFBD><1B>J<EFBFBD>x<EFBFBD>|<7C>|<7C>4<>5<>H<EFBFBD><1B>J<EFBFBD>x<EFBFBD>|<7C>|<7C>4<>5<>H<EFBFBD><1E>z<EFBFBD>(<28>/<2F>/<2F>:<3A>;<3B>K<EFBFBD><1F>
<EFBFBD>8<EFBFBD>+;<3B>+;<3B> <<3C>=<3D>L<EFBFBD> <20><1A>H<EFBFBD>,=<3D>,=<3D>!><3E>?<3F>M<EFBFBD><1B>J<EFBFBD>x<EFBFBD>|<7C>|<7C>4<>5<>H<EFBFBD><1E>z<EFBFBD>&<26>1<>2<>K<EFBFBD><1B>J<EFBFBD>s<EFBFBD>O<EFBFBD>,<2C>H<EFBFBD><1E>z<EFBFBD>(<28>/<2F>/<2F>:<3A>;<3B>K<EFBFBD><1E>z<EFBFBD>(<28>/<2F>/<2F>:<3A>;<3B>K<EFBFBD><1B>J<EFBFBD>x<EFBFBD>}<7D>}<7D>5<>6<>H<EFBFBD><1B>J<EFBFBD>x<EFBFBD>|<7C>|<7C>4<>5<>H<EFBFBD><1A>:<3A>h<EFBFBD>l<EFBFBD>l<EFBFBD>3<>4<>G<EFBFBD><18><18><1D><1D>'<27>H<EFBFBD><18><18><1D><1D>'<27>H<EFBFBD><18><18><1D><1D>'<27>H<EFBFBD><1B>H<EFBFBD>,<2C>,<2C>-<2D>K<EFBFBD><1C>X<EFBFBD>.<2E>.<2E>/<2F>L<EFBFBD><1D>h<EFBFBD>0<>0<>1<>M<EFBFBD><18><18><1D><1D>'<27>H<EFBFBD><18><18><1D><1D>'<27>H<EFBFBD><1B>H<EFBFBD>,<2C>,<2C>-<2D>K<EFBFBD><1B>H<EFBFBD>,<2C>,<2C>-<2D>K<EFBFBD><18><18><1D><1D>'<27>H<EFBFBD><18><18><1D><1D>'<27>H<EFBFBD><17><08> <0C> <0C>%<25>G<EFBFBD><1A>8<EFBFBD><<3C><<3C>(<28>G<EFBFBD><1A>8<EFBFBD><<3C><<3C>(<28>G<EFBFBD><1A>3<EFBFBD><1F>G<EFBFBD><1D>h<EFBFBD>o<EFBFBD>o<EFBFBD>.<2E>J<EFBFBD><1E>w<EFBFBD>'<27>K<EFBFBD><1A>3<EFBFBD><1F>G<EFBFBD><1C>U<EFBFBD>#<23>I<EFBFBD><1C>X<EFBFBD>^<5E>^<5E>,<2C>I<EFBFBD><1C>U<EFBFBD>#<23>I<EFBFBD><1C>T<EFBFBD>Z<EFBFBD>Z<EFBFBD>(<28>I<EFBFBD><1C>T<EFBFBD>Z<EFBFBD>Z<EFBFBD>(<28>I<EFBFBD><1B>D<EFBFBD>I<EFBFBD>I<EFBFBD>&<26>H<EFBFBD><1C><0E>I<EFBFBD><1B>~<7E>H<EFBFBD><1C><0E>I<EFBFBD><1C><0E>I<EFBFBD><1C><0E>I<EFBFBD><1D><1E>J<EFBFBD><1C><0E>I<EFBFBD><1B>D<EFBFBD>I<EFBFBD>I<EFBFBD>&<26>H<EFBFBD><1F><04> <0A> <0A>.<2E>Lrr/)rzLocal | LocalStack[t.Any]r?r@)r<>rr?r)r<>rr?r)#<23>
__future__rr;rFr<><00>typingr<67><00> contextvarsr<00> functoolsrrr<00>wsgir
<00> TYPE_CHECKING<4E>_typeshed.wsgir r r <00>TypeVarr<00>Callable<6C>Anyrrr<00>GenericrMr`rxr<>r<>r<>r/rKrr<00><module>rbs<><00><01>"<22> <0B> <0B><0F><12>"<22><1D>$<24><1F>!<21><04>?<3F>?<3F>,<2C>.<2E>.<2E> <0A>A<EFBFBD>I<EFBFBD>I<EFBFBD>c<EFBFBD>N<EFBFBD><01> <0A>A<EFBFBD>I<EFBFBD>I<EFBFBD>c<EFBFBD><11><1A><1A>C<EFBFBD><11><15><15>J<EFBFBD>/<2F>0<><01> <1E>D'<27>D'<27>NMG<01><11><19><19>1<EFBFBD><1C>MG<01>`BG<01>BG<01>J]G<01>]G<01>@<1D> <0C><1D>0<1B> <0A>C/<2F><11><19><19>1<EFBFBD><1C>C/r