Ë
    bQbjæW  ã                  óH  — d dl mZ ddlmZmZ d dlmZ d dlZd dlZddl	m
Z
 ddl	mZ ddl	mZ  G d	„ d
e«      Ze G d„ d«      «       Z G d„ dej                   «      Z G d„ dej                   «      Z G d„ dej                   «      Ze G d„ d«      «       Ze G d„ d«      «       Z G d„ de«      Z G d„ dej                   «      Z G d„ dej                   «      Z G d„ dej                   «      Ze G d„ d «      «       Zd5d!„Zd5d"„Z ed#«      e G d$„ d%«      «       «       Z ed&«      e G d'„ d(«      «       «       Z ed)«      e G d*„ d+«      «       «       Z ed,«      e G d-„ d.«      «       «       Z  ed/«      e G d0„ d1«      «       «       Z! ed2«      e G d3„ d4«      «       «       Z"y)6é    )Úannotationsé   )Úevent_classÚT_JSON_DICT)Ú	dataclassN)Údom)Únetwork)Úpagec                  ó<   ‡ — e Zd ZdZdd„Zedd„«       Zˆ fd„Zˆ xZS )Ú	RuleSetIdz
    Unique id
    c                ó   — | S ©N© ©Úselfs    úb/var/www/html/venv/lib/python3.12/site-packages/selenium/webdriver/common/devtools/v148/preload.pyÚto_jsonzRuleSetId.to_json   ó   € Øˆó    c                ó   —  | |«      S r   r   ©ÚclsÚjsons     r   Ú	from_jsonzRuleSetId.from_json   ó   € á�4‹yÐr   c                ó>   •— dj                  t        ‰| �	  «       «      S )NzRuleSetId({})©ÚformatÚsuperÚ__repr__©r   Ú	__class__s    €r   r    zRuleSetId.__repr__   s   ø€ Ø×%Ñ%¤e¡gÑ&6Ó&8Ó9Ð9r   ©ÚreturnÚstr)r   r%   r$   r   ©	Ú__name__Ú
__module__Ú__qualname__Ú__doc__r   Úclassmethodr   r    Ú__classcell__©r"   s   @r   r   r      s+   ø„ ñóð òó ð÷:ð :r   r   c                  óš   — e Zd ZU dZded<   ded<   ded<   dZd	ed
<   dZded<   dZded<   dZded<   dZ	ded<   dZ
ded<   d„ Zed„ «       Zy)ÚRuleSetz+
    Corresponds to SpeculationRuleSet
    r   Úid_únetwork.LoaderIdÚ	loader_idr%   Úsource_textNz"typing.Optional[dom.BackendNodeId]Úbackend_node_idútyping.Optional[str]Úurlz"typing.Optional[network.RequestId]Ú
request_idz!typing.Optional[RuleSetErrorType]Ú
error_typeÚerror_messageÚtagc                óD  — t        «       }| j                  j                  «       |d<   | j                  j                  «       |d<   | j                  |d<   | j
                  �| j
                  j                  «       |d<   | j                  �| j                  |d<   | j                  �| j                  j                  «       |d<   | j                  �| j                  j                  «       |d<   | j                  �| j                  |d<   | j                  �| j                  |d	<   |S )
NÚidÚloaderIdÚ
sourceTextÚbackendNodeIdr6   Ú	requestIdÚ	errorTypeÚerrorMessager:   )Údictr0   r   r2   r3   r4   r6   r7   r8   r9   r:   ©r   r   s     r   r   zRuleSet.to_jsonN   sü   € Ü‹vˆØ—X‘X×%Ñ%Ó'ˆˆT‰
ØŸ>™>×1Ñ1Ó3ˆˆZÑØ!×-Ñ-ˆˆ\ÑØ×ÑÐ+Ø$(×$8Ñ$8×$@Ñ$@Ó$BˆD�Ñ!Ø�8‰8ÐØŸ(™(ˆD�‰KØ�?‰?Ð&Ø $§¡× 7Ñ 7Ó 9ˆD�ÑØ�?‰?Ð&Ø $§¡× 7Ñ 7Ó 9ˆD�ÑØ×ÑÐ)Ø#'×#5Ñ#5ˆD�Ñ Ø�8‰8ÐØŸ(™(ˆD�‰KØˆr   c                óî  —  | t         j                  |d   «      t        j                  j                  |d   «      t	        |d   «      d|v r"t
        j                  j                  |d   «      nd d|v rt	        |d   «      nd d|v r"t        j                  j                  |d   «      nd d|v rt        j                  |d   «      nd d|v rt	        |d   «      nd d	|v rt	        |d	   «      ¬
«	      S d ¬
«	      S )Nr<   r=   r>   r?   r6   r@   rA   rB   r:   )	r0   r2   r3   r4   r6   r7   r8   r9   r:   )	r   r   r	   ÚLoaderIdr%   r   ÚBackendNodeIdÚ	RequestIdÚRuleSetErrorTyper   s     r   r   zRuleSet.from_jsona   sú   € áÜ×#Ñ# D¨¡JÓ/Ü×&Ñ&×0Ñ0°°jÑ1AÓBÜ˜D Ñ.Ó/ØRaÐeiÑRiœC×-Ñ-×7Ñ7¸¸_Ñ8MÔNÐosØ$)¨T¡M”�D˜‘KÔ °tØITÐX\ÑI\”w×(Ñ(×2Ñ2°4¸Ñ3DÔEÐbfØHSÐW[ÑH[Ô'×1Ñ1°$°{Ñ2CÔDÐaeØ7EÈÑ7Mœ#˜d >Ñ2Ô3ÐSWØ$)¨T¡M”�D˜‘KÓ ô

ð 
	
ð 8<ô

ð 
	
r   )r'   r(   r)   r*   Ú__annotations__r4   r6   r7   r8   r9   r:   r   r+   r   r   r   r   r/   r/       s�   … ñð 
ƒNð  Óð Óð ;?€OÐ7Ó>à $€CÐ	Ó$à59€JÐ2Ó9ð 59€JÐ1Ó8ð +/€MÐ'Ó.ð !%€CÐ	Ó$òð& ñ
ó ñ
r   r/   c                  ó.   — e Zd ZdZdZdZd„ Zed„ «       Zy)rI   ÚSourceIsNotJsonObjectÚInvalidRulesSkippedÚInvalidRulesetLevelTagc                ó   — | j                   S r   ©Úvaluer   s    r   r   zRuleSetErrorType.to_jsonu   ó   € Ø�z‰zÐr   c                ó   —  | |«      S r   r   r   s     r   r   zRuleSetErrorType.from_jsonx   r   r   N)	r'   r(   r)   ÚSOURCE_IS_NOT_JSON_OBJECTÚINVALID_RULES_SKIPPEDÚINVALID_RULESET_LEVEL_TAGr   r+   r   r   r   r   rI   rI   p   s-   „ Ø 7ÐØ1ÐØ 8Ðòð ñó ñr   rI   c                  ó2   — e Zd ZdZdZdZdZd„ Zed„ «       Z	y)ÚSpeculationActionz°
    The type of preloading attempted. It corresponds to
    mojom::SpeculationAction (although PrefetchWithSubresources is omitted as it
    isn't being used by clients).
    ÚPrefetchÚ	PrerenderÚPrerenderUntilScriptc                ó   — | j                   S r   rP   r   s    r   r   zSpeculationAction.to_json‡   rR   r   c                ó   —  | |«      S r   r   r   s     r   r   zSpeculationAction.from_jsonŠ   r   r   N)
r'   r(   r)   r*   ÚPREFETCHÚ	PRERENDERÚPRERENDER_UNTIL_SCRIPTr   r+   r   r   r   r   rX   rX   }   s2   „ ñð
 €HØ€IØ3Ðòð ñó ñr   rX   c                  ó.   — e Zd ZdZdZdZd„ Zed„ «       Zy)ÚSpeculationTargetHintz˜
    Corresponds to mojom::SpeculationTargetHint.
    See https://github.com/WICG/nav-speculation/blob/main/triggers.md#window-name-targeting-hints
    ÚBlankÚSelfc                ó   — | j                   S r   rP   r   s    r   r   zSpeculationTargetHint.to_json—   rR   r   c                ó   —  | |«      S r   r   r   s     r   r   zSpeculationTargetHint.from_jsonš   r   r   N)	r'   r(   r)   r*   ÚBLANKÚSELFr   r+   r   r   r   r   rb   rb   �   s,   „ ñð €EØ€Dòð ñó ñr   rb   c                  ób   — e Zd ZU dZded<   ded<   ded<   dZd	ed
<   dZded<   d„ Zed„ «       Z	y)ÚPreloadingAttemptKeyaH  
    A key that identifies a preloading attempt.

    The url used is the url specified by the trigger (i.e. the initial URL), and
    not the final url that is navigated to. For example, prerendering allows
    same-origin main frame navigations during the attempt, but the attempt is
    still keyed with the initial URL.
    r1   r2   rX   Úactionr%   r6   Nztyping.Optional[bool]Úform_submissionz&typing.Optional[SpeculationTargetHint]Útarget_hintc                ó4  — t        «       }| j                  j                  «       |d<   | j                  j                  «       |d<   | j                  |d<   | j
                  �| j
                  |d<   | j                  �| j                  j                  «       |d<   |S )Nr=   rk   r6   ÚformSubmissionÚ
targetHint)rC   r2   r   rk   r6   rl   rm   rD   s     r   r   zPreloadingAttemptKey.to_json³   sŠ   € Ü‹vˆØŸ>™>×1Ñ1Ó3ˆˆZÑØŸ™×,Ñ,Ó.ˆˆX‰Ø—h‘hˆˆU‰Ø×ÑÐ+Ø%)×%9Ñ%9ˆDÐ!Ñ"Ø×ÑÐ'Ø!%×!1Ñ!1×!9Ñ!9Ó!;ˆD�ÑØˆr   c           
     ó  —  | t         j                  j                  |d   «      t        j                  |d   «      t	        |d   «      d|v rt        |d   «      nd d|v rt        j                  |d   «      ¬«      S d ¬«      S )Nr=   rk   r6   ro   rp   )r2   rk   r6   rl   rm   )r	   rF   r   rX   r%   Úboolrb   r   s     r   r   zPreloadingAttemptKey.from_json¾   sŒ   € áÜ×&Ñ&×0Ñ0°°jÑ1AÓBÜ$×.Ñ.¨t°H©~Ó>Ü�D˜‘KÓ Ø<LÐPTÑ<TœD Ð&6Ñ!7Ô8ÐZ^ØO[Ð_cÑOcÔ-×7Ñ7¸¸\Ñ8JÓKô
ð 	
ð
 jnô
ð 	
r   )
r'   r(   r)   r*   rJ   rl   rm   r   r+   r   r   r   r   rj   rj   Ÿ   sI   … ñð  ÓàÓà	ƒHà-1€OÐ*Ó1à:>€KÐ7Ó>ò	ð ñ
ó ñ
r   rj   c                  óF   — e Zd ZU dZded<   ded<   ded<   d„ Zed	„ «       Zy
)ÚPreloadingAttemptSourceav  
    Lists sources for a preloading attempt, specifically the ids of rule sets
    that had a speculation rule that triggered the attempt, and the
    BackendNodeIds of <a href> or <area href> elements that triggered the
    attempt (in the case of attempts triggered by a document rule). It is
    possible for multiple rule sets and links to trigger a single attempt.
    rj   Úkeyztyping.List[RuleSetId]Úrule_set_idsztyping.List[dom.BackendNodeId]Únode_idsc                ó  — t        «       }| j                  j                  «       |d<   | j                  D �cg c]  }|j                  «       ‘Œ c}|d<   | j                  D �cg c]  }|j                  «       ‘Œ c}|d<   |S c c}w c c}w )Nru   Ú
ruleSetIdsÚnodeIds)rC   ru   r   rv   rw   )r   r   Úis      r   r   zPreloadingAttemptSource.to_jsonØ   sl   € Ü‹vˆØ—h‘h×&Ñ&Ó(ˆˆU‰Ø37×3DÑ3DÖE¨a˜aŸi™i�kÒEˆˆ\ÑØ04·±Ö>¨1˜1Ÿ9™9�;Ò>ˆˆY‰Øˆùò FùÚ>s   ¶B Á!Bc           
     óü   —  | t         j                  |d   «      |d   D �cg c]  }t        j                  |«      ‘Œ c}|d   D �cg c]!  }t        j                  j                  |«      ‘Œ# c}¬«      S c c}w c c}w )Nru   ry   rz   )ru   rv   rw   )rj   r   r   r   rG   ©r   r   r{   s      r   r   z!PreloadingAttemptSource.from_jsonß   sh   € áÜ$×.Ñ.¨t°E©{Ó;Ø:>¸|Ñ:LÖM°Qœ)×-Ñ-¨aÕ0ÒMØ>BÀ9¹oÖN¸”c×'Ñ'×1Ñ1°!Õ4ÒNô
ð 	
ùâMùÚNs   ¡A4
Á&A9N)r'   r(   r)   r*   rJ   r   r+   r   r   r   r   rt   rt   É   s4   … ñð 
Óà(Ó(à,Ó,òð ñ
ó ñ
r   rt   c                  ó<   ‡ — e Zd ZdZdd„Zedd„«       Zˆ fd„Zˆ xZS )ÚPreloadPipelineIdaK  
    Chrome manages different types of preloads together using a
    concept of preloading pipeline. For example, if a site uses a
    SpeculationRules for prerender, Chrome first starts a prefetch and
    then upgrades it to prerender.

    CDP events for them are emitted separately but they share
    ``PreloadPipelineId``.
    c                ó   — | S r   r   r   s    r   r   zPreloadPipelineId.to_jsonò   r   r   c                ó   —  | |«      S r   r   r   s     r   r   zPreloadPipelineId.from_jsonõ   r   r   c                ó>   •— dj                  t        ‰| �	  «       «      S )NzPreloadPipelineId({})r   r!   s    €r   r    zPreloadPipelineId.__repr__ù   s   ø€ Ø&×-Ñ-¬e©gÑ.>Ó.@ÓAÐAr   r#   )r   r%   r$   r   r&   r-   s   @r   r   r   è   s-   ø„ ñóð òó ð÷Bð Br   r   c                  óR  — e Zd ZdZdZdZdZdZdZdZ	dZ
d	Zd
ZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZ dZ!d Z"d!Z#d"Z$d#Z%d$Z&d%Z'd&Z(d'Z)d(Z*d)Z+d*Z,d+Z-d,Z.d-Z/d.Z0d/Z1d0Z2d1Z3d2Z4d3Z5d4Z6d5Z7d6Z8d7Z9d8Z:d9Z;d:Z<d;Z=d<Z>d=Z?d>Z@d?ZAd@ZBdAZCdBZDdCZEdDZFdEZGdFZHdGZIdHZJdIZKdJZLdKZMdLZNdM„ ZOePdN„ «       ZQyO)PÚPrerenderFinalStatusz5
    List of FinalStatus reasons for Prerender2.
    Ú	ActivatedÚ	DestroyedÚLowEndDeviceÚInvalidSchemeRedirectÚInvalidSchemeNavigationÚNavigationRequestBlockedByCspÚMojoBinderPolicyÚRendererProcessCrashedÚRendererProcessKilledÚDownloadÚTriggerDestroyedÚNavigationNotCommittedÚNavigationBadHttpStatusÚClientCertRequestedÚNavigationRequestNetworkErrorÚCancelAllHostsForTestingÚDidFailLoadÚStopÚSslCertificateErrorÚLoginAuthRequestedÚUaChangeRequiresReloadÚBlockedByClientÚAudioOutputDeviceRequestedÚMixedContentÚTriggerBackgroundedÚMemoryLimitExceededÚDataSaverEnabledÚTriggerUrlHasEffectiveUrlÚActivatedBeforeStartedÚInactivePageRestrictionÚStartFailedÚTimeoutBackgroundedÚ$CrossSiteRedirectInInitialNavigationÚ&CrossSiteNavigationInInitialNavigationÚ6SameSiteCrossOriginRedirectNotOptInInInitialNavigationÚ8SameSiteCrossOriginNavigationNotOptInInInitialNavigationÚ%ActivationNavigationParameterMismatchÚActivatedInBackgroundÚEmbedderHostDisallowedÚ*ActivationNavigationDestroyedBeforeSuccessÚTabClosedByUserGestureÚTabClosedWithoutUserGestureÚ&PrimaryMainFrameRendererProcessCrashedÚ%PrimaryMainFrameRendererProcessKilledÚ"ActivationFramePolicyNotCompatibleÚPreloadingDisabledÚBatterySaverEnabledÚ"ActivatedDuringMainFrameNavigationÚ"PreloadingUnsupportedByWebContentsÚ&CrossSiteRedirectInMainFrameNavigationÚ(CrossSiteNavigationInMainFrameNavigationÚ8SameSiteCrossOriginRedirectNotOptInInMainFrameNavigationÚ:SameSiteCrossOriginNavigationNotOptInInMainFrameNavigationÚMemoryPressureOnTriggerÚMemoryPressureAfterTriggeredÚPrerenderingDisabledByDevToolsÚSpeculationRuleRemovedÚ&ActivatedWithAuxiliaryBrowsingContextsÚ&MaxNumOfRunningEagerPrerendersExceededÚ)MaxNumOfRunningNonEagerPrerendersExceededÚ)MaxNumOfRunningEmbedderPrerendersExceededÚPrerenderingUrlHasEffectiveUrlÚ(RedirectedPrerenderingUrlHasEffectiveUrlÚActivationUrlHasEffectiveUrlÚJavaScriptInterfaceAddedÚJavaScriptInterfaceRemovedÚAllPrerenderingCanceledÚWindowClosedÚSlowNetworkÚOtherPrerenderedPageActivatedÚV8OptimizerDisabledÚPrerenderFailedDuringPrefetchÚBrowsingDataRemovedÚPrerenderHostReusedÚFormSubmitWhenPrerenderingc                ó   — | j                   S r   rP   r   s    r   r   zPrerenderFinalStatus.to_jsonM  rR   r   c                ó   —  | |«      S r   r   r   s     r   r   zPrerenderFinalStatus.from_jsonP  r   r   N)Rr'   r(   r)   r*   Ú	ACTIVATEDÚ	DESTROYEDÚLOW_END_DEVICEÚINVALID_SCHEME_REDIRECTÚINVALID_SCHEME_NAVIGATIONÚ!NAVIGATION_REQUEST_BLOCKED_BY_CSPÚMOJO_BINDER_POLICYÚRENDERER_PROCESS_CRASHEDÚRENDERER_PROCESS_KILLEDÚDOWNLOADÚTRIGGER_DESTROYEDÚNAVIGATION_NOT_COMMITTEDÚNAVIGATION_BAD_HTTP_STATUSÚCLIENT_CERT_REQUESTEDÚ NAVIGATION_REQUEST_NETWORK_ERRORÚCANCEL_ALL_HOSTS_FOR_TESTINGÚDID_FAIL_LOADÚSTOPÚSSL_CERTIFICATE_ERRORÚLOGIN_AUTH_REQUESTEDÚUA_CHANGE_REQUIRES_RELOADÚBLOCKED_BY_CLIENTÚAUDIO_OUTPUT_DEVICE_REQUESTEDÚMIXED_CONTENTÚTRIGGER_BACKGROUNDEDÚMEMORY_LIMIT_EXCEEDEDÚDATA_SAVER_ENABLEDÚTRIGGER_URL_HAS_EFFECTIVE_URLÚACTIVATED_BEFORE_STARTEDÚINACTIVE_PAGE_RESTRICTIONÚSTART_FAILEDÚTIMEOUT_BACKGROUNDEDÚ)CROSS_SITE_REDIRECT_IN_INITIAL_NAVIGATIONÚ+CROSS_SITE_NAVIGATION_IN_INITIAL_NAVIGATIONÚ@SAME_SITE_CROSS_ORIGIN_REDIRECT_NOT_OPT_IN_IN_INITIAL_NAVIGATIONÚBSAME_SITE_CROSS_ORIGIN_NAVIGATION_NOT_OPT_IN_IN_INITIAL_NAVIGATIONÚ(ACTIVATION_NAVIGATION_PARAMETER_MISMATCHÚACTIVATED_IN_BACKGROUNDÚEMBEDDER_HOST_DISALLOWEDÚ.ACTIVATION_NAVIGATION_DESTROYED_BEFORE_SUCCESSÚTAB_CLOSED_BY_USER_GESTUREÚTAB_CLOSED_WITHOUT_USER_GESTUREÚ+PRIMARY_MAIN_FRAME_RENDERER_PROCESS_CRASHEDÚ*PRIMARY_MAIN_FRAME_RENDERER_PROCESS_KILLEDÚ&ACTIVATION_FRAME_POLICY_NOT_COMPATIBLEÚPRELOADING_DISABLEDÚBATTERY_SAVER_ENABLEDÚ&ACTIVATED_DURING_MAIN_FRAME_NAVIGATIONÚ&PRELOADING_UNSUPPORTED_BY_WEB_CONTENTSÚ,CROSS_SITE_REDIRECT_IN_MAIN_FRAME_NAVIGATIONÚ.CROSS_SITE_NAVIGATION_IN_MAIN_FRAME_NAVIGATIONÚCSAME_SITE_CROSS_ORIGIN_REDIRECT_NOT_OPT_IN_IN_MAIN_FRAME_NAVIGATIONÚESAME_SITE_CROSS_ORIGIN_NAVIGATION_NOT_OPT_IN_IN_MAIN_FRAME_NAVIGATIONÚMEMORY_PRESSURE_ON_TRIGGERÚMEMORY_PRESSURE_AFTER_TRIGGEREDÚ"PRERENDERING_DISABLED_BY_DEV_TOOLSÚSPECULATION_RULE_REMOVEDÚ*ACTIVATED_WITH_AUXILIARY_BROWSING_CONTEXTSÚ,MAX_NUM_OF_RUNNING_EAGER_PRERENDERS_EXCEEDEDÚ0MAX_NUM_OF_RUNNING_NON_EAGER_PRERENDERS_EXCEEDEDÚ/MAX_NUM_OF_RUNNING_EMBEDDER_PRERENDERS_EXCEEDEDÚ"PRERENDERING_URL_HAS_EFFECTIVE_URLÚ-REDIRECTED_PRERENDERING_URL_HAS_EFFECTIVE_URLÚ ACTIVATION_URL_HAS_EFFECTIVE_URLÚJAVA_SCRIPT_INTERFACE_ADDEDÚJAVA_SCRIPT_INTERFACE_REMOVEDÚALL_PRERENDERING_CANCELEDÚWINDOW_CLOSEDÚSLOW_NETWORKÚ OTHER_PRERENDERED_PAGE_ACTIVATEDÚV8_OPTIMIZER_DISABLEDÚ PRERENDER_FAILED_DURING_PREFETCHÚBROWSING_DATA_REMOVEDÚPRERENDER_HOST_REUSEDÚFORM_SUBMIT_WHEN_PRERENDERINGr   r+   r   r   r   r   r„   r„   ý   sæ  „ ñð €IØ€IØ#€NØ5ÐØ 9ÐØ(GÐ%Ø+ÐØ7ÐØ5ÐØ€HØ*ÐØ7ÐØ!:ÐØ1ÐØ'FÐ$Ø#=Ð Ø!€MØ€DØ1ÐØ/ÐØ 8ÐØ)ÐØ$@Ð!Ø"€MØ0ÐØ1ÐØ+ÐØ$?Ð!Ø7ÐØ 9ÐØ €LØ0ÐØ0VÐ-Ø2ZÐ/ØGÐDð JDÐFØ/VÐ,Ø5ÐØ7ÐØ5aÐ2Ø!9ÐØ&CÐ#Ø2ZÐ/Ø1XÐ.Ø-QÐ*Ø.ÐØ1ÐØ-QÐ*Ø-QÐ*Ø3[Ð0Ø5_Ð2ð KEÐGð MIÐIØ!:ÐØ&DÐ#Ø)IÐ&Ø7ÐØ1YÐ.Ø3[Ð0Ø7bÐ4Ø6aÐ3Ø)IÐ&Ø4^Ð1Ø'EÐ$Ø"<ÐØ$@Ð!Ø 9ÐØ"€MØ €LØ'FÐ$Ø1ÐØ'FÐ$Ø1ÐØ1ÐØ$@Ð!òð ñó ñr   r„   c                  ó>   — e Zd ZdZdZdZdZdZdZdZ	d„ Z
ed	„ «       Zy
)ÚPreloadingStatusz˜
    Preloading status values, see also PreloadingTriggeringOutcome. This
    status is shared by prefetchStatusUpdated and prerenderStatusUpdated.
    ÚPendingÚRunningÚReadyÚSuccessÚFailureÚNotSupportedc                ó   — | j                   S r   rP   r   s    r   r   zPreloadingStatus.to_jsona  rR   r   c                ó   —  | |«      S r   r   r   s     r   r   zPreloadingStatus.from_jsond  r   r   N)r'   r(   r)   r*   ÚPENDINGÚRUNNINGÚREADYÚSUCCESSÚFAILUREÚNOT_SUPPORTEDr   r+   r   r   r   r   r  r  U  s@   „ ñð €GØ€GØ€EØ€GØ€GØ"€Mòð ñó ñr   r  c                  ó®   — e Zd ZdZdZdZdZdZdZdZ	dZ
d	Zd
ZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZ dZ!d Z"d!Z#d"Z$d#Z%d$„ Z&e'd%„ «       Z(y&)'ÚPrefetchStatusz’
    TODO(https://crbug.com/1384419): revisit the list of PrefetchStatus and
    filter out the ones that aren't necessary to the developers.
    ÚPrefetchAllowedÚ PrefetchFailedIneligibleRedirectÚPrefetchFailedInvalidRedirectÚPrefetchFailedMIMENotSupportedÚPrefetchFailedNetErrorÚPrefetchFailedNon2XXÚ'PrefetchEvictedAfterBrowsingDataRemovedÚ$PrefetchEvictedAfterCandidateRemovedÚPrefetchEvictedForNewerPrefetchÚPrefetchHeldbackÚPrefetchIneligibleRetryAfterÚPrefetchIsPrivacyDecoyÚPrefetchIsStaleÚ-PrefetchNotEligibleBrowserContextOffTheRecordÚ#PrefetchNotEligibleDataSaverEnabledÚ PrefetchNotEligibleExistingProxyÚ"PrefetchNotEligibleHostIsNonUniqueÚ-PrefetchNotEligibleNonDefaultStoragePartitionÚ;PrefetchNotEligibleSameSiteCrossOriginPrefetchRequiredProxyÚ#PrefetchNotEligibleSchemeIsNotHttpsÚ!PrefetchNotEligibleUserHasCookiesÚ'PrefetchNotEligibleUserHasServiceWorkerÚ5PrefetchNotEligibleUserHasServiceWorkerNoFetchHandlerÚ,PrefetchNotEligibleRedirectFromServiceWorkerÚ*PrefetchNotEligibleRedirectToServiceWorkerÚ&PrefetchNotEligibleBatterySaverEnabledÚ%PrefetchNotEligiblePreloadingDisabledÚPrefetchNotFinishedInTimeÚPrefetchNotStartedÚPrefetchNotUsedCookiesChangedÚPrefetchProxyNotAvailableÚPrefetchResponseUsedÚPrefetchSuccessfulButNotUsedÚPrefetchNotUsedProbeFailedc                ó   — | j                   S r   rP   r   s    r   r   zPrefetchStatus.to_json‘  rR   r   c                ó   —  | |«      S r   r   r   s     r   r   zPrefetchStatus.from_json”  r   r   N))r'   r(   r)   r*   ÚPREFETCH_ALLOWEDÚ#PREFETCH_FAILED_INELIGIBLE_REDIRECTÚ PREFETCH_FAILED_INVALID_REDIRECTÚ"PREFETCH_FAILED_MIME_NOT_SUPPORTEDÚPREFETCH_FAILED_NET_ERRORÚPREFETCH_FAILED_NON2_XXÚ,PREFETCH_EVICTED_AFTER_BROWSING_DATA_REMOVEDÚ(PREFETCH_EVICTED_AFTER_CANDIDATE_REMOVEDÚ#PREFETCH_EVICTED_FOR_NEWER_PREFETCHÚPREFETCH_HELDBACKÚPREFETCH_INELIGIBLE_RETRY_AFTERÚPREFETCH_IS_PRIVACY_DECOYÚPREFETCH_IS_STALEÚ4PREFETCH_NOT_ELIGIBLE_BROWSER_CONTEXT_OFF_THE_RECORDÚ(PREFETCH_NOT_ELIGIBLE_DATA_SAVER_ENABLEDÚ$PREFETCH_NOT_ELIGIBLE_EXISTING_PROXYÚ(PREFETCH_NOT_ELIGIBLE_HOST_IS_NON_UNIQUEÚ3PREFETCH_NOT_ELIGIBLE_NON_DEFAULT_STORAGE_PARTITIONÚDPREFETCH_NOT_ELIGIBLE_SAME_SITE_CROSS_ORIGIN_PREFETCH_REQUIRED_PROXYÚ)PREFETCH_NOT_ELIGIBLE_SCHEME_IS_NOT_HTTPSÚ&PREFETCH_NOT_ELIGIBLE_USER_HAS_COOKIESÚ-PREFETCH_NOT_ELIGIBLE_USER_HAS_SERVICE_WORKERÚ>PREFETCH_NOT_ELIGIBLE_USER_HAS_SERVICE_WORKER_NO_FETCH_HANDLERÚ2PREFETCH_NOT_ELIGIBLE_REDIRECT_FROM_SERVICE_WORKERÚ0PREFETCH_NOT_ELIGIBLE_REDIRECT_TO_SERVICE_WORKERÚ+PREFETCH_NOT_ELIGIBLE_BATTERY_SAVER_ENABLEDÚ)PREFETCH_NOT_ELIGIBLE_PRELOADING_DISABLEDÚPREFETCH_NOT_FINISHED_IN_TIMEÚPREFETCH_NOT_STARTEDÚ!PREFETCH_NOT_USED_COOKIES_CHANGEDÚPREFETCH_PROXY_NOT_AVAILABLEÚPREFETCH_RESPONSE_USEDÚ PREFETCH_SUCCESSFUL_BUT_NOT_USEDÚPREFETCH_NOT_USED_PROBE_FAILEDr   r+   r   r   r   r   r.  r.  i  sò   „ ñð )ÐØ*LÐ'Ø'FÐ$Ø)IÐ&Ø 8ÐØ4ÐØ3\Ð0Ø/UÐ,Ø*KÐ'Ø*ÐØ&DÐ#Ø 8ÐØ)ÐØ;jÐ8Ø/TÐ,Ø+MÐ(Ø/SÐ,Ø:iÐ7ð LIÐHØ0UÐ-Ø-PÐ*Ø4]Ð1ØE|ÐBØ9gÐ6Ø7cÐ4Ø2ZÐ/Ø0WÐ-Ø$?Ð!Ø/ÐØ(GÐ%Ø#>Ð Ø3ÐØ'EÐ$Ø%AÐ"òð ñó ñr   r.  c                  óN   — e Zd ZU dZded<   dZded<   dZded<   d„ Zed	„ «       Z	y)
ÚPrerenderMismatchedHeaderszS
    Information of headers to be displayed when the header mismatch occurred.
    r%   Úheader_nameNr5   Úinitial_valueÚactivation_valuec                ó¤   — t        «       }| j                  |d<   | j                  �| j                  |d<   | j                  �| j                  |d<   |S )NÚ
headerNameÚinitialValueÚactivationValue)rC   rw  rx  ry  rD   s     r   r   z"PrerenderMismatchedHeaders.to_json¤  sW   € Ü‹vˆØ!×-Ñ-ˆˆ\ÑØ×ÑÐ)Ø#'×#5Ñ#5ˆD�Ñ Ø× Ñ Ð,Ø&*×&;Ñ&;ˆDÐ"Ñ#Øˆr   c                ó‚   —  | t        |d   «      d|v rt        |d   «      nd d|v rt        |d   «      ¬«      S d ¬«      S )Nr{  r|  r}  )rw  rx  ry  )r%   r   s     r   r   z$PrerenderMismatchedHeaders.from_json­  sZ   € áÜ˜D Ñ.Ó/Ø7EÈÑ7Mœ#˜d >Ñ2Ô3ÐSWØ=NÐRVÑ=VœS Ð&7Ñ!8Ó9ô
ð 	
ð ]aô
ð 	
r   )
r'   r(   r)   r*   rJ   rx  ry  r   r+   r   r   r   r   rv  rv  ™  s?   … ñð Óà*.€MÐ'Ó.à-1ÐÐ*Ó1òð ñ
ó ñ
r   rv  c               #  ó   K  — ddi} | –—}y ­w)NÚmethodzPreload.enabler   ©Úcmd_dictr   s     r   Úenablerƒ  ¶  s   è ø€ ð 	Ð"ð€Hð ‰>�Dùó   ‚
c               #  ó   K  — ddi} | –—}y ­w)Nr€  zPreload.disabler   r�  s     r   Údisabler†  ¾  s   è ø€ ð 	Ð#ð€Hð ‰>�Dùr„  zPreload.ruleSetUpdatedc                  ó.   — e Zd ZU dZded<   edd„«       Zy)ÚRuleSetUpdatedzF
    Upsert. Currently, it is only emitted when a rule set added.
    r/   Úrule_setc                ó@   —  | t         j                  |d   «      ¬«      S )NÚruleSet)r‰  )r/   r   r   s     r   r   zRuleSetUpdated.from_jsonÎ  s!   € áÜ×&Ñ& t¨I¡Ó7ô
ð 	
r   N)r   r   r$   rˆ  ©r'   r(   r)   r*   rJ   r+   r   r   r   r   rˆ  rˆ  Æ  s!   … ñð Óàò
ó ñ
r   rˆ  zPreload.ruleSetRemovedc                  ó*   — e Zd ZU ded<   edd„«       Zy)ÚRuleSetRemovedr   r0   c                ó@   —  | t         j                  |d   «      ¬«      S )Nr<   )r0   )r   r   r   s     r   r   zRuleSetRemoved.from_jsonÚ  s!   € áÜ×#Ñ# D¨¡JÓ/ô
ð 	
r   N)r   r   r$   rŽ  )r'   r(   r)   rJ   r+   r   r   r   r   rŽ  rŽ  Õ  s   … ð 
ƒNàò
ó ñ
r   rŽ  z"Preload.preloadEnabledStateUpdatedc                  óV   — e Zd ZU dZded<   ded<   ded<   ded<   ded<   ed
d„«       Zy	)ÚPreloadEnabledStateUpdatedz8
    Fired when a preload enabled state is updated.
    rr   Údisabled_by_preferenceÚdisabled_by_data_saverÚdisabled_by_battery_saverÚ/disabled_by_holdback_prefetch_speculation_rulesÚ0disabled_by_holdback_prerender_speculation_rulesc           
     ó”   —  | t        |d   «      t        |d   «      t        |d   «      t        |d   «      t        |d   «      ¬«      S )NÚdisabledByPreferenceÚdisabledByDataSaverÚdisabledByBatterySaverÚ*disabledByHoldbackPrefetchSpeculationRulesÚ+disabledByHoldbackPrerenderSpeculationRules)r’  r“  r”  r•  r–  )rr   r   s     r   r   z$PreloadEnabledStateUpdated.from_jsoní  sU   € áÜ#'¨Ð-CÑ(DÓ#EÜ#'¨Ð-BÑ(CÓ#DÜ&*¨4Ð0HÑ+IÓ&JÜ<@ÀÐFrÑAsÓ<tÜ=AÀ$ÐGtÑBuÓ=vô
ð 	
r   N)r   r   r$   r‘  rŒ  r   r   r   r‘  r‘  á  s9   … ñð !Ó Ø Ó Ø#Ó#Ø59Ó9Ø6:Ó:àò
ó ñ
r   r‘  zPreload.prefetchStatusUpdatedc                  ój   — e Zd ZU dZded<   ded<   ded<   ded	<   d
ed<   ded<   ded<   edd„«       Zy)ÚPrefetchStatusUpdatedz3
    Fired when a prefetch attempt is updated.
    rj   ru   r   Úpipeline_idzpage.FrameIdÚinitiating_frame_idr%   Úprefetch_urlr  Ústatusr.  Úprefetch_statusznetwork.RequestIdr7   c                óh  —  | t         j                  |d   «      t        j                  |d   «      t        j                  j                  |d   «      t        |d   «      t        j                  |d   «      t        j                  |d   «      t        j                  j                  |d   «      ¬«      S )	Nru   Ú
pipelineIdÚinitiatingFrameIdÚprefetchUrlr¢  ÚprefetchStatusr@   )ru   rŸ  r   r¡  r¢  r£  r7   )
rj   r   r   r
   ÚFrameIdr%   r  r.  r	   rH   r   s     r   r   zPrefetchStatusUpdated.from_json  s˜   € áÜ$×.Ñ.¨t°E©{Ó;Ü)×3Ñ3°D¸Ñ4FÓGÜ $§¡× 6Ñ 6°tÐ<OÑ7PÓ QÜ˜T -Ñ0Ó1Ü#×-Ñ-¨d°8©nÓ=Ü*×4Ñ4°TÐ:JÑ5KÓLÜ×(Ñ(×2Ñ2°4¸Ñ3DÓEô
ð 	
r   N)r   r   r$   rž  rŒ  r   r   r   rž  rž  ø  sE   … ñð 
ÓØ"Ó"à%Ó%ØÓØÓØ#Ó#Ø!Ó!àò	
ó ñ	
r   rž  zPreload.prerenderStatusUpdatedc                  ó`   — e Zd ZU dZded<   ded<   ded<   ded	<   d
ed<   ded<   edd„«       Zy)ÚPrerenderStatusUpdatedz4
    Fired when a prerender attempt is updated.
    rj   ru   r   rŸ  r  r¢  z%typing.Optional[PrerenderFinalStatus]Úprerender_statusr5   Údisallowed_mojo_interfacez8typing.Optional[typing.List[PrerenderMismatchedHeaders]]Úmismatched_headersc                óf  —  | t         j                  |d   «      t        j                  |d   «      t        j                  |d   «      d|v rt        j                  |d   «      nd d|v rt        |d   «      nd d|v r+|d   D �cg c]  }t        j                  |«      ‘Œ c}¬«      S d ¬«      S c c}w )Nru   r¥  r¢  ÚprerenderStatusÚdisallowedMojoInterfaceÚmismatchedHeaders)ru   rŸ  r¢  r¬  r­  r®  )rj   r   r   r  r„   r%   rv  r}   s      r   r   z PrerenderStatusUpdated.from_json#  sË   € áÜ$×.Ñ.¨t°E©{Ó;Ü)×3Ñ3°D¸Ñ4FÓGÜ#×-Ñ-¨d°8©nÓ=ØXiÐmqÑXqÔ1×;Ñ;¸DÐARÑ<SÔTÐw{ØNgÐkoÑNo¤c¨$Ð/HÑ*IÔ&JÐuyð pCð  GKñ  pKÐQUÐViÑQjÖkÈAÔ :× DÑ DÀQÕ GÒkô
ð 	
ð QUô
ð 	
ùò  ls   ÂB.N)r   r   r$   r«  rŒ  r   r   r   r«  r«    sA   … ñð 
ÓØ"Ó"ØÓØ;Ó;ð  4Ó3ØPÓPàò
ó ñ
r   r«  z'Preload.preloadingAttemptSourcesUpdatedc                  ó8   — e Zd ZU dZded<   ded<   edd„«       Zy)	ÚPreloadingAttemptSourcesUpdatedzK
    Send a list of sources for all preloading attempts in a document.
    r1   r2   z$typing.List[PreloadingAttemptSource]Úpreloading_attempt_sourcesc           	     ó¨   —  | t         j                  j                  |d   «      |d   D �cg c]  }t        j                  |«      ‘Œ c}¬«      S c c}w )Nr=   ÚpreloadingAttemptSources)r2   rµ  )r	   rF   r   rt   r}   s      r   r   z)PreloadingAttemptSourcesUpdated.from_json8  sL   € áÜ×&Ñ&×0Ñ0°°jÑ1AÓBØVZÐ[uÑVvÖ'wÐQRÔ(?×(IÑ(IÈ!Õ(LÒ'wô
ð 	
ùâ'ws   «A
N)r   r   r$   r´  rŒ  r   r   r   r´  r´  /  s'   … ñð  ÓØ DÓDàò
ó ñ
r   r´  )r$   z0typing.Generator[T_JSON_DICT, T_JSON_DICT, None])#Ú
__future__r   Úutilr   r   Údataclassesr   ÚenumÚtypingÚ r   r	   r
   r%   r   r/   ÚEnumrI   rX   rb   rj   rt   r   r„   r  r.  rv  rƒ  r†  rˆ  rŽ  r‘  rž  r«  r´  r   r   r   ú<module>r¿     sú  ðõ #ß *Ý !Û Û Ý Ý Ý ô:�ô :ð ÷L
ð L
ó ðL
ô^
�t—y‘yô 
ô˜Ÿ	™	ô ô$˜DŸI™Iô ð  ÷&
ð &
ó ð&
ðR ÷
ð 
ó ð
ô<B˜ô Bô*U˜4Ÿ9™9ô Uôp�t—y‘yô ô(-�T—Y‘Yô -ð` ÷
ð 
ó ð
ó8óñ Ð%Ó&Ø
÷

ð 

ó ó 'ð

ñ Ð%Ó&Ø
÷
ð 
ó ó 'ð
ñ Ð1Ó2Ø
÷
ð 
ó ó 3ð
ñ* Ð,Ó-Ø
÷
ð 
ó ó .ð
ñ4 Ð-Ó.Ø
÷
ð 
ó ó /ð
ñ2 Ð6Ó7Ø
÷
ð 
ó ó 8ñ
r   