
    i                    h   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
5      5       r\ " S S5      5       r\ " S S5      5       r\ " S S5      5       r\ " S S5      5       r " S S\R$                  5      r\ " S S5      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\ " S# S$5      5       r " S% S&\R$                  5      r " S' S(\R$                  5      r\ " S) S*5      5       r\ " S+ S,5      5       r " S- S.\ 5      r!\ " S/ S05      5       r" " S1 S2\R$                  5      r#SdS3 jr$SeS4 jr%SeS5 jr&SeS6 jr'    SfS7 jr( Sg   ShS8 jjr)    SiS9 jr* Sg   SjS: jjr+    SkS; jr,          Sl                             SmS< jjr-    SnS= jr.SeS> jr/    SoS? jr0SeS@ jr1    SpSA jr2    SqSB jr3 Sg     SrSC jjr4  Ss     StSD jjr5    SuSE jr6 Sg   SvSF jjr7       Sw               SxSG jjr8    SySH jr9 Sg       SzSI jjr:      S{SJ jr; Sg       S|SK jjr<      S}SL jr= Sg       S~SM jjr>      SSN jr?SeSO jr@    SSP jrA    SSQ jrB    SSR jrC Sg     SSS jjrD   S         SST jjrE Sg   SSU jjrF    SSV jrG      SSW jrH    SSX jrI Sg   SSY jjrJ    SSZ jrK   S         SS[ jjrL    SfS\ jrM    SS] jrNSS^ jrO      S                     SS_ jjrP    SS` jrQ\" Sa5      \ " Sb Sc5      5       5       rRg)    )annotations   )event_classT_JSON_DICT)	dataclassN)dom)network)pagec                      \ 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\S
'   SrS\S'   S r\S 5       rSrg)SafeAreaInsets   Ntyping.Optional[int]toptop_maxleftleft_maxbottom
bottom_maxright	right_maxc                   [        5       n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                  US'   U$ )	Nr   topMaxr   leftMaxr   	bottomMaxr   rightMax)	dictr   r   r   r   r   r   r   r   selfjsons     ^C:\des-py\RoboSAPF\venv\Lib\site-packages\selenium/webdriver/common/devtools/v141/emulation.pyto_jsonSafeAreaInsets.to_json+   s    v88((DK<<#!\\DN99 99DL==$"mmDO;;"![[DN??& $D::! JJDM>>%#~~D    c                `   U " 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  [        US   5      OS 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   r   r   r   r   r   r   r   intclsr   s     r    	from_jsonSafeAreaInsets.from_json?   s    $)TMDK t+3t+;CX'&,nT&\"$-6$->Si)D*2d*:3tH~&1<1Ds4,-$(/4#d7m$T/9T/Ac$z*+	
 		
 HL	
 		
r#    )__name__
__module____qualname____firstlineno__r   __annotations__r   r   r   r   r   r   r   r!   classmethodr)   __static_attributes__r+   r#   r    r   r      s     !%C	$ %)G!( "&D
% &*H") $(F ' (,J$+ #'E& '+I#*( 

 

r#   r   c                  D    \ rS rSr% SrS\S'   S\S'   S r\S 5       rS	r	g
)ScreenOrientationM   z
Screen orientation.
strtype_r&   anglec                V    [        5       nU R                  US'   U R                  US'   U$ )Ntyper8   )r   r7   r8   r   s     r    r!   ScreenOrientation.to_jsonX   s(    vzzV

Wr#   c                @    U " [        US   5      [        US   5      S9$ )Nr:   r8   )r7   r8   r6   r&   r'   s     r    r)   ScreenOrientation.from_json^   s'    d6l#d7m$
 	
r#   r+   N
r,   r-   r.   r/   __doc__r0   r!   r1   r)   r2   r+   r#   r    r4   r4   M   s.     J J 
 
r#   r4   c                  J    \ rS rSr% S\S'   S\S'   S\S'   S r\S 5       rS	rg
)DisplayFeaturef   r6   orientationr&   offsetmask_lengthc                t    [        5       nU R                  US'   U R                  US'   U R                  US'   U$ )NrD   rE   
maskLength)r   rD   rE   rF   r   s     r    r!   DisplayFeature.to_jsont   s;    v"..]X!--\r#   c                Z    U " [        US   5      [        US   5      [        US   5      S9$ )NrD   rE   rH   )rD   rE   rF   r=   r'   s     r    r)   DisplayFeature.from_json{   s5    D/0tH~&D./
 	
r#   r+   N	r,   r-   r.   r/   r0   r!   r1   r)   r2   r+   r#   r    rB   rB   f   s2      K
  
 
r#   rB   c                  6    \ rS rSr% S\S'   S r\S 5       rSrg)DevicePosture   r6   r7   c                8    [        5       nU R                  US'   U$ )Nr:   )r   r7   r   s     r    r!   DevicePosture.to_json   s    vzzVr#   c                &    U " [        US   5      S9$ )Nr:   )r7   r6   r'   s     r    r)   DevicePosture.from_json   s    d6l#
 	
r#   r+   NrL   r+   r#   r    rN   rN      s"     J
 
 
r#   rN   c                  @    \ rS rSr% S\S'   S\S'   S r\S 5       rSrg)	MediaFeature   r6   namevaluec                V    [        5       nU R                  US'   U R                  US'   U$ )NrX   rY   )r   rX   rY   r   s     r    r!   MediaFeature.to_json   s(    vyyV

Wr#   c                @    U " [        US   5      [        US   5      S9$ )NrX   rY   )rX   rY   rS   r'   s     r    r)   MediaFeature.from_json   s'    T&\"d7m$
 	
r#   r+   NrL   r+   r#   r    rV   rV      s%    
IJ 
 
r#   rV   c                  :    \ rS rSrSrSrSrSrS r\	S 5       r
Srg	)
VirtualTimePolicy   a+  
advance: If the scheduler runs out of immediate work, the virtual time base may fast forward to
allow the next delayed task (if any) to run; pause: The virtual time base may not advance;
pauseIfNetworkFetchesPending: The virtual time base may not advance if there are any pending
resource fetches.
advancepausepauseIfNetworkFetchesPendingc                    U R                   $ NrY   r   s    r    r!   VirtualTimePolicy.to_json       zzr#   c                    U " U5      $ re   r+   r'   s     r    r)   VirtualTimePolicy.from_json       4yr#   r+   N)r,   r-   r.   r/   r@   ADVANCEPAUSE PAUSE_IF_NETWORK_FETCHES_PENDINGr!   r1   r)   r2   r+   r#   r    r_   r_      s2     GE'E$  r#   r_   c                  D    \ rS rSr% SrS\S'   S\S'   S r\S 5       rSr	g	)
UserAgentBrandVersion   z`
Used to specify User Agent Client Hints to emulate. See https://wicg.github.io/ua-client-hints
r6   brandversionc                V    [        5       nU R                  US'   U R                  US'   U$ )Nrs   rt   )r   rs   rt   r   s     r    r!   UserAgentBrandVersion.to_json   s(    v

W,,Yr#   c                @    U " [        US   5      [        US   5      S9$ )Nrs   rt   )rs   rt   rS   r'   s     r    r)   UserAgentBrandVersion.from_json   s'    d7m$Y(
 	
r#   r+   Nr?   r+   r#   r    rq   rq      s,     JL 
 
r#   rq   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 5       rSrg
)UserAgentMetadata   z
Used to specify User Agent Client Hints to emulate. See https://wicg.github.io/ua-client-hints
Missing optional values will be filled in by the target with what it would normally use.
r6   platformplatform_versionarchitecturemodelboolmobileNz3typing.Optional[typing.List[UserAgentBrandVersion]]brandsfull_version_listtyping.Optional[str]full_versionbitnesstyping.Optional[bool]wow64z!typing.Optional[typing.List[str]]form_factorsc                   [        5       n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                   Vs/ s H  o"R                  5       PM     sn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                  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 s  snf s  snf )Nr|   platformVersionr~   r   r   r   fullVersionListfullVersionr   r   formFactors)r   r|   r}   r~   r   r   r   r!   r   r   r   r   r   )r   r   is      r    r!   UserAgentMetadata.to_json   s9   v==Z"&"7"7#00^

WX;;"37;;?;aiik;?DN!!-<@<R<R&S<Rqyy{<R&SD"#("&"3"3D<<#"llDO::! JJDM(.2.?.?"@.?1.?"@D @&S #As   1E+E9Ec                :   U " [        US   5      [        US   5      [        US   5      [        US   5      [        US   5      SU;   a)  US    Vs/ s H  n[        R                  U5      PM     snOS SU;   a)  US    Vs/ s H  n[        R                  U5      PM     sn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    Vs/ s H  n[        U5      PM     snS9$ S S9$ s  snf 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   )r6   r   rq   r)   )r(   r   r   s      r    r)   UserAgentMetadata.from_json  s=   j)* &7!89T.12d7m$X'S[_cScXO1)33A6Oimgx  }A  hA4PaKbcKba4>>qAKbc  GK5Bd5JT-01PT,5,=CY(4)0D$tG}%dBOSWBW$}*=>*=Q#a&*=>
 	
 ^b
 	
 Pc ?s   DD0Dr+   )r,   r-   r.   r/   r@   r0   r   r   r   r   r   r   r!   r1   r)   r2   r+   r#   r    rz   rz      s     MJL CGF?F NRJQ)-L&-$(G!(#'E ' 7;L3:* 
 
r#   rz   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)
SensorTypei  zn
Used to specify sensor types to emulate.
See https://w3c.github.io/sensors/#automation for more information.
zabsolute-orientationaccelerometerzambient-lightgravity	gyroscopezlinear-accelerationmagnetometerzrelative-orientationc                    U R                   $ re   rf   rg   s    r    r!   SensorType.to_json'  ri   r#   c                    U " U5      $ re   r+   r'   s     r    r)   SensorType.from_json*  rl   r#   r+   N)r,   r-   r.   r/   r@   ABSOLUTE_ORIENTATIONACCELEROMETERAMBIENT_LIGHTGRAVITY	GYROSCOPELINEAR_ACCELERATIONMAGNETOMETERRELATIVE_ORIENTATIONr!   r1   r)   r2   r+   r#   r    r   r     sM     2#M#MGI/!L1  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)SensorMetadatai/  Nr   	availabletyping.Optional[float]minimum_frequencymaximum_frequencyc                    [        5       nU R                  b  U R                  US'   U R                  b  U R                  US'   U R                  b  U R                  US'   U$ )Nr   minimumFrequencymaximumFrequency)r   r   r   r   r   s     r    r!   SensorMetadata.to_json7  s`    v>>% $D!!-'+'='=D#$!!-'+'='=D#$r#   c                    U " 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$ )Nr   r   r   )r   r   r   )r   floatr'   s     r    r)   SensorMetadata.from_jsonA  se    1<1Dd4,-$ASW[A[eD);$<=aeASW[A[eD);$<=
 	
 bf
 	
r#   r+   )r,   r-   r.   r/   r   r0   r   r   r!   r1   r)   r2   r+   r#   r    r   r   /  s>    '+I$+04-404-4 
 
r#   r   c                  6    \ rS rSr% S\S'   S r\S 5       rSrg)SensorReadingSingleiJ  r   rY   c                8    [        5       nU R                  US'   U$ )NrY   )r   rY   r   s     r    r!   SensorReadingSingle.to_jsonN  s    v

Wr#   c                &    U " [        US   5      S9$ )NrY   rf   r   r'   s     r    r)   SensorReadingSingle.from_jsonS  s    W&
 	
r#   r+   NrL   r+   r#   r    r   r   J  s     L
 
 
r#   r   c                  J    \ rS rSr% S\S'   S\S'   S\S'   S r\S 5       rSrg	)
SensorReadingXYZiZ  r   xyzc                t    [        5       nU R                  US'   U R                  US'   U R                  US'   U$ )Nr   r   r   )r   r   r   r   r   s     r    r!   SensorReadingXYZ.to_jsonb  s5    vFFS	FFS	FFS	r#   c                Z    U " [        US   5      [        US   5      [        US   5      S9$ )Nr   r   r   )r   r   r   r   r'   s     r    r)   SensorReadingXYZ.from_jsoni  s3    DIDIDI
 	
r#   r+   NrL   r+   r#   r    r   r   Z  s*    HHH 
 
r#   r   c                  T    \ rS rSr% S\S'   S\S'   S\S'   S\S'   S r\S 5       rS	rg
)SensorReadingQuaternionir  r   r   r   r   wc                    [        5       nU R                  US'   U R                  US'   U R                  US'   U R                  US'   U$ )Nr   r   r   r   )r   r   r   r   r   r   s     r    r!   SensorReadingQuaternion.to_json|  sB    vFFS	FFS	FFS	FFS	r#   c           	     t    U " [        US   5      [        US   5      [        US   5      [        US   5      S9$ )Nr   r   r   r   )r   r   r   r   r   r'   s     r    r)   !SensorReadingQuaternion.from_json  s?    DIDIDIDI	
 	
r#   r+   NrL   r+   r#   r    r   r   r  s/    HHHH 
 
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)SensorReadingi  Nz$typing.Optional[SensorReadingSingle]singlez!typing.Optional[SensorReadingXYZ]xyzz(typing.Optional[SensorReadingQuaternion]
quaternionc                   [        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                  R                  5       US'   U$ )Nr   r   r   )r   r   r!   r   r   r   s     r    r!   SensorReading.to_json  so    v;;"![[002DN88((**,DK??&!%!8!8!:Dr#   c                    U " 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      S9$ S S9$ )Nr   r   r   )r   r   r   )r   r)   r   r   r'   s     r    r)   SensorReading.from_json  su    DLPTDT&00h@Z^;@D= **4;7dP\`dPd.88l9KL
 	
 ko
 	
r#   r+   )r,   r-   r.   r/   r   r0   r   r   r!   r1   r)   r2   r+   r#   r    r   r     s<    37F07-1C	*1;?J8? 
 
r#   r   c                  .    \ rS rSrSrS r\S 5       rSrg)PressureSourcei  cpuc                    U R                   $ re   rf   rg   s    r    r!   PressureSource.to_json  ri   r#   c                    U " U5      $ re   r+   r'   s     r    r)   PressureSource.from_json  rl   r#   r+   N)	r,   r-   r.   r/   CPUr!   r1   r)   r2   r+   r#   r    r   r     s     
C  r#   r   c                  :    \ rS rSrSrSrSrSrS r\	S 5       r
Srg	)
PressureStatei  nominalfairseriouscriticalc                    U R                   $ re   rf   rg   s    r    r!   PressureState.to_json  ri   r#   c                    U " U5      $ re   r+   r'   s     r    r)   PressureState.from_json  rl   r#   r+   N)r,   r-   r.   r/   NOMINALFAIRSERIOUSCRITICALr!   r1   r)   r2   r+   r#   r    r   r     s/    GDGH  r#   r   c                  :    \ rS rSr% SrS\S'   S r\S 5       rSr	g)PressureMetadatai  Nr   r   c                R    [        5       nU R                  b  U R                  US'   U$ )Nr   )r   r   r   s     r    r!   PressureMetadata.to_json  s&    v>>% $Dr#   c                :    U " SU;   a  [        US   5      S9$ S S9$ )Nr   )r   r   r'   s     r    r)   PressureMetadata.from_json  s0    1<1Dd4,-
 	
JN
 	
r#   r+   )
r,   r-   r.   r/   r   r0   r!   r1   r)   r2   r+   r#   r    r   r     s&    '+I$+ 
 
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)WorkAreaInsetsi  Nr   r   r   r   r   c                    [        5       n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$ )Nr   r   r   r   )r   r   r   r   r   r   s     r    r!   WorkAreaInsets.to_json  sj    v88((DK99 99DL;;"![[DN::! JJDMr#   c           	         U " 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      S9$ S S9$ )Nr   r   r   r   )r   r   r   r   r%   r'   s     r    r)   WorkAreaInsets.from_json  sn    $)TMDK t&,nT&\"$*2d*:3tH~&(/4#d7m$	
 	
 >B	
 	
r#   r+   )r,   r-   r.   r/   r   r0   r   r   r   r!   r1   r)   r2   r+   r#   r    r   r     sO     !%C	$ "&D
% $(F ' #'E&
 
 
r#   r   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	$ )ScreenIdi  c                    U $ re   r+   rg   s    r    r!   ScreenId.to_json  s    r#   c                    U " U5      $ re   r+   r'   s     r    r)   ScreenId.from_json  rl   r#   c                >   > SR                  [        TU ]	  5       5      $ )NzScreenId({}))formatsuper__repr__)r   	__class__s    r    r   ScreenId.__repr__  s    $$UW%5%788r#   r+   )returnr6   )r   r6   r  r   )
r,   r-   r.   r/   r!   r1   r)   r   r2   __classcell__)r   s   @r    r   r     s&      9 9r#   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 r\S 5       rSr	g)
ScreenInfoi  z
Screen information similar to the one returned by window.getScreenDetails() method,
see https://w3c.github.io/window-management/#screendetailed.
r&   r   r   widthheight
avail_left	avail_topavail_widthavail_heightr   device_pixel_ratior4   rD   color_depthr   is_extendedis_internal
is_primaryr6   labelr   id_c                2   [        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                  US'   U R                  US'   U R                  US'   U R                   US'   U R"                  R                  5       US'   U$ )Nr   r   r  r  	availLeftavailTop
availWidthavailHeightdevicePixelRatiorD   
colorDepth
isExtended
isInternal	isPrimaryr  id)r   r   r   r  r  r  r  r	  r
  r  rD   r!   r  r  r  r  r  r  r   s     r    r!   ScreenInfo.to_json9  s	   vyyVhhU

WX OO[>>Z!--\"//]#'#:#: "..668]!--\!--\!--\ OO[

WXX%%'T
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[        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                  US   5      _6$ )Nr   r   r  r  r  r  r  r  r	  r  r
  r  r  r  rD   r  r  r  r  r  r  r  r  r  r  r  r+   )r&   r   r4   r)   r   r6   r   r'   s     r    r)   ScreenInfo.from_jsonM  sR    
T&\"
DK 
 d7m$
 tH~&	

 4,-
 $z*+
 D./
 T-01
  %T*<%=>
 *33D4GH
 D./
 T,/0
 T,/0
 D-.
 d7m$
  ""4:.!
 	
r#   r+   Nr?   r+   r#   r    r  r    s    
 I 
H J K O N    #"     J 
M( 
 
r#   r  c                  6    \ rS rSrSrSrSrS r\S 5       r	Sr
g)	DisabledImageTypeic  z+
Enum of image types that can be disabled.
avifwebpc                    U R                   $ re   rf   rg   s    r    r!   DisabledImageType.to_jsonj  ri   r#   c                    U " U5      $ re   r+   r'   s     r    r)   DisabledImageType.from_jsonm  rl   r#   r+   N)r,   r-   r.   r/   r@   AVIFWEBPr!   r1   r)   r2   r+   r#   r    r!  r!  c  s,     DD  r#   r!  c               #  6   #    SS0n U v n[        US   5      $ 7f)zR
Tells whether emulation is supported.

:returns: True if emulation is supported.
methodzEmulation.canEmulateresultr   cmd_dictr   s     r    can_emulater/  r  s,      	(H >DXs   c               #     #    SS0n U v ng7f)z'
Clears the overridden device metrics.
r+  z$Emulation.clearDeviceMetricsOverrideNr+   r-  s     r    clear_device_metrics_overrider1    s     
 	8H >D   
c               #     #    SS0n U v ng7f)z7
Clears the overridden Geolocation Position and Error.
r+  z"Emulation.clearGeolocationOverrideNr+   r-  s     r    clear_geolocation_overrider4    s     
 	6H >Dr2  c               #     #    SS0n U v ng7f)zO
Requests that page scale factor is reset to initial values.

**EXPERIMENTAL**
r+  zEmulation.resetPageScaleFactorNr+   r-  s     r    reset_page_scale_factorr6    s      	2H >Dr2  c              #  :   #    [        5       nXS'   SUS.nUv ng7f)z
Enables or disables simulating a focused and active page.

**EXPERIMENTAL**

:param enabled: Whether to enable to disable focus emulation.
enabledz"Emulation.setFocusEmulationEnabledr+  paramsNr   r8  r:  r.  r   s       r    set_focus_emulation_enabledr=    s,      &F96H >D   c              #  @   #    [        5       nU b  XS'   SUS.nUv ng7f)z
Automatically render all web contents using a dark theme.

**EXPERIMENTAL**

:param enabled: *(Optional)* Whether to enable or disable automatic dark mode. If not specified, any existing override will be cleared.
Nr8  z!Emulation.setAutoDarkModeOverrider9  r;  r<  s       r    set_auto_dark_mode_overrider@    s2      &F#y5H >D   c              #  :   #    [        5       nXS'   SUS.nUv ng7f)z
Enables CPU throttling to emulate slow CPUs.

:param rate: Throttling rate as a slowdown factor (1 is no throttle, 2 is 2x slowdown, etc).
ratezEmulation.setCPUThrottlingRater9  Nr;  )rC  r:  r.  r   s       r    set_cpu_throttling_raterD    s+      &F6N2H >Dr>  c              #  ^   #    [        5       nU b  U R                  5       US'   SUS.nUv ng7f)a   
Sets or clears an override of the default background color of the frame. This override is used
if the content does not specify one.

:param color: *(Optional)* RGBA of the default background color. If not specified, any existing override will be cleared.
Ncolorz+Emulation.setDefaultBackgroundColorOverrider9  r   r!   )rF  r:  r.  r   s       r    %set_default_background_color_overriderH    s9      &F--/w?H >Ds   +-c              #  X   #    [        5       nU R                  5       US'   SUS.nUv ng7f)z
Overrides the values for env(safe-area-inset-*) and env(safe-area-max-inset-*). Unset values will cause the
respective variables to be undefined, even if previously overridden.

**EXPERIMENTAL**

:param insets:
insetsz#Emulation.setSafeAreaInsetsOverrider9  NrG  )rJ  r:  r.  r   s       r    set_safe_area_insets_overriderK    s5      &F~~'F87H >D   (*c              #  V  #    [        5       nXS'   XS'   X.S'   X>S'   Ub  XNS'   Ub  X^S'   Ub  XnS'   Ub  X~S	'   Ub  XS
'   U	b  XS'   U
b  U
R                  5       US'   Ub  UR                  5       US'   Ub  UR                  5       US'   Ub  UR                  5       US'   SUS.nUv ng7f)a  
Overrides the values of device screen dimensions (window.screen.width, window.screen.height,
window.innerWidth, window.innerHeight, and "device-width"/"device-height"-related CSS media
query results).

:param width: Overriding width value in pixels (minimum 0, maximum 10000000). 0 disables the override.
:param height: Overriding height value in pixels (minimum 0, maximum 10000000). 0 disables the override.
:param device_scale_factor: Overriding device scale factor value. 0 disables the override.
:param mobile: Whether to emulate mobile device. This includes viewport meta tag, overlay scrollbars, text autosizing and more.
:param scale: **(EXPERIMENTAL)** *(Optional)* Scale to apply to resulting view image.
:param screen_width: **(EXPERIMENTAL)** *(Optional)* Overriding screen width value in pixels (minimum 0, maximum 10000000).
:param screen_height: **(EXPERIMENTAL)** *(Optional)* Overriding screen height value in pixels (minimum 0, maximum 10000000).
:param position_x: **(EXPERIMENTAL)** *(Optional)* Overriding view X position on screen in pixels (minimum 0, maximum 10000000).
:param position_y: **(EXPERIMENTAL)** *(Optional)* Overriding view Y position on screen in pixels (minimum 0, maximum 10000000).
:param dont_set_visible_size: **(EXPERIMENTAL)** *(Optional)* Do not set visible view size, rely upon explicit setVisibleSize call.
:param screen_orientation: *(Optional)* Screen orientation override.
:param viewport: **(EXPERIMENTAL)** *(Optional)* If set, the visible area of the page will be overridden to this viewport. This viewport change is not observed by the page, e.g. viewport-relative elements do not change positions.
:param display_feature: **(EXPERIMENTAL)** *(Optional)* If set, the display feature of a multi-segment screen. If not set, multi-segment support is turned-off. Deprecated, use Emulation.setDisplayFeaturesOverride.
:param device_posture: **(EXPERIMENTAL)** *(Optional)* If set, the posture of a foldable device. If not set the posture is set to continuous. Deprecated, use Emulation.setDevicePostureOverride.
r  r  deviceScaleFactorr   NscalescreenWidthscreenHeight	positionX	positionYdontSetVisibleSizescreenOrientationviewportdisplayFeaturedevicePosturez"Emulation.setDeviceMetricsOverrider9  rG  )r  r  device_scale_factorr   rO  screen_widthscreen_height
position_x
position_ydont_set_visible_sizescreen_orientationrV  display_featuredevice_posturer:  r.  r   s                    r    set_device_metrics_overriderb    s     H &F7O8"58w ,} !.~({({('<#$%&8&@&@&B"#%--/z"#2#:#:#< !"0"8"8":6H >Ds   B'B)c              #  X   #    [        5       nU R                  5       US'   SUS.nUv ng7f)z
Start reporting the given posture value to the Device Posture API.
This override can also be set in setDeviceMetricsOverride().

**EXPERIMENTAL**

:param posture:
posturez"Emulation.setDevicePostureOverrider9  NrG  )rd  r:  r.  r   s       r    set_device_posture_overridere  B  s5      &F)F96H >DrL  c               #     #    SS0n U v ng7f)z
Clears a device posture override set with either setDeviceMetricsOverride()
or setDevicePostureOverride() and starts using posture information from the
platform again.
Does nothing if no override is set.

**EXPERIMENTAL**
r+  z$Emulation.clearDevicePostureOverrideNr+   r-  s     r    clear_device_posture_overriderg  V  s      	8H >Dr2  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
Start using the given display features to pupulate the Viewport Segments API.
This override can also be set in setDeviceMetricsOverride().

**EXPERIMENTAL**

:param features:
featuresz$Emulation.setDisplayFeaturesOverrider9  NrG  )ri  r:  r   r.  r   s        r    set_display_features_overriderj  e  sF      &F/78x!))+x8F:8H >D 9   ?:?c               #     #    SS0n U v ng7f)z
Clears the display features override set with either setDeviceMetricsOverride()
or setDisplayFeaturesOverride() and starts using display features from the
platform again.
Does nothing if no override is set.

**EXPERIMENTAL**
r+  z&Emulation.clearDisplayFeaturesOverrideNr+   r-  s     r    clear_display_features_overriderm  y  s      	:H >Dr2  c              #  :   #    [        5       nXS'   SUS.nUv ng7f)zP


**EXPERIMENTAL**

:param hidden: Whether scrollbars should be always hidden.
hiddenzEmulation.setScrollbarsHiddenr9  Nr;  )ro  r:  r.  r   s       r    set_scrollbars_hiddenrp    s,      &F81H >Dr>  c              #  :   #    [        5       nXS'   SUS.nUv ng7f)zW


**EXPERIMENTAL**

:param disabled: Whether document.coookie API should be disabled.
disabledz#Emulation.setDocumentCookieDisabledr9  Nr;  )rr  r:  r.  r   s       r    set_document_cookie_disabledrs    s,      &F!:7H >Dr>  c              #  H   #    [        5       nXS'   Ub  XS'   SUS.nUv ng7f)z


**EXPERIMENTAL**

:param enabled: Whether touch emulation based on mouse input should be enabled.
:param configuration: *(Optional)* Touch/gesture events configuration. Default: current platform.
r8  Nconfigurationz$Emulation.setEmitTouchEventsForMouser9  r;  )r8  ru  r:  r.  r   s        r    set_emit_touch_events_for_mouserv    s:      &F9 "/8H >D    "c              #     #    [        5       nU b  XS'   Ub#  U Vs/ s H  o3R                  5       PM     snUS'   SUS.nUv ngs  snf 7f)z
Emulates the given media type or media feature for CSS media queries.

:param media: *(Optional)* Media type to emulate. Empty string disables the override.
:param features: *(Optional)* Media features to emulate.
Nmediari  zEmulation.setEmulatedMediar9  rG  )ry  ri  r:  r   r.  r   s         r    set_emulated_mediarz    sY      &Fw3;<8aiik8<z.H >D =s   A	AA	c              #  :   #    [        5       nXS'   SUS.nUv ng7f)z
Emulates the given vision deficiency.

:param type_: Vision deficiency to emulate. Order: best-effort emulations come first, followed by any physiologically accurate emulations for medically recognized color vision deficiencies.
r:   z%Emulation.setEmulatedVisionDeficiencyr9  Nr;  r7   r:  r.  r   s       r    set_emulated_vision_deficiencyr}    s+      &F6N9H >Dr>  c              #  @   #    [        5       nU b  XS'   SUS.nUv ng7f)z?
Emulates the given OS text scale.

:param scale: *(Optional)*
NrO  z Emulation.setEmulatedOSTextScaler9  r;  )rO  r:  r.  r   s       r    set_emulated_os_text_scaler    s1      &Fw4H >DrA  c              #     #    [        5       nU b  XS'   Ub  XS'   Ub  X'S'   Ub  X7S'   Ub  XGS'   Ub  XWS'   Ub  XgS'   S	US
.nUv n	g7f)a  
Overrides the Geolocation Position or Error. Omitting latitude, longitude or
accuracy emulates position unavailable.

:param latitude: *(Optional)* Mock latitude
:param longitude: *(Optional)* Mock longitude
:param accuracy: *(Optional)* Mock accuracy
:param altitude: *(Optional)* Mock altitude
:param altitude_accuracy: *(Optional)* Mock altitudeAccuracy
:param heading: *(Optional)* Mock heading
:param speed: *(Optional)* Mock speed
Nlatitude	longitudeaccuracyaltitudealtitudeAccuracyheadingspeedz Emulation.setGeolocationOverrider9  r;  )
r  r  r  r  altitude_accuracyr  r  r:  r.  r   s
             r    set_geolocation_overrider    s     * &F%z'{%z%z$%6!"#yw4H >Ds   AAc              #  r   #    [        5       nU R                  5       US'   SUS.nUv n[        US   5      $ 7f)z.


**EXPERIMENTAL**

:param type_:
:returns: 
r:   z(Emulation.getOverriddenSensorInformationr9  requestedSamplingFrequencyr   r!   r   r|  s       r    !get_overridden_sensor_informationr  )  sD      &F]]_F6N<H >D2344s   57c              #     #    [        5       nXS'   UR                  5       US'   Ub  UR                  5       US'   SUS.nUv ng7f)a  
Overrides a platform sensor of a given type. If ``enabled`` is true, calls to
Sensor.start() will use a virtual sensor as backend rather than fetching
data from a real hardware sensor. Otherwise, existing virtual
sensor-backend Sensor objects will fire an error event and new calls to
Sensor.start() will attempt to use a real sensor instead.

**EXPERIMENTAL**

:param enabled:
:param type_:
:param metadata: *(Optional)*
r8  r:   Nmetadataz"Emulation.setSensorOverrideEnabledr9  rG  )r8  r7   r  r:  r.  r   s         r    set_sensor_override_enabledr  >  sT     $ &F9]]_F6N%--/z6H >D   AAc              #  ~   #    [        5       nU R                  5       US'   UR                  5       US'   SUS.nUv ng7f)z
Updates the sensor readings reported by a sensor type previously overridden
by setSensorOverrideEnabled.

**EXPERIMENTAL**

:param type_:
:param reading:
r:   readingz#Emulation.setSensorOverrideReadingsr9  NrG  )r7   r  r:  r.  r   s        r    set_sensor_override_readingsr  \  sD      &F]]_F6N)F97H >D   ;=c              #     #    [        5       nXS'   UR                  5       US'   Ub  UR                  5       US'   SUS.nUv ng7f)a=  
Overrides a pressure source of a given type, as used by the Compute
Pressure API, so that updates to PressureObserver.observe() are provided
via setPressureStateOverride instead of being retrieved from
platform-provided telemetry data.

**EXPERIMENTAL**

:param enabled:
:param source:
:param metadata: *(Optional)*
r8  sourceNr  z*Emulation.setPressureSourceOverrideEnabledr9  rG  )r8  r  r  r:  r.  r   s         r    $set_pressure_source_override_enabledr  s  sV     " &F9~~'F8%--/z>H >Dr  c              #  ~   #    [        5       nU R                  5       US'   UR                  5       US'   SUS.nUv ng7f)a6  
TODO: OBSOLETE: To remove when setPressureDataOverride is merged.
Provides a given pressure state that will be processed and eventually be
delivered to PressureObserver users. ``source`` must have been previously
overridden by setPressureSourceOverrideEnabled.

**EXPERIMENTAL**

:param source:
:param state:
r  statez"Emulation.setPressureStateOverrider9  NrG  )r  r  r:  r.  r   s        r    set_pressure_state_overrider    sD      &F~~'F8mmoF7O6H >Dr  c              #     #    [        5       nU R                  5       US'   UR                  5       US'   Ub  X#S'   SUS.nUv ng7f)a&  
Provides a given pressure data set that will be processed and eventually be
delivered to PressureObserver users. ``source`` must have been previously
overridden by setPressureSourceOverrideEnabled.

**EXPERIMENTAL**

:param source:
:param state:
:param own_contribution_estimate: *(Optional)*
r  r  NownContributionEstimatez!Emulation.setPressureDataOverrider9  rG  )r  r  own_contribution_estimater:  r.  r   s         r    set_pressure_data_overrider    sS       &F~~'F8mmoF7O ,,E()5H >Dr  c              #  B   #    [        5       nXS'   XS'   SUS.nUv ng7f)zv
Overrides the Idle state.

:param is_user_active: Mock isUserActive
:param is_screen_unlocked: Mock isScreenUnlocked
isUserActiveisScreenUnlockedzEmulation.setIdleOverrider9  Nr;  )is_user_activeis_screen_unlockedr:  r.  r   s        r    set_idle_overrider    s5      &F+>!3-H >D   c               #     #    SS0n U v ng7f)z
Clears Idle state overrides.
r+  zEmulation.clearIdleOverrideNr+   r-  s     r    clear_idle_overrider    s     
 	/H >Dr2  c              #  :   #    [        5       nXS'   SUS.nUv ng7f)z
Overrides value returned by the javascript navigator object.

**EXPERIMENTAL**

:param platform: The platform navigator.platform should return.
r|   zEmulation.setNavigatorOverridesr9  Nr;  )r|   r:  r.  r   s       r    set_navigator_overridesr    s,      &F!:3H >Dr>  c              #  :   #    [        5       nXS'   SUS.nUv ng7f)ze
Sets a specified page scale factor.

**EXPERIMENTAL**

:param page_scale_factor: Page scale factor.
pageScaleFactorzEmulation.setPageScaleFactorr9  Nr;  )page_scale_factorr:  r.  r   s       r    set_page_scale_factorr    s-      &F 10H >Dr>  c              #  :   #    [        5       nXS'   SUS.nUv ng7f)zp
Switches script execution in the page.

:param value: Whether script execution should be disabled in the page.
rY   z$Emulation.setScriptExecutionDisabledr9  Nr;  )rY   r:  r.  r   s       r    set_script_execution_disabledr  	  s+      &F7O8H >Dr>  c              #  H   #    [        5       nXS'   Ub  XS'   SUS.nUv ng7f)z
Enables touch on platforms which do not support them.

:param enabled: Whether the touch event emulation should be enabled.
:param max_touch_points: *(Optional)* Maximum touch points supported. Defaults to one.
r8  NmaxTouchPointsz"Emulation.setTouchEmulationEnabledr9  r;  )r8  max_touch_pointsr:  r.  r   s        r    set_touch_emulation_enabledr    s;      &F9##3 6H >Drw  c              #     #    [        5       nU R                  5       US'   Ub  XS'   Ub  X$S'   Ub  UR                  5       US'   SUS.nUv n[        US   5      $ 7f)a  
Turns on virtual time for all frames (replacing real-time with a synthetic time source) and sets
the current virtual time policy.  Note this supersedes any previous time budget.

**EXPERIMENTAL**

:param policy:
:param budget: *(Optional)* If set, after this many virtual milliseconds have elapsed virtual time will be paused and a virtualTimeBudgetExpired event is sent.
:param max_virtual_time_task_starvation_count: *(Optional)* If set this specifies the maximum number of tasks that can be run before virtual is forced forwards to prevent deadlock.
:param initial_virtual_time: *(Optional)* If set, base::Time::Now will be overridden to initially return this value.
:returns: Absolute timestamp at which virtual time was first enabled (up time in milliseconds).
policybudget!maxVirtualTimeTaskStarvationCountinitialVirtualTimezEmulation.setVirtualTimePolicyr9  virtualTimeTicksBaser  )r  r  &max_virtual_time_task_starvation_countinitial_virtual_timer:  r.  r   s          r    set_virtual_time_policyr  /  s}     $ &F~~'F8!x-96\23'';'C'C'E#$2H >D,-..s   AAc              #  @   #    [        5       nU b  XS'   SUS.nUv ng7f)z
Overrides default host system locale with the specified one.

**EXPERIMENTAL**

:param locale: *(Optional)* ICU style C locale (e.g. "en_US"). If not specified or empty, disables the override and restores default host system locale.
NlocalezEmulation.setLocaleOverrider9  r;  )r  r:  r.  r   s       r    set_locale_overrider  Q  s2      &F!x/H >DrA  c              #  :   #    [        5       nXS'   SUS.nUv ng7f)a[  
Overrides default host system timezone with the specified one.

:param timezone_id: The timezone identifier. List of supported timezones: https://source.chromium.org/chromium/chromium/deps/icu.git/+/faee8bc70570192d82d2978a71e2a615788597d1:source/data/misc/metaZones.txt If empty, disables the override and restores default host system timezone.

timezoneIdzEmulation.setTimezoneOverrider9  Nr;  )timezone_idr:  r.  r   s       r    set_timezone_overrider  e  s,      &F&<1H >Dr>  c              #  B   #    [        5       nXS'   XS'   SUS.nUv ng7f)a   
Resizes the frame/viewport of the page. Note that this does not affect the frame's container
(e.g. browser window). Can be used to produce screenshots of the specified size. Not supported
on Android.

**EXPERIMENTAL**

:param width: Frame width (DIP).
:param height: Frame height (DIP).
r  r  zEmulation.setVisibleSizer9  Nr;  )r  r  r:  r.  r   s        r    set_visible_sizer  v  s3      &F7O8,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)zA


**EXPERIMENTAL**

:param image_types: Image types to disable.

imageTypeszEmulation.setDisabledImageTypesr9  NrG  )image_typesr:  r   r.  r   s        r    set_disabled_image_typesr    sF      &F1<=AIIK=F<3H >D >rk  c              #  @   #    [        5       nU b  XS'   SUS.nUv ng7f)z
Override the value of navigator.connection.saveData

**EXPERIMENTAL**

:param data_saver_enabled: *(Optional)* Override value. Omitting the parameter disables the override.
NdataSaverEnabledzEmulation.setDataSaverOverrider9  r;  )data_saver_enabledr:  r.  r   s       r    set_data_saver_overrider    s3      &F%%7!"2H >DrA  c              #  :   #    [        5       nXS'   SUS.nUv ng7f)zQ


**EXPERIMENTAL**

:param hardware_concurrency: Hardware concurrency to report
hardwareConcurrencyz(Emulation.setHardwareConcurrencyOverrider9  Nr;  )hardware_concurrencyr:  r.  r   s       r    !set_hardware_concurrency_overrider    s-      &F$8 !<H >Dr>  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)a  
Allows overriding user agent with the given string.
``userAgentMetadata`` must be set for Client Hint headers to be sent.

: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acceptLanguager|   userAgentMetadatazEmulation.setUserAgentOverrider9  rG  )
user_agentaccept_languager|   user_agent_metadatar:  r.  r   s          r    set_user_agent_overrider    sc      &F$;"#2 %z&&9&A&A&C"#2H >Ds   =?c              #  :   #    [        5       nXS'   SUS.nUv ng7f)zs
Allows overriding the automation flag.

**EXPERIMENTAL**

:param enabled: Whether the override should be enabled.
r8  zEmulation.setAutomationOverrider9  Nr;  r<  s       r    set_automation_overrider    s,      &F93H >Dr>  c              #  :   #    [        5       nXS'   SUS.nUv ng7f)aR  
Allows overriding the difference between the small and large viewport sizes, which determine the
value of the ``svh`` and ``lvh`` unit, respectively. Only supported for top-level frames.

**EXPERIMENTAL**

:param difference: This will cause an element of size 100svh to be ```difference``` pixels smaller than an element of size 100lvh.

differencez2Emulation.setSmallViewportHeightDifferenceOverrider9  Nr;  )r  r:  r.  r   s       r    -set_small_viewport_height_difference_overrider    s,      &F%<FH >Dr>  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)zF
Returns device's screen configuration.

**EXPERIMENTAL**

:returns: 
r+  zEmulation.getScreenInfosscreenInfos)r  r)   )r.  r   r   s      r    get_screen_infosr    sG      	,H >D-1--@A-@J  #-@AAAs   949c
              #     #    [        5       n
X
S'   XS'   X*S'   X:S'   Ub  UR                  5       U
S'   Ub  XZS'   Ub  XjS'   Ub  XzS'   Ub  XS	'   U	b  XS
'   SU
S.nUv n[        R                  US   5      $ 7f)a  
Add a new screen to the device. Only supported in headless mode.

**EXPERIMENTAL**

:param left: Offset of the left edge of the screen in pixels.
:param top: Offset of the top edge of the screen in pixels.
:param width: The width of the screen in pixels.
:param height: The height of the screen in pixels.
:param work_area_insets: *(Optional)* Specifies the screen's work area. Default is entire screen.
:param device_pixel_ratio: *(Optional)* Specifies the screen's device pixel ratio. Default is 1.
:param rotation: *(Optional)* Specifies the screen's rotation angle. Available values are 0, 90, 180 and 270. Default is 0.
:param color_depth: *(Optional)* Specifies the screen's color depth in bits. Default is 24.
:param label: *(Optional)* Specifies the descriptive label for the screen. Default is none.
:param is_internal: *(Optional)* Indicates whether the screen is internal to the device or external, attached to the device. Default is false.
:returns: 
r   r   r  r  workAreaInsetsr  rotationr  r  r  zEmulation.addScreenr9  
screenInfo)r   r!   r  r)   )r   r   r  r  work_area_insetsr  r  r  r  r  r:  r.  r   s                r    
add_screenr    s     : &F6N5M7O8##3#;#;#= %%7!"%z*|w*|'H >D\ 233s   A5A7c              #  X   #    [        5       nU R                  5       US'   SUS.nUv ng7f)zf
Remove screen from the device. Only supported in headless mode.

**EXPERIMENTAL**

:param screen_id:
screenIdzEmulation.removeScreenr9  NrG  )	screen_idr:  r.  r   s       r    remove_screenr  R  s7      &F"**,F:*H >DrL  z"Emulation.virtualTimeBudgetExpiredc                  ,    \ rS rSrSr\SS j5       rSrg)VirtualTimeBudgetExpiredie  zr
**EXPERIMENTAL**

Notification sent after the virtual time budget for the current VirtualTimePolicy has run out.
c                    U " 5       $ re   r+   r'   s     r    r)   "VirtualTimeBudgetExpired.from_jsono  s     
 	
r#   r+   N)r   r   r  r  )r,   r-   r.   r/   r@   r1   r)   r2   r+   r#   r    r  r  e  s     
 
r#   r  )r  z0typing.Generator[T_JSON_DICT, T_JSON_DICT, bool])r  0typing.Generator[T_JSON_DICT, T_JSON_DICT, None])r8  r   r  r  re   )r8  r   r  r  )rC  r   r  r  )rF  ztyping.Optional[dom.RGBA]r  r  )rJ  r   r  r  )
NNNNNNNNNN)r  r&   r  r&   rY  r   r   r   rO  r   rZ  r   r[  r   r\  r   r]  r   r^  r   r_  z"typing.Optional[ScreenOrientation]rV  ztyping.Optional[page.Viewport]r`  ztyping.Optional[DisplayFeature]ra  ztyping.Optional[DevicePosture]r  r  )rd  rN   r  r  )ri  ztyping.List[DisplayFeature]r  r  )ro  r   r  r  )rr  r   r  r  )r8  r   ru  r   r  r  )NN)ry  r   ri  z*typing.Optional[typing.List[MediaFeature]]r  r  )r7   r6   r  r  )rO  r   r  r  )NNNNNNN)r  r   r  r   r  r   r  r   r  r   r  r   r  r   r  r  )r7   r   r  1typing.Generator[T_JSON_DICT, T_JSON_DICT, float])r8  r   r7   r   r  ztyping.Optional[SensorMetadata]r  r  )r7   r   r  r   r  r  )r8  r   r  r   r  z!typing.Optional[PressureMetadata]r  r  )r  r   r  r   r  r  )r  r   r  r   r  r   r  r  )r  r   r  r   r  r  )r|   r6   r  r  )r  r   r  r  )rY   r   r  r  )r8  r   r  r   r  r  )NNN)
r  r_   r  r   r  r   r  z'typing.Optional[network.TimeSinceEpoch]r  r  )r  r   r  r  )r  r6   r  r  )r  r&   r  r&   r  r  )r  ztyping.List[DisabledImageType]r  r  )r  r   r  r  )r  r&   r  r  )
r  r6   r  r   r|   r   r  z"typing.Optional[UserAgentMetadata]r  r  )r  r&   r  r  )r  zCtyping.Generator[T_JSON_DICT, T_JSON_DICT, typing.List[ScreenInfo]])NNNNNN)r   r&   r   r&   r  r&   r  r&   r  ztyping.Optional[WorkAreaInsets]r  r   r  r   r  r   r  r   r  r   r  z6typing.Generator[T_JSON_DICT, T_JSON_DICT, ScreenInfo])r  r   r  r  )S
__future__r   utilr   r   dataclassesr   enumtyping r   r	   r
   r   r4   rB   rN   rV   Enumr_   rq   rz   r   r   r   r   r   r   r   r   r   r   r6   r   r  r!  r/  r1  r4  r6  r=  r@  rD  rH  rK  rb  re  rg  rj  rm  rp  rs  rv  rz  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    <module>r     s   # * !      8
 8
 8
v 
 
 
0 
 
 
: 
 
 
  
 
 
&		 & 
 
 
, B
 B
 B
J , 
 
 
4 
 
 
 
 
 
. 
 
 
6 
 
 
4TYY DII  
 
 
   
  
  
F	9s 	9 \
 \
 \
~		 
 		7( *.&	7(	7$ ,0(	7&	72 )--1.2+/+/7;AE37;?9=AAA #A 	A
 &A +A ,A )A )A  5A ?A 1A 9A 7A 
8AH	7(-	7(	7&	7* /3+ 
80 '+?C#< 
8,	7$ )-%	7& ,0,0+/+/48*.(,((()( )( )	(
 2( (( &( 
8(V55	850 59 2 
8	< 
84 7; 4 
8	: 
88 =A $: 
8	8  
8(	7& 	7&	7& 26. 
8. *.GKHL	/!/&/ 1E/ F	/
 
9/F (,$	7(	7" 
803	7( 591	7(!	7* 15)-BF	- ' @	
 
8<	7&	7(B( =A59)-,0&*-1343434 34 	34
 :34 334 '34 *34 $34 +34 
>34l	7& 12

 
  3
r#   