| // mojo/public/tools/fuzzers/fuzz.mojom.h is auto generated by mojom_bindings_generator.py, do not edit |
| |
| // Copyright 2013 The Chromium Authors |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| #ifndef MOJO_PUBLIC_TOOLS_FUZZERS_FUZZ_MOJOM_H_ |
| #define MOJO_PUBLIC_TOOLS_FUZZERS_FUZZ_MOJOM_H_ |
| |
| #include <stdint.h> |
| |
| #include <limits> |
| #include <optional> |
| #include <type_traits> |
| #include <utility> |
| |
| #include "base/types/cxx23_to_underlying.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 "mojo/public/tools/fuzzers/fuzz.mojom-features.h" |
| #include "mojo/public/tools/fuzzers/fuzz.mojom-shared.h" |
| #include "mojo/public/tools/fuzzers/fuzz.mojom-forward.h" |
| #include <string> |
| #include <vector> |
| |
| #include "mojo/public/cpp/bindings/lib/control_message_handler.h" |
| #include "mojo/public/cpp/bindings/lib/message_size_estimator.h" |
| #include "mojo/public/cpp/bindings/raw_ptr_impl_ref_traits.h" |
| |
| |
| |
| #ifdef KYTHE_IS_RUNNING |
| #pragma kythe_inline_metadata "Metadata comment" |
| #endif |
| |
| |
| namespace fuzz::mojom { |
| |
| class FuzzDummyInterfaceProxy; |
| |
| template <typename ImplRefTraits> |
| class FuzzDummyInterfaceStub; |
| |
| class FuzzDummyInterfaceRequestValidator; |
| |
| |
| // @generated_from: fuzz.mojom.FuzzDummyInterface |
| class FuzzDummyInterface |
| : public FuzzDummyInterfaceInterfaceBase { |
| public: |
| using IPCStableHashFunction = uint32_t(*)(); |
| |
| static const char Name_[]; |
| static IPCStableHashFunction 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 HasUninterruptableMethods_ = false; |
| |
| using Base_ = FuzzDummyInterfaceInterfaceBase; |
| using Proxy_ = FuzzDummyInterfaceProxy; |
| |
| template <typename ImplRefTraits> |
| using Stub_ = FuzzDummyInterfaceStub<ImplRefTraits>; |
| |
| using RequestValidator_ = FuzzDummyInterfaceRequestValidator; |
| using ResponseValidator_ = mojo::PassThroughFilter; |
| enum MethodMinVersions : uint32_t { |
| kPingMinVersion = 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 Ping_Sym { |
| NOINLINE static uint32_t IPCStableHash(); |
| }; |
| #endif // !BUILDFLAG(IS_FUCHSIA) |
| virtual ~FuzzDummyInterface() = default; |
| |
| |
| // @generated_from: fuzz.mojom.FuzzDummyInterface.Ping |
| virtual void Ping() = 0; |
| }; |
| |
| class FuzzInterfaceProxy; |
| |
| template <typename ImplRefTraits> |
| class FuzzInterfaceStub; |
| |
| class FuzzInterfaceRequestValidator; |
| class FuzzInterfaceResponseValidator; |
| |
| |
| // @generated_from: fuzz.mojom.FuzzInterface |
| class FuzzInterface |
| : public FuzzInterfaceInterfaceBase { |
| public: |
| using IPCStableHashFunction = uint32_t(*)(); |
| |
| static const char Name_[]; |
| static IPCStableHashFunction MessageToMethodInfo_(mojo::Message& message); |
| static const char* MessageToMethodName_(mojo::Message& message); |
| static constexpr uint32_t Version_ = 0; |
| static constexpr bool PassesAssociatedKinds_ = true; |
| static inline constexpr uint32_t kSyncMethodOrdinals[] = { |
| 2, |
| 5 |
| }; |
| static constexpr bool HasUninterruptableMethods_ = false; |
| |
| using Base_ = FuzzInterfaceInterfaceBase; |
| using Proxy_ = FuzzInterfaceProxy; |
| |
| template <typename ImplRefTraits> |
| using Stub_ = FuzzInterfaceStub<ImplRefTraits>; |
| |
| using RequestValidator_ = FuzzInterfaceRequestValidator; |
| using ResponseValidator_ = FuzzInterfaceResponseValidator; |
| enum MethodMinVersions : uint32_t { |
| kFuzzBasicMinVersion = 0, |
| kFuzzBasicRespMinVersion = 0, |
| kFuzzBasicSyncRespMinVersion = 0, |
| kFuzzArgsMinVersion = 0, |
| kFuzzArgsRespMinVersion = 0, |
| kFuzzArgsSyncRespMinVersion = 0, |
| kFuzzAssociatedMinVersion = 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 FuzzBasic_Sym { |
| NOINLINE static uint32_t IPCStableHash(); |
| }; |
| struct FuzzBasicResp_Sym { |
| NOINLINE static uint32_t IPCStableHash(); |
| }; |
| struct FuzzBasicSyncResp_Sym { |
| NOINLINE static uint32_t IPCStableHash(); |
| }; |
| struct FuzzArgs_Sym { |
| NOINLINE static uint32_t IPCStableHash(); |
| }; |
| struct FuzzArgsResp_Sym { |
| NOINLINE static uint32_t IPCStableHash(); |
| }; |
| struct FuzzArgsSyncResp_Sym { |
| NOINLINE static uint32_t IPCStableHash(); |
| }; |
| struct FuzzAssociated_Sym { |
| NOINLINE static uint32_t IPCStableHash(); |
| }; |
| #endif // !BUILDFLAG(IS_FUCHSIA) |
| virtual ~FuzzInterface() = default; |
| |
| |
| // @generated_from: fuzz.mojom.FuzzInterface.FuzzBasic |
| virtual void FuzzBasic() = 0; |
| |
| |
| using FuzzBasicRespCallback = base::OnceCallback<void()>; |
| |
| // @generated_from: fuzz.mojom.FuzzInterface.FuzzBasicResp |
| virtual void FuzzBasicResp(FuzzBasicRespCallback callback) = 0; |
| |
| // Sync method. This signature is used by the client side; the service side |
| // should implement the signature with callback below. |
| |
| // @generated_from: fuzz.mojom.FuzzInterface.FuzzBasicSyncResp |
| virtual bool FuzzBasicSyncResp(); |
| |
| using FuzzBasicSyncRespCallback = base::OnceCallback<void()>; |
| |
| // @generated_from: fuzz.mojom.FuzzInterface.FuzzBasicSyncResp |
| virtual void FuzzBasicSyncResp(FuzzBasicSyncRespCallback callback) = 0; |
| |
| |
| // @generated_from: fuzz.mojom.FuzzInterface.FuzzArgs |
| virtual void FuzzArgs(FuzzStructPtr a, FuzzStructPtr b) = 0; |
| |
| |
| using FuzzArgsRespCallback = base::OnceCallback<void()>; |
| |
| // @generated_from: fuzz.mojom.FuzzInterface.FuzzArgsResp |
| virtual void FuzzArgsResp(FuzzStructPtr a, FuzzStructPtr b, FuzzArgsRespCallback callback) = 0; |
| |
| // Sync method. This signature is used by the client side; the service side |
| // should implement the signature with callback below. |
| |
| // @generated_from: fuzz.mojom.FuzzInterface.FuzzArgsSyncResp |
| virtual bool FuzzArgsSyncResp(FuzzStructPtr a, FuzzStructPtr b); |
| |
| using FuzzArgsSyncRespCallback = base::OnceCallback<void()>; |
| |
| // @generated_from: fuzz.mojom.FuzzInterface.FuzzArgsSyncResp |
| virtual void FuzzArgsSyncResp(FuzzStructPtr a, FuzzStructPtr b, FuzzArgsSyncRespCallback callback) = 0; |
| |
| |
| // @generated_from: fuzz.mojom.FuzzInterface.FuzzAssociated |
| virtual void FuzzAssociated(::mojo::PendingAssociatedReceiver<FuzzDummyInterface> receiver) = 0; |
| }; |
| |
| |
| |
| // @generated_from: fuzz.mojom.FuzzDummyInterface |
| class FuzzDummyInterfaceProxy |
| : public FuzzDummyInterface { |
| public: |
| using InterfaceType = FuzzDummyInterface; |
| |
| explicit FuzzDummyInterfaceProxy(mojo::MessageReceiverWithResponder* receiver); |
| |
| // @generated_from: fuzz.mojom.FuzzDummyInterface.Ping |
| void Ping() final; |
| |
| private: |
| mojo::MessageReceiverWithResponder* receiver_; |
| }; |
| |
| |
| |
| // @generated_from: fuzz.mojom.FuzzInterface |
| class FuzzInterfaceProxy |
| : public FuzzInterface { |
| public: |
| using InterfaceType = FuzzInterface; |
| |
| explicit FuzzInterfaceProxy(mojo::MessageReceiverWithResponder* receiver); |
| |
| // @generated_from: fuzz.mojom.FuzzInterface.FuzzBasic |
| void FuzzBasic() final; |
| |
| // @generated_from: fuzz.mojom.FuzzInterface.FuzzBasicResp |
| void FuzzBasicResp(FuzzBasicRespCallback callback) final; |
| |
| // @generated_from: fuzz.mojom.FuzzInterface.FuzzBasicSyncResp |
| bool FuzzBasicSyncResp() final; |
| |
| // @generated_from: fuzz.mojom.FuzzInterface.FuzzBasicSyncResp |
| void FuzzBasicSyncResp(FuzzBasicSyncRespCallback callback) final; |
| |
| // @generated_from: fuzz.mojom.FuzzInterface.FuzzArgs |
| void FuzzArgs(FuzzStructPtr a, FuzzStructPtr b) final; |
| |
| // @generated_from: fuzz.mojom.FuzzInterface.FuzzArgsResp |
| void FuzzArgsResp(FuzzStructPtr a, FuzzStructPtr b, FuzzArgsRespCallback callback) final; |
| |
| // @generated_from: fuzz.mojom.FuzzInterface.FuzzArgsSyncResp |
| bool FuzzArgsSyncResp(FuzzStructPtr a, FuzzStructPtr b) final; |
| |
| // @generated_from: fuzz.mojom.FuzzInterface.FuzzArgsSyncResp |
| void FuzzArgsSyncResp(FuzzStructPtr a, FuzzStructPtr b, FuzzArgsSyncRespCallback callback) final; |
| |
| // @generated_from: fuzz.mojom.FuzzInterface.FuzzAssociated |
| void FuzzAssociated(::mojo::PendingAssociatedReceiver<FuzzDummyInterface> receiver) final; |
| |
| private: |
| mojo::MessageReceiverWithResponder* receiver_; |
| }; |
| class FuzzDummyInterfaceStubDispatch { |
| public: |
| static bool Accept(FuzzDummyInterface* impl, mojo::Message* message); |
| static bool AcceptWithResponder( |
| FuzzDummyInterface* impl, |
| mojo::Message* message, |
| std::unique_ptr<mojo::MessageReceiverWithStatus> responder); |
| }; |
| |
| template <typename ImplRefTraits = |
| mojo::RawPtrImplRefTraits<FuzzDummyInterface>> |
| class FuzzDummyInterfaceStub |
| : public mojo::MessageReceiverWithResponderStatus { |
| public: |
| using ImplPointerType = typename ImplRefTraits::PointerType; |
| |
| FuzzDummyInterfaceStub() = default; |
| ~FuzzDummyInterfaceStub() 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 FuzzDummyInterfaceStubDispatch::Accept( |
| ImplRefTraits::GetRawPointer(&sink_), message); |
| } |
| |
| bool AcceptWithResponder( |
| mojo::Message* message, |
| std::unique_ptr<mojo::MessageReceiverWithStatus> responder) override { |
| if (ImplRefTraits::IsNull(sink_)) |
| return false; |
| return FuzzDummyInterfaceStubDispatch::AcceptWithResponder( |
| ImplRefTraits::GetRawPointer(&sink_), message, std::move(responder)); |
| } |
| |
| private: |
| ImplPointerType sink_; |
| }; |
| class FuzzInterfaceStubDispatch { |
| public: |
| static bool Accept(FuzzInterface* impl, mojo::Message* message); |
| static bool AcceptWithResponder( |
| FuzzInterface* impl, |
| mojo::Message* message, |
| std::unique_ptr<mojo::MessageReceiverWithStatus> responder); |
| }; |
| |
| template <typename ImplRefTraits = |
| mojo::RawPtrImplRefTraits<FuzzInterface>> |
| class FuzzInterfaceStub |
| : public mojo::MessageReceiverWithResponderStatus { |
| public: |
| using ImplPointerType = typename ImplRefTraits::PointerType; |
| |
| FuzzInterfaceStub() = default; |
| ~FuzzInterfaceStub() 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 FuzzInterfaceStubDispatch::Accept( |
| ImplRefTraits::GetRawPointer(&sink_), message); |
| } |
| |
| bool AcceptWithResponder( |
| mojo::Message* message, |
| std::unique_ptr<mojo::MessageReceiverWithStatus> responder) override { |
| if (ImplRefTraits::IsNull(sink_)) |
| return false; |
| return FuzzInterfaceStubDispatch::AcceptWithResponder( |
| ImplRefTraits::GetRawPointer(&sink_), message, std::move(responder)); |
| } |
| |
| private: |
| ImplPointerType sink_; |
| }; |
| class FuzzDummyInterfaceRequestValidator : public mojo::MessageReceiver { |
| public: |
| bool Accept(mojo::Message* message) override; |
| }; |
| class FuzzInterfaceRequestValidator : public mojo::MessageReceiver { |
| public: |
| bool Accept(mojo::Message* message) override; |
| }; |
| class FuzzInterfaceResponseValidator : public mojo::MessageReceiver { |
| public: |
| bool Accept(mojo::Message* message) override; |
| }; |
| |
| |
| |
| |
| |
| // @generated_from: fuzz.mojom.FuzzDummyStruct |
| class FuzzDummyStruct { |
| public: |
| template <typename T> |
| using EnableIfSame = std::enable_if_t<std::is_same<FuzzDummyStruct, T>::value>; |
| using DataView = FuzzDummyStructDataView; |
| using Data_ = internal::FuzzDummyStruct_Data; |
| |
| template <typename... Args> |
| static FuzzDummyStructPtr New(Args&&... args) { |
| return FuzzDummyStructPtr( |
| std::in_place, std::forward<Args>(args)...); |
| } |
| |
| template <typename U> |
| static FuzzDummyStructPtr From(const U& u) { |
| return mojo::TypeConverter<FuzzDummyStructPtr, U>::Convert(u); |
| } |
| |
| template <typename U> |
| U To() const { |
| return mojo::TypeConverter<U, FuzzDummyStruct>::Convert(*this); |
| } |
| |
| |
| FuzzDummyStruct(); |
| |
| explicit FuzzDummyStruct( |
| int8_t dummy); |
| |
| |
| ~FuzzDummyStruct(); |
| |
| // 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 = FuzzDummyStructPtr> |
| FuzzDummyStructPtr 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, FuzzDummyStruct::EnableIfSame<T>* = nullptr> |
| bool Equals(const T& other) const; |
| |
| template <typename T, FuzzDummyStruct::EnableIfSame<T>* = nullptr> |
| bool operator==(const T& rhs) const { return Equals(rhs); } |
| |
| template <typename T, FuzzDummyStruct::EnableIfSame<T>* = nullptr> |
| bool operator!=(const T& rhs) const { return !operator==(rhs); } |
| size_t Hash(size_t seed) const; |
| template <typename UserType> |
| static std::vector<uint8_t> Serialize(UserType* input) { |
| return mojo::internal::SerializeImpl< |
| FuzzDummyStruct::DataView, std::vector<uint8_t>>(input); |
| } |
| |
| template <typename UserType> |
| static mojo::Message SerializeAsMessage(UserType* input) { |
| return mojo::internal::SerializeAsMessageImpl< |
| FuzzDummyStruct::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::FuzzDummyStruct_UnserializedMessageContext< |
| UserType, FuzzDummyStruct::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<FuzzDummyStruct::DataView>( |
| message, data, data_num_bytes, output, Validate); |
| } |
| |
| template <typename UserType> |
| static bool Deserialize(const std::vector<uint8_t>& input, |
| UserType* output) { |
| return FuzzDummyStruct::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::FuzzDummyStruct_UnserializedMessageContext< |
| UserType, FuzzDummyStruct::DataView>>(); |
| if (context) { |
| *output = std::move(context->TakeData()); |
| return true; |
| } |
| input.SerializeIfNecessary(); |
| return mojo::internal::DeserializeImpl<FuzzDummyStruct::DataView>( |
| input, input.payload(), input.payload_num_bytes(), output, Validate); |
| } |
| |
| |
| // @generated_from: fuzz.mojom.FuzzDummyStruct.dummy |
| int8_t dummy; |
| |
| // 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, FuzzDummyStruct::EnableIfSame<T>* = nullptr> |
| bool operator<(const T& lhs, const T& rhs); |
| |
| template <typename T, FuzzDummyStruct::EnableIfSame<T>* = nullptr> |
| bool operator<=(const T& lhs, const T& rhs) { |
| return !(rhs < lhs); |
| } |
| |
| template <typename T, FuzzDummyStruct::EnableIfSame<T>* = nullptr> |
| bool operator>(const T& lhs, const T& rhs) { |
| return rhs < lhs; |
| } |
| |
| template <typename T, FuzzDummyStruct::EnableIfSame<T>* = nullptr> |
| bool operator>=(const T& lhs, const T& rhs) { |
| return !(lhs < rhs); |
| } |
| |
| |
| |
| |
| |
| |
| // @generated_from: fuzz.mojom.FuzzUnion |
| class FuzzUnion { |
| public: |
| using DataView = FuzzUnionDataView; |
| using Data_ = internal::FuzzUnion_Data; |
| using Tag = Data_::FuzzUnion_Tag; |
| |
| template <typename... Args> |
| static FuzzUnionPtr New(Args&&... args) { |
| static_assert( |
| sizeof...(args) < 0, |
| "Do not use Union::New(); to create a union of a given subtype, use " |
| "New<SubType>(), not New() followed by set_<sub_type>(). To represent " |
| "an empty union, mark the field or parameter as nullable in the mojom " |
| "definition."); |
| return nullptr; |
| } |
| // Construct an instance holding |fuzz_bool|. |
| static FuzzUnionPtr |
| NewFuzzBool( |
| bool value) { |
| auto result = FuzzUnionPtr(std::in_place); |
| result->set_fuzz_bool(std::move(value)); |
| return result; |
| } |
| // Construct an instance holding |fuzz_int8|. |
| static FuzzUnionPtr |
| NewFuzzInt8( |
| int8_t value) { |
| auto result = FuzzUnionPtr(std::in_place); |
| result->set_fuzz_int8(std::move(value)); |
| return result; |
| } |
| // Construct an instance holding |fuzz_uint8|. |
| static FuzzUnionPtr |
| NewFuzzUint8( |
| uint8_t value) { |
| auto result = FuzzUnionPtr(std::in_place); |
| result->set_fuzz_uint8(std::move(value)); |
| return result; |
| } |
| // Construct an instance holding |fuzz_int16|. |
| static FuzzUnionPtr |
| NewFuzzInt16( |
| int16_t value) { |
| auto result = FuzzUnionPtr(std::in_place); |
| result->set_fuzz_int16(std::move(value)); |
| return result; |
| } |
| // Construct an instance holding |fuzz_uint16|. |
| static FuzzUnionPtr |
| NewFuzzUint16( |
| uint16_t value) { |
| auto result = FuzzUnionPtr(std::in_place); |
| result->set_fuzz_uint16(std::move(value)); |
| return result; |
| } |
| // Construct an instance holding |fuzz_int32|. |
| static FuzzUnionPtr |
| NewFuzzInt32( |
| int32_t value) { |
| auto result = FuzzUnionPtr(std::in_place); |
| result->set_fuzz_int32(std::move(value)); |
| return result; |
| } |
| // Construct an instance holding |fuzz_uint32|. |
| static FuzzUnionPtr |
| NewFuzzUint32( |
| uint32_t value) { |
| auto result = FuzzUnionPtr(std::in_place); |
| result->set_fuzz_uint32(std::move(value)); |
| return result; |
| } |
| // Construct an instance holding |fuzz_int64|. |
| static FuzzUnionPtr |
| NewFuzzInt64( |
| int64_t value) { |
| auto result = FuzzUnionPtr(std::in_place); |
| result->set_fuzz_int64(std::move(value)); |
| return result; |
| } |
| // Construct an instance holding |fuzz_uint64|. |
| static FuzzUnionPtr |
| NewFuzzUint64( |
| uint64_t value) { |
| auto result = FuzzUnionPtr(std::in_place); |
| result->set_fuzz_uint64(std::move(value)); |
| return result; |
| } |
| // Construct an instance holding |fuzz_float|. |
| static FuzzUnionPtr |
| NewFuzzFloat( |
| float value) { |
| auto result = FuzzUnionPtr(std::in_place); |
| result->set_fuzz_float(std::move(value)); |
| return result; |
| } |
| // Construct an instance holding |fuzz_double|. |
| static FuzzUnionPtr |
| NewFuzzDouble( |
| double value) { |
| auto result = FuzzUnionPtr(std::in_place); |
| result->set_fuzz_double(std::move(value)); |
| return result; |
| } |
| // Construct an instance holding |fuzz_string|. |
| static FuzzUnionPtr |
| NewFuzzString( |
| const std::string& value) { |
| auto result = FuzzUnionPtr(std::in_place); |
| result->set_fuzz_string(std::move(value)); |
| return result; |
| } |
| // Construct an instance holding |fuzz_bool_array|. |
| static FuzzUnionPtr |
| NewFuzzBoolArray( |
| std::vector<bool> value) { |
| auto result = FuzzUnionPtr(std::in_place); |
| result->set_fuzz_bool_array(std::move(value)); |
| return result; |
| } |
| // Construct an instance holding |fuzz_primitive_array|. |
| static FuzzUnionPtr |
| NewFuzzPrimitiveArray( |
| std::vector<int8_t> value) { |
| auto result = FuzzUnionPtr(std::in_place); |
| result->set_fuzz_primitive_array(std::move(value)); |
| return result; |
| } |
| // Construct an instance holding |fuzz_struct_array|. |
| static FuzzUnionPtr |
| NewFuzzStructArray( |
| std::vector<FuzzDummyStructPtr> value) { |
| auto result = FuzzUnionPtr(std::in_place); |
| result->set_fuzz_struct_array(std::move(value)); |
| return result; |
| } |
| // Construct an instance holding |fuzz_primitive_map|. |
| static FuzzUnionPtr |
| NewFuzzPrimitiveMap( |
| const base::flat_map<std::string, int8_t>& value) { |
| auto result = FuzzUnionPtr(std::in_place); |
| result->set_fuzz_primitive_map(std::move(value)); |
| return result; |
| } |
| // Construct an instance holding |fuzz_array_map|. |
| static FuzzUnionPtr |
| NewFuzzArrayMap( |
| const base::flat_map<std::string, std::vector<std::string>>& value) { |
| auto result = FuzzUnionPtr(std::in_place); |
| result->set_fuzz_array_map(std::move(value)); |
| return result; |
| } |
| // Construct an instance holding |fuzz_struct_map|. |
| static FuzzUnionPtr |
| NewFuzzStructMap( |
| base::flat_map<std::string, FuzzDummyStructPtr> value) { |
| auto result = FuzzUnionPtr(std::in_place); |
| result->set_fuzz_struct_map(std::move(value)); |
| return result; |
| } |
| // Construct an instance holding |fuzz_union_map|. |
| static FuzzUnionPtr |
| NewFuzzUnionMap( |
| base::flat_map<FuzzEnum, FuzzUnionPtr> value) { |
| auto result = FuzzUnionPtr(std::in_place); |
| result->set_fuzz_union_map(std::move(value)); |
| return result; |
| } |
| // Construct an instance holding |fuzz_complex|. |
| static FuzzUnionPtr |
| NewFuzzComplex( |
| std::optional<std::vector<base::flat_map<FuzzEnum, base::flat_map<int8_t, std::optional<std::vector<FuzzUnionPtr>>>>>> value) { |
| auto result = FuzzUnionPtr(std::in_place); |
| result->set_fuzz_complex(std::move(value)); |
| return result; |
| } |
| |
| template <typename U> |
| static FuzzUnionPtr From(const U& u) { |
| return mojo::TypeConverter<FuzzUnionPtr, U>::Convert(u); |
| } |
| |
| template <typename U> |
| U To() const { |
| return mojo::TypeConverter<U, FuzzUnion>::Convert(*this); |
| } |
| |
| FuzzUnion(); |
| ~FuzzUnion(); |
| // Delete the copy constructor and copy assignment operators because `data_` |
| // contains raw pointers that must not be copied. |
| FuzzUnion(const FuzzUnion& other) = delete; |
| FuzzUnion& operator=(const FuzzUnion& other) = delete; |
| |
| // 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 UnionPtrType = FuzzUnionPtr> |
| FuzzUnionPtr 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, |
| typename std::enable_if<std::is_same< |
| T, FuzzUnion>::value>::type* = nullptr> |
| bool Equals(const T& other) const; |
| |
| template <typename T, |
| typename std::enable_if<std::is_same< |
| T, FuzzUnion>::value>::type* = nullptr> |
| bool operator==(const T& rhs) const { return Equals(rhs); } |
| |
| Tag which() const { |
| return tag_; |
| } |
| |
| |
| |
| // @generated_from: fuzz.mojom.FuzzUnion.fuzz_bool |
| bool is_fuzz_bool() const { return tag_ == Tag::kFuzzBool; } |
| |
| |
| // @generated_from: fuzz.mojom.FuzzUnion.fuzz_bool |
| bool get_fuzz_bool() const { |
| CHECK(tag_ == Tag::kFuzzBool); |
| return data_.fuzz_bool; |
| } |
| |
| |
| // @generated_from: fuzz.mojom.FuzzUnion.fuzz_bool |
| void set_fuzz_bool( |
| bool fuzz_bool); |
| |
| // @generated_from: fuzz.mojom.FuzzUnion.fuzz_int8 |
| bool is_fuzz_int8() const { return tag_ == Tag::kFuzzInt8; } |
| |
| |
| // @generated_from: fuzz.mojom.FuzzUnion.fuzz_int8 |
| int8_t get_fuzz_int8() const { |
| CHECK(tag_ == Tag::kFuzzInt8); |
| return data_.fuzz_int8; |
| } |
| |
| |
| // @generated_from: fuzz.mojom.FuzzUnion.fuzz_int8 |
| void set_fuzz_int8( |
| int8_t fuzz_int8); |
| |
| // @generated_from: fuzz.mojom.FuzzUnion.fuzz_uint8 |
| bool is_fuzz_uint8() const { return tag_ == Tag::kFuzzUint8; } |
| |
| |
| // @generated_from: fuzz.mojom.FuzzUnion.fuzz_uint8 |
| uint8_t get_fuzz_uint8() const { |
| CHECK(tag_ == Tag::kFuzzUint8); |
| return data_.fuzz_uint8; |
| } |
| |
| |
| // @generated_from: fuzz.mojom.FuzzUnion.fuzz_uint8 |
| void set_fuzz_uint8( |
| uint8_t fuzz_uint8); |
| |
| // @generated_from: fuzz.mojom.FuzzUnion.fuzz_int16 |
| bool is_fuzz_int16() const { return tag_ == Tag::kFuzzInt16; } |
| |
| |
| // @generated_from: fuzz.mojom.FuzzUnion.fuzz_int16 |
| int16_t get_fuzz_int16() const { |
| CHECK(tag_ == Tag::kFuzzInt16); |
| return data_.fuzz_int16; |
| } |
| |
| |
| // @generated_from: fuzz.mojom.FuzzUnion.fuzz_int16 |
| void set_fuzz_int16( |
| int16_t fuzz_int16); |
| |
| // @generated_from: fuzz.mojom.FuzzUnion.fuzz_uint16 |
| bool is_fuzz_uint16() const { return tag_ == Tag::kFuzzUint16; } |
| |
| |
| // @generated_from: fuzz.mojom.FuzzUnion.fuzz_uint16 |
| uint16_t get_fuzz_uint16() const { |
| CHECK(tag_ == Tag::kFuzzUint16); |
| return data_.fuzz_uint16; |
| } |
| |
| |
| // @generated_from: fuzz.mojom.FuzzUnion.fuzz_uint16 |
| void set_fuzz_uint16( |
| uint16_t fuzz_uint16); |
| |
| // @generated_from: fuzz.mojom.FuzzUnion.fuzz_int32 |
| bool is_fuzz_int32() const { return tag_ == Tag::kFuzzInt32; } |
| |
| |
| // @generated_from: fuzz.mojom.FuzzUnion.fuzz_int32 |
| int32_t get_fuzz_int32() const { |
| CHECK(tag_ == Tag::kFuzzInt32); |
| return data_.fuzz_int32; |
| } |
| |
| |
| // @generated_from: fuzz.mojom.FuzzUnion.fuzz_int32 |
| void set_fuzz_int32( |
| int32_t fuzz_int32); |
| |
| // @generated_from: fuzz.mojom.FuzzUnion.fuzz_uint32 |
| bool is_fuzz_uint32() const { return tag_ == Tag::kFuzzUint32; } |
| |
| |
| // @generated_from: fuzz.mojom.FuzzUnion.fuzz_uint32 |
| uint32_t get_fuzz_uint32() const { |
| CHECK(tag_ == Tag::kFuzzUint32); |
| return data_.fuzz_uint32; |
| } |
| |
| |
| // @generated_from: fuzz.mojom.FuzzUnion.fuzz_uint32 |
| void set_fuzz_uint32( |
| uint32_t fuzz_uint32); |
| |
| // @generated_from: fuzz.mojom.FuzzUnion.fuzz_int64 |
| bool is_fuzz_int64() const { return tag_ == Tag::kFuzzInt64; } |
| |
| |
| // @generated_from: fuzz.mojom.FuzzUnion.fuzz_int64 |
| int64_t get_fuzz_int64() const { |
| CHECK(tag_ == Tag::kFuzzInt64); |
| return data_.fuzz_int64; |
| } |
| |
| |
| // @generated_from: fuzz.mojom.FuzzUnion.fuzz_int64 |
| void set_fuzz_int64( |
| int64_t fuzz_int64); |
| |
| // @generated_from: fuzz.mojom.FuzzUnion.fuzz_uint64 |
| bool is_fuzz_uint64() const { return tag_ == Tag::kFuzzUint64; } |
| |
| |
| // @generated_from: fuzz.mojom.FuzzUnion.fuzz_uint64 |
| uint64_t get_fuzz_uint64() const { |
| CHECK(tag_ == Tag::kFuzzUint64); |
| return data_.fuzz_uint64; |
| } |
| |
| |
| // @generated_from: fuzz.mojom.FuzzUnion.fuzz_uint64 |
| void set_fuzz_uint64( |
| uint64_t fuzz_uint64); |
| |
| // @generated_from: fuzz.mojom.FuzzUnion.fuzz_float |
| bool is_fuzz_float() const { return tag_ == Tag::kFuzzFloat; } |
| |
| |
| // @generated_from: fuzz.mojom.FuzzUnion.fuzz_float |
| float get_fuzz_float() const { |
| CHECK(tag_ == Tag::kFuzzFloat); |
| return data_.fuzz_float; |
| } |
| |
| |
| // @generated_from: fuzz.mojom.FuzzUnion.fuzz_float |
| void set_fuzz_float( |
| float fuzz_float); |
| |
| // @generated_from: fuzz.mojom.FuzzUnion.fuzz_double |
| bool is_fuzz_double() const { return tag_ == Tag::kFuzzDouble; } |
| |
| |
| // @generated_from: fuzz.mojom.FuzzUnion.fuzz_double |
| double get_fuzz_double() const { |
| CHECK(tag_ == Tag::kFuzzDouble); |
| return data_.fuzz_double; |
| } |
| |
| |
| // @generated_from: fuzz.mojom.FuzzUnion.fuzz_double |
| void set_fuzz_double( |
| double fuzz_double); |
| |
| // @generated_from: fuzz.mojom.FuzzUnion.fuzz_string |
| bool is_fuzz_string() const { return tag_ == Tag::kFuzzString; } |
| |
| |
| // @generated_from: fuzz.mojom.FuzzUnion.fuzz_string |
| std::string& get_fuzz_string() const { |
| CHECK(tag_ == Tag::kFuzzString); |
| return *(data_.fuzz_string); |
| } |
| |
| |
| // @generated_from: fuzz.mojom.FuzzUnion.fuzz_string |
| void set_fuzz_string( |
| const std::string& fuzz_string); |
| |
| // @generated_from: fuzz.mojom.FuzzUnion.fuzz_bool_array |
| bool is_fuzz_bool_array() const { return tag_ == Tag::kFuzzBoolArray; } |
| |
| |
| // @generated_from: fuzz.mojom.FuzzUnion.fuzz_bool_array |
| std::vector<bool>& get_fuzz_bool_array() const { |
| CHECK(tag_ == Tag::kFuzzBoolArray); |
| return *(data_.fuzz_bool_array); |
| } |
| |
| |
| // @generated_from: fuzz.mojom.FuzzUnion.fuzz_bool_array |
| void set_fuzz_bool_array( |
| std::vector<bool> fuzz_bool_array); |
| |
| // @generated_from: fuzz.mojom.FuzzUnion.fuzz_primitive_array |
| bool is_fuzz_primitive_array() const { return tag_ == Tag::kFuzzPrimitiveArray; } |
| |
| |
| // @generated_from: fuzz.mojom.FuzzUnion.fuzz_primitive_array |
| std::vector<int8_t>& get_fuzz_primitive_array() const { |
| CHECK(tag_ == Tag::kFuzzPrimitiveArray); |
| return *(data_.fuzz_primitive_array); |
| } |
| |
| |
| // @generated_from: fuzz.mojom.FuzzUnion.fuzz_primitive_array |
| void set_fuzz_primitive_array( |
| std::vector<int8_t> fuzz_primitive_array); |
| |
| // @generated_from: fuzz.mojom.FuzzUnion.fuzz_struct_array |
| bool is_fuzz_struct_array() const { return tag_ == Tag::kFuzzStructArray; } |
| |
| |
| // @generated_from: fuzz.mojom.FuzzUnion.fuzz_struct_array |
| std::vector<FuzzDummyStructPtr>& get_fuzz_struct_array() const { |
| CHECK(tag_ == Tag::kFuzzStructArray); |
| return *(data_.fuzz_struct_array); |
| } |
| |
| |
| // @generated_from: fuzz.mojom.FuzzUnion.fuzz_struct_array |
| void set_fuzz_struct_array( |
| std::vector<FuzzDummyStructPtr> fuzz_struct_array); |
| |
| // @generated_from: fuzz.mojom.FuzzUnion.fuzz_primitive_map |
| bool is_fuzz_primitive_map() const { return tag_ == Tag::kFuzzPrimitiveMap; } |
| |
| |
| // @generated_from: fuzz.mojom.FuzzUnion.fuzz_primitive_map |
| base::flat_map<std::string, int8_t>& get_fuzz_primitive_map() const { |
| CHECK(tag_ == Tag::kFuzzPrimitiveMap); |
| return *(data_.fuzz_primitive_map); |
| } |
| |
| |
| // @generated_from: fuzz.mojom.FuzzUnion.fuzz_primitive_map |
| void set_fuzz_primitive_map( |
| const base::flat_map<std::string, int8_t>& fuzz_primitive_map); |
| |
| // @generated_from: fuzz.mojom.FuzzUnion.fuzz_array_map |
| bool is_fuzz_array_map() const { return tag_ == Tag::kFuzzArrayMap; } |
| |
| |
| // @generated_from: fuzz.mojom.FuzzUnion.fuzz_array_map |
| base::flat_map<std::string, std::vector<std::string>>& get_fuzz_array_map() const { |
| CHECK(tag_ == Tag::kFuzzArrayMap); |
| return *(data_.fuzz_array_map); |
| } |
| |
| |
| // @generated_from: fuzz.mojom.FuzzUnion.fuzz_array_map |
| void set_fuzz_array_map( |
| const base::flat_map<std::string, std::vector<std::string>>& fuzz_array_map); |
| |
| // @generated_from: fuzz.mojom.FuzzUnion.fuzz_struct_map |
| bool is_fuzz_struct_map() const { return tag_ == Tag::kFuzzStructMap; } |
| |
| |
| // @generated_from: fuzz.mojom.FuzzUnion.fuzz_struct_map |
| base::flat_map<std::string, FuzzDummyStructPtr>& get_fuzz_struct_map() const { |
| CHECK(tag_ == Tag::kFuzzStructMap); |
| return *(data_.fuzz_struct_map); |
| } |
| |
| |
| // @generated_from: fuzz.mojom.FuzzUnion.fuzz_struct_map |
| void set_fuzz_struct_map( |
| base::flat_map<std::string, FuzzDummyStructPtr> fuzz_struct_map); |
| |
| // @generated_from: fuzz.mojom.FuzzUnion.fuzz_union_map |
| bool is_fuzz_union_map() const { return tag_ == Tag::kFuzzUnionMap; } |
| |
| |
| // @generated_from: fuzz.mojom.FuzzUnion.fuzz_union_map |
| base::flat_map<FuzzEnum, FuzzUnionPtr>& get_fuzz_union_map() const { |
| CHECK(tag_ == Tag::kFuzzUnionMap); |
| return *(data_.fuzz_union_map); |
| } |
| |
| |
| // @generated_from: fuzz.mojom.FuzzUnion.fuzz_union_map |
| void set_fuzz_union_map( |
| base::flat_map<FuzzEnum, FuzzUnionPtr> fuzz_union_map); |
| |
| // @generated_from: fuzz.mojom.FuzzUnion.fuzz_complex |
| bool is_fuzz_complex() const { return tag_ == Tag::kFuzzComplex; } |
| |
| |
| // @generated_from: fuzz.mojom.FuzzUnion.fuzz_complex |
| std::optional<std::vector<base::flat_map<FuzzEnum, base::flat_map<int8_t, std::optional<std::vector<FuzzUnionPtr>>>>>>& get_fuzz_complex() const { |
| CHECK(tag_ == Tag::kFuzzComplex); |
| return *(data_.fuzz_complex); |
| } |
| |
| |
| // @generated_from: fuzz.mojom.FuzzUnion.fuzz_complex |
| void set_fuzz_complex( |
| std::optional<std::vector<base::flat_map<FuzzEnum, base::flat_map<int8_t, std::optional<std::vector<FuzzUnionPtr>>>>>> fuzz_complex); |
| |
| template <typename UserType> |
| static mojo::Message SerializeAsMessage(UserType* input) { |
| return mojo::internal::SerializeAsMessageImpl< |
| FuzzUnion::DataView>(input); |
| } |
| |
| template <typename UserType> |
| static bool DeserializeFromMessage(mojo::Message input, |
| UserType* output) { |
| return mojo::internal::DeserializeImpl<FuzzUnion::DataView>( |
| input, input.payload(), input.payload_num_bytes(), output, Validate); |
| } |
| |
| private: |
| union Union_ { |
| Union_() = default; |
| ~Union_() = default; |
| bool fuzz_bool; |
| int8_t fuzz_int8; |
| uint8_t fuzz_uint8; |
| int16_t fuzz_int16; |
| uint16_t fuzz_uint16; |
| int32_t fuzz_int32; |
| uint32_t fuzz_uint32; |
| int64_t fuzz_int64; |
| uint64_t fuzz_uint64; |
| float fuzz_float; |
| double fuzz_double; |
| std::string* fuzz_string; |
| std::vector<bool>* fuzz_bool_array; |
| std::vector<int8_t>* fuzz_primitive_array; |
| std::vector<FuzzDummyStructPtr>* fuzz_struct_array; |
| base::flat_map<std::string, int8_t>* fuzz_primitive_map; |
| base::flat_map<std::string, std::vector<std::string>>* fuzz_array_map; |
| base::flat_map<std::string, FuzzDummyStructPtr>* fuzz_struct_map; |
| base::flat_map<FuzzEnum, FuzzUnionPtr>* fuzz_union_map; |
| std::optional<std::vector<base::flat_map<FuzzEnum, base::flat_map<int8_t, std::optional<std::vector<FuzzUnionPtr>>>>>>* fuzz_complex; |
| }; |
| |
| static bool Validate(const void* data, |
| mojo::internal::ValidationContext* validation_context); |
| |
| void DestroyActive(); |
| Tag tag_; |
| Union_ data_; |
| }; |
| |
| |
| |
| |
| |
| |
| // @generated_from: fuzz.mojom.FuzzStruct |
| class FuzzStruct { |
| public: |
| template <typename T> |
| using EnableIfSame = std::enable_if_t<std::is_same<FuzzStruct, T>::value>; |
| using DataView = FuzzStructDataView; |
| using Data_ = internal::FuzzStruct_Data; |
| |
| template <typename... Args> |
| static FuzzStructPtr New(Args&&... args) { |
| return FuzzStructPtr( |
| std::in_place, std::forward<Args>(args)...); |
| } |
| |
| template <typename U> |
| static FuzzStructPtr From(const U& u) { |
| return mojo::TypeConverter<FuzzStructPtr, U>::Convert(u); |
| } |
| |
| template <typename U> |
| U To() const { |
| return mojo::TypeConverter<U, FuzzStruct>::Convert(*this); |
| } |
| |
| |
| FuzzStruct(); |
| |
| FuzzStruct( |
| bool fuzz_bool, |
| int8_t fuzz_int8, |
| uint8_t fuzz_uint8, |
| int16_t fuzz_int16, |
| uint16_t fuzz_uint16, |
| int32_t fuzz_int32, |
| uint32_t fuzz_uint32, |
| int64_t fuzz_int64, |
| uint64_t fuzz_uint64, |
| float fuzz_float, |
| double fuzz_double, |
| const std::string& fuzz_string, |
| std::vector<bool> fuzz_bool_array, |
| std::vector<int8_t> fuzz_primitive_array, |
| const base::flat_map<std::string, int8_t>& fuzz_primitive_map, |
| const base::flat_map<std::string, std::vector<std::string>>& fuzz_array_map, |
| base::flat_map<FuzzEnum, FuzzUnionPtr> fuzz_union_map, |
| std::vector<FuzzUnionPtr> fuzz_union_array, |
| std::vector<FuzzStructPtr> fuzz_struct_array, |
| std::optional<std::vector<int8_t>> fuzz_nullable_array, |
| std::optional<std::vector<base::flat_map<FuzzEnum, base::flat_map<int8_t, std::optional<std::vector<FuzzStructPtr>>>>>> fuzz_complex); |
| |
| FuzzStruct(const FuzzStruct&) = delete; |
| FuzzStruct& operator=(const FuzzStruct&) = delete; |
| |
| ~FuzzStruct(); |
| |
| // 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 = FuzzStructPtr> |
| FuzzStructPtr 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, FuzzStruct::EnableIfSame<T>* = nullptr> |
| bool Equals(const T& other) const; |
| |
| template <typename T, FuzzStruct::EnableIfSame<T>* = nullptr> |
| bool operator==(const T& rhs) const { return Equals(rhs); } |
| |
| template <typename T, FuzzStruct::EnableIfSame<T>* = nullptr> |
| bool operator!=(const T& rhs) const { return !operator==(rhs); } |
| template <typename UserType> |
| static std::vector<uint8_t> Serialize(UserType* input) { |
| return mojo::internal::SerializeImpl< |
| FuzzStruct::DataView, std::vector<uint8_t>>(input); |
| } |
| |
| template <typename UserType> |
| static mojo::Message SerializeAsMessage(UserType* input) { |
| return mojo::internal::SerializeAsMessageImpl< |
| FuzzStruct::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::FuzzStruct_UnserializedMessageContext< |
| UserType, FuzzStruct::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<FuzzStruct::DataView>( |
| message, data, data_num_bytes, output, Validate); |
| } |
| |
| template <typename UserType> |
| static bool Deserialize(const std::vector<uint8_t>& input, |
| UserType* output) { |
| return FuzzStruct::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::FuzzStruct_UnserializedMessageContext< |
| UserType, FuzzStruct::DataView>>(); |
| if (context) { |
| *output = std::move(context->TakeData()); |
| return true; |
| } |
| input.SerializeIfNecessary(); |
| return mojo::internal::DeserializeImpl<FuzzStruct::DataView>( |
| input, input.payload(), input.payload_num_bytes(), output, Validate); |
| } |
| |
| |
| // @generated_from: fuzz.mojom.FuzzStruct.fuzz_bool |
| bool fuzz_bool; |
| |
| // @generated_from: fuzz.mojom.FuzzStruct.fuzz_int8 |
| int8_t fuzz_int8; |
| |
| // @generated_from: fuzz.mojom.FuzzStruct.fuzz_uint8 |
| uint8_t fuzz_uint8; |
| |
| // @generated_from: fuzz.mojom.FuzzStruct.fuzz_int16 |
| int16_t fuzz_int16; |
| |
| // @generated_from: fuzz.mojom.FuzzStruct.fuzz_uint16 |
| uint16_t fuzz_uint16; |
| |
| // @generated_from: fuzz.mojom.FuzzStruct.fuzz_int32 |
| int32_t fuzz_int32; |
| |
| // @generated_from: fuzz.mojom.FuzzStruct.fuzz_uint32 |
| uint32_t fuzz_uint32; |
| |
| // @generated_from: fuzz.mojom.FuzzStruct.fuzz_int64 |
| int64_t fuzz_int64; |
| |
| // @generated_from: fuzz.mojom.FuzzStruct.fuzz_uint64 |
| uint64_t fuzz_uint64; |
| |
| // @generated_from: fuzz.mojom.FuzzStruct.fuzz_float |
| float fuzz_float; |
| |
| // @generated_from: fuzz.mojom.FuzzStruct.fuzz_double |
| double fuzz_double; |
| |
| // @generated_from: fuzz.mojom.FuzzStruct.fuzz_string |
| std::string fuzz_string; |
| |
| // @generated_from: fuzz.mojom.FuzzStruct.fuzz_bool_array |
| std::vector<bool> fuzz_bool_array; |
| |
| // @generated_from: fuzz.mojom.FuzzStruct.fuzz_primitive_array |
| std::vector<int8_t> fuzz_primitive_array; |
| |
| // @generated_from: fuzz.mojom.FuzzStruct.fuzz_primitive_map |
| base::flat_map<std::string, int8_t> fuzz_primitive_map; |
| |
| // @generated_from: fuzz.mojom.FuzzStruct.fuzz_array_map |
| base::flat_map<std::string, std::vector<std::string>> fuzz_array_map; |
| |
| // @generated_from: fuzz.mojom.FuzzStruct.fuzz_union_map |
| base::flat_map<FuzzEnum, FuzzUnionPtr> fuzz_union_map; |
| |
| // @generated_from: fuzz.mojom.FuzzStruct.fuzz_union_array |
| std::vector<FuzzUnionPtr> fuzz_union_array; |
| |
| // @generated_from: fuzz.mojom.FuzzStruct.fuzz_struct_array |
| std::vector<FuzzStructPtr> fuzz_struct_array; |
| |
| // @generated_from: fuzz.mojom.FuzzStruct.fuzz_nullable_array |
| std::optional<std::vector<int8_t>> fuzz_nullable_array; |
| |
| // @generated_from: fuzz.mojom.FuzzStruct.fuzz_complex |
| std::optional<std::vector<base::flat_map<FuzzEnum, base::flat_map<int8_t, std::optional<std::vector<FuzzStructPtr>>>>>> fuzz_complex; |
| |
| // 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, FuzzStruct::EnableIfSame<T>* = nullptr> |
| bool operator<(const T& lhs, const T& rhs); |
| |
| template <typename T, FuzzStruct::EnableIfSame<T>* = nullptr> |
| bool operator<=(const T& lhs, const T& rhs) { |
| return !(rhs < lhs); |
| } |
| |
| template <typename T, FuzzStruct::EnableIfSame<T>* = nullptr> |
| bool operator>(const T& lhs, const T& rhs) { |
| return rhs < lhs; |
| } |
| |
| template <typename T, FuzzStruct::EnableIfSame<T>* = nullptr> |
| bool operator>=(const T& lhs, const T& rhs) { |
| return !(lhs < rhs); |
| } |
| |
| template <typename UnionPtrType> |
| FuzzUnionPtr FuzzUnion::Clone() const { |
| switch (tag_) { |
| case Tag::kFuzzBool: |
| return NewFuzzBool( |
| mojo::Clone(data_.fuzz_bool)); |
| case Tag::kFuzzInt8: |
| return NewFuzzInt8( |
| mojo::Clone(data_.fuzz_int8)); |
| case Tag::kFuzzUint8: |
| return NewFuzzUint8( |
| mojo::Clone(data_.fuzz_uint8)); |
| case Tag::kFuzzInt16: |
| return NewFuzzInt16( |
| mojo::Clone(data_.fuzz_int16)); |
| case Tag::kFuzzUint16: |
| return NewFuzzUint16( |
| mojo::Clone(data_.fuzz_uint16)); |
| case Tag::kFuzzInt32: |
| return NewFuzzInt32( |
| mojo::Clone(data_.fuzz_int32)); |
| case Tag::kFuzzUint32: |
| return NewFuzzUint32( |
| mojo::Clone(data_.fuzz_uint32)); |
| case Tag::kFuzzInt64: |
| return NewFuzzInt64( |
| mojo::Clone(data_.fuzz_int64)); |
| case Tag::kFuzzUint64: |
| return NewFuzzUint64( |
| mojo::Clone(data_.fuzz_uint64)); |
| case Tag::kFuzzFloat: |
| return NewFuzzFloat( |
| mojo::Clone(data_.fuzz_float)); |
| case Tag::kFuzzDouble: |
| return NewFuzzDouble( |
| mojo::Clone(data_.fuzz_double)); |
| case Tag::kFuzzString: |
| return NewFuzzString( |
| mojo::Clone(*data_.fuzz_string)); |
| case Tag::kFuzzBoolArray: |
| return NewFuzzBoolArray( |
| mojo::Clone(*data_.fuzz_bool_array)); |
| case Tag::kFuzzPrimitiveArray: |
| return NewFuzzPrimitiveArray( |
| mojo::Clone(*data_.fuzz_primitive_array)); |
| case Tag::kFuzzStructArray: |
| return NewFuzzStructArray( |
| mojo::Clone(*data_.fuzz_struct_array)); |
| case Tag::kFuzzPrimitiveMap: |
| return NewFuzzPrimitiveMap( |
| mojo::Clone(*data_.fuzz_primitive_map)); |
| case Tag::kFuzzArrayMap: |
| return NewFuzzArrayMap( |
| mojo::Clone(*data_.fuzz_array_map)); |
| case Tag::kFuzzStructMap: |
| return NewFuzzStructMap( |
| mojo::Clone(*data_.fuzz_struct_map)); |
| case Tag::kFuzzUnionMap: |
| return NewFuzzUnionMap( |
| mojo::Clone(*data_.fuzz_union_map)); |
| case Tag::kFuzzComplex: |
| return NewFuzzComplex( |
| mojo::Clone(*data_.fuzz_complex)); |
| } |
| return nullptr; |
| } |
| |
| template <typename T, |
| typename std::enable_if<std::is_same< |
| T, FuzzUnion>::value>::type*> |
| bool FuzzUnion::Equals(const T& other) const { |
| if (tag_ != other.which()) |
| return false; |
| |
| switch (tag_) { |
| case Tag::kFuzzBool: |
| return mojo::Equals(data_.fuzz_bool, other.data_.fuzz_bool); |
| case Tag::kFuzzInt8: |
| return mojo::Equals(data_.fuzz_int8, other.data_.fuzz_int8); |
| case Tag::kFuzzUint8: |
| return mojo::Equals(data_.fuzz_uint8, other.data_.fuzz_uint8); |
| case Tag::kFuzzInt16: |
| return mojo::Equals(data_.fuzz_int16, other.data_.fuzz_int16); |
| case Tag::kFuzzUint16: |
| return mojo::Equals(data_.fuzz_uint16, other.data_.fuzz_uint16); |
| case Tag::kFuzzInt32: |
| return mojo::Equals(data_.fuzz_int32, other.data_.fuzz_int32); |
| case Tag::kFuzzUint32: |
| return mojo::Equals(data_.fuzz_uint32, other.data_.fuzz_uint32); |
| case Tag::kFuzzInt64: |
| return mojo::Equals(data_.fuzz_int64, other.data_.fuzz_int64); |
| case Tag::kFuzzUint64: |
| return mojo::Equals(data_.fuzz_uint64, other.data_.fuzz_uint64); |
| case Tag::kFuzzFloat: |
| return mojo::Equals(data_.fuzz_float, other.data_.fuzz_float); |
| case Tag::kFuzzDouble: |
| return mojo::Equals(data_.fuzz_double, other.data_.fuzz_double); |
| case Tag::kFuzzString: |
| return mojo::Equals(*(data_.fuzz_string), *(other.data_.fuzz_string)); |
| case Tag::kFuzzBoolArray: |
| return mojo::Equals(*(data_.fuzz_bool_array), *(other.data_.fuzz_bool_array)); |
| case Tag::kFuzzPrimitiveArray: |
| return mojo::Equals(*(data_.fuzz_primitive_array), *(other.data_.fuzz_primitive_array)); |
| case Tag::kFuzzStructArray: |
| return mojo::Equals(*(data_.fuzz_struct_array), *(other.data_.fuzz_struct_array)); |
| case Tag::kFuzzPrimitiveMap: |
| return mojo::Equals(*(data_.fuzz_primitive_map), *(other.data_.fuzz_primitive_map)); |
| case Tag::kFuzzArrayMap: |
| return mojo::Equals(*(data_.fuzz_array_map), *(other.data_.fuzz_array_map)); |
| case Tag::kFuzzStructMap: |
| return mojo::Equals(*(data_.fuzz_struct_map), *(other.data_.fuzz_struct_map)); |
| case Tag::kFuzzUnionMap: |
| return mojo::Equals(*(data_.fuzz_union_map), *(other.data_.fuzz_union_map)); |
| case Tag::kFuzzComplex: |
| return mojo::Equals(*(data_.fuzz_complex), *(other.data_.fuzz_complex)); |
| } |
| |
| return false; |
| } |
| template <typename StructPtrType> |
| FuzzDummyStructPtr FuzzDummyStruct::Clone() const { |
| return New( |
| mojo::Clone(dummy) |
| ); |
| } |
| |
| template <typename T, FuzzDummyStruct::EnableIfSame<T>*> |
| bool FuzzDummyStruct::Equals(const T& other_struct) const { |
| if (!mojo::Equals(this->dummy, other_struct.dummy)) |
| return false; |
| return true; |
| } |
| |
| template <typename T, FuzzDummyStruct::EnableIfSame<T>*> |
| bool operator<(const T& lhs, const T& rhs) { |
| if (lhs.dummy < rhs.dummy) |
| return true; |
| if (rhs.dummy < lhs.dummy) |
| return false; |
| return false; |
| } |
| template <typename StructPtrType> |
| FuzzStructPtr FuzzStruct::Clone() const { |
| return New( |
| mojo::Clone(fuzz_bool), |
| mojo::Clone(fuzz_int8), |
| mojo::Clone(fuzz_uint8), |
| mojo::Clone(fuzz_int16), |
| mojo::Clone(fuzz_uint16), |
| mojo::Clone(fuzz_int32), |
| mojo::Clone(fuzz_uint32), |
| mojo::Clone(fuzz_int64), |
| mojo::Clone(fuzz_uint64), |
| mojo::Clone(fuzz_float), |
| mojo::Clone(fuzz_double), |
| mojo::Clone(fuzz_string), |
| mojo::Clone(fuzz_bool_array), |
| mojo::Clone(fuzz_primitive_array), |
| mojo::Clone(fuzz_primitive_map), |
| mojo::Clone(fuzz_array_map), |
| mojo::Clone(fuzz_union_map), |
| mojo::Clone(fuzz_union_array), |
| mojo::Clone(fuzz_struct_array), |
| mojo::Clone(fuzz_nullable_array), |
| mojo::Clone(fuzz_complex) |
| ); |
| } |
| |
| template <typename T, FuzzStruct::EnableIfSame<T>*> |
| bool FuzzStruct::Equals(const T& other_struct) const { |
| if (!mojo::Equals(this->fuzz_bool, other_struct.fuzz_bool)) |
| return false; |
| if (!mojo::Equals(this->fuzz_int8, other_struct.fuzz_int8)) |
| return false; |
| if (!mojo::Equals(this->fuzz_uint8, other_struct.fuzz_uint8)) |
| return false; |
| if (!mojo::Equals(this->fuzz_int16, other_struct.fuzz_int16)) |
| return false; |
| if (!mojo::Equals(this->fuzz_uint16, other_struct.fuzz_uint16)) |
| return false; |
| if (!mojo::Equals(this->fuzz_int32, other_struct.fuzz_int32)) |
| return false; |
| if (!mojo::Equals(this->fuzz_uint32, other_struct.fuzz_uint32)) |
| return false; |
| if (!mojo::Equals(this->fuzz_int64, other_struct.fuzz_int64)) |
| return false; |
| if (!mojo::Equals(this->fuzz_uint64, other_struct.fuzz_uint64)) |
| return false; |
| if (!mojo::Equals(this->fuzz_float, other_struct.fuzz_float)) |
| return false; |
| if (!mojo::Equals(this->fuzz_double, other_struct.fuzz_double)) |
| return false; |
| if (!mojo::Equals(this->fuzz_string, other_struct.fuzz_string)) |
| return false; |
| if (!mojo::Equals(this->fuzz_bool_array, other_struct.fuzz_bool_array)) |
| return false; |
| if (!mojo::Equals(this->fuzz_primitive_array, other_struct.fuzz_primitive_array)) |
| return false; |
| if (!mojo::Equals(this->fuzz_primitive_map, other_struct.fuzz_primitive_map)) |
| return false; |
| if (!mojo::Equals(this->fuzz_array_map, other_struct.fuzz_array_map)) |
| return false; |
| if (!mojo::Equals(this->fuzz_union_map, other_struct.fuzz_union_map)) |
| return false; |
| if (!mojo::Equals(this->fuzz_union_array, other_struct.fuzz_union_array)) |
| return false; |
| if (!mojo::Equals(this->fuzz_struct_array, other_struct.fuzz_struct_array)) |
| return false; |
| if (!mojo::Equals(this->fuzz_nullable_array, other_struct.fuzz_nullable_array)) |
| return false; |
| if (!mojo::Equals(this->fuzz_complex, other_struct.fuzz_complex)) |
| return false; |
| return true; |
| } |
| |
| template <typename T, FuzzStruct::EnableIfSame<T>*> |
| bool operator<(const T& lhs, const T& rhs) { |
| if (lhs.fuzz_bool < rhs.fuzz_bool) |
| return true; |
| if (rhs.fuzz_bool < lhs.fuzz_bool) |
| return false; |
| if (lhs.fuzz_int8 < rhs.fuzz_int8) |
| return true; |
| if (rhs.fuzz_int8 < lhs.fuzz_int8) |
| return false; |
| if (lhs.fuzz_uint8 < rhs.fuzz_uint8) |
| return true; |
| if (rhs.fuzz_uint8 < lhs.fuzz_uint8) |
| return false; |
| if (lhs.fuzz_int16 < rhs.fuzz_int16) |
| return true; |
| if (rhs.fuzz_int16 < lhs.fuzz_int16) |
| return false; |
| if (lhs.fuzz_uint16 < rhs.fuzz_uint16) |
| return true; |
| if (rhs.fuzz_uint16 < lhs.fuzz_uint16) |
| return false; |
| if (lhs.fuzz_int32 < rhs.fuzz_int32) |
| return true; |
| if (rhs.fuzz_int32 < lhs.fuzz_int32) |
| return false; |
| if (lhs.fuzz_uint32 < rhs.fuzz_uint32) |
| return true; |
| if (rhs.fuzz_uint32 < lhs.fuzz_uint32) |
| return false; |
| if (lhs.fuzz_int64 < rhs.fuzz_int64) |
| return true; |
| if (rhs.fuzz_int64 < lhs.fuzz_int64) |
| return false; |
| if (lhs.fuzz_uint64 < rhs.fuzz_uint64) |
| return true; |
| if (rhs.fuzz_uint64 < lhs.fuzz_uint64) |
| return false; |
| if (lhs.fuzz_float < rhs.fuzz_float) |
| return true; |
| if (rhs.fuzz_float < lhs.fuzz_float) |
| return false; |
| if (lhs.fuzz_double < rhs.fuzz_double) |
| return true; |
| if (rhs.fuzz_double < lhs.fuzz_double) |
| return false; |
| if (lhs.fuzz_string < rhs.fuzz_string) |
| return true; |
| if (rhs.fuzz_string < lhs.fuzz_string) |
| return false; |
| if (lhs.fuzz_bool_array < rhs.fuzz_bool_array) |
| return true; |
| if (rhs.fuzz_bool_array < lhs.fuzz_bool_array) |
| return false; |
| if (lhs.fuzz_primitive_array < rhs.fuzz_primitive_array) |
| return true; |
| if (rhs.fuzz_primitive_array < lhs.fuzz_primitive_array) |
| return false; |
| if (lhs.fuzz_primitive_map < rhs.fuzz_primitive_map) |
| return true; |
| if (rhs.fuzz_primitive_map < lhs.fuzz_primitive_map) |
| return false; |
| if (lhs.fuzz_array_map < rhs.fuzz_array_map) |
| return true; |
| if (rhs.fuzz_array_map < lhs.fuzz_array_map) |
| return false; |
| if (lhs.fuzz_union_map < rhs.fuzz_union_map) |
| return true; |
| if (rhs.fuzz_union_map < lhs.fuzz_union_map) |
| return false; |
| if (lhs.fuzz_union_array < rhs.fuzz_union_array) |
| return true; |
| if (rhs.fuzz_union_array < lhs.fuzz_union_array) |
| return false; |
| if (lhs.fuzz_struct_array < rhs.fuzz_struct_array) |
| return true; |
| if (rhs.fuzz_struct_array < lhs.fuzz_struct_array) |
| return false; |
| if (lhs.fuzz_nullable_array < rhs.fuzz_nullable_array) |
| return true; |
| if (rhs.fuzz_nullable_array < lhs.fuzz_nullable_array) |
| return false; |
| if (lhs.fuzz_complex < rhs.fuzz_complex) |
| return true; |
| if (rhs.fuzz_complex < lhs.fuzz_complex) |
| return false; |
| return false; |
| } |
| |
| |
| } // fuzz::mojom |
| |
| namespace mojo { |
| |
| |
| template <> |
| struct StructTraits<::fuzz::mojom::FuzzDummyStruct::DataView, |
| ::fuzz::mojom::FuzzDummyStructPtr> { |
| static bool IsNull(const ::fuzz::mojom::FuzzDummyStructPtr& input) { return !input; } |
| static void SetToNull(::fuzz::mojom::FuzzDummyStructPtr* output) { output->reset(); } |
| |
| static decltype(::fuzz::mojom::FuzzDummyStruct::dummy) dummy( |
| const ::fuzz::mojom::FuzzDummyStructPtr& input) { |
| return input->dummy; |
| } |
| |
| static bool Read(::fuzz::mojom::FuzzDummyStruct::DataView input, ::fuzz::mojom::FuzzDummyStructPtr* output); |
| }; |
| |
| |
| template <> |
| struct StructTraits<::fuzz::mojom::FuzzStruct::DataView, |
| ::fuzz::mojom::FuzzStructPtr> { |
| static bool IsNull(const ::fuzz::mojom::FuzzStructPtr& input) { return !input; } |
| static void SetToNull(::fuzz::mojom::FuzzStructPtr* output) { output->reset(); } |
| |
| static decltype(::fuzz::mojom::FuzzStruct::fuzz_bool) fuzz_bool( |
| const ::fuzz::mojom::FuzzStructPtr& input) { |
| return input->fuzz_bool; |
| } |
| |
| static decltype(::fuzz::mojom::FuzzStruct::fuzz_int8) fuzz_int8( |
| const ::fuzz::mojom::FuzzStructPtr& input) { |
| return input->fuzz_int8; |
| } |
| |
| static decltype(::fuzz::mojom::FuzzStruct::fuzz_uint8) fuzz_uint8( |
| const ::fuzz::mojom::FuzzStructPtr& input) { |
| return input->fuzz_uint8; |
| } |
| |
| static decltype(::fuzz::mojom::FuzzStruct::fuzz_int16) fuzz_int16( |
| const ::fuzz::mojom::FuzzStructPtr& input) { |
| return input->fuzz_int16; |
| } |
| |
| static decltype(::fuzz::mojom::FuzzStruct::fuzz_uint16) fuzz_uint16( |
| const ::fuzz::mojom::FuzzStructPtr& input) { |
| return input->fuzz_uint16; |
| } |
| |
| static decltype(::fuzz::mojom::FuzzStruct::fuzz_int32) fuzz_int32( |
| const ::fuzz::mojom::FuzzStructPtr& input) { |
| return input->fuzz_int32; |
| } |
| |
| static decltype(::fuzz::mojom::FuzzStruct::fuzz_uint32) fuzz_uint32( |
| const ::fuzz::mojom::FuzzStructPtr& input) { |
| return input->fuzz_uint32; |
| } |
| |
| static decltype(::fuzz::mojom::FuzzStruct::fuzz_int64) fuzz_int64( |
| const ::fuzz::mojom::FuzzStructPtr& input) { |
| return input->fuzz_int64; |
| } |
| |
| static decltype(::fuzz::mojom::FuzzStruct::fuzz_uint64) fuzz_uint64( |
| const ::fuzz::mojom::FuzzStructPtr& input) { |
| return input->fuzz_uint64; |
| } |
| |
| static decltype(::fuzz::mojom::FuzzStruct::fuzz_float) fuzz_float( |
| const ::fuzz::mojom::FuzzStructPtr& input) { |
| return input->fuzz_float; |
| } |
| |
| static decltype(::fuzz::mojom::FuzzStruct::fuzz_double) fuzz_double( |
| const ::fuzz::mojom::FuzzStructPtr& input) { |
| return input->fuzz_double; |
| } |
| |
| static const decltype(::fuzz::mojom::FuzzStruct::fuzz_string)& fuzz_string( |
| const ::fuzz::mojom::FuzzStructPtr& input) { |
| return input->fuzz_string; |
| } |
| |
| static const decltype(::fuzz::mojom::FuzzStruct::fuzz_bool_array)& fuzz_bool_array( |
| const ::fuzz::mojom::FuzzStructPtr& input) { |
| return input->fuzz_bool_array; |
| } |
| |
| static const decltype(::fuzz::mojom::FuzzStruct::fuzz_primitive_array)& fuzz_primitive_array( |
| const ::fuzz::mojom::FuzzStructPtr& input) { |
| return input->fuzz_primitive_array; |
| } |
| |
| static const decltype(::fuzz::mojom::FuzzStruct::fuzz_primitive_map)& fuzz_primitive_map( |
| const ::fuzz::mojom::FuzzStructPtr& input) { |
| return input->fuzz_primitive_map; |
| } |
| |
| static const decltype(::fuzz::mojom::FuzzStruct::fuzz_array_map)& fuzz_array_map( |
| const ::fuzz::mojom::FuzzStructPtr& input) { |
| return input->fuzz_array_map; |
| } |
| |
| static const decltype(::fuzz::mojom::FuzzStruct::fuzz_union_map)& fuzz_union_map( |
| const ::fuzz::mojom::FuzzStructPtr& input) { |
| return input->fuzz_union_map; |
| } |
| |
| static const decltype(::fuzz::mojom::FuzzStruct::fuzz_union_array)& fuzz_union_array( |
| const ::fuzz::mojom::FuzzStructPtr& input) { |
| return input->fuzz_union_array; |
| } |
| |
| static const decltype(::fuzz::mojom::FuzzStruct::fuzz_struct_array)& fuzz_struct_array( |
| const ::fuzz::mojom::FuzzStructPtr& input) { |
| return input->fuzz_struct_array; |
| } |
| |
| static const decltype(::fuzz::mojom::FuzzStruct::fuzz_nullable_array)& fuzz_nullable_array( |
| const ::fuzz::mojom::FuzzStructPtr& input) { |
| return input->fuzz_nullable_array; |
| } |
| |
| static const decltype(::fuzz::mojom::FuzzStruct::fuzz_complex)& fuzz_complex( |
| const ::fuzz::mojom::FuzzStructPtr& input) { |
| return input->fuzz_complex; |
| } |
| |
| static bool Read(::fuzz::mojom::FuzzStruct::DataView input, ::fuzz::mojom::FuzzStructPtr* output); |
| }; |
| |
| |
| template <> |
| struct UnionTraits<::fuzz::mojom::FuzzUnion::DataView, |
| ::fuzz::mojom::FuzzUnionPtr> { |
| static bool IsNull(const ::fuzz::mojom::FuzzUnionPtr& input) { return !input; } |
| static void SetToNull(::fuzz::mojom::FuzzUnionPtr* output) { output->reset(); } |
| |
| static ::fuzz::mojom::FuzzUnion::Tag GetTag(const ::fuzz::mojom::FuzzUnionPtr& input) { |
| return input->which(); |
| } |
| |
| static bool fuzz_bool(const ::fuzz::mojom::FuzzUnionPtr& input) { |
| return input->get_fuzz_bool(); |
| } |
| |
| static int8_t fuzz_int8(const ::fuzz::mojom::FuzzUnionPtr& input) { |
| return input->get_fuzz_int8(); |
| } |
| |
| static uint8_t fuzz_uint8(const ::fuzz::mojom::FuzzUnionPtr& input) { |
| return input->get_fuzz_uint8(); |
| } |
| |
| static int16_t fuzz_int16(const ::fuzz::mojom::FuzzUnionPtr& input) { |
| return input->get_fuzz_int16(); |
| } |
| |
| static uint16_t fuzz_uint16(const ::fuzz::mojom::FuzzUnionPtr& input) { |
| return input->get_fuzz_uint16(); |
| } |
| |
| static int32_t fuzz_int32(const ::fuzz::mojom::FuzzUnionPtr& input) { |
| return input->get_fuzz_int32(); |
| } |
| |
| static uint32_t fuzz_uint32(const ::fuzz::mojom::FuzzUnionPtr& input) { |
| return input->get_fuzz_uint32(); |
| } |
| |
| static int64_t fuzz_int64(const ::fuzz::mojom::FuzzUnionPtr& input) { |
| return input->get_fuzz_int64(); |
| } |
| |
| static uint64_t fuzz_uint64(const ::fuzz::mojom::FuzzUnionPtr& input) { |
| return input->get_fuzz_uint64(); |
| } |
| |
| static float fuzz_float(const ::fuzz::mojom::FuzzUnionPtr& input) { |
| return input->get_fuzz_float(); |
| } |
| |
| static double fuzz_double(const ::fuzz::mojom::FuzzUnionPtr& input) { |
| return input->get_fuzz_double(); |
| } |
| |
| static const std::string& fuzz_string(const ::fuzz::mojom::FuzzUnionPtr& input) { |
| return input->get_fuzz_string(); |
| } |
| |
| static const std::vector<bool>& fuzz_bool_array(const ::fuzz::mojom::FuzzUnionPtr& input) { |
| return input->get_fuzz_bool_array(); |
| } |
| |
| static const std::vector<int8_t>& fuzz_primitive_array(const ::fuzz::mojom::FuzzUnionPtr& input) { |
| return input->get_fuzz_primitive_array(); |
| } |
| |
| static const std::vector<::fuzz::mojom::FuzzDummyStructPtr>& fuzz_struct_array(const ::fuzz::mojom::FuzzUnionPtr& input) { |
| return input->get_fuzz_struct_array(); |
| } |
| |
| static const base::flat_map<std::string, int8_t>& fuzz_primitive_map(const ::fuzz::mojom::FuzzUnionPtr& input) { |
| return input->get_fuzz_primitive_map(); |
| } |
| |
| static const base::flat_map<std::string, std::vector<std::string>>& fuzz_array_map(const ::fuzz::mojom::FuzzUnionPtr& input) { |
| return input->get_fuzz_array_map(); |
| } |
| |
| static const base::flat_map<std::string, ::fuzz::mojom::FuzzDummyStructPtr>& fuzz_struct_map(const ::fuzz::mojom::FuzzUnionPtr& input) { |
| return input->get_fuzz_struct_map(); |
| } |
| |
| static const base::flat_map<::fuzz::mojom::FuzzEnum, ::fuzz::mojom::FuzzUnionPtr>& fuzz_union_map(const ::fuzz::mojom::FuzzUnionPtr& input) { |
| return input->get_fuzz_union_map(); |
| } |
| |
| static const std::optional<std::vector<base::flat_map<::fuzz::mojom::FuzzEnum, base::flat_map<int8_t, std::optional<std::vector<::fuzz::mojom::FuzzUnionPtr>>>>>>& fuzz_complex(const ::fuzz::mojom::FuzzUnionPtr& input) { |
| return input->get_fuzz_complex(); |
| } |
| |
| static bool Read(::fuzz::mojom::FuzzUnion::DataView input, ::fuzz::mojom::FuzzUnionPtr* output); |
| }; |
| |
| } // namespace mojo |
| |
| #endif // MOJO_PUBLIC_TOOLS_FUZZERS_FUZZ_MOJOM_H_
|
| /* Metadata comment
|
| eyJ0eXBlIjogImt5dGhlMCIsICJtZXRhIjogW3sidHlwZSI6ICJhbmNob3JfZGVmaW5lcyIsICJi
|
| ZWdpbiI6IDE1OTYsICJlbmQiOiAxNjE0LCAidm5hbWUiOiB7Imxhbmd1YWdlIjogIm1vam9tIiwg
|
| ImNvcnB1cyI6ICJjaHJvbWl1bS5nb29nbGVzb3VyY2UuY29tL2NvZGVzZWFyY2gvY2hyb21pdW0v
|
| c3JjLy9tYWluIiwgInNpZ25hdHVyZSI6ICJmdXp6Lm1vam9tLkZ1enpEdW1teUludGVyZmFjZSJ9
|
| LCAiZWRnZSI6ICIlL2t5dGhlL2VkZ2UvZ2VuZXJhdGVzIn0sIHsidHlwZSI6ICJhbmNob3JfZGVm
|
| aW5lcyIsICJiZWdpbiI6IDI3OTQsICJlbmQiOiAyNzk4LCAidm5hbWUiOiB7Imxhbmd1YWdlIjog
|
| Im1vam9tIiwgImNvcnB1cyI6ICJjaHJvbWl1bS5nb29nbGVzb3VyY2UuY29tL2NvZGVzZWFyY2gv
|
| Y2hyb21pdW0vc3JjLy9tYWluIiwgInNpZ25hdHVyZSI6ICJmdXp6Lm1vam9tLkZ1enpEdW1teUlu
|
| dGVyZmFjZS5QaW5nIn0sICJlZGdlIjogIiUva3l0aGUvZWRnZS9nZW5lcmF0ZXMifSwgeyJ0eXBl
|
| IjogImFuY2hvcl9kZWZpbmVzIiwgImJlZ2luIjogMzAyNSwgImVuZCI6IDMwMzgsICJ2bmFtZSI6
|
| IHsibGFuZ3VhZ2UiOiAibW9qb20iLCAiY29ycHVzIjogImNocm9taXVtLmdvb2dsZXNvdXJjZS5j
|
| b20vY29kZXNlYXJjaC9jaHJvbWl1bS9zcmMvL21haW4iLCAic2lnbmF0dXJlIjogImZ1enoubW9q
|
| b20uRnV6ekludGVyZmFjZSJ9LCAiZWRnZSI6ICIlL2t5dGhlL2VkZ2UvZ2VuZXJhdGVzIn0sIHsi
|
| dHlwZSI6ICJhbmNob3JfZGVmaW5lcyIsICJiZWdpbiI6IDQ5NzIsICJlbmQiOiA0OTgxLCAidm5h
|
| bWUiOiB7Imxhbmd1YWdlIjogIm1vam9tIiwgImNvcnB1cyI6ICJjaHJvbWl1bS5nb29nbGVzb3Vy
|
| Y2UuY29tL2NvZGVzZWFyY2gvY2hyb21pdW0vc3JjLy9tYWluIiwgInNpZ25hdHVyZSI6ICJmdXp6
|
| Lm1vam9tLkZ1enpJbnRlcmZhY2UuRnV6ekJhc2ljIn0sICJlZGdlIjogIiUva3l0aGUvZWRnZS9n
|
| ZW5lcmF0ZXMifSwgeyJ0eXBlIjogImFuY2hvcl9kZWZpbmVzIiwgImJlZ2luIjogNTEyOCwgImVu
|
| ZCI6IDUxNDEsICJ2bmFtZSI6IHsibGFuZ3VhZ2UiOiAibW9qb20iLCAiY29ycHVzIjogImNocm9t
|
| aXVtLmdvb2dsZXNvdXJjZS5jb20vY29kZXNlYXJjaC9jaHJvbWl1bS9zcmMvL21haW4iLCAic2ln
|
| bmF0dXJlIjogImZ1enoubW9qb20uRnV6ekludGVyZmFjZS5GdXp6QmFzaWNSZXNwIn0sICJlZGdl
|
| IjogIiUva3l0aGUvZWRnZS9nZW5lcmF0ZXMifSwgeyJ0eXBlIjogImFuY2hvcl9kZWZpbmVzIiwg
|
| ImJlZ2luIjogNTM5NiwgImVuZCI6IDU0MTMsICJ2bmFtZSI6IHsibGFuZ3VhZ2UiOiAibW9qb20i
|
| LCAiY29ycHVzIjogImNocm9taXVtLmdvb2dsZXNvdXJjZS5jb20vY29kZXNlYXJjaC9jaHJvbWl1
|
| bS9zcmMvL21haW4iLCAic2lnbmF0dXJlIjogImZ1enoubW9qb20uRnV6ekludGVyZmFjZS5GdXp6
|
| QmFzaWNTeW5jUmVzcCJ9LCAiZWRnZSI6ICIlL2t5dGhlL2VkZ2UvZ2VuZXJhdGVzIn0sIHsidHlw
|
| ZSI6ICJhbmNob3JfZGVmaW5lcyIsICJiZWdpbiI6IDU1NjMsICJlbmQiOiA1NTgwLCAidm5hbWUi
|
| OiB7Imxhbmd1YWdlIjogIm1vam9tIiwgImNvcnB1cyI6ICJjaHJvbWl1bS5nb29nbGVzb3VyY2Uu
|
| Y29tL2NvZGVzZWFyY2gvY2hyb21pdW0vc3JjLy9tYWluIiwgInNpZ25hdHVyZSI6ICJmdXp6Lm1v
|
| am9tLkZ1enpJbnRlcmZhY2UuRnV6ekJhc2ljU3luY1Jlc3AifSwgImVkZ2UiOiAiJS9reXRoZS9l
|
| ZGdlL2dlbmVyYXRlcyJ9LCB7InR5cGUiOiAiYW5jaG9yX2RlZmluZXMiLCAiYmVnaW4iOiA1Njk1
|
| LCAiZW5kIjogNTcwMywgInZuYW1lIjogeyJsYW5ndWFnZSI6ICJtb2pvbSIsICJjb3JwdXMiOiAi
|
| Y2hyb21pdW0uZ29vZ2xlc291cmNlLmNvbS9jb2Rlc2VhcmNoL2Nocm9taXVtL3NyYy8vbWFpbiIs
|
| ICJzaWduYXR1cmUiOiAiZnV6ei5tb2pvbS5GdXp6SW50ZXJmYWNlLkZ1enpBcmdzIn0sICJlZGdl
|
| IjogIiUva3l0aGUvZWRnZS9nZW5lcmF0ZXMifSwgeyJ0eXBlIjogImFuY2hvcl9kZWZpbmVzIiwg
|
| ImJlZ2luIjogNTg4MCwgImVuZCI6IDU4OTIsICJ2bmFtZSI6IHsibGFuZ3VhZ2UiOiAibW9qb20i
|
| LCAiY29ycHVzIjogImNocm9taXVtLmdvb2dsZXNvdXJjZS5jb20vY29kZXNlYXJjaC9jaHJvbWl1
|
| bS9zcmMvL21haW4iLCAic2lnbmF0dXJlIjogImZ1enoubW9qb20uRnV6ekludGVyZmFjZS5GdXp6
|
| QXJnc1Jlc3AifSwgImVkZ2UiOiAiJS9reXRoZS9lZGdlL2dlbmVyYXRlcyJ9LCB7InR5cGUiOiAi
|
| YW5jaG9yX2RlZmluZXMiLCAiYmVnaW4iOiA2MTc5LCAiZW5kIjogNjE5NSwgInZuYW1lIjogeyJs
|
| YW5ndWFnZSI6ICJtb2pvbSIsICJjb3JwdXMiOiAiY2hyb21pdW0uZ29vZ2xlc291cmNlLmNvbS9j
|
| b2Rlc2VhcmNoL2Nocm9taXVtL3NyYy8vbWFpbiIsICJzaWduYXR1cmUiOiAiZnV6ei5tb2pvbS5G
|
| dXp6SW50ZXJmYWNlLkZ1enpBcmdzU3luY1Jlc3AifSwgImVkZ2UiOiAiJS9reXRoZS9lZGdlL2dl
|
| bmVyYXRlcyJ9LCB7InR5cGUiOiAiYW5jaG9yX2RlZmluZXMiLCAiYmVnaW4iOiA2Mzc1LCAiZW5k
|
| IjogNjM5MSwgInZuYW1lIjogeyJsYW5ndWFnZSI6ICJtb2pvbSIsICJjb3JwdXMiOiAiY2hyb21p
|
| dW0uZ29vZ2xlc291cmNlLmNvbS9jb2Rlc2VhcmNoL2Nocm9taXVtL3NyYy8vbWFpbiIsICJzaWdu
|
| YXR1cmUiOiAiZnV6ei5tb2pvbS5GdXp6SW50ZXJmYWNlLkZ1enpBcmdzU3luY1Jlc3AifSwgImVk
|
| Z2UiOiAiJS9reXRoZS9lZGdlL2dlbmVyYXRlcyJ9LCB7InR5cGUiOiAiYW5jaG9yX2RlZmluZXMi
|
| LCAiYmVnaW4iOiA2NTQ1LCAiZW5kIjogNjU1OSwgInZuYW1lIjogeyJsYW5ndWFnZSI6ICJtb2pv
|
| bSIsICJjb3JwdXMiOiAiY2hyb21pdW0uZ29vZ2xlc291cmNlLmNvbS9jb2Rlc2VhcmNoL2Nocm9t
|
| aXVtL3NyYy8vbWFpbiIsICJzaWduYXR1cmUiOiAiZnV6ei5tb2pvbS5GdXp6SW50ZXJmYWNlLkZ1
|
| enpBc3NvY2lhdGVkIn0sICJlZGdlIjogIiUva3l0aGUvZWRnZS9nZW5lcmF0ZXMifSwgeyJ0eXBl
|
| IjogImFuY2hvcl9kZWZpbmVzIiwgImJlZ2luIjogNjk1MSwgImVuZCI6IDY5NTUsICJ2bmFtZSI6
|
| IHsibGFuZ3VhZ2UiOiAibW9qb20iLCAiY29ycHVzIjogImNocm9taXVtLmdvb2dsZXNvdXJjZS5j
|
| b20vY29kZXNlYXJjaC9jaHJvbWl1bS9zcmMvL21haW4iLCAic2lnbmF0dXJlIjogImZ1enoubW9q
|
| b20uRnV6ekR1bW15SW50ZXJmYWNlLlBpbmcifSwgImVkZ2UiOiAiJS9reXRoZS9lZGdlL2dlbmVy
|
| YXRlcyJ9LCB7InR5cGUiOiAiYW5jaG9yX2RlZmluZXMiLCAiYmVnaW4iOiA3MzIyLCAiZW5kIjog
|
| NzMzMSwgInZuYW1lIjogeyJsYW5ndWFnZSI6ICJtb2pvbSIsICJjb3JwdXMiOiAiY2hyb21pdW0u
|
| Z29vZ2xlc291cmNlLmNvbS9jb2Rlc2VhcmNoL2Nocm9taXVtL3NyYy8vbWFpbiIsICJzaWduYXR1
|
| cmUiOiAiZnV6ei5tb2pvbS5GdXp6SW50ZXJmYWNlLkZ1enpCYXNpYyJ9LCAiZWRnZSI6ICIlL2t5
|
| dGhlL2VkZ2UvZ2VuZXJhdGVzIn0sIHsidHlwZSI6ICJhbmNob3JfZGVmaW5lcyIsICJiZWdpbiI6
|
| IDc0MTAsICJlbmQiOiA3NDIzLCAidm5hbWUiOiB7Imxhbmd1YWdlIjogIm1vam9tIiwgImNvcnB1
|
| cyI6ICJjaHJvbWl1bS5nb29nbGVzb3VyY2UuY29tL2NvZGVzZWFyY2gvY2hyb21pdW0vc3JjLy9t
|
| YWluIiwgInNpZ25hdHVyZSI6ICJmdXp6Lm1vam9tLkZ1enpJbnRlcmZhY2UuRnV6ekJhc2ljUmVz
|
| cCJ9LCAiZWRnZSI6ICIlL2t5dGhlL2VkZ2UvZ2VuZXJhdGVzIn0sIHsidHlwZSI6ICJhbmNob3Jf
|
| ZGVmaW5lcyIsICJiZWdpbiI6IDc1MzYsICJlbmQiOiA3NTUzLCAidm5hbWUiOiB7Imxhbmd1YWdl
|
| IjogIm1vam9tIiwgImNvcnB1cyI6ICJjaHJvbWl1bS5nb29nbGVzb3VyY2UuY29tL2NvZGVzZWFy
|
| Y2gvY2hyb21pdW0vc3JjLy9tYWluIiwgInNpZ25hdHVyZSI6ICJmdXp6Lm1vam9tLkZ1enpJbnRl
|
| cmZhY2UuRnV6ekJhc2ljU3luY1Jlc3AifSwgImVkZ2UiOiAiJS9reXRoZS9lZGdlL2dlbmVyYXRl
|
| cyJ9LCB7InR5cGUiOiAiYW5jaG9yX2RlZmluZXMiLCAiYmVnaW4iOiA3NjM2LCAiZW5kIjogNzY1
|
| MywgInZuYW1lIjogeyJsYW5ndWFnZSI6ICJtb2pvbSIsICJjb3JwdXMiOiAiY2hyb21pdW0uZ29v
|
| Z2xlc291cmNlLmNvbS9jb2Rlc2VhcmNoL2Nocm9taXVtL3NyYy8vbWFpbiIsICJzaWduYXR1cmUi
|
| OiAiZnV6ei5tb2pvbS5GdXp6SW50ZXJmYWNlLkZ1enpCYXNpY1N5bmNSZXNwIn0sICJlZGdlIjog
|
| IiUva3l0aGUvZWRnZS9nZW5lcmF0ZXMifSwgeyJ0eXBlIjogImFuY2hvcl9kZWZpbmVzIiwgImJl
|
| Z2luIjogNzc2MSwgImVuZCI6IDc3NjksICJ2bmFtZSI6IHsibGFuZ3VhZ2UiOiAibW9qb20iLCAi
|
| Y29ycHVzIjogImNocm9taXVtLmdvb2dsZXNvdXJjZS5jb20vY29kZXNlYXJjaC9jaHJvbWl1bS9z
|
| cmMvL21haW4iLCAic2lnbmF0dXJlIjogImZ1enoubW9qb20uRnV6ekludGVyZmFjZS5GdXp6QXJn
|
| cyJ9LCAiZWRnZSI6ICIlL2t5dGhlL2VkZ2UvZ2VuZXJhdGVzIn0sIHsidHlwZSI6ICJhbmNob3Jf
|
| ZGVmaW5lcyIsICJiZWdpbiI6IDc4NzksICJlbmQiOiA3ODkxLCAidm5hbWUiOiB7Imxhbmd1YWdl
|
| IjogIm1vam9tIiwgImNvcnB1cyI6ICJjaHJvbWl1bS5nb29nbGVzb3VyY2UuY29tL2NvZGVzZWFy
|
| Y2gvY2hyb21pdW0vc3JjLy9tYWluIiwgInNpZ25hdHVyZSI6ICJmdXp6Lm1vam9tLkZ1enpJbnRl
|
| cmZhY2UuRnV6ekFyZ3NSZXNwIn0sICJlZGdlIjogIiUva3l0aGUvZWRnZS9nZW5lcmF0ZXMifSwg
|
| eyJ0eXBlIjogImFuY2hvcl9kZWZpbmVzIiwgImJlZ2luIjogODAzNiwgImVuZCI6IDgwNTIsICJ2
|
| bmFtZSI6IHsibGFuZ3VhZ2UiOiAibW9qb20iLCAiY29ycHVzIjogImNocm9taXVtLmdvb2dsZXNv
|
| dXJjZS5jb20vY29kZXNlYXJjaC9jaHJvbWl1bS9zcmMvL21haW4iLCAic2lnbmF0dXJlIjogImZ1
|
| enoubW9qb20uRnV6ekludGVyZmFjZS5GdXp6QXJnc1N5bmNSZXNwIn0sICJlZGdlIjogIiUva3l0
|
| aGUvZWRnZS9nZW5lcmF0ZXMifSwgeyJ0eXBlIjogImFuY2hvcl9kZWZpbmVzIiwgImJlZ2luIjog
|
| ODE2NiwgImVuZCI6IDgxODIsICJ2bmFtZSI6IHsibGFuZ3VhZ2UiOiAibW9qb20iLCAiY29ycHVz
|
| IjogImNocm9taXVtLmdvb2dsZXNvdXJjZS5jb20vY29kZXNlYXJjaC9jaHJvbWl1bS9zcmMvL21h
|
| aW4iLCAic2lnbmF0dXJlIjogImZ1enoubW9qb20uRnV6ekludGVyZmFjZS5GdXp6QXJnc1N5bmNS
|
| ZXNwIn0sICJlZGdlIjogIiUva3l0aGUvZWRnZS9nZW5lcmF0ZXMifSwgeyJ0eXBlIjogImFuY2hv
|
| cl9kZWZpbmVzIiwgImJlZ2luIjogODMyOSwgImVuZCI6IDgzNDMsICJ2bmFtZSI6IHsibGFuZ3Vh
|
| Z2UiOiAibW9qb20iLCAiY29ycHVzIjogImNocm9taXVtLmdvb2dsZXNvdXJjZS5jb20vY29kZXNl
|
| YXJjaC9jaHJvbWl1bS9zcmMvL21haW4iLCAic2lnbmF0dXJlIjogImZ1enoubW9qb20uRnV6eklu
|
| dGVyZmFjZS5GdXp6QXNzb2NpYXRlZCJ9LCAiZWRnZSI6ICIlL2t5dGhlL2VkZ2UvZ2VuZXJhdGVz
|
| In0sIHsidHlwZSI6ICJhbmNob3JfZGVmaW5lcyIsICJiZWdpbiI6IDExNTY2LCAiZW5kIjogMTE1
|
| ODEsICJ2bmFtZSI6IHsibGFuZ3VhZ2UiOiAibW9qb20iLCAiY29ycHVzIjogImNocm9taXVtLmdv
|
| b2dsZXNvdXJjZS5jb20vY29kZXNlYXJjaC9jaHJvbWl1bS9zcmMvL21haW4iLCAic2lnbmF0dXJl
|
| IjogImZ1enoubW9qb20uRnV6ekR1bW15U3RydWN0In0sICJlZGdlIjogIiUva3l0aGUvZWRnZS9n
|
| ZW5lcmF0ZXMifSwgeyJ0eXBlIjogImFuY2hvcl9kZWZpbmVzIiwgImJlZ2luIjogMTU0MDksICJl
|
| bmQiOiAxNTQxNCwgInZuYW1lIjogeyJsYW5ndWFnZSI6ICJtb2pvbSIsICJjb3JwdXMiOiAiY2hy
|
| b21pdW0uZ29vZ2xlc291cmNlLmNvbS9jb2Rlc2VhcmNoL2Nocm9taXVtL3NyYy8vbWFpbiIsICJz
|
| aWduYXR1cmUiOiAiZnV6ei5tb2pvbS5GdXp6RHVtbXlTdHJ1Y3QuZHVtbXkifSwgImVkZ2UiOiAi
|
| JS9reXRoZS9lZGdlL2dlbmVyYXRlcyJ9LCB7InR5cGUiOiAiYW5jaG9yX2RlZmluZXMiLCAiYmVn
|
| aW4iOiAxNjQ0MiwgImVuZCI6IDE2NDUxLCAidm5hbWUiOiB7Imxhbmd1YWdlIjogIm1vam9tIiwg
|
| ImNvcnB1cyI6ICJjaHJvbWl1bS5nb29nbGVzb3VyY2UuY29tL2NvZGVzZWFyY2gvY2hyb21pdW0v
|
| c3JjLy9tYWluIiwgInNpZ25hdHVyZSI6ICJmdXp6Lm1vam9tLkZ1enpVbmlvbiJ9LCAiZWRnZSI6
|
| ICIlL2t5dGhlL2VkZ2UvZ2VuZXJhdGVzIn0sIHsidHlwZSI6ICJhbmNob3JfZGVmaW5lcyIsICJi
|
| ZWdpbiI6IDIzNDE2LCAiZW5kIjogMjM0MjgsICJ2bmFtZSI6IHsibGFuZ3VhZ2UiOiAibW9qb20i
|
| LCAiY29ycHVzIjogImNocm9taXVtLmdvb2dsZXNvdXJjZS5jb20vY29kZXNlYXJjaC9jaHJvbWl1
|
| bS9zcmMvL21haW4iLCAic2lnbmF0dXJlIjogImZ1enoubW9qb20uRnV6elVuaW9uLmZ1enpfYm9v
|
| bCJ9LCAiZWRnZSI6ICIlL2t5dGhlL2VkZ2UvZ2VuZXJhdGVzIn0sIHsidHlwZSI6ICJhbmNob3Jf
|
| ZGVmaW5lcyIsICJiZWdpbiI6IDIzNTM0LCAiZW5kIjogMjM1NDcsICJ2bmFtZSI6IHsibGFuZ3Vh
|
| Z2UiOiAibW9qb20iLCAiY29ycHVzIjogImNocm9taXVtLmdvb2dsZXNvdXJjZS5jb20vY29kZXNl
|
| YXJjaC9jaHJvbWl1bS9zcmMvL21haW4iLCAic2lnbmF0dXJlIjogImZ1enoubW9qb20uRnV6elVu
|
| aW9uLmZ1enpfYm9vbCJ9LCAiZWRnZSI6ICIlL2t5dGhlL2VkZ2UvZ2VuZXJhdGVzIn0sIHsidHlw
|
| ZSI6ICJhbmNob3JfZGVmaW5lcyIsICJiZWdpbiI6IDIzNjg3LCAiZW5kIjogMjM3MDAsICJ2bmFt
|
| ZSI6IHsibGFuZ3VhZ2UiOiAibW9qb20iLCAiY29ycHVzIjogImNocm9taXVtLmdvb2dsZXNvdXJj
|
| ZS5jb20vY29kZXNlYXJjaC9jaHJvbWl1bS9zcmMvL21haW4iLCAic2lnbmF0dXJlIjogImZ1enou
|
| bW9qb20uRnV6elVuaW9uLmZ1enpfYm9vbCJ9LCAiZWRnZSI6ICIlL2t5dGhlL2VkZ2UvZ2VuZXJh
|
| dGVzIn0sIHsidHlwZSI6ICJhbmNob3JfZGVmaW5lcyIsICJiZWdpbiI6IDIzNzg2LCAiZW5kIjog
|
| MjM3OTgsICJ2bmFtZSI6IHsibGFuZ3VhZ2UiOiAibW9qb20iLCAiY29ycHVzIjogImNocm9taXVt
|
| Lmdvb2dsZXNvdXJjZS5jb20vY29kZXNlYXJjaC9jaHJvbWl1bS9zcmMvL21haW4iLCAic2lnbmF0
|
| dXJlIjogImZ1enoubW9qb20uRnV6elVuaW9uLmZ1enpfaW50OCJ9LCAiZWRnZSI6ICIlL2t5dGhl
|
| L2VkZ2UvZ2VuZXJhdGVzIn0sIHsidHlwZSI6ICJhbmNob3JfZGVmaW5lcyIsICJiZWdpbiI6IDIz
|
| OTA2LCAiZW5kIjogMjM5MTksICJ2bmFtZSI6IHsibGFuZ3VhZ2UiOiAibW9qb20iLCAiY29ycHVz
|
| IjogImNocm9taXVtLmdvb2dsZXNvdXJjZS5jb20vY29kZXNlYXJjaC9jaHJvbWl1bS9zcmMvL21h
|
| aW4iLCAic2lnbmF0dXJlIjogImZ1enoubW9qb20uRnV6elVuaW9uLmZ1enpfaW50OCJ9LCAiZWRn
|
| ZSI6ICIlL2t5dGhlL2VkZ2UvZ2VuZXJhdGVzIn0sIHsidHlwZSI6ICJhbmNob3JfZGVmaW5lcyIs
|
| ICJiZWdpbiI6IDI0MDU5LCAiZW5kIjogMjQwNzIsICJ2bmFtZSI6IHsibGFuZ3VhZ2UiOiAibW9q
|
| b20iLCAiY29ycHVzIjogImNocm9taXVtLmdvb2dsZXNvdXJjZS5jb20vY29kZXNlYXJjaC9jaHJv
|
| bWl1bS9zcmMvL21haW4iLCAic2lnbmF0dXJlIjogImZ1enoubW9qb20uRnV6elVuaW9uLmZ1enpf
|
| aW50OCJ9LCAiZWRnZSI6ICIlL2t5dGhlL2VkZ2UvZ2VuZXJhdGVzIn0sIHsidHlwZSI6ICJhbmNo
|
| b3JfZGVmaW5lcyIsICJiZWdpbiI6IDI0MTYxLCAiZW5kIjogMjQxNzQsICJ2bmFtZSI6IHsibGFu
|
| Z3VhZ2UiOiAibW9qb20iLCAiY29ycHVzIjogImNocm9taXVtLmdvb2dsZXNvdXJjZS5jb20vY29k
|
| ZXNlYXJjaC9jaHJvbWl1bS9zcmMvL21haW4iLCAic2lnbmF0dXJlIjogImZ1enoubW9qb20uRnV6
|
| elVuaW9uLmZ1enpfdWludDgifSwgImVkZ2UiOiAiJS9reXRoZS9lZGdlL2dlbmVyYXRlcyJ9LCB7
|
| InR5cGUiOiAiYW5jaG9yX2RlZmluZXMiLCAiYmVnaW4iOiAyNDI4NSwgImVuZCI6IDI0Mjk5LCAi
|
| dm5hbWUiOiB7Imxhbmd1YWdlIjogIm1vam9tIiwgImNvcnB1cyI6ICJjaHJvbWl1bS5nb29nbGVz
|
| b3VyY2UuY29tL2NvZGVzZWFyY2gvY2hyb21pdW0vc3JjLy9tYWluIiwgInNpZ25hdHVyZSI6ICJm
|
| dXp6Lm1vam9tLkZ1enpVbmlvbi5mdXp6X3VpbnQ4In0sICJlZGdlIjogIiUva3l0aGUvZWRnZS9n
|
| ZW5lcmF0ZXMifSwgeyJ0eXBlIjogImFuY2hvcl9kZWZpbmVzIiwgImJlZ2luIjogMjQ0NDIsICJl
|
| bmQiOiAyNDQ1NiwgInZuYW1lIjogeyJsYW5ndWFnZSI6ICJtb2pvbSIsICJjb3JwdXMiOiAiY2hy
|
| b21pdW0uZ29vZ2xlc291cmNlLmNvbS9jb2Rlc2VhcmNoL2Nocm9taXVtL3NyYy8vbWFpbiIsICJz
|
| aWduYXR1cmUiOiAiZnV6ei5tb2pvbS5GdXp6VW5pb24uZnV6el91aW50OCJ9LCAiZWRnZSI6ICIl
|
| L2t5dGhlL2VkZ2UvZ2VuZXJhdGVzIn0sIHsidHlwZSI6ICJhbmNob3JfZGVmaW5lcyIsICJiZWdp
|
| biI6IDI0NTQ3LCAiZW5kIjogMjQ1NjAsICJ2bmFtZSI6IHsibGFuZ3VhZ2UiOiAibW9qb20iLCAi
|
| Y29ycHVzIjogImNocm9taXVtLmdvb2dsZXNvdXJjZS5jb20vY29kZXNlYXJjaC9jaHJvbWl1bS9z
|
| cmMvL21haW4iLCAic2lnbmF0dXJlIjogImZ1enoubW9qb20uRnV6elVuaW9uLmZ1enpfaW50MTYi
|
| fSwgImVkZ2UiOiAiJS9reXRoZS9lZGdlL2dlbmVyYXRlcyJ9LCB7InR5cGUiOiAiYW5jaG9yX2Rl
|
| ZmluZXMiLCAiYmVnaW4iOiAyNDY3MSwgImVuZCI6IDI0Njg1LCAidm5hbWUiOiB7Imxhbmd1YWdl
|
| IjogIm1vam9tIiwgImNvcnB1cyI6ICJjaHJvbWl1bS5nb29nbGVzb3VyY2UuY29tL2NvZGVzZWFy
|
| Y2gvY2hyb21pdW0vc3JjLy9tYWluIiwgInNpZ25hdHVyZSI6ICJmdXp6Lm1vam9tLkZ1enpVbmlv
|
| bi5mdXp6X2ludDE2In0sICJlZGdlIjogIiUva3l0aGUvZWRnZS9nZW5lcmF0ZXMifSwgeyJ0eXBl
|
| IjogImFuY2hvcl9kZWZpbmVzIiwgImJlZ2luIjogMjQ4MjgsICJlbmQiOiAyNDg0MiwgInZuYW1l
|
| IjogeyJsYW5ndWFnZSI6ICJtb2pvbSIsICJjb3JwdXMiOiAiY2hyb21pdW0uZ29vZ2xlc291cmNl
|
| LmNvbS9jb2Rlc2VhcmNoL2Nocm9taXVtL3NyYy8vbWFpbiIsICJzaWduYXR1cmUiOiAiZnV6ei5t
|
| b2pvbS5GdXp6VW5pb24uZnV6el9pbnQxNiJ9LCAiZWRnZSI6ICIlL2t5dGhlL2VkZ2UvZ2VuZXJh
|
| dGVzIn0sIHsidHlwZSI6ICJhbmNob3JfZGVmaW5lcyIsICJiZWdpbiI6IDI0OTM0LCAiZW5kIjog
|
| MjQ5NDgsICJ2bmFtZSI6IHsibGFuZ3VhZ2UiOiAibW9qb20iLCAiY29ycHVzIjogImNocm9taXVt
|
| Lmdvb2dsZXNvdXJjZS5jb20vY29kZXNlYXJjaC9jaHJvbWl1bS9zcmMvL21haW4iLCAic2lnbmF0
|
| dXJlIjogImZ1enoubW9qb20uRnV6elVuaW9uLmZ1enpfdWludDE2In0sICJlZGdlIjogIiUva3l0
|
| aGUvZWRnZS9nZW5lcmF0ZXMifSwgeyJ0eXBlIjogImFuY2hvcl9kZWZpbmVzIiwgImJlZ2luIjog
|
| MjUwNjIsICJlbmQiOiAyNTA3NywgInZuYW1lIjogeyJsYW5ndWFnZSI6ICJtb2pvbSIsICJjb3Jw
|
| dXMiOiAiY2hyb21pdW0uZ29vZ2xlc291cmNlLmNvbS9jb2Rlc2VhcmNoL2Nocm9taXVtL3NyYy8v
|
| bWFpbiIsICJzaWduYXR1cmUiOiAiZnV6ei5tb2pvbS5GdXp6VW5pb24uZnV6el91aW50MTYifSwg
|
| ImVkZ2UiOiAiJS9reXRoZS9lZGdlL2dlbmVyYXRlcyJ9LCB7InR5cGUiOiAiYW5jaG9yX2RlZmlu
|
| ZXMiLCAiYmVnaW4iOiAyNTIyMywgImVuZCI6IDI1MjM4LCAidm5hbWUiOiB7Imxhbmd1YWdlIjog
|
| Im1vam9tIiwgImNvcnB1cyI6ICJjaHJvbWl1bS5nb29nbGVzb3VyY2UuY29tL2NvZGVzZWFyY2gv
|
| Y2hyb21pdW0vc3JjLy9tYWluIiwgInNpZ25hdHVyZSI6ICJmdXp6Lm1vam9tLkZ1enpVbmlvbi5m
|
| dXp6X3VpbnQxNiJ9LCAiZWRnZSI6ICIlL2t5dGhlL2VkZ2UvZ2VuZXJhdGVzIn0sIHsidHlwZSI6
|
| ICJhbmNob3JfZGVmaW5lcyIsICJiZWdpbiI6IDI1MzMxLCAiZW5kIjogMjUzNDQsICJ2bmFtZSI6
|
| IHsibGFuZ3VhZ2UiOiAibW9qb20iLCAiY29ycHVzIjogImNocm9taXVtLmdvb2dsZXNvdXJjZS5j
|
| b20vY29kZXNlYXJjaC9jaHJvbWl1bS9zcmMvL21haW4iLCAic2lnbmF0dXJlIjogImZ1enoubW9q
|
| b20uRnV6elVuaW9uLmZ1enpfaW50MzIifSwgImVkZ2UiOiAiJS9reXRoZS9lZGdlL2dlbmVyYXRl
|
| cyJ9LCB7InR5cGUiOiAiYW5jaG9yX2RlZmluZXMiLCAiYmVnaW4iOiAyNTQ1NSwgImVuZCI6IDI1
|
| NDY5LCAidm5hbWUiOiB7Imxhbmd1YWdlIjogIm1vam9tIiwgImNvcnB1cyI6ICJjaHJvbWl1bS5n
|
| b29nbGVzb3VyY2UuY29tL2NvZGVzZWFyY2gvY2hyb21pdW0vc3JjLy9tYWluIiwgInNpZ25hdHVy
|
| ZSI6ICJmdXp6Lm1vam9tLkZ1enpVbmlvbi5mdXp6X2ludDMyIn0sICJlZGdlIjogIiUva3l0aGUv
|
| ZWRnZS9nZW5lcmF0ZXMifSwgeyJ0eXBlIjogImFuY2hvcl9kZWZpbmVzIiwgImJlZ2luIjogMjU2
|
| MTIsICJlbmQiOiAyNTYyNiwgInZuYW1lIjogeyJsYW5ndWFnZSI6ICJtb2pvbSIsICJjb3JwdXMi
|
| OiAiY2hyb21pdW0uZ29vZ2xlc291cmNlLmNvbS9jb2Rlc2VhcmNoL2Nocm9taXVtL3NyYy8vbWFp
|
| biIsICJzaWduYXR1cmUiOiAiZnV6ei5tb2pvbS5GdXp6VW5pb24uZnV6el9pbnQzMiJ9LCAiZWRn
|
| ZSI6ICIlL2t5dGhlL2VkZ2UvZ2VuZXJhdGVzIn0sIHsidHlwZSI6ICJhbmNob3JfZGVmaW5lcyIs
|
| ICJiZWdpbiI6IDI1NzE4LCAiZW5kIjogMjU3MzIsICJ2bmFtZSI6IHsibGFuZ3VhZ2UiOiAibW9q
|
| b20iLCAiY29ycHVzIjogImNocm9taXVtLmdvb2dsZXNvdXJjZS5jb20vY29kZXNlYXJjaC9jaHJv
|
| bWl1bS9zcmMvL21haW4iLCAic2lnbmF0dXJlIjogImZ1enoubW9qb20uRnV6elVuaW9uLmZ1enpf
|
| dWludDMyIn0sICJlZGdlIjogIiUva3l0aGUvZWRnZS9nZW5lcmF0ZXMifSwgeyJ0eXBlIjogImFu
|
| Y2hvcl9kZWZpbmVzIiwgImJlZ2luIjogMjU4NDYsICJlbmQiOiAyNTg2MSwgInZuYW1lIjogeyJs
|
| YW5ndWFnZSI6ICJtb2pvbSIsICJjb3JwdXMiOiAiY2hyb21pdW0uZ29vZ2xlc291cmNlLmNvbS9j
|
| b2Rlc2VhcmNoL2Nocm9taXVtL3NyYy8vbWFpbiIsICJzaWduYXR1cmUiOiAiZnV6ei5tb2pvbS5G
|
| dXp6VW5pb24uZnV6el91aW50MzIifSwgImVkZ2UiOiAiJS9reXRoZS9lZGdlL2dlbmVyYXRlcyJ9
|
| LCB7InR5cGUiOiAiYW5jaG9yX2RlZmluZXMiLCAiYmVnaW4iOiAyNjAwNywgImVuZCI6IDI2MDIy
|
| LCAidm5hbWUiOiB7Imxhbmd1YWdlIjogIm1vam9tIiwgImNvcnB1cyI6ICJjaHJvbWl1bS5nb29n
|
| bGVzb3VyY2UuY29tL2NvZGVzZWFyY2gvY2hyb21pdW0vc3JjLy9tYWluIiwgInNpZ25hdHVyZSI6
|
| ICJmdXp6Lm1vam9tLkZ1enpVbmlvbi5mdXp6X3VpbnQzMiJ9LCAiZWRnZSI6ICIlL2t5dGhlL2Vk
|
| Z2UvZ2VuZXJhdGVzIn0sIHsidHlwZSI6ICJhbmNob3JfZGVmaW5lcyIsICJiZWdpbiI6IDI2MTE1
|
| LCAiZW5kIjogMjYxMjgsICJ2bmFtZSI6IHsibGFuZ3VhZ2UiOiAibW9qb20iLCAiY29ycHVzIjog
|
| ImNocm9taXVtLmdvb2dsZXNvdXJjZS5jb20vY29kZXNlYXJjaC9jaHJvbWl1bS9zcmMvL21haW4i
|
| LCAic2lnbmF0dXJlIjogImZ1enoubW9qb20uRnV6elVuaW9uLmZ1enpfaW50NjQifSwgImVkZ2Ui
|
| OiAiJS9reXRoZS9lZGdlL2dlbmVyYXRlcyJ9LCB7InR5cGUiOiAiYW5jaG9yX2RlZmluZXMiLCAi
|
| YmVnaW4iOiAyNjIzOSwgImVuZCI6IDI2MjUzLCAidm5hbWUiOiB7Imxhbmd1YWdlIjogIm1vam9t
|
| IiwgImNvcnB1cyI6ICJjaHJvbWl1bS5nb29nbGVzb3VyY2UuY29tL2NvZGVzZWFyY2gvY2hyb21p
|
| dW0vc3JjLy9tYWluIiwgInNpZ25hdHVyZSI6ICJmdXp6Lm1vam9tLkZ1enpVbmlvbi5mdXp6X2lu
|
| dDY0In0sICJlZGdlIjogIiUva3l0aGUvZWRnZS9nZW5lcmF0ZXMifSwgeyJ0eXBlIjogImFuY2hv
|
| cl9kZWZpbmVzIiwgImJlZ2luIjogMjYzOTYsICJlbmQiOiAyNjQxMCwgInZuYW1lIjogeyJsYW5n
|
| dWFnZSI6ICJtb2pvbSIsICJjb3JwdXMiOiAiY2hyb21pdW0uZ29vZ2xlc291cmNlLmNvbS9jb2Rl
|
| c2VhcmNoL2Nocm9taXVtL3NyYy8vbWFpbiIsICJzaWduYXR1cmUiOiAiZnV6ei5tb2pvbS5GdXp6
|
| VW5pb24uZnV6el9pbnQ2NCJ9LCAiZWRnZSI6ICIlL2t5dGhlL2VkZ2UvZ2VuZXJhdGVzIn0sIHsi
|
| dHlwZSI6ICJhbmNob3JfZGVmaW5lcyIsICJiZWdpbiI6IDI2NTAyLCAiZW5kIjogMjY1MTYsICJ2
|
| bmFtZSI6IHsibGFuZ3VhZ2UiOiAibW9qb20iLCAiY29ycHVzIjogImNocm9taXVtLmdvb2dsZXNv
|
| dXJjZS5jb20vY29kZXNlYXJjaC9jaHJvbWl1bS9zcmMvL21haW4iLCAic2lnbmF0dXJlIjogImZ1
|
| enoubW9qb20uRnV6elVuaW9uLmZ1enpfdWludDY0In0sICJlZGdlIjogIiUva3l0aGUvZWRnZS9n
|
| ZW5lcmF0ZXMifSwgeyJ0eXBlIjogImFuY2hvcl9kZWZpbmVzIiwgImJlZ2luIjogMjY2MzAsICJl
|
| bmQiOiAyNjY0NSwgInZuYW1lIjogeyJsYW5ndWFnZSI6ICJtb2pvbSIsICJjb3JwdXMiOiAiY2hy
|
| b21pdW0uZ29vZ2xlc291cmNlLmNvbS9jb2Rlc2VhcmNoL2Nocm9taXVtL3NyYy8vbWFpbiIsICJz
|
| aWduYXR1cmUiOiAiZnV6ei5tb2pvbS5GdXp6VW5pb24uZnV6el91aW50NjQifSwgImVkZ2UiOiAi
|
| JS9reXRoZS9lZGdlL2dlbmVyYXRlcyJ9LCB7InR5cGUiOiAiYW5jaG9yX2RlZmluZXMiLCAiYmVn
|
| aW4iOiAyNjc5MSwgImVuZCI6IDI2ODA2LCAidm5hbWUiOiB7Imxhbmd1YWdlIjogIm1vam9tIiwg
|
| ImNvcnB1cyI6ICJjaHJvbWl1bS5nb29nbGVzb3VyY2UuY29tL2NvZGVzZWFyY2gvY2hyb21pdW0v
|
| c3JjLy9tYWluIiwgInNpZ25hdHVyZSI6ICJmdXp6Lm1vam9tLkZ1enpVbmlvbi5mdXp6X3VpbnQ2
|
| NCJ9LCAiZWRnZSI6ICIlL2t5dGhlL2VkZ2UvZ2VuZXJhdGVzIn0sIHsidHlwZSI6ICJhbmNob3Jf
|
| ZGVmaW5lcyIsICJiZWdpbiI6IDI2ODk5LCAiZW5kIjogMjY5MTIsICJ2bmFtZSI6IHsibGFuZ3Vh
|
| Z2UiOiAibW9qb20iLCAiY29ycHVzIjogImNocm9taXVtLmdvb2dsZXNvdXJjZS5jb20vY29kZXNl
|
| YXJjaC9jaHJvbWl1bS9zcmMvL21haW4iLCAic2lnbmF0dXJlIjogImZ1enoubW9qb20uRnV6elVu
|
| aW9uLmZ1enpfZmxvYXQifSwgImVkZ2UiOiAiJS9reXRoZS9lZGdlL2dlbmVyYXRlcyJ9LCB7InR5
|
| cGUiOiAiYW5jaG9yX2RlZmluZXMiLCAiYmVnaW4iOiAyNzAyMSwgImVuZCI6IDI3MDM1LCAidm5h
|
| bWUiOiB7Imxhbmd1YWdlIjogIm1vam9tIiwgImNvcnB1cyI6ICJjaHJvbWl1bS5nb29nbGVzb3Vy
|
| Y2UuY29tL2NvZGVzZWFyY2gvY2hyb21pdW0vc3JjLy9tYWluIiwgInNpZ25hdHVyZSI6ICJmdXp6
|
| Lm1vam9tLkZ1enpVbmlvbi5mdXp6X2Zsb2F0In0sICJlZGdlIjogIiUva3l0aGUvZWRnZS9nZW5l
|
| cmF0ZXMifSwgeyJ0eXBlIjogImFuY2hvcl9kZWZpbmVzIiwgImJlZ2luIjogMjcxNzgsICJlbmQi
|
| OiAyNzE5MiwgInZuYW1lIjogeyJsYW5ndWFnZSI6ICJtb2pvbSIsICJjb3JwdXMiOiAiY2hyb21p
|
| dW0uZ29vZ2xlc291cmNlLmNvbS9jb2Rlc2VhcmNoL2Nocm9taXVtL3NyYy8vbWFpbiIsICJzaWdu
|
| YXR1cmUiOiAiZnV6ei5tb2pvbS5GdXp6VW5pb24uZnV6el9mbG9hdCJ9LCAiZWRnZSI6ICIlL2t5
|
| dGhlL2VkZ2UvZ2VuZXJhdGVzIn0sIHsidHlwZSI6ICJhbmNob3JfZGVmaW5lcyIsICJiZWdpbiI6
|
| IDI3MjgyLCAiZW5kIjogMjcyOTYsICJ2bmFtZSI6IHsibGFuZ3VhZ2UiOiAibW9qb20iLCAiY29y
|
| cHVzIjogImNocm9taXVtLmdvb2dsZXNvdXJjZS5jb20vY29kZXNlYXJjaC9jaHJvbWl1bS9zcmMv
|
| L21haW4iLCAic2lnbmF0dXJlIjogImZ1enoubW9qb20uRnV6elVuaW9uLmZ1enpfZG91YmxlIn0s
|
| ICJlZGdlIjogIiUva3l0aGUvZWRnZS9nZW5lcmF0ZXMifSwgeyJ0eXBlIjogImFuY2hvcl9kZWZp
|
| bmVzIiwgImJlZ2luIjogMjc0MDgsICJlbmQiOiAyNzQyMywgInZuYW1lIjogeyJsYW5ndWFnZSI6
|
| ICJtb2pvbSIsICJjb3JwdXMiOiAiY2hyb21pdW0uZ29vZ2xlc291cmNlLmNvbS9jb2Rlc2VhcmNo
|
| L2Nocm9taXVtL3NyYy8vbWFpbiIsICJzaWduYXR1cmUiOiAiZnV6ei5tb2pvbS5GdXp6VW5pb24u
|
| ZnV6el9kb3VibGUifSwgImVkZ2UiOiAiJS9reXRoZS9lZGdlL2dlbmVyYXRlcyJ9LCB7InR5cGUi
|
| OiAiYW5jaG9yX2RlZmluZXMiLCAiYmVnaW4iOiAyNzU2OSwgImVuZCI6IDI3NTg0LCAidm5hbWUi
|
| OiB7Imxhbmd1YWdlIjogIm1vam9tIiwgImNvcnB1cyI6ICJjaHJvbWl1bS5nb29nbGVzb3VyY2Uu
|
| Y29tL2NvZGVzZWFyY2gvY2hyb21pdW0vc3JjLy9tYWluIiwgInNpZ25hdHVyZSI6ICJmdXp6Lm1v
|
| am9tLkZ1enpVbmlvbi5mdXp6X2RvdWJsZSJ9LCAiZWRnZSI6ICIlL2t5dGhlL2VkZ2UvZ2VuZXJh
|
| dGVzIn0sIHsidHlwZSI6ICJhbmNob3JfZGVmaW5lcyIsICJiZWdpbiI6IDI3Njc2LCAiZW5kIjog
|
| Mjc2OTAsICJ2bmFtZSI6IHsibGFuZ3VhZ2UiOiAibW9qb20iLCAiY29ycHVzIjogImNocm9taXVt
|
| Lmdvb2dsZXNvdXJjZS5jb20vY29kZXNlYXJjaC9jaHJvbWl1bS9zcmMvL21haW4iLCAic2lnbmF0
|
| dXJlIjogImZ1enoubW9qb20uRnV6elVuaW9uLmZ1enpfc3RyaW5nIn0sICJlZGdlIjogIiUva3l0
|
| aGUvZWRnZS9nZW5lcmF0ZXMifSwgeyJ0eXBlIjogImFuY2hvcl9kZWZpbmVzIiwgImJlZ2luIjog
|
| Mjc4MDgsICJlbmQiOiAyNzgyMywgInZuYW1lIjogeyJsYW5ndWFnZSI6ICJtb2pvbSIsICJjb3Jw
|
| dXMiOiAiY2hyb21pdW0uZ29vZ2xlc291cmNlLmNvbS9jb2Rlc2VhcmNoL2Nocm9taXVtL3NyYy8v
|
| bWFpbiIsICJzaWduYXR1cmUiOiAiZnV6ei5tb2pvbS5GdXp6VW5pb24uZnV6el9zdHJpbmcifSwg
|
| ImVkZ2UiOiAiJS9reXRoZS9lZGdlL2dlbmVyYXRlcyJ9LCB7InR5cGUiOiAiYW5jaG9yX2RlZmlu
|
| ZXMiLCAiYmVnaW4iOiAyNzk3MiwgImVuZCI6IDI3OTg3LCAidm5hbWUiOiB7Imxhbmd1YWdlIjog
|
| Im1vam9tIiwgImNvcnB1cyI6ICJjaHJvbWl1bS5nb29nbGVzb3VyY2UuY29tL2NvZGVzZWFyY2gv
|
| Y2hyb21pdW0vc3JjLy9tYWluIiwgInNpZ25hdHVyZSI6ICJmdXp6Lm1vam9tLkZ1enpVbmlvbi5m
|
| dXp6X3N0cmluZyJ9LCAiZWRnZSI6ICIlL2t5dGhlL2VkZ2UvZ2VuZXJhdGVzIn0sIHsidHlwZSI6
|
| ICJhbmNob3JfZGVmaW5lcyIsICJiZWdpbiI6IDI4MDk1LCAiZW5kIjogMjgxMTMsICJ2bmFtZSI6
|
| IHsibGFuZ3VhZ2UiOiAibW9qb20iLCAiY29ycHVzIjogImNocm9taXVtLmdvb2dsZXNvdXJjZS5j
|
| b20vY29kZXNlYXJjaC9jaHJvbWl1bS9zcmMvL21haW4iLCAic2lnbmF0dXJlIjogImZ1enoubW9q
|
| b20uRnV6elVuaW9uLmZ1enpfYm9vbF9hcnJheSJ9LCAiZWRnZSI6ICIlL2t5dGhlL2VkZ2UvZ2Vu
|
| ZXJhdGVzIn0sIHsidHlwZSI6ICJhbmNob3JfZGVmaW5lcyIsICJiZWdpbiI6IDI4MjQ0LCAiZW5k
|
| IjogMjgyNjMsICJ2bmFtZSI6IHsibGFuZ3VhZ2UiOiAibW9qb20iLCAiY29ycHVzIjogImNocm9t
|
| aXVtLmdvb2dsZXNvdXJjZS5jb20vY29kZXNlYXJjaC9jaHJvbWl1bS9zcmMvL21haW4iLCAic2ln
|
| bmF0dXJlIjogImZ1enoubW9qb20uRnV6elVuaW9uLmZ1enpfYm9vbF9hcnJheSJ9LCAiZWRnZSI6
|
| ICIlL2t5dGhlL2VkZ2UvZ2VuZXJhdGVzIn0sIHsidHlwZSI6ICJhbmNob3JfZGVmaW5lcyIsICJi
|
| ZWdpbiI6IDI4NDIzLCAiZW5kIjogMjg0NDIsICJ2bmFtZSI6IHsibGFuZ3VhZ2UiOiAibW9qb20i
|
| LCAiY29ycHVzIjogImNocm9taXVtLmdvb2dsZXNvdXJjZS5jb20vY29kZXNlYXJjaC9jaHJvbWl1
|
| bS9zcmMvL21haW4iLCAic2lnbmF0dXJlIjogImZ1enoubW9qb20uRnV6elVuaW9uLmZ1enpfYm9v
|
| bF9hcnJheSJ9LCAiZWRnZSI6ICIlL2t5dGhlL2VkZ2UvZ2VuZXJhdGVzIn0sIHsidHlwZSI6ICJh
|
| bmNob3JfZGVmaW5lcyIsICJiZWdpbiI6IDI4NTU4LCAiZW5kIjogMjg1ODEsICJ2bmFtZSI6IHsi
|
| bGFuZ3VhZ2UiOiAibW9qb20iLCAiY29ycHVzIjogImNocm9taXVtLmdvb2dsZXNvdXJjZS5jb20v
|
| Y29kZXNlYXJjaC9jaHJvbWl1bS9zcmMvL21haW4iLCAic2lnbmF0dXJlIjogImZ1enoubW9qb20u
|
| RnV6elVuaW9uLmZ1enpfcHJpbWl0aXZlX2FycmF5In0sICJlZGdlIjogIiUva3l0aGUvZWRnZS9n
|
| ZW5lcmF0ZXMifSwgeyJ0eXBlIjogImFuY2hvcl9kZWZpbmVzIiwgImJlZ2luIjogMjg3MjQsICJl
|
| bmQiOiAyODc0OCwgInZuYW1lIjogeyJsYW5ndWFnZSI6ICJtb2pvbSIsICJjb3JwdXMiOiAiY2hy
|
| b21pdW0uZ29vZ2xlc291cmNlLmNvbS9jb2Rlc2VhcmNoL2Nocm9taXVtL3NyYy8vbWFpbiIsICJz
|
| aWduYXR1cmUiOiAiZnV6ei5tb2pvbS5GdXp6VW5pb24uZnV6el9wcmltaXRpdmVfYXJyYXkifSwg
|
| ImVkZ2UiOiAiJS9reXRoZS9lZGdlL2dlbmVyYXRlcyJ9LCB7InR5cGUiOiAiYW5jaG9yX2RlZmlu
|
| ZXMiLCAiYmVnaW4iOiAyODkyMywgImVuZCI6IDI4OTQ3LCAidm5hbWUiOiB7Imxhbmd1YWdlIjog
|
| Im1vam9tIiwgImNvcnB1cyI6ICJjaHJvbWl1bS5nb29nbGVzb3VyY2UuY29tL2NvZGVzZWFyY2gv
|
| Y2hyb21pdW0vc3JjLy9tYWluIiwgInNpZ25hdHVyZSI6ICJmdXp6Lm1vam9tLkZ1enpVbmlvbi5m
|
| dXp6X3ByaW1pdGl2ZV9hcnJheSJ9LCAiZWRnZSI6ICIlL2t5dGhlL2VkZ2UvZ2VuZXJhdGVzIn0s
|
| IHsidHlwZSI6ICJhbmNob3JfZGVmaW5lcyIsICJiZWdpbiI6IDI5MDY3LCAiZW5kIjogMjkwODcs
|
| ICJ2bmFtZSI6IHsibGFuZ3VhZ2UiOiAibW9qb20iLCAiY29ycHVzIjogImNocm9taXVtLmdvb2ds
|
| ZXNvdXJjZS5jb20vY29kZXNlYXJjaC9jaHJvbWl1bS9zcmMvL21haW4iLCAic2lnbmF0dXJlIjog
|
| ImZ1enoubW9qb20uRnV6elVuaW9uLmZ1enpfc3RydWN0X2FycmF5In0sICJlZGdlIjogIiUva3l0
|
| aGUvZWRnZS9nZW5lcmF0ZXMifSwgeyJ0eXBlIjogImFuY2hvcl9kZWZpbmVzIiwgImJlZ2luIjog
|
| MjkyMzYsICJlbmQiOiAyOTI1NywgInZuYW1lIjogeyJsYW5ndWFnZSI6ICJtb2pvbSIsICJjb3Jw
|
| dXMiOiAiY2hyb21pdW0uZ29vZ2xlc291cmNlLmNvbS9jb2Rlc2VhcmNoL2Nocm9taXVtL3NyYy8v
|
| bWFpbiIsICJzaWduYXR1cmUiOiAiZnV6ei5tb2pvbS5GdXp6VW5pb24uZnV6el9zdHJ1Y3RfYXJy
|
| YXkifSwgImVkZ2UiOiAiJS9reXRoZS9lZGdlL2dlbmVyYXRlcyJ9LCB7InR5cGUiOiAiYW5jaG9y
|
| X2RlZmluZXMiLCAiYmVnaW4iOiAyOTQyMywgImVuZCI6IDI5NDQ0LCAidm5hbWUiOiB7Imxhbmd1
|
| YWdlIjogIm1vam9tIiwgImNvcnB1cyI6ICJjaHJvbWl1bS5nb29nbGVzb3VyY2UuY29tL2NvZGVz
|
| ZWFyY2gvY2hyb21pdW0vc3JjLy9tYWluIiwgInNpZ25hdHVyZSI6ICJmdXp6Lm1vam9tLkZ1enpV
|
| bmlvbi5mdXp6X3N0cnVjdF9hcnJheSJ9LCAiZWRnZSI6ICIlL2t5dGhlL2VkZ2UvZ2VuZXJhdGVz
|
| In0sIHsidHlwZSI6ICJhbmNob3JfZGVmaW5lcyIsICJiZWdpbiI6IDI5NTc0LCAiZW5kIjogMjk1
|
| OTUsICJ2bmFtZSI6IHsibGFuZ3VhZ2UiOiAibW9qb20iLCAiY29ycHVzIjogImNocm9taXVtLmdv
|
| b2dsZXNvdXJjZS5jb20vY29kZXNlYXJjaC9jaHJvbWl1bS9zcmMvL21haW4iLCAic2lnbmF0dXJl
|
| IjogImZ1enoubW9qb20uRnV6elVuaW9uLmZ1enpfcHJpbWl0aXZlX21hcCJ9LCAiZWRnZSI6ICIl
|
| L2t5dGhlL2VkZ2UvZ2VuZXJhdGVzIn0sIHsidHlwZSI6ICJhbmNob3JfZGVmaW5lcyIsICJiZWdp
|
| biI6IDI5NzUwLCAiZW5kIjogMjk3NzIsICJ2bmFtZSI6IHsibGFuZ3VhZ2UiOiAibW9qb20iLCAi
|
| Y29ycHVzIjogImNocm9taXVtLmdvb2dsZXNvdXJjZS5jb20vY29kZXNlYXJjaC9jaHJvbWl1bS9z
|
| cmMvL21haW4iLCAic2lnbmF0dXJlIjogImZ1enoubW9qb20uRnV6elVuaW9uLmZ1enpfcHJpbWl0
|
| aXZlX21hcCJ9LCAiZWRnZSI6ICIlL2t5dGhlL2VkZ2UvZ2VuZXJhdGVzIn0sIHsidHlwZSI6ICJh
|
| bmNob3JfZGVmaW5lcyIsICJiZWdpbiI6IDI5OTQxLCAiZW5kIjogMjk5NjMsICJ2bmFtZSI6IHsi
|
| bGFuZ3VhZ2UiOiAibW9qb20iLCAiY29ycHVzIjogImNocm9taXVtLmdvb2dsZXNvdXJjZS5jb20v
|
| Y29kZXNlYXJjaC9jaHJvbWl1bS9zcmMvL21haW4iLCAic2lnbmF0dXJlIjogImZ1enoubW9qb20u
|
| RnV6elVuaW9uLmZ1enpfcHJpbWl0aXZlX21hcCJ9LCAiZWRnZSI6ICIlL2t5dGhlL2VkZ2UvZ2Vu
|
| ZXJhdGVzIn0sIHsidHlwZSI6ICJhbmNob3JfZGVmaW5lcyIsICJiZWdpbiI6IDMwMTAxLCAiZW5k
|
| IjogMzAxMTgsICJ2bmFtZSI6IHsibGFuZ3VhZ2UiOiAibW9qb20iLCAiY29ycHVzIjogImNocm9t
|
| aXVtLmdvb2dsZXNvdXJjZS5jb20vY29kZXNlYXJjaC9jaHJvbWl1bS9zcmMvL21haW4iLCAic2ln
|
| bmF0dXJlIjogImZ1enoubW9qb20uRnV6elVuaW9uLmZ1enpfYXJyYXlfbWFwIn0sICJlZGdlIjog
|
| IiUva3l0aGUvZWRnZS9nZW5lcmF0ZXMifSwgeyJ0eXBlIjogImFuY2hvcl9kZWZpbmVzIiwgImJl
|
| Z2luIjogMzAyODMsICJlbmQiOiAzMDMwMSwgInZuYW1lIjogeyJsYW5ndWFnZSI6ICJtb2pvbSIs
|
| ICJjb3JwdXMiOiAiY2hyb21pdW0uZ29vZ2xlc291cmNlLmNvbS9jb2Rlc2VhcmNoL2Nocm9taXVt
|
| L3NyYy8vbWFpbiIsICJzaWduYXR1cmUiOiAiZnV6ei5tb2pvbS5GdXp6VW5pb24uZnV6el9hcnJh
|
| eV9tYXAifSwgImVkZ2UiOiAiJS9reXRoZS9lZGdlL2dlbmVyYXRlcyJ9LCB7InR5cGUiOiAiYW5j
|
| aG9yX2RlZmluZXMiLCAiYmVnaW4iOiAzMDQ1OCwgImVuZCI6IDMwNDc2LCAidm5hbWUiOiB7Imxh
|
| bmd1YWdlIjogIm1vam9tIiwgImNvcnB1cyI6ICJjaHJvbWl1bS5nb29nbGVzb3VyY2UuY29tL2Nv
|
| ZGVzZWFyY2gvY2hyb21pdW0vc3JjLy9tYWluIiwgInNpZ25hdHVyZSI6ICJmdXp6Lm1vam9tLkZ1
|
| enpVbmlvbi5mdXp6X2FycmF5X21hcCJ9LCAiZWRnZSI6ICIlL2t5dGhlL2VkZ2UvZ2VuZXJhdGVz
|
| In0sIHsidHlwZSI6ICJhbmNob3JfZGVmaW5lcyIsICJiZWdpbiI6IDMwNjI5LCAiZW5kIjogMzA2
|
| NDcsICJ2bmFtZSI6IHsibGFuZ3VhZ2UiOiAibW9qb20iLCAiY29ycHVzIjogImNocm9taXVtLmdv
|
| b2dsZXNvdXJjZS5jb20vY29kZXNlYXJjaC9jaHJvbWl1bS9zcmMvL21haW4iLCAic2lnbmF0dXJl
|
| IjogImZ1enoubW9qb20uRnV6elVuaW9uLmZ1enpfc3RydWN0X21hcCJ9LCAiZWRnZSI6ICIlL2t5
|
| dGhlL2VkZ2UvZ2VuZXJhdGVzIn0sIHsidHlwZSI6ICJhbmNob3JfZGVmaW5lcyIsICJiZWdpbiI6
|
| IDMwODA4LCAiZW5kIjogMzA4MjcsICJ2bmFtZSI6IHsibGFuZ3VhZ2UiOiAibW9qb20iLCAiY29y
|
| cHVzIjogImNocm9taXVtLmdvb2dsZXNvdXJjZS5jb20vY29kZXNlYXJjaC9jaHJvbWl1bS9zcmMv
|
| L21haW4iLCAic2lnbmF0dXJlIjogImZ1enoubW9qb20uRnV6elVuaW9uLmZ1enpfc3RydWN0X21h
|
| cCJ9LCAiZWRnZSI6ICIlL2t5dGhlL2VkZ2UvZ2VuZXJhdGVzIn0sIHsidHlwZSI6ICJhbmNob3Jf
|
| ZGVmaW5lcyIsICJiZWdpbiI6IDMwOTg3LCAiZW5kIjogMzEwMDYsICJ2bmFtZSI6IHsibGFuZ3Vh
|
| Z2UiOiAibW9qb20iLCAiY29ycHVzIjogImNocm9taXVtLmdvb2dsZXNvdXJjZS5jb20vY29kZXNl
|
| YXJjaC9jaHJvbWl1bS9zcmMvL21haW4iLCAic2lnbmF0dXJlIjogImZ1enoubW9qb20uRnV6elVu
|
| aW9uLmZ1enpfc3RydWN0X21hcCJ9LCAiZWRnZSI6ICIlL2t5dGhlL2VkZ2UvZ2VuZXJhdGVzIn0s
|
| IHsidHlwZSI6ICJhbmNob3JfZGVmaW5lcyIsICJiZWdpbiI6IDMxMTQ2LCAiZW5kIjogMzExNjMs
|
| ICJ2bmFtZSI6IHsibGFuZ3VhZ2UiOiAibW9qb20iLCAiY29ycHVzIjogImNocm9taXVtLmdvb2ds
|
| ZXNvdXJjZS5jb20vY29kZXNlYXJjaC9jaHJvbWl1bS9zcmMvL21haW4iLCAic2lnbmF0dXJlIjog
|
| ImZ1enoubW9qb20uRnV6elVuaW9uLmZ1enpfdW5pb25fbWFwIn0sICJlZGdlIjogIiUva3l0aGUv
|
| ZWRnZS9nZW5lcmF0ZXMifSwgeyJ0eXBlIjogImFuY2hvcl9kZWZpbmVzIiwgImJlZ2luIjogMzEz
|
| MTMsICJlbmQiOiAzMTMzMSwgInZuYW1lIjogeyJsYW5ndWFnZSI6ICJtb2pvbSIsICJjb3JwdXMi
|
| OiAiY2hyb21pdW0uZ29vZ2xlc291cmNlLmNvbS9jb2Rlc2VhcmNoL2Nocm9taXVtL3NyYy8vbWFp
|
| biIsICJzaWduYXR1cmUiOiAiZnV6ei5tb2pvbS5GdXp6VW5pb24uZnV6el91bmlvbl9tYXAifSwg
|
| ImVkZ2UiOiAiJS9reXRoZS9lZGdlL2dlbmVyYXRlcyJ9LCB7InR5cGUiOiAiYW5jaG9yX2RlZmlu
|
| ZXMiLCAiYmVnaW4iOiAzMTQ4OCwgImVuZCI6IDMxNTA2LCAidm5hbWUiOiB7Imxhbmd1YWdlIjog
|
| Im1vam9tIiwgImNvcnB1cyI6ICJjaHJvbWl1bS5nb29nbGVzb3VyY2UuY29tL2NvZGVzZWFyY2gv
|
| Y2hyb21pdW0vc3JjLy9tYWluIiwgInNpZ25hdHVyZSI6ICJmdXp6Lm1vam9tLkZ1enpVbmlvbi5m
|
| dXp6X3VuaW9uX21hcCJ9LCAiZWRnZSI6ICIlL2t5dGhlL2VkZ2UvZ2VuZXJhdGVzIn0sIHsidHlw
|
| ZSI6ICJhbmNob3JfZGVmaW5lcyIsICJiZWdpbiI6IDMxNjM0LCAiZW5kIjogMzE2NDksICJ2bmFt
|
| ZSI6IHsibGFuZ3VhZ2UiOiAibW9qb20iLCAiY29ycHVzIjogImNocm9taXVtLmdvb2dsZXNvdXJj
|
| ZS5jb20vY29kZXNlYXJjaC9jaHJvbWl1bS9zcmMvL21haW4iLCAic2lnbmF0dXJlIjogImZ1enou
|
| bW9qb20uRnV6elVuaW9uLmZ1enpfY29tcGxleCJ9LCAiZWRnZSI6ICIlL2t5dGhlL2VkZ2UvZ2Vu
|
| ZXJhdGVzIn0sIHsidHlwZSI6ICJhbmNob3JfZGVmaW5lcyIsICJiZWdpbiI6IDMxODc2LCAiZW5k
|
| IjogMzE4OTIsICJ2bmFtZSI6IHsibGFuZ3VhZ2UiOiAibW9qb20iLCAiY29ycHVzIjogImNocm9t
|
| aXVtLmdvb2dsZXNvdXJjZS5jb20vY29kZXNlYXJjaC9jaHJvbWl1bS9zcmMvL21haW4iLCAic2ln
|
| bmF0dXJlIjogImZ1enoubW9qb20uRnV6elVuaW9uLmZ1enpfY29tcGxleCJ9LCAiZWRnZSI6ICIl
|
| L2t5dGhlL2VkZ2UvZ2VuZXJhdGVzIn0sIHsidHlwZSI6ICJhbmNob3JfZGVmaW5lcyIsICJiZWdp
|
| biI6IDMyMDQ0LCAiZW5kIjogMzIwNjAsICJ2bmFtZSI6IHsibGFuZ3VhZ2UiOiAibW9qb20iLCAi
|
| Y29ycHVzIjogImNocm9taXVtLmdvb2dsZXNvdXJjZS5jb20vY29kZXNlYXJjaC9jaHJvbWl1bS9z
|
| cmMvL21haW4iLCAic2lnbmF0dXJlIjogImZ1enoubW9qb20uRnV6elVuaW9uLmZ1enpfY29tcGxl
|
| eCJ9LCAiZWRnZSI6ICIlL2t5dGhlL2VkZ2UvZ2VuZXJhdGVzIn0sIHsidHlwZSI6ICJhbmNob3Jf
|
| ZGVmaW5lcyIsICJiZWdpbiI6IDMzODM0LCAiZW5kIjogMzM4NDQsICJ2bmFtZSI6IHsibGFuZ3Vh
|
| Z2UiOiAibW9qb20iLCAiY29ycHVzIjogImNocm9taXVtLmdvb2dsZXNvdXJjZS5jb20vY29kZXNl
|
| YXJjaC9jaHJvbWl1bS9zcmMvL21haW4iLCAic2lnbmF0dXJlIjogImZ1enoubW9qb20uRnV6elN0
|
| cnVjdCJ9LCAiZWRnZSI6ICIlL2t5dGhlL2VkZ2UvZ2VuZXJhdGVzIn0sIHsidHlwZSI6ICJhbmNo
|
| b3JfZGVmaW5lcyIsICJiZWdpbiI6IDM4NTAwLCAiZW5kIjogMzg1MDksICJ2bmFtZSI6IHsibGFu
|
| Z3VhZ2UiOiAibW9qb20iLCAiY29ycHVzIjogImNocm9taXVtLmdvb2dsZXNvdXJjZS5jb20vY29k
|
| ZXNlYXJjaC9jaHJvbWl1bS9zcmMvL21haW4iLCAic2lnbmF0dXJlIjogImZ1enoubW9qb20uRnV6
|
| elN0cnVjdC5mdXp6X2Jvb2wifSwgImVkZ2UiOiAiJS9reXRoZS9lZGdlL2dlbmVyYXRlcyJ9LCB7
|
| InR5cGUiOiAiYW5jaG9yX2RlZmluZXMiLCAiYmVnaW4iOiAzODU3NSwgImVuZCI6IDM4NTg0LCAi
|
| dm5hbWUiOiB7Imxhbmd1YWdlIjogIm1vam9tIiwgImNvcnB1cyI6ICJjaHJvbWl1bS5nb29nbGVz
|
| b3VyY2UuY29tL2NvZGVzZWFyY2gvY2hyb21pdW0vc3JjLy9tYWluIiwgInNpZ25hdHVyZSI6ICJm
|
| dXp6Lm1vam9tLkZ1enpTdHJ1Y3QuZnV6el9pbnQ4In0sICJlZGdlIjogIiUva3l0aGUvZWRnZS9n
|
| ZW5lcmF0ZXMifSwgeyJ0eXBlIjogImFuY2hvcl9kZWZpbmVzIiwgImJlZ2luIjogMzg2NTIsICJl
|
| bmQiOiAzODY2MiwgInZuYW1lIjogeyJsYW5ndWFnZSI6ICJtb2pvbSIsICJjb3JwdXMiOiAiY2hy
|
| b21pdW0uZ29vZ2xlc291cmNlLmNvbS9jb2Rlc2VhcmNoL2Nocm9taXVtL3NyYy8vbWFpbiIsICJz
|
| aWduYXR1cmUiOiAiZnV6ei5tb2pvbS5GdXp6U3RydWN0LmZ1enpfdWludDgifSwgImVkZ2UiOiAi
|
| JS9reXRoZS9lZGdlL2dlbmVyYXRlcyJ9LCB7InR5cGUiOiAiYW5jaG9yX2RlZmluZXMiLCAiYmVn
|
| aW4iOiAzODczMCwgImVuZCI6IDM4NzQwLCAidm5hbWUiOiB7Imxhbmd1YWdlIjogIm1vam9tIiwg
|
| ImNvcnB1cyI6ICJjaHJvbWl1bS5nb29nbGVzb3VyY2UuY29tL2NvZGVzZWFyY2gvY2hyb21pdW0v
|
| c3JjLy9tYWluIiwgInNpZ25hdHVyZSI6ICJmdXp6Lm1vam9tLkZ1enpTdHJ1Y3QuZnV6el9pbnQx
|
| NiJ9LCAiZWRnZSI6ICIlL2t5dGhlL2VkZ2UvZ2VuZXJhdGVzIn0sIHsidHlwZSI6ICJhbmNob3Jf
|
| ZGVmaW5lcyIsICJiZWdpbiI6IDM4ODEwLCAiZW5kIjogMzg4MjEsICJ2bmFtZSI6IHsibGFuZ3Vh
|
| Z2UiOiAibW9qb20iLCAiY29ycHVzIjogImNocm9taXVtLmdvb2dsZXNvdXJjZS5jb20vY29kZXNl
|
| YXJjaC9jaHJvbWl1bS9zcmMvL21haW4iLCAic2lnbmF0dXJlIjogImZ1enoubW9qb20uRnV6elN0
|
| cnVjdC5mdXp6X3VpbnQxNiJ9LCAiZWRnZSI6ICIlL2t5dGhlL2VkZ2UvZ2VuZXJhdGVzIn0sIHsi
|
| dHlwZSI6ICJhbmNob3JfZGVmaW5lcyIsICJiZWdpbiI6IDM4ODg5LCAiZW5kIjogMzg4OTksICJ2
|
| bmFtZSI6IHsibGFuZ3VhZ2UiOiAibW9qb20iLCAiY29ycHVzIjogImNocm9taXVtLmdvb2dsZXNv
|
| dXJjZS5jb20vY29kZXNlYXJjaC9jaHJvbWl1bS9zcmMvL21haW4iLCAic2lnbmF0dXJlIjogImZ1
|
| enoubW9qb20uRnV6elN0cnVjdC5mdXp6X2ludDMyIn0sICJlZGdlIjogIiUva3l0aGUvZWRnZS9n
|
| ZW5lcmF0ZXMifSwgeyJ0eXBlIjogImFuY2hvcl9kZWZpbmVzIiwgImJlZ2luIjogMzg5NjksICJl
|
| bmQiOiAzODk4MCwgInZuYW1lIjogeyJsYW5ndWFnZSI6ICJtb2pvbSIsICJjb3JwdXMiOiAiY2hy
|
| b21pdW0uZ29vZ2xlc291cmNlLmNvbS9jb2Rlc2VhcmNoL2Nocm9taXVtL3NyYy8vbWFpbiIsICJz
|
| aWduYXR1cmUiOiAiZnV6ei5tb2pvbS5GdXp6U3RydWN0LmZ1enpfdWludDMyIn0sICJlZGdlIjog
|
| IiUva3l0aGUvZWRnZS9nZW5lcmF0ZXMifSwgeyJ0eXBlIjogImFuY2hvcl9kZWZpbmVzIiwgImJl
|
| Z2luIjogMzkwNDgsICJlbmQiOiAzOTA1OCwgInZuYW1lIjogeyJsYW5ndWFnZSI6ICJtb2pvbSIs
|
| ICJjb3JwdXMiOiAiY2hyb21pdW0uZ29vZ2xlc291cmNlLmNvbS9jb2Rlc2VhcmNoL2Nocm9taXVt
|
| L3NyYy8vbWFpbiIsICJzaWduYXR1cmUiOiAiZnV6ei5tb2pvbS5GdXp6U3RydWN0LmZ1enpfaW50
|
| NjQifSwgImVkZ2UiOiAiJS9reXRoZS9lZGdlL2dlbmVyYXRlcyJ9LCB7InR5cGUiOiAiYW5jaG9y
|
| X2RlZmluZXMiLCAiYmVnaW4iOiAzOTEyOCwgImVuZCI6IDM5MTM5LCAidm5hbWUiOiB7Imxhbmd1
|
| YWdlIjogIm1vam9tIiwgImNvcnB1cyI6ICJjaHJvbWl1bS5nb29nbGVzb3VyY2UuY29tL2NvZGVz
|
| ZWFyY2gvY2hyb21pdW0vc3JjLy9tYWluIiwgInNpZ25hdHVyZSI6ICJmdXp6Lm1vam9tLkZ1enpT
|
| dHJ1Y3QuZnV6el91aW50NjQifSwgImVkZ2UiOiAiJS9reXRoZS9lZGdlL2dlbmVyYXRlcyJ9LCB7
|
| InR5cGUiOiAiYW5jaG9yX2RlZmluZXMiLCAiYmVnaW4iOiAzOTIwNSwgImVuZCI6IDM5MjE1LCAi
|
| dm5hbWUiOiB7Imxhbmd1YWdlIjogIm1vam9tIiwgImNvcnB1cyI6ICJjaHJvbWl1bS5nb29nbGVz
|
| b3VyY2UuY29tL2NvZGVzZWFyY2gvY2hyb21pdW0vc3JjLy9tYWluIiwgInNpZ25hdHVyZSI6ICJm
|
| dXp6Lm1vam9tLkZ1enpTdHJ1Y3QuZnV6el9mbG9hdCJ9LCAiZWRnZSI6ICIlL2t5dGhlL2VkZ2Uv
|
| Z2VuZXJhdGVzIn0sIHsidHlwZSI6ICJhbmNob3JfZGVmaW5lcyIsICJiZWdpbiI6IDM5MjgzLCAi
|
| ZW5kIjogMzkyOTQsICJ2bmFtZSI6IHsibGFuZ3VhZ2UiOiAibW9qb20iLCAiY29ycHVzIjogImNo
|
| cm9taXVtLmdvb2dsZXNvdXJjZS5jb20vY29kZXNlYXJjaC9jaHJvbWl1bS9zcmMvL21haW4iLCAi
|
| c2lnbmF0dXJlIjogImZ1enoubW9qb20uRnV6elN0cnVjdC5mdXp6X2RvdWJsZSJ9LCAiZWRnZSI6
|
| ICIlL2t5dGhlL2VkZ2UvZ2VuZXJhdGVzIn0sIHsidHlwZSI6ICJhbmNob3JfZGVmaW5lcyIsICJi
|
| ZWdpbiI6IDM5MzY3LCAiZW5kIjogMzkzNzgsICJ2bmFtZSI6IHsibGFuZ3VhZ2UiOiAibW9qb20i
|
| LCAiY29ycHVzIjogImNocm9taXVtLmdvb2dsZXNvdXJjZS5jb20vY29kZXNlYXJjaC9jaHJvbWl1
|
| bS9zcmMvL21haW4iLCAic2lnbmF0dXJlIjogImZ1enoubW9qb20uRnV6elN0cnVjdC5mdXp6X3N0
|
| cmluZyJ9LCAiZWRnZSI6ICIlL2t5dGhlL2VkZ2UvZ2VuZXJhdGVzIn0sIHsidHlwZSI6ICJhbmNo
|
| b3JfZGVmaW5lcyIsICJiZWdpbiI6IDM5NDYxLCAiZW5kIjogMzk0NzYsICJ2bmFtZSI6IHsibGFu
|
| Z3VhZ2UiOiAibW9qb20iLCAiY29ycHVzIjogImNocm9taXVtLmdvb2dsZXNvdXJjZS5jb20vY29k
|
| ZXNlYXJjaC9jaHJvbWl1bS9zcmMvL21haW4iLCAic2lnbmF0dXJlIjogImZ1enoubW9qb20uRnV6
|
| elN0cnVjdC5mdXp6X2Jvb2xfYXJyYXkifSwgImVkZ2UiOiAiJS9reXRoZS9lZGdlL2dlbmVyYXRl
|
| cyJ9LCB7InR5cGUiOiAiYW5jaG9yX2RlZmluZXMiLCAiYmVnaW4iOiAzOTU2NiwgImVuZCI6IDM5
|
| NTg2LCAidm5hbWUiOiB7Imxhbmd1YWdlIjogIm1vam9tIiwgImNvcnB1cyI6ICJjaHJvbWl1bS5n
|
| b29nbGVzb3VyY2UuY29tL2NvZGVzZWFyY2gvY2hyb21pdW0vc3JjLy9tYWluIiwgInNpZ25hdHVy
|
| ZSI6ICJmdXp6Lm1vam9tLkZ1enpTdHJ1Y3QuZnV6el9wcmltaXRpdmVfYXJyYXkifSwgImVkZ2Ui
|
| OiAiJS9reXRoZS9lZGdlL2dlbmVyYXRlcyJ9LCB7InR5cGUiOiAiYW5jaG9yX2RlZmluZXMiLCAi
|
| YmVnaW4iOiAzOTY5MCwgImVuZCI6IDM5NzA4LCAidm5hbWUiOiB7Imxhbmd1YWdlIjogIm1vam9t
|
| IiwgImNvcnB1cyI6ICJjaHJvbWl1bS5nb29nbGVzb3VyY2UuY29tL2NvZGVzZWFyY2gvY2hyb21p
|
| dW0vc3JjLy9tYWluIiwgInNpZ25hdHVyZSI6ICJmdXp6Lm1vam9tLkZ1enpTdHJ1Y3QuZnV6el9w
|
| cmltaXRpdmVfbWFwIn0sICJlZGdlIjogIiUva3l0aGUvZWRnZS9nZW5lcmF0ZXMifSwgeyJ0eXBl
|
| IjogImFuY2hvcl9kZWZpbmVzIiwgImJlZ2luIjogMzk4MjYsICJlbmQiOiAzOTg0MCwgInZuYW1l
|
| IjogeyJsYW5ndWFnZSI6ICJtb2pvbSIsICJjb3JwdXMiOiAiY2hyb21pdW0uZ29vZ2xlc291cmNl
|
| LmNvbS9jb2Rlc2VhcmNoL2Nocm9taXVtL3NyYy8vbWFpbiIsICJzaWduYXR1cmUiOiAiZnV6ei5t
|
| b2pvbS5GdXp6U3RydWN0LmZ1enpfYXJyYXlfbWFwIn0sICJlZGdlIjogIiUva3l0aGUvZWRnZS9n
|
| ZW5lcmF0ZXMifSwgeyJ0eXBlIjogImFuY2hvcl9kZWZpbmVzIiwgImJlZ2luIjogMzk5NDMsICJl
|
| bmQiOiAzOTk1NywgInZuYW1lIjogeyJsYW5ndWFnZSI6ICJtb2pvbSIsICJjb3JwdXMiOiAiY2hy
|
| b21pdW0uZ29vZ2xlc291cmNlLmNvbS9jb2Rlc2VhcmNoL2Nocm9taXVtL3NyYy8vbWFpbiIsICJz
|
| aWduYXR1cmUiOiAiZnV6ei5tb2pvbS5GdXp6U3RydWN0LmZ1enpfdW5pb25fbWFwIn0sICJlZGdl
|
| IjogIiUva3l0aGUvZWRnZS9nZW5lcmF0ZXMifSwgeyJ0eXBlIjogImFuY2hvcl9kZWZpbmVzIiwg
|
| ImJlZ2luIjogNDAwNDksICJlbmQiOiA0MDA2NSwgInZuYW1lIjogeyJsYW5ndWFnZSI6ICJtb2pv
|
| bSIsICJjb3JwdXMiOiAiY2hyb21pdW0uZ29vZ2xlc291cmNlLmNvbS9jb2Rlc2VhcmNoL2Nocm9t
|
| aXVtL3NyYy8vbWFpbiIsICJzaWduYXR1cmUiOiAiZnV6ei5tb2pvbS5GdXp6U3RydWN0LmZ1enpf
|
| dW5pb25fYXJyYXkifSwgImVkZ2UiOiAiJS9reXRoZS9lZGdlL2dlbmVyYXRlcyJ9LCB7InR5cGUi
|
| OiAiYW5jaG9yX2RlZmluZXMiLCAiYmVnaW4iOiA0MDE1OSwgImVuZCI6IDQwMTc2LCAidm5hbWUi
|
| OiB7Imxhbmd1YWdlIjogIm1vam9tIiwgImNvcnB1cyI6ICJjaHJvbWl1bS5nb29nbGVzb3VyY2Uu
|
| Y29tL2NvZGVzZWFyY2gvY2hyb21pdW0vc3JjLy9tYWluIiwgInNpZ25hdHVyZSI6ICJmdXp6Lm1v
|
| am9tLkZ1enpTdHJ1Y3QuZnV6el9zdHJ1Y3RfYXJyYXkifSwgImVkZ2UiOiAiJS9reXRoZS9lZGdl
|
| L2dlbmVyYXRlcyJ9LCB7InR5cGUiOiAiYW5jaG9yX2RlZmluZXMiLCAiYmVnaW4iOiA0MDI4MCwg
|
| ImVuZCI6IDQwMjk5LCAidm5hbWUiOiB7Imxhbmd1YWdlIjogIm1vam9tIiwgImNvcnB1cyI6ICJj
|
| aHJvbWl1bS5nb29nbGVzb3VyY2UuY29tL2NvZGVzZWFyY2gvY2hyb21pdW0vc3JjLy9tYWluIiwg
|
| InNpZ25hdHVyZSI6ICJmdXp6Lm1vam9tLkZ1enpTdHJ1Y3QuZnV6el9udWxsYWJsZV9hcnJheSJ9
|
| LCAiZWRnZSI6ICIlL2t5dGhlL2VkZ2UvZ2VuZXJhdGVzIn0sIHsidHlwZSI6ICJhbmNob3JfZGVm
|
| aW5lcyIsICJiZWdpbiI6IDQwNDgxLCAiZW5kIjogNDA0OTMsICJ2bmFtZSI6IHsibGFuZ3VhZ2Ui
|
| OiAibW9qb20iLCAiY29ycHVzIjogImNocm9taXVtLmdvb2dsZXNvdXJjZS5jb20vY29kZXNlYXJj
|
| aC9jaHJvbWl1bS9zcmMvL21haW4iLCAic2lnbmF0dXJlIjogImZ1enoubW9qb20uRnV6elN0cnVj
|
| dC5mdXp6X2NvbXBsZXgifSwgImVkZ2UiOiAiJS9reXRoZS9lZGdlL2dlbmVyYXRlcyJ9XX0=
|
| */ |