blob: f0c1f757b7949167adb2426e3de699ed290b41eb [file] [log] [blame]
// third_party/blink/public/mojom/frame/frame.mojom-blink.h is auto generated by mojom_bindings_generator.py, do not edit
// Copyright 2013 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#ifndef THIRD_PARTY_BLINK_PUBLIC_MOJOM_FRAME_FRAME_MOJOM_BLINK_H_
#define THIRD_PARTY_BLINK_PUBLIC_MOJOM_FRAME_FRAME_MOJOM_BLINK_H_
#include <stdint.h>
#include <limits>
#include <type_traits>
#include <utility>
#include "third_party/abseil-cpp/absl/types/optional.h"
#include "mojo/public/cpp/bindings/clone_traits.h"
#include "mojo/public/cpp/bindings/equals_traits.h"
#include "mojo/public/cpp/bindings/lib/serialization.h"
#include "mojo/public/cpp/bindings/struct_ptr.h"
#include "mojo/public/cpp/bindings/struct_traits.h"
#include "mojo/public/cpp/bindings/union_traits.h"
#include "third_party/perfetto/include/perfetto/tracing/traced_value_forward.h"
#include "third_party/blink/public/mojom/frame/frame.mojom-shared.h"
#include "third_party/blink/public/mojom/frame/frame.mojom-blink-forward.h"
#include "cc/mojom/browser_controls_state.mojom-blink.h"
#include "cc/mojom/render_frame_metadata.mojom-blink.h"
#include "cc/mojom/touch_action.mojom-blink.h"
#include "mojo/public/mojom/base/string16.mojom-blink.h"
#include "mojo/public/mojom/base/unguessable_token.mojom-blink.h"
#include "mojo/public/mojom/base/text_direction.mojom-blink.h"
#include "mojo/public/mojom/base/time.mojom-blink.h"
#include "mojo/public/mojom/base/values.mojom-blink.h"
#include "services/data_decoder/public/mojom/resource_snapshot_for_web_bundle.mojom-blink-forward.h"
#include "services/network/public/mojom/content_security_policy.mojom-blink-forward.h"
#include "services/network/public/mojom/cross_origin_opener_policy.mojom-blink-forward.h"
#include "services/network/public/mojom/fetch_api.mojom-blink-forward.h"
#include "services/network/public/mojom/source_location.mojom-blink.h"
#include "services/network/public/mojom/url_request.mojom-blink.h"
#include "services/network/public/mojom/web_sandbox_flags.mojom-blink-forward.h"
#include "services/viz/public/mojom/compositing/frame_sink_id.mojom-blink.h"
#include "skia/public/mojom/skcolor.mojom-blink.h"
#include "third_party/blink/public/mojom/blob/blob.mojom-blink-forward.h"
#include "third_party/blink/public/mojom/blob/blob_url_store.mojom-blink-forward.h"
#include "third_party/blink/public/mojom/messaging/transferable_message.mojom-blink.h"
#include "third_party/blink/public/mojom/close_watcher/close_listener.mojom-blink-forward.h"
#include "third_party/blink/public/mojom/choosers/popup_menu.mojom-blink-forward.h"
#include "third_party/blink/public/mojom/context_menu/context_menu.mojom-blink.h"
#include "third_party/blink/public/mojom/conversions/conversions.mojom-blink.h"
#include "third_party/blink/public/mojom/css/preferred_color_scheme.mojom-blink-forward.h"
#include "third_party/blink/public/mojom/devtools/console_message.mojom-blink-forward.h"
#include "third_party/blink/public/mojom/devtools/devtools_agent.mojom-blink-forward.h"
#include "third_party/blink/public/mojom/devtools/inspector_issue.mojom-blink-forward.h"
#include "third_party/blink/public/mojom/permissions_policy/permissions_policy.mojom-blink.h"
#include "third_party/blink/public/mojom/favicon/favicon_url.mojom-blink-forward.h"
#include "third_party/blink/public/mojom/fetch/fetch_api_request.mojom-blink-forward.h"
#include "third_party/blink/public/mojom/frame/blocked_navigation_types.mojom-blink-forward.h"
#include "third_party/blink/public/mojom/frame/frame_owner_properties.mojom-blink-forward.h"
#include "third_party/blink/public/mojom/frame/frame_policy.mojom-blink.h"
#include "third_party/blink/public/mojom/frame/frame_visual_properties.mojom-blink.h"
#include "third_party/blink/public/mojom/frame/fullscreen.mojom-blink-forward.h"
#include "third_party/blink/public/mojom/frame/intrinsic_sizing_info.mojom-blink-forward.h"
#include "third_party/blink/public/mojom/frame/lifecycle.mojom-blink-forward.h"
#include "third_party/blink/public/mojom/frame/media_player_action.mojom-blink-forward.h"
#include "third_party/blink/public/mojom/frame/policy_container.mojom-blink-forward.h"
#include "third_party/blink/public/mojom/frame/reporting_observer.mojom-blink-forward.h"
#include "third_party/blink/public/mojom/frame/sudden_termination_disabler_type.mojom-blink-forward.h"
#include "third_party/blink/public/mojom/frame/text_autosizer_page_info.mojom-blink-forward.h"
#include "third_party/blink/public/mojom/frame/triggering_event_info.mojom-blink-forward.h"
#include "third_party/blink/public/mojom/frame/user_activation_notification_type.mojom-blink-forward.h"
#include "third_party/blink/public/mojom/frame/user_activation_update_types.mojom-blink-forward.h"
#include "third_party/blink/public/mojom/frame/viewport_intersection_state.mojom-blink-forward.h"
#include "third_party/blink/public/mojom/input/focus_type.mojom-blink-forward.h"
#include "third_party/blink/public/mojom/input/scroll_direction.mojom-blink-forward.h"
#include "third_party/blink/public/mojom/messaging/delegated_capability.mojom-blink-forward.h"
#include "third_party/blink/public/mojom/navigation/navigation_api_history_entry_arrays.mojom-blink-forward.h"
#include "third_party/blink/public/mojom/navigation/navigation_policy.mojom-blink.h"
#include "third_party/blink/public/mojom/loader/referrer.mojom-blink.h"
#include "third_party/blink/public/mojom/opengraph/metadata.mojom-blink-forward.h"
#include "third_party/blink/public/mojom/widget/platform_widget.mojom-blink-forward.h"
#include "third_party/blink/public/mojom/page/widget.mojom-blink-forward.h"
#include "third_party/blink/public/mojom/portal/portal.mojom-blink-forward.h"
#include "third_party/blink/public/mojom/scroll/scroll_into_view_params.mojom-blink-forward.h"
#include "third_party/blink/public/mojom/security_context/insecure_request_policy.mojom-blink-forward.h"
#include "third_party/blink/public/mojom/timing/resource_timing.mojom-blink-forward.h"
#include "third_party/blink/public/mojom/tokens/tokens.mojom-blink.h"
#include "third_party/blink/public/mojom/use_counter/metrics/web_feature.mojom-blink-forward.h"
#include "ui/base/mojom/window_open_disposition.mojom-blink-forward.h"
#include "ui/events/mojom/scroll_granularity.mojom-blink.h"
#include "ui/gfx/geometry/mojom/geometry.mojom-blink.h"
#include "ui/gfx/range/mojom/range.mojom-blink.h"
#include "url/mojom/origin.mojom-blink.h"
#include "url/mojom/url.mojom-blink.h"
#include "mojo/public/cpp/bindings/lib/wtf_clone_equals_util.h"
#include "mojo/public/cpp/bindings/lib/wtf_hash_util.h"
#include "third_party/blink/renderer/platform/wtf/hash_functions.h"
#include "third_party/blink/renderer/platform/wtf/text/wtf_string.h"
#include "mojo/public/cpp/bindings/lib/control_message_handler.h"
#include "mojo/public/cpp/bindings/raw_ptr_impl_ref_traits.h"
#include "third_party/blink/renderer/core/core_export.h"
#ifdef KYTHE_IS_RUNNING
#pragma kythe_inline_metadata "Metadata comment"
#endif
namespace WTF {
struct blink_mojom_internal_PluginActionType_DataHashFn {
static unsigned GetHash(const ::blink::mojom::PluginActionType& value) {
using utype = std::underlying_type<::blink::mojom::PluginActionType>::type;
return DefaultHash<utype>::Hash().GetHash(static_cast<utype>(value));
}
static bool Equal(const ::blink::mojom::PluginActionType& left, const ::blink::mojom::PluginActionType& right) {
return left == right;
}
static const bool safe_to_compare_to_empty_or_deleted = true;
};
template <>
struct HashTraits<::blink::mojom::PluginActionType>
: public GenericHashTraits<::blink::mojom::PluginActionType> {
static_assert(true,
"-1000000 is a reserved enum value");
static_assert(true,
"-1000001 is a reserved enum value");
static const bool kEmptyValueIsZero = false;
static ::blink::mojom::PluginActionType EmptyValue() { return static_cast<::blink::mojom::PluginActionType>(-1000000); }
static void ConstructDeletedValue(::blink::mojom::PluginActionType& slot, bool) {
slot = static_cast<::blink::mojom::PluginActionType>(-1000001);
}
static bool IsDeletedValue(const ::blink::mojom::PluginActionType& value) {
return value == static_cast<::blink::mojom::PluginActionType>(-1000001);
}
};
} // namespace WTF
namespace WTF {
struct blink_mojom_internal_JavaScriptExecutionResultType_DataHashFn {
static unsigned GetHash(const ::blink::mojom::JavaScriptExecutionResultType& value) {
using utype = std::underlying_type<::blink::mojom::JavaScriptExecutionResultType>::type;
return DefaultHash<utype>::Hash().GetHash(static_cast<utype>(value));
}
static bool Equal(const ::blink::mojom::JavaScriptExecutionResultType& left, const ::blink::mojom::JavaScriptExecutionResultType& right) {
return left == right;
}
static const bool safe_to_compare_to_empty_or_deleted = true;
};
template <>
struct HashTraits<::blink::mojom::JavaScriptExecutionResultType>
: public GenericHashTraits<::blink::mojom::JavaScriptExecutionResultType> {
static_assert(true,
"-1000000 is a reserved enum value");
static_assert(true,
"-1000001 is a reserved enum value");
static const bool kEmptyValueIsZero = false;
static ::blink::mojom::JavaScriptExecutionResultType EmptyValue() { return static_cast<::blink::mojom::JavaScriptExecutionResultType>(-1000000); }
static void ConstructDeletedValue(::blink::mojom::JavaScriptExecutionResultType& slot, bool) {
slot = static_cast<::blink::mojom::JavaScriptExecutionResultType>(-1000001);
}
static bool IsDeletedValue(const ::blink::mojom::JavaScriptExecutionResultType& value) {
return value == static_cast<::blink::mojom::JavaScriptExecutionResultType>(-1000001);
}
};
} // namespace WTF
namespace blink {
namespace mojom {
namespace blink {
class KeepAliveHandleProxy;
template <typename ImplRefTraits>
class KeepAliveHandleStub;
class KeepAliveHandleRequestValidator;
// @generated_from: blink.mojom.KeepAliveHandle
class CORE_EXPORT KeepAliveHandle
: public KeepAliveHandleInterfaceBase {
public:
static const char Name_[];
static std::pair<uint32_t, const void*> MessageToMethodInfo_(mojo::Message& message);
static const char* MessageToMethodName_(mojo::Message& message);
static constexpr uint32_t Version_ = 0;
static constexpr bool PassesAssociatedKinds_ = false;
static constexpr bool HasSyncMethods_ = false;
static constexpr bool HasUninterruptableMethods_ = false;
using Base_ = KeepAliveHandleInterfaceBase;
using Proxy_ = KeepAliveHandleProxy;
template <typename ImplRefTraits>
using Stub_ = KeepAliveHandleStub<ImplRefTraits>;
using RequestValidator_ = KeepAliveHandleRequestValidator;
using ResponseValidator_ = mojo::PassThroughFilter;
enum MethodMinVersions : uint32_t {
};
// crbug.com/1340245 - this causes binary size bloat on Fuchsia, and we're OK
// with not having this data in traces there.
#if !BUILDFLAG(IS_FUCHSIA)
#endif // !BUILDFLAG(IS_FUCHSIA)
virtual ~KeepAliveHandle() = default;
};
class KeepAliveHandleFactoryProxy;
template <typename ImplRefTraits>
class KeepAliveHandleFactoryStub;
class KeepAliveHandleFactoryRequestValidator;
// @generated_from: blink.mojom.KeepAliveHandleFactory
class CORE_EXPORT KeepAliveHandleFactory
: public KeepAliveHandleFactoryInterfaceBase {
public:
static const char Name_[];
static std::pair<uint32_t, const void*> MessageToMethodInfo_(mojo::Message& message);
static const char* MessageToMethodName_(mojo::Message& message);
static constexpr uint32_t Version_ = 0;
static constexpr bool PassesAssociatedKinds_ = false;
static constexpr bool HasSyncMethods_ = false;
static constexpr bool HasUninterruptableMethods_ = false;
using Base_ = KeepAliveHandleFactoryInterfaceBase;
using Proxy_ = KeepAliveHandleFactoryProxy;
template <typename ImplRefTraits>
using Stub_ = KeepAliveHandleFactoryStub<ImplRefTraits>;
using RequestValidator_ = KeepAliveHandleFactoryRequestValidator;
using ResponseValidator_ = mojo::PassThroughFilter;
enum MethodMinVersions : uint32_t {
kIssueKeepAliveHandleMinVersion = 0,
};
// crbug.com/1340245 - this causes binary size bloat on Fuchsia, and we're OK
// with not having this data in traces there.
#if !BUILDFLAG(IS_FUCHSIA)
struct IssueKeepAliveHandle_Sym {
NOINLINE static void IPCSymbol();
};
#endif // !BUILDFLAG(IS_FUCHSIA)
virtual ~KeepAliveHandleFactory() = default;
// @generated_from: blink.mojom.KeepAliveHandleFactory.IssueKeepAliveHandle
virtual void IssueKeepAliveHandle(::mojo::PendingReceiver<KeepAliveHandle> keep_alive_handle) = 0;
};
class LocalFrameHostProxy;
template <typename ImplRefTraits>
class LocalFrameHostStub;
class LocalFrameHostRequestValidator;
class LocalFrameHostResponseValidator;
// @generated_from: blink.mojom.LocalFrameHost
class CORE_EXPORT LocalFrameHost
: public LocalFrameHostInterfaceBase {
public:
static const char Name_[];
static std::pair<uint32_t, const void*> MessageToMethodInfo_(mojo::Message& message);
static const char* MessageToMethodName_(mojo::Message& message);
static constexpr uint32_t Version_ = 0;
static constexpr bool PassesAssociatedKinds_ = true;
static constexpr bool HasSyncMethods_ = true;
static constexpr bool HasUninterruptableMethods_ = false;
using Base_ = LocalFrameHostInterfaceBase;
using Proxy_ = LocalFrameHostProxy;
template <typename ImplRefTraits>
using Stub_ = LocalFrameHostStub<ImplRefTraits>;
using RequestValidator_ = LocalFrameHostRequestValidator;
using ResponseValidator_ = LocalFrameHostResponseValidator;
enum MethodMinVersions : uint32_t {
kEnterFullscreenMinVersion = 0,
kExitFullscreenMinVersion = 0,
kFullscreenStateChangedMinVersion = 0,
kRegisterProtocolHandlerMinVersion = 0,
kUnregisterProtocolHandlerMinVersion = 0,
kDidDisplayInsecureContentMinVersion = 0,
kDidContainInsecureFormActionMinVersion = 0,
kMainDocumentElementAvailableMinVersion = 0,
kSetNeedsOcclusionTrackingMinVersion = 0,
kSetVirtualKeyboardOverlayPolicyMinVersion = 0,
kVisibilityChangedMinVersion = 0,
kDidChangeThemeColorMinVersion = 0,
kDidChangeBackgroundColorMinVersion = 0,
kDidFailLoadWithErrorMinVersion = 0,
kDidFocusFrameMinVersion = 0,
kDidCallFocusMinVersion = 0,
kEnforceInsecureRequestPolicyMinVersion = 0,
kEnforceInsecureNavigationsSetMinVersion = 0,
kSuddenTerminationDisablerChangedMinVersion = 0,
kHadStickyUserActivationBeforeNavigationChangedMinVersion = 0,
kScrollRectToVisibleInParentFrameMinVersion = 0,
kBubbleLogicalScrollInParentFrameMinVersion = 0,
kDidBlockNavigationMinVersion = 0,
kDidChangeLoadProgressMinVersion = 0,
kDidFinishLoadMinVersion = 0,
kDispatchLoadMinVersion = 0,
kGoToEntryAtOffsetMinVersion = 0,
kNavigateToNavigationApiKeyMinVersion = 0,
kUpdateTitleMinVersion = 0,
kUpdateUserActivationStateMinVersion = 0,
kHandleAccessibilityFindInPageResultMinVersion = 0,
kHandleAccessibilityFindInPageTerminationMinVersion = 0,
kDocumentOnLoadCompletedMinVersion = 0,
kForwardResourceTimingToParentMinVersion = 0,
kDidDispatchDOMContentLoadedEventMinVersion = 0,
kRunModalAlertDialogMinVersion = 0,
kRunModalConfirmDialogMinVersion = 0,
kRunModalPromptDialogMinVersion = 0,
kRunBeforeUnloadConfirmMinVersion = 0,
kUpdateFaviconURLMinVersion = 0,
kDownloadURLMinVersion = 0,
kFocusedElementChangedMinVersion = 0,
kTextSelectionChangedMinVersion = 0,
kShowPopupMenuMinVersion = 0,
kCreateNewPopupWidgetMinVersion = 0,
kShowContextMenuMinVersion = 0,
kDidLoadResourceFromMemoryCacheMinVersion = 0,
kDidChangeFrameOwnerPropertiesMinVersion = 0,
kDidChangeOpenerMinVersion = 0,
kDidChangeFramePolicyMinVersion = 0,
kDidChangeIframeAttributesMinVersion = 0,
kCapturePaintPreviewOfSubframeMinVersion = 0,
kSetCloseListenerMinVersion = 0,
kDetachMinVersion = 0,
kGetKeepAliveHandleFactoryMinVersion = 0,
kDidAddMessageToConsoleMinVersion = 0,
kFrameSizeChangedMinVersion = 0,
kDidUpdatePreferredColorSchemeMinVersion = 0,
kDidInferColorSchemeMinVersion = 0,
kDidChangeSrcDocMinVersion = 0,
kReceivedDelegatedCapabilityMinVersion = 0,
};
// crbug.com/1340245 - this causes binary size bloat on Fuchsia, and we're OK
// with not having this data in traces there.
#if !BUILDFLAG(IS_FUCHSIA)
struct EnterFullscreen_Sym {
NOINLINE static void IPCSymbol();
};
struct ExitFullscreen_Sym {
NOINLINE static void IPCSymbol();
};
struct FullscreenStateChanged_Sym {
NOINLINE static void IPCSymbol();
};
struct RegisterProtocolHandler_Sym {
NOINLINE static void IPCSymbol();
};
struct UnregisterProtocolHandler_Sym {
NOINLINE static void IPCSymbol();
};
struct DidDisplayInsecureContent_Sym {
NOINLINE static void IPCSymbol();
};
struct DidContainInsecureFormAction_Sym {
NOINLINE static void IPCSymbol();
};
struct MainDocumentElementAvailable_Sym {
NOINLINE static void IPCSymbol();
};
struct SetNeedsOcclusionTracking_Sym {
NOINLINE static void IPCSymbol();
};
struct SetVirtualKeyboardOverlayPolicy_Sym {
NOINLINE static void IPCSymbol();
};
struct VisibilityChanged_Sym {
NOINLINE static void IPCSymbol();
};
struct DidChangeThemeColor_Sym {
NOINLINE static void IPCSymbol();
};
struct DidChangeBackgroundColor_Sym {
NOINLINE static void IPCSymbol();
};
struct DidFailLoadWithError_Sym {
NOINLINE static void IPCSymbol();
};
struct DidFocusFrame_Sym {
NOINLINE static void IPCSymbol();
};
struct DidCallFocus_Sym {
NOINLINE static void IPCSymbol();
};
struct EnforceInsecureRequestPolicy_Sym {
NOINLINE static void IPCSymbol();
};
struct EnforceInsecureNavigationsSet_Sym {
NOINLINE static void IPCSymbol();
};
struct SuddenTerminationDisablerChanged_Sym {
NOINLINE static void IPCSymbol();
};
struct HadStickyUserActivationBeforeNavigationChanged_Sym {
NOINLINE static void IPCSymbol();
};
struct ScrollRectToVisibleInParentFrame_Sym {
NOINLINE static void IPCSymbol();
};
struct BubbleLogicalScrollInParentFrame_Sym {
NOINLINE static void IPCSymbol();
};
struct DidBlockNavigation_Sym {
NOINLINE static void IPCSymbol();
};
struct DidChangeLoadProgress_Sym {
NOINLINE static void IPCSymbol();
};
struct DidFinishLoad_Sym {
NOINLINE static void IPCSymbol();
};
struct DispatchLoad_Sym {
NOINLINE static void IPCSymbol();
};
struct GoToEntryAtOffset_Sym {
NOINLINE static void IPCSymbol();
};
struct NavigateToNavigationApiKey_Sym {
NOINLINE static void IPCSymbol();
};
struct UpdateTitle_Sym {
NOINLINE static void IPCSymbol();
};
struct UpdateUserActivationState_Sym {
NOINLINE static void IPCSymbol();
};
struct HandleAccessibilityFindInPageResult_Sym {
NOINLINE static void IPCSymbol();
};
struct HandleAccessibilityFindInPageTermination_Sym {
NOINLINE static void IPCSymbol();
};
struct DocumentOnLoadCompleted_Sym {
NOINLINE static void IPCSymbol();
};
struct ForwardResourceTimingToParent_Sym {
NOINLINE static void IPCSymbol();
};
struct DidDispatchDOMContentLoadedEvent_Sym {
NOINLINE static void IPCSymbol();
};
struct RunModalAlertDialog_Sym {
NOINLINE static void IPCSymbol();
};
struct RunModalConfirmDialog_Sym {
NOINLINE static void IPCSymbol();
};
struct RunModalPromptDialog_Sym {
NOINLINE static void IPCSymbol();
};
struct RunBeforeUnloadConfirm_Sym {
NOINLINE static void IPCSymbol();
};
struct UpdateFaviconURL_Sym {
NOINLINE static void IPCSymbol();
};
struct DownloadURL_Sym {
NOINLINE static void IPCSymbol();
};
struct FocusedElementChanged_Sym {
NOINLINE static void IPCSymbol();
};
struct TextSelectionChanged_Sym {
NOINLINE static void IPCSymbol();
};
struct ShowPopupMenu_Sym {
NOINLINE static void IPCSymbol();
};
struct CreateNewPopupWidget_Sym {
NOINLINE static void IPCSymbol();
};
struct ShowContextMenu_Sym {
NOINLINE static void IPCSymbol();
};
struct DidLoadResourceFromMemoryCache_Sym {
NOINLINE static void IPCSymbol();
};
struct DidChangeFrameOwnerProperties_Sym {
NOINLINE static void IPCSymbol();
};
struct DidChangeOpener_Sym {
NOINLINE static void IPCSymbol();
};
struct DidChangeFramePolicy_Sym {
NOINLINE static void IPCSymbol();
};
struct DidChangeIframeAttributes_Sym {
NOINLINE static void IPCSymbol();
};
struct CapturePaintPreviewOfSubframe_Sym {
NOINLINE static void IPCSymbol();
};
struct SetCloseListener_Sym {
NOINLINE static void IPCSymbol();
};
struct Detach_Sym {
NOINLINE static void IPCSymbol();
};
struct GetKeepAliveHandleFactory_Sym {
NOINLINE static void IPCSymbol();
};
struct DidAddMessageToConsole_Sym {
NOINLINE static void IPCSymbol();
};
struct FrameSizeChanged_Sym {
NOINLINE static void IPCSymbol();
};
struct DidUpdatePreferredColorScheme_Sym {
NOINLINE static void IPCSymbol();
};
struct DidInferColorScheme_Sym {
NOINLINE static void IPCSymbol();
};
struct DidChangeSrcDoc_Sym {
NOINLINE static void IPCSymbol();
};
struct ReceivedDelegatedCapability_Sym {
NOINLINE static void IPCSymbol();
};
#endif // !BUILDFLAG(IS_FUCHSIA)
virtual ~LocalFrameHost() = default;
using EnterFullscreenCallback = base::OnceCallback<void(bool)>;
// @generated_from: blink.mojom.LocalFrameHost.EnterFullscreen
virtual void EnterFullscreen(::blink::mojom::blink::FullscreenOptionsPtr options, EnterFullscreenCallback callback) = 0;
// @generated_from: blink.mojom.LocalFrameHost.ExitFullscreen
virtual void ExitFullscreen() = 0;
// @generated_from: blink.mojom.LocalFrameHost.FullscreenStateChanged
virtual void FullscreenStateChanged(bool is_fullscreen, ::blink::mojom::blink::FullscreenOptionsPtr options) = 0;
// @generated_from: blink.mojom.LocalFrameHost.RegisterProtocolHandler
virtual void RegisterProtocolHandler(const WTF::String& scheme, const ::blink::KURL& url, bool user_gesture) = 0;
// @generated_from: blink.mojom.LocalFrameHost.UnregisterProtocolHandler
virtual void UnregisterProtocolHandler(const WTF::String& scheme, const ::blink::KURL& url, bool user_gesture) = 0;
// @generated_from: blink.mojom.LocalFrameHost.DidDisplayInsecureContent
virtual void DidDisplayInsecureContent() = 0;
// @generated_from: blink.mojom.LocalFrameHost.DidContainInsecureFormAction
virtual void DidContainInsecureFormAction() = 0;
// @generated_from: blink.mojom.LocalFrameHost.MainDocumentElementAvailable
virtual void MainDocumentElementAvailable(bool uses_temporary_zoom_level) = 0;
// @generated_from: blink.mojom.LocalFrameHost.SetNeedsOcclusionTracking
virtual void SetNeedsOcclusionTracking(bool needs_tracking) = 0;
// @generated_from: blink.mojom.LocalFrameHost.SetVirtualKeyboardOverlayPolicy
virtual void SetVirtualKeyboardOverlayPolicy(bool vk_overlays_content) = 0;
// @generated_from: blink.mojom.LocalFrameHost.VisibilityChanged
virtual void VisibilityChanged(::blink::mojom::blink::FrameVisibility visibility) = 0;
// @generated_from: blink.mojom.LocalFrameHost.DidChangeThemeColor
virtual void DidChangeThemeColor(absl::optional<::SkColor> theme_color) = 0;
// @generated_from: blink.mojom.LocalFrameHost.DidChangeBackgroundColor
virtual void DidChangeBackgroundColor(::SkColor background_color, bool color_adjust) = 0;
// @generated_from: blink.mojom.LocalFrameHost.DidFailLoadWithError
virtual void DidFailLoadWithError(const ::blink::KURL& url, int32_t error_code) = 0;
// @generated_from: blink.mojom.LocalFrameHost.DidFocusFrame
virtual void DidFocusFrame() = 0;
// @generated_from: blink.mojom.LocalFrameHost.DidCallFocus
virtual void DidCallFocus() = 0;
// @generated_from: blink.mojom.LocalFrameHost.EnforceInsecureRequestPolicy
virtual void EnforceInsecureRequestPolicy(::blink::mojom::blink::InsecureRequestPolicy policy_bitmap) = 0;
// @generated_from: blink.mojom.LocalFrameHost.EnforceInsecureNavigationsSet
virtual void EnforceInsecureNavigationsSet(const WTF::Vector<uint32_t>& set) = 0;
// @generated_from: blink.mojom.LocalFrameHost.SuddenTerminationDisablerChanged
virtual void SuddenTerminationDisablerChanged(bool present, ::blink::mojom::blink::SuddenTerminationDisablerType disabler_type) = 0;
// @generated_from: blink.mojom.LocalFrameHost.HadStickyUserActivationBeforeNavigationChanged
virtual void HadStickyUserActivationBeforeNavigationChanged(bool has_gesture) = 0;
// @generated_from: blink.mojom.LocalFrameHost.ScrollRectToVisibleInParentFrame
virtual void ScrollRectToVisibleInParentFrame(const ::gfx::RectF& rect_to_scroll, ::blink::mojom::blink::ScrollIntoViewParamsPtr params) = 0;
// @generated_from: blink.mojom.LocalFrameHost.BubbleLogicalScrollInParentFrame
virtual void BubbleLogicalScrollInParentFrame(::blink::mojom::blink::ScrollDirection direction, ::ui::ScrollGranularity granularity) = 0;
// @generated_from: blink.mojom.LocalFrameHost.DidBlockNavigation
virtual void DidBlockNavigation(const ::blink::KURL& blocked_url, const ::blink::KURL& initiator_url, ::blink::mojom::blink::NavigationBlockedReason reason) = 0;
// @generated_from: blink.mojom.LocalFrameHost.DidChangeLoadProgress
virtual void DidChangeLoadProgress(double load_progress) = 0;
// @generated_from: blink.mojom.LocalFrameHost.DidFinishLoad
virtual void DidFinishLoad(const ::blink::KURL& validated_url) = 0;
// @generated_from: blink.mojom.LocalFrameHost.DispatchLoad
virtual void DispatchLoad() = 0;
// @generated_from: blink.mojom.LocalFrameHost.GoToEntryAtOffset
virtual void GoToEntryAtOffset(int32_t offset, bool has_user_gesture) = 0;
// @generated_from: blink.mojom.LocalFrameHost.NavigateToNavigationApiKey
virtual void NavigateToNavigationApiKey(const WTF::String& key, bool has_user_gesture) = 0;
// @generated_from: blink.mojom.LocalFrameHost.UpdateTitle
virtual void UpdateTitle(const ::WTF::String& title, ::base::i18n::TextDirection title_direction) = 0;
// @generated_from: blink.mojom.LocalFrameHost.UpdateUserActivationState
virtual void UpdateUserActivationState(::blink::mojom::blink::UserActivationUpdateType update_type, ::blink::mojom::blink::UserActivationNotificationType notification_type) = 0;
// @generated_from: blink.mojom.LocalFrameHost.HandleAccessibilityFindInPageResult
virtual void HandleAccessibilityFindInPageResult(FindInPageResultAXParamsPtr params) = 0;
// @generated_from: blink.mojom.LocalFrameHost.HandleAccessibilityFindInPageTermination
virtual void HandleAccessibilityFindInPageTermination() = 0;
// @generated_from: blink.mojom.LocalFrameHost.DocumentOnLoadCompleted
virtual void DocumentOnLoadCompleted() = 0;
// @generated_from: blink.mojom.LocalFrameHost.ForwardResourceTimingToParent
virtual void ForwardResourceTimingToParent(::blink::mojom::blink::ResourceTimingInfoPtr timing) = 0;
// @generated_from: blink.mojom.LocalFrameHost.DidDispatchDOMContentLoadedEvent
virtual void DidDispatchDOMContentLoadedEvent() = 0;
// Sync method. This signature is used by the client side; the service side
// should implement the signature with callback below.
// @generated_from: blink.mojom.LocalFrameHost.RunModalAlertDialog
virtual bool RunModalAlertDialog(const ::WTF::String& alert_message, bool disable_third_party_subframe_suppresion);
using RunModalAlertDialogCallback = base::OnceCallback<void()>;
// @generated_from: blink.mojom.LocalFrameHost.RunModalAlertDialog
virtual void RunModalAlertDialog(const ::WTF::String& alert_message, bool disable_third_party_subframe_suppresion, RunModalAlertDialogCallback callback) = 0;
// Sync method. This signature is used by the client side; the service side
// should implement the signature with callback below.
// @generated_from: blink.mojom.LocalFrameHost.RunModalConfirmDialog
virtual bool RunModalConfirmDialog(const ::WTF::String& alert_message, bool disable_third_party_subframe_suppresion, bool* out_success);
using RunModalConfirmDialogCallback = base::OnceCallback<void(bool)>;
// @generated_from: blink.mojom.LocalFrameHost.RunModalConfirmDialog
virtual void RunModalConfirmDialog(const ::WTF::String& alert_message, bool disable_third_party_subframe_suppresion, RunModalConfirmDialogCallback callback) = 0;
// Sync method. This signature is used by the client side; the service side
// should implement the signature with callback below.
// @generated_from: blink.mojom.LocalFrameHost.RunModalPromptDialog
virtual bool RunModalPromptDialog(const ::WTF::String& alert_message, const ::WTF::String& default_value, bool disable_third_party_subframe_suppresion, bool* out_success, ::WTF::String* out_result);
using RunModalPromptDialogCallback = base::OnceCallback<void(bool, const ::WTF::String&)>;
// @generated_from: blink.mojom.LocalFrameHost.RunModalPromptDialog
virtual void RunModalPromptDialog(const ::WTF::String& alert_message, const ::WTF::String& default_value, bool disable_third_party_subframe_suppresion, RunModalPromptDialogCallback callback) = 0;
// Sync method. This signature is used by the client side; the service side
// should implement the signature with callback below.
// @generated_from: blink.mojom.LocalFrameHost.RunBeforeUnloadConfirm
virtual bool RunBeforeUnloadConfirm(bool is_reload, bool* out_success);
using RunBeforeUnloadConfirmCallback = base::OnceCallback<void(bool)>;
// @generated_from: blink.mojom.LocalFrameHost.RunBeforeUnloadConfirm
virtual void RunBeforeUnloadConfirm(bool is_reload, RunBeforeUnloadConfirmCallback callback) = 0;
// @generated_from: blink.mojom.LocalFrameHost.UpdateFaviconURL
virtual void UpdateFaviconURL(WTF::Vector<::blink::mojom::blink::FaviconURLPtr> favicon_urls) = 0;
// @generated_from: blink.mojom.LocalFrameHost.DownloadURL
virtual void DownloadURL(DownloadURLParamsPtr params) = 0;
// @generated_from: blink.mojom.LocalFrameHost.FocusedElementChanged
virtual void FocusedElementChanged(bool is_editable_element, const ::gfx::Rect& bounds_in_frame_widget, ::blink::mojom::blink::FocusType focus_type) = 0;
// @generated_from: blink.mojom.LocalFrameHost.TextSelectionChanged
virtual void TextSelectionChanged(const ::WTF::String& text, uint32_t offset, const ::gfx::Range& range) = 0;
// @generated_from: blink.mojom.LocalFrameHost.ShowPopupMenu
virtual void ShowPopupMenu(::mojo::PendingRemote<::blink::mojom::blink::PopupMenuClient> popup_client, const ::gfx::Rect& bounds, int32_t item_height, double font_size, int32_t selected_item, WTF::Vector<::blink::mojom::blink::MenuItemPtr> menu_items, bool right_aligned, bool allow_multiple_selection) = 0;
// @generated_from: blink.mojom.LocalFrameHost.CreateNewPopupWidget
virtual void CreateNewPopupWidget(::mojo::PendingAssociatedReceiver<::blink::mojom::blink::PopupWidgetHost> popup_host, ::mojo::PendingAssociatedReceiver<::blink::mojom::blink::WidgetHost> blink_widget_host, ::mojo::PendingAssociatedRemote<::blink::mojom::blink::Widget> blink_widget) = 0;
// @generated_from: blink.mojom.LocalFrameHost.ShowContextMenu
virtual void ShowContextMenu(::mojo::PendingAssociatedRemote<::blink::mojom::blink::ContextMenuClient> client, const ::blink::UntrustworthyContextMenuParams& params) = 0;
// @generated_from: blink.mojom.LocalFrameHost.DidLoadResourceFromMemoryCache
virtual void DidLoadResourceFromMemoryCache(const ::blink::KURL& url, const WTF::String& http_method, const WTF::String& mime_type, ::network::mojom::blink::RequestDestination request_destination, bool include_credentials) = 0;
// @generated_from: blink.mojom.LocalFrameHost.DidChangeFrameOwnerProperties
virtual void DidChangeFrameOwnerProperties(const ::blink::FrameToken& child_frame_token, ::blink::mojom::blink::FrameOwnerPropertiesPtr frame_owner_properties) = 0;
// @generated_from: blink.mojom.LocalFrameHost.DidChangeOpener
virtual void DidChangeOpener(const absl::optional<::blink::LocalFrameToken>& opener_frame) = 0;
// @generated_from: blink.mojom.LocalFrameHost.DidChangeFramePolicy
virtual void DidChangeFramePolicy(const ::blink::FrameToken& child_frame_token, const ::blink::FramePolicy& frame_policy) = 0;
// @generated_from: blink.mojom.LocalFrameHost.DidChangeIframeAttributes
virtual void DidChangeIframeAttributes(const ::blink::FrameToken& child_frame_token, ::network::mojom::blink::ContentSecurityPolicyPtr parsed_csp_attribute, bool anonymous) = 0;
// @generated_from: blink.mojom.LocalFrameHost.CapturePaintPreviewOfSubframe
virtual void CapturePaintPreviewOfSubframe(const ::gfx::Rect& clip_rect, const ::base::UnguessableToken& guid) = 0;
// @generated_from: blink.mojom.LocalFrameHost.SetCloseListener
virtual void SetCloseListener(::mojo::PendingRemote<::blink::mojom::blink::CloseListener> listener) = 0;
// @generated_from: blink.mojom.LocalFrameHost.Detach
virtual void Detach() = 0;
// @generated_from: blink.mojom.LocalFrameHost.GetKeepAliveHandleFactory
virtual void GetKeepAliveHandleFactory(::mojo::PendingReceiver<KeepAliveHandleFactory> factory) = 0;
// @generated_from: blink.mojom.LocalFrameHost.DidAddMessageToConsole
virtual void DidAddMessageToConsole(::blink::mojom::blink::ConsoleMessageLevel log_level, const ::WTF::String& msg, uint32_t line_number, const ::WTF::String& source_id, const ::WTF::String& untrusted_stack_trace) = 0;
// @generated_from: blink.mojom.LocalFrameHost.FrameSizeChanged
virtual void FrameSizeChanged(const ::gfx::Size& size) = 0;
// @generated_from: blink.mojom.LocalFrameHost.DidUpdatePreferredColorScheme
virtual void DidUpdatePreferredColorScheme(::blink::mojom::blink::PreferredColorScheme preferred_color_scheme) = 0;
// @generated_from: blink.mojom.LocalFrameHost.DidInferColorScheme
virtual void DidInferColorScheme(::blink::mojom::blink::PreferredColorScheme color_scheme) = 0;
// @generated_from: blink.mojom.LocalFrameHost.DidChangeSrcDoc
virtual void DidChangeSrcDoc(const ::blink::FrameToken& child_frame_token, const WTF::String& srcdoc_value) = 0;
// @generated_from: blink.mojom.LocalFrameHost.ReceivedDelegatedCapability
virtual void ReceivedDelegatedCapability(::blink::mojom::blink::DelegatedCapability delegated_capability) = 0;
};
class LocalFrameProxy;
template <typename ImplRefTraits>
class LocalFrameStub;
class LocalFrameRequestValidator;
class LocalFrameResponseValidator;
// @generated_from: blink.mojom.LocalFrame
class CORE_EXPORT LocalFrame
: public LocalFrameInterfaceBase {
public:
static const char Name_[];
static std::pair<uint32_t, const void*> MessageToMethodInfo_(mojo::Message& message);
static const char* MessageToMethodName_(mojo::Message& message);
static constexpr uint32_t Version_ = 0;
static constexpr bool PassesAssociatedKinds_ = true;
static constexpr bool HasSyncMethods_ = false;
static constexpr bool HasUninterruptableMethods_ = false;
using Base_ = LocalFrameInterfaceBase;
using Proxy_ = LocalFrameProxy;
template <typename ImplRefTraits>
using Stub_ = LocalFrameStub<ImplRefTraits>;
using RequestValidator_ = LocalFrameRequestValidator;
using ResponseValidator_ = LocalFrameResponseValidator;
enum MethodMinVersions : uint32_t {
kGetTextSurroundingSelectionMinVersion = 0,
kSendInterventionReportMinVersion = 0,
kSetFrameOwnerPropertiesMinVersion = 0,
kNotifyUserActivationMinVersion = 0,
kNotifyVirtualKeyboardOverlayRectMinVersion = 0,
kAddMessageToConsoleMinVersion = 0,
kAddInspectorIssueMinVersion = 0,
kSwapInImmediatelyMinVersion = 0,
kCheckCompletedMinVersion = 0,
kStopLoadingMinVersion = 0,
kCollapseMinVersion = 0,
kEnableViewSourceModeMinVersion = 0,
kFocusMinVersion = 0,
kClearFocusedElementMinVersion = 0,
kGetResourceSnapshotForWebBundleMinVersion = 0,
kCopyImageAtMinVersion = 0,
kSaveImageAtMinVersion = 0,
kReportBlinkFeatureUsageMinVersion = 0,
kRenderFallbackContentMinVersion = 0,
kRenderFallbackContentWithResourceTimingMinVersion = 0,
kBeforeUnloadMinVersion = 0,
kMediaPlayerActionAtMinVersion = 0,
kPluginActionAtMinVersion = 0,
kAdvanceFocusInFrameMinVersion = 0,
kAdvanceFocusForIMEMinVersion = 0,
kReportContentSecurityPolicyViolationMinVersion = 0,
kDidUpdateFramePolicyMinVersion = 0,
kPostMessageEventMinVersion = 0,
kJavaScriptMethodExecuteRequestMinVersion = 0,
kJavaScriptExecuteRequestMinVersion = 0,
kJavaScriptExecuteRequestForTestsMinVersion = 0,
kJavaScriptExecuteRequestInIsolatedWorldMinVersion = 0,
kBindReportingObserverMinVersion = 0,
kUpdateOpenerMinVersion = 0,
kGetSavableResourceLinksMinVersion = 0,
kMixedContentFoundMinVersion = 0,
kBindDevToolsAgentMinVersion = 0,
kExtractSmartClipDataMinVersion = 0,
kHandleRendererDebugURLMinVersion = 0,
kGetCanonicalUrlForSharingMinVersion = 0,
kGetOpenGraphMetadataMinVersion = 0,
kSetNavigationApiHistoryEntriesForRestoreMinVersion = 0,
};
// crbug.com/1340245 - this causes binary size bloat on Fuchsia, and we're OK
// with not having this data in traces there.
#if !BUILDFLAG(IS_FUCHSIA)
struct GetTextSurroundingSelection_Sym {
NOINLINE static void IPCSymbol();
};
struct SendInterventionReport_Sym {
NOINLINE static void IPCSymbol();
};
struct SetFrameOwnerProperties_Sym {
NOINLINE static void IPCSymbol();
};
struct NotifyUserActivation_Sym {
NOINLINE static void IPCSymbol();
};
struct NotifyVirtualKeyboardOverlayRect_Sym {
NOINLINE static void IPCSymbol();
};
struct AddMessageToConsole_Sym {
NOINLINE static void IPCSymbol();
};
struct AddInspectorIssue_Sym {
NOINLINE static void IPCSymbol();
};
struct SwapInImmediately_Sym {
NOINLINE static void IPCSymbol();
};
struct CheckCompleted_Sym {
NOINLINE static void IPCSymbol();
};
struct StopLoading_Sym {
NOINLINE static void IPCSymbol();
};
struct Collapse_Sym {
NOINLINE static void IPCSymbol();
};
struct EnableViewSourceMode_Sym {
NOINLINE static void IPCSymbol();
};
struct Focus_Sym {
NOINLINE static void IPCSymbol();
};
struct ClearFocusedElement_Sym {
NOINLINE static void IPCSymbol();
};
struct GetResourceSnapshotForWebBundle_Sym {
NOINLINE static void IPCSymbol();
};
struct CopyImageAt_Sym {
NOINLINE static void IPCSymbol();
};
struct SaveImageAt_Sym {
NOINLINE static void IPCSymbol();
};
struct ReportBlinkFeatureUsage_Sym {
NOINLINE static void IPCSymbol();
};
struct RenderFallbackContent_Sym {
NOINLINE static void IPCSymbol();
};
struct RenderFallbackContentWithResourceTiming_Sym {
NOINLINE static void IPCSymbol();
};
struct BeforeUnload_Sym {
NOINLINE static void IPCSymbol();
};
struct MediaPlayerActionAt_Sym {
NOINLINE static void IPCSymbol();
};
struct PluginActionAt_Sym {
NOINLINE static void IPCSymbol();
};
struct AdvanceFocusInFrame_Sym {
NOINLINE static void IPCSymbol();
};
struct AdvanceFocusForIME_Sym {
NOINLINE static void IPCSymbol();
};
struct ReportContentSecurityPolicyViolation_Sym {
NOINLINE static void IPCSymbol();
};
struct DidUpdateFramePolicy_Sym {
NOINLINE static void IPCSymbol();
};
struct PostMessageEvent_Sym {
NOINLINE static void IPCSymbol();
};
struct JavaScriptMethodExecuteRequest_Sym {
NOINLINE static void IPCSymbol();
};
struct JavaScriptExecuteRequest_Sym {
NOINLINE static void IPCSymbol();
};
struct JavaScriptExecuteRequestForTests_Sym {
NOINLINE static void IPCSymbol();
};
struct JavaScriptExecuteRequestInIsolatedWorld_Sym {
NOINLINE static void IPCSymbol();
};
struct BindReportingObserver_Sym {
NOINLINE static void IPCSymbol();
};
struct UpdateOpener_Sym {
NOINLINE static void IPCSymbol();
};
struct GetSavableResourceLinks_Sym {
NOINLINE static void IPCSymbol();
};
struct MixedContentFound_Sym {
NOINLINE static void IPCSymbol();
};
struct BindDevToolsAgent_Sym {
NOINLINE static void IPCSymbol();
};
struct ExtractSmartClipData_Sym {
NOINLINE static void IPCSymbol();
};
struct HandleRendererDebugURL_Sym {
NOINLINE static void IPCSymbol();
};
struct GetCanonicalUrlForSharing_Sym {
NOINLINE static void IPCSymbol();
};
struct GetOpenGraphMetadata_Sym {
NOINLINE static void IPCSymbol();
};
struct SetNavigationApiHistoryEntriesForRestore_Sym {
NOINLINE static void IPCSymbol();
};
#endif // !BUILDFLAG(IS_FUCHSIA)
virtual ~LocalFrame() = default;
using GetTextSurroundingSelectionCallback = base::OnceCallback<void(const ::WTF::String&, uint32_t, uint32_t)>;
// @generated_from: blink.mojom.LocalFrame.GetTextSurroundingSelection
virtual void GetTextSurroundingSelection(uint32_t max_length, GetTextSurroundingSelectionCallback callback) = 0;
// @generated_from: blink.mojom.LocalFrame.SendInterventionReport
virtual void SendInterventionReport(const WTF::String& id, const WTF::String& message) = 0;
// @generated_from: blink.mojom.LocalFrame.SetFrameOwnerProperties
virtual void SetFrameOwnerProperties(::blink::mojom::blink::FrameOwnerPropertiesPtr properties) = 0;
// @generated_from: blink.mojom.LocalFrame.NotifyUserActivation
virtual void NotifyUserActivation(::blink::mojom::blink::UserActivationNotificationType notification_type) = 0;
// @generated_from: blink.mojom.LocalFrame.NotifyVirtualKeyboardOverlayRect
virtual void NotifyVirtualKeyboardOverlayRect(const ::gfx::Rect& keyboard_rect) = 0;
// @generated_from: blink.mojom.LocalFrame.AddMessageToConsole
virtual void AddMessageToConsole(::blink::mojom::blink::ConsoleMessageLevel level, const WTF::String& message, bool discard_duplicates) = 0;
// @generated_from: blink.mojom.LocalFrame.AddInspectorIssue
virtual void AddInspectorIssue(::blink::mojom::blink::InspectorIssueInfoPtr info) = 0;
// @generated_from: blink.mojom.LocalFrame.SwapInImmediately
virtual void SwapInImmediately() = 0;
// @generated_from: blink.mojom.LocalFrame.CheckCompleted
virtual void CheckCompleted() = 0;
// @generated_from: blink.mojom.LocalFrame.StopLoading
virtual void StopLoading() = 0;
// @generated_from: blink.mojom.LocalFrame.Collapse
virtual void Collapse(bool collapsed) = 0;
// @generated_from: blink.mojom.LocalFrame.EnableViewSourceMode
virtual void EnableViewSourceMode() = 0;
// @generated_from: blink.mojom.LocalFrame.Focus
virtual void Focus() = 0;
// @generated_from: blink.mojom.LocalFrame.ClearFocusedElement
virtual void ClearFocusedElement() = 0;
// @generated_from: blink.mojom.LocalFrame.GetResourceSnapshotForWebBundle
virtual void GetResourceSnapshotForWebBundle(::mojo::PendingReceiver<::data_decoder::mojom::blink::ResourceSnapshotForWebBundle> receiver) = 0;
// @generated_from: blink.mojom.LocalFrame.CopyImageAt
virtual void CopyImageAt(const ::gfx::Point& window_point) = 0;
// @generated_from: blink.mojom.LocalFrame.SaveImageAt
virtual void SaveImageAt(const ::gfx::Point& window_point) = 0;
// @generated_from: blink.mojom.LocalFrame.ReportBlinkFeatureUsage
virtual void ReportBlinkFeatureUsage(const WTF::Vector<::blink::mojom::blink::WebFeature>& features) = 0;
// @generated_from: blink.mojom.LocalFrame.RenderFallbackContent
virtual void RenderFallbackContent() = 0;
// @generated_from: blink.mojom.LocalFrame.RenderFallbackContentWithResourceTiming
virtual void RenderFallbackContentWithResourceTiming(::blink::mojom::blink::ResourceTimingInfoPtr timing, const WTF::String& server_timing_value) = 0;
using BeforeUnloadCallback = base::OnceCallback<void(bool, ::base::TimeTicks, ::base::TimeTicks)>;
// @generated_from: blink.mojom.LocalFrame.BeforeUnload
virtual void BeforeUnload(bool is_reload, BeforeUnloadCallback callback) = 0;
// @generated_from: blink.mojom.LocalFrame.MediaPlayerActionAt
virtual void MediaPlayerActionAt(const ::gfx::Point& location, ::blink::mojom::blink::MediaPlayerActionPtr action) = 0;
// @generated_from: blink.mojom.LocalFrame.PluginActionAt
virtual void PluginActionAt(const ::gfx::Point& location, PluginActionType action) = 0;
// @generated_from: blink.mojom.LocalFrame.AdvanceFocusInFrame
virtual void AdvanceFocusInFrame(::blink::mojom::blink::FocusType focus_type, const absl::optional<::blink::RemoteFrameToken>& source_frame_token) = 0;
// @generated_from: blink.mojom.LocalFrame.AdvanceFocusForIME
virtual void AdvanceFocusForIME(::blink::mojom::blink::FocusType focus_type) = 0;
// @generated_from: blink.mojom.LocalFrame.ReportContentSecurityPolicyViolation
virtual void ReportContentSecurityPolicyViolation(::network::mojom::blink::CSPViolationPtr violation) = 0;
// @generated_from: blink.mojom.LocalFrame.DidUpdateFramePolicy
virtual void DidUpdateFramePolicy(const ::blink::FramePolicy& frame_policy) = 0;
// @generated_from: blink.mojom.LocalFrame.PostMessageEvent
virtual void PostMessageEvent(const absl::optional<::blink::RemoteFrameToken>& source_frame_token, const ::WTF::String& source_origin, const ::WTF::String& target_origin, ::blink::BlinkTransferableMessage message) = 0;
using JavaScriptMethodExecuteRequestCallback = base::OnceCallback<void(::base::Value)>;
// @generated_from: blink.mojom.LocalFrame.JavaScriptMethodExecuteRequest
virtual void JavaScriptMethodExecuteRequest(const ::WTF::String& object_name, const ::WTF::String& method_name, ::base::Value::List arguments, bool wants_result, JavaScriptMethodExecuteRequestCallback callback) = 0;
using JavaScriptExecuteRequestCallback = base::OnceCallback<void(::base::Value)>;
// @generated_from: blink.mojom.LocalFrame.JavaScriptExecuteRequest
virtual void JavaScriptExecuteRequest(const ::WTF::String& javascript, bool wants_result, JavaScriptExecuteRequestCallback callback) = 0;
using JavaScriptExecuteRequestForTestsCallback = base::OnceCallback<void(JavaScriptExecutionResultType, ::base::Value)>;
// @generated_from: blink.mojom.LocalFrame.JavaScriptExecuteRequestForTests
virtual void JavaScriptExecuteRequestForTests(const ::WTF::String& javascript, bool has_user_gesture, bool resolve_promises, int32_t world_id, JavaScriptExecuteRequestForTestsCallback callback) = 0;
using JavaScriptExecuteRequestInIsolatedWorldCallback = base::OnceCallback<void(::base::Value)>;
// @generated_from: blink.mojom.LocalFrame.JavaScriptExecuteRequestInIsolatedWorld
virtual void JavaScriptExecuteRequestInIsolatedWorld(const ::WTF::String& javascript, bool wants_result, int32_t world_id, JavaScriptExecuteRequestInIsolatedWorldCallback callback) = 0;
// @generated_from: blink.mojom.LocalFrame.BindReportingObserver
virtual void BindReportingObserver(::mojo::PendingReceiver<::blink::mojom::blink::ReportingObserver> receiver) = 0;
// @generated_from: blink.mojom.LocalFrame.UpdateOpener
virtual void UpdateOpener(const absl::optional<::blink::FrameToken>& opener_frame_token) = 0;
using GetSavableResourceLinksCallback = base::OnceCallback<void(GetSavableResourceLinksReplyPtr)>;
// @generated_from: blink.mojom.LocalFrame.GetSavableResourceLinks
virtual void GetSavableResourceLinks(GetSavableResourceLinksCallback callback) = 0;
// @generated_from: blink.mojom.LocalFrame.MixedContentFound
virtual void MixedContentFound(const ::blink::KURL& main_resource_url, const ::blink::KURL& mixed_content_url, ::blink::mojom::blink::RequestContextType request_context, bool was_allowed, const ::blink::KURL& url_before_redirects, bool had_redirect, ::network::mojom::blink::SourceLocationPtr source_location) = 0;
// @generated_from: blink.mojom.LocalFrame.BindDevToolsAgent
virtual void BindDevToolsAgent(::mojo::PendingAssociatedRemote<::blink::mojom::blink::DevToolsAgentHost> agent_host, ::mojo::PendingAssociatedReceiver<::blink::mojom::blink::DevToolsAgent> agent) = 0;
using ExtractSmartClipDataCallback = base::OnceCallback<void(const ::WTF::String&, const ::WTF::String&, const ::gfx::Rect&)>;
// @generated_from: blink.mojom.LocalFrame.ExtractSmartClipData
virtual void ExtractSmartClipData(const ::gfx::Rect& rect, ExtractSmartClipDataCallback callback) = 0;
// @generated_from: blink.mojom.LocalFrame.HandleRendererDebugURL
virtual void HandleRendererDebugURL(const ::blink::KURL& url) = 0;
using GetCanonicalUrlForSharingCallback = base::OnceCallback<void(const absl::optional<::blink::KURL>&)>;
// @generated_from: blink.mojom.LocalFrame.GetCanonicalUrlForSharing
virtual void GetCanonicalUrlForSharing(GetCanonicalUrlForSharingCallback callback) = 0;
using GetOpenGraphMetadataCallback = base::OnceCallback<void(::blink::mojom::blink::OpenGraphMetadataPtr)>;
// @generated_from: blink.mojom.LocalFrame.GetOpenGraphMetadata
virtual void GetOpenGraphMetadata(GetOpenGraphMetadataCallback callback) = 0;
// @generated_from: blink.mojom.LocalFrame.SetNavigationApiHistoryEntriesForRestore
virtual void SetNavigationApiHistoryEntriesForRestore(::blink::mojom::blink::NavigationApiHistoryEntryArraysPtr entry_arrays) = 0;
};
class HighPriorityLocalFrameProxy;
template <typename ImplRefTraits>
class HighPriorityLocalFrameStub;
class HighPriorityLocalFrameRequestValidator;
class HighPriorityLocalFrameResponseValidator;
// @generated_from: blink.mojom.HighPriorityLocalFrame
class CORE_EXPORT HighPriorityLocalFrame
: public HighPriorityLocalFrameInterfaceBase {
public:
static const char Name_[];
static std::pair<uint32_t, const void*> MessageToMethodInfo_(mojo::Message& message);
static const char* MessageToMethodName_(mojo::Message& message);
static constexpr uint32_t Version_ = 0;
static constexpr bool PassesAssociatedKinds_ = false;
static constexpr bool HasSyncMethods_ = false;
static constexpr bool HasUninterruptableMethods_ = false;
using Base_ = HighPriorityLocalFrameInterfaceBase;
using Proxy_ = HighPriorityLocalFrameProxy;
template <typename ImplRefTraits>
using Stub_ = HighPriorityLocalFrameStub<ImplRefTraits>;
using RequestValidator_ = HighPriorityLocalFrameRequestValidator;
using ResponseValidator_ = HighPriorityLocalFrameResponseValidator;
enum MethodMinVersions : uint32_t {
kDispatchBeforeUnloadMinVersion = 0,
};
// crbug.com/1340245 - this causes binary size bloat on Fuchsia, and we're OK
// with not having this data in traces there.
#if !BUILDFLAG(IS_FUCHSIA)
struct DispatchBeforeUnload_Sym {
NOINLINE static void IPCSymbol();
};
#endif // !BUILDFLAG(IS_FUCHSIA)
virtual ~HighPriorityLocalFrame() = default;
using DispatchBeforeUnloadCallback = base::OnceCallback<void(bool, ::base::TimeTicks, ::base::TimeTicks)>;
// @generated_from: blink.mojom.HighPriorityLocalFrame.DispatchBeforeUnload
virtual void DispatchBeforeUnload(bool is_reload, DispatchBeforeUnloadCallback callback) = 0;
};
class RemoteFrameHostProxy;
template <typename ImplRefTraits>
class RemoteFrameHostStub;
class RemoteFrameHostRequestValidator;
// @generated_from: blink.mojom.RemoteFrameHost
class CORE_EXPORT RemoteFrameHost
: public RemoteFrameHostInterfaceBase {
public:
static const char Name_[];
static std::pair<uint32_t, const void*> MessageToMethodInfo_(mojo::Message& message);
static const char* MessageToMethodName_(mojo::Message& message);
static constexpr uint32_t Version_ = 0;
static constexpr bool PassesAssociatedKinds_ = false;
static constexpr bool HasSyncMethods_ = false;
static constexpr bool HasUninterruptableMethods_ = false;
using Base_ = RemoteFrameHostInterfaceBase;
using Proxy_ = RemoteFrameHostProxy;
template <typename ImplRefTraits>
using Stub_ = RemoteFrameHostStub<ImplRefTraits>;
using RequestValidator_ = RemoteFrameHostRequestValidator;
using ResponseValidator_ = mojo::PassThroughFilter;
enum MethodMinVersions : uint32_t {
kSetInheritedEffectiveTouchActionMinVersion = 0,
kUpdateRenderThrottlingStatusMinVersion = 0,
kVisibilityChangedMinVersion = 0,
kDidFocusFrameMinVersion = 0,
kCheckCompletedMinVersion = 0,
kCapturePaintPreviewOfCrossProcessSubframeMinVersion = 0,
kSetIsInertMinVersion = 0,
kDidChangeOpenerMinVersion = 0,
kAdvanceFocusMinVersion = 0,
kRouteMessageEventMinVersion = 0,
kPrintCrossProcessSubframeMinVersion = 0,
kDetachMinVersion = 0,
kUpdateViewportIntersectionMinVersion = 0,
kSynchronizeVisualPropertiesMinVersion = 0,
kOpenURLMinVersion = 0,
};
// crbug.com/1340245 - this causes binary size bloat on Fuchsia, and we're OK
// with not having this data in traces there.
#if !BUILDFLAG(IS_FUCHSIA)
struct SetInheritedEffectiveTouchAction_Sym {
NOINLINE static void IPCSymbol();
};
struct UpdateRenderThrottlingStatus_Sym {
NOINLINE static void IPCSymbol();
};
struct VisibilityChanged_Sym {
NOINLINE static void IPCSymbol();
};
struct DidFocusFrame_Sym {
NOINLINE static void IPCSymbol();
};
struct CheckCompleted_Sym {
NOINLINE static void IPCSymbol();
};
struct CapturePaintPreviewOfCrossProcessSubframe_Sym {
NOINLINE static void IPCSymbol();
};
struct SetIsInert_Sym {
NOINLINE static void IPCSymbol();
};
struct DidChangeOpener_Sym {
NOINLINE static void IPCSymbol();
};
struct AdvanceFocus_Sym {
NOINLINE static void IPCSymbol();
};
struct RouteMessageEvent_Sym {
NOINLINE static void IPCSymbol();
};
struct PrintCrossProcessSubframe_Sym {
NOINLINE static void IPCSymbol();
};
struct Detach_Sym {
NOINLINE static void IPCSymbol();
};
struct UpdateViewportIntersection_Sym {
NOINLINE static void IPCSymbol();
};
struct SynchronizeVisualProperties_Sym {
NOINLINE static void IPCSymbol();
};
struct OpenURL_Sym {
NOINLINE static void IPCSymbol();
};
#endif // !BUILDFLAG(IS_FUCHSIA)
virtual ~RemoteFrameHost() = default;
// @generated_from: blink.mojom.RemoteFrameHost.SetInheritedEffectiveTouchAction
virtual void SetInheritedEffectiveTouchAction(::cc::TouchAction touch_action) = 0;
// @generated_from: blink.mojom.RemoteFrameHost.UpdateRenderThrottlingStatus
virtual void UpdateRenderThrottlingStatus(bool is_throttled, bool subtree_throttled, bool display_locked) = 0;
// @generated_from: blink.mojom.RemoteFrameHost.VisibilityChanged
virtual void VisibilityChanged(::blink::mojom::blink::FrameVisibility visibility) = 0;
// @generated_from: blink.mojom.RemoteFrameHost.DidFocusFrame
virtual void DidFocusFrame() = 0;
// @generated_from: blink.mojom.RemoteFrameHost.CheckCompleted
virtual void CheckCompleted() = 0;
// @generated_from: blink.mojom.RemoteFrameHost.CapturePaintPreviewOfCrossProcessSubframe
virtual void CapturePaintPreviewOfCrossProcessSubframe(const ::gfx::Rect& clip_rect, const ::base::UnguessableToken& guid) = 0;
// @generated_from: blink.mojom.RemoteFrameHost.SetIsInert
virtual void SetIsInert(bool inert) = 0;
// @generated_from: blink.mojom.RemoteFrameHost.DidChangeOpener
virtual void DidChangeOpener(const absl::optional<::blink::LocalFrameToken>& opener_frame) = 0;
// @generated_from: blink.mojom.RemoteFrameHost.AdvanceFocus
virtual void AdvanceFocus(::blink::mojom::blink::FocusType focus_type, const ::blink::LocalFrameToken& source_frame_token) = 0;
// @generated_from: blink.mojom.RemoteFrameHost.RouteMessageEvent
virtual void RouteMessageEvent(const absl::optional<::blink::LocalFrameToken>& source_frame_token, const ::WTF::String& source_origin, const ::WTF::String& target_origin, ::blink::BlinkTransferableMessage message) = 0;
// @generated_from: blink.mojom.RemoteFrameHost.PrintCrossProcessSubframe
virtual void PrintCrossProcessSubframe(const ::gfx::Rect& frame_content_rect, int32_t document_cookie) = 0;
// @generated_from: blink.mojom.RemoteFrameHost.Detach
virtual void Detach() = 0;
// @generated_from: blink.mojom.RemoteFrameHost.UpdateViewportIntersection
virtual void UpdateViewportIntersection(::blink::mojom::blink::ViewportIntersectionStatePtr intersection_state, const absl::optional<::blink::FrameVisualProperties>& visual_properties) = 0;
// @generated_from: blink.mojom.RemoteFrameHost.SynchronizeVisualProperties
virtual void SynchronizeVisualProperties(const ::blink::FrameVisualProperties& properties) = 0;
// @generated_from: blink.mojom.RemoteFrameHost.OpenURL
virtual void OpenURL(OpenURLParamsPtr params) = 0;
};
class RemoteFrameProxy;
template <typename ImplRefTraits>
class RemoteFrameStub;
class RemoteFrameRequestValidator;
// @generated_from: blink.mojom.RemoteFrame
class CORE_EXPORT RemoteFrame
: public RemoteFrameInterfaceBase {
public:
static const char Name_[];
static std::pair<uint32_t, const void*> MessageToMethodInfo_(mojo::Message& message);
static const char* MessageToMethodName_(mojo::Message& message);
static constexpr uint32_t Version_ = 0;
static constexpr bool PassesAssociatedKinds_ = false;
static constexpr bool HasSyncMethods_ = false;
static constexpr bool HasUninterruptableMethods_ = false;
using Base_ = RemoteFrameInterfaceBase;
using Proxy_ = RemoteFrameProxy;
template <typename ImplRefTraits>
using Stub_ = RemoteFrameStub<ImplRefTraits>;
using RequestValidator_ = RemoteFrameRequestValidator;
using ResponseValidator_ = mojo::PassThroughFilter;
enum MethodMinVersions : uint32_t {
kWillEnterFullscreenMinVersion = 0,
kEnforceInsecureNavigationsSetMinVersion = 0,
kSetFrameOwnerPropertiesMinVersion = 0,
kEnforceInsecureRequestPolicyMinVersion = 0,
kSetReplicatedOriginMinVersion = 0,
kSetReplicatedIsAdSubframeMinVersion = 0,
kSetReplicatedNameMinVersion = 0,
kDispatchLoadEventForFrameOwnerMinVersion = 0,
kSetNeedsOcclusionTrackingMinVersion = 0,
kCollapseMinVersion = 0,
kFocusMinVersion = 0,
kSetHadStickyUserActivationBeforeNavigationMinVersion = 0,
kBubbleLogicalScrollMinVersion = 0,
kUpdateUserActivationStateMinVersion = 0,
kSetEmbeddingTokenMinVersion = 0,
kSetPageFocusMinVersion = 0,
kRenderFallbackContentMinVersion = 0,
kRenderFallbackContentWithResourceTimingMinVersion = 0,
kAddResourceTimingFromChildMinVersion = 0,
kScrollRectToVisibleMinVersion = 0,
kDidStartLoadingMinVersion = 0,
kDidStopLoadingMinVersion = 0,
kIntrinsicSizingInfoOfChildChangedMinVersion = 0,
kDidSetFramePolicyHeadersMinVersion = 0,
kDidUpdateFramePolicyMinVersion = 0,
kUpdateOpenerMinVersion = 0,
kDetachAndDisposeMinVersion = 0,
kEnableAutoResizeMinVersion = 0,
kDisableAutoResizeMinVersion = 0,
kDidUpdateVisualPropertiesMinVersion = 0,
kSetFrameSinkIdMinVersion = 0,
kChildProcessGoneMinVersion = 0,
};
// crbug.com/1340245 - this causes binary size bloat on Fuchsia, and we're OK
// with not having this data in traces there.
#if !BUILDFLAG(IS_FUCHSIA)
struct WillEnterFullscreen_Sym {
NOINLINE static void IPCSymbol();
};
struct EnforceInsecureNavigationsSet_Sym {
NOINLINE static void IPCSymbol();
};
struct SetFrameOwnerProperties_Sym {
NOINLINE static void IPCSymbol();
};
struct EnforceInsecureRequestPolicy_Sym {
NOINLINE static void IPCSymbol();
};
struct SetReplicatedOrigin_Sym {
NOINLINE static void IPCSymbol();
};
struct SetReplicatedIsAdSubframe_Sym {
NOINLINE static void IPCSymbol();
};
struct SetReplicatedName_Sym {
NOINLINE static void IPCSymbol();
};
struct DispatchLoadEventForFrameOwner_Sym {
NOINLINE static void IPCSymbol();
};
struct SetNeedsOcclusionTracking_Sym {
NOINLINE static void IPCSymbol();
};
struct Collapse_Sym {
NOINLINE static void IPCSymbol();
};
struct Focus_Sym {
NOINLINE static void IPCSymbol();
};
struct SetHadStickyUserActivationBeforeNavigation_Sym {
NOINLINE static void IPCSymbol();
};
struct BubbleLogicalScroll_Sym {
NOINLINE static void IPCSymbol();
};
struct UpdateUserActivationState_Sym {
NOINLINE static void IPCSymbol();
};
struct SetEmbeddingToken_Sym {
NOINLINE static void IPCSymbol();
};
struct SetPageFocus_Sym {
NOINLINE static void IPCSymbol();
};
struct RenderFallbackContent_Sym {
NOINLINE static void IPCSymbol();
};
struct RenderFallbackContentWithResourceTiming_Sym {
NOINLINE static void IPCSymbol();
};
struct AddResourceTimingFromChild_Sym {
NOINLINE static void IPCSymbol();
};
struct ScrollRectToVisible_Sym {
NOINLINE static void IPCSymbol();
};
struct DidStartLoading_Sym {
NOINLINE static void IPCSymbol();
};
struct DidStopLoading_Sym {
NOINLINE static void IPCSymbol();
};
struct IntrinsicSizingInfoOfChildChanged_Sym {
NOINLINE static void IPCSymbol();
};
struct DidSetFramePolicyHeaders_Sym {
NOINLINE static void IPCSymbol();
};
struct DidUpdateFramePolicy_Sym {
NOINLINE static void IPCSymbol();
};
struct UpdateOpener_Sym {
NOINLINE static void IPCSymbol();
};
struct DetachAndDispose_Sym {
NOINLINE static void IPCSymbol();
};
struct EnableAutoResize_Sym {
NOINLINE static void IPCSymbol();
};
struct DisableAutoResize_Sym {
NOINLINE static void IPCSymbol();
};
struct DidUpdateVisualProperties_Sym {
NOINLINE static void IPCSymbol();
};
struct SetFrameSinkId_Sym {
NOINLINE static void IPCSymbol();
};
struct ChildProcessGone_Sym {
NOINLINE static void IPCSymbol();
};
#endif // !BUILDFLAG(IS_FUCHSIA)
virtual ~RemoteFrame() = default;
// @generated_from: blink.mojom.RemoteFrame.WillEnterFullscreen
virtual void WillEnterFullscreen(::blink::mojom::blink::FullscreenOptionsPtr options) = 0;
// @generated_from: blink.mojom.RemoteFrame.EnforceInsecureNavigationsSet
virtual void EnforceInsecureNavigationsSet(const WTF::Vector<uint32_t>& set) = 0;
// @generated_from: blink.mojom.RemoteFrame.SetFrameOwnerProperties
virtual void SetFrameOwnerProperties(::blink::mojom::blink::FrameOwnerPropertiesPtr properties) = 0;
// @generated_from: blink.mojom.RemoteFrame.EnforceInsecureRequestPolicy
virtual void EnforceInsecureRequestPolicy(::blink::mojom::blink::InsecureRequestPolicy policy) = 0;
// @generated_from: blink.mojom.RemoteFrame.SetReplicatedOrigin
virtual void SetReplicatedOrigin(const ::scoped_refptr<const ::blink::SecurityOrigin>& origin, bool is_potentially_trustworthy_unique_origin) = 0;
// @generated_from: blink.mojom.RemoteFrame.SetReplicatedIsAdSubframe
virtual void SetReplicatedIsAdSubframe(bool is_ad_subframe) = 0;
// @generated_from: blink.mojom.RemoteFrame.SetReplicatedName
virtual void SetReplicatedName(const WTF::String& name, const WTF::String& unique_name) = 0;
// @generated_from: blink.mojom.RemoteFrame.DispatchLoadEventForFrameOwner
virtual void DispatchLoadEventForFrameOwner() = 0;
// @generated_from: blink.mojom.RemoteFrame.SetNeedsOcclusionTracking
virtual void SetNeedsOcclusionTracking(bool needs_tracking) = 0;
// @generated_from: blink.mojom.RemoteFrame.Collapse
virtual void Collapse(bool collapsed) = 0;
// @generated_from: blink.mojom.RemoteFrame.Focus
virtual void Focus() = 0;
// @generated_from: blink.mojom.RemoteFrame.SetHadStickyUserActivationBeforeNavigation
virtual void SetHadStickyUserActivationBeforeNavigation(bool has_gesture) = 0;
// @generated_from: blink.mojom.RemoteFrame.BubbleLogicalScroll
virtual void BubbleLogicalScroll(::blink::mojom::blink::ScrollDirection direction, ::ui::ScrollGranularity granularity) = 0;
// @generated_from: blink.mojom.RemoteFrame.UpdateUserActivationState
virtual void UpdateUserActivationState(::blink::mojom::blink::UserActivationUpdateType state_update_type, ::blink::mojom::blink::UserActivationNotificationType notification_type) = 0;
// @generated_from: blink.mojom.RemoteFrame.SetEmbeddingToken
virtual void SetEmbeddingToken(const ::base::UnguessableToken& embedding_token) = 0;
// @generated_from: blink.mojom.RemoteFrame.SetPageFocus
virtual void SetPageFocus(bool is_focused) = 0;
// @generated_from: blink.mojom.RemoteFrame.RenderFallbackContent
virtual void RenderFallbackContent() = 0;
// @generated_from: blink.mojom.RemoteFrame.RenderFallbackContentWithResourceTiming
virtual void RenderFallbackContentWithResourceTiming(::blink::mojom::blink::ResourceTimingInfoPtr timing, const WTF::String& server_timing_value) = 0;
// @generated_from: blink.mojom.RemoteFrame.AddResourceTimingFromChild
virtual void AddResourceTimingFromChild(::blink::mojom::blink::ResourceTimingInfoPtr timing) = 0;
// @generated_from: blink.mojom.RemoteFrame.ScrollRectToVisible
virtual void ScrollRectToVisible(const ::gfx::RectF& rect, ::blink::mojom::blink::ScrollIntoViewParamsPtr params) = 0;
// @generated_from: blink.mojom.RemoteFrame.DidStartLoading
virtual void DidStartLoading() = 0;
// @generated_from: blink.mojom.RemoteFrame.DidStopLoading
virtual void DidStopLoading() = 0;
// @generated_from: blink.mojom.RemoteFrame.IntrinsicSizingInfoOfChildChanged
virtual void IntrinsicSizingInfoOfChildChanged(::blink::mojom::blink::IntrinsicSizingInfoPtr sizing_info) = 0;
// @generated_from: blink.mojom.RemoteFrame.DidSetFramePolicyHeaders
virtual void DidSetFramePolicyHeaders(::network::mojom::blink::WebSandboxFlags sandbox_flags, const WTF::Vector<::blink::ParsedPermissionsPolicyDeclaration>& parsed_permissions_policy) = 0;
// @generated_from: blink.mojom.RemoteFrame.DidUpdateFramePolicy
virtual void DidUpdateFramePolicy(const ::blink::FramePolicy& frame_policy) = 0;
// @generated_from: blink.mojom.RemoteFrame.UpdateOpener
virtual void UpdateOpener(const absl::optional<::blink::FrameToken>& opener_frame_token) = 0;
// @generated_from: blink.mojom.RemoteFrame.DetachAndDispose
virtual void DetachAndDispose() = 0;
// @generated_from: blink.mojom.RemoteFrame.EnableAutoResize
virtual void EnableAutoResize(const ::gfx::Size& min_size, const ::gfx::Size& max_size) = 0;
// @generated_from: blink.mojom.RemoteFrame.DisableAutoResize
virtual void DisableAutoResize() = 0;
// @generated_from: blink.mojom.RemoteFrame.DidUpdateVisualProperties
virtual void DidUpdateVisualProperties(const ::cc::RenderFrameMetadata& metadata) = 0;
// @generated_from: blink.mojom.RemoteFrame.SetFrameSinkId
virtual void SetFrameSinkId(const ::viz::FrameSinkId& frame_sink_id) = 0;
// @generated_from: blink.mojom.RemoteFrame.ChildProcessGone
virtual void ChildProcessGone() = 0;
};
class LocalMainFrameProxy;
template <typename ImplRefTraits>
class LocalMainFrameStub;
class LocalMainFrameRequestValidator;
class LocalMainFrameResponseValidator;
// @generated_from: blink.mojom.LocalMainFrame
class CORE_EXPORT LocalMainFrame
: public LocalMainFrameInterfaceBase {
public:
static const char Name_[];
static std::pair<uint32_t, const void*> MessageToMethodInfo_(mojo::Message& message);
static const char* MessageToMethodName_(mojo::Message& message);
static constexpr uint32_t Version_ = 0;
static constexpr bool PassesAssociatedKinds_ = true;
static constexpr bool HasSyncMethods_ = false;
static constexpr bool HasUninterruptableMethods_ = false;
using Base_ = LocalMainFrameInterfaceBase;
using Proxy_ = LocalMainFrameProxy;
template <typename ImplRefTraits>
using Stub_ = LocalMainFrameStub<ImplRefTraits>;
using RequestValidator_ = LocalMainFrameRequestValidator;
using ResponseValidator_ = LocalMainFrameResponseValidator;
enum MethodMinVersions : uint32_t {
kAnimateDoubleTapZoomMinVersion = 0,
kSetScaleFactorMinVersion = 0,
kClosePageMinVersion = 0,
kSetInitialFocusMinVersion = 0,
kEnablePreferredSizeChangedModeMinVersion = 0,
kZoomToFindInPageRectMinVersion = 0,
kInstallCoopAccessMonitorMinVersion = 0,
kOnPortalActivatedMinVersion = 0,
kForwardMessageFromHostMinVersion = 0,
kUpdateBrowserControlsStateMinVersion = 0,
};
// crbug.com/1340245 - this causes binary size bloat on Fuchsia, and we're OK
// with not having this data in traces there.
#if !BUILDFLAG(IS_FUCHSIA)
struct AnimateDoubleTapZoom_Sym {
NOINLINE static void IPCSymbol();
};
struct SetScaleFactor_Sym {
NOINLINE static void IPCSymbol();
};
struct ClosePage_Sym {
NOINLINE static void IPCSymbol();
};
struct SetInitialFocus_Sym {
NOINLINE static void IPCSymbol();
};
struct EnablePreferredSizeChangedMode_Sym {
NOINLINE static void IPCSymbol();
};
struct ZoomToFindInPageRect_Sym {
NOINLINE static void IPCSymbol();
};
struct InstallCoopAccessMonitor_Sym {
NOINLINE static void IPCSymbol();
};
struct OnPortalActivated_Sym {
NOINLINE static void IPCSymbol();
};
struct ForwardMessageFromHost_Sym {
NOINLINE static void IPCSymbol();
};
struct UpdateBrowserControlsState_Sym {
NOINLINE static void IPCSymbol();
};
#endif // !BUILDFLAG(IS_FUCHSIA)
virtual ~LocalMainFrame() = default;
// @generated_from: blink.mojom.LocalMainFrame.AnimateDoubleTapZoom
virtual void AnimateDoubleTapZoom(const ::gfx::Point& point, const ::gfx::Rect& rect) = 0;
// @generated_from: blink.mojom.LocalMainFrame.SetScaleFactor
virtual void SetScaleFactor(float scale) = 0;
using ClosePageCallback = base::OnceCallback<void()>;
// @generated_from: blink.mojom.LocalMainFrame.ClosePage
virtual void ClosePage(ClosePageCallback callback) = 0;
// @generated_from: blink.mojom.LocalMainFrame.SetInitialFocus
virtual void SetInitialFocus(bool reverse) = 0;
// @generated_from: blink.mojom.LocalMainFrame.EnablePreferredSizeChangedMode
virtual void EnablePreferredSizeChangedMode() = 0;
// @generated_from: blink.mojom.LocalMainFrame.ZoomToFindInPageRect
virtual void ZoomToFindInPageRect(const ::gfx::Rect& rect_in_root_frame) = 0;
// @generated_from: blink.mojom.LocalMainFrame.InstallCoopAccessMonitor
virtual void InstallCoopAccessMonitor(const ::blink::FrameToken& accessed_window, ::network::mojom::blink::CrossOriginOpenerPolicyReporterParamsPtr coop_reporter_info) = 0;
using OnPortalActivatedCallback = base::OnceCallback<void(::blink::mojom::blink::PortalActivateResult)>;
// @generated_from: blink.mojom.LocalMainFrame.OnPortalActivated
virtual void OnPortalActivated(const ::blink::PortalToken& portal_token, ::mojo::PendingAssociatedRemote<::blink::mojom::blink::Portal> portal, ::mojo::PendingAssociatedReceiver<::blink::mojom::blink::PortalClient> portal_client, ::blink::BlinkTransferableMessage data, uint64_t trace_id, OnPortalActivatedCallback callback) = 0;
// @generated_from: blink.mojom.LocalMainFrame.ForwardMessageFromHost
virtual void ForwardMessageFromHost(::blink::BlinkTransferableMessage message, const ::scoped_refptr<const ::blink::SecurityOrigin>& source_origin) = 0;
// @generated_from: blink.mojom.LocalMainFrame.UpdateBrowserControlsState
virtual void UpdateBrowserControlsState(::cc::BrowserControlsState constraints, ::cc::BrowserControlsState current, bool animate) = 0;
};
class RemoteMainFrameProxy;
template <typename ImplRefTraits>
class RemoteMainFrameStub;
class RemoteMainFrameRequestValidator;
// @generated_from: blink.mojom.RemoteMainFrame
class CORE_EXPORT RemoteMainFrame
: public RemoteMainFrameInterfaceBase {
public:
static const char Name_[];
static std::pair<uint32_t, const void*> MessageToMethodInfo_(mojo::Message& message);
static const char* MessageToMethodName_(mojo::Message& message);
static constexpr uint32_t Version_ = 0;
static constexpr bool PassesAssociatedKinds_ = false;
static constexpr bool HasSyncMethods_ = false;
static constexpr bool HasUninterruptableMethods_ = false;
using Base_ = RemoteMainFrameInterfaceBase;
using Proxy_ = RemoteMainFrameProxy;
template <typename ImplRefTraits>
using Stub_ = RemoteMainFrameStub<ImplRefTraits>;
using RequestValidator_ = RemoteMainFrameRequestValidator;
using ResponseValidator_ = mojo::PassThroughFilter;
enum MethodMinVersions : uint32_t {
kUpdateTextAutosizerPageInfoMinVersion = 0,
};
// crbug.com/1340245 - this causes binary size bloat on Fuchsia, and we're OK
// with not having this data in traces there.
#if !BUILDFLAG(IS_FUCHSIA)
struct UpdateTextAutosizerPageInfo_Sym {
NOINLINE static void IPCSymbol();
};
#endif // !BUILDFLAG(IS_FUCHSIA)
virtual ~RemoteMainFrame() = default;
// @generated_from: blink.mojom.RemoteMainFrame.UpdateTextAutosizerPageInfo
virtual void UpdateTextAutosizerPageInfo(::blink::mojom::blink::TextAutosizerPageInfoPtr page_info) = 0;
};
class LocalMainFrameHostProxy;
template <typename ImplRefTraits>
class LocalMainFrameHostStub;
class LocalMainFrameHostRequestValidator;
class LocalMainFrameHostResponseValidator;
// @generated_from: blink.mojom.LocalMainFrameHost
class CORE_EXPORT LocalMainFrameHost
: public LocalMainFrameHostInterfaceBase {
public:
static const char Name_[];
static std::pair<uint32_t, const void*> MessageToMethodInfo_(mojo::Message& message);
static const char* MessageToMethodName_(mojo::Message& message);
static constexpr uint32_t Version_ = 0;
static constexpr bool PassesAssociatedKinds_ = false;
static constexpr bool HasSyncMethods_ = false;
static constexpr bool HasUninterruptableMethods_ = false;
using Base_ = LocalMainFrameHostInterfaceBase;
using Proxy_ = LocalMainFrameHostProxy;
template <typename ImplRefTraits>
using Stub_ = LocalMainFrameHostStub<ImplRefTraits>;
using RequestValidator_ = LocalMainFrameHostRequestValidator;
using ResponseValidator_ = LocalMainFrameHostResponseValidator;
enum MethodMinVersions : uint32_t {
kScaleFactorChangedMinVersion = 0,
kContentsPreferredSizeChangedMinVersion = 0,
kTextAutosizerPageInfoChangedMinVersion = 0,
kFocusPageMinVersion = 0,
kTakeFocusMinVersion = 0,
kUpdateTargetURLMinVersion = 0,
kRequestCloseMinVersion = 0,
kShowCreatedWindowMinVersion = 0,
kSetWindowRectMinVersion = 0,
kDidFirstVisuallyNonEmptyPaintMinVersion = 0,
kDidAccessInitialMainDocumentMinVersion = 0,
};
// crbug.com/1340245 - this causes binary size bloat on Fuchsia, and we're OK
// with not having this data in traces there.
#if !BUILDFLAG(IS_FUCHSIA)
struct ScaleFactorChanged_Sym {
NOINLINE static void IPCSymbol();
};
struct ContentsPreferredSizeChanged_Sym {
NOINLINE static void IPCSymbol();
};
struct TextAutosizerPageInfoChanged_Sym {
NOINLINE static void IPCSymbol();
};
struct FocusPage_Sym {
NOINLINE static void IPCSymbol();
};
struct TakeFocus_Sym {
NOINLINE static void IPCSymbol();
};
struct UpdateTargetURL_Sym {
NOINLINE static void IPCSymbol();
};
struct RequestClose_Sym {
NOINLINE static void IPCSymbol();
};
struct ShowCreatedWindow_Sym {
NOINLINE static void IPCSymbol();
};
struct SetWindowRect_Sym {
NOINLINE static void IPCSymbol();
};
struct DidFirstVisuallyNonEmptyPaint_Sym {
NOINLINE static void IPCSymbol();
};
struct DidAccessInitialMainDocument_Sym {
NOINLINE static void IPCSymbol();
};
#endif // !BUILDFLAG(IS_FUCHSIA)
virtual ~LocalMainFrameHost() = default;
// @generated_from: blink.mojom.LocalMainFrameHost.ScaleFactorChanged
virtual void ScaleFactorChanged(float scale) = 0;
// @generated_from: blink.mojom.LocalMainFrameHost.ContentsPreferredSizeChanged
virtual void ContentsPreferredSizeChanged(const ::gfx::Size& pref_size) = 0;
// @generated_from: blink.mojom.LocalMainFrameHost.TextAutosizerPageInfoChanged
virtual void TextAutosizerPageInfoChanged(::blink::mojom::blink::TextAutosizerPageInfoPtr page_info) = 0;
// @generated_from: blink.mojom.LocalMainFrameHost.FocusPage
virtual void FocusPage() = 0;
// @generated_from: blink.mojom.LocalMainFrameHost.TakeFocus
virtual void TakeFocus(bool reverse) = 0;
using UpdateTargetURLCallback = base::OnceCallback<void()>;
// @generated_from: blink.mojom.LocalMainFrameHost.UpdateTargetURL
virtual void UpdateTargetURL(const ::blink::KURL& url, UpdateTargetURLCallback callback) = 0;
// @generated_from: blink.mojom.LocalMainFrameHost.RequestClose
virtual void RequestClose() = 0;
using ShowCreatedWindowCallback = base::OnceCallback<void()>;
// @generated_from: blink.mojom.LocalMainFrameHost.ShowCreatedWindow
virtual void ShowCreatedWindow(const ::blink::LocalFrameToken& opener_frame_token, ::ui::mojom::blink::WindowOpenDisposition disposition, const ::gfx::Rect& rect, bool opened_by_user_gesture, ShowCreatedWindowCallback callback) = 0;
using SetWindowRectCallback = base::OnceCallback<void()>;
// @generated_from: blink.mojom.LocalMainFrameHost.SetWindowRect
virtual void SetWindowRect(const ::gfx::Rect& bounds, SetWindowRectCallback callback) = 0;
// @generated_from: blink.mojom.LocalMainFrameHost.DidFirstVisuallyNonEmptyPaint
virtual void DidFirstVisuallyNonEmptyPaint() = 0;
// @generated_from: blink.mojom.LocalMainFrameHost.DidAccessInitialMainDocument
virtual void DidAccessInitialMainDocument() = 0;
};
class RemoteMainFrameHostProxy;
template <typename ImplRefTraits>
class RemoteMainFrameHostStub;
class RemoteMainFrameHostRequestValidator;
class RemoteMainFrameHostResponseValidator;
// @generated_from: blink.mojom.RemoteMainFrameHost
class CORE_EXPORT RemoteMainFrameHost
: public RemoteMainFrameHostInterfaceBase {
public:
static const char Name_[];
static std::pair<uint32_t, const void*> MessageToMethodInfo_(mojo::Message& message);
static const char* MessageToMethodName_(mojo::Message& message);
static constexpr uint32_t Version_ = 0;
static constexpr bool PassesAssociatedKinds_ = false;
static constexpr bool HasSyncMethods_ = false;
static constexpr bool HasUninterruptableMethods_ = false;
using Base_ = RemoteMainFrameHostInterfaceBase;
using Proxy_ = RemoteMainFrameHostProxy;
template <typename ImplRefTraits>
using Stub_ = RemoteMainFrameHostStub<ImplRefTraits>;
using RequestValidator_ = RemoteMainFrameHostRequestValidator;
using ResponseValidator_ = RemoteMainFrameHostResponseValidator;
enum MethodMinVersions : uint32_t {
kFocusPageMinVersion = 0,
kTakeFocusMinVersion = 0,
kUpdateTargetURLMinVersion = 0,
kRouteCloseEventMinVersion = 0,
};
// crbug.com/1340245 - this causes binary size bloat on Fuchsia, and we're OK
// with not having this data in traces there.
#if !BUILDFLAG(IS_FUCHSIA)
struct FocusPage_Sym {
NOINLINE static void IPCSymbol();
};
struct TakeFocus_Sym {
NOINLINE static void IPCSymbol();
};
struct UpdateTargetURL_Sym {
NOINLINE static void IPCSymbol();
};
struct RouteCloseEvent_Sym {
NOINLINE static void IPCSymbol();
};
#endif // !BUILDFLAG(IS_FUCHSIA)
virtual ~RemoteMainFrameHost() = default;
// @generated_from: blink.mojom.RemoteMainFrameHost.FocusPage
virtual void FocusPage() = 0;
// @generated_from: blink.mojom.RemoteMainFrameHost.TakeFocus
virtual void TakeFocus(bool reverse) = 0;
using UpdateTargetURLCallback = base::OnceCallback<void()>;
// @generated_from: blink.mojom.RemoteMainFrameHost.UpdateTargetURL
virtual void UpdateTargetURL(const ::blink::KURL& url, UpdateTargetURLCallback callback) = 0;
// @generated_from: blink.mojom.RemoteMainFrameHost.RouteCloseEvent
virtual void RouteCloseEvent() = 0;
};
// @generated_from: blink.mojom.KeepAliveHandle
class CORE_EXPORT KeepAliveHandleProxy
: public KeepAliveHandle {
public:
using InterfaceType = KeepAliveHandle;
explicit KeepAliveHandleProxy(mojo::MessageReceiverWithResponder* receiver);
private:
mojo::MessageReceiverWithResponder* receiver_;
};
// @generated_from: blink.mojom.KeepAliveHandleFactory
class CORE_EXPORT KeepAliveHandleFactoryProxy
: public KeepAliveHandleFactory {
public:
using InterfaceType = KeepAliveHandleFactory;
explicit KeepAliveHandleFactoryProxy(mojo::MessageReceiverWithResponder* receiver);
// @generated_from: blink.mojom.KeepAliveHandleFactory.IssueKeepAliveHandle
void IssueKeepAliveHandle(::mojo::PendingReceiver<KeepAliveHandle> keep_alive_handle) final;
private:
mojo::MessageReceiverWithResponder* receiver_;
};
// @generated_from: blink.mojom.LocalFrameHost
class CORE_EXPORT LocalFrameHostProxy
: public LocalFrameHost {
public:
using InterfaceType = LocalFrameHost;
explicit LocalFrameHostProxy(mojo::MessageReceiverWithResponder* receiver);
// @generated_from: blink.mojom.LocalFrameHost.EnterFullscreen
void EnterFullscreen(::blink::mojom::blink::FullscreenOptionsPtr options, EnterFullscreenCallback callback) final;
// @generated_from: blink.mojom.LocalFrameHost.ExitFullscreen
void ExitFullscreen() final;
// @generated_from: blink.mojom.LocalFrameHost.FullscreenStateChanged
void FullscreenStateChanged(bool is_fullscreen, ::blink::mojom::blink::FullscreenOptionsPtr options) final;
// @generated_from: blink.mojom.LocalFrameHost.RegisterProtocolHandler
void RegisterProtocolHandler(const WTF::String& scheme, const ::blink::KURL& url, bool user_gesture) final;
// @generated_from: blink.mojom.LocalFrameHost.UnregisterProtocolHandler
void UnregisterProtocolHandler(const WTF::String& scheme, const ::blink::KURL& url, bool user_gesture) final;
// @generated_from: blink.mojom.LocalFrameHost.DidDisplayInsecureContent
void DidDisplayInsecureContent() final;
// @generated_from: blink.mojom.LocalFrameHost.DidContainInsecureFormAction
void DidContainInsecureFormAction() final;
// @generated_from: blink.mojom.LocalFrameHost.MainDocumentElementAvailable
void MainDocumentElementAvailable(bool uses_temporary_zoom_level) final;
// @generated_from: blink.mojom.LocalFrameHost.SetNeedsOcclusionTracking
void SetNeedsOcclusionTracking(bool needs_tracking) final;
// @generated_from: blink.mojom.LocalFrameHost.SetVirtualKeyboardOverlayPolicy
void SetVirtualKeyboardOverlayPolicy(bool vk_overlays_content) final;
// @generated_from: blink.mojom.LocalFrameHost.VisibilityChanged
void VisibilityChanged(::blink::mojom::blink::FrameVisibility visibility) final;
// @generated_from: blink.mojom.LocalFrameHost.DidChangeThemeColor
void DidChangeThemeColor(absl::optional<::SkColor> theme_color) final;
// @generated_from: blink.mojom.LocalFrameHost.DidChangeBackgroundColor
void DidChangeBackgroundColor(::SkColor background_color, bool color_adjust) final;
// @generated_from: blink.mojom.LocalFrameHost.DidFailLoadWithError
void DidFailLoadWithError(const ::blink::KURL& url, int32_t error_code) final;
// @generated_from: blink.mojom.LocalFrameHost.DidFocusFrame
void DidFocusFrame() final;
// @generated_from: blink.mojom.LocalFrameHost.DidCallFocus
void DidCallFocus() final;
// @generated_from: blink.mojom.LocalFrameHost.EnforceInsecureRequestPolicy
void EnforceInsecureRequestPolicy(::blink::mojom::blink::InsecureRequestPolicy policy_bitmap) final;
// @generated_from: blink.mojom.LocalFrameHost.EnforceInsecureNavigationsSet
void EnforceInsecureNavigationsSet(const WTF::Vector<uint32_t>& set) final;
// @generated_from: blink.mojom.LocalFrameHost.SuddenTerminationDisablerChanged
void SuddenTerminationDisablerChanged(bool present, ::blink::mojom::blink::SuddenTerminationDisablerType disabler_type) final;
// @generated_from: blink.mojom.LocalFrameHost.HadStickyUserActivationBeforeNavigationChanged
void HadStickyUserActivationBeforeNavigationChanged(bool has_gesture) final;
// @generated_from: blink.mojom.LocalFrameHost.ScrollRectToVisibleInParentFrame
void ScrollRectToVisibleInParentFrame(const ::gfx::RectF& rect_to_scroll, ::blink::mojom::blink::ScrollIntoViewParamsPtr params) final;
// @generated_from: blink.mojom.LocalFrameHost.BubbleLogicalScrollInParentFrame
void BubbleLogicalScrollInParentFrame(::blink::mojom::blink::ScrollDirection direction, ::ui::ScrollGranularity granularity) final;
// @generated_from: blink.mojom.LocalFrameHost.DidBlockNavigation
void DidBlockNavigation(const ::blink::KURL& blocked_url, const ::blink::KURL& initiator_url, ::blink::mojom::blink::NavigationBlockedReason reason) final;
// @generated_from: blink.mojom.LocalFrameHost.DidChangeLoadProgress
void DidChangeLoadProgress(double load_progress) final;
// @generated_from: blink.mojom.LocalFrameHost.DidFinishLoad
void DidFinishLoad(const ::blink::KURL& validated_url) final;
// @generated_from: blink.mojom.LocalFrameHost.DispatchLoad
void DispatchLoad() final;
// @generated_from: blink.mojom.LocalFrameHost.GoToEntryAtOffset
void GoToEntryAtOffset(int32_t offset, bool has_user_gesture) final;
// @generated_from: blink.mojom.LocalFrameHost.NavigateToNavigationApiKey
void NavigateToNavigationApiKey(const WTF::String& key, bool has_user_gesture) final;
// @generated_from: blink.mojom.LocalFrameHost.UpdateTitle
void UpdateTitle(const ::WTF::String& title, ::base::i18n::TextDirection title_direction) final;
// @generated_from: blink.mojom.LocalFrameHost.UpdateUserActivationState
void UpdateUserActivationState(::blink::mojom::blink::UserActivationUpdateType update_type, ::blink::mojom::blink::UserActivationNotificationType notification_type) final;
// @generated_from: blink.mojom.LocalFrameHost.HandleAccessibilityFindInPageResult
void HandleAccessibilityFindInPageResult(FindInPageResultAXParamsPtr params) final;
// @generated_from: blink.mojom.LocalFrameHost.HandleAccessibilityFindInPageTermination
void HandleAccessibilityFindInPageTermination() final;
// @generated_from: blink.mojom.LocalFrameHost.DocumentOnLoadCompleted
void DocumentOnLoadCompleted() final;
// @generated_from: blink.mojom.LocalFrameHost.ForwardResourceTimingToParent
void ForwardResourceTimingToParent(::blink::mojom::blink::ResourceTimingInfoPtr timing) final;
// @generated_from: blink.mojom.LocalFrameHost.DidDispatchDOMContentLoadedEvent
void DidDispatchDOMContentLoadedEvent() final;
// @generated_from: blink.mojom.LocalFrameHost.RunModalAlertDialog
bool RunModalAlertDialog(const ::WTF::String& alert_message, bool disable_third_party_subframe_suppresion) final;
// @generated_from: blink.mojom.LocalFrameHost.RunModalAlertDialog
void RunModalAlertDialog(const ::WTF::String& alert_message, bool disable_third_party_subframe_suppresion, RunModalAlertDialogCallback callback) final;
// @generated_from: blink.mojom.LocalFrameHost.RunModalConfirmDialog
bool RunModalConfirmDialog(const ::WTF::String& alert_message, bool disable_third_party_subframe_suppresion, bool* out_success) final;
// @generated_from: blink.mojom.LocalFrameHost.RunModalConfirmDialog
void RunModalConfirmDialog(const ::WTF::String& alert_message, bool disable_third_party_subframe_suppresion, RunModalConfirmDialogCallback callback) final;
// @generated_from: blink.mojom.LocalFrameHost.RunModalPromptDialog
bool RunModalPromptDialog(const ::WTF::String& alert_message, const ::WTF::String& default_value, bool disable_third_party_subframe_suppresion, bool* out_success, ::WTF::String* out_result) final;
// @generated_from: blink.mojom.LocalFrameHost.RunModalPromptDialog
void RunModalPromptDialog(const ::WTF::String& alert_message, const ::WTF::String& default_value, bool disable_third_party_subframe_suppresion, RunModalPromptDialogCallback callback) final;
// @generated_from: blink.mojom.LocalFrameHost.RunBeforeUnloadConfirm
bool RunBeforeUnloadConfirm(bool is_reload, bool* out_success) final;
// @generated_from: blink.mojom.LocalFrameHost.RunBeforeUnloadConfirm
void RunBeforeUnloadConfirm(bool is_reload, RunBeforeUnloadConfirmCallback callback) final;
// @generated_from: blink.mojom.LocalFrameHost.UpdateFaviconURL
void UpdateFaviconURL(WTF::Vector<::blink::mojom::blink::FaviconURLPtr> favicon_urls) final;
// @generated_from: blink.mojom.LocalFrameHost.DownloadURL
void DownloadURL(DownloadURLParamsPtr params) final;
// @generated_from: blink.mojom.LocalFrameHost.FocusedElementChanged
void FocusedElementChanged(bool is_editable_element, const ::gfx::Rect& bounds_in_frame_widget, ::blink::mojom::blink::FocusType focus_type) final;
// @generated_from: blink.mojom.LocalFrameHost.TextSelectionChanged
void TextSelectionChanged(const ::WTF::String& text, uint32_t offset, const ::gfx::Range& range) final;
// @generated_from: blink.mojom.LocalFrameHost.ShowPopupMenu
void ShowPopupMenu(::mojo::PendingRemote<::blink::mojom::blink::PopupMenuClient> popup_client, const ::gfx::Rect& bounds, int32_t item_height, double font_size, int32_t selected_item, WTF::Vector<::blink::mojom::blink::MenuItemPtr> menu_items, bool right_aligned, bool allow_multiple_selection) final;
// @generated_from: blink.mojom.LocalFrameHost.CreateNewPopupWidget
void CreateNewPopupWidget(::mojo::PendingAssociatedReceiver<::blink::mojom::blink::PopupWidgetHost> popup_host, ::mojo::PendingAssociatedReceiver<::blink::mojom::blink::WidgetHost> blink_widget_host, ::mojo::PendingAssociatedRemote<::blink::mojom::blink::Widget> blink_widget) final;
// @generated_from: blink.mojom.LocalFrameHost.ShowContextMenu
void ShowContextMenu(::mojo::PendingAssociatedRemote<::blink::mojom::blink::ContextMenuClient> client, const ::blink::UntrustworthyContextMenuParams& params) final;
// @generated_from: blink.mojom.LocalFrameHost.DidLoadResourceFromMemoryCache
void DidLoadResourceFromMemoryCache(const ::blink::KURL& url, const WTF::String& http_method, const WTF::String& mime_type, ::network::mojom::blink::RequestDestination request_destination, bool include_credentials) final;
// @generated_from: blink.mojom.LocalFrameHost.DidChangeFrameOwnerProperties
void DidChangeFrameOwnerProperties(const ::blink::FrameToken& child_frame_token, ::blink::mojom::blink::FrameOwnerPropertiesPtr frame_owner_properties) final;
// @generated_from: blink.mojom.LocalFrameHost.DidChangeOpener
void DidChangeOpener(const absl::optional<::blink::LocalFrameToken>& opener_frame) final;
// @generated_from: blink.mojom.LocalFrameHost.DidChangeFramePolicy
void DidChangeFramePolicy(const ::blink::FrameToken& child_frame_token, const ::blink::FramePolicy& frame_policy) final;
// @generated_from: blink.mojom.LocalFrameHost.DidChangeIframeAttributes
void DidChangeIframeAttributes(const ::blink::FrameToken& child_frame_token, ::network::mojom::blink::ContentSecurityPolicyPtr parsed_csp_attribute, bool anonymous) final;
// @generated_from: blink.mojom.LocalFrameHost.CapturePaintPreviewOfSubframe
void CapturePaintPreviewOfSubframe(const ::gfx::Rect& clip_rect, const ::base::UnguessableToken& guid) final;
// @generated_from: blink.mojom.LocalFrameHost.SetCloseListener
void SetCloseListener(::mojo::PendingRemote<::blink::mojom::blink::CloseListener> listener) final;
// @generated_from: blink.mojom.LocalFrameHost.Detach
void Detach() final;
// @generated_from: blink.mojom.LocalFrameHost.GetKeepAliveHandleFactory
void GetKeepAliveHandleFactory(::mojo::PendingReceiver<KeepAliveHandleFactory> factory) final;
// @generated_from: blink.mojom.LocalFrameHost.DidAddMessageToConsole
void DidAddMessageToConsole(::blink::mojom::blink::ConsoleMessageLevel log_level, const ::WTF::String& msg, uint32_t line_number, const ::WTF::String& source_id, const ::WTF::String& untrusted_stack_trace) final;
// @generated_from: blink.mojom.LocalFrameHost.FrameSizeChanged
void FrameSizeChanged(const ::gfx::Size& size) final;
// @generated_from: blink.mojom.LocalFrameHost.DidUpdatePreferredColorScheme
void DidUpdatePreferredColorScheme(::blink::mojom::blink::PreferredColorScheme preferred_color_scheme) final;
// @generated_from: blink.mojom.LocalFrameHost.DidInferColorScheme
void DidInferColorScheme(::blink::mojom::blink::PreferredColorScheme color_scheme) final;
// @generated_from: blink.mojom.LocalFrameHost.DidChangeSrcDoc
void DidChangeSrcDoc(const ::blink::FrameToken& child_frame_token, const WTF::String& srcdoc_value) final;
// @generated_from: blink.mojom.LocalFrameHost.ReceivedDelegatedCapability
void ReceivedDelegatedCapability(::blink::mojom::blink::DelegatedCapability delegated_capability) final;
private:
mojo::MessageReceiverWithResponder* receiver_;
};
// @generated_from: blink.mojom.LocalFrame
class CORE_EXPORT LocalFrameProxy
: public LocalFrame {
public:
using InterfaceType = LocalFrame;
explicit LocalFrameProxy(mojo::MessageReceiverWithResponder* receiver);
// @generated_from: blink.mojom.LocalFrame.GetTextSurroundingSelection
void GetTextSurroundingSelection(uint32_t max_length, GetTextSurroundingSelectionCallback callback) final;
// @generated_from: blink.mojom.LocalFrame.SendInterventionReport
void SendInterventionReport(const WTF::String& id, const WTF::String& message) final;
// @generated_from: blink.mojom.LocalFrame.SetFrameOwnerProperties
void SetFrameOwnerProperties(::blink::mojom::blink::FrameOwnerPropertiesPtr properties) final;
// @generated_from: blink.mojom.LocalFrame.NotifyUserActivation
void NotifyUserActivation(::blink::mojom::blink::UserActivationNotificationType notification_type) final;
// @generated_from: blink.mojom.LocalFrame.NotifyVirtualKeyboardOverlayRect
void NotifyVirtualKeyboardOverlayRect(const ::gfx::Rect& keyboard_rect) final;
// @generated_from: blink.mojom.LocalFrame.AddMessageToConsole
void AddMessageToConsole(::blink::mojom::blink::ConsoleMessageLevel level, const WTF::String& message, bool discard_duplicates) final;
// @generated_from: blink.mojom.LocalFrame.AddInspectorIssue
void AddInspectorIssue(::blink::mojom::blink::InspectorIssueInfoPtr info) final;
// @generated_from: blink.mojom.LocalFrame.SwapInImmediately
void SwapInImmediately() final;
// @generated_from: blink.mojom.LocalFrame.CheckCompleted
void CheckCompleted() final;
// @generated_from: blink.mojom.LocalFrame.StopLoading
void StopLoading() final;
// @generated_from: blink.mojom.LocalFrame.Collapse
void Collapse(bool collapsed) final;
// @generated_from: blink.mojom.LocalFrame.EnableViewSourceMode
void EnableViewSourceMode() final;
// @generated_from: blink.mojom.LocalFrame.Focus
void Focus() final;
// @generated_from: blink.mojom.LocalFrame.ClearFocusedElement
void ClearFocusedElement() final;
// @generated_from: blink.mojom.LocalFrame.GetResourceSnapshotForWebBundle
void GetResourceSnapshotForWebBundle(::mojo::PendingReceiver<::data_decoder::mojom::blink::ResourceSnapshotForWebBundle> receiver) final;
// @generated_from: blink.mojom.LocalFrame.CopyImageAt
void CopyImageAt(const ::gfx::Point& window_point) final;
// @generated_from: blink.mojom.LocalFrame.SaveImageAt
void SaveImageAt(const ::gfx::Point& window_point) final;
// @generated_from: blink.mojom.LocalFrame.ReportBlinkFeatureUsage
void ReportBlinkFeatureUsage(const WTF::Vector<::blink::mojom::blink::WebFeature>& features) final;
// @generated_from: blink.mojom.LocalFrame.RenderFallbackContent
void RenderFallbackContent() final;
// @generated_from: blink.mojom.LocalFrame.RenderFallbackContentWithResourceTiming
void RenderFallbackContentWithResourceTiming(::blink::mojom::blink::ResourceTimingInfoPtr timing, const WTF::String& server_timing_value) final;
// @generated_from: blink.mojom.LocalFrame.BeforeUnload
void BeforeUnload(bool is_reload, BeforeUnloadCallback callback) final;
// @generated_from: blink.mojom.LocalFrame.MediaPlayerActionAt
void MediaPlayerActionAt(const ::gfx::Point& location, ::blink::mojom::blink::MediaPlayerActionPtr action) final;
// @generated_from: blink.mojom.LocalFrame.PluginActionAt
void PluginActionAt(const ::gfx::Point& location, PluginActionType action) final;
// @generated_from: blink.mojom.LocalFrame.AdvanceFocusInFrame
void AdvanceFocusInFrame(::blink::mojom::blink::FocusType focus_type, const absl::optional<::blink::RemoteFrameToken>& source_frame_token) final;
// @generated_from: blink.mojom.LocalFrame.AdvanceFocusForIME
void AdvanceFocusForIME(::blink::mojom::blink::FocusType focus_type) final;
// @generated_from: blink.mojom.LocalFrame.ReportContentSecurityPolicyViolation
void ReportContentSecurityPolicyViolation(::network::mojom::blink::CSPViolationPtr violation) final;
// @generated_from: blink.mojom.LocalFrame.DidUpdateFramePolicy
void DidUpdateFramePolicy(const ::blink::FramePolicy& frame_policy) final;
// @generated_from: blink.mojom.LocalFrame.PostMessageEvent
void PostMessageEvent(const absl::optional<::blink::RemoteFrameToken>& source_frame_token, const ::WTF::String& source_origin, const ::WTF::String& target_origin, ::blink::BlinkTransferableMessage message) final;
// @generated_from: blink.mojom.LocalFrame.JavaScriptMethodExecuteRequest
void JavaScriptMethodExecuteRequest(const ::WTF::String& object_name, const ::WTF::String& method_name, ::base::Value::List arguments, bool wants_result, JavaScriptMethodExecuteRequestCallback callback) final;
// @generated_from: blink.mojom.LocalFrame.JavaScriptExecuteRequest
void JavaScriptExecuteRequest(const ::WTF::String& javascript, bool wants_result, JavaScriptExecuteRequestCallback callback) final;
// @generated_from: blink.mojom.LocalFrame.JavaScriptExecuteRequestForTests
void JavaScriptExecuteRequestForTests(const ::WTF::String& javascript, bool has_user_gesture, bool resolve_promises, int32_t world_id, JavaScriptExecuteRequestForTestsCallback callback) final;
// @generated_from: blink.mojom.LocalFrame.JavaScriptExecuteRequestInIsolatedWorld
void JavaScriptExecuteRequestInIsolatedWorld(const ::WTF::String& javascript, bool wants_result, int32_t world_id, JavaScriptExecuteRequestInIsolatedWorldCallback callback) final;
// @generated_from: blink.mojom.LocalFrame.BindReportingObserver
void BindReportingObserver(::mojo::PendingReceiver<::blink::mojom::blink::ReportingObserver> receiver) final;
// @generated_from: blink.mojom.LocalFrame.UpdateOpener
void UpdateOpener(const absl::optional<::blink::FrameToken>& opener_frame_token) final;
// @generated_from: blink.mojom.LocalFrame.GetSavableResourceLinks
void GetSavableResourceLinks(GetSavableResourceLinksCallback callback) final;
// @generated_from: blink.mojom.LocalFrame.MixedContentFound
void MixedContentFound(const ::blink::KURL& main_resource_url, const ::blink::KURL& mixed_content_url, ::blink::mojom::blink::RequestContextType request_context, bool was_allowed, const ::blink::KURL& url_before_redirects, bool had_redirect, ::network::mojom::blink::SourceLocationPtr source_location) final;
// @generated_from: blink.mojom.LocalFrame.BindDevToolsAgent
void BindDevToolsAgent(::mojo::PendingAssociatedRemote<::blink::mojom::blink::DevToolsAgentHost> agent_host, ::mojo::PendingAssociatedReceiver<::blink::mojom::blink::DevToolsAgent> agent) final;
// @generated_from: blink.mojom.LocalFrame.ExtractSmartClipData
void ExtractSmartClipData(const ::gfx::Rect& rect, ExtractSmartClipDataCallback callback) final;
// @generated_from: blink.mojom.LocalFrame.HandleRendererDebugURL
void HandleRendererDebugURL(const ::blink::KURL& url) final;
// @generated_from: blink.mojom.LocalFrame.GetCanonicalUrlForSharing
void GetCanonicalUrlForSharing(GetCanonicalUrlForSharingCallback callback) final;
// @generated_from: blink.mojom.LocalFrame.GetOpenGraphMetadata
void GetOpenGraphMetadata(GetOpenGraphMetadataCallback callback) final;
// @generated_from: blink.mojom.LocalFrame.SetNavigationApiHistoryEntriesForRestore
void SetNavigationApiHistoryEntriesForRestore(::blink::mojom::blink::NavigationApiHistoryEntryArraysPtr entry_arrays) final;
private:
mojo::MessageReceiverWithResponder* receiver_;
};
// @generated_from: blink.mojom.HighPriorityLocalFrame
class CORE_EXPORT HighPriorityLocalFrameProxy
: public HighPriorityLocalFrame {
public:
using InterfaceType = HighPriorityLocalFrame;
explicit HighPriorityLocalFrameProxy(mojo::MessageReceiverWithResponder* receiver);
// @generated_from: blink.mojom.HighPriorityLocalFrame.DispatchBeforeUnload
void DispatchBeforeUnload(bool is_reload, DispatchBeforeUnloadCallback callback) final;
private:
mojo::MessageReceiverWithResponder* receiver_;
};
// @generated_from: blink.mojom.RemoteFrameHost
class CORE_EXPORT RemoteFrameHostProxy
: public RemoteFrameHost {
public:
using InterfaceType = RemoteFrameHost;
explicit RemoteFrameHostProxy(mojo::MessageReceiverWithResponder* receiver);
// @generated_from: blink.mojom.RemoteFrameHost.SetInheritedEffectiveTouchAction
void SetInheritedEffectiveTouchAction(::cc::TouchAction touch_action) final;
// @generated_from: blink.mojom.RemoteFrameHost.UpdateRenderThrottlingStatus
void UpdateRenderThrottlingStatus(bool is_throttled, bool subtree_throttled, bool display_locked) final;
// @generated_from: blink.mojom.RemoteFrameHost.VisibilityChanged
void VisibilityChanged(::blink::mojom::blink::FrameVisibility visibility) final;
// @generated_from: blink.mojom.RemoteFrameHost.DidFocusFrame
void DidFocusFrame() final;
// @generated_from: blink.mojom.RemoteFrameHost.CheckCompleted
void CheckCompleted() final;
// @generated_from: blink.mojom.RemoteFrameHost.CapturePaintPreviewOfCrossProcessSubframe
void CapturePaintPreviewOfCrossProcessSubframe(const ::gfx::Rect& clip_rect, const ::base::UnguessableToken& guid) final;
// @generated_from: blink.mojom.RemoteFrameHost.SetIsInert
void SetIsInert(bool inert) final;
// @generated_from: blink.mojom.RemoteFrameHost.DidChangeOpener
void DidChangeOpener(const absl::optional<::blink::LocalFrameToken>& opener_frame) final;
// @generated_from: blink.mojom.RemoteFrameHost.AdvanceFocus
void AdvanceFocus(::blink::mojom::blink::FocusType focus_type, const ::blink::LocalFrameToken& source_frame_token) final;
// @generated_from: blink.mojom.RemoteFrameHost.RouteMessageEvent
void RouteMessageEvent(const absl::optional<::blink::LocalFrameToken>& source_frame_token, const ::WTF::String& source_origin, const ::WTF::String& target_origin, ::blink::BlinkTransferableMessage message) final;
// @generated_from: blink.mojom.RemoteFrameHost.PrintCrossProcessSubframe
void PrintCrossProcessSubframe(const ::gfx::Rect& frame_content_rect, int32_t document_cookie) final;
// @generated_from: blink.mojom.RemoteFrameHost.Detach
void Detach() final;
// @generated_from: blink.mojom.RemoteFrameHost.UpdateViewportIntersection
void UpdateViewportIntersection(::blink::mojom::blink::ViewportIntersectionStatePtr intersection_state, const absl::optional<::blink::FrameVisualProperties>& visual_properties) final;
// @generated_from: blink.mojom.RemoteFrameHost.SynchronizeVisualProperties
void SynchronizeVisualProperties(const ::blink::FrameVisualProperties& properties) final;
// @generated_from: blink.mojom.RemoteFrameHost.OpenURL
void OpenURL(OpenURLParamsPtr params) final;
private:
mojo::MessageReceiverWithResponder* receiver_;
};
// @generated_from: blink.mojom.RemoteFrame
class CORE_EXPORT RemoteFrameProxy
: public RemoteFrame {
public:
using InterfaceType = RemoteFrame;
explicit RemoteFrameProxy(mojo::MessageReceiverWithResponder* receiver);
// @generated_from: blink.mojom.RemoteFrame.WillEnterFullscreen
void WillEnterFullscreen(::blink::mojom::blink::FullscreenOptionsPtr options) final;
// @generated_from: blink.mojom.RemoteFrame.EnforceInsecureNavigationsSet
void EnforceInsecureNavigationsSet(const WTF::Vector<uint32_t>& set) final;
// @generated_from: blink.mojom.RemoteFrame.SetFrameOwnerProperties
void SetFrameOwnerProperties(::blink::mojom::blink::FrameOwnerPropertiesPtr properties) final;
// @generated_from: blink.mojom.RemoteFrame.EnforceInsecureRequestPolicy
void EnforceInsecureRequestPolicy(::blink::mojom::blink::InsecureRequestPolicy policy) final;
// @generated_from: blink.mojom.RemoteFrame.SetReplicatedOrigin
void SetReplicatedOrigin(const ::scoped_refptr<const ::blink::SecurityOrigin>& origin, bool is_potentially_trustworthy_unique_origin) final;
// @generated_from: blink.mojom.RemoteFrame.SetReplicatedIsAdSubframe
void SetReplicatedIsAdSubframe(bool is_ad_subframe) final;
// @generated_from: blink.mojom.RemoteFrame.SetReplicatedName
void SetReplicatedName(const WTF::String& name, const WTF::String& unique_name) final;
// @generated_from: blink.mojom.RemoteFrame.DispatchLoadEventForFrameOwner
void DispatchLoadEventForFrameOwner() final;
// @generated_from: blink.mojom.RemoteFrame.SetNeedsOcclusionTracking
void SetNeedsOcclusionTracking(bool needs_tracking) final;
// @generated_from: blink.mojom.RemoteFrame.Collapse
void Collapse(bool collapsed) final;
// @generated_from: blink.mojom.RemoteFrame.Focus
void Focus() final;
// @generated_from: blink.mojom.RemoteFrame.SetHadStickyUserActivationBeforeNavigation
void SetHadStickyUserActivationBeforeNavigation(bool has_gesture) final;
// @generated_from: blink.mojom.RemoteFrame.BubbleLogicalScroll
void BubbleLogicalScroll(::blink::mojom::blink::ScrollDirection direction, ::ui::ScrollGranularity granularity) final;
// @generated_from: blink.mojom.RemoteFrame.UpdateUserActivationState
void UpdateUserActivationState(::blink::mojom::blink::UserActivationUpdateType state_update_type, ::blink::mojom::blink::UserActivationNotificationType notification_type) final;
// @generated_from: blink.mojom.RemoteFrame.SetEmbeddingToken
void SetEmbeddingToken(const ::base::UnguessableToken& embedding_token) final;
// @generated_from: blink.mojom.RemoteFrame.SetPageFocus
void SetPageFocus(bool is_focused) final;
// @generated_from: blink.mojom.RemoteFrame.RenderFallbackContent
void RenderFallbackContent() final;
// @generated_from: blink.mojom.RemoteFrame.RenderFallbackContentWithResourceTiming
void RenderFallbackContentWithResourceTiming(::blink::mojom::blink::ResourceTimingInfoPtr timing, const WTF::String& server_timing_value) final;
// @generated_from: blink.mojom.RemoteFrame.AddResourceTimingFromChild
void AddResourceTimingFromChild(::blink::mojom::blink::ResourceTimingInfoPtr timing) final;
// @generated_from: blink.mojom.RemoteFrame.ScrollRectToVisible
void ScrollRectToVisible(const ::gfx::RectF& rect, ::blink::mojom::blink::ScrollIntoViewParamsPtr params) final;
// @generated_from: blink.mojom.RemoteFrame.DidStartLoading
void DidStartLoading() final;
// @generated_from: blink.mojom.RemoteFrame.DidStopLoading
void DidStopLoading() final;
// @generated_from: blink.mojom.RemoteFrame.IntrinsicSizingInfoOfChildChanged
void IntrinsicSizingInfoOfChildChanged(::blink::mojom::blink::IntrinsicSizingInfoPtr sizing_info) final;
// @generated_from: blink.mojom.RemoteFrame.DidSetFramePolicyHeaders
void DidSetFramePolicyHeaders(::network::mojom::blink::WebSandboxFlags sandbox_flags, const WTF::Vector<::blink::ParsedPermissionsPolicyDeclaration>& parsed_permissions_policy) final;
// @generated_from: blink.mojom.RemoteFrame.DidUpdateFramePolicy
void DidUpdateFramePolicy(const ::blink::FramePolicy& frame_policy) final;
// @generated_from: blink.mojom.RemoteFrame.UpdateOpener
void UpdateOpener(const absl::optional<::blink::FrameToken>& opener_frame_token) final;
// @generated_from: blink.mojom.RemoteFrame.DetachAndDispose
void DetachAndDispose() final;
// @generated_from: blink.mojom.RemoteFrame.EnableAutoResize
void EnableAutoResize(const ::gfx::Size& min_size, const ::gfx::Size& max_size) final;
// @generated_from: blink.mojom.RemoteFrame.DisableAutoResize
void DisableAutoResize() final;
// @generated_from: blink.mojom.RemoteFrame.DidUpdateVisualProperties
void DidUpdateVisualProperties(const ::cc::RenderFrameMetadata& metadata) final;
// @generated_from: blink.mojom.RemoteFrame.SetFrameSinkId
void SetFrameSinkId(const ::viz::FrameSinkId& frame_sink_id) final;
// @generated_from: blink.mojom.RemoteFrame.ChildProcessGone
void ChildProcessGone() final;
private:
mojo::MessageReceiverWithResponder* receiver_;
};
// @generated_from: blink.mojom.LocalMainFrame
class CORE_EXPORT LocalMainFrameProxy
: public LocalMainFrame {
public:
using InterfaceType = LocalMainFrame;
explicit LocalMainFrameProxy(mojo::MessageReceiverWithResponder* receiver);
// @generated_from: blink.mojom.LocalMainFrame.AnimateDoubleTapZoom
void AnimateDoubleTapZoom(const ::gfx::Point& point, const ::gfx::Rect& rect) final;
// @generated_from: blink.mojom.LocalMainFrame.SetScaleFactor
void SetScaleFactor(float scale) final;
// @generated_from: blink.mojom.LocalMainFrame.ClosePage
void ClosePage(ClosePageCallback callback) final;
// @generated_from: blink.mojom.LocalMainFrame.SetInitialFocus
void SetInitialFocus(bool reverse) final;
// @generated_from: blink.mojom.LocalMainFrame.EnablePreferredSizeChangedMode
void EnablePreferredSizeChangedMode() final;
// @generated_from: blink.mojom.LocalMainFrame.ZoomToFindInPageRect
void ZoomToFindInPageRect(const ::gfx::Rect& rect_in_root_frame) final;
// @generated_from: blink.mojom.LocalMainFrame.InstallCoopAccessMonitor
void InstallCoopAccessMonitor(const ::blink::FrameToken& accessed_window, ::network::mojom::blink::CrossOriginOpenerPolicyReporterParamsPtr coop_reporter_info) final;
// @generated_from: blink.mojom.LocalMainFrame.OnPortalActivated
void OnPortalActivated(const ::blink::PortalToken& portal_token, ::mojo::PendingAssociatedRemote<::blink::mojom::blink::Portal> portal, ::mojo::PendingAssociatedReceiver<::blink::mojom::blink::PortalClient> portal_client, ::blink::BlinkTransferableMessage data, uint64_t trace_id, OnPortalActivatedCallback callback) final;
// @generated_from: blink.mojom.LocalMainFrame.ForwardMessageFromHost
void ForwardMessageFromHost(::blink::BlinkTransferableMessage message, const ::scoped_refptr<const ::blink::SecurityOrigin>& source_origin) final;
// @generated_from: blink.mojom.LocalMainFrame.UpdateBrowserControlsState
void UpdateBrowserControlsState(::cc::BrowserControlsState constraints, ::cc::BrowserControlsState current, bool animate) final;
private:
mojo::MessageReceiverWithResponder* receiver_;
};
// @generated_from: blink.mojom.RemoteMainFrame
class CORE_EXPORT RemoteMainFrameProxy
: public RemoteMainFrame {
public:
using InterfaceType = RemoteMainFrame;
explicit RemoteMainFrameProxy(mojo::MessageReceiverWithResponder* receiver);
// @generated_from: blink.mojom.RemoteMainFrame.UpdateTextAutosizerPageInfo
void UpdateTextAutosizerPageInfo(::blink::mojom::blink::TextAutosizerPageInfoPtr page_info) final;
private:
mojo::MessageReceiverWithResponder* receiver_;
};
// @generated_from: blink.mojom.LocalMainFrameHost
class CORE_EXPORT LocalMainFrameHostProxy
: public LocalMainFrameHost {
public:
using InterfaceType = LocalMainFrameHost;
explicit LocalMainFrameHostProxy(mojo::MessageReceiverWithResponder* receiver);
// @generated_from: blink.mojom.LocalMainFrameHost.ScaleFactorChanged
void ScaleFactorChanged(float scale) final;
// @generated_from: blink.mojom.LocalMainFrameHost.ContentsPreferredSizeChanged
void ContentsPreferredSizeChanged(const ::gfx::Size& pref_size) final;
// @generated_from: blink.mojom.LocalMainFrameHost.TextAutosizerPageInfoChanged
void TextAutosizerPageInfoChanged(::blink::mojom::blink::TextAutosizerPageInfoPtr page_info) final;
// @generated_from: blink.mojom.LocalMainFrameHost.FocusPage
void FocusPage() final;
// @generated_from: blink.mojom.LocalMainFrameHost.TakeFocus
void TakeFocus(bool reverse) final;
// @generated_from: blink.mojom.LocalMainFrameHost.UpdateTargetURL
void UpdateTargetURL(const ::blink::KURL& url, UpdateTargetURLCallback callback) final;
// @generated_from: blink.mojom.LocalMainFrameHost.RequestClose
void RequestClose() final;
// @generated_from: blink.mojom.LocalMainFrameHost.ShowCreatedWindow
void ShowCreatedWindow(const ::blink::LocalFrameToken& opener_frame_token, ::ui::mojom::blink::WindowOpenDisposition disposition, const ::gfx::Rect& rect, bool opened_by_user_gesture, ShowCreatedWindowCallback callback) final;
// @generated_from: blink.mojom.LocalMainFrameHost.SetWindowRect
void SetWindowRect(const ::gfx::Rect& bounds, SetWindowRectCallback callback) final;
// @generated_from: blink.mojom.LocalMainFrameHost.DidFirstVisuallyNonEmptyPaint
void DidFirstVisuallyNonEmptyPaint() final;
// @generated_from: blink.mojom.LocalMainFrameHost.DidAccessInitialMainDocument
void DidAccessInitialMainDocument() final;
private:
mojo::MessageReceiverWithResponder* receiver_;
};
// @generated_from: blink.mojom.RemoteMainFrameHost
class CORE_EXPORT RemoteMainFrameHostProxy
: public RemoteMainFrameHost {
public:
using InterfaceType = RemoteMainFrameHost;
explicit RemoteMainFrameHostProxy(mojo::MessageReceiverWithResponder* receiver);
// @generated_from: blink.mojom.RemoteMainFrameHost.FocusPage
void FocusPage() final;
// @generated_from: blink.mojom.RemoteMainFrameHost.TakeFocus
void TakeFocus(bool reverse) final;
// @generated_from: blink.mojom.RemoteMainFrameHost.UpdateTargetURL
void UpdateTargetURL(const ::blink::KURL& url, UpdateTargetURLCallback callback) final;
// @generated_from: blink.mojom.RemoteMainFrameHost.RouteCloseEvent
void RouteCloseEvent() final;
private:
mojo::MessageReceiverWithResponder* receiver_;
};
class CORE_EXPORT KeepAliveHandleStubDispatch {
public:
static bool Accept(KeepAliveHandle* impl, mojo::Message* message);
static bool AcceptWithResponder(
KeepAliveHandle* impl,
mojo::Message* message,
std::unique_ptr<mojo::MessageReceiverWithStatus> responder);
};
template <typename ImplRefTraits =
mojo::RawPtrImplRefTraits<KeepAliveHandle>>
class KeepAliveHandleStub
: public mojo::MessageReceiverWithResponderStatus {
public:
using ImplPointerType = typename ImplRefTraits::PointerType;
KeepAliveHandleStub() = default;
~KeepAliveHandleStub() override = default;
void set_sink(ImplPointerType sink) { sink_ = std::move(sink); }
ImplPointerType& sink() { return sink_; }
bool Accept(mojo::Message* message) override {
if (ImplRefTraits::IsNull(sink_))
return false;
return KeepAliveHandleStubDispatch::Accept(
ImplRefTraits::GetRawPointer(&sink_), message);
}
bool AcceptWithResponder(
mojo::Message* message,
std::unique_ptr<mojo::MessageReceiverWithStatus> responder) override {
if (ImplRefTraits::IsNull(sink_))
return false;
return KeepAliveHandleStubDispatch::AcceptWithResponder(
ImplRefTraits::GetRawPointer(&sink_), message, std::move(responder));
}
private:
ImplPointerType sink_;
};
class CORE_EXPORT KeepAliveHandleFactoryStubDispatch {
public:
static bool Accept(KeepAliveHandleFactory* impl, mojo::Message* message);
static bool AcceptWithResponder(
KeepAliveHandleFactory* impl,
mojo::Message* message,
std::unique_ptr<mojo::MessageReceiverWithStatus> responder);
};
template <typename ImplRefTraits =
mojo::RawPtrImplRefTraits<KeepAliveHandleFactory>>
class KeepAliveHandleFactoryStub
: public mojo::MessageReceiverWithResponderStatus {
public:
using ImplPointerType = typename ImplRefTraits::PointerType;
KeepAliveHandleFactoryStub() = default;
~KeepAliveHandleFactoryStub() override = default;
void set_sink(ImplPointerType sink) { sink_ = std::move(sink); }
ImplPointerType& sink() { return sink_; }
bool Accept(mojo::Message* message) override {
if (ImplRefTraits::IsNull(sink_))
return false;
return KeepAliveHandleFactoryStubDispatch::Accept(
ImplRefTraits::GetRawPointer(&sink_), message);
}
bool AcceptWithResponder(
mojo::Message* message,
std::unique_ptr<mojo::MessageReceiverWithStatus> responder) override {
if (ImplRefTraits::IsNull(sink_))
return false;
return KeepAliveHandleFactoryStubDispatch::AcceptWithResponder(
ImplRefTraits::GetRawPointer(&sink_), message, std::move(responder));
}
private:
ImplPointerType sink_;
};
class CORE_EXPORT LocalFrameHostStubDispatch {
public:
static bool Accept(LocalFrameHost* impl, mojo::Message* message);
static bool AcceptWithResponder(
LocalFrameHost* impl,
mojo::Message* message,
std::unique_ptr<mojo::MessageReceiverWithStatus> responder);
};
template <typename ImplRefTraits =
mojo::RawPtrImplRefTraits<LocalFrameHost>>
class LocalFrameHostStub
: public mojo::MessageReceiverWithResponderStatus {
public:
using ImplPointerType = typename ImplRefTraits::PointerType;
LocalFrameHostStub() = default;
~LocalFrameHostStub() override = default;
void set_sink(ImplPointerType sink) { sink_ = std::move(sink); }
ImplPointerType& sink() { return sink_; }
bool Accept(mojo::Message* message) override {
if (ImplRefTraits::IsNull(sink_))
return false;
return LocalFrameHostStubDispatch::Accept(
ImplRefTraits::GetRawPointer(&sink_), message);
}
bool AcceptWithResponder(
mojo::Message* message,
std::unique_ptr<mojo::MessageReceiverWithStatus> responder) override {
if (ImplRefTraits::IsNull(sink_))
return false;
return LocalFrameHostStubDispatch::AcceptWithResponder(
ImplRefTraits::GetRawPointer(&sink_), message, std::move(responder));
}
private:
ImplPointerType sink_;
};
class CORE_EXPORT LocalFrameStubDispatch {
public:
static bool Accept(LocalFrame* impl, mojo::Message* message);
static bool AcceptWithResponder(
LocalFrame* impl,
mojo::Message* message,
std::unique_ptr<mojo::MessageReceiverWithStatus> responder);
};
template <typename ImplRefTraits =
mojo::RawPtrImplRefTraits<LocalFrame>>
class LocalFrameStub
: public mojo::MessageReceiverWithResponderStatus {
public:
using ImplPointerType = typename ImplRefTraits::PointerType;
LocalFrameStub() = default;
~LocalFrameStub() override = default;
void set_sink(ImplPointerType sink) { sink_ = std::move(sink); }
ImplPointerType& sink() { return sink_; }
bool Accept(mojo::Message* message) override {
if (ImplRefTraits::IsNull(sink_))
return false;
return LocalFrameStubDispatch::Accept(
ImplRefTraits::GetRawPointer(&sink_), message);
}
bool AcceptWithResponder(
mojo::Message* message,
std::unique_ptr<mojo::MessageReceiverWithStatus> responder) override {
if (ImplRefTraits::IsNull(sink_))
return false;
return LocalFrameStubDispatch::AcceptWithResponder(
ImplRefTraits::GetRawPointer(&sink_), message, std::move(responder));
}
private:
ImplPointerType sink_;
};
class CORE_EXPORT HighPriorityLocalFrameStubDispatch {
public:
static bool Accept(HighPriorityLocalFrame* impl, mojo::Message* message);
static bool AcceptWithResponder(
HighPriorityLocalFrame* impl,
mojo::Message* message,
std::unique_ptr<mojo::MessageReceiverWithStatus> responder);
};
template <typename ImplRefTraits =
mojo::RawPtrImplRefTraits<HighPriorityLocalFrame>>
class HighPriorityLocalFrameStub
: public mojo::MessageReceiverWithResponderStatus {
public:
using ImplPointerType = typename ImplRefTraits::PointerType;
HighPriorityLocalFrameStub() = default;
~HighPriorityLocalFrameStub() override = default;
void set_sink(ImplPointerType sink) { sink_ = std::move(sink); }
ImplPointerType& sink() { return sink_; }
bool Accept(mojo::Message* message) override {
if (ImplRefTraits::IsNull(sink_))
return false;
return HighPriorityLocalFrameStubDispatch::Accept(
ImplRefTraits::GetRawPointer(&sink_), message);
}
bool AcceptWithResponder(
mojo::Message* message,
std::unique_ptr<mojo::MessageReceiverWithStatus> responder) override {
if (ImplRefTraits::IsNull(sink_))
return false;
return HighPriorityLocalFrameStubDispatch::AcceptWithResponder(
ImplRefTraits::GetRawPointer(&sink_), message, std::move(responder));
}
private:
ImplPointerType sink_;
};
class CORE_EXPORT RemoteFrameHostStubDispatch {
public:
static bool Accept(RemoteFrameHost* impl, mojo::Message* message);
static bool AcceptWithResponder(
RemoteFrameHost* impl,
mojo::Message* message,
std::unique_ptr<mojo::MessageReceiverWithStatus> responder);
};
template <typename ImplRefTraits =
mojo::RawPtrImplRefTraits<RemoteFrameHost>>
class RemoteFrameHostStub
: public mojo::MessageReceiverWithResponderStatus {
public:
using ImplPointerType = typename ImplRefTraits::PointerType;
RemoteFrameHostStub() = default;
~RemoteFrameHostStub() override = default;
void set_sink(ImplPointerType sink) { sink_ = std::move(sink); }
ImplPointerType& sink() { return sink_; }
bool Accept(mojo::Message* message) override {
if (ImplRefTraits::IsNull(sink_))
return false;
return RemoteFrameHostStubDispatch::Accept(
ImplRefTraits::GetRawPointer(&sink_), message);
}
bool AcceptWithResponder(
mojo::Message* message,
std::unique_ptr<mojo::MessageReceiverWithStatus> responder) override {
if (ImplRefTraits::IsNull(sink_))
return false;
return RemoteFrameHostStubDispatch::AcceptWithResponder(
ImplRefTraits::GetRawPointer(&sink_), message, std::move(responder));
}
private:
ImplPointerType sink_;
};
class CORE_EXPORT RemoteFrameStubDispatch {
public:
static bool Accept(RemoteFrame* impl, mojo::Message* message);
static bool AcceptWithResponder(
RemoteFrame* impl,
mojo::Message* message,
std::unique_ptr<mojo::MessageReceiverWithStatus> responder);
};
template <typename ImplRefTraits =
mojo::RawPtrImplRefTraits<RemoteFrame>>
class RemoteFrameStub
: public mojo::MessageReceiverWithResponderStatus {
public:
using ImplPointerType = typename ImplRefTraits::PointerType;
RemoteFrameStub() = default;
~RemoteFrameStub() override = default;
void set_sink(ImplPointerType sink) { sink_ = std::move(sink); }
ImplPointerType& sink() { return sink_; }
bool Accept(mojo::Message* message) override {
if (ImplRefTraits::IsNull(sink_))
return false;
return RemoteFrameStubDispatch::Accept(
ImplRefTraits::GetRawPointer(&sink_), message);
}
bool AcceptWithResponder(
mojo::Message* message,
std::unique_ptr<mojo::MessageReceiverWithStatus> responder) override {
if (ImplRefTraits::IsNull(sink_))
return false;
return RemoteFrameStubDispatch::AcceptWithResponder(
ImplRefTraits::GetRawPointer(&sink_), message, std::move(responder));
}
private:
ImplPointerType sink_;
};
class CORE_EXPORT LocalMainFrameStubDispatch {
public:
static bool Accept(LocalMainFrame* impl, mojo::Message* message);
static bool AcceptWithResponder(
LocalMainFrame* impl,
mojo::Message* message,
std::unique_ptr<mojo::MessageReceiverWithStatus> responder);
};
template <typename ImplRefTraits =
mojo::RawPtrImplRefTraits<LocalMainFrame>>
class LocalMainFrameStub
: public mojo::MessageReceiverWithResponderStatus {
public:
using ImplPointerType = typename ImplRefTraits::PointerType;
LocalMainFrameStub() = default;
~LocalMainFrameStub() override = default;
void set_sink(ImplPointerType sink) { sink_ = std::move(sink); }
ImplPointerType& sink() { return sink_; }
bool Accept(mojo::Message* message) override {
if (ImplRefTraits::IsNull(sink_))
return false;
return LocalMainFrameStubDispatch::Accept(
ImplRefTraits::GetRawPointer(&sink_), message);
}
bool AcceptWithResponder(
mojo::Message* message,
std::unique_ptr<mojo::MessageReceiverWithStatus> responder) override {
if (ImplRefTraits::IsNull(sink_))
return false;
return LocalMainFrameStubDispatch::AcceptWithResponder(
ImplRefTraits::GetRawPointer(&sink_), message, std::move(responder));
}
private:
ImplPointerType sink_;
};
class CORE_EXPORT RemoteMainFrameStubDispatch {
public:
static bool Accept(RemoteMainFrame* impl, mojo::Message* message);
static bool AcceptWithResponder(
RemoteMainFrame* impl,
mojo::Message* message,
std::unique_ptr<mojo::MessageReceiverWithStatus> responder);
};
template <typename ImplRefTraits =
mojo::RawPtrImplRefTraits<RemoteMainFrame>>
class RemoteMainFrameStub
: public mojo::MessageReceiverWithResponderStatus {
public:
using ImplPointerType = typename ImplRefTraits::PointerType;
RemoteMainFrameStub() = default;
~RemoteMainFrameStub() override = default;
void set_sink(ImplPointerType sink) { sink_ = std::move(sink); }
ImplPointerType& sink() { return sink_; }
bool Accept(mojo::Message* message) override {
if (ImplRefTraits::IsNull(sink_))
return false;
return RemoteMainFrameStubDispatch::Accept(
ImplRefTraits::GetRawPointer(&sink_), message);
}
bool AcceptWithResponder(
mojo::Message* message,
std::unique_ptr<mojo::MessageReceiverWithStatus> responder) override {
if (ImplRefTraits::IsNull(sink_))
return false;
return RemoteMainFrameStubDispatch::AcceptWithResponder(
ImplRefTraits::GetRawPointer(&sink_), message, std::move(responder));
}
private:
ImplPointerType sink_;
};
class CORE_EXPORT LocalMainFrameHostStubDispatch {
public:
static bool Accept(LocalMainFrameHost* impl, mojo::Message* message);
static bool AcceptWithResponder(
LocalMainFrameHost* impl,
mojo::Message* message,
std::unique_ptr<mojo::MessageReceiverWithStatus> responder);
};
template <typename ImplRefTraits =
mojo::RawPtrImplRefTraits<LocalMainFrameHost>>
class LocalMainFrameHostStub
: public mojo::MessageReceiverWithResponderStatus {
public:
using ImplPointerType = typename ImplRefTraits::PointerType;
LocalMainFrameHostStub() = default;
~LocalMainFrameHostStub() override = default;
void set_sink(ImplPointerType sink) { sink_ = std::move(sink); }
ImplPointerType& sink() { return sink_; }
bool Accept(mojo::Message* message) override {
if (ImplRefTraits::IsNull(sink_))
return false;
return LocalMainFrameHostStubDispatch::Accept(
ImplRefTraits::GetRawPointer(&sink_), message);
}
bool AcceptWithResponder(
mojo::Message* message,
std::unique_ptr<mojo::MessageReceiverWithStatus> responder) override {
if (ImplRefTraits::IsNull(sink_))
return false;
return LocalMainFrameHostStubDispatch::AcceptWithResponder(
ImplRefTraits::GetRawPointer(&sink_), message, std::move(responder));
}
private:
ImplPointerType sink_;
};
class CORE_EXPORT RemoteMainFrameHostStubDispatch {
public:
static bool Accept(RemoteMainFrameHost* impl, mojo::Message* message);
static bool AcceptWithResponder(
RemoteMainFrameHost* impl,
mojo::Message* message,
std::unique_ptr<mojo::MessageReceiverWithStatus> responder);
};
template <typename ImplRefTraits =
mojo::RawPtrImplRefTraits<RemoteMainFrameHost>>
class RemoteMainFrameHostStub
: public mojo::MessageReceiverWithResponderStatus {
public:
using ImplPointerType = typename ImplRefTraits::PointerType;
RemoteMainFrameHostStub() = default;
~RemoteMainFrameHostStub() override = default;
void set_sink(ImplPointerType sink) { sink_ = std::move(sink); }
ImplPointerType& sink() { return sink_; }
bool Accept(mojo::Message* message) override {
if (ImplRefTraits::IsNull(sink_))
return false;
return RemoteMainFrameHostStubDispatch::Accept(
ImplRefTraits::GetRawPointer(&sink_), message);
}
bool AcceptWithResponder(
mojo::Message* message,
std::unique_ptr<mojo::MessageReceiverWithStatus> responder) override {
if (ImplRefTraits::IsNull(sink_))
return false;
return RemoteMainFrameHostStubDispatch::AcceptWithResponder(
ImplRefTraits::GetRawPointer(&sink_), message, std::move(responder));
}
private:
ImplPointerType sink_;
};
class CORE_EXPORT KeepAliveHandleRequestValidator : public mojo::MessageReceiver {
public:
bool Accept(mojo::Message* message) override;
};
class CORE_EXPORT KeepAliveHandleFactoryRequestValidator : public mojo::MessageReceiver {
public:
bool Accept(mojo::Message* message) override;
};
class CORE_EXPORT LocalFrameHostRequestValidator : public mojo::MessageReceiver {
public:
bool Accept(mojo::Message* message) override;
};
class CORE_EXPORT LocalFrameRequestValidator : public mojo::MessageReceiver {
public:
bool Accept(mojo::Message* message) override;
};
class CORE_EXPORT HighPriorityLocalFrameRequestValidator : public mojo::MessageReceiver {
public:
bool Accept(mojo::Message* message) override;
};
class CORE_EXPORT RemoteFrameHostRequestValidator : public mojo::MessageReceiver {
public:
bool Accept(mojo::Message* message) override;
};
class CORE_EXPORT RemoteFrameRequestValidator : public mojo::MessageReceiver {
public:
bool Accept(mojo::Message* message) override;
};
class CORE_EXPORT LocalMainFrameRequestValidator : public mojo::MessageReceiver {
public:
bool Accept(mojo::Message* message) override;
};
class CORE_EXPORT RemoteMainFrameRequestValidator : public mojo::MessageReceiver {
public:
bool Accept(mojo::Message* message) override;
};
class CORE_EXPORT LocalMainFrameHostRequestValidator : public mojo::MessageReceiver {
public:
bool Accept(mojo::Message* message) override;
};
class CORE_EXPORT RemoteMainFrameHostRequestValidator : public mojo::MessageReceiver {
public:
bool Accept(mojo::Message* message) override;
};
class CORE_EXPORT LocalFrameHostResponseValidator : public mojo::MessageReceiver {
public:
bool Accept(mojo::Message* message) override;
};
class CORE_EXPORT LocalFrameResponseValidator : public mojo::MessageReceiver {
public:
bool Accept(mojo::Message* message) override;
};
class CORE_EXPORT HighPriorityLocalFrameResponseValidator : public mojo::MessageReceiver {
public:
bool Accept(mojo::Message* message) override;
};
class CORE_EXPORT LocalMainFrameResponseValidator : public mojo::MessageReceiver {
public:
bool Accept(mojo::Message* message) override;
};
class CORE_EXPORT LocalMainFrameHostResponseValidator : public mojo::MessageReceiver {
public:
bool Accept(mojo::Message* message) override;
};
class CORE_EXPORT RemoteMainFrameHostResponseValidator : public mojo::MessageReceiver {
public:
bool Accept(mojo::Message* message) override;
};
// @generated_from: blink.mojom.SavableSubframe
class CORE_EXPORT SavableSubframe {
public:
template <typename T>
using EnableIfSame = std::enable_if_t<std::is_same<SavableSubframe, T>::value>;
using DataView = SavableSubframeDataView;
using Data_ = internal::SavableSubframe_Data;
template <typename... Args>
static SavableSubframePtr New(Args&&... args) {
return SavableSubframePtr(
absl::in_place, std::forward<Args>(args)...);
}
template <typename U>
static SavableSubframePtr From(const U& u) {
return mojo::TypeConverter<SavableSubframePtr, U>::Convert(u);
}
template <typename U>
U To() const {
return mojo::TypeConverter<U, SavableSubframe>::Convert(*this);
}
SavableSubframe();
SavableSubframe(
const ::blink::KURL& original_url,
const ::blink::FrameToken& subframe_token);
~SavableSubframe();
// Clone() is a template so it is only instantiated if it is used. Thus, the
// bindings generator does not need to know whether Clone() or copy
// constructor/assignment are available for members.
template <typename StructPtrType = SavableSubframePtr>
SavableSubframePtr Clone() const;
// Equals() is a template so it is only instantiated if it is used. Thus, the
// bindings generator does not need to know whether Equals() or == operator
// are available for members.
template <typename T, SavableSubframe::EnableIfSame<T>* = nullptr>
bool Equals(const T& other) const;
template <typename T, SavableSubframe::EnableIfSame<T>* = nullptr>
bool operator==(const T& rhs) const { return Equals(rhs); }
template <typename UserType>
static WTF::Vector<uint8_t> Serialize(UserType* input) {
return mojo::internal::SerializeImpl<
SavableSubframe::DataView, WTF::Vector<uint8_t>>(input);
}
template <typename UserType>
static mojo::Message SerializeAsMessage(UserType* input) {
return mojo::internal::SerializeAsMessageImpl<
SavableSubframe::DataView>(input);
}
// The returned Message is serialized only if the message is moved
// cross-process or cross-language. Otherwise if the message is Deserialized
// as the same UserType |input| will just be moved to |output| in
// DeserializeFromMessage.
template <typename UserType>
static mojo::Message WrapAsMessage(UserType input) {
return mojo::Message(std::make_unique<
internal::SavableSubframe_UnserializedMessageContext<
UserType, SavableSubframe::DataView>>(0, 0, std::move(input)),
MOJO_CREATE_MESSAGE_FLAG_NONE);
}
template <typename UserType>
static bool Deserialize(const void* data,
size_t data_num_bytes,
UserType* output) {
mojo::Message message;
return mojo::internal::DeserializeImpl<SavableSubframe::DataView>(
message, data, data_num_bytes, output, Validate);
}
template <typename UserType>
static bool Deserialize(const WTF::Vector<uint8_t>& input,
UserType* output) {
return SavableSubframe::Deserialize(
input.size() == 0 ? nullptr : &input.front(), input.size(), output);
}
template <typename UserType>
static bool DeserializeFromMessage(mojo::Message input,
UserType* output) {
auto context = input.TakeUnserializedContext<
internal::SavableSubframe_UnserializedMessageContext<
UserType, SavableSubframe::DataView>>();
if (context) {
*output = std::move(context->TakeData());
return true;
}
input.SerializeIfNecessary();
return mojo::internal::DeserializeImpl<SavableSubframe::DataView>(
input, input.payload(), input.payload_num_bytes(), output, Validate);
}
// @generated_from: blink.mojom.SavableSubframe.original_url
::blink::KURL original_url;
// @generated_from: blink.mojom.SavableSubframe.subframe_token
::blink::FrameToken subframe_token;
// Serialise this struct into a trace.
void WriteIntoTrace(perfetto::TracedValue traced_context) const;
private:
static bool Validate(const void* data,
mojo::internal::ValidationContext* validation_context);
};
// The comparison operators are templates, so they are only instantiated if they
// are used. Thus, the bindings generator does not need to know whether
// comparison operators are available for members.
template <typename T, SavableSubframe::EnableIfSame<T>* = nullptr>
bool operator<(const T& lhs, const T& rhs);
template <typename T, SavableSubframe::EnableIfSame<T>* = nullptr>
bool operator<=(const T& lhs, const T& rhs) {
return !(rhs < lhs);
}
template <typename T, SavableSubframe::EnableIfSame<T>* = nullptr>
bool operator>(const T& lhs, const T& rhs) {
return rhs < lhs;
}
template <typename T, SavableSubframe::EnableIfSame<T>* = nullptr>
bool operator>=(const T& lhs, const T& rhs) {
return !(lhs < rhs);
}
// @generated_from: blink.mojom.GetSavableResourceLinksReply
class CORE_EXPORT GetSavableResourceLinksReply {
public:
template <typename T>
using EnableIfSame = std::enable_if_t<std::is_same<GetSavableResourceLinksReply, T>::value>;
using DataView = GetSavableResourceLinksReplyDataView;
using Data_ = internal::GetSavableResourceLinksReply_Data;
template <typename... Args>
static GetSavableResourceLinksReplyPtr New(Args&&... args) {
return GetSavableResourceLinksReplyPtr(
absl::in_place, std::forward<Args>(args)...);
}
template <typename U>
static GetSavableResourceLinksReplyPtr From(const U& u) {
return mojo::TypeConverter<GetSavableResourceLinksReplyPtr, U>::Convert(u);
}
template <typename U>
U To() const {
return mojo::TypeConverter<U, GetSavableResourceLinksReply>::Convert(*this);
}
GetSavableResourceLinksReply();
GetSavableResourceLinksReply(
WTF::Vector<::blink::KURL> resources_list,
::blink::mojom::blink::ReferrerPtr referrer,
WTF::Vector<SavableSubframePtr> subframes);
GetSavableResourceLinksReply(const GetSavableResourceLinksReply&) = delete;
GetSavableResourceLinksReply& operator=(const GetSavableResourceLinksReply&) = delete;
~GetSavableResourceLinksReply();
// Clone() is a template so it is only instantiated if it is used. Thus, the
// bindings generator does not need to know whether Clone() or copy
// constructor/assignment are available for members.
template <typename StructPtrType = GetSavableResourceLinksReplyPtr>
GetSavableResourceLinksReplyPtr Clone() const;
// Equals() is a template so it is only instantiated if it is used. Thus, the
// bindings generator does not need to know whether Equals() or == operator
// are available for members.
template <typename T, GetSavableResourceLinksReply::EnableIfSame<T>* = nullptr>
bool Equals(const T& other) const;
template <typename T, GetSavableResourceLinksReply::EnableIfSame<T>* = nullptr>
bool operator==(const T& rhs) const { return Equals(rhs); }
template <typename UserType>
static WTF::Vector<uint8_t> Serialize(UserType* input) {
return mojo::internal::SerializeImpl<
GetSavableResourceLinksReply::DataView, WTF::Vector<uint8_t>>(input);
}
template <typename UserType>
static mojo::Message SerializeAsMessage(UserType* input) {
return mojo::internal::SerializeAsMessageImpl<
GetSavableResourceLinksReply::DataView>(input);
}
// The returned Message is serialized only if the message is moved
// cross-process or cross-language. Otherwise if the message is Deserialized
// as the same UserType |input| will just be moved to |output| in
// DeserializeFromMessage.
template <typename UserType>
static mojo::Message WrapAsMessage(UserType input) {
return mojo::Message(std::make_unique<
internal::GetSavableResourceLinksReply_UnserializedMessageContext<
UserType, GetSavableResourceLinksReply::DataView>>(0, 0, std::move(input)),
MOJO_CREATE_MESSAGE_FLAG_NONE);
}
template <typename UserType>
static bool Deserialize(const void* data,
size_t data_num_bytes,
UserType* output) {
mojo::Message message;
return mojo::internal::DeserializeImpl<GetSavableResourceLinksReply::DataView>(
message, data, data_num_bytes, output, Validate);
}
template <typename UserType>
static bool Deserialize(const WTF::Vector<uint8_t>& input,
UserType* output) {
return GetSavableResourceLinksReply::Deserialize(
input.size() == 0 ? nullptr : &input.front(), input.size(), output);
}
template <typename UserType>
static bool DeserializeFromMessage(mojo::Message input,
UserType* output) {
auto context = input.TakeUnserializedContext<
internal::GetSavableResourceLinksReply_UnserializedMessageContext<
UserType, GetSavableResourceLinksReply::DataView>>();
if (context) {
*output = std::move(context->TakeData());
return true;
}
input.SerializeIfNecessary();
return mojo::internal::DeserializeImpl<GetSavableResourceLinksReply::DataView>(
input, input.payload(), input.payload_num_bytes(), output, Validate);
}
// @generated_from: blink.mojom.GetSavableResourceLinksReply.resources_list
WTF::Vector<::blink::KURL> resources_list;
// @generated_from: blink.mojom.GetSavableResourceLinksReply.referrer
::blink::mojom::blink::ReferrerPtr referrer;
// @generated_from: blink.mojom.GetSavableResourceLinksReply.subframes
WTF::Vector<SavableSubframePtr> subframes;
// Serialise this struct into a trace.
void WriteIntoTrace(perfetto::TracedValue traced_context) const;
private:
static bool Validate(const void* data,
mojo::internal::ValidationContext* validation_context);
};
// The comparison operators are templates, so they are only instantiated if they
// are used. Thus, the bindings generator does not need to know whether
// comparison operators are available for members.
template <typename T, GetSavableResourceLinksReply::EnableIfSame<T>* = nullptr>
bool operator<(const T& lhs, const T& rhs);
template <typename T, GetSavableResourceLinksReply::EnableIfSame<T>* = nullptr>
bool operator<=(const T& lhs, const T& rhs) {
return !(rhs < lhs);
}
template <typename T, GetSavableResourceLinksReply::EnableIfSame<T>* = nullptr>
bool operator>(const T& lhs, const T& rhs) {
return rhs < lhs;
}
template <typename T, GetSavableResourceLinksReply::EnableIfSame<T>* = nullptr>
bool operator>=(const T& lhs, const T& rhs) {
return !(lhs < rhs);
}
// @generated_from: blink.mojom.FindInPageResultAXParams
class CORE_EXPORT FindInPageResultAXParams {
public:
template <typename T>
using EnableIfSame = std::enable_if_t<std::is_same<FindInPageResultAXParams, T>::value>;
using DataView = FindInPageResultAXParamsDataView;
using Data_ = internal::FindInPageResultAXParams_Data;
template <typename... Args>
static FindInPageResultAXParamsPtr New(Args&&... args) {
return FindInPageResultAXParamsPtr(
absl::in_place, std::forward<Args>(args)...);
}
template <typename U>
static FindInPageResultAXParamsPtr From(const U& u) {
return mojo::TypeConverter<FindInPageResultAXParamsPtr, U>::Convert(u);
}
template <typename U>
U To() const {
return mojo::TypeConverter<U, FindInPageResultAXParams>::Convert(*this);
}
FindInPageResultAXParams();
FindInPageResultAXParams(
int32_t request_id,
int32_t match_index,
int32_t start_id,
int32_t start_offset,
int32_t end_id,
int32_t end_offset);
~FindInPageResultAXParams();
// Clone() is a template so it is only instantiated if it is used. Thus, the
// bindings generator does not need to know whether Clone() or copy
// constructor/assignment are available for members.
template <typename StructPtrType = FindInPageResultAXParamsPtr>
FindInPageResultAXParamsPtr Clone() const;
// Equals() is a template so it is only instantiated if it is used. Thus, the
// bindings generator does not need to know whether Equals() or == operator
// are available for members.
template <typename T, FindInPageResultAXParams::EnableIfSame<T>* = nullptr>
bool Equals(const T& other) const;
template <typename T, FindInPageResultAXParams::EnableIfSame<T>* = nullptr>
bool operator==(const T& rhs) const { return Equals(rhs); }
size_t Hash(size_t seed) const;
template <typename UserType>
static WTF::Vector<uint8_t> Serialize(UserType* input) {
return mojo::internal::SerializeImpl<
FindInPageResultAXParams::DataView, WTF::Vector<uint8_t>>(input);
}
template <typename UserType>
static mojo::Message SerializeAsMessage(UserType* input) {
return mojo::internal::SerializeAsMessageImpl<
FindInPageResultAXParams::DataView>(input);
}
// The returned Message is serialized only if the message is moved
// cross-process or cross-language. Otherwise if the message is Deserialized
// as the same UserType |input| will just be moved to |output| in
// DeserializeFromMessage.
template <typename UserType>
static mojo::Message WrapAsMessage(UserType input) {
return mojo::Message(std::make_unique<
internal::FindInPageResultAXParams_UnserializedMessageContext<
UserType, FindInPageResultAXParams::DataView>>(0, 0, std::move(input)),
MOJO_CREATE_MESSAGE_FLAG_NONE);
}
template <typename UserType>
static bool Deserialize(const void* data,
size_t data_num_bytes,
UserType* output) {
mojo::Message message;
return mojo::internal::DeserializeImpl<FindInPageResultAXParams::DataView>(
message, data, data_num_bytes, output, Validate);
}
template <typename UserType>
static bool Deserialize(const WTF::Vector<uint8_t>& input,
UserType* output) {
return FindInPageResultAXParams::Deserialize(
input.size() == 0 ? nullptr : &input.front(), input.size(), output);
}
template <typename UserType>
static bool DeserializeFromMessage(mojo::Message input,
UserType* output) {
auto context = input.TakeUnserializedContext<
internal::FindInPageResultAXParams_UnserializedMessageContext<
UserType, FindInPageResultAXParams::DataView>>();
if (context) {
*output = std::move(context->TakeData());
return true;
}
input.SerializeIfNecessary();
return mojo::internal::DeserializeImpl<FindInPageResultAXParams::DataView>(
input, input.payload(), input.payload_num_bytes(), output, Validate);
}
// @generated_from: blink.mojom.FindInPageResultAXParams.request_id
int32_t request_id;
// @generated_from: blink.mojom.FindInPageResultAXParams.match_index
int32_t match_index;
// @generated_from: blink.mojom.FindInPageResultAXParams.start_id
int32_t start_id;
// @generated_from: blink.mojom.FindInPageResultAXParams.start_offset
int32_t start_offset;
// @generated_from: blink.mojom.FindInPageResultAXParams.end_id
int32_t end_id;
// @generated_from: blink.mojom.FindInPageResultAXParams.end_offset
int32_t end_offset;
// Serialise this struct into a trace.
void WriteIntoTrace(perfetto::TracedValue traced_context) const;
private:
static bool Validate(const void* data,
mojo::internal::ValidationContext* validation_context);
};
// The comparison operators are templates, so they are only instantiated if they
// are used. Thus, the bindings generator does not need to know whether
// comparison operators are available for members.
template <typename T, FindInPageResultAXParams::EnableIfSame<T>* = nullptr>
bool operator<(const T& lhs, const T& rhs);
template <typename T, FindInPageResultAXParams::EnableIfSame<T>* = nullptr>
bool operator<=(const T& lhs, const T& rhs) {
return !(rhs < lhs);
}
template <typename T, FindInPageResultAXParams::EnableIfSame<T>* = nullptr>
bool operator>(const T& lhs, const T& rhs) {
return rhs < lhs;
}
template <typename T, FindInPageResultAXParams::EnableIfSame<T>* = nullptr>
bool operator>=(const T& lhs, const T& rhs) {
return !(lhs < rhs);
}
// @generated_from: blink.mojom.DownloadURLParams
class CORE_EXPORT DownloadURLParams {
public:
template <typename T>
using EnableIfSame = std::enable_if_t<std::is_same<DownloadURLParams, T>::value>;
using DataView = DownloadURLParamsDataView;
using Data_ = internal::DownloadURLParams_Data;
template <typename... Args>
static DownloadURLParamsPtr New(Args&&... args) {
return DownloadURLParamsPtr(
absl::in_place, std::forward<Args>(args)...);
}
template <typename U>
static DownloadURLParamsPtr From(const U& u) {
return mojo::TypeConverter<DownloadURLParamsPtr, U>::Convert(u);
}
template <typename U>
U To() const {
return mojo::TypeConverter<U, DownloadURLParams>::Convert(*this);
}
DownloadURLParams();
DownloadURLParams(
const ::blink::KURL& url,
::blink::mojom::blink::ReferrerPtr referrer,
const ::scoped_refptr<const ::blink::SecurityOrigin>& initiator_origin,
const ::WTF::String& suggested_name,
::network::mojom::blink::RedirectMode cross_origin_redirects,
::mojo::PendingRemote<::blink::mojom::blink::BlobURLToken> blob_url_token,
::mojo::PendingRemote<::blink::mojom::blink::Blob> data_url_blob,
bool is_context_menu_save,
bool has_user_gesture);
DownloadURLParams(const DownloadURLParams&) = delete;
DownloadURLParams& operator=(const DownloadURLParams&) = delete;
~DownloadURLParams();
// Clone() is a template so it is only instantiated if it is used. Thus, the
// bindings generator does not need to know whether Clone() or copy
// constructor/assignment are available for members.
template <typename StructPtrType = DownloadURLParamsPtr>
DownloadURLParamsPtr Clone() const;
// Equals() is a template so it is only instantiated if it is used. Thus, the
// bindings generator does not need to know whether Equals() or == operator
// are available for members.
template <typename T, DownloadURLParams::EnableIfSame<T>* = nullptr>
bool Equals(const T& other) const;
template <typename T, DownloadURLParams::EnableIfSame<T>* = nullptr>
bool operator==(const T& rhs) const { return Equals(rhs); }
template <typename UserType>
static mojo::Message SerializeAsMessage(UserType* input) {
return mojo::internal::SerializeAsMessageImpl<
DownloadURLParams::DataView>(input);
}
// The returned Message is serialized only if the message is moved
// cross-process or cross-language. Otherwise if the message is Deserialized
// as the same UserType |input| will just be moved to |output| in
// DeserializeFromMessage.
template <typename UserType>
static mojo::Message WrapAsMessage(UserType input) {
return mojo::Message(std::make_unique<
internal::DownloadURLParams_UnserializedMessageContext<
UserType, DownloadURLParams::DataView>>(0, 0, std::move(input)),
MOJO_CREATE_MESSAGE_FLAG_NONE);
}
template <typename UserType>
static bool Deserialize(const void* data,
size_t data_num_bytes,
UserType* output) {
mojo::Message message;
return mojo::internal::DeserializeImpl<DownloadURLParams::DataView>(
message, data, data_num_bytes, output, Validate);
}
template <typename UserType>
static bool Deserialize(const WTF::Vector<uint8_t>& input,
UserType* output) {
return DownloadURLParams::Deserialize(
input.size() == 0 ? nullptr : &input.front(), input.size(), output);
}
template <typename UserType>
static bool DeserializeFromMessage(mojo::Message input,
UserType* output) {
auto context = input.TakeUnserializedContext<
internal::DownloadURLParams_UnserializedMessageContext<
UserType, DownloadURLParams::DataView>>();
if (context) {
*output = std::move(context->TakeData());
return true;
}
input.SerializeIfNecessary();
return mojo::internal::DeserializeImpl<DownloadURLParams::DataView>(
input, input.payload(), input.payload_num_bytes(), output, Validate);
}
// @generated_from: blink.mojom.DownloadURLParams.url
::blink::KURL url;
// @generated_from: blink.mojom.DownloadURLParams.referrer
::blink::mojom::blink::ReferrerPtr referrer;
// @generated_from: blink.mojom.DownloadURLParams.initiator_origin
::scoped_refptr<const ::blink::SecurityOrigin> initiator_origin;
// @generated_from: blink.mojom.DownloadURLParams.suggested_name
::WTF::String suggested_name;
// @generated_from: blink.mojom.DownloadURLParams.cross_origin_redirects
::network::mojom::blink::RedirectMode cross_origin_redirects;
// @generated_from: blink.mojom.DownloadURLParams.blob_url_token
::mojo::PendingRemote<::blink::mojom::blink::BlobURLToken> blob_url_token;
// @generated_from: blink.mojom.DownloadURLParams.data_url_blob
::mojo::PendingRemote<::blink::mojom::blink::Blob> data_url_blob;
// @generated_from: blink.mojom.DownloadURLParams.is_context_menu_save
bool is_context_menu_save;
// @generated_from: blink.mojom.DownloadURLParams.has_user_gesture
bool has_user_gesture;
// Serialise this struct into a trace.
void WriteIntoTrace(perfetto::TracedValue traced_context) const;
private:
static bool Validate(const void* data,
mojo::internal::ValidationContext* validation_context);
};
// The comparison operators are templates, so they are only instantiated if they
// are used. Thus, the bindings generator does not need to know whether
// comparison operators are available for members.
template <typename T, DownloadURLParams::EnableIfSame<T>* = nullptr>
bool operator<(const T& lhs, const T& rhs);
template <typename T, DownloadURLParams::EnableIfSame<T>* = nullptr>
bool operator<=(const T& lhs, const T& rhs) {
return !(rhs < lhs);
}
template <typename T, DownloadURLParams::EnableIfSame<T>* = nullptr>
bool operator>(const T& lhs, const T& rhs) {
return rhs < lhs;
}
template <typename T, DownloadURLParams::EnableIfSame<T>* = nullptr>
bool operator>=(const T& lhs, const T& rhs) {
return !(lhs < rhs);
}
// @generated_from: blink.mojom.OpenURLParams
class CORE_EXPORT OpenURLParams {
public:
template <typename T>
using EnableIfSame = std::enable_if_t<std::is_same<OpenURLParams, T>::value>;
using DataView = OpenURLParamsDataView;
using Data_ = internal::OpenURLParams_Data;
template <typename... Args>
static OpenURLParamsPtr New(Args&&... args) {
return OpenURLParamsPtr(
absl::in_place, std::forward<Args>(args)...);
}
template <typename U>
static OpenURLParamsPtr From(const U& u) {
return mojo::TypeConverter<OpenURLParamsPtr, U>::Convert(u);
}
template <typename U>
U To() const {
return mojo::TypeConverter<U, OpenURLParams>::Convert(*this);
}
OpenURLParams();
OpenURLParams(
const ::blink::KURL& url,
const ::scoped_refptr<const ::blink::SecurityOrigin>& initiator_origin,
const absl::optional<::blink::LocalFrameToken>& initiator_frame_token,
::scoped_refptr<::network::ResourceRequestBody> post_body,
const WTF::String& extra_headers,
::blink::mojom::blink::ReferrerPtr referrer,
bool is_form_submission,
::ui::mojom::blink::WindowOpenDisposition disposition,
bool should_replace_current_entry,
bool user_gesture,
bool is_unfenced_top_navigation,
::blink::mojom::blink::TriggeringEventInfo triggering_event_info,
::mojo::PendingRemote<::blink::mojom::blink::BlobURLToken> blob_url_token,
const WTF::String& href_translate,
const absl::optional<::blink::Impression>& impression,
const ::blink::NavigationDownloadPolicy& download_policy,
::network::mojom::blink::SourceLocationPtr source_location,
::mojo::PendingRemote<::blink::mojom::blink::PolicyContainerHostKeepAliveHandle> initiator_policy_container_keep_alive_handle);
OpenURLParams(const OpenURLParams&) = delete;
OpenURLParams& operator=(const OpenURLParams&) = delete;
~OpenURLParams();
// Clone() is a template so it is only instantiated if it is used. Thus, the
// bindings generator does not need to know whether Clone() or copy
// constructor/assignment are available for members.
template <typename StructPtrType = OpenURLParamsPtr>
OpenURLParamsPtr Clone() const;
// Equals() is a template so it is only instantiated if it is used. Thus, the
// bindings generator does not need to know whether Equals() or == operator
// are available for members.
template <typename T, OpenURLParams::EnableIfSame<T>* = nullptr>
bool Equals(const T& other) const;
template <typename T, OpenURLParams::EnableIfSame<T>* = nullptr>
bool operator==(const T& rhs) const { return Equals(rhs); }
template <typename UserType>
static mojo::Message SerializeAsMessage(UserType* input) {
return mojo::internal::SerializeAsMessageImpl<
OpenURLParams::DataView>(input);
}
// The returned Message is serialized only if the message is moved
// cross-process or cross-language. Otherwise if the message is Deserialized
// as the same UserType |input| will just be moved to |output| in
// DeserializeFromMessage.
template <typename UserType>
static mojo::Message WrapAsMessage(UserType input) {
return mojo::Message(std::make_unique<
internal::OpenURLParams_UnserializedMessageContext<
UserType, OpenURLParams::DataView>>(0, 0, std::move(input)),
MOJO_CREATE_MESSAGE_FLAG_NONE);
}
template <typename UserType>
static bool Deserialize(const void* data,
size_t data_num_bytes,
UserType* output) {
mojo::Message message;
return mojo::internal::DeserializeImpl<OpenURLParams::DataView>(
message, data, data_num_bytes, output, Validate);
}
template <typename UserType>
static bool Deserialize(const WTF::Vector<uint8_t>& input,
UserType* output) {
return OpenURLParams::Deserialize(
input.size() == 0 ? nullptr : &input.front(), input.size(), output);
}
template <typename UserType>
static bool DeserializeFromMessage(mojo::Message input,
UserType* output) {
auto context = input.TakeUnserializedContext<
internal::OpenURLParams_UnserializedMessageContext<
UserType, OpenURLParams::DataView>>();
if (context) {
*output = std::move(context->TakeData());
return true;
}
input.SerializeIfNecessary();
return mojo::internal::DeserializeImpl<OpenURLParams::DataView>(
input, input.payload(), input.payload_num_bytes(), output, Validate);
}
// @generated_from: blink.mojom.OpenURLParams.url
::blink::KURL url;
// @generated_from: blink.mojom.OpenURLParams.initiator_origin
::scoped_refptr<const ::blink::SecurityOrigin> initiator_origin;
// @generated_from: blink.mojom.OpenURLParams.initiator_frame_token
absl::optional<::blink::LocalFrameToken> initiator_frame_token;
// @generated_from: blink.mojom.OpenURLParams.post_body
::scoped_refptr<::network::ResourceRequestBody> post_body;
// @generated_from: blink.mojom.OpenURLParams.extra_headers
WTF::String extra_headers;
// @generated_from: blink.mojom.OpenURLParams.referrer
::blink::mojom::blink::ReferrerPtr referrer;
// @generated_from: blink.mojom.OpenURLParams.is_form_submission
bool is_form_submission;
// @generated_from: blink.mojom.OpenURLParams.disposition
::ui::mojom::blink::WindowOpenDisposition disposition;
// @generated_from: blink.mojom.OpenURLParams.should_replace_current_entry
bool should_replace_current_entry;
// @generated_from: blink.mojom.OpenURLParams.user_gesture
bool user_gesture;
// @generated_from: blink.mojom.OpenURLParams.is_unfenced_top_navigation
bool is_unfenced_top_navigation;
// @generated_from: blink.mojom.OpenURLParams.triggering_event_info
::blink::mojom::blink::TriggeringEventInfo triggering_event_info;
// @generated_from: blink.mojom.OpenURLParams.blob_url_token
::mojo::PendingRemote<::blink::mojom::blink::BlobURLToken> blob_url_token;
// @generated_from: blink.mojom.OpenURLParams.href_translate
WTF::String href_translate;
// @generated_from: blink.mojom.OpenURLParams.impression
absl::optional<::blink::Impression> impression;
// @generated_from: blink.mojom.OpenURLParams.download_policy
::blink::NavigationDownloadPolicy download_policy;
// @generated_from: blink.mojom.OpenURLParams.source_location
::network::mojom::blink::SourceLocationPtr source_location;
// @generated_from: blink.mojom.OpenURLParams.initiator_policy_container_keep_alive_handle
::mojo::PendingRemote<::blink::mojom::blink::PolicyContainerHostKeepAliveHandle> initiator_policy_container_keep_alive_handle;
// Serialise this struct into a trace.
void WriteIntoTrace(perfetto::TracedValue traced_context) const;
private:
static bool Validate(const void* data,
mojo::internal::ValidationContext* validation_context);
};
// The comparison operators are templates, so they are only instantiated if they
// are used. Thus, the bindings generator does not need to know whether
// comparison operators are available for members.
template <typename T, OpenURLParams::EnableIfSame<T>* = nullptr>
bool operator<(const T& lhs, const T& rhs);
template <typename T, OpenURLParams::EnableIfSame<T>* = nullptr>
bool operator<=(const T& lhs, const T& rhs) {
return !(rhs < lhs);
}
template <typename T, OpenURLParams::EnableIfSame<T>* = nullptr>
bool operator>(const T& lhs, const T& rhs) {
return rhs < lhs;
}
template <typename T, OpenURLParams::EnableIfSame<T>* = nullptr>
bool operator>=(const T& lhs, const T& rhs) {
return !(lhs < rhs);
}
template <typename StructPtrType>
SavableSubframePtr SavableSubframe::Clone() const {
return New(
mojo::Clone(original_url),
mojo::Clone(subframe_token)
);
}
template <typename T, SavableSubframe::EnableIfSame<T>*>
bool SavableSubframe::Equals(const T& other_struct) const {
if (!mojo::Equals(this->original_url, other_struct.original_url))
return false;
if (!mojo::Equals(this->subframe_token, other_struct.subframe_token))
return false;
return true;
}
template <typename T, SavableSubframe::EnableIfSame<T>*>
bool operator<(const T& lhs, const T& rhs) {
if (lhs.original_url < rhs.original_url)
return true;
if (rhs.original_url < lhs.original_url)
return false;
if (lhs.subframe_token < rhs.subframe_token)
return true;
if (rhs.subframe_token < lhs.subframe_token)
return false;
return false;
}
template <typename StructPtrType>
GetSavableResourceLinksReplyPtr GetSavableResourceLinksReply::Clone() const {
return New(
mojo::Clone(resources_list),
mojo::Clone(referrer),
mojo::Clone(subframes)
);
}
template <typename T, GetSavableResourceLinksReply::EnableIfSame<T>*>
bool GetSavableResourceLinksReply::Equals(const T& other_struct) const {
if (!mojo::Equals(this->resources_list, other_struct.resources_list))
return false;
if (!mojo::Equals(this->referrer, other_struct.referrer))
return false;
if (!mojo::Equals(this->subframes, other_struct.subframes))
return false;
return true;
}
template <typename T, GetSavableResourceLinksReply::EnableIfSame<T>*>
bool operator<(const T& lhs, const T& rhs) {
if (lhs.resources_list < rhs.resources_list)
return true;
if (rhs.resources_list < lhs.resources_list)
return false;
if (lhs.referrer < rhs.referrer)
return true;
if (rhs.referrer < lhs.referrer)
return false;
if (lhs.subframes < rhs.subframes)
return true;
if (rhs.subframes < lhs.subframes)
return false;
return false;
}
template <typename StructPtrType>
FindInPageResultAXParamsPtr FindInPageResultAXParams::Clone() const {
return New(
mojo::Clone(request_id),
mojo::Clone(match_index),
mojo::Clone(start_id),
mojo::Clone(start_offset),
mojo::Clone(end_id),
mojo::Clone(end_offset)
);
}
template <typename T, FindInPageResultAXParams::EnableIfSame<T>*>
bool FindInPageResultAXParams::Equals(const T& other_struct) const {
if (!mojo::Equals(this->request_id, other_struct.request_id))
return false;
if (!mojo::Equals(this->match_index, other_struct.match_index))
return false;
if (!mojo::Equals(this->start_id, other_struct.start_id))
return false;
if (!mojo::Equals(this->start_offset, other_struct.start_offset))
return false;
if (!mojo::Equals(this->end_id, other_struct.end_id))
return false;
if (!mojo::Equals(this->end_offset, other_struct.end_offset))
return false;
return true;
}
template <typename T, FindInPageResultAXParams::EnableIfSame<T>*>
bool operator<(const T& lhs, const T& rhs) {
if (lhs.request_id < rhs.request_id)
return true;
if (rhs.request_id < lhs.request_id)
return false;
if (lhs.match_index < rhs.match_index)
return true;
if (rhs.match_index < lhs.match_index)
return false;
if (lhs.start_id < rhs.start_id)
return true;
if (rhs.start_id < lhs.start_id)
return false;
if (lhs.start_offset < rhs.start_offset)
return true;
if (rhs.start_offset < lhs.start_offset)
return false;
if (lhs.end_id < rhs.end_id)
return true;
if (rhs.end_id < lhs.end_id)
return false;
if (lhs.end_offset < rhs.end_offset)
return true;
if (rhs.end_offset < lhs.end_offset)
return false;
return false;
}
template <typename StructPtrType>
DownloadURLParamsPtr DownloadURLParams::Clone() const {
return New(
mojo::Clone(url),
mojo::Clone(referrer),
mojo::Clone(initiator_origin),
mojo::Clone(suggested_name),
mojo::Clone(cross_origin_redirects),
mojo::Clone(blob_url_token),
mojo::Clone(data_url_blob),
mojo::Clone(is_context_menu_save),
mojo::Clone(has_user_gesture)
);
}
template <typename T, DownloadURLParams::EnableIfSame<T>*>
bool DownloadURLParams::Equals(const T& other_struct) const {
if (!mojo::Equals(this->url, other_struct.url))
return false;
if (!mojo::Equals(this->referrer, other_struct.referrer))
return false;
if (!mojo::Equals(this->initiator_origin, other_struct.initiator_origin))
return false;
if (!mojo::Equals(this->suggested_name, other_struct.suggested_name))
return false;
if (!mojo::Equals(this->cross_origin_redirects, other_struct.cross_origin_redirects))
return false;
if (!mojo::Equals(this->blob_url_token, other_struct.blob_url_token))
return false;
if (!mojo::Equals(this->data_url_blob, other_struct.data_url_blob))
return false;
if (!mojo::Equals(this->is_context_menu_save, other_struct.is_context_menu_save))
return false;
if (!mojo::Equals(this->has_user_gesture, other_struct.has_user_gesture))
return false;
return true;
}
template <typename T, DownloadURLParams::EnableIfSame<T>*>
bool operator<(const T& lhs, const T& rhs) {
if (lhs.url < rhs.url)
return true;
if (rhs.url < lhs.url)
return false;
if (lhs.referrer < rhs.referrer)
return true;
if (rhs.referrer < lhs.referrer)
return false;
if (lhs.initiator_origin < rhs.initiator_origin)
return true;
if (rhs.initiator_origin < lhs.initiator_origin)
return false;
if (lhs.suggested_name < rhs.suggested_name)
return true;
if (rhs.suggested_name < lhs.suggested_name)
return false;
if (lhs.cross_origin_redirects < rhs.cross_origin_redirects)
return true;
if (rhs.cross_origin_redirects < lhs.cross_origin_redirects)
return false;
if (lhs.blob_url_token < rhs.blob_url_token)
return true;
if (rhs.blob_url_token < lhs.blob_url_token)
return false;
if (lhs.data_url_blob < rhs.data_url_blob)
return true;
if (rhs.data_url_blob < lhs.data_url_blob)
return false;
if (lhs.is_context_menu_save < rhs.is_context_menu_save)
return true;
if (rhs.is_context_menu_save < lhs.is_context_menu_save)
return false;
if (lhs.has_user_gesture < rhs.has_user_gesture)
return true;
if (rhs.has_user_gesture < lhs.has_user_gesture)
return false;
return false;
}
template <typename StructPtrType>
OpenURLParamsPtr OpenURLParams::Clone() const {
return New(
mojo::Clone(url),
mojo::Clone(initiator_origin),
mojo::Clone(initiator_frame_token),
mojo::Clone(post_body),
mojo::Clone(extra_headers),
mojo::Clone(referrer),
mojo::Clone(is_form_submission),
mojo::Clone(disposition),
mojo::Clone(should_replace_current_entry),
mojo::Clone(user_gesture),
mojo::Clone(is_unfenced_top_navigation),
mojo::Clone(triggering_event_info),
mojo::Clone(blob_url_token),
mojo::Clone(href_translate),
mojo::Clone(impression),
mojo::Clone(download_policy),
mojo::Clone(source_location),
mojo::Clone(initiator_policy_container_keep_alive_handle)
);
}
template <typename T, OpenURLParams::EnableIfSame<T>*>
bool OpenURLParams::Equals(const T& other_struct) const {
if (!mojo::Equals(this->url, other_struct.url))
return false;
if (!mojo::Equals(this->initiator_origin, other_struct.initiator_origin))
return false;
if (!mojo::Equals(this->initiator_frame_token, other_struct.initiator_frame_token))
return false;
if (!mojo::Equals(this->post_body, other_struct.post_body))
return false;
if (!mojo::Equals(this->extra_headers, other_struct.extra_headers))
return false;
if (!mojo::Equals(this->referrer, other_struct.referrer))
return false;
if (!mojo::Equals(this->is_form_submission, other_struct.is_form_submission))
return false;
if (!mojo::Equals(this->disposition, other_struct.disposition))
return false;
if (!mojo::Equals(this->should_replace_current_entry, other_struct.should_replace_current_entry))
return false;
if (!mojo::Equals(this->user_gesture, other_struct.user_gesture))
return false;
if (!mojo::Equals(this->is_unfenced_top_navigation, other_struct.is_unfenced_top_navigation))
return false;
if (!mojo::Equals(this->triggering_event_info, other_struct.triggering_event_info))
return false;
if (!mojo::Equals(this->blob_url_token, other_struct.blob_url_token))
return false;
if (!mojo::Equals(this->href_translate, other_struct.href_translate))
return false;
if (!mojo::Equals(this->impression, other_struct.impression))
return false;
if (!mojo::Equals(this->download_policy, other_struct.download_policy))
return false;
if (!mojo::Equals(this->source_location, other_struct.source_location))
return false;
if (!mojo::Equals(this->initiator_policy_container_keep_alive_handle, other_struct.initiator_policy_container_keep_alive_handle))
return false;
return true;
}
template <typename T, OpenURLParams::EnableIfSame<T>*>
bool operator<(const T& lhs, const T& rhs) {
if (lhs.url < rhs.url)
return true;
if (rhs.url < lhs.url)
return false;
if (lhs.initiator_origin < rhs.initiator_origin)
return true;
if (rhs.initiator_origin < lhs.initiator_origin)
return false;
if (lhs.initiator_frame_token < rhs.initiator_frame_token)
return true;
if (rhs.initiator_frame_token < lhs.initiator_frame_token)
return false;
if (lhs.post_body < rhs.post_body)
return true;
if (rhs.post_body < lhs.post_body)
return false;
if (lhs.extra_headers < rhs.extra_headers)
return true;
if (rhs.extra_headers < lhs.extra_headers)
return false;
if (lhs.referrer < rhs.referrer)
return true;
if (rhs.referrer < lhs.referrer)
return false;
if (lhs.is_form_submission < rhs.is_form_submission)
return true;
if (rhs.is_form_submission < lhs.is_form_submission)
return false;
if (lhs.disposition < rhs.disposition)
return true;
if (rhs.disposition < lhs.disposition)
return false;
if (lhs.should_replace_current_entry < rhs.should_replace_current_entry)
return true;
if (rhs.should_replace_current_entry < lhs.should_replace_current_entry)
return false;
if (lhs.user_gesture < rhs.user_gesture)
return true;
if (rhs.user_gesture < lhs.user_gesture)
return false;
if (lhs.is_unfenced_top_navigation < rhs.is_unfenced_top_navigation)
return true;
if (rhs.is_unfenced_top_navigation < lhs.is_unfenced_top_navigation)
return false;
if (lhs.triggering_event_info < rhs.triggering_event_info)
return true;
if (rhs.triggering_event_info < lhs.triggering_event_info)
return false;
if (lhs.blob_url_token < rhs.blob_url_token)
return true;
if (rhs.blob_url_token < lhs.blob_url_token)
return false;
if (lhs.href_translate < rhs.href_translate)
return true;
if (rhs.href_translate < lhs.href_translate)
return false;
if (lhs.impression < rhs.impression)
return true;
if (rhs.impression < lhs.impression)
return false;
if (lhs.download_policy < rhs.download_policy)
return true;
if (rhs.download_policy < lhs.download_policy)
return false;
if (lhs.source_location < rhs.source_location)
return true;
if (rhs.source_location < lhs.source_location)
return false;
if (lhs.initiator_policy_container_keep_alive_handle < rhs.initiator_policy_container_keep_alive_handle)
return true;
if (rhs.initiator_policy_container_keep_alive_handle < lhs.initiator_policy_container_keep_alive_handle)
return false;
return false;
}
} // namespace blink
} // namespace mojom
} // namespace blink
namespace mojo {
template <>
struct CORE_EXPORT StructTraits<::blink::mojom::blink::SavableSubframe::DataView,
::blink::mojom::blink::SavableSubframePtr> {
static bool IsNull(const ::blink::mojom::blink::SavableSubframePtr& input) { return !input; }
static void SetToNull(::blink::mojom::blink::SavableSubframePtr* output) { output->reset(); }
static const decltype(::blink::mojom::blink::SavableSubframe::original_url)& original_url(
const ::blink::mojom::blink::SavableSubframePtr& input) {
return input->original_url;
}
static const decltype(::blink::mojom::blink::SavableSubframe::subframe_token)& subframe_token(
const ::blink::mojom::blink::SavableSubframePtr& input) {
return input->subframe_token;
}
static bool Read(::blink::mojom::blink::SavableSubframe::DataView input, ::blink::mojom::blink::SavableSubframePtr* output);
};
template <>
struct CORE_EXPORT StructTraits<::blink::mojom::blink::GetSavableResourceLinksReply::DataView,
::blink::mojom::blink::GetSavableResourceLinksReplyPtr> {
static bool IsNull(const ::blink::mojom::blink::GetSavableResourceLinksReplyPtr& input) { return !input; }
static void SetToNull(::blink::mojom::blink::GetSavableResourceLinksReplyPtr* output) { output->reset(); }
static const decltype(::blink::mojom::blink::GetSavableResourceLinksReply::resources_list)& resources_list(
const ::blink::mojom::blink::GetSavableResourceLinksReplyPtr& input) {
return input->resources_list;
}
static const decltype(::blink::mojom::blink::GetSavableResourceLinksReply::referrer)& referrer(
const ::blink::mojom::blink::GetSavableResourceLinksReplyPtr& input) {
return input->referrer;
}
static const decltype(::blink::mojom::blink::GetSavableResourceLinksReply::subframes)& subframes(
const ::blink::mojom::blink::GetSavableResourceLinksReplyPtr& input) {
return input->subframes;
}
static bool Read(::blink::mojom::blink::GetSavableResourceLinksReply::DataView input, ::blink::mojom::blink::GetSavableResourceLinksReplyPtr* output);
};
template <>
struct CORE_EXPORT StructTraits<::blink::mojom::blink::FindInPageResultAXParams::DataView,
::blink::mojom::blink::FindInPageResultAXParamsPtr> {
static bool IsNull(const ::blink::mojom::blink::FindInPageResultAXParamsPtr& input) { return !input; }
static void SetToNull(::blink::mojom::blink::FindInPageResultAXParamsPtr* output) { output->reset(); }
static decltype(::blink::mojom::blink::FindInPageResultAXParams::request_id) request_id(
const ::blink::mojom::blink::FindInPageResultAXParamsPtr& input) {
return input->request_id;
}
static decltype(::blink::mojom::blink::FindInPageResultAXParams::match_index) match_index(
const ::blink::mojom::blink::FindInPageResultAXParamsPtr& input) {
return input->match_index;
}
static decltype(::blink::mojom::blink::FindInPageResultAXParams::start_id) start_id(
const ::blink::mojom::blink::FindInPageResultAXParamsPtr& input) {
return input->start_id;
}
static decltype(::blink::mojom::blink::FindInPageResultAXParams::start_offset) start_offset(
const ::blink::mojom::blink::FindInPageResultAXParamsPtr& input) {
return input->start_offset;
}
static decltype(::blink::mojom::blink::FindInPageResultAXParams::end_id) end_id(
const ::blink::mojom::blink::FindInPageResultAXParamsPtr& input) {
return input->end_id;
}
static decltype(::blink::mojom::blink::FindInPageResultAXParams::end_offset) end_offset(
const ::blink::mojom::blink::FindInPageResultAXParamsPtr& input) {
return input->end_offset;
}
static bool Read(::blink::mojom::blink::FindInPageResultAXParams::DataView input, ::blink::mojom::blink::FindInPageResultAXParamsPtr* output);
};
template <>
struct CORE_EXPORT StructTraits<::blink::mojom::blink::DownloadURLParams::DataView,
::blink::mojom::blink::DownloadURLParamsPtr> {
static bool IsNull(const ::blink::mojom::blink::DownloadURLParamsPtr& input) { return !input; }
static void SetToNull(::blink::mojom::blink::DownloadURLParamsPtr* output) { output->reset(); }
static const decltype(::blink::mojom::blink::DownloadURLParams::url)& url(
const ::blink::mojom::blink::DownloadURLParamsPtr& input) {
return input->url;
}
static const decltype(::blink::mojom::blink::DownloadURLParams::referrer)& referrer(
const ::blink::mojom::blink::DownloadURLParamsPtr& input) {
return input->referrer;
}
static const decltype(::blink::mojom::blink::DownloadURLParams::initiator_origin)& initiator_origin(
const ::blink::mojom::blink::DownloadURLParamsPtr& input) {
return input->initiator_origin;
}
static const decltype(::blink::mojom::blink::DownloadURLParams::suggested_name)& suggested_name(
const ::blink::mojom::blink::DownloadURLParamsPtr& input) {
return input->suggested_name;
}
static decltype(::blink::mojom::blink::DownloadURLParams::cross_origin_redirects) cross_origin_redirects(
const ::blink::mojom::blink::DownloadURLParamsPtr& input) {
return input->cross_origin_redirects;
}
static decltype(::blink::mojom::blink::DownloadURLParams::blob_url_token)& blob_url_token(
::blink::mojom::blink::DownloadURLParamsPtr& input) {
return input->blob_url_token;
}
static decltype(::blink::mojom::blink::DownloadURLParams::data_url_blob)& data_url_blob(
::blink::mojom::blink::DownloadURLParamsPtr& input) {
return input->data_url_blob;
}
static decltype(::blink::mojom::blink::DownloadURLParams::is_context_menu_save) is_context_menu_save(
const ::blink::mojom::blink::DownloadURLParamsPtr& input) {
return input->is_context_menu_save;
}
static decltype(::blink::mojom::blink::DownloadURLParams::has_user_gesture) has_user_gesture(
const ::blink::mojom::blink::DownloadURLParamsPtr& input) {
return input->has_user_gesture;
}
static bool Read(::blink::mojom::blink::DownloadURLParams::DataView input, ::blink::mojom::blink::DownloadURLParamsPtr* output);
};
template <>
struct CORE_EXPORT StructTraits<::blink::mojom::blink::OpenURLParams::DataView,
::blink::mojom::blink::OpenURLParamsPtr> {
static bool IsNull(const ::blink::mojom::blink::OpenURLParamsPtr& input) { return !input; }
static void SetToNull(::blink::mojom::blink::OpenURLParamsPtr* output) { output->reset(); }
static const decltype(::blink::mojom::blink::OpenURLParams::url)& url(
const ::blink::mojom::blink::OpenURLParamsPtr& input) {
return input->url;
}
static const decltype(::blink::mojom::blink::OpenURLParams::initiator_origin)& initiator_origin(
const ::blink::mojom::blink::OpenURLParamsPtr& input) {
return input->initiator_origin;
}
static const decltype(::blink::mojom::blink::OpenURLParams::initiator_frame_token)& initiator_frame_token(
const ::blink::mojom::blink::OpenURLParamsPtr& input) {
return input->initiator_frame_token;
}
static decltype(::blink::mojom::blink::OpenURLParams::post_body)& post_body(
::blink::mojom::blink::OpenURLParamsPtr& input) {
return input->post_body;
}
static const decltype(::blink::mojom::blink::OpenURLParams::extra_headers)& extra_headers(
const ::blink::mojom::blink::OpenURLParamsPtr& input) {
return input->extra_headers;
}
static const decltype(::blink::mojom::blink::OpenURLParams::referrer)& referrer(
const ::blink::mojom::blink::OpenURLParamsPtr& input) {
return input->referrer;
}
static decltype(::blink::mojom::blink::OpenURLParams::is_form_submission) is_form_submission(
const ::blink::mojom::blink::OpenURLParamsPtr& input) {
return input->is_form_submission;
}
static decltype(::blink::mojom::blink::OpenURLParams::disposition) disposition(
const ::blink::mojom::blink::OpenURLParamsPtr& input) {
return input->disposition;
}
static decltype(::blink::mojom::blink::OpenURLParams::should_replace_current_entry) should_replace_current_entry(
const ::blink::mojom::blink::OpenURLParamsPtr& input) {
return input->should_replace_current_entry;
}
static decltype(::blink::mojom::blink::OpenURLParams::user_gesture) user_gesture(
const ::blink::mojom::blink::OpenURLParamsPtr& input) {
return input->user_gesture;
}
static decltype(::blink::mojom::blink::OpenURLParams::is_unfenced_top_navigation) is_unfenced_top_navigation(
const ::blink::mojom::blink::OpenURLParamsPtr& input) {
return input->is_unfenced_top_navigation;
}
static decltype(::blink::mojom::blink::OpenURLParams::triggering_event_info) triggering_event_info(
const ::blink::mojom::blink::OpenURLParamsPtr& input) {
return input->triggering_event_info;
}
static decltype(::blink::mojom::blink::OpenURLParams::blob_url_token)& blob_url_token(
::blink::mojom::blink::OpenURLParamsPtr& input) {
return input->blob_url_token;
}
static const decltype(::blink::mojom::blink::OpenURLParams::href_translate)& href_translate(
const ::blink::mojom::blink::OpenURLParamsPtr& input) {
return input->href_translate;
}
static const decltype(::blink::mojom::blink::OpenURLParams::impression)& impression(
const ::blink::mojom::blink::OpenURLParamsPtr& input) {
return input->impression;
}
static const decltype(::blink::mojom::blink::OpenURLParams::download_policy)& download_policy(
const ::blink::mojom::blink::OpenURLParamsPtr& input) {
return input->download_policy;
}
static const decltype(::blink::mojom::blink::OpenURLParams::source_location)& source_location(
const ::blink::mojom::blink::OpenURLParamsPtr& input) {
return input->source_location;
}
static decltype(::blink::mojom::blink::OpenURLParams::initiator_policy_container_keep_alive_handle)& initiator_policy_container_keep_alive_handle(
::blink::mojom::blink::OpenURLParamsPtr& input) {
return input->initiator_policy_container_keep_alive_handle;
}
static bool Read(::blink::mojom::blink::OpenURLParams::DataView input, ::blink::mojom::blink::OpenURLParamsPtr* output);
};
} // namespace mojo
#endif // THIRD_PARTY_BLINK_PUBLIC_MOJOM_FRAME_FRAME_MOJOM_BLINK_H_
/* Metadata comment
eyJtZXRhIjogW3siZW5kIjogMTAxMzQsICJiZWdpbiI6IDEwMTE5LCAiZWRnZSI6ICIlL2t5dGhl
L2VkZ2UvZ2VuZXJhdGVzIiwgInR5cGUiOiAiYW5jaG9yX2RlZmluZXMiLCAidm5hbWUiOiB7ImNv
cnB1cyI6ICJjaHJvbWl1bS5nb29nbGVzb3VyY2UuY29tL2Nocm9taXVtL3NyYyIsICJsYW5ndWFn
ZSI6ICJtb2pvbSIsICJzaWduYXR1cmUiOiAiYmxpbmsubW9qb20uS2VlcEFsaXZlSGFuZGxlIn19
LCB7ImVuZCI6IDExMzkwLCAiYmVnaW4iOiAxMTM2OCwgImVkZ2UiOiAiJS9reXRoZS9lZGdlL2dl
bmVyYXRlcyIsICJ0eXBlIjogImFuY2hvcl9kZWZpbmVzIiwgInZuYW1lIjogeyJjb3JwdXMiOiAi
Y2hyb21pdW0uZ29vZ2xlc291cmNlLmNvbS9jaHJvbWl1bS9zcmMiLCAibGFuZ3VhZ2UiOiAibW9q
b20iLCAic2lnbmF0dXJlIjogImJsaW5rLm1vam9tLktlZXBBbGl2ZUhhbmRsZUZhY3RvcnkifX0s
IHsiZW5kIjogMTI2NzEsICJiZWdpbiI6IDEyNjUxLCAiZWRnZSI6ICIlL2t5dGhlL2VkZ2UvZ2Vu
ZXJhdGVzIiwgInR5cGUiOiAiYW5jaG9yX2RlZmluZXMiLCAidm5hbWUiOiB7ImNvcnB1cyI6ICJj
aHJvbWl1bS5nb29nbGVzb3VyY2UuY29tL2Nocm9taXVtL3NyYyIsICJsYW5ndWFnZSI6ICJtb2pv
bSIsICJzaWduYXR1cmUiOiAiYmxpbmsubW9qb20uS2VlcEFsaXZlSGFuZGxlRmFjdG9yeS5Jc3N1
ZUtlZXBBbGl2ZUhhbmRsZSJ9fSwgeyJlbmQiOiAxMjk4OCwgImJlZ2luIjogMTI5NzQsICJlZGdl
IjogIiUva3l0aGUvZWRnZS9nZW5lcmF0ZXMiLCAidHlwZSI6ICJhbmNob3JfZGVmaW5lcyIsICJ2
bmFtZSI6IHsiY29ycHVzIjogImNocm9taXVtLmdvb2dsZXNvdXJjZS5jb20vY2hyb21pdW0vc3Jj
IiwgImxhbmd1YWdlIjogIm1vam9tIiwgInNpZ25hdHVyZSI6ICJibGluay5tb2pvbS5Mb2NhbEZy
YW1lSG9zdCJ9fSwgeyJlbmQiOiAyMTc2MiwgImJlZ2luIjogMjE3NDcsICJlZGdlIjogIiUva3l0
aGUvZWRnZS9nZW5lcmF0ZXMiLCAidHlwZSI6ICJhbmNob3JfZGVmaW5lcyIsICJ2bmFtZSI6IHsi
Y29ycHVzIjogImNocm9taXVtLmdvb2dsZXNvdXJjZS5jb20vY2hyb21pdW0vc3JjIiwgImxhbmd1
YWdlIjogIm1vam9tIiwgInNpZ25hdHVyZSI6ICJibGluay5tb2pvbS5Mb2NhbEZyYW1lSG9zdC5F
bnRlckZ1bGxzY3JlZW4ifX0sIHsiZW5kIjogMjE5NTAsICJiZWdpbiI6IDIxOTM2LCAiZWRnZSI6
ICIlL2t5dGhlL2VkZ2UvZ2VuZXJhdGVzIiwgInR5cGUiOiAiYW5jaG9yX2RlZmluZXMiLCAidm5h
bWUiOiB7ImNvcnB1cyI6ICJjaHJvbWl1bS5nb29nbGVzb3VyY2UuY29tL2Nocm9taXVtL3NyYyIs
ICJsYW5ndWFnZSI6ICJtb2pvbSIsICJzaWduYXR1cmUiOiAiYmxpbmsubW9qb20uTG9jYWxGcmFt
ZUhvc3QuRXhpdEZ1bGxzY3JlZW4ifX0sIHsiZW5kIjogMjIwNjksICJiZWdpbiI6IDIyMDQ3LCAi
ZWRnZSI6ICIlL2t5dGhlL2VkZ2UvZ2VuZXJhdGVzIiwgInR5cGUiOiAiYW5jaG9yX2RlZmluZXMi
LCAidm5hbWUiOiB7ImNvcnB1cyI6ICJjaHJvbWl1bS5nb29nbGVzb3VyY2UuY29tL2Nocm9taXVt
L3NyYyIsICJsYW5ndWFnZSI6ICJtb2pvbSIsICJzaWduYXR1cmUiOiAiYmxpbmsubW9qb20uTG9j
YWxGcmFtZUhvc3QuRnVsbHNjcmVlblN0YXRlQ2hhbmdlZCJ9fSwgeyJlbmQiOiAyMjI2MSwgImJl
Z2luIjogMjIyMzgsICJlZGdlIjogIiUva3l0aGUvZWRnZS9nZW5lcmF0ZXMiLCAidHlwZSI6ICJh
bmNob3JfZGVmaW5lcyIsICJ2bmFtZSI6IHsiY29ycHVzIjogImNocm9taXVtLmdvb2dsZXNvdXJj
ZS5jb20vY2hyb21pdW0vc3JjIiwgImxhbmd1YWdlIjogIm1vam9tIiwgInNpZ25hdHVyZSI6ICJi
bGluay5tb2pvbS5Mb2NhbEZyYW1lSG9zdC5SZWdpc3RlclByb3RvY29sSGFuZGxlciJ9fSwgeyJl
bmQiOiAyMjQ1NiwgImJlZ2luIjogMjI0MzEsICJlZGdlIjogIiUva3l0aGUvZWRnZS9nZW5lcmF0
ZXMiLCAidHlwZSI6ICJhbmNob3JfZGVmaW5lcyIsICJ2bmFtZSI6IHsiY29ycHVzIjogImNocm9t
aXVtLmdvb2dsZXNvdXJjZS5jb20vY2hyb21pdW0vc3JjIiwgImxhbmd1YWdlIjogIm1vam9tIiwg
InNpZ25hdHVyZSI6ICJibGluay5tb2pvbS5Mb2NhbEZyYW1lSG9zdC5VbnJlZ2lzdGVyUHJvdG9j
b2xIYW5kbGVyIn19LCB7ImVuZCI6IDIyNjUxLCAiYmVnaW4iOiAyMjYyNiwgImVkZ2UiOiAiJS9r
eXRoZS9lZGdlL2dlbmVyYXRlcyIsICJ0eXBlIjogImFuY2hvcl9kZWZpbmVzIiwgInZuYW1lIjog
eyJjb3JwdXMiOiAiY2hyb21pdW0uZ29vZ2xlc291cmNlLmNvbS9jaHJvbWl1bS9zcmMiLCAibGFu
Z3VhZ2UiOiAibW9qb20iLCAic2lnbmF0dXJlIjogImJsaW5rLm1vam9tLkxvY2FsRnJhbWVIb3N0
LkRpZERpc3BsYXlJbnNlY3VyZUNvbnRlbnQifX0sIHsiZW5kIjogMjI3ODIsICJiZWdpbiI6IDIy
NzU0LCAiZWRnZSI6ICIlL2t5dGhlL2VkZ2UvZ2VuZXJhdGVzIiwgInR5cGUiOiAiYW5jaG9yX2Rl
ZmluZXMiLCAidm5hbWUiOiB7ImNvcnB1cyI6ICJjaHJvbWl1bS5nb29nbGVzb3VyY2UuY29tL2No
cm9taXVtL3NyYyIsICJsYW5ndWFnZSI6ICJtb2pvbSIsICJzaWduYXR1cmUiOiAiYmxpbmsubW9q
b20uTG9jYWxGcmFtZUhvc3QuRGlkQ29udGFpbkluc2VjdXJlRm9ybUFjdGlvbiJ9fSwgeyJlbmQi
OiAyMjkxMywgImJlZ2luIjogMjI4ODUsICJlZGdlIjogIiUva3l0aGUvZWRnZS9nZW5lcmF0ZXMi
LCAidHlwZSI6ICJhbmNob3JfZGVmaW5lcyIsICJ2bmFtZSI6IHsiY29ycHVzIjogImNocm9taXVt
Lmdvb2dsZXNvdXJjZS5jb20vY2hyb21pdW0vc3JjIiwgImxhbmd1YWdlIjogIm1vam9tIiwgInNp
Z25hdHVyZSI6ICJibGluay5tb2pvbS5Mb2NhbEZyYW1lSG9zdC5NYWluRG9jdW1lbnRFbGVtZW50
QXZhaWxhYmxlIn19LCB7ImVuZCI6IDIzMDY4LCAiYmVnaW4iOiAyMzA0MywgImVkZ2UiOiAiJS9r
eXRoZS9lZGdlL2dlbmVyYXRlcyIsICJ0eXBlIjogImFuY2hvcl9kZWZpbmVzIiwgInZuYW1lIjog
eyJjb3JwdXMiOiAiY2hyb21pdW0uZ29vZ2xlc291cmNlLmNvbS9jaHJvbWl1bS9zcmMiLCAibGFu
Z3VhZ2UiOiAibW9qb20iLCAic2lnbmF0dXJlIjogImJsaW5rLm1vam9tLkxvY2FsRnJhbWVIb3N0
LlNldE5lZWRzT2NjbHVzaW9uVHJhY2tpbmcifX0sIHsiZW5kIjogMjMyMjQsICJiZWdpbiI6IDIz
MTkzLCAiZWRnZSI6ICIlL2t5dGhlL2VkZ2UvZ2VuZXJhdGVzIiwgInR5cGUiOiAiYW5jaG9yX2Rl
ZmluZXMiLCAidm5hbWUiOiB7ImNvcnB1cyI6ICJjaHJvbWl1bS5nb29nbGVzb3VyY2UuY29tL2No
cm9taXVtL3NyYyIsICJsYW5ndWFnZSI6ICJtb2pvbSIsICJzaWduYXR1cmUiOiAiYmxpbmsubW9q
b20uTG9jYWxGcmFtZUhvc3QuU2V0VmlydHVhbEtleWJvYXJkT3ZlcmxheVBvbGljeSJ9fSwgeyJl
bmQiOiAyMzM1NywgImJlZ2luIjogMjMzNDAsICJlZGdlIjogIiUva3l0aGUvZWRnZS9nZW5lcmF0
ZXMiLCAidHlwZSI6ICJhbmNob3JfZGVmaW5lcyIsICJ2bmFtZSI6IHsiY29ycHVzIjogImNocm9t
aXVtLmdvb2dsZXNvdXJjZS5jb20vY2hyb21pdW0vc3JjIiwgImxhbmd1YWdlIjogIm1vam9tIiwg
InNpZ25hdHVyZSI6ICJibGluay5tb2pvbS5Mb2NhbEZyYW1lSG9zdC5WaXNpYmlsaXR5Q2hhbmdl
ZCJ9fSwgeyJlbmQiOiAyMzUxOSwgImJlZ2luIjogMjM1MDAsICJlZGdlIjogIiUva3l0aGUvZWRn
ZS9nZW5lcmF0ZXMiLCAidHlwZSI6ICJhbmNob3JfZGVmaW5lcyIsICJ2bmFtZSI6IHsiY29ycHVz
IjogImNocm9taXVtLmdvb2dsZXNvdXJjZS5jb20vY2hyb21pdW0vc3JjIiwgImxhbmd1YWdlIjog
Im1vam9tIiwgInNpZ25hdHVyZSI6ICJibGluay5tb2pvbS5Mb2NhbEZyYW1lSG9zdC5EaWRDaGFu
Z2VUaGVtZUNvbG9yIn19LCB7ImVuZCI6IDIzNjc5LCAiYmVnaW4iOiAyMzY1NSwgImVkZ2UiOiAi
JS9reXRoZS9lZGdlL2dlbmVyYXRlcyIsICJ0eXBlIjogImFuY2hvcl9kZWZpbmVzIiwgInZuYW1l
IjogeyJjb3JwdXMiOiAiY2hyb21pdW0uZ29vZ2xlc291cmNlLmNvbS9jaHJvbWl1bS9zcmMiLCAi
bGFuZ3VhZ2UiOiAibW9qb20iLCAic2lnbmF0dXJlIjogImJsaW5rLm1vam9tLkxvY2FsRnJhbWVI
b3N0LkRpZENoYW5nZUJhY2tncm91bmRDb2xvciJ9fSwgeyJlbmQiOiAyMzgzOSwgImJlZ2luIjog
MjM4MTksICJlZGdlIjogIiUva3l0aGUvZWRnZS9nZW5lcmF0ZXMiLCAidHlwZSI6ICJhbmNob3Jf
ZGVmaW5lcyIsICJ2bmFtZSI6IHsiY29ycHVzIjogImNocm9taXVtLmdvb2dsZXNvdXJjZS5jb20v
Y2hyb21pdW0vc3JjIiwgImxhbmd1YWdlIjogIm1vam9tIiwgInNpZ25hdHVyZSI6ICJibGluay5t
b2pvbS5Mb2NhbEZyYW1lSG9zdC5EaWRGYWlsTG9hZFdpdGhFcnJvciJ9fSwgeyJlbmQiOiAyMzk4
NCwgImJlZ2luIjogMjM5NzEsICJlZGdlIjogIiUva3l0aGUvZWRnZS9nZW5lcmF0ZXMiLCAidHlw
ZSI6ICJhbmNob3JfZGVmaW5lcyIsICJ2bmFtZSI6IHsiY29ycHVzIjogImNocm9taXVtLmdvb2ds
ZXNvdXJjZS5jb20vY2hyb21pdW0vc3JjIiwgImxhbmd1YWdlIjogIm1vam9tIiwgInNpZ25hdHVy
ZSI6ICJibGluay5tb2pvbS5Mb2NhbEZyYW1lSG9zdC5EaWRGb2N1c0ZyYW1lIn19LCB7ImVuZCI6
IDI0MDgzLCAiYmVnaW4iOiAyNDA3MSwgImVkZ2UiOiAiJS9reXRoZS9lZGdlL2dlbmVyYXRlcyIs
ICJ0eXBlIjogImFuY2hvcl9kZWZpbmVzIiwgInZuYW1lIjogeyJjb3JwdXMiOiAiY2hyb21pdW0u
Z29vZ2xlc291cmNlLmNvbS9jaHJvbWl1bS9zcmMiLCAibGFuZ3VhZ2UiOiAibW9qb20iLCAic2ln
bmF0dXJlIjogImJsaW5rLm1vam9tLkxvY2FsRnJhbWVIb3N0LkRpZENhbGxGb2N1cyJ9fSwgeyJl
bmQiOiAyNDIxNCwgImJlZ2luIjogMjQxODYsICJlZGdlIjogIiUva3l0aGUvZWRnZS9nZW5lcmF0
ZXMiLCAidHlwZSI6ICJhbmNob3JfZGVmaW5lcyIsICJ2bmFtZSI6IHsiY29ycHVzIjogImNocm9t
aXVtLmdvb2dsZXNvdXJjZS5jb20vY2hyb21pdW0vc3JjIiwgImxhbmd1YWdlIjogIm1vam9tIiwg
InNpZ25hdHVyZSI6ICJibGluay5tb2pvbS5Mb2NhbEZyYW1lSG9zdC5FbmZvcmNlSW5zZWN1cmVS
ZXF1ZXN0UG9saWN5In19LCB7ImVuZCI6IDI0NDA1LCAiYmVnaW4iOiAyNDM3NiwgImVkZ2UiOiAi
JS9reXRoZS9lZGdlL2dlbmVyYXRlcyIsICJ0eXBlIjogImFuY2hvcl9kZWZpbmVzIiwgInZuYW1l
IjogeyJjb3JwdXMiOiAiY2hyb21pdW0uZ29vZ2xlc291cmNlLmNvbS9jaHJvbWl1bS9zcmMiLCAi
bGFuZ3VhZ2UiOiAibW9qb20iLCAic2lnbmF0dXJlIjogImJsaW5rLm1vam9tLkxvY2FsRnJhbWVI
b3N0LkVuZm9yY2VJbnNlY3VyZU5hdmlnYXRpb25zU2V0In19LCB7ImVuZCI6IDI0NTc2LCAiYmVn
aW4iOiAyNDU0NCwgImVkZ2UiOiAiJS9reXRoZS9lZGdlL2dlbmVyYXRlcyIsICJ0eXBlIjogImFu
Y2hvcl9kZWZpbmVzIiwgInZuYW1lIjogeyJjb3JwdXMiOiAiY2hyb21pdW0uZ29vZ2xlc291cmNl
LmNvbS9jaHJvbWl1bS9zcmMiLCAibGFuZ3VhZ2UiOiAibW9qb20iLCAic2lnbmF0dXJlIjogImJs
aW5rLm1vam9tLkxvY2FsRnJhbWVIb3N0LlN1ZGRlblRlcm1pbmF0aW9uRGlzYWJsZXJDaGFuZ2Vk
In19LCB7ImVuZCI6IDI0ODIzLCAiYmVnaW4iOiAyNDc3NywgImVkZ2UiOiAiJS9reXRoZS9lZGdl
L2dlbmVyYXRlcyIsICJ0eXBlIjogImFuY2hvcl9kZWZpbmVzIiwgInZuYW1lIjogeyJjb3JwdXMi
OiAiY2hyb21pdW0uZ29vZ2xlc291cmNlLmNvbS9jaHJvbWl1bS9zcmMiLCAibGFuZ3VhZ2UiOiAi
bW9qb20iLCAic2lnbmF0dXJlIjogImJsaW5rLm1vam9tLkxvY2FsRnJhbWVIb3N0LkhhZFN0aWNr
eVVzZXJBY3RpdmF0aW9uQmVmb3JlTmF2aWdhdGlvbkNoYW5nZWQifX0sIHsiZW5kIjogMjQ5Nzgs
ICJiZWdpbiI6IDI0OTQ2LCAiZWRnZSI6ICIlL2t5dGhlL2VkZ2UvZ2VuZXJhdGVzIiwgInR5cGUi
OiAiYW5jaG9yX2RlZmluZXMiLCAidm5hbWUiOiB7ImNvcnB1cyI6ICJjaHJvbWl1bS5nb29nbGVz
b3VyY2UuY29tL2Nocm9taXVtL3NyYyIsICJsYW5ndWFnZSI6ICJtb2pvbSIsICJzaWduYXR1cmUi
OiAiYmxpbmsubW9qb20uTG9jYWxGcmFtZUhvc3QuU2Nyb2xsUmVjdFRvVmlzaWJsZUluUGFyZW50
RnJhbWUifX0sIHsiZW5kIjogMjUyMDYsICJiZWdpbiI6IDI1MTc0LCAiZWRnZSI6ICIlL2t5dGhl
L2VkZ2UvZ2VuZXJhdGVzIiwgInR5cGUiOiAiYW5jaG9yX2RlZmluZXMiLCAidm5hbWUiOiB7ImNv
cnB1cyI6ICJjaHJvbWl1bS5nb29nbGVzb3VyY2UuY29tL2Nocm9taXVtL3NyYyIsICJsYW5ndWFn
ZSI6ICJtb2pvbSIsICJzaWduYXR1cmUiOiAiYmxpbmsubW9qb20uTG9jYWxGcmFtZUhvc3QuQnVi
YmxlTG9naWNhbFNjcm9sbEluUGFyZW50RnJhbWUifX0sIHsiZW5kIjogMjU0MDIsICJiZWdpbiI6
IDI1Mzg0LCAiZWRnZSI6ICIlL2t5dGhlL2VkZ2UvZ2VuZXJhdGVzIiwgInR5cGUiOiAiYW5jaG9y
X2RlZmluZXMiLCAidm5hbWUiOiB7ImNvcnB1cyI6ICJjaHJvbWl1bS5nb29nbGVzb3VyY2UuY29t
L2Nocm9taXVtL3NyYyIsICJsYW5ndWFnZSI6ICJtb2pvbSIsICJzaWduYXR1cmUiOiAiYmxpbmsu
bW9qb20uTG9jYWxGcmFtZUhvc3QuRGlkQmxvY2tOYXZpZ2F0aW9uIn19LCB7ImVuZCI6IDI1NjQy
LCAiYmVnaW4iOiAyNTYyMSwgImVkZ2UiOiAiJS9reXRoZS9lZGdlL2dlbmVyYXRlcyIsICJ0eXBl
IjogImFuY2hvcl9kZWZpbmVzIiwgInZuYW1lIjogeyJjb3JwdXMiOiAiY2hyb21pdW0uZ29vZ2xl
c291cmNlLmNvbS9jaHJvbWl1bS9zcmMiLCAibGFuZ3VhZ2UiOiAibW9qb20iLCAic2lnbmF0dXJl
IjogImJsaW5rLm1vam9tLkxvY2FsRnJhbWVIb3N0LkRpZENoYW5nZUxvYWRQcm9ncmVzcyJ9fSwg
eyJlbmQiOiAyNTc2MywgImJlZ2luIjogMjU3NTAsICJlZGdlIjogIiUva3l0aGUvZWRnZS9nZW5l
cmF0ZXMiLCAidHlwZSI6ICJhbmNob3JfZGVmaW5lcyIsICJ2bmFtZSI6IHsiY29ycHVzIjogImNo
cm9taXVtLmdvb2dsZXNvdXJjZS5jb20vY2hyb21pdW0vc3JjIiwgImxhbmd1YWdlIjogIm1vam9t
IiwgInNpZ25hdHVyZSI6ICJibGluay5tb2pvbS5Mb2NhbEZyYW1lSG9zdC5EaWRGaW5pc2hMb2Fk
In19LCB7ImVuZCI6IDI1ODk2LCAiYmVnaW4iOiAyNTg4NCwgImVkZ2UiOiAiJS9reXRoZS9lZGdl
L2dlbmVyYXRlcyIsICJ0eXBlIjogImFuY2hvcl9kZWZpbmVzIiwgInZuYW1lIjogeyJjb3JwdXMi
OiAiY2hyb21pdW0uZ29vZ2xlc291cmNlLmNvbS9jaHJvbWl1bS9zcmMiLCAibGFuZ3VhZ2UiOiAi
bW9qb20iLCAic2lnbmF0dXJlIjogImJsaW5rLm1vam9tLkxvY2FsRnJhbWVIb3N0LkRpc3BhdGNo
TG9hZCJ9fSwgeyJlbmQiOiAyNjAwNSwgImJlZ2luIjogMjU5ODgsICJlZGdlIjogIiUva3l0aGUv
ZWRnZS9nZW5lcmF0ZXMiLCAidHlwZSI6ICJhbmNob3JfZGVmaW5lcyIsICJ2bmFtZSI6IHsiY29y
cHVzIjogImNocm9taXVtLmdvb2dsZXNvdXJjZS5jb20vY2hyb21pdW0vc3JjIiwgImxhbmd1YWdl
IjogIm1vam9tIiwgInNpZ25hdHVyZSI6ICJibGluay5tb2pvbS5Mb2NhbEZyYW1lSG9zdC5Hb1Rv
RW50cnlBdE9mZnNldCJ9fSwgeyJlbmQiOiAyNjE2OSwgImJlZ2luIjogMjYxNDMsICJlZGdlIjog
IiUva3l0aGUvZWRnZS9nZW5lcmF0ZXMiLCAidHlwZSI6ICJhbmNob3JfZGVmaW5lcyIsICJ2bmFt
ZSI6IHsiY29ycHVzIjogImNocm9taXVtLmdvb2dsZXNvdXJjZS5jb20vY2hyb21pdW0vc3JjIiwg
Imxhbmd1YWdlIjogIm1vam9tIiwgInNpZ25hdHVyZSI6ICJibGluay5tb2pvbS5Mb2NhbEZyYW1l
SG9zdC5OYXZpZ2F0ZVRvTmF2aWdhdGlvbkFwaUtleSJ9fSwgeyJlbmQiOiAyNjMxMSwgImJlZ2lu
IjogMjYzMDAsICJlZGdlIjogIiUva3l0aGUvZWRnZS9nZW5lcmF0ZXMiLCAidHlwZSI6ICJhbmNo
b3JfZGVmaW5lcyIsICJ2bmFtZSI6IHsiY29ycHVzIjogImNocm9taXVtLmdvb2dsZXNvdXJjZS5j
b20vY2hyb21pdW0vc3JjIiwgImxhbmd1YWdlIjogIm1vam9tIiwgInNpZ25hdHVyZSI6ICJibGlu
ay5tb2pvbS5Mb2NhbEZyYW1lSG9zdC5VcGRhdGVUaXRsZSJ9fSwgeyJlbmQiOiAyNjUwNywgImJl
Z2luIjogMjY0ODIsICJlZGdlIjogIiUva3l0aGUvZWRnZS9nZW5lcmF0ZXMiLCAidHlwZSI6ICJh
bmNob3JfZGVmaW5lcyIsICJ2bmFtZSI6IHsiY29ycHVzIjogImNocm9taXVtLmdvb2dsZXNvdXJj
ZS5jb20vY2hyb21pdW0vc3JjIiwgImxhbmd1YWdlIjogIm1vam9tIiwgInNpZ25hdHVyZSI6ICJi
bGluay5tb2pvbS5Mb2NhbEZyYW1lSG9zdC5VcGRhdGVVc2VyQWN0aXZhdGlvblN0YXRlIn19LCB7
ImVuZCI6IDI2Nzg0LCAiYmVnaW4iOiAyNjc0OSwgImVkZ2UiOiAiJS9reXRoZS9lZGdlL2dlbmVy
YXRlcyIsICJ0eXBlIjogImFuY2hvcl9kZWZpbmVzIiwgInZuYW1lIjogeyJjb3JwdXMiOiAiY2hy
b21pdW0uZ29vZ2xlc291cmNlLmNvbS9jaHJvbWl1bS9zcmMiLCAibGFuZ3VhZ2UiOiAibW9qb20i
LCAic2lnbmF0dXJlIjogImJsaW5rLm1vam9tLkxvY2FsRnJhbWVIb3N0LkhhbmRsZUFjY2Vzc2li
aWxpdHlGaW5kSW5QYWdlUmVzdWx0In19LCB7ImVuZCI6IDI2OTczLCAiYmVnaW4iOiAyNjkzMywg
ImVkZ2UiOiAiJS9reXRoZS9lZGdlL2dlbmVyYXRlcyIsICJ0eXBlIjogImFuY2hvcl9kZWZpbmVz
IiwgInZuYW1lIjogeyJjb3JwdXMiOiAiY2hyb21pdW0uZ29vZ2xlc291cmNlLmNvbS9jaHJvbWl1
bS9zcmMiLCAibGFuZ3VhZ2UiOiAibW9qb20iLCAic2lnbmF0dXJlIjogImJsaW5rLm1vam9tLkxv
Y2FsRnJhbWVIb3N0LkhhbmRsZUFjY2Vzc2liaWxpdHlGaW5kSW5QYWdlVGVybWluYXRpb24ifX0s
IHsiZW5kIjogMjcwOTQsICJiZWdpbiI6IDI3MDcxLCAiZWRnZSI6ICIlL2t5dGhlL2VkZ2UvZ2Vu
ZXJhdGVzIiwgInR5cGUiOiAiYW5jaG9yX2RlZmluZXMiLCAidm5hbWUiOiB7ImNvcnB1cyI6ICJj
aHJvbWl1bS5nb29nbGVzb3VyY2UuY29tL2Nocm9taXVtL3NyYyIsICJsYW5ndWFnZSI6ICJtb2pv
bSIsICJzaWduYXR1cmUiOiAiYmxpbmsubW9qb20uTG9jYWxGcmFtZUhvc3QuRG9jdW1lbnRPbkxv
YWRDb21wbGV0ZWQifX0sIHsiZW5kIjogMjcyMjcsICJiZWdpbiI6IDI3MTk4LCAiZWRnZSI6ICIl
L2t5dGhlL2VkZ2UvZ2VuZXJhdGVzIiwgInR5cGUiOiAiYW5jaG9yX2RlZmluZXMiLCAidm5hbWUi
OiB7ImNvcnB1cyI6ICJjaHJvbWl1bS5nb29nbGVzb3VyY2UuY29tL2Nocm9taXVtL3NyYyIsICJs
YW5ndWFnZSI6ICJtb2pvbSIsICJzaWduYXR1cmUiOiAiYmxpbmsubW9qb20uTG9jYWxGcmFtZUhv
c3QuRm9yd2FyZFJlc291cmNlVGltaW5nVG9QYXJlbnQifX0sIHsiZW5kIjogMjc0MTcsICJiZWdp
biI6IDI3Mzg1LCAiZWRnZSI6ICIlL2t5dGhlL2VkZ2UvZ2VuZXJhdGVzIiwgInR5cGUiOiAiYW5j
aG9yX2RlZmluZXMiLCAidm5hbWUiOiB7ImNvcnB1cyI6ICJjaHJvbWl1bS5nb29nbGVzb3VyY2Uu
Y29tL2Nocm9taXVtL3NyYyIsICJsYW5ndWFnZSI6ICJtb2pvbSIsICJzaWduYXR1cmUiOiAiYmxp
bmsubW9qb20uTG9jYWxGcmFtZUhvc3QuRGlkRGlzcGF0Y2hET01Db250ZW50TG9hZGVkRXZlbnQi
fX0sIHsiZW5kIjogMjc2NjUsICJiZWdpbiI6IDI3NjQ2LCAiZWRnZSI6ICIlL2t5dGhlL2VkZ2Uv
Z2VuZXJhdGVzIiwgInR5cGUiOiAiYW5jaG9yX2RlZmluZXMiLCAidm5hbWUiOiB7ImNvcnB1cyI6
ICJjaHJvbWl1bS5nb29nbGVzb3VyY2UuY29tL2Nocm9taXVtL3NyYyIsICJsYW5ndWFnZSI6ICJt
b2pvbSIsICJzaWduYXR1cmUiOiAiYmxpbmsubW9qb20uTG9jYWxGcmFtZUhvc3QuUnVuTW9kYWxB
bGVydERpYWxvZyJ9fSwgeyJlbmQiOiAyNzkyMCwgImJlZ2luIjogMjc5MDEsICJlZGdlIjogIiUv
a3l0aGUvZWRnZS9nZW5lcmF0ZXMiLCAidHlwZSI6ICJhbmNob3JfZGVmaW5lcyIsICJ2bmFtZSI6
IHsiY29ycHVzIjogImNocm9taXVtLmdvb2dsZXNvdXJjZS5jb20vY2hyb21pdW0vc3JjIiwgImxh
bmd1YWdlIjogIm1vam9tIiwgInNpZ25hdHVyZSI6ICJibGluay5tb2pvbS5Mb2NhbEZyYW1lSG9z
dC5SdW5Nb2RhbEFsZXJ0RGlhbG9nIn19LCB7ImVuZCI6IDI4MjkwLCAiYmVnaW4iOiAyODI2OSwg
ImVkZ2UiOiAiJS9reXRoZS9lZGdlL2dlbmVyYXRlcyIsICJ0eXBlIjogImFuY2hvcl9kZWZpbmVz
IiwgInZuYW1lIjogeyJjb3JwdXMiOiAiY2hyb21pdW0uZ29vZ2xlc291cmNlLmNvbS9jaHJvbWl1
bS9zcmMiLCAibGFuZ3VhZ2UiOiAibW9qb20iLCAic2lnbmF0dXJlIjogImJsaW5rLm1vam9tLkxv
Y2FsRnJhbWVIb3N0LlJ1bk1vZGFsQ29uZmlybURpYWxvZyJ9fSwgeyJlbmQiOiAyODU3NCwgImJl
Z2luIjogMjg1NTMsICJlZGdlIjogIiUva3l0aGUvZWRnZS9nZW5lcmF0ZXMiLCAidHlwZSI6ICJh
bmNob3JfZGVmaW5lcyIsICJ2bmFtZSI6IHsiY29ycHVzIjogImNocm9taXVtLmdvb2dsZXNvdXJj
ZS5jb20vY2hyb21pdW0vc3JjIiwgImxhbmd1YWdlIjogIm1vam9tIiwgInNpZ25hdHVyZSI6ICJi
bGluay5tb2pvbS5Mb2NhbEZyYW1lSG9zdC5SdW5Nb2RhbENvbmZpcm1EaWFsb2cifX0sIHsiZW5k
IjogMjg5NDQsICJiZWdpbiI6IDI4OTI0LCAiZWRnZSI6ICIlL2t5dGhlL2VkZ2UvZ2VuZXJhdGVz
IiwgInR5cGUiOiAiYW5jaG9yX2RlZmluZXMiLCAidm5hbWUiOiB7ImNvcnB1cyI6ICJjaHJvbWl1
bS5nb29nbGVzb3VyY2UuY29tL2Nocm9taXVtL3NyYyIsICJsYW5ndWFnZSI6ICJtb2pvbSIsICJz
aWduYXR1cmUiOiAiYmxpbmsubW9qb20uTG9jYWxGcmFtZUhvc3QuUnVuTW9kYWxQcm9tcHREaWFs
b2cifX0sIHsiZW5kIjogMjkzMTAsICJiZWdpbiI6IDI5MjkwLCAiZWRnZSI6ICIlL2t5dGhlL2Vk
Z2UvZ2VuZXJhdGVzIiwgInR5cGUiOiAiYW5jaG9yX2RlZmluZXMiLCAidm5hbWUiOiB7ImNvcnB1
cyI6ICJjaHJvbWl1bS5nb29nbGVzb3VyY2UuY29tL2Nocm9taXVtL3NyYyIsICJsYW5ndWFnZSI6
ICJtb2pvbSIsICJzaWduYXR1cmUiOiAiYmxpbmsubW9qb20uTG9jYWxGcmFtZUhvc3QuUnVuTW9k
YWxQcm9tcHREaWFsb2cifX0sIHsiZW5kIjogMjk3MTksICJiZWdpbiI6IDI5Njk3LCAiZWRnZSI6
ICIlL2t5dGhlL2VkZ2UvZ2VuZXJhdGVzIiwgInR5cGUiOiAiYW5jaG9yX2RlZmluZXMiLCAidm5h
bWUiOiB7ImNvcnB1cyI6ICJjaHJvbWl1bS5nb29nbGVzb3VyY2UuY29tL2Nocm9taXVtL3NyYyIs
ICJsYW5ndWFnZSI6ICJtb2pvbSIsICJzaWduYXR1cmUiOiAiYmxpbmsubW9qb20uTG9jYWxGcmFt
ZUhvc3QuUnVuQmVmb3JlVW5sb2FkQ29uZmlybSJ9fSwgeyJlbmQiOiAyOTk0MCwgImJlZ2luIjog
Mjk5MTgsICJlZGdlIjogIiUva3l0aGUvZWRnZS9nZW5lcmF0ZXMiLCAidHlwZSI6ICJhbmNob3Jf
ZGVmaW5lcyIsICJ2bmFtZSI6IHsiY29ycHVzIjogImNocm9taXVtLmdvb2dsZXNvdXJjZS5jb20v
Y2hyb21pdW0vc3JjIiwgImxhbmd1YWdlIjogIm1vam9tIiwgInNpZ25hdHVyZSI6ICJibGluay5t
b2pvbS5Mb2NhbEZyYW1lSG9zdC5SdW5CZWZvcmVVbmxvYWRDb25maXJtIn19LCB7ImVuZCI6IDMw
MTAyLCAiYmVnaW4iOiAzMDA4NiwgImVkZ2UiOiAiJS9reXRoZS9lZGdlL2dlbmVyYXRlcyIsICJ0
eXBlIjogImFuY2hvcl9kZWZpbmVzIiwgInZuYW1lIjogeyJjb3JwdXMiOiAiY2hyb21pdW0uZ29v
Z2xlc291cmNlLmNvbS9jaHJvbWl1bS9zcmMiLCAibGFuZ3VhZ2UiOiAibW9qb20iLCAic2lnbmF0
dXJlIjogImJsaW5rLm1vam9tLkxvY2FsRnJhbWVIb3N0LlVwZGF0ZUZhdmljb25VUkwifX0sIHsi
ZW5kIjogMzAyNjEsICJiZWdpbiI6IDMwMjUwLCAiZWRnZSI6ICIlL2t5dGhlL2VkZ2UvZ2VuZXJh
dGVzIiwgInR5cGUiOiAiYW5jaG9yX2RlZmluZXMiLCAidm5hbWUiOiB7ImNvcnB1cyI6ICJjaHJv
bWl1bS5nb29nbGVzb3VyY2UuY29tL2Nocm9taXVtL3NyYyIsICJsYW5ndWFnZSI6ICJtb2pvbSIs
ICJzaWduYXR1cmUiOiAiYmxpbmsubW9qb20uTG9jYWxGcmFtZUhvc3QuRG93bmxvYWRVUkwifX0s
IHsiZW5kIjogMzA0MDUsICJiZWdpbiI6IDMwMzg0LCAiZWRnZSI6ICIlL2t5dGhlL2VkZ2UvZ2Vu
ZXJhdGVzIiwgInR5cGUiOiAiYW5jaG9yX2RlZmluZXMiLCAidm5hbWUiOiB7ImNvcnB1cyI6ICJj
aHJvbWl1bS5nb29nbGVzb3VyY2UuY29tL2Nocm9taXVtL3NyYyIsICJsYW5ndWFnZSI6ICJtb2pv
bSIsICJzaWduYXR1cmUiOiAiYmxpbmsubW9qb20uTG9jYWxGcmFtZUhvc3QuRm9jdXNlZEVsZW1l
bnRDaGFuZ2VkIn19LCB7ImVuZCI6IDMwNjMyLCAiYmVnaW4iOiAzMDYxMiwgImVkZ2UiOiAiJS9r
eXRoZS9lZGdlL2dlbmVyYXRlcyIsICJ0eXBlIjogImFuY2hvcl9kZWZpbmVzIiwgInZuYW1lIjog
eyJjb3JwdXMiOiAiY2hyb21pdW0uZ29vZ2xlc291cmNlLmNvbS9jaHJvbWl1bS9zcmMiLCAibGFu
Z3VhZ2UiOiAibW9qb20iLCAic2lnbmF0dXJlIjogImJsaW5rLm1vam9tLkxvY2FsRnJhbWVIb3N0
LlRleHRTZWxlY3Rpb25DaGFuZ2VkIn19LCB7ImVuZCI6IDMwODAyLCAiYmVnaW4iOiAzMDc4OSwg
ImVkZ2UiOiAiJS9reXRoZS9lZGdlL2dlbmVyYXRlcyIsICJ0eXBlIjogImFuY2hvcl9kZWZpbmVz
IiwgInZuYW1lIjogeyJjb3JwdXMiOiAiY2hyb21pdW0uZ29vZ2xlc291cmNlLmNvbS9jaHJvbWl1
bS9zcmMiLCAibGFuZ3VhZ2UiOiAibW9qb20iLCAic2lnbmF0dXJlIjogImJsaW5rLm1vam9tLkxv
Y2FsRnJhbWVIb3N0LlNob3dQb3B1cE1lbnUifX0sIHsiZW5kIjogMzExOTEsICJiZWdpbiI6IDMx
MTcxLCAiZWRnZSI6ICIlL2t5dGhlL2VkZ2UvZ2VuZXJhdGVzIiwgInR5cGUiOiAiYW5jaG9yX2Rl
ZmluZXMiLCAidm5hbWUiOiB7ImNvcnB1cyI6ICJjaHJvbWl1bS5nb29nbGVzb3VyY2UuY29tL2No
cm9taXVtL3NyYyIsICJsYW5ndWFnZSI6ICJtb2pvbSIsICJzaWduYXR1cmUiOiAiYmxpbmsubW9q
b20uTG9jYWxGcmFtZUhvc3QuQ3JlYXRlTmV3UG9wdXBXaWRnZXQifX0sIHsiZW5kIjogMzE1NDUs
ICJiZWdpbiI6IDMxNTMwLCAiZWRnZSI6ICIlL2t5dGhlL2VkZ2UvZ2VuZXJhdGVzIiwgInR5cGUi
OiAiYW5jaG9yX2RlZmluZXMiLCAidm5hbWUiOiB7ImNvcnB1cyI6ICJjaHJvbWl1bS5nb29nbGVz
b3VyY2UuY29tL2Nocm9taXVtL3NyYyIsICJsYW5ndWFnZSI6ICJtb2pvbSIsICJzaWduYXR1cmUi
OiAiYmxpbmsubW9qb20uTG9jYWxGcmFtZUhvc3QuU2hvd0NvbnRleHRNZW51In19LCB7ImVuZCI6
IDMxODE1LCAiYmVnaW4iOiAzMTc4NSwgImVkZ2UiOiAiJS9reXRoZS9lZGdlL2dlbmVyYXRlcyIs
ICJ0eXBlIjogImFuY2hvcl9kZWZpbmVzIiwgInZuYW1lIjogeyJjb3JwdXMiOiAiY2hyb21pdW0u
Z29vZ2xlc291cmNlLmNvbS9jaHJvbWl1bS9zcmMiLCAibGFuZ3VhZ2UiOiAibW9qb20iLCAic2ln
bmF0dXJlIjogImJsaW5rLm1vam9tLkxvY2FsRnJhbWVIb3N0LkRpZExvYWRSZXNvdXJjZUZyb21N
ZW1vcnlDYWNoZSJ9fSwgeyJlbmQiOiAzMjEyNSwgImJlZ2luIjogMzIwOTYsICJlZGdlIjogIiUv
a3l0aGUvZWRnZS9nZW5lcmF0ZXMiLCAidHlwZSI6ICJhbmNob3JfZGVmaW5lcyIsICJ2bmFtZSI6
IHsiY29ycHVzIjogImNocm9taXVtLmdvb2dsZXNvdXJjZS5jb20vY2hyb21pdW0vc3JjIiwgImxh
bmd1YWdlIjogIm1vam9tIiwgInNpZ25hdHVyZSI6ICJibGluay5tb2pvbS5Mb2NhbEZyYW1lSG9z
dC5EaWRDaGFuZ2VGcmFtZU93bmVyUHJvcGVydGllcyJ9fSwgeyJlbmQiOiAzMjM0NSwgImJlZ2lu
IjogMzIzMzAsICJlZGdlIjogIiUva3l0aGUvZWRnZS9nZW5lcmF0ZXMiLCAidHlwZSI6ICJhbmNo
b3JfZGVmaW5lcyIsICJ2bmFtZSI6IHsiY29ycHVzIjogImNocm9taXVtLmdvb2dsZXNvdXJjZS5j
b20vY2hyb21pdW0vc3JjIiwgImxhbmd1YWdlIjogIm1vam9tIiwgInNpZ25hdHVyZSI6ICJibGlu
ay5tb2pvbS5Mb2NhbEZyYW1lSG9zdC5EaWRDaGFuZ2VPcGVuZXIifX0sIHsiZW5kIjogMzI1MjAs
ICJiZWdpbiI6IDMyNTAwLCAiZWRnZSI6ICIlL2t5dGhlL2VkZ2UvZ2VuZXJhdGVzIiwgInR5cGUi
OiAiYW5jaG9yX2RlZmluZXMiLCAidm5hbWUiOiB7ImNvcnB1cyI6ICJjaHJvbWl1bS5nb29nbGVz
b3VyY2UuY29tL2Nocm9taXVtL3NyYyIsICJsYW5ndWFnZSI6ICJtb2pvbSIsICJzaWduYXR1cmUi
OiAiYmxpbmsubW9qb20uTG9jYWxGcmFtZUhvc3QuRGlkQ2hhbmdlRnJhbWVQb2xpY3kifX0sIHsi
ZW5kIjogMzI3MzEsICJiZWdpbiI6IDMyNzA2LCAiZWRnZSI6ICIlL2t5dGhlL2VkZ2UvZ2VuZXJh
dGVzIiwgInR5cGUiOiAiYW5jaG9yX2RlZmluZXMiLCAidm5hbWUiOiB7ImNvcnB1cyI6ICJjaHJv
bWl1bS5nb29nbGVzb3VyY2UuY29tL2Nocm9taXVtL3NyYyIsICJsYW5ndWFnZSI6ICJtb2pvbSIs
ICJzaWduYXR1cmUiOiAiYmxpbmsubW9qb20uTG9jYWxGcmFtZUhvc3QuRGlkQ2hhbmdlSWZyYW1l
QXR0cmlidXRlcyJ9fSwgeyJlbmQiOiAzMjk5NiwgImJlZ2luIjogMzI5NjcsICJlZGdlIjogIiUv
a3l0aGUvZWRnZS9nZW5lcmF0ZXMiLCAidHlwZSI6ICJhbmNob3JfZGVmaW5lcyIsICJ2bmFtZSI6
IHsiY29ycHVzIjogImNocm9taXVtLmdvb2dsZXNvdXJjZS5jb20vY2hyb21pdW0vc3JjIiwgImxh
bmd1YWdlIjogIm1vam9tIiwgInNpZ25hdHVyZSI6ICJibGluay5tb2pvbS5Mb2NhbEZyYW1lSG9z
dC5DYXB0dXJlUGFpbnRQcmV2aWV3T2ZTdWJmcmFtZSJ9fSwgeyJlbmQiOiAzMzE2OSwgImJlZ2lu
IjogMzMxNTMsICJlZGdlIjogIiUva3l0aGUvZWRnZS9nZW5lcmF0ZXMiLCAidHlwZSI6ICJhbmNo
b3JfZGVmaW5lcyIsICJ2bmFtZSI6IHsiY29ycHVzIjogImNocm9taXVtLmdvb2dsZXNvdXJjZS5j
b20vY2hyb21pdW0vc3JjIiwgImxhbmd1YWdlIjogIm1vam9tIiwgInNpZ25hdHVyZSI6ICJibGlu
ay5tb2pvbS5Mb2NhbEZyYW1lSG9zdC5TZXRDbG9zZUxpc3RlbmVyIn19LCB7ImVuZCI6IDMzMzI0
LCAiYmVnaW4iOiAzMzMxOCwgImVkZ2UiOiAiJS9reXRoZS9lZGdlL2dlbmVyYXRlcyIsICJ0eXBl
IjogImFuY2hvcl9kZWZpbmVzIiwgInZuYW1lIjogeyJjb3JwdXMiOiAiY2hyb21pdW0uZ29vZ2xl
c291cmNlLmNvbS9jaHJvbWl1bS9zcmMiLCAibGFuZ3VhZ2UiOiAibW9qb20iLCAic2lnbmF0dXJl
IjogImJsaW5rLm1vam9tLkxvY2FsRnJhbWVIb3N0LkRldGFjaCJ9fSwgeyJlbmQiOiAzMzQ0OSwg
ImJlZ2luIjogMzM0MjQsICJlZGdlIjogIiUva3l0aGUvZWRnZS9nZW5lcmF0ZXMiLCAidHlwZSI6
ICJhbmNob3JfZGVmaW5lcyIsICJ2bmFtZSI6IHsiY29ycHVzIjogImNocm9taXVtLmdvb2dsZXNv
dXJjZS5jb20vY2hyb21pdW0vc3JjIiwgImxhbmd1YWdlIjogIm1vam9tIiwgInNpZ25hdHVyZSI6
ICJibGluay5tb2pvbS5Mb2NhbEZyYW1lSG9zdC5HZXRLZWVwQWxpdmVIYW5kbGVGYWN0b3J5In19
LCB7ImVuZCI6IDMzNjIzLCAiYmVnaW4iOiAzMzYwMSwgImVkZ2UiOiAiJS9reXRoZS9lZGdlL2dl
bmVyYXRlcyIsICJ0eXBlIjogImFuY2hvcl9kZWZpbmVzIiwgInZuYW1lIjogeyJjb3JwdXMiOiAi
Y2hyb21pdW0uZ29vZ2xlc291cmNlLmNvbS9jaHJvbWl1bS9zcmMiLCAibGFuZ3VhZ2UiOiAibW9q
b20iLCAic2lnbmF0dXJlIjogImJsaW5rLm1vam9tLkxvY2FsRnJhbWVIb3N0LkRpZEFkZE1lc3Nh
Z2VUb0NvbnNvbGUifX0sIHsiZW5kIjogMzM5MDYsICJiZWdpbiI6IDMzODkwLCAiZWRnZSI6ICIl
L2t5dGhlL2VkZ2UvZ2VuZXJhdGVzIiwgInR5cGUiOiAiYW5jaG9yX2RlZmluZXMiLCAidm5hbWUi
OiB7ImNvcnB1cyI6ICJjaHJvbWl1bS5nb29nbGVzb3VyY2UuY29tL2Nocm9taXVtL3NyYyIsICJs
YW5ndWFnZSI6ICJtb2pvbSIsICJzaWduYXR1cmUiOiAiYmxpbmsubW9qb20uTG9jYWxGcmFtZUhv
c3QuRnJhbWVTaXplQ2hhbmdlZCJ9fSwgeyJlbmQiOiAzNDA2MiwgImJlZ2luIjogMzQwMzMsICJl
ZGdlIjogIiUva3l0aGUvZWRnZS9nZW5lcmF0ZXMiLCAidHlwZSI6ICJhbmNob3JfZGVmaW5lcyIs
ICJ2bmFtZSI6IHsiY29ycHVzIjogImNocm9taXVtLmdvb2dsZXNvdXJjZS5jb20vY2hyb21pdW0v
c3JjIiwgImxhbmd1YWdlIjogIm1vam9tIiwgInNpZ25hdHVyZSI6ICJibGluay5tb2pvbS5Mb2Nh
bEZyYW1lSG9zdC5EaWRVcGRhdGVQcmVmZXJyZWRDb2xvclNjaGVtZSJ9fSwgeyJlbmQiOiAzNDI0
MSwgImJlZ2luIjogMzQyMjIsICJlZGdlIjogIiUva3l0aGUvZWRnZS9nZW5lcmF0ZXMiLCAidHlw
ZSI6ICJhbmNob3JfZGVmaW5lcyIsICJ2bmFtZSI6IHsiY29ycHVzIjogImNocm9taXVtLmdvb2ds
ZXNvdXJjZS5jb20vY2hyb21pdW0vc3JjIiwgImxhbmd1YWdlIjogIm1vam9tIiwgInNpZ25hdHVy
ZSI6ICJibGluay5tb2pvbS5Mb2NhbEZyYW1lSG9zdC5EaWRJbmZlckNvbG9yU2NoZW1lIn19LCB7
ImVuZCI6IDM0NDAyLCAiYmVnaW4iOiAzNDM4NywgImVkZ2UiOiAiJS9reXRoZS9lZGdlL2dlbmVy
YXRlcyIsICJ0eXBlIjogImFuY2hvcl9kZWZpbmVzIiwgInZuYW1lIjogeyJjb3JwdXMiOiAiY2hy
b21pdW0uZ29vZ2xlc291cmNlLmNvbS9jaHJvbWl1bS9zcmMiLCAibGFuZ3VhZ2UiOiAibW9qb20i
LCAic2lnbmF0dXJlIjogImJsaW5rLm1vam9tLkxvY2FsRnJhbWVIb3N0LkRpZENoYW5nZVNyY0Rv
YyJ9fSwgeyJlbmQiOiAzNDYwOCwgImJlZ2luIjogMzQ1ODEsICJlZGdlIjogIiUva3l0aGUvZWRn
ZS9nZW5lcmF0ZXMiLCAidHlwZSI6ICJhbmNob3JfZGVmaW5lcyIsICJ2bmFtZSI6IHsiY29ycHVz
IjogImNocm9taXVtLmdvb2dsZXNvdXJjZS5jb20vY2hyb21pdW0vc3JjIiwgImxhbmd1YWdlIjog
Im1vam9tIiwgInNpZ25hdHVyZSI6ICJibGluay5tb2pvbS5Mb2NhbEZyYW1lSG9zdC5SZWNlaXZl
ZERlbGVnYXRlZENhcGFiaWxpdHkifX0sIHsiZW5kIjogMzQ5MDYsICJiZWdpbiI6IDM0ODk2LCAi
ZWRnZSI6ICIlL2t5dGhlL2VkZ2UvZ2VuZXJhdGVzIiwgInR5cGUiOiAiYW5jaG9yX2RlZmluZXMi
LCAidm5hbWUiOiB7ImNvcnB1cyI6ICJjaHJvbWl1bS5nb29nbGVzb3VyY2UuY29tL2Nocm9taXVt
L3NyYyIsICJsYW5ndWFnZSI6ICJtb2pvbSIsICJzaWduYXR1cmUiOiAiYmxpbmsubW9qb20uTG9j
YWxGcmFtZSJ9fSwgeyJlbmQiOiA0MTI0NywgImJlZ2luIjogNDEyMjAsICJlZGdlIjogIiUva3l0
aGUvZWRnZS9nZW5lcmF0ZXMiLCAidHlwZSI6ICJhbmNob3JfZGVmaW5lcyIsICJ2bmFtZSI6IHsi
Y29ycHVzIjogImNocm9taXVtLmdvb2dsZXNvdXJjZS5jb20vY2hyb21pdW0vc3JjIiwgImxhbmd1
YWdlIjogIm1vam9tIiwgInNpZ25hdHVyZSI6ICJibGluay5tb2pvbS5Mb2NhbEZyYW1lLkdldFRl
eHRTdXJyb3VuZGluZ1NlbGVjdGlvbiJ9fSwgeyJlbmQiOiA0MTQyNywgImJlZ2luIjogNDE0MDUs
ICJlZGdlIjogIiUva3l0aGUvZWRnZS9nZW5lcmF0ZXMiLCAidHlwZSI6ICJhbmNob3JfZGVmaW5l
cyIsICJ2bmFtZSI6IHsiY29ycHVzIjogImNocm9taXVtLmdvb2dsZXNvdXJjZS5jb20vY2hyb21p
dW0vc3JjIiwgImxhbmd1YWdlIjogIm1vam9tIiwgInNpZ25hdHVyZSI6ICJibGluay5tb2pvbS5M
b2NhbEZyYW1lLlNlbmRJbnRlcnZlbnRpb25SZXBvcnQifX0sIHsiZW5kIjogNDE1OTMsICJiZWdp
biI6IDQxNTcwLCAiZWRnZSI6ICIlL2t5dGhlL2VkZ2UvZ2VuZXJhdGVzIiwgInR5cGUiOiAiYW5j
aG9yX2RlZmluZXMiLCAidm5hbWUiOiB7ImNvcnB1cyI6ICJjaHJvbWl1bS5nb29nbGVzb3VyY2Uu
Y29tL2Nocm9taXVtL3NyYyIsICJsYW5ndWFnZSI6ICJtb2pvbSIsICJzaWduYXR1cmUiOiAiYmxp
bmsubW9qb20uTG9jYWxGcmFtZS5TZXRGcmFtZU93bmVyUHJvcGVydGllcyJ9fSwgeyJlbmQiOiA0
MTc2MSwgImJlZ2luIjogNDE3NDEsICJlZGdlIjogIiUva3l0aGUvZWRnZS9nZW5lcmF0ZXMiLCAi
dHlwZSI6ICJhbmNob3JfZGVmaW5lcyIsICJ2bmFtZSI6IHsiY29ycHVzIjogImNocm9taXVtLmdv
b2dsZXNvdXJjZS5jb20vY2hyb21pdW0vc3JjIiwgImxhbmd1YWdlIjogIm1vam9tIiwgInNpZ25h
dHVyZSI6ICJibGluay5tb2pvbS5Mb2NhbEZyYW1lLk5vdGlmeVVzZXJBY3RpdmF0aW9uIn19LCB7
ImVuZCI6IDQxOTY3LCAiYmVnaW4iOiA0MTkzNSwgImVkZ2UiOiAiJS9reXRoZS9lZGdlL2dlbmVy
YXRlcyIsICJ0eXBlIjogImFuY2hvcl9kZWZpbmVzIiwgInZuYW1lIjogeyJjb3JwdXMiOiAiY2hy
b21pdW0uZ29vZ2xlc291cmNlLmNvbS9jaHJvbWl1bS9zcmMiLCAibGFuZ3VhZ2UiOiAibW9qb20i
LCAic2lnbmF0dXJlIjogImJsaW5rLm1vam9tLkxvY2FsRnJhbWUuTm90aWZ5VmlydHVhbEtleWJv
YXJkT3ZlcmxheVJlY3QifX0sIHsiZW5kIjogNDIxMDgsICJiZWdpbiI6IDQyMDg5LCAiZWRnZSI6
ICIlL2t5dGhlL2VkZ2UvZ2VuZXJhdGVzIiwgInR5cGUiOiAiYW5jaG9yX2RlZmluZXMiLCAidm5h
bWUiOiB7ImNvcnB1cyI6ICJjaHJvbWl1bS5nb29nbGVzb3VyY2UuY29tL2Nocm9taXVtL3NyYyIs
ICJsYW5ndWFnZSI6ICJtb2pvbSIsICJzaWduYXR1cmUiOiAiYmxpbmsubW9qb20uTG9jYWxGcmFt
ZS5BZGRNZXNzYWdlVG9Db25zb2xlIn19LCB7ImVuZCI6IDQyMzE0LCAiYmVnaW4iOiA0MjI5Nywg
ImVkZ2UiOiAiJS9reXRoZS9lZGdlL2dlbmVyYXRlcyIsICJ0eXBlIjogImFuY2hvcl9kZWZpbmVz
IiwgInZuYW1lIjogeyJjb3JwdXMiOiAiY2hyb21pdW0uZ29vZ2xlc291cmNlLmNvbS9jaHJvbWl1
bS9zcmMiLCAibGFuZ3VhZ2UiOiAibW9qb20iLCAic2lnbmF0dXJlIjogImJsaW5rLm1vam9tLkxv
Y2FsRnJhbWUuQWRkSW5zcGVjdG9ySXNzdWUifX0sIHsiZW5kIjogNDI0NjgsICJiZWdpbiI6IDQy
NDUxLCAiZWRnZSI6ICIlL2t5dGhlL2VkZ2UvZ2VuZXJhdGVzIiwgInR5cGUiOiAiYW5jaG9yX2Rl
ZmluZXMiLCAidm5hbWUiOiB7ImNvcnB1cyI6ICJjaHJvbWl1bS5nb29nbGVzb3VyY2UuY29tL2No
cm9taXVtL3NyYyIsICJsYW5ndWFnZSI6ICJtb2pvbSIsICJzaWduYXR1cmUiOiAiYmxpbmsubW9q
b20uTG9jYWxGcmFtZS5Td2FwSW5JbW1lZGlhdGVseSJ9fSwgeyJlbmQiOiA0MjU2NywgImJlZ2lu
IjogNDI1NTMsICJlZGdlIjogIiUva3l0aGUvZWRnZS9nZW5lcmF0ZXMiLCAidHlwZSI6ICJhbmNo
b3JfZGVmaW5lcyIsICJ2bmFtZSI6IHsiY29ycHVzIjogImNocm9taXVtLmdvb2dsZXNvdXJjZS5j
b20vY2hyb21pdW0vc3JjIiwgImxhbmd1YWdlIjogIm1vam9tIiwgInNpZ25hdHVyZSI6ICJibGlu
ay5tb2pvbS5Mb2NhbEZyYW1lLkNoZWNrQ29tcGxldGVkIn19LCB7ImVuZCI6IDQyNjYwLCAiYmVn
aW4iOiA0MjY0OSwgImVkZ2UiOiAiJS9reXRoZS9lZGdlL2dlbmVyYXRlcyIsICJ0eXBlIjogImFu
Y2hvcl9kZWZpbmVzIiwgInZuYW1lIjogeyJjb3JwdXMiOiAiY2hyb21pdW0uZ29vZ2xlc291cmNl
LmNvbS9jaHJvbWl1bS9zcmMiLCAibGFuZ3VhZ2UiOiAibW9qb20iLCAic2lnbmF0dXJlIjogImJs
aW5rLm1vam9tLkxvY2FsRnJhbWUuU3RvcExvYWRpbmcifX0sIHsiZW5kIjogNDI3NDcsICJiZWdp
biI6IDQyNzM5LCAiZWRnZSI6ICIlL2t5dGhlL2VkZ2UvZ2VuZXJhdGVzIiwgInR5cGUiOiAiYW5j
aG9yX2RlZmluZXMiLCAidm5hbWUiOiB7ImNvcnB1cyI6ICJjaHJvbWl1bS5nb29nbGVzb3VyY2Uu
Y29tL2Nocm9taXVtL3NyYyIsICJsYW5ndWFnZSI6ICJtb2pvbSIsICJzaWduYXR1cmUiOiAiYmxp
bmsubW9qb20uTG9jYWxGcmFtZS5Db2xsYXBzZSJ9fSwgeyJlbmQiOiA0Mjg3MiwgImJlZ2luIjog
NDI4NTIsICJlZGdlIjogIiUva3l0aGUvZWRnZS9nZW5lcmF0ZXMiLCAidHlwZSI6ICJhbmNob3Jf
ZGVmaW5lcyIsICJ2bmFtZSI6IHsiY29ycHVzIjogImNocm9taXVtLmdvb2dsZXNvdXJjZS5jb20v
Y2hyb21pdW0vc3JjIiwgImxhbmd1YWdlIjogIm1vam9tIiwgInNpZ25hdHVyZSI6ICJibGluay5t
b2pvbS5Mb2NhbEZyYW1lLkVuYWJsZVZpZXdTb3VyY2VNb2RlIn19LCB7ImVuZCI6IDQyOTUzLCAi
YmVnaW4iOiA0Mjk0OCwgImVkZ2UiOiAiJS9reXRoZS9lZGdlL2dlbmVyYXRlcyIsICJ0eXBlIjog
ImFuY2hvcl9kZWZpbmVzIiwgInZuYW1lIjogeyJjb3JwdXMiOiAiY2hyb21pdW0uZ29vZ2xlc291
cmNlLmNvbS9jaHJvbWl1bS9zcmMiLCAibGFuZ3VhZ2UiOiAibW9qb20iLCAic2lnbmF0dXJlIjog
ImJsaW5rLm1vam9tLkxvY2FsRnJhbWUuRm9jdXMifX0sIHsiZW5kIjogNDMwNjIsICJiZWdpbiI6
IDQzMDQzLCAiZWRnZSI6ICIlL2t5dGhlL2VkZ2UvZ2VuZXJhdGVzIiwgInR5cGUiOiAiYW5jaG9y
X2RlZmluZXMiLCAidm5hbWUiOiB7ImNvcnB1cyI6ICJjaHJvbWl1bS5nb29nbGVzb3VyY2UuY29t
L2Nocm9taXVtL3NyYyIsICJsYW5ndWFnZSI6ICJtb2pvbSIsICJzaWduYXR1cmUiOiAiYmxpbmsu
bW9qb20uTG9jYWxGcmFtZS5DbGVhckZvY3VzZWRFbGVtZW50In19LCB7ImVuZCI6IDQzMTk1LCAi
YmVnaW4iOiA0MzE2NCwgImVkZ2UiOiAiJS9reXRoZS9lZGdlL2dlbmVyYXRlcyIsICJ0eXBlIjog
ImFuY2hvcl9kZWZpbmVzIiwgInZuYW1lIjogeyJjb3JwdXMiOiAiY2hyb21pdW0uZ29vZ2xlc291
cmNlLmNvbS9jaHJvbWl1bS9zcmMiLCAibGFuZ3VhZ2UiOiAibW9qb20iLCAic2lnbmF0dXJlIjog
ImJsaW5rLm1vam9tLkxvY2FsRnJhbWUuR2V0UmVzb3VyY2VTbmFwc2hvdEZvcldlYkJ1bmRsZSJ9
fSwgeyJlbmQiOiA0MzM4MCwgImJlZ2luIjogNDMzNjksICJlZGdlIjogIiUva3l0aGUvZWRnZS9n
ZW5lcmF0ZXMiLCAidHlwZSI6ICJhbmNob3JfZGVmaW5lcyIsICJ2bmFtZSI6IHsiY29ycHVzIjog
ImNocm9taXVtLmdvb2dsZXNvdXJjZS5jb20vY2hyb21pdW0vc3JjIiwgImxhbmd1YWdlIjogIm1v
am9tIiwgInNpZ25hdHVyZSI6ICJibGluay5tb2pvbS5Mb2NhbEZyYW1lLkNvcHlJbWFnZUF0In19
LCB7ImVuZCI6IDQzNTA1LCAiYmVnaW4iOiA0MzQ5NCwgImVkZ2UiOiAiJS9reXRoZS9lZGdlL2dl
bmVyYXRlcyIsICJ0eXBlIjogImFuY2hvcl9kZWZpbmVzIiwgInZuYW1lIjogeyJjb3JwdXMiOiAi
Y2hyb21pdW0uZ29vZ2xlc291cmNlLmNvbS9jaHJvbWl1bS9zcmMiLCAibGFuZ3VhZ2UiOiAibW9q
b20iLCAic2lnbmF0dXJlIjogImJsaW5rLm1vam9tLkxvY2FsRnJhbWUuU2F2ZUltYWdlQXQifX0s
IHsiZW5kIjogNDM2NTQsICJiZWdpbiI6IDQzNjMxLCAiZWRnZSI6ICIlL2t5dGhlL2VkZ2UvZ2Vu
ZXJhdGVzIiwgInR5cGUiOiAiYW5jaG9yX2RlZmluZXMiLCAidm5hbWUiOiB7ImNvcnB1cyI6ICJj
aHJvbWl1bS5nb29nbGVzb3VyY2UuY29tL2Nocm9taXVtL3NyYyIsICJsYW5ndWFnZSI6ICJtb2pv
bSIsICJzaWduYXR1cmUiOiAiYmxpbmsubW9qb20uTG9jYWxGcmFtZS5SZXBvcnRCbGlua0ZlYXR1
cmVVc2FnZSJ9fSwgeyJlbmQiOiA0MzgyOSwgImJlZ2luIjogNDM4MDgsICJlZGdlIjogIiUva3l0
aGUvZWRnZS9nZW5lcmF0ZXMiLCAidHlwZSI6ICJhbmNob3JfZGVmaW5lcyIsICJ2bmFtZSI6IHsi
Y29ycHVzIjogImNocm9taXVtLmdvb2dsZXNvdXJjZS5jb20vY2hyb21pdW0vc3JjIiwgImxhbmd1
YWdlIjogIm1vam9tIiwgInNpZ25hdHVyZSI6ICJibGluay5tb2pvbS5Mb2NhbEZyYW1lLlJlbmRl
ckZhbGxiYWNrQ29udGVudCJ9fSwgeyJlbmQiOiA0Mzk3OCwgImJlZ2luIjogNDM5MzksICJlZGdl
IjogIiUva3l0aGUvZWRnZS9nZW5lcmF0ZXMiLCAidHlwZSI6ICJhbmNob3JfZGVmaW5lcyIsICJ2
bmFtZSI6IHsiY29ycHVzIjogImNocm9taXVtLmdvb2dsZXNvdXJjZS5jb20vY2hyb21pdW0vc3Jj
IiwgImxhbmd1YWdlIjogIm1vam9tIiwgInNpZ25hdHVyZSI6ICJibGluay5tb2pvbS5Mb2NhbEZy
YW1lLlJlbmRlckZhbGxiYWNrQ29udGVudFdpdGhSZXNvdXJjZVRpbWluZyJ9fSwgeyJlbmQiOiA0
NDI2NiwgImJlZ2luIjogNDQyNTQsICJlZGdlIjogIiUva3l0aGUvZWRnZS9nZW5lcmF0ZXMiLCAi
dHlwZSI6ICJhbmNob3JfZGVmaW5lcyIsICJ2bmFtZSI6IHsiY29ycHVzIjogImNocm9taXVtLmdv
b2dsZXNvdXJjZS5jb20vY2hyb21pdW0vc3JjIiwgImxhbmd1YWdlIjogIm1vam9tIiwgInNpZ25h
dHVyZSI6ICJibGluay5tb2pvbS5Mb2NhbEZyYW1lLkJlZm9yZVVubG9hZCJ9fSwgeyJlbmQiOiA0
NDQyMCwgImJlZ2luIjogNDQ0MDEsICJlZGdlIjogIiUva3l0aGUvZWRnZS9nZW5lcmF0ZXMiLCAi
dHlwZSI6ICJhbmNob3JfZGVmaW5lcyIsICJ2bmFtZSI6IHsiY29ycHVzIjogImNocm9taXVtLmdv
b2dsZXNvdXJjZS5jb20vY2hyb21pdW0vc3JjIiwgImxhbmd1YWdlIjogIm1vam9tIiwgInNpZ25h
dHVyZSI6ICJibGluay5tb2pvbS5Mb2NhbEZyYW1lLk1lZGlhUGxheWVyQWN0aW9uQXQifX0sIHsi
ZW5kIjogNDQ1OTksICJiZWdpbiI6IDQ0NTg1LCAiZWRnZSI6ICIlL2t5dGhlL2VkZ2UvZ2VuZXJh
dGVzIiwgInR5cGUiOiAiYW5jaG9yX2RlZmluZXMiLCAidm5hbWUiOiB7ImNvcnB1cyI6ICJjaHJv
bWl1bS5nb29nbGVzb3VyY2UuY29tL2Nocm9taXVtL3NyYyIsICJsYW5ndWFnZSI6ICJtb2pvbSIs
ICJzaWduYXR1cmUiOiAiYmxpbmsubW9qb20uTG9jYWxGcmFtZS5QbHVnaW5BY3Rpb25BdCJ9fSwg
eyJlbmQiOiA0NDc2MSwgImJlZ2luIjogNDQ3NDIsICJlZGdlIjogIiUva3l0aGUvZWRnZS9nZW5l
cmF0ZXMiLCAidHlwZSI6ICJhbmNob3JfZGVmaW5lcyIsICJ2bmFtZSI6IHsiY29ycHVzIjogImNo
cm9taXVtLmdvb2dsZXNvdXJjZS5jb20vY2hyb21pdW0vc3JjIiwgImxhbmd1YWdlIjogIm1vam9t
IiwgInNpZ25hdHVyZSI6ICJibGluay5tb2pvbS5Mb2NhbEZyYW1lLkFkdmFuY2VGb2N1c0luRnJh
bWUifX0sIHsiZW5kIjogNDQ5ODAsICJiZWdpbiI6IDQ0OTYyLCAiZWRnZSI6ICIlL2t5dGhlL2Vk
Z2UvZ2VuZXJhdGVzIiwgInR5cGUiOiAiYW5jaG9yX2RlZmluZXMiLCAidm5hbWUiOiB7ImNvcnB1
cyI6ICJjaHJvbWl1bS5nb29nbGVzb3VyY2UuY29tL2Nocm9taXVtL3NyYyIsICJsYW5ndWFnZSI6
ICJtb2pvbSIsICJzaWduYXR1cmUiOiAiYmxpbmsubW9qb20uTG9jYWxGcmFtZS5BZHZhbmNlRm9j
dXNGb3JJTUUifX0sIHsiZW5kIjogNDUxNjYsICJiZWdpbiI6IDQ1MTMwLCAiZWRnZSI6ICIlL2t5
dGhlL2VkZ2UvZ2VuZXJhdGVzIiwgInR5cGUiOiAiYW5jaG9yX2RlZmluZXMiLCAidm5hbWUiOiB7
ImNvcnB1cyI6ICJjaHJvbWl1bS5nb29nbGVzb3VyY2UuY29tL2Nocm9taXVtL3NyYyIsICJsYW5n
dWFnZSI6ICJtb2pvbSIsICJzaWduYXR1cmUiOiAiYmxpbmsubW9qb20uTG9jYWxGcmFtZS5SZXBv
cnRDb250ZW50U2VjdXJpdHlQb2xpY3lWaW9sYXRpb24ifX0sIHsiZW5kIjogNDUzMjcsICJiZWdp
biI6IDQ1MzA3LCAiZWRnZSI6ICIlL2t5dGhlL2VkZ2UvZ2VuZXJhdGVzIiwgInR5cGUiOiAiYW5j
aG9yX2RlZmluZXMiLCAidm5hbWUiOiB7ImNvcnB1cyI6ICJjaHJvbWl1bS5nb29nbGVzb3VyY2Uu
Y29tL2Nocm9taXVtL3NyYyIsICJsYW5ndWFnZSI6ICJtb2pvbSIsICJzaWduYXR1cmUiOiAiYmxp
bmsubW9qb20uTG9jYWxGcmFtZS5EaWRVcGRhdGVGcmFtZVBvbGljeSJ9fSwgeyJlbmQiOiA0NTQ3
MCwgImJlZ2luIjogNDU0NTQsICJlZGdlIjogIiUva3l0aGUvZWRnZS9nZW5lcmF0ZXMiLCAidHlw
ZSI6ICJhbmNob3JfZGVmaW5lcyIsICJ2bmFtZSI6IHsiY29ycHVzIjogImNocm9taXVtLmdvb2ds
ZXNvdXJjZS5jb20vY2hyb21pdW0vc3JjIiwgImxhbmd1YWdlIjogIm1vam9tIiwgInNpZ25hdHVy
ZSI6ICJibGluay5tb2pvbS5Mb2NhbEZyYW1lLlBvc3RNZXNzYWdlRXZlbnQifX0sIHsiZW5kIjog
NDU4NzQsICJiZWdpbiI6IDQ1ODQ0LCAiZWRnZSI6ICIlL2t5dGhlL2VkZ2UvZ2VuZXJhdGVzIiwg
InR5cGUiOiAiYW5jaG9yX2RlZmluZXMiLCAidm5hbWUiOiB7ImNvcnB1cyI6ICJjaHJvbWl1bS5n
b29nbGVzb3VyY2UuY29tL2Nocm9taXVtL3NyYyIsICJsYW5ndWFnZSI6ICJtb2pvbSIsICJzaWdu
YXR1cmUiOiAiYmxpbmsubW9qb20uTG9jYWxGcmFtZS5KYXZhU2NyaXB0TWV0aG9kRXhlY3V0ZVJl
cXVlc3QifX0sIHsiZW5kIjogNDYyNDMsICJiZWdpbiI6IDQ2MjE5LCAiZWRnZSI6ICIlL2t5dGhl
L2VkZ2UvZ2VuZXJhdGVzIiwgInR5cGUiOiAiYW5jaG9yX2RlZmluZXMiLCAidm5hbWUiOiB7ImNv
cnB1cyI6ICJjaHJvbWl1bS5nb29nbGVzb3VyY2UuY29tL2Nocm9taXVtL3NyYyIsICJsYW5ndWFn
ZSI6ICJtb2pvbSIsICJzaWduYXR1cmUiOiAiYmxpbmsubW9qb20uTG9jYWxGcmFtZS5KYXZhU2Ny
aXB0RXhlY3V0ZVJlcXVlc3QifX0sIHsiZW5kIjogNDY1OTUsICJiZWdpbiI6IDQ2NTYzLCAiZWRn
ZSI6ICIlL2t5dGhlL2VkZ2UvZ2VuZXJhdGVzIiwgInR5cGUiOiAiYW5jaG9yX2RlZmluZXMiLCAi
dm5hbWUiOiB7ImNvcnB1cyI6ICJjaHJvbWl1bS5nb29nbGVzb3VyY2UuY29tL2Nocm9taXVtL3Ny
YyIsICJsYW5ndWFnZSI6ICJtb2pvbSIsICJzaWduYXR1cmUiOiAiYmxpbmsubW9qb20uTG9jYWxG
cmFtZS5KYXZhU2NyaXB0RXhlY3V0ZVJlcXVlc3RGb3JUZXN0cyJ9fSwgeyJlbmQiOiA0Njk5MCwg
ImJlZ2luIjogNDY5NTEsICJlZGdlIjogIiUva3l0aGUvZWRnZS9nZW5lcmF0ZXMiLCAidHlwZSI6
ICJhbmNob3JfZGVmaW5lcyIsICJ2bmFtZSI6IHsiY29ycHVzIjogImNocm9taXVtLmdvb2dsZXNv
dXJjZS5jb20vY2hyb21pdW0vc3JjIiwgImxhbmd1YWdlIjogIm1vam9tIiwgInNpZ25hdHVyZSI6
ICJibGluay5tb2pvbS5Mb2NhbEZyYW1lLkphdmFTY3JpcHRFeGVjdXRlUmVxdWVzdEluSXNvbGF0
ZWRXb3JsZCJ9fSwgeyJlbmQiOiA0NzIyOSwgImJlZ2luIjogNDcyMDgsICJlZGdlIjogIiUva3l0
aGUvZWRnZS9nZW5lcmF0ZXMiLCAidHlwZSI6ICJhbmNob3JfZGVmaW5lcyIsICJ2bmFtZSI6IHsi
Y29ycHVzIjogImNocm9taXVtLmdvb2dsZXNvdXJjZS5jb20vY2hyb21pdW0vc3JjIiwgImxhbmd1
YWdlIjogIm1vam9tIiwgInNpZ25hdHVyZSI6ICJibGluay5tb2pvbS5Mb2NhbEZyYW1lLkJpbmRS
ZXBvcnRpbmdPYnNlcnZlciJ9fSwgeyJlbmQiOiA0NzM5OCwgImJlZ2luIjogNDczODYsICJlZGdl
IjogIiUva3l0aGUvZWRnZS9nZW5lcmF0ZXMiLCAidHlwZSI6ICJhbmNob3JfZGVmaW5lcyIsICJ2
bmFtZSI6IHsiY29ycHVzIjogImNocm9taXVtLmdvb2dsZXNvdXJjZS5jb20vY2hyb21pdW0vc3Jj
IiwgImxhbmd1YWdlIjogIm1vam9tIiwgInNpZ25hdHVyZSI6ICJibGluay5tb2pvbS5Mb2NhbEZy
YW1lLlVwZGF0ZU9wZW5lciJ9fSwgeyJlbmQiOiA0NzY3OCwgImJlZ2luIjogNDc2NTUsICJlZGdl
IjogIiUva3l0aGUvZWRnZS9nZW5lcmF0ZXMiLCAidHlwZSI6ICJhbmNob3JfZGVmaW5lcyIsICJ2
bmFtZSI6IHsiY29ycHVzIjogImNocm9taXVtLmdvb2dsZXNvdXJjZS5jb20vY2hyb21pdW0vc3Jj
IiwgImxhbmd1YWdlIjogIm1vam9tIiwgInNpZ25hdHVyZSI6ICJibGluay5tb2pvbS5Mb2NhbEZy
YW1lLkdldFNhdmFibGVSZXNvdXJjZUxpbmtzIn19LCB7ImVuZCI6IDQ3ODIzLCAiYmVnaW4iOiA0
NzgwNiwgImVkZ2UiOiAiJS9reXRoZS9lZGdlL2dlbmVyYXRlcyIsICJ0eXBlIjogImFuY2hvcl9k
ZWZpbmVzIiwgInZuYW1lIjogeyJjb3JwdXMiOiAiY2hyb21pdW0uZ29vZ2xlc291cmNlLmNvbS9j
aHJvbWl1bS9zcmMiLCAibGFuZ3VhZ2UiOiAibW9qb20iLCAic2lnbmF0dXJlIjogImJsaW5rLm1v
am9tLkxvY2FsRnJhbWUuTWl4ZWRDb250ZW50Rm91bmQifX0sIHsiZW5kIjogNDgyMDUsICJiZWdp
biI6IDQ4MTg4LCAiZWRnZSI6ICIlL2t5dGhlL2VkZ2UvZ2VuZXJhdGVzIiwgInR5cGUiOiAiYW5j
aG9yX2RlZmluZXMiLCAidm5hbWUiOiB7ImNvcnB1cyI6ICJjaHJvbWl1bS5nb29nbGVzb3VyY2Uu
Y29tL2Nocm9taXVtL3NyYyIsICJsYW5ndWFnZSI6ICJtb2pvbSIsICJzaWduYXR1cmUiOiAiYmxp
bmsubW9qb20uTG9jYWxGcmFtZS5CaW5kRGV2VG9vbHNBZ2VudCJ9fSwgeyJlbmQiOiA0ODYwOSwg
ImJlZ2luIjogNDg1ODksICJlZGdlIjogIiUva3l0aGUvZWRnZS9nZW5lcmF0ZXMiLCAidHlwZSI6
ICJhbmNob3JfZGVmaW5lcyIsICJ2bmFtZSI6IHsiY29ycHVzIjogImNocm9taXVtLmdvb2dsZXNv
dXJjZS5jb20vY2hyb21pdW0vc3JjIiwgImxhbmd1YWdlIjogIm1vam9tIiwgInNpZ25hdHVyZSI6
ICJibGluay5tb2pvbS5Mb2NhbEZyYW1lLkV4dHJhY3RTbWFydENsaXBEYXRhIn19LCB7ImVuZCI6
IDQ4Nzg2LCAiYmVnaW4iOiA0ODc2NCwgImVkZ2UiOiAiJS9reXRoZS9lZGdlL2dlbmVyYXRlcyIs
ICJ0eXBlIjogImFuY2hvcl9kZWZpbmVzIiwgInZuYW1lIjogeyJjb3JwdXMiOiAiY2hyb21pdW0u
Z29vZ2xlc291cmNlLmNvbS9jaHJvbWl1bS9zcmMiLCAibGFuZ3VhZ2UiOiAibW9qb20iLCAic2ln
bmF0dXJlIjogImJsaW5rLm1vam9tLkxvY2FsRnJhbWUuSGFuZGxlUmVuZGVyZXJEZWJ1Z1VSTCJ9
fSwgeyJlbmQiOiA0OTA0MCwgImJlZ2luIjogNDkwMTUsICJlZGdlIjogIiUva3l0aGUvZWRnZS9n
ZW5lcmF0ZXMiLCAidHlwZSI6ICJhbmNob3JfZGVmaW5lcyIsICJ2bmFtZSI6IHsiY29ycHVzIjog
ImNocm9taXVtLmdvb2dsZXNvdXJjZS5jb20vY2hyb21pdW0vc3JjIiwgImxhbmd1YWdlIjogIm1v
am9tIiwgInNpZ25hdHVyZSI6ICJibGluay5tb2pvbS5Mb2NhbEZyYW1lLkdldENhbm9uaWNhbFVy
bEZvclNoYXJpbmcifX0sIHsiZW5kIjogNDkzMDQsICJiZWdpbiI6IDQ5Mjg0LCAiZWRnZSI6ICIl
L2t5dGhlL2VkZ2UvZ2VuZXJhdGVzIiwgInR5cGUiOiAiYW5jaG9yX2RlZmluZXMiLCAidm5hbWUi
OiB7ImNvcnB1cyI6ICJjaHJvbWl1bS5nb29nbGVzb3VyY2UuY29tL2Nocm9taXVtL3NyYyIsICJs
YW5ndWFnZSI6ICJtb2pvbSIsICJzaWduYXR1cmUiOiAiYmxpbmsubW9qb20uTG9jYWxGcmFtZS5H
ZXRPcGVuR3JhcGhNZXRhZGF0YSJ9fSwgeyJlbmQiOiA0OTQ5MiwgImJlZ2luIjogNDk0NTIsICJl
ZGdlIjogIiUva3l0aGUvZWRnZS9nZW5lcmF0ZXMiLCAidHlwZSI6ICJhbmNob3JfZGVmaW5lcyIs
ICJ2bmFtZSI6IHsiY29ycHVzIjogImNocm9taXVtLmdvb2dsZXNvdXJjZS5jb20vY2hyb21pdW0v
c3JjIiwgImxhbmd1YWdlIjogIm1vam9tIiwgInNpZ25hdHVyZSI6ICJibGluay5tb2pvbS5Mb2Nh
bEZyYW1lLlNldE5hdmlnYXRpb25BcGlIaXN0b3J5RW50cmllc0ZvclJlc3RvcmUifX0sIHsiZW5k
IjogNDk4NjksICJiZWdpbiI6IDQ5ODQ3LCAiZWRnZSI6ICIlL2t5dGhlL2VkZ2UvZ2VuZXJhdGVz
IiwgInR5cGUiOiAiYW5jaG9yX2RlZmluZXMiLCAidm5hbWUiOiB7ImNvcnB1cyI6ICJjaHJvbWl1
bS5nb29nbGVzb3VyY2UuY29tL2Nocm9taXVtL3NyYyIsICJsYW5ndWFnZSI6ICJtb2pvbSIsICJz
aWduYXR1cmUiOiAiYmxpbmsubW9qb20uSGlnaFByaW9yaXR5TG9jYWxGcmFtZSJ9fSwgeyJlbmQi
OiA1MTI3NiwgImJlZ2luIjogNTEyNTYsICJlZGdlIjogIiUva3l0aGUvZWRnZS9nZW5lcmF0ZXMi
LCAidHlwZSI6ICJhbmNob3JfZGVmaW5lcyIsICJ2bmFtZSI6IHsiY29ycHVzIjogImNocm9taXVt
Lmdvb2dsZXNvdXJjZS5jb20vY2hyb21pdW0vc3JjIiwgImxhbmd1YWdlIjogIm1vam9tIiwgInNp
Z25hdHVyZSI6ICJibGluay5tb2pvbS5IaWdoUHJpb3JpdHlMb2NhbEZyYW1lLkRpc3BhdGNoQmVm
b3JlVW5sb2FkIn19LCB7ImVuZCI6IDUxNTU0LCAiYmVnaW4iOiA1MTUzOSwgImVkZ2UiOiAiJS9r
eXRoZS9lZGdlL2dlbmVyYXRlcyIsICJ0eXBlIjogImFuY2hvcl9kZWZpbmVzIiwgInZuYW1lIjog
eyJjb3JwdXMiOiAiY2hyb21pdW0uZ29vZ2xlc291cmNlLmNvbS9jaHJvbWl1bS9zcmMiLCAibGFu
Z3VhZ2UiOiAibW9qb20iLCAic2lnbmF0dXJlIjogImJsaW5rLm1vam9tLlJlbW90ZUZyYW1lSG9z
dCJ9fSwgeyJlbmQiOiA1NDQ3MCwgImJlZ2luIjogNTQ0MzgsICJlZGdlIjogIiUva3l0aGUvZWRn
ZS9nZW5lcmF0ZXMiLCAidHlwZSI6ICJhbmNob3JfZGVmaW5lcyIsICJ2bmFtZSI6IHsiY29ycHVz
IjogImNocm9taXVtLmdvb2dsZXNvdXJjZS5jb20vY2hyb21pdW0vc3JjIiwgImxhbmd1YWdlIjog
Im1vam9tIiwgInNpZ25hdHVyZSI6ICJibGluay5tb2pvbS5SZW1vdGVGcmFtZUhvc3QuU2V0SW5o
ZXJpdGVkRWZmZWN0aXZlVG91Y2hBY3Rpb24ifX0sIHsiZW5kIjogNTQ2MzIsICJiZWdpbiI6IDU0
NjA0LCAiZWRnZSI6ICIlL2t5dGhlL2VkZ2UvZ2VuZXJhdGVzIiwgInR5cGUiOiAiYW5jaG9yX2Rl
ZmluZXMiLCAidm5hbWUiOiB7ImNvcnB1cyI6ICJjaHJvbWl1bS5nb29nbGVzb3VyY2UuY29tL2No
cm9taXVtL3NyYyIsICJsYW5ndWFnZSI6ICJtb2pvbSIsICJzaWduYXR1cmUiOiAiYmxpbmsubW9q
b20uUmVtb3RlRnJhbWVIb3N0LlVwZGF0ZVJlbmRlclRocm90dGxpbmdTdGF0dXMifX0sIHsiZW5k
IjogNTQ4MDQsICJiZWdpbiI6IDU0Nzg3LCAiZWRnZSI6ICIlL2t5dGhlL2VkZ2UvZ2VuZXJhdGVz
IiwgInR5cGUiOiAiYW5jaG9yX2RlZmluZXMiLCAidm5hbWUiOiB7ImNvcnB1cyI6ICJjaHJvbWl1
bS5nb29nbGVzb3VyY2UuY29tL2Nocm9taXVtL3NyYyIsICJsYW5ndWFnZSI6ICJtb2pvbSIsICJz
aWduYXR1cmUiOiAiYmxpbmsubW9qb20uUmVtb3RlRnJhbWVIb3N0LlZpc2liaWxpdHlDaGFuZ2Vk
In19LCB7ImVuZCI6IDU0OTU1LCAiYmVnaW4iOiA1NDk0MiwgImVkZ2UiOiAiJS9reXRoZS9lZGdl
L2dlbmVyYXRlcyIsICJ0eXBlIjogImFuY2hvcl9kZWZpbmVzIiwgInZuYW1lIjogeyJjb3JwdXMi
OiAiY2hyb21pdW0uZ29vZ2xlc291cmNlLmNvbS9jaHJvbWl1bS9zcmMiLCAibGFuZ3VhZ2UiOiAi
bW9qb20iLCAic2lnbmF0dXJlIjogImJsaW5rLm1vam9tLlJlbW90ZUZyYW1lSG9zdC5EaWRGb2N1
c0ZyYW1lIn19LCB7ImVuZCI6IDU1MDU5LCAiYmVnaW4iOiA1NTA0NSwgImVkZ2UiOiAiJS9reXRo
ZS9lZGdlL2dlbmVyYXRlcyIsICJ0eXBlIjogImFuY2hvcl9kZWZpbmVzIiwgInZuYW1lIjogeyJj
b3JwdXMiOiAiY2hyb21pdW0uZ29vZ2xlc291cmNlLmNvbS9jaHJvbWl1bS9zcmMiLCAibGFuZ3Vh
Z2UiOiAibW9qb20iLCAic2lnbmF0dXJlIjogImJsaW5rLm1vam9tLlJlbW90ZUZyYW1lSG9zdC5D
aGVja0NvbXBsZXRlZCJ9fSwgeyJlbmQiOiA1NTIxNywgImJlZ2luIjogNTUxNzYsICJlZGdlIjog
IiUva3l0aGUvZWRnZS9nZW5lcmF0ZXMiLCAidHlwZSI6ICJhbmNob3JfZGVmaW5lcyIsICJ2bmFt
ZSI6IHsiY29ycHVzIjogImNocm9taXVtLmdvb2dsZXNvdXJjZS5jb20vY2hyb21pdW0vc3JjIiwg
Imxhbmd1YWdlIjogIm1vam9tIiwgInNpZ25hdHVyZSI6ICJibGluay5tb2pvbS5SZW1vdGVGcmFt
ZUhvc3QuQ2FwdHVyZVBhaW50UHJldmlld09mQ3Jvc3NQcm9jZXNzU3ViZnJhbWUifX0sIHsiZW5k
IjogNTUzNzksICJiZWdpbiI6IDU1MzY5LCAiZWRnZSI6ICIlL2t5dGhlL2VkZ2UvZ2VuZXJhdGVz
IiwgInR5cGUiOiAiYW5jaG9yX2RlZmluZXMiLCAidm5hbWUiOiB7ImNvcnB1cyI6ICJjaHJvbWl1
bS5nb29nbGVzb3VyY2UuY29tL2Nocm9taXVtL3NyYyIsICJsYW5ndWFnZSI6ICJtb2pvbSIsICJz
aWduYXR1cmUiOiAiYmxpbmsubW9qb20uUmVtb3RlRnJhbWVIb3N0LlNldElzSW5lcnQifX0sIHsi
ZW5kIjogNTU0OTUsICJiZWdpbiI6IDU1NDgwLCAiZWRnZSI6ICIlL2t5dGhlL2VkZ2UvZ2VuZXJh
dGVzIiwgInR5cGUiOiAiYW5jaG9yX2RlZmluZXMiLCAidm5hbWUiOiB7ImNvcnB1cyI6ICJjaHJv
bWl1bS5nb29nbGVzb3VyY2UuY29tL2Nocm9taXVtL3NyYyIsICJsYW5ndWFnZSI6ICJtb2pvbSIs
ICJzaWduYXR1cmUiOiAiYmxpbmsubW9qb20uUmVtb3RlRnJhbWVIb3N0LkRpZENoYW5nZU9wZW5l
ciJ9fSwgeyJlbmQiOiA1NTY1NSwgImJlZ2luIjogNTU2NDMsICJlZGdlIjogIiUva3l0aGUvZWRn
ZS9nZW5lcmF0ZXMiLCAidHlwZSI6ICJhbmNob3JfZGVmaW5lcyIsICJ2bmFtZSI6IHsiY29ycHVz
IjogImNocm9taXVtLmdvb2dsZXNvdXJjZS5jb20vY2hyb21pdW0vc3JjIiwgImxhbmd1YWdlIjog
Im1vam9tIiwgInNpZ25hdHVyZSI6ICJibGluay5tb2pvbS5SZW1vdGVGcmFtZUhvc3QuQWR2YW5j
ZUZvY3VzIn19LCB7ImVuZCI6IDU1ODYwLCAiYmVnaW4iOiA1NTg0MywgImVkZ2UiOiAiJS9reXRo
ZS9lZGdlL2dlbmVyYXRlcyIsICJ0eXBlIjogImFuY2hvcl9kZWZpbmVzIiwgInZuYW1lIjogeyJj
b3JwdXMiOiAiY2hyb21pdW0uZ29vZ2xlc291cmNlLmNvbS9jaHJvbWl1bS9zcmMiLCAibGFuZ3Vh
Z2UiOiAibW9qb20iLCAic2lnbmF0dXJlIjogImJsaW5rLm1vam9tLlJlbW90ZUZyYW1lSG9zdC5S
b3V0ZU1lc3NhZ2VFdmVudCJ9fSwgeyJlbmQiOiA1NjE2NywgImJlZ2luIjogNTYxNDIsICJlZGdl
IjogIiUva3l0aGUvZWRnZS9nZW5lcmF0ZXMiLCAidHlwZSI6ICJhbmNob3JfZGVmaW5lcyIsICJ2
bmFtZSI6IHsiY29ycHVzIjogImNocm9taXVtLmdvb2dsZXNvdXJjZS5jb20vY2hyb21pdW0vc3Jj
IiwgImxhbmd1YWdlIjogIm1vam9tIiwgInNpZ25hdHVyZSI6ICJibGluay5tb2pvbS5SZW1vdGVG
cmFtZUhvc3QuUHJpbnRDcm9zc1Byb2Nlc3NTdWJmcmFtZSJ9fSwgeyJlbmQiOiA1NjMxNywgImJl
Z2luIjogNTYzMTEsICJlZGdlIjogIiUva3l0aGUvZWRnZS9nZW5lcmF0ZXMiLCAidHlwZSI6ICJh
bmNob3JfZGVmaW5lcyIsICJ2bmFtZSI6IHsiY29ycHVzIjogImNocm9taXVtLmdvb2dsZXNvdXJj
ZS5jb20vY2hyb21pdW0vc3JjIiwgImxhbmd1YWdlIjogIm1vam9tIiwgInNpZ25hdHVyZSI6ICJi
bGluay5tb2pvbS5SZW1vdGVGcmFtZUhvc3QuRGV0YWNoIn19LCB7ImVuZCI6IDU2NDQ1LCAiYmVn
aW4iOiA1NjQxOSwgImVkZ2UiOiAiJS9reXRoZS9lZGdlL2dlbmVyYXRlcyIsICJ0eXBlIjogImFu
Y2hvcl9kZWZpbmVzIiwgInZuYW1lIjogeyJjb3JwdXMiOiAiY2hyb21pdW0uZ29vZ2xlc291cmNl
LmNvbS9jaHJvbWl1bS9zcmMiLCAibGFuZ3VhZ2UiOiAibW9qb20iLCAic2lnbmF0dXJlIjogImJs
aW5rLm1vam9tLlJlbW90ZUZyYW1lSG9zdC5VcGRhdGVWaWV3cG9ydEludGVyc2VjdGlvbiJ9fSwg
eyJlbmQiOiA1NjcxOCwgImJlZ2luIjogNTY2OTEsICJlZGdlIjogIiUva3l0aGUvZWRnZS9nZW5l
cmF0ZXMiLCAidHlwZSI6ICJhbmNob3JfZGVmaW5lcyIsICJ2bmFtZSI6IHsiY29ycHVzIjogImNo
cm9taXVtLmdvb2dsZXNvdXJjZS5jb20vY2hyb21pdW0vc3JjIiwgImxhbmd1YWdlIjogIm1vam9t
IiwgInNpZ25hdHVyZSI6ICJibGluay5tb2pvbS5SZW1vdGVGcmFtZUhvc3QuU3luY2hyb25pemVW
aXN1YWxQcm9wZXJ0aWVzIn19LCB7ImVuZCI6IDU2ODU2LCAiYmVnaW4iOiA1Njg0OSwgImVkZ2Ui
OiAiJS9reXRoZS9lZGdlL2dlbmVyYXRlcyIsICJ0eXBlIjogImFuY2hvcl9kZWZpbmVzIiwgInZu
YW1lIjogeyJjb3JwdXMiOiAiY2hyb21pdW0uZ29vZ2xlc291cmNlLmNvbS9jaHJvbWl1bS9zcmMi
LCAibGFuZ3VhZ2UiOiAibW9qb20iLCAic2lnbmF0dXJlIjogImJsaW5rLm1vam9tLlJlbW90ZUZy
YW1lSG9zdC5PcGVuVVJMIn19LCB7ImVuZCI6IDU3MDg0LCAiYmVnaW4iOiA1NzA3MywgImVkZ2Ui
OiAiJS9reXRoZS9lZGdlL2dlbmVyYXRlcyIsICJ0eXBlIjogImFuY2hvcl9kZWZpbmVzIiwgInZu
YW1lIjogeyJjb3JwdXMiOiAiY2hyb21pdW0uZ29vZ2xlc291cmNlLmNvbS9jaHJvbWl1bS9zcmMi
LCAibGFuZ3VhZ2UiOiAibW9qb20iLCAic2lnbmF0dXJlIjogImJsaW5rLm1vam9tLlJlbW90ZUZy
YW1lIn19LCB7ImVuZCI6IDYyMDY2LCAiYmVnaW4iOiA2MjA0NywgImVkZ2UiOiAiJS9reXRoZS9l
ZGdlL2dlbmVyYXRlcyIsICJ0eXBlIjogImFuY2hvcl9kZWZpbmVzIiwgInZuYW1lIjogeyJjb3Jw
dXMiOiAiY2hyb21pdW0uZ29vZ2xlc291cmNlLmNvbS9jaHJvbWl1bS9zcmMiLCAibGFuZ3VhZ2Ui
OiAibW9qb20iLCAic2lnbmF0dXJlIjogImJsaW5rLm1vam9tLlJlbW90ZUZyYW1lLldpbGxFbnRl
ckZ1bGxzY3JlZW4ifX0sIHsiZW5kIjogNjIyNDcsICJiZWdpbiI6IDYyMjE4LCAiZWRnZSI6ICIl
L2t5dGhlL2VkZ2UvZ2VuZXJhdGVzIiwgInR5cGUiOiAiYW5jaG9yX2RlZmluZXMiLCAidm5hbWUi
OiB7ImNvcnB1cyI6ICJjaHJvbWl1bS5nb29nbGVzb3VyY2UuY29tL2Nocm9taXVtL3NyYyIsICJs
YW5ndWFnZSI6ICJtb2pvbSIsICJzaWduYXR1cmUiOiAiYmxpbmsubW9qb20uUmVtb3RlRnJhbWUu
RW5mb3JjZUluc2VjdXJlTmF2aWdhdGlvbnNTZXQifX0sIHsiZW5kIjogNjIzOTcsICJiZWdpbiI6
IDYyMzc0LCAiZWRnZSI6ICIlL2t5dGhlL2VkZ2UvZ2VuZXJhdGVzIiwgInR5cGUiOiAiYW5jaG9y
X2RlZmluZXMiLCAidm5hbWUiOiB7ImNvcnB1cyI6ICJjaHJvbWl1bS5nb29nbGVzb3VyY2UuY29t
L2Nocm9taXVtL3NyYyIsICJsYW5ndWFnZSI6ICJtb2pvbSIsICJzaWduYXR1cmUiOiAiYmxpbmsu
bW9qb20uUmVtb3RlRnJhbWUuU2V0RnJhbWVPd25lclByb3BlcnRpZXMifX0sIHsiZW5kIjogNjI1
ODIsICJiZWdpbiI6IDYyNTU0LCAiZWRnZSI6ICIlL2t5dGhlL2VkZ2UvZ2VuZXJhdGVzIiwgInR5
cGUiOiAiYW5jaG9yX2RlZmluZXMiLCAidm5hbWUiOiB7ImNvcnB1cyI6ICJjaHJvbWl1bS5nb29n
bGVzb3VyY2UuY29tL2Nocm9taXVtL3NyYyIsICJsYW5ndWFnZSI6ICJtb2pvbSIsICJzaWduYXR1
cmUiOiAiYmxpbmsubW9qb20uUmVtb3RlRnJhbWUuRW5mb3JjZUluc2VjdXJlUmVxdWVzdFBvbGlj
eSJ9fSwgeyJlbmQiOiA2Mjc0MywgImJlZ2luIjogNjI3MjQsICJlZGdlIjogIiUva3l0aGUvZWRn
ZS9nZW5lcmF0ZXMiLCAidHlwZSI6ICJhbmNob3JfZGVmaW5lcyIsICJ2bmFtZSI6IHsiY29ycHVz
IjogImNocm9taXVtLmdvb2dsZXNvdXJjZS5jb20vY2hyb21pdW0vc3JjIiwgImxhbmd1YWdlIjog
Im1vam9tIiwgInNpZ25hdHVyZSI6ICJibGluay5tb2pvbS5SZW1vdGVGcmFtZS5TZXRSZXBsaWNh
dGVkT3JpZ2luIn19LCB7ImVuZCI6IDYyOTcyLCAiYmVnaW4iOiA2Mjk0NywgImVkZ2UiOiAiJS9r
eXRoZS9lZGdlL2dlbmVyYXRlcyIsICJ0eXBlIjogImFuY2hvcl9kZWZpbmVzIiwgInZuYW1lIjog
eyJjb3JwdXMiOiAiY2hyb21pdW0uZ29vZ2xlc291cmNlLmNvbS9jaHJvbWl1bS9zcmMiLCAibGFu
Z3VhZ2UiOiAibW9qb20iLCAic2lnbmF0dXJlIjogImJsaW5rLm1vam9tLlJlbW90ZUZyYW1lLlNl
dFJlcGxpY2F0ZWRJc0FkU3ViZnJhbWUifX0sIHsiZW5kIjogNjMwOTcsICJiZWdpbiI6IDYzMDgw
LCAiZWRnZSI6ICIlL2t5dGhlL2VkZ2UvZ2VuZXJhdGVzIiwgInR5cGUiOiAiYW5jaG9yX2RlZmlu
ZXMiLCAidm5hbWUiOiB7ImNvcnB1cyI6ICJjaHJvbWl1bS5nb29nbGVzb3VyY2UuY29tL2Nocm9t
aXVtL3NyYyIsICJsYW5ndWFnZSI6ICJtb2pvbSIsICJzaWduYXR1cmUiOiAiYmxpbmsubW9qb20u
UmVtb3RlRnJhbWUuU2V0UmVwbGljYXRlZE5hbWUifX0sIHsiZW5kIjogNjMyODQsICJiZWdpbiI6
IDYzMjU0LCAiZWRnZSI6ICIlL2t5dGhlL2VkZ2UvZ2VuZXJhdGVzIiwgInR5cGUiOiAiYW5jaG9y
X2RlZmluZXMiLCAidm5hbWUiOiB7ImNvcnB1cyI6ICJjaHJvbWl1bS5nb29nbGVzb3VyY2UuY29t
L2Nocm9taXVtL3NyYyIsICJsYW5ndWFnZSI6ICJtb2pvbSIsICJzaWduYXR1cmUiOiAiYmxpbmsu
bW9qb20uUmVtb3RlRnJhbWUuRGlzcGF0Y2hMb2FkRXZlbnRGb3JGcmFtZU93bmVyIn19LCB7ImVu
ZCI6IDYzNDA2LCAiYmVnaW4iOiA2MzM4MSwgImVkZ2UiOiAiJS9reXRoZS9lZGdlL2dlbmVyYXRl
cyIsICJ0eXBlIjogImFuY2hvcl9kZWZpbmVzIiwgInZuYW1lIjogeyJjb3JwdXMiOiAiY2hyb21p
dW0uZ29vZ2xlc291cmNlLmNvbS9jaHJvbWl1bS9zcmMiLCAibGFuZ3VhZ2UiOiAibW9qb20iLCAi
c2lnbmF0dXJlIjogImJsaW5rLm1vam9tLlJlbW90ZUZyYW1lLlNldE5lZWRzT2NjbHVzaW9uVHJh
Y2tpbmcifX0sIHsiZW5kIjogNjM1MTMsICJiZWdpbiI6IDYzNTA1LCAiZWRnZSI6ICIlL2t5dGhl
L2VkZ2UvZ2VuZXJhdGVzIiwgInR5cGUiOiAiYW5jaG9yX2RlZmluZXMiLCAidm5hbWUiOiB7ImNv
cnB1cyI6ICJjaHJvbWl1bS5nb29nbGVzb3VyY2UuY29tL2Nocm9taXVtL3NyYyIsICJsYW5ndWFn
ZSI6ICJtb2pvbSIsICJzaWduYXR1cmUiOiAiYmxpbmsubW9qb20uUmVtb3RlRnJhbWUuQ29sbGFw
c2UifX0sIHsiZW5kIjogNjM2MDksICJiZWdpbiI6IDYzNjA0LCAiZWRnZSI6ICIlL2t5dGhlL2Vk
Z2UvZ2VuZXJhdGVzIiwgInR5cGUiOiAiYW5jaG9yX2RlZmluZXMiLCAidm5hbWUiOiB7ImNvcnB1
cyI6ICJjaHJvbWl1bS5nb29nbGVzb3VyY2UuY29tL2Nocm9taXVtL3NyYyIsICJsYW5ndWFnZSI6
ICJtb2pvbSIsICJzaWduYXR1cmUiOiAiYmxpbmsubW9qb20uUmVtb3RlRnJhbWUuRm9jdXMifX0s
IHsiZW5kIjogNjM3NjUsICJiZWdpbiI6IDYzNzIzLCAiZWRnZSI6ICIlL2t5dGhlL2VkZ2UvZ2Vu
ZXJhdGVzIiwgInR5cGUiOiAiYW5jaG9yX2RlZmluZXMiLCAidm5hbWUiOiB7ImNvcnB1cyI6ICJj
aHJvbWl1bS5nb29nbGVzb3VyY2UuY29tL2Nocm9taXVtL3NyYyIsICJsYW5ndWFnZSI6ICJtb2pv
bSIsICJzaWduYXR1cmUiOiAiYmxpbmsubW9qb20uUmVtb3RlRnJhbWUuU2V0SGFkU3RpY2t5VXNl
ckFjdGl2YXRpb25CZWZvcmVOYXZpZ2F0aW9uIn19LCB7ImVuZCI6IDYzODkxLCAiYmVnaW4iOiA2
Mzg3MiwgImVkZ2UiOiAiJS9reXRoZS9lZGdlL2dlbmVyYXRlcyIsICJ0eXBlIjogImFuY2hvcl9k
ZWZpbmVzIiwgInZuYW1lIjogeyJjb3JwdXMiOiAiY2hyb21pdW0uZ29vZ2xlc291cmNlLmNvbS9j
aHJvbWl1bS9zcmMiLCAibGFuZ3VhZ2UiOiAibW9qb20iLCAic2lnbmF0dXJlIjogImJsaW5rLm1v
am9tLlJlbW90ZUZyYW1lLkJ1YmJsZUxvZ2ljYWxTY3JvbGwifX0sIHsiZW5kIjogNjQwOTgsICJi
ZWdpbiI6IDY0MDczLCAiZWRnZSI6ICIlL2t5dGhlL2VkZ2UvZ2VuZXJhdGVzIiwgInR5cGUiOiAi
YW5jaG9yX2RlZmluZXMiLCAidm5hbWUiOiB7ImNvcnB1cyI6ICJjaHJvbWl1bS5nb29nbGVzb3Vy
Y2UuY29tL2Nocm9taXVtL3NyYyIsICJsYW5ndWFnZSI6ICJtb2pvbSIsICJzaWduYXR1cmUiOiAi
YmxpbmsubW9qb20uUmVtb3RlRnJhbWUuVXBkYXRlVXNlckFjdGl2YXRpb25TdGF0ZSJ9fSwgeyJl
bmQiOiA2NDM0MiwgImJlZ2luIjogNjQzMjUsICJlZGdlIjogIiUva3l0aGUvZWRnZS9nZW5lcmF0
ZXMiLCAidHlwZSI6ICJhbmNob3JfZGVmaW5lcyIsICJ2bmFtZSI6IHsiY29ycHVzIjogImNocm9t
aXVtLmdvb2dsZXNvdXJjZS5jb20vY2hyb21pdW0vc3JjIiwgImxhbmd1YWdlIjogIm1vam9tIiwg
InNpZ25hdHVyZSI6ICJibGluay5tb2pvbS5SZW1vdGVGcmFtZS5TZXRFbWJlZGRpbmdUb2tlbiJ9
fSwgeyJlbmQiOiA2NDQ4NSwgImJlZ2luIjogNjQ0NzMsICJlZGdlIjogIiUva3l0aGUvZWRnZS9n
ZW5lcmF0ZXMiLCAidHlwZSI6ICJhbmNob3JfZGVmaW5lcyIsICJ2bmFtZSI6IHsiY29ycHVzIjog
ImNocm9taXVtLmdvb2dsZXNvdXJjZS5jb20vY2hyb21pdW0vc3JjIiwgImxhbmd1YWdlIjogIm1v
am9tIiwgInNpZ25hdHVyZSI6ICJibGluay5tb2pvbS5SZW1vdGVGcmFtZS5TZXRQYWdlRm9jdXMi
fX0sIHsiZW5kIjogNjQ2MTQsICJiZWdpbiI6IDY0NTkzLCAiZWRnZSI6ICIlL2t5dGhlL2VkZ2Uv
Z2VuZXJhdGVzIiwgInR5cGUiOiAiYW5jaG9yX2RlZmluZXMiLCAidm5hbWUiOiB7ImNvcnB1cyI6
ICJjaHJvbWl1bS5nb29nbGVzb3VyY2UuY29tL2Nocm9taXVtL3NyYyIsICJsYW5ndWFnZSI6ICJt
b2pvbSIsICJzaWduYXR1cmUiOiAiYmxpbmsubW9qb20uUmVtb3RlRnJhbWUuUmVuZGVyRmFsbGJh
Y2tDb250ZW50In19LCB7ImVuZCI6IDY0NzY0LCAiYmVnaW4iOiA2NDcyNSwgImVkZ2UiOiAiJS9r
eXRoZS9lZGdlL2dlbmVyYXRlcyIsICJ0eXBlIjogImFuY2hvcl9kZWZpbmVzIiwgInZuYW1lIjog
eyJjb3JwdXMiOiAiY2hyb21pdW0uZ29vZ2xlc291cmNlLmNvbS9jaHJvbWl1bS9zcmMiLCAibGFu
Z3VhZ2UiOiAibW9qb20iLCAic2lnbmF0dXJlIjogImJsaW5rLm1vam9tLlJlbW90ZUZyYW1lLlJl
bmRlckZhbGxiYWNrQ29udGVudFdpdGhSZXNvdXJjZVRpbWluZyJ9fSwgeyJlbmQiOiA2NDk3OSwg
ImJlZ2luIjogNjQ5NTMsICJlZGdlIjogIiUva3l0aGUvZWRnZS9nZW5lcmF0ZXMiLCAidHlwZSI6
ICJhbmNob3JfZGVmaW5lcyIsICJ2bmFtZSI6IHsiY29ycHVzIjogImNocm9taXVtLmdvb2dsZXNv
dXJjZS5jb20vY2hyb21pdW0vc3JjIiwgImxhbmd1YWdlIjogIm1vam9tIiwgInNpZ25hdHVyZSI6
ICJibGluay5tb2pvbS5SZW1vdGVGcmFtZS5BZGRSZXNvdXJjZVRpbWluZ0Zyb21DaGlsZCJ9fSwg
eyJlbmQiOiA2NTE0MCwgImJlZ2luIjogNjUxMjEsICJlZGdlIjogIiUva3l0aGUvZWRnZS9nZW5l
cmF0ZXMiLCAidHlwZSI6ICJhbmNob3JfZGVmaW5lcyIsICJ2bmFtZSI6IHsiY29ycHVzIjogImNo
cm9taXVtLmdvb2dsZXNvdXJjZS5jb20vY2hyb21pdW0vc3JjIiwgImxhbmd1YWdlIjogIm1vam9t
IiwgInNpZ25hdHVyZSI6ICJibGluay5tb2pvbS5SZW1vdGVGcmFtZS5TY3JvbGxSZWN0VG9WaXNp
YmxlIn19LCB7ImVuZCI6IDY1MzIxLCAiYmVnaW4iOiA2NTMwNiwgImVkZ2UiOiAiJS9reXRoZS9l
ZGdlL2dlbmVyYXRlcyIsICJ0eXBlIjogImFuY2hvcl9kZWZpbmVzIiwgInZuYW1lIjogeyJjb3Jw
dXMiOiAiY2hyb21pdW0uZ29vZ2xlc291cmNlLmNvbS9jaHJvbWl1bS9zcmMiLCAibGFuZ3VhZ2Ui
OiAibW9qb20iLCAic2lnbmF0dXJlIjogImJsaW5rLm1vam9tLlJlbW90ZUZyYW1lLkRpZFN0YXJ0
TG9hZGluZyJ9fSwgeyJlbmQiOiA2NTQyMSwgImJlZ2luIjogNjU0MDcsICJlZGdlIjogIiUva3l0
aGUvZWRnZS9nZW5lcmF0ZXMiLCAidHlwZSI6ICJhbmNob3JfZGVmaW5lcyIsICJ2bmFtZSI6IHsi
Y29ycHVzIjogImNocm9taXVtLmdvb2dsZXNvdXJjZS5jb20vY2hyb21pdW0vc3JjIiwgImxhbmd1
YWdlIjogIm1vam9tIiwgInNpZ25hdHVyZSI6ICJibGluay5tb2pvbS5SZW1vdGVGcmFtZS5EaWRT
dG9wTG9hZGluZyJ9fSwgeyJlbmQiOiA2NTU1OSwgImJlZ2luIjogNjU1MjYsICJlZGdlIjogIiUv
a3l0aGUvZWRnZS9nZW5lcmF0ZXMiLCAidHlwZSI6ICJhbmNob3JfZGVmaW5lcyIsICJ2bmFtZSI6
IHsiY29ycHVzIjogImNocm9taXVtLmdvb2dsZXNvdXJjZS5jb20vY2hyb21pdW0vc3JjIiwgImxh
bmd1YWdlIjogIm1vam9tIiwgInNpZ25hdHVyZSI6ICJibGluay5tb2pvbS5SZW1vdGVGcmFtZS5J
bnRyaW5zaWNTaXppbmdJbmZvT2ZDaGlsZENoYW5nZWQifX0sIHsiZW5kIjogNjU3MzYsICJiZWdp
biI6IDY1NzEyLCAiZWRnZSI6ICIlL2t5dGhlL2VkZ2UvZ2VuZXJhdGVzIiwgInR5cGUiOiAiYW5j
aG9yX2RlZmluZXMiLCAidm5hbWUiOiB7ImNvcnB1cyI6ICJjaHJvbWl1bS5nb29nbGVzb3VyY2Uu
Y29tL2Nocm9taXVtL3NyYyIsICJsYW5ndWFnZSI6ICJtb2pvbSIsICJzaWduYXR1cmUiOiAiYmxp
bmsubW9qb20uUmVtb3RlRnJhbWUuRGlkU2V0RnJhbWVQb2xpY3lIZWFkZXJzIn19LCB7ImVuZCI6
IDY1OTkzLCAiYmVnaW4iOiA2NTk3MywgImVkZ2UiOiAiJS9reXRoZS9lZGdlL2dlbmVyYXRlcyIs
ICJ0eXBlIjogImFuY2hvcl9kZWZpbmVzIiwgInZuYW1lIjogeyJjb3JwdXMiOiAiY2hyb21pdW0u
Z29vZ2xlc291cmNlLmNvbS9jaHJvbWl1bS9zcmMiLCAibGFuZ3VhZ2UiOiAibW9qb20iLCAic2ln
bmF0dXJlIjogImJsaW5rLm1vam9tLlJlbW90ZUZyYW1lLkRpZFVwZGF0ZUZyYW1lUG9saWN5In19
LCB7ImVuZCI6IDY2MTI5LCAiYmVnaW4iOiA2NjExNywgImVkZ2UiOiAiJS9reXRoZS9lZGdlL2dl
bmVyYXRlcyIsICJ0eXBlIjogImFuY2hvcl9kZWZpbmVzIiwgInZuYW1lIjogeyJjb3JwdXMiOiAi
Y2hyb21pdW0uZ29vZ2xlc291cmNlLmNvbS9jaHJvbWl1bS9zcmMiLCAibGFuZ3VhZ2UiOiAibW9q
b20iLCAic2lnbmF0dXJlIjogImJsaW5rLm1vam9tLlJlbW90ZUZyYW1lLlVwZGF0ZU9wZW5lciJ9
fSwgeyJlbmQiOiA2NjI5NCwgImJlZ2luIjogNjYyNzgsICJlZGdlIjogIiUva3l0aGUvZWRnZS9n
ZW5lcmF0ZXMiLCAidHlwZSI6ICJhbmNob3JfZGVmaW5lcyIsICJ2bmFtZSI6IHsiY29ycHVzIjog
ImNocm9taXVtLmdvb2dsZXNvdXJjZS5jb20vY2hyb21pdW0vc3JjIiwgImxhbmd1YWdlIjogIm1v
am9tIiwgInNpZ25hdHVyZSI6ICJibGluay5tb2pvbS5SZW1vdGVGcmFtZS5EZXRhY2hBbmREaXNw
b3NlIn19LCB7ImVuZCI6IDY2Mzk4LCAiYmVnaW4iOiA2NjM4MiwgImVkZ2UiOiAiJS9reXRoZS9l
ZGdlL2dlbmVyYXRlcyIsICJ0eXBlIjogImFuY2hvcl9kZWZpbmVzIiwgInZuYW1lIjogeyJjb3Jw
dXMiOiAiY2hyb21pdW0uZ29vZ2xlc291cmNlLmNvbS9jaHJvbWl1bS9zcmMiLCAibGFuZ3VhZ2Ui
OiAibW9qb20iLCAic2lnbmF0dXJlIjogImJsaW5rLm1vam9tLlJlbW90ZUZyYW1lLkVuYWJsZUF1
dG9SZXNpemUifX0sIHsiZW5kIjogNjY1NjAsICJiZWdpbiI6IDY2NTQzLCAiZWRnZSI6ICIlL2t5
dGhlL2VkZ2UvZ2VuZXJhdGVzIiwgInR5cGUiOiAiYW5jaG9yX2RlZmluZXMiLCAidm5hbWUiOiB7
ImNvcnB1cyI6ICJjaHJvbWl1bS5nb29nbGVzb3VyY2UuY29tL2Nocm9taXVtL3NyYyIsICJsYW5n
dWFnZSI6ICJtb2pvbSIsICJzaWduYXR1cmUiOiAiYmxpbmsubW9qb20uUmVtb3RlRnJhbWUuRGlz
YWJsZUF1dG9SZXNpemUifX0sIHsiZW5kIjogNjY2ODIsICJiZWdpbiI6IDY2NjU3LCAiZWRnZSI6
ICIlL2t5dGhlL2VkZ2UvZ2VuZXJhdGVzIiwgInR5cGUiOiAiYW5jaG9yX2RlZmluZXMiLCAidm5h
bWUiOiB7ImNvcnB1cyI6ICJjaHJvbWl1bS5nb29nbGVzb3VyY2UuY29tL2Nocm9taXVtL3NyYyIs
ICJsYW5ndWFnZSI6ICJtb2pvbSIsICJzaWduYXR1cmUiOiAiYmxpbmsubW9qb20uUmVtb3RlRnJh
bWUuRGlkVXBkYXRlVmlzdWFsUHJvcGVydGllcyJ9fSwgeyJlbmQiOiA2NjgyMywgImJlZ2luIjog
NjY4MDksICJlZGdlIjogIiUva3l0aGUvZWRnZS9nZW5lcmF0ZXMiLCAidHlwZSI6ICJhbmNob3Jf
ZGVmaW5lcyIsICJ2bmFtZSI6IHsiY29ycHVzIjogImNocm9taXVtLmdvb2dsZXNvdXJjZS5jb20v
Y2hyb21pdW0vc3JjIiwgImxhbmd1YWdlIjogIm1vam9tIiwgInNpZ25hdHVyZSI6ICJibGluay5t
b2pvbS5SZW1vdGVGcmFtZS5TZXRGcmFtZVNpbmtJZCJ9fSwgeyJlbmQiOiA2Njk2NiwgImJlZ2lu
IjogNjY5NTAsICJlZGdlIjogIiUva3l0aGUvZWRnZS9nZW5lcmF0ZXMiLCAidHlwZSI6ICJhbmNo
b3JfZGVmaW5lcyIsICJ2bmFtZSI6IHsiY29ycHVzIjogImNocm9taXVtLmdvb2dsZXNvdXJjZS5j
b20vY2hyb21pdW0vc3JjIiwgImxhbmd1YWdlIjogIm1vam9tIiwgInNpZ25hdHVyZSI6ICJibGlu
ay5tb2pvbS5SZW1vdGVGcmFtZS5DaGlsZFByb2Nlc3NHb25lIn19LCB7ImVuZCI6IDY3MjI1LCAi
YmVnaW4iOiA2NzIxMSwgImVkZ2UiOiAiJS9reXRoZS9lZGdlL2dlbmVyYXRlcyIsICJ0eXBlIjog
ImFuY2hvcl9kZWZpbmVzIiwgInZuYW1lIjogeyJjb3JwdXMiOiAiY2hyb21pdW0uZ29vZ2xlc291
cmNlLmNvbS9jaHJvbWl1bS9zcmMiLCAibGFuZ3VhZ2UiOiAibW9qb20iLCAic2lnbmF0dXJlIjog
ImJsaW5rLm1vam9tLkxvY2FsTWFpbkZyYW1lIn19LCB7ImVuZCI6IDY5NTMxLCAiYmVnaW4iOiA2
OTUxMSwgImVkZ2UiOiAiJS9reXRoZS9lZGdlL2dlbmVyYXRlcyIsICJ0eXBlIjogImFuY2hvcl9k
ZWZpbmVzIiwgInZuYW1lIjogeyJjb3JwdXMiOiAiY2hyb21pdW0uZ29vZ2xlc291cmNlLmNvbS9j
aHJvbWl1bS9zcmMiLCAibGFuZ3VhZ2UiOiAibW9qb20iLCAic2lnbmF0dXJlIjogImJsaW5rLm1v
am9tLkxvY2FsTWFpbkZyYW1lLkFuaW1hdGVEb3VibGVUYXBab29tIn19LCB7ImVuZCI6IDY5Njg0
LCAiYmVnaW4iOiA2OTY3MCwgImVkZ2UiOiAiJS9reXRoZS9lZGdlL2dlbmVyYXRlcyIsICJ0eXBl
IjogImFuY2hvcl9kZWZpbmVzIiwgInZuYW1lIjogeyJjb3JwdXMiOiAiY2hyb21pdW0uZ29vZ2xl
c291cmNlLmNvbS9jaHJvbWl1bS9zcmMiLCAibGFuZ3VhZ2UiOiAibW9qb20iLCAic2lnbmF0dXJl
IjogImJsaW5rLm1vam9tLkxvY2FsTWFpbkZyYW1lLlNldFNjYWxlRmFjdG9yIn19LCB7ImVuZCI6
IDY5ODQ1LCAiYmVnaW4iOiA2OTgzNiwgImVkZ2UiOiAiJS9reXRoZS9lZGdlL2dlbmVyYXRlcyIs
ICJ0eXBlIjogImFuY2hvcl9kZWZpbmVzIiwgInZuYW1lIjogeyJjb3JwdXMiOiAiY2hyb21pdW0u
Z29vZ2xlc291cmNlLmNvbS9jaHJvbWl1bS9zcmMiLCAibGFuZ3VhZ2UiOiAibW9qb20iLCAic2ln
bmF0dXJlIjogImJsaW5rLm1vam9tLkxvY2FsTWFpbkZyYW1lLkNsb3NlUGFnZSJ9fSwgeyJlbmQi
OiA2OTk3NiwgImJlZ2luIjogNjk5NjEsICJlZGdlIjogIiUva3l0aGUvZWRnZS9nZW5lcmF0ZXMi
LCAidHlwZSI6ICJhbmNob3JfZGVmaW5lcyIsICJ2bmFtZSI6IHsiY29ycHVzIjogImNocm9taXVt
Lmdvb2dsZXNvdXJjZS5jb20vY2hyb21pdW0vc3JjIiwgImxhbmd1YWdlIjogIm1vam9tIiwgInNp
Z25hdHVyZSI6ICJibGluay5tb2pvbS5Mb2NhbE1haW5GcmFtZS5TZXRJbml0aWFsRm9jdXMifX0s
IHsiZW5kIjogNzAxMjMsICJiZWdpbiI6IDcwMDkzLCAiZWRnZSI6ICIlL2t5dGhlL2VkZ2UvZ2Vu
ZXJhdGVzIiwgInR5cGUiOiAiYW5jaG9yX2RlZmluZXMiLCAidm5hbWUiOiB7ImNvcnB1cyI6ICJj
aHJvbWl1bS5nb29nbGVzb3VyY2UuY29tL2Nocm9taXVtL3NyYyIsICJsYW5ndWFnZSI6ICJtb2pv
bSIsICJzaWduYXR1cmUiOiAiYmxpbmsubW9qb20uTG9jYWxNYWluRnJhbWUuRW5hYmxlUHJlZmVy
cmVkU2l6ZUNoYW5nZWRNb2RlIn19LCB7ImVuZCI6IDcwMjM4LCAiYmVnaW4iOiA3MDIxOCwgImVk
Z2UiOiAiJS9reXRoZS9lZGdlL2dlbmVyYXRlcyIsICJ0eXBlIjogImFuY2hvcl9kZWZpbmVzIiwg
InZuYW1lIjogeyJjb3JwdXMiOiAiY2hyb21pdW0uZ29vZ2xlc291cmNlLmNvbS9jaHJvbWl1bS9z
cmMiLCAibGFuZ3VhZ2UiOiAibW9qb20iLCAic2lnbmF0dXJlIjogImJsaW5rLm1vam9tLkxvY2Fs
TWFpbkZyYW1lLlpvb21Ub0ZpbmRJblBhZ2VSZWN0In19LCB7ImVuZCI6IDcwMzk4LCAiYmVnaW4i
OiA3MDM3NCwgImVkZ2UiOiAiJS9reXRoZS9lZGdlL2dlbmVyYXRlcyIsICJ0eXBlIjogImFuY2hv
cl9kZWZpbmVzIiwgInZuYW1lIjogeyJjb3JwdXMiOiAiY2hyb21pdW0uZ29vZ2xlc291cmNlLmNv
bS9jaHJvbWl1bS9zcmMiLCAibGFuZ3VhZ2UiOiAibW9qb20iLCAic2lnbmF0dXJlIjogImJsaW5r
Lm1vam9tLkxvY2FsTWFpbkZyYW1lLkluc3RhbGxDb29wQWNjZXNzTW9uaXRvciJ9fSwgeyJlbmQi
OiA3MDc0MywgImJlZ2luIjogNzA3MjYsICJlZGdlIjogIiUva3l0aGUvZWRnZS9nZW5lcmF0ZXMi
LCAidHlwZSI6ICJhbmNob3JfZGVmaW5lcyIsICJ2bmFtZSI6IHsiY29ycHVzIjogImNocm9taXVt
Lmdvb2dsZXNvdXJjZS5jb20vY2hyb21pdW0vc3JjIiwgImxhbmd1YWdlIjogIm1vam9tIiwgInNp
Z25hdHVyZSI6ICJibGluay5tb2pvbS5Mb2NhbE1haW5GcmFtZS5PblBvcnRhbEFjdGl2YXRlZCJ9
fSwgeyJlbmQiOiA3MTE1NCwgImJlZ2luIjogNzExMzIsICJlZGdlIjogIiUva3l0aGUvZWRnZS9n
ZW5lcmF0ZXMiLCAidHlwZSI6ICJhbmNob3JfZGVmaW5lcyIsICJ2bmFtZSI6IHsiY29ycHVzIjog
ImNocm9taXVtLmdvb2dsZXNvdXJjZS5jb20vY2hyb21pdW0vc3JjIiwgImxhbmd1YWdlIjogIm1v
am9tIiwgInNpZ25hdHVyZSI6ICJibGluay5tb2pvbS5Mb2NhbE1haW5GcmFtZS5Gb3J3YXJkTWVz
c2FnZUZyb21Ib3N0In19LCB7ImVuZCI6IDcxMzkxLCAiYmVnaW4iOiA3MTM2NSwgImVkZ2UiOiAi
JS9reXRoZS9lZGdlL2dlbmVyYXRlcyIsICJ0eXBlIjogImFuY2hvcl9kZWZpbmVzIiwgInZuYW1l
IjogeyJjb3JwdXMiOiAiY2hyb21pdW0uZ29vZ2xlc291cmNlLmNvbS9jaHJvbWl1bS9zcmMiLCAi
bGFuZ3VhZ2UiOiAibW9qb20iLCAic2lnbmF0dXJlIjogImJsaW5rLm1vam9tLkxvY2FsTWFpbkZy
YW1lLlVwZGF0ZUJyb3dzZXJDb250cm9sc1N0YXRlIn19LCB7ImVuZCI6IDcxNzA0LCAiYmVnaW4i
OiA3MTY4OSwgImVkZ2UiOiAiJS9reXRoZS9lZGdlL2dlbmVyYXRlcyIsICJ0eXBlIjogImFuY2hv
cl9kZWZpbmVzIiwgInZuYW1lIjogeyJjb3JwdXMiOiAiY2hyb21pdW0uZ29vZ2xlc291cmNlLmNv
bS9jaHJvbWl1bS9zcmMiLCAibGFuZ3VhZ2UiOiAibW9qb20iLCAic2lnbmF0dXJlIjogImJsaW5r
Lm1vam9tLlJlbW90ZU1haW5GcmFtZSJ9fSwgeyJlbmQiOiA3Mjk2NCwgImJlZ2luIjogNzI5Mzcs
ICJlZGdlIjogIiUva3l0aGUvZWRnZS9nZW5lcmF0ZXMiLCAidHlwZSI6ICJhbmNob3JfZGVmaW5l
cyIsICJ2bmFtZSI6IHsiY29ycHVzIjogImNocm9taXVtLmdvb2dsZXNvdXJjZS5jb20vY2hyb21p
dW0vc3JjIiwgImxhbmd1YWdlIjogIm1vam9tIiwgInNpZ25hdHVyZSI6ICJibGluay5tb2pvbS5S
ZW1vdGVNYWluRnJhbWUuVXBkYXRlVGV4dEF1dG9zaXplclBhZ2VJbmZvIn19LCB7ImVuZCI6IDcz
MzA0LCAiYmVnaW4iOiA3MzI4NiwgImVkZ2UiOiAiJS9reXRoZS9lZGdlL2dlbmVyYXRlcyIsICJ0
eXBlIjogImFuY2hvcl9kZWZpbmVzIiwgInZuYW1lIjogeyJjb3JwdXMiOiAiY2hyb21pdW0uZ29v
Z2xlc291cmNlLmNvbS9jaHJvbWl1bS9zcmMiLCAibGFuZ3VhZ2UiOiAibW9qb20iLCAic2lnbmF0
dXJlIjogImJsaW5rLm1vam9tLkxvY2FsTWFpbkZyYW1lSG9zdCJ9fSwgeyJlbmQiOiA3NTczNywg
ImJlZ2luIjogNzU3MTksICJlZGdlIjogIiUva3l0aGUvZWRnZS9nZW5lcmF0ZXMiLCAidHlwZSI6
ICJhbmNob3JfZGVmaW5lcyIsICJ2bmFtZSI6IHsiY29ycHVzIjogImNocm9taXVtLmdvb2dsZXNv
dXJjZS5jb20vY2hyb21pdW0vc3JjIiwgImxhbmd1YWdlIjogIm1vam9tIiwgInNpZ25hdHVyZSI6
ICJibGluay5tb2pvbS5Mb2NhbE1haW5GcmFtZUhvc3QuU2NhbGVGYWN0b3JDaGFuZ2VkIn19LCB7
ImVuZCI6IDc1ODgzLCAiYmVnaW4iOiA3NTg1NSwgImVkZ2UiOiAiJS9reXRoZS9lZGdlL2dlbmVy
YXRlcyIsICJ0eXBlIjogImFuY2hvcl9kZWZpbmVzIiwgInZuYW1lIjogeyJjb3JwdXMiOiAiY2hy
b21pdW0uZ29vZ2xlc291cmNlLmNvbS9jaHJvbWl1bS9zcmMiLCAibGFuZ3VhZ2UiOiAibW9qb20i
LCAic2lnbmF0dXJlIjogImJsaW5rLm1vam9tLkxvY2FsTWFpbkZyYW1lSG9zdC5Db250ZW50c1By
ZWZlcnJlZFNpemVDaGFuZ2VkIn19LCB7ImVuZCI6IDc2MDQ2LCAiYmVnaW4iOiA3NjAxOCwgImVk
Z2UiOiAiJS9reXRoZS9lZGdlL2dlbmVyYXRlcyIsICJ0eXBlIjogImFuY2hvcl9kZWZpbmVzIiwg
InZuYW1lIjogeyJjb3JwdXMiOiAiY2hyb21pdW0uZ29vZ2xlc291cmNlLmNvbS9jaHJvbWl1bS9z
cmMiLCAibGFuZ3VhZ2UiOiAibW9qb20iLCAic2lnbmF0dXJlIjogImJsaW5rLm1vam9tLkxvY2Fs
TWFpbkZyYW1lSG9zdC5UZXh0QXV0b3NpemVyUGFnZUluZm9DaGFuZ2VkIn19LCB7ImVuZCI6IDc2
MjAwLCAiYmVnaW4iOiA3NjE5MSwgImVkZ2UiOiAiJS9reXRoZS9lZGdlL2dlbmVyYXRlcyIsICJ0
eXBlIjogImFuY2hvcl9kZWZpbmVzIiwgInZuYW1lIjogeyJjb3JwdXMiOiAiY2hyb21pdW0uZ29v
Z2xlc291cmNlLmNvbS9jaHJvbWl1bS9zcmMiLCAibGFuZ3VhZ2UiOiAibW9qb20iLCAic2lnbmF0
dXJlIjogImJsaW5rLm1vam9tLkxvY2FsTWFpbkZyYW1lSG9zdC5Gb2N1c1BhZ2UifX0sIHsiZW5k
IjogNzYyOTcsICJiZWdpbiI6IDc2Mjg4LCAiZWRnZSI6ICIlL2t5dGhlL2VkZ2UvZ2VuZXJhdGVz
IiwgInR5cGUiOiAiYW5jaG9yX2RlZmluZXMiLCAidm5hbWUiOiB7ImNvcnB1cyI6ICJjaHJvbWl1
bS5nb29nbGVzb3VyY2UuY29tL2Nocm9taXVtL3NyYyIsICJsYW5ndWFnZSI6ICJtb2pvbSIsICJz
aWduYXR1cmUiOiAiYmxpbmsubW9qb20uTG9jYWxNYWluRnJhbWVIb3N0LlRha2VGb2N1cyJ9fSwg
eyJlbmQiOiA3NjQ4MSwgImJlZ2luIjogNzY0NjYsICJlZGdlIjogIiUva3l0aGUvZWRnZS9nZW5l
cmF0ZXMiLCAidHlwZSI6ICJhbmNob3JfZGVmaW5lcyIsICJ2bmFtZSI6IHsiY29ycHVzIjogImNo
cm9taXVtLmdvb2dsZXNvdXJjZS5jb20vY2hyb21pdW0vc3JjIiwgImxhbmd1YWdlIjogIm1vam9t
IiwgInNpZ25hdHVyZSI6ICJibGluay5tb2pvbS5Mb2NhbE1haW5GcmFtZUhvc3QuVXBkYXRlVGFy
Z2V0VVJMIn19LCB7ImVuZCI6IDc2NjQyLCAiYmVnaW4iOiA3NjYzMCwgImVkZ2UiOiAiJS9reXRo
ZS9lZGdlL2dlbmVyYXRlcyIsICJ0eXBlIjogImFuY2hvcl9kZWZpbmVzIiwgInZuYW1lIjogeyJj
b3JwdXMiOiAiY2hyb21pdW0uZ29vZ2xlc291cmNlLmNvbS9jaHJvbWl1bS9zcmMiLCAibGFuZ3Vh
Z2UiOiAibW9qb20iLCAic2lnbmF0dXJlIjogImJsaW5rLm1vam9tLkxvY2FsTWFpbkZyYW1lSG9z
dC5SZXF1ZXN0Q2xvc2UifX0sIHsiZW5kIjogNzY4MjAsICJiZWdpbiI6IDc2ODAzLCAiZWRnZSI6
ICIlL2t5dGhlL2VkZ2UvZ2VuZXJhdGVzIiwgInR5cGUiOiAiYW5jaG9yX2RlZmluZXMiLCAidm5h
bWUiOiB7ImNvcnB1cyI6ICJjaHJvbWl1bS5nb29nbGVzb3VyY2UuY29tL2Nocm9taXVtL3NyYyIs
ICJsYW5ndWFnZSI6ICJtb2pvbSIsICJzaWduYXR1cmUiOiAiYmxpbmsubW9qb20uTG9jYWxNYWlu
RnJhbWVIb3N0LlNob3dDcmVhdGVkV2luZG93In19LCB7ImVuZCI6IDc3MTgxLCAiYmVnaW4iOiA3
NzE2OCwgImVkZ2UiOiAiJS9reXRoZS9lZGdlL2dlbmVyYXRlcyIsICJ0eXBlIjogImFuY2hvcl9k
ZWZpbmVzIiwgInZuYW1lIjogeyJjb3JwdXMiOiAiY2hyb21pdW0uZ29vZ2xlc291cmNlLmNvbS9j
aHJvbWl1bS9zcmMiLCAibGFuZ3VhZ2UiOiAibW9qb20iLCAic2lnbmF0dXJlIjogImJsaW5rLm1v
am9tLkxvY2FsTWFpbkZyYW1lSG9zdC5TZXRXaW5kb3dSZWN0In19LCB7ImVuZCI6IDc3Mzc1LCAi
YmVnaW4iOiA3NzM0NiwgImVkZ2UiOiAiJS9reXRoZS9lZGdlL2dlbmVyYXRlcyIsICJ0eXBlIjog
ImFuY2hvcl9kZWZpbmVzIiwgInZuYW1lIjogeyJjb3JwdXMiOiAiY2hyb21pdW0uZ29vZ2xlc291
cmNlLmNvbS9jaHJvbWl1bS9zcmMiLCAibGFuZ3VhZ2UiOiAibW9qb20iLCAic2lnbmF0dXJlIjog
ImJsaW5rLm1vam9tLkxvY2FsTWFpbkZyYW1lSG9zdC5EaWRGaXJzdFZpc3VhbGx5Tm9uRW1wdHlQ
YWludCJ9fSwgeyJlbmQiOiA3NzUxMCwgImJlZ2luIjogNzc0ODIsICJlZGdlIjogIiUva3l0aGUv
ZWRnZS9nZW5lcmF0ZXMiLCAidHlwZSI6ICJhbmNob3JfZGVmaW5lcyIsICJ2bmFtZSI6IHsiY29y
cHVzIjogImNocm9taXVtLmdvb2dsZXNvdXJjZS5jb20vY2hyb21pdW0vc3JjIiwgImxhbmd1YWdl
IjogIm1vam9tIiwgInNpZ25hdHVyZSI6ICJibGluay5tb2pvbS5Mb2NhbE1haW5GcmFtZUhvc3Qu
RGlkQWNjZXNzSW5pdGlhbE1haW5Eb2N1bWVudCJ9fSwgeyJlbmQiOiA3Nzc5OSwgImJlZ2luIjog
Nzc3ODAsICJlZGdlIjogIiUva3l0aGUvZWRnZS9nZW5lcmF0ZXMiLCAidHlwZSI6ICJhbmNob3Jf
ZGVmaW5lcyIsICJ2bmFtZSI6IHsiY29ycHVzIjogImNocm9taXVtLmdvb2dsZXNvdXJjZS5jb20v
Y2hyb21pdW0vc3JjIiwgImxhbmd1YWdlIjogIm1vam9tIiwgInNpZ25hdHVyZSI6ICJibGluay5t
b2pvbS5SZW1vdGVNYWluRnJhbWVIb3N0In19LCB7ImVuZCI6IDc5MzQ2LCAiYmVnaW4iOiA3OTMz
NywgImVkZ2UiOiAiJS9reXRoZS9lZGdlL2dlbmVyYXRlcyIsICJ0eXBlIjogImFuY2hvcl9kZWZp
bmVzIiwgInZuYW1lIjogeyJjb3JwdXMiOiAiY2hyb21pdW0uZ29vZ2xlc291cmNlLmNvbS9jaHJv
bWl1bS9zcmMiLCAibGFuZ3VhZ2UiOiAibW9qb20iLCAic2lnbmF0dXJlIjogImJsaW5rLm1vam9t
LlJlbW90ZU1haW5GcmFtZUhvc3QuRm9jdXNQYWdlIn19LCB7ImVuZCI6IDc5NDQ0LCAiYmVnaW4i
OiA3OTQzNSwgImVkZ2UiOiAiJS9reXRoZS9lZGdlL2dlbmVyYXRlcyIsICJ0eXBlIjogImFuY2hv
cl9kZWZpbmVzIiwgInZuYW1lIjogeyJjb3JwdXMiOiAiY2hyb21pdW0uZ29vZ2xlc291cmNlLmNv
bS9jaHJvbWl1bS9zcmMiLCAibGFuZ3VhZ2UiOiAibW9qb20iLCAic2lnbmF0dXJlIjogImJsaW5r
Lm1vam9tLlJlbW90ZU1haW5GcmFtZUhvc3QuVGFrZUZvY3VzIn19LCB7ImVuZCI6IDc5NjI5LCAi
YmVnaW4iOiA3OTYxNCwgImVkZ2UiOiAiJS9reXRoZS9lZGdlL2dlbmVyYXRlcyIsICJ0eXBlIjog
ImFuY2hvcl9kZWZpbmVzIiwgInZuYW1lIjogeyJjb3JwdXMiOiAiY2hyb21pdW0uZ29vZ2xlc291
cmNlLmNvbS9jaHJvbWl1bS9zcmMiLCAibGFuZ3VhZ2UiOiAibW9qb20iLCAic2lnbmF0dXJlIjog
ImJsaW5rLm1vam9tLlJlbW90ZU1haW5GcmFtZUhvc3QuVXBkYXRlVGFyZ2V0VVJMIn19LCB7ImVu
ZCI6IDc5Nzk3LCAiYmVnaW4iOiA3OTc4MiwgImVkZ2UiOiAiJS9reXRoZS9lZGdlL2dlbmVyYXRl
cyIsICJ0eXBlIjogImFuY2hvcl9kZWZpbmVzIiwgInZuYW1lIjogeyJjb3JwdXMiOiAiY2hyb21p
dW0uZ29vZ2xlc291cmNlLmNvbS9jaHJvbWl1bS9zcmMiLCAibGFuZ3VhZ2UiOiAibW9qb20iLCAi
c2lnbmF0dXJlIjogImJsaW5rLm1vam9tLlJlbW90ZU1haW5GcmFtZUhvc3QuUm91dGVDbG9zZUV2
ZW50In19LCB7ImVuZCI6IDgwNTE0LCAiYmVnaW4iOiA4MDQ5NCwgImVkZ2UiOiAiJS9reXRoZS9l
ZGdlL2dlbmVyYXRlcyIsICJ0eXBlIjogImFuY2hvcl9kZWZpbmVzIiwgInZuYW1lIjogeyJjb3Jw
dXMiOiAiY2hyb21pdW0uZ29vZ2xlc291cmNlLmNvbS9jaHJvbWl1bS9zcmMiLCAibGFuZ3VhZ2Ui
OiAibW9qb20iLCAic2lnbmF0dXJlIjogImJsaW5rLm1vam9tLktlZXBBbGl2ZUhhbmRsZUZhY3Rv
cnkuSXNzdWVLZWVwQWxpdmVIYW5kbGUifX0sIHsiZW5kIjogODA5NzksICJiZWdpbiI6IDgwOTY0
LCAiZWRnZSI6ICIlL2t5dGhlL2VkZ2UvZ2VuZXJhdGVzIiwgInR5cGUiOiAiYW5jaG9yX2RlZmlu
ZXMiLCAidm5hbWUiOiB7ImNvcnB1cyI6ICJjaHJvbWl1bS5nb29nbGVzb3VyY2UuY29tL2Nocm9t
aXVtL3NyYyIsICJsYW5ndWFnZSI6ICJtb2pvbSIsICJzaWduYXR1cmUiOiAiYmxpbmsubW9qb20u
TG9jYWxGcmFtZUhvc3QuRW50ZXJGdWxsc2NyZWVuIn19LCB7ImVuZCI6IDgxMTYwLCAiYmVnaW4i
OiA4MTE0NiwgImVkZ2UiOiAiJS9reXRoZS9lZGdlL2dlbmVyYXRlcyIsICJ0eXBlIjogImFuY2hv
cl9kZWZpbmVzIiwgInZuYW1lIjogeyJjb3JwdXMiOiAiY2hyb21pdW0uZ29vZ2xlc291cmNlLmNv
bS9jaHJvbWl1bS9zcmMiLCAibGFuZ3VhZ2UiOiAibW9qb20iLCAic2lnbmF0dXJlIjogImJsaW5r
Lm1vam9tLkxvY2FsRnJhbWVIb3N0LkV4aXRGdWxsc2NyZWVuIn19LCB7ImVuZCI6IDgxMjcyLCAi
YmVnaW4iOiA4MTI1MCwgImVkZ2UiOiAiJS9reXRoZS9lZGdlL2dlbmVyYXRlcyIsICJ0eXBlIjog
ImFuY2hvcl9kZWZpbmVzIiwgInZuYW1lIjogeyJjb3JwdXMiOiAiY2hyb21pdW0uZ29vZ2xlc291
cmNlLmNvbS9jaHJvbWl1bS9zcmMiLCAibGFuZ3VhZ2UiOiAibW9qb20iLCAic2lnbmF0dXJlIjog
ImJsaW5rLm1vam9tLkxvY2FsRnJhbWVIb3N0LkZ1bGxzY3JlZW5TdGF0ZUNoYW5nZWQifX0sIHsi
ZW5kIjogODE0NTcsICJiZWdpbiI6IDgxNDM0LCAiZWRnZSI6ICIlL2t5dGhlL2VkZ2UvZ2VuZXJh
dGVzIiwgInR5cGUiOiAiYW5jaG9yX2RlZmluZXMiLCAidm5hbWUiOiB7ImNvcnB1cyI6ICJjaHJv
bWl1bS5nb29nbGVzb3VyY2UuY29tL2Nocm9taXVtL3NyYyIsICJsYW5ndWFnZSI6ICJtb2pvbSIs
ICJzaWduYXR1cmUiOiAiYmxpbmsubW9qb20uTG9jYWxGcmFtZUhvc3QuUmVnaXN0ZXJQcm90b2Nv
bEhhbmRsZXIifX0sIHsiZW5kIjogODE2NDUsICJiZWdpbiI6IDgxNjIwLCAiZWRnZSI6ICIlL2t5
dGhlL2VkZ2UvZ2VuZXJhdGVzIiwgInR5cGUiOiAiYW5jaG9yX2RlZmluZXMiLCAidm5hbWUiOiB7
ImNvcnB1cyI6ICJjaHJvbWl1bS5nb29nbGVzb3VyY2UuY29tL2Nocm9taXVtL3NyYyIsICJsYW5n
dWFnZSI6ICJtb2pvbSIsICJzaWduYXR1cmUiOiAiYmxpbmsubW9qb20uTG9jYWxGcmFtZUhvc3Qu
VW5yZWdpc3RlclByb3RvY29sSGFuZGxlciJ9fSwgeyJlbmQiOiA4MTgzMywgImJlZ2luIjogODE4
MDgsICJlZGdlIjogIiUva3l0aGUvZWRnZS9nZW5lcmF0ZXMiLCAidHlwZSI6ICJhbmNob3JfZGVm
aW5lcyIsICJ2bmFtZSI6IHsiY29ycHVzIjogImNocm9taXVtLmdvb2dsZXNvdXJjZS5jb20vY2hy
b21pdW0vc3JjIiwgImxhbmd1YWdlIjogIm1vam9tIiwgInNpZ25hdHVyZSI6ICJibGluay5tb2pv
bS5Mb2NhbEZyYW1lSG9zdC5EaWREaXNwbGF5SW5zZWN1cmVDb250ZW50In19LCB7ImVuZCI6IDgx
OTU3LCAiYmVnaW4iOiA4MTkyOSwgImVkZ2UiOiAiJS9reXRoZS9lZGdlL2dlbmVyYXRlcyIsICJ0
eXBlIjogImFuY2hvcl9kZWZpbmVzIiwgInZuYW1lIjogeyJjb3JwdXMiOiAiY2hyb21pdW0uZ29v
Z2xlc291cmNlLmNvbS9jaHJvbWl1bS9zcmMiLCAibGFuZ3VhZ2UiOiAibW9qb20iLCAic2lnbmF0
dXJlIjogImJsaW5rLm1vam9tLkxvY2FsRnJhbWVIb3N0LkRpZENvbnRhaW5JbnNlY3VyZUZvcm1B
Y3Rpb24ifX0sIHsiZW5kIjogODIwODEsICJiZWdpbiI6IDgyMDUzLCAiZWRnZSI6ICIlL2t5dGhl
L2VkZ2UvZ2VuZXJhdGVzIiwgInR5cGUiOiAiYW5jaG9yX2RlZmluZXMiLCAidm5hbWUiOiB7ImNv
cnB1cyI6ICJjaHJvbWl1bS5nb29nbGVzb3VyY2UuY29tL2Nocm9taXVtL3NyYyIsICJsYW5ndWFn
ZSI6ICJtb2pvbSIsICJzaWduYXR1cmUiOiAiYmxpbmsubW9qb20uTG9jYWxGcmFtZUhvc3QuTWFp
bkRvY3VtZW50RWxlbWVudEF2YWlsYWJsZSJ9fSwgeyJlbmQiOiA4MjIyOSwgImJlZ2luIjogODIy
MDQsICJlZGdlIjogIiUva3l0aGUvZWRnZS9nZW5lcmF0ZXMiLCAidHlwZSI6ICJhbmNob3JfZGVm
aW5lcyIsICJ2bmFtZSI6IHsiY29ycHVzIjogImNocm9taXVtLmdvb2dsZXNvdXJjZS5jb20vY2hy
b21pdW0vc3JjIiwgImxhbmd1YWdlIjogIm1vam9tIiwgInNpZ25hdHVyZSI6ICJibGluay5tb2pv
bS5Mb2NhbEZyYW1lSG9zdC5TZXROZWVkc09jY2x1c2lvblRyYWNraW5nIn19LCB7ImVuZCI6IDgy
Mzc4LCAiYmVnaW4iOiA4MjM0NywgImVkZ2UiOiAiJS9reXRoZS9lZGdlL2dlbmVyYXRlcyIsICJ0
eXBlIjogImFuY2hvcl9kZWZpbmVzIiwgInZuYW1lIjogeyJjb3JwdXMiOiAiY2hyb21pdW0uZ29v
Z2xlc291cmNlLmNvbS9jaHJvbWl1bS9zcmMiLCAibGFuZ3VhZ2UiOiAibW9qb20iLCAic2lnbmF0
dXJlIjogImJsaW5rLm1vam9tLkxvY2FsRnJhbWVIb3N0LlNldFZpcnR1YWxLZXlib2FyZE92ZXJs
YXlQb2xpY3kifX0sIHsiZW5kIjogODI1MDQsICJiZWdpbiI6IDgyNDg3LCAiZWRnZSI6ICIlL2t5
dGhlL2VkZ2UvZ2VuZXJhdGVzIiwgInR5cGUiOiAiYW5jaG9yX2RlZmluZXMiLCAidm5hbWUiOiB7
ImNvcnB1cyI6ICJjaHJvbWl1bS5nb29nbGVzb3VyY2UuY29tL2Nocm9taXVtL3NyYyIsICJsYW5n
dWFnZSI6ICJtb2pvbSIsICJzaWduYXR1cmUiOiAiYmxpbmsubW9qb20uTG9jYWxGcmFtZUhvc3Qu
VmlzaWJpbGl0eUNoYW5nZWQifX0sIHsiZW5kIjogODI2NTksICJiZWdpbiI6IDgyNjQwLCAiZWRn
ZSI6ICIlL2t5dGhlL2VkZ2UvZ2VuZXJhdGVzIiwgInR5cGUiOiAiYW5jaG9yX2RlZmluZXMiLCAi
dm5hbWUiOiB7ImNvcnB1cyI6ICJjaHJvbWl1bS5nb29nbGVzb3VyY2UuY29tL2Nocm9taXVtL3Ny
YyIsICJsYW5ndWFnZSI6ICJtb2pvbSIsICJzaWduYXR1cmUiOiAiYmxpbmsubW9qb20uTG9jYWxG
cmFtZUhvc3QuRGlkQ2hhbmdlVGhlbWVDb2xvciJ9fSwgeyJlbmQiOiA4MjgxMiwgImJlZ2luIjog
ODI3ODgsICJlZGdlIjogIiUva3l0aGUvZWRnZS9nZW5lcmF0ZXMiLCAidHlwZSI6ICJhbmNob3Jf
ZGVmaW5lcyIsICJ2bmFtZSI6IHsiY29ycHVzIjogImNocm9taXVtLmdvb2dsZXNvdXJjZS5jb20v
Y2hyb21pdW0vc3JjIiwgImxhbmd1YWdlIjogIm1vam9tIiwgInNpZ25hdHVyZSI6ICJibGluay5t
b2pvbS5Mb2NhbEZyYW1lSG9zdC5EaWRDaGFuZ2VCYWNrZ3JvdW5kQ29sb3IifX0sIHsiZW5kIjog
ODI5NjUsICJiZWdpbiI6IDgyOTQ1LCAiZWRnZSI6ICIlL2t5dGhlL2VkZ2UvZ2VuZXJhdGVzIiwg
InR5cGUiOiAiYW5jaG9yX2RlZmluZXMiLCAidm5hbWUiOiB7ImNvcnB1cyI6ICJjaHJvbWl1bS5n
b29nbGVzb3VyY2UuY29tL2Nocm9taXVtL3NyYyIsICJsYW5ndWFnZSI6ICJtb2pvbSIsICJzaWdu
YXR1cmUiOiAiYmxpbmsubW9qb20uTG9jYWxGcmFtZUhvc3QuRGlkRmFpbExvYWRXaXRoRXJyb3Ii
fX0sIHsiZW5kIjogODMxMDMsICJiZWdpbiI6IDgzMDkwLCAiZWRnZSI6ICIlL2t5dGhlL2VkZ2Uv
Z2VuZXJhdGVzIiwgInR5cGUiOiAiYW5jaG9yX2RlZmluZXMiLCAidm5hbWUiOiB7ImNvcnB1cyI6
ICJjaHJvbWl1bS5nb29nbGVzb3VyY2UuY29tL2Nocm9taXVtL3NyYyIsICJsYW5ndWFnZSI6ICJt
b2pvbSIsICJzaWduYXR1cmUiOiAiYmxpbmsubW9qb20uTG9jYWxGcmFtZUhvc3QuRGlkRm9jdXNG
cmFtZSJ9fSwgeyJlbmQiOiA4MzE5NSwgImJlZ2luIjogODMxODMsICJlZGdlIjogIiUva3l0aGUv
ZWRnZS9nZW5lcmF0ZXMiLCAidHlwZSI6ICJhbmNob3JfZGVmaW5lcyIsICJ2bmFtZSI6IHsiY29y
cHVzIjogImNocm9taXVtLmdvb2dsZXNvdXJjZS5jb20vY2hyb21pdW0vc3JjIiwgImxhbmd1YWdl
IjogIm1vam9tIiwgInNpZ25hdHVyZSI6ICJibGluay5tb2pvbS5Mb2NhbEZyYW1lSG9zdC5EaWRD
YWxsRm9jdXMifX0sIHsiZW5kIjogODMzMTksICJiZWdpbiI6IDgzMjkxLCAiZWRnZSI6ICIlL2t5
dGhlL2VkZ2UvZ2VuZXJhdGVzIiwgInR5cGUiOiAiYW5jaG9yX2RlZmluZXMiLCAidm5hbWUiOiB7
ImNvcnB1cyI6ICJjaHJvbWl1bS5nb29nbGVzb3VyY2UuY29tL2Nocm9taXVtL3NyYyIsICJsYW5n
dWFnZSI6ICJtb2pvbSIsICJzaWduYXR1cmUiOiAiYmxpbmsubW9qb20uTG9jYWxGcmFtZUhvc3Qu
RW5mb3JjZUluc2VjdXJlUmVxdWVzdFBvbGljeSJ9fSwgeyJlbmQiOiA4MzUwMywgImJlZ2luIjog
ODM0NzQsICJlZGdlIjogIiUva3l0aGUvZWRnZS9nZW5lcmF0ZXMiLCAidHlwZSI6ICJhbmNob3Jf
ZGVmaW5lcyIsICJ2bmFtZSI6IHsiY29ycHVzIjogImNocm9taXVtLmdvb2dsZXNvdXJjZS5jb20v
Y2hyb21pdW0vc3JjIiwgImxhbmd1YWdlIjogIm1vam9tIiwgInNpZ25hdHVyZSI6ICJibGluay5t
b2pvbS5Mb2NhbEZyYW1lSG9zdC5FbmZvcmNlSW5zZWN1cmVOYXZpZ2F0aW9uc1NldCJ9fSwgeyJl
bmQiOiA4MzY2NywgImJlZ2luIjogODM2MzUsICJlZGdlIjogIiUva3l0aGUvZWRnZS9nZW5lcmF0
ZXMiLCAidHlwZSI6ICJhbmNob3JfZGVmaW5lcyIsICJ2bmFtZSI6IHsiY29ycHVzIjogImNocm9t
aXVtLmdvb2dsZXNvdXJjZS5jb20vY2hyb21pdW0vc3JjIiwgImxhbmd1YWdlIjogIm1vam9tIiwg
InNpZ25hdHVyZSI6ICJibGluay5tb2pvbS5Mb2NhbEZyYW1lSG9zdC5TdWRkZW5UZXJtaW5hdGlv
bkRpc2FibGVyQ2hhbmdlZCJ9fSwgeyJlbmQiOiA4MzkwNywgImJlZ2luIjogODM4NjEsICJlZGdl
IjogIiUva3l0aGUvZWRnZS9nZW5lcmF0ZXMiLCAidHlwZSI6ICJhbmNob3JfZGVmaW5lcyIsICJ2
bmFtZSI6IHsiY29ycHVzIjogImNocm9taXVtLmdvb2dsZXNvdXJjZS5jb20vY2hyb21pdW0vc3Jj
IiwgImxhbmd1YWdlIjogIm1vam9tIiwgInNpZ25hdHVyZSI6ICJibGluay5tb2pvbS5Mb2NhbEZy
YW1lSG9zdC5IYWRTdGlja3lVc2VyQWN0aXZhdGlvbkJlZm9yZU5hdmlnYXRpb25DaGFuZ2VkIn19
LCB7ImVuZCI6IDg0MDU1LCAiYmVnaW4iOiA4NDAyMywgImVkZ2UiOiAiJS9reXRoZS9lZGdlL2dl
bmVyYXRlcyIsICJ0eXBlIjogImFuY2hvcl9kZWZpbmVzIiwgInZuYW1lIjogeyJjb3JwdXMiOiAi
Y2hyb21pdW0uZ29vZ2xlc291cmNlLmNvbS9jaHJvbWl1bS9zcmMiLCAibGFuZ3VhZ2UiOiAibW9q
b20iLCAic2lnbmF0dXJlIjogImJsaW5rLm1vam9tLkxvY2FsRnJhbWVIb3N0LlNjcm9sbFJlY3RU
b1Zpc2libGVJblBhcmVudEZyYW1lIn19LCB7ImVuZCI6IDg0Mjc2LCAiYmVnaW4iOiA4NDI0NCwg
ImVkZ2UiOiAiJS9reXRoZS9lZGdlL2dlbmVyYXRlcyIsICJ0eXBlIjogImFuY2hvcl9kZWZpbmVz
IiwgInZuYW1lIjogeyJjb3JwdXMiOiAiY2hyb21pdW0uZ29vZ2xlc291cmNlLmNvbS9jaHJvbWl1
bS9zcmMiLCAibGFuZ3VhZ2UiOiAibW9qb20iLCAic2lnbmF0dXJlIjogImJsaW5rLm1vam9tLkxv
Y2FsRnJhbWVIb3N0LkJ1YmJsZUxvZ2ljYWxTY3JvbGxJblBhcmVudEZyYW1lIn19LCB7ImVuZCI6
IDg0NDY1LCAiYmVnaW4iOiA4NDQ0NywgImVkZ2UiOiAiJS9reXRoZS9lZGdlL2dlbmVyYXRlcyIs
ICJ0eXBlIjogImFuY2hvcl9kZWZpbmVzIiwgInZuYW1lIjogeyJjb3JwdXMiOiAiY2hyb21pdW0u
Z29vZ2xlc291cmNlLmNvbS9jaHJvbWl1bS9zcmMiLCAibGFuZ3VhZ2UiOiAibW9qb20iLCAic2ln
bmF0dXJlIjogImJsaW5rLm1vam9tLkxvY2FsRnJhbWVIb3N0LkRpZEJsb2NrTmF2aWdhdGlvbiJ9
fSwgeyJlbmQiOiA4NDY5OCwgImJlZ2luIjogODQ2NzcsICJlZGdlIjogIiUva3l0aGUvZWRnZS9n
ZW5lcmF0ZXMiLCAidHlwZSI6ICJhbmNob3JfZGVmaW5lcyIsICJ2bmFtZSI6IHsiY29ycHVzIjog
ImNocm9taXVtLmdvb2dsZXNvdXJjZS5jb20vY2hyb21pdW0vc3JjIiwgImxhbmd1YWdlIjogIm1v
am9tIiwgInNpZ25hdHVyZSI6ICJibGluay5tb2pvbS5Mb2NhbEZyYW1lSG9zdC5EaWRDaGFuZ2VM
b2FkUHJvZ3Jlc3MifX0sIHsiZW5kIjogODQ4MTIsICJiZWdpbiI6IDg0Nzk5LCAiZWRnZSI6ICIl
L2t5dGhlL2VkZ2UvZ2VuZXJhdGVzIiwgInR5cGUiOiAiYW5jaG9yX2RlZmluZXMiLCAidm5hbWUi
OiB7ImNvcnB1cyI6ICJjaHJvbWl1bS5nb29nbGVzb3VyY2UuY29tL2Nocm9taXVtL3NyYyIsICJs
YW5ndWFnZSI6ICJtb2pvbSIsICJzaWduYXR1cmUiOiAiYmxpbmsubW9qb20uTG9jYWxGcmFtZUhv
c3QuRGlkRmluaXNoTG9hZCJ9fSwgeyJlbmQiOiA4NDkzOCwgImJlZ2luIjogODQ5MjYsICJlZGdl
IjogIiUva3l0aGUvZWRnZS9nZW5lcmF0ZXMiLCAidHlwZSI6ICJhbmNob3JfZGVmaW5lcyIsICJ2
bmFtZSI6IHsiY29ycHVzIjogImNocm9taXVtLmdvb2dsZXNvdXJjZS5jb20vY2hyb21pdW0vc3Jj
IiwgImxhbmd1YWdlIjogIm1vam9tIiwgInNpZ25hdHVyZSI6ICJibGluay5tb2pvbS5Mb2NhbEZy
YW1lSG9zdC5EaXNwYXRjaExvYWQifX0sIHsiZW5kIjogODUwNDAsICJiZWdpbiI6IDg1MDIzLCAi
ZWRnZSI6ICIlL2t5dGhlL2VkZ2UvZ2VuZXJhdGVzIiwgInR5cGUiOiAiYW5jaG9yX2RlZmluZXMi
LCAidm5hbWUiOiB7ImNvcnB1cyI6ICJjaHJvbWl1bS5nb29nbGVzb3VyY2UuY29tL2Nocm9taXVt
L3NyYyIsICJsYW5ndWFnZSI6ICJtb2pvbSIsICJzaWduYXR1cmUiOiAiYmxpbmsubW9qb20uTG9j
YWxGcmFtZUhvc3QuR29Ub0VudHJ5QXRPZmZzZXQifX0sIHsiZW5kIjogODUxOTcsICJiZWdpbiI6
IDg1MTcxLCAiZWRnZSI6ICIlL2t5dGhlL2VkZ2UvZ2VuZXJhdGVzIiwgInR5cGUiOiAiYW5jaG9y
X2RlZmluZXMiLCAidm5hbWUiOiB7ImNvcnB1cyI6ICJjaHJvbWl1bS5nb29nbGVzb3VyY2UuY29t
L2Nocm9taXVtL3NyYyIsICJsYW5ndWFnZSI6ICJtb2pvbSIsICJzaWduYXR1cmUiOiAiYmxpbmsu
bW9qb20uTG9jYWxGcmFtZUhvc3QuTmF2aWdhdGVUb05hdmlnYXRpb25BcGlLZXkifX0sIHsiZW5k
IjogODUzMzIsICJiZWdpbiI6IDg1MzIxLCAiZWRnZSI6ICIlL2t5dGhlL2VkZ2UvZ2VuZXJhdGVz
IiwgInR5cGUiOiAiYW5jaG9yX2RlZmluZXMiLCAidm5hbWUiOiB7ImNvcnB1cyI6ICJjaHJvbWl1
bS5nb29nbGVzb3VyY2UuY29tL2Nocm9taXVtL3NyYyIsICJsYW5ndWFnZSI6ICJtb2pvbSIsICJz
aWduYXR1cmUiOiAiYmxpbmsubW9qb20uTG9jYWxGcmFtZUhvc3QuVXBkYXRlVGl0bGUifX0sIHsi
ZW5kIjogODU1MjEsICJiZWdpbiI6IDg1NDk2LCAiZWRnZSI6ICIlL2t5dGhlL2VkZ2UvZ2VuZXJh
dGVzIiwgInR5cGUiOiAiYW5jaG9yX2RlZmluZXMiLCAidm5hbWUiOiB7ImNvcnB1cyI6ICJjaHJv
bWl1bS5nb29nbGVzb3VyY2UuY29tL2Nocm9taXVtL3NyYyIsICJsYW5ndWFnZSI6ICJtb2pvbSIs
ICJzaWduYXR1cmUiOiAiYmxpbmsubW9qb20uTG9jYWxGcmFtZUhvc3QuVXBkYXRlVXNlckFjdGl2
YXRpb25TdGF0ZSJ9fSwgeyJlbmQiOiA4NTc5MSwgImJlZ2luIjogODU3NTYsICJlZGdlIjogIiUv
a3l0aGUvZWRnZS9nZW5lcmF0ZXMiLCAidHlwZSI6ICJhbmNob3JfZGVmaW5lcyIsICJ2bmFtZSI6
IHsiY29ycHVzIjogImNocm9taXVtLmdvb2dsZXNvdXJjZS5jb20vY2hyb21pdW0vc3JjIiwgImxh
bmd1YWdlIjogIm1vam9tIiwgInNpZ25hdHVyZSI6ICJibGluay5tb2pvbS5Mb2NhbEZyYW1lSG9z
dC5IYW5kbGVBY2Nlc3NpYmlsaXR5RmluZEluUGFnZVJlc3VsdCJ9fSwgeyJlbmQiOiA4NTk3Mywg
ImJlZ2luIjogODU5MzMsICJlZGdlIjogIiUva3l0aGUvZWRnZS9nZW5lcmF0ZXMiLCAidHlwZSI6
ICJhbmNob3JfZGVmaW5lcyIsICJ2bmFtZSI6IHsiY29ycHVzIjogImNocm9taXVtLmdvb2dsZXNv
dXJjZS5jb20vY2hyb21pdW0vc3JjIiwgImxhbmd1YWdlIjogIm1vam9tIiwgInNpZ25hdHVyZSI6
ICJibGluay5tb2pvbS5Mb2NhbEZyYW1lSG9zdC5IYW5kbGVBY2Nlc3NpYmlsaXR5RmluZEluUGFn
ZVRlcm1pbmF0aW9uIn19LCB7ImVuZCI6IDg2MDg3LCAiYmVnaW4iOiA4NjA2NCwgImVkZ2UiOiAi
JS9reXRoZS9lZGdlL2dlbmVyYXRlcyIsICJ0eXBlIjogImFuY2hvcl9kZWZpbmVzIiwgInZuYW1l
IjogeyJjb3JwdXMiOiAiY2hyb21pdW0uZ29vZ2xlc291cmNlLmNvbS9jaHJvbWl1bS9zcmMiLCAi
bGFuZ3VhZ2UiOiAibW9qb20iLCAic2lnbmF0dXJlIjogImJsaW5rLm1vam9tLkxvY2FsRnJhbWVI
b3N0LkRvY3VtZW50T25Mb2FkQ29tcGxldGVkIn19LCB7ImVuZCI6IDg2MjEzLCAiYmVnaW4iOiA4
NjE4NCwgImVkZ2UiOiAiJS9reXRoZS9lZGdlL2dlbmVyYXRlcyIsICJ0eXBlIjogImFuY2hvcl9k
ZWZpbmVzIiwgInZuYW1lIjogeyJjb3JwdXMiOiAiY2hyb21pdW0uZ29vZ2xlc291cmNlLmNvbS9j
aHJvbWl1bS9zcmMiLCAibGFuZ3VhZ2UiOiAibW9qb20iLCAic2lnbmF0dXJlIjogImJsaW5rLm1v
am9tLkxvY2FsRnJhbWVIb3N0LkZvcndhcmRSZXNvdXJjZVRpbWluZ1RvUGFyZW50In19LCB7ImVu
ZCI6IDg2Mzk2LCAiYmVnaW4iOiA4NjM2NCwgImVkZ2UiOiAiJS9reXRoZS9lZGdlL2dlbmVyYXRl
cyIsICJ0eXBlIjogImFuY2hvcl9kZWZpbmVzIiwgInZuYW1lIjogeyJjb3JwdXMiOiAiY2hyb21p
dW0uZ29vZ2xlc291cmNlLmNvbS9jaHJvbWl1bS9zcmMiLCAibGFuZ3VhZ2UiOiAibW9qb20iLCAi
c2lnbmF0dXJlIjogImJsaW5rLm1vam9tLkxvY2FsRnJhbWVIb3N0LkRpZERpc3BhdGNoRE9NQ29u
dGVudExvYWRlZEV2ZW50In19LCB7ImVuZCI6IDg2NTAyLCAiYmVnaW4iOiA4NjQ4MywgImVkZ2Ui
OiAiJS9reXRoZS9lZGdlL2dlbmVyYXRlcyIsICJ0eXBlIjogImFuY2hvcl9kZWZpbmVzIiwgInZu
YW1lIjogeyJjb3JwdXMiOiAiY2hyb21pdW0uZ29vZ2xlc291cmNlLmNvbS9jaHJvbWl1bS9zcmMi
LCAibGFuZ3VhZ2UiOiAibW9qb20iLCAic2lnbmF0dXJlIjogImJsaW5rLm1vam9tLkxvY2FsRnJh
bWVIb3N0LlJ1bk1vZGFsQWxlcnREaWFsb2cifX0sIHsiZW5kIjogODY2ODgsICJiZWdpbiI6IDg2
NjY5LCAiZWRnZSI6ICIlL2t5dGhlL2VkZ2UvZ2VuZXJhdGVzIiwgInR5cGUiOiAiYW5jaG9yX2Rl
ZmluZXMiLCAidm5hbWUiOiB7ImNvcnB1cyI6ICJjaHJvbWl1bS5nb29nbGVzb3VyY2UuY29tL2No
cm9taXVtL3NyYyIsICJsYW5ndWFnZSI6ICJtb2pvbSIsICJzaWduYXR1cmUiOiAiYmxpbmsubW9q
b20uTG9jYWxGcmFtZUhvc3QuUnVuTW9kYWxBbGVydERpYWxvZyJ9fSwgeyJlbmQiOiA4NjkxNiwg
ImJlZ2luIjogODY4OTUsICJlZGdlIjogIiUva3l0aGUvZWRnZS9nZW5lcmF0ZXMiLCAidHlwZSI6
ICJhbmNob3JfZGVmaW5lcyIsICJ2bmFtZSI6IHsiY29ycHVzIjogImNocm9taXVtLmdvb2dsZXNv
dXJjZS5jb20vY2hyb21pdW0vc3JjIiwgImxhbmd1YWdlIjogIm1vam9tIiwgInNpZ25hdHVyZSI6
ICJibGluay5tb2pvbS5Mb2NhbEZyYW1lSG9zdC5SdW5Nb2RhbENvbmZpcm1EaWFsb2cifX0sIHsi
ZW5kIjogODcxMjUsICJiZWdpbiI6IDg3MTA0LCAiZWRnZSI6ICIlL2t5dGhlL2VkZ2UvZ2VuZXJh
dGVzIiwgInR5cGUiOiAiYW5jaG9yX2RlZmluZXMiLCAidm5hbWUiOiB7ImNvcnB1cyI6ICJjaHJv
bWl1bS5nb29nbGVzb3VyY2UuY29tL2Nocm9taXVtL3NyYyIsICJsYW5ndWFnZSI6ICJtb2pvbSIs
ICJzaWduYXR1cmUiOiAiYmxpbmsubW9qb20uTG9jYWxGcmFtZUhvc3QuUnVuTW9kYWxDb25maXJt
RGlhbG9nIn19LCB7ImVuZCI6IDg3MzUzLCAiYmVnaW4iOiA4NzMzMywgImVkZ2UiOiAiJS9reXRo
ZS9lZGdlL2dlbmVyYXRlcyIsICJ0eXBlIjogImFuY2hvcl9kZWZpbmVzIiwgInZuYW1lIjogeyJj
b3JwdXMiOiAiY2hyb21pdW0uZ29vZ2xlc291cmNlLmNvbS9jaHJvbWl1bS9zcmMiLCAibGFuZ3Vh
Z2UiOiAibW9qb20iLCAic2lnbmF0dXJlIjogImJsaW5rLm1vam9tLkxvY2FsRnJhbWVIb3N0LlJ1
bk1vZGFsUHJvbXB0RGlhbG9nIn19LCB7ImVuZCI6IDg3NjIzLCAiYmVnaW4iOiA4NzYwMywgImVk
Z2UiOiAiJS9reXRoZS9lZGdlL2dlbmVyYXRlcyIsICJ0eXBlIjogImFuY2hvcl9kZWZpbmVzIiwg
InZuYW1lIjogeyJjb3JwdXMiOiAiY2hyb21pdW0uZ29vZ2xlc291cmNlLmNvbS9jaHJvbWl1bS9z
cmMiLCAibGFuZ3VhZ2UiOiAibW9qb20iLCAic2lnbmF0dXJlIjogImJsaW5rLm1vam9tLkxvY2Fs
RnJhbWVIb3N0LlJ1bk1vZGFsUHJvbXB0RGlhbG9nIn19LCB7ImVuZCI6IDg3ODkwLCAiYmVnaW4i
OiA4Nzg2OCwgImVkZ2UiOiAiJS9reXRoZS9lZGdlL2dlbmVyYXRlcyIsICJ0eXBlIjogImFuY2hv
cl9kZWZpbmVzIiwgInZuYW1lIjogeyJjb3JwdXMiOiAiY2hyb21pdW0uZ29vZ2xlc291cmNlLmNv
bS9jaHJvbWl1bS9zcmMiLCAibGFuZ3VhZ2UiOiAibW9qb20iLCAic2lnbmF0dXJlIjogImJsaW5r
Lm1vam9tLkxvY2FsRnJhbWVIb3N0LlJ1bkJlZm9yZVVubG9hZENvbmZpcm0ifX0sIHsiZW5kIjog
ODgwMzUsICJiZWdpbiI6IDg4MDEzLCAiZWRnZSI6ICIlL2t5dGhlL2VkZ2UvZ2VuZXJhdGVzIiwg
InR5cGUiOiAiYW5jaG9yX2RlZmluZXMiLCAidm5hbWUiOiB7ImNvcnB1cyI6ICJjaHJvbWl1bS5n
b29nbGVzb3VyY2UuY29tL2Nocm9taXVtL3NyYyIsICJsYW5ndWFnZSI6ICJtb2pvbSIsICJzaWdu
YXR1cmUiOiAiYmxpbmsubW9qb20uTG9jYWxGcmFtZUhvc3QuUnVuQmVmb3JlVW5sb2FkQ29uZmly
bSJ9fSwgeyJlbmQiOiA4ODE5MCwgImJlZ2luIjogODgxNzQsICJlZGdlIjogIiUva3l0aGUvZWRn
ZS9nZW5lcmF0ZXMiLCAidHlwZSI6ICJhbmNob3JfZGVmaW5lcyIsICJ2bmFtZSI6IHsiY29ycHVz
IjogImNocm9taXVtLmdvb2dsZXNvdXJjZS5jb20vY2hyb21pdW0vc3JjIiwgImxhbmd1YWdlIjog
Im1vam9tIiwgInNpZ25hdHVyZSI6ICJibGluay5tb2pvbS5Mb2NhbEZyYW1lSG9zdC5VcGRhdGVG
YXZpY29uVVJMIn19LCB7ImVuZCI6IDg4MzQyLCAiYmVnaW4iOiA4ODMzMSwgImVkZ2UiOiAiJS9r
eXRoZS9lZGdlL2dlbmVyYXRlcyIsICJ0eXBlIjogImFuY2hvcl9kZWZpbmVzIiwgInZuYW1lIjog
eyJjb3JwdXMiOiAiY2hyb21pdW0uZ29vZ2xlc291cmNlLmNvbS9jaHJvbWl1bS9zcmMiLCAibGFu
Z3VhZ2UiOiAibW9qb20iLCAic2lnbmF0dXJlIjogImJsaW5rLm1vam9tLkxvY2FsRnJhbWVIb3N0
LkRvd25sb2FkVVJMIn19LCB7ImVuZCI6IDg4NDc5LCAiYmVnaW4iOiA4ODQ1OCwgImVkZ2UiOiAi
JS9reXRoZS9lZGdlL2dlbmVyYXRlcyIsICJ0eXBlIjogImFuY2hvcl9kZWZpbmVzIiwgInZuYW1l
IjogeyJjb3JwdXMiOiAiY2hyb21pdW0uZ29vZ2xlc291cmNlLmNvbS9jaHJvbWl1bS9zcmMiLCAi
bGFuZ3VhZ2UiOiAibW9qb20iLCAic2lnbmF0dXJlIjogImJsaW5rLm1vam9tLkxvY2FsRnJhbWVI
b3N0LkZvY3VzZWRFbGVtZW50Q2hhbmdlZCJ9fSwgeyJlbmQiOiA4ODY5OSwgImJlZ2luIjogODg2
NzksICJlZGdlIjogIiUva3l0aGUvZWRnZS9nZW5lcmF0ZXMiLCAidHlwZSI6ICJhbmNob3JfZGVm
aW5lcyIsICJ2bmFtZSI6IHsiY29ycHVzIjogImNocm9taXVtLmdvb2dsZXNvdXJjZS5jb20vY2hy
b21pdW0vc3JjIiwgImxhbmd1YWdlIjogIm1vam9tIiwgInNpZ25hdHVyZSI6ICJibGluay5tb2pv
bS5Mb2NhbEZyYW1lSG9zdC5UZXh0U2VsZWN0aW9uQ2hhbmdlZCJ9fSwgeyJlbmQiOiA4ODg2Miwg
ImJlZ2luIjogODg4NDksICJlZGdlIjogIiUva3l0aGUvZWRnZS9nZW5lcmF0ZXMiLCAidHlwZSI6
ICJhbmNob3JfZGVmaW5lcyIsICJ2bmFtZSI6IHsiY29ycHVzIjogImNocm9taXVtLmdvb2dsZXNv
dXJjZS5jb20vY2hyb21pdW0vc3JjIiwgImxhbmd1YWdlIjogIm1vam9tIiwgInNpZ25hdHVyZSI6
ICJibGluay5tb2pvbS5Mb2NhbEZyYW1lSG9zdC5TaG93UG9wdXBNZW51In19LCB7ImVuZCI6IDg5
MjQ0LCAiYmVnaW4iOiA4OTIyNCwgImVkZ2UiOiAiJS9reXRoZS9lZGdlL2dlbmVyYXRlcyIsICJ0
eXBlIjogImFuY2hvcl9kZWZpbmVzIiwgInZuYW1lIjogeyJjb3JwdXMiOiAiY2hyb21pdW0uZ29v
Z2xlc291cmNlLmNvbS9jaHJvbWl1bS9zcmMiLCAibGFuZ3VhZ2UiOiAibW9qb20iLCAic2lnbmF0
dXJlIjogImJsaW5rLm1vam9tLkxvY2FsRnJhbWVIb3N0LkNyZWF0ZU5ld1BvcHVwV2lkZ2V0In19
LCB7ImVuZCI6IDg5NTkxLCAiYmVnaW4iOiA4OTU3NiwgImVkZ2UiOiAiJS9reXRoZS9lZGdlL2dl
bmVyYXRlcyIsICJ0eXBlIjogImFuY2hvcl9kZWZpbmVzIiwgInZuYW1lIjogeyJjb3JwdXMiOiAi
Y2hyb21pdW0uZ29vZ2xlc291cmNlLmNvbS9jaHJvbWl1bS9zcmMiLCAibGFuZ3VhZ2UiOiAibW9q
b20iLCAic2lnbmF0dXJlIjogImJsaW5rLm1vam9tLkxvY2FsRnJhbWVIb3N0LlNob3dDb250ZXh0
TWVudSJ9fSwgeyJlbmQiOiA4OTg1NCwgImJlZ2luIjogODk4MjQsICJlZGdlIjogIiUva3l0aGUv
ZWRnZS9nZW5lcmF0ZXMiLCAidHlwZSI6ICJhbmNob3JfZGVmaW5lcyIsICJ2bmFtZSI6IHsiY29y
cHVzIjogImNocm9taXVtLmdvb2dsZXNvdXJjZS5jb20vY2hyb21pdW0vc3JjIiwgImxhbmd1YWdl
IjogIm1vam9tIiwgInNpZ25hdHVyZSI6ICJibGluay5tb2pvbS5Mb2NhbEZyYW1lSG9zdC5EaWRM
b2FkUmVzb3VyY2VGcm9tTWVtb3J5Q2FjaGUifX0sIHsiZW5kIjogOTAxNTcsICJiZWdpbiI6IDkw
MTI4LCAiZWRnZSI6ICIlL2t5dGhlL2VkZ2UvZ2VuZXJhdGVzIiwgInR5cGUiOiAiYW5jaG9yX2Rl
ZmluZXMiLCAidm5hbWUiOiB7ImNvcnB1cyI6ICJjaHJvbWl1bS5nb29nbGVzb3VyY2UuY29tL2No
cm9taXVtL3NyYyIsICJsYW5ndWFnZSI6ICJtb2pvbSIsICJzaWduYXR1cmUiOiAiYmxpbmsubW9q
b20uTG9jYWxGcmFtZUhvc3QuRGlkQ2hhbmdlRnJhbWVPd25lclByb3BlcnRpZXMifX0sIHsiZW5k
IjogOTAzNzAsICJiZWdpbiI6IDkwMzU1LCAiZWRnZSI6ICIlL2t5dGhlL2VkZ2UvZ2VuZXJhdGVz
IiwgInR5cGUiOiAiYW5jaG9yX2RlZmluZXMiLCAidm5hbWUiOiB7ImNvcnB1cyI6ICJjaHJvbWl1
bS5nb29nbGVzb3VyY2UuY29tL2Nocm9taXVtL3NyYyIsICJsYW5ndWFnZSI6ICJtb2pvbSIsICJz
aWduYXR1cmUiOiAiYmxpbmsubW9qb20uTG9jYWxGcmFtZUhvc3QuRGlkQ2hhbmdlT3BlbmVyIn19
LCB7ImVuZCI6IDkwNTM4LCAiYmVnaW4iOiA5MDUxOCwgImVkZ2UiOiAiJS9reXRoZS9lZGdlL2dl
bmVyYXRlcyIsICJ0eXBlIjogImFuY2hvcl9kZWZpbmVzIiwgInZuYW1lIjogeyJjb3JwdXMiOiAi
Y2hyb21pdW0uZ29vZ2xlc291cmNlLmNvbS9jaHJvbWl1bS9zcmMiLCAibGFuZ3VhZ2UiOiAibW9q
b20iLCAic2lnbmF0dXJlIjogImJsaW5rLm1vam9tLkxvY2FsRnJhbWVIb3N0LkRpZENoYW5nZUZy
YW1lUG9saWN5In19LCB7ImVuZCI6IDkwNzQyLCAiYmVnaW4iOiA5MDcxNywgImVkZ2UiOiAiJS9r
eXRoZS9lZGdlL2dlbmVyYXRlcyIsICJ0eXBlIjogImFuY2hvcl9kZWZpbmVzIiwgInZuYW1lIjog
eyJjb3JwdXMiOiAiY2hyb21pdW0uZ29vZ2xlc291cmNlLmNvbS9jaHJvbWl1bS9zcmMiLCAibGFu
Z3VhZ2UiOiAibW9qb20iLCAic2lnbmF0dXJlIjogImJsaW5rLm1vam9tLkxvY2FsRnJhbWVIb3N0
LkRpZENoYW5nZUlmcmFtZUF0dHJpYnV0ZXMifX0sIHsiZW5kIjogOTEwMDAsICJiZWdpbiI6IDkw
OTcxLCAiZWRnZSI6ICIlL2t5dGhlL2VkZ2UvZ2VuZXJhdGVzIiwgInR5cGUiOiAiYW5jaG9yX2Rl
ZmluZXMiLCAidm5hbWUiOiB7ImNvcnB1cyI6ICJjaHJvbWl1bS5nb29nbGVzb3VyY2UuY29tL2No
cm9taXVtL3NyYyIsICJsYW5ndWFnZSI6ICJtb2pvbSIsICJzaWduYXR1cmUiOiAiYmxpbmsubW9q
b20uTG9jYWxGcmFtZUhvc3QuQ2FwdHVyZVBhaW50UHJldmlld09mU3ViZnJhbWUifX0sIHsiZW5k
IjogOTExNjYsICJiZWdpbiI6IDkxMTUwLCAiZWRnZSI6ICIlL2t5dGhlL2VkZ2UvZ2VuZXJhdGVz
IiwgInR5cGUiOiAiYW5jaG9yX2RlZmluZXMiLCAidm5hbWUiOiB7ImNvcnB1cyI6ICJjaHJvbWl1
bS5nb29nbGVzb3VyY2UuY29tL2Nocm9taXVtL3NyYyIsICJsYW5ndWFnZSI6ICJtb2pvbSIsICJz
aWduYXR1cmUiOiAiYmxpbmsubW9qb20uTG9jYWxGcmFtZUhvc3QuU2V0Q2xvc2VMaXN0ZW5lciJ9
fSwgeyJlbmQiOiA5MTMxNCwgImJlZ2luIjogOTEzMDgsICJlZGdlIjogIiUva3l0aGUvZWRnZS9n
ZW5lcmF0ZXMiLCAidHlwZSI6ICJhbmNob3JfZGVmaW5lcyIsICJ2bmFtZSI6IHsiY29ycHVzIjog
ImNocm9taXVtLmdvb2dsZXNvdXJjZS5jb20vY2hyb21pdW0vc3JjIiwgImxhbmd1YWdlIjogIm1v
am9tIiwgInNpZ25hdHVyZSI6ICJibGluay5tb2pvbS5Mb2NhbEZyYW1lSG9zdC5EZXRhY2gifX0s
IHsiZW5kIjogOTE0MzIsICJiZWdpbiI6IDkxNDA3LCAiZWRnZSI6ICIlL2t5dGhlL2VkZ2UvZ2Vu
ZXJhdGVzIiwgInR5cGUiOiAiYW5jaG9yX2RlZmluZXMiLCAidm5hbWUiOiB7ImNvcnB1cyI6ICJj
aHJvbWl1bS5nb29nbGVzb3VyY2UuY29tL2Nocm9taXVtL3NyYyIsICJsYW5ndWFnZSI6ICJtb2pv
bSIsICJzaWduYXR1cmUiOiAiYmxpbmsubW9qb20uTG9jYWxGcmFtZUhvc3QuR2V0S2VlcEFsaXZl
SGFuZGxlRmFjdG9yeSJ9fSwgeyJlbmQiOiA5MTU5OSwgImJlZ2luIjogOTE1NzcsICJlZGdlIjog
IiUva3l0aGUvZWRnZS9nZW5lcmF0ZXMiLCAidHlwZSI6ICJhbmNob3JfZGVmaW5lcyIsICJ2bmFt
ZSI6IHsiY29ycHVzIjogImNocm9taXVtLmdvb2dsZXNvdXJjZS5jb20vY2hyb21pdW0vc3JjIiwg
Imxhbmd1YWdlIjogIm1vam9tIiwgInNpZ25hdHVyZSI6ICJibGluay5tb2pvbS5Mb2NhbEZyYW1l
SG9zdC5EaWRBZGRNZXNzYWdlVG9Db25zb2xlIn19LCB7ImVuZCI6IDkxODc1LCAiYmVnaW4iOiA5
MTg1OSwgImVkZ2UiOiAiJS9reXRoZS9lZGdlL2dlbmVyYXRlcyIsICJ0eXBlIjogImFuY2hvcl9k
ZWZpbmVzIiwgInZuYW1lIjogeyJjb3JwdXMiOiAiY2hyb21pdW0uZ29vZ2xlc291cmNlLmNvbS9j
aHJvbWl1bS9zcmMiLCAibGFuZ3VhZ2UiOiAibW9qb20iLCAic2lnbmF0dXJlIjogImJsaW5rLm1v
am9tLkxvY2FsRnJhbWVIb3N0LkZyYW1lU2l6ZUNoYW5nZWQifX0sIHsiZW5kIjogOTIwMjQsICJi
ZWdpbiI6IDkxOTk1LCAiZWRnZSI6ICIlL2t5dGhlL2VkZ2UvZ2VuZXJhdGVzIiwgInR5cGUiOiAi
YW5jaG9yX2RlZmluZXMiLCAidm5hbWUiOiB7ImNvcnB1cyI6ICJjaHJvbWl1bS5nb29nbGVzb3Vy
Y2UuY29tL2Nocm9taXVtL3NyYyIsICJsYW5ndWFnZSI6ICJtb2pvbSIsICJzaWduYXR1cmUiOiAi
YmxpbmsubW9qb20uTG9jYWxGcmFtZUhvc3QuRGlkVXBkYXRlUHJlZmVycmVkQ29sb3JTY2hlbWUi
fX0sIHsiZW5kIjogOTIxOTYsICJiZWdpbiI6IDkyMTc3LCAiZWRnZSI6ICIlL2t5dGhlL2VkZ2Uv
Z2VuZXJhdGVzIiwgInR5cGUiOiAiYW5jaG9yX2RlZmluZXMiLCAidm5hbWUiOiB7ImNvcnB1cyI6
ICJjaHJvbWl1bS5nb29nbGVzb3VyY2UuY29tL2Nocm9taXVtL3NyYyIsICJsYW5ndWFnZSI6ICJt
b2pvbSIsICJzaWduYXR1cmUiOiAiYmxpbmsubW9qb20uTG9jYWxGcmFtZUhvc3QuRGlkSW5mZXJD
b2xvclNjaGVtZSJ9fSwgeyJlbmQiOiA5MjM1MCwgImJlZ2luIjogOTIzMzUsICJlZGdlIjogIiUv
a3l0aGUvZWRnZS9nZW5lcmF0ZXMiLCAidHlwZSI6ICJhbmNob3JfZGVmaW5lcyIsICJ2bmFtZSI6
IHsiY29ycHVzIjogImNocm9taXVtLmdvb2dsZXNvdXJjZS5jb20vY2hyb21pdW0vc3JjIiwgImxh
bmd1YWdlIjogIm1vam9tIiwgInNpZ25hdHVyZSI6ICJibGluay5tb2pvbS5Mb2NhbEZyYW1lSG9z
dC5EaWRDaGFuZ2VTcmNEb2MifX0sIHsiZW5kIjogOTI1NDksICJiZWdpbiI6IDkyNTIyLCAiZWRn
ZSI6ICIlL2t5dGhlL2VkZ2UvZ2VuZXJhdGVzIiwgInR5cGUiOiAiYW5jaG9yX2RlZmluZXMiLCAi
dm5hbWUiOiB7ImNvcnB1cyI6ICJjaHJvbWl1bS5nb29nbGVzb3VyY2UuY29tL2Nocm9taXVtL3Ny
YyIsICJsYW5ndWFnZSI6ICJtb2pvbSIsICJzaWduYXR1cmUiOiAiYmxpbmsubW9qb20uTG9jYWxG
cmFtZUhvc3QuUmVjZWl2ZWREZWxlZ2F0ZWRDYXBhYmlsaXR5In19LCB7ImVuZCI6IDkzMDE5LCAi
YmVnaW4iOiA5Mjk5MiwgImVkZ2UiOiAiJS9reXRoZS9lZGdlL2dlbmVyYXRlcyIsICJ0eXBlIjog
ImFuY2hvcl9kZWZpbmVzIiwgInZuYW1lIjogeyJjb3JwdXMiOiAiY2hyb21pdW0uZ29vZ2xlc291
cmNlLmNvbS9jaHJvbWl1bS9zcmMiLCAibGFuZ3VhZ2UiOiAibW9qb20iLCAic2lnbmF0dXJlIjog
ImJsaW5rLm1vam9tLkxvY2FsRnJhbWUuR2V0VGV4dFN1cnJvdW5kaW5nU2VsZWN0aW9uIn19LCB7
ImVuZCI6IDkzMTkyLCAiYmVnaW4iOiA5MzE3MCwgImVkZ2UiOiAiJS9reXRoZS9lZGdlL2dlbmVy
YXRlcyIsICJ0eXBlIjogImFuY2hvcl9kZWZpbmVzIiwgInZuYW1lIjogeyJjb3JwdXMiOiAiY2hy
b21pdW0uZ29vZ2xlc291cmNlLmNvbS9jaHJvbWl1bS9zcmMiLCAibGFuZ3VhZ2UiOiAibW9qb20i
LCAic2lnbmF0dXJlIjogImJsaW5rLm1vam9tLkxvY2FsRnJhbWUuU2VuZEludGVydmVudGlvblJl
cG9ydCJ9fSwgeyJlbmQiOiA5MzM1MSwgImJlZ2luIjogOTMzMjgsICJlZGdlIjogIiUva3l0aGUv
ZWRnZS9nZW5lcmF0ZXMiLCAidHlwZSI6ICJhbmNob3JfZGVmaW5lcyIsICJ2bmFtZSI6IHsiY29y
cHVzIjogImNocm9taXVtLmdvb2dsZXNvdXJjZS5jb20vY2hyb21pdW0vc3JjIiwgImxhbmd1YWdl
IjogIm1vam9tIiwgInNpZ25hdHVyZSI6ICJibGluay5tb2pvbS5Mb2NhbEZyYW1lLlNldEZyYW1l
T3duZXJQcm9wZXJ0aWVzIn19LCB7ImVuZCI6IDkzNTEyLCAiYmVnaW4iOiA5MzQ5MiwgImVkZ2Ui
OiAiJS9reXRoZS9lZGdlL2dlbmVyYXRlcyIsICJ0eXBlIjogImFuY2hvcl9kZWZpbmVzIiwgInZu
YW1lIjogeyJjb3JwdXMiOiAiY2hyb21pdW0uZ29vZ2xlc291cmNlLmNvbS9jaHJvbWl1bS9zcmMi
LCAibGFuZ3VhZ2UiOiAibW9qb20iLCAic2lnbmF0dXJlIjogImJsaW5rLm1vam9tLkxvY2FsRnJh
bWUuTm90aWZ5VXNlckFjdGl2YXRpb24ifX0sIHsiZW5kIjogOTM3MTEsICJiZWdpbiI6IDkzNjc5
LCAiZWRnZSI6ICIlL2t5dGhlL2VkZ2UvZ2VuZXJhdGVzIiwgInR5cGUiOiAiYW5jaG9yX2RlZmlu
ZXMiLCAidm5hbWUiOiB7ImNvcnB1cyI6ICJjaHJvbWl1bS5nb29nbGVzb3VyY2UuY29tL2Nocm9t
aXVtL3NyYyIsICJsYW5ndWFnZSI6ICJtb2pvbSIsICJzaWduYXR1cmUiOiAiYmxpbmsubW9qb20u
TG9jYWxGcmFtZS5Ob3RpZnlWaXJ0dWFsS2V5Ym9hcmRPdmVybGF5UmVjdCJ9fSwgeyJlbmQiOiA5
Mzg0NSwgImJlZ2luIjogOTM4MjYsICJlZGdlIjogIiUva3l0aGUvZWRnZS9nZW5lcmF0ZXMiLCAi
dHlwZSI6ICJhbmNob3JfZGVmaW5lcyIsICJ2bmFtZSI6IHsiY29ycHVzIjogImNocm9taXVtLmdv
b2dsZXNvdXJjZS5jb20vY2hyb21pdW0vc3JjIiwgImxhbmd1YWdlIjogIm1vam9tIiwgInNpZ25h
dHVyZSI6ICJibGluay5tb2pvbS5Mb2NhbEZyYW1lLkFkZE1lc3NhZ2VUb0NvbnNvbGUifX0sIHsi
ZW5kIjogOTQwNDQsICJiZWdpbiI6IDk0MDI3LCAiZWRnZSI6ICIlL2t5dGhlL2VkZ2UvZ2VuZXJh
dGVzIiwgInR5cGUiOiAiYW5jaG9yX2RlZmluZXMiLCAidm5hbWUiOiB7ImNvcnB1cyI6ICJjaHJv
bWl1bS5nb29nbGVzb3VyY2UuY29tL2Nocm9taXVtL3NyYyIsICJsYW5ndWFnZSI6ICJtb2pvbSIs
ICJzaWduYXR1cmUiOiAiYmxpbmsubW9qb20uTG9jYWxGcmFtZS5BZGRJbnNwZWN0b3JJc3N1ZSJ9
fSwgeyJlbmQiOiA5NDE5MSwgImJlZ2luIjogOTQxNzQsICJlZGdlIjogIiUva3l0aGUvZWRnZS9n
ZW5lcmF0ZXMiLCAidHlwZSI6ICJhbmNob3JfZGVmaW5lcyIsICJ2bmFtZSI6IHsiY29ycHVzIjog
ImNocm9taXVtLmdvb2dsZXNvdXJjZS5jb20vY2hyb21pdW0vc3JjIiwgImxhbmd1YWdlIjogIm1v
am9tIiwgInNpZ25hdHVyZSI6ICJibGluay5tb2pvbS5Mb2NhbEZyYW1lLlN3YXBJbkltbWVkaWF0
ZWx5In19LCB7ImVuZCI6IDk0MjgzLCAiYmVnaW4iOiA5NDI2OSwgImVkZ2UiOiAiJS9reXRoZS9l
ZGdlL2dlbmVyYXRlcyIsICJ0eXBlIjogImFuY2hvcl9kZWZpbmVzIiwgInZuYW1lIjogeyJjb3Jw
dXMiOiAiY2hyb21pdW0uZ29vZ2xlc291cmNlLmNvbS9jaHJvbWl1bS9zcmMiLCAibGFuZ3VhZ2Ui
OiAibW9qb20iLCAic2lnbmF0dXJlIjogImJsaW5rLm1vam9tLkxvY2FsRnJhbWUuQ2hlY2tDb21w
bGV0ZWQifX0sIHsiZW5kIjogOTQzNjksICJiZWdpbiI6IDk0MzU4LCAiZWRnZSI6ICIlL2t5dGhl
L2VkZ2UvZ2VuZXJhdGVzIiwgInR5cGUiOiAiYW5jaG9yX2RlZmluZXMiLCAidm5hbWUiOiB7ImNv
cnB1cyI6ICJjaHJvbWl1bS5nb29nbGVzb3VyY2UuY29tL2Nocm9taXVtL3NyYyIsICJsYW5ndWFn
ZSI6ICJtb2pvbSIsICJzaWduYXR1cmUiOiAiYmxpbmsubW9qb20uTG9jYWxGcmFtZS5TdG9wTG9h
ZGluZyJ9fSwgeyJlbmQiOiA5NDQ0OSwgImJlZ2luIjogOTQ0NDEsICJlZGdlIjogIiUva3l0aGUv
ZWRnZS9nZW5lcmF0ZXMiLCAidHlwZSI6ICJhbmNob3JfZGVmaW5lcyIsICJ2bmFtZSI6IHsiY29y
cHVzIjogImNocm9taXVtLmdvb2dsZXNvdXJjZS5jb20vY2hyb21pdW0vc3JjIiwgImxhbmd1YWdl
IjogIm1vam9tIiwgInNpZ25hdHVyZSI6ICJibGluay5tb2pvbS5Mb2NhbEZyYW1lLkNvbGxhcHNl
In19LCB7ImVuZCI6IDk0NTY3LCAiYmVnaW4iOiA5NDU0NywgImVkZ2UiOiAiJS9reXRoZS9lZGdl
L2dlbmVyYXRlcyIsICJ0eXBlIjogImFuY2hvcl9kZWZpbmVzIiwgInZuYW1lIjogeyJjb3JwdXMi
OiAiY2hyb21pdW0uZ29vZ2xlc291cmNlLmNvbS9jaHJvbWl1bS9zcmMiLCAibGFuZ3VhZ2UiOiAi
bW9qb20iLCAic2lnbmF0dXJlIjogImJsaW5rLm1vam9tLkxvY2FsRnJhbWUuRW5hYmxlVmlld1Nv
dXJjZU1vZGUifX0sIHsiZW5kIjogOTQ2NDEsICJiZWdpbiI6IDk0NjM2LCAiZWRnZSI6ICIlL2t5
dGhlL2VkZ2UvZ2VuZXJhdGVzIiwgInR5cGUiOiAiYW5jaG9yX2RlZmluZXMiLCAidm5hbWUiOiB7
ImNvcnB1cyI6ICJjaHJvbWl1bS5nb29nbGVzb3VyY2UuY29tL2Nocm9taXVtL3NyYyIsICJsYW5n
dWFnZSI6ICJtb2pvbSIsICJzaWduYXR1cmUiOiAiYmxpbmsubW9qb20uTG9jYWxGcmFtZS5Gb2N1
cyJ9fSwgeyJlbmQiOiA5NDc0MywgImJlZ2luIjogOTQ3MjQsICJlZGdlIjogIiUva3l0aGUvZWRn
ZS9nZW5lcmF0ZXMiLCAidHlwZSI6ICJhbmNob3JfZGVmaW5lcyIsICJ2bmFtZSI6IHsiY29ycHVz
IjogImNocm9taXVtLmdvb2dsZXNvdXJjZS5jb20vY2hyb21pdW0vc3JjIiwgImxhbmd1YWdlIjog
Im1vam9tIiwgInNpZ25hdHVyZSI6ICJibGluay5tb2pvbS5Mb2NhbEZyYW1lLkNsZWFyRm9jdXNl
ZEVsZW1lbnQifX0sIHsiZW5kIjogOTQ4NjksICJiZWdpbiI6IDk0ODM4LCAiZWRnZSI6ICIlL2t5
dGhlL2VkZ2UvZ2VuZXJhdGVzIiwgInR5cGUiOiAiYW5jaG9yX2RlZmluZXMiLCAidm5hbWUiOiB7
ImNvcnB1cyI6ICJjaHJvbWl1bS5nb29nbGVzb3VyY2UuY29tL2Nocm9taXVtL3NyYyIsICJsYW5n
dWFnZSI6ICJtb2pvbSIsICJzaWduYXR1cmUiOiAiYmxpbmsubW9qb20uTG9jYWxGcmFtZS5HZXRS
ZXNvdXJjZVNuYXBzaG90Rm9yV2ViQnVuZGxlIn19LCB7ImVuZCI6IDk1MDQ3LCAiYmVnaW4iOiA5
NTAzNiwgImVkZ2UiOiAiJS9reXRoZS9lZGdlL2dlbmVyYXRlcyIsICJ0eXBlIjogImFuY2hvcl9k
ZWZpbmVzIiwgInZuYW1lIjogeyJjb3JwdXMiOiAiY2hyb21pdW0uZ29vZ2xlc291cmNlLmNvbS9j
aHJvbWl1bS9zcmMiLCAibGFuZ3VhZ2UiOiAibW9qb20iLCAic2lnbmF0dXJlIjogImJsaW5rLm1v
am9tLkxvY2FsRnJhbWUuQ29weUltYWdlQXQifX0sIHsiZW5kIjogOTUxNjUsICJiZWdpbiI6IDk1
MTU0LCAiZWRnZSI6ICIlL2t5dGhlL2VkZ2UvZ2VuZXJhdGVzIiwgInR5cGUiOiAiYW5jaG9yX2Rl
ZmluZXMiLCAidm5hbWUiOiB7ImNvcnB1cyI6ICJjaHJvbWl1bS5nb29nbGVzb3VyY2UuY29tL2No
cm9taXVtL3NyYyIsICJsYW5ndWFnZSI6ICJtb2pvbSIsICJzaWduYXR1cmUiOiAiYmxpbmsubW9q
b20uTG9jYWxGcmFtZS5TYXZlSW1hZ2VBdCJ9fSwgeyJlbmQiOiA5NTMwNywgImJlZ2luIjogOTUy
ODQsICJlZGdlIjogIiUva3l0aGUvZWRnZS9nZW5lcmF0ZXMiLCAidHlwZSI6ICJhbmNob3JfZGVm
aW5lcyIsICJ2bmFtZSI6IHsiY29ycHVzIjogImNocm9taXVtLmdvb2dsZXNvdXJjZS5jb20vY2hy
b21pdW0vc3JjIiwgImxhbmd1YWdlIjogIm1vam9tIiwgInNpZ25hdHVyZSI6ICJibGluay5tb2pv
bS5Mb2NhbEZyYW1lLlJlcG9ydEJsaW5rRmVhdHVyZVVzYWdlIn19LCB7ImVuZCI6IDk1NDc1LCAi
YmVnaW4iOiA5NTQ1NCwgImVkZ2UiOiAiJS9reXRoZS9lZGdlL2dlbmVyYXRlcyIsICJ0eXBlIjog
ImFuY2hvcl9kZWZpbmVzIiwgInZuYW1lIjogeyJjb3JwdXMiOiAiY2hyb21pdW0uZ29vZ2xlc291
cmNlLmNvbS9jaHJvbWl1bS9zcmMiLCAibGFuZ3VhZ2UiOiAibW9qb20iLCAic2lnbmF0dXJlIjog
ImJsaW5rLm1vam9tLkxvY2FsRnJhbWUuUmVuZGVyRmFsbGJhY2tDb250ZW50In19LCB7ImVuZCI6
IDk1NjE3LCAiYmVnaW4iOiA5NTU3OCwgImVkZ2UiOiAiJS9reXRoZS9lZGdlL2dlbmVyYXRlcyIs
ICJ0eXBlIjogImFuY2hvcl9kZWZpbmVzIiwgInZuYW1lIjogeyJjb3JwdXMiOiAiY2hyb21pdW0u
Z29vZ2xlc291cmNlLmNvbS9jaHJvbWl1bS9zcmMiLCAibGFuZ3VhZ2UiOiAibW9qb20iLCAic2ln
bmF0dXJlIjogImJsaW5rLm1vam9tLkxvY2FsRnJhbWUuUmVuZGVyRmFsbGJhY2tDb250ZW50V2l0
aFJlc291cmNlVGltaW5nIn19LCB7ImVuZCI6IDk1Nzk2LCAiYmVnaW4iOiA5NTc4NCwgImVkZ2Ui
OiAiJS9reXRoZS9lZGdlL2dlbmVyYXRlcyIsICJ0eXBlIjogImFuY2hvcl9kZWZpbmVzIiwgInZu
YW1lIjogeyJjb3JwdXMiOiAiY2hyb21pdW0uZ29vZ2xlc291cmNlLmNvbS9jaHJvbWl1bS9zcmMi
LCAibGFuZ3VhZ2UiOiAibW9qb20iLCAic2lnbmF0dXJlIjogImJsaW5rLm1vam9tLkxvY2FsRnJh
bWUuQmVmb3JlVW5sb2FkIn19LCB7ImVuZCI6IDk1OTQzLCAiYmVnaW4iOiA5NTkyNCwgImVkZ2Ui
OiAiJS9reXRoZS9lZGdlL2dlbmVyYXRlcyIsICJ0eXBlIjogImFuY2hvcl9kZWZpbmVzIiwgInZu
YW1lIjogeyJjb3JwdXMiOiAiY2hyb21pdW0uZ29vZ2xlc291cmNlLmNvbS9jaHJvbWl1bS9zcmMi
LCAibGFuZ3VhZ2UiOiAibW9qb20iLCAic2lnbmF0dXJlIjogImJsaW5rLm1vam9tLkxvY2FsRnJh
bWUuTWVkaWFQbGF5ZXJBY3Rpb25BdCJ9fSwgeyJlbmQiOiA5NjExNSwgImJlZ2luIjogOTYxMDEs
ICJlZGdlIjogIiUva3l0aGUvZWRnZS9nZW5lcmF0ZXMiLCAidHlwZSI6ICJhbmNob3JfZGVmaW5l
cyIsICJ2bmFtZSI6IHsiY29ycHVzIjogImNocm9taXVtLmdvb2dsZXNvdXJjZS5jb20vY2hyb21p
dW0vc3JjIiwgImxhbmd1YWdlIjogIm1vam9tIiwgInNpZ25hdHVyZSI6ICJibGluay5tb2pvbS5M
b2NhbEZyYW1lLlBsdWdpbkFjdGlvbkF0In19LCB7ImVuZCI6IDk2MjcwLCAiYmVnaW4iOiA5NjI1
MSwgImVkZ2UiOiAiJS9reXRoZS9lZGdlL2dlbmVyYXRlcyIsICJ0eXBlIjogImFuY2hvcl9kZWZp
bmVzIiwgInZuYW1lIjogeyJjb3JwdXMiOiAiY2hyb21pdW0uZ29vZ2xlc291cmNlLmNvbS9jaHJv
bWl1bS9zcmMiLCAibGFuZ3VhZ2UiOiAibW9qb20iLCAic2lnbmF0dXJlIjogImJsaW5rLm1vam9t
LkxvY2FsRnJhbWUuQWR2YW5jZUZvY3VzSW5GcmFtZSJ9fSwgeyJlbmQiOiA5NjQ4MiwgImJlZ2lu
IjogOTY0NjQsICJlZGdlIjogIiUva3l0aGUvZWRnZS9nZW5lcmF0ZXMiLCAidHlwZSI6ICJhbmNo
b3JfZGVmaW5lcyIsICJ2bmFtZSI6IHsiY29ycHVzIjogImNocm9taXVtLmdvb2dsZXNvdXJjZS5j
b20vY2hyb21pdW0vc3JjIiwgImxhbmd1YWdlIjogIm1vam9tIiwgInNpZ25hdHVyZSI6ICJibGlu
ay5tb2pvbS5Mb2NhbEZyYW1lLkFkdmFuY2VGb2N1c0ZvcklNRSJ9fSwgeyJlbmQiOiA5NjY2MSwg
ImJlZ2luIjogOTY2MjUsICJlZGdlIjogIiUva3l0aGUvZWRnZS9nZW5lcmF0ZXMiLCAidHlwZSI6
ICJhbmNob3JfZGVmaW5lcyIsICJ2bmFtZSI6IHsiY29ycHVzIjogImNocm9taXVtLmdvb2dsZXNv
dXJjZS5jb20vY2hyb21pdW0vc3JjIiwgImxhbmd1YWdlIjogIm1vam9tIiwgInNpZ25hdHVyZSI6
ICJibGluay5tb2pvbS5Mb2NhbEZyYW1lLlJlcG9ydENvbnRlbnRTZWN1cml0eVBvbGljeVZpb2xh
dGlvbiJ9fSwgeyJlbmQiOiA5NjgxNSwgImJlZ2luIjogOTY3OTUsICJlZGdlIjogIiUva3l0aGUv
ZWRnZS9nZW5lcmF0ZXMiLCAidHlwZSI6ICJhbmNob3JfZGVmaW5lcyIsICJ2bmFtZSI6IHsiY29y
cHVzIjogImNocm9taXVtLmdvb2dsZXNvdXJjZS5jb20vY2hyb21pdW0vc3JjIiwgImxhbmd1YWdl
IjogIm1vam9tIiwgInNpZ25hdHVyZSI6ICJibGluay5tb2pvbS5Mb2NhbEZyYW1lLkRpZFVwZGF0
ZUZyYW1lUG9saWN5In19LCB7ImVuZCI6IDk2OTUxLCAiYmVnaW4iOiA5NjkzNSwgImVkZ2UiOiAi
JS9reXRoZS9lZGdlL2dlbmVyYXRlcyIsICJ0eXBlIjogImFuY2hvcl9kZWZpbmVzIiwgInZuYW1l
IjogeyJjb3JwdXMiOiAiY2hyb21pdW0uZ29vZ2xlc291cmNlLmNvbS9jaHJvbWl1bS9zcmMiLCAi
bGFuZ3VhZ2UiOiAibW9qb20iLCAic2lnbmF0dXJlIjogImJsaW5rLm1vam9tLkxvY2FsRnJhbWUu
UG9zdE1lc3NhZ2VFdmVudCJ9fSwgeyJlbmQiOiA5NzI1NywgImJlZ2luIjogOTcyMjcsICJlZGdl
IjogIiUva3l0aGUvZWRnZS9nZW5lcmF0ZXMiLCAidHlwZSI6ICJhbmNob3JfZGVmaW5lcyIsICJ2
bmFtZSI6IHsiY29ycHVzIjogImNocm9taXVtLmdvb2dsZXNvdXJjZS5jb20vY2hyb21pdW0vc3Jj
IiwgImxhbmd1YWdlIjogIm1vam9tIiwgInNpZ25hdHVyZSI6ICJibGluay5tb2pvbS5Mb2NhbEZy
YW1lLkphdmFTY3JpcHRNZXRob2RFeGVjdXRlUmVxdWVzdCJ9fSwgeyJlbmQiOiA5NzUzNCwgImJl
Z2luIjogOTc1MTAsICJlZGdlIjogIiUva3l0aGUvZWRnZS9nZW5lcmF0ZXMiLCAidHlwZSI6ICJh
bmNob3JfZGVmaW5lcyIsICJ2bmFtZSI6IHsiY29ycHVzIjogImNocm9taXVtLmdvb2dsZXNvdXJj
ZS5jb20vY2hyb21pdW0vc3JjIiwgImxhbmd1YWdlIjogIm1vam9tIiwgInNpZ25hdHVyZSI6ICJi
bGluay5tb2pvbS5Mb2NhbEZyYW1lLkphdmFTY3JpcHRFeGVjdXRlUmVxdWVzdCJ9fSwgeyJlbmQi
OiA5Nzc1NSwgImJlZ2luIjogOTc3MjMsICJlZGdlIjogIiUva3l0aGUvZWRnZS9nZW5lcmF0ZXMi
LCAidHlwZSI6ICJhbmNob3JfZGVmaW5lcyIsICJ2bmFtZSI6IHsiY29ycHVzIjogImNocm9taXVt
Lmdvb2dsZXNvdXJjZS5jb20vY2hyb21pdW0vc3JjIiwgImxhbmd1YWdlIjogIm1vam9tIiwgInNp
Z25hdHVyZSI6ICJibGluay5tb2pvbS5Mb2NhbEZyYW1lLkphdmFTY3JpcHRFeGVjdXRlUmVxdWVz
dEZvclRlc3RzIn19LCB7ImVuZCI6IDk4MDQzLCAiYmVnaW4iOiA5ODAwNCwgImVkZ2UiOiAiJS9r
eXRoZS9lZGdlL2dlbmVyYXRlcyIsICJ0eXBlIjogImFuY2hvcl9kZWZpbmVzIiwgInZuYW1lIjog
eyJjb3JwdXMiOiAiY2hyb21pdW0uZ29vZ2xlc291cmNlLmNvbS9jaHJvbWl1bS9zcmMiLCAibGFu
Z3VhZ2UiOiAibW9qb20iLCAic2lnbmF0dXJlIjogImJsaW5rLm1vam9tLkxvY2FsRnJhbWUuSmF2
YVNjcmlwdEV4ZWN1dGVSZXF1ZXN0SW5Jc29sYXRlZFdvcmxkIn19LCB7ImVuZCI6IDk4Mjc1LCAi
YmVnaW4iOiA5ODI1NCwgImVkZ2UiOiAiJS9reXRoZS9lZGdlL2dlbmVyYXRlcyIsICJ0eXBlIjog
ImFuY2hvcl9kZWZpbmVzIiwgInZuYW1lIjogeyJjb3JwdXMiOiAiY2hyb21pdW0uZ29vZ2xlc291
cmNlLmNvbS9jaHJvbWl1bS9zcmMiLCAibGFuZ3VhZ2UiOiAibW9qb20iLCAic2lnbmF0dXJlIjog
ImJsaW5rLm1vam9tLkxvY2FsRnJhbWUuQmluZFJlcG9ydGluZ09ic2VydmVyIn19LCB7ImVuZCI6
IDk4NDM3LCAiYmVnaW4iOiA5ODQyNSwgImVkZ2UiOiAiJS9reXRoZS9lZGdlL2dlbmVyYXRlcyIs
ICJ0eXBlIjogImFuY2hvcl9kZWZpbmVzIiwgInZuYW1lIjogeyJjb3JwdXMiOiAiY2hyb21pdW0u
Z29vZ2xlc291cmNlLmNvbS9jaHJvbWl1bS9zcmMiLCAibGFuZ3VhZ2UiOiAibW9qb20iLCAic2ln
bmF0dXJlIjogImJsaW5rLm1vam9tLkxvY2FsRnJhbWUuVXBkYXRlT3BlbmVyIn19LCB7ImVuZCI6
IDk4NjA4LCAiYmVnaW4iOiA5ODU4NSwgImVkZ2UiOiAiJS9reXRoZS9lZGdlL2dlbmVyYXRlcyIs
ICJ0eXBlIjogImFuY2hvcl9kZWZpbmVzIiwgInZuYW1lIjogeyJjb3JwdXMiOiAiY2hyb21pdW0u
Z29vZ2xlc291cmNlLmNvbS9jaHJvbWl1bS9zcmMiLCAibGFuZ3VhZ2UiOiAibW9qb20iLCAic2ln
bmF0dXJlIjogImJsaW5rLm1vam9tLkxvY2FsRnJhbWUuR2V0U2F2YWJsZVJlc291cmNlTGlua3Mi
fX0sIHsiZW5kIjogOTg3NDYsICJiZWdpbiI6IDk4NzI5LCAiZWRnZSI6ICIlL2t5dGhlL2VkZ2Uv
Z2VuZXJhdGVzIiwgInR5cGUiOiAiYW5jaG9yX2RlZmluZXMiLCAidm5hbWUiOiB7ImNvcnB1cyI6
ICJjaHJvbWl1bS5nb29nbGVzb3VyY2UuY29tL2Nocm9taXVtL3NyYyIsICJsYW5ndWFnZSI6ICJt
b2pvbSIsICJzaWduYXR1cmUiOiAiYmxpbmsubW9qb20uTG9jYWxGcmFtZS5NaXhlZENvbnRlbnRG
b3VuZCJ9fSwgeyJlbmQiOiA5OTEyMSwgImJlZ2luIjogOTkxMDQsICJlZGdlIjogIiUva3l0aGUv
ZWRnZS9nZW5lcmF0ZXMiLCAidHlwZSI6ICJhbmNob3JfZGVmaW5lcyIsICJ2bmFtZSI6IHsiY29y
cHVzIjogImNocm9taXVtLmdvb2dsZXNvdXJjZS5jb20vY2hyb21pdW0vc3JjIiwgImxhbmd1YWdl
IjogIm1vam9tIiwgInNpZ25hdHVyZSI6ICJibGluay5tb2pvbS5Mb2NhbEZyYW1lLkJpbmREZXZU
b29sc0FnZW50In19LCB7ImVuZCI6IDk5Mzg4LCAiYmVnaW4iOiA5OTM2OCwgImVkZ2UiOiAiJS9r
eXRoZS9lZGdlL2dlbmVyYXRlcyIsICJ0eXBlIjogImFuY2hvcl9kZWZpbmVzIiwgInZuYW1lIjog
eyJjb3JwdXMiOiAiY2hyb21pdW0uZ29vZ2xlc291cmNlLmNvbS9jaHJvbWl1bS9zcmMiLCAibGFu
Z3VhZ2UiOiAibW9qb20iLCAic2lnbmF0dXJlIjogImJsaW5rLm1vam9tLkxvY2FsRnJhbWUuRXh0
cmFjdFNtYXJ0Q2xpcERhdGEifX0sIHsiZW5kIjogOTk1NTgsICJiZWdpbiI6IDk5NTM2LCAiZWRn
ZSI6ICIlL2t5dGhlL2VkZ2UvZ2VuZXJhdGVzIiwgInR5cGUiOiAiYW5jaG9yX2RlZmluZXMiLCAi
dm5hbWUiOiB7ImNvcnB1cyI6ICJjaHJvbWl1bS5nb29nbGVzb3VyY2UuY29tL2Nocm9taXVtL3Ny
YyIsICJsYW5ndWFnZSI6ICJtb2pvbSIsICJzaWduYXR1cmUiOiAiYmxpbmsubW9qb20uTG9jYWxG
cmFtZS5IYW5kbGVSZW5kZXJlckRlYnVnVVJMIn19LCB7ImVuZCI6IDk5Njk2LCAiYmVnaW4iOiA5
OTY3MSwgImVkZ2UiOiAiJS9reXRoZS9lZGdlL2dlbmVyYXRlcyIsICJ0eXBlIjogImFuY2hvcl9k
ZWZpbmVzIiwgInZuYW1lIjogeyJjb3JwdXMiOiAiY2hyb21pdW0uZ29vZ2xlc291cmNlLmNvbS9j
aHJvbWl1bS9zcmMiLCAibGFuZ3VhZ2UiOiAibW9qb20iLCAic2lnbmF0dXJlIjogImJsaW5rLm1v
am9tLkxvY2FsRnJhbWUuR2V0Q2Fub25pY2FsVXJsRm9yU2hhcmluZyJ9fSwgeyJlbmQiOiA5OTg0
MiwgImJlZ2luIjogOTk4MjIsICJlZGdlIjogIiUva3l0aGUvZWRnZS9nZW5lcmF0ZXMiLCAidHlw
ZSI6ICJhbmNob3JfZGVmaW5lcyIsICJ2bmFtZSI6IHsiY29ycHVzIjogImNocm9taXVtLmdvb2ds
ZXNvdXJjZS5jb20vY2hyb21pdW0vc3JjIiwgImxhbmd1YWdlIjogIm1vam9tIiwgInNpZ25hdHVy
ZSI6ICJibGluay5tb2pvbS5Mb2NhbEZyYW1lLkdldE9wZW5HcmFwaE1ldGFkYXRhIn19LCB7ImVu
ZCI6IDEwMDAyMywgImJlZ2luIjogOTk5ODMsICJlZGdlIjogIiUva3l0aGUvZWRnZS9nZW5lcmF0
ZXMiLCAidHlwZSI6ICJhbmNob3JfZGVmaW5lcyIsICJ2bmFtZSI6IHsiY29ycHVzIjogImNocm9t
aXVtLmdvb2dsZXNvdXJjZS5jb20vY2hyb21pdW0vc3JjIiwgImxhbmd1YWdlIjogIm1vam9tIiwg
InNpZ25hdHVyZSI6ICJibGluay5tb2pvbS5Mb2NhbEZyYW1lLlNldE5hdmlnYXRpb25BcGlIaXN0
b3J5RW50cmllc0ZvclJlc3RvcmUifX0sIHsiZW5kIjogMTAwNTU4LCAiYmVnaW4iOiAxMDA1Mzgs
ICJlZGdlIjogIiUva3l0aGUvZWRnZS9nZW5lcmF0ZXMiLCAidHlwZSI6ICJhbmNob3JfZGVmaW5l
cyIsICJ2bmFtZSI6IHsiY29ycHVzIjogImNocm9taXVtLmdvb2dsZXNvdXJjZS5jb20vY2hyb21p
dW0vc3JjIiwgImxhbmd1YWdlIjogIm1vam9tIiwgInNpZ25hdHVyZSI6ICJibGluay5tb2pvbS5I
aWdoUHJpb3JpdHlMb2NhbEZyYW1lLkRpc3BhdGNoQmVmb3JlVW5sb2FkIn19LCB7ImVuZCI6IDEw
MTA1OCwgImJlZ2luIjogMTAxMDI2LCAiZWRnZSI6ICIlL2t5dGhlL2VkZ2UvZ2VuZXJhdGVzIiwg
InR5cGUiOiAiYW5jaG9yX2RlZmluZXMiLCAidm5hbWUiOiB7ImNvcnB1cyI6ICJjaHJvbWl1bS5n
b29nbGVzb3VyY2UuY29tL2Nocm9taXVtL3NyYyIsICJsYW5ndWFnZSI6ICJtb2pvbSIsICJzaWdu
YXR1cmUiOiAiYmxpbmsubW9qb20uUmVtb3RlRnJhbWVIb3N0LlNldEluaGVyaXRlZEVmZmVjdGl2
ZVRvdWNoQWN0aW9uIn19LCB7ImVuZCI6IDEwMTIxMywgImJlZ2luIjogMTAxMTg1LCAiZWRnZSI6
ICIlL2t5dGhlL2VkZ2UvZ2VuZXJhdGVzIiwgInR5cGUiOiAiYW5jaG9yX2RlZmluZXMiLCAidm5h
bWUiOiB7ImNvcnB1cyI6ICJjaHJvbWl1bS5nb29nbGVzb3VyY2UuY29tL2Nocm9taXVtL3NyYyIs
ICJsYW5ndWFnZSI6ICJtb2pvbSIsICJzaWduYXR1cmUiOiAiYmxpbmsubW9qb20uUmVtb3RlRnJh
bWVIb3N0LlVwZGF0ZVJlbmRlclRocm90dGxpbmdTdGF0dXMifX0sIHsiZW5kIjogMTAxMzc4LCAi
YmVnaW4iOiAxMDEzNjEsICJlZGdlIjogIiUva3l0aGUvZWRnZS9nZW5lcmF0ZXMiLCAidHlwZSI6
ICJhbmNob3JfZGVmaW5lcyIsICJ2bmFtZSI6IHsiY29ycHVzIjogImNocm9taXVtLmdvb2dsZXNv
dXJjZS5jb20vY2hyb21pdW0vc3JjIiwgImxhbmd1YWdlIjogIm1vam9tIiwgInNpZ25hdHVyZSI6
ICJibGluay5tb2pvbS5SZW1vdGVGcmFtZUhvc3QuVmlzaWJpbGl0eUNoYW5nZWQifX0sIHsiZW5k
IjogMTAxNTIyLCAiYmVnaW4iOiAxMDE1MDksICJlZGdlIjogIiUva3l0aGUvZWRnZS9nZW5lcmF0
ZXMiLCAidHlwZSI6ICJhbmNob3JfZGVmaW5lcyIsICJ2bmFtZSI6IHsiY29ycHVzIjogImNocm9t
aXVtLmdvb2dsZXNvdXJjZS5jb20vY2hyb21pdW0vc3JjIiwgImxhbmd1YWdlIjogIm1vam9tIiwg
InNpZ25hdHVyZSI6ICJibGluay5tb2pvbS5SZW1vdGVGcmFtZUhvc3QuRGlkRm9jdXNGcmFtZSJ9
fSwgeyJlbmQiOiAxMDE2MTksICJiZWdpbiI6IDEwMTYwNSwgImVkZ2UiOiAiJS9reXRoZS9lZGdl
L2dlbmVyYXRlcyIsICJ0eXBlIjogImFuY2hvcl9kZWZpbmVzIiwgInZuYW1lIjogeyJjb3JwdXMi
OiAiY2hyb21pdW0uZ29vZ2xlc291cmNlLmNvbS9jaHJvbWl1bS9zcmMiLCAibGFuZ3VhZ2UiOiAi
bW9qb20iLCAic2lnbmF0dXJlIjogImJsaW5rLm1vam9tLlJlbW90ZUZyYW1lSG9zdC5DaGVja0Nv
bXBsZXRlZCJ9fSwgeyJlbmQiOiAxMDE3NzAsICJiZWdpbiI6IDEwMTcyOSwgImVkZ2UiOiAiJS9r
eXRoZS9lZGdlL2dlbmVyYXRlcyIsICJ0eXBlIjogImFuY2hvcl9kZWZpbmVzIiwgInZuYW1lIjog
eyJjb3JwdXMiOiAiY2hyb21pdW0uZ29vZ2xlc291cmNlLmNvbS9jaHJvbWl1bS9zcmMiLCAibGFu
Z3VhZ2UiOiAibW9qb20iLCAic2lnbmF0dXJlIjogImJsaW5rLm1vam9tLlJlbW90ZUZyYW1lSG9z
dC5DYXB0dXJlUGFpbnRQcmV2aWV3T2ZDcm9zc1Byb2Nlc3NTdWJmcmFtZSJ9fSwgeyJlbmQiOiAx
MDE5MjUsICJiZWdpbiI6IDEwMTkxNSwgImVkZ2UiOiAiJS9reXRoZS9lZGdlL2dlbmVyYXRlcyIs
ICJ0eXBlIjogImFuY2hvcl9kZWZpbmVzIiwgInZuYW1lIjogeyJjb3JwdXMiOiAiY2hyb21pdW0u
Z29vZ2xlc291cmNlLmNvbS9jaHJvbWl1bS9zcmMiLCAibGFuZ3VhZ2UiOiAibW9qb20iLCAic2ln
bmF0dXJlIjogImJsaW5rLm1vam9tLlJlbW90ZUZyYW1lSG9zdC5TZXRJc0luZXJ0In19LCB7ImVu
ZCI6IDEwMjAzNCwgImJlZ2luIjogMTAyMDE5LCAiZWRnZSI6ICIlL2t5dGhlL2VkZ2UvZ2VuZXJh
dGVzIiwgInR5cGUiOiAiYW5jaG9yX2RlZmluZXMiLCAidm5hbWUiOiB7ImNvcnB1cyI6ICJjaHJv
bWl1bS5nb29nbGVzb3VyY2UuY29tL2Nocm9taXVtL3NyYyIsICJsYW5ndWFnZSI6ICJtb2pvbSIs
ICJzaWduYXR1cmUiOiAiYmxpbmsubW9qb20uUmVtb3RlRnJhbWVIb3N0LkRpZENoYW5nZU9wZW5l
ciJ9fSwgeyJlbmQiOiAxMDIxODcsICJiZWdpbiI6IDEwMjE3NSwgImVkZ2UiOiAiJS9reXRoZS9l
ZGdlL2dlbmVyYXRlcyIsICJ0eXBlIjogImFuY2hvcl9kZWZpbmVzIiwgInZuYW1lIjogeyJjb3Jw
dXMiOiAiY2hyb21pdW0uZ29vZ2xlc291cmNlLmNvbS9jaHJvbWl1bS9zcmMiLCAibGFuZ3VhZ2Ui
OiAibW9qb20iLCAic2lnbmF0dXJlIjogImJsaW5rLm1vam9tLlJlbW90ZUZyYW1lSG9zdC5BZHZh
bmNlRm9jdXMifX0sIHsiZW5kIjogMTAyMzg1LCAiYmVnaW4iOiAxMDIzNjgsICJlZGdlIjogIiUv
a3l0aGUvZWRnZS9nZW5lcmF0ZXMiLCAidHlwZSI6ICJhbmNob3JfZGVmaW5lcyIsICJ2bmFtZSI6
IHsiY29ycHVzIjogImNocm9taXVtLmdvb2dsZXNvdXJjZS5jb20vY2hyb21pdW0vc3JjIiwgImxh
bmd1YWdlIjogIm1vam9tIiwgInNpZ25hdHVyZSI6ICJibGluay5tb2pvbS5SZW1vdGVGcmFtZUhv
c3QuUm91dGVNZXNzYWdlRXZlbnQifX0sIHsiZW5kIjogMTAyNjg1LCAiYmVnaW4iOiAxMDI2NjAs
ICJlZGdlIjogIiUva3l0aGUvZWRnZS9nZW5lcmF0ZXMiLCAidHlwZSI6ICJhbmNob3JfZGVmaW5l
cyIsICJ2bmFtZSI6IHsiY29ycHVzIjogImNocm9taXVtLmdvb2dsZXNvdXJjZS5jb20vY2hyb21p
dW0vc3JjIiwgImxhbmd1YWdlIjogIm1vam9tIiwgInNpZ25hdHVyZSI6ICJibGluay5tb2pvbS5S
ZW1vdGVGcmFtZUhvc3QuUHJpbnRDcm9zc1Byb2Nlc3NTdWJmcmFtZSJ9fSwgeyJlbmQiOiAxMDI4
MjgsICJiZWdpbiI6IDEwMjgyMiwgImVkZ2UiOiAiJS9reXRoZS9lZGdlL2dlbmVyYXRlcyIsICJ0
eXBlIjogImFuY2hvcl9kZWZpbmVzIiwgInZuYW1lIjogeyJjb3JwdXMiOiAiY2hyb21pdW0uZ29v
Z2xlc291cmNlLmNvbS9jaHJvbWl1bS9zcmMiLCAibGFuZ3VhZ2UiOiAibW9qb20iLCAic2lnbmF0
dXJlIjogImJsaW5rLm1vam9tLlJlbW90ZUZyYW1lSG9zdC5EZXRhY2gifX0sIHsiZW5kIjogMTAy
OTQ5LCAiYmVnaW4iOiAxMDI5MjMsICJlZGdlIjogIiUva3l0aGUvZWRnZS9nZW5lcmF0ZXMiLCAi
dHlwZSI6ICJhbmNob3JfZGVmaW5lcyIsICJ2bmFtZSI6IHsiY29ycHVzIjogImNocm9taXVtLmdv
b2dsZXNvdXJjZS5jb20vY2hyb21pdW0vc3JjIiwgImxhbmd1YWdlIjogIm1vam9tIiwgInNpZ25h
dHVyZSI6ICJibGluay5tb2pvbS5SZW1vdGVGcmFtZUhvc3QuVXBkYXRlVmlld3BvcnRJbnRlcnNl
Y3Rpb24ifX0sIHsiZW5kIjogMTAzMjE1LCAiYmVnaW4iOiAxMDMxODgsICJlZGdlIjogIiUva3l0
aGUvZWRnZS9nZW5lcmF0ZXMiLCAidHlwZSI6ICJhbmNob3JfZGVmaW5lcyIsICJ2bmFtZSI6IHsi
Y29ycHVzIjogImNocm9taXVtLmdvb2dsZXNvdXJjZS5jb20vY2hyb21pdW0vc3JjIiwgImxhbmd1
YWdlIjogIm1vam9tIiwgInNpZ25hdHVyZSI6ICJibGluay5tb2pvbS5SZW1vdGVGcmFtZUhvc3Qu
U3luY2hyb25pemVWaXN1YWxQcm9wZXJ0aWVzIn19LCB7ImVuZCI6IDEwMzM0NiwgImJlZ2luIjog
MTAzMzM5LCAiZWRnZSI6ICIlL2t5dGhlL2VkZ2UvZ2VuZXJhdGVzIiwgInR5cGUiOiAiYW5jaG9y
X2RlZmluZXMiLCAidm5hbWUiOiB7ImNvcnB1cyI6ICJjaHJvbWl1bS5nb29nbGVzb3VyY2UuY29t
L2Nocm9taXVtL3NyYyIsICJsYW5ndWFnZSI6ICJtb2pvbSIsICJzaWduYXR1cmUiOiAiYmxpbmsu
bW9qb20uUmVtb3RlRnJhbWVIb3N0Lk9wZW5VUkwifX0sIHsiZW5kIjogMTAzNzY2LCAiYmVnaW4i
OiAxMDM3NDcsICJlZGdlIjogIiUva3l0aGUvZWRnZS9nZW5lcmF0ZXMiLCAidHlwZSI6ICJhbmNo
b3JfZGVmaW5lcyIsICJ2bmFtZSI6IHsiY29ycHVzIjogImNocm9taXVtLmdvb2dsZXNvdXJjZS5j
b20vY2hyb21pdW0vc3JjIiwgImxhbmd1YWdlIjogIm1vam9tIiwgInNpZ25hdHVyZSI6ICJibGlu
ay5tb2pvbS5SZW1vdGVGcmFtZS5XaWxsRW50ZXJGdWxsc2NyZWVuIn19LCB7ImVuZCI6IDEwMzk0
MCwgImJlZ2luIjogMTAzOTExLCAiZWRnZSI6ICIlL2t5dGhlL2VkZ2UvZ2VuZXJhdGVzIiwgInR5
cGUiOiAiYW5jaG9yX2RlZmluZXMiLCAidm5hbWUiOiB7ImNvcnB1cyI6ICJjaHJvbWl1bS5nb29n
bGVzb3VyY2UuY29tL2Nocm9taXVtL3NyYyIsICJsYW5ndWFnZSI6ICJtb2pvbSIsICJzaWduYXR1
cmUiOiAiYmxpbmsubW9qb20uUmVtb3RlRnJhbWUuRW5mb3JjZUluc2VjdXJlTmF2aWdhdGlvbnNT
ZXQifX0sIHsiZW5kIjogMTA0MDgzLCAiYmVnaW4iOiAxMDQwNjAsICJlZGdlIjogIiUva3l0aGUv
ZWRnZS9nZW5lcmF0ZXMiLCAidHlwZSI6ICJhbmNob3JfZGVmaW5lcyIsICJ2bmFtZSI6IHsiY29y
cHVzIjogImNocm9taXVtLmdvb2dsZXNvdXJjZS5jb20vY2hyb21pdW0vc3JjIiwgImxhbmd1YWdl
IjogIm1vam9tIiwgInNpZ25hdHVyZSI6ICJibGluay5tb2pvbS5SZW1vdGVGcmFtZS5TZXRGcmFt
ZU93bmVyUHJvcGVydGllcyJ9fSwgeyJlbmQiOiAxMDQyNjEsICJiZWdpbiI6IDEwNDIzMywgImVk
Z2UiOiAiJS9reXRoZS9lZGdlL2dlbmVyYXRlcyIsICJ0eXBlIjogImFuY2hvcl9kZWZpbmVzIiwg
InZuYW1lIjogeyJjb3JwdXMiOiAiY2hyb21pdW0uZ29vZ2xlc291cmNlLmNvbS9jaHJvbWl1bS9z
cmMiLCAibGFuZ3VhZ2UiOiAibW9qb20iLCAic2lnbmF0dXJlIjogImJsaW5rLm1vam9tLlJlbW90
ZUZyYW1lLkVuZm9yY2VJbnNlY3VyZVJlcXVlc3RQb2xpY3kifX0sIHsiZW5kIjogMTA0NDE1LCAi
YmVnaW4iOiAxMDQzOTYsICJlZGdlIjogIiUva3l0aGUvZWRnZS9nZW5lcmF0ZXMiLCAidHlwZSI6
ICJhbmNob3JfZGVmaW5lcyIsICJ2bmFtZSI6IHsiY29ycHVzIjogImNocm9taXVtLmdvb2dsZXNv
dXJjZS5jb20vY2hyb21pdW0vc3JjIiwgImxhbmd1YWdlIjogIm1vam9tIiwgInNpZ25hdHVyZSI6
ICJibGluay5tb2pvbS5SZW1vdGVGcmFtZS5TZXRSZXBsaWNhdGVkT3JpZ2luIn19LCB7ImVuZCI6
IDEwNDYzNywgImJlZ2luIjogMTA0NjEyLCAiZWRnZSI6ICIlL2t5dGhlL2VkZ2UvZ2VuZXJhdGVz
IiwgInR5cGUiOiAiYW5jaG9yX2RlZmluZXMiLCAidm5hbWUiOiB7ImNvcnB1cyI6ICJjaHJvbWl1
bS5nb29nbGVzb3VyY2UuY29tL2Nocm9taXVtL3NyYyIsICJsYW5ndWFnZSI6ICJtb2pvbSIsICJz
aWduYXR1cmUiOiAiYmxpbmsubW9qb20uUmVtb3RlRnJhbWUuU2V0UmVwbGljYXRlZElzQWRTdWJm
cmFtZSJ9fSwgeyJlbmQiOiAxMDQ3NTUsICJiZWdpbiI6IDEwNDczOCwgImVkZ2UiOiAiJS9reXRo
ZS9lZGdlL2dlbmVyYXRlcyIsICJ0eXBlIjogImFuY2hvcl9kZWZpbmVzIiwgInZuYW1lIjogeyJj
b3JwdXMiOiAiY2hyb21pdW0uZ29vZ2xlc291cmNlLmNvbS9jaHJvbWl1bS9zcmMiLCAibGFuZ3Vh
Z2UiOiAibW9qb20iLCAic2lnbmF0dXJlIjogImJsaW5rLm1vam9tLlJlbW90ZUZyYW1lLlNldFJl
cGxpY2F0ZWROYW1lIn19LCB7ImVuZCI6IDEwNDkzNSwgImJlZ2luIjogMTA0OTA1LCAiZWRnZSI6
ICIlL2t5dGhlL2VkZ2UvZ2VuZXJhdGVzIiwgInR5cGUiOiAiYW5jaG9yX2RlZmluZXMiLCAidm5h
bWUiOiB7ImNvcnB1cyI6ICJjaHJvbWl1bS5nb29nbGVzb3VyY2UuY29tL2Nocm9taXVtL3NyYyIs
ICJsYW5ndWFnZSI6ICJtb2pvbSIsICJzaWduYXR1cmUiOiAiYmxpbmsubW9qb20uUmVtb3RlRnJh
bWUuRGlzcGF0Y2hMb2FkRXZlbnRGb3JGcmFtZU93bmVyIn19LCB7ImVuZCI6IDEwNTA1MCwgImJl
Z2luIjogMTA1MDI1LCAiZWRnZSI6ICIlL2t5dGhlL2VkZ2UvZ2VuZXJhdGVzIiwgInR5cGUiOiAi
YW5jaG9yX2RlZmluZXMiLCAidm5hbWUiOiB7ImNvcnB1cyI6ICJjaHJvbWl1bS5nb29nbGVzb3Vy
Y2UuY29tL2Nocm9taXVtL3NyYyIsICJsYW5ndWFnZSI6ICJtb2pvbSIsICJzaWduYXR1cmUiOiAi
YmxpbmsubW9qb20uUmVtb3RlRnJhbWUuU2V0TmVlZHNPY2NsdXNpb25UcmFja2luZyJ9fSwgeyJl
bmQiOiAxMDUxNTAsICJiZWdpbiI6IDEwNTE0MiwgImVkZ2UiOiAiJS9reXRoZS9lZGdlL2dlbmVy
YXRlcyIsICJ0eXBlIjogImFuY2hvcl9kZWZpbmVzIiwgInZuYW1lIjogeyJjb3JwdXMiOiAiY2hy
b21pdW0uZ29vZ2xlc291cmNlLmNvbS9jaHJvbWl1bS9zcmMiLCAibGFuZ3VhZ2UiOiAibW9qb20i
LCAic2lnbmF0dXJlIjogImJsaW5rLm1vam9tLlJlbW90ZUZyYW1lLkNvbGxhcHNlIn19LCB7ImVu
ZCI6IDEwNTIzOSwgImJlZ2luIjogMTA1MjM0LCAiZWRnZSI6ICIlL2t5dGhlL2VkZ2UvZ2VuZXJh
dGVzIiwgInR5cGUiOiAiYW5jaG9yX2RlZmluZXMiLCAidm5hbWUiOiB7ImNvcnB1cyI6ICJjaHJv
bWl1bS5nb29nbGVzb3VyY2UuY29tL2Nocm9taXVtL3NyYyIsICJsYW5ndWFnZSI6ICJtb2pvbSIs
ICJzaWduYXR1cmUiOiAiYmxpbmsubW9qb20uUmVtb3RlRnJhbWUuRm9jdXMifX0sIHsiZW5kIjog
MTA1Mzg4LCAiYmVnaW4iOiAxMDUzNDYsICJlZGdlIjogIiUva3l0aGUvZWRnZS9nZW5lcmF0ZXMi
LCAidHlwZSI6ICJhbmNob3JfZGVmaW5lcyIsICJ2bmFtZSI6IHsiY29ycHVzIjogImNocm9taXVt
Lmdvb2dsZXNvdXJjZS5jb20vY2hyb21pdW0vc3JjIiwgImxhbmd1YWdlIjogIm1vam9tIiwgInNp
Z25hdHVyZSI6ICJibGluay5tb2pvbS5SZW1vdGVGcmFtZS5TZXRIYWRTdGlja3lVc2VyQWN0aXZh
dGlvbkJlZm9yZU5hdmlnYXRpb24ifX0sIHsiZW5kIjogMTA1NTA3LCAiYmVnaW4iOiAxMDU0ODgs
ICJlZGdlIjogIiUva3l0aGUvZWRnZS9nZW5lcmF0ZXMiLCAidHlwZSI6ICJhbmNob3JfZGVmaW5l
cyIsICJ2bmFtZSI6IHsiY29ycHVzIjogImNocm9taXVtLmdvb2dsZXNvdXJjZS5jb20vY2hyb21p
dW0vc3JjIiwgImxhbmd1YWdlIjogIm1vam9tIiwgInNpZ25hdHVyZSI6ICJibGluay5tb2pvbS5S
ZW1vdGVGcmFtZS5CdWJibGVMb2dpY2FsU2Nyb2xsIn19LCB7ImVuZCI6IDEwNTcwNywgImJlZ2lu
IjogMTA1NjgyLCAiZWRnZSI6ICIlL2t5dGhlL2VkZ2UvZ2VuZXJhdGVzIiwgInR5cGUiOiAiYW5j
aG9yX2RlZmluZXMiLCAidm5hbWUiOiB7ImNvcnB1cyI6ICJjaHJvbWl1bS5nb29nbGVzb3VyY2Uu
Y29tL2Nocm9taXVtL3NyYyIsICJsYW5ndWFnZSI6ICJtb2pvbSIsICJzaWduYXR1cmUiOiAiYmxp
bmsubW9qb20uUmVtb3RlRnJhbWUuVXBkYXRlVXNlckFjdGl2YXRpb25TdGF0ZSJ9fSwgeyJlbmQi
OiAxMDU5NDQsICJiZWdpbiI6IDEwNTkyNywgImVkZ2UiOiAiJS9reXRoZS9lZGdlL2dlbmVyYXRl
cyIsICJ0eXBlIjogImFuY2hvcl9kZWZpbmVzIiwgInZuYW1lIjogeyJjb3JwdXMiOiAiY2hyb21p
dW0uZ29vZ2xlc291cmNlLmNvbS9jaHJvbWl1bS9zcmMiLCAibGFuZ3VhZ2UiOiAibW9qb20iLCAi
c2lnbmF0dXJlIjogImJsaW5rLm1vam9tLlJlbW90ZUZyYW1lLlNldEVtYmVkZGluZ1Rva2VuIn19
LCB7ImVuZCI6IDEwNjA4MCwgImJlZ2luIjogMTA2MDY4LCAiZWRnZSI6ICIlL2t5dGhlL2VkZ2Uv
Z2VuZXJhdGVzIiwgInR5cGUiOiAiYW5jaG9yX2RlZmluZXMiLCAidm5hbWUiOiB7ImNvcnB1cyI6
ICJjaHJvbWl1bS5nb29nbGVzb3VyY2UuY29tL2Nocm9taXVtL3NyYyIsICJsYW5ndWFnZSI6ICJt
b2pvbSIsICJzaWduYXR1cmUiOiAiYmxpbmsubW9qb20uUmVtb3RlRnJhbWUuU2V0UGFnZUZvY3Vz
In19LCB7ImVuZCI6IDEwNjIwMiwgImJlZ2luIjogMTA2MTgxLCAiZWRnZSI6ICIlL2t5dGhlL2Vk
Z2UvZ2VuZXJhdGVzIiwgInR5cGUiOiAiYW5jaG9yX2RlZmluZXMiLCAidm5hbWUiOiB7ImNvcnB1
cyI6ICJjaHJvbWl1bS5nb29nbGVzb3VyY2UuY29tL2Nocm9taXVtL3NyYyIsICJsYW5ndWFnZSI6
ICJtb2pvbSIsICJzaWduYXR1cmUiOiAiYmxpbmsubW9qb20uUmVtb3RlRnJhbWUuUmVuZGVyRmFs
bGJhY2tDb250ZW50In19LCB7ImVuZCI6IDEwNjM0NSwgImJlZ2luIjogMTA2MzA2LCAiZWRnZSI6
ICIlL2t5dGhlL2VkZ2UvZ2VuZXJhdGVzIiwgInR5cGUiOiAiYW5jaG9yX2RlZmluZXMiLCAidm5h
bWUiOiB7ImNvcnB1cyI6ICJjaHJvbWl1bS5nb29nbGVzb3VyY2UuY29tL2Nocm9taXVtL3NyYyIs
ICJsYW5ndWFnZSI6ICJtb2pvbSIsICJzaWduYXR1cmUiOiAiYmxpbmsubW9qb20uUmVtb3RlRnJh
bWUuUmVuZGVyRmFsbGJhY2tDb250ZW50V2l0aFJlc291cmNlVGltaW5nIn19LCB7ImVuZCI6IDEw
NjU1MywgImJlZ2luIjogMTA2NTI3LCAiZWRnZSI6ICIlL2t5dGhlL2VkZ2UvZ2VuZXJhdGVzIiwg
InR5cGUiOiAiYW5jaG9yX2RlZmluZXMiLCAidm5hbWUiOiB7ImNvcnB1cyI6ICJjaHJvbWl1bS5n
b29nbGVzb3VyY2UuY29tL2Nocm9taXVtL3NyYyIsICJsYW5ndWFnZSI6ICJtb2pvbSIsICJzaWdu
YXR1cmUiOiAiYmxpbmsubW9qb20uUmVtb3RlRnJhbWUuQWRkUmVzb3VyY2VUaW1pbmdGcm9tQ2hp
bGQifX0sIHsiZW5kIjogMTA2NzA3LCAiYmVnaW4iOiAxMDY2ODgsICJlZGdlIjogIiUva3l0aGUv
ZWRnZS9nZW5lcmF0ZXMiLCAidHlwZSI6ICJhbmNob3JfZGVmaW5lcyIsICJ2bmFtZSI6IHsiY29y
cHVzIjogImNocm9taXVtLmdvb2dsZXNvdXJjZS5jb20vY2hyb21pdW0vc3JjIiwgImxhbmd1YWdl
IjogIm1vam9tIiwgInNpZ25hdHVyZSI6ICJibGluay5tb2pvbS5SZW1vdGVGcmFtZS5TY3JvbGxS
ZWN0VG9WaXNpYmxlIn19LCB7ImVuZCI6IDEwNjg4MSwgImJlZ2luIjogMTA2ODY2LCAiZWRnZSI6
ICIlL2t5dGhlL2VkZ2UvZ2VuZXJhdGVzIiwgInR5cGUiOiAiYW5jaG9yX2RlZmluZXMiLCAidm5h
bWUiOiB7ImNvcnB1cyI6ICJjaHJvbWl1bS5nb29nbGVzb3VyY2UuY29tL2Nocm9taXVtL3NyYyIs
ICJsYW5ndWFnZSI6ICJtb2pvbSIsICJzaWduYXR1cmUiOiAiYmxpbmsubW9qb20uUmVtb3RlRnJh
bWUuRGlkU3RhcnRMb2FkaW5nIn19LCB7ImVuZCI6IDEwNjk3NCwgImJlZ2luIjogMTA2OTYwLCAi
ZWRnZSI6ICIlL2t5dGhlL2VkZ2UvZ2VuZXJhdGVzIiwgInR5cGUiOiAiYW5jaG9yX2RlZmluZXMi
LCAidm5hbWUiOiB7ImNvcnB1cyI6ICJjaHJvbWl1bS5nb29nbGVzb3VyY2UuY29tL2Nocm9taXVt
L3NyYyIsICJsYW5ndWFnZSI6ICJtb2pvbSIsICJzaWduYXR1cmUiOiAiYmxpbmsubW9qb20uUmVt
b3RlRnJhbWUuRGlkU3RvcExvYWRpbmcifX0sIHsiZW5kIjogMTA3MTA1LCAiYmVnaW4iOiAxMDcw
NzIsICJlZGdlIjogIiUva3l0aGUvZWRnZS9nZW5lcmF0ZXMiLCAidHlwZSI6ICJhbmNob3JfZGVm
aW5lcyIsICJ2bmFtZSI6IHsiY29ycHVzIjogImNocm9taXVtLmdvb2dsZXNvdXJjZS5jb20vY2hy
b21pdW0vc3JjIiwgImxhbmd1YWdlIjogIm1vam9tIiwgInNpZ25hdHVyZSI6ICJibGluay5tb2pv
bS5SZW1vdGVGcmFtZS5JbnRyaW5zaWNTaXppbmdJbmZvT2ZDaGlsZENoYW5nZWQifX0sIHsiZW5k
IjogMTA3Mjc1LCAiYmVnaW4iOiAxMDcyNTEsICJlZGdlIjogIiUva3l0aGUvZWRnZS9nZW5lcmF0
ZXMiLCAidHlwZSI6ICJhbmNob3JfZGVmaW5lcyIsICJ2bmFtZSI6IHsiY29ycHVzIjogImNocm9t
aXVtLmdvb2dsZXNvdXJjZS5jb20vY2hyb21pdW0vc3JjIiwgImxhbmd1YWdlIjogIm1vam9tIiwg
InNpZ25hdHVyZSI6ICJibGluay5tb2pvbS5SZW1vdGVGcmFtZS5EaWRTZXRGcmFtZVBvbGljeUhl
YWRlcnMifX0sIHsiZW5kIjogMTA3NTI1LCAiYmVnaW4iOiAxMDc1MDUsICJlZGdlIjogIiUva3l0
aGUvZWRnZS9nZW5lcmF0ZXMiLCAidHlwZSI6ICJhbmNob3JfZGVmaW5lcyIsICJ2bmFtZSI6IHsi
Y29ycHVzIjogImNocm9taXVtLmdvb2dsZXNvdXJjZS5jb20vY2hyb21pdW0vc3JjIiwgImxhbmd1
YWdlIjogIm1vam9tIiwgInNpZ25hdHVyZSI6ICJibGluay5tb2pvbS5SZW1vdGVGcmFtZS5EaWRV
cGRhdGVGcmFtZVBvbGljeSJ9fSwgeyJlbmQiOiAxMDc2NTQsICJiZWdpbiI6IDEwNzY0MiwgImVk
Z2UiOiAiJS9reXRoZS9lZGdlL2dlbmVyYXRlcyIsICJ0eXBlIjogImFuY2hvcl9kZWZpbmVzIiwg
InZuYW1lIjogeyJjb3JwdXMiOiAiY2hyb21pdW0uZ29vZ2xlc291cmNlLmNvbS9jaHJvbWl1bS9z
cmMiLCAibGFuZ3VhZ2UiOiAibW9qb20iLCAic2lnbmF0dXJlIjogImJsaW5rLm1vam9tLlJlbW90
ZUZyYW1lLlVwZGF0ZU9wZW5lciJ9fSwgeyJlbmQiOiAxMDc4MTIsICJiZWdpbiI6IDEwNzc5Niwg
ImVkZ2UiOiAiJS9reXRoZS9lZGdlL2dlbmVyYXRlcyIsICJ0eXBlIjogImFuY2hvcl9kZWZpbmVz
IiwgInZuYW1lIjogeyJjb3JwdXMiOiAiY2hyb21pdW0uZ29vZ2xlc291cmNlLmNvbS9jaHJvbWl1
bS9zcmMiLCAibGFuZ3VhZ2UiOiAibW9qb20iLCAic2lnbmF0dXJlIjogImJsaW5rLm1vam9tLlJl
bW90ZUZyYW1lLkRldGFjaEFuZERpc3Bvc2UifX0sIHsiZW5kIjogMTA3OTA5LCAiYmVnaW4iOiAx
MDc4OTMsICJlZGdlIjogIiUva3l0aGUvZWRnZS9nZW5lcmF0ZXMiLCAidHlwZSI6ICJhbmNob3Jf
ZGVmaW5lcyIsICJ2bmFtZSI6IHsiY29ycHVzIjogImNocm9taXVtLmdvb2dsZXNvdXJjZS5jb20v
Y2hyb21pdW0vc3JjIiwgImxhbmd1YWdlIjogIm1vam9tIiwgInNpZ25hdHVyZSI6ICJibGluay5t
b2pvbS5SZW1vdGVGcmFtZS5FbmFibGVBdXRvUmVzaXplIn19LCB7ImVuZCI6IDEwODA2NCwgImJl
Z2luIjogMTA4MDQ3LCAiZWRnZSI6ICIlL2t5dGhlL2VkZ2UvZ2VuZXJhdGVzIiwgInR5cGUiOiAi
YW5jaG9yX2RlZmluZXMiLCAidm5hbWUiOiB7ImNvcnB1cyI6ICJjaHJvbWl1bS5nb29nbGVzb3Vy
Y2UuY29tL2Nocm9taXVtL3NyYyIsICJsYW5ndWFnZSI6ICJtb2pvbSIsICJzaWduYXR1cmUiOiAi
YmxpbmsubW9qb20uUmVtb3RlRnJhbWUuRGlzYWJsZUF1dG9SZXNpemUifX0sIHsiZW5kIjogMTA4
MTc5LCAiYmVnaW4iOiAxMDgxNTQsICJlZGdlIjogIiUva3l0aGUvZWRnZS9nZW5lcmF0ZXMiLCAi
dHlwZSI6ICJhbmNob3JfZGVmaW5lcyIsICJ2bmFtZSI6IHsiY29ycHVzIjogImNocm9taXVtLmdv
b2dsZXNvdXJjZS5jb20vY2hyb21pdW0vc3JjIiwgImxhbmd1YWdlIjogIm1vam9tIiwgInNpZ25h
dHVyZSI6ICJibGluay5tb2pvbS5SZW1vdGVGcmFtZS5EaWRVcGRhdGVWaXN1YWxQcm9wZXJ0aWVz
In19LCB7ImVuZCI6IDEwODMxMywgImJlZ2luIjogMTA4Mjk5LCAiZWRnZSI6ICIlL2t5dGhlL2Vk
Z2UvZ2VuZXJhdGVzIiwgInR5cGUiOiAiYW5jaG9yX2RlZmluZXMiLCAidm5hbWUiOiB7ImNvcnB1
cyI6ICJjaHJvbWl1bS5nb29nbGVzb3VyY2UuY29tL2Nocm9taXVtL3NyYyIsICJsYW5ndWFnZSI6
ICJtb2pvbSIsICJzaWduYXR1cmUiOiAiYmxpbmsubW9qb20uUmVtb3RlRnJhbWUuU2V0RnJhbWVT
aW5rSWQifX0sIHsiZW5kIjogMTA4NDQ5LCAiYmVnaW4iOiAxMDg0MzMsICJlZGdlIjogIiUva3l0
aGUvZWRnZS9nZW5lcmF0ZXMiLCAidHlwZSI6ICJhbmNob3JfZGVmaW5lcyIsICJ2bmFtZSI6IHsi
Y29ycHVzIjogImNocm9taXVtLmdvb2dsZXNvdXJjZS5jb20vY2hyb21pdW0vc3JjIiwgImxhbmd1
YWdlIjogIm1vam9tIiwgInNpZ25hdHVyZSI6ICJibGluay5tb2pvbS5SZW1vdGVGcmFtZS5DaGls
ZFByb2Nlc3NHb25lIn19LCB7ImVuZCI6IDEwODg2NiwgImJlZ2luIjogMTA4ODQ2LCAiZWRnZSI6
ICIlL2t5dGhlL2VkZ2UvZ2VuZXJhdGVzIiwgInR5cGUiOiAiYW5jaG9yX2RlZmluZXMiLCAidm5h
bWUiOiB7ImNvcnB1cyI6ICJjaHJvbWl1bS5nb29nbGVzb3VyY2UuY29tL2Nocm9taXVtL3NyYyIs
ICJsYW5ndWFnZSI6ICJtb2pvbSIsICJzaWduYXR1cmUiOiAiYmxpbmsubW9qb20uTG9jYWxNYWlu
RnJhbWUuQW5pbWF0ZURvdWJsZVRhcFpvb20ifX0sIHsiZW5kIjogMTA5MDEyLCAiYmVnaW4iOiAx
MDg5OTgsICJlZGdlIjogIiUva3l0aGUvZWRnZS9nZW5lcmF0ZXMiLCAidHlwZSI6ICJhbmNob3Jf
ZGVmaW5lcyIsICJ2bmFtZSI6IHsiY29ycHVzIjogImNocm9taXVtLmdvb2dsZXNvdXJjZS5jb20v
Y2hyb21pdW0vc3JjIiwgImxhbmd1YWdlIjogIm1vam9tIiwgInNpZ25hdHVyZSI6ICJibGluay5t
b2pvbS5Mb2NhbE1haW5GcmFtZS5TZXRTY2FsZUZhY3RvciJ9fSwgeyJlbmQiOiAxMDkxMDksICJi
ZWdpbiI6IDEwOTEwMCwgImVkZ2UiOiAiJS9reXRoZS9lZGdlL2dlbmVyYXRlcyIsICJ0eXBlIjog
ImFuY2hvcl9kZWZpbmVzIiwgInZuYW1lIjogeyJjb3JwdXMiOiAiY2hyb21pdW0uZ29vZ2xlc291
cmNlLmNvbS9jaHJvbWl1bS9zcmMiLCAibGFuZ3VhZ2UiOiAibW9qb20iLCAic2lnbmF0dXJlIjog
ImJsaW5rLm1vam9tLkxvY2FsTWFpbkZyYW1lLkNsb3NlUGFnZSJ9fSwgeyJlbmQiOiAxMDkyMzMs
ICJiZWdpbiI6IDEwOTIxOCwgImVkZ2UiOiAiJS9reXRoZS9lZGdlL2dlbmVyYXRlcyIsICJ0eXBl
IjogImFuY2hvcl9kZWZpbmVzIiwgInZuYW1lIjogeyJjb3JwdXMiOiAiY2hyb21pdW0uZ29vZ2xl
c291cmNlLmNvbS9jaHJvbWl1bS9zcmMiLCAibGFuZ3VhZ2UiOiAibW9qb20iLCAic2lnbmF0dXJl
IjogImJsaW5rLm1vam9tLkxvY2FsTWFpbkZyYW1lLlNldEluaXRpYWxGb2N1cyJ9fSwgeyJlbmQi
OiAxMDkzNzMsICJiZWdpbiI6IDEwOTM0MywgImVkZ2UiOiAiJS9reXRoZS9lZGdlL2dlbmVyYXRl
cyIsICJ0eXBlIjogImFuY2hvcl9kZWZpbmVzIiwgInZuYW1lIjogeyJjb3JwdXMiOiAiY2hyb21p
dW0uZ29vZ2xlc291cmNlLmNvbS9jaHJvbWl1bS9zcmMiLCAibGFuZ3VhZ2UiOiAibW9qb20iLCAi
c2lnbmF0dXJlIjogImJsaW5rLm1vam9tLkxvY2FsTWFpbkZyYW1lLkVuYWJsZVByZWZlcnJlZFNp
emVDaGFuZ2VkTW9kZSJ9fSwgeyJlbmQiOiAxMDk0ODEsICJiZWdpbiI6IDEwOTQ2MSwgImVkZ2Ui
OiAiJS9reXRoZS9lZGdlL2dlbmVyYXRlcyIsICJ0eXBlIjogImFuY2hvcl9kZWZpbmVzIiwgInZu
YW1lIjogeyJjb3JwdXMiOiAiY2hyb21pdW0uZ29vZ2xlc291cmNlLmNvbS9jaHJvbWl1bS9zcmMi
LCAibGFuZ3VhZ2UiOiAibW9qb20iLCAic2lnbmF0dXJlIjogImJsaW5rLm1vam9tLkxvY2FsTWFp
bkZyYW1lLlpvb21Ub0ZpbmRJblBhZ2VSZWN0In19LCB7ImVuZCI6IDEwOTYzNCwgImJlZ2luIjog
MTA5NjEwLCAiZWRnZSI6ICIlL2t5dGhlL2VkZ2UvZ2VuZXJhdGVzIiwgInR5cGUiOiAiYW5jaG9y
X2RlZmluZXMiLCAidm5hbWUiOiB7ImNvcnB1cyI6ICJjaHJvbWl1bS5nb29nbGVzb3VyY2UuY29t
L2Nocm9taXVtL3NyYyIsICJsYW5ndWFnZSI6ICJtb2pvbSIsICJzaWduYXR1cmUiOiAiYmxpbmsu
bW9qb20uTG9jYWxNYWluRnJhbWUuSW5zdGFsbENvb3BBY2Nlc3NNb25pdG9yIn19LCB7ImVuZCI6
IDEwOTg2NCwgImJlZ2luIjogMTA5ODQ3LCAiZWRnZSI6ICIlL2t5dGhlL2VkZ2UvZ2VuZXJhdGVz
IiwgInR5cGUiOiAiYW5jaG9yX2RlZmluZXMiLCAidm5hbWUiOiB7ImNvcnB1cyI6ICJjaHJvbWl1
bS5nb29nbGVzb3VyY2UuY29tL2Nocm9taXVtL3NyYyIsICJsYW5ndWFnZSI6ICJtb2pvbSIsICJz
aWduYXR1cmUiOiAiYmxpbmsubW9qb20uTG9jYWxNYWluRnJhbWUuT25Qb3J0YWxBY3RpdmF0ZWQi
fX0sIHsiZW5kIjogMTEwMjY4LCAiYmVnaW4iOiAxMTAyNDYsICJlZGdlIjogIiUva3l0aGUvZWRn
ZS9nZW5lcmF0ZXMiLCAidHlwZSI6ICJhbmNob3JfZGVmaW5lcyIsICJ2bmFtZSI6IHsiY29ycHVz
IjogImNocm9taXVtLmdvb2dsZXNvdXJjZS5jb20vY2hyb21pdW0vc3JjIiwgImxhbmd1YWdlIjog
Im1vam9tIiwgInNpZ25hdHVyZSI6ICJibGluay5tb2pvbS5Mb2NhbE1haW5GcmFtZS5Gb3J3YXJk
TWVzc2FnZUZyb21Ib3N0In19LCB7ImVuZCI6IDExMDQ5OCwgImJlZ2luIjogMTEwNDcyLCAiZWRn
ZSI6ICIlL2t5dGhlL2VkZ2UvZ2VuZXJhdGVzIiwgInR5cGUiOiAiYW5jaG9yX2RlZmluZXMiLCAi
dm5hbWUiOiB7ImNvcnB1cyI6ICJjaHJvbWl1bS5nb29nbGVzb3VyY2UuY29tL2Nocm9taXVtL3Ny
YyIsICJsYW5ndWFnZSI6ICJtb2pvbSIsICJzaWduYXR1cmUiOiAiYmxpbmsubW9qb20uTG9jYWxN
YWluRnJhbWUuVXBkYXRlQnJvd3NlckNvbnRyb2xzU3RhdGUifX0sIHsiZW5kIjogMTExMDIzLCAi
YmVnaW4iOiAxMTA5OTYsICJlZGdlIjogIiUva3l0aGUvZWRnZS9nZW5lcmF0ZXMiLCAidHlwZSI6
ICJhbmNob3JfZGVmaW5lcyIsICJ2bmFtZSI6IHsiY29ycHVzIjogImNocm9taXVtLmdvb2dsZXNv
dXJjZS5jb20vY2hyb21pdW0vc3JjIiwgImxhbmd1YWdlIjogIm1vam9tIiwgInNpZ25hdHVyZSI6
ICJibGluay5tb2pvbS5SZW1vdGVNYWluRnJhbWUuVXBkYXRlVGV4dEF1dG9zaXplclBhZ2VJbmZv
In19LCB7ImVuZCI6IDExMTUxNywgImJlZ2luIjogMTExNDk5LCAiZWRnZSI6ICIlL2t5dGhlL2Vk
Z2UvZ2VuZXJhdGVzIiwgInR5cGUiOiAiYW5jaG9yX2RlZmluZXMiLCAidm5hbWUiOiB7ImNvcnB1
cyI6ICJjaHJvbWl1bS5nb29nbGVzb3VyY2UuY29tL2Nocm9taXVtL3NyYyIsICJsYW5ndWFnZSI6
ICJtb2pvbSIsICJzaWduYXR1cmUiOiAiYmxpbmsubW9qb20uTG9jYWxNYWluRnJhbWVIb3N0LlNj
YWxlRmFjdG9yQ2hhbmdlZCJ9fSwgeyJlbmQiOiAxMTE2NTYsICJiZWdpbiI6IDExMTYyOCwgImVk
Z2UiOiAiJS9reXRoZS9lZGdlL2dlbmVyYXRlcyIsICJ0eXBlIjogImFuY2hvcl9kZWZpbmVzIiwg
InZuYW1lIjogeyJjb3JwdXMiOiAiY2hyb21pdW0uZ29vZ2xlc291cmNlLmNvbS9jaHJvbWl1bS9z
cmMiLCAibGFuZ3VhZ2UiOiAibW9qb20iLCAic2lnbmF0dXJlIjogImJsaW5rLm1vam9tLkxvY2Fs
TWFpbkZyYW1lSG9zdC5Db250ZW50c1ByZWZlcnJlZFNpemVDaGFuZ2VkIn19LCB7ImVuZCI6IDEx
MTgxMiwgImJlZ2luIjogMTExNzg0LCAiZWRnZSI6ICIlL2t5dGhlL2VkZ2UvZ2VuZXJhdGVzIiwg
InR5cGUiOiAiYW5jaG9yX2RlZmluZXMiLCAidm5hbWUiOiB7ImNvcnB1cyI6ICJjaHJvbWl1bS5n
b29nbGVzb3VyY2UuY29tL2Nocm9taXVtL3NyYyIsICJsYW5ndWFnZSI6ICJtb2pvbSIsICJzaWdu
YXR1cmUiOiAiYmxpbmsubW9qb20uTG9jYWxNYWluRnJhbWVIb3N0LlRleHRBdXRvc2l6ZXJQYWdl
SW5mb0NoYW5nZWQifX0sIHsiZW5kIjogMTExOTU5LCAiYmVnaW4iOiAxMTE5NTAsICJlZGdlIjog
IiUva3l0aGUvZWRnZS9nZW5lcmF0ZXMiLCAidHlwZSI6ICJhbmNob3JfZGVmaW5lcyIsICJ2bmFt
ZSI6IHsiY29ycHVzIjogImNocm9taXVtLmdvb2dsZXNvdXJjZS5jb20vY2hyb21pdW0vc3JjIiwg
Imxhbmd1YWdlIjogIm1vam9tIiwgInNpZ25hdHVyZSI6ICJibGluay5tb2pvbS5Mb2NhbE1haW5G
cmFtZUhvc3QuRm9jdXNQYWdlIn19LCB7ImVuZCI6IDExMjA0OSwgImJlZ2luIjogMTEyMDQwLCAi
ZWRnZSI6ICIlL2t5dGhlL2VkZ2UvZ2VuZXJhdGVzIiwgInR5cGUiOiAiYW5jaG9yX2RlZmluZXMi
LCAidm5hbWUiOiB7ImNvcnB1cyI6ICJjaHJvbWl1bS5nb29nbGVzb3VyY2UuY29tL2Nocm9taXVt
L3NyYyIsICJsYW5ndWFnZSI6ICJtb2pvbSIsICJzaWduYXR1cmUiOiAiYmxpbmsubW9qb20uTG9j
YWxNYWluRnJhbWVIb3N0LlRha2VGb2N1cyJ9fSwgeyJlbmQiOiAxMTIxNjMsICJiZWdpbiI6IDEx
MjE0OCwgImVkZ2UiOiAiJS9reXRoZS9lZGdlL2dlbmVyYXRlcyIsICJ0eXBlIjogImFuY2hvcl9k
ZWZpbmVzIiwgInZuYW1lIjogeyJjb3JwdXMiOiAiY2hyb21pdW0uZ29vZ2xlc291cmNlLmNvbS9j
aHJvbWl1bS9zcmMiLCAibGFuZ3VhZ2UiOiAibW9qb20iLCAic2lnbmF0dXJlIjogImJsaW5rLm1v
am9tLkxvY2FsTWFpbkZyYW1lSG9zdC5VcGRhdGVUYXJnZXRVUkwifX0sIHsiZW5kIjogMTEyMzE3
LCAiYmVnaW4iOiAxMTIzMDUsICJlZGdlIjogIiUva3l0aGUvZWRnZS9nZW5lcmF0ZXMiLCAidHlw
ZSI6ICJhbmNob3JfZGVmaW5lcyIsICJ2bmFtZSI6IHsiY29ycHVzIjogImNocm9taXVtLmdvb2ds
ZXNvdXJjZS5jb20vY2hyb21pdW0vc3JjIiwgImxhbmd1YWdlIjogIm1vam9tIiwgInNpZ25hdHVy
ZSI6ICJibGluay5tb2pvbS5Mb2NhbE1haW5GcmFtZUhvc3QuUmVxdWVzdENsb3NlIn19LCB7ImVu
ZCI6IDExMjQyMywgImJlZ2luIjogMTEyNDA2LCAiZWRnZSI6ICIlL2t5dGhlL2VkZ2UvZ2VuZXJh
dGVzIiwgInR5cGUiOiAiYW5jaG9yX2RlZmluZXMiLCAidm5hbWUiOiB7ImNvcnB1cyI6ICJjaHJv
bWl1bS5nb29nbGVzb3VyY2UuY29tL2Nocm9taXVtL3NyYyIsICJsYW5ndWFnZSI6ICJtb2pvbSIs
ICJzaWduYXR1cmUiOiAiYmxpbmsubW9qb20uTG9jYWxNYWluRnJhbWVIb3N0LlNob3dDcmVhdGVk
V2luZG93In19LCB7ImVuZCI6IDExMjcxNiwgImJlZ2luIjogMTEyNzAzLCAiZWRnZSI6ICIlL2t5
dGhlL2VkZ2UvZ2VuZXJhdGVzIiwgInR5cGUiOiAiYW5jaG9yX2RlZmluZXMiLCAidm5hbWUiOiB7
ImNvcnB1cyI6ICJjaHJvbWl1bS5nb29nbGVzb3VyY2UuY29tL2Nocm9taXVtL3NyYyIsICJsYW5n
dWFnZSI6ICJtb2pvbSIsICJzaWduYXR1cmUiOiAiYmxpbmsubW9qb20uTG9jYWxNYWluRnJhbWVI
b3N0LlNldFdpbmRvd1JlY3QifX0sIHsiZW5kIjogMTEyOTAzLCAiYmVnaW4iOiAxMTI4NzQsICJl
ZGdlIjogIiUva3l0aGUvZWRnZS9nZW5lcmF0ZXMiLCAidHlwZSI6ICJhbmNob3JfZGVmaW5lcyIs
ICJ2bmFtZSI6IHsiY29ycHVzIjogImNocm9taXVtLmdvb2dsZXNvdXJjZS5jb20vY2hyb21pdW0v
c3JjIiwgImxhbmd1YWdlIjogIm1vam9tIiwgInNpZ25hdHVyZSI6ICJibGluay5tb2pvbS5Mb2Nh
bE1haW5GcmFtZUhvc3QuRGlkRmlyc3RWaXN1YWxseU5vbkVtcHR5UGFpbnQifX0sIHsiZW5kIjog
MTEzMDMxLCAiYmVnaW4iOiAxMTMwMDMsICJlZGdlIjogIiUva3l0aGUvZWRnZS9nZW5lcmF0ZXMi
LCAidHlwZSI6ICJhbmNob3JfZGVmaW5lcyIsICJ2bmFtZSI6IHsiY29ycHVzIjogImNocm9taXVt
Lmdvb2dsZXNvdXJjZS5jb20vY2hyb21pdW0vc3JjIiwgImxhbmd1YWdlIjogIm1vam9tIiwgInNp
Z25hdHVyZSI6ICJibGluay5tb2pvbS5Mb2NhbE1haW5GcmFtZUhvc3QuRGlkQWNjZXNzSW5pdGlh
bE1haW5Eb2N1bWVudCJ9fSwgeyJlbmQiOiAxMTM0NTYsICJiZWdpbiI6IDExMzQ0NywgImVkZ2Ui
OiAiJS9reXRoZS9lZGdlL2dlbmVyYXRlcyIsICJ0eXBlIjogImFuY2hvcl9kZWZpbmVzIiwgInZu
YW1lIjogeyJjb3JwdXMiOiAiY2hyb21pdW0uZ29vZ2xlc291cmNlLmNvbS9jaHJvbWl1bS9zcmMi
LCAibGFuZ3VhZ2UiOiAibW9qb20iLCAic2lnbmF0dXJlIjogImJsaW5rLm1vam9tLlJlbW90ZU1h
aW5GcmFtZUhvc3QuRm9jdXNQYWdlIn19LCB7ImVuZCI6IDExMzU0NywgImJlZ2luIjogMTEzNTM4
LCAiZWRnZSI6ICIlL2t5dGhlL2VkZ2UvZ2VuZXJhdGVzIiwgInR5cGUiOiAiYW5jaG9yX2RlZmlu
ZXMiLCAidm5hbWUiOiB7ImNvcnB1cyI6ICJjaHJvbWl1bS5nb29nbGVzb3VyY2UuY29tL2Nocm9t
aXVtL3NyYyIsICJsYW5ndWFnZSI6ICJtb2pvbSIsICJzaWduYXR1cmUiOiAiYmxpbmsubW9qb20u
UmVtb3RlTWFpbkZyYW1lSG9zdC5UYWtlRm9jdXMifX0sIHsiZW5kIjogMTEzNjYyLCAiYmVnaW4i
OiAxMTM2NDcsICJlZGdlIjogIiUva3l0aGUvZWRnZS9nZW5lcmF0ZXMiLCAidHlwZSI6ICJhbmNo
b3JfZGVmaW5lcyIsICJ2bmFtZSI6IHsiY29ycHVzIjogImNocm9taXVtLmdvb2dsZXNvdXJjZS5j
b20vY2hyb21pdW0vc3JjIiwgImxhbmd1YWdlIjogIm1vam9tIiwgInNpZ25hdHVyZSI6ICJibGlu
ay5tb2pvbS5SZW1vdGVNYWluRnJhbWVIb3N0LlVwZGF0ZVRhcmdldFVSTCJ9fSwgeyJlbmQiOiAx
MTM4MjMsICJiZWdpbiI6IDExMzgwOCwgImVkZ2UiOiAiJS9reXRoZS9lZGdlL2dlbmVyYXRlcyIs
ICJ0eXBlIjogImFuY2hvcl9kZWZpbmVzIiwgInZuYW1lIjogeyJjb3JwdXMiOiAiY2hyb21pdW0u
Z29vZ2xlc291cmNlLmNvbS9jaHJvbWl1bS9zcmMiLCAibGFuZ3VhZ2UiOiAibW9qb20iLCAic2ln
bmF0dXJlIjogImJsaW5rLm1vam9tLlJlbW90ZU1haW5GcmFtZUhvc3QuUm91dGVDbG9zZUV2ZW50
In19LCB7ImVuZCI6IDEzMTA4NiwgImJlZ2luIjogMTMxMDcxLCAiZWRnZSI6ICIlL2t5dGhlL2Vk
Z2UvZ2VuZXJhdGVzIiwgInR5cGUiOiAiYW5jaG9yX2RlZmluZXMiLCAidm5hbWUiOiB7ImNvcnB1
cyI6ICJjaHJvbWl1bS5nb29nbGVzb3VyY2UuY29tL2Nocm9taXVtL3NyYyIsICJsYW5ndWFnZSI6
ICJtb2pvbSIsICJzaWduYXR1cmUiOiAiYmxpbmsubW9qb20uU2F2YWJsZVN1YmZyYW1lIn19LCB7
ImVuZCI6IDEzNDgzMiwgImJlZ2luIjogMTM0ODIwLCAiZWRnZSI6ICIlL2t5dGhlL2VkZ2UvZ2Vu
ZXJhdGVzIiwgInR5cGUiOiAiYW5jaG9yX2RlZmluZXMiLCAidm5hbWUiOiB7ImNvcnB1cyI6ICJj
aHJvbWl1bS5nb29nbGVzb3VyY2UuY29tL2Nocm9taXVtL3NyYyIsICJsYW5ndWFnZSI6ICJtb2pv
bSIsICJzaWduYXR1cmUiOiAiYmxpbmsubW9qb20uU2F2YWJsZVN1YmZyYW1lLm9yaWdpbmFsX3Vy
bCJ9fSwgeyJlbmQiOiAxMzQ5MzYsICJiZWdpbiI6IDEzNDkyMiwgImVkZ2UiOiAiJS9reXRoZS9l
ZGdlL2dlbmVyYXRlcyIsICJ0eXBlIjogImFuY2hvcl9kZWZpbmVzIiwgInZuYW1lIjogeyJjb3Jw
dXMiOiAiY2hyb21pdW0uZ29vZ2xlc291cmNlLmNvbS9jaHJvbWl1bS9zcmMiLCAibGFuZ3VhZ2Ui
OiAibW9qb20iLCAic2lnbmF0dXJlIjogImJsaW5rLm1vam9tLlNhdmFibGVTdWJmcmFtZS5zdWJm
cmFtZV90b2tlbiJ9fSwgeyJlbmQiOiAxMzYwMjIsICJiZWdpbiI6IDEzNTk5NCwgImVkZ2UiOiAi
JS9reXRoZS9lZGdlL2dlbmVyYXRlcyIsICJ0eXBlIjogImFuY2hvcl9kZWZpbmVzIiwgInZuYW1l
IjogeyJjb3JwdXMiOiAiY2hyb21pdW0uZ29vZ2xlc291cmNlLmNvbS9jaHJvbWl1bS9zcmMiLCAi
bGFuZ3VhZ2UiOiAibW9qb20iLCAic2lnbmF0dXJlIjogImJsaW5rLm1vam9tLkdldFNhdmFibGVS
ZXNvdXJjZUxpbmtzUmVwbHkifX0sIHsiZW5kIjogMTQwMzMyLCAiYmVnaW4iOiAxNDAzMTgsICJl
ZGdlIjogIiUva3l0aGUvZWRnZS9nZW5lcmF0ZXMiLCAidHlwZSI6ICJhbmNob3JfZGVmaW5lcyIs
ICJ2bmFtZSI6IHsiY29ycHVzIjogImNocm9taXVtLmdvb2dsZXNvdXJjZS5jb20vY2hyb21pdW0v
c3JjIiwgImxhbmd1YWdlIjogIm1vam9tIiwgInNpZ25hdHVyZSI6ICJibGluay5tb2pvbS5HZXRT
YXZhYmxlUmVzb3VyY2VMaW5rc1JlcGx5LnJlc291cmNlc19saXN0In19LCB7ImVuZCI6IDE0MDQ0
MywgImJlZ2luIjogMTQwNDMyLCAiZWRnZSI6ICIlL2t5dGhlL2VkZ2UvZ2VuZXJhdGVzIiwgInR5
cGUiOiAiYW5jaG9yX2RlZmluZXMiLCAidm5hbWUiOiB7ImNvcnB1cyI6ICJjaHJvbWl1bS5nb29n
bGVzb3VyY2UuY29tL2Nocm9taXVtL3NyYyIsICJsYW5ndWFnZSI6ICJtb2pvbSIsICJzaWduYXR1
cmUiOiAiYmxpbmsubW9qb20uR2V0U2F2YWJsZVJlc291cmNlTGlua3NSZXBseS5yZWZlcnJlciJ9
fSwgeyJlbmQiOiAxNDA1NzEsICJiZWdpbiI6IDE0MDU2MiwgImVkZ2UiOiAiJS9reXRoZS9lZGdl
L2dlbmVyYXRlcyIsICJ0eXBlIjogImFuY2hvcl9kZWZpbmVzIiwgInZuYW1lIjogeyJjb3JwdXMi
OiAiY2hyb21pdW0uZ29vZ2xlc291cmNlLmNvbS9jaHJvbWl1bS9zcmMiLCAibGFuZ3VhZ2UiOiAi
bW9qb20iLCAic2lnbmF0dXJlIjogImJsaW5rLm1vam9tLkdldFNhdmFibGVSZXNvdXJjZUxpbmtz
UmVwbHkuc3ViZnJhbWVzIn19LCB7ImVuZCI6IDE0MTcwMSwgImJlZ2luIjogMTQxNjc3LCAiZWRn
ZSI6ICIlL2t5dGhlL2VkZ2UvZ2VuZXJhdGVzIiwgInR5cGUiOiAiYW5jaG9yX2RlZmluZXMiLCAi
dm5hbWUiOiB7ImNvcnB1cyI6ICJjaHJvbWl1bS5nb29nbGVzb3VyY2UuY29tL2Nocm9taXVtL3Ny
YyIsICJsYW5ndWFnZSI6ICJtb2pvbSIsICJzaWduYXR1cmUiOiAiYmxpbmsubW9qb20uRmluZElu
UGFnZVJlc3VsdEFYUGFyYW1zIn19LCB7ImVuZCI6IDE0NTc1OSwgImJlZ2luIjogMTQ1NzQ5LCAi
ZWRnZSI6ICIlL2t5dGhlL2VkZ2UvZ2VuZXJhdGVzIiwgInR5cGUiOiAiYW5jaG9yX2RlZmluZXMi
LCAidm5hbWUiOiB7ImNvcnB1cyI6ICJjaHJvbWl1bS5nb29nbGVzb3VyY2UuY29tL2Nocm9taXVt
L3NyYyIsICJsYW5ndWFnZSI6ICJtb2pvbSIsICJzaWduYXR1cmUiOiAiYmxpbmsubW9qb20uRmlu
ZEluUGFnZVJlc3VsdEFYUGFyYW1zLnJlcXVlc3RfaWQifX0sIHsiZW5kIjogMTQ1ODU0LCAiYmVn
aW4iOiAxNDU4NDMsICJlZGdlIjogIiUva3l0aGUvZWRnZS9nZW5lcmF0ZXMiLCAidHlwZSI6ICJh
bmNob3JfZGVmaW5lcyIsICJ2bmFtZSI6IHsiY29ycHVzIjogImNocm9taXVtLmdvb2dsZXNvdXJj
ZS5jb20vY2hyb21pdW0vc3JjIiwgImxhbmd1YWdlIjogIm1vam9tIiwgInNpZ25hdHVyZSI6ICJi
bGluay5tb2pvbS5GaW5kSW5QYWdlUmVzdWx0QVhQYXJhbXMubWF0Y2hfaW5kZXgifX0sIHsiZW5k
IjogMTQ1OTQzLCAiYmVnaW4iOiAxNDU5MzUsICJlZGdlIjogIiUva3l0aGUvZWRnZS9nZW5lcmF0
ZXMiLCAidHlwZSI6ICJhbmNob3JfZGVmaW5lcyIsICJ2bmFtZSI6IHsiY29ycHVzIjogImNocm9t
aXVtLmdvb2dsZXNvdXJjZS5jb20vY2hyb21pdW0vc3JjIiwgImxhbmd1YWdlIjogIm1vam9tIiwg
InNpZ25hdHVyZSI6ICJibGluay5tb2pvbS5GaW5kSW5QYWdlUmVzdWx0QVhQYXJhbXMuc3RhcnRf
aWQifX0sIHsiZW5kIjogMTQ2MDQwLCAiYmVnaW4iOiAxNDYwMjgsICJlZGdlIjogIiUva3l0aGUv
ZWRnZS9nZW5lcmF0ZXMiLCAidHlwZSI6ICJhbmNob3JfZGVmaW5lcyIsICJ2bmFtZSI6IHsiY29y
cHVzIjogImNocm9taXVtLmdvb2dsZXNvdXJjZS5jb20vY2hyb21pdW0vc3JjIiwgImxhbmd1YWdl
IjogIm1vam9tIiwgInNpZ25hdHVyZSI6ICJibGluay5tb2pvbS5GaW5kSW5QYWdlUmVzdWx0QVhQ
YXJhbXMuc3RhcnRfb2Zmc2V0In19LCB7ImVuZCI6IDE0NjEyNSwgImJlZ2luIjogMTQ2MTE5LCAi
ZWRnZSI6ICIlL2t5dGhlL2VkZ2UvZ2VuZXJhdGVzIiwgInR5cGUiOiAiYW5jaG9yX2RlZmluZXMi
LCAidm5hbWUiOiB7ImNvcnB1cyI6ICJjaHJvbWl1bS5nb29nbGVzb3VyY2UuY29tL2Nocm9taXVt
L3NyYyIsICJsYW5ndWFnZSI6ICJtb2pvbSIsICJzaWduYXR1cmUiOiAiYmxpbmsubW9qb20uRmlu
ZEluUGFnZVJlc3VsdEFYUGFyYW1zLmVuZF9pZCJ9fSwgeyJlbmQiOiAxNDYyMTgsICJiZWdpbiI6
IDE0NjIwOCwgImVkZ2UiOiAiJS9reXRoZS9lZGdlL2dlbmVyYXRlcyIsICJ0eXBlIjogImFuY2hv
cl9kZWZpbmVzIiwgInZuYW1lIjogeyJjb3JwdXMiOiAiY2hyb21pdW0uZ29vZ2xlc291cmNlLmNv
bS9jaHJvbWl1bS9zcmMiLCAibGFuZ3VhZ2UiOiAibW9qb20iLCAic2lnbmF0dXJlIjogImJsaW5r
Lm1vam9tLkZpbmRJblBhZ2VSZXN1bHRBWFBhcmFtcy5lbmRfb2Zmc2V0In19LCB7ImVuZCI6IDE0
NzMxOCwgImJlZ2luIjogMTQ3MzAxLCAiZWRnZSI6ICIlL2t5dGhlL2VkZ2UvZ2VuZXJhdGVzIiwg
InR5cGUiOiAiYW5jaG9yX2RlZmluZXMiLCAidm5hbWUiOiB7ImNvcnB1cyI6ICJjaHJvbWl1bS5n
b29nbGVzb3VyY2UuY29tL2Nocm9taXVtL3NyYyIsICJsYW5ndWFnZSI6ICJtb2pvbSIsICJzaWdu
YXR1cmUiOiAiYmxpbmsubW9qb20uRG93bmxvYWRVUkxQYXJhbXMifX0sIHsiZW5kIjogMTUxNDA5
LCAiYmVnaW4iOiAxNTE0MDYsICJlZGdlIjogIiUva3l0aGUvZWRnZS9nZW5lcmF0ZXMiLCAidHlw
ZSI6ICJhbmNob3JfZGVmaW5lcyIsICJ2bmFtZSI6IHsiY29ycHVzIjogImNocm9taXVtLmdvb2ds
ZXNvdXJjZS5jb20vY2hyb21pdW0vc3JjIiwgImxhbmd1YWdlIjogIm1vam9tIiwgInNpZ25hdHVy
ZSI6ICJibGluay5tb2pvbS5Eb3dubG9hZFVSTFBhcmFtcy51cmwifX0sIHsiZW5kIjogMTUxNTA5
LCAiYmVnaW4iOiAxNTE0OTgsICJlZGdlIjogIiUva3l0aGUvZWRnZS9nZW5lcmF0ZXMiLCAidHlw
ZSI6ICJhbmNob3JfZGVmaW5lcyIsICJ2bmFtZSI6IHsiY29ycHVzIjogImNocm9taXVtLmdvb2ds
ZXNvdXJjZS5jb20vY2hyb21pdW0vc3JjIiwgImxhbmd1YWdlIjogIm1vam9tIiwgInNpZ25hdHVy
ZSI6ICJibGluay5tb2pvbS5Eb3dubG9hZFVSTFBhcmFtcy5yZWZlcnJlciJ9fSwgeyJlbmQiOiAx
NTE2NTUsICJiZWdpbiI6IDE1MTYzOSwgImVkZ2UiOiAiJS9reXRoZS9lZGdlL2dlbmVyYXRlcyIs
ICJ0eXBlIjogImFuY2hvcl9kZWZpbmVzIiwgInZuYW1lIjogeyJjb3JwdXMiOiAiY2hyb21pdW0u
Z29vZ2xlc291cmNlLmNvbS9jaHJvbWl1bS9zcmMiLCAibGFuZ3VhZ2UiOiAibW9qb20iLCAic2ln
bmF0dXJlIjogImJsaW5rLm1vam9tLkRvd25sb2FkVVJMUGFyYW1zLmluaXRpYXRvcl9vcmlnaW4i
fX0sIHsiZW5kIjogMTUxNzU1LCAiYmVnaW4iOiAxNTE3NDEsICJlZGdlIjogIiUva3l0aGUvZWRn
ZS9nZW5lcmF0ZXMiLCAidHlwZSI6ICJhbmNob3JfZGVmaW5lcyIsICJ2bmFtZSI6IHsiY29ycHVz
IjogImNocm9taXVtLmdvb2dsZXNvdXJjZS5jb20vY2hyb21pdW0vc3JjIiwgImxhbmd1YWdlIjog
Im1vam9tIiwgInNpZ25hdHVyZSI6ICJibGluay5tb2pvbS5Eb3dubG9hZFVSTFBhcmFtcy5zdWdn
ZXN0ZWRfbmFtZSJ9fSwgeyJlbmQiOiAxNTE4OTUsICJiZWdpbiI6IDE1MTg3MywgImVkZ2UiOiAi
JS9reXRoZS9lZGdlL2dlbmVyYXRlcyIsICJ0eXBlIjogImFuY2hvcl9kZWZpbmVzIiwgInZuYW1l
IjogeyJjb3JwdXMiOiAiY2hyb21pdW0uZ29vZ2xlc291cmNlLmNvbS9jaHJvbWl1bS9zcmMiLCAi
bGFuZ3VhZ2UiOiAibW9qb20iLCAic2lnbmF0dXJlIjogImJsaW5rLm1vam9tLkRvd25sb2FkVVJM
UGFyYW1zLmNyb3NzX29yaWdpbl9yZWRpcmVjdHMifX0sIHsiZW5kIjogMTUyMDQwLCAiYmVnaW4i
OiAxNTIwMjYsICJlZGdlIjogIiUva3l0aGUvZWRnZS9nZW5lcmF0ZXMiLCAidHlwZSI6ICJhbmNo
b3JfZGVmaW5lcyIsICJ2bmFtZSI6IHsiY29ycHVzIjogImNocm9taXVtLmdvb2dsZXNvdXJjZS5j
b20vY2hyb21pdW0vc3JjIiwgImxhbmd1YWdlIjogIm1vam9tIiwgInNpZ25hdHVyZSI6ICJibGlu
ay5tb2pvbS5Eb3dubG9hZFVSTFBhcmFtcy5ibG9iX3VybF90b2tlbiJ9fSwgeyJlbmQiOiAxNTIx
NzUsICJiZWdpbiI6IDE1MjE2MiwgImVkZ2UiOiAiJS9reXRoZS9lZGdlL2dlbmVyYXRlcyIsICJ0
eXBlIjogImFuY2hvcl9kZWZpbmVzIiwgInZuYW1lIjogeyJjb3JwdXMiOiAiY2hyb21pdW0uZ29v
Z2xlc291cmNlLmNvbS9jaHJvbWl1bS9zcmMiLCAibGFuZ3VhZ2UiOiAibW9qb20iLCAic2lnbmF0
dXJlIjogImJsaW5rLm1vam9tLkRvd25sb2FkVVJMUGFyYW1zLmRhdGFfdXJsX2Jsb2IifX0sIHsi
ZW5kIjogMTUyMjc4LCAiYmVnaW4iOiAxNTIyNTgsICJlZGdlIjogIiUva3l0aGUvZWRnZS9nZW5l
cmF0ZXMiLCAidHlwZSI6ICJhbmNob3JfZGVmaW5lcyIsICJ2bmFtZSI6IHsiY29ycHVzIjogImNo
cm9taXVtLmdvb2dsZXNvdXJjZS5jb20vY2hyb21pdW0vc3JjIiwgImxhbmd1YWdlIjogIm1vam9t
IiwgInNpZ25hdHVyZSI6ICJibGluay5tb2pvbS5Eb3dubG9hZFVSTFBhcmFtcy5pc19jb250ZXh0
X21lbnVfc2F2ZSJ9fSwgeyJlbmQiOiAxNTIzNzMsICJiZWdpbiI6IDE1MjM1NywgImVkZ2UiOiAi
JS9reXRoZS9lZGdlL2dlbmVyYXRlcyIsICJ0eXBlIjogImFuY2hvcl9kZWZpbmVzIiwgInZuYW1l
IjogeyJjb3JwdXMiOiAiY2hyb21pdW0uZ29vZ2xlc291cmNlLmNvbS9jaHJvbWl1bS9zcmMiLCAi
bGFuZ3VhZ2UiOiAibW9qb20iLCAic2lnbmF0dXJlIjogImJsaW5rLm1vam9tLkRvd25sb2FkVVJM
UGFyYW1zLmhhc191c2VyX2dlc3R1cmUifX0sIHsiZW5kIjogMTUzNDM3LCAiYmVnaW4iOiAxNTM0
MjQsICJlZGdlIjogIiUva3l0aGUvZWRnZS9nZW5lcmF0ZXMiLCAidHlwZSI6ICJhbmNob3JfZGVm
aW5lcyIsICJ2bmFtZSI6IHsiY29ycHVzIjogImNocm9taXVtLmdvb2dsZXNvdXJjZS5jb20vY2hy
b21pdW0vc3JjIiwgImxhbmd1YWdlIjogIm1vam9tIiwgInNpZ25hdHVyZSI6ICJibGluay5tb2pv
bS5PcGVuVVJMUGFyYW1zIn19LCB7ImVuZCI6IDE1Nzk4NywgImJlZ2luIjogMTU3OTg0LCAiZWRn
ZSI6ICIlL2t5dGhlL2VkZ2UvZ2VuZXJhdGVzIiwgInR5cGUiOiAiYW5jaG9yX2RlZmluZXMiLCAi
dm5hbWUiOiB7ImNvcnB1cyI6ICJjaHJvbWl1bS5nb29nbGVzb3VyY2UuY29tL2Nocm9taXVtL3Ny
YyIsICJsYW5ndWFnZSI6ICJtb2pvbSIsICJzaWduYXR1cmUiOiAiYmxpbmsubW9qb20uT3BlblVS
TFBhcmFtcy51cmwifX0sIHsiZW5kIjogMTU4MTIwLCAiYmVnaW4iOiAxNTgxMDQsICJlZGdlIjog
IiUva3l0aGUvZWRnZS9nZW5lcmF0ZXMiLCAidHlwZSI6ICJhbmNob3JfZGVmaW5lcyIsICJ2bmFt
ZSI6IHsiY29ycHVzIjogImNocm9taXVtLmdvb2dsZXNvdXJjZS5jb20vY2hyb21pdW0vc3JjIiwg
Imxhbmd1YWdlIjogIm1vam9tIiwgInNpZ25hdHVyZSI6ICJibGluay5tb2pvbS5PcGVuVVJMUGFy
YW1zLmluaXRpYXRvcl9vcmlnaW4ifX0sIHsiZW5kIjogMTU4MjU3LCAiYmVnaW4iOiAxNTgyMzYs
ICJlZGdlIjogIiUva3l0aGUvZWRnZS9nZW5lcmF0ZXMiLCAidHlwZSI6ICJhbmNob3JfZGVmaW5l
cyIsICJ2bmFtZSI6IHsiY29ycHVzIjogImNocm9taXVtLmdvb2dsZXNvdXJjZS5jb20vY2hyb21p
dW0vc3JjIiwgImxhbmd1YWdlIjogIm1vam9tIiwgInNpZ25hdHVyZSI6ICJibGluay5tb2pvbS5P
cGVuVVJMUGFyYW1zLmluaXRpYXRvcl9mcmFtZV90b2tlbiJ9fSwgeyJlbmQiOiAxNTgzNzcsICJi
ZWdpbiI6IDE1ODM2OCwgImVkZ2UiOiAiJS9reXRoZS9lZGdlL2dlbmVyYXRlcyIsICJ0eXBlIjog
ImFuY2hvcl9kZWZpbmVzIiwgInZuYW1lIjogeyJjb3JwdXMiOiAiY2hyb21pdW0uZ29vZ2xlc291
cmNlLmNvbS9jaHJvbWl1bS9zcmMiLCAibGFuZ3VhZ2UiOiAibW9qb20iLCAic2lnbmF0dXJlIjog
ImJsaW5rLm1vam9tLk9wZW5VUkxQYXJhbXMucG9zdF9ib2R5In19LCB7ImVuZCI6IDE1ODQ2OSwg
ImJlZ2luIjogMTU4NDU2LCAiZWRnZSI6ICIlL2t5dGhlL2VkZ2UvZ2VuZXJhdGVzIiwgInR5cGUi
OiAiYW5jaG9yX2RlZmluZXMiLCAidm5hbWUiOiB7ImNvcnB1cyI6ICJjaHJvbWl1bS5nb29nbGVz
b3VyY2UuY29tL2Nocm9taXVtL3NyYyIsICJsYW5ndWFnZSI6ICJtb2pvbSIsICJzaWduYXR1cmUi
OiAiYmxpbmsubW9qb20uT3BlblVSTFBhcmFtcy5leHRyYV9oZWFkZXJzIn19LCB7ImVuZCI6IDE1
ODU2NSwgImJlZ2luIjogMTU4NTU0LCAiZWRnZSI6ICIlL2t5dGhlL2VkZ2UvZ2VuZXJhdGVzIiwg
InR5cGUiOiAiYW5jaG9yX2RlZmluZXMiLCAidm5hbWUiOiB7ImNvcnB1cyI6ICJjaHJvbWl1bS5n
b29nbGVzb3VyY2UuY29tL2Nocm9taXVtL3NyYyIsICJsYW5ndWFnZSI6ICJtb2pvbSIsICJzaWdu
YXR1cmUiOiAiYmxpbmsubW9qb20uT3BlblVSTFBhcmFtcy5yZWZlcnJlciJ9fSwgeyJlbmQiOiAx
NTg2NjksICJiZWdpbiI6IDE1ODY1MSwgImVkZ2UiOiAiJS9reXRoZS9lZGdlL2dlbmVyYXRlcyIs
ICJ0eXBlIjogImFuY2hvcl9kZWZpbmVzIiwgInZuYW1lIjogeyJjb3JwdXMiOiAiY2hyb21pdW0u
Z29vZ2xlc291cmNlLmNvbS9jaHJvbWl1bS9zcmMiLCAibGFuZ3VhZ2UiOiAibW9qb20iLCAic2ln
bmF0dXJlIjogImJsaW5rLm1vam9tLk9wZW5VUkxQYXJhbXMuaXNfZm9ybV9zdWJtaXNzaW9uIn19
LCB7ImVuZCI6IDE1ODc4NywgImJlZ2luIjogMTU4Nzc2LCAiZWRnZSI6ICIlL2t5dGhlL2VkZ2Uv
Z2VuZXJhdGVzIiwgInR5cGUiOiAiYW5jaG9yX2RlZmluZXMiLCAidm5hbWUiOiB7ImNvcnB1cyI6
ICJjaHJvbWl1bS5nb29nbGVzb3VyY2UuY29tL2Nocm9taXVtL3NyYyIsICJsYW5ndWFnZSI6ICJt
b2pvbSIsICJzaWduYXR1cmUiOiAiYmxpbmsubW9qb20uT3BlblVSTFBhcmFtcy5kaXNwb3NpdGlv
biJ9fSwgeyJlbmQiOiAxNTg5MDIsICJiZWdpbiI6IDE1ODg3NCwgImVkZ2UiOiAiJS9reXRoZS9l
ZGdlL2dlbmVyYXRlcyIsICJ0eXBlIjogImFuY2hvcl9kZWZpbmVzIiwgInZuYW1lIjogeyJjb3Jw
dXMiOiAiY2hyb21pdW0uZ29vZ2xlc291cmNlLmNvbS9jaHJvbWl1bS9zcmMiLCAibGFuZ3VhZ2Ui
OiAibW9qb20iLCAic2lnbmF0dXJlIjogImJsaW5rLm1vam9tLk9wZW5VUkxQYXJhbXMuc2hvdWxk
X3JlcGxhY2VfY3VycmVudF9lbnRyeSJ9fSwgeyJlbmQiOiAxNTg5ODUsICJiZWdpbiI6IDE1ODk3
MywgImVkZ2UiOiAiJS9reXRoZS9lZGdlL2dlbmVyYXRlcyIsICJ0eXBlIjogImFuY2hvcl9kZWZp
bmVzIiwgInZuYW1lIjogeyJjb3JwdXMiOiAiY2hyb21pdW0uZ29vZ2xlc291cmNlLmNvbS9jaHJv
bWl1bS9zcmMiLCAibGFuZ3VhZ2UiOiAibW9qb20iLCAic2lnbmF0dXJlIjogImJsaW5rLm1vam9t
Lk9wZW5VUkxQYXJhbXMudXNlcl9nZXN0dXJlIn19LCB7ImVuZCI6IDE1OTA5NiwgImJlZ2luIjog
MTU5MDcwLCAiZWRnZSI6ICIlL2t5dGhlL2VkZ2UvZ2VuZXJhdGVzIiwgInR5cGUiOiAiYW5jaG9y
X2RlZmluZXMiLCAidm5hbWUiOiB7ImNvcnB1cyI6ICJjaHJvbWl1bS5nb29nbGVzb3VyY2UuY29t
L2Nocm9taXVtL3NyYyIsICJsYW5ndWFnZSI6ICJtb2pvbSIsICJzaWduYXR1cmUiOiAiYmxpbmsu
bW9qb20uT3BlblVSTFBhcmFtcy5pc191bmZlbmNlZF90b3BfbmF2aWdhdGlvbiJ9fSwgeyJlbmQi
OiAxNTkyMzUsICJiZWdpbiI6IDE1OTIxNCwgImVkZ2UiOiAiJS9reXRoZS9lZGdlL2dlbmVyYXRl
cyIsICJ0eXBlIjogImFuY2hvcl9kZWZpbmVzIiwgInZuYW1lIjogeyJjb3JwdXMiOiAiY2hyb21p
dW0uZ29vZ2xlc291cmNlLmNvbS9jaHJvbWl1bS9zcmMiLCAibGFuZ3VhZ2UiOiAibW9qb20iLCAi
c2lnbmF0dXJlIjogImJsaW5rLm1vam9tLk9wZW5VUkxQYXJhbXMudHJpZ2dlcmluZ19ldmVudF9p
bmZvIn19LCB7ImVuZCI6IDE1OTM3NiwgImJlZ2luIjogMTU5MzYyLCAiZWRnZSI6ICIlL2t5dGhl
L2VkZ2UvZ2VuZXJhdGVzIiwgInR5cGUiOiAiYW5jaG9yX2RlZmluZXMiLCAidm5hbWUiOiB7ImNv
cnB1cyI6ICJjaHJvbWl1bS5nb29nbGVzb3VyY2UuY29tL2Nocm9taXVtL3NyYyIsICJsYW5ndWFn
ZSI6ICJtb2pvbSIsICJzaWduYXR1cmUiOiAiYmxpbmsubW9qb20uT3BlblVSTFBhcmFtcy5ibG9i
X3VybF90b2tlbiJ9fSwgeyJlbmQiOiAxNTk0NzAsICJiZWdpbiI6IDE1OTQ1NiwgImVkZ2UiOiAi
JS9reXRoZS9lZGdlL2dlbmVyYXRlcyIsICJ0eXBlIjogImFuY2hvcl9kZWZpbmVzIiwgInZuYW1l
IjogeyJjb3JwdXMiOiAiY2hyb21pdW0uZ29vZ2xlc291cmNlLmNvbS9jaHJvbWl1bS9zcmMiLCAi
bGFuZ3VhZ2UiOiAibW9qb20iLCAic2lnbmF0dXJlIjogImJsaW5rLm1vam9tLk9wZW5VUkxQYXJh
bXMuaHJlZl90cmFuc2xhdGUifX0sIHsiZW5kIjogMTU5NTY4LCAiYmVnaW4iOiAxNTk1NTgsICJl
ZGdlIjogIiUva3l0aGUvZWRnZS9nZW5lcmF0ZXMiLCAidHlwZSI6ICJhbmNob3JfZGVmaW5lcyIs
ICJ2bmFtZSI6IHsiY29ycHVzIjogImNocm9taXVtLmdvb2dsZXNvdXJjZS5jb20vY2hyb21pdW0v
c3JjIiwgImxhbmd1YWdlIjogIm1vam9tIiwgInNpZ25hdHVyZSI6ICJibGluay5tb2pvbS5PcGVu
VVJMUGFyYW1zLmltcHJlc3Npb24ifX0sIHsiZW5kIjogMTU5Njk4LCAiYmVnaW4iOiAxNTk2ODMs
ICJlZGdlIjogIiUva3l0aGUvZWRnZS9nZW5lcmF0ZXMiLCAidHlwZSI6ICJhbmNob3JfZGVmaW5l
cyIsICJ2bmFtZSI6IHsiY29ycHVzIjogImNocm9taXVtLmdvb2dsZXNvdXJjZS5jb20vY2hyb21p
dW0vc3JjIiwgImxhbmd1YWdlIjogIm1vam9tIiwgInNpZ25hdHVyZSI6ICJibGluay5tb2pvbS5P
cGVuVVJMUGFyYW1zLmRvd25sb2FkX3BvbGljeSJ9fSwgeyJlbmQiOiAxNTk4MjUsICJiZWdpbiI6
IDE1OTgxMCwgImVkZ2UiOiAiJS9reXRoZS9lZGdlL2dlbmVyYXRlcyIsICJ0eXBlIjogImFuY2hv
cl9kZWZpbmVzIiwgInZuYW1lIjogeyJjb3JwdXMiOiAiY2hyb21pdW0uZ29vZ2xlc291cmNlLmNv
bS9jaHJvbWl1bS9zcmMiLCAibGFuZ3VhZ2UiOiAibW9qb20iLCAic2lnbmF0dXJlIjogImJsaW5r
Lm1vam9tLk9wZW5VUkxQYXJhbXMuc291cmNlX2xvY2F0aW9uIn19LCB7ImVuZCI6IDE2MDA0OCwg
ImJlZ2luIjogMTYwMDA0LCAiZWRnZSI6ICIlL2t5dGhlL2VkZ2UvZ2VuZXJhdGVzIiwgInR5cGUi
OiAiYW5jaG9yX2RlZmluZXMiLCAidm5hbWUiOiB7ImNvcnB1cyI6ICJjaHJvbWl1bS5nb29nbGVz
b3VyY2UuY29tL2Nocm9taXVtL3NyYyIsICJsYW5ndWFnZSI6ICJtb2pvbSIsICJzaWduYXR1cmUi
OiAiYmxpbmsubW9qb20uT3BlblVSTFBhcmFtcy5pbml0aWF0b3JfcG9saWN5X2NvbnRhaW5lcl9r
ZWVwX2FsaXZlX2hhbmRsZSJ9fV0sICJ0eXBlIjogImt5dGhlMCJ9
*/