
    +g                      S SK Jr  SSKJrJr  S SKJr  S SKrS SKrSSK	J
r
  SSK	Jr  SSK	Jr  SS	K	Jr  SS
K	Jr  SSK	Jr   " S S\R                   5      r " S S\5      r " S S\5      r " S S\5      r " S S\R                   5      r " S S\5      r " S S\5      r " S S\5      r " S S\R                   5      r " S S\R                   5      r " S  S!\R                   5      r " S" S#\R                   5      r\ " S$ S%5      5       r  " S& S'\R                   5      r!\ " S( S)5      5       r"\ " S* S+5      5       r#\ " S, S-5      5       r$\ " S. S/5      5       r% " S0 S1\R                   5      r& " S2 S3\R                   5      r' " S4 S5\R                   5      r(\ " S6 S75      5       r) " S8 S9\R                   5      r*\ " S: S;5      5       r+ " S< S=\R                   5      r, " S> S?\R                   5      r- " S@ SA\R                   5      r.\ " SB SC5      5       r/\ " SD SE5      5       r0\ " SF SG5      5       r1\ " SH SI5      5       r2\ " SJ SK5      5       r3\ " SL SM5      5       r4\ " SN SO5      5       r5\ " SP SQ5      5       r6\ " SR SS5      5       r7 " ST SU\R                   5      r8 " SV SW\R                   5      r9 " SX SY\R                   5      r:\ " SZ S[5      5       r;\ " S\ S]5      5       r<\ " S^ S_5      5       r=\ " S` Sa5      5       r>\ " Sb Sc5      5       r?\ " Sd Se5      5       r@ " Sf Sg\R                   5      rA\ " Sh Si5      5       rB\ " Sj Sk5      5       rC\ " Sl Sm5      5       rD " Sn So\R                   5      rE\ " Sp Sq5      5       rF\ " Sr Ss5      5       rG " St Su\R                   5      rH " Sv Sw\R                   5      rI " Sx Sy\R                   5      rJ\ " Sz S{5      5       rK\ " S| S}5      5       rL " S~ S\R                   5      rM\ " S S5      5       rN " S S\R                   5      rO\ " S S5      5       rP " S S\R                   5      rQ\ " S S5      5       rR\ " S S5      5       rS " S S\R                   5      rT " S S\5      rU\ " S S5      5       rV\ " S S5      5       rW\ " S S5      5       rX\ " S S5      5       rY    GSS jrZGSS jr[GSS jr\GSS jr]GSS jr^GSS jr_GSS jr`       GS                 GSS jjra    GS           GS S jjrbGSS jrc    GS                 GS!S jjrd   GS"       GS#S jjreGS$S jrf    GS%S jrg GS&   GS'S jjrh    GS(S jri    GS)S jrj    GS*S jrk    GS+S jrl    GS,S jrm  GS-         GS.S jjrn    GS/S jro    GS0S jrp    GS1S jrq            GS2                             GS3S jjrr    GS4S jrs    GS5S jrt    GS6S jru    GS7S jrv   GS"         GS8S jjrw    GS)S jrx GS&   GS9S jjry    GS:S jrz   GS"       GS;S jjr{\" S5      \ " S S5      5       5       r|\" S5      \ " S S5      5       5       r}\" S5      \ " S S5      5       5       r~\" S5      \ " S S5      5       5       r\" S5      \ " S S5      5       5       r\" S5      \ " S S5      5       5       r\" S5      \ " S S5      5       5       r\" S5      \ " S S5      5       5       r\" S5      \ " S S5      5       5       r\" S5      \ " S S5      5       5       r\" S5      \ " S S5      5       5       r\" S5      \ " S S5      5       5       r\" S5      \ " S S5      5       5       r\" S5      \ " S S5      5       5       r\" S5      \ " S S5      5       5       r\" S5      \ " S S5      5       5       r\" S5      \ " S S5      5       5       r\" S5      \ " S S5      5       5       r\" S5      \ " S S5      5       5       r\" S5      \ " S S5      5       5       r\" S5      \ " S S5      5       5       r\" S5      \ " S S5      5       5       r\" S5      \ " S S5      5       5       r\" S5      \ " GS  GS5      5       5       r\" GS5      \ " GS GS5      5       5       r\" GS5      \ " GS GS5      5       5       r\" GS5      \ " GS	 GS
5      5       5       r\" GS5      \ " GS GS5      5       5       r\" GS5      \ " GS GS5      5       5       r\" GS5      \ " GS GS5      5       5       r\" GS5      \ " GS GS5      5       5       r\" GS5      \ " GS GS5      5       5       rg(<      )annotations   )event_classT_JSON_DICT)	dataclassN)debugger)	emulation)io)page)runtime)securityc                  v    \ rS rSrSrSrSrSrSrSr	Sr
S	rS
rSrSrSrSrSrSrSrSrSrSrS r\S 5       rSrg)ResourceType   z<
Resource type as it was perceived by the rendering engine.
Document
StylesheetImageMediaFontScript	TextTrackXHRFetchPrefetchEventSource	WebSocketManifestSignedExchangePingCSPViolationReport	PreflightOtherc                    U R                   $ Nvalueselfs    w/Users/Alptekin/Desktop/izin_takip/venv/lib/python3.13/site-packages/selenium/webdriver/common/devtools/v131/network.pyto_jsonResourceType.to_json+       zz    c                    U " U5      $ r$    clsjsons     r)   	from_jsonResourceType.from_json.       4yr-   r/   N)__name__
__module____qualname____firstlineno____doc__DOCUMENT
STYLESHEETIMAGEMEDIAFONTSCRIPT
TEXT_TRACKr   FETCHPREFETCHEVENT_SOURCE
WEB_SOCKETMANIFESTSIGNED_EXCHANGEPINGCSP_VIOLATION_REPORT	PREFLIGHTOTHERr*   classmethodr3   __static_attributes__r/   r-   r)   r   r      s}     HJEEDFJ
CEH LJH&OD/IE  r-   r   c                  J   ^  \ rS rSrSrSS jr\SS j5       rU 4S jrSr	U =r
$ )	LoaderId3   z
Unique loader identifier.
c                    U $ r$   r/   r'   s    r)   r*   LoaderId.to_json7       r-   c                    U " U5      $ r$   r/   r0   s     r)   r3   LoaderId.from_json:   r5   r-   c                >   > SR                  [        TU ]	  5       5      $ )NzLoaderId({})formatsuper__repr__r(   	__class__s    r)   rZ   LoaderId.__repr__>       $$UW%5%788r-   r/   returnstr)r2   ra   r`   rO   r6   r7   r8   r9   r:   r*   rL   r3   rZ   rM   __classcell__r\   s   @r)   rO   rO   3   s+      9 9r-   rO   c                  J   ^  \ rS rSrSrSS jr\SS j5       rU 4S jrSr	U =r
$ )		RequestIdB   z
Unique request identifier.
c                    U $ r$   r/   r'   s    r)   r*   RequestId.to_jsonF   rS   r-   c                    U " U5      $ r$   r/   r0   s     r)   r3   RequestId.from_jsonI   r5   r-   c                >   > SR                  [        TU ]	  5       5      $ )NzRequestId({})rW   r[   s    r)   rZ   RequestId.__repr__M   s    %%eg&6&899r-   r/   r_   )r2   ra   r`   rf   rb   rd   s   @r)   rf   rf   B   s+      : :r-   rf   c                  J   ^  \ rS rSrSrSS jr\SS j5       rU 4S jrSr	U =r
$ )	InterceptionIdQ   z(
Unique intercepted request identifier.
c                    U $ r$   r/   r'   s    r)   r*   InterceptionId.to_jsonU   rS   r-   c                    U " U5      $ r$   r/   r0   s     r)   r3   InterceptionId.from_jsonX   r5   r-   c                >   > SR                  [        TU ]	  5       5      $ )NzInterceptionId({})rW   r[   s    r)   rZ   InterceptionId.__repr__\       #**57+;+=>>r-   r/   r_   )r2   ra   r`   ro   rb   rd   s   @r)   ro   ro   Q   +      ? ?r-   ro   c                  f    \ rS rSrSrSrSrSrSrSr	Sr
S	rS
rSrSrSrSrSrSrS r\S 5       rSrg)ErrorReason`   z%
Network level fetch failure reason.
FailedAbortedTimedOutAccessDeniedConnectionClosedConnectionResetConnectionRefusedConnectionAbortedConnectionFailedNameNotResolvedInternetDisconnectedAddressUnreachableBlockedByClientBlockedByResponsec                    U R                   $ r$   r%   r'   s    r)   r*   ErrorReason.to_jsons   r,   r-   c                    U " U5      $ r$   r/   r0   s     r)   r3   ErrorReason.from_jsonv   r5   r-   r/   N)r6   r7   r8   r9   r:   FAILEDABORTED	TIMED_OUTACCESS_DENIEDCONNECTION_CLOSEDCONNECTION_RESETCONNECTION_REFUSEDCONNECTION_ABORTEDCONNECTION_FAILEDNAME_NOT_RESOLVEDINTERNET_DISCONNECTEDADDRESS_UNREACHABLEBLOCKED_BY_CLIENTBLOCKED_BY_RESPONSEr*   rL   r3   rM   r/   r-   r)   rz   rz   `   sr     FGI"M*(,,*)2.)-  r-   rz   c                  J   ^  \ rS rSrSrSS jr\SS j5       rU 4S jrSr	U =r
$ )	TimeSinceEpoch{   z4
UTC time in seconds, counted from January 1, 1970.
c                    U $ r$   r/   r'   s    r)   r*   TimeSinceEpoch.to_json   rS   r-   c                    U " U5      $ r$   r/   r0   s     r)   r3   TimeSinceEpoch.from_json   r5   r-   c                >   > SR                  [        TU ]	  5       5      $ )NzTimeSinceEpoch({})rW   r[   s    r)   rZ   TimeSinceEpoch.__repr__   rw   r-   r/   r`   float)r2   r   r`   r   rb   rd   s   @r)   r   r   {   rx   r-   r   c                  J   ^  \ rS rSrSrSS jr\SS j5       rU 4S jrSr	U =r
$ )	MonotonicTime   zP
Monotonically increasing time in seconds since an arbitrary point in the past.
c                    U $ r$   r/   r'   s    r)   r*   MonotonicTime.to_json   rS   r-   c                    U " U5      $ r$   r/   r0   s     r)   r3   MonotonicTime.from_json   r5   r-   c                >   > SR                  [        TU ]	  5       5      $ )NzMonotonicTime({})rW   r[   s    r)   rZ   MonotonicTime.__repr__   s    "))%'*:*<==r-   r/   r   )r2   r   r`   r   rb   rd   s   @r)   r   r      s+      > >r-   r   c                  J   ^  \ rS rSrSrSS jr\SS j5       rU 4S jrSr	U =r
$ )	Headers   z=
Request / response headers as keys / values of JSON object.
c                    U $ r$   r/   r'   s    r)   r*   Headers.to_json   rS   r-   c                    U " U5      $ r$   r/   r0   s     r)   r3   Headers.from_json   r5   r-   c                >   > SR                  [        TU ]	  5       5      $ )NzHeaders({})rW   r[   s    r)   rZ   Headers.__repr__   s    ##EG$4$677r-   r/   )r`   dict)r2   r   r`   r   rb   rd   s   @r)   r   r      s+      8 8r-   r   c                  R    \ rS rSrSrSrSrSrSrSr	Sr
S	rS
rSrS r\S 5       rSrg)ConnectionType   zL
The underlying connection technology that the browser is supposedly using.
none
cellular2g
cellular3g
cellular4g	bluetoothethernetwifiwimaxotherc                    U R                   $ r$   r%   r'   s    r)   r*   ConnectionType.to_json   r,   r-   c                    U " U5      $ r$   r/   r0   s     r)   r3   ConnectionType.from_json   r5   r-   r/   N)r6   r7   r8   r9   r:   NONE
CELLULAR2G
CELLULAR3G
CELLULAR4G	BLUETOOTHETHERNETWIFIWIMAXrK   r*   rL   r3   rM   r/   r-   r)   r   r      sO     DJJJIHDEE  r-   r   c                  :    \ rS rSrSrSrSrSrS r\	S 5       r
Srg	)
CookieSameSite   zg
Represents the cookie's 'SameSite' status:
https://tools.ietf.org/html/draft-west-first-party-cookies
StrictLaxNonec                    U R                   $ r$   r%   r'   s    r)   r*   CookieSameSite.to_json   r,   r-   c                    U " U5      $ r$   r/   r0   s     r)   r3   CookieSameSite.from_json   r5   r-   r/   N)r6   r7   r8   r9   r:   STRICTLAXr   r*   rL   r3   rM   r/   r-   r)   r   r      s1     F
CD  r-   r   c                  :    \ rS rSrSrSrSrSrS r\	S 5       r
Srg	)
CookiePriority   zf
Represents the cookie's 'Priority' status:
https://tools.ietf.org/html/draft-west-cookie-priority-00
LowMediumHighc                    U R                   $ r$   r%   r'   s    r)   r*   CookiePriority.to_json   r,   r-   c                    U " U5      $ r$   r/   r0   s     r)   r3   CookiePriority.from_json   r5   r-   r/   N)r6   r7   r8   r9   r:   LOWMEDIUMHIGHr*   rL   r3   rM   r/   r-   r)   r   r      s1     CFD  r-   r   c                  :    \ rS rSrSrSrSrSrS r\	S 5       r
Srg	)
CookieSourceScheme   z
Represents the source scheme of the origin that originally set the cookie.
A value of "Unset" allows protocol clients to emulate legacy cookie scope for the scheme.
This is a temporary ability and it will be removed in the future.
Unset	NonSecureSecurec                    U R                   $ r$   r%   r'   s    r)   r*   CookieSourceScheme.to_json   r,   r-   c                    U " U5      $ r$   r/   r0   s     r)   r3   CookieSourceScheme.from_json   r5   r-   r/   N)r6   r7   r8   r9   r:   UNSET
NON_SECURESECUREr*   rL   r3   rM   r/   r-   r)   r   r      s1    
 EJF  r-   r   c                  
   \ rS rSr% SrS\S'   S\S'   S\S'   S\S'   S\S'   S\S	'   S\S
'   S\S'   S\S'   S\S'   S\S'   S\S'   S\S'   S\S'   S\S'   S\S'   S\S'   S\S'   S\S'   SrS\S'   SrS\S'   S r\	S 5       r
Srg)ResourceTiming   z%
Timing information for the request.
r   request_timeproxy_start	proxy_end	dns_startdns_endconnect_startconnect_end	ssl_startssl_endworker_startworker_readyworker_fetch_startworker_respond_with_settled
send_startsend_end
push_startpush_endreceive_headers_startreceive_headers_endNtyping.Optional[float]worker_router_evaluation_startworker_cache_lookup_startc                   [        5       nU R                  US'   U R                  US'   U R                  US'   U R                  US'   U R
                  US'   U R                  US'   U R                  US'   U R                  US'   U R                  US	'   U R                  US
'   U R                  US'   U R                  US'   U R                  US'   U R                  US'   U R                  US'   U R                   US'   U R"                  US'   U R$                  US'   U R&                  US'   U R(                  b  U R(                  US'   U R*                  b  U R*                  US'   U$ )NrequestTime
proxyStartproxyEnddnsStartdnsEndconnectStart
connectEndsslStartsslEndworkerStartworkerReadyworkerFetchStartworkerRespondWithSettled	sendStartsendEnd	pushStartpushEndreceiveHeadersStartreceiveHeadersEndworkerRouterEvaluationStartworkerCacheLookupStart)r   r   r   r   r   r   r   r  r  r  r  r  r  r  r  r	  r
  r  r  r  r  r  r(   r2   s     r)   r*   ResourceTiming.to_json7  sf   v"//]!--\>>Z>>ZX#11^!--\>>ZX"//]"//]#'#:#: +/+K+K'( OO[--Y OO[--Y&*&@&@"#$($<$< !..:262U2UD./))5-1-K-KD)*r-   c           	        U " S+0 S[        US   5      _S[        US   5      _S[        US   5      _S[        US   5      _S	[        US
   5      _S[        US   5      _S[        US   5      _S[        US   5      _S[        US   5      _S[        US   5      _S[        US   5      _S[        US   5      _S[        US   5      _S[        US   5      _S[        US   5      _S[        US    5      _S![        US"   5      _S#[        US$   5      _S%[        US&   5      _S'S(U;   a  [        US(   5      OS _S)S*U;   a  [        US*   5      _6$ S _6$ ),Nr   r  r   r  r   r  r   r  r   r  r   r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r	  r   r
  r!  r  r"  r  r#  r  r$  r  r%  r  r&  r/   r   r0   s     r)   r3   ResourceTiming.from_jsonR  s    
tM23
d<01
 D,-
 D,-	

 $x.)
  ^ 45
 d<01
 D,-
 $x.)
 tM23
 tM23
  %T*<%=>
 ).d3M.N(O
 T+./
 4	?+
  T+./!
" 4	?+#
$ #(-B(C"D%
& !&d+>&? @'
( Zwz~Y~56S1T+U  EI)
* PhkoOoeD1I,J&K+
 	
* vz+
 	
r-   r/   )r6   r7   r8   r9   r:   __annotations__r  r  r*   rL   r3   rM   r/   r-   r)   r   r      s    
     N    N    "'&  O  O !   >B"$:A 9=5<6 
 
r-   r   c                  B    \ rS rSrSrSrSrSrSrSr	S r
\S	 5       rS
rg)ResourcePriorityim  z)
Loading priority of a resource request.
VeryLowr   r   r   VeryHighc                    U R                   $ r$   r%   r'   s    r)   r*   ResourcePriority.to_jsonw  r,   r-   c                    U " U5      $ r$   r/   r0   s     r)   r3   ResourcePriority.from_jsonz  r5   r-   r/   N)r6   r7   r8   r9   r:   VERY_LOWr   r   r   	VERY_HIGHr*   rL   r3   rM   r/   r-   r)   r.  r.  m  s;     H
CFDI  r-   r.  c                  >    \ rS rSr% SrSrS\S'   S r\S 5       r	Sr
g)	PostDataEntryi  z"
Post data entry for HTTP request
Ntyping.Optional[str]bytes_c                R    [        5       nU R                  b  U R                  US'   U$ )Nbytes)r   r:  r'  s     r)   r*   PostDataEntry.to_json  s%    v;;" KKDMr-   c                :    U " SU;   a  [        US   5      S9$ S S9$ )Nr<  )r:  ra   r0   s     r)   r3   PostDataEntry.from_json  s.    )0D3tG}%
 	
>B
 	
r-   r/   )r6   r7   r8   r9   r:   r:  r,  r*   rL   r3   rM   r/   r-   r)   r8  r8    s-     $(F ' 
 
r-   r8  c                      \ rS rSr% SrS\S'   S\S'   S\S'   S\S	'   S\S
'   SrS\S'   SrS\S'   SrS\S'   Sr	S\S'   Sr
S\S'   SrS\S'   SrS\S'   SrS\S'   S r\S 5       rSrg)Requesti  z
HTTP request data.
ra   urlmethodr   headersr.  initial_priorityreferrer_policyNr9  url_fragment	post_datatyping.Optional[bool]has_post_dataz+typing.Optional[typing.List[PostDataEntry]]post_data_entriesz*typing.Optional[security.MixedContentType]mixed_content_typeis_link_preloadz!typing.Optional[TrustTokenParams]trust_token_paramsis_same_sitec                &   [        5       nU R                  US'   U R                  US'   U R                  R	                  5       US'   U R
                  R	                  5       US'   U R                  US'   U R                  b  U R                  US'   U R                  b  U R                  US'   U R                  b  U R                  US'   U R                  b-  U R                   Vs/ s H  o"R	                  5       PM     snUS	'   U R                  b  U R                  R	                  5       US
'   U R                  b  U R                  US'   U R                  b  U R                  R	                  5       US'   U R                  b  U R                  US'   U$ s  snf )NrC  rD  rE  initialPriorityreferrerPolicyurlFragmentpostDatahasPostDatapostDataEntriesmixedContentTypeisLinkPreloadtrustTokenParams
isSameSite)r   rC  rD  rE  r*   rF  rG  rH  rI  rK  rL  rM  rN  rO  rP  r(   r2   is      r)   r*   Request.to_json  su   vhhUX,,..0Y"&"7"7"?"?"A!%!5!5("&"3"3D>>%#~~D)"&"4"4D!!-<@<R<R&S<Rqyy{<R&SD"#"".'+'>'>'F'F'HD#$+$($8$8D!"".'+'>'>'F'F'HD#$(!%!2!2D 'Ts   !Fc                   U " [        US   5      [        US   5      [        R                  US   5      [        R                  US   5      [        US   5      SU;   a  [        US   5      OS SU;   a  [        US   5      OS SU;   a  [	        US   5      OS S	U;   a)  US	    Vs/ s H  n[
        R                  U5      PM     snOS S
U;   a"  [        R                  R                  US
   5      OS SU;   a  [	        US   5      OS SU;   a  [        R                  US   5      OS SU;   a  [	        US   5      S9$ S S9$ s  snf )NrC  rD  rE  rR  rS  rT  rU  rV  rW  rX  rY  rZ  r[  )rC  rD  rE  rF  rG  rH  rI  rK  rL  rM  rN  rO  rP  )	ra   r   r3   r.  boolr8  r   MixedContentTypeTrustTokenParamsr1   r2   r]  s      r)   r3   Request.from_json  s^   DK tH~&%%d9o6-77=N8OP%5 675Bd5JT-01PT/9T/Ac$z*+t7D7L$tM23RV_ptx_x4HYCZ[CZa}66q9CZ[  C`rvz`zx88BB4HZC[\  AE;Jd;RDo!67X\WimqWq/99$?Q:RSw{5AT5Id<01
 	
 PT
 	
 \s   $D>r/   )r6   r7   r8   r9   r:   r,  rH  rI  rK  rL  rM  rN  rO  rP  r*   rL   r3   rM   r/   r-   r)   rB  rB    s     
H K  '&  *.L&- '+I#* ,0M(/ FJBI FJBI .2O*1 =A9@ +/L'.2 
 
r-   rB  c                      \ rS rSr% SrS\S'   S\S'   S\S'   S\S'   S\S	'   S\S
'   S\S'   S\S'   S r\S 5       rSr	g)SignedCertificateTimestampi  z2
Details of a signed certificate timestamp (SCT).
ra   statusoriginlog_descriptionlog_idr   	timestamphash_algorithmsignature_algorithmsignature_datac                
   [        5       nU R                  US'   U R                  US'   U R                  US'   U R                  US'   U R
                  US'   U R                  US'   U R                  US'   U R                  US'   U$ )	Nrg  rh  logDescriptionlogIdrk  hashAlgorithmsignatureAlgorithmsignatureData)	r   rg  rh  ri  rj  rk  rl  rm  rn  r'  s     r)   r*   "SignedCertificateTimestamp.to_json  s    vXX!%!5!5W NN[ $ 3 3_%)%=%=!" $ 3 3_r-   c                    U " [        US   5      [        US   5      [        US   5      [        US   5      [        US   5      [        US   5      [        US   5      [        US   5      S	9$ )
Nrg  rh  rp  rq  rk  rr  rs  rt  )rg  rh  ri  rj  rk  rl  rm  rn  )ra   r   r0   s     r)   r3   $SignedCertificateTimestamp.from_json  sv    tH~&tH~&%5 67tG}%D-.tO45 #D)=$> ?tO45	
 		
r-   r/   N
r6   r7   r8   r9   r:   r,  r*   rL   r3   rM   r/   r-   r)   rf  rf    s]     K K  K    
 

 

r-   rf  c                      \ rS rSr% SrS\S'   S\S'   S\S'   S\S'   S\S	'   S
\S'   S\S'   S\S'   S\S'   S\S'   S\S'   S\S'   SrS\S'   SrS\S'   SrS\S'   S r	\
S 5       rSrg)SecurityDetailsi&  z#
Security details about a request.
ra   protocolkey_exchangecipherzsecurity.CertificateIdcertificate_idsubject_nametyping.List[str]san_listissuerr   
valid_fromvalid_toz'typing.List[SignedCertificateTimestamp]!signed_certificate_timestamp_list!CertificateTransparencyCompliance#certificate_transparency_compliancer`  encrypted_client_helloNr9  key_exchange_groupmactyping.Optional[int]server_signature_algorithmc                
   [        5       nU R                  US'   U R                  US'   U R                  US'   U R                  R                  5       US'   U R                  US'   U R                   Vs/ s H  o"PM     snUS'   U R                  US'   U R                  R                  5       US'   U R                  R                  5       US	'   U R                   Vs/ s H  o"R                  5       PM     snUS
'   U R                  R                  5       US'   U R                  US'   U R                  b  U R                  US'   U R                  b  U R                  US'   U R                   b  U R                   US'   U$ s  snf s  snf )Nr{  keyExchanger}  certificateIdsubjectNamesanListr  	validFromvalidTosignedCertificateTimestampList!certificateTransparencyComplianceencryptedClientHellokeyExchangeGroupr  serverSignatureAlgorithm)r   r{  r|  r}  r~  r*   r  r  r  r  r  r  r  r  r  r  r  r\  s      r)   r*   SecurityDetails.to_jsonZ  se   v==Z"//]X $ 3 3 ; ; =_"//]&*mm4m1m4YX OO335[--//1YGKGmGm1nGm!))+Gm1n-.484\4\4d4d4f01'+'B'B#$"".'+'>'>D#$88((DK**6/3/N/ND+, 5 2os   2E;F c                   U " [        US   5      [        US   5      [        US   5      [        R                  R                  US   5      [        US   5      US    Vs/ s H  n[        U5      PM     sn[        US   5      [        R                  US   5      [        R                  US	   5      US
    Vs/ s H  n[
        R                  U5      PM     sn[        R                  US   5      [        US   5      SU;   a  [        US   5      OS SU;   a  [        US   5      OS SU;   a  [        US   5      S9$ S S9$ s  snf s  snf )Nr{  r  r}  r  r  r  r  r  r  r  r  r  r  r  r  )r{  r|  r}  r~  r  r  r  r  r  r  r  r  r  r  r  )	ra   r   CertificateIdr3   r   rf  r  r`  intrc  s      r)   r3   SecurityDetails.from_jsonp  sq   j)*T-01tH~&#11;;D<QRT-01&*9o6oc!fo6tH~&%//[0AB#--d9o>`d  fF  aG  /H  aG[\/I/S/STU/V  aG  /H0Q0[0[\`  bE  ]F  1G#'-C(D#E@RVZ@Zs4(:#;<`d$)TMDK tPjnrPrs40J+K'L
 	
 y}
 	
 7 /Hs   E8Er/   )r6   r7   r8   r9   r:   r,  r  r  r  r*   rL   r3   rM   r/   r-   r)   rz  rz  &  s     M  K +*   K   (ON *KJ !  04,3 !%C	$
 8< 4;, 
 
r-   rz  c                  :    \ rS rSrSrSrSrSrS r\	S 5       r
Srg	)
r  i  zD
Whether the request complied with Certificate Transparency policy.
unknownznot-compliant	compliantc                    U R                   $ r$   r%   r'   s    r)   r*   )CertificateTransparencyCompliance.to_json  r,   r-   c                    U " U5      $ r$   r/   r0   s     r)   r3   +CertificateTransparencyCompliance.from_json  r5   r-   r/   N)r6   r7   r8   r9   r:   UNKNOWNNOT_COMPLIANT	COMPLIANTr*   rL   r3   rM   r/   r-   r)   r  r    s1     G#MI  r-   r  c                  f    \ rS rSrSrSrSrSrSrSr	Sr
S	rS
rSrSrSrSrSrSrS r\S 5       rSrg)BlockedReasoni  %
The reason why request was blocked.
r   cspzmixed-contentrh  	inspectorzsubresource-filterzcontent-typez%coep-frame-resource-needs-coep-headerz2coop-sandboxed-iframe-cannot-navigate-to-coop-pagezcorp-not-same-originz;corp-not-same-origin-after-defaulted-to-same-origin-by-coepz:corp-not-same-origin-after-defaulted-to-same-origin-by-dipzCcorp-not-same-origin-after-defaulted-to-same-origin-by-coep-and-dipzcorp-not-same-sitec                    U R                   $ r$   r%   r'   s    r)   r*   BlockedReason.to_json  r,   r-   c                    U " U5      $ r$   r/   r0   s     r)   r3   BlockedReason.from_json  r5   r-   r/   N)r6   r7   r8   r9   r:   rK   CSPMIXED_CONTENTORIGIN	INSPECTORSUBRESOURCE_FILTERCONTENT_TYPE%COEP_FRAME_RESOURCE_NEEDS_COEP_HEADER2COOP_SANDBOXED_IFRAME_CANNOT_NAVIGATE_TO_COOP_PAGECORP_NOT_SAME_ORIGIN;CORP_NOT_SAME_ORIGIN_AFTER_DEFAULTED_TO_SAME_ORIGIN_BY_COEP:CORP_NOT_SAME_ORIGIN_AFTER_DEFAULTED_TO_SAME_ORIGIN_BY_DIPCCORP_NOT_SAME_ORIGIN_AFTER_DEFAULTED_TO_SAME_ORIGIN_BY_COEP_AND_DIPCORP_NOT_SAME_SITEr*   rL   r3   rM   r/   r-   r)   r  r    st     E
C#MFI-!L,S)9m61B?A}> KPG-  r-   r  c                      \ rS rSrSrSrSrSrSrSr	Sr
S	rS
rSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSr Sr!S r"S!r#S"r$S#r%S$r&S% r'\(S& 5       r)S'r*g())	CorsErrori  r  DisallowedByModeInvalidResponseWildcardOriginNotAllowedMissingAllowOriginHeaderMultipleAllowOriginValuesInvalidAllowOriginValueAllowOriginMismatchInvalidAllowCredentialsCorsDisabledSchemePreflightInvalidStatusPreflightDisallowedRedirect!PreflightWildcardOriginNotAllowed!PreflightMissingAllowOriginHeader"PreflightMultipleAllowOriginValues PreflightInvalidAllowOriginValuePreflightAllowOriginMismatch PreflightInvalidAllowCredentialsPreflightMissingAllowExternalPreflightInvalidAllowExternal#PreflightMissingAllowPrivateNetwork#PreflightInvalidAllowPrivateNetwork$InvalidAllowMethodsPreflightResponse$InvalidAllowHeadersPreflightResponse#MethodDisallowedByPreflightResponse#HeaderDisallowedByPreflightResponseRedirectContainsCredentialsInsecurePrivateNetworkInvalidPrivateNetworkAccessUnexpectedPrivateNetworkAccessNoCorsRedirectModeNotFollow&PreflightMissingPrivateNetworkAccessId(PreflightMissingPrivateNetworkAccessName)PrivateNetworkAccessPermissionUnavailable$PrivateNetworkAccessPermissionDeniedc                    U R                   $ r$   r%   r'   s    r)   r*   CorsError.to_json  r,   r-   c                    U " U5      $ r$   r/   r0   s     r)   r3   CorsError.from_json  r5   r-   r/   N)+r6   r7   r8   r9   r:   DISALLOWED_BY_MODEINVALID_RESPONSEWILDCARD_ORIGIN_NOT_ALLOWEDMISSING_ALLOW_ORIGIN_HEADERMULTIPLE_ALLOW_ORIGIN_VALUESINVALID_ALLOW_ORIGIN_VALUEALLOW_ORIGIN_MISMATCHINVALID_ALLOW_CREDENTIALSCORS_DISABLED_SCHEMEPREFLIGHT_INVALID_STATUSPREFLIGHT_DISALLOWED_REDIRECT%PREFLIGHT_WILDCARD_ORIGIN_NOT_ALLOWED%PREFLIGHT_MISSING_ALLOW_ORIGIN_HEADER&PREFLIGHT_MULTIPLE_ALLOW_ORIGIN_VALUES$PREFLIGHT_INVALID_ALLOW_ORIGIN_VALUEPREFLIGHT_ALLOW_ORIGIN_MISMATCH#PREFLIGHT_INVALID_ALLOW_CREDENTIALS PREFLIGHT_MISSING_ALLOW_EXTERNAL PREFLIGHT_INVALID_ALLOW_EXTERNAL'PREFLIGHT_MISSING_ALLOW_PRIVATE_NETWORK'PREFLIGHT_INVALID_ALLOW_PRIVATE_NETWORK(INVALID_ALLOW_METHODS_PREFLIGHT_RESPONSE(INVALID_ALLOW_HEADERS_PREFLIGHT_RESPONSE'METHOD_DISALLOWED_BY_PREFLIGHT_RESPONSE'HEADER_DISALLOWED_BY_PREFLIGHT_RESPONSEREDIRECT_CONTAINS_CREDENTIALSINSECURE_PRIVATE_NETWORKINVALID_PRIVATE_NETWORK_ACCESS!UNEXPECTED_PRIVATE_NETWORK_ACCESS NO_CORS_REDIRECT_MODE_NOT_FOLLOW+PREFLIGHT_MISSING_PRIVATE_NETWORK_ACCESS_ID-PREFLIGHT_MISSING_PRIVATE_NETWORK_ACCESS_NAME-PRIVATE_NETWORK_ACCESS_PERMISSION_UNAVAILABLE(PRIVATE_NETWORK_ACCESS_PERMISSION_DENIEDr*   rL   r3   rM   r/   r-   r)   r  r    s     ,("<"<#> !:1 9/7$A!,O),O)-Q*+M(&D#*L''F$'F$.S+.S+/U,/U,.S+.S+$A!7%B"(H%'D$2Z/4^14_1/U,  r-   r  c                  @    \ rS rSr% S\S'   S\S'   S r\S 5       rSrg	)
CorsErrorStatusi  r  
cors_errorra   failed_parameterc                r    [        5       nU R                  R                  5       US'   U R                  US'   U$ )N	corsErrorfailedParameter)r   r
  r*   r  r'  s     r)   r*   CorsErrorStatus.to_json  s6    v OO335["&"7"7r-   c                T    U " [         R                  US   5      [        US   5      S9$ )Nr  r  )r
  r  )r  r3   ra   r0   s     r)   r3   CorsErrorStatus.from_json  s0     **4+<= &7!89
 	
r-   r/   N	r6   r7   r8   r9   r,  r*   rL   r3   rM   r/   r-   r)   r	  r	    s'     
 
r-   r	  c                  >    \ rS rSrSrSrSrSrSrS r	\
S 5       rS	rg
)ServiceWorkerResponseSourcei  z#
Source of serviceworker response.
zcache-storagez
http-cachezfallback-codenetworkc                    U R                   $ r$   r%   r'   s    r)   r*   #ServiceWorkerResponseSource.to_json  r,   r-   c                    U " U5      $ r$   r/   r0   s     r)   r3   %ServiceWorkerResponseSource.from_json  r5   r-   r/   N)r6   r7   r8   r9   r:   CACHE_STORAGE
HTTP_CACHEFALLBACK_CODENETWORKr*   rL   r3   rM   r/   r-   r)   r  r    s6     $MJ#MG  r-   r  c                  R    \ rS rSr% SrS\S'   S\S'   SrS\S	'   S
 r\S 5       r	Sr
g)rb  i  z
Determines what type of Trust Token operation is executed and
depending on the type, some additional parameters. The values
are specified in third_party/blink/renderer/core/fetch/trust_token.idl.
TrustTokenOperationType	operationra   refresh_policyN!typing.Optional[typing.List[str]]issuersc                    [        5       nU R                  R                  5       US'   U R                  US'   U R                  b  U R                   Vs/ s H  o"PM     snUS'   U$ s  snf )Nr   refreshPolicyr#  )r   r   r*   r!  r#  r\  s      r)   r*   TrustTokenParams.to_json  s`    v NN224[ $ 3 3_<<#*.,,7,Qq,7DO 8s   A%c           
         U " [         R                  US   5      [        US   5      SU;   a!  US    Vs/ s H  n[        U5      PM     snS9$ S S9$ s  snf )Nr   r%  r#  )r   r!  r#  )r  r3   ra   rc  s      r)   r3   TrustTokenParams.from_json  sf    -77[8IJtO459Bd9JT)_5_SV_5
 	
 QU
 	
 6s   Ar/   )r6   r7   r8   r9   r:   r,  r#  r*   rL   r3   rM   r/   r-   r)   rb  rb    s=    
 '&  26G.5 
 
r-   rb  c                  6    \ rS rSrSrSrSrS r\S 5       r	Sr
g)	r  i&  Issuance
RedemptionSigningc                    U R                   $ r$   r%   r'   s    r)   r*   TrustTokenOperationType.to_json+  r,   r-   c                    U " U5      $ r$   r/   r0   s     r)   r3   !TrustTokenOperationType.from_json.  r5   r-   r/   N)r6   r7   r8   r9   ISSUANCE
REDEMPTIONSIGNINGr*   rL   r3   rM   r/   r-   r)   r  r  &  s*    HJG  r-   r  c                  N    \ rS rSrSrSrSrSrSrSr	Sr
S	rS
rS r\S 5       rSrg)AlternateProtocolUsagei3  zN
The reason why Chrome uses a specific transport protocol for HTTP semantics.
alternativeJobWonWithoutRacealternativeJobWonRacemainJobWonRacemappingMissingbrokendnsAlpnH3JobWonWithoutRacednsAlpnH3JobWonRaceunspecifiedReasonc                    U R                   $ r$   r%   r'   s    r)   r*   AlternateProtocolUsage.to_json@  r,   r-   c                    U " U5      $ r$   r/   r0   s     r)   r3    AlternateProtocolUsage.from_jsonC  r5   r-   r/   N)r6   r7   r8   r9   r:    ALTERNATIVE_JOB_WON_WITHOUT_RACEALTERNATIVE_JOB_WON_RACEMAIN_JOB_WON_RACEMAPPING_MISSINGBROKEN DNS_ALPN_H3_JOB_WON_WITHOUT_RACEDNS_ALPN_H3_JOB_WON_RACEUNSPECIFIED_REASONr*   rL   r3   rM   r/   r-   r)   r5  r5  3  sQ     (F$6(&OF'C$4,  r-   r5  c                  >    \ rS rSrSrSrSrSrSrS r	\
S 5       rS	rg
)ServiceWorkerRouterSourceiH  z"
Source of service worker router.
r  cachezfetch-eventzrace-network-and-fetch-handlerc                    U R                   $ r$   r%   r'   s    r)   r*   !ServiceWorkerRouterSource.to_jsonQ  r,   r-   c                    U " U5      $ r$   r/   r0   s     r)   r3   #ServiceWorkerRouterSource.from_jsonT  r5   r-   r/   N)r6   r7   r8   r9   r:   r  CACHEFETCH_EVENTRACE_NETWORK_AND_FETCH_HANDLERr*   rL   r3   rM   r/   r-   r)   rK  rK  H  s7     GEK%E"  r-   rK  c                  V    \ rS rSr% SrS\S'   SrS\S'   SrS\S'   S r\	S	 5       r
S
rg)ServiceWorkerRouterInfoiY  Nr  rule_id_matchedz*typing.Optional[ServiceWorkerRouterSource]matched_source_typeactual_source_typec                    [        5       nU R                  b  U R                  US'   U R                  b  U R                  R                  5       US'   U R                  b  U R                  R                  5       US'   U$ )NruleIdMatchedmatchedSourceTypeactualSourceType)r   rV  rW  r*   rX  r'  s     r)   r*   ServiceWorkerRouterInfo.to_jsonf  sv    v+$($8$8D!##/(,(@(@(H(H(JD$%"".'+'>'>'F'F'HD#$r-   c                    U " SU;   a  [        US   5      OS SU;   a  [        R                  US   5      OS SU;   a  [        R                  US   5      S9$ S S9$ )NrZ  r[  r\  )rV  rW  rX  )r  rK  r3   r0   s     r)   r3   !ServiceWorkerRouterInfo.from_jsonp  sx    :IT:QC_ 56W[buy}b} 9 C CDI\D] ^  DH`rvz`z8BB4HZC[\
 	
 AE
 	
r-   r/   )r6   r7   r8   r9   rV  r,  rW  rX  r*   rL   r3   rM   r/   r-   r)   rU  rU  Y  sH     -1O)0 GKCJ FJBI 
 
r-   rU  c                     \ rS rSr% SrS\S'   S\S'   S\S'   S\S	'   S\S
'   S\S'   S\S'   S\S'   S\S'   S\S'   SrS\S'   SrS\S'   SrS\S'   Sr	S\S'   Sr
S\S'   SrS\S'   SrS\S'   SrS\S'   SrS\S '   SrS!\S"'   SrS#\S$'   SrS%\S&'   SrS'\S('   SrS\S)'   SrS\S*'   SrS+\S,'   SrS-\S.'   S/ r\S0 5       rS1rg)2Responseiy  z
HTTP response data.
ra   rC  r  rg  status_textr   rE  	mime_typecharsetr`  connection_reusedr   connection_idencoded_data_lengthzsecurity.SecurityStatesecurity_stateNr9  headers_texttyping.Optional[Headers]request_headersrequest_headers_textremote_ip_addressr  remote_portrJ  from_disk_cachefrom_service_workerfrom_prefetch_cachefrom_early_hintsz(typing.Optional[ServiceWorkerRouterInfo]service_worker_router_infoztyping.Optional[ResourceTiming]timingz,typing.Optional[ServiceWorkerResponseSource]service_worker_response_sourcetyping.Optional[TimeSinceEpoch]response_timecache_storage_cache_namer{  z'typing.Optional[AlternateProtocolUsage]alternate_protocol_usage typing.Optional[SecurityDetails]security_detailsc                   [        5       nU R                  US'   U R                  US'   U R                  US'   U R                  R                  5       US'   U R                  US'   U R                  US'   U R                  US'   U R                  US'   U R                  US	'   U R                  R                  5       US
'   U R                  b  U R                  US'   U R                  b  U R                  R                  5       US'   U R                  b  U R                  US'   U R                  b  U R                  US'   U R                   b  U R                   US'   U R"                  b  U R"                  US'   U R$                  b  U R$                  US'   U R&                  b  U R&                  US'   U R(                  b  U R(                  US'   U R*                  b  U R*                  R                  5       US'   U R,                  b  U R,                  R                  5       US'   U R.                  b  U R.                  R                  5       US'   U R0                  b  U R0                  R                  5       US'   U R2                  b  U R2                  US'   U R4                  b  U R4                  US'   U R6                  b  U R6                  R                  5       US'   U R8                  b  U R8                  R                  5       US'   U$ )NrC  rg  
statusTextrE  mimeTyperd  connectionReusedconnectionIdencodedDataLengthsecurityStateheadersTextrequestHeadersrequestHeadersTextremoteIPAddress
remotePortfromDiskCachefromServiceWorkerfromPrefetchCachefromEarlyHintsserviceWorkerRouterInfort  serviceWorkerResponseSourceresponseTimecacheStorageCacheNamer{  alternateProtocolUsagesecurityDetails)r   rC  rg  rb  rE  r*   rc  rd  re  rf  rg  rh  ri  rk  rl  rm  rn  ro  rp  rq  rr  rs  rt  ru  rw  rx  r{  ry  r{  r'  s     r)   r*   Response.to_json  s   vhhUX!--\,,..0Y>>Z,,Y#'#9#9 #11^$($<$< ! $ 3 3 ; ; =_("&"3"3D+%)%9%9%A%A%CD!"$$0)-)B)BD%&!!-&*&<&<D"#'!%!1!1D+$($8$8D!##/(,(@(@D$%##/(,(@(@D$%  ,%)%:%:D!"**6.2.M.M.U.U.WD*+;;"![[002DN..:262U2U2]2]2_D./)#'#5#5#=#=#?D ((4,0,I,ID()==$#}}D((4-1-J-J-R-R-TD)*  ,&*&;&;&C&C&ED"#r-   c           	        U " S10 S[        US   5      _S[        US   5      _S[        US   5      _S[        R                  US   5      _S[        US   5      _S[        US   5      _S	[	        US
   5      _S[        US   5      _S[        US   5      _S[        R                  R                  US   5      _SSU;   a  [        US   5      OS _SSU;   a  [        R                  US   5      OS _SSU;   a  [        US   5      OS _SSU;   a  [        US   5      OS _SSU;   a  [        US   5      OS _SSU;   a  [	        US   5      OS _SSU;   a  [	        US   5      OS _SS U;   a  [	        US    5      OS _S!S"U;   a  [	        US"   5      OS _S#S$U;   a  [        R                  US$   5      OS _S%S%U;   a  [        R                  US%   5      OS _S&S'U;   a  [        R                  US'   5      OS _S(S)U;   a  [        R                  US)   5      OS _S*S+U;   a  [        US+   5      OS _S,S,U;   a  [        US,   5      OS _S-S.U;   a  [        R                  US.   5      OS _S/S0U;   a  [        R                  US0   5      _6$ S _6$ )2NrC  rg  rb  r}  rE  rc  r~  rd  re  r  rf  r  rg  r  rh  r  ri  r  rk  r  rl  r  rm  r  rn  r  ro  r  rp  r  rq  r  rr  r  rs  r  rt  ru  r  rw  r  rx  r  r{  ry  r  r{  r  r/   )ra   r  r   r3   r`  r   r   SecurityStaterU  r   r  r   r5  rz  r0   s     r)   r3   Response.from_json  s    
DK 
tH~&
 D./
 %%d9o6	

 $z*+
 Y(
 #4(:#;<
  ^ 45
 !&d+>&? @
 $11;;D<QR
 6Cd5JT-01PT
 JZ]aIaG--d3C.DEgk
 EY\`D`T*>%?!@fj
 ?PSW>Wc$'8"9:]a
 4@43GD./T
  <Kd;RDo!67X\!
" DWZ^C^T*=%> ?dh#
$ DWZ^C^T*=%> ?dh%
& >NQU=UT$'7"89[_'
( nG  KO  nO'>'H'HNgIh'i  UY)
* @H4?O>++DN;UY+
, zW  [_  z_+F+P+PQUVsQt+u  ei-
. M[^bLb.2243GHhl/
0 LcfjKjS.E)F%Gpt1
2 /9D.@Sj)*d3
4 jB  FJ  jJ%;%E%EdKcFd%e  PT5
6 TehlSl_66t<M7NO7
 	
6 sw7
 	
r-   r/   )r6   r7   r8   r9   r:   r,  ri  rk  rl  rm  rn  ro  rp  rq  rr  rs  rt  ru  rw  rx  r{  ry  r{  r*   rL   r3   rM   r/   r-   r)   ra  ra  y  sZ    
H K   N L    +* *.L&- 15O-4 26.5 /3+2 )-K%, .2O*1 26.5 26.5 /3+2 LP HO /3F+2 TX"$PW 6:M29 6:29 &*H") IMEL :>6=.` 
 
r-   ra  c                  :    \ rS rSr% SrS\S'   S r\S 5       rSr	g)	WebSocketRequesti#  z
WebSocket request data.
r   rE  c                T    [        5       nU R                  R                  5       US'   U$ )NrE  )r   rE  r*   r'  s     r)   r*   WebSocketRequest.to_json+  s$    v,,..0Yr-   c                :    U " [         R                  US   5      S9$ )NrE  )rE  )r   r3   r0   s     r)   r3   WebSocketRequest.from_json0  s!    %%d9o6
 	
r-   r/   Nrx  r/   r-   r)   r  r  #  s(     
 
 
r-   r  c                  x    \ rS rSr% SrS\S'   S\S'   S\S'   S	rS
\S'   S	rS\S'   S	rS
\S'   S r	\
S 5       rSrg	)WebSocketResponsei7  z
WebSocket response data.
r  rg  ra   rb  r   rE  Nr9  ri  rj  rk  rl  c                T   [        5       nU R                  US'   U R                  US'   U R                  R	                  5       US'   U R
                  b  U R
                  US'   U R                  b  U R                  R	                  5       US'   U R                  b  U R                  US'   U$ )Nrg  r}  rE  r  r  r  )r   rg  rb  rE  r*   ri  rk  rl  r'  s     r)   r*   WebSocketResponse.to_jsonN  s    vX!--\,,..0Y("&"3"3D+%)%9%9%A%A%CD!"$$0)-)B)BD%&r-   c                   U " [        US   5      [        US   5      [        R                  US   5      SU;   a  [        US   5      OS SU;   a  [        R                  US   5      OS SU;   a  [        US   5      S9$ S S9$ )Nrg  r}  rE  r  r  r  )rg  rb  rE  ri  rk  rl  )r  ra   r   r3   r0   s     r)   r3   WebSocketResponse.from_json[  s    tH~&D./%%d9o65Bd5JT-01PTIY]aIaG--d3C.DEgkDX\`D`T*>%?!@
 	
 gk
 	
r-   r/   )r6   r7   r8   r9   r:   r,  ri  rk  rl  r*   rL   r3   rM   r/   r-   r)   r  r  7  s_     K   *.L&- 15O-4 26.5 
 
r-   r  c                  N    \ rS rSr% SrS\S'   S\S'   S\S'   S	 r\S
 5       rSr	g)WebSocketFrameig  zx
WebSocket message data. This represents an entire WebSocket message, not just a fragmented frame as the name suggests.
r   opcoder`  maskra   payload_datac                t    [        5       nU R                  US'   U R                  US'   U R                  US'   U$ )Nr  r  payloadData)r   r  r  r  r'  s     r)   r*   WebSocketFrame.to_jsonw  s8    vXyyV"//]r-   c                Z    U " [        US   5      [        US   5      [        US   5      S9$ )Nr  r  r  )r  r  r  )r   r`  ra   r0   s     r)   r3   WebSocketFrame.from_json~  s4    h(d6l#T-01
 	
r-   r/   Nrx  r/   r-   r)   r  r  g  s6     M J
  
 
r-   r  c                  \    \ rS rSr% SrS\S'   S\S'   S\S'   S	rS
\S'   S r\S 5       r	Sr
g	)CachedResourcei  z(
Information about the cached resource.
ra   rC  r   type_r   	body_sizeNtyping.Optional[Response]responsec                    [        5       nU R                  US'   U R                  R                  5       US'   U R                  US'   U R
                  b  U R
                  R                  5       US'   U$ )NrC  typebodySizer  )r   rC  r  r*   r  r  r'  s     r)   r*   CachedResource.to_json  s`    vhhUzz))+V>>Z==$#}}446Dr-   c           	         U " [        US   5      [        R                  US   5      [        US   5      SU;   a  [        R                  US   5      S9$ S S9$ )NrC  r  r  r  )rC  r  r  r  )ra   r   r3   r   ra  r0   s     r)   r3   CachedResource.from_json  se    DK ((f6D,-=G4=OX''Z(89	
 	
 VZ	
 	
r-   r/   )r6   r7   r8   r9   r:   r,  r  r*   rL   r3   rM   r/   r-   r)   r  r    sD     
H   +/H'. 
 
r-   r  c                      \ rS rSr% SrS\S'   SrS\S'   SrS\S	'   SrS
\S'   Sr	S
\S'   Sr
S\S'   S r\S 5       rSrg)	Initiatori  z*
Information about the request initiator.
ra   r  Nz#typing.Optional[runtime.StackTrace]stackr9  rC  r  line_numbercolumn_numbertyping.Optional[RequestId]
request_idc                   [        5       nU R                  US'   U R                  b  U R                  R                  5       US'   U R                  b  U R                  US'   U R
                  b  U R
                  US'   U R                  b  U R                  US'   U R                  b  U R                  R                  5       US'   U$ )Nr  r  rC  
lineNumbercolumnNumber	requestId)r   r  r  r*   rC  r  r  r  r'  s     r)   r*   Initiator.to_json  s    vzzV::! JJ..0DM88((DK'!%!1!1D)#'#5#5D ??& $ 7 7 9Dr-   c                8   U " [        US   5      SU;   a"  [        R                  R                  US   5      OS SU;   a  [        US   5      OS SU;   a  [	        US   5      OS SU;   a  [	        US   5      OS SU;   a  [
        R                  US   5      S9$ S S9$ )Nr  r  rC  r  r  r  )r  r  rC  r  r  r  )ra   r   
StackTracer3   r   rf   r0   s     r)   r3   Initiator.from_json  s    d6l#AHD'$$..tG}=VZ$)TMDK t5AT5Id<01t9G49O%^ 45UYALPTATy**4+<=
 	
 [_
 	
r-   r/   )r6   r7   r8   r9   r:   r,  r  rC  r  r  r  r*   rL   r3   rM   r/   r-   r)   r  r    sh     J 26E.5 !%C	$ +/K'. -1M)0 .2J*1 
 
r-   r  c                  D    \ rS rSr% SrS\S'   S\S'   S r\S 5       rS	r	g
)CookiePartitionKeyi  z
cookiePartitionKey object
The representation of the components of the key that are created by the cookiePartitionKey class contained in net/cookies/cookie_partition_key.h.
ra   top_level_siter`  has_cross_site_ancestorc                V    [        5       nU R                  US'   U R                  US'   U$ )NtopLevelSitehasCrossSiteAncestor)r   r  r  r'  s     r)   r*   CookiePartitionKey.to_json  s/    v#22^'+'C'C#$r-   c                @    U " [        US   5      [        US   5      S9$ )Nr  r  )r  r  )ra   r`  r0   s     r)   r3   CookiePartitionKey.from_json  s*    tN34$(.D)E$F
 	
r-   r/   Nrx  r/   r-   r)   r  r    s0      "! 
 
r-   r  c                      \ rS rSr% SrS\S'   S\S'   S\S'   S\S'   S\S	'   S
\S'   S\S'   S\S'   S\S'   S\S'   S\S'   S\S'   S
\S'   SrS\S'   SrS\S'   SrS\S'   S r	\
S 5       rSrg) Cookiei  z
Cookie object
ra   namer&   domainpathr   expiresr  sizer`  	http_onlysecuresessionr   priority
same_partyr   source_schemesource_portNtyping.Optional[CookieSameSite]	same_site#typing.Optional[CookiePartitionKey]partition_keyrJ  partition_key_opaquec                   [        5       nU R                  US'   U R                  US'   U R                  US'   U R                  US'   U R
                  US'   U R                  US'   U R                  US'   U R                  US'   U R                  US	'   U R                  R                  5       US
'   U R                  US'   U R                  R                  5       US'   U R                  US'   U R                  b  U R                  R                  5       US'   U R                   b  U R                   R                  5       US'   U R"                  b  U R"                  US'   U$ )Nr  r&   r  r  r  r  httpOnlyr  r  r  	samePartysourceScheme
sourcePortsameSitepartitionKeypartitionKeyOpaque)r   r  r&   r  r  r  r  r  r  r  r  r*   r  r  r  r  r  r  r'  s     r)   r*   Cookie.to_json1  s5   vyyV

WXyyV,,YyyV>>ZX,,Y==002Z OO[#1199;^!--\>>%#~~557D)#'#5#5#=#=#?D $$0)-)B)BD%&r-   c           	     r   U " S0 S[        US   5      _S[        US   5      _S[        US   5      _S[        US   5      _S[        US   5      _S[        US   5      _S[        US   5      _S	[        US	   5      _S
[        US
   5      _S[        R                  US   5      _S[        US   5      _S[        R                  US   5      _S[        US   5      _SSU;   a  [        R                  US   5      OS _SSU;   a  [        R                  US   5      OS _SSU;   a  [        US   5      _6$ S _6$ )Nr  r&   r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r/   )	ra   r   r  r`  r   r3   r   r   r  r0   s     r)   r3   Cookie.from_jsonH  s    
T&\"
d7m$
 tH~&
 T&\"	

 $y/*
 T&\"
 4
+,
 X'
 i)
 $--d:.>?
 D-.
 -66tN7KL
 D./
 EORVDVn..tJ/?@\`
 Q_bfPf,66tN7KLlp
  FZ]aEad+?&@!A!
 	
  hl!
 	
r-   r/   )r6   r7   r8   r9   r:   r,  r  r  r  r*   rL   r3   rM   r/   r-   r)   r  r    s     I J K I N I O L M   &%
  26I.5 :>M6= 37/6. 
 
r-   r  c                      \ rS rSrSrSrSrSrSrSr	Sr
S	rS
rSrSrSrSrSrSrSrSrSrSrSrSrSrSrS r\S 5       rSrg)SetCookieBlockedReasoni^  zB
Types of reasons why a cookie may not be stored from a response.

SecureOnlySameSiteStrictSameSiteLaxSameSiteUnspecifiedTreatedAsLaxSameSiteNoneInsecureUserPreferencesThirdPartyPhaseout ThirdPartyBlockedInFirstPartySetSyntaxErrorSchemeNotSupportedOverwriteSecureInvalidDomainInvalidPrefixUnknownErrorSchemefulSameSiteStrictSchemefulSameSiteLax(SchemefulSameSiteUnspecifiedTreatedAsLaxSamePartyFromCrossPartyContext%SamePartyConflictsWithOtherAttributesNameValuePairExceedsMaxSizeDisallowedCharacterNoCookieContentc                    U R                   $ r$   r%   r'   s    r)   r*   SetCookieBlockedReason.to_jsony  r,   r-   c                    U " U5      $ r$   r/   r0   s     r)   r3    SetCookieBlockedReason.from_json|  r5   r-   r/   N)r6   r7   r8   r9   r:   SECURE_ONLYSAME_SITE_STRICTSAME_SITE_LAX$SAME_SITE_UNSPECIFIED_TREATED_AS_LAXSAME_SITE_NONE_INSECUREUSER_PREFERENCESTHIRD_PARTY_PHASEOUT&THIRD_PARTY_BLOCKED_IN_FIRST_PARTY_SETSYNTAX_ERRORSCHEME_NOT_SUPPORTEDOVERWRITE_SECUREINVALID_DOMAININVALID_PREFIXUNKNOWN_ERRORSCHEMEFUL_SAME_SITE_STRICTSCHEMEFUL_SAME_SITE_LAX.SCHEMEFUL_SAME_SITE_UNSPECIFIED_TREATED_AS_LAX#SAME_PARTY_FROM_CROSS_PARTY_CONTEXT*SAME_PARTY_CONFLICTS_WITH_OTHER_ATTRIBUTES NAME_VALUE_PAIR_EXCEEDS_MAX_SIZEDISALLOWED_CHARACTERNO_COOKIE_CONTENTr*   rL   r3   rM   r/   r-   r)   r  r  ^  s     K'!M+L(4(/-O* L/($N$N"M!:45_2*J'1X.'D$0)  r-   r  c                  n    \ rS rSrSrSrSrSrSrSr	Sr
S	rS
rSrSrSrSrSrSrSrSrS r\S 5       rSrg)CookieBlockedReasoni  z?
Types of reasons why a cookie may not be sent with a request.
r  	NotOnPathDomainMismatchr  r  r  r  r  r  r  r  r  r   r  r  r  c                    U R                   $ r$   r%   r'   s    r)   r*   CookieBlockedReason.to_json  r,   r-   c                    U " U5      $ r$   r/   r0   s     r)   r3   CookieBlockedReason.from_json  r5   r-   r/   N)r6   r7   r8   r9   r:   r  NOT_ON_PATHDOMAIN_MISMATCHr  r  r  r  r  r  r  r  r  r  r  r  r  r*   rL   r3   rM   r/   r-   r)   r"  r"    s}     KK&O'!M+L(4(/-O*"M!:45_2*J''D$  r-   r"  c                  V    \ rS rSrSrSrSrSrSrSr	Sr
S	rS
rSrSrS r\S 5       rSrg)CookieExemptionReasoni  za
Types of reasons why a cookie should have been blocked by 3PCD but is exempted for the request.
r   UserSettingTPCDMetadataTPCDDeprecationTrialTopLevelTPCDDeprecationTrialTPCDHeuristicsEnterprisePolicyStorageAccessTopLevelStorageAccessSchemec                    U R                   $ r$   r%   r'   s    r)   r*   CookieExemptionReason.to_json  r,   r-   c                    U " U5      $ r$   r/   r0   s     r)   r3   CookieExemptionReason.from_json  r5   r-   r/   N)r6   r7   r8   r9   r:   r   USER_SETTINGTPCD_METADATATPCD_DEPRECATION_TRIAL TOP_LEVEL_TPCD_DEPRECATION_TRIALTPCD_HEURISTICSENTERPRISE_POLICYSTORAGE_ACCESSTOP_LEVEL_STORAGE_ACCESSSCHEMEr*   rL   r3   rM   r/   r-   r)   r,  r,    sX     D L"M3'E$&O*$N6F  r-   r,  c                  R    \ rS rSr% SrS\S'   S\S'   SrS\S	'   S
 r\S 5       r	Sr
g)BlockedSetCookieWithReasoni  zN
A cookie which was not stored from a response with the corresponding reason.
z#typing.List[SetCookieBlockedReason]blocked_reasonsra   cookie_lineNztyping.Optional[Cookie]cookiec                    [        5       nU R                   Vs/ s H  o"R                  5       PM     snUS'   U R                  US'   U R                  b  U R                  R                  5       US'   U$ s  snf )NblockedReasons
cookieLinerG  )r   rE  r*   rF  rG  r\  s      r)   r*   "BlockedSetCookieWithReason.to_json  sj    v7;7K7K!L7K!))+7K!L!--\;;"![[002DN	 "Ms   A3c                    U " US    Vs/ s H  n[         R                  U5      PM     sn[        US   5      SU;   a  [        R                  US   5      S9$ S S9$ s  snf )NrI  rJ  rG  )rE  rF  rG  )r  r3   ra   r  rc  s      r)   r3   $BlockedSetCookieWithReason.from_json  so    JNO_J`aJ`Q3==a@J`aD./7?47G6##DN3
 	
 NR
 	
as   Ar/   )r6   r7   r8   r9   r:   r,  rG  r*   rL   r3   rM   r/   r-   r)   rD  rD    s=     98 
 '+F#* 
 
r-   rD  c                  N    \ rS rSr% SrS\S'   S\S'   S\S'   S	 r\S
 5       rSr	g)ExemptedSetCookieWithReasoni  z
A cookie should have been blocked by 3PCD but is exempted and stored from a response with the
corresponding reason. A cookie could only have at most one exemption reason.
r,  exemption_reasonra   rF  r  rG  c                    [        5       nU R                  R                  5       US'   U R                  US'   U R                  R                  5       US'   U$ )NexemptionReasonrJ  rG  )r   rP  r*   rF  rG  r'  s     r)   r*   #ExemptedSetCookieWithReason.to_json  sN    v"&"7"7"?"?"A!--\,,.Xr-   c                    U " [         R                  US   5      [        US   5      [        R                  US   5      S9$ )NrR  rJ  rG  )rP  rF  rG  )r,  r3   ra   r  r0   s     r)   r3   %ExemptedSetCookieWithReason.from_json  sB    2<<TBS=TUD./##DN3
 	
r-   r/   Nrx  r/   r-   r)   rO  rO    s7    
 ,+  N 
 
r-   rO  c                  R    \ rS rSr% SrS\S'   S\S'   SrS\S	'   S
 r\S 5       r	Sr
g)AssociatedCookiei  z
A cookie associated with the request which may or may not be sent with it.
Includes the cookies itself and reasons for blocking or exemption.
r  rG  z typing.List[CookieBlockedReason]rE  Nz&typing.Optional[CookieExemptionReason]rP  c                   [        5       nU R                  R                  5       US'   U R                   Vs/ s H  o"R                  5       PM     snUS'   U R                  b  U R                  R                  5       US'   U$ s  snf )NrG  rI  rR  )r   rG  r*   rE  rP  r\  s      r)   r*   AssociatedCookie.to_json  sv    v,,.X7;7K7K!L7K!))+7K!L  ,&*&;&;&C&C&ED"# "Ms   Bc           	         U " [         R                  US   5      US    Vs/ s H  n[        R                  U5      PM     snSU;   a  [        R                  US   5      S9$ S S9$ s  snf )NrG  rI  rR  )rG  rE  rP  )r  r3   r"  r,  rc  s      r)   r3   AssociatedCookie.from_json  sx    ##DN3GKL\G]^G]!0::1=G]^YjnrYr2<<TBS=TU
 	
 y}
 	
^s   A&
r/   )r6   r7   r8   r9   r:   r,  rP  r*   rL   r3   rM   r/   r-   r)   rW  rW    s?    
 N 65 @D<C 
 
r-   rW  c                      \ rS rSr% SrS\S'   S\S'   SrS\S'   SrS\S	'   SrS\S
'   Sr	S\S'   Sr
S\S'   SrS\S'   SrS\S'   SrS\S'   SrS\S'   SrS\S'   SrS\S'   SrS\S'   S r\S 5       rSrg)CookieParami  z
Cookie parameter object
ra   r  r&   Nr9  rC  r  r  rJ  r  r  r  r  rv  r  typing.Optional[CookiePriority]r  r  #typing.Optional[CookieSourceScheme]r  r  r  r  r  c                   [        5       nU R                  US'   U R                  US'   U R                  b  U R                  US'   U R                  b  U R                  US'   U R
                  b  U R
                  US'   U R                  b  U R                  US'   U R                  b  U R                  US'   U R                  b  U R                  R                  5       US'   U R                  b  U R                  R                  5       US	'   U R                  b  U R                  R                  5       US
'   U R                  b  U R                  US'   U R                  b  U R                  R                  5       US'   U R                  b  U R                  US'   U R                  b  U R                  R                  5       US'   U$ )Nr  r&   rC  r  r  r  r  r  r  r  r  r  r  r  )r   r  r&   rC  r  r  r  r  r  r*   r  r  r  r  r  r  r'  s     r)   r*   CookieParam.to_jsonI  s|   vyyV

W88((DK;;"![[DN99 99DL;;"![[DN>>%#~~D>>%#~~557D<<#"ll224DO==$#}}446D??& $D)#'#5#5#=#=#?D '!%!1!1D)#'#5#5#=#=#?D r-   c                   U " [        US   5      [        US   5      SU;   a  [        US   5      OS SU;   a  [        US   5      OS SU;   a  [        US   5      OS SU;   a  [        US   5      OS SU;   a  [        US   5      OS SU;   a  [        R                  US   5      OS S	U;   a  [        R                  US	   5      OS S
U;   a  [
        R                  US
   5      OS SU;   a  [        US   5      OS SU;   a  [        R                  US   5      OS SU;   a  [        US   5      OS SU;   a  [        R                  US   5      S9$ S S9$ )Nr  r&   rC  r  r  r  r  r  r  r  r  r  r  r  )r  r&   rC  r  r  r  r  r  r  r  r  r  r  r  )	ra   r`  r   r3   r   r   r   r  r  r0   s     r)   r3   CookieParam.from_jsong  s_   T&\"d7m$$)TMDK t*2d*:3tH~&&,nT&\"$+3t+;4X'0:d0Bd4
+,DNRVDVn..tJ/?@\`AJdARN,,T)_=X\CMQUCU^--d:.>?[_2=2EtD-.4P^bfPf,66tN7KLlp3?43GD./TP^bfPf,66tN7KL
 	
 mq
 	
r-   r/   )r6   r7   r8   r9   r:   r,  rC  r  r  r  r  r  r  r  r  r  r  r  r*   rL   r3   rM   r/   r-   r)   r]  r]    s     I J !%C	$ $(F ' "&D
% %)F!( (,I$+ 26I.5 04G,3 15H-4 )-J%, :>M6=
 )-K%, :>M6=< 
 
r-   r]  c                  \    \ rS rSr% SrS\S'   S\S'   S\S'   SrS\S	'   S
 r\S 5       r	Sr
g)AuthChallengei{  z:
Authorization challenge for HTTP status code 401 or 407.
ra   rh  schemerealmNr9  sourcec                    [        5       nU R                  US'   U R                  US'   U R                  US'   U R                  b  U R                  US'   U$ )Nrh  rf  rg  rh  )r   rh  rf  rg  rh  r'  s     r)   r*   AuthChallenge.to_json  sL    vXX

W;;"![[DNr-   c           	         U " [        US   5      [        US   5      [        US   5      SU;   a  [        US   5      S9$ S S9$ )Nrh  rf  rg  rh  )rh  rf  rg  rh  r?  r0   s     r)   r3   AuthChallenge.from_json  sW    tH~&tH~&d7m$*2d*:3tH~&	
 	
 AE	
 	
r-   r/   )r6   r7   r8   r9   r:   r,  rh  r*   rL   r3   rM   r/   r-   r)   re  re  {  sB     K K J $(F ' 
 
r-   re  c                  V    \ rS rSr% SrS\S'   SrS\S'   SrS\S'   S	 r\	S
 5       r
Srg)AuthChallengeResponsei  z
Response to an AuthChallenge.
ra   r  Nr9  usernamepasswordc                    [        5       nU R                  US'   U R                  b  U R                  US'   U R                  b  U R                  US'   U$ )Nr  ro  rp  )r   r  ro  rp  r'  s     r)   r*   AuthChallengeResponse.to_json  sL    v==Z==$#}}D==$#}}Dr-   c                ~    U " [        US   5      SU;   a  [        US   5      OS SU;   a  [        US   5      S9$ S S9$ )Nr  ro  rp  )r  ro  rp  r?  r0   s     r)   r3   AuthChallengeResponse.from_json  sW    j)*.8D.@Sj)*d.8D.@Sj)*
 	
 GK
 	
r-   r/   )r6   r7   r8   r9   r:   r,  ro  rp  r*   rL   r3   rM   r/   r-   r)   rn  rn    sA     M &*H") &*H") 
 
r-   rn  c                  6    \ rS rSrSrSrSrS r\S 5       r	Sr
g)	InterceptionStagei  z
Stages of the interception to begin intercepting. Request will intercept before the request is
sent. Response will intercept after the response is received.
rB  HeadersReceivedc                    U R                   $ r$   r%   r'   s    r)   r*   InterceptionStage.to_json  r,   r-   c                    U " U5      $ r$   r/   r0   s     r)   r3   InterceptionStage.from_json  r5   r-   r/   N)r6   r7   r8   r9   r:   REQUESTHEADERS_RECEIVEDr*   rL   r3   rM   r/   r-   r)   rv  rv    s-     G(  r-   rv  c                  Z    \ rS rSr% SrSrS\S'   SrS\S'   SrS\S	'   S
 r	\
S 5       rSrg)RequestPatterni  z#
Request pattern for interception.
Nr9  url_patterntyping.Optional[ResourceType]resource_typez"typing.Optional[InterceptionStage]interception_stagec                    [        5       nU R                  b  U R                  US'   U R                  b  U R                  R                  5       US'   U R                  b  U R                  R                  5       US'   U$ )N
urlPatternresourceTypeinterceptionStage)r   r  r  r*   r  r'  s     r)   r*   RequestPattern.to_json  su    v'!%!1!1D)#'#5#5#=#=#?D "".(,(?(?(G(G(ID$%r-   c                    U " SU;   a  [        US   5      OS SU;   a  [        R                  US   5      OS SU;   a  [        R                  US   5      S9$ S S9$ )Nr  r  r  )r  r  r  )ra   r   r3   rv  r0   s     r)   r3   RequestPattern.from_json  sq    3?43GD./TJX\`J`,00n1EFfjYlptYt0::4@S;TU
 	
 {
 	
r-   r/   )r6   r7   r8   r9   r:   r  r,  r  r  r*   rL   r3   rM   r/   r-   r)   r  r    sI    
 )-K%, 48M07 >B:A 
 
r-   r  c                      \ rS rSr% SrS\S'   S\S'   S\S'   S\S'   S\S	'   S\S
'   SrS\S'   SrS\S'   SrS\S'   S r	\
S 5       rSrg)SignedExchangeSignaturei  z
Information about a signed exchange signature.
https://wicg.github.io/webpackage/draft-yasskin-httpbis-origin-signed-exchanges-impl.html#rfc.section.3.1
ra   label	signature	integrityvalidity_urlr  dater  Nr9  cert_urlcert_sha256r"  certificatesc                   [        5       nU R                  US'   U R                  US'   U R                  US'   U R                  US'   U R
                  US'   U R                  US'   U R                  b  U R                  US'   U R                  b  U R                  US'   U R                  b  U R                   Vs/ s H  o"PM     snUS	'   U$ s  snf )
Nr  r  r  validityUrlr  r  certUrl
certSha256r  )
r   r  r  r  r  r  r  r  r  r  r\  s      r)   r*   SignedExchangeSignature.to_json  s    v

W NN[ NN["//]yyV,,Y==$"mmDO'!%!1!1D(/3/@/@#A/@!A/@#AD  $Bs   8Cc                V   U " [        US   5      [        US   5      [        US   5      [        US   5      [        US   5      [        US   5      SU;   a  [        US   5      OS SU;   a  [        US   5      OS S	U;   a!  US	    Vs/ s H  n[        U5      PM     snS
9	$ S S
9	$ s  snf )Nr  r  r  r  r  r  r  r  r  )	r  r  r  r  r  r  r  r  r  )ra   r  rc  s      r)   r3   !SignedExchangeSignature.from_json&  s    d7m$${+,${+,T-01T&\"Y(-6$->Si)D3?43GD./TCQUYCY$~*>?*>Q#a&*>?

 
	
 `d

 
	
 @s   B&r/   )r6   r7   r8   r9   r:   r,  r  r  r  r*   rL   r3   rM   r/   r-   r)   r  r    sr    
 J N N  I L &*H") )-K%, 7;L3:  
 
r-   r  c                  b    \ rS rSr% SrS\S'   S\S'   S\S'   S	\S
'   S\S'   S r\S 5       rSr	g)SignedExchangeHeaderi5  z
Information about a signed exchange header.
https://wicg.github.io/webpackage/draft-yasskin-httpbis-origin-signed-exchanges-impl.html#cbor-representation
ra   request_urlr  response_coder   response_headersz$typing.List[SignedExchangeSignature]
signaturesheader_integrityc                   [        5       nU R                  US'   U R                  US'   U R                  R	                  5       US'   U R
                   Vs/ s H  o"R	                  5       PM     snUS'   U R                  US'   U$ s  snf )N
requestUrlresponseCoderesponseHeadersr  headerIntegrity)r   r  r  r  r*   r  r  r\  s      r)   r*   SignedExchangeHeader.to_jsonJ  s    v!--\#11^"&"7"7"?"?"A37??C?aiik?C\"&"7"7 Ds   Bc                    U " [        US   5      [        US   5      [        R                  US   5      US    Vs/ s H  n[        R                  U5      PM     sn[        US   5      S9$ s  snf )Nr  r  r  r  r  )r  r  r  r  r  )ra   r  r   r3   r  rc  s      r)   r3   SignedExchangeHeader.from_jsonS  sv    D./d>23$..t4E/FGFJ<FXYFX/99!<FXY &7!89
 	
 Zs   A,r/   Nrx  r/   r-   r)   r  r  5  sH    
    54  
 
r-   r  c                  F    \ rS rSrSrSrSrSrSrSr	Sr
S	 r\S
 5       rSrg)SignedExchangeErrorFieldi^  z1
Field type for a signed exchange related error.
signatureSigsignatureIntegritysignatureCertUrlsignatureCertSha256signatureValidityUrlsignatureTimestampsc                    U R                   $ r$   r%   r'   s    r)   r*    SignedExchangeErrorField.to_jsoni  r,   r-   c                    U " U5      $ r$   r/   r0   s     r)   r3   "SignedExchangeErrorField.from_jsonl  r5   r-   r/   N)r6   r7   r8   r9   r:   SIGNATURE_SIGSIGNATURE_INTEGRITYSIGNATURE_CERT_URLSIGNATURE_CERT_SHA256SIGNATURE_VALIDITY_URLSIGNATURE_TIMESTAMPSr*   rL   r3   rM   r/   r-   r)   r  r  ^  sE     #M.+130  r-   r  c                  V    \ rS rSr% SrS\S'   SrS\S'   SrS\S	'   S
 r\	S 5       r
Srg)SignedExchangeErroriq  /
Information about a signed exchange response.
ra   messageNr  signature_indexz)typing.Optional[SignedExchangeErrorField]error_fieldc                    [        5       nU R                  US'   U R                  b  U R                  US'   U R                  b  U R                  R	                  5       US'   U$ )Nr  signatureIndex
errorField)r   r  r  r  r*   r'  s     r)   r*   SignedExchangeError.to_json  s]    v,,Y+%)%9%9D!"'!%!1!1!9!9!;Dr-   c                    U " [        US   5      SU;   a  [        US   5      OS SU;   a  [        R                  US   5      S9$ S S9$ )Nr  r  r  )r  r  r  )ra   r  r  r3   r0   s     r)   r3   SignedExchangeError.from_json  s`    Y(;Kt;SC%5 67Y]R^bfRf0::4;MN
 	
 mq
 	
r-   r/   )r6   r7   r8   r9   r:   r,  r  r  r*   rL   r3   rM   r/   r-   r)   r  r  q  sB     L -1O)0 >BK:A 
 
r-   r  c                  d    \ rS rSr% SrS\S'   SrS\S'   SrS\S	'   SrS
\S'   S r	\
S 5       rSrg)SignedExchangeInfoi  r  ra  outer_responseNz%typing.Optional[SignedExchangeHeader]headerrz  r{  z1typing.Optional[typing.List[SignedExchangeError]]errorsc                z   [        5       nU R                  R                  5       US'   U R                  b  U R                  R                  5       US'   U R                  b  U R                  R                  5       US'   U R
                  b-  U R
                   Vs/ s H  o"R                  5       PM     snUS'   U$ s  snf )NouterResponser  r  r  )r   r  r*   r  r{  r  r\  s      r)   r*   SignedExchangeInfo.to_json  s    v $ 3 3 ; ; =_;;"![[002DN  ,&*&;&;&C&C&ED"#;;"37;;?;aiik;?DN @s   B8c                $   U " [         R                  US   5      SU;   a  [        R                  US   5      OS SU;   a  [        R                  US   5      OS SU;   a+  US    Vs/ s H  n[        R                  U5      PM     snS9$ S S9$ s  snf )Nr  r  r  r  )r  r  r{  r  )ra  r3   r  rz  r  rc  s      r)   r3   SignedExchangeInfo.from_json  s    #--d?.CDEMQUEU'11$x.A[_SdhlSl_66t<M7NOrvQY]aQad8nMn'11!4nM	
 	
 hl	
 	
 Ns   %Br/   )r6   r7   r8   r9   r:   r,  r  r{  r  r*   rL   r3   rM   r/   r-   r)   r  r    sR      59F18 :>6= AEF=D	 
 
r-   r  c                  >    \ rS rSrSrSrSrSrSrS r	\
S 5       rS	rg
)ContentEncodingi  z5
List of content encodings supported by the backend.
deflategzipbrzstdc                    U R                   $ r$   r%   r'   s    r)   r*   ContentEncoding.to_json  r,   r-   c                    U " U5      $ r$   r/   r0   s     r)   r3   ContentEncoding.from_json  r5   r-   r/   N)r6   r7   r8   r9   r:   DEFLATEGZIPBRZSTDr*   rL   r3   rM   r/   r-   r)   r  r    s6     GD	BD  r-   r  c                  >    \ rS rSrSrSrSrSrSrS r	\
S 5       rS	rg
)PrivateNetworkRequestPolicyi  AllowBlockFromInsecureToMorePrivateWarnFromInsecureToMorePrivatePreflightBlockPreflightWarnc                    U R                   $ r$   r%   r'   s    r)   r*   #PrivateNetworkRequestPolicy.to_json  r,   r-   c                    U " U5      $ r$   r/   r0   s     r)   r3   %PrivateNetworkRequestPolicy.from_json  r5   r-   r/   N)r6   r7   r8   r9   ALLOW#BLOCK_FROM_INSECURE_TO_MORE_PRIVATE"WARN_FROM_INSECURE_TO_MORE_PRIVATEPREFLIGHT_BLOCKPREFLIGHT_WARNr*   rL   r3   rM   r/   r-   r)   r  r    s6    E*J')H&&O$N  r-   r  c                  :    \ rS rSrSrSrSrSrS r\	S 5       r
Srg	)
IPAddressSpacei  LocalPrivatePublicUnknownc                    U R                   $ r$   r%   r'   s    r)   r*   IPAddressSpace.to_json  r,   r-   c                    U " U5      $ r$   r/   r0   s     r)   r3   IPAddressSpace.from_json  r5   r-   r/   N)r6   r7   r8   r9   LOCALPRIVATEPUBLICr  r*   rL   r3   rM   r/   r-   r)   r  r    s/    EGFG  r-   r  c                  6    \ rS rSr% S\S'   S r\S 5       rSrg)ConnectTimingi  r   r   c                8    [        5       nU R                  US'   U$ )Nr  )r   r   r'  s     r)   r*   ConnectTiming.to_json  s    v"//]r-   c                &    U " [        US   5      S9$ )Nr  )r   r*  r0   s     r)   r3   ConnectTiming.from_json  s    tM23
 	
r-   r/   Nr  r/   r-   r)   r  r    s#    
 
 
 
r-   r  c                  J    \ rS rSr% S\S'   S\S'   S\S'   S r\S	 5       rS
rg)ClientSecurityStatei  r`  initiator_is_secure_contextr  initiator_ip_address_spacer  private_network_request_policyc                    [        5       nU R                  US'   U R                  R                  5       US'   U R                  R                  5       US'   U$ )NinitiatorIsSecureContextinitiatorIPAddressSpaceprivateNetworkRequestPolicy)r   r  r  r*   r  r'  s     r)   r*   ClientSecurityState.to_json   sS    v+/+K+K'(*.*I*I*Q*Q*S&'.2.Q.Q.Y.Y.[*+r-   c                    U " [        US   5      [        R                  US   5      [        R                  US   5      S9$ )Nr
  r  r  )r  r  r  )r`  r  r3   r  r0   s     r)   r3   ClientSecurityState.from_json  sF    (,T2L-M(N'5'?'?E^@_'`+F+P+PQUVsQt+u
 	
r-   r/   Nr  r/   r-   r)   r  r    s-    !%% ..$?? 
 
r-   r  c                  F    \ rS rSrSrSrSrSrSrSr	Sr
S	 r\S
 5       rSrg)CrossOriginOpenerPolicyValuei  
SameOriginSameOriginAllowPopupsRestrictProperties
UnsafeNoneSameOriginPlusCoepRestrictPropertiesPlusCoepNoopenerAllowPopupsc                    U R                   $ r$   r%   r'   s    r)   r*   $CrossOriginOpenerPolicyValue.to_json  r,   r-   c                    U " U5      $ r$   r/   r0   s     r)   r3   &CrossOriginOpenerPolicyValue.from_json  r5   r-   r/   N)r6   r7   r8   r9   SAME_ORIGINSAME_ORIGIN_ALLOW_POPUPSRESTRICT_PROPERTIESUNSAFE_NONESAME_ORIGIN_PLUS_COEPRESTRICT_PROPERTIES_PLUS_COEPNOOPENER_ALLOW_POPUPSr*   rL   r3   rM   r/   r-   r)   r  r    sC    K6.K0$@!1  r-   r  c                  \    \ rS rSr% S\S'   S\S'   SrS\S'   SrS\S'   S	 r\S
 5       r	Sr
g)CrossOriginOpenerPolicyStatusi!  r  r&   report_only_valueNr9  reporting_endpointreport_only_reporting_endpointc                    [        5       nU R                  R                  5       US'   U R                  R                  5       US'   U R                  b  U R                  US'   U R
                  b  U R
                  US'   U$ Nr&   reportOnlyValuereportingEndpointreportOnlyReportingEndpointr   r&   r*   r&  r'  r(  r'  s     r)   r*   %CrossOriginOpenerPolicyStatus.to_json+  x    v

**,W"&"8"8"@"@"B"".(,(?(?D$%..:262U2UD./r-   c           	         U " [         R                  US   5      [         R                  US   5      SU;   a  [        US   5      OS SU;   a  [        US   5      S9$ S S9$ Nr&   r+  r,  r-  )r&   r&  r'  r(  )r  r3   ra   r0   s     r)   r3   'CrossOriginOpenerPolicyStatus.from_json5  su    .88gG:DDTJ[E\]ATX\A\s4(;#<=bfWtx|W|3t4Q/R+S	
 	
 CG	
 	
r-   r/   r6   r7   r8   r9   r,  r'  r(  r*   rL   r3   rM   r/   r-   r)   r%  r%  !  s?    ''33/3,3;?"$8? 
 
r-   r%  c                  6    \ rS rSrSrSrSrS r\S 5       r	Sr
g)	CrossOriginEmbedderPolicyValuei?  r   CredentiallessRequireCorpc                    U R                   $ r$   r%   r'   s    r)   r*   &CrossOriginEmbedderPolicyValue.to_jsonD  r,   r-   c                    U " U5      $ r$   r/   r0   s     r)   r3   (CrossOriginEmbedderPolicyValue.from_jsonG  r5   r-   r/   N)r6   r7   r8   r9   r   CREDENTIALLESSREQUIRE_CORPr*   rL   r3   rM   r/   r-   r)   r6  r6  ?  s*    D%N L  r-   r6  c                  \    \ rS rSr% S\S'   S\S'   SrS\S'   SrS\S'   S	 r\S
 5       r	Sr
g)CrossOriginEmbedderPolicyStatusiL  r6  r&   r&  Nr9  r'  r(  c                    [        5       nU R                  R                  5       US'   U R                  R                  5       US'   U R                  b  U R                  US'   U R
                  b  U R
                  US'   U$ r*  r.  r'  s     r)   r*   'CrossOriginEmbedderPolicyStatus.to_jsonV  r0  r-   c           	         U " [         R                  US   5      [         R                  US   5      SU;   a  [        US   5      OS SU;   a  [        US   5      S9$ S S9$ r2  )r6  r3   ra   r0   s     r)   r3   )CrossOriginEmbedderPolicyStatus.from_json`  su    0::4=I<FFtL]G^_ATX\A\s4(;#<=bfWtx|W|3t4Q/R+S	
 	
 CG	
 	
r-   r/   r4  r/   r-   r)   r@  r@  L  s?    ))55/3,3;?"$8? 
 
r-   r@  c                  2    \ rS rSrSrSrS r\S 5       rSr	g)ContentSecurityPolicySourceij  HTTPMetac                    U R                   $ r$   r%   r'   s    r)   r*   #ContentSecurityPolicySource.to_jsonn  r,   r-   c                    U " U5      $ r$   r/   r0   s     r)   r3   %ContentSecurityPolicySource.from_jsonq  r5   r-   r/   N)
r6   r7   r8   r9   rG  METAr*   rL   r3   rM   r/   r-   r)   rF  rF  j  s%    DD  r-   rF  c                  J    \ rS rSr% S\S'   S\S'   S\S'   S r\S	 5       rS
rg)ContentSecurityPolicyStatusiv  ra   effective_directivesr`  is_enforcedrF  rh  c                    [        5       nU R                  US'   U R                  US'   U R                  R	                  5       US'   U$ )NeffectiveDirectives
isEnforcedrh  )r   rP  rQ  rh  r*   r'  s     r)   r*   #ContentSecurityPolicyStatus.to_json~  sE    v&*&?&?"#!--\,,.Xr-   c                n    U " [        US   5      [        US   5      [        R                  US   5      S9$ )NrS  rT  rh  )rP  rQ  rh  )ra   r`  rF  r3   r0   s     r)   r3   %ContentSecurityPolicyStatus.from_json  s<    !$T*?%@!AT,/0.88hH
 	
r-   r/   Nr  r/   r-   r)   rO  rO  v  s-    '' 
 
r-   rO  c                  V    \ rS rSr% SrS\S'   SrS\S'   SrS\S'   S	 r\	S
 5       r
Srg)SecurityIsolationStatusi  Nz.typing.Optional[CrossOriginOpenerPolicyStatus]coopz0typing.Optional[CrossOriginEmbedderPolicyStatus]coepz9typing.Optional[typing.List[ContentSecurityPolicyStatus]]r  c                @   [        5       nU R                  b  U R                  R                  5       US'   U R                  b  U R                  R                  5       US'   U R                  b-  U R                   Vs/ s H  o"R                  5       PM     snUS'   U$ s  snf )NrZ  r[  r  )r   rZ  r*   r[  r  r\  s      r)   r*   SecurityIsolationStatus.to_json  s}    v99 99,,.DL99 99,,.DL88049199;9DK :s   :Bc           
         U " SU;   a  [         R                  US   5      OS SU;   a  [        R                  US   5      OS SU;   a+  US    Vs/ s H  n[        R                  U5      PM     snS9$ S S9$ s  snf )NrZ  r[  r  )rZ  r[  r  )r%  r3   r@  rO  rc  s      r)   r3   !SecurityIsolationStatus.from_json  s    JPTX..88fF^bLRVZN0::4<H`dSX\`S`4;O;a,66q9;O
 	
 gk
 	
 Ps   A6r/   )r6   r7   r8   r9   rZ  r,  r[  r  r*   rL   r3   rM   r/   r-   r)   rY  rY    s<    ;?D
8?=AD
:AEIC	BI 
 
r-   rY  c                  >    \ rS rSrSrSrSrSrSrS r	\
S 5       rS	rg
)ReportStatusi  z'
The status of a Reporting API report.
QueuedPendingMarkedForRemovalSuccessc                    U R                   $ r$   r%   r'   s    r)   r*   ReportStatus.to_json  r,   r-   c                    U " U5      $ r$   r/   r0   s     r)   r3   ReportStatus.from_json  r5   r-   r/   N)r6   r7   r8   r9   r:   QUEUEDPENDINGMARKED_FOR_REMOVALSUCCESSr*   rL   r3   rM   r/   r-   r)   ra  ra    s7     FG+G  r-   ra  c                  F   ^  \ rS rSrSS jr\SS j5       rU 4S jrSrU =r	$ )ReportIdi  c                    U $ r$   r/   r'   s    r)   r*   ReportId.to_json  rS   r-   c                    U " U5      $ r$   r/   r0   s     r)   r3   ReportId.from_json  r5   r-   c                >   > SR                  [        TU ]	  5       5      $ )NzReportId({})rW   r[   s    r)   rZ   ReportId.__repr__  r^   r-   r/   r_   )r2   ra   r`   ro  )
r6   r7   r8   r9   r*   rL   r3   rZ   rM   rc   rd   s   @r)   ro  ro    s&      9 9r-   ro  c                      \ rS rSr% SrS\S'   S\S'   S\S'   S\S'   S	\S
'   S\S'   S\S'   S\S'   S\S'   S r\S 5       rSr	g)ReportingApiReporti  zA
An object representing a report generated by the Reporting API.
ro  id_ra   initiator_urldestinationr  znetwork.TimeSinceEpochrk  r  depthcompleted_attemptsr   bodyra  rg  c                |   [        5       nU R                  R                  5       US'   U R                  US'   U R                  US'   U R
                  US'   U R                  R                  5       US'   U R                  US'   U R                  US'   U R                  US'   U R                  R                  5       US	'   U$ )
NidinitiatorUrlrz  r  rk  r{  completedAttemptsr}  rg  )r   rx  r*   ry  rz  r  rk  r{  r|  r}  rg  r'  s     r)   r*   ReportingApiReport.to_json  s    vXX%%'T
#11^"..]zzV NN224[

W$($;$; !yyV,,.Xr-   c                F   U " [         R                  US   5      [        US   5      [        US   5      [        US   5      [        R                  R                  US   5      [        US   5      [        US   5      [        US   5      [        R                  US	   5      S
9	$ )Nr  r  rz  r  rk  r{  r  r}  rg  )	rx  ry  rz  r  rk  r{  r|  r}  rg  )ro  r3   ra   r  r   r  r   ra  r0   s     r)   r3   ReportingApiReport.from_json  s    ""4:.d>23D/0d6l#,,66tK7HId7m$"4(;#<=d6l#))$x.9

 
	
r-   r/   Nrx  r/   r-   r)   rw  rw    s`     
M   J &% J 
J 
 
r-   rw  c                  @    \ rS rSr% S\S'   S\S'   S r\S 5       rSrg)	ReportingApiEndpointi  ra   rC  
group_namec                V    [        5       nU R                  US'   U R                  US'   U$ )NrC  	groupName)r   rC  r  r'  s     r)   r*   ReportingApiEndpoint.to_json	  s)    vhhU OO[r-   c                @    U " [        US   5      [        US   5      S9$ )NrC  r  )rC  r  r?  r0   s     r)   r3   ReportingApiEndpoint.from_json	  s(    DK 4,-
 	
r-   r/   Nr  r/   r-   r)   r  r    s)     
H O 
 
r-   r  c                      \ rS rSr% SrS\S'   SrS\S'   SrS\S	'   SrS\S
'   Sr	S\S'   Sr
S\S'   S r\S 5       rSrg)LoadNetworkResourcePageResulti	  z<
An object providing the result of a network resource load.
r`  successNr  	net_errorr9  net_error_namehttp_status_codez typing.Optional[io.StreamHandle]streamz typing.Optional[network.Headers]rE  c                   [        5       nU R                  US'   U R                  b  U R                  US'   U R                  b  U R                  US'   U R                  b  U R                  US'   U R
                  b  U R
                  R                  5       US'   U R                  b  U R                  R                  5       US'   U$ )Nr  netErrornetErrorNamehttpStatusCoder  rE  )r   r  r  r  r  r  r*   rE  r'  s     r)   r*   %LoadNetworkResourcePageResult.to_json)	  s    v,,Y>>%#~~D*#'#6#6D   ,%)%:%:D!";;"![[002DN<<#"ll224DOr-   c                L   U " [        US   5      SU;   a  [        US   5      OS SU;   a  [        US   5      OS SU;   a  [        US   5      OS SU;   a"  [        R                  R                  US   5      OS SU;   a$  [        R                  R                  US   5      S9$ S S9$ )Nr  r  r  r  r  rE  )r  r  r  r  r  rE  )r`  r   ra   r
   StreamHandler3   r  r   r0   s     r)   r3   'LoadNetworkResourcePageResult.from_json8	  s    i)1;t1CeD,-8F$8N3tN34TX>NRV>VU4(8#9:\`@HD@P2??,,T(^<VZBKtBSGOO--d9o>
 	
 Z^
 	
r-   r/   )r6   r7   r8   r9   r:   r,  r  r  r  r  rE  r*   rL   r3   rM   r/   r-   r)   r  r  	  se     M )-I%,+/N(//3,3 04F,3 15G-4 
 
r-   r  c                  D    \ rS rSr% SrS\S'   S\S'   S r\S 5       rSr	g	)
LoadNetworkResourceOptionsiD	  zZ
An options object that may be extended later to better support CORS,
CORB and streaming.
r`  disable_cacheinclude_credentialsc                V    [        5       nU R                  US'   U R                  US'   U$ )NdisableCacheincludeCredentials)r   r  r  r'  s     r)   r*   "LoadNetworkResourceOptions.to_jsonN	  s/    v#11^%)%=%=!"r-   c                @    U " [        US   5      [        US   5      S9$ )Nr  r  )r  r  r`  r0   s     r)   r3   $LoadNetworkResourceOptions.from_jsonT	  s*    tN34 $T*>%? @
 	
r-   r/   Nrx  r/   r-   r)   r  r  D	  s.      
 
r-   r  c              #     #    [        5       nU  Vs/ s H  o"R                  5       PM     snUS'   SUS.nUv ngs  snf 7f)z
Sets a list of content encodings that will be accepted. Empty list means no encoding is accepted.

**EXPERIMENTAL**

:param encodings: List of accepted content encodings.
	encodingszNetwork.setAcceptedEncodingsrD  paramsNr   r*   )r  r  r]  cmd_dictr2   s        r)   set_accepted_encodingsr  \	  sF      &F09:	199;	:F;0H >D ;   ?:?c               #     #    SS0n U v ng7f)zI
Clears accepted encodings set by setAcceptedEncodings

**EXPERIMENTAL**
rD  z&Network.clearAcceptedEncodingsOverrideNr/   r  r2   s     r)   !clear_accepted_encodings_overrider  o	  s      	:H >D   
c               #  6   #    SS0n U v n[        US   5      $ 7f)ze
Tells whether clearing browser cache is supported.

:returns: True if browser cache can be cleared.
rD  zNetwork.canClearBrowserCacheresultr  r  s     r)   can_clear_browser_cacher  {	  s,      	0H >DX   c               #  6   #    SS0n U v n[        US   5      $ 7f)zi
Tells whether clearing browser cookies is supported.

:returns: True if browser cookies can be cleared.
rD  zNetwork.canClearBrowserCookiesr  r  r  s     r)   can_clear_browser_cookiesr  	  s,      	2H >DXr  c               #  6   #    SS0n U v n[        US   5      $ 7f)z~
Tells whether emulation of network conditions is supported.

:returns: True if emulation of network conditions is supported.
rD  z#Network.canEmulateNetworkConditionsr  r  r  s     r)   can_emulate_network_conditionsr  	  s,      	7H >DXr  c               #     #    SS0n U v ng7f)z
Clears browser cache.
rD  zNetwork.clearBrowserCacheNr/   r  s     r)   clear_browser_cacher  	  s     
 	-H >Dr  c               #     #    SS0n U v ng7f)z
Clears browser cookies.
rD  zNetwork.clearBrowserCookiesNr/   r  s     r)   clear_browser_cookiesr  	  s     
 	/H >Dr  c              #    #    [        5       nU R                  5       US'   Ub  UR                  5       US'   Ub  X(S'   Ub  X8S'   Ub  XHS'   Ub  XXS'   Ub  UR                  5       US'   Ub  UR                  5       US	'   S
US.n	U	v n
g7f)a7  
Response to Network.requestIntercepted which either modifies the request to continue with any
modifications, or blocks it, or completes it with the provided response bytes. If a network
fetch occurs as a result which encounters a redirect an additional Network.requestIntercepted
event will be sent with the same InterceptionId.
Deprecated, use Fetch.continueRequest, Fetch.fulfillRequest and Fetch.failRequest instead.

**EXPERIMENTAL**

:param interception_id:
:param error_reason: *(Optional)* If set this causes the request to fail with the given reason. Passing ```Aborted```` for requests marked with ````isNavigationRequest``` also cancels the navigation. Must not be set in response to an authChallenge.
:param raw_response: *(Optional)* If set the requests completes using with the provided base64 encoded raw response, including HTTP status line and headers etc... Must not be set in response to an authChallenge.
:param url: *(Optional)* If set the request url will be modified in a way that's not observable by page. Must not be set in response to an authChallenge.
:param method: *(Optional)* If set this allows the request method to be overridden. Must not be set in response to an authChallenge.
:param post_data: *(Optional)* If set this allows postData to be set. Must not be set in response to an authChallenge.
:param headers: *(Optional)* If set this allows the request headers to be changed. Must not be set in response to an authChallenge.
:param auth_challenge_response: *(Optional)* Response to a requestIntercepted with an authChallenge. Must not be set otherwise.
interceptionIdNerrorReasonrawResponserC  rD  rU  rE  authChallengeResponsez"Network.continueInterceptedRequestr  r  )interception_iderror_reasonraw_responserC  rD  rI  rE  auth_challenge_responser  r  r2   s              r)   continue_intercepted_requestr  	  s     8 &F.668F , 4 4 6} ,}
u!x&z#OO-y**A*I*I*K&'6H >Ds   BBc              #     #    [        5       nXS'   Ub  XS'   Ub  X%S'   Ub  X5S'   Ub  UR                  5       US'   SUS.nUv ng7f)	aw  
Deletes browser cookies with matching name and url or domain/path/partitionKey pair.

:param name: Name of the cookies to remove.
:param url: *(Optional)* If specified, deletes all the cookies with the given name where domain and path match provided URL.
:param domain: *(Optional)* If specified, deletes only cookies with the exact domain.
:param path: *(Optional)* If specified, deletes only cookies with the exact path.
:param partition_key: **(EXPERIMENTAL)** *(Optional)* If specified, deletes only cookies with the the given name and partitionKey where all partition key attributes match the cookie partition key attribute.
r  NrC  r  r  r  zNetwork.deleteCookiesr  r  )r  rC  r  r  r  r  r  r2   s           r)   delete_cookiesr  	  sk       &F6N
u!xv !.!6!6!8~)H >Ds   AAc               #     #    SS0n U v ng7f)zS
Disables network tracking, prevents network events from being sent to the client.
rD  zNetwork.disableNr/   r  s     r)   disabler  

  s     
 	#H >Dr  c              #     #    [        5       nXS'   XS'   X(S'   X8S'   Ub  UR                  5       US'   Ub  XXS'   Ub  XhS'   Ub  XxS	'   S
US.n	U	v n
g7f)aP  
Activates emulation of network conditions.

:param offline: True to emulate internet disconnection.
:param latency: Minimum latency from request sent to response headers received (ms).
:param download_throughput: Maximal aggregated download throughput (bytes/sec). -1 disables download throttling.
:param upload_throughput: Maximal aggregated upload throughput (bytes/sec).  -1 disables upload throttling.
:param connection_type: *(Optional)* Connection type if known.
:param packet_loss: **(EXPERIMENTAL)** *(Optional)* WebRTC packet loss (percent, 0-100). 0 disables packet loss emulation, 100 drops all the packets.
:param packet_queue_length: **(EXPERIMENTAL)** *(Optional)* WebRTC packet queue length (packet). 0 removes any queue length limitations.
:param packet_reordering: **(EXPERIMENTAL)** *(Optional)* WebRTC packetReordering feature.
offlinelatencydownloadThroughputuploadThroughputNconnectionType
packetLosspacketQueueLengthpacketReorderingz Network.emulateNetworkConditionsr  r  )r  r  download_throughputupload_throughputconnection_typepacket_losspacket_queue_lengthpacket_reorderingr  r  r2   s              r)   emulate_network_conditionsr  
  s     , &F99#6 !2"#2#:#:#< *|&&9"#$%6!"4H >Ds   AAc              #  \   #    [        5       nU b  XS'   Ub  XS'   Ub  X#S'   SUS.nUv ng7f)a  
Enables network tracking, network events will now be delivered to the client.

:param max_total_buffer_size: **(EXPERIMENTAL)** *(Optional)* Buffer size in bytes to use when preserving network payloads (XHRs, etc).
:param max_resource_buffer_size: **(EXPERIMENTAL)** *(Optional)* Per-resource buffer size in bytes to use when preserving network payloads (XHRs, etc).
:param max_post_data_size: *(Optional)* Longest post body size (in bytes) that would be included in requestWillBeSent notification
NmaxTotalBufferSizemaxResourceBufferSizemaxPostDataSizezNetwork.enabler  r   )max_total_buffer_sizemax_resource_buffer_sizemax_post_data_sizer  r  r2   s         r)   enabler  >
  sQ      &F('<#$+*B&'%$6 !"H >Ds   *,c               #  v   #    SS0n U v nUS    Vs/ s H  n[         R                  U5      PM     sn$ s  snf 7f)z
Returns all browser cookies. Depending on the backend support, will return detailed cookie
information in the ``cookies`` field.
Deprecated. Use Storage.getCookies instead.

:returns: Array of cookie objects.
rD  zNetwork.getAllCookiescookies)r  r3   )r  r2   r]  s      r)   get_all_cookiesr  X
  sD      	)H >D)-i9AFQ999s   949c              #     #    [        5       nXS'   SUS.nUv nUS    Vs/ s H  n[        U5      PM     sn$ s  snf 7f)zr
Returns the DER-encoded certificate.

**EXPERIMENTAL**

:param origin: Origin to get certificate for.
:returns: 
rh  zNetwork.getCertificater  
tableNames)r   ra   )rh  r  r  r2   r]  s        r)   get_certificater  g
  sO      &F8*H >D ./.qCF.///s   >9>c              #     #    [        5       nU b  U  Vs/ s H  o"PM     snUS'   SUS.nUv nUS    Vs/ s H  n[        R                  U5      PM     sn$ s  snf s  snf 7f)a  
Returns all browser cookies for the current URL. Depending on the backend support, will return
detailed cookie information in the ``cookies`` field.

:param urls: *(Optional)* The list of URLs for which applicable cookies will be fetched. If not specified, it's assumed to be set to the list containing the URLs of the page and all of its subframes.
:returns: Array of cookie objects.
urlszNetwork.getCookiesr  r  )r   r  r3   r  r  r]  r  r2   s        r)   get_cookiesr  |
  sp      &F%)*T!T*v&H >D)-i9AFQ99 + :s   A!AA!AA!c              #     #    [        5       nU R                  5       US'   SUS.nUv n[        US   5      [        US   5      4$ 7f)a  
Returns content served for the given request.

:param request_id: Identifier of the network request to get content for.
:returns: A tuple with the following items:

    0. **body** - Response body.
    1. **base64Encoded** - True, if content was sent as base64.
r  zNetwork.getResponseBodyr  r}  base64Encodedr   r*   ra   r`  r  r  r  r2   s       r)   get_response_bodyr  
  sZ      &F$,,.F;+H >DDLT/"#    AAc              #  r   #    [        5       nU R                  5       US'   SUS.nUv n[        US   5      $ 7f)z
Returns post data sent with the request. Returns an error when no data was sent with the request.

:param request_id: Identifier of the network request to get content for.
:returns: Request body string, omitting files from multipart requests
r  zNetwork.getRequestPostDatar  rU  r   r*   ra   r  s       r)   get_request_post_datar  
  sG      &F$,,.F;.H >DtJ     57c              #     #    [        5       nU R                  5       US'   SUS.nUv n[        US   5      [        US   5      4$ 7f)a6  
Returns content served for the given currently intercepted request.

**EXPERIMENTAL**

:param interception_id: Identifier for the intercepted request to get body for.
:returns: A tuple with the following items:

    0. **body** - Response body.
    1. **base64Encoded** - True, if content was sent as base64.
r  z&Network.getResponseBodyForInterceptionr  r}  r  r  r  r  r  r2   s       r)   "get_response_body_for_interceptionr  
  s[      &F.668F:H >DDLT/"# r  c              #     #    [        5       nU R                  5       US'   SUS.nUv n[        R                  R	                  US   5      $ 7f)a`  
Returns a handle to the stream representing the response body. Note that after this command,
the intercepted request can't be continued as is -- you either need to cancel it or to provide
the response body. The stream only supports sequential read, IO.read will fail if the position
is specified.

**EXPERIMENTAL**

:param interception_id:
:returns: 
r  z/Network.takeResponseBodyForInterceptionAsStreamr  r  )r   r*   r
   r  r3   r  s       r)   -take_response_body_for_interception_as_streamr  
  sQ      &F.668FCH >D??$$T(^44s   A	Ac              #  X   #    [        5       nU R                  5       US'   SUS.nUv ng7f)a  
This method sends a new XMLHttpRequest which is identical to the original one. The following
parameters should be identical: method, url, async, request body, extra headers, withCredentials
attribute, user, password.

**EXPERIMENTAL**

:param request_id: Identifier of XHR to replay.
r  zNetwork.replayXHRr  Nr  r  s       r)   
replay_xhrr   
  s7      &F$,,.F;%H >D   (*c              #     #    [        5       nU R                  5       US'   XS'   Ub  X$S'   Ub  X4S'   SUS.nUv nUS    Vs/ s H"  n[        R                  R	                  U5      PM$     sn$ s  snf 7f)aZ  
Searches for given string in response content.

**EXPERIMENTAL**

:param request_id: Identifier of the network response to search.
:param query: String to search for.
:param case_sensitive: *(Optional)* If true, search is case sensitive.
:param is_regex: *(Optional)* If true, treats string parameter as regex.
:returns: List of search matches.
r  querycaseSensitiveisRegexzNetwork.searchInResponseBodyr  r  )r   r*   r   SearchMatchr3   )r  r  case_sensitiveis_regexr  r  r2   r]  s           r)   search_in_response_bodyr	    s     " &F$,,.F;7O!"0$y0H >D7;H~F~!H  **1-~FFFs   A A3)A.+A3c              #  f   #    [        5       nU  Vs/ s H  o"PM     snUS'   SUS.nUv ngs  snf 7f)zo
Blocks URLs from loading.

**EXPERIMENTAL**

:param urls: URL patterns to block. Wildcards ('*') are allowed.
r  zNetwork.setBlockedURLsr  Nr  r  s        r)   set_blocked_ur_lsr  %  sA      &F!%&Aa&F6N*H >D 's   1,1c              #  :   #    [        5       nXS'   SUS.nUv ng7f)zs
Toggles ignoring of service worker for each request.

:param bypass: Bypass service worker and load from network.
bypasszNetwork.setBypassServiceWorkerr  Nr  )r  r  r  r2   s       r)   set_bypass_service_workerr  8  s,      &F82H >D   c              #  :   #    [        5       nXS'   SUS.nUv ng7f)z}
Toggles ignoring cache for each request. If ``true``, cache will not be used.

:param cache_disabled: Cache disabled state.
cacheDisabledzNetwork.setCacheDisabledr  Nr  )cache_disabledr  r  r2   s       r)   set_cache_disabledr  I  s,      &F,?,H >Dr  c              #    #    [        5       nXS'   XS'   Ub  X.S'   Ub  X>S'   Ub  XNS'   Ub  X^S'   Ub  XnS'   Ub  UR                  5       US'   Ub  UR                  5       US	'   U	b  U	R                  5       US
'   U
b  XS'   Ub  UR                  5       US'   Ub  XS'   Ub  UR                  5       US'   SUS.nUv n[        US   5      $ 7f)a  
Sets a cookie with the given cookie data; may overwrite equivalent cookies if they exist.

:param name: Cookie name.
:param value: Cookie value.
:param url: *(Optional)* The request-URI to associate with the setting of the cookie. This value can affect the default domain, path, source port, and source scheme values of the created cookie.
:param domain: *(Optional)* Cookie domain.
:param path: *(Optional)* Cookie path.
:param secure: *(Optional)* True if cookie is secure.
:param http_only: *(Optional)* True if cookie is http-only.
:param same_site: *(Optional)* Cookie SameSite type.
:param expires: *(Optional)* Cookie expiration date, session cookie if not set
:param priority: **(EXPERIMENTAL)** *(Optional)* Cookie Priority type.
:param same_party: **(EXPERIMENTAL)** *(Optional)* True if cookie is SameParty.
:param source_scheme: **(EXPERIMENTAL)** *(Optional)* Cookie source scheme type.
:param source_port: **(EXPERIMENTAL)** *(Optional)* Cookie source port. Valid values are {-1, [1, 65535]}, -1 indicates an unspecified port. An unspecified port value allows protocol clients to emulate legacy cookie scope for the port. This is a temporary ability and it will be removed in the future.
:param partition_key: **(EXPERIMENTAL)** *(Optional)* Cookie partition key. If not set, the cookie will be set as not partitioned.
:returns: Always set to true. If an error occurs, the response indicates protocol error.
r  r&   rC  r  r  r  r  r  r  r  r  r  r  r  zNetwork.setCookier  r  )r   r*   r`  )r  r&   rC  r  r  r  r  r  r  r  r  r  r  r  r  r  r2   s                    r)   
set_cookier  Z  s    F &F6N7O
u!xv!x&z&..0z#OO-y%--/z({ !.!6!6!8~*| !.!6!6!8~%H >DY  s   C	Cc              #     #    [        5       nU  Vs/ s H  o"R                  5       PM     snUS'   SUS.nUv ngs  snf 7f)z9
Sets given cookies.

:param cookies: Cookies to be set.
r  zNetwork.setCookiesr  Nr  )r  r  r]  r  r2   s        r)   set_cookiesr    sF      &F.56gg6F9&H >D 7r  c              #  X   #    [        5       nU R                  5       US'   SUS.nUv ng7f)z
Specifies whether to always send extra HTTP headers with the requests from this page.

:param headers: Map with extra HTTP headers.
rE  zNetwork.setExtraHTTPHeadersr  Nr  )rE  r  r  r2   s       r)   set_extra_http_headersr    s5      &F)F9/H >Dr  c              #  :   #    [        5       nXS'   SUS.nUv ng7f)z
Specifies whether to attach a page script stack id in requests

**EXPERIMENTAL**

:param enabled: Whether to attach a page script stack for debugging purpose.
enabledzNetwork.setAttachDebugStackr  Nr  )r  r  r  r2   s       r)   set_attach_debug_stackr    s,      &F9/H >Dr  c              #     #    [        5       nU  Vs/ s H  o"R                  5       PM     snUS'   SUS.nUv ngs  snf 7f)a+  
Sets the requests to intercept that match the provided patterns and optionally resource types.
Deprecated, please use Fetch.enable instead.

**EXPERIMENTAL**

:param patterns: Requests matching any of these patterns will be forwarded and wait for the corresponding continueInterceptedRequest call.
patternszNetwork.setRequestInterceptionr  Nr  )r  r  r]  r  r2   s        r)   set_request_interceptionr    sF      &F/78x!))+x8F:2H >D 9r  c              #     #    [        5       nXS'   Ub  XS'   Ub  X$S'   Ub  UR                  5       US'   SUS.nUv ng7f)aq  
Allows overriding user agent with the given string.

:param user_agent: User agent to use.
:param accept_language: *(Optional)* Browser language to emulate.
:param platform: *(Optional)* The platform navigator.platform should return.
:param user_agent_metadata: **(EXPERIMENTAL)** *(Optional)* To be sent in Sec-CH-UA-* headers and returned in navigator.userAgentData
	userAgentNacceptLanguageplatformuserAgentMetadatazNetwork.setUserAgentOverrider  r  )
user_agentaccept_languager#  user_agent_metadatar  r  r2   s          r)   set_user_agent_overrider(    sc      &F$;"#2 %z&&9&A&A&C"#0H >Ds   =?c              #  r   #    [        5       nU R                  5       US'   SUS.nUv n[        US   5      $ 7f)a"  
Enables streaming of the response for the given requestId.
If enabled, the dataReceived event contains the data that was received during streaming.

**EXPERIMENTAL**

:param request_id: Identifier of the request to stream.
:returns: Data that has been buffered until streaming is enabled.
r  zNetwork.streamResourceContentr  bufferedDatar  r  s       r)   stream_resource_contentr+    sG      &F$,,.F;1H >DtN#$$r  c              #     #    [        5       nU b  U R                  5       US'   SUS.nUv n[        R                  US   5      $ 7f)z
Returns information about the COEP/COOP isolation status.

**EXPERIMENTAL**

:param frame_id: *(Optional)* If no frameId is provided, the status of the target is provided.
:returns: 
frameIdz"Network.getSecurityIsolationStatusr  rg  )r   r*   rY  r3   )frame_idr  r  r2   s       r)   get_security_isolation_statusr/    sR      &F$,,.y6H >D",,T(^<<s   AAc              #  :   #    [        5       nXS'   SUS.nUv ng7f)a  
Enables tracking for the Reporting API, events generated by the Reporting API will now be delivered to the client.
Enabling triggers 'reportingApiReportAdded' for all existing reports.

**EXPERIMENTAL**

:param enable: Whether to enable or disable events for the Reporting API
r  zNetwork.enableReportingApir  Nr  )r  r  r  r2   s       r)   enable_reporting_apir1  2  s,      &F8.H >Dr  c              #     #    [        5       nU b  U R                  5       US'   XS'   UR                  5       US'   SUS.nUv n[        R                  US   5      $ 7f)a1  
Fetches the resource and returns the content.

**EXPERIMENTAL**

:param frame_id: *(Optional)* Frame id to get the resource for. Mandatory for frame targets, and should be omitted for worker targets.
:param url: URL of the resource to get content for.
:param options: Options for the request.
:returns: 
r-  rC  optionszNetwork.loadNetworkResourcer  resource)r   r*   r  r3   )r.  rC  r3  r  r  r2   s         r)   load_network_resourcer5  F  sk      &F$,,.y5M)F9/H >D(224
3CDDs   AAzNetwork.dataReceivedc                  `    \ rS rSr% SrS\S'   S\S'   S\S'   S\S	'   S
\S'   \SS j5       rSrg)DataReceivedib  z6
Fired when data chunk was received over the network.
rf   r  r   rk  r  data_lengthrg  r9  datac           
         U " [         R                  US   5      [        R                  US   5      [        US   5      [        US   5      SU;   a  [	        US   5      S9$ S S9$ )Nr  rk  
dataLengthr  r9  )r  rk  r8  rg  r9  )rf   r3   r   r  ra   r0   s     r)   r3   DataReceived.from_jsons  sq     **4+<=#--d;.?@D./ #D)<$= >&,nT&\"
 	

 ;?
 	
r-   r/   N)r2   r   r`   r7  	r6   r7   r8   r9   r:   r,  rL   r3   rM   r/   r-   r)   r7  r7  b  s9     

 
r-   r7  z"Network.eventSourceMessageReceivedc                  `    \ rS rSr% SrS\S'   S\S'   S\S'   S\S	'   S\S
'   \SS j5       rSrg)EventSourceMessageReceivedi~  z-
Fired when EventSource message is received.
rf   r  r   rk  ra   
event_nameevent_idr9  c           
         U " [         R                  US   5      [        R                  US   5      [        US   5      [        US   5      [        US   5      S9$ )Nr  rk  	eventNameeventIdr9  )r  rk  r@  rA  r9  rf   r3   r   ra   r0   s     r)   r3   $EventSourceMessageReceived.from_json  sZ     **4+<=#--d;.?@4,-i)T&\"
 	
r-   r/   N)r2   r   r`   r?  r=  r/   r-   r)   r?  r?  ~  s6     OM
I
 
r-   r?  zNetwork.loadingFailedc                  t    \ rS rSr% SrS\S'   S\S'   S\S'   S	\S
'   S\S'   S\S'   S\S'   \SS j5       rSrg)LoadingFailedi  z-
Fired when HTTP request has failed to load.
rf   r  r   rk  r   r  ra   
error_textrJ  canceledztyping.Optional[BlockedReason]blocked_reasonz typing.Optional[CorsErrorStatus]cors_error_statusc                Z   U " [         R                  US   5      [        R                  US   5      [        R                  US   5      [	        US   5      SU;   a  [        US   5      OS SU;   a  [        R                  US   5      OS SU;   a  [        R                  US   5      S9$ S S9$ )	Nr  rk  r  	errorTextrJ  blockedReasoncorsErrorStatus)r  rk  r  rI  rJ  rK  rL  )rf   r3   r   r   ra   r`  r  r	  r0   s     r)   r3   LoadingFailed.from_json  s     **4+<=#--d;.?@((f64,-/9T/AT$z*+tM\`dMd=2243HIjnTeimTmo77=N8OP
 	
 tx
 	
r-   r/   N)r2   r   r`   rH  r=  r/   r-   r)   rH  rH    sD     O##2277	
 	
r-   rH  zNetwork.loadingFinishedc                  L    \ rS rSr% SrS\S'   S\S'   S\S'   \SS	 j5       rS
rg)LoadingFinishedi  z/
Fired when HTTP request has finished loading.
rf   r  r   rk  r   rg  c                    U " [         R                  US   5      [        R                  US   5      [        US   5      S9$ )Nr  rk  r  )r  rk  rg  )rf   r3   r   r   r0   s     r)   r3   LoadingFinished.from_json  sC     **4+<=#--d;.?@ %d+>&? @
 	
r-   r/   N)r2   r   r`   rS  r=  r/   r-   r)   rS  rS    s-     
 
r-   rS  zNetwork.requestInterceptedc                      \ rS rSr% SrS\S'   S\S'   S\S'   S	\S
'   S\S'   S\S'   S\S'   S\S'   S\S'   S\S'   S\S'   S\S'   \SS j5       rSrg)RequestInterceptedi  z
**EXPERIMENTAL**

Details of an intercepted HTTP request, which must be either allowed, blocked, modified or
mocked.
Deprecated, use Fetch.requestPaused instead.
ro   r  rB  requestzpage.FrameIdr.  r   r  r`  is_navigation_requestrJ  is_downloadr9  redirect_urlztyping.Optional[AuthChallenge]auth_challengetyping.Optional[ErrorReason]response_error_reasonr  response_status_coderj  r  r  r  c                l   U " [         R                  US   5      [        R                  US   5      [        R                  R                  US   5      [
        R                  US   5      [        US   5      SU;   a  [        US   5      OS SU;   a  [        US   5      OS SU;   a  [        R                  US   5      OS S	U;   a  [        R                  US	   5      OS S
U;   a  [        US
   5      OS SU;   a  [        R                  US   5      OS SU;   a  [        R                  US   5      S9$ S S9$ )Nr  rX  r-  r  isNavigationRequest
isDownloadredirectUrlauthChallengeresponseErrorReasonresponseStatusCoder  r  )r  rX  r.  r  rY  rZ  r[  r\  r^  r_  r  r  )ro   r3   rB  r   FrameIdr   r`  ra   re  rz   r  r   rf   r0   s     r)   r3   RequestIntercepted.from_json  s:   *44T:J5KL%%d9o6\\++DO<&00n1EF"&t,A'B"C4@D4HT,/0d5Bd5JT-01PTM\`dMd=2243HIjnXmquXu+"7"7=R8S"T{DX\`D`T*>%?!@fjK\`dKdW..t4E/FGjnALPTATy**4+<=
 	
 [_
 	
r-   r/   N)r2   r   r`   rW  r=  r/   r-   r)   rW  rW    so     $# '&&& 32 87 /. /. +*
 
r-   rW  zNetwork.requestServedFromCachec                  8    \ rS rSr% SrS\S'   \SS j5       rSrg)	RequestServedFromCachei  z/
Fired if request ended up loading from cache.
rf   r  c                :    U " [         R                  US   5      S9$ )Nr  )r  )rf   r3   r0   s     r)   r3    RequestServedFromCache.from_json  s"     **4+<=
 	
r-   r/   N)r2   r   r`   rj  r=  r/   r-   r)   rj  rj    s!     
 
r-   rj  zNetwork.requestWillBeSentc                      \ rS rSr% SrS\S'   S\S'   S\S'   S	\S
'   S\S'   S\S'   S\S'   S\S'   S\S'   S\S'   S\S'   S\S'   \SS j5       rSrg)RequestWillBeSenti  z0
Fired when page is about to send HTTP request.
rf   r  rO   	loader_idra   document_urlrB  rX  r   rk  r   	wall_timer  	initiatorr`  redirect_has_extra_infor  redirect_responser  r  typing.Optional[page.FrameId]r.  rJ  has_user_gesturec                P   U " [         R                  US   5      [        R                  US   5      [        US   5      [        R                  US   5      [
        R                  US   5      [        R                  US   5      [        R                  US   5      [        US   5      S	U;   a  [        R                  US	   5      OS S
U;   a  [        R                  US
   5      OS SU;   a"  [        R                  R                  US   5      OS SU;   a  [        US   5      S9$ S S9$ )Nr  loaderIddocumentURLrX  rk  wallTimerr  redirectHasExtraInforedirectResponser  r-  hasUserGesture)r  ro  rp  rX  rk  rq  rr  rs  rt  r  r.  rv  )rf   r3   rO   ra   rB  r   r   r  r`  ra  r   r   rg  r0   s     r)   r3   RequestWillBeSent.from_json?  s    **4+<=((j)9:T-01%%d9o6#--d;.?@$..tJ/?@))${*;<$(.D)E$FN`dhNhh006H1IJnr:@D.,((f6d@IT@QT\\++DO<W[=MQU=UT$'7"89
 	
 \`
 	
r-   r/   N)r2   r   r`   rn  r=  r/   r-   r)   rn  rn    se      "!00((++++
 
r-   rn  zNetwork.resourceChangedPriorityc                  L    \ rS rSr% SrS\S'   S\S'   S\S'   \SS	 j5       rS
rg)ResourceChangedPriorityiQ  zC
**EXPERIMENTAL**

Fired when resource loading priority is changed
rf   r  r.  new_priorityr   rk  c                    U " [         R                  US   5      [        R                  US   5      [        R                  US   5      S9$ )Nr  newPriorityrk  )r  r  rk  )rf   r3   r.  r   r0   s     r)   r3   !ResourceChangedPriority.from_json`  sH     **4+<=)33D4GH#--d;.?@
 	
r-   r/   N)r2   r   r`   r  r=  r/   r-   r)   r  r  Q  s-     ""
 
r-   r  zNetwork.signedExchangeReceivedc                  B    \ rS rSr% SrS\S'   S\S'   \S
S j5       rSrg	)SignedExchangeReceivedii  zN
**EXPERIMENTAL**

Fired when a signed exchange was received over the network
rf   r  r  infoc                h    U " [         R                  US   5      [        R                  US   5      S9$ )Nr  r  )r  r  )rf   r3   r  r0   s     r)   r3    SignedExchangeReceived.from_jsonv  s4     **4+<=#--d6l;
 	
r-   r/   N)r2   r   r`   r  r=  r/   r-   r)   r  r  i  s'     

 
r-   r  zNetwork.responseReceivedc                  t    \ rS rSr% SrS\S'   S\S'   S\S'   S	\S
'   S\S'   S\S'   S\S'   \SS j5       rSrg)ResponseReceivedi~  z(
Fired when HTTP response is available.
rf   r  rO   ro  r   rk  r   r  ra  r  r`  has_extra_inforu  r.  c                b   U " [         R                  US   5      [        R                  US   5      [        R                  US   5      [        R                  US   5      [
        R                  US   5      [        US   5      SU;   a$  [        R                  R                  US   5      S9$ S S9$ )	Nr  rx  rk  r  r  hasExtraInfor-  )r  ro  rk  r  r  r  r.  )	rf   r3   rO   r   r   ra  r`  r   rg  r0   s     r)   r3   ResponseReceived.from_json  s     **4+<=((j)9:#--d;.?@((f6''Z(89^ 45@IT@QT\\++DO<
 	
 X\
 	
r-   r/   N)r2   r   r`   r  r=  r/   r-   r)   r  r  ~  sG      ++	
 	
r-   r  zNetwork.webSocketClosedc                  B    \ rS rSr% SrS\S'   S\S'   \S
S j5       rSrg	)WebSocketClosedi  z!
Fired when WebSocket is closed.
rf   r  r   rk  c                h    U " [         R                  US   5      [        R                  US   5      S9$ )Nr  rk  )r  rk  rf   r3   r   r0   s     r)   r3   WebSocketClosed.from_json  s5     **4+<=#--d;.?@
 	
r-   r/   N)r2   r   r`   r  r=  r/   r-   r)   r  r    s'     
 
r-   r  zNetwork.webSocketCreatedc                  L    \ rS rSr% SrS\S'   S\S'   S\S'   \SS	 j5       rS
rg)WebSocketCreatedi  z 
Fired upon WebSocket creation.
rf   r  ra   rC  typing.Optional[Initiator]rr  c                    U " [         R                  US   5      [        US   5      SU;   a  [        R                  US   5      S9$ S S9$ )Nr  rC  rr  )r  rC  rr  )rf   r3   ra   r  r0   s     r)   r3   WebSocketCreated.from_json  sY     **4+<=DK @Kt@Si))${*;<
 	
 Z^
 	
r-   r/   N)r2   r   r`   r  r=  r/   r-   r)   r  r    s,     	H))
 
r-   r  zNetwork.webSocketFrameErrorc                  L    \ rS rSr% SrS\S'   S\S'   S\S'   \SS	 j5       rS
rg)WebSocketFrameErrori  z,
Fired when WebSocket message error occurs.
rf   r  r   rk  ra   error_messagec                    U " [         R                  US   5      [        R                  US   5      [        US   5      S9$ )Nr  rk  errorMessage)r  rk  r  rE  r0   s     r)   r3   WebSocketFrameError.from_json  sB     **4+<=#--d;.?@d>23
 	
r-   r/   N)r2   r   r`   r  r=  r/   r-   r)   r  r    s-     
 
r-   r  zNetwork.webSocketFrameReceivedc                  L    \ rS rSr% SrS\S'   S\S'   S\S'   \SS	 j5       rS
rg)WebSocketFrameReceivedi  z+
Fired when WebSocket message is received.
rf   r  r   rk  r  r  c                    U " [         R                  US   5      [        R                  US   5      [        R                  US   5      S9$ Nr  rk  r  )r  rk  r  rf   r3   r   r  r0   s     r)   r3    WebSocketFrameReceived.from_json  H     **4+<=#--d;.?@#--d:.>?
 	
r-   r/   N)r2   r   r`   r  r=  r/   r-   r)   r  r    -     
 
r-   r  zNetwork.webSocketFrameSentc                  L    \ rS rSr% SrS\S'   S\S'   S\S'   \SS	 j5       rS
rg)WebSocketFrameSenti  z'
Fired when WebSocket message is sent.
rf   r  r   rk  r  r  c                    U " [         R                  US   5      [        R                  US   5      [        R                  US   5      S9$ r  r  r0   s     r)   r3   WebSocketFrameSent.from_json  r  r-   r/   N)r2   r   r`   r  r=  r/   r-   r)   r  r    r  r-   r  z*Network.webSocketHandshakeResponseReceivedc                  L    \ rS rSr% SrS\S'   S\S'   S\S'   \SS	 j5       rS
rg)"WebSocketHandshakeResponseReceivedi  z<
Fired when WebSocket handshake response becomes available.
rf   r  r   rk  r  r  c                    U " [         R                  US   5      [        R                  US   5      [        R                  US   5      S9$ r  )rf   r3   r   r  r0   s     r)   r3   ,WebSocketHandshakeResponseReceived.from_json  sH     **4+<=#--d;.?@&00j1AB
 	
r-   r/   N)r2   r   r`   r  r=  r/   r-   r)   r  r    s-     
 
r-   r  z)Network.webSocketWillSendHandshakeRequestc                  V    \ rS rSr% SrS\S'   S\S'   S\S'   S	\S
'   \SS j5       rSrg)!WebSocketWillSendHandshakeRequesti"  z6
Fired when WebSocket is about to initiate handshake.
rf   r  r   rk  r   rq  r  rX  c           	         U " [         R                  US   5      [        R                  US   5      [        R                  US   5      [        R                  US   5      S9$ )Nr  rk  rz  rX  )r  rk  rq  rX  )rf   r3   r   r   r  r0   s     r)   r3   +WebSocketWillSendHandshakeRequest.from_json1  sZ     **4+<=#--d;.?@$..tJ/?@$..tI?	
 	
r-   r/   N)r2   r   r`   r  r=  r/   r-   r)   r  r  "  s3     
 
r-   r  zNetwork.webTransportCreatedc                  V    \ rS rSr% SrS\S'   S\S'   S\S'   S	\S
'   \SS j5       rSrg)WebTransportCreatedi;  z#
Fired upon WebTransport creation.
rf   transport_idra   rC  r   rk  r  rr  c           	         U " [         R                  US   5      [        US   5      [        R                  US   5      SU;   a  [        R                  US   5      S9$ S S9$ )NtransportIdrC  rk  rr  )r  rC  rk  rr  )rf   r3   ra   r   r  r0   s     r)   r3   WebTransportCreated.from_jsonJ  sl    ",,T--@ADK #--d;.?@@Kt@Si))${*;<	
 	
 Z^	
 	
r-   r/   N)r2   r   r`   r  r=  r/   r-   r)   r  r  ;  s2     	H))
 
r-   r  z)Network.webTransportConnectionEstablishedc                  B    \ rS rSr% SrS\S'   S\S'   \S
S j5       rSrg	)!WebTransportConnectionEstablishediT  z0
Fired when WebTransport handshake is finished.
rf   r  r   rk  c                h    U " [         R                  US   5      [        R                  US   5      S9$ Nr  rk  )r  rk  r  r0   s     r)   r3   +WebTransportConnectionEstablished.from_json_  5    ",,T--@A#--d;.?@
 	
r-   r/   N)r2   r   r`   r  r=  r/   r-   r)   r  r  T  '     
 
r-   r  zNetwork.webTransportClosedc                  B    \ rS rSr% SrS\S'   S\S'   \S
S j5       rSrg	)WebTransportClosedig  z&
Fired when WebTransport is disposed.
rf   r  r   rk  c                h    U " [         R                  US   5      [        R                  US   5      S9$ r  r  r0   s     r)   r3   WebTransportClosed.from_jsonr  r  r-   r/   N)r2   r   r`   r  r=  r/   r-   r)   r  r  g  r  r-   r  z"Network.requestWillBeSentExtraInfoc                  j    \ rS rSr% SrS\S'   S\S'   S\S'   S	\S
'   S\S'   S\S'   \SS j5       rSrg)RequestWillBeSentExtraInfoiz  aY  
**EXPERIMENTAL**

Fired when additional information about a requestWillBeSent event is available from the
network stack. Not every requestWillBeSent event will have an additional
requestWillBeSentExtraInfo fired for it, and there is no guarantee whether requestWillBeSent
or requestWillBeSentExtraInfo will be fired first for the same request.
rf   r  ztyping.List[AssociatedCookie]associated_cookiesr   rE  r  connect_timingz$typing.Optional[ClientSecurityState]client_security_staterJ  "site_has_cookie_in_other_partitionc                \   U " [         R                  US   5      US    Vs/ s H  n[        R                  U5      PM     sn[        R                  US   5      [        R                  US   5      SU;   a  [
        R                  US   5      OS SU;   a  [        US   5      S9$ S S9$ s  snf )Nr  associatedCookiesrE  connectTimingclientSecurityStatesiteHasCookieInOtherPartition)r  r  rE  r  r  r  )rf   r3   rW  r   r  r  r`  rc  s      r)   r3   $RequestWillBeSentExtraInfo.from_json  s     **4+<=GKL_G`aG`! 0 : :1 =G`a%%d9o6(2243HI`uy}`}"5"?"?EZ@["\  DH^}  BF  _FtD9X4Y/Z
 	
 LP
 	
as   B)
r/   N)r2   r   r`   r  r=  r/   r-   r)   r  r  z  sA      65!!??(==
 
r-   r  z!Network.responseReceivedExtraInfoc                      \ rS rSr% SrS\S'   S\S'   S\S'   S	\S
'   S\S'   S\S'   S\S'   S\S'   S\S'   \SS j5       rSrg)ResponseReceivedExtraInfoi  a!  
**EXPERIMENTAL**

Fired when additional information about a responseReceived event is available from the network
stack. Not every responseReceived event will have an additional responseReceivedExtraInfo for
it, and responseReceivedExtraInfo may be fired before or after responseReceived.
rf   r  z'typing.List[BlockedSetCookieWithReason]blocked_cookiesr   rE  r  resource_ip_address_spacer  status_coder9  ri  r  cookie_partition_keyrJ  cookie_partition_key_opaquez9typing.Optional[typing.List[ExemptedSetCookieWithReason]]exempted_cookiesc                
   U " [         R                  US   5      US    Vs/ s H  n[        R                  U5      PM     sn[        R                  US   5      [        R                  US   5      [        US   5      SU;   a  [        US   5      OS SU;   a  [        R                  US   5      OS SU;   a  [        US   5      OS S	U;   a+  US	    Vs/ s H  n[        R                  U5      PM     snS
9	$ S S
9	$ s  snf s  snf )Nr  blockedCookiesrE  resourceIPAddressSpace
statusCoder  cookiePartitionKeycookiePartitionKeyOpaqueexemptedCookies)	r  r  rE  r  r  ri  r  r  r  )
rf   r3   rD  r   r  r  ra   r  r`  rO  rc  s      r)   r3   #ResponseReceivedExtraInfo.from_json  s     **4+<=NRScNdeNd7AA!DNde%%d9o6&4&>&>tD\?]&^D./5Bd5JT-01PT]quy]y!3!=!=dCW>X!Y  @DRlptRtT2L-M(Nz~l}  BF  mFPTUfPghPg19CCAFPgh

 
	
 LP

 
	
e is   C;
D r/   N)r2   r   r`   r  r=  r/   r-   r)   r  r    s^      =<  .-  '& >=!66 PO
 
r-   r  z"Network.responseReceivedEarlyHintsc                  B    \ rS rSr% SrS\S'   S\S'   \S
S j5       rSrg	)ResponseReceivedEarlyHintsi  a
  
**EXPERIMENTAL**

Fired when 103 Early Hints headers is received in addition to the common response.
Not every responseReceived event will have an responseReceivedEarlyHints fired.
Only one responseReceivedEarlyHints may be fired for eached responseReceived event.
rf   r  r   rE  c                h    U " [         R                  US   5      [        R                  US   5      S9$ )Nr  rE  )r  rE  )rf   r3   r   r0   s     r)   r3   $ResponseReceivedEarlyHints.from_json  s4     **4+<=%%d9o6
 	
r-   r/   N)r2   r   r`   r  r=  r/   r-   r)   r  r    s'     
 
r-   r  zNetwork.trustTokenOperationDonec                  j    \ rS rSr% SrS\S'   S\S'   S\S'   S	\S
'   S	\S'   S\S'   \SS j5       rSrg)TrustTokenOperationDonei  z
**EXPERIMENTAL**

Fired exactly once for each Trust Token operation. Depending on
the type of the operation and whether the operation succeeded or
failed, the event is fired before the corresponding request was sent
or after the response was received.
ra   rg  r  r  rf   r  r9  top_level_originissuer_originr  issued_token_countc                   U " [        US   5      [        R                  US   5      [        R                  US   5      SU;   a  [        US   5      OS SU;   a  [        US   5      OS SU;   a  [	        US   5      S9$ S S9$ )Nrg  r  r  topLevelOriginissuerOriginissuedTokenCount)rg  r  r  r  r  r  )ra   r  r3   rf   r  r0   s     r)   r3   !TrustTokenOperationDone.from_json  s    tH~&)33DLA **4+<=<LPT<TS&6!78Z^7E7M#d>23SW@RVZ@Zs4(:#;<
 	
 ae
 	
r-   r/   N)r2   r   r`   r  r=  r/   r-   r)   r  r    s>     K""**'',,
 
r-   r  zNetwork.policyUpdatedc                  ,    \ rS rSrSr\SS j5       rSrg)PolicyUpdatedi  z@
**EXPERIMENTAL**

Fired once security policy has been updated.
c                    U " 5       $ r$   r/   r0   s     r)   r3   PolicyUpdated.from_json  s     
 	
r-   r/   N)r2   r   r`   r  )r6   r7   r8   r9   r:   rL   r3   rM   r/   r-   r)   r  r    s     
 
r-   r  z,Network.subresourceWebBundleMetadataReceivedc                  B    \ rS rSr% SrS\S'   S\S'   \S
S j5       rSrg	)$SubresourceWebBundleMetadataReceivedi   z
**EXPERIMENTAL**

Fired once when parsing the .wbn file has succeeded.
The event contains the information about the web bundle contents.
rf   r  r  r  c           	         U " [         R                  US   5      US    Vs/ s H  n[        U5      PM     snS9$ s  snf )Nr  r  )r  r  rf   r3   ra   rc  s      r)   r3   .SubresourceWebBundleMetadataReceived.from_json.  s?     **4+<="&v,/,Q#a&,/
 	
/s   ;
r/   N)r2   r   r`   r  r=  r/   r-   r)   r  r     s'     

 
r-   r  z)Network.subresourceWebBundleMetadataErrorc                  B    \ rS rSr% SrS\S'   S\S'   \S
S j5       rSrg	)!SubresourceWebBundleMetadataErrori6  zE
**EXPERIMENTAL**

Fired once when parsing the .wbn file has failed.
rf   r  ra   r  c                T    U " [         R                  US   5      [        US   5      S9$ )Nr  r  )r  r  r  r0   s     r)   r3   +SubresourceWebBundleMetadataError.from_jsonC  s/     **4+<=d>23
 	
r-   r/   N)r2   r   r`   r  r=  r/   r-   r)   r  r  6  s'     
 
r-   r  z/Network.subresourceWebBundleInnerResponseParsedc                  L    \ rS rSr% SrS\S'   S\S'   S\S'   \SS	 j5       rS
rg)'SubresourceWebBundleInnerResponseParsediK  z
**EXPERIMENTAL**

Fired when handling requests for resources within a .wbn file.
Note: this will only be fired for resources that are requested by the webpage.
rf   inner_request_idra   inner_request_urlr  bundle_request_idc                    U " [         R                  US   5      [        US   5      SU;   a  [         R                  US   5      S9$ S S9$ )NinnerRequestIdinnerRequestURLbundleRequestId)r  r  r   r  r0   s     r)   r3   1SubresourceWebBundleInnerResponseParsed.from_json]  s^    &006F1GH!$'8"9:N_cgNgi11$7H2IJ
 	
 nr
 	
r-   r/   N)r2   r   r`   r  r=  r/   r-   r)   r  r  K  s/       21
 
r-   r  z.Network.subresourceWebBundleInnerResponseErrorc                  V    \ rS rSr% SrS\S'   S\S'   S\S'   S\S	'   \SS
 j5       rSrg)&SubresourceWebBundleInnerResponseErrorif  zO
**EXPERIMENTAL**

Fired when request for resources within a .wbn file failed.
rf   r  ra   r  r  r  r   c           	         U " [         R                  US   5      [        US   5      [        US   5      SU;   a  [         R                  US   5      S9$ S S9$ )Nr  r  r  r  )r  r  r  r   r  r0   s     r)   r3   0SubresourceWebBundleInnerResponseError.from_jsony  sk    &006F1GH!$'8"9:d>23N_cgNgi11$7H2IJ	
 	
 nr	
 	
r-   r/   N)r2   r   r`   r  r=  r/   r-   r)   r  r  f  s5       21
 
r-   r  zNetwork.reportingApiReportAddedc                  8    \ rS rSr% SrS\S'   \SS j5       rSrg)	ReportingApiReportAddedi  zt
**EXPERIMENTAL**

Is sent whenever a new report is added.
And after 'enableReportingApi' for all existing reports.
rw  reportc                :    U " [         R                  US   5      S9$ Nr  )r  rw  r3   r0   s     r)   r3   !ReportingApiReportAdded.from_json  !    %//X?
 	
r-   r/   N)r2   r   r`   r  r=  r/   r-   r)   r  r    s!     
 
r-   r  z!Network.reportingApiReportUpdatedc                  8    \ rS rSr% SrS\S'   \SS j5       rSrg)	ReportingApiReportUpdatedi  
**EXPERIMENTAL**


rw  r  c                :    U " [         R                  US   5      S9$ r  r  r0   s     r)   r3   #ReportingApiReportUpdated.from_json  r  r-   r/   N)r2   r   r`   r  r=  r/   r-   r)   r  r    s!    
 
 
r-   r  z-Network.reportingApiEndpointsChangedForOriginc                  B    \ rS rSr% SrS\S'   S\S'   \S
S j5       rSrg	)%ReportingApiEndpointsChangedForOrigini  r  ra   rh  z!typing.List[ReportingApiEndpoint]	endpointsc           	         U " [        US   5      US    Vs/ s H  n[        R                  U5      PM     snS9$ s  snf )Nrh  r  )rh  r  )ra   r  r3   rc  s      r)   r3   /ReportingApiEndpointsChangedForOrigin.from_json  sC    tH~&BF{BSTBSQ+55a8BST
 	
Ts   ;
r/   N)r2   r   r`   r  r=  r/   r-   r)   r  r    s&     K00
 
r-   r  )r  ztyping.List[ContentEncoding]r`   0typing.Generator[T_JSON_DICT, T_JSON_DICT, None])r`   r  )r`   0typing.Generator[T_JSON_DICT, T_JSON_DICT, bool])NNNNNNN)r  ro   r  r]  r  r9  rC  r9  rD  r9  rI  r9  rE  rj  r  z&typing.Optional[AuthChallengeResponse]r`   r  )NNNN)r  ra   rC  r9  r  r9  r  r9  r  r  r`   r  )r  r`  r  r   r  r   r  r   r  ztyping.Optional[ConnectionType]r  r  r  r  r  rJ  r`   r  )NNN)r  r  r  r  r  r  r`   r  )r`   ?typing.Generator[T_JSON_DICT, T_JSON_DICT, typing.List[Cookie]])rh  ra   r`   z<typing.Generator[T_JSON_DICT, T_JSON_DICT, typing.List[str]]r$   )r  r"  r`   r  )r  rf   r`   Ctyping.Generator[T_JSON_DICT, T_JSON_DICT, typing.Tuple[str, bool]])r  rf   r`   z/typing.Generator[T_JSON_DICT, T_JSON_DICT, str])r  ro   r`   r  )r  ro   r`   z;typing.Generator[T_JSON_DICT, T_JSON_DICT, io.StreamHandle])r  rf   r`   r  )NN)
r  rf   r  ra   r  rJ  r  rJ  r`   zMtyping.Generator[T_JSON_DICT, T_JSON_DICT, typing.List[debugger.SearchMatch]])r  r  r`   r  )r  r`  r`   r  )r  r`  r`   r  )NNNNNNNNNNNN)r  ra   r&   ra   rC  r9  r  r9  r  r9  r  rJ  r  rJ  r  r  r  rv  r  r^  r  rJ  r  r_  r  r  r  r  r`   r  )r  ztyping.List[CookieParam]r`   r  )rE  r   r`   r  )r  r`  r`   r  )r  ztyping.List[RequestPattern]r`   r  )
r%  ra   r&  r9  r#  r9  r'  z,typing.Optional[emulation.UserAgentMetadata]r`   r  )r.  ru  r`   zCtyping.Generator[T_JSON_DICT, T_JSON_DICT, SecurityIsolationStatus])r  r`  r`   r  )r.  ru  rC  ra   r3  r  r`   zItyping.Generator[T_JSON_DICT, T_JSON_DICT, LoadNetworkResourcePageResult])
__future__r   utilr   r   dataclassesr   enumtyping r   r	   r
   r   r   r   Enumr   ra   rO   rf   ro   rz   r   r   r   r   r   r   r   r   r   r   r.  r8  rB  rf  rz  r  r  r  r	  r  rb  r  r5  rK  rU  ra  r  r  r  r  r  r  r  r  r"  r,  rD  rO  rW  r]  re  rn  rv  r  r  r  r  r  r  r  r  r  r  r  r  r%  r6  r@  rF  rO  rY  ra  ro  rw  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r   r	  r  r  r  r  r  r  r  r  r(  r+  r/  r1  r5  r7  r?  rH  rS  rW  rj  rn  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r/   r-   r)   <module>r'     s_   # * !        499 >9s 9: :?S ?$)) 6?U ?>E >8d 8TYY ,TYY "TYY " $ w
 w
 w
ttyy $ 
 
 
& W
 W
 W
t 4
 4
 4
n [
 [
 [
|		  DII 6,		 ,^ 
 
 
&$)) " 
 
 
B
dii 
TYY *		 " 
 
 
> f
 f
 f
R 
 
 
& ,
 ,
 ,
^ 
 
 
>  
  
  
F 0
 0
 0
f 
 
 
4 `
 `
 `
F TYY  F$)) :DII . 
 
 
B 
 
 
< 
 
 
@ `
 `
 `
F  
  
  
F  
  
  
F		   
 
 
B <
 <
 <
~ %
 %
 %
Ptyy & 
 
 
> "
 "
 "
Jdii "$)) TYY  
 
 
$ 
 
 
.499 " 
 
 
:
TYY 
 
 
 
:	$)) 	 
 
 
. 
 
 
4499 "	9s 	9 5
 5
 5
p 
 
 
* +
 +
 +
\ 
 
 
./	7&	
 
 
  6:-1$('+*.,0JN0'020 +0 "	0
 %0 (0 *0 "H0 
80j %)'+%)=A! % #	
 ; 
8B <@.24837''' #' !	'
 9' ,' 2' 1' 
8'V 7;9=373"6 1 
8	4:00	C0, 37:/:	F:*	J2!!	6!&'	J65'5	B50	70 15*.	GGG .G (	G
 
UG@	7&	7"	7( %)'+%)(,+/593748,0=A,0=AC!C!C! "C! %	C!
 #C! &C! )C! 3C! 1C! 2C! *C! ;C! *C! ;C! 
8C!L)	7"	7"	7&-	7, 15)-LP	- ' J	
 
8:%%	6%. 37=/=	J=,	7* 37.2E/EE ,E 
Q	E8 #$

 
  %
4 12

 
  3
4 $%

 
  &
@ &'

 
  (
( )*
7
 7
  +7
t -.

 
  /
 ()
.
 .
  *.
b ./

 
  0
, -.

 
  /
& '(

 
  )
B &'

 
  (
" '(

 
  )
( *+

 
  ,
( -.

 
  /
( )*

 
  +
( 9:

 
  ;
( 89

 
  :
. *+

 
  ,
. 89

 
  :
" )*

 
  +
" 12
 
  
  3 
F 01
/
 /
  2/
d 12

 
  3
* ./
 
  
  0 
F $%

 
  &
 ;<

 
  =
( 89

 
  :
& >?

 
  @
2 =>

 
  ?
6 ./

 
  0
  01

 
  2
 <=

 
  >
r-   