+
    P(i                     @    ^ RI Ht ^ RIHt R R lt ! R R]4      tR# )    )AuthlibHTTPError)add_params_to_uric                F    V ^8  d   QhR\         R\        \         ,          /# )   textreturn)strlist)formats   "Y/Users/agent/.openclaw/workspace/venv/lib/python3.14/site-packages/authlib/oauth2/base.py__annotate__r      s      3 49     c                   a . ROp\        V 4       Uau. uFG  o\        ;QJ d    V3R lV 4       F  '       g   K   RM	  RM! V3R lV 4       4      '       d   KE  SNKI  	  up# u upi )zCheck whether the string only contains characters from the restricted ASCII set defined in RFC6749 for errors.

https://datatracker.ietf.org/doc/html/rfc6749#section-4.1.2.1
c              3   f   <"   T F&  w  rV\        S4      u;8*  ;'       d    V8*  Mu x  K(  	  R # 5iN)ord).0startendchars   &  r   	<genexpr>+invalid_error_characters.<locals>.<genexpr>   s'     L|5CI,,,,|s   .1TF))    !   )#   [   )]   ~   )setany)r   valid_rangesr   s   & `r   invalid_error_charactersr"      sU    
L IDsL|LsssL|LL 	  s   A$A$A$A$c                   R   a a ] tR t^t oRV 3R lltV 3R ltRV 3R lltRtVtV ;t	# )OAuth2Errorc                   < V'       d2   \        V4      ;p'       d   \        R RP                  V4       R24      h\        S	V `  WqW#4       W@n        WPn        W`n        R# )z1Error description contains forbidden characters: z, .N)r"   
ValueErrorjoinsuper__init__stateredirect_uriredirect_fragment)
selfdescriptionuristatus_coder+   r,   r-   errorchars	__class__s
   &&&&&&&& r   r*   OAuth2Error.__init__   s_     0==u= G		RWHXGYYZ[  	S>
(!2r   c                   < \         SV `  4       pV P                  '       d   VP                  RV P                  34       V# )zGet a list of body.r+   )r)   get_bodyr+   append)r.   r2   r4   s   & r   r7   OAuth2Error.get_body2   s3     ":::LL'4::./r   c                   < V P                   '       d9   V P                  4       p\        V P                   W P                  4      pR RRV3.3# \        SV `  VR7      # )i.   Location)r0   )r,   r7   r   r-   r)   __call__)r.   r0   paramslocr4   s   &&  r   r=   OAuth2Error.__call__9   sZ    ]]_F#D$5$5v?U?UVCj#.///wC((r   )r-   r,   r+   )NNNNNFNr   )
__name__
__module____qualname____firstlineno__r*   r7   r=   __static_attributes____classdictcell____classcell__)r4   __classdict__s   @@r   r$   r$      s     34) )r   r$   N)authlib.common.errorsr   authlib.common.urlsr   r"   r$    r   r   <module>rL      s    2 1$')" ')r   