+
    Tjlf                        ^ 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t^ RI	H
t
 ^ RIHt ^ RIHt ^ RIHtHt ^ RIHt ^ RIHtHt ^ RIHt ^ R	IHt ^ R
IHt ^ RIHt ^ RIH t  ^ RI!H"t" ^ RI#H$t$ ^ RI%H&t&H't'H(t( ^ RI)H*t* ]*! R]PV                  4      t, ! R R] 4      t- ! R R].4      t/ ! R R4      t0 ! R R]04      t1 ! R R]04      t2 ! R R]24      t3 ! R R]14      t4 ! R  R!]44      t5 ! R" R#]44      t6 ! R$ R%]14      t7 ! R& R']14      t8 ! R( R)]14      t9 ! R* R+]14      t: ! R, R-]14      t; ! R. R/]14      t< ! R0 R1]14      t= ! R2 R3]>4      t? ! R4 R5]14      t@R# )6    N)Header)	responses)urlsplit)async_to_syncsync_to_async)settings)signalssigning)DisallowedRedirect)DjangoJSONEncoder)SimpleCookie)timezone)CaseInsensitiveMapping)
iri_to_uri)cached_property)MAX_URL_REDIRECT_LENGTHcontent_disposition_header	http_date)_lazy_re_compilez ;\s*charset=(?P<charset>[^\s;]+)c                   L   a  ] tR t^%t o R tR	R ltR tR tR
R ltR t	Rt
V tR# )ResponseHeadersc                d    / V n         V'       d!   V P                  V4       F	  w  r#W0V&   K  	  R# R# )zU
Populate the initial data using __setitem__ to ensure values are
correctly encoded.
N)_store_unpack_items)selfdataheadervalues   &&  I/var/www/idalgo/venv/lib/python3.14/site-packages/django/http/response.py__init__ResponseHeaders.__init__&   s1    
 !%!3!3D!9$V ":     c                    \        V\        4      '       d   VP                  V4       MD\        V\        4      '       d   VP	                  V4      pM\        V4      pVP                  V4       RV9   g   RV9   d   \        RV: R24      h V#   \         d   p\        T\        4      '       d   RT9   g,   RT9   g%   \        T\        4      '       d    RT9   g   RT9   d   \        RT: R24      ThT'       d1   \        TR\        P                  R7      P                  4       p R
p?T# T;P                  R	T,          ,          un
        h R
p?ii ; i)z
Convert headers key/value to ascii/latin-1 native strings.
`charset` must be 'ascii' or 'latin-1'. If `mime_encode` is True and
`value` can't be represented in the given charset, apply MIME-encoding.

z*Header values can't contain newlines (got )   
   utf-8)
maxlinelenz,, HTTP response headers must be in %s formatN)
isinstancestrencodebytesdecodeBadHeaderErrorUnicodeErrorr   sysmaxsizereason)r   r   charsetmime_encodees   &&&& r   _convert_to_charset#ResponseHeaders._convert_to_charset0   s$   	%%%W%E5))W-E
W%u}$@	K  !.( !  	
 5%((eun5#&&DEMTU]$@	K ug#++FMMO  JWTT	s%   B
B EA E;*E+!EEc                (    V P                  V4       R # N)pop)r   keys   &&r   __delitem__ResponseHeaders.__delitem__W   s    r"   c                    V P                  VR 4      pV P                  VRRR7      pW3V P                  VP                  4       &   R# )asciilatin-1T)r6   N)r8   r   lowerr   r=   r   s   &&&r   __setitem__ResponseHeaders.__setitem__Z   sA    &&sG4((	t(L$'<CIIK r"   Nc                V    V P                   P                  VP                  4       V4      # r;   )r   r<   rC   )r   r=   defaults   &&&r   r<   ResponseHeaders.pop_   s    {{syy{G44r"   c                    W9  d   W V&   R # R # r;    rD   s   &&&r   
setdefaultResponseHeaders.setdefaultb   s    ?I r"   )r   Fr;   )__name__
__module____qualname____firstlineno__r    r8   r>   rE   r<   rL   __static_attributes____classdictcell____classdict__s   @r   r   r   %   s)     %%N0
5 r"   r   c                       ] tR t^gtRtR# )r0   rK   NrO   rP   rQ   rR   rS   rK   r"   r   r0   r0   g       r"   r0   c                   :  a  ] tR t^kt o Rt^tRR lt]R 4       t]P                  R 4       t]R 4       t
]
P                  R 4       t
R t]t]R	 4       tR
 tR tR tR t]tR tRR ltR R ltR tR!R ltR"R ltR tR tR tR tR tR tR tR t R t!Rt"V t#R# )#HttpResponseBasez
An HTTP response base class with dictionary-accessed headers.

This class doesn't handle content. It should not be used directly.
Use the HttpResponse and StreamingHttpResponse subclasses instead.
Nc                   \        V4      V n        W@n        R V P                  9  d#   Vf   RV P                   2pWP                  R &   MV'       d   \	        R4      h. V n        RV n        \        4       V n        RV n	        Ve8    \        V4      V n        ^dT P                  u;8:  d   R8:  g   M \	        R4      hW0n        R#   \        \        3 d    \        R4      hi ; i)Content-TypeNztext/html; charset=zX'headers' must not contain 'Content-Type' when the 'content_type' parameter is provided.Fz$HTTP status code must be an integer.iW  z4HTTP status code must be an integer from 100 to 599.)r   headers_charsetr5   
ValueError_resource_closers_handler_classr   cookiesclosedintstatus_code	TypeError_reason_phrase)r   content_typestatusr4   r5   r^   s   &&&&&&r   r    HttpResponseBase.__init__u   s     'w/-#!4T\\NC+7LL(8  "$ ##~H#&v;  $**1c1 !WXX$ 	* H FGGHs   C C!c                x    V P                   e   V P                   # \        P                  ! V P                  R4      # )NzUnknown Status Code)rh   r   getrf   r   s   &r   reason_phraseHttpResponseBase.reason_phrase   s4    *&&& }}T--/DEEr"   c                    Wn         R # r;   )rh   r   r   s   &&r   ro   rp      s    #r"   c                   V P                   e   V P                   # V P                  P                  R4      ;p'       d7   \        P	                  V4      ;p'       d   VR,          P                  RR4      # \        P                  # )Nr]   r5   " )r_   r^   rm   _charset_from_content_type_researchreplacer   DEFAULT_CHARSET)r   ri   matcheds   &  r   r5   HttpResponseBase.charset   sn    ==$==   <<++N;;<;7>>|LLwL
 y)11#r::'''r"   c                    Wn         R # r;   )r_   rr   s   &&r   r5   r{      s    r"   c           
         RP                  V P                  P                  4        UUu. uF3  w  rVP                  R4      R,           VP                  R4      ,           NK5  	  upp4      # u uppi )zHTTP headers as a bytestring.s   
rA   s   : rB   )joinr^   itemsr-   rD   s   &  r   serialize_headers"HttpResponseBase.serialize_headers   sc    || #',,"4"4"6"6JC 

7#e+ell9.EEE"6
 	
s   9A*
c                \    R V P                   9   d   RV P                   R ,          ,          # R# )r]   z, "%s"ru   r^   rn   s   &r   _content_type_for_repr'HttpResponseBase._content_type_for_repr   s2     - t||N33	
 	
r"   c                "    W P                   V&   R # r;   r   )r   r   r   s   &&&r   rE   HttpResponseBase.__setitem__   s    $Vr"   c                     V P                   V R # r;   r   r   r   s   &&r   r>   HttpResponseBase.__delitem__   s    LL r"   c                (    V P                   V,          # r;   r   r   s   &&r   __getitem__HttpResponseBase.__getitem__   s    ||F##r"   c                    WP                   9   # )z$Case-insensitive check for a header.r   r   s   &&r   
has_headerHttpResponseBase.has_header   s    %%r"   c                6    V P                   P                  4       # r;   )r^   r   rn   s   &r   r   HttpResponseBase.items   s    ||!!##r"   c                8    V P                   P                  W4      # r;   )r^   rm   )r   r   	alternates   &&&r   rm   HttpResponseBase.get   s    ||22r"   c
                   W P                   V&   VEe   \        V\        P                  4      '       d   \        P                  ! V4      '       d&   \        P
                  ! V\        P                  4      pV\        P                  P                  \        P                  R7      ,
          p
V
\        P                  ! ^R7      ,          p
RpVe   \        R4      h\        ^ V
P                  R,          V
P                  ,           4      pM,W@P                   V,          R&   MRV P                   V,          R&   Ve   \        V\        P                  4      '       d   VP                  4       p\        V4      V P                   V,          R&   V'       g:   \        \         P                   ! 4       V,           4      V P                   V,          R&   Ve   WPP                   V,          R	&   Ve   W`P                   V,          R
&   V'       d   RV P                   V,          R&   V'       d   RV P                   V,          R&   V	'       d8   V	P#                  4       R9  d   \        R4      hWP                   V,          R&   R# R# )aI  
Set a cookie.

``expires`` can be:
- a string in the correct format,
- a naive ``datetime.datetime`` object in UTC,
- an aware ``datetime.datetime`` object in any time zone.
If it is a ``datetime.datetime`` object then calculate ``max_age``.

``max_age`` can be:
- int/float specifying seconds,
- ``datetime.timedelta`` object.
N)tz)secondsz/'expires' and 'max_age' can't be used together.iQ expiresru   zmax-agepathdomainTsecurehttponlyz,samesite must be "lax", "none", or "strict".samesite)laxnonestrict)rc   r+   datetimer   is_naive
make_awareUTCnow	timedeltar`   maxdaysr   total_secondsre   r   timerC   )r   r=   r   max_ager   r   r   r   r   r   deltas   &&&&&&&&&& r   
set_cookieHttpResponseBase.set_cookie   s   2 "S'8#4#455$$W--&11'8<<HG("3"3"7"78<<"7"HH ++A66&$%VWWae!3emm!CD/6S!),+-DLLi('8#5#566!//1+.w<DLLi(/8w9N/OS!),(,LLf%*0LLh'*.DLLh',0DLLj)~~'@@ !OPP,4LLj) r"   c                <    V P                   P                  W4       R# )z,Set a header unless it has already been set.N)r^   rL   rD   s   &&&r   rL   HttpResponseBase.setdefault  s    +r"   c                    \         P                  ! W,           R 7      P                  V4      pV P                  ! W3/ VB # ))salt)r
   get_cookie_signersignr   )r   r=   r   r   kwargss   &&&&,r   set_signed_cookie"HttpResponseBase.set_signed_cookie  s3    ))sz:??Fs4V44r"   c           
         VP                  R4      ;'       g    T;'       d    VP                  4       R8H  pV P                  V^ VVVRVR7       R# )	__Secure-r   zThu, 01 Jan 1970 00:00:00 GMT)r   r   r   r   r   r   N)r   z__Host-)
startswithrC   r   )r   r=   r   r   r   r   s   &&&&& r   delete_cookieHttpResponseBase.delete_cookie"  s_    
  89 
 
33)V3 	 	3 	 	
r"   c                   \        V\        \        34      '       d   \        V4      # \        V\        4      '       d%   \        VP	                  V P
                  4      4      # \        V4      P	                  V P
                  4      # )z=Turn a value into a bytestring encoded in the output charset.)r+   r.   
memoryviewr,   r-   r5   rr   s   &&r   
make_bytesHttpResponseBase.make_bytes6  s^     eeZ011<eS!!dll3445z  ..r"   c                    V P                    F  p V! 4        K  	  V P                   P                  4        R V n        \        P
                  P                  V P                  R7       R#   \         d     Kj  i ; i)T)senderN)ra   	Exceptionclearrd   r	   request_finishedsendrb   )r   closers   & r   closeHttpResponseBase.closeL  sh    ,,F - 	$$&  %%T-@-@%A  s   A))A87A8c                N    \        R V P                  P                  ,          4      hz This %s instance is not writableOSError	__class__rO   r   contents   &&r   writeHttpResponseBase.writeW      84>>;R;RRSSr"   c                    R # r;   rK   rn   s   &r   flushHttpResponseBase.flushZ  s    r"   c                N    \        R V P                  P                  ,          4      h)z)This %s instance cannot tell its positionr   rn   s   &r   tellHttpResponseBase.tell]  s!    7$..:Q:QQ
 	
r"   c                    R # rN   rK   rn   s   &r   readableHttpResponseBase.readablee      r"   c                    R # rN   rK   rn   s   &r   seekableHttpResponseBase.seekableh  r   r"   c                    R # rN   rK   rn   s   &r   writableHttpResponseBase.writablek  r   r"   c                N    \        R V P                  P                  ,          4      hr   r   )r   liness   &&r   
writelinesHttpResponseBase.writelinesn  r   r"   )r_   rb   rh   ra   rd   rc   r^   rf   )NNNNNr;   )ru   NN/NFFN)ru   )r   NN)$rO   rP   rQ   rR   __doc__rf   r    propertyro   setterr5   r   	__bytes__r   rE   r>   r   r   __contains__r   rm   r   rL   r   r   r   r   r   r   r   r   r   r   r   rS   rT   rU   s   @r   r[   r[   k   s      K%< F F $ $ ( ( ^^ 
 "I
 
%!$& L$3>5@,5
(/,	BT
T Tr"   r[   c                      a a ] tR tRt oRtRtRV 3R lltR tR t]t	]
R 4       t]P                  R 4       t]R	 4       tR
 tR tR tR tR tR tRtVtV ;t# )HttpResponseir  zg
An HTTP response class with a string as content.

This content can be read, appended to, or replaced.
Fc                4   < \         SV `  ! V/ VB  Wn        R # r;   )superr    r   )r   r   argsr   r   s   &&*,r   r    HttpResponse.__init__{  s    $)&)r"   c                p    R RV P                   P                  RV P                  RV P                  /,          # z5<%(cls)s status_code=%(status_code)d%(content_type)s>clsrf   ri   r   rO   rf   r   rn   s   &r   __repr__HttpResponse.__repr__  s:    F4>>**4++D77J
 
 	
r"   c                R    V P                  4       R,           V P                  ,           # )z6Full HTTP message, including headers, as a bytestring.s   

)r   r   rn   s   &r   	serializeHttpResponse.serialize  s    %%'+5DDr"   c                8    R P                  V P                  4      # r"   )r~   
_containerrn   s   &r   r   HttpResponse.content  s    xx((r"   c                z  a  \        VR 4      '       db   \        V\        \        \        34      '       gA   RP                  V 3R lV 4       4      p\        VR4      '       d    VP                  4        MMS P                  V4      pV.S n	        S P                  P                  RR4       R#   \         d     L3i ; i)__iter__r"   c              3   F   <"   T F  pSP                  V4      x  K  	  R # 5ir;   r   ).0chunkr   s   & r   	<genexpr>'HttpResponse.content.<locals>.<genexpr>  s     I5%tu555s   !r   textN)hasattrr+   r.   r   r,   r~   r   r   r   r   __dict__r<   )r   r   r   s   f& r   r   r    s     5*%%jE:s+/
 /
 hhI5IIGug&&KKM ' ooe,G")&$' ! s   #B, ,B:9B:c                `    V P                   P                  V P                  ;'       g    R 4      # )r)   )r   r/   r5   rn   s   &r   r
  HttpResponse.text  s#    ||""4<<#:#:7;;r"   c                ,    \        V P                  4      # r;   )iterr   rn   s   &r   r  HttpResponse.__iter__  s    DOO$$r"   c                Z    V P                   P                  V P                  V4      4       R # r;   )r   appendr   r   s   &&r   r   HttpResponse.write  s    tw78r"   c                ,    \        V P                  4      # r;   )lenr   rn   s   &r   r   HttpResponse.tell  s    4<<  r"   c                    V P                   # r;   )r   rn   s   &r   getvalueHttpResponse.getvalue  s    ||r"   c                    R # )TrK   rn   s   &r   r   HttpResponse.writable  s    r"   c                :    V F  pV P                  V4       K  	  R # r;   )r   )r   r   lines   && r   r   HttpResponse.writelines  s    DJJt r"   )r   r   r   )rO   rP   rQ   rR   r   	streamingr    r   r   r   r   r   r   r   r
  r  r   r   r  r   r   rS   rT   __classcell__r   rV   s   @@r   r   r   r  s      I

E I) ) ^^( (" < <%9! r"   r   c                      a a ] tR tRt oRtRtRV 3R lltR t]R 4       t	]R 4       t
]R 4       t]P                  R	 4       tR
 tR tR tR tRtVtV ;t# )StreamingHttpResponsei  a  
A streaming HTTP response class with an iterator as content.

This should only be iterated once, when the response is streamed to the
client. However, it can be appended to or replaced with a new iterator
that wraps the original content (or yields entirely new content).
Tc                4   < \         SV `  ! V/ VB  Wn        R # r;   )r   r    streaming_content)r   r&  r   r   r   s   &&*,r   r    StreamingHttpResponse.__init__  s    $)&) "3r"   c                p    R RV P                   P                  RV P                  RV P                  /,          # r   )r   rQ   rf   r   rn   s   &r   r   StreamingHttpResponse.__repr__  s:    F4>>..4++D77J
 
 	
r"   c                N    \        R V P                  P                  ,          4      h)zMThis %s instance has no `content` attribute. Use `streaming_content` instead.AttributeErrorr   rO   rn   s   &r   r   StreamingHttpResponse.content  s'    +-1^^-D-DE
 	
r"   c                N    \        R V P                  P                  ,          4      h)z)This %s instance has no `text` attribute.r+  rn   s   &r   r
  StreamingHttpResponse.text  s!    7$..:Q:QQ
 	
r"   c                   a a S P                   '       d   S P                  oVV 3R  lpV! 4       # \        S P                  S P                  4      # )c                 Z   <"   S  R j  xL
  p SP                  V 4      5x  K    LDR # 5ir;   r  )part	_iteratorr   s    r   awrapper9StreamingHttpResponse.streaming_content.<locals>.awrapper  s+     "+ 0 0$//$//0)s   +(&(+(+)is_asyncr3  mapr   )r   r4  r3  s   f @r   r&  'StreamingHttpResponse.streaming_content  s;    === I0 :t77r"   c                (    V P                  V4       R # r;   )_set_streaming_contentrr   s   &&r   r&  r8    s    ##E*r"   c                     \        V4      V n        R V n        \        VR4      '       d(   V P                  P                  VP                  4       R# R#   \         d    \	        T4      T n        RT n         L_i ; i)FTr   N)	r  r3  r6  rg   aiterr  ra   r  r   rr   s   &&r   r:  ,StreamingHttpResponse._set_streaming_content  sh    	!!%[DN!DM 5'""""))%++6 #  	!"5\DN DM	!s   A "A98A9c           	          \        V P                  4      #   \         d\    \        P                  ! R \
        ^R7       R p\        T P                  \        \        T4      ! T P                  4      4      4      u # i ; i)zStreamingHttpResponse must consume asynchronous iterators in order to serve them synchronously. Use a synchronous iterator instead.
stacklevelc                 V   "   . pV   R j  xL
  pVP                  V4       K   LDT# 5ir;   )r  )r3  as_listr  s   &  r   to_list/StreamingHttpResponse.__iter__.<locals>.to_list
  s1     #, * *%NN5)*9s   )&$&)&))
r  r&  rg   warningswarnWarningr7  r   r   r3  )r   rC  s   & r   r  StreamingHttpResponse.__iter__  sm    	V..// 	VMMP	 t]7-CDNN-S(TUU	Vs    A#A=<A=c                 "    V P                     R j  xL
  pV5x  K   LDR #   \         dV    \        P                  ! R\        ^R7       \        \        4      ! T P                   4      G R j  xL 
  F  pT5x  K
  	   R # i ; i5i)NzStreamingHttpResponse must consume synchronous iterators in order to serve them asynchronously. Use an asynchronous iterator instead.r?  )r&  rg   rE  rF  rG  r   list)r   r2  s   & r   	__aiter__StreamingHttpResponse.__aiter__  sz     	"44  d
4 
	MMS	 ,D1$2H2HIII
 J
	sJ   B	& #!#	& #& B	A
B0A31BB	BB	c                8    R P                  V P                  4      # r   )r~   r&  rn   s   &r   r  StreamingHttpResponse.getvalue"  s    xx..//r"   )r3  r6  r&  )rK   )rO   rP   rQ   rR   r   r   r    r   r   r   r
  r&  r   r:  r  rK  r  rS   rT   r!  r"  s   @@r   r$  r$    s      I3
 
 
 
 

 8 8 + +	7V( 0 0r"   r$  c                   X   a a ] tR tRt oRtRtRRRR/V 3R lltV 3R	 ltR
 tRt	Vt
V ;t# )FileResponsei&  z6
A streaming HTTP response class optimized for files.
i   as_attachmentFfilenameru   c               z   < Wn         W n        R V9  ;'       g    VR ,          RJ V n        \        SV `  ! V/ VB  R# )ri   N)rQ  rR  _no_explicit_content_typer   r    )r   rQ  rR  r   r   r   s   &$$*,r   r    FileResponse.__init__-  sD    * &(JJF>,Bd,J 	& 	$)&)r"   c                >  <a a \        VR 4      '       g   RS n        \        SS `  V4      # V;S n        o\        SR4      '       d&   S P                  P                  SP                  4       \        VV 3R lR4      pS P                  S4       \        SS `  V4       R# )readNr   c                  :   < S P                  SP                  4      # r;   )rW  
block_sizefileliker   s   r   <lambda>5FileResponse._set_streaming_content.<locals>.<lambda>=  s    X]]4??;r"   r"   )	r  file_to_streamr   r:  ra   r  r   r  set_headers)r   r   r[  r   s   f&@r   r:  #FileResponse._set_streaming_content5  s    uf%%"&D71%88)..h8W%%""))(..9;SA"&u-r"   c           
       a a \        SRR4      p\        V\        4      '       d   TMRp\        SR4      ;'       d*    \        SR4      '       * ;'       g    SP	                  4       p\        SR4      '       Ed&   V'       dh   SP                  4       pSP                  ^ \        P                  4       SP                  4       V,
          S P                  R&   SP                  V4       EM \        SR4      '       d>   SP                  4       P                  SP                  4       ,
          S P                  R&   M\        P                  P                  V4      '       dB   \        P                  P                  V4      SP                  4       ,
          S P                  R&   MjV'       dc   \!        \#        VV 3R l^ 4      4      S P                  R&   SP                  \%        S P                  R,          4      ) \        P                  4       \        P                  P'                  S P(                  ;'       g    T4      pS P*                  '       de   V'       dN   \,        P.                  ! V4      w  rVR	R
RRRRRRRR/P1                  We4      pT;'       g    RS P                  R&   MRS P                  R&   \3        S P4                  V4      ;p'       d   VS P                  R&   R# R# )z
Set some common response headers (Content-Length, Content-Type, and
Content-Disposition) based on the `filelike` response content.
nameru   seekr   r   zContent-Length	getbufferc                  L   < \        S P                  SP                  4      4      # r;   )r  rW  rY  rZ  s   r   r\  *FileResponse.set_headers.<locals>.<lambda>[  s    St!?@r"   brzapplication/x-brotlibzip2zapplication/x-bzipcompresszapplication/x-compressgzipzapplication/gzipxzzapplication/x-xzzapplication/octet-streamr]   zContent-DispositionN)getattrr+   r,   r  r   r   rc  ioSEEK_ENDr^   rd  nbytesosr   existsgetsizesumr  re   basenamerR  rT  	mimetypes
guess_typerm   r   rQ  )r   r[  rR  r   initial_positionri   encodingcontent_dispositions   ff      r   r_  FileResponse.set_headersA  sT   
 8VR0)(C888b8V, 
 
*--DD1B1B1D 	 8V$$#+==? a-19CS1S-../;//&&(//(--/A -. ))GGOOH-? -. -0@!D.DLL)* MM3t||,<=>>L77##DMM$=$=X>))))2)=)=h)G& 01 8.,  #h-  !>>$> ^, 0J^,"<#
 
 
 3FDLL./
r"   )rT  rQ  r^  rR  )rO   rP   rQ   rR   r   rY  r    r:  r_  rS   rT   r!  r"  s   @@r   rP  rP  &  s5      J*E *B *
.4F 4Fr"   rP  c                   V   a a ] tR tRt o. ROtRV 3R llt]! R 4      tR tRt	Vt
V ;t# )HttpResponseRedirectBaseix  c                  < \         SV `  ! V/ VB  \        V4      V R &   \        V4      p\	        V4      \
        8  d   \        R\
         R24      h\        V4      pV'       d   V P                  V n	        VP                  '       d:   VP                  V P                  9  d   \        RVP                  ,          4      hR# R# )LocationzUnsafe redirect exceeding z charactersz)Unsafe redirect to URL with protocol '%s'N)r   r    r   r,   r  r   r   r   status_code_preserve_requestrf   schemeallowed_schemes)r   redirect_topreserve_requestr   r   redirect_to_strparsedr   s   &&&*,  r   r    !HttpResponseRedirectBase.__init__{  s    $)&)%k2Zk*"99$,-D,E[Q  /*#@@D===V]]$2F2FF$;fmmK  G=r"   c                    V R ,          # )r~  rK   rn   s   &r   r\  !HttpResponseRedirectBase.<lambda>  s	    Z 0r"   c           	         R RV P                   P                  RV P                  RV P                  RV P                  /,          # )zD<%(cls)s status_code=%(status_code)d%(content_type)s, url="%(url)s">r   rf   ri   url)r   rO   rf   r   r  rn   s   &r   r   !HttpResponseRedirectBase.__repr__  sB    Rt~~..t// ; ;txx		
r"   )rf   )httphttpsftprN   )rO   rP   rQ   rR   r  r    r   r  r   rS   rT   r!  r"  s   @@r   r|  r|  x  s&     .O  0
1C	
 	
r"   r|  c                       ] tR tRtRtRtRtR# )HttpResponseRedirecti  i.  i3  rK   NrO   rP   rQ   rR   rf   r  rS   rK   r"   r   r  r        K#& r"   r  c                       ] tR tRtRtRtRtR# )HttpResponsePermanentRedirecti  i-  i4  rK   Nr  rK   r"   r   r  r    r  r"   r  c                   n   a a ] tR tRt oRtV 3R lt]P                  P                  R 4       tRt	Vt
V ;t# )HttpResponseNotModifiedi  i0  c                .   < \         SV `  ! V/ VB  V R  R# )zcontent-typeN)r   r    )r   r   r   r   s   &*,r   r     HttpResponseNotModified.__init__  s    $)&) r"   c                :    V'       d   \        R 4      h. V n        R# )z7You cannot set content to a 304 (Not Modified) responseN)r,  r   rr   s   &&r   r   HttpResponseNotModified.content  s     I  r"   )r   )rO   rP   rQ   rR   rf   r    r   r   r   rS   rT   r!  r"  s   @@r   r  r    s4     K!    ! r"   r  c                       ] tR tRtRtRtR# )HttpResponseBadRequesti  i  rK   NrO   rP   rQ   rR   rf   rS   rK   r"   r   r  r        Kr"   r  c                       ] tR tRtRtRtR# )HttpResponseNotFoundi  i  rK   Nr  rK   r"   r   r  r    r  r"   r  c                       ] tR tRtRtRtR# )HttpResponseForbiddeni  i  rK   Nr  rK   r"   r   r  r    r  r"   r  c                   <   a a ] tR tRt oRtV 3R ltR tRtVtV ;t	# )HttpResponseNotAllowedi  i  c                P   < \         SV `  ! V/ VB  R P                  V4      V R&   R# )z, AllowN)r   r    r~   )r   permitted_methodsr   r   r   s   &&*,r   r    HttpResponseNotAllowed.__init__  s(    $)&)		"34Wr"   c           
         R RV P                   P                  RV P                  RV P                  RV R,          /,          # )zC<%(cls)s [%(methods)s] status_code=%(status_code)d%(content_type)s>r   rf   ri   methodsr  r   rn   s   &r   r   HttpResponseNotAllowed.__repr__  sC    T4>>**4++D77tG}	X
 
 	
r"   rK   )
rO   rP   rQ   rR   rf   r    r   rS   rT   r!  r"  s   @@r   r  r    s     K5
 
r"   r  c                       ] tR tRtRtRtR# )HttpResponseGonei  i  rK   Nr  rK   r"   r   r  r    r  r"   r  c                       ] tR tRtRtRtR# )HttpResponseServerErrori  i  rK   Nr  rK   r"   r   r  r    r  r"   r  c                       ] tR tRtRtR# )Http404i  rK   NrX   rK   r"   r   r  r    rY   r"   r  c                   @   a a ] tR tRt oRt]RR3V 3R lltRtVtV ;t	# )JsonResponsei  a   
An HTTP response class that consumes data to be serialized to JSON.

:param data: Data to be dumped into json. By default only ``dict`` objects
  are allowed to be passed due to a security flaw before ECMAScript 5. See
  the ``safe`` parameter for more information.
:param encoder: Should be a json encoder class. Defaults to
  ``django.core.serializers.json.DjangoJSONEncoder``.
:param safe: Controls if only ``dict`` objects may be serialized. Defaults
  to ``True``.
:param json_dumps_params: A dictionary of kwargs passed to json.dumps().
TNc                   < V'       d"   \        V\        4      '       g   \        R 4      hVf   / pVP                  RR4       \        P
                  ! V3RV/VB p\        SV `  ! RRV/VB  R# )zTIn order to allow non-dict objects to be serialized set the safe parameter to False.Nri   zapplication/jsonr   r   rK   )r+   dictrg   rL   jsondumpsr   r    )r   r   encodersafejson_dumps_paramsr   r   s   &&&&&,r   r    JsonResponse.__init__  ss     
4..+  $ ".*<=zz$AGA/@A000r"   rK   )
rO   rP   rQ   rR   r   r   r    rS   rT   r!  r"  s   @@r   r  r    s       "1 1r"   r  )Ar   rm  r  ru  rp  rer2   r   rE  email.headerr   http.clientr   urllib.parser   asgiref.syncr   r   django.confr   django.corer	   r
   django.core.exceptionsr   django.core.serializers.jsonr   django.http.cookier   django.utilsr   django.utils.datastructuresr   django.utils.encodingr   django.utils.functionalr   django.utils.httpr   r   r   django.utils.regex_helperr   Irv   r   r`   r0   r[   r   r$  rP  r|  r  r  r  r  r  r  r  r  r  r   r  r  rK   r"   r   <module>r     sX    	   	 	 
    ! ! 5   ( 5 : + ! > , 3 
 7 0'! 
?, ?D	Z 	DT DTNF# FRh0, h0VOF( OFd
| 
B'3 '
'$< '
l  \ < L 
\ 
 | l 	i 	1< 1r"   