From da6102fcf67d05e585f2542af76628d959293423 Mon Sep 17 00:00:00 2001 From: Katrina Rogan Date: Thu, 2 Apr 2020 09:24:51 -0700 Subject: [PATCH] Add workflow state enums and update endpoint (#53) Signed-off-by: Eduardo Apolinario --- .../go/admin/mocks/AdminServiceClient.go | 48 + .../gen/pb-cpp/flyteidl/admin/workflow.pb.cc | 643 ++++++- .../gen/pb-cpp/flyteidl/admin/workflow.pb.h | 342 +++- .../pb-cpp/flyteidl/service/admin.grpc.pb.cc | 180 +- .../pb-cpp/flyteidl/service/admin.grpc.pb.h | 799 +++++---- .../gen/pb-cpp/flyteidl/service/admin.pb.cc | 518 +++--- .../gen/pb-go/flyteidl/admin/workflow.pb.go | 174 +- .../flyteidl/admin/workflow.pb.validate.go | 146 ++ .../gen/pb-go/flyteidl/service/admin.pb.go | 393 ++-- .../gen/pb-go/flyteidl/service/admin.pb.gw.go | 92 + .../pb-go/flyteidl/service/admin.swagger.json | 80 + .../flyteidl/service/flyteadmin/README.md | 4 + .../service/flyteadmin/api/swagger.yaml | 65 + .../service/flyteadmin/api_admin_service.go | 98 + .../flyteadmin/model_admin_workflow_state.go | 18 + .../model_admin_workflow_update_request.go | 18 + .../model_admin_workflow_update_response.go | 14 + .../gen/pb-go/flyteidl/service/openapi.go | 4 +- .../flyteidl/admin/WorkflowOuterClass.java | 1590 +++++++++++++++-- .../gen/pb-java/flyteidl/service/Admin.java | 516 +++--- flyteidl/gen/pb-js/flyteidl.d.ts | 131 ++ flyteidl/gen/pb-js/flyteidl.js | 274 +++ .../flyteidl/admin/workflow.proto.rst | 67 + .../pb_python/flyteidl/admin/workflow_pb2.py | 109 +- .../pb_python/flyteidl/service/admin_pb2.py | 83 +- .../flyteidl/service/admin_pb2_grpc.py | 17 + .../flyteidl/service/flyteadmin/README.md | 4 + .../service/flyteadmin/flyteadmin/__init__.py | 3 + .../flyteadmin/api/admin_service_api.py | 131 ++ .../flyteadmin/flyteadmin/models/__init__.py | 3 + .../flyteadmin/models/admin_workflow_state.py | 93 + .../models/admin_workflow_update_request.py | 148 ++ .../models/admin_workflow_update_response.py | 87 + .../flyteadmin/test/test_admin_service_api.py | 6 + .../test/test_admin_workflow_state.py | 40 + .../test_admin_workflow_update_request.py | 40 + .../test_admin_workflow_update_response.py | 40 + flyteidl/protos/flyteidl/admin/workflow.proto | 22 + flyteidl/protos/flyteidl/service/admin.proto | 10 + 39 files changed, 5788 insertions(+), 1262 deletions(-) create mode 100644 flyteidl/gen/pb-go/flyteidl/service/flyteadmin/model_admin_workflow_state.go create mode 100644 flyteidl/gen/pb-go/flyteidl/service/flyteadmin/model_admin_workflow_update_request.go create mode 100644 flyteidl/gen/pb-go/flyteidl/service/flyteadmin/model_admin_workflow_update_response.go create mode 100644 flyteidl/gen/pb_python/flyteidl/service/flyteadmin/flyteadmin/models/admin_workflow_state.py create mode 100644 flyteidl/gen/pb_python/flyteidl/service/flyteadmin/flyteadmin/models/admin_workflow_update_request.py create mode 100644 flyteidl/gen/pb_python/flyteidl/service/flyteadmin/flyteadmin/models/admin_workflow_update_response.py create mode 100644 flyteidl/gen/pb_python/flyteidl/service/flyteadmin/test/test_admin_workflow_state.py create mode 100644 flyteidl/gen/pb_python/flyteidl/service/flyteadmin/test/test_admin_workflow_update_request.py create mode 100644 flyteidl/gen/pb_python/flyteidl/service/flyteadmin/test/test_admin_workflow_update_response.py diff --git a/flyteidl/clients/go/admin/mocks/AdminServiceClient.go b/flyteidl/clients/go/admin/mocks/AdminServiceClient.go index fc9ce4b70b0..747b6377f8a 100644 --- a/flyteidl/clients/go/admin/mocks/AdminServiceClient.go +++ b/flyteidl/clients/go/admin/mocks/AdminServiceClient.go @@ -2033,6 +2033,54 @@ func (_m *AdminServiceClient) UpdateProjectDomainAttributes(ctx context.Context, return r0, r1 } +type AdminServiceClient_UpdateWorkflow struct { + *mock.Call +} + +func (_m AdminServiceClient_UpdateWorkflow) Return(_a0 *admin.WorkflowUpdateResponse, _a1 error) *AdminServiceClient_UpdateWorkflow { + return &AdminServiceClient_UpdateWorkflow{Call: _m.Call.Return(_a0, _a1)} +} + +func (_m *AdminServiceClient) OnUpdateWorkflow(ctx context.Context, in *admin.WorkflowUpdateRequest, opts ...grpc.CallOption) *AdminServiceClient_UpdateWorkflow { + c := _m.On("UpdateWorkflow", ctx, in, opts) + return &AdminServiceClient_UpdateWorkflow{Call: c} +} + +func (_m *AdminServiceClient) OnUpdateWorkflowMatch(matchers ...interface{}) *AdminServiceClient_UpdateWorkflow { + c := _m.On("UpdateWorkflow", matchers...) + return &AdminServiceClient_UpdateWorkflow{Call: c} +} + +// UpdateWorkflow provides a mock function with given fields: ctx, in, opts +func (_m *AdminServiceClient) UpdateWorkflow(ctx context.Context, in *admin.WorkflowUpdateRequest, opts ...grpc.CallOption) (*admin.WorkflowUpdateResponse, error) { + _va := make([]interface{}, len(opts)) + for _i := range opts { + _va[_i] = opts[_i] + } + var _ca []interface{} + _ca = append(_ca, ctx, in) + _ca = append(_ca, _va...) + ret := _m.Called(_ca...) + + var r0 *admin.WorkflowUpdateResponse + if rf, ok := ret.Get(0).(func(context.Context, *admin.WorkflowUpdateRequest, ...grpc.CallOption) *admin.WorkflowUpdateResponse); ok { + r0 = rf(ctx, in, opts...) + } else { + if ret.Get(0) != nil { + r0 = ret.Get(0).(*admin.WorkflowUpdateResponse) + } + } + + var r1 error + if rf, ok := ret.Get(1).(func(context.Context, *admin.WorkflowUpdateRequest, ...grpc.CallOption) error); ok { + r1 = rf(ctx, in, opts...) + } else { + r1 = ret.Error(1) + } + + return r0, r1 +} + type AdminServiceClient_UpdateWorkflowAttributes struct { *mock.Call } diff --git a/flyteidl/gen/pb-cpp/flyteidl/admin/workflow.pb.cc b/flyteidl/gen/pb-cpp/flyteidl/admin/workflow.pb.cc index 69fbf3a79f6..16924d0058a 100644 --- a/flyteidl/gen/pb-cpp/flyteidl/admin/workflow.pb.cc +++ b/flyteidl/gen/pb-cpp/flyteidl/admin/workflow.pb.cc @@ -49,6 +49,14 @@ class WorkflowClosureDefaultTypeInternal { public: ::google::protobuf::internal::ExplicitlyConstructed _instance; } _WorkflowClosure_default_instance_; +class WorkflowUpdateRequestDefaultTypeInternal { + public: + ::google::protobuf::internal::ExplicitlyConstructed _instance; +} _WorkflowUpdateRequest_default_instance_; +class WorkflowUpdateResponseDefaultTypeInternal { + public: + ::google::protobuf::internal::ExplicitlyConstructed _instance; +} _WorkflowUpdateResponse_default_instance_; } // namespace admin } // namespace flyteidl static void InitDefaultsWorkflowCreateRequest_flyteidl_2fadmin_2fworkflow_2eproto() { @@ -143,6 +151,35 @@ ::google::protobuf::internal::SCCInfo<2> scc_info_WorkflowClosure_flyteidl_2fadm &scc_info_CompiledWorkflowClosure_flyteidl_2fcore_2fcompiler_2eproto.base, &scc_info_Timestamp_google_2fprotobuf_2ftimestamp_2eproto.base,}}; +static void InitDefaultsWorkflowUpdateRequest_flyteidl_2fadmin_2fworkflow_2eproto() { + GOOGLE_PROTOBUF_VERIFY_VERSION; + + { + void* ptr = &::flyteidl::admin::_WorkflowUpdateRequest_default_instance_; + new (ptr) ::flyteidl::admin::WorkflowUpdateRequest(); + ::google::protobuf::internal::OnShutdownDestroyMessage(ptr); + } + ::flyteidl::admin::WorkflowUpdateRequest::InitAsDefaultInstance(); +} + +::google::protobuf::internal::SCCInfo<1> scc_info_WorkflowUpdateRequest_flyteidl_2fadmin_2fworkflow_2eproto = + {{ATOMIC_VAR_INIT(::google::protobuf::internal::SCCInfoBase::kUninitialized), 1, InitDefaultsWorkflowUpdateRequest_flyteidl_2fadmin_2fworkflow_2eproto}, { + &scc_info_Identifier_flyteidl_2fcore_2fidentifier_2eproto.base,}}; + +static void InitDefaultsWorkflowUpdateResponse_flyteidl_2fadmin_2fworkflow_2eproto() { + GOOGLE_PROTOBUF_VERIFY_VERSION; + + { + void* ptr = &::flyteidl::admin::_WorkflowUpdateResponse_default_instance_; + new (ptr) ::flyteidl::admin::WorkflowUpdateResponse(); + ::google::protobuf::internal::OnShutdownDestroyMessage(ptr); + } + ::flyteidl::admin::WorkflowUpdateResponse::InitAsDefaultInstance(); +} + +::google::protobuf::internal::SCCInfo<0> scc_info_WorkflowUpdateResponse_flyteidl_2fadmin_2fworkflow_2eproto = + {{ATOMIC_VAR_INIT(::google::protobuf::internal::SCCInfoBase::kUninitialized), 0, InitDefaultsWorkflowUpdateResponse_flyteidl_2fadmin_2fworkflow_2eproto}, {}}; + void InitDefaults_flyteidl_2fadmin_2fworkflow_2eproto() { ::google::protobuf::internal::InitSCC(&scc_info_WorkflowCreateRequest_flyteidl_2fadmin_2fworkflow_2eproto.base); ::google::protobuf::internal::InitSCC(&scc_info_WorkflowCreateResponse_flyteidl_2fadmin_2fworkflow_2eproto.base); @@ -150,10 +187,12 @@ void InitDefaults_flyteidl_2fadmin_2fworkflow_2eproto() { ::google::protobuf::internal::InitSCC(&scc_info_WorkflowList_flyteidl_2fadmin_2fworkflow_2eproto.base); ::google::protobuf::internal::InitSCC(&scc_info_WorkflowSpec_flyteidl_2fadmin_2fworkflow_2eproto.base); ::google::protobuf::internal::InitSCC(&scc_info_WorkflowClosure_flyteidl_2fadmin_2fworkflow_2eproto.base); + ::google::protobuf::internal::InitSCC(&scc_info_WorkflowUpdateRequest_flyteidl_2fadmin_2fworkflow_2eproto.base); + ::google::protobuf::internal::InitSCC(&scc_info_WorkflowUpdateResponse_flyteidl_2fadmin_2fworkflow_2eproto.base); } -::google::protobuf::Metadata file_level_metadata_flyteidl_2fadmin_2fworkflow_2eproto[6]; -constexpr ::google::protobuf::EnumDescriptor const** file_level_enum_descriptors_flyteidl_2fadmin_2fworkflow_2eproto = nullptr; +::google::protobuf::Metadata file_level_metadata_flyteidl_2fadmin_2fworkflow_2eproto[8]; +const ::google::protobuf::EnumDescriptor* file_level_enum_descriptors_flyteidl_2fadmin_2fworkflow_2eproto[1]; constexpr ::google::protobuf::ServiceDescriptor const** file_level_service_descriptors_flyteidl_2fadmin_2fworkflow_2eproto = nullptr; const ::google::protobuf::uint32 TableStruct_flyteidl_2fadmin_2fworkflow_2eproto::offsets[] PROTOBUF_SECTION_VARIABLE(protodesc_cold) = { @@ -197,6 +236,18 @@ const ::google::protobuf::uint32 TableStruct_flyteidl_2fadmin_2fworkflow_2eproto ~0u, // no _weak_field_map_ PROTOBUF_FIELD_OFFSET(::flyteidl::admin::WorkflowClosure, compiled_workflow_), PROTOBUF_FIELD_OFFSET(::flyteidl::admin::WorkflowClosure, created_at_), + ~0u, // no _has_bits_ + PROTOBUF_FIELD_OFFSET(::flyteidl::admin::WorkflowUpdateRequest, _internal_metadata_), + ~0u, // no _extensions_ + ~0u, // no _oneof_case_ + ~0u, // no _weak_field_map_ + PROTOBUF_FIELD_OFFSET(::flyteidl::admin::WorkflowUpdateRequest, id_), + PROTOBUF_FIELD_OFFSET(::flyteidl::admin::WorkflowUpdateRequest, state_), + ~0u, // no _has_bits_ + PROTOBUF_FIELD_OFFSET(::flyteidl::admin::WorkflowUpdateResponse, _internal_metadata_), + ~0u, // no _extensions_ + ~0u, // no _oneof_case_ + ~0u, // no _weak_field_map_ }; static const ::google::protobuf::internal::MigrationSchema schemas[] PROTOBUF_SECTION_VARIABLE(protodesc_cold) = { { 0, -1, sizeof(::flyteidl::admin::WorkflowCreateRequest)}, @@ -205,6 +256,8 @@ static const ::google::protobuf::internal::MigrationSchema schemas[] PROTOBUF_SE { 19, -1, sizeof(::flyteidl::admin::WorkflowList)}, { 26, -1, sizeof(::flyteidl::admin::WorkflowSpec)}, { 33, -1, sizeof(::flyteidl::admin::WorkflowClosure)}, + { 40, -1, sizeof(::flyteidl::admin::WorkflowUpdateRequest)}, + { 47, -1, sizeof(::flyteidl::admin::WorkflowUpdateResponse)}, }; static ::google::protobuf::Message const * const file_default_instances[] = { @@ -214,12 +267,14 @@ static ::google::protobuf::Message const * const file_default_instances[] = { reinterpret_cast(&::flyteidl::admin::_WorkflowList_default_instance_), reinterpret_cast(&::flyteidl::admin::_WorkflowSpec_default_instance_), reinterpret_cast(&::flyteidl::admin::_WorkflowClosure_default_instance_), + reinterpret_cast(&::flyteidl::admin::_WorkflowUpdateRequest_default_instance_), + reinterpret_cast(&::flyteidl::admin::_WorkflowUpdateResponse_default_instance_), }; ::google::protobuf::internal::AssignDescriptorsTable assign_descriptors_table_flyteidl_2fadmin_2fworkflow_2eproto = { {}, AddDescriptors_flyteidl_2fadmin_2fworkflow_2eproto, "flyteidl/admin/workflow.proto", schemas, file_default_instances, TableStruct_flyteidl_2fadmin_2fworkflow_2eproto::offsets, - file_level_metadata_flyteidl_2fadmin_2fworkflow_2eproto, 6, file_level_enum_descriptors_flyteidl_2fadmin_2fworkflow_2eproto, file_level_service_descriptors_flyteidl_2fadmin_2fworkflow_2eproto, + file_level_metadata_flyteidl_2fadmin_2fworkflow_2eproto, 8, file_level_enum_descriptors_flyteidl_2fadmin_2fworkflow_2eproto, file_level_service_descriptors_flyteidl_2fadmin_2fworkflow_2eproto, }; const char descriptor_table_protodef_flyteidl_2fadmin_2fworkflow_2eproto[] = @@ -242,13 +297,18 @@ const char descriptor_table_protodef_flyteidl_2fadmin_2fworkflow_2eproto[] = "WorkflowClosure\022A\n\021compiled_workflow\030\001 \001" "(\0132&.flyteidl.core.CompiledWorkflowClosu" "re\022.\n\ncreated_at\030\002 \001(\0132\032.google.protobuf" - ".TimestampB3Z1github.com/lyft/flyteidl/g" - "en/pb-go/flyteidl/adminb\006proto3" + ".Timestamp\"l\n\025WorkflowUpdateRequest\022%\n\002i" + "d\030\001 \001(\0132\031.flyteidl.core.Identifier\022,\n\005st" + "ate\030\002 \001(\0162\035.flyteidl.admin.WorkflowState" + "\"\030\n\026WorkflowUpdateResponse*;\n\rWorkflowSt" + "ate\022\023\n\017WORKFLOW_ACTIVE\020\000\022\025\n\021WORKFLOW_ARC" + "HIVED\020\001B3Z1github.com/lyft/flyteidl/gen/" + "pb-go/flyteidl/adminb\006proto3" ; ::google::protobuf::internal::DescriptorTable descriptor_table_flyteidl_2fadmin_2fworkflow_2eproto = { false, InitDefaults_flyteidl_2fadmin_2fworkflow_2eproto, descriptor_table_protodef_flyteidl_2fadmin_2fworkflow_2eproto, - "flyteidl/admin/workflow.proto", &assign_descriptors_table_flyteidl_2fadmin_2fworkflow_2eproto, 831, + "flyteidl/admin/workflow.proto", &assign_descriptors_table_flyteidl_2fadmin_2fworkflow_2eproto, 1028, }; void AddDescriptors_flyteidl_2fadmin_2fworkflow_2eproto() { @@ -267,6 +327,20 @@ void AddDescriptors_flyteidl_2fadmin_2fworkflow_2eproto() { static bool dynamic_init_dummy_flyteidl_2fadmin_2fworkflow_2eproto = []() { AddDescriptors_flyteidl_2fadmin_2fworkflow_2eproto(); return true; }(); namespace flyteidl { namespace admin { +const ::google::protobuf::EnumDescriptor* WorkflowState_descriptor() { + ::google::protobuf::internal::AssignDescriptors(&assign_descriptors_table_flyteidl_2fadmin_2fworkflow_2eproto); + return file_level_enum_descriptors_flyteidl_2fadmin_2fworkflow_2eproto[0]; +} +bool WorkflowState_IsValid(int value) { + switch (value) { + case 0: + case 1: + return true; + default: + return false; + } +} + // =================================================================== @@ -2279,6 +2353,557 @@ ::google::protobuf::Metadata WorkflowClosure::GetMetadata() const { } +// =================================================================== + +void WorkflowUpdateRequest::InitAsDefaultInstance() { + ::flyteidl::admin::_WorkflowUpdateRequest_default_instance_._instance.get_mutable()->id_ = const_cast< ::flyteidl::core::Identifier*>( + ::flyteidl::core::Identifier::internal_default_instance()); +} +class WorkflowUpdateRequest::HasBitSetters { + public: + static const ::flyteidl::core::Identifier& id(const WorkflowUpdateRequest* msg); +}; + +const ::flyteidl::core::Identifier& +WorkflowUpdateRequest::HasBitSetters::id(const WorkflowUpdateRequest* msg) { + return *msg->id_; +} +void WorkflowUpdateRequest::clear_id() { + if (GetArenaNoVirtual() == nullptr && id_ != nullptr) { + delete id_; + } + id_ = nullptr; +} +#if !defined(_MSC_VER) || _MSC_VER >= 1900 +const int WorkflowUpdateRequest::kIdFieldNumber; +const int WorkflowUpdateRequest::kStateFieldNumber; +#endif // !defined(_MSC_VER) || _MSC_VER >= 1900 + +WorkflowUpdateRequest::WorkflowUpdateRequest() + : ::google::protobuf::Message(), _internal_metadata_(nullptr) { + SharedCtor(); + // @@protoc_insertion_point(constructor:flyteidl.admin.WorkflowUpdateRequest) +} +WorkflowUpdateRequest::WorkflowUpdateRequest(const WorkflowUpdateRequest& from) + : ::google::protobuf::Message(), + _internal_metadata_(nullptr) { + _internal_metadata_.MergeFrom(from._internal_metadata_); + if (from.has_id()) { + id_ = new ::flyteidl::core::Identifier(*from.id_); + } else { + id_ = nullptr; + } + state_ = from.state_; + // @@protoc_insertion_point(copy_constructor:flyteidl.admin.WorkflowUpdateRequest) +} + +void WorkflowUpdateRequest::SharedCtor() { + ::google::protobuf::internal::InitSCC( + &scc_info_WorkflowUpdateRequest_flyteidl_2fadmin_2fworkflow_2eproto.base); + ::memset(&id_, 0, static_cast( + reinterpret_cast(&state_) - + reinterpret_cast(&id_)) + sizeof(state_)); +} + +WorkflowUpdateRequest::~WorkflowUpdateRequest() { + // @@protoc_insertion_point(destructor:flyteidl.admin.WorkflowUpdateRequest) + SharedDtor(); +} + +void WorkflowUpdateRequest::SharedDtor() { + if (this != internal_default_instance()) delete id_; +} + +void WorkflowUpdateRequest::SetCachedSize(int size) const { + _cached_size_.Set(size); +} +const WorkflowUpdateRequest& WorkflowUpdateRequest::default_instance() { + ::google::protobuf::internal::InitSCC(&::scc_info_WorkflowUpdateRequest_flyteidl_2fadmin_2fworkflow_2eproto.base); + return *internal_default_instance(); +} + + +void WorkflowUpdateRequest::Clear() { +// @@protoc_insertion_point(message_clear_start:flyteidl.admin.WorkflowUpdateRequest) + ::google::protobuf::uint32 cached_has_bits = 0; + // Prevent compiler warnings about cached_has_bits being unused + (void) cached_has_bits; + + if (GetArenaNoVirtual() == nullptr && id_ != nullptr) { + delete id_; + } + id_ = nullptr; + state_ = 0; + _internal_metadata_.Clear(); +} + +#if GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER +const char* WorkflowUpdateRequest::_InternalParse(const char* begin, const char* end, void* object, + ::google::protobuf::internal::ParseContext* ctx) { + auto msg = static_cast(object); + ::google::protobuf::int32 size; (void)size; + int depth; (void)depth; + ::google::protobuf::uint32 tag; + ::google::protobuf::internal::ParseFunc parser_till_end; (void)parser_till_end; + auto ptr = begin; + while (ptr < end) { + ptr = ::google::protobuf::io::Parse32(ptr, &tag); + GOOGLE_PROTOBUF_PARSER_ASSERT(ptr); + switch (tag >> 3) { + // .flyteidl.core.Identifier id = 1; + case 1: { + if (static_cast<::google::protobuf::uint8>(tag) != 10) goto handle_unusual; + ptr = ::google::protobuf::io::ReadSize(ptr, &size); + GOOGLE_PROTOBUF_PARSER_ASSERT(ptr); + parser_till_end = ::flyteidl::core::Identifier::_InternalParse; + object = msg->mutable_id(); + if (size > end - ptr) goto len_delim_till_end; + ptr += size; + GOOGLE_PROTOBUF_PARSER_ASSERT(ctx->ParseExactRange( + {parser_till_end, object}, ptr - size, ptr)); + break; + } + // .flyteidl.admin.WorkflowState state = 2; + case 2: { + if (static_cast<::google::protobuf::uint8>(tag) != 16) goto handle_unusual; + ::google::protobuf::uint64 val = ::google::protobuf::internal::ReadVarint(&ptr); + msg->set_state(static_cast<::flyteidl::admin::WorkflowState>(val)); + GOOGLE_PROTOBUF_PARSER_ASSERT(ptr); + break; + } + default: { + handle_unusual: + if ((tag & 7) == 4 || tag == 0) { + ctx->EndGroup(tag); + return ptr; + } + auto res = UnknownFieldParse(tag, {_InternalParse, msg}, + ptr, end, msg->_internal_metadata_.mutable_unknown_fields(), ctx); + ptr = res.first; + GOOGLE_PROTOBUF_PARSER_ASSERT(ptr != nullptr); + if (res.second) return ptr; + } + } // switch + } // while + return ptr; +len_delim_till_end: + return ctx->StoreAndTailCall(ptr, end, {_InternalParse, msg}, + {parser_till_end, object}, size); +} +#else // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER +bool WorkflowUpdateRequest::MergePartialFromCodedStream( + ::google::protobuf::io::CodedInputStream* input) { +#define DO_(EXPRESSION) if (!PROTOBUF_PREDICT_TRUE(EXPRESSION)) goto failure + ::google::protobuf::uint32 tag; + // @@protoc_insertion_point(parse_start:flyteidl.admin.WorkflowUpdateRequest) + for (;;) { + ::std::pair<::google::protobuf::uint32, bool> p = input->ReadTagWithCutoffNoLastTag(127u); + tag = p.first; + if (!p.second) goto handle_unusual; + switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) { + // .flyteidl.core.Identifier id = 1; + case 1: { + if (static_cast< ::google::protobuf::uint8>(tag) == (10 & 0xFF)) { + DO_(::google::protobuf::internal::WireFormatLite::ReadMessage( + input, mutable_id())); + } else { + goto handle_unusual; + } + break; + } + + // .flyteidl.admin.WorkflowState state = 2; + case 2: { + if (static_cast< ::google::protobuf::uint8>(tag) == (16 & 0xFF)) { + int value = 0; + DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive< + int, ::google::protobuf::internal::WireFormatLite::TYPE_ENUM>( + input, &value))); + set_state(static_cast< ::flyteidl::admin::WorkflowState >(value)); + } else { + goto handle_unusual; + } + break; + } + + default: { + handle_unusual: + if (tag == 0) { + goto success; + } + DO_(::google::protobuf::internal::WireFormat::SkipField( + input, tag, _internal_metadata_.mutable_unknown_fields())); + break; + } + } + } +success: + // @@protoc_insertion_point(parse_success:flyteidl.admin.WorkflowUpdateRequest) + return true; +failure: + // @@protoc_insertion_point(parse_failure:flyteidl.admin.WorkflowUpdateRequest) + return false; +#undef DO_ +} +#endif // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER + +void WorkflowUpdateRequest::SerializeWithCachedSizes( + ::google::protobuf::io::CodedOutputStream* output) const { + // @@protoc_insertion_point(serialize_start:flyteidl.admin.WorkflowUpdateRequest) + ::google::protobuf::uint32 cached_has_bits = 0; + (void) cached_has_bits; + + // .flyteidl.core.Identifier id = 1; + if (this->has_id()) { + ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray( + 1, HasBitSetters::id(this), output); + } + + // .flyteidl.admin.WorkflowState state = 2; + if (this->state() != 0) { + ::google::protobuf::internal::WireFormatLite::WriteEnum( + 2, this->state(), output); + } + + if (_internal_metadata_.have_unknown_fields()) { + ::google::protobuf::internal::WireFormat::SerializeUnknownFields( + _internal_metadata_.unknown_fields(), output); + } + // @@protoc_insertion_point(serialize_end:flyteidl.admin.WorkflowUpdateRequest) +} + +::google::protobuf::uint8* WorkflowUpdateRequest::InternalSerializeWithCachedSizesToArray( + ::google::protobuf::uint8* target) const { + // @@protoc_insertion_point(serialize_to_array_start:flyteidl.admin.WorkflowUpdateRequest) + ::google::protobuf::uint32 cached_has_bits = 0; + (void) cached_has_bits; + + // .flyteidl.core.Identifier id = 1; + if (this->has_id()) { + target = ::google::protobuf::internal::WireFormatLite:: + InternalWriteMessageToArray( + 1, HasBitSetters::id(this), target); + } + + // .flyteidl.admin.WorkflowState state = 2; + if (this->state() != 0) { + target = ::google::protobuf::internal::WireFormatLite::WriteEnumToArray( + 2, this->state(), target); + } + + if (_internal_metadata_.have_unknown_fields()) { + target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray( + _internal_metadata_.unknown_fields(), target); + } + // @@protoc_insertion_point(serialize_to_array_end:flyteidl.admin.WorkflowUpdateRequest) + return target; +} + +size_t WorkflowUpdateRequest::ByteSizeLong() const { +// @@protoc_insertion_point(message_byte_size_start:flyteidl.admin.WorkflowUpdateRequest) + size_t total_size = 0; + + if (_internal_metadata_.have_unknown_fields()) { + total_size += + ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize( + _internal_metadata_.unknown_fields()); + } + ::google::protobuf::uint32 cached_has_bits = 0; + // Prevent compiler warnings about cached_has_bits being unused + (void) cached_has_bits; + + // .flyteidl.core.Identifier id = 1; + if (this->has_id()) { + total_size += 1 + + ::google::protobuf::internal::WireFormatLite::MessageSize( + *id_); + } + + // .flyteidl.admin.WorkflowState state = 2; + if (this->state() != 0) { + total_size += 1 + + ::google::protobuf::internal::WireFormatLite::EnumSize(this->state()); + } + + int cached_size = ::google::protobuf::internal::ToCachedSize(total_size); + SetCachedSize(cached_size); + return total_size; +} + +void WorkflowUpdateRequest::MergeFrom(const ::google::protobuf::Message& from) { +// @@protoc_insertion_point(generalized_merge_from_start:flyteidl.admin.WorkflowUpdateRequest) + GOOGLE_DCHECK_NE(&from, this); + const WorkflowUpdateRequest* source = + ::google::protobuf::DynamicCastToGenerated( + &from); + if (source == nullptr) { + // @@protoc_insertion_point(generalized_merge_from_cast_fail:flyteidl.admin.WorkflowUpdateRequest) + ::google::protobuf::internal::ReflectionOps::Merge(from, this); + } else { + // @@protoc_insertion_point(generalized_merge_from_cast_success:flyteidl.admin.WorkflowUpdateRequest) + MergeFrom(*source); + } +} + +void WorkflowUpdateRequest::MergeFrom(const WorkflowUpdateRequest& from) { +// @@protoc_insertion_point(class_specific_merge_from_start:flyteidl.admin.WorkflowUpdateRequest) + GOOGLE_DCHECK_NE(&from, this); + _internal_metadata_.MergeFrom(from._internal_metadata_); + ::google::protobuf::uint32 cached_has_bits = 0; + (void) cached_has_bits; + + if (from.has_id()) { + mutable_id()->::flyteidl::core::Identifier::MergeFrom(from.id()); + } + if (from.state() != 0) { + set_state(from.state()); + } +} + +void WorkflowUpdateRequest::CopyFrom(const ::google::protobuf::Message& from) { +// @@protoc_insertion_point(generalized_copy_from_start:flyteidl.admin.WorkflowUpdateRequest) + if (&from == this) return; + Clear(); + MergeFrom(from); +} + +void WorkflowUpdateRequest::CopyFrom(const WorkflowUpdateRequest& from) { +// @@protoc_insertion_point(class_specific_copy_from_start:flyteidl.admin.WorkflowUpdateRequest) + if (&from == this) return; + Clear(); + MergeFrom(from); +} + +bool WorkflowUpdateRequest::IsInitialized() const { + return true; +} + +void WorkflowUpdateRequest::Swap(WorkflowUpdateRequest* other) { + if (other == this) return; + InternalSwap(other); +} +void WorkflowUpdateRequest::InternalSwap(WorkflowUpdateRequest* other) { + using std::swap; + _internal_metadata_.Swap(&other->_internal_metadata_); + swap(id_, other->id_); + swap(state_, other->state_); +} + +::google::protobuf::Metadata WorkflowUpdateRequest::GetMetadata() const { + ::google::protobuf::internal::AssignDescriptors(&::assign_descriptors_table_flyteidl_2fadmin_2fworkflow_2eproto); + return ::file_level_metadata_flyteidl_2fadmin_2fworkflow_2eproto[kIndexInFileMessages]; +} + + +// =================================================================== + +void WorkflowUpdateResponse::InitAsDefaultInstance() { +} +class WorkflowUpdateResponse::HasBitSetters { + public: +}; + +#if !defined(_MSC_VER) || _MSC_VER >= 1900 +#endif // !defined(_MSC_VER) || _MSC_VER >= 1900 + +WorkflowUpdateResponse::WorkflowUpdateResponse() + : ::google::protobuf::Message(), _internal_metadata_(nullptr) { + SharedCtor(); + // @@protoc_insertion_point(constructor:flyteidl.admin.WorkflowUpdateResponse) +} +WorkflowUpdateResponse::WorkflowUpdateResponse(const WorkflowUpdateResponse& from) + : ::google::protobuf::Message(), + _internal_metadata_(nullptr) { + _internal_metadata_.MergeFrom(from._internal_metadata_); + // @@protoc_insertion_point(copy_constructor:flyteidl.admin.WorkflowUpdateResponse) +} + +void WorkflowUpdateResponse::SharedCtor() { +} + +WorkflowUpdateResponse::~WorkflowUpdateResponse() { + // @@protoc_insertion_point(destructor:flyteidl.admin.WorkflowUpdateResponse) + SharedDtor(); +} + +void WorkflowUpdateResponse::SharedDtor() { +} + +void WorkflowUpdateResponse::SetCachedSize(int size) const { + _cached_size_.Set(size); +} +const WorkflowUpdateResponse& WorkflowUpdateResponse::default_instance() { + ::google::protobuf::internal::InitSCC(&::scc_info_WorkflowUpdateResponse_flyteidl_2fadmin_2fworkflow_2eproto.base); + return *internal_default_instance(); +} + + +void WorkflowUpdateResponse::Clear() { +// @@protoc_insertion_point(message_clear_start:flyteidl.admin.WorkflowUpdateResponse) + ::google::protobuf::uint32 cached_has_bits = 0; + // Prevent compiler warnings about cached_has_bits being unused + (void) cached_has_bits; + + _internal_metadata_.Clear(); +} + +#if GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER +const char* WorkflowUpdateResponse::_InternalParse(const char* begin, const char* end, void* object, + ::google::protobuf::internal::ParseContext* ctx) { + auto msg = static_cast(object); + ::google::protobuf::int32 size; (void)size; + int depth; (void)depth; + ::google::protobuf::uint32 tag; + ::google::protobuf::internal::ParseFunc parser_till_end; (void)parser_till_end; + auto ptr = begin; + while (ptr < end) { + ptr = ::google::protobuf::io::Parse32(ptr, &tag); + GOOGLE_PROTOBUF_PARSER_ASSERT(ptr); + switch (tag >> 3) { + default: { + if ((tag & 7) == 4 || tag == 0) { + ctx->EndGroup(tag); + return ptr; + } + auto res = UnknownFieldParse(tag, {_InternalParse, msg}, + ptr, end, msg->_internal_metadata_.mutable_unknown_fields(), ctx); + ptr = res.first; + GOOGLE_PROTOBUF_PARSER_ASSERT(ptr != nullptr); + if (res.second) return ptr; + } + } // switch + } // while + return ptr; +} +#else // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER +bool WorkflowUpdateResponse::MergePartialFromCodedStream( + ::google::protobuf::io::CodedInputStream* input) { +#define DO_(EXPRESSION) if (!PROTOBUF_PREDICT_TRUE(EXPRESSION)) goto failure + ::google::protobuf::uint32 tag; + // @@protoc_insertion_point(parse_start:flyteidl.admin.WorkflowUpdateResponse) + for (;;) { + ::std::pair<::google::protobuf::uint32, bool> p = input->ReadTagWithCutoffNoLastTag(127u); + tag = p.first; + if (!p.second) goto handle_unusual; + handle_unusual: + if (tag == 0) { + goto success; + } + DO_(::google::protobuf::internal::WireFormat::SkipField( + input, tag, _internal_metadata_.mutable_unknown_fields())); + } +success: + // @@protoc_insertion_point(parse_success:flyteidl.admin.WorkflowUpdateResponse) + return true; +failure: + // @@protoc_insertion_point(parse_failure:flyteidl.admin.WorkflowUpdateResponse) + return false; +#undef DO_ +} +#endif // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER + +void WorkflowUpdateResponse::SerializeWithCachedSizes( + ::google::protobuf::io::CodedOutputStream* output) const { + // @@protoc_insertion_point(serialize_start:flyteidl.admin.WorkflowUpdateResponse) + ::google::protobuf::uint32 cached_has_bits = 0; + (void) cached_has_bits; + + if (_internal_metadata_.have_unknown_fields()) { + ::google::protobuf::internal::WireFormat::SerializeUnknownFields( + _internal_metadata_.unknown_fields(), output); + } + // @@protoc_insertion_point(serialize_end:flyteidl.admin.WorkflowUpdateResponse) +} + +::google::protobuf::uint8* WorkflowUpdateResponse::InternalSerializeWithCachedSizesToArray( + ::google::protobuf::uint8* target) const { + // @@protoc_insertion_point(serialize_to_array_start:flyteidl.admin.WorkflowUpdateResponse) + ::google::protobuf::uint32 cached_has_bits = 0; + (void) cached_has_bits; + + if (_internal_metadata_.have_unknown_fields()) { + target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray( + _internal_metadata_.unknown_fields(), target); + } + // @@protoc_insertion_point(serialize_to_array_end:flyteidl.admin.WorkflowUpdateResponse) + return target; +} + +size_t WorkflowUpdateResponse::ByteSizeLong() const { +// @@protoc_insertion_point(message_byte_size_start:flyteidl.admin.WorkflowUpdateResponse) + size_t total_size = 0; + + if (_internal_metadata_.have_unknown_fields()) { + total_size += + ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize( + _internal_metadata_.unknown_fields()); + } + ::google::protobuf::uint32 cached_has_bits = 0; + // Prevent compiler warnings about cached_has_bits being unused + (void) cached_has_bits; + + int cached_size = ::google::protobuf::internal::ToCachedSize(total_size); + SetCachedSize(cached_size); + return total_size; +} + +void WorkflowUpdateResponse::MergeFrom(const ::google::protobuf::Message& from) { +// @@protoc_insertion_point(generalized_merge_from_start:flyteidl.admin.WorkflowUpdateResponse) + GOOGLE_DCHECK_NE(&from, this); + const WorkflowUpdateResponse* source = + ::google::protobuf::DynamicCastToGenerated( + &from); + if (source == nullptr) { + // @@protoc_insertion_point(generalized_merge_from_cast_fail:flyteidl.admin.WorkflowUpdateResponse) + ::google::protobuf::internal::ReflectionOps::Merge(from, this); + } else { + // @@protoc_insertion_point(generalized_merge_from_cast_success:flyteidl.admin.WorkflowUpdateResponse) + MergeFrom(*source); + } +} + +void WorkflowUpdateResponse::MergeFrom(const WorkflowUpdateResponse& from) { +// @@protoc_insertion_point(class_specific_merge_from_start:flyteidl.admin.WorkflowUpdateResponse) + GOOGLE_DCHECK_NE(&from, this); + _internal_metadata_.MergeFrom(from._internal_metadata_); + ::google::protobuf::uint32 cached_has_bits = 0; + (void) cached_has_bits; + +} + +void WorkflowUpdateResponse::CopyFrom(const ::google::protobuf::Message& from) { +// @@protoc_insertion_point(generalized_copy_from_start:flyteidl.admin.WorkflowUpdateResponse) + if (&from == this) return; + Clear(); + MergeFrom(from); +} + +void WorkflowUpdateResponse::CopyFrom(const WorkflowUpdateResponse& from) { +// @@protoc_insertion_point(class_specific_copy_from_start:flyteidl.admin.WorkflowUpdateResponse) + if (&from == this) return; + Clear(); + MergeFrom(from); +} + +bool WorkflowUpdateResponse::IsInitialized() const { + return true; +} + +void WorkflowUpdateResponse::Swap(WorkflowUpdateResponse* other) { + if (other == this) return; + InternalSwap(other); +} +void WorkflowUpdateResponse::InternalSwap(WorkflowUpdateResponse* other) { + using std::swap; + _internal_metadata_.Swap(&other->_internal_metadata_); +} + +::google::protobuf::Metadata WorkflowUpdateResponse::GetMetadata() const { + ::google::protobuf::internal::AssignDescriptors(&::assign_descriptors_table_flyteidl_2fadmin_2fworkflow_2eproto); + return ::file_level_metadata_flyteidl_2fadmin_2fworkflow_2eproto[kIndexInFileMessages]; +} + + // @@protoc_insertion_point(namespace_scope) } // namespace admin } // namespace flyteidl @@ -2302,6 +2927,12 @@ template<> PROTOBUF_NOINLINE ::flyteidl::admin::WorkflowSpec* Arena::CreateMaybe template<> PROTOBUF_NOINLINE ::flyteidl::admin::WorkflowClosure* Arena::CreateMaybeMessage< ::flyteidl::admin::WorkflowClosure >(Arena* arena) { return Arena::CreateInternal< ::flyteidl::admin::WorkflowClosure >(arena); } +template<> PROTOBUF_NOINLINE ::flyteidl::admin::WorkflowUpdateRequest* Arena::CreateMaybeMessage< ::flyteidl::admin::WorkflowUpdateRequest >(Arena* arena) { + return Arena::CreateInternal< ::flyteidl::admin::WorkflowUpdateRequest >(arena); +} +template<> PROTOBUF_NOINLINE ::flyteidl::admin::WorkflowUpdateResponse* Arena::CreateMaybeMessage< ::flyteidl::admin::WorkflowUpdateResponse >(Arena* arena) { + return Arena::CreateInternal< ::flyteidl::admin::WorkflowUpdateResponse >(arena); +} } // namespace protobuf } // namespace google diff --git a/flyteidl/gen/pb-cpp/flyteidl/admin/workflow.pb.h b/flyteidl/gen/pb-cpp/flyteidl/admin/workflow.pb.h index c159a4bf72a..788d5a1f056 100644 --- a/flyteidl/gen/pb-cpp/flyteidl/admin/workflow.pb.h +++ b/flyteidl/gen/pb-cpp/flyteidl/admin/workflow.pb.h @@ -30,6 +30,7 @@ #include #include // IWYU pragma: export #include // IWYU pragma: export +#include #include #include "flyteidl/core/compiler.pb.h" #include "flyteidl/core/identifier.pb.h" @@ -46,7 +47,7 @@ struct TableStruct_flyteidl_2fadmin_2fworkflow_2eproto { PROTOBUF_SECTION_VARIABLE(protodesc_cold); static const ::google::protobuf::internal::AuxillaryParseTableField aux[] PROTOBUF_SECTION_VARIABLE(protodesc_cold); - static const ::google::protobuf::internal::ParseTable schema[6] + static const ::google::protobuf::internal::ParseTable schema[8] PROTOBUF_SECTION_VARIABLE(protodesc_cold); static const ::google::protobuf::internal::FieldMetadata field_metadata[]; static const ::google::protobuf::internal::SerializationTable serialization_table[]; @@ -73,6 +74,12 @@ extern WorkflowListDefaultTypeInternal _WorkflowList_default_instance_; class WorkflowSpec; class WorkflowSpecDefaultTypeInternal; extern WorkflowSpecDefaultTypeInternal _WorkflowSpec_default_instance_; +class WorkflowUpdateRequest; +class WorkflowUpdateRequestDefaultTypeInternal; +extern WorkflowUpdateRequestDefaultTypeInternal _WorkflowUpdateRequest_default_instance_; +class WorkflowUpdateResponse; +class WorkflowUpdateResponseDefaultTypeInternal; +extern WorkflowUpdateResponseDefaultTypeInternal _WorkflowUpdateResponse_default_instance_; } // namespace admin } // namespace flyteidl namespace google { @@ -83,11 +90,34 @@ template<> ::flyteidl::admin::WorkflowCreateRequest* Arena::CreateMaybeMessage<: template<> ::flyteidl::admin::WorkflowCreateResponse* Arena::CreateMaybeMessage<::flyteidl::admin::WorkflowCreateResponse>(Arena*); template<> ::flyteidl::admin::WorkflowList* Arena::CreateMaybeMessage<::flyteidl::admin::WorkflowList>(Arena*); template<> ::flyteidl::admin::WorkflowSpec* Arena::CreateMaybeMessage<::flyteidl::admin::WorkflowSpec>(Arena*); +template<> ::flyteidl::admin::WorkflowUpdateRequest* Arena::CreateMaybeMessage<::flyteidl::admin::WorkflowUpdateRequest>(Arena*); +template<> ::flyteidl::admin::WorkflowUpdateResponse* Arena::CreateMaybeMessage<::flyteidl::admin::WorkflowUpdateResponse>(Arena*); } // namespace protobuf } // namespace google namespace flyteidl { namespace admin { +enum WorkflowState { + WORKFLOW_ACTIVE = 0, + WORKFLOW_ARCHIVED = 1, + WorkflowState_INT_MIN_SENTINEL_DO_NOT_USE_ = std::numeric_limits<::google::protobuf::int32>::min(), + WorkflowState_INT_MAX_SENTINEL_DO_NOT_USE_ = std::numeric_limits<::google::protobuf::int32>::max() +}; +bool WorkflowState_IsValid(int value); +const WorkflowState WorkflowState_MIN = WORKFLOW_ACTIVE; +const WorkflowState WorkflowState_MAX = WORKFLOW_ARCHIVED; +const int WorkflowState_ARRAYSIZE = WorkflowState_MAX + 1; + +const ::google::protobuf::EnumDescriptor* WorkflowState_descriptor(); +inline const ::std::string& WorkflowState_Name(WorkflowState value) { + return ::google::protobuf::internal::NameOfEnum( + WorkflowState_descriptor(), value); +} +inline bool WorkflowState_Parse( + const ::std::string& name, WorkflowState* value) { + return ::google::protobuf::internal::ParseNamedEnum( + WorkflowState_descriptor(), name, value); +} // =================================================================== class WorkflowCreateRequest final : @@ -829,6 +859,233 @@ class WorkflowClosure final : mutable ::google::protobuf::internal::CachedSize _cached_size_; friend struct ::TableStruct_flyteidl_2fadmin_2fworkflow_2eproto; }; +// ------------------------------------------------------------------- + +class WorkflowUpdateRequest final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:flyteidl.admin.WorkflowUpdateRequest) */ { + public: + WorkflowUpdateRequest(); + virtual ~WorkflowUpdateRequest(); + + WorkflowUpdateRequest(const WorkflowUpdateRequest& from); + + inline WorkflowUpdateRequest& operator=(const WorkflowUpdateRequest& from) { + CopyFrom(from); + return *this; + } + #if LANG_CXX11 + WorkflowUpdateRequest(WorkflowUpdateRequest&& from) noexcept + : WorkflowUpdateRequest() { + *this = ::std::move(from); + } + + inline WorkflowUpdateRequest& operator=(WorkflowUpdateRequest&& from) noexcept { + if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) { + if (this != &from) InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + #endif + static const ::google::protobuf::Descriptor* descriptor() { + return default_instance().GetDescriptor(); + } + static const WorkflowUpdateRequest& default_instance(); + + static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY + static inline const WorkflowUpdateRequest* internal_default_instance() { + return reinterpret_cast( + &_WorkflowUpdateRequest_default_instance_); + } + static constexpr int kIndexInFileMessages = + 6; + + void Swap(WorkflowUpdateRequest* other); + friend void swap(WorkflowUpdateRequest& a, WorkflowUpdateRequest& b) { + a.Swap(&b); + } + + // implements Message ---------------------------------------------- + + inline WorkflowUpdateRequest* New() const final { + return CreateMaybeMessage(nullptr); + } + + WorkflowUpdateRequest* New(::google::protobuf::Arena* arena) const final { + return CreateMaybeMessage(arena); + } + void CopyFrom(const ::google::protobuf::Message& from) final; + void MergeFrom(const ::google::protobuf::Message& from) final; + void CopyFrom(const WorkflowUpdateRequest& from); + void MergeFrom(const WorkflowUpdateRequest& from); + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + size_t ByteSizeLong() const final; + #if GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER + static const char* _InternalParse(const char* begin, const char* end, void* object, ::google::protobuf::internal::ParseContext* ctx); + ::google::protobuf::internal::ParseFunc _ParseFunc() const final { return _InternalParse; } + #else + bool MergePartialFromCodedStream( + ::google::protobuf::io::CodedInputStream* input) final; + #endif // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER + void SerializeWithCachedSizes( + ::google::protobuf::io::CodedOutputStream* output) const final; + ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray( + ::google::protobuf::uint8* target) const final; + int GetCachedSize() const final { return _cached_size_.Get(); } + + private: + void SharedCtor(); + void SharedDtor(); + void SetCachedSize(int size) const final; + void InternalSwap(WorkflowUpdateRequest* other); + private: + inline ::google::protobuf::Arena* GetArenaNoVirtual() const { + return nullptr; + } + inline void* MaybeArenaPtr() const { + return nullptr; + } + public: + + ::google::protobuf::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + // .flyteidl.core.Identifier id = 1; + bool has_id() const; + void clear_id(); + static const int kIdFieldNumber = 1; + const ::flyteidl::core::Identifier& id() const; + ::flyteidl::core::Identifier* release_id(); + ::flyteidl::core::Identifier* mutable_id(); + void set_allocated_id(::flyteidl::core::Identifier* id); + + // .flyteidl.admin.WorkflowState state = 2; + void clear_state(); + static const int kStateFieldNumber = 2; + ::flyteidl::admin::WorkflowState state() const; + void set_state(::flyteidl::admin::WorkflowState value); + + // @@protoc_insertion_point(class_scope:flyteidl.admin.WorkflowUpdateRequest) + private: + class HasBitSetters; + + ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_; + ::flyteidl::core::Identifier* id_; + int state_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + friend struct ::TableStruct_flyteidl_2fadmin_2fworkflow_2eproto; +}; +// ------------------------------------------------------------------- + +class WorkflowUpdateResponse final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:flyteidl.admin.WorkflowUpdateResponse) */ { + public: + WorkflowUpdateResponse(); + virtual ~WorkflowUpdateResponse(); + + WorkflowUpdateResponse(const WorkflowUpdateResponse& from); + + inline WorkflowUpdateResponse& operator=(const WorkflowUpdateResponse& from) { + CopyFrom(from); + return *this; + } + #if LANG_CXX11 + WorkflowUpdateResponse(WorkflowUpdateResponse&& from) noexcept + : WorkflowUpdateResponse() { + *this = ::std::move(from); + } + + inline WorkflowUpdateResponse& operator=(WorkflowUpdateResponse&& from) noexcept { + if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) { + if (this != &from) InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + #endif + static const ::google::protobuf::Descriptor* descriptor() { + return default_instance().GetDescriptor(); + } + static const WorkflowUpdateResponse& default_instance(); + + static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY + static inline const WorkflowUpdateResponse* internal_default_instance() { + return reinterpret_cast( + &_WorkflowUpdateResponse_default_instance_); + } + static constexpr int kIndexInFileMessages = + 7; + + void Swap(WorkflowUpdateResponse* other); + friend void swap(WorkflowUpdateResponse& a, WorkflowUpdateResponse& b) { + a.Swap(&b); + } + + // implements Message ---------------------------------------------- + + inline WorkflowUpdateResponse* New() const final { + return CreateMaybeMessage(nullptr); + } + + WorkflowUpdateResponse* New(::google::protobuf::Arena* arena) const final { + return CreateMaybeMessage(arena); + } + void CopyFrom(const ::google::protobuf::Message& from) final; + void MergeFrom(const ::google::protobuf::Message& from) final; + void CopyFrom(const WorkflowUpdateResponse& from); + void MergeFrom(const WorkflowUpdateResponse& from); + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + size_t ByteSizeLong() const final; + #if GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER + static const char* _InternalParse(const char* begin, const char* end, void* object, ::google::protobuf::internal::ParseContext* ctx); + ::google::protobuf::internal::ParseFunc _ParseFunc() const final { return _InternalParse; } + #else + bool MergePartialFromCodedStream( + ::google::protobuf::io::CodedInputStream* input) final; + #endif // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER + void SerializeWithCachedSizes( + ::google::protobuf::io::CodedOutputStream* output) const final; + ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray( + ::google::protobuf::uint8* target) const final; + int GetCachedSize() const final { return _cached_size_.Get(); } + + private: + void SharedCtor(); + void SharedDtor(); + void SetCachedSize(int size) const final; + void InternalSwap(WorkflowUpdateResponse* other); + private: + inline ::google::protobuf::Arena* GetArenaNoVirtual() const { + return nullptr; + } + inline void* MaybeArenaPtr() const { + return nullptr; + } + public: + + ::google::protobuf::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + // @@protoc_insertion_point(class_scope:flyteidl.admin.WorkflowUpdateResponse) + private: + class HasBitSetters; + + ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + friend struct ::TableStruct_flyteidl_2fadmin_2fworkflow_2eproto; +}; // =================================================================== @@ -1298,6 +1555,73 @@ inline void WorkflowClosure::set_allocated_created_at(::google::protobuf::Timest // @@protoc_insertion_point(field_set_allocated:flyteidl.admin.WorkflowClosure.created_at) } +// ------------------------------------------------------------------- + +// WorkflowUpdateRequest + +// .flyteidl.core.Identifier id = 1; +inline bool WorkflowUpdateRequest::has_id() const { + return this != internal_default_instance() && id_ != nullptr; +} +inline const ::flyteidl::core::Identifier& WorkflowUpdateRequest::id() const { + const ::flyteidl::core::Identifier* p = id_; + // @@protoc_insertion_point(field_get:flyteidl.admin.WorkflowUpdateRequest.id) + return p != nullptr ? *p : *reinterpret_cast( + &::flyteidl::core::_Identifier_default_instance_); +} +inline ::flyteidl::core::Identifier* WorkflowUpdateRequest::release_id() { + // @@protoc_insertion_point(field_release:flyteidl.admin.WorkflowUpdateRequest.id) + + ::flyteidl::core::Identifier* temp = id_; + id_ = nullptr; + return temp; +} +inline ::flyteidl::core::Identifier* WorkflowUpdateRequest::mutable_id() { + + if (id_ == nullptr) { + auto* p = CreateMaybeMessage<::flyteidl::core::Identifier>(GetArenaNoVirtual()); + id_ = p; + } + // @@protoc_insertion_point(field_mutable:flyteidl.admin.WorkflowUpdateRequest.id) + return id_; +} +inline void WorkflowUpdateRequest::set_allocated_id(::flyteidl::core::Identifier* id) { + ::google::protobuf::Arena* message_arena = GetArenaNoVirtual(); + if (message_arena == nullptr) { + delete reinterpret_cast< ::google::protobuf::MessageLite*>(id_); + } + if (id) { + ::google::protobuf::Arena* submessage_arena = nullptr; + if (message_arena != submessage_arena) { + id = ::google::protobuf::internal::GetOwnedMessage( + message_arena, id, submessage_arena); + } + + } else { + + } + id_ = id; + // @@protoc_insertion_point(field_set_allocated:flyteidl.admin.WorkflowUpdateRequest.id) +} + +// .flyteidl.admin.WorkflowState state = 2; +inline void WorkflowUpdateRequest::clear_state() { + state_ = 0; +} +inline ::flyteidl::admin::WorkflowState WorkflowUpdateRequest::state() const { + // @@protoc_insertion_point(field_get:flyteidl.admin.WorkflowUpdateRequest.state) + return static_cast< ::flyteidl::admin::WorkflowState >(state_); +} +inline void WorkflowUpdateRequest::set_state(::flyteidl::admin::WorkflowState value) { + + state_ = value; + // @@protoc_insertion_point(field_set:flyteidl.admin.WorkflowUpdateRequest.state) +} + +// ------------------------------------------------------------------- + +// WorkflowUpdateResponse + #ifdef __GNUC__ #pragma GCC diagnostic pop #endif // __GNUC__ @@ -1311,12 +1635,28 @@ inline void WorkflowClosure::set_allocated_created_at(::google::protobuf::Timest // ------------------------------------------------------------------- +// ------------------------------------------------------------------- + +// ------------------------------------------------------------------- + // @@protoc_insertion_point(namespace_scope) } // namespace admin } // namespace flyteidl +namespace google { +namespace protobuf { + +template <> struct is_proto_enum< ::flyteidl::admin::WorkflowState> : ::std::true_type {}; +template <> +inline const EnumDescriptor* GetEnumDescriptor< ::flyteidl::admin::WorkflowState>() { + return ::flyteidl::admin::WorkflowState_descriptor(); +} + +} // namespace protobuf +} // namespace google + // @@protoc_insertion_point(global_scope) #include diff --git a/flyteidl/gen/pb-cpp/flyteidl/service/admin.grpc.pb.cc b/flyteidl/gen/pb-cpp/flyteidl/service/admin.grpc.pb.cc index 6528ed9f5b0..7a1d961c3b2 100644 --- a/flyteidl/gen/pb-cpp/flyteidl/service/admin.grpc.pb.cc +++ b/flyteidl/gen/pb-cpp/flyteidl/service/admin.grpc.pb.cc @@ -28,6 +28,7 @@ static const char* AdminService_method_names[] = { "/flyteidl.service.AdminService/GetWorkflow", "/flyteidl.service.AdminService/ListWorkflowIds", "/flyteidl.service.AdminService/ListWorkflows", + "/flyteidl.service.AdminService/UpdateWorkflow", "/flyteidl.service.AdminService/CreateLaunchPlan", "/flyteidl.service.AdminService/GetLaunchPlan", "/flyteidl.service.AdminService/GetActiveLaunchPlan", @@ -80,41 +81,42 @@ AdminService::Stub::Stub(const std::shared_ptr< ::grpc::ChannelInterface>& chann , rpcmethod_GetWorkflow_(AdminService_method_names[5], ::grpc::internal::RpcMethod::NORMAL_RPC, channel) , rpcmethod_ListWorkflowIds_(AdminService_method_names[6], ::grpc::internal::RpcMethod::NORMAL_RPC, channel) , rpcmethod_ListWorkflows_(AdminService_method_names[7], ::grpc::internal::RpcMethod::NORMAL_RPC, channel) - , rpcmethod_CreateLaunchPlan_(AdminService_method_names[8], ::grpc::internal::RpcMethod::NORMAL_RPC, channel) - , rpcmethod_GetLaunchPlan_(AdminService_method_names[9], ::grpc::internal::RpcMethod::NORMAL_RPC, channel) - , rpcmethod_GetActiveLaunchPlan_(AdminService_method_names[10], ::grpc::internal::RpcMethod::NORMAL_RPC, channel) - , rpcmethod_ListActiveLaunchPlans_(AdminService_method_names[11], ::grpc::internal::RpcMethod::NORMAL_RPC, channel) - , rpcmethod_ListLaunchPlanIds_(AdminService_method_names[12], ::grpc::internal::RpcMethod::NORMAL_RPC, channel) - , rpcmethod_ListLaunchPlans_(AdminService_method_names[13], ::grpc::internal::RpcMethod::NORMAL_RPC, channel) - , rpcmethod_UpdateLaunchPlan_(AdminService_method_names[14], ::grpc::internal::RpcMethod::NORMAL_RPC, channel) - , rpcmethod_CreateExecution_(AdminService_method_names[15], ::grpc::internal::RpcMethod::NORMAL_RPC, channel) - , rpcmethod_RelaunchExecution_(AdminService_method_names[16], ::grpc::internal::RpcMethod::NORMAL_RPC, channel) - , rpcmethod_GetExecution_(AdminService_method_names[17], ::grpc::internal::RpcMethod::NORMAL_RPC, channel) - , rpcmethod_GetExecutionData_(AdminService_method_names[18], ::grpc::internal::RpcMethod::NORMAL_RPC, channel) - , rpcmethod_ListExecutions_(AdminService_method_names[19], ::grpc::internal::RpcMethod::NORMAL_RPC, channel) - , rpcmethod_TerminateExecution_(AdminService_method_names[20], ::grpc::internal::RpcMethod::NORMAL_RPC, channel) - , rpcmethod_GetNodeExecution_(AdminService_method_names[21], ::grpc::internal::RpcMethod::NORMAL_RPC, channel) - , rpcmethod_ListNodeExecutions_(AdminService_method_names[22], ::grpc::internal::RpcMethod::NORMAL_RPC, channel) - , rpcmethod_ListNodeExecutionsForTask_(AdminService_method_names[23], ::grpc::internal::RpcMethod::NORMAL_RPC, channel) - , rpcmethod_GetNodeExecutionData_(AdminService_method_names[24], ::grpc::internal::RpcMethod::NORMAL_RPC, channel) - , rpcmethod_RegisterProject_(AdminService_method_names[25], ::grpc::internal::RpcMethod::NORMAL_RPC, channel) - , rpcmethod_ListProjects_(AdminService_method_names[26], ::grpc::internal::RpcMethod::NORMAL_RPC, channel) - , rpcmethod_CreateWorkflowEvent_(AdminService_method_names[27], ::grpc::internal::RpcMethod::NORMAL_RPC, channel) - , rpcmethod_CreateNodeEvent_(AdminService_method_names[28], ::grpc::internal::RpcMethod::NORMAL_RPC, channel) - , rpcmethod_CreateTaskEvent_(AdminService_method_names[29], ::grpc::internal::RpcMethod::NORMAL_RPC, channel) - , rpcmethod_GetTaskExecution_(AdminService_method_names[30], ::grpc::internal::RpcMethod::NORMAL_RPC, channel) - , rpcmethod_ListTaskExecutions_(AdminService_method_names[31], ::grpc::internal::RpcMethod::NORMAL_RPC, channel) - , rpcmethod_GetTaskExecutionData_(AdminService_method_names[32], ::grpc::internal::RpcMethod::NORMAL_RPC, channel) - , rpcmethod_UpdateProjectDomainAttributes_(AdminService_method_names[33], ::grpc::internal::RpcMethod::NORMAL_RPC, channel) - , rpcmethod_GetProjectDomainAttributes_(AdminService_method_names[34], ::grpc::internal::RpcMethod::NORMAL_RPC, channel) - , rpcmethod_DeleteProjectDomainAttributes_(AdminService_method_names[35], ::grpc::internal::RpcMethod::NORMAL_RPC, channel) - , rpcmethod_UpdateWorkflowAttributes_(AdminService_method_names[36], ::grpc::internal::RpcMethod::NORMAL_RPC, channel) - , rpcmethod_GetWorkflowAttributes_(AdminService_method_names[37], ::grpc::internal::RpcMethod::NORMAL_RPC, channel) - , rpcmethod_DeleteWorkflowAttributes_(AdminService_method_names[38], ::grpc::internal::RpcMethod::NORMAL_RPC, channel) - , rpcmethod_ListMatchableAttributes_(AdminService_method_names[39], ::grpc::internal::RpcMethod::NORMAL_RPC, channel) - , rpcmethod_ListNamedEntities_(AdminService_method_names[40], ::grpc::internal::RpcMethod::NORMAL_RPC, channel) - , rpcmethod_GetNamedEntity_(AdminService_method_names[41], ::grpc::internal::RpcMethod::NORMAL_RPC, channel) - , rpcmethod_UpdateNamedEntity_(AdminService_method_names[42], ::grpc::internal::RpcMethod::NORMAL_RPC, channel) + , rpcmethod_UpdateWorkflow_(AdminService_method_names[8], ::grpc::internal::RpcMethod::NORMAL_RPC, channel) + , rpcmethod_CreateLaunchPlan_(AdminService_method_names[9], ::grpc::internal::RpcMethod::NORMAL_RPC, channel) + , rpcmethod_GetLaunchPlan_(AdminService_method_names[10], ::grpc::internal::RpcMethod::NORMAL_RPC, channel) + , rpcmethod_GetActiveLaunchPlan_(AdminService_method_names[11], ::grpc::internal::RpcMethod::NORMAL_RPC, channel) + , rpcmethod_ListActiveLaunchPlans_(AdminService_method_names[12], ::grpc::internal::RpcMethod::NORMAL_RPC, channel) + , rpcmethod_ListLaunchPlanIds_(AdminService_method_names[13], ::grpc::internal::RpcMethod::NORMAL_RPC, channel) + , rpcmethod_ListLaunchPlans_(AdminService_method_names[14], ::grpc::internal::RpcMethod::NORMAL_RPC, channel) + , rpcmethod_UpdateLaunchPlan_(AdminService_method_names[15], ::grpc::internal::RpcMethod::NORMAL_RPC, channel) + , rpcmethod_CreateExecution_(AdminService_method_names[16], ::grpc::internal::RpcMethod::NORMAL_RPC, channel) + , rpcmethod_RelaunchExecution_(AdminService_method_names[17], ::grpc::internal::RpcMethod::NORMAL_RPC, channel) + , rpcmethod_GetExecution_(AdminService_method_names[18], ::grpc::internal::RpcMethod::NORMAL_RPC, channel) + , rpcmethod_GetExecutionData_(AdminService_method_names[19], ::grpc::internal::RpcMethod::NORMAL_RPC, channel) + , rpcmethod_ListExecutions_(AdminService_method_names[20], ::grpc::internal::RpcMethod::NORMAL_RPC, channel) + , rpcmethod_TerminateExecution_(AdminService_method_names[21], ::grpc::internal::RpcMethod::NORMAL_RPC, channel) + , rpcmethod_GetNodeExecution_(AdminService_method_names[22], ::grpc::internal::RpcMethod::NORMAL_RPC, channel) + , rpcmethod_ListNodeExecutions_(AdminService_method_names[23], ::grpc::internal::RpcMethod::NORMAL_RPC, channel) + , rpcmethod_ListNodeExecutionsForTask_(AdminService_method_names[24], ::grpc::internal::RpcMethod::NORMAL_RPC, channel) + , rpcmethod_GetNodeExecutionData_(AdminService_method_names[25], ::grpc::internal::RpcMethod::NORMAL_RPC, channel) + , rpcmethod_RegisterProject_(AdminService_method_names[26], ::grpc::internal::RpcMethod::NORMAL_RPC, channel) + , rpcmethod_ListProjects_(AdminService_method_names[27], ::grpc::internal::RpcMethod::NORMAL_RPC, channel) + , rpcmethod_CreateWorkflowEvent_(AdminService_method_names[28], ::grpc::internal::RpcMethod::NORMAL_RPC, channel) + , rpcmethod_CreateNodeEvent_(AdminService_method_names[29], ::grpc::internal::RpcMethod::NORMAL_RPC, channel) + , rpcmethod_CreateTaskEvent_(AdminService_method_names[30], ::grpc::internal::RpcMethod::NORMAL_RPC, channel) + , rpcmethod_GetTaskExecution_(AdminService_method_names[31], ::grpc::internal::RpcMethod::NORMAL_RPC, channel) + , rpcmethod_ListTaskExecutions_(AdminService_method_names[32], ::grpc::internal::RpcMethod::NORMAL_RPC, channel) + , rpcmethod_GetTaskExecutionData_(AdminService_method_names[33], ::grpc::internal::RpcMethod::NORMAL_RPC, channel) + , rpcmethod_UpdateProjectDomainAttributes_(AdminService_method_names[34], ::grpc::internal::RpcMethod::NORMAL_RPC, channel) + , rpcmethod_GetProjectDomainAttributes_(AdminService_method_names[35], ::grpc::internal::RpcMethod::NORMAL_RPC, channel) + , rpcmethod_DeleteProjectDomainAttributes_(AdminService_method_names[36], ::grpc::internal::RpcMethod::NORMAL_RPC, channel) + , rpcmethod_UpdateWorkflowAttributes_(AdminService_method_names[37], ::grpc::internal::RpcMethod::NORMAL_RPC, channel) + , rpcmethod_GetWorkflowAttributes_(AdminService_method_names[38], ::grpc::internal::RpcMethod::NORMAL_RPC, channel) + , rpcmethod_DeleteWorkflowAttributes_(AdminService_method_names[39], ::grpc::internal::RpcMethod::NORMAL_RPC, channel) + , rpcmethod_ListMatchableAttributes_(AdminService_method_names[40], ::grpc::internal::RpcMethod::NORMAL_RPC, channel) + , rpcmethod_ListNamedEntities_(AdminService_method_names[41], ::grpc::internal::RpcMethod::NORMAL_RPC, channel) + , rpcmethod_GetNamedEntity_(AdminService_method_names[42], ::grpc::internal::RpcMethod::NORMAL_RPC, channel) + , rpcmethod_UpdateNamedEntity_(AdminService_method_names[43], ::grpc::internal::RpcMethod::NORMAL_RPC, channel) {} ::grpc::Status AdminService::Stub::CreateTask(::grpc::ClientContext* context, const ::flyteidl::admin::TaskCreateRequest& request, ::flyteidl::admin::TaskCreateResponse* response) { @@ -341,6 +343,34 @@ ::grpc::ClientAsyncResponseReader< ::flyteidl::admin::WorkflowList>* AdminServic return ::grpc::internal::ClientAsyncResponseReaderFactory< ::flyteidl::admin::WorkflowList>::Create(channel_.get(), cq, rpcmethod_ListWorkflows_, context, request, false); } +::grpc::Status AdminService::Stub::UpdateWorkflow(::grpc::ClientContext* context, const ::flyteidl::admin::WorkflowUpdateRequest& request, ::flyteidl::admin::WorkflowUpdateResponse* response) { + return ::grpc::internal::BlockingUnaryCall(channel_.get(), rpcmethod_UpdateWorkflow_, context, request, response); +} + +void AdminService::Stub::experimental_async::UpdateWorkflow(::grpc::ClientContext* context, const ::flyteidl::admin::WorkflowUpdateRequest* request, ::flyteidl::admin::WorkflowUpdateResponse* response, std::function f) { + ::grpc::internal::CallbackUnaryCall(stub_->channel_.get(), stub_->rpcmethod_UpdateWorkflow_, context, request, response, std::move(f)); +} + +void AdminService::Stub::experimental_async::UpdateWorkflow(::grpc::ClientContext* context, const ::grpc::ByteBuffer* request, ::flyteidl::admin::WorkflowUpdateResponse* response, std::function f) { + ::grpc::internal::CallbackUnaryCall(stub_->channel_.get(), stub_->rpcmethod_UpdateWorkflow_, context, request, response, std::move(f)); +} + +void AdminService::Stub::experimental_async::UpdateWorkflow(::grpc::ClientContext* context, const ::flyteidl::admin::WorkflowUpdateRequest* request, ::flyteidl::admin::WorkflowUpdateResponse* response, ::grpc::experimental::ClientUnaryReactor* reactor) { + ::grpc::internal::ClientCallbackUnaryFactory::Create(stub_->channel_.get(), stub_->rpcmethod_UpdateWorkflow_, context, request, response, reactor); +} + +void AdminService::Stub::experimental_async::UpdateWorkflow(::grpc::ClientContext* context, const ::grpc::ByteBuffer* request, ::flyteidl::admin::WorkflowUpdateResponse* response, ::grpc::experimental::ClientUnaryReactor* reactor) { + ::grpc::internal::ClientCallbackUnaryFactory::Create(stub_->channel_.get(), stub_->rpcmethod_UpdateWorkflow_, context, request, response, reactor); +} + +::grpc::ClientAsyncResponseReader< ::flyteidl::admin::WorkflowUpdateResponse>* AdminService::Stub::AsyncUpdateWorkflowRaw(::grpc::ClientContext* context, const ::flyteidl::admin::WorkflowUpdateRequest& request, ::grpc::CompletionQueue* cq) { + return ::grpc::internal::ClientAsyncResponseReaderFactory< ::flyteidl::admin::WorkflowUpdateResponse>::Create(channel_.get(), cq, rpcmethod_UpdateWorkflow_, context, request, true); +} + +::grpc::ClientAsyncResponseReader< ::flyteidl::admin::WorkflowUpdateResponse>* AdminService::Stub::PrepareAsyncUpdateWorkflowRaw(::grpc::ClientContext* context, const ::flyteidl::admin::WorkflowUpdateRequest& request, ::grpc::CompletionQueue* cq) { + return ::grpc::internal::ClientAsyncResponseReaderFactory< ::flyteidl::admin::WorkflowUpdateResponse>::Create(channel_.get(), cq, rpcmethod_UpdateWorkflow_, context, request, false); +} + ::grpc::Status AdminService::Stub::CreateLaunchPlan(::grpc::ClientContext* context, const ::flyteidl::admin::LaunchPlanCreateRequest& request, ::flyteidl::admin::LaunchPlanCreateResponse* response) { return ::grpc::internal::BlockingUnaryCall(channel_.get(), rpcmethod_CreateLaunchPlan_, context, request, response); } @@ -1365,175 +1395,180 @@ AdminService::Service::Service() { AddMethod(new ::grpc::internal::RpcServiceMethod( AdminService_method_names[8], ::grpc::internal::RpcMethod::NORMAL_RPC, + new ::grpc::internal::RpcMethodHandler< AdminService::Service, ::flyteidl::admin::WorkflowUpdateRequest, ::flyteidl::admin::WorkflowUpdateResponse>( + std::mem_fn(&AdminService::Service::UpdateWorkflow), this))); + AddMethod(new ::grpc::internal::RpcServiceMethod( + AdminService_method_names[9], + ::grpc::internal::RpcMethod::NORMAL_RPC, new ::grpc::internal::RpcMethodHandler< AdminService::Service, ::flyteidl::admin::LaunchPlanCreateRequest, ::flyteidl::admin::LaunchPlanCreateResponse>( std::mem_fn(&AdminService::Service::CreateLaunchPlan), this))); AddMethod(new ::grpc::internal::RpcServiceMethod( - AdminService_method_names[9], + AdminService_method_names[10], ::grpc::internal::RpcMethod::NORMAL_RPC, new ::grpc::internal::RpcMethodHandler< AdminService::Service, ::flyteidl::admin::ObjectGetRequest, ::flyteidl::admin::LaunchPlan>( std::mem_fn(&AdminService::Service::GetLaunchPlan), this))); AddMethod(new ::grpc::internal::RpcServiceMethod( - AdminService_method_names[10], + AdminService_method_names[11], ::grpc::internal::RpcMethod::NORMAL_RPC, new ::grpc::internal::RpcMethodHandler< AdminService::Service, ::flyteidl::admin::ActiveLaunchPlanRequest, ::flyteidl::admin::LaunchPlan>( std::mem_fn(&AdminService::Service::GetActiveLaunchPlan), this))); AddMethod(new ::grpc::internal::RpcServiceMethod( - AdminService_method_names[11], + AdminService_method_names[12], ::grpc::internal::RpcMethod::NORMAL_RPC, new ::grpc::internal::RpcMethodHandler< AdminService::Service, ::flyteidl::admin::ActiveLaunchPlanListRequest, ::flyteidl::admin::LaunchPlanList>( std::mem_fn(&AdminService::Service::ListActiveLaunchPlans), this))); AddMethod(new ::grpc::internal::RpcServiceMethod( - AdminService_method_names[12], + AdminService_method_names[13], ::grpc::internal::RpcMethod::NORMAL_RPC, new ::grpc::internal::RpcMethodHandler< AdminService::Service, ::flyteidl::admin::NamedEntityIdentifierListRequest, ::flyteidl::admin::NamedEntityIdentifierList>( std::mem_fn(&AdminService::Service::ListLaunchPlanIds), this))); AddMethod(new ::grpc::internal::RpcServiceMethod( - AdminService_method_names[13], + AdminService_method_names[14], ::grpc::internal::RpcMethod::NORMAL_RPC, new ::grpc::internal::RpcMethodHandler< AdminService::Service, ::flyteidl::admin::ResourceListRequest, ::flyteidl::admin::LaunchPlanList>( std::mem_fn(&AdminService::Service::ListLaunchPlans), this))); AddMethod(new ::grpc::internal::RpcServiceMethod( - AdminService_method_names[14], + AdminService_method_names[15], ::grpc::internal::RpcMethod::NORMAL_RPC, new ::grpc::internal::RpcMethodHandler< AdminService::Service, ::flyteidl::admin::LaunchPlanUpdateRequest, ::flyteidl::admin::LaunchPlanUpdateResponse>( std::mem_fn(&AdminService::Service::UpdateLaunchPlan), this))); AddMethod(new ::grpc::internal::RpcServiceMethod( - AdminService_method_names[15], + AdminService_method_names[16], ::grpc::internal::RpcMethod::NORMAL_RPC, new ::grpc::internal::RpcMethodHandler< AdminService::Service, ::flyteidl::admin::ExecutionCreateRequest, ::flyteidl::admin::ExecutionCreateResponse>( std::mem_fn(&AdminService::Service::CreateExecution), this))); AddMethod(new ::grpc::internal::RpcServiceMethod( - AdminService_method_names[16], + AdminService_method_names[17], ::grpc::internal::RpcMethod::NORMAL_RPC, new ::grpc::internal::RpcMethodHandler< AdminService::Service, ::flyteidl::admin::ExecutionRelaunchRequest, ::flyteidl::admin::ExecutionCreateResponse>( std::mem_fn(&AdminService::Service::RelaunchExecution), this))); AddMethod(new ::grpc::internal::RpcServiceMethod( - AdminService_method_names[17], + AdminService_method_names[18], ::grpc::internal::RpcMethod::NORMAL_RPC, new ::grpc::internal::RpcMethodHandler< AdminService::Service, ::flyteidl::admin::WorkflowExecutionGetRequest, ::flyteidl::admin::Execution>( std::mem_fn(&AdminService::Service::GetExecution), this))); AddMethod(new ::grpc::internal::RpcServiceMethod( - AdminService_method_names[18], + AdminService_method_names[19], ::grpc::internal::RpcMethod::NORMAL_RPC, new ::grpc::internal::RpcMethodHandler< AdminService::Service, ::flyteidl::admin::WorkflowExecutionGetDataRequest, ::flyteidl::admin::WorkflowExecutionGetDataResponse>( std::mem_fn(&AdminService::Service::GetExecutionData), this))); AddMethod(new ::grpc::internal::RpcServiceMethod( - AdminService_method_names[19], + AdminService_method_names[20], ::grpc::internal::RpcMethod::NORMAL_RPC, new ::grpc::internal::RpcMethodHandler< AdminService::Service, ::flyteidl::admin::ResourceListRequest, ::flyteidl::admin::ExecutionList>( std::mem_fn(&AdminService::Service::ListExecutions), this))); AddMethod(new ::grpc::internal::RpcServiceMethod( - AdminService_method_names[20], + AdminService_method_names[21], ::grpc::internal::RpcMethod::NORMAL_RPC, new ::grpc::internal::RpcMethodHandler< AdminService::Service, ::flyteidl::admin::ExecutionTerminateRequest, ::flyteidl::admin::ExecutionTerminateResponse>( std::mem_fn(&AdminService::Service::TerminateExecution), this))); AddMethod(new ::grpc::internal::RpcServiceMethod( - AdminService_method_names[21], + AdminService_method_names[22], ::grpc::internal::RpcMethod::NORMAL_RPC, new ::grpc::internal::RpcMethodHandler< AdminService::Service, ::flyteidl::admin::NodeExecutionGetRequest, ::flyteidl::admin::NodeExecution>( std::mem_fn(&AdminService::Service::GetNodeExecution), this))); AddMethod(new ::grpc::internal::RpcServiceMethod( - AdminService_method_names[22], + AdminService_method_names[23], ::grpc::internal::RpcMethod::NORMAL_RPC, new ::grpc::internal::RpcMethodHandler< AdminService::Service, ::flyteidl::admin::NodeExecutionListRequest, ::flyteidl::admin::NodeExecutionList>( std::mem_fn(&AdminService::Service::ListNodeExecutions), this))); AddMethod(new ::grpc::internal::RpcServiceMethod( - AdminService_method_names[23], + AdminService_method_names[24], ::grpc::internal::RpcMethod::NORMAL_RPC, new ::grpc::internal::RpcMethodHandler< AdminService::Service, ::flyteidl::admin::NodeExecutionForTaskListRequest, ::flyteidl::admin::NodeExecutionList>( std::mem_fn(&AdminService::Service::ListNodeExecutionsForTask), this))); AddMethod(new ::grpc::internal::RpcServiceMethod( - AdminService_method_names[24], + AdminService_method_names[25], ::grpc::internal::RpcMethod::NORMAL_RPC, new ::grpc::internal::RpcMethodHandler< AdminService::Service, ::flyteidl::admin::NodeExecutionGetDataRequest, ::flyteidl::admin::NodeExecutionGetDataResponse>( std::mem_fn(&AdminService::Service::GetNodeExecutionData), this))); AddMethod(new ::grpc::internal::RpcServiceMethod( - AdminService_method_names[25], + AdminService_method_names[26], ::grpc::internal::RpcMethod::NORMAL_RPC, new ::grpc::internal::RpcMethodHandler< AdminService::Service, ::flyteidl::admin::ProjectRegisterRequest, ::flyteidl::admin::ProjectRegisterResponse>( std::mem_fn(&AdminService::Service::RegisterProject), this))); AddMethod(new ::grpc::internal::RpcServiceMethod( - AdminService_method_names[26], + AdminService_method_names[27], ::grpc::internal::RpcMethod::NORMAL_RPC, new ::grpc::internal::RpcMethodHandler< AdminService::Service, ::flyteidl::admin::ProjectListRequest, ::flyteidl::admin::Projects>( std::mem_fn(&AdminService::Service::ListProjects), this))); AddMethod(new ::grpc::internal::RpcServiceMethod( - AdminService_method_names[27], + AdminService_method_names[28], ::grpc::internal::RpcMethod::NORMAL_RPC, new ::grpc::internal::RpcMethodHandler< AdminService::Service, ::flyteidl::admin::WorkflowExecutionEventRequest, ::flyteidl::admin::WorkflowExecutionEventResponse>( std::mem_fn(&AdminService::Service::CreateWorkflowEvent), this))); AddMethod(new ::grpc::internal::RpcServiceMethod( - AdminService_method_names[28], + AdminService_method_names[29], ::grpc::internal::RpcMethod::NORMAL_RPC, new ::grpc::internal::RpcMethodHandler< AdminService::Service, ::flyteidl::admin::NodeExecutionEventRequest, ::flyteidl::admin::NodeExecutionEventResponse>( std::mem_fn(&AdminService::Service::CreateNodeEvent), this))); AddMethod(new ::grpc::internal::RpcServiceMethod( - AdminService_method_names[29], + AdminService_method_names[30], ::grpc::internal::RpcMethod::NORMAL_RPC, new ::grpc::internal::RpcMethodHandler< AdminService::Service, ::flyteidl::admin::TaskExecutionEventRequest, ::flyteidl::admin::TaskExecutionEventResponse>( std::mem_fn(&AdminService::Service::CreateTaskEvent), this))); AddMethod(new ::grpc::internal::RpcServiceMethod( - AdminService_method_names[30], + AdminService_method_names[31], ::grpc::internal::RpcMethod::NORMAL_RPC, new ::grpc::internal::RpcMethodHandler< AdminService::Service, ::flyteidl::admin::TaskExecutionGetRequest, ::flyteidl::admin::TaskExecution>( std::mem_fn(&AdminService::Service::GetTaskExecution), this))); AddMethod(new ::grpc::internal::RpcServiceMethod( - AdminService_method_names[31], + AdminService_method_names[32], ::grpc::internal::RpcMethod::NORMAL_RPC, new ::grpc::internal::RpcMethodHandler< AdminService::Service, ::flyteidl::admin::TaskExecutionListRequest, ::flyteidl::admin::TaskExecutionList>( std::mem_fn(&AdminService::Service::ListTaskExecutions), this))); AddMethod(new ::grpc::internal::RpcServiceMethod( - AdminService_method_names[32], + AdminService_method_names[33], ::grpc::internal::RpcMethod::NORMAL_RPC, new ::grpc::internal::RpcMethodHandler< AdminService::Service, ::flyteidl::admin::TaskExecutionGetDataRequest, ::flyteidl::admin::TaskExecutionGetDataResponse>( std::mem_fn(&AdminService::Service::GetTaskExecutionData), this))); AddMethod(new ::grpc::internal::RpcServiceMethod( - AdminService_method_names[33], + AdminService_method_names[34], ::grpc::internal::RpcMethod::NORMAL_RPC, new ::grpc::internal::RpcMethodHandler< AdminService::Service, ::flyteidl::admin::ProjectDomainAttributesUpdateRequest, ::flyteidl::admin::ProjectDomainAttributesUpdateResponse>( std::mem_fn(&AdminService::Service::UpdateProjectDomainAttributes), this))); AddMethod(new ::grpc::internal::RpcServiceMethod( - AdminService_method_names[34], + AdminService_method_names[35], ::grpc::internal::RpcMethod::NORMAL_RPC, new ::grpc::internal::RpcMethodHandler< AdminService::Service, ::flyteidl::admin::ProjectDomainAttributesGetRequest, ::flyteidl::admin::ProjectDomainAttributesGetResponse>( std::mem_fn(&AdminService::Service::GetProjectDomainAttributes), this))); AddMethod(new ::grpc::internal::RpcServiceMethod( - AdminService_method_names[35], + AdminService_method_names[36], ::grpc::internal::RpcMethod::NORMAL_RPC, new ::grpc::internal::RpcMethodHandler< AdminService::Service, ::flyteidl::admin::ProjectDomainAttributesDeleteRequest, ::flyteidl::admin::ProjectDomainAttributesDeleteResponse>( std::mem_fn(&AdminService::Service::DeleteProjectDomainAttributes), this))); AddMethod(new ::grpc::internal::RpcServiceMethod( - AdminService_method_names[36], + AdminService_method_names[37], ::grpc::internal::RpcMethod::NORMAL_RPC, new ::grpc::internal::RpcMethodHandler< AdminService::Service, ::flyteidl::admin::WorkflowAttributesUpdateRequest, ::flyteidl::admin::WorkflowAttributesUpdateResponse>( std::mem_fn(&AdminService::Service::UpdateWorkflowAttributes), this))); AddMethod(new ::grpc::internal::RpcServiceMethod( - AdminService_method_names[37], + AdminService_method_names[38], ::grpc::internal::RpcMethod::NORMAL_RPC, new ::grpc::internal::RpcMethodHandler< AdminService::Service, ::flyteidl::admin::WorkflowAttributesGetRequest, ::flyteidl::admin::WorkflowAttributesGetResponse>( std::mem_fn(&AdminService::Service::GetWorkflowAttributes), this))); AddMethod(new ::grpc::internal::RpcServiceMethod( - AdminService_method_names[38], + AdminService_method_names[39], ::grpc::internal::RpcMethod::NORMAL_RPC, new ::grpc::internal::RpcMethodHandler< AdminService::Service, ::flyteidl::admin::WorkflowAttributesDeleteRequest, ::flyteidl::admin::WorkflowAttributesDeleteResponse>( std::mem_fn(&AdminService::Service::DeleteWorkflowAttributes), this))); AddMethod(new ::grpc::internal::RpcServiceMethod( - AdminService_method_names[39], + AdminService_method_names[40], ::grpc::internal::RpcMethod::NORMAL_RPC, new ::grpc::internal::RpcMethodHandler< AdminService::Service, ::flyteidl::admin::ListMatchableAttributesRequest, ::flyteidl::admin::ListMatchableAttributesResponse>( std::mem_fn(&AdminService::Service::ListMatchableAttributes), this))); AddMethod(new ::grpc::internal::RpcServiceMethod( - AdminService_method_names[40], + AdminService_method_names[41], ::grpc::internal::RpcMethod::NORMAL_RPC, new ::grpc::internal::RpcMethodHandler< AdminService::Service, ::flyteidl::admin::NamedEntityListRequest, ::flyteidl::admin::NamedEntityList>( std::mem_fn(&AdminService::Service::ListNamedEntities), this))); AddMethod(new ::grpc::internal::RpcServiceMethod( - AdminService_method_names[41], + AdminService_method_names[42], ::grpc::internal::RpcMethod::NORMAL_RPC, new ::grpc::internal::RpcMethodHandler< AdminService::Service, ::flyteidl::admin::NamedEntityGetRequest, ::flyteidl::admin::NamedEntity>( std::mem_fn(&AdminService::Service::GetNamedEntity), this))); AddMethod(new ::grpc::internal::RpcServiceMethod( - AdminService_method_names[42], + AdminService_method_names[43], ::grpc::internal::RpcMethod::NORMAL_RPC, new ::grpc::internal::RpcMethodHandler< AdminService::Service, ::flyteidl::admin::NamedEntityUpdateRequest, ::flyteidl::admin::NamedEntityUpdateResponse>( std::mem_fn(&AdminService::Service::UpdateNamedEntity), this))); @@ -1598,6 +1633,13 @@ ::grpc::Status AdminService::Service::ListWorkflows(::grpc::ServerContext* conte return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); } +::grpc::Status AdminService::Service::UpdateWorkflow(::grpc::ServerContext* context, const ::flyteidl::admin::WorkflowUpdateRequest* request, ::flyteidl::admin::WorkflowUpdateResponse* response) { + (void) context; + (void) request; + (void) response; + return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); +} + ::grpc::Status AdminService::Service::CreateLaunchPlan(::grpc::ServerContext* context, const ::flyteidl::admin::LaunchPlanCreateRequest* request, ::flyteidl::admin::LaunchPlanCreateResponse* response) { (void) context; (void) request; diff --git a/flyteidl/gen/pb-cpp/flyteidl/service/admin.grpc.pb.h b/flyteidl/gen/pb-cpp/flyteidl/service/admin.grpc.pb.h index bb29b91a096..f5f26f85169 100644 --- a/flyteidl/gen/pb-cpp/flyteidl/service/admin.grpc.pb.h +++ b/flyteidl/gen/pb-cpp/flyteidl/service/admin.grpc.pb.h @@ -106,6 +106,13 @@ class AdminService final { std::unique_ptr< ::grpc::ClientAsyncResponseReaderInterface< ::flyteidl::admin::WorkflowList>> PrepareAsyncListWorkflows(::grpc::ClientContext* context, const ::flyteidl::admin::ResourceListRequest& request, ::grpc::CompletionQueue* cq) { return std::unique_ptr< ::grpc::ClientAsyncResponseReaderInterface< ::flyteidl::admin::WorkflowList>>(PrepareAsyncListWorkflowsRaw(context, request, cq)); } + virtual ::grpc::Status UpdateWorkflow(::grpc::ClientContext* context, const ::flyteidl::admin::WorkflowUpdateRequest& request, ::flyteidl::admin::WorkflowUpdateResponse* response) = 0; + std::unique_ptr< ::grpc::ClientAsyncResponseReaderInterface< ::flyteidl::admin::WorkflowUpdateResponse>> AsyncUpdateWorkflow(::grpc::ClientContext* context, const ::flyteidl::admin::WorkflowUpdateRequest& request, ::grpc::CompletionQueue* cq) { + return std::unique_ptr< ::grpc::ClientAsyncResponseReaderInterface< ::flyteidl::admin::WorkflowUpdateResponse>>(AsyncUpdateWorkflowRaw(context, request, cq)); + } + std::unique_ptr< ::grpc::ClientAsyncResponseReaderInterface< ::flyteidl::admin::WorkflowUpdateResponse>> PrepareAsyncUpdateWorkflow(::grpc::ClientContext* context, const ::flyteidl::admin::WorkflowUpdateRequest& request, ::grpc::CompletionQueue* cq) { + return std::unique_ptr< ::grpc::ClientAsyncResponseReaderInterface< ::flyteidl::admin::WorkflowUpdateResponse>>(PrepareAsyncUpdateWorkflowRaw(context, request, cq)); + } virtual ::grpc::Status CreateLaunchPlan(::grpc::ClientContext* context, const ::flyteidl::admin::LaunchPlanCreateRequest& request, ::flyteidl::admin::LaunchPlanCreateResponse* response) = 0; std::unique_ptr< ::grpc::ClientAsyncResponseReaderInterface< ::flyteidl::admin::LaunchPlanCreateResponse>> AsyncCreateLaunchPlan(::grpc::ClientContext* context, const ::flyteidl::admin::LaunchPlanCreateRequest& request, ::grpc::CompletionQueue* cq) { return std::unique_ptr< ::grpc::ClientAsyncResponseReaderInterface< ::flyteidl::admin::LaunchPlanCreateResponse>>(AsyncCreateLaunchPlanRaw(context, request, cq)); @@ -386,6 +393,10 @@ class AdminService final { virtual void ListWorkflows(::grpc::ClientContext* context, const ::grpc::ByteBuffer* request, ::flyteidl::admin::WorkflowList* response, std::function) = 0; virtual void ListWorkflows(::grpc::ClientContext* context, const ::flyteidl::admin::ResourceListRequest* request, ::flyteidl::admin::WorkflowList* response, ::grpc::experimental::ClientUnaryReactor* reactor) = 0; virtual void ListWorkflows(::grpc::ClientContext* context, const ::grpc::ByteBuffer* request, ::flyteidl::admin::WorkflowList* response, ::grpc::experimental::ClientUnaryReactor* reactor) = 0; + virtual void UpdateWorkflow(::grpc::ClientContext* context, const ::flyteidl::admin::WorkflowUpdateRequest* request, ::flyteidl::admin::WorkflowUpdateResponse* response, std::function) = 0; + virtual void UpdateWorkflow(::grpc::ClientContext* context, const ::grpc::ByteBuffer* request, ::flyteidl::admin::WorkflowUpdateResponse* response, std::function) = 0; + virtual void UpdateWorkflow(::grpc::ClientContext* context, const ::flyteidl::admin::WorkflowUpdateRequest* request, ::flyteidl::admin::WorkflowUpdateResponse* response, ::grpc::experimental::ClientUnaryReactor* reactor) = 0; + virtual void UpdateWorkflow(::grpc::ClientContext* context, const ::grpc::ByteBuffer* request, ::flyteidl::admin::WorkflowUpdateResponse* response, ::grpc::experimental::ClientUnaryReactor* reactor) = 0; virtual void CreateLaunchPlan(::grpc::ClientContext* context, const ::flyteidl::admin::LaunchPlanCreateRequest* request, ::flyteidl::admin::LaunchPlanCreateResponse* response, std::function) = 0; virtual void CreateLaunchPlan(::grpc::ClientContext* context, const ::grpc::ByteBuffer* request, ::flyteidl::admin::LaunchPlanCreateResponse* response, std::function) = 0; virtual void CreateLaunchPlan(::grpc::ClientContext* context, const ::flyteidl::admin::LaunchPlanCreateRequest* request, ::flyteidl::admin::LaunchPlanCreateResponse* response, ::grpc::experimental::ClientUnaryReactor* reactor) = 0; @@ -545,6 +556,8 @@ class AdminService final { virtual ::grpc::ClientAsyncResponseReaderInterface< ::flyteidl::admin::NamedEntityIdentifierList>* PrepareAsyncListWorkflowIdsRaw(::grpc::ClientContext* context, const ::flyteidl::admin::NamedEntityIdentifierListRequest& request, ::grpc::CompletionQueue* cq) = 0; virtual ::grpc::ClientAsyncResponseReaderInterface< ::flyteidl::admin::WorkflowList>* AsyncListWorkflowsRaw(::grpc::ClientContext* context, const ::flyteidl::admin::ResourceListRequest& request, ::grpc::CompletionQueue* cq) = 0; virtual ::grpc::ClientAsyncResponseReaderInterface< ::flyteidl::admin::WorkflowList>* PrepareAsyncListWorkflowsRaw(::grpc::ClientContext* context, const ::flyteidl::admin::ResourceListRequest& request, ::grpc::CompletionQueue* cq) = 0; + virtual ::grpc::ClientAsyncResponseReaderInterface< ::flyteidl::admin::WorkflowUpdateResponse>* AsyncUpdateWorkflowRaw(::grpc::ClientContext* context, const ::flyteidl::admin::WorkflowUpdateRequest& request, ::grpc::CompletionQueue* cq) = 0; + virtual ::grpc::ClientAsyncResponseReaderInterface< ::flyteidl::admin::WorkflowUpdateResponse>* PrepareAsyncUpdateWorkflowRaw(::grpc::ClientContext* context, const ::flyteidl::admin::WorkflowUpdateRequest& request, ::grpc::CompletionQueue* cq) = 0; virtual ::grpc::ClientAsyncResponseReaderInterface< ::flyteidl::admin::LaunchPlanCreateResponse>* AsyncCreateLaunchPlanRaw(::grpc::ClientContext* context, const ::flyteidl::admin::LaunchPlanCreateRequest& request, ::grpc::CompletionQueue* cq) = 0; virtual ::grpc::ClientAsyncResponseReaderInterface< ::flyteidl::admin::LaunchPlanCreateResponse>* PrepareAsyncCreateLaunchPlanRaw(::grpc::ClientContext* context, const ::flyteidl::admin::LaunchPlanCreateRequest& request, ::grpc::CompletionQueue* cq) = 0; virtual ::grpc::ClientAsyncResponseReaderInterface< ::flyteidl::admin::LaunchPlan>* AsyncGetLaunchPlanRaw(::grpc::ClientContext* context, const ::flyteidl::admin::ObjectGetRequest& request, ::grpc::CompletionQueue* cq) = 0; @@ -675,6 +688,13 @@ class AdminService final { std::unique_ptr< ::grpc::ClientAsyncResponseReader< ::flyteidl::admin::WorkflowList>> PrepareAsyncListWorkflows(::grpc::ClientContext* context, const ::flyteidl::admin::ResourceListRequest& request, ::grpc::CompletionQueue* cq) { return std::unique_ptr< ::grpc::ClientAsyncResponseReader< ::flyteidl::admin::WorkflowList>>(PrepareAsyncListWorkflowsRaw(context, request, cq)); } + ::grpc::Status UpdateWorkflow(::grpc::ClientContext* context, const ::flyteidl::admin::WorkflowUpdateRequest& request, ::flyteidl::admin::WorkflowUpdateResponse* response) override; + std::unique_ptr< ::grpc::ClientAsyncResponseReader< ::flyteidl::admin::WorkflowUpdateResponse>> AsyncUpdateWorkflow(::grpc::ClientContext* context, const ::flyteidl::admin::WorkflowUpdateRequest& request, ::grpc::CompletionQueue* cq) { + return std::unique_ptr< ::grpc::ClientAsyncResponseReader< ::flyteidl::admin::WorkflowUpdateResponse>>(AsyncUpdateWorkflowRaw(context, request, cq)); + } + std::unique_ptr< ::grpc::ClientAsyncResponseReader< ::flyteidl::admin::WorkflowUpdateResponse>> PrepareAsyncUpdateWorkflow(::grpc::ClientContext* context, const ::flyteidl::admin::WorkflowUpdateRequest& request, ::grpc::CompletionQueue* cq) { + return std::unique_ptr< ::grpc::ClientAsyncResponseReader< ::flyteidl::admin::WorkflowUpdateResponse>>(PrepareAsyncUpdateWorkflowRaw(context, request, cq)); + } ::grpc::Status CreateLaunchPlan(::grpc::ClientContext* context, const ::flyteidl::admin::LaunchPlanCreateRequest& request, ::flyteidl::admin::LaunchPlanCreateResponse* response) override; std::unique_ptr< ::grpc::ClientAsyncResponseReader< ::flyteidl::admin::LaunchPlanCreateResponse>> AsyncCreateLaunchPlan(::grpc::ClientContext* context, const ::flyteidl::admin::LaunchPlanCreateRequest& request, ::grpc::CompletionQueue* cq) { return std::unique_ptr< ::grpc::ClientAsyncResponseReader< ::flyteidl::admin::LaunchPlanCreateResponse>>(AsyncCreateLaunchPlanRaw(context, request, cq)); @@ -955,6 +975,10 @@ class AdminService final { void ListWorkflows(::grpc::ClientContext* context, const ::grpc::ByteBuffer* request, ::flyteidl::admin::WorkflowList* response, std::function) override; void ListWorkflows(::grpc::ClientContext* context, const ::flyteidl::admin::ResourceListRequest* request, ::flyteidl::admin::WorkflowList* response, ::grpc::experimental::ClientUnaryReactor* reactor) override; void ListWorkflows(::grpc::ClientContext* context, const ::grpc::ByteBuffer* request, ::flyteidl::admin::WorkflowList* response, ::grpc::experimental::ClientUnaryReactor* reactor) override; + void UpdateWorkflow(::grpc::ClientContext* context, const ::flyteidl::admin::WorkflowUpdateRequest* request, ::flyteidl::admin::WorkflowUpdateResponse* response, std::function) override; + void UpdateWorkflow(::grpc::ClientContext* context, const ::grpc::ByteBuffer* request, ::flyteidl::admin::WorkflowUpdateResponse* response, std::function) override; + void UpdateWorkflow(::grpc::ClientContext* context, const ::flyteidl::admin::WorkflowUpdateRequest* request, ::flyteidl::admin::WorkflowUpdateResponse* response, ::grpc::experimental::ClientUnaryReactor* reactor) override; + void UpdateWorkflow(::grpc::ClientContext* context, const ::grpc::ByteBuffer* request, ::flyteidl::admin::WorkflowUpdateResponse* response, ::grpc::experimental::ClientUnaryReactor* reactor) override; void CreateLaunchPlan(::grpc::ClientContext* context, const ::flyteidl::admin::LaunchPlanCreateRequest* request, ::flyteidl::admin::LaunchPlanCreateResponse* response, std::function) override; void CreateLaunchPlan(::grpc::ClientContext* context, const ::grpc::ByteBuffer* request, ::flyteidl::admin::LaunchPlanCreateResponse* response, std::function) override; void CreateLaunchPlan(::grpc::ClientContext* context, const ::flyteidl::admin::LaunchPlanCreateRequest* request, ::flyteidl::admin::LaunchPlanCreateResponse* response, ::grpc::experimental::ClientUnaryReactor* reactor) override; @@ -1122,6 +1146,8 @@ class AdminService final { ::grpc::ClientAsyncResponseReader< ::flyteidl::admin::NamedEntityIdentifierList>* PrepareAsyncListWorkflowIdsRaw(::grpc::ClientContext* context, const ::flyteidl::admin::NamedEntityIdentifierListRequest& request, ::grpc::CompletionQueue* cq) override; ::grpc::ClientAsyncResponseReader< ::flyteidl::admin::WorkflowList>* AsyncListWorkflowsRaw(::grpc::ClientContext* context, const ::flyteidl::admin::ResourceListRequest& request, ::grpc::CompletionQueue* cq) override; ::grpc::ClientAsyncResponseReader< ::flyteidl::admin::WorkflowList>* PrepareAsyncListWorkflowsRaw(::grpc::ClientContext* context, const ::flyteidl::admin::ResourceListRequest& request, ::grpc::CompletionQueue* cq) override; + ::grpc::ClientAsyncResponseReader< ::flyteidl::admin::WorkflowUpdateResponse>* AsyncUpdateWorkflowRaw(::grpc::ClientContext* context, const ::flyteidl::admin::WorkflowUpdateRequest& request, ::grpc::CompletionQueue* cq) override; + ::grpc::ClientAsyncResponseReader< ::flyteidl::admin::WorkflowUpdateResponse>* PrepareAsyncUpdateWorkflowRaw(::grpc::ClientContext* context, const ::flyteidl::admin::WorkflowUpdateRequest& request, ::grpc::CompletionQueue* cq) override; ::grpc::ClientAsyncResponseReader< ::flyteidl::admin::LaunchPlanCreateResponse>* AsyncCreateLaunchPlanRaw(::grpc::ClientContext* context, const ::flyteidl::admin::LaunchPlanCreateRequest& request, ::grpc::CompletionQueue* cq) override; ::grpc::ClientAsyncResponseReader< ::flyteidl::admin::LaunchPlanCreateResponse>* PrepareAsyncCreateLaunchPlanRaw(::grpc::ClientContext* context, const ::flyteidl::admin::LaunchPlanCreateRequest& request, ::grpc::CompletionQueue* cq) override; ::grpc::ClientAsyncResponseReader< ::flyteidl::admin::LaunchPlan>* AsyncGetLaunchPlanRaw(::grpc::ClientContext* context, const ::flyteidl::admin::ObjectGetRequest& request, ::grpc::CompletionQueue* cq) override; @@ -1200,6 +1226,7 @@ class AdminService final { const ::grpc::internal::RpcMethod rpcmethod_GetWorkflow_; const ::grpc::internal::RpcMethod rpcmethod_ListWorkflowIds_; const ::grpc::internal::RpcMethod rpcmethod_ListWorkflows_; + const ::grpc::internal::RpcMethod rpcmethod_UpdateWorkflow_; const ::grpc::internal::RpcMethod rpcmethod_CreateLaunchPlan_; const ::grpc::internal::RpcMethod rpcmethod_GetLaunchPlan_; const ::grpc::internal::RpcMethod rpcmethod_GetActiveLaunchPlan_; @@ -1250,6 +1277,7 @@ class AdminService final { virtual ::grpc::Status GetWorkflow(::grpc::ServerContext* context, const ::flyteidl::admin::ObjectGetRequest* request, ::flyteidl::admin::Workflow* response); virtual ::grpc::Status ListWorkflowIds(::grpc::ServerContext* context, const ::flyteidl::admin::NamedEntityIdentifierListRequest* request, ::flyteidl::admin::NamedEntityIdentifierList* response); virtual ::grpc::Status ListWorkflows(::grpc::ServerContext* context, const ::flyteidl::admin::ResourceListRequest* request, ::flyteidl::admin::WorkflowList* response); + virtual ::grpc::Status UpdateWorkflow(::grpc::ServerContext* context, const ::flyteidl::admin::WorkflowUpdateRequest* request, ::flyteidl::admin::WorkflowUpdateResponse* response); virtual ::grpc::Status CreateLaunchPlan(::grpc::ServerContext* context, const ::flyteidl::admin::LaunchPlanCreateRequest* request, ::flyteidl::admin::LaunchPlanCreateResponse* response); virtual ::grpc::Status GetLaunchPlan(::grpc::ServerContext* context, const ::flyteidl::admin::ObjectGetRequest* request, ::flyteidl::admin::LaunchPlan* response); virtual ::grpc::Status GetActiveLaunchPlan(::grpc::ServerContext* context, const ::flyteidl::admin::ActiveLaunchPlanRequest* request, ::flyteidl::admin::LaunchPlan* response); @@ -1447,12 +1475,32 @@ class AdminService final { } }; template + class WithAsyncMethod_UpdateWorkflow : public BaseClass { + private: + void BaseClassMustBeDerivedFromService(const Service *service) {} + public: + WithAsyncMethod_UpdateWorkflow() { + ::grpc::Service::MarkMethodAsync(8); + } + ~WithAsyncMethod_UpdateWorkflow() override { + BaseClassMustBeDerivedFromService(this); + } + // disable synchronous version of this method + ::grpc::Status UpdateWorkflow(::grpc::ServerContext* context, const ::flyteidl::admin::WorkflowUpdateRequest* request, ::flyteidl::admin::WorkflowUpdateResponse* response) override { + abort(); + return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); + } + void RequestUpdateWorkflow(::grpc::ServerContext* context, ::flyteidl::admin::WorkflowUpdateRequest* request, ::grpc::ServerAsyncResponseWriter< ::flyteidl::admin::WorkflowUpdateResponse>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) { + ::grpc::Service::RequestAsyncUnary(8, context, request, response, new_call_cq, notification_cq, tag); + } + }; + template class WithAsyncMethod_CreateLaunchPlan : public BaseClass { private: void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithAsyncMethod_CreateLaunchPlan() { - ::grpc::Service::MarkMethodAsync(8); + ::grpc::Service::MarkMethodAsync(9); } ~WithAsyncMethod_CreateLaunchPlan() override { BaseClassMustBeDerivedFromService(this); @@ -1463,7 +1511,7 @@ class AdminService final { return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); } void RequestCreateLaunchPlan(::grpc::ServerContext* context, ::flyteidl::admin::LaunchPlanCreateRequest* request, ::grpc::ServerAsyncResponseWriter< ::flyteidl::admin::LaunchPlanCreateResponse>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) { - ::grpc::Service::RequestAsyncUnary(8, context, request, response, new_call_cq, notification_cq, tag); + ::grpc::Service::RequestAsyncUnary(9, context, request, response, new_call_cq, notification_cq, tag); } }; template @@ -1472,7 +1520,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithAsyncMethod_GetLaunchPlan() { - ::grpc::Service::MarkMethodAsync(9); + ::grpc::Service::MarkMethodAsync(10); } ~WithAsyncMethod_GetLaunchPlan() override { BaseClassMustBeDerivedFromService(this); @@ -1483,7 +1531,7 @@ class AdminService final { return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); } void RequestGetLaunchPlan(::grpc::ServerContext* context, ::flyteidl::admin::ObjectGetRequest* request, ::grpc::ServerAsyncResponseWriter< ::flyteidl::admin::LaunchPlan>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) { - ::grpc::Service::RequestAsyncUnary(9, context, request, response, new_call_cq, notification_cq, tag); + ::grpc::Service::RequestAsyncUnary(10, context, request, response, new_call_cq, notification_cq, tag); } }; template @@ -1492,7 +1540,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithAsyncMethod_GetActiveLaunchPlan() { - ::grpc::Service::MarkMethodAsync(10); + ::grpc::Service::MarkMethodAsync(11); } ~WithAsyncMethod_GetActiveLaunchPlan() override { BaseClassMustBeDerivedFromService(this); @@ -1503,7 +1551,7 @@ class AdminService final { return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); } void RequestGetActiveLaunchPlan(::grpc::ServerContext* context, ::flyteidl::admin::ActiveLaunchPlanRequest* request, ::grpc::ServerAsyncResponseWriter< ::flyteidl::admin::LaunchPlan>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) { - ::grpc::Service::RequestAsyncUnary(10, context, request, response, new_call_cq, notification_cq, tag); + ::grpc::Service::RequestAsyncUnary(11, context, request, response, new_call_cq, notification_cq, tag); } }; template @@ -1512,7 +1560,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithAsyncMethod_ListActiveLaunchPlans() { - ::grpc::Service::MarkMethodAsync(11); + ::grpc::Service::MarkMethodAsync(12); } ~WithAsyncMethod_ListActiveLaunchPlans() override { BaseClassMustBeDerivedFromService(this); @@ -1523,7 +1571,7 @@ class AdminService final { return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); } void RequestListActiveLaunchPlans(::grpc::ServerContext* context, ::flyteidl::admin::ActiveLaunchPlanListRequest* request, ::grpc::ServerAsyncResponseWriter< ::flyteidl::admin::LaunchPlanList>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) { - ::grpc::Service::RequestAsyncUnary(11, context, request, response, new_call_cq, notification_cq, tag); + ::grpc::Service::RequestAsyncUnary(12, context, request, response, new_call_cq, notification_cq, tag); } }; template @@ -1532,7 +1580,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithAsyncMethod_ListLaunchPlanIds() { - ::grpc::Service::MarkMethodAsync(12); + ::grpc::Service::MarkMethodAsync(13); } ~WithAsyncMethod_ListLaunchPlanIds() override { BaseClassMustBeDerivedFromService(this); @@ -1543,7 +1591,7 @@ class AdminService final { return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); } void RequestListLaunchPlanIds(::grpc::ServerContext* context, ::flyteidl::admin::NamedEntityIdentifierListRequest* request, ::grpc::ServerAsyncResponseWriter< ::flyteidl::admin::NamedEntityIdentifierList>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) { - ::grpc::Service::RequestAsyncUnary(12, context, request, response, new_call_cq, notification_cq, tag); + ::grpc::Service::RequestAsyncUnary(13, context, request, response, new_call_cq, notification_cq, tag); } }; template @@ -1552,7 +1600,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithAsyncMethod_ListLaunchPlans() { - ::grpc::Service::MarkMethodAsync(13); + ::grpc::Service::MarkMethodAsync(14); } ~WithAsyncMethod_ListLaunchPlans() override { BaseClassMustBeDerivedFromService(this); @@ -1563,7 +1611,7 @@ class AdminService final { return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); } void RequestListLaunchPlans(::grpc::ServerContext* context, ::flyteidl::admin::ResourceListRequest* request, ::grpc::ServerAsyncResponseWriter< ::flyteidl::admin::LaunchPlanList>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) { - ::grpc::Service::RequestAsyncUnary(13, context, request, response, new_call_cq, notification_cq, tag); + ::grpc::Service::RequestAsyncUnary(14, context, request, response, new_call_cq, notification_cq, tag); } }; template @@ -1572,7 +1620,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithAsyncMethod_UpdateLaunchPlan() { - ::grpc::Service::MarkMethodAsync(14); + ::grpc::Service::MarkMethodAsync(15); } ~WithAsyncMethod_UpdateLaunchPlan() override { BaseClassMustBeDerivedFromService(this); @@ -1583,7 +1631,7 @@ class AdminService final { return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); } void RequestUpdateLaunchPlan(::grpc::ServerContext* context, ::flyteidl::admin::LaunchPlanUpdateRequest* request, ::grpc::ServerAsyncResponseWriter< ::flyteidl::admin::LaunchPlanUpdateResponse>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) { - ::grpc::Service::RequestAsyncUnary(14, context, request, response, new_call_cq, notification_cq, tag); + ::grpc::Service::RequestAsyncUnary(15, context, request, response, new_call_cq, notification_cq, tag); } }; template @@ -1592,7 +1640,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithAsyncMethod_CreateExecution() { - ::grpc::Service::MarkMethodAsync(15); + ::grpc::Service::MarkMethodAsync(16); } ~WithAsyncMethod_CreateExecution() override { BaseClassMustBeDerivedFromService(this); @@ -1603,7 +1651,7 @@ class AdminService final { return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); } void RequestCreateExecution(::grpc::ServerContext* context, ::flyteidl::admin::ExecutionCreateRequest* request, ::grpc::ServerAsyncResponseWriter< ::flyteidl::admin::ExecutionCreateResponse>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) { - ::grpc::Service::RequestAsyncUnary(15, context, request, response, new_call_cq, notification_cq, tag); + ::grpc::Service::RequestAsyncUnary(16, context, request, response, new_call_cq, notification_cq, tag); } }; template @@ -1612,7 +1660,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithAsyncMethod_RelaunchExecution() { - ::grpc::Service::MarkMethodAsync(16); + ::grpc::Service::MarkMethodAsync(17); } ~WithAsyncMethod_RelaunchExecution() override { BaseClassMustBeDerivedFromService(this); @@ -1623,7 +1671,7 @@ class AdminService final { return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); } void RequestRelaunchExecution(::grpc::ServerContext* context, ::flyteidl::admin::ExecutionRelaunchRequest* request, ::grpc::ServerAsyncResponseWriter< ::flyteidl::admin::ExecutionCreateResponse>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) { - ::grpc::Service::RequestAsyncUnary(16, context, request, response, new_call_cq, notification_cq, tag); + ::grpc::Service::RequestAsyncUnary(17, context, request, response, new_call_cq, notification_cq, tag); } }; template @@ -1632,7 +1680,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithAsyncMethod_GetExecution() { - ::grpc::Service::MarkMethodAsync(17); + ::grpc::Service::MarkMethodAsync(18); } ~WithAsyncMethod_GetExecution() override { BaseClassMustBeDerivedFromService(this); @@ -1643,7 +1691,7 @@ class AdminService final { return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); } void RequestGetExecution(::grpc::ServerContext* context, ::flyteidl::admin::WorkflowExecutionGetRequest* request, ::grpc::ServerAsyncResponseWriter< ::flyteidl::admin::Execution>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) { - ::grpc::Service::RequestAsyncUnary(17, context, request, response, new_call_cq, notification_cq, tag); + ::grpc::Service::RequestAsyncUnary(18, context, request, response, new_call_cq, notification_cq, tag); } }; template @@ -1652,7 +1700,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithAsyncMethod_GetExecutionData() { - ::grpc::Service::MarkMethodAsync(18); + ::grpc::Service::MarkMethodAsync(19); } ~WithAsyncMethod_GetExecutionData() override { BaseClassMustBeDerivedFromService(this); @@ -1663,7 +1711,7 @@ class AdminService final { return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); } void RequestGetExecutionData(::grpc::ServerContext* context, ::flyteidl::admin::WorkflowExecutionGetDataRequest* request, ::grpc::ServerAsyncResponseWriter< ::flyteidl::admin::WorkflowExecutionGetDataResponse>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) { - ::grpc::Service::RequestAsyncUnary(18, context, request, response, new_call_cq, notification_cq, tag); + ::grpc::Service::RequestAsyncUnary(19, context, request, response, new_call_cq, notification_cq, tag); } }; template @@ -1672,7 +1720,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithAsyncMethod_ListExecutions() { - ::grpc::Service::MarkMethodAsync(19); + ::grpc::Service::MarkMethodAsync(20); } ~WithAsyncMethod_ListExecutions() override { BaseClassMustBeDerivedFromService(this); @@ -1683,7 +1731,7 @@ class AdminService final { return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); } void RequestListExecutions(::grpc::ServerContext* context, ::flyteidl::admin::ResourceListRequest* request, ::grpc::ServerAsyncResponseWriter< ::flyteidl::admin::ExecutionList>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) { - ::grpc::Service::RequestAsyncUnary(19, context, request, response, new_call_cq, notification_cq, tag); + ::grpc::Service::RequestAsyncUnary(20, context, request, response, new_call_cq, notification_cq, tag); } }; template @@ -1692,7 +1740,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithAsyncMethod_TerminateExecution() { - ::grpc::Service::MarkMethodAsync(20); + ::grpc::Service::MarkMethodAsync(21); } ~WithAsyncMethod_TerminateExecution() override { BaseClassMustBeDerivedFromService(this); @@ -1703,7 +1751,7 @@ class AdminService final { return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); } void RequestTerminateExecution(::grpc::ServerContext* context, ::flyteidl::admin::ExecutionTerminateRequest* request, ::grpc::ServerAsyncResponseWriter< ::flyteidl::admin::ExecutionTerminateResponse>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) { - ::grpc::Service::RequestAsyncUnary(20, context, request, response, new_call_cq, notification_cq, tag); + ::grpc::Service::RequestAsyncUnary(21, context, request, response, new_call_cq, notification_cq, tag); } }; template @@ -1712,7 +1760,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithAsyncMethod_GetNodeExecution() { - ::grpc::Service::MarkMethodAsync(21); + ::grpc::Service::MarkMethodAsync(22); } ~WithAsyncMethod_GetNodeExecution() override { BaseClassMustBeDerivedFromService(this); @@ -1723,7 +1771,7 @@ class AdminService final { return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); } void RequestGetNodeExecution(::grpc::ServerContext* context, ::flyteidl::admin::NodeExecutionGetRequest* request, ::grpc::ServerAsyncResponseWriter< ::flyteidl::admin::NodeExecution>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) { - ::grpc::Service::RequestAsyncUnary(21, context, request, response, new_call_cq, notification_cq, tag); + ::grpc::Service::RequestAsyncUnary(22, context, request, response, new_call_cq, notification_cq, tag); } }; template @@ -1732,7 +1780,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithAsyncMethod_ListNodeExecutions() { - ::grpc::Service::MarkMethodAsync(22); + ::grpc::Service::MarkMethodAsync(23); } ~WithAsyncMethod_ListNodeExecutions() override { BaseClassMustBeDerivedFromService(this); @@ -1743,7 +1791,7 @@ class AdminService final { return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); } void RequestListNodeExecutions(::grpc::ServerContext* context, ::flyteidl::admin::NodeExecutionListRequest* request, ::grpc::ServerAsyncResponseWriter< ::flyteidl::admin::NodeExecutionList>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) { - ::grpc::Service::RequestAsyncUnary(22, context, request, response, new_call_cq, notification_cq, tag); + ::grpc::Service::RequestAsyncUnary(23, context, request, response, new_call_cq, notification_cq, tag); } }; template @@ -1752,7 +1800,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithAsyncMethod_ListNodeExecutionsForTask() { - ::grpc::Service::MarkMethodAsync(23); + ::grpc::Service::MarkMethodAsync(24); } ~WithAsyncMethod_ListNodeExecutionsForTask() override { BaseClassMustBeDerivedFromService(this); @@ -1763,7 +1811,7 @@ class AdminService final { return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); } void RequestListNodeExecutionsForTask(::grpc::ServerContext* context, ::flyteidl::admin::NodeExecutionForTaskListRequest* request, ::grpc::ServerAsyncResponseWriter< ::flyteidl::admin::NodeExecutionList>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) { - ::grpc::Service::RequestAsyncUnary(23, context, request, response, new_call_cq, notification_cq, tag); + ::grpc::Service::RequestAsyncUnary(24, context, request, response, new_call_cq, notification_cq, tag); } }; template @@ -1772,7 +1820,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithAsyncMethod_GetNodeExecutionData() { - ::grpc::Service::MarkMethodAsync(24); + ::grpc::Service::MarkMethodAsync(25); } ~WithAsyncMethod_GetNodeExecutionData() override { BaseClassMustBeDerivedFromService(this); @@ -1783,7 +1831,7 @@ class AdminService final { return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); } void RequestGetNodeExecutionData(::grpc::ServerContext* context, ::flyteidl::admin::NodeExecutionGetDataRequest* request, ::grpc::ServerAsyncResponseWriter< ::flyteidl::admin::NodeExecutionGetDataResponse>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) { - ::grpc::Service::RequestAsyncUnary(24, context, request, response, new_call_cq, notification_cq, tag); + ::grpc::Service::RequestAsyncUnary(25, context, request, response, new_call_cq, notification_cq, tag); } }; template @@ -1792,7 +1840,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithAsyncMethod_RegisterProject() { - ::grpc::Service::MarkMethodAsync(25); + ::grpc::Service::MarkMethodAsync(26); } ~WithAsyncMethod_RegisterProject() override { BaseClassMustBeDerivedFromService(this); @@ -1803,7 +1851,7 @@ class AdminService final { return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); } void RequestRegisterProject(::grpc::ServerContext* context, ::flyteidl::admin::ProjectRegisterRequest* request, ::grpc::ServerAsyncResponseWriter< ::flyteidl::admin::ProjectRegisterResponse>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) { - ::grpc::Service::RequestAsyncUnary(25, context, request, response, new_call_cq, notification_cq, tag); + ::grpc::Service::RequestAsyncUnary(26, context, request, response, new_call_cq, notification_cq, tag); } }; template @@ -1812,7 +1860,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithAsyncMethod_ListProjects() { - ::grpc::Service::MarkMethodAsync(26); + ::grpc::Service::MarkMethodAsync(27); } ~WithAsyncMethod_ListProjects() override { BaseClassMustBeDerivedFromService(this); @@ -1823,7 +1871,7 @@ class AdminService final { return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); } void RequestListProjects(::grpc::ServerContext* context, ::flyteidl::admin::ProjectListRequest* request, ::grpc::ServerAsyncResponseWriter< ::flyteidl::admin::Projects>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) { - ::grpc::Service::RequestAsyncUnary(26, context, request, response, new_call_cq, notification_cq, tag); + ::grpc::Service::RequestAsyncUnary(27, context, request, response, new_call_cq, notification_cq, tag); } }; template @@ -1832,7 +1880,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithAsyncMethod_CreateWorkflowEvent() { - ::grpc::Service::MarkMethodAsync(27); + ::grpc::Service::MarkMethodAsync(28); } ~WithAsyncMethod_CreateWorkflowEvent() override { BaseClassMustBeDerivedFromService(this); @@ -1843,7 +1891,7 @@ class AdminService final { return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); } void RequestCreateWorkflowEvent(::grpc::ServerContext* context, ::flyteidl::admin::WorkflowExecutionEventRequest* request, ::grpc::ServerAsyncResponseWriter< ::flyteidl::admin::WorkflowExecutionEventResponse>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) { - ::grpc::Service::RequestAsyncUnary(27, context, request, response, new_call_cq, notification_cq, tag); + ::grpc::Service::RequestAsyncUnary(28, context, request, response, new_call_cq, notification_cq, tag); } }; template @@ -1852,7 +1900,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithAsyncMethod_CreateNodeEvent() { - ::grpc::Service::MarkMethodAsync(28); + ::grpc::Service::MarkMethodAsync(29); } ~WithAsyncMethod_CreateNodeEvent() override { BaseClassMustBeDerivedFromService(this); @@ -1863,7 +1911,7 @@ class AdminService final { return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); } void RequestCreateNodeEvent(::grpc::ServerContext* context, ::flyteidl::admin::NodeExecutionEventRequest* request, ::grpc::ServerAsyncResponseWriter< ::flyteidl::admin::NodeExecutionEventResponse>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) { - ::grpc::Service::RequestAsyncUnary(28, context, request, response, new_call_cq, notification_cq, tag); + ::grpc::Service::RequestAsyncUnary(29, context, request, response, new_call_cq, notification_cq, tag); } }; template @@ -1872,7 +1920,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithAsyncMethod_CreateTaskEvent() { - ::grpc::Service::MarkMethodAsync(29); + ::grpc::Service::MarkMethodAsync(30); } ~WithAsyncMethod_CreateTaskEvent() override { BaseClassMustBeDerivedFromService(this); @@ -1883,7 +1931,7 @@ class AdminService final { return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); } void RequestCreateTaskEvent(::grpc::ServerContext* context, ::flyteidl::admin::TaskExecutionEventRequest* request, ::grpc::ServerAsyncResponseWriter< ::flyteidl::admin::TaskExecutionEventResponse>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) { - ::grpc::Service::RequestAsyncUnary(29, context, request, response, new_call_cq, notification_cq, tag); + ::grpc::Service::RequestAsyncUnary(30, context, request, response, new_call_cq, notification_cq, tag); } }; template @@ -1892,7 +1940,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithAsyncMethod_GetTaskExecution() { - ::grpc::Service::MarkMethodAsync(30); + ::grpc::Service::MarkMethodAsync(31); } ~WithAsyncMethod_GetTaskExecution() override { BaseClassMustBeDerivedFromService(this); @@ -1903,7 +1951,7 @@ class AdminService final { return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); } void RequestGetTaskExecution(::grpc::ServerContext* context, ::flyteidl::admin::TaskExecutionGetRequest* request, ::grpc::ServerAsyncResponseWriter< ::flyteidl::admin::TaskExecution>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) { - ::grpc::Service::RequestAsyncUnary(30, context, request, response, new_call_cq, notification_cq, tag); + ::grpc::Service::RequestAsyncUnary(31, context, request, response, new_call_cq, notification_cq, tag); } }; template @@ -1912,7 +1960,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithAsyncMethod_ListTaskExecutions() { - ::grpc::Service::MarkMethodAsync(31); + ::grpc::Service::MarkMethodAsync(32); } ~WithAsyncMethod_ListTaskExecutions() override { BaseClassMustBeDerivedFromService(this); @@ -1923,7 +1971,7 @@ class AdminService final { return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); } void RequestListTaskExecutions(::grpc::ServerContext* context, ::flyteidl::admin::TaskExecutionListRequest* request, ::grpc::ServerAsyncResponseWriter< ::flyteidl::admin::TaskExecutionList>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) { - ::grpc::Service::RequestAsyncUnary(31, context, request, response, new_call_cq, notification_cq, tag); + ::grpc::Service::RequestAsyncUnary(32, context, request, response, new_call_cq, notification_cq, tag); } }; template @@ -1932,7 +1980,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithAsyncMethod_GetTaskExecutionData() { - ::grpc::Service::MarkMethodAsync(32); + ::grpc::Service::MarkMethodAsync(33); } ~WithAsyncMethod_GetTaskExecutionData() override { BaseClassMustBeDerivedFromService(this); @@ -1943,7 +1991,7 @@ class AdminService final { return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); } void RequestGetTaskExecutionData(::grpc::ServerContext* context, ::flyteidl::admin::TaskExecutionGetDataRequest* request, ::grpc::ServerAsyncResponseWriter< ::flyteidl::admin::TaskExecutionGetDataResponse>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) { - ::grpc::Service::RequestAsyncUnary(32, context, request, response, new_call_cq, notification_cq, tag); + ::grpc::Service::RequestAsyncUnary(33, context, request, response, new_call_cq, notification_cq, tag); } }; template @@ -1952,7 +2000,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithAsyncMethod_UpdateProjectDomainAttributes() { - ::grpc::Service::MarkMethodAsync(33); + ::grpc::Service::MarkMethodAsync(34); } ~WithAsyncMethod_UpdateProjectDomainAttributes() override { BaseClassMustBeDerivedFromService(this); @@ -1963,7 +2011,7 @@ class AdminService final { return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); } void RequestUpdateProjectDomainAttributes(::grpc::ServerContext* context, ::flyteidl::admin::ProjectDomainAttributesUpdateRequest* request, ::grpc::ServerAsyncResponseWriter< ::flyteidl::admin::ProjectDomainAttributesUpdateResponse>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) { - ::grpc::Service::RequestAsyncUnary(33, context, request, response, new_call_cq, notification_cq, tag); + ::grpc::Service::RequestAsyncUnary(34, context, request, response, new_call_cq, notification_cq, tag); } }; template @@ -1972,7 +2020,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithAsyncMethod_GetProjectDomainAttributes() { - ::grpc::Service::MarkMethodAsync(34); + ::grpc::Service::MarkMethodAsync(35); } ~WithAsyncMethod_GetProjectDomainAttributes() override { BaseClassMustBeDerivedFromService(this); @@ -1983,7 +2031,7 @@ class AdminService final { return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); } void RequestGetProjectDomainAttributes(::grpc::ServerContext* context, ::flyteidl::admin::ProjectDomainAttributesGetRequest* request, ::grpc::ServerAsyncResponseWriter< ::flyteidl::admin::ProjectDomainAttributesGetResponse>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) { - ::grpc::Service::RequestAsyncUnary(34, context, request, response, new_call_cq, notification_cq, tag); + ::grpc::Service::RequestAsyncUnary(35, context, request, response, new_call_cq, notification_cq, tag); } }; template @@ -1992,7 +2040,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithAsyncMethod_DeleteProjectDomainAttributes() { - ::grpc::Service::MarkMethodAsync(35); + ::grpc::Service::MarkMethodAsync(36); } ~WithAsyncMethod_DeleteProjectDomainAttributes() override { BaseClassMustBeDerivedFromService(this); @@ -2003,7 +2051,7 @@ class AdminService final { return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); } void RequestDeleteProjectDomainAttributes(::grpc::ServerContext* context, ::flyteidl::admin::ProjectDomainAttributesDeleteRequest* request, ::grpc::ServerAsyncResponseWriter< ::flyteidl::admin::ProjectDomainAttributesDeleteResponse>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) { - ::grpc::Service::RequestAsyncUnary(35, context, request, response, new_call_cq, notification_cq, tag); + ::grpc::Service::RequestAsyncUnary(36, context, request, response, new_call_cq, notification_cq, tag); } }; template @@ -2012,7 +2060,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithAsyncMethod_UpdateWorkflowAttributes() { - ::grpc::Service::MarkMethodAsync(36); + ::grpc::Service::MarkMethodAsync(37); } ~WithAsyncMethod_UpdateWorkflowAttributes() override { BaseClassMustBeDerivedFromService(this); @@ -2023,7 +2071,7 @@ class AdminService final { return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); } void RequestUpdateWorkflowAttributes(::grpc::ServerContext* context, ::flyteidl::admin::WorkflowAttributesUpdateRequest* request, ::grpc::ServerAsyncResponseWriter< ::flyteidl::admin::WorkflowAttributesUpdateResponse>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) { - ::grpc::Service::RequestAsyncUnary(36, context, request, response, new_call_cq, notification_cq, tag); + ::grpc::Service::RequestAsyncUnary(37, context, request, response, new_call_cq, notification_cq, tag); } }; template @@ -2032,7 +2080,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithAsyncMethod_GetWorkflowAttributes() { - ::grpc::Service::MarkMethodAsync(37); + ::grpc::Service::MarkMethodAsync(38); } ~WithAsyncMethod_GetWorkflowAttributes() override { BaseClassMustBeDerivedFromService(this); @@ -2043,7 +2091,7 @@ class AdminService final { return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); } void RequestGetWorkflowAttributes(::grpc::ServerContext* context, ::flyteidl::admin::WorkflowAttributesGetRequest* request, ::grpc::ServerAsyncResponseWriter< ::flyteidl::admin::WorkflowAttributesGetResponse>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) { - ::grpc::Service::RequestAsyncUnary(37, context, request, response, new_call_cq, notification_cq, tag); + ::grpc::Service::RequestAsyncUnary(38, context, request, response, new_call_cq, notification_cq, tag); } }; template @@ -2052,7 +2100,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithAsyncMethod_DeleteWorkflowAttributes() { - ::grpc::Service::MarkMethodAsync(38); + ::grpc::Service::MarkMethodAsync(39); } ~WithAsyncMethod_DeleteWorkflowAttributes() override { BaseClassMustBeDerivedFromService(this); @@ -2063,7 +2111,7 @@ class AdminService final { return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); } void RequestDeleteWorkflowAttributes(::grpc::ServerContext* context, ::flyteidl::admin::WorkflowAttributesDeleteRequest* request, ::grpc::ServerAsyncResponseWriter< ::flyteidl::admin::WorkflowAttributesDeleteResponse>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) { - ::grpc::Service::RequestAsyncUnary(38, context, request, response, new_call_cq, notification_cq, tag); + ::grpc::Service::RequestAsyncUnary(39, context, request, response, new_call_cq, notification_cq, tag); } }; template @@ -2072,7 +2120,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithAsyncMethod_ListMatchableAttributes() { - ::grpc::Service::MarkMethodAsync(39); + ::grpc::Service::MarkMethodAsync(40); } ~WithAsyncMethod_ListMatchableAttributes() override { BaseClassMustBeDerivedFromService(this); @@ -2083,7 +2131,7 @@ class AdminService final { return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); } void RequestListMatchableAttributes(::grpc::ServerContext* context, ::flyteidl::admin::ListMatchableAttributesRequest* request, ::grpc::ServerAsyncResponseWriter< ::flyteidl::admin::ListMatchableAttributesResponse>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) { - ::grpc::Service::RequestAsyncUnary(39, context, request, response, new_call_cq, notification_cq, tag); + ::grpc::Service::RequestAsyncUnary(40, context, request, response, new_call_cq, notification_cq, tag); } }; template @@ -2092,7 +2140,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithAsyncMethod_ListNamedEntities() { - ::grpc::Service::MarkMethodAsync(40); + ::grpc::Service::MarkMethodAsync(41); } ~WithAsyncMethod_ListNamedEntities() override { BaseClassMustBeDerivedFromService(this); @@ -2103,7 +2151,7 @@ class AdminService final { return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); } void RequestListNamedEntities(::grpc::ServerContext* context, ::flyteidl::admin::NamedEntityListRequest* request, ::grpc::ServerAsyncResponseWriter< ::flyteidl::admin::NamedEntityList>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) { - ::grpc::Service::RequestAsyncUnary(40, context, request, response, new_call_cq, notification_cq, tag); + ::grpc::Service::RequestAsyncUnary(41, context, request, response, new_call_cq, notification_cq, tag); } }; template @@ -2112,7 +2160,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithAsyncMethod_GetNamedEntity() { - ::grpc::Service::MarkMethodAsync(41); + ::grpc::Service::MarkMethodAsync(42); } ~WithAsyncMethod_GetNamedEntity() override { BaseClassMustBeDerivedFromService(this); @@ -2123,7 +2171,7 @@ class AdminService final { return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); } void RequestGetNamedEntity(::grpc::ServerContext* context, ::flyteidl::admin::NamedEntityGetRequest* request, ::grpc::ServerAsyncResponseWriter< ::flyteidl::admin::NamedEntity>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) { - ::grpc::Service::RequestAsyncUnary(41, context, request, response, new_call_cq, notification_cq, tag); + ::grpc::Service::RequestAsyncUnary(42, context, request, response, new_call_cq, notification_cq, tag); } }; template @@ -2132,7 +2180,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithAsyncMethod_UpdateNamedEntity() { - ::grpc::Service::MarkMethodAsync(42); + ::grpc::Service::MarkMethodAsync(43); } ~WithAsyncMethod_UpdateNamedEntity() override { BaseClassMustBeDerivedFromService(this); @@ -2143,10 +2191,10 @@ class AdminService final { return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); } void RequestUpdateNamedEntity(::grpc::ServerContext* context, ::flyteidl::admin::NamedEntityUpdateRequest* request, ::grpc::ServerAsyncResponseWriter< ::flyteidl::admin::NamedEntityUpdateResponse>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) { - ::grpc::Service::RequestAsyncUnary(42, context, request, response, new_call_cq, notification_cq, tag); + ::grpc::Service::RequestAsyncUnary(43, context, request, response, new_call_cq, notification_cq, tag); } }; - typedef WithAsyncMethod_CreateTask > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > AsyncService; + typedef WithAsyncMethod_CreateTask > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > AsyncService; template class ExperimentalWithCallbackMethod_CreateTask : public BaseClass { private: @@ -2396,12 +2444,43 @@ class AdminService final { virtual void ListWorkflows(::grpc::ServerContext* context, const ::flyteidl::admin::ResourceListRequest* request, ::flyteidl::admin::WorkflowList* response, ::grpc::experimental::ServerCallbackRpcController* controller) { controller->Finish(::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, "")); } }; template + class ExperimentalWithCallbackMethod_UpdateWorkflow : public BaseClass { + private: + void BaseClassMustBeDerivedFromService(const Service *service) {} + public: + ExperimentalWithCallbackMethod_UpdateWorkflow() { + ::grpc::Service::experimental().MarkMethodCallback(8, + new ::grpc::internal::CallbackUnaryHandler< ::flyteidl::admin::WorkflowUpdateRequest, ::flyteidl::admin::WorkflowUpdateResponse>( + [this](::grpc::ServerContext* context, + const ::flyteidl::admin::WorkflowUpdateRequest* request, + ::flyteidl::admin::WorkflowUpdateResponse* response, + ::grpc::experimental::ServerCallbackRpcController* controller) { + return this->UpdateWorkflow(context, request, response, controller); + })); + } + void SetMessageAllocatorFor_UpdateWorkflow( + ::grpc::experimental::MessageAllocator< ::flyteidl::admin::WorkflowUpdateRequest, ::flyteidl::admin::WorkflowUpdateResponse>* allocator) { + static_cast<::grpc::internal::CallbackUnaryHandler< ::flyteidl::admin::WorkflowUpdateRequest, ::flyteidl::admin::WorkflowUpdateResponse>*>( + ::grpc::Service::experimental().GetHandler(8)) + ->SetMessageAllocator(allocator); + } + ~ExperimentalWithCallbackMethod_UpdateWorkflow() override { + BaseClassMustBeDerivedFromService(this); + } + // disable synchronous version of this method + ::grpc::Status UpdateWorkflow(::grpc::ServerContext* context, const ::flyteidl::admin::WorkflowUpdateRequest* request, ::flyteidl::admin::WorkflowUpdateResponse* response) override { + abort(); + return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); + } + virtual void UpdateWorkflow(::grpc::ServerContext* context, const ::flyteidl::admin::WorkflowUpdateRequest* request, ::flyteidl::admin::WorkflowUpdateResponse* response, ::grpc::experimental::ServerCallbackRpcController* controller) { controller->Finish(::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, "")); } + }; + template class ExperimentalWithCallbackMethod_CreateLaunchPlan : public BaseClass { private: void BaseClassMustBeDerivedFromService(const Service *service) {} public: ExperimentalWithCallbackMethod_CreateLaunchPlan() { - ::grpc::Service::experimental().MarkMethodCallback(8, + ::grpc::Service::experimental().MarkMethodCallback(9, new ::grpc::internal::CallbackUnaryHandler< ::flyteidl::admin::LaunchPlanCreateRequest, ::flyteidl::admin::LaunchPlanCreateResponse>( [this](::grpc::ServerContext* context, const ::flyteidl::admin::LaunchPlanCreateRequest* request, @@ -2413,7 +2492,7 @@ class AdminService final { void SetMessageAllocatorFor_CreateLaunchPlan( ::grpc::experimental::MessageAllocator< ::flyteidl::admin::LaunchPlanCreateRequest, ::flyteidl::admin::LaunchPlanCreateResponse>* allocator) { static_cast<::grpc::internal::CallbackUnaryHandler< ::flyteidl::admin::LaunchPlanCreateRequest, ::flyteidl::admin::LaunchPlanCreateResponse>*>( - ::grpc::Service::experimental().GetHandler(8)) + ::grpc::Service::experimental().GetHandler(9)) ->SetMessageAllocator(allocator); } ~ExperimentalWithCallbackMethod_CreateLaunchPlan() override { @@ -2432,7 +2511,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: ExperimentalWithCallbackMethod_GetLaunchPlan() { - ::grpc::Service::experimental().MarkMethodCallback(9, + ::grpc::Service::experimental().MarkMethodCallback(10, new ::grpc::internal::CallbackUnaryHandler< ::flyteidl::admin::ObjectGetRequest, ::flyteidl::admin::LaunchPlan>( [this](::grpc::ServerContext* context, const ::flyteidl::admin::ObjectGetRequest* request, @@ -2444,7 +2523,7 @@ class AdminService final { void SetMessageAllocatorFor_GetLaunchPlan( ::grpc::experimental::MessageAllocator< ::flyteidl::admin::ObjectGetRequest, ::flyteidl::admin::LaunchPlan>* allocator) { static_cast<::grpc::internal::CallbackUnaryHandler< ::flyteidl::admin::ObjectGetRequest, ::flyteidl::admin::LaunchPlan>*>( - ::grpc::Service::experimental().GetHandler(9)) + ::grpc::Service::experimental().GetHandler(10)) ->SetMessageAllocator(allocator); } ~ExperimentalWithCallbackMethod_GetLaunchPlan() override { @@ -2463,7 +2542,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: ExperimentalWithCallbackMethod_GetActiveLaunchPlan() { - ::grpc::Service::experimental().MarkMethodCallback(10, + ::grpc::Service::experimental().MarkMethodCallback(11, new ::grpc::internal::CallbackUnaryHandler< ::flyteidl::admin::ActiveLaunchPlanRequest, ::flyteidl::admin::LaunchPlan>( [this](::grpc::ServerContext* context, const ::flyteidl::admin::ActiveLaunchPlanRequest* request, @@ -2475,7 +2554,7 @@ class AdminService final { void SetMessageAllocatorFor_GetActiveLaunchPlan( ::grpc::experimental::MessageAllocator< ::flyteidl::admin::ActiveLaunchPlanRequest, ::flyteidl::admin::LaunchPlan>* allocator) { static_cast<::grpc::internal::CallbackUnaryHandler< ::flyteidl::admin::ActiveLaunchPlanRequest, ::flyteidl::admin::LaunchPlan>*>( - ::grpc::Service::experimental().GetHandler(10)) + ::grpc::Service::experimental().GetHandler(11)) ->SetMessageAllocator(allocator); } ~ExperimentalWithCallbackMethod_GetActiveLaunchPlan() override { @@ -2494,7 +2573,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: ExperimentalWithCallbackMethod_ListActiveLaunchPlans() { - ::grpc::Service::experimental().MarkMethodCallback(11, + ::grpc::Service::experimental().MarkMethodCallback(12, new ::grpc::internal::CallbackUnaryHandler< ::flyteidl::admin::ActiveLaunchPlanListRequest, ::flyteidl::admin::LaunchPlanList>( [this](::grpc::ServerContext* context, const ::flyteidl::admin::ActiveLaunchPlanListRequest* request, @@ -2506,7 +2585,7 @@ class AdminService final { void SetMessageAllocatorFor_ListActiveLaunchPlans( ::grpc::experimental::MessageAllocator< ::flyteidl::admin::ActiveLaunchPlanListRequest, ::flyteidl::admin::LaunchPlanList>* allocator) { static_cast<::grpc::internal::CallbackUnaryHandler< ::flyteidl::admin::ActiveLaunchPlanListRequest, ::flyteidl::admin::LaunchPlanList>*>( - ::grpc::Service::experimental().GetHandler(11)) + ::grpc::Service::experimental().GetHandler(12)) ->SetMessageAllocator(allocator); } ~ExperimentalWithCallbackMethod_ListActiveLaunchPlans() override { @@ -2525,7 +2604,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: ExperimentalWithCallbackMethod_ListLaunchPlanIds() { - ::grpc::Service::experimental().MarkMethodCallback(12, + ::grpc::Service::experimental().MarkMethodCallback(13, new ::grpc::internal::CallbackUnaryHandler< ::flyteidl::admin::NamedEntityIdentifierListRequest, ::flyteidl::admin::NamedEntityIdentifierList>( [this](::grpc::ServerContext* context, const ::flyteidl::admin::NamedEntityIdentifierListRequest* request, @@ -2537,7 +2616,7 @@ class AdminService final { void SetMessageAllocatorFor_ListLaunchPlanIds( ::grpc::experimental::MessageAllocator< ::flyteidl::admin::NamedEntityIdentifierListRequest, ::flyteidl::admin::NamedEntityIdentifierList>* allocator) { static_cast<::grpc::internal::CallbackUnaryHandler< ::flyteidl::admin::NamedEntityIdentifierListRequest, ::flyteidl::admin::NamedEntityIdentifierList>*>( - ::grpc::Service::experimental().GetHandler(12)) + ::grpc::Service::experimental().GetHandler(13)) ->SetMessageAllocator(allocator); } ~ExperimentalWithCallbackMethod_ListLaunchPlanIds() override { @@ -2556,7 +2635,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: ExperimentalWithCallbackMethod_ListLaunchPlans() { - ::grpc::Service::experimental().MarkMethodCallback(13, + ::grpc::Service::experimental().MarkMethodCallback(14, new ::grpc::internal::CallbackUnaryHandler< ::flyteidl::admin::ResourceListRequest, ::flyteidl::admin::LaunchPlanList>( [this](::grpc::ServerContext* context, const ::flyteidl::admin::ResourceListRequest* request, @@ -2568,7 +2647,7 @@ class AdminService final { void SetMessageAllocatorFor_ListLaunchPlans( ::grpc::experimental::MessageAllocator< ::flyteidl::admin::ResourceListRequest, ::flyteidl::admin::LaunchPlanList>* allocator) { static_cast<::grpc::internal::CallbackUnaryHandler< ::flyteidl::admin::ResourceListRequest, ::flyteidl::admin::LaunchPlanList>*>( - ::grpc::Service::experimental().GetHandler(13)) + ::grpc::Service::experimental().GetHandler(14)) ->SetMessageAllocator(allocator); } ~ExperimentalWithCallbackMethod_ListLaunchPlans() override { @@ -2587,7 +2666,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: ExperimentalWithCallbackMethod_UpdateLaunchPlan() { - ::grpc::Service::experimental().MarkMethodCallback(14, + ::grpc::Service::experimental().MarkMethodCallback(15, new ::grpc::internal::CallbackUnaryHandler< ::flyteidl::admin::LaunchPlanUpdateRequest, ::flyteidl::admin::LaunchPlanUpdateResponse>( [this](::grpc::ServerContext* context, const ::flyteidl::admin::LaunchPlanUpdateRequest* request, @@ -2599,7 +2678,7 @@ class AdminService final { void SetMessageAllocatorFor_UpdateLaunchPlan( ::grpc::experimental::MessageAllocator< ::flyteidl::admin::LaunchPlanUpdateRequest, ::flyteidl::admin::LaunchPlanUpdateResponse>* allocator) { static_cast<::grpc::internal::CallbackUnaryHandler< ::flyteidl::admin::LaunchPlanUpdateRequest, ::flyteidl::admin::LaunchPlanUpdateResponse>*>( - ::grpc::Service::experimental().GetHandler(14)) + ::grpc::Service::experimental().GetHandler(15)) ->SetMessageAllocator(allocator); } ~ExperimentalWithCallbackMethod_UpdateLaunchPlan() override { @@ -2618,7 +2697,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: ExperimentalWithCallbackMethod_CreateExecution() { - ::grpc::Service::experimental().MarkMethodCallback(15, + ::grpc::Service::experimental().MarkMethodCallback(16, new ::grpc::internal::CallbackUnaryHandler< ::flyteidl::admin::ExecutionCreateRequest, ::flyteidl::admin::ExecutionCreateResponse>( [this](::grpc::ServerContext* context, const ::flyteidl::admin::ExecutionCreateRequest* request, @@ -2630,7 +2709,7 @@ class AdminService final { void SetMessageAllocatorFor_CreateExecution( ::grpc::experimental::MessageAllocator< ::flyteidl::admin::ExecutionCreateRequest, ::flyteidl::admin::ExecutionCreateResponse>* allocator) { static_cast<::grpc::internal::CallbackUnaryHandler< ::flyteidl::admin::ExecutionCreateRequest, ::flyteidl::admin::ExecutionCreateResponse>*>( - ::grpc::Service::experimental().GetHandler(15)) + ::grpc::Service::experimental().GetHandler(16)) ->SetMessageAllocator(allocator); } ~ExperimentalWithCallbackMethod_CreateExecution() override { @@ -2649,7 +2728,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: ExperimentalWithCallbackMethod_RelaunchExecution() { - ::grpc::Service::experimental().MarkMethodCallback(16, + ::grpc::Service::experimental().MarkMethodCallback(17, new ::grpc::internal::CallbackUnaryHandler< ::flyteidl::admin::ExecutionRelaunchRequest, ::flyteidl::admin::ExecutionCreateResponse>( [this](::grpc::ServerContext* context, const ::flyteidl::admin::ExecutionRelaunchRequest* request, @@ -2661,7 +2740,7 @@ class AdminService final { void SetMessageAllocatorFor_RelaunchExecution( ::grpc::experimental::MessageAllocator< ::flyteidl::admin::ExecutionRelaunchRequest, ::flyteidl::admin::ExecutionCreateResponse>* allocator) { static_cast<::grpc::internal::CallbackUnaryHandler< ::flyteidl::admin::ExecutionRelaunchRequest, ::flyteidl::admin::ExecutionCreateResponse>*>( - ::grpc::Service::experimental().GetHandler(16)) + ::grpc::Service::experimental().GetHandler(17)) ->SetMessageAllocator(allocator); } ~ExperimentalWithCallbackMethod_RelaunchExecution() override { @@ -2680,7 +2759,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: ExperimentalWithCallbackMethod_GetExecution() { - ::grpc::Service::experimental().MarkMethodCallback(17, + ::grpc::Service::experimental().MarkMethodCallback(18, new ::grpc::internal::CallbackUnaryHandler< ::flyteidl::admin::WorkflowExecutionGetRequest, ::flyteidl::admin::Execution>( [this](::grpc::ServerContext* context, const ::flyteidl::admin::WorkflowExecutionGetRequest* request, @@ -2692,7 +2771,7 @@ class AdminService final { void SetMessageAllocatorFor_GetExecution( ::grpc::experimental::MessageAllocator< ::flyteidl::admin::WorkflowExecutionGetRequest, ::flyteidl::admin::Execution>* allocator) { static_cast<::grpc::internal::CallbackUnaryHandler< ::flyteidl::admin::WorkflowExecutionGetRequest, ::flyteidl::admin::Execution>*>( - ::grpc::Service::experimental().GetHandler(17)) + ::grpc::Service::experimental().GetHandler(18)) ->SetMessageAllocator(allocator); } ~ExperimentalWithCallbackMethod_GetExecution() override { @@ -2711,7 +2790,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: ExperimentalWithCallbackMethod_GetExecutionData() { - ::grpc::Service::experimental().MarkMethodCallback(18, + ::grpc::Service::experimental().MarkMethodCallback(19, new ::grpc::internal::CallbackUnaryHandler< ::flyteidl::admin::WorkflowExecutionGetDataRequest, ::flyteidl::admin::WorkflowExecutionGetDataResponse>( [this](::grpc::ServerContext* context, const ::flyteidl::admin::WorkflowExecutionGetDataRequest* request, @@ -2723,7 +2802,7 @@ class AdminService final { void SetMessageAllocatorFor_GetExecutionData( ::grpc::experimental::MessageAllocator< ::flyteidl::admin::WorkflowExecutionGetDataRequest, ::flyteidl::admin::WorkflowExecutionGetDataResponse>* allocator) { static_cast<::grpc::internal::CallbackUnaryHandler< ::flyteidl::admin::WorkflowExecutionGetDataRequest, ::flyteidl::admin::WorkflowExecutionGetDataResponse>*>( - ::grpc::Service::experimental().GetHandler(18)) + ::grpc::Service::experimental().GetHandler(19)) ->SetMessageAllocator(allocator); } ~ExperimentalWithCallbackMethod_GetExecutionData() override { @@ -2742,7 +2821,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: ExperimentalWithCallbackMethod_ListExecutions() { - ::grpc::Service::experimental().MarkMethodCallback(19, + ::grpc::Service::experimental().MarkMethodCallback(20, new ::grpc::internal::CallbackUnaryHandler< ::flyteidl::admin::ResourceListRequest, ::flyteidl::admin::ExecutionList>( [this](::grpc::ServerContext* context, const ::flyteidl::admin::ResourceListRequest* request, @@ -2754,7 +2833,7 @@ class AdminService final { void SetMessageAllocatorFor_ListExecutions( ::grpc::experimental::MessageAllocator< ::flyteidl::admin::ResourceListRequest, ::flyteidl::admin::ExecutionList>* allocator) { static_cast<::grpc::internal::CallbackUnaryHandler< ::flyteidl::admin::ResourceListRequest, ::flyteidl::admin::ExecutionList>*>( - ::grpc::Service::experimental().GetHandler(19)) + ::grpc::Service::experimental().GetHandler(20)) ->SetMessageAllocator(allocator); } ~ExperimentalWithCallbackMethod_ListExecutions() override { @@ -2773,7 +2852,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: ExperimentalWithCallbackMethod_TerminateExecution() { - ::grpc::Service::experimental().MarkMethodCallback(20, + ::grpc::Service::experimental().MarkMethodCallback(21, new ::grpc::internal::CallbackUnaryHandler< ::flyteidl::admin::ExecutionTerminateRequest, ::flyteidl::admin::ExecutionTerminateResponse>( [this](::grpc::ServerContext* context, const ::flyteidl::admin::ExecutionTerminateRequest* request, @@ -2785,7 +2864,7 @@ class AdminService final { void SetMessageAllocatorFor_TerminateExecution( ::grpc::experimental::MessageAllocator< ::flyteidl::admin::ExecutionTerminateRequest, ::flyteidl::admin::ExecutionTerminateResponse>* allocator) { static_cast<::grpc::internal::CallbackUnaryHandler< ::flyteidl::admin::ExecutionTerminateRequest, ::flyteidl::admin::ExecutionTerminateResponse>*>( - ::grpc::Service::experimental().GetHandler(20)) + ::grpc::Service::experimental().GetHandler(21)) ->SetMessageAllocator(allocator); } ~ExperimentalWithCallbackMethod_TerminateExecution() override { @@ -2804,7 +2883,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: ExperimentalWithCallbackMethod_GetNodeExecution() { - ::grpc::Service::experimental().MarkMethodCallback(21, + ::grpc::Service::experimental().MarkMethodCallback(22, new ::grpc::internal::CallbackUnaryHandler< ::flyteidl::admin::NodeExecutionGetRequest, ::flyteidl::admin::NodeExecution>( [this](::grpc::ServerContext* context, const ::flyteidl::admin::NodeExecutionGetRequest* request, @@ -2816,7 +2895,7 @@ class AdminService final { void SetMessageAllocatorFor_GetNodeExecution( ::grpc::experimental::MessageAllocator< ::flyteidl::admin::NodeExecutionGetRequest, ::flyteidl::admin::NodeExecution>* allocator) { static_cast<::grpc::internal::CallbackUnaryHandler< ::flyteidl::admin::NodeExecutionGetRequest, ::flyteidl::admin::NodeExecution>*>( - ::grpc::Service::experimental().GetHandler(21)) + ::grpc::Service::experimental().GetHandler(22)) ->SetMessageAllocator(allocator); } ~ExperimentalWithCallbackMethod_GetNodeExecution() override { @@ -2835,7 +2914,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: ExperimentalWithCallbackMethod_ListNodeExecutions() { - ::grpc::Service::experimental().MarkMethodCallback(22, + ::grpc::Service::experimental().MarkMethodCallback(23, new ::grpc::internal::CallbackUnaryHandler< ::flyteidl::admin::NodeExecutionListRequest, ::flyteidl::admin::NodeExecutionList>( [this](::grpc::ServerContext* context, const ::flyteidl::admin::NodeExecutionListRequest* request, @@ -2847,7 +2926,7 @@ class AdminService final { void SetMessageAllocatorFor_ListNodeExecutions( ::grpc::experimental::MessageAllocator< ::flyteidl::admin::NodeExecutionListRequest, ::flyteidl::admin::NodeExecutionList>* allocator) { static_cast<::grpc::internal::CallbackUnaryHandler< ::flyteidl::admin::NodeExecutionListRequest, ::flyteidl::admin::NodeExecutionList>*>( - ::grpc::Service::experimental().GetHandler(22)) + ::grpc::Service::experimental().GetHandler(23)) ->SetMessageAllocator(allocator); } ~ExperimentalWithCallbackMethod_ListNodeExecutions() override { @@ -2866,7 +2945,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: ExperimentalWithCallbackMethod_ListNodeExecutionsForTask() { - ::grpc::Service::experimental().MarkMethodCallback(23, + ::grpc::Service::experimental().MarkMethodCallback(24, new ::grpc::internal::CallbackUnaryHandler< ::flyteidl::admin::NodeExecutionForTaskListRequest, ::flyteidl::admin::NodeExecutionList>( [this](::grpc::ServerContext* context, const ::flyteidl::admin::NodeExecutionForTaskListRequest* request, @@ -2878,7 +2957,7 @@ class AdminService final { void SetMessageAllocatorFor_ListNodeExecutionsForTask( ::grpc::experimental::MessageAllocator< ::flyteidl::admin::NodeExecutionForTaskListRequest, ::flyteidl::admin::NodeExecutionList>* allocator) { static_cast<::grpc::internal::CallbackUnaryHandler< ::flyteidl::admin::NodeExecutionForTaskListRequest, ::flyteidl::admin::NodeExecutionList>*>( - ::grpc::Service::experimental().GetHandler(23)) + ::grpc::Service::experimental().GetHandler(24)) ->SetMessageAllocator(allocator); } ~ExperimentalWithCallbackMethod_ListNodeExecutionsForTask() override { @@ -2897,7 +2976,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: ExperimentalWithCallbackMethod_GetNodeExecutionData() { - ::grpc::Service::experimental().MarkMethodCallback(24, + ::grpc::Service::experimental().MarkMethodCallback(25, new ::grpc::internal::CallbackUnaryHandler< ::flyteidl::admin::NodeExecutionGetDataRequest, ::flyteidl::admin::NodeExecutionGetDataResponse>( [this](::grpc::ServerContext* context, const ::flyteidl::admin::NodeExecutionGetDataRequest* request, @@ -2909,7 +2988,7 @@ class AdminService final { void SetMessageAllocatorFor_GetNodeExecutionData( ::grpc::experimental::MessageAllocator< ::flyteidl::admin::NodeExecutionGetDataRequest, ::flyteidl::admin::NodeExecutionGetDataResponse>* allocator) { static_cast<::grpc::internal::CallbackUnaryHandler< ::flyteidl::admin::NodeExecutionGetDataRequest, ::flyteidl::admin::NodeExecutionGetDataResponse>*>( - ::grpc::Service::experimental().GetHandler(24)) + ::grpc::Service::experimental().GetHandler(25)) ->SetMessageAllocator(allocator); } ~ExperimentalWithCallbackMethod_GetNodeExecutionData() override { @@ -2928,7 +3007,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: ExperimentalWithCallbackMethod_RegisterProject() { - ::grpc::Service::experimental().MarkMethodCallback(25, + ::grpc::Service::experimental().MarkMethodCallback(26, new ::grpc::internal::CallbackUnaryHandler< ::flyteidl::admin::ProjectRegisterRequest, ::flyteidl::admin::ProjectRegisterResponse>( [this](::grpc::ServerContext* context, const ::flyteidl::admin::ProjectRegisterRequest* request, @@ -2940,7 +3019,7 @@ class AdminService final { void SetMessageAllocatorFor_RegisterProject( ::grpc::experimental::MessageAllocator< ::flyteidl::admin::ProjectRegisterRequest, ::flyteidl::admin::ProjectRegisterResponse>* allocator) { static_cast<::grpc::internal::CallbackUnaryHandler< ::flyteidl::admin::ProjectRegisterRequest, ::flyteidl::admin::ProjectRegisterResponse>*>( - ::grpc::Service::experimental().GetHandler(25)) + ::grpc::Service::experimental().GetHandler(26)) ->SetMessageAllocator(allocator); } ~ExperimentalWithCallbackMethod_RegisterProject() override { @@ -2959,7 +3038,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: ExperimentalWithCallbackMethod_ListProjects() { - ::grpc::Service::experimental().MarkMethodCallback(26, + ::grpc::Service::experimental().MarkMethodCallback(27, new ::grpc::internal::CallbackUnaryHandler< ::flyteidl::admin::ProjectListRequest, ::flyteidl::admin::Projects>( [this](::grpc::ServerContext* context, const ::flyteidl::admin::ProjectListRequest* request, @@ -2971,7 +3050,7 @@ class AdminService final { void SetMessageAllocatorFor_ListProjects( ::grpc::experimental::MessageAllocator< ::flyteidl::admin::ProjectListRequest, ::flyteidl::admin::Projects>* allocator) { static_cast<::grpc::internal::CallbackUnaryHandler< ::flyteidl::admin::ProjectListRequest, ::flyteidl::admin::Projects>*>( - ::grpc::Service::experimental().GetHandler(26)) + ::grpc::Service::experimental().GetHandler(27)) ->SetMessageAllocator(allocator); } ~ExperimentalWithCallbackMethod_ListProjects() override { @@ -2990,7 +3069,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: ExperimentalWithCallbackMethod_CreateWorkflowEvent() { - ::grpc::Service::experimental().MarkMethodCallback(27, + ::grpc::Service::experimental().MarkMethodCallback(28, new ::grpc::internal::CallbackUnaryHandler< ::flyteidl::admin::WorkflowExecutionEventRequest, ::flyteidl::admin::WorkflowExecutionEventResponse>( [this](::grpc::ServerContext* context, const ::flyteidl::admin::WorkflowExecutionEventRequest* request, @@ -3002,7 +3081,7 @@ class AdminService final { void SetMessageAllocatorFor_CreateWorkflowEvent( ::grpc::experimental::MessageAllocator< ::flyteidl::admin::WorkflowExecutionEventRequest, ::flyteidl::admin::WorkflowExecutionEventResponse>* allocator) { static_cast<::grpc::internal::CallbackUnaryHandler< ::flyteidl::admin::WorkflowExecutionEventRequest, ::flyteidl::admin::WorkflowExecutionEventResponse>*>( - ::grpc::Service::experimental().GetHandler(27)) + ::grpc::Service::experimental().GetHandler(28)) ->SetMessageAllocator(allocator); } ~ExperimentalWithCallbackMethod_CreateWorkflowEvent() override { @@ -3021,7 +3100,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: ExperimentalWithCallbackMethod_CreateNodeEvent() { - ::grpc::Service::experimental().MarkMethodCallback(28, + ::grpc::Service::experimental().MarkMethodCallback(29, new ::grpc::internal::CallbackUnaryHandler< ::flyteidl::admin::NodeExecutionEventRequest, ::flyteidl::admin::NodeExecutionEventResponse>( [this](::grpc::ServerContext* context, const ::flyteidl::admin::NodeExecutionEventRequest* request, @@ -3033,7 +3112,7 @@ class AdminService final { void SetMessageAllocatorFor_CreateNodeEvent( ::grpc::experimental::MessageAllocator< ::flyteidl::admin::NodeExecutionEventRequest, ::flyteidl::admin::NodeExecutionEventResponse>* allocator) { static_cast<::grpc::internal::CallbackUnaryHandler< ::flyteidl::admin::NodeExecutionEventRequest, ::flyteidl::admin::NodeExecutionEventResponse>*>( - ::grpc::Service::experimental().GetHandler(28)) + ::grpc::Service::experimental().GetHandler(29)) ->SetMessageAllocator(allocator); } ~ExperimentalWithCallbackMethod_CreateNodeEvent() override { @@ -3052,7 +3131,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: ExperimentalWithCallbackMethod_CreateTaskEvent() { - ::grpc::Service::experimental().MarkMethodCallback(29, + ::grpc::Service::experimental().MarkMethodCallback(30, new ::grpc::internal::CallbackUnaryHandler< ::flyteidl::admin::TaskExecutionEventRequest, ::flyteidl::admin::TaskExecutionEventResponse>( [this](::grpc::ServerContext* context, const ::flyteidl::admin::TaskExecutionEventRequest* request, @@ -3064,7 +3143,7 @@ class AdminService final { void SetMessageAllocatorFor_CreateTaskEvent( ::grpc::experimental::MessageAllocator< ::flyteidl::admin::TaskExecutionEventRequest, ::flyteidl::admin::TaskExecutionEventResponse>* allocator) { static_cast<::grpc::internal::CallbackUnaryHandler< ::flyteidl::admin::TaskExecutionEventRequest, ::flyteidl::admin::TaskExecutionEventResponse>*>( - ::grpc::Service::experimental().GetHandler(29)) + ::grpc::Service::experimental().GetHandler(30)) ->SetMessageAllocator(allocator); } ~ExperimentalWithCallbackMethod_CreateTaskEvent() override { @@ -3083,7 +3162,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: ExperimentalWithCallbackMethod_GetTaskExecution() { - ::grpc::Service::experimental().MarkMethodCallback(30, + ::grpc::Service::experimental().MarkMethodCallback(31, new ::grpc::internal::CallbackUnaryHandler< ::flyteidl::admin::TaskExecutionGetRequest, ::flyteidl::admin::TaskExecution>( [this](::grpc::ServerContext* context, const ::flyteidl::admin::TaskExecutionGetRequest* request, @@ -3095,7 +3174,7 @@ class AdminService final { void SetMessageAllocatorFor_GetTaskExecution( ::grpc::experimental::MessageAllocator< ::flyteidl::admin::TaskExecutionGetRequest, ::flyteidl::admin::TaskExecution>* allocator) { static_cast<::grpc::internal::CallbackUnaryHandler< ::flyteidl::admin::TaskExecutionGetRequest, ::flyteidl::admin::TaskExecution>*>( - ::grpc::Service::experimental().GetHandler(30)) + ::grpc::Service::experimental().GetHandler(31)) ->SetMessageAllocator(allocator); } ~ExperimentalWithCallbackMethod_GetTaskExecution() override { @@ -3114,7 +3193,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: ExperimentalWithCallbackMethod_ListTaskExecutions() { - ::grpc::Service::experimental().MarkMethodCallback(31, + ::grpc::Service::experimental().MarkMethodCallback(32, new ::grpc::internal::CallbackUnaryHandler< ::flyteidl::admin::TaskExecutionListRequest, ::flyteidl::admin::TaskExecutionList>( [this](::grpc::ServerContext* context, const ::flyteidl::admin::TaskExecutionListRequest* request, @@ -3126,7 +3205,7 @@ class AdminService final { void SetMessageAllocatorFor_ListTaskExecutions( ::grpc::experimental::MessageAllocator< ::flyteidl::admin::TaskExecutionListRequest, ::flyteidl::admin::TaskExecutionList>* allocator) { static_cast<::grpc::internal::CallbackUnaryHandler< ::flyteidl::admin::TaskExecutionListRequest, ::flyteidl::admin::TaskExecutionList>*>( - ::grpc::Service::experimental().GetHandler(31)) + ::grpc::Service::experimental().GetHandler(32)) ->SetMessageAllocator(allocator); } ~ExperimentalWithCallbackMethod_ListTaskExecutions() override { @@ -3145,7 +3224,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: ExperimentalWithCallbackMethod_GetTaskExecutionData() { - ::grpc::Service::experimental().MarkMethodCallback(32, + ::grpc::Service::experimental().MarkMethodCallback(33, new ::grpc::internal::CallbackUnaryHandler< ::flyteidl::admin::TaskExecutionGetDataRequest, ::flyteidl::admin::TaskExecutionGetDataResponse>( [this](::grpc::ServerContext* context, const ::flyteidl::admin::TaskExecutionGetDataRequest* request, @@ -3157,7 +3236,7 @@ class AdminService final { void SetMessageAllocatorFor_GetTaskExecutionData( ::grpc::experimental::MessageAllocator< ::flyteidl::admin::TaskExecutionGetDataRequest, ::flyteidl::admin::TaskExecutionGetDataResponse>* allocator) { static_cast<::grpc::internal::CallbackUnaryHandler< ::flyteidl::admin::TaskExecutionGetDataRequest, ::flyteidl::admin::TaskExecutionGetDataResponse>*>( - ::grpc::Service::experimental().GetHandler(32)) + ::grpc::Service::experimental().GetHandler(33)) ->SetMessageAllocator(allocator); } ~ExperimentalWithCallbackMethod_GetTaskExecutionData() override { @@ -3176,7 +3255,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: ExperimentalWithCallbackMethod_UpdateProjectDomainAttributes() { - ::grpc::Service::experimental().MarkMethodCallback(33, + ::grpc::Service::experimental().MarkMethodCallback(34, new ::grpc::internal::CallbackUnaryHandler< ::flyteidl::admin::ProjectDomainAttributesUpdateRequest, ::flyteidl::admin::ProjectDomainAttributesUpdateResponse>( [this](::grpc::ServerContext* context, const ::flyteidl::admin::ProjectDomainAttributesUpdateRequest* request, @@ -3188,7 +3267,7 @@ class AdminService final { void SetMessageAllocatorFor_UpdateProjectDomainAttributes( ::grpc::experimental::MessageAllocator< ::flyteidl::admin::ProjectDomainAttributesUpdateRequest, ::flyteidl::admin::ProjectDomainAttributesUpdateResponse>* allocator) { static_cast<::grpc::internal::CallbackUnaryHandler< ::flyteidl::admin::ProjectDomainAttributesUpdateRequest, ::flyteidl::admin::ProjectDomainAttributesUpdateResponse>*>( - ::grpc::Service::experimental().GetHandler(33)) + ::grpc::Service::experimental().GetHandler(34)) ->SetMessageAllocator(allocator); } ~ExperimentalWithCallbackMethod_UpdateProjectDomainAttributes() override { @@ -3207,7 +3286,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: ExperimentalWithCallbackMethod_GetProjectDomainAttributes() { - ::grpc::Service::experimental().MarkMethodCallback(34, + ::grpc::Service::experimental().MarkMethodCallback(35, new ::grpc::internal::CallbackUnaryHandler< ::flyteidl::admin::ProjectDomainAttributesGetRequest, ::flyteidl::admin::ProjectDomainAttributesGetResponse>( [this](::grpc::ServerContext* context, const ::flyteidl::admin::ProjectDomainAttributesGetRequest* request, @@ -3219,7 +3298,7 @@ class AdminService final { void SetMessageAllocatorFor_GetProjectDomainAttributes( ::grpc::experimental::MessageAllocator< ::flyteidl::admin::ProjectDomainAttributesGetRequest, ::flyteidl::admin::ProjectDomainAttributesGetResponse>* allocator) { static_cast<::grpc::internal::CallbackUnaryHandler< ::flyteidl::admin::ProjectDomainAttributesGetRequest, ::flyteidl::admin::ProjectDomainAttributesGetResponse>*>( - ::grpc::Service::experimental().GetHandler(34)) + ::grpc::Service::experimental().GetHandler(35)) ->SetMessageAllocator(allocator); } ~ExperimentalWithCallbackMethod_GetProjectDomainAttributes() override { @@ -3238,7 +3317,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: ExperimentalWithCallbackMethod_DeleteProjectDomainAttributes() { - ::grpc::Service::experimental().MarkMethodCallback(35, + ::grpc::Service::experimental().MarkMethodCallback(36, new ::grpc::internal::CallbackUnaryHandler< ::flyteidl::admin::ProjectDomainAttributesDeleteRequest, ::flyteidl::admin::ProjectDomainAttributesDeleteResponse>( [this](::grpc::ServerContext* context, const ::flyteidl::admin::ProjectDomainAttributesDeleteRequest* request, @@ -3250,7 +3329,7 @@ class AdminService final { void SetMessageAllocatorFor_DeleteProjectDomainAttributes( ::grpc::experimental::MessageAllocator< ::flyteidl::admin::ProjectDomainAttributesDeleteRequest, ::flyteidl::admin::ProjectDomainAttributesDeleteResponse>* allocator) { static_cast<::grpc::internal::CallbackUnaryHandler< ::flyteidl::admin::ProjectDomainAttributesDeleteRequest, ::flyteidl::admin::ProjectDomainAttributesDeleteResponse>*>( - ::grpc::Service::experimental().GetHandler(35)) + ::grpc::Service::experimental().GetHandler(36)) ->SetMessageAllocator(allocator); } ~ExperimentalWithCallbackMethod_DeleteProjectDomainAttributes() override { @@ -3269,7 +3348,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: ExperimentalWithCallbackMethod_UpdateWorkflowAttributes() { - ::grpc::Service::experimental().MarkMethodCallback(36, + ::grpc::Service::experimental().MarkMethodCallback(37, new ::grpc::internal::CallbackUnaryHandler< ::flyteidl::admin::WorkflowAttributesUpdateRequest, ::flyteidl::admin::WorkflowAttributesUpdateResponse>( [this](::grpc::ServerContext* context, const ::flyteidl::admin::WorkflowAttributesUpdateRequest* request, @@ -3281,7 +3360,7 @@ class AdminService final { void SetMessageAllocatorFor_UpdateWorkflowAttributes( ::grpc::experimental::MessageAllocator< ::flyteidl::admin::WorkflowAttributesUpdateRequest, ::flyteidl::admin::WorkflowAttributesUpdateResponse>* allocator) { static_cast<::grpc::internal::CallbackUnaryHandler< ::flyteidl::admin::WorkflowAttributesUpdateRequest, ::flyteidl::admin::WorkflowAttributesUpdateResponse>*>( - ::grpc::Service::experimental().GetHandler(36)) + ::grpc::Service::experimental().GetHandler(37)) ->SetMessageAllocator(allocator); } ~ExperimentalWithCallbackMethod_UpdateWorkflowAttributes() override { @@ -3300,7 +3379,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: ExperimentalWithCallbackMethod_GetWorkflowAttributes() { - ::grpc::Service::experimental().MarkMethodCallback(37, + ::grpc::Service::experimental().MarkMethodCallback(38, new ::grpc::internal::CallbackUnaryHandler< ::flyteidl::admin::WorkflowAttributesGetRequest, ::flyteidl::admin::WorkflowAttributesGetResponse>( [this](::grpc::ServerContext* context, const ::flyteidl::admin::WorkflowAttributesGetRequest* request, @@ -3312,7 +3391,7 @@ class AdminService final { void SetMessageAllocatorFor_GetWorkflowAttributes( ::grpc::experimental::MessageAllocator< ::flyteidl::admin::WorkflowAttributesGetRequest, ::flyteidl::admin::WorkflowAttributesGetResponse>* allocator) { static_cast<::grpc::internal::CallbackUnaryHandler< ::flyteidl::admin::WorkflowAttributesGetRequest, ::flyteidl::admin::WorkflowAttributesGetResponse>*>( - ::grpc::Service::experimental().GetHandler(37)) + ::grpc::Service::experimental().GetHandler(38)) ->SetMessageAllocator(allocator); } ~ExperimentalWithCallbackMethod_GetWorkflowAttributes() override { @@ -3331,7 +3410,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: ExperimentalWithCallbackMethod_DeleteWorkflowAttributes() { - ::grpc::Service::experimental().MarkMethodCallback(38, + ::grpc::Service::experimental().MarkMethodCallback(39, new ::grpc::internal::CallbackUnaryHandler< ::flyteidl::admin::WorkflowAttributesDeleteRequest, ::flyteidl::admin::WorkflowAttributesDeleteResponse>( [this](::grpc::ServerContext* context, const ::flyteidl::admin::WorkflowAttributesDeleteRequest* request, @@ -3343,7 +3422,7 @@ class AdminService final { void SetMessageAllocatorFor_DeleteWorkflowAttributes( ::grpc::experimental::MessageAllocator< ::flyteidl::admin::WorkflowAttributesDeleteRequest, ::flyteidl::admin::WorkflowAttributesDeleteResponse>* allocator) { static_cast<::grpc::internal::CallbackUnaryHandler< ::flyteidl::admin::WorkflowAttributesDeleteRequest, ::flyteidl::admin::WorkflowAttributesDeleteResponse>*>( - ::grpc::Service::experimental().GetHandler(38)) + ::grpc::Service::experimental().GetHandler(39)) ->SetMessageAllocator(allocator); } ~ExperimentalWithCallbackMethod_DeleteWorkflowAttributes() override { @@ -3362,7 +3441,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: ExperimentalWithCallbackMethod_ListMatchableAttributes() { - ::grpc::Service::experimental().MarkMethodCallback(39, + ::grpc::Service::experimental().MarkMethodCallback(40, new ::grpc::internal::CallbackUnaryHandler< ::flyteidl::admin::ListMatchableAttributesRequest, ::flyteidl::admin::ListMatchableAttributesResponse>( [this](::grpc::ServerContext* context, const ::flyteidl::admin::ListMatchableAttributesRequest* request, @@ -3374,7 +3453,7 @@ class AdminService final { void SetMessageAllocatorFor_ListMatchableAttributes( ::grpc::experimental::MessageAllocator< ::flyteidl::admin::ListMatchableAttributesRequest, ::flyteidl::admin::ListMatchableAttributesResponse>* allocator) { static_cast<::grpc::internal::CallbackUnaryHandler< ::flyteidl::admin::ListMatchableAttributesRequest, ::flyteidl::admin::ListMatchableAttributesResponse>*>( - ::grpc::Service::experimental().GetHandler(39)) + ::grpc::Service::experimental().GetHandler(40)) ->SetMessageAllocator(allocator); } ~ExperimentalWithCallbackMethod_ListMatchableAttributes() override { @@ -3393,7 +3472,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: ExperimentalWithCallbackMethod_ListNamedEntities() { - ::grpc::Service::experimental().MarkMethodCallback(40, + ::grpc::Service::experimental().MarkMethodCallback(41, new ::grpc::internal::CallbackUnaryHandler< ::flyteidl::admin::NamedEntityListRequest, ::flyteidl::admin::NamedEntityList>( [this](::grpc::ServerContext* context, const ::flyteidl::admin::NamedEntityListRequest* request, @@ -3405,7 +3484,7 @@ class AdminService final { void SetMessageAllocatorFor_ListNamedEntities( ::grpc::experimental::MessageAllocator< ::flyteidl::admin::NamedEntityListRequest, ::flyteidl::admin::NamedEntityList>* allocator) { static_cast<::grpc::internal::CallbackUnaryHandler< ::flyteidl::admin::NamedEntityListRequest, ::flyteidl::admin::NamedEntityList>*>( - ::grpc::Service::experimental().GetHandler(40)) + ::grpc::Service::experimental().GetHandler(41)) ->SetMessageAllocator(allocator); } ~ExperimentalWithCallbackMethod_ListNamedEntities() override { @@ -3424,7 +3503,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: ExperimentalWithCallbackMethod_GetNamedEntity() { - ::grpc::Service::experimental().MarkMethodCallback(41, + ::grpc::Service::experimental().MarkMethodCallback(42, new ::grpc::internal::CallbackUnaryHandler< ::flyteidl::admin::NamedEntityGetRequest, ::flyteidl::admin::NamedEntity>( [this](::grpc::ServerContext* context, const ::flyteidl::admin::NamedEntityGetRequest* request, @@ -3436,7 +3515,7 @@ class AdminService final { void SetMessageAllocatorFor_GetNamedEntity( ::grpc::experimental::MessageAllocator< ::flyteidl::admin::NamedEntityGetRequest, ::flyteidl::admin::NamedEntity>* allocator) { static_cast<::grpc::internal::CallbackUnaryHandler< ::flyteidl::admin::NamedEntityGetRequest, ::flyteidl::admin::NamedEntity>*>( - ::grpc::Service::experimental().GetHandler(41)) + ::grpc::Service::experimental().GetHandler(42)) ->SetMessageAllocator(allocator); } ~ExperimentalWithCallbackMethod_GetNamedEntity() override { @@ -3455,7 +3534,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: ExperimentalWithCallbackMethod_UpdateNamedEntity() { - ::grpc::Service::experimental().MarkMethodCallback(42, + ::grpc::Service::experimental().MarkMethodCallback(43, new ::grpc::internal::CallbackUnaryHandler< ::flyteidl::admin::NamedEntityUpdateRequest, ::flyteidl::admin::NamedEntityUpdateResponse>( [this](::grpc::ServerContext* context, const ::flyteidl::admin::NamedEntityUpdateRequest* request, @@ -3467,7 +3546,7 @@ class AdminService final { void SetMessageAllocatorFor_UpdateNamedEntity( ::grpc::experimental::MessageAllocator< ::flyteidl::admin::NamedEntityUpdateRequest, ::flyteidl::admin::NamedEntityUpdateResponse>* allocator) { static_cast<::grpc::internal::CallbackUnaryHandler< ::flyteidl::admin::NamedEntityUpdateRequest, ::flyteidl::admin::NamedEntityUpdateResponse>*>( - ::grpc::Service::experimental().GetHandler(42)) + ::grpc::Service::experimental().GetHandler(43)) ->SetMessageAllocator(allocator); } ~ExperimentalWithCallbackMethod_UpdateNamedEntity() override { @@ -3480,7 +3559,7 @@ class AdminService final { } virtual void UpdateNamedEntity(::grpc::ServerContext* context, const ::flyteidl::admin::NamedEntityUpdateRequest* request, ::flyteidl::admin::NamedEntityUpdateResponse* response, ::grpc::experimental::ServerCallbackRpcController* controller) { controller->Finish(::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, "")); } }; - typedef ExperimentalWithCallbackMethod_CreateTask > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > ExperimentalCallbackService; + typedef ExperimentalWithCallbackMethod_CreateTask > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > ExperimentalCallbackService; template class WithGenericMethod_CreateTask : public BaseClass { private: @@ -3618,12 +3697,29 @@ class AdminService final { } }; template + class WithGenericMethod_UpdateWorkflow : public BaseClass { + private: + void BaseClassMustBeDerivedFromService(const Service *service) {} + public: + WithGenericMethod_UpdateWorkflow() { + ::grpc::Service::MarkMethodGeneric(8); + } + ~WithGenericMethod_UpdateWorkflow() override { + BaseClassMustBeDerivedFromService(this); + } + // disable synchronous version of this method + ::grpc::Status UpdateWorkflow(::grpc::ServerContext* context, const ::flyteidl::admin::WorkflowUpdateRequest* request, ::flyteidl::admin::WorkflowUpdateResponse* response) override { + abort(); + return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); + } + }; + template class WithGenericMethod_CreateLaunchPlan : public BaseClass { private: void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithGenericMethod_CreateLaunchPlan() { - ::grpc::Service::MarkMethodGeneric(8); + ::grpc::Service::MarkMethodGeneric(9); } ~WithGenericMethod_CreateLaunchPlan() override { BaseClassMustBeDerivedFromService(this); @@ -3640,7 +3736,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithGenericMethod_GetLaunchPlan() { - ::grpc::Service::MarkMethodGeneric(9); + ::grpc::Service::MarkMethodGeneric(10); } ~WithGenericMethod_GetLaunchPlan() override { BaseClassMustBeDerivedFromService(this); @@ -3657,7 +3753,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithGenericMethod_GetActiveLaunchPlan() { - ::grpc::Service::MarkMethodGeneric(10); + ::grpc::Service::MarkMethodGeneric(11); } ~WithGenericMethod_GetActiveLaunchPlan() override { BaseClassMustBeDerivedFromService(this); @@ -3674,7 +3770,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithGenericMethod_ListActiveLaunchPlans() { - ::grpc::Service::MarkMethodGeneric(11); + ::grpc::Service::MarkMethodGeneric(12); } ~WithGenericMethod_ListActiveLaunchPlans() override { BaseClassMustBeDerivedFromService(this); @@ -3691,7 +3787,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithGenericMethod_ListLaunchPlanIds() { - ::grpc::Service::MarkMethodGeneric(12); + ::grpc::Service::MarkMethodGeneric(13); } ~WithGenericMethod_ListLaunchPlanIds() override { BaseClassMustBeDerivedFromService(this); @@ -3708,7 +3804,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithGenericMethod_ListLaunchPlans() { - ::grpc::Service::MarkMethodGeneric(13); + ::grpc::Service::MarkMethodGeneric(14); } ~WithGenericMethod_ListLaunchPlans() override { BaseClassMustBeDerivedFromService(this); @@ -3725,7 +3821,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithGenericMethod_UpdateLaunchPlan() { - ::grpc::Service::MarkMethodGeneric(14); + ::grpc::Service::MarkMethodGeneric(15); } ~WithGenericMethod_UpdateLaunchPlan() override { BaseClassMustBeDerivedFromService(this); @@ -3742,7 +3838,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithGenericMethod_CreateExecution() { - ::grpc::Service::MarkMethodGeneric(15); + ::grpc::Service::MarkMethodGeneric(16); } ~WithGenericMethod_CreateExecution() override { BaseClassMustBeDerivedFromService(this); @@ -3759,7 +3855,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithGenericMethod_RelaunchExecution() { - ::grpc::Service::MarkMethodGeneric(16); + ::grpc::Service::MarkMethodGeneric(17); } ~WithGenericMethod_RelaunchExecution() override { BaseClassMustBeDerivedFromService(this); @@ -3776,7 +3872,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithGenericMethod_GetExecution() { - ::grpc::Service::MarkMethodGeneric(17); + ::grpc::Service::MarkMethodGeneric(18); } ~WithGenericMethod_GetExecution() override { BaseClassMustBeDerivedFromService(this); @@ -3793,7 +3889,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithGenericMethod_GetExecutionData() { - ::grpc::Service::MarkMethodGeneric(18); + ::grpc::Service::MarkMethodGeneric(19); } ~WithGenericMethod_GetExecutionData() override { BaseClassMustBeDerivedFromService(this); @@ -3810,7 +3906,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithGenericMethod_ListExecutions() { - ::grpc::Service::MarkMethodGeneric(19); + ::grpc::Service::MarkMethodGeneric(20); } ~WithGenericMethod_ListExecutions() override { BaseClassMustBeDerivedFromService(this); @@ -3827,7 +3923,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithGenericMethod_TerminateExecution() { - ::grpc::Service::MarkMethodGeneric(20); + ::grpc::Service::MarkMethodGeneric(21); } ~WithGenericMethod_TerminateExecution() override { BaseClassMustBeDerivedFromService(this); @@ -3844,7 +3940,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithGenericMethod_GetNodeExecution() { - ::grpc::Service::MarkMethodGeneric(21); + ::grpc::Service::MarkMethodGeneric(22); } ~WithGenericMethod_GetNodeExecution() override { BaseClassMustBeDerivedFromService(this); @@ -3861,7 +3957,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithGenericMethod_ListNodeExecutions() { - ::grpc::Service::MarkMethodGeneric(22); + ::grpc::Service::MarkMethodGeneric(23); } ~WithGenericMethod_ListNodeExecutions() override { BaseClassMustBeDerivedFromService(this); @@ -3878,7 +3974,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithGenericMethod_ListNodeExecutionsForTask() { - ::grpc::Service::MarkMethodGeneric(23); + ::grpc::Service::MarkMethodGeneric(24); } ~WithGenericMethod_ListNodeExecutionsForTask() override { BaseClassMustBeDerivedFromService(this); @@ -3895,7 +3991,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithGenericMethod_GetNodeExecutionData() { - ::grpc::Service::MarkMethodGeneric(24); + ::grpc::Service::MarkMethodGeneric(25); } ~WithGenericMethod_GetNodeExecutionData() override { BaseClassMustBeDerivedFromService(this); @@ -3912,7 +4008,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithGenericMethod_RegisterProject() { - ::grpc::Service::MarkMethodGeneric(25); + ::grpc::Service::MarkMethodGeneric(26); } ~WithGenericMethod_RegisterProject() override { BaseClassMustBeDerivedFromService(this); @@ -3929,7 +4025,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithGenericMethod_ListProjects() { - ::grpc::Service::MarkMethodGeneric(26); + ::grpc::Service::MarkMethodGeneric(27); } ~WithGenericMethod_ListProjects() override { BaseClassMustBeDerivedFromService(this); @@ -3946,7 +4042,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithGenericMethod_CreateWorkflowEvent() { - ::grpc::Service::MarkMethodGeneric(27); + ::grpc::Service::MarkMethodGeneric(28); } ~WithGenericMethod_CreateWorkflowEvent() override { BaseClassMustBeDerivedFromService(this); @@ -3963,7 +4059,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithGenericMethod_CreateNodeEvent() { - ::grpc::Service::MarkMethodGeneric(28); + ::grpc::Service::MarkMethodGeneric(29); } ~WithGenericMethod_CreateNodeEvent() override { BaseClassMustBeDerivedFromService(this); @@ -3980,7 +4076,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithGenericMethod_CreateTaskEvent() { - ::grpc::Service::MarkMethodGeneric(29); + ::grpc::Service::MarkMethodGeneric(30); } ~WithGenericMethod_CreateTaskEvent() override { BaseClassMustBeDerivedFromService(this); @@ -3997,7 +4093,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithGenericMethod_GetTaskExecution() { - ::grpc::Service::MarkMethodGeneric(30); + ::grpc::Service::MarkMethodGeneric(31); } ~WithGenericMethod_GetTaskExecution() override { BaseClassMustBeDerivedFromService(this); @@ -4014,7 +4110,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithGenericMethod_ListTaskExecutions() { - ::grpc::Service::MarkMethodGeneric(31); + ::grpc::Service::MarkMethodGeneric(32); } ~WithGenericMethod_ListTaskExecutions() override { BaseClassMustBeDerivedFromService(this); @@ -4031,7 +4127,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithGenericMethod_GetTaskExecutionData() { - ::grpc::Service::MarkMethodGeneric(32); + ::grpc::Service::MarkMethodGeneric(33); } ~WithGenericMethod_GetTaskExecutionData() override { BaseClassMustBeDerivedFromService(this); @@ -4048,7 +4144,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithGenericMethod_UpdateProjectDomainAttributes() { - ::grpc::Service::MarkMethodGeneric(33); + ::grpc::Service::MarkMethodGeneric(34); } ~WithGenericMethod_UpdateProjectDomainAttributes() override { BaseClassMustBeDerivedFromService(this); @@ -4065,7 +4161,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithGenericMethod_GetProjectDomainAttributes() { - ::grpc::Service::MarkMethodGeneric(34); + ::grpc::Service::MarkMethodGeneric(35); } ~WithGenericMethod_GetProjectDomainAttributes() override { BaseClassMustBeDerivedFromService(this); @@ -4082,7 +4178,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithGenericMethod_DeleteProjectDomainAttributes() { - ::grpc::Service::MarkMethodGeneric(35); + ::grpc::Service::MarkMethodGeneric(36); } ~WithGenericMethod_DeleteProjectDomainAttributes() override { BaseClassMustBeDerivedFromService(this); @@ -4099,7 +4195,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithGenericMethod_UpdateWorkflowAttributes() { - ::grpc::Service::MarkMethodGeneric(36); + ::grpc::Service::MarkMethodGeneric(37); } ~WithGenericMethod_UpdateWorkflowAttributes() override { BaseClassMustBeDerivedFromService(this); @@ -4116,7 +4212,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithGenericMethod_GetWorkflowAttributes() { - ::grpc::Service::MarkMethodGeneric(37); + ::grpc::Service::MarkMethodGeneric(38); } ~WithGenericMethod_GetWorkflowAttributes() override { BaseClassMustBeDerivedFromService(this); @@ -4133,7 +4229,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithGenericMethod_DeleteWorkflowAttributes() { - ::grpc::Service::MarkMethodGeneric(38); + ::grpc::Service::MarkMethodGeneric(39); } ~WithGenericMethod_DeleteWorkflowAttributes() override { BaseClassMustBeDerivedFromService(this); @@ -4150,7 +4246,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithGenericMethod_ListMatchableAttributes() { - ::grpc::Service::MarkMethodGeneric(39); + ::grpc::Service::MarkMethodGeneric(40); } ~WithGenericMethod_ListMatchableAttributes() override { BaseClassMustBeDerivedFromService(this); @@ -4167,7 +4263,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithGenericMethod_ListNamedEntities() { - ::grpc::Service::MarkMethodGeneric(40); + ::grpc::Service::MarkMethodGeneric(41); } ~WithGenericMethod_ListNamedEntities() override { BaseClassMustBeDerivedFromService(this); @@ -4184,7 +4280,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithGenericMethod_GetNamedEntity() { - ::grpc::Service::MarkMethodGeneric(41); + ::grpc::Service::MarkMethodGeneric(42); } ~WithGenericMethod_GetNamedEntity() override { BaseClassMustBeDerivedFromService(this); @@ -4201,7 +4297,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithGenericMethod_UpdateNamedEntity() { - ::grpc::Service::MarkMethodGeneric(42); + ::grpc::Service::MarkMethodGeneric(43); } ~WithGenericMethod_UpdateNamedEntity() override { BaseClassMustBeDerivedFromService(this); @@ -4373,12 +4469,32 @@ class AdminService final { } }; template + class WithRawMethod_UpdateWorkflow : public BaseClass { + private: + void BaseClassMustBeDerivedFromService(const Service *service) {} + public: + WithRawMethod_UpdateWorkflow() { + ::grpc::Service::MarkMethodRaw(8); + } + ~WithRawMethod_UpdateWorkflow() override { + BaseClassMustBeDerivedFromService(this); + } + // disable synchronous version of this method + ::grpc::Status UpdateWorkflow(::grpc::ServerContext* context, const ::flyteidl::admin::WorkflowUpdateRequest* request, ::flyteidl::admin::WorkflowUpdateResponse* response) override { + abort(); + return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); + } + void RequestUpdateWorkflow(::grpc::ServerContext* context, ::grpc::ByteBuffer* request, ::grpc::ServerAsyncResponseWriter< ::grpc::ByteBuffer>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) { + ::grpc::Service::RequestAsyncUnary(8, context, request, response, new_call_cq, notification_cq, tag); + } + }; + template class WithRawMethod_CreateLaunchPlan : public BaseClass { private: void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithRawMethod_CreateLaunchPlan() { - ::grpc::Service::MarkMethodRaw(8); + ::grpc::Service::MarkMethodRaw(9); } ~WithRawMethod_CreateLaunchPlan() override { BaseClassMustBeDerivedFromService(this); @@ -4389,7 +4505,7 @@ class AdminService final { return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); } void RequestCreateLaunchPlan(::grpc::ServerContext* context, ::grpc::ByteBuffer* request, ::grpc::ServerAsyncResponseWriter< ::grpc::ByteBuffer>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) { - ::grpc::Service::RequestAsyncUnary(8, context, request, response, new_call_cq, notification_cq, tag); + ::grpc::Service::RequestAsyncUnary(9, context, request, response, new_call_cq, notification_cq, tag); } }; template @@ -4398,7 +4514,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithRawMethod_GetLaunchPlan() { - ::grpc::Service::MarkMethodRaw(9); + ::grpc::Service::MarkMethodRaw(10); } ~WithRawMethod_GetLaunchPlan() override { BaseClassMustBeDerivedFromService(this); @@ -4409,7 +4525,7 @@ class AdminService final { return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); } void RequestGetLaunchPlan(::grpc::ServerContext* context, ::grpc::ByteBuffer* request, ::grpc::ServerAsyncResponseWriter< ::grpc::ByteBuffer>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) { - ::grpc::Service::RequestAsyncUnary(9, context, request, response, new_call_cq, notification_cq, tag); + ::grpc::Service::RequestAsyncUnary(10, context, request, response, new_call_cq, notification_cq, tag); } }; template @@ -4418,7 +4534,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithRawMethod_GetActiveLaunchPlan() { - ::grpc::Service::MarkMethodRaw(10); + ::grpc::Service::MarkMethodRaw(11); } ~WithRawMethod_GetActiveLaunchPlan() override { BaseClassMustBeDerivedFromService(this); @@ -4429,7 +4545,7 @@ class AdminService final { return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); } void RequestGetActiveLaunchPlan(::grpc::ServerContext* context, ::grpc::ByteBuffer* request, ::grpc::ServerAsyncResponseWriter< ::grpc::ByteBuffer>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) { - ::grpc::Service::RequestAsyncUnary(10, context, request, response, new_call_cq, notification_cq, tag); + ::grpc::Service::RequestAsyncUnary(11, context, request, response, new_call_cq, notification_cq, tag); } }; template @@ -4438,7 +4554,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithRawMethod_ListActiveLaunchPlans() { - ::grpc::Service::MarkMethodRaw(11); + ::grpc::Service::MarkMethodRaw(12); } ~WithRawMethod_ListActiveLaunchPlans() override { BaseClassMustBeDerivedFromService(this); @@ -4449,7 +4565,7 @@ class AdminService final { return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); } void RequestListActiveLaunchPlans(::grpc::ServerContext* context, ::grpc::ByteBuffer* request, ::grpc::ServerAsyncResponseWriter< ::grpc::ByteBuffer>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) { - ::grpc::Service::RequestAsyncUnary(11, context, request, response, new_call_cq, notification_cq, tag); + ::grpc::Service::RequestAsyncUnary(12, context, request, response, new_call_cq, notification_cq, tag); } }; template @@ -4458,7 +4574,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithRawMethod_ListLaunchPlanIds() { - ::grpc::Service::MarkMethodRaw(12); + ::grpc::Service::MarkMethodRaw(13); } ~WithRawMethod_ListLaunchPlanIds() override { BaseClassMustBeDerivedFromService(this); @@ -4469,7 +4585,7 @@ class AdminService final { return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); } void RequestListLaunchPlanIds(::grpc::ServerContext* context, ::grpc::ByteBuffer* request, ::grpc::ServerAsyncResponseWriter< ::grpc::ByteBuffer>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) { - ::grpc::Service::RequestAsyncUnary(12, context, request, response, new_call_cq, notification_cq, tag); + ::grpc::Service::RequestAsyncUnary(13, context, request, response, new_call_cq, notification_cq, tag); } }; template @@ -4478,7 +4594,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithRawMethod_ListLaunchPlans() { - ::grpc::Service::MarkMethodRaw(13); + ::grpc::Service::MarkMethodRaw(14); } ~WithRawMethod_ListLaunchPlans() override { BaseClassMustBeDerivedFromService(this); @@ -4489,7 +4605,7 @@ class AdminService final { return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); } void RequestListLaunchPlans(::grpc::ServerContext* context, ::grpc::ByteBuffer* request, ::grpc::ServerAsyncResponseWriter< ::grpc::ByteBuffer>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) { - ::grpc::Service::RequestAsyncUnary(13, context, request, response, new_call_cq, notification_cq, tag); + ::grpc::Service::RequestAsyncUnary(14, context, request, response, new_call_cq, notification_cq, tag); } }; template @@ -4498,7 +4614,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithRawMethod_UpdateLaunchPlan() { - ::grpc::Service::MarkMethodRaw(14); + ::grpc::Service::MarkMethodRaw(15); } ~WithRawMethod_UpdateLaunchPlan() override { BaseClassMustBeDerivedFromService(this); @@ -4509,7 +4625,7 @@ class AdminService final { return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); } void RequestUpdateLaunchPlan(::grpc::ServerContext* context, ::grpc::ByteBuffer* request, ::grpc::ServerAsyncResponseWriter< ::grpc::ByteBuffer>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) { - ::grpc::Service::RequestAsyncUnary(14, context, request, response, new_call_cq, notification_cq, tag); + ::grpc::Service::RequestAsyncUnary(15, context, request, response, new_call_cq, notification_cq, tag); } }; template @@ -4518,7 +4634,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithRawMethod_CreateExecution() { - ::grpc::Service::MarkMethodRaw(15); + ::grpc::Service::MarkMethodRaw(16); } ~WithRawMethod_CreateExecution() override { BaseClassMustBeDerivedFromService(this); @@ -4529,7 +4645,7 @@ class AdminService final { return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); } void RequestCreateExecution(::grpc::ServerContext* context, ::grpc::ByteBuffer* request, ::grpc::ServerAsyncResponseWriter< ::grpc::ByteBuffer>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) { - ::grpc::Service::RequestAsyncUnary(15, context, request, response, new_call_cq, notification_cq, tag); + ::grpc::Service::RequestAsyncUnary(16, context, request, response, new_call_cq, notification_cq, tag); } }; template @@ -4538,7 +4654,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithRawMethod_RelaunchExecution() { - ::grpc::Service::MarkMethodRaw(16); + ::grpc::Service::MarkMethodRaw(17); } ~WithRawMethod_RelaunchExecution() override { BaseClassMustBeDerivedFromService(this); @@ -4549,7 +4665,7 @@ class AdminService final { return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); } void RequestRelaunchExecution(::grpc::ServerContext* context, ::grpc::ByteBuffer* request, ::grpc::ServerAsyncResponseWriter< ::grpc::ByteBuffer>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) { - ::grpc::Service::RequestAsyncUnary(16, context, request, response, new_call_cq, notification_cq, tag); + ::grpc::Service::RequestAsyncUnary(17, context, request, response, new_call_cq, notification_cq, tag); } }; template @@ -4558,7 +4674,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithRawMethod_GetExecution() { - ::grpc::Service::MarkMethodRaw(17); + ::grpc::Service::MarkMethodRaw(18); } ~WithRawMethod_GetExecution() override { BaseClassMustBeDerivedFromService(this); @@ -4569,7 +4685,7 @@ class AdminService final { return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); } void RequestGetExecution(::grpc::ServerContext* context, ::grpc::ByteBuffer* request, ::grpc::ServerAsyncResponseWriter< ::grpc::ByteBuffer>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) { - ::grpc::Service::RequestAsyncUnary(17, context, request, response, new_call_cq, notification_cq, tag); + ::grpc::Service::RequestAsyncUnary(18, context, request, response, new_call_cq, notification_cq, tag); } }; template @@ -4578,7 +4694,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithRawMethod_GetExecutionData() { - ::grpc::Service::MarkMethodRaw(18); + ::grpc::Service::MarkMethodRaw(19); } ~WithRawMethod_GetExecutionData() override { BaseClassMustBeDerivedFromService(this); @@ -4589,7 +4705,7 @@ class AdminService final { return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); } void RequestGetExecutionData(::grpc::ServerContext* context, ::grpc::ByteBuffer* request, ::grpc::ServerAsyncResponseWriter< ::grpc::ByteBuffer>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) { - ::grpc::Service::RequestAsyncUnary(18, context, request, response, new_call_cq, notification_cq, tag); + ::grpc::Service::RequestAsyncUnary(19, context, request, response, new_call_cq, notification_cq, tag); } }; template @@ -4598,7 +4714,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithRawMethod_ListExecutions() { - ::grpc::Service::MarkMethodRaw(19); + ::grpc::Service::MarkMethodRaw(20); } ~WithRawMethod_ListExecutions() override { BaseClassMustBeDerivedFromService(this); @@ -4609,7 +4725,7 @@ class AdminService final { return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); } void RequestListExecutions(::grpc::ServerContext* context, ::grpc::ByteBuffer* request, ::grpc::ServerAsyncResponseWriter< ::grpc::ByteBuffer>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) { - ::grpc::Service::RequestAsyncUnary(19, context, request, response, new_call_cq, notification_cq, tag); + ::grpc::Service::RequestAsyncUnary(20, context, request, response, new_call_cq, notification_cq, tag); } }; template @@ -4618,7 +4734,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithRawMethod_TerminateExecution() { - ::grpc::Service::MarkMethodRaw(20); + ::grpc::Service::MarkMethodRaw(21); } ~WithRawMethod_TerminateExecution() override { BaseClassMustBeDerivedFromService(this); @@ -4629,7 +4745,7 @@ class AdminService final { return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); } void RequestTerminateExecution(::grpc::ServerContext* context, ::grpc::ByteBuffer* request, ::grpc::ServerAsyncResponseWriter< ::grpc::ByteBuffer>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) { - ::grpc::Service::RequestAsyncUnary(20, context, request, response, new_call_cq, notification_cq, tag); + ::grpc::Service::RequestAsyncUnary(21, context, request, response, new_call_cq, notification_cq, tag); } }; template @@ -4638,7 +4754,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithRawMethod_GetNodeExecution() { - ::grpc::Service::MarkMethodRaw(21); + ::grpc::Service::MarkMethodRaw(22); } ~WithRawMethod_GetNodeExecution() override { BaseClassMustBeDerivedFromService(this); @@ -4649,7 +4765,7 @@ class AdminService final { return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); } void RequestGetNodeExecution(::grpc::ServerContext* context, ::grpc::ByteBuffer* request, ::grpc::ServerAsyncResponseWriter< ::grpc::ByteBuffer>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) { - ::grpc::Service::RequestAsyncUnary(21, context, request, response, new_call_cq, notification_cq, tag); + ::grpc::Service::RequestAsyncUnary(22, context, request, response, new_call_cq, notification_cq, tag); } }; template @@ -4658,7 +4774,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithRawMethod_ListNodeExecutions() { - ::grpc::Service::MarkMethodRaw(22); + ::grpc::Service::MarkMethodRaw(23); } ~WithRawMethod_ListNodeExecutions() override { BaseClassMustBeDerivedFromService(this); @@ -4669,7 +4785,7 @@ class AdminService final { return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); } void RequestListNodeExecutions(::grpc::ServerContext* context, ::grpc::ByteBuffer* request, ::grpc::ServerAsyncResponseWriter< ::grpc::ByteBuffer>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) { - ::grpc::Service::RequestAsyncUnary(22, context, request, response, new_call_cq, notification_cq, tag); + ::grpc::Service::RequestAsyncUnary(23, context, request, response, new_call_cq, notification_cq, tag); } }; template @@ -4678,7 +4794,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithRawMethod_ListNodeExecutionsForTask() { - ::grpc::Service::MarkMethodRaw(23); + ::grpc::Service::MarkMethodRaw(24); } ~WithRawMethod_ListNodeExecutionsForTask() override { BaseClassMustBeDerivedFromService(this); @@ -4689,7 +4805,7 @@ class AdminService final { return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); } void RequestListNodeExecutionsForTask(::grpc::ServerContext* context, ::grpc::ByteBuffer* request, ::grpc::ServerAsyncResponseWriter< ::grpc::ByteBuffer>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) { - ::grpc::Service::RequestAsyncUnary(23, context, request, response, new_call_cq, notification_cq, tag); + ::grpc::Service::RequestAsyncUnary(24, context, request, response, new_call_cq, notification_cq, tag); } }; template @@ -4698,7 +4814,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithRawMethod_GetNodeExecutionData() { - ::grpc::Service::MarkMethodRaw(24); + ::grpc::Service::MarkMethodRaw(25); } ~WithRawMethod_GetNodeExecutionData() override { BaseClassMustBeDerivedFromService(this); @@ -4709,7 +4825,7 @@ class AdminService final { return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); } void RequestGetNodeExecutionData(::grpc::ServerContext* context, ::grpc::ByteBuffer* request, ::grpc::ServerAsyncResponseWriter< ::grpc::ByteBuffer>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) { - ::grpc::Service::RequestAsyncUnary(24, context, request, response, new_call_cq, notification_cq, tag); + ::grpc::Service::RequestAsyncUnary(25, context, request, response, new_call_cq, notification_cq, tag); } }; template @@ -4718,7 +4834,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithRawMethod_RegisterProject() { - ::grpc::Service::MarkMethodRaw(25); + ::grpc::Service::MarkMethodRaw(26); } ~WithRawMethod_RegisterProject() override { BaseClassMustBeDerivedFromService(this); @@ -4729,7 +4845,7 @@ class AdminService final { return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); } void RequestRegisterProject(::grpc::ServerContext* context, ::grpc::ByteBuffer* request, ::grpc::ServerAsyncResponseWriter< ::grpc::ByteBuffer>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) { - ::grpc::Service::RequestAsyncUnary(25, context, request, response, new_call_cq, notification_cq, tag); + ::grpc::Service::RequestAsyncUnary(26, context, request, response, new_call_cq, notification_cq, tag); } }; template @@ -4738,7 +4854,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithRawMethod_ListProjects() { - ::grpc::Service::MarkMethodRaw(26); + ::grpc::Service::MarkMethodRaw(27); } ~WithRawMethod_ListProjects() override { BaseClassMustBeDerivedFromService(this); @@ -4749,7 +4865,7 @@ class AdminService final { return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); } void RequestListProjects(::grpc::ServerContext* context, ::grpc::ByteBuffer* request, ::grpc::ServerAsyncResponseWriter< ::grpc::ByteBuffer>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) { - ::grpc::Service::RequestAsyncUnary(26, context, request, response, new_call_cq, notification_cq, tag); + ::grpc::Service::RequestAsyncUnary(27, context, request, response, new_call_cq, notification_cq, tag); } }; template @@ -4758,7 +4874,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithRawMethod_CreateWorkflowEvent() { - ::grpc::Service::MarkMethodRaw(27); + ::grpc::Service::MarkMethodRaw(28); } ~WithRawMethod_CreateWorkflowEvent() override { BaseClassMustBeDerivedFromService(this); @@ -4769,7 +4885,7 @@ class AdminService final { return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); } void RequestCreateWorkflowEvent(::grpc::ServerContext* context, ::grpc::ByteBuffer* request, ::grpc::ServerAsyncResponseWriter< ::grpc::ByteBuffer>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) { - ::grpc::Service::RequestAsyncUnary(27, context, request, response, new_call_cq, notification_cq, tag); + ::grpc::Service::RequestAsyncUnary(28, context, request, response, new_call_cq, notification_cq, tag); } }; template @@ -4778,7 +4894,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithRawMethod_CreateNodeEvent() { - ::grpc::Service::MarkMethodRaw(28); + ::grpc::Service::MarkMethodRaw(29); } ~WithRawMethod_CreateNodeEvent() override { BaseClassMustBeDerivedFromService(this); @@ -4789,7 +4905,7 @@ class AdminService final { return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); } void RequestCreateNodeEvent(::grpc::ServerContext* context, ::grpc::ByteBuffer* request, ::grpc::ServerAsyncResponseWriter< ::grpc::ByteBuffer>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) { - ::grpc::Service::RequestAsyncUnary(28, context, request, response, new_call_cq, notification_cq, tag); + ::grpc::Service::RequestAsyncUnary(29, context, request, response, new_call_cq, notification_cq, tag); } }; template @@ -4798,7 +4914,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithRawMethod_CreateTaskEvent() { - ::grpc::Service::MarkMethodRaw(29); + ::grpc::Service::MarkMethodRaw(30); } ~WithRawMethod_CreateTaskEvent() override { BaseClassMustBeDerivedFromService(this); @@ -4809,7 +4925,7 @@ class AdminService final { return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); } void RequestCreateTaskEvent(::grpc::ServerContext* context, ::grpc::ByteBuffer* request, ::grpc::ServerAsyncResponseWriter< ::grpc::ByteBuffer>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) { - ::grpc::Service::RequestAsyncUnary(29, context, request, response, new_call_cq, notification_cq, tag); + ::grpc::Service::RequestAsyncUnary(30, context, request, response, new_call_cq, notification_cq, tag); } }; template @@ -4818,7 +4934,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithRawMethod_GetTaskExecution() { - ::grpc::Service::MarkMethodRaw(30); + ::grpc::Service::MarkMethodRaw(31); } ~WithRawMethod_GetTaskExecution() override { BaseClassMustBeDerivedFromService(this); @@ -4829,7 +4945,7 @@ class AdminService final { return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); } void RequestGetTaskExecution(::grpc::ServerContext* context, ::grpc::ByteBuffer* request, ::grpc::ServerAsyncResponseWriter< ::grpc::ByteBuffer>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) { - ::grpc::Service::RequestAsyncUnary(30, context, request, response, new_call_cq, notification_cq, tag); + ::grpc::Service::RequestAsyncUnary(31, context, request, response, new_call_cq, notification_cq, tag); } }; template @@ -4838,7 +4954,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithRawMethod_ListTaskExecutions() { - ::grpc::Service::MarkMethodRaw(31); + ::grpc::Service::MarkMethodRaw(32); } ~WithRawMethod_ListTaskExecutions() override { BaseClassMustBeDerivedFromService(this); @@ -4849,7 +4965,7 @@ class AdminService final { return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); } void RequestListTaskExecutions(::grpc::ServerContext* context, ::grpc::ByteBuffer* request, ::grpc::ServerAsyncResponseWriter< ::grpc::ByteBuffer>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) { - ::grpc::Service::RequestAsyncUnary(31, context, request, response, new_call_cq, notification_cq, tag); + ::grpc::Service::RequestAsyncUnary(32, context, request, response, new_call_cq, notification_cq, tag); } }; template @@ -4858,7 +4974,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithRawMethod_GetTaskExecutionData() { - ::grpc::Service::MarkMethodRaw(32); + ::grpc::Service::MarkMethodRaw(33); } ~WithRawMethod_GetTaskExecutionData() override { BaseClassMustBeDerivedFromService(this); @@ -4869,7 +4985,7 @@ class AdminService final { return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); } void RequestGetTaskExecutionData(::grpc::ServerContext* context, ::grpc::ByteBuffer* request, ::grpc::ServerAsyncResponseWriter< ::grpc::ByteBuffer>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) { - ::grpc::Service::RequestAsyncUnary(32, context, request, response, new_call_cq, notification_cq, tag); + ::grpc::Service::RequestAsyncUnary(33, context, request, response, new_call_cq, notification_cq, tag); } }; template @@ -4878,7 +4994,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithRawMethod_UpdateProjectDomainAttributes() { - ::grpc::Service::MarkMethodRaw(33); + ::grpc::Service::MarkMethodRaw(34); } ~WithRawMethod_UpdateProjectDomainAttributes() override { BaseClassMustBeDerivedFromService(this); @@ -4889,7 +5005,7 @@ class AdminService final { return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); } void RequestUpdateProjectDomainAttributes(::grpc::ServerContext* context, ::grpc::ByteBuffer* request, ::grpc::ServerAsyncResponseWriter< ::grpc::ByteBuffer>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) { - ::grpc::Service::RequestAsyncUnary(33, context, request, response, new_call_cq, notification_cq, tag); + ::grpc::Service::RequestAsyncUnary(34, context, request, response, new_call_cq, notification_cq, tag); } }; template @@ -4898,7 +5014,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithRawMethod_GetProjectDomainAttributes() { - ::grpc::Service::MarkMethodRaw(34); + ::grpc::Service::MarkMethodRaw(35); } ~WithRawMethod_GetProjectDomainAttributes() override { BaseClassMustBeDerivedFromService(this); @@ -4909,7 +5025,7 @@ class AdminService final { return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); } void RequestGetProjectDomainAttributes(::grpc::ServerContext* context, ::grpc::ByteBuffer* request, ::grpc::ServerAsyncResponseWriter< ::grpc::ByteBuffer>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) { - ::grpc::Service::RequestAsyncUnary(34, context, request, response, new_call_cq, notification_cq, tag); + ::grpc::Service::RequestAsyncUnary(35, context, request, response, new_call_cq, notification_cq, tag); } }; template @@ -4918,7 +5034,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithRawMethod_DeleteProjectDomainAttributes() { - ::grpc::Service::MarkMethodRaw(35); + ::grpc::Service::MarkMethodRaw(36); } ~WithRawMethod_DeleteProjectDomainAttributes() override { BaseClassMustBeDerivedFromService(this); @@ -4929,7 +5045,7 @@ class AdminService final { return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); } void RequestDeleteProjectDomainAttributes(::grpc::ServerContext* context, ::grpc::ByteBuffer* request, ::grpc::ServerAsyncResponseWriter< ::grpc::ByteBuffer>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) { - ::grpc::Service::RequestAsyncUnary(35, context, request, response, new_call_cq, notification_cq, tag); + ::grpc::Service::RequestAsyncUnary(36, context, request, response, new_call_cq, notification_cq, tag); } }; template @@ -4938,7 +5054,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithRawMethod_UpdateWorkflowAttributes() { - ::grpc::Service::MarkMethodRaw(36); + ::grpc::Service::MarkMethodRaw(37); } ~WithRawMethod_UpdateWorkflowAttributes() override { BaseClassMustBeDerivedFromService(this); @@ -4949,7 +5065,7 @@ class AdminService final { return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); } void RequestUpdateWorkflowAttributes(::grpc::ServerContext* context, ::grpc::ByteBuffer* request, ::grpc::ServerAsyncResponseWriter< ::grpc::ByteBuffer>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) { - ::grpc::Service::RequestAsyncUnary(36, context, request, response, new_call_cq, notification_cq, tag); + ::grpc::Service::RequestAsyncUnary(37, context, request, response, new_call_cq, notification_cq, tag); } }; template @@ -4958,7 +5074,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithRawMethod_GetWorkflowAttributes() { - ::grpc::Service::MarkMethodRaw(37); + ::grpc::Service::MarkMethodRaw(38); } ~WithRawMethod_GetWorkflowAttributes() override { BaseClassMustBeDerivedFromService(this); @@ -4969,7 +5085,7 @@ class AdminService final { return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); } void RequestGetWorkflowAttributes(::grpc::ServerContext* context, ::grpc::ByteBuffer* request, ::grpc::ServerAsyncResponseWriter< ::grpc::ByteBuffer>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) { - ::grpc::Service::RequestAsyncUnary(37, context, request, response, new_call_cq, notification_cq, tag); + ::grpc::Service::RequestAsyncUnary(38, context, request, response, new_call_cq, notification_cq, tag); } }; template @@ -4978,7 +5094,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithRawMethod_DeleteWorkflowAttributes() { - ::grpc::Service::MarkMethodRaw(38); + ::grpc::Service::MarkMethodRaw(39); } ~WithRawMethod_DeleteWorkflowAttributes() override { BaseClassMustBeDerivedFromService(this); @@ -4989,7 +5105,7 @@ class AdminService final { return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); } void RequestDeleteWorkflowAttributes(::grpc::ServerContext* context, ::grpc::ByteBuffer* request, ::grpc::ServerAsyncResponseWriter< ::grpc::ByteBuffer>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) { - ::grpc::Service::RequestAsyncUnary(38, context, request, response, new_call_cq, notification_cq, tag); + ::grpc::Service::RequestAsyncUnary(39, context, request, response, new_call_cq, notification_cq, tag); } }; template @@ -4998,7 +5114,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithRawMethod_ListMatchableAttributes() { - ::grpc::Service::MarkMethodRaw(39); + ::grpc::Service::MarkMethodRaw(40); } ~WithRawMethod_ListMatchableAttributes() override { BaseClassMustBeDerivedFromService(this); @@ -5009,7 +5125,7 @@ class AdminService final { return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); } void RequestListMatchableAttributes(::grpc::ServerContext* context, ::grpc::ByteBuffer* request, ::grpc::ServerAsyncResponseWriter< ::grpc::ByteBuffer>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) { - ::grpc::Service::RequestAsyncUnary(39, context, request, response, new_call_cq, notification_cq, tag); + ::grpc::Service::RequestAsyncUnary(40, context, request, response, new_call_cq, notification_cq, tag); } }; template @@ -5018,7 +5134,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithRawMethod_ListNamedEntities() { - ::grpc::Service::MarkMethodRaw(40); + ::grpc::Service::MarkMethodRaw(41); } ~WithRawMethod_ListNamedEntities() override { BaseClassMustBeDerivedFromService(this); @@ -5029,7 +5145,7 @@ class AdminService final { return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); } void RequestListNamedEntities(::grpc::ServerContext* context, ::grpc::ByteBuffer* request, ::grpc::ServerAsyncResponseWriter< ::grpc::ByteBuffer>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) { - ::grpc::Service::RequestAsyncUnary(40, context, request, response, new_call_cq, notification_cq, tag); + ::grpc::Service::RequestAsyncUnary(41, context, request, response, new_call_cq, notification_cq, tag); } }; template @@ -5038,7 +5154,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithRawMethod_GetNamedEntity() { - ::grpc::Service::MarkMethodRaw(41); + ::grpc::Service::MarkMethodRaw(42); } ~WithRawMethod_GetNamedEntity() override { BaseClassMustBeDerivedFromService(this); @@ -5049,7 +5165,7 @@ class AdminService final { return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); } void RequestGetNamedEntity(::grpc::ServerContext* context, ::grpc::ByteBuffer* request, ::grpc::ServerAsyncResponseWriter< ::grpc::ByteBuffer>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) { - ::grpc::Service::RequestAsyncUnary(41, context, request, response, new_call_cq, notification_cq, tag); + ::grpc::Service::RequestAsyncUnary(42, context, request, response, new_call_cq, notification_cq, tag); } }; template @@ -5058,7 +5174,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithRawMethod_UpdateNamedEntity() { - ::grpc::Service::MarkMethodRaw(42); + ::grpc::Service::MarkMethodRaw(43); } ~WithRawMethod_UpdateNamedEntity() override { BaseClassMustBeDerivedFromService(this); @@ -5069,7 +5185,7 @@ class AdminService final { return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); } void RequestUpdateNamedEntity(::grpc::ServerContext* context, ::grpc::ByteBuffer* request, ::grpc::ServerAsyncResponseWriter< ::grpc::ByteBuffer>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) { - ::grpc::Service::RequestAsyncUnary(42, context, request, response, new_call_cq, notification_cq, tag); + ::grpc::Service::RequestAsyncUnary(43, context, request, response, new_call_cq, notification_cq, tag); } }; template @@ -5273,12 +5389,37 @@ class AdminService final { virtual void ListWorkflows(::grpc::ServerContext* context, const ::grpc::ByteBuffer* request, ::grpc::ByteBuffer* response, ::grpc::experimental::ServerCallbackRpcController* controller) { controller->Finish(::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, "")); } }; template + class ExperimentalWithRawCallbackMethod_UpdateWorkflow : public BaseClass { + private: + void BaseClassMustBeDerivedFromService(const Service *service) {} + public: + ExperimentalWithRawCallbackMethod_UpdateWorkflow() { + ::grpc::Service::experimental().MarkMethodRawCallback(8, + new ::grpc::internal::CallbackUnaryHandler< ::grpc::ByteBuffer, ::grpc::ByteBuffer>( + [this](::grpc::ServerContext* context, + const ::grpc::ByteBuffer* request, + ::grpc::ByteBuffer* response, + ::grpc::experimental::ServerCallbackRpcController* controller) { + this->UpdateWorkflow(context, request, response, controller); + })); + } + ~ExperimentalWithRawCallbackMethod_UpdateWorkflow() override { + BaseClassMustBeDerivedFromService(this); + } + // disable synchronous version of this method + ::grpc::Status UpdateWorkflow(::grpc::ServerContext* context, const ::flyteidl::admin::WorkflowUpdateRequest* request, ::flyteidl::admin::WorkflowUpdateResponse* response) override { + abort(); + return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); + } + virtual void UpdateWorkflow(::grpc::ServerContext* context, const ::grpc::ByteBuffer* request, ::grpc::ByteBuffer* response, ::grpc::experimental::ServerCallbackRpcController* controller) { controller->Finish(::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, "")); } + }; + template class ExperimentalWithRawCallbackMethod_CreateLaunchPlan : public BaseClass { private: void BaseClassMustBeDerivedFromService(const Service *service) {} public: ExperimentalWithRawCallbackMethod_CreateLaunchPlan() { - ::grpc::Service::experimental().MarkMethodRawCallback(8, + ::grpc::Service::experimental().MarkMethodRawCallback(9, new ::grpc::internal::CallbackUnaryHandler< ::grpc::ByteBuffer, ::grpc::ByteBuffer>( [this](::grpc::ServerContext* context, const ::grpc::ByteBuffer* request, @@ -5303,7 +5444,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: ExperimentalWithRawCallbackMethod_GetLaunchPlan() { - ::grpc::Service::experimental().MarkMethodRawCallback(9, + ::grpc::Service::experimental().MarkMethodRawCallback(10, new ::grpc::internal::CallbackUnaryHandler< ::grpc::ByteBuffer, ::grpc::ByteBuffer>( [this](::grpc::ServerContext* context, const ::grpc::ByteBuffer* request, @@ -5328,7 +5469,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: ExperimentalWithRawCallbackMethod_GetActiveLaunchPlan() { - ::grpc::Service::experimental().MarkMethodRawCallback(10, + ::grpc::Service::experimental().MarkMethodRawCallback(11, new ::grpc::internal::CallbackUnaryHandler< ::grpc::ByteBuffer, ::grpc::ByteBuffer>( [this](::grpc::ServerContext* context, const ::grpc::ByteBuffer* request, @@ -5353,7 +5494,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: ExperimentalWithRawCallbackMethod_ListActiveLaunchPlans() { - ::grpc::Service::experimental().MarkMethodRawCallback(11, + ::grpc::Service::experimental().MarkMethodRawCallback(12, new ::grpc::internal::CallbackUnaryHandler< ::grpc::ByteBuffer, ::grpc::ByteBuffer>( [this](::grpc::ServerContext* context, const ::grpc::ByteBuffer* request, @@ -5378,7 +5519,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: ExperimentalWithRawCallbackMethod_ListLaunchPlanIds() { - ::grpc::Service::experimental().MarkMethodRawCallback(12, + ::grpc::Service::experimental().MarkMethodRawCallback(13, new ::grpc::internal::CallbackUnaryHandler< ::grpc::ByteBuffer, ::grpc::ByteBuffer>( [this](::grpc::ServerContext* context, const ::grpc::ByteBuffer* request, @@ -5403,7 +5544,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: ExperimentalWithRawCallbackMethod_ListLaunchPlans() { - ::grpc::Service::experimental().MarkMethodRawCallback(13, + ::grpc::Service::experimental().MarkMethodRawCallback(14, new ::grpc::internal::CallbackUnaryHandler< ::grpc::ByteBuffer, ::grpc::ByteBuffer>( [this](::grpc::ServerContext* context, const ::grpc::ByteBuffer* request, @@ -5428,7 +5569,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: ExperimentalWithRawCallbackMethod_UpdateLaunchPlan() { - ::grpc::Service::experimental().MarkMethodRawCallback(14, + ::grpc::Service::experimental().MarkMethodRawCallback(15, new ::grpc::internal::CallbackUnaryHandler< ::grpc::ByteBuffer, ::grpc::ByteBuffer>( [this](::grpc::ServerContext* context, const ::grpc::ByteBuffer* request, @@ -5453,7 +5594,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: ExperimentalWithRawCallbackMethod_CreateExecution() { - ::grpc::Service::experimental().MarkMethodRawCallback(15, + ::grpc::Service::experimental().MarkMethodRawCallback(16, new ::grpc::internal::CallbackUnaryHandler< ::grpc::ByteBuffer, ::grpc::ByteBuffer>( [this](::grpc::ServerContext* context, const ::grpc::ByteBuffer* request, @@ -5478,7 +5619,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: ExperimentalWithRawCallbackMethod_RelaunchExecution() { - ::grpc::Service::experimental().MarkMethodRawCallback(16, + ::grpc::Service::experimental().MarkMethodRawCallback(17, new ::grpc::internal::CallbackUnaryHandler< ::grpc::ByteBuffer, ::grpc::ByteBuffer>( [this](::grpc::ServerContext* context, const ::grpc::ByteBuffer* request, @@ -5503,7 +5644,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: ExperimentalWithRawCallbackMethod_GetExecution() { - ::grpc::Service::experimental().MarkMethodRawCallback(17, + ::grpc::Service::experimental().MarkMethodRawCallback(18, new ::grpc::internal::CallbackUnaryHandler< ::grpc::ByteBuffer, ::grpc::ByteBuffer>( [this](::grpc::ServerContext* context, const ::grpc::ByteBuffer* request, @@ -5528,7 +5669,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: ExperimentalWithRawCallbackMethod_GetExecutionData() { - ::grpc::Service::experimental().MarkMethodRawCallback(18, + ::grpc::Service::experimental().MarkMethodRawCallback(19, new ::grpc::internal::CallbackUnaryHandler< ::grpc::ByteBuffer, ::grpc::ByteBuffer>( [this](::grpc::ServerContext* context, const ::grpc::ByteBuffer* request, @@ -5553,7 +5694,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: ExperimentalWithRawCallbackMethod_ListExecutions() { - ::grpc::Service::experimental().MarkMethodRawCallback(19, + ::grpc::Service::experimental().MarkMethodRawCallback(20, new ::grpc::internal::CallbackUnaryHandler< ::grpc::ByteBuffer, ::grpc::ByteBuffer>( [this](::grpc::ServerContext* context, const ::grpc::ByteBuffer* request, @@ -5578,7 +5719,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: ExperimentalWithRawCallbackMethod_TerminateExecution() { - ::grpc::Service::experimental().MarkMethodRawCallback(20, + ::grpc::Service::experimental().MarkMethodRawCallback(21, new ::grpc::internal::CallbackUnaryHandler< ::grpc::ByteBuffer, ::grpc::ByteBuffer>( [this](::grpc::ServerContext* context, const ::grpc::ByteBuffer* request, @@ -5603,7 +5744,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: ExperimentalWithRawCallbackMethod_GetNodeExecution() { - ::grpc::Service::experimental().MarkMethodRawCallback(21, + ::grpc::Service::experimental().MarkMethodRawCallback(22, new ::grpc::internal::CallbackUnaryHandler< ::grpc::ByteBuffer, ::grpc::ByteBuffer>( [this](::grpc::ServerContext* context, const ::grpc::ByteBuffer* request, @@ -5628,7 +5769,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: ExperimentalWithRawCallbackMethod_ListNodeExecutions() { - ::grpc::Service::experimental().MarkMethodRawCallback(22, + ::grpc::Service::experimental().MarkMethodRawCallback(23, new ::grpc::internal::CallbackUnaryHandler< ::grpc::ByteBuffer, ::grpc::ByteBuffer>( [this](::grpc::ServerContext* context, const ::grpc::ByteBuffer* request, @@ -5653,7 +5794,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: ExperimentalWithRawCallbackMethod_ListNodeExecutionsForTask() { - ::grpc::Service::experimental().MarkMethodRawCallback(23, + ::grpc::Service::experimental().MarkMethodRawCallback(24, new ::grpc::internal::CallbackUnaryHandler< ::grpc::ByteBuffer, ::grpc::ByteBuffer>( [this](::grpc::ServerContext* context, const ::grpc::ByteBuffer* request, @@ -5678,7 +5819,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: ExperimentalWithRawCallbackMethod_GetNodeExecutionData() { - ::grpc::Service::experimental().MarkMethodRawCallback(24, + ::grpc::Service::experimental().MarkMethodRawCallback(25, new ::grpc::internal::CallbackUnaryHandler< ::grpc::ByteBuffer, ::grpc::ByteBuffer>( [this](::grpc::ServerContext* context, const ::grpc::ByteBuffer* request, @@ -5703,7 +5844,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: ExperimentalWithRawCallbackMethod_RegisterProject() { - ::grpc::Service::experimental().MarkMethodRawCallback(25, + ::grpc::Service::experimental().MarkMethodRawCallback(26, new ::grpc::internal::CallbackUnaryHandler< ::grpc::ByteBuffer, ::grpc::ByteBuffer>( [this](::grpc::ServerContext* context, const ::grpc::ByteBuffer* request, @@ -5728,7 +5869,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: ExperimentalWithRawCallbackMethod_ListProjects() { - ::grpc::Service::experimental().MarkMethodRawCallback(26, + ::grpc::Service::experimental().MarkMethodRawCallback(27, new ::grpc::internal::CallbackUnaryHandler< ::grpc::ByteBuffer, ::grpc::ByteBuffer>( [this](::grpc::ServerContext* context, const ::grpc::ByteBuffer* request, @@ -5753,7 +5894,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: ExperimentalWithRawCallbackMethod_CreateWorkflowEvent() { - ::grpc::Service::experimental().MarkMethodRawCallback(27, + ::grpc::Service::experimental().MarkMethodRawCallback(28, new ::grpc::internal::CallbackUnaryHandler< ::grpc::ByteBuffer, ::grpc::ByteBuffer>( [this](::grpc::ServerContext* context, const ::grpc::ByteBuffer* request, @@ -5778,7 +5919,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: ExperimentalWithRawCallbackMethod_CreateNodeEvent() { - ::grpc::Service::experimental().MarkMethodRawCallback(28, + ::grpc::Service::experimental().MarkMethodRawCallback(29, new ::grpc::internal::CallbackUnaryHandler< ::grpc::ByteBuffer, ::grpc::ByteBuffer>( [this](::grpc::ServerContext* context, const ::grpc::ByteBuffer* request, @@ -5803,7 +5944,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: ExperimentalWithRawCallbackMethod_CreateTaskEvent() { - ::grpc::Service::experimental().MarkMethodRawCallback(29, + ::grpc::Service::experimental().MarkMethodRawCallback(30, new ::grpc::internal::CallbackUnaryHandler< ::grpc::ByteBuffer, ::grpc::ByteBuffer>( [this](::grpc::ServerContext* context, const ::grpc::ByteBuffer* request, @@ -5828,7 +5969,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: ExperimentalWithRawCallbackMethod_GetTaskExecution() { - ::grpc::Service::experimental().MarkMethodRawCallback(30, + ::grpc::Service::experimental().MarkMethodRawCallback(31, new ::grpc::internal::CallbackUnaryHandler< ::grpc::ByteBuffer, ::grpc::ByteBuffer>( [this](::grpc::ServerContext* context, const ::grpc::ByteBuffer* request, @@ -5853,7 +5994,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: ExperimentalWithRawCallbackMethod_ListTaskExecutions() { - ::grpc::Service::experimental().MarkMethodRawCallback(31, + ::grpc::Service::experimental().MarkMethodRawCallback(32, new ::grpc::internal::CallbackUnaryHandler< ::grpc::ByteBuffer, ::grpc::ByteBuffer>( [this](::grpc::ServerContext* context, const ::grpc::ByteBuffer* request, @@ -5878,7 +6019,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: ExperimentalWithRawCallbackMethod_GetTaskExecutionData() { - ::grpc::Service::experimental().MarkMethodRawCallback(32, + ::grpc::Service::experimental().MarkMethodRawCallback(33, new ::grpc::internal::CallbackUnaryHandler< ::grpc::ByteBuffer, ::grpc::ByteBuffer>( [this](::grpc::ServerContext* context, const ::grpc::ByteBuffer* request, @@ -5903,7 +6044,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: ExperimentalWithRawCallbackMethod_UpdateProjectDomainAttributes() { - ::grpc::Service::experimental().MarkMethodRawCallback(33, + ::grpc::Service::experimental().MarkMethodRawCallback(34, new ::grpc::internal::CallbackUnaryHandler< ::grpc::ByteBuffer, ::grpc::ByteBuffer>( [this](::grpc::ServerContext* context, const ::grpc::ByteBuffer* request, @@ -5928,7 +6069,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: ExperimentalWithRawCallbackMethod_GetProjectDomainAttributes() { - ::grpc::Service::experimental().MarkMethodRawCallback(34, + ::grpc::Service::experimental().MarkMethodRawCallback(35, new ::grpc::internal::CallbackUnaryHandler< ::grpc::ByteBuffer, ::grpc::ByteBuffer>( [this](::grpc::ServerContext* context, const ::grpc::ByteBuffer* request, @@ -5953,7 +6094,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: ExperimentalWithRawCallbackMethod_DeleteProjectDomainAttributes() { - ::grpc::Service::experimental().MarkMethodRawCallback(35, + ::grpc::Service::experimental().MarkMethodRawCallback(36, new ::grpc::internal::CallbackUnaryHandler< ::grpc::ByteBuffer, ::grpc::ByteBuffer>( [this](::grpc::ServerContext* context, const ::grpc::ByteBuffer* request, @@ -5978,7 +6119,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: ExperimentalWithRawCallbackMethod_UpdateWorkflowAttributes() { - ::grpc::Service::experimental().MarkMethodRawCallback(36, + ::grpc::Service::experimental().MarkMethodRawCallback(37, new ::grpc::internal::CallbackUnaryHandler< ::grpc::ByteBuffer, ::grpc::ByteBuffer>( [this](::grpc::ServerContext* context, const ::grpc::ByteBuffer* request, @@ -6003,7 +6144,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: ExperimentalWithRawCallbackMethod_GetWorkflowAttributes() { - ::grpc::Service::experimental().MarkMethodRawCallback(37, + ::grpc::Service::experimental().MarkMethodRawCallback(38, new ::grpc::internal::CallbackUnaryHandler< ::grpc::ByteBuffer, ::grpc::ByteBuffer>( [this](::grpc::ServerContext* context, const ::grpc::ByteBuffer* request, @@ -6028,7 +6169,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: ExperimentalWithRawCallbackMethod_DeleteWorkflowAttributes() { - ::grpc::Service::experimental().MarkMethodRawCallback(38, + ::grpc::Service::experimental().MarkMethodRawCallback(39, new ::grpc::internal::CallbackUnaryHandler< ::grpc::ByteBuffer, ::grpc::ByteBuffer>( [this](::grpc::ServerContext* context, const ::grpc::ByteBuffer* request, @@ -6053,7 +6194,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: ExperimentalWithRawCallbackMethod_ListMatchableAttributes() { - ::grpc::Service::experimental().MarkMethodRawCallback(39, + ::grpc::Service::experimental().MarkMethodRawCallback(40, new ::grpc::internal::CallbackUnaryHandler< ::grpc::ByteBuffer, ::grpc::ByteBuffer>( [this](::grpc::ServerContext* context, const ::grpc::ByteBuffer* request, @@ -6078,7 +6219,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: ExperimentalWithRawCallbackMethod_ListNamedEntities() { - ::grpc::Service::experimental().MarkMethodRawCallback(40, + ::grpc::Service::experimental().MarkMethodRawCallback(41, new ::grpc::internal::CallbackUnaryHandler< ::grpc::ByteBuffer, ::grpc::ByteBuffer>( [this](::grpc::ServerContext* context, const ::grpc::ByteBuffer* request, @@ -6103,7 +6244,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: ExperimentalWithRawCallbackMethod_GetNamedEntity() { - ::grpc::Service::experimental().MarkMethodRawCallback(41, + ::grpc::Service::experimental().MarkMethodRawCallback(42, new ::grpc::internal::CallbackUnaryHandler< ::grpc::ByteBuffer, ::grpc::ByteBuffer>( [this](::grpc::ServerContext* context, const ::grpc::ByteBuffer* request, @@ -6128,7 +6269,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: ExperimentalWithRawCallbackMethod_UpdateNamedEntity() { - ::grpc::Service::experimental().MarkMethodRawCallback(42, + ::grpc::Service::experimental().MarkMethodRawCallback(43, new ::grpc::internal::CallbackUnaryHandler< ::grpc::ByteBuffer, ::grpc::ByteBuffer>( [this](::grpc::ServerContext* context, const ::grpc::ByteBuffer* request, @@ -6308,12 +6449,32 @@ class AdminService final { virtual ::grpc::Status StreamedListWorkflows(::grpc::ServerContext* context, ::grpc::ServerUnaryStreamer< ::flyteidl::admin::ResourceListRequest,::flyteidl::admin::WorkflowList>* server_unary_streamer) = 0; }; template + class WithStreamedUnaryMethod_UpdateWorkflow : public BaseClass { + private: + void BaseClassMustBeDerivedFromService(const Service *service) {} + public: + WithStreamedUnaryMethod_UpdateWorkflow() { + ::grpc::Service::MarkMethodStreamed(8, + new ::grpc::internal::StreamedUnaryHandler< ::flyteidl::admin::WorkflowUpdateRequest, ::flyteidl::admin::WorkflowUpdateResponse>(std::bind(&WithStreamedUnaryMethod_UpdateWorkflow::StreamedUpdateWorkflow, this, std::placeholders::_1, std::placeholders::_2))); + } + ~WithStreamedUnaryMethod_UpdateWorkflow() override { + BaseClassMustBeDerivedFromService(this); + } + // disable regular version of this method + ::grpc::Status UpdateWorkflow(::grpc::ServerContext* context, const ::flyteidl::admin::WorkflowUpdateRequest* request, ::flyteidl::admin::WorkflowUpdateResponse* response) override { + abort(); + return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); + } + // replace default version of method with streamed unary + virtual ::grpc::Status StreamedUpdateWorkflow(::grpc::ServerContext* context, ::grpc::ServerUnaryStreamer< ::flyteidl::admin::WorkflowUpdateRequest,::flyteidl::admin::WorkflowUpdateResponse>* server_unary_streamer) = 0; + }; + template class WithStreamedUnaryMethod_CreateLaunchPlan : public BaseClass { private: void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithStreamedUnaryMethod_CreateLaunchPlan() { - ::grpc::Service::MarkMethodStreamed(8, + ::grpc::Service::MarkMethodStreamed(9, new ::grpc::internal::StreamedUnaryHandler< ::flyteidl::admin::LaunchPlanCreateRequest, ::flyteidl::admin::LaunchPlanCreateResponse>(std::bind(&WithStreamedUnaryMethod_CreateLaunchPlan::StreamedCreateLaunchPlan, this, std::placeholders::_1, std::placeholders::_2))); } ~WithStreamedUnaryMethod_CreateLaunchPlan() override { @@ -6333,7 +6494,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithStreamedUnaryMethod_GetLaunchPlan() { - ::grpc::Service::MarkMethodStreamed(9, + ::grpc::Service::MarkMethodStreamed(10, new ::grpc::internal::StreamedUnaryHandler< ::flyteidl::admin::ObjectGetRequest, ::flyteidl::admin::LaunchPlan>(std::bind(&WithStreamedUnaryMethod_GetLaunchPlan::StreamedGetLaunchPlan, this, std::placeholders::_1, std::placeholders::_2))); } ~WithStreamedUnaryMethod_GetLaunchPlan() override { @@ -6353,7 +6514,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithStreamedUnaryMethod_GetActiveLaunchPlan() { - ::grpc::Service::MarkMethodStreamed(10, + ::grpc::Service::MarkMethodStreamed(11, new ::grpc::internal::StreamedUnaryHandler< ::flyteidl::admin::ActiveLaunchPlanRequest, ::flyteidl::admin::LaunchPlan>(std::bind(&WithStreamedUnaryMethod_GetActiveLaunchPlan::StreamedGetActiveLaunchPlan, this, std::placeholders::_1, std::placeholders::_2))); } ~WithStreamedUnaryMethod_GetActiveLaunchPlan() override { @@ -6373,7 +6534,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithStreamedUnaryMethod_ListActiveLaunchPlans() { - ::grpc::Service::MarkMethodStreamed(11, + ::grpc::Service::MarkMethodStreamed(12, new ::grpc::internal::StreamedUnaryHandler< ::flyteidl::admin::ActiveLaunchPlanListRequest, ::flyteidl::admin::LaunchPlanList>(std::bind(&WithStreamedUnaryMethod_ListActiveLaunchPlans::StreamedListActiveLaunchPlans, this, std::placeholders::_1, std::placeholders::_2))); } ~WithStreamedUnaryMethod_ListActiveLaunchPlans() override { @@ -6393,7 +6554,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithStreamedUnaryMethod_ListLaunchPlanIds() { - ::grpc::Service::MarkMethodStreamed(12, + ::grpc::Service::MarkMethodStreamed(13, new ::grpc::internal::StreamedUnaryHandler< ::flyteidl::admin::NamedEntityIdentifierListRequest, ::flyteidl::admin::NamedEntityIdentifierList>(std::bind(&WithStreamedUnaryMethod_ListLaunchPlanIds::StreamedListLaunchPlanIds, this, std::placeholders::_1, std::placeholders::_2))); } ~WithStreamedUnaryMethod_ListLaunchPlanIds() override { @@ -6413,7 +6574,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithStreamedUnaryMethod_ListLaunchPlans() { - ::grpc::Service::MarkMethodStreamed(13, + ::grpc::Service::MarkMethodStreamed(14, new ::grpc::internal::StreamedUnaryHandler< ::flyteidl::admin::ResourceListRequest, ::flyteidl::admin::LaunchPlanList>(std::bind(&WithStreamedUnaryMethod_ListLaunchPlans::StreamedListLaunchPlans, this, std::placeholders::_1, std::placeholders::_2))); } ~WithStreamedUnaryMethod_ListLaunchPlans() override { @@ -6433,7 +6594,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithStreamedUnaryMethod_UpdateLaunchPlan() { - ::grpc::Service::MarkMethodStreamed(14, + ::grpc::Service::MarkMethodStreamed(15, new ::grpc::internal::StreamedUnaryHandler< ::flyteidl::admin::LaunchPlanUpdateRequest, ::flyteidl::admin::LaunchPlanUpdateResponse>(std::bind(&WithStreamedUnaryMethod_UpdateLaunchPlan::StreamedUpdateLaunchPlan, this, std::placeholders::_1, std::placeholders::_2))); } ~WithStreamedUnaryMethod_UpdateLaunchPlan() override { @@ -6453,7 +6614,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithStreamedUnaryMethod_CreateExecution() { - ::grpc::Service::MarkMethodStreamed(15, + ::grpc::Service::MarkMethodStreamed(16, new ::grpc::internal::StreamedUnaryHandler< ::flyteidl::admin::ExecutionCreateRequest, ::flyteidl::admin::ExecutionCreateResponse>(std::bind(&WithStreamedUnaryMethod_CreateExecution::StreamedCreateExecution, this, std::placeholders::_1, std::placeholders::_2))); } ~WithStreamedUnaryMethod_CreateExecution() override { @@ -6473,7 +6634,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithStreamedUnaryMethod_RelaunchExecution() { - ::grpc::Service::MarkMethodStreamed(16, + ::grpc::Service::MarkMethodStreamed(17, new ::grpc::internal::StreamedUnaryHandler< ::flyteidl::admin::ExecutionRelaunchRequest, ::flyteidl::admin::ExecutionCreateResponse>(std::bind(&WithStreamedUnaryMethod_RelaunchExecution::StreamedRelaunchExecution, this, std::placeholders::_1, std::placeholders::_2))); } ~WithStreamedUnaryMethod_RelaunchExecution() override { @@ -6493,7 +6654,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithStreamedUnaryMethod_GetExecution() { - ::grpc::Service::MarkMethodStreamed(17, + ::grpc::Service::MarkMethodStreamed(18, new ::grpc::internal::StreamedUnaryHandler< ::flyteidl::admin::WorkflowExecutionGetRequest, ::flyteidl::admin::Execution>(std::bind(&WithStreamedUnaryMethod_GetExecution::StreamedGetExecution, this, std::placeholders::_1, std::placeholders::_2))); } ~WithStreamedUnaryMethod_GetExecution() override { @@ -6513,7 +6674,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithStreamedUnaryMethod_GetExecutionData() { - ::grpc::Service::MarkMethodStreamed(18, + ::grpc::Service::MarkMethodStreamed(19, new ::grpc::internal::StreamedUnaryHandler< ::flyteidl::admin::WorkflowExecutionGetDataRequest, ::flyteidl::admin::WorkflowExecutionGetDataResponse>(std::bind(&WithStreamedUnaryMethod_GetExecutionData::StreamedGetExecutionData, this, std::placeholders::_1, std::placeholders::_2))); } ~WithStreamedUnaryMethod_GetExecutionData() override { @@ -6533,7 +6694,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithStreamedUnaryMethod_ListExecutions() { - ::grpc::Service::MarkMethodStreamed(19, + ::grpc::Service::MarkMethodStreamed(20, new ::grpc::internal::StreamedUnaryHandler< ::flyteidl::admin::ResourceListRequest, ::flyteidl::admin::ExecutionList>(std::bind(&WithStreamedUnaryMethod_ListExecutions::StreamedListExecutions, this, std::placeholders::_1, std::placeholders::_2))); } ~WithStreamedUnaryMethod_ListExecutions() override { @@ -6553,7 +6714,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithStreamedUnaryMethod_TerminateExecution() { - ::grpc::Service::MarkMethodStreamed(20, + ::grpc::Service::MarkMethodStreamed(21, new ::grpc::internal::StreamedUnaryHandler< ::flyteidl::admin::ExecutionTerminateRequest, ::flyteidl::admin::ExecutionTerminateResponse>(std::bind(&WithStreamedUnaryMethod_TerminateExecution::StreamedTerminateExecution, this, std::placeholders::_1, std::placeholders::_2))); } ~WithStreamedUnaryMethod_TerminateExecution() override { @@ -6573,7 +6734,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithStreamedUnaryMethod_GetNodeExecution() { - ::grpc::Service::MarkMethodStreamed(21, + ::grpc::Service::MarkMethodStreamed(22, new ::grpc::internal::StreamedUnaryHandler< ::flyteidl::admin::NodeExecutionGetRequest, ::flyteidl::admin::NodeExecution>(std::bind(&WithStreamedUnaryMethod_GetNodeExecution::StreamedGetNodeExecution, this, std::placeholders::_1, std::placeholders::_2))); } ~WithStreamedUnaryMethod_GetNodeExecution() override { @@ -6593,7 +6754,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithStreamedUnaryMethod_ListNodeExecutions() { - ::grpc::Service::MarkMethodStreamed(22, + ::grpc::Service::MarkMethodStreamed(23, new ::grpc::internal::StreamedUnaryHandler< ::flyteidl::admin::NodeExecutionListRequest, ::flyteidl::admin::NodeExecutionList>(std::bind(&WithStreamedUnaryMethod_ListNodeExecutions::StreamedListNodeExecutions, this, std::placeholders::_1, std::placeholders::_2))); } ~WithStreamedUnaryMethod_ListNodeExecutions() override { @@ -6613,7 +6774,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithStreamedUnaryMethod_ListNodeExecutionsForTask() { - ::grpc::Service::MarkMethodStreamed(23, + ::grpc::Service::MarkMethodStreamed(24, new ::grpc::internal::StreamedUnaryHandler< ::flyteidl::admin::NodeExecutionForTaskListRequest, ::flyteidl::admin::NodeExecutionList>(std::bind(&WithStreamedUnaryMethod_ListNodeExecutionsForTask::StreamedListNodeExecutionsForTask, this, std::placeholders::_1, std::placeholders::_2))); } ~WithStreamedUnaryMethod_ListNodeExecutionsForTask() override { @@ -6633,7 +6794,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithStreamedUnaryMethod_GetNodeExecutionData() { - ::grpc::Service::MarkMethodStreamed(24, + ::grpc::Service::MarkMethodStreamed(25, new ::grpc::internal::StreamedUnaryHandler< ::flyteidl::admin::NodeExecutionGetDataRequest, ::flyteidl::admin::NodeExecutionGetDataResponse>(std::bind(&WithStreamedUnaryMethod_GetNodeExecutionData::StreamedGetNodeExecutionData, this, std::placeholders::_1, std::placeholders::_2))); } ~WithStreamedUnaryMethod_GetNodeExecutionData() override { @@ -6653,7 +6814,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithStreamedUnaryMethod_RegisterProject() { - ::grpc::Service::MarkMethodStreamed(25, + ::grpc::Service::MarkMethodStreamed(26, new ::grpc::internal::StreamedUnaryHandler< ::flyteidl::admin::ProjectRegisterRequest, ::flyteidl::admin::ProjectRegisterResponse>(std::bind(&WithStreamedUnaryMethod_RegisterProject::StreamedRegisterProject, this, std::placeholders::_1, std::placeholders::_2))); } ~WithStreamedUnaryMethod_RegisterProject() override { @@ -6673,7 +6834,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithStreamedUnaryMethod_ListProjects() { - ::grpc::Service::MarkMethodStreamed(26, + ::grpc::Service::MarkMethodStreamed(27, new ::grpc::internal::StreamedUnaryHandler< ::flyteidl::admin::ProjectListRequest, ::flyteidl::admin::Projects>(std::bind(&WithStreamedUnaryMethod_ListProjects::StreamedListProjects, this, std::placeholders::_1, std::placeholders::_2))); } ~WithStreamedUnaryMethod_ListProjects() override { @@ -6693,7 +6854,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithStreamedUnaryMethod_CreateWorkflowEvent() { - ::grpc::Service::MarkMethodStreamed(27, + ::grpc::Service::MarkMethodStreamed(28, new ::grpc::internal::StreamedUnaryHandler< ::flyteidl::admin::WorkflowExecutionEventRequest, ::flyteidl::admin::WorkflowExecutionEventResponse>(std::bind(&WithStreamedUnaryMethod_CreateWorkflowEvent::StreamedCreateWorkflowEvent, this, std::placeholders::_1, std::placeholders::_2))); } ~WithStreamedUnaryMethod_CreateWorkflowEvent() override { @@ -6713,7 +6874,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithStreamedUnaryMethod_CreateNodeEvent() { - ::grpc::Service::MarkMethodStreamed(28, + ::grpc::Service::MarkMethodStreamed(29, new ::grpc::internal::StreamedUnaryHandler< ::flyteidl::admin::NodeExecutionEventRequest, ::flyteidl::admin::NodeExecutionEventResponse>(std::bind(&WithStreamedUnaryMethod_CreateNodeEvent::StreamedCreateNodeEvent, this, std::placeholders::_1, std::placeholders::_2))); } ~WithStreamedUnaryMethod_CreateNodeEvent() override { @@ -6733,7 +6894,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithStreamedUnaryMethod_CreateTaskEvent() { - ::grpc::Service::MarkMethodStreamed(29, + ::grpc::Service::MarkMethodStreamed(30, new ::grpc::internal::StreamedUnaryHandler< ::flyteidl::admin::TaskExecutionEventRequest, ::flyteidl::admin::TaskExecutionEventResponse>(std::bind(&WithStreamedUnaryMethod_CreateTaskEvent::StreamedCreateTaskEvent, this, std::placeholders::_1, std::placeholders::_2))); } ~WithStreamedUnaryMethod_CreateTaskEvent() override { @@ -6753,7 +6914,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithStreamedUnaryMethod_GetTaskExecution() { - ::grpc::Service::MarkMethodStreamed(30, + ::grpc::Service::MarkMethodStreamed(31, new ::grpc::internal::StreamedUnaryHandler< ::flyteidl::admin::TaskExecutionGetRequest, ::flyteidl::admin::TaskExecution>(std::bind(&WithStreamedUnaryMethod_GetTaskExecution::StreamedGetTaskExecution, this, std::placeholders::_1, std::placeholders::_2))); } ~WithStreamedUnaryMethod_GetTaskExecution() override { @@ -6773,7 +6934,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithStreamedUnaryMethod_ListTaskExecutions() { - ::grpc::Service::MarkMethodStreamed(31, + ::grpc::Service::MarkMethodStreamed(32, new ::grpc::internal::StreamedUnaryHandler< ::flyteidl::admin::TaskExecutionListRequest, ::flyteidl::admin::TaskExecutionList>(std::bind(&WithStreamedUnaryMethod_ListTaskExecutions::StreamedListTaskExecutions, this, std::placeholders::_1, std::placeholders::_2))); } ~WithStreamedUnaryMethod_ListTaskExecutions() override { @@ -6793,7 +6954,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithStreamedUnaryMethod_GetTaskExecutionData() { - ::grpc::Service::MarkMethodStreamed(32, + ::grpc::Service::MarkMethodStreamed(33, new ::grpc::internal::StreamedUnaryHandler< ::flyteidl::admin::TaskExecutionGetDataRequest, ::flyteidl::admin::TaskExecutionGetDataResponse>(std::bind(&WithStreamedUnaryMethod_GetTaskExecutionData::StreamedGetTaskExecutionData, this, std::placeholders::_1, std::placeholders::_2))); } ~WithStreamedUnaryMethod_GetTaskExecutionData() override { @@ -6813,7 +6974,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithStreamedUnaryMethod_UpdateProjectDomainAttributes() { - ::grpc::Service::MarkMethodStreamed(33, + ::grpc::Service::MarkMethodStreamed(34, new ::grpc::internal::StreamedUnaryHandler< ::flyteidl::admin::ProjectDomainAttributesUpdateRequest, ::flyteidl::admin::ProjectDomainAttributesUpdateResponse>(std::bind(&WithStreamedUnaryMethod_UpdateProjectDomainAttributes::StreamedUpdateProjectDomainAttributes, this, std::placeholders::_1, std::placeholders::_2))); } ~WithStreamedUnaryMethod_UpdateProjectDomainAttributes() override { @@ -6833,7 +6994,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithStreamedUnaryMethod_GetProjectDomainAttributes() { - ::grpc::Service::MarkMethodStreamed(34, + ::grpc::Service::MarkMethodStreamed(35, new ::grpc::internal::StreamedUnaryHandler< ::flyteidl::admin::ProjectDomainAttributesGetRequest, ::flyteidl::admin::ProjectDomainAttributesGetResponse>(std::bind(&WithStreamedUnaryMethod_GetProjectDomainAttributes::StreamedGetProjectDomainAttributes, this, std::placeholders::_1, std::placeholders::_2))); } ~WithStreamedUnaryMethod_GetProjectDomainAttributes() override { @@ -6853,7 +7014,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithStreamedUnaryMethod_DeleteProjectDomainAttributes() { - ::grpc::Service::MarkMethodStreamed(35, + ::grpc::Service::MarkMethodStreamed(36, new ::grpc::internal::StreamedUnaryHandler< ::flyteidl::admin::ProjectDomainAttributesDeleteRequest, ::flyteidl::admin::ProjectDomainAttributesDeleteResponse>(std::bind(&WithStreamedUnaryMethod_DeleteProjectDomainAttributes::StreamedDeleteProjectDomainAttributes, this, std::placeholders::_1, std::placeholders::_2))); } ~WithStreamedUnaryMethod_DeleteProjectDomainAttributes() override { @@ -6873,7 +7034,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithStreamedUnaryMethod_UpdateWorkflowAttributes() { - ::grpc::Service::MarkMethodStreamed(36, + ::grpc::Service::MarkMethodStreamed(37, new ::grpc::internal::StreamedUnaryHandler< ::flyteidl::admin::WorkflowAttributesUpdateRequest, ::flyteidl::admin::WorkflowAttributesUpdateResponse>(std::bind(&WithStreamedUnaryMethod_UpdateWorkflowAttributes::StreamedUpdateWorkflowAttributes, this, std::placeholders::_1, std::placeholders::_2))); } ~WithStreamedUnaryMethod_UpdateWorkflowAttributes() override { @@ -6893,7 +7054,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithStreamedUnaryMethod_GetWorkflowAttributes() { - ::grpc::Service::MarkMethodStreamed(37, + ::grpc::Service::MarkMethodStreamed(38, new ::grpc::internal::StreamedUnaryHandler< ::flyteidl::admin::WorkflowAttributesGetRequest, ::flyteidl::admin::WorkflowAttributesGetResponse>(std::bind(&WithStreamedUnaryMethod_GetWorkflowAttributes::StreamedGetWorkflowAttributes, this, std::placeholders::_1, std::placeholders::_2))); } ~WithStreamedUnaryMethod_GetWorkflowAttributes() override { @@ -6913,7 +7074,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithStreamedUnaryMethod_DeleteWorkflowAttributes() { - ::grpc::Service::MarkMethodStreamed(38, + ::grpc::Service::MarkMethodStreamed(39, new ::grpc::internal::StreamedUnaryHandler< ::flyteidl::admin::WorkflowAttributesDeleteRequest, ::flyteidl::admin::WorkflowAttributesDeleteResponse>(std::bind(&WithStreamedUnaryMethod_DeleteWorkflowAttributes::StreamedDeleteWorkflowAttributes, this, std::placeholders::_1, std::placeholders::_2))); } ~WithStreamedUnaryMethod_DeleteWorkflowAttributes() override { @@ -6933,7 +7094,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithStreamedUnaryMethod_ListMatchableAttributes() { - ::grpc::Service::MarkMethodStreamed(39, + ::grpc::Service::MarkMethodStreamed(40, new ::grpc::internal::StreamedUnaryHandler< ::flyteidl::admin::ListMatchableAttributesRequest, ::flyteidl::admin::ListMatchableAttributesResponse>(std::bind(&WithStreamedUnaryMethod_ListMatchableAttributes::StreamedListMatchableAttributes, this, std::placeholders::_1, std::placeholders::_2))); } ~WithStreamedUnaryMethod_ListMatchableAttributes() override { @@ -6953,7 +7114,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithStreamedUnaryMethod_ListNamedEntities() { - ::grpc::Service::MarkMethodStreamed(40, + ::grpc::Service::MarkMethodStreamed(41, new ::grpc::internal::StreamedUnaryHandler< ::flyteidl::admin::NamedEntityListRequest, ::flyteidl::admin::NamedEntityList>(std::bind(&WithStreamedUnaryMethod_ListNamedEntities::StreamedListNamedEntities, this, std::placeholders::_1, std::placeholders::_2))); } ~WithStreamedUnaryMethod_ListNamedEntities() override { @@ -6973,7 +7134,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithStreamedUnaryMethod_GetNamedEntity() { - ::grpc::Service::MarkMethodStreamed(41, + ::grpc::Service::MarkMethodStreamed(42, new ::grpc::internal::StreamedUnaryHandler< ::flyteidl::admin::NamedEntityGetRequest, ::flyteidl::admin::NamedEntity>(std::bind(&WithStreamedUnaryMethod_GetNamedEntity::StreamedGetNamedEntity, this, std::placeholders::_1, std::placeholders::_2))); } ~WithStreamedUnaryMethod_GetNamedEntity() override { @@ -6993,7 +7154,7 @@ class AdminService final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithStreamedUnaryMethod_UpdateNamedEntity() { - ::grpc::Service::MarkMethodStreamed(42, + ::grpc::Service::MarkMethodStreamed(43, new ::grpc::internal::StreamedUnaryHandler< ::flyteidl::admin::NamedEntityUpdateRequest, ::flyteidl::admin::NamedEntityUpdateResponse>(std::bind(&WithStreamedUnaryMethod_UpdateNamedEntity::StreamedUpdateNamedEntity, this, std::placeholders::_1, std::placeholders::_2))); } ~WithStreamedUnaryMethod_UpdateNamedEntity() override { @@ -7007,9 +7168,9 @@ class AdminService final { // replace default version of method with streamed unary virtual ::grpc::Status StreamedUpdateNamedEntity(::grpc::ServerContext* context, ::grpc::ServerUnaryStreamer< ::flyteidl::admin::NamedEntityUpdateRequest,::flyteidl::admin::NamedEntityUpdateResponse>* server_unary_streamer) = 0; }; - typedef WithStreamedUnaryMethod_CreateTask > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > StreamedUnaryService; + typedef WithStreamedUnaryMethod_CreateTask > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > StreamedUnaryService; typedef Service SplitStreamedService; - typedef WithStreamedUnaryMethod_CreateTask > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > StreamedService; + typedef WithStreamedUnaryMethod_CreateTask > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > StreamedService; }; } // namespace service diff --git a/flyteidl/gen/pb-cpp/flyteidl/service/admin.pb.cc b/flyteidl/gen/pb-cpp/flyteidl/service/admin.pb.cc index bb5ba5b2987..7581365c8d4 100644 --- a/flyteidl/gen/pb-cpp/flyteidl/service/admin.pb.cc +++ b/flyteidl/gen/pb-cpp/flyteidl/service/admin.pb.cc @@ -50,7 +50,7 @@ const char descriptor_table_protodef_flyteidl_2fservice_2fadmin_2eproto[] = "l/admin/node_execution.proto\032#flyteidl/a" "dmin/task_execution.proto\032\033flyteidl/admi" "n/common.proto\032,protoc-gen-swagger/optio" - "ns/annotations.proto2\331^\n\014AdminService\022\305\002" + "ns/annotations.proto2\303`\n\014AdminService\022\305\002" "\n\nCreateTask\022!.flyteidl.admin.TaskCreate" "Request\032\".flyteidl.admin.TaskCreateRespo" "nse\"\357\001\202\323\344\223\002\022\"\r/api/v1/tasks:\001*\222A\323\001\032&Crea" @@ -101,266 +101,272 @@ const char descriptor_table_protodef_flyteidl_2fservice_2fadmin_2eproto[] = "/{id.domain}/{id.name}Z,\022*/api/v1/workfl" "ows/{id.project}/{id.domain}\222A=\032;Fetch e" "xisting workflow definitions matching in" - "put filters.\022\345\002\n\020CreateLaunchPlan\022\'.flyt" - "eidl.admin.LaunchPlanCreateRequest\032(.fly" - "teidl.admin.LaunchPlanCreateResponse\"\375\001\202" - "\323\344\223\002\031\"\024/api/v1/launch_plans:\001*\222A\332\001\032-Crea" - "te and register a launch plan definition" - ".JB\n\003400\022;\n9Returned for bad request tha" - "t may have failed validation.Je\n\003409\022^\n\\" - "Returned for a request that references a" - "n identical entity that has already been" - " registered.\022\314\001\n\rGetLaunchPlan\022 .flyteid" - "l.admin.ObjectGetRequest\032\032.flyteidl.admi" - "n.LaunchPlan\"}\202\323\344\223\002F\022D/api/v1/launch_pla" - "ns/{id.project}/{id.domain}/{id.name}/{i" - "d.version}\222A.\032,Retrieve an existing laun" - "ch plan definition.\022\363\001\n\023GetActiveLaunchP" - "lan\022\'.flyteidl.admin.ActiveLaunchPlanReq" - "uest\032\032.flyteidl.admin.LaunchPlan\"\226\001\202\323\344\223\002" - "@\022>/api/v1/active_launch_plans/{id.proje" - "ct}/{id.domain}/{id.name}\222AM\032KRetrieve t" - "he active launch plan version specified " - "by input request filters.\022\353\001\n\025ListActive" - "LaunchPlans\022+.flyteidl.admin.ActiveLaunc" - "hPlanListRequest\032\036.flyteidl.admin.Launch" - "PlanList\"\204\001\202\323\344\223\0020\022./api/v1/active_launch" - "_plans/{project}/{domain}\222AK\032IFetch the " - "active launch plan versions specified by" - " input request filters.\022\363\001\n\021ListLaunchPl" - "anIds\0220.flyteidl.admin.NamedEntityIdenti" - "fierListRequest\032).flyteidl.admin.NamedEn" - "tityIdentifierList\"\200\001\202\323\344\223\002,\022*/api/v1/lau" - "nch_plan_ids/{project}/{domain}\222AK\032IFetc" - "h existing launch plan definition identi" - "fiers matching input filters.\022\214\002\n\017ListLa" - "unchPlans\022#.flyteidl.admin.ResourceListR" - "equest\032\036.flyteidl.admin.LaunchPlanList\"\263" - "\001\202\323\344\223\002j\0227/api/v1/launch_plans/{id.projec" - "t}/{id.domain}/{id.name}Z/\022-/api/v1/laun" - "ch_plans/{id.project}/{id.domain}\222A@\032>Fe" - "tch existing launch plan definitions mat" - "ching input filters.\022\300\006\n\020UpdateLaunchPla" - "n\022\'.flyteidl.admin.LaunchPlanUpdateReque" - "st\032(.flyteidl.admin.LaunchPlanUpdateResp" - "onse\"\330\005\202\323\344\223\002I\032D/api/v1/launch_plans/{id." - "project}/{id.domain}/{id.name}/{id.versi" - "on}:\001*\222A\205\005\032\202\005Update the status of an exi" - "sting launch plan definition. At most on" - "e launch plan version for a given {proje" - "ct, domain, name} can be active at a tim" - "e. If this call sets a launch plan to ac" - "tive and existing version is already act" - "ive, the result of this call will be tha" - "t the formerly active launch plan will b" - "e made inactive and specified launch pla" - "n in this request will be made active. I" - "n the event that the formerly active lau" - "nch plan had a schedule associated it wi" - "th it, this schedule will be disabled. I" - "f the reference launch plan in this requ" - "est is being set to active and has a sch" - "edule associated with it, the schedule w" - "ill be enabled.\022\242\001\n\017CreateExecution\022&.fl" - "yteidl.admin.ExecutionCreateRequest\032\'.fl" - "yteidl.admin.ExecutionCreateResponse\">\202\323" - "\344\223\002\027\"\022/api/v1/executions:\001*\222A\036\032\034Create a" - " workflow execution.\022\261\001\n\021RelaunchExecuti" - "on\022(.flyteidl.admin.ExecutionRelaunchReq" - "uest\032\'.flyteidl.admin.ExecutionCreateRes" - "ponse\"I\202\323\344\223\002 \"\033/api/v1/executions/relaun" - "ch:\001*\222A \032\036Relaunch a workflow execution." - "\022\302\001\n\014GetExecution\022+.flyteidl.admin.Workf" - "lowExecutionGetRequest\032\031.flyteidl.admin." - "Execution\"j\202\323\344\223\0027\0225/api/v1/executions/{i" - "d.project}/{id.domain}/{id.name}\222A*\032(Ret" - "rieve an existing workflow execution.\022\202\002" - "\n\020GetExecutionData\022/.flyteidl.admin.Work" - "flowExecutionGetDataRequest\0320.flyteidl.a" - "dmin.WorkflowExecutionGetDataResponse\"\212\001" - "\202\323\344\223\002<\022:/api/v1/data/executions/{id.proj" - "ect}/{id.domain}/{id.name}\222AE\032CRetrieve " - "input and output data from an existing w" - "orkflow execution.\022\310\001\n\016ListExecutions\022#." - "flyteidl.admin.ResourceListRequest\032\035.fly" - "teidl.admin.ExecutionList\"r\202\323\344\223\002-\022+/api/" - "v1/executions/{id.project}/{id.domain}\222A" - "<\032:Fetch existing workflow executions ma" - "tching input filters.\022\364\001\n\022TerminateExecu" - "tion\022).flyteidl.admin.ExecutionTerminate" - "Request\032*.flyteidl.admin.ExecutionTermin" - "ateResponse\"\206\001\202\323\344\223\002:*5/api/v1/executions" - "/{id.project}/{id.domain}/{id.name}:\001*\222A" - "C\032ATerminate the active workflow executi" - "on specified in the request.\022\374\001\n\020GetNode" - "Execution\022\'.flyteidl.admin.NodeExecution" - "GetRequest\032\035.flyteidl.admin.NodeExecutio" - "n\"\237\001\202\323\344\223\002p\022n/api/v1/node_executions/{id." - "execution_id.project}/{id.execution_id.d" - "omain}/{id.execution_id.name}/{id.node_i" - "d}\222A&\032$Retrieve an existing node executi" - "on.\022\232\002\n\022ListNodeExecutions\022(.flyteidl.ad" - "min.NodeExecutionListRequest\032!.flyteidl." - "admin.NodeExecutionList\"\266\001\202\323\344\223\002u\022s/api/v" - "1/node_executions/{workflow_execution_id" - ".project}/{workflow_execution_id.domain}" - "/{workflow_execution_id.name}\222A8\0326Fetch " - "existing node executions matching input " - "filters.\022\357\004\n\031ListNodeExecutionsForTask\022/" - ".flyteidl.admin.NodeExecutionForTaskList" - "Request\032!.flyteidl.admin.NodeExecutionLi" - "st\"\375\003\202\323\344\223\002\254\003\022\251\003/api/v1/children/task_exe" - "cutions/{task_execution_id.node_executio" - "n_id.execution_id.project}/{task_executi" - "on_id.node_execution_id.execution_id.dom" - "ain}/{task_execution_id.node_execution_i" - "d.execution_id.name}/{task_execution_id." - "node_execution_id.node_id}/{task_executi" - "on_id.task_id.project}/{task_execution_i" - "d.task_id.domain}/{task_execution_id.tas" - "k_id.name}/{task_execution_id.task_id.ve" - "rsion}/{task_execution_id.retry_attempt}" - "\222AG\032EFetch child node executions launche" - "d by the specified task execution.\022\263\002\n\024G" - "etNodeExecutionData\022+.flyteidl.admin.Nod" - "eExecutionGetDataRequest\032,.flyteidl.admi" - "n.NodeExecutionGetDataResponse\"\277\001\202\323\344\223\002u\022" - "s/api/v1/data/node_executions/{id.execut" + "put filters.\022\347\001\n\016UpdateWorkflow\022%.flytei" + "dl.admin.WorkflowUpdateRequest\032&.flyteid" + "l.admin.WorkflowUpdateResponse\"\205\001\202\323\344\223\002F\032" + "A/api/v1/workflows/{id.project}/{id.doma" + "in}/{id.name}/{id.version}:\001*\222A6\0324Update" + " the state of an existing workflow defin" + "ition.\022\345\002\n\020CreateLaunchPlan\022\'.flyteidl.a" + "dmin.LaunchPlanCreateRequest\032(.flyteidl." + "admin.LaunchPlanCreateResponse\"\375\001\202\323\344\223\002\031\"" + "\024/api/v1/launch_plans:\001*\222A\332\001\032-Create and" + " register a launch plan definition.JB\n\0034" + "00\022;\n9Returned for bad request that may " + "have failed validation.Je\n\003409\022^\n\\Return" + "ed for a request that references an iden" + "tical entity that has already been regis" + "tered.\022\314\001\n\rGetLaunchPlan\022 .flyteidl.admi" + "n.ObjectGetRequest\032\032.flyteidl.admin.Laun" + "chPlan\"}\202\323\344\223\002F\022D/api/v1/launch_plans/{id" + ".project}/{id.domain}/{id.name}/{id.vers" + "ion}\222A.\032,Retrieve an existing launch pla" + "n definition.\022\363\001\n\023GetActiveLaunchPlan\022\'." + "flyteidl.admin.ActiveLaunchPlanRequest\032\032" + ".flyteidl.admin.LaunchPlan\"\226\001\202\323\344\223\002@\022>/ap" + "i/v1/active_launch_plans/{id.project}/{i" + "d.domain}/{id.name}\222AM\032KRetrieve the act" + "ive launch plan version specified by inp" + "ut request filters.\022\353\001\n\025ListActiveLaunch" + "Plans\022+.flyteidl.admin.ActiveLaunchPlanL" + "istRequest\032\036.flyteidl.admin.LaunchPlanLi" + "st\"\204\001\202\323\344\223\0020\022./api/v1/active_launch_plans" + "/{project}/{domain}\222AK\032IFetch the active" + " launch plan versions specified by input" + " request filters.\022\363\001\n\021ListLaunchPlanIds\022" + "0.flyteidl.admin.NamedEntityIdentifierLi" + "stRequest\032).flyteidl.admin.NamedEntityId" + "entifierList\"\200\001\202\323\344\223\002,\022*/api/v1/launch_pl" + "an_ids/{project}/{domain}\222AK\032IFetch exis" + "ting launch plan definition identifiers " + "matching input filters.\022\214\002\n\017ListLaunchPl" + "ans\022#.flyteidl.admin.ResourceListRequest" + "\032\036.flyteidl.admin.LaunchPlanList\"\263\001\202\323\344\223\002" + "j\0227/api/v1/launch_plans/{id.project}/{id" + ".domain}/{id.name}Z/\022-/api/v1/launch_pla" + "ns/{id.project}/{id.domain}\222A@\032>Fetch ex" + "isting launch plan definitions matching " + "input filters.\022\300\006\n\020UpdateLaunchPlan\022\'.fl" + "yteidl.admin.LaunchPlanUpdateRequest\032(.f" + "lyteidl.admin.LaunchPlanUpdateResponse\"\330" + "\005\202\323\344\223\002I\032D/api/v1/launch_plans/{id.projec" + "t}/{id.domain}/{id.name}/{id.version}:\001*" + "\222A\205\005\032\202\005Update the status of an existing " + "launch plan definition. At most one laun" + "ch plan version for a given {project, do" + "main, name} can be active at a time. If " + "this call sets a launch plan to active a" + "nd existing version is already active, t" + "he result of this call will be that the " + "formerly active launch plan will be made" + " inactive and specified launch plan in t" + "his request will be made active. In the " + "event that the formerly active launch pl" + "an had a schedule associated it with it," + " this schedule will be disabled. If the " + "reference launch plan in this request is" + " being set to active and has a schedule " + "associated with it, the schedule will be" + " enabled.\022\242\001\n\017CreateExecution\022&.flyteidl" + ".admin.ExecutionCreateRequest\032\'.flyteidl" + ".admin.ExecutionCreateResponse\">\202\323\344\223\002\027\"\022" + "/api/v1/executions:\001*\222A\036\032\034Create a workf" + "low execution.\022\261\001\n\021RelaunchExecution\022(.f" + "lyteidl.admin.ExecutionRelaunchRequest\032\'" + ".flyteidl.admin.ExecutionCreateResponse\"" + "I\202\323\344\223\002 \"\033/api/v1/executions/relaunch:\001*\222" + "A \032\036Relaunch a workflow execution.\022\302\001\n\014G" + "etExecution\022+.flyteidl.admin.WorkflowExe" + "cutionGetRequest\032\031.flyteidl.admin.Execut" + "ion\"j\202\323\344\223\0027\0225/api/v1/executions/{id.proj" + "ect}/{id.domain}/{id.name}\222A*\032(Retrieve " + "an existing workflow execution.\022\202\002\n\020GetE" + "xecutionData\022/.flyteidl.admin.WorkflowEx" + "ecutionGetDataRequest\0320.flyteidl.admin.W" + "orkflowExecutionGetDataResponse\"\212\001\202\323\344\223\002<" + "\022:/api/v1/data/executions/{id.project}/{" + "id.domain}/{id.name}\222AE\032CRetrieve input " + "and output data from an existing workflo" + "w execution.\022\310\001\n\016ListExecutions\022#.flytei" + "dl.admin.ResourceListRequest\032\035.flyteidl." + "admin.ExecutionList\"r\202\323\344\223\002-\022+/api/v1/exe" + "cutions/{id.project}/{id.domain}\222A<\032:Fet" + "ch existing workflow executions matching" + " input filters.\022\364\001\n\022TerminateExecution\022)" + ".flyteidl.admin.ExecutionTerminateReques" + "t\032*.flyteidl.admin.ExecutionTerminateRes" + "ponse\"\206\001\202\323\344\223\002:*5/api/v1/executions/{id.p" + "roject}/{id.domain}/{id.name}:\001*\222AC\032ATer" + "minate the active workflow execution spe" + "cified in the request.\022\374\001\n\020GetNodeExecut" + "ion\022\'.flyteidl.admin.NodeExecutionGetReq" + "uest\032\035.flyteidl.admin.NodeExecution\"\237\001\202\323" + "\344\223\002p\022n/api/v1/node_executions/{id.execut" "ion_id.project}/{id.execution_id.domain}" - "/{id.execution_id.name}/{id.node_id}\222AA\032" - "\?Retrieve input and output data from an " - "existing node execution.\022\227\001\n\017RegisterPro" - "ject\022&.flyteidl.admin.ProjectRegisterReq" - "uest\032\'.flyteidl.admin.ProjectRegisterRes" - "ponse\"3\202\323\344\223\002\025\"\020/api/v1/projects:\001*\222A\025\032\023R" - "egister a project.\022\205\001\n\014ListProjects\022\".fl" - "yteidl.admin.ProjectListRequest\032\030.flytei" - "dl.admin.Projects\"7\202\323\344\223\002\022\022\020/api/v1/proje" - "cts\222A\034\032\032Fetch registered projects.\022\335\001\n\023C" - "reateWorkflowEvent\022-.flyteidl.admin.Work" - "flowExecutionEventRequest\032..flyteidl.adm" - "in.WorkflowExecutionEventResponse\"g\202\323\344\223\002" - "\035\"\030/api/v1/events/workflows:\001*\222AA\032\?Creat" - "e a workflow execution event recording a" - " phase transition.\022\311\001\n\017CreateNodeEvent\022)" - ".flyteidl.admin.NodeExecutionEventReques" - "t\032*.flyteidl.admin.NodeExecutionEventRes" - "ponse\"_\202\323\344\223\002\031\"\024/api/v1/events/nodes:\001*\222A" - "=\032;Create a node execution event recordi" - "ng a phase transition.\022\311\001\n\017CreateTaskEve" - "nt\022).flyteidl.admin.TaskExecutionEventRe" - "quest\032*.flyteidl.admin.TaskExecutionEven" - "tResponse\"_\202\323\344\223\002\031\"\024/api/v1/events/tasks:" - "\001*\222A=\032;Create a task execution event rec" - "ording a phase transition.\022\251\003\n\020GetTaskEx" - "ecution\022\'.flyteidl.admin.TaskExecutionGe" - "tRequest\032\035.flyteidl.admin.TaskExecution\"" - "\314\002\202\323\344\223\002\234\002\022\231\002/api/v1/task_executions/{id." - "node_execution_id.execution_id.project}/" - "{id.node_execution_id.execution_id.domai" - "n}/{id.node_execution_id.execution_id.na" - "me}/{id.node_execution_id.node_id}/{id.t" - "ask_id.project}/{id.task_id.domain}/{id." - "task_id.name}/{id.task_id.version}/{id.r" - "etry_attempt}\222A&\032$Retrieve an existing t" - "ask execution.\022\323\002\n\022ListTaskExecutions\022(." - "flyteidl.admin.TaskExecutionListRequest\032" - "!.flyteidl.admin.TaskExecutionList\"\357\001\202\323\344" - "\223\002\255\001\022\252\001/api/v1/task_executions/{node_exe" - "cution_id.execution_id.project}/{node_ex" - "ecution_id.execution_id.domain}/{node_ex" - "ecution_id.execution_id.name}/{node_exec" - "ution_id.node_id}\222A8\0326Fetch existing tas" - "k executions matching input filters.\022\340\003\n" - "\024GetTaskExecutionData\022+.flyteidl.admin.T" - "askExecutionGetDataRequest\032,.flyteidl.ad" - "min.TaskExecutionGetDataResponse\"\354\002\202\323\344\223\002" - "\241\002\022\236\002/api/v1/data/task_executions/{id.no" - "de_execution_id.execution_id.project}/{i" - "d.node_execution_id.execution_id.domain}" - "/{id.node_execution_id.execution_id.name" - "}/{id.node_execution_id.node_id}/{id.tas" - "k_id.project}/{id.task_id.domain}/{id.ta" - "sk_id.name}/{id.task_id.version}/{id.ret" - "ry_attempt}\222AA\032\?Retrieve input and outpu" - "t data from an existing task execution.\022" - "\277\002\n\035UpdateProjectDomainAttributes\0224.flyt" - "eidl.admin.ProjectDomainAttributesUpdate" - "Request\0325.flyteidl.admin.ProjectDomainAt" - "tributesUpdateResponse\"\260\001\202\323\344\223\002O\032J/api/v1" - "/project_domain_attributes/{attributes.p" - "roject}/{attributes.domain}:\001*\222AX\032VUpdat" - "e the customized resource attributes ass" - "ociated with a project-domain combinatio" - "n\022\237\002\n\032GetProjectDomainAttributes\0221.flyte" - "idl.admin.ProjectDomainAttributesGetRequ" - "est\0322.flyteidl.admin.ProjectDomainAttrib" - "utesGetResponse\"\231\001\202\323\344\223\0026\0224/api/v1/projec" - "t_domain_attributes/{project}/{domain}\222A" - "Z\032XRetrieve the customized resource attr" - "ibutes associated with a project-domain " - "combination\022\251\002\n\035DeleteProjectDomainAttri" - "butes\0224.flyteidl.admin.ProjectDomainAttr" - "ibutesDeleteRequest\0325.flyteidl.admin.Pro" - "jectDomainAttributesDeleteResponse\"\232\001\202\323\344" - "\223\0029*4/api/v1/project_domain_attributes/{" - "project}/{domain}:\001*\222AX\032VDelete the cust" - "omized resource attributes associated wi" - "th a project-domain combination\022\316\002\n\030Upda" - "teWorkflowAttributes\022/.flyteidl.admin.Wo" - "rkflowAttributesUpdateRequest\0320.flyteidl" - ".admin.WorkflowAttributesUpdateResponse\"" - "\316\001\202\323\344\223\002_\032Z/api/v1/workflow_attributes/{a" - "ttributes.project}/{attributes.domain}/{" - "attributes.workflow}:\001*\222Af\032dUpdate the c" - "ustomized resource attributes associated" - " with a project, domain and workflow com" - "bination\022\243\002\n\025GetWorkflowAttributes\022,.fly" - "teidl.admin.WorkflowAttributesGetRequest" - "\032-.flyteidl.admin.WorkflowAttributesGetR" - "esponse\"\254\001\202\323\344\223\002;\0229/api/v1/workflow_attri" - "butes/{project}/{domain}/{workflow}\222Ah\032f" - "Retrieve the customized resource attribu" - "tes associated with a project, domain an" - "d workflow combination\022\255\002\n\030DeleteWorkflo" - "wAttributes\022/.flyteidl.admin.WorkflowAtt" - "ributesDeleteRequest\0320.flyteidl.admin.Wo" - "rkflowAttributesDeleteResponse\"\255\001\202\323\344\223\002>*" - "9/api/v1/workflow_attributes/{project}/{" - "domain}/{workflow}:\001*\222Af\032dDelete the cus" - "tomized resource attributes associated w" - "ith a project, domain and workflow combi" - "nation\022\341\001\n\027ListMatchableAttributes\022..fly" - "teidl.admin.ListMatchableAttributesReque" - "st\032/.flyteidl.admin.ListMatchableAttribu" - "tesResponse\"e\202\323\344\223\002\036\022\034/api/v1/matchable_a" - "ttributes\222A>\032*9/api/" + "v1/workflow_attributes/{project}/{domain" + "}/{workflow}:\001*\222Af\032dDelete the customize" + "d resource attributes associated with a " + "project, domain and workflow combination" + "\022\341\001\n\027ListMatchableAttributes\022..flyteidl." + "admin.ListMatchableAttributesRequest\032/.f" + "lyteidl.admin.ListMatchableAttributesRes" + "ponse\"e\202\323\344\223\002\036\022\034/api/v1/matchable_attribu" + "tes\222A>\032= 300 { + newErr := GenericSwaggerError{ + body: localVarBody, + error: localVarHttpResponse.Status, + } + + if localVarHttpResponse.StatusCode == 200 { + var v AdminWorkflowUpdateResponse + err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type")); + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHttpResponse, newErr + } + newErr.model = v + return localVarReturnValue, localVarHttpResponse, newErr + } + + return localVarReturnValue, localVarHttpResponse, newErr + } + + return localVarReturnValue, localVarHttpResponse, nil +} + /* AdminServiceApiService Update the customized resource attributes associated with a project, domain and workflow combination diff --git a/flyteidl/gen/pb-go/flyteidl/service/flyteadmin/model_admin_workflow_state.go b/flyteidl/gen/pb-go/flyteidl/service/flyteadmin/model_admin_workflow_state.go new file mode 100644 index 00000000000..9e22d5041c5 --- /dev/null +++ b/flyteidl/gen/pb-go/flyteidl/service/flyteadmin/model_admin_workflow_state.go @@ -0,0 +1,18 @@ +/* + * flyteidl/service/admin.proto + * + * No description provided (generated by Swagger Codegen https://github.com/swagger-api/swagger-codegen) + * + * API version: version not set + * Generated by: Swagger Codegen (https://github.com/swagger-api/swagger-codegen.git) + */ + +package flyteadmin +// AdminWorkflowState : The status of the workflow is used to control its visibility in the UI. - WORKFLOW_ACTIVE: By default, all workflows are considered active and under development. - WORKFLOW_ARCHIVED: Archived workflows are no longer visible in the UI. +type AdminWorkflowState string + +// List of adminWorkflowState +const ( + AdminWorkflowStateACTIVE AdminWorkflowState = "WORKFLOW_ACTIVE" + AdminWorkflowStateARCHIVED AdminWorkflowState = "WORKFLOW_ARCHIVED" +) diff --git a/flyteidl/gen/pb-go/flyteidl/service/flyteadmin/model_admin_workflow_update_request.go b/flyteidl/gen/pb-go/flyteidl/service/flyteadmin/model_admin_workflow_update_request.go new file mode 100644 index 00000000000..0a227dd6dce --- /dev/null +++ b/flyteidl/gen/pb-go/flyteidl/service/flyteadmin/model_admin_workflow_update_request.go @@ -0,0 +1,18 @@ +/* + * flyteidl/service/admin.proto + * + * No description provided (generated by Swagger Codegen https://github.com/swagger-api/swagger-codegen) + * + * API version: version not set + * Generated by: Swagger Codegen (https://github.com/swagger-api/swagger-codegen.git) + */ + +package flyteadmin + +// Request to set the referenced workflow state to the configured value. +type AdminWorkflowUpdateRequest struct { + // Identifier of workflow for which to change state. + Id *CoreIdentifier `json:"id,omitempty"` + // Desired state to apply to the workflow. + State *AdminWorkflowState `json:"state,omitempty"` +} diff --git a/flyteidl/gen/pb-go/flyteidl/service/flyteadmin/model_admin_workflow_update_response.go b/flyteidl/gen/pb-go/flyteidl/service/flyteadmin/model_admin_workflow_update_response.go new file mode 100644 index 00000000000..3af01e4db6f --- /dev/null +++ b/flyteidl/gen/pb-go/flyteidl/service/flyteadmin/model_admin_workflow_update_response.go @@ -0,0 +1,14 @@ +/* + * flyteidl/service/admin.proto + * + * No description provided (generated by Swagger Codegen https://github.com/swagger-api/swagger-codegen) + * + * API version: version not set + * Generated by: Swagger Codegen (https://github.com/swagger-api/swagger-codegen.git) + */ + +package flyteadmin + +// Purposefully empty, may be populated in the future. +type AdminWorkflowUpdateResponse struct { +} diff --git a/flyteidl/gen/pb-go/flyteidl/service/openapi.go b/flyteidl/gen/pb-go/flyteidl/service/openapi.go index 4d2fd7777c7..7f228a42a56 100644 --- a/flyteidl/gen/pb-go/flyteidl/service/openapi.go +++ b/flyteidl/gen/pb-go/flyteidl/service/openapi.go @@ -77,7 +77,7 @@ func (fi bindataFileInfo) Sys() interface{} { return nil } -var _adminSwaggerJson = []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xec\xfd\x6b\x73\x23\xb9\xb1\x27\x0e\xbf\x9f\x4f\x81\x47\xbb\x11\x33\x6d\x53\xea\xb1\x7d\x7c\xc2\xdb\x27\x4e\x3c\xc1\x91\xd8\x3d\x3a\xa3\x96\x64\x5d\xa6\xd7\xb1\x74\xc8\x60\x15\x48\xc2\x2a\xa2\x38\x00\x4a\x6a\xda\x31\xdf\xfd\x1f\x48\x5c\x0a\xa8\x1b\xab\x48\x4a\xa2\x34\x75\x36\xd6\xa3\x26\x59\x28\x20\x91\x48\xe4\xe5\x97\x99\xff\xfe\x06\xa1\x03\xf1\x88\x67\x33\xc2\x0f\x3e\xa0\x83\x3f\x1e\x7d\x7f\x30\x50\x9f\x51\x36\x4d\x0f\x3e\x20\xf5\x3d\x42\x07\x92\xca\x84\xa8\xef\xa7\xc9\x4a\x12\x1a\x27\xef\x05\xe1\x0f\x34\x22\xef\x71\xbc\xa0\xec\x68\xc9\x53\x99\xc2\x83\x08\x1d\x3c\x10\x2e\x68\xca\xd4\xcf\xcd\x9f\x88\xa5\x12\x09\x22\x0f\xbe\x41\xe8\x57\x18\x5e\x44\x73\xb2\x20\xe2\xe0\x03\xfa\x7f\xfa\xa1\xb9\x94\x4b\x3b\x80\xfa\x5b\xa8\xdf\xfe\x1d\x7e\x1b\xa5\x4c\x64\xc1\x8f\xf1\x72\x99\xd0\x08\x4b\x9a\xb2\xf7\xff\x14\x29\xcb\x7f\xbb\xe4\x69\x9c\x45\x2d\x7f\x8b\xe5\x5c\xe4\x6b\x7c\x8f\x97\xf4\xfd\xc3\x1f\xde\xe3\x48\xd2\x07\x72\x97\xe0\x8c\x45\xf3\xbb\x65\x82\x99\x78\xff\x6f\x1a\xab\x35\xfe\x93\x44\xf2\x57\xf8\x47\x9c\x2e\x30\x65\xfa\x6f\x86\x17\xe4\x57\x37\x0e\x42\x07\x33\x22\xbd\x7f\x22\x74\x10\x13\x11\x71\xba\x94\x86\x2a\x57\x44\x72\x4a\x1e\x08\x92\x73\x82\xf4\xeb\x90\x7e\x1d\x52\xaf\x43\x96\x6a\x62\x49\x22\x3a\xa5\x24\x46\x93\x15\xa2\x6c\x99\x49\xc4\xc9\x2f\x19\x11\x12\x4d\x69\x22\x09\x17\x47\x86\x64\xf0\x96\x74\x49\x38\xac\xf3\x34\x56\x6f\xf9\x44\xe4\x10\xc6\x3e\x83\xa1\x2f\x13\xcc\xfc\x5f\x73\x22\x96\x29\x13\x44\x04\x53\x45\xe8\xe0\x8f\xdf\x7f\x5f\xf8\xa8\xbc\x82\x21\x12\x59\x14\x11\x21\xa6\x59\x82\xec\x48\xfe\x64\xe0\x21\xd8\x64\x5c\x1a\x0c\xa1\x83\xff\xcd\xc9\x54\x8d\xf3\xbf\xde\xc7\x64\x4a\x19\x55\xe3\x0a\xcd\x4b\xde\x6c\x83\xa7\x7e\xfd\xa6\xea\xef\x5f\xbd\x15\x2d\x31\xc7\x0b\xa2\xc8\xe2\x76\x5f\xff\x5f\x61\x2d\x6a\xbf\xd4\xcb\xf3\x3d\x2d\x4e\xbc\xb0\xda\x73\xbc\x20\x28\x9d\xc2\x76\x99\x27\xe0\x6f\x4e\x44\x9a\xf1\x88\xa0\x09\x49\x52\x36\x13\x48\xa6\x25\x1a\x50\x18\x41\xb1\x5a\xf1\x1b\xb5\x95\x94\x13\xb5\x57\x92\x67\xa4\xf0\xad\x5c\x2d\x61\x92\x42\x72\xca\x66\x3e\x29\x7e\x1d\xb4\x5a\x9a\xe6\xd0\x0e\x2b\xd3\x0f\xd4\x2e\x6c\xcc\x86\xf6\x27\x11\x66\x68\x42\x90\x3a\x97\x34\x26\x9c\xc4\x08\x0b\x84\x91\xc8\x26\x82\x48\xf4\x48\xe5\x9c\x32\xf5\x6f\xcd\xbe\x91\xa5\xd9\xfe\xd0\x06\xfe\x6c\xa6\xcc\xad\x20\x5c\x4d\xfc\x81\xc6\x24\x46\x0f\x38\xc9\x08\x9a\xa6\x3c\x20\xcf\xd1\x98\xdd\xcc\x15\x1d\x16\x13\xca\xe0\xe4\x29\x5a\x5a\x0e\xf9\xbd\x25\xd7\xef\x91\x7a\x1f\xca\x18\xfd\x25\x23\xc9\x0a\xd1\x98\x30\xa9\xce\xb5\x28\x8e\xf6\xfb\x14\xde\x8f\x13\x74\x88\x14\x9d\x09\x97\x40\xef\x94\x49\xf2\x55\x0a\x74\x88\x12\x7a\x4f\xd0\xb7\x67\x54\x48\x34\xbc\x3c\xfd\x76\x80\xbe\x3d\xcb\x05\x87\xf8\xf6\x19\x28\xec\xfe\xfe\xbb\x77\xf4\x24\x9e\x15\x0f\xdd\xc1\x50\x9d\xe6\x6b\x7d\x4d\xe4\x23\xfc\xfd\x1b\x7f\x1c\xb3\x5f\xcd\xb2\x37\x17\xbc\x46\xea\x76\x91\xb5\x1f\x89\x8c\xe6\x6b\x04\xad\xd8\x52\xd2\xaa\xed\x28\x8a\x5a\xf1\xba\x64\xad\x5a\xc2\x53\xcb\xdb\x6d\x84\x2d\x96\x70\x0a\x30\x65\xfa\xd0\xb8\x33\x14\xee\x0c\x7a\x39\xb1\xb2\x8d\xbc\xf5\x56\xe3\x89\x5c\x2b\x49\x3d\x4a\xec\xc9\x5a\x13\xba\xa0\xeb\xf6\xf1\x94\xc5\x4a\xed\x32\x42\x8e\x65\x8b\x09\xe1\x6a\xe9\x56\xdc\xc1\x0a\x27\x4a\xfc\xc9\x8c\x33\x12\xd7\x2c\xed\x97\x8c\xf0\x55\xc3\xda\xa6\x38\x11\x75\x8b\xa3\x4c\x12\xa5\xd7\x16\xbe\x9e\xa6\x7c\x81\xa5\xf9\xc1\x7f\xfe\x47\xd7\xc5\xcb\xf4\x9e\xac\xdb\xe7\x53\xbd\x6b\x11\x16\xb0\xdd\x8b\x2c\x91\x74\x99\x10\xb4\xc4\x33\x22\x0c\x15\xb2\x44\x8a\x01\xfc\x4c\xe9\xd2\x84\x1f\xba\xdb\x06\xde\x60\x6f\xd9\x4c\xc0\x27\x68\xea\x04\x19\x23\x5f\x25\x8c\x34\x66\x70\xcf\x02\x89\xfc\xdb\xe3\x09\x48\xb9\x19\x9f\x88\x94\xcb\xbb\xc9\xea\xe8\x9e\x94\xde\x5b\xcb\x2d\x98\x21\x2c\x25\xa7\x93\x4c\x12\xb5\x6e\x35\x86\xbd\x27\x41\xf4\xe9\xcb\x58\xa8\xcb\xf7\xe2\xe4\xe2\xbb\x7b\x2c\x79\x3a\xc3\xec\xdd\x07\x34\x8c\x63\xa4\x27\xaa\x7e\x43\x63\x7d\x25\xcf\x09\x27\x47\xe8\x66\x4e\x05\x12\xf3\x34\x4b\x62\xc4\xc8\x03\xe1\x8a\xb6\x64\xb1\x94\xab\xbd\xa3\x56\x4c\x39\x89\x80\x30\x5d\x4e\x98\x7b\x4a\x11\x4d\x19\x3d\x2b\x4d\xba\x7b\xb2\x02\xc5\xa5\x4c\xbe\x67\xe0\x97\xc2\xb7\x84\x65\x8b\xc2\x5d\x01\x9f\x9f\x8c\xae\x8f\x47\xe7\x27\xa7\xe7\x9f\x0a\x4f\x28\x35\xc2\x7d\x15\x7c\xf3\xf7\x12\x6d\xa6\x38\x4b\xe0\x54\x7b\xa3\x3d\x9b\xe2\x12\xcd\x69\x12\x73\xc2\xde\x4b\x2c\xee\xef\xc8\x57\x12\x65\xfa\x9e\xfd\x77\xf8\xc1\x9d\xd2\x3e\xd3\x98\x84\x9f\x04\xff\xc8\xd5\x9d\xce\x8f\x3a\xab\xb4\xf3\x93\x60\xc3\xb6\x7b\x0e\x3e\xa1\x71\xe5\xaf\xe1\x93\x35\x6b\xb0\xbf\x69\x98\xac\xfd\x49\xed\xac\xec\x0f\x8c\x02\x57\xf9\x1b\x4e\x24\x5f\xdd\x61\x29\xd5\x29\xdf\x40\x67\x84\x2d\x45\x6a\xb5\x28\xdf\x4f\xa3\x3e\x6a\x45\x11\x64\xb7\xd3\x1c\xd5\x0c\xf2\x5f\xae\xd3\x17\xcf\xd3\x98\x8c\xdc\xb0\x1f\x53\x7e\x83\xc5\xfd\x6b\xd0\x19\x83\x89\x3f\x87\xda\xb8\xe9\x01\x7a\x73\x46\xfd\x86\xe2\xa0\x77\x01\x6c\x4f\xc9\xb6\x0e\x83\x94\x23\xb1\x12\x92\x2c\xd6\xba\x0e\x5e\x0f\x21\x8c\xbc\xdf\xd7\x09\x17\xae\x9c\xdf\xc0\xa9\x0f\x2f\xd0\xfe\x78\x77\x20\xd9\xae\x1c\x7f\xfb\xbe\x4e\x1b\x82\x69\x5e\xea\xb5\xdd\x3e\x1b\x70\x30\x7c\xb2\xf7\xcb\x0c\x54\xbb\x5d\x4f\xf2\x89\xbc\x06\xb5\x7b\x65\xa9\x7d\x07\x13\x58\x63\xf2\x85\xae\x63\x77\xfe\xd4\xa3\xbe\x73\x45\x7b\xcc\xa4\xb2\x79\x8d\x6f\x89\x70\x14\xa5\x5c\xab\x82\x71\x83\x78\x7b\x3e\xa3\xef\xf6\xfc\xfa\x72\x74\x7c\xfa\xf1\x74\x74\x52\xb6\xfa\x6e\x86\xd7\x3f\x95\x3f\xfd\x72\x71\xf5\xd3\xc7\xb3\x8b\x2f\xe5\x6f\xce\x86\xb7\xe7\xc7\x3f\xde\x5d\x9e\x0d\xcf\x5b\xdb\x89\xfe\x04\x3a\xee\x66\xef\x00\xdb\xa5\x03\x6c\xf0\x76\x3d\x60\x26\x7a\xd0\xde\xfb\x85\x12\x2a\xa4\x22\x90\x79\x12\x2d\xb1\x10\xfa\xfe\xd5\x33\x38\x1a\xb3\xcf\x29\x27\x88\xb2\x69\x8a\x52\x08\x0e\x09\xc9\xb3\x48\x52\x36\x73\x0f\x7d\x40\xe3\xec\xfb\xef\xff\x14\x9d\x51\x76\x0f\x7f\x91\x7d\x24\x4e\xef\x1e\xdc\x84\x5a\xbd\x7b\xd0\xff\xee\x75\xb8\x07\x63\x2c\xf1\x7b\xdf\x2b\xf8\x34\x78\x12\x1d\xb9\xc4\x2c\x46\x69\x26\xd5\x9f\xea\xbd\x68\xca\xd3\x85\x3a\x37\xe4\x2b\x15\x20\x25\x1e\x53\x7e\x3f\x4d\xd2\xc7\x76\xde\xaa\x4f\x44\x3a\x7f\xcf\x09\x96\xf8\x35\x38\xa9\xbe\x98\x15\xba\x89\x7f\x22\x52\xcd\xfd\xca\xbc\xa5\x87\x96\xf4\xd0\x92\x97\x85\x96\xec\x95\xa7\xe8\xe9\x65\x5f\xe8\x56\xd2\x02\xb0\x26\xea\x51\x1b\xd4\xa8\x89\x59\x78\x21\x89\xa7\x14\x9a\x61\x20\x60\x8d\xc0\x0c\x9c\xe4\xaf\x45\x68\x06\x93\x7e\x7e\x81\xf9\x9b\xf0\xe1\xf7\x2e\xfa\x0d\x09\xf5\x2a\xe5\x6a\xcb\x2b\xe3\xd9\x1c\xec\x4f\x2f\xe7\x4b\xe1\xef\x2e\xf1\xee\x0e\x01\xee\xd6\x11\xed\x35\x21\xec\xca\x98\x75\x55\x90\xba\x1c\x95\xae\x0c\x43\x6f\x15\x77\xee\x7a\x25\xb5\x8f\x38\x7f\x22\xf2\x06\x8b\xfb\x57\x77\x25\x05\x93\x7e\xfe\x2b\xe9\x37\x1a\x68\xee\x23\xcb\x4f\x48\xba\xb7\x7e\x91\xed\x6f\xec\xf8\x37\x10\x2c\xee\xa3\xc3\x9d\x68\xf4\xb6\xc2\xc1\x6f\x35\xfe\xfb\x3a\x03\xbe\x7d\x84\x77\x7f\x23\xbc\x4f\x6a\x07\x91\x07\xc2\xa4\x00\x8f\x97\xaf\x4e\x1f\x2c\x53\xd1\xac\xfe\x1f\x73\x82\x25\x41\xb8\xe0\x6a\x42\x30\x20\xe2\x24\x4a\x79\xac\xd4\x7e\x8c\x96\x73\x2c\x08\x92\x1c\x33\x41\xd7\xa9\xfe\x7a\x54\xf0\xed\xa8\x71\x5e\x83\xd6\x1f\x38\xa2\x60\xd6\xcf\xa5\xf3\x4f\xd2\xb8\x74\x34\xf4\xa9\xa9\xfa\xa6\x59\xbc\xec\x6c\xe9\x90\x87\xd6\x66\xe5\x4f\xc8\xcd\x4a\x94\x6d\xc8\xcd\xa1\x95\xba\x13\x6e\x06\xb3\xf0\xb5\x70\x73\x60\xc3\xfe\xb6\xb8\xb9\x6a\xe9\xfb\xc0\xcd\x36\x00\xba\x21\x47\x97\xe3\xa7\x3b\xe1\x6a\x17\xb4\x7c\x2d\x9c\x5d\x8a\xb2\xfe\xb6\xb8\xbb\x6e\xf9\x2f\xcb\xe1\xce\xf7\xba\x2b\xde\x5e\xcf\xb8\x8e\x00\xaf\x81\x69\xdd\x64\xf5\xdc\x7f\x33\xdc\x5a\x5a\xf7\x9e\xb0\xe9\x7b\x4e\x74\x4e\x55\x27\x7e\xbd\x32\x0f\x75\xe6\x58\xfb\x60\xcf\xb3\xaf\x89\x67\xed\xae\xed\x0f\xd7\xd6\x21\xb8\xba\xe7\x19\x36\xc0\xb2\x04\x5a\x60\x19\xcd\xd5\x97\x3a\x24\xd4\xb2\x18\x45\x9e\x58\xf8\xaa\xb8\xfb\x39\xb2\x09\xdf\xb6\xf3\xb7\x77\xfa\xfe\x06\x8b\xfe\xec\x0d\x42\xb9\xcf\x8a\xd8\x61\x56\x04\x15\x7d\x56\x44\x9f\x15\xd1\x96\x40\x7d\x56\x44\x9f\x15\xe1\x7d\xf7\x3a\xb2\x22\x9e\x3e\x21\x62\x37\x59\x0f\xaf\x4a\x89\xee\x15\xe8\x5e\x81\xee\x53\x1b\xdc\xd2\x76\x25\xc0\xec\xd3\x07\x31\x49\x88\x24\x8d\xe2\xe7\x86\xf0\x85\xb2\x0d\x82\x02\xbf\x15\x41\x83\xbc\x76\x90\xe3\x20\x70\x6f\x34\xc9\x25\x37\xf6\xeb\x94\x4e\x6e\xfa\x7d\x26\x56\x2f\xae\x7a\x71\xb5\xc9\xd2\xf6\xc7\x2b\xeb\x1d\xe6\x17\x75\xcb\x7a\xe5\x82\xef\x68\xbc\x9b\x8a\xc1\x4e\x6d\xf4\xeb\x05\xe7\xa4\x08\x4a\xb6\x6e\xe6\xa4\xcd\x8b\xef\x9e\xc6\xaf\xc2\x4f\xab\xe4\x48\x3c\x62\x92\xca\x95\x43\xa9\xf1\xbe\x70\x70\x5f\x38\xb8\xfd\x5a\x7b\x0f\xe1\x0e\x3d\x84\x7d\xe1\xe0\xde\x07\xd6\xfb\xc0\x5e\xb9\x0f\xcc\x6f\x75\xb0\x11\x62\x87\xc5\x88\x93\x19\x15\x92\x70\x84\x6b\xb4\x95\xf5\x10\x9e\xd7\xda\x23\xa6\x35\x20\xc2\x7f\xed\xc1\x7f\xb4\x98\xfe\x95\xb9\x5e\xe0\x0c\x4c\x70\xec\x1a\x42\x80\x4e\xb1\xc0\x2b\x34\xc7\x0f\x04\x4d\x31\x4d\xb4\xc5\x60\xc4\x46\xc3\x0a\x9b\x26\xf4\x7f\xba\x4d\x08\x87\xd3\xe1\x64\x4a\x38\x61\x91\x16\x83\x5a\x2b\x88\x70\x82\x08\x68\x6b\xfa\x37\x73\x65\xbf\x25\x9c\xe0\x78\x85\x26\x84\x30\xc7\x36\x15\x57\x68\xcd\x9c\x77\xa2\xcd\xbd\xb8\xfd\x52\xe6\x9e\x7d\xb1\x5e\x9e\x04\x56\x52\x2d\x12\xb6\xb7\x5a\xc4\x1f\x5f\x97\xa8\xe8\xd1\x25\xbd\xb7\xe9\xe5\xbd\x4d\x3d\xba\xa4\xb7\x1d\xf7\xc0\x76\xec\xd1\x25\x3d\xba\xa4\xb7\xac\x5b\x53\xab\xb7\xac\xfd\xef\x5e\x9f\x65\xbd\x63\x7c\xc9\x73\x69\xd8\xbd\x82\x6d\x7f\xd7\x2b\xd8\xbd\x82\xfd\x46\x15\xec\xfd\xa0\x70\xaf\x5d\xf7\xda\x75\xaf\x5d\xf7\xda\x75\xaf\x5d\xf7\xda\xb5\x79\x6a\x97\xda\x35\xfc\x65\xcb\x64\x6e\x0d\xe5\xee\x1e\xe5\xfa\x44\xe4\x6b\x0d\x71\xf5\x2a\x75\xaf\x52\xef\xb7\x4a\xbd\x37\x0b\x7a\x7b\x65\xef\xfa\xc2\x71\xa5\xfb\xf1\x2d\x14\x8e\xb3\x4f\x1f\x2c\xb3\xe6\xeb\xef\x76\x19\xdb\x3c\x02\x21\xb1\xcc\xc0\xd2\x68\x71\x15\xa2\xa1\x44\x8b\x54\xe9\xdd\x8c\x04\xbf\xb1\x3c\xaf\x41\x04\x33\xfa\x40\x18\xb2\x78\xd9\x81\x91\x6c\x03\x30\x7e\x7f\xb5\x02\xce\x24\x30\x60\x89\x30\x92\x74\x41\x8e\xd0\xe9\x54\x33\x50\x84\x93\x04\x09\x22\x45\x01\x79\xa2\x14\x32\xf3\x10\x8b\xf3\xb9\xda\x77\xd3\x1c\x88\xa0\x7f\x36\xb0\xe7\x2f\x4b\xa4\x3e\x8d\x76\xf0\x47\x9a\x24\x6a\x0e\x86\x69\x41\xf8\x2c\x08\x4f\xec\x93\xc1\x6b\xed\x8f\x17\x38\x56\xd6\x84\x37\x85\x3c\xd3\xc2\xff\x3d\x88\x79\x2a\x1c\x94\x22\x78\x5e\x3f\x7d\x84\x8c\xdd\xa7\x0b\x3c\xb5\x9a\xc6\x1c\xc7\x4a\xec\x47\x73\x12\x67\x09\x41\x58\x88\x34\xa2\x58\x92\x18\x51\x7d\x2d\x20\x2a\xad\x95\x68\x7f\x64\x5f\x1d\x53\x81\x27\x09\x89\x0d\x8d\x49\x8e\xec\x68\x9c\x39\x15\x68\x42\x14\x89\xd5\xcd\x13\x52\x7f\xae\x2f\xa5\x8a\xd9\x78\x53\x21\xe5\x99\x10\xa6\x27\xd2\xa0\x54\x69\xe6\x7c\xad\x7a\x95\x9e\x7d\x9f\x87\xd2\x6b\x59\xbd\x96\xd5\x69\x41\x6f\x4a\xcb\xda\x23\x34\x9a\x15\x48\x2f\x8a\x46\x83\x98\x95\x92\xfc\x77\xce\x29\x25\x36\xb3\xd7\x9d\xdf\xef\xb3\x1d\x72\xe8\x46\x3c\x4e\xd9\x94\xce\x32\x6e\x1c\xf0\x13\x75\x62\xd7\x06\xc6\x2a\xc6\x79\x15\x37\x4e\xf5\xd4\x9f\xeb\xe2\xe9\x62\x43\xa0\x43\xa4\xb4\xeb\xbb\xab\xd1\xf5\xc5\xed\xd5\xf1\xe8\x03\x1a\x2e\x97\x09\xd5\x8e\xfd\x28\x13\x32\x5d\xd0\x7f\xa9\x65\xe8\xa2\xae\x4e\x72\x1b\x35\x44\x80\xc2\x01\x91\x04\x71\x34\x66\xe8\x10\x1d\x9f\xdd\x5e\xdf\x8c\xae\x6a\x06\x34\x4c\x00\xad\x4c\xc8\x62\x99\x80\x56\x72\x9f\x4d\x08\x67\x44\x12\x81\xa2\x24\x03\x58\xb3\x8b\x2f\xe8\x41\x47\xff\x77\x74\x7c\x7b\x73\x7a\x71\x7e\xf7\xd7\xdb\xd1\xed\xe8\x03\xb2\xdc\xa4\x86\x55\xf3\x52\xb3\x88\x57\x0c\x2f\x94\xf9\x13\x56\x9f\xfd\x25\x23\x19\x28\x41\x74\xc6\x16\x84\xc9\xe2\x88\x76\xc2\x67\xc3\x1f\x46\x67\xe1\xc8\x73\x82\x7e\xfa\x4b\x3e\xa9\x04\x4f\x48\x62\x02\x1e\xe0\xcf\x57\x02\x3b\x7f\x91\x89\x84\x64\x25\x31\xf9\xdc\xb6\x54\xb0\xa1\x65\xeb\xa8\xb8\x43\xe5\x5f\x14\xc8\xdd\xf4\x83\x80\x7a\xad\x8d\xad\x70\x86\xcf\x26\xe9\xd4\x01\x89\xef\x00\x21\x4d\x89\x78\xff\xef\xe0\xa0\xfc\xfa\x64\x15\x29\x90\x97\x46\x67\x24\xdf\xba\x66\x72\xf9\x03\xaf\x41\xde\xf9\xd3\x7d\x49\xd9\xb6\x23\x7d\x62\xbf\x5c\x16\xdd\xb5\xb5\xde\xea\xe8\xad\x8e\x6a\xca\xf4\x70\x89\x1a\x0a\xef\xea\xda\xd9\xc4\xcb\x37\xa5\x24\x89\x45\xc9\x4d\x13\x5c\x1b\x6b\x5d\x32\xaf\xf7\xc6\x78\x5e\xa7\x4c\x17\xdd\xf8\xca\xf9\xcf\x8d\x43\x5d\xed\xd6\x82\x48\x0c\xbd\xf9\x64\x8a\x32\x98\x7a\x7f\x0b\x95\xc9\xdc\xdf\x42\xfd\x2d\x54\x4b\x99\xfe\x16\x7a\xc5\xce\xab\x0a\xc9\xfd\xa2\xde\xab\x75\x36\xdd\x56\x85\x61\x2a\x5c\x5b\x65\x5b\x4e\x20\x31\xc7\x5c\xb7\x00\x89\xd2\xc5\x22\x65\x5e\xe4\x75\xb5\x24\x03\xe4\x82\x6d\xe0\xa6\x80\x69\xac\xf3\x7c\xe5\xaf\xa1\xaf\xc3\xe7\xe5\xd1\xe5\x39\x50\xe1\xbd\x1d\xb8\x86\x40\x7d\x05\x9d\xbe\x82\x4e\x8f\xd3\xee\x2b\xe8\x34\x73\x4b\x8f\x44\xee\x91\xc8\xfe\x77\xaf\x03\x89\x1c\x76\x9d\xd6\x60\xe4\xaa\x36\xed\xbf\x96\xbf\xf1\x5d\xfa\xa5\x26\xdd\xc6\xd3\xaf\x3b\x58\x6f\x8f\x59\x0e\x9b\x7a\xae\x73\xf9\xfb\x6d\x20\xf7\x5c\xe1\x9b\x26\x2b\x49\x68\x9c\x94\xfb\x57\x3e\x03\xa6\xe6\xb7\xd2\x8f\xbf\xef\xbe\xbf\x09\xa1\xde\x6a\x09\xd8\x67\xed\xac\xff\xbc\xc2\xdb\x96\xc9\xbe\xab\x11\xe1\xd5\xdf\x3b\x41\x5e\xfd\xf5\xb6\x09\xde\xa1\xec\xde\x34\xb1\x3b\x90\x8d\xaf\xc3\x8c\xf7\x67\xfc\x1c\x86\x7c\xe3\xee\xbf\x39\xb9\xde\xc4\xcb\xbd\x74\x6f\x49\xae\xb7\x2a\xe3\x7b\x43\x7f\x97\x86\xfe\xe0\xed\x5a\xfa\x7d\x42\x76\x03\x71\x7a\x37\xc8\x26\xd4\xea\xdd\x20\xfe\x77\xaf\xc3\x0d\x62\xee\xea\x3b\x7d\xd5\x7b\xe8\xed\xf7\xff\xce\xff\xf6\x14\x69\xef\xc3\x8a\x58\x58\x07\xc4\x8a\xc5\x05\x93\x38\x57\x3f\xf2\xc1\x2b\x90\x2c\x66\x0e\x87\x56\x29\xc9\xa3\xba\x6b\x81\x2d\x97\xfa\xd1\x13\x78\xf2\x75\xc1\xc0\x6b\xa6\xfe\xbc\x80\x97\x32\x27\xac\x53\x9d\x20\x96\xee\xf4\x69\xaa\x61\xce\x8f\x73\x0a\xd7\x24\xd4\x39\x81\xab\xc4\xdb\x70\x9b\x40\x86\x01\xe9\x5d\xa7\x73\x3c\xb7\x3a\x55\x62\xf7\x76\x0b\x37\x3c\xfa\x7a\xd7\xfd\xe2\x10\x81\x35\x7c\xff\xa2\x70\x81\x06\x99\xb9\x1b\xa4\xc0\xf3\xc9\xc7\x4f\x44\xbe\x3d\xe1\xf8\x89\xc8\xe7\x92\x8c\x9b\x8a\xc3\x46\x91\x90\x97\x65\xdf\x13\x69\xb0\x99\xe8\x7b\x5d\x6b\xec\x13\x9e\xfa\x84\xa7\xdf\x7a\xc2\x93\x7d\xba\x4d\xb7\xca\x13\xf8\xc9\x33\x5e\x55\xfa\x85\x6f\xef\xb6\xd2\xeb\xea\x2f\xac\xfe\xc2\xea\xb6\xc6\x7d\x55\xd1\x2d\x3f\xef\x83\x8a\xde\x29\x07\x5d\x47\xef\xf2\xf6\x36\x96\xfd\xd7\x46\xe8\x2e\xed\xcb\x5e\x8f\x10\x12\x5d\xe5\xcc\x56\x79\x4c\xeb\x9a\x52\x5d\xe5\x9d\xa8\x2a\x62\x47\x45\x92\xdb\x5f\x5f\x96\x44\xd9\xbe\x53\xdd\xce\xfc\xb9\x84\xfd\xbe\x88\x88\x7c\xdd\x2f\x2a\x14\x94\x8e\x5b\x84\x7c\x85\x48\x82\xbb\x46\x10\xd8\x9a\xdf\x06\x99\xde\xcd\x3f\x2d\x00\xc5\xc2\xef\x0c\x74\x0c\xbe\x86\x29\x17\xe7\x61\x3f\xf4\x5f\x68\x3f\xcb\x47\xb6\x9f\xd8\xf2\x99\xf0\x21\x27\x92\xaf\xee\xb0\x54\x76\x84\xdc\x1e\x9d\x16\x5a\x0d\x6b\xd0\x69\x37\x58\xdc\xbf\x4a\x74\x5a\x38\xf1\x27\x3e\xb3\xad\x79\xf2\xcd\xe1\x1a\xda\x9e\xb0\x1e\xe3\xb0\x01\xe9\xde\x2a\xde\xa1\x49\x84\xee\xcd\x0c\x0b\x52\xfc\x2d\x9e\xdc\xf0\x4e\xea\x8f\x68\x13\x8d\xde\x5c\x69\xb7\x82\xaa\xb1\x66\x6d\xaf\xa4\xc4\x5b\x51\x5b\xda\xf5\xac\x9e\x06\x02\xe5\xed\x46\x5f\x06\xf8\x8d\x96\x01\x6e\x67\xdc\xb4\xb6\x6c\xda\x9a\x35\xed\x6c\x9a\x7a\x83\x66\x0b\x24\x75\x68\x67\x6c\x8a\xa4\x0e\xf4\xf8\x57\xe1\xad\x09\x66\xfc\x1c\x48\xea\xdf\xa8\xe9\xd1\xdb\x1d\x4f\x42\xb7\xb7\x6a\x74\xec\xb9\xc5\xd1\x63\xc0\x77\x89\x01\xef\x21\xe0\x3d\x04\xbc\x2d\x81\x7a\x08\x78\x0f\x01\xf7\xbe\x7b\x1d\x10\x70\x63\x2f\x6e\x8b\x5e\xac\x52\xd9\x73\x85\x36\xa8\x98\xb2\xb9\xfa\x7e\x1a\xbf\x0a\xbd\xdd\x2b\x64\xe4\x2c\x6b\xfe\x1c\xfa\x7b\x5f\xb1\xa7\xaf\xd8\xd3\x2b\x71\xbf\x25\x25\xae\xd7\x53\x36\xa1\x56\xaf\xa7\xf8\xdf\xbd\x1e\x3d\x25\x00\x74\xad\xc5\x15\x1d\x73\x82\xa5\xee\x67\xc5\x73\x88\x51\x41\x33\x69\x52\x3b\xf4\x00\x4a\xf1\x78\x0d\x5a\x87\x9a\xa7\x9e\x71\x0b\x80\x91\xff\xc2\x83\xff\x68\x31\xf1\x2b\x73\x89\x00\xa7\x4f\x70\xec\xba\x88\x81\xe6\xb0\xc0\x2b\x34\xc7\x0f\x04\x4d\x31\x4d\xb4\xff\xc6\x08\x87\x86\xb5\x35\x4d\xe8\xff\x74\x9b\x10\x0e\xa7\x93\xa3\x35\x95\xb0\xd3\x77\x7f\x84\x13\x44\x74\xd1\x4d\xf8\x0d\xb4\x38\x33\x0d\xe5\x26\x84\x30\x0f\xfa\xd7\x76\xce\x3b\xd1\xd9\x5e\x1c\xa5\xe5\xf3\xcd\x8b\x03\xb4\xea\xdb\x02\xef\xce\x18\xd9\xc6\x02\x11\x7f\x7c\x2d\xa2\xe0\x39\xec\x8d\x37\x1c\x13\xe8\xfd\xfe\xbf\xcd\x1a\xdd\x7b\xa3\xab\xf6\x16\xe0\x0e\x2d\x40\xc8\xe9\x78\xa3\x26\x60\xef\xc7\x6f\x20\x4e\x6f\x1f\x6f\x42\xad\xde\x3e\xf6\xbf\x7b\x45\xf6\xf1\x8e\x1b\xd0\x3d\xa1\x1e\xdd\xab\xd1\xbd\x1a\xdd\xab\xd1\x6f\x56\x8d\xde\x0f\x0a\xf7\x3a\x74\xaf\x43\xf7\x3a\x74\xaf\x43\xf7\x3a\x74\xaf\x43\x9b\xa7\x76\xa2\x43\xc3\x5f\x36\xb3\x76\x37\x69\xb4\xed\x22\x52\x26\x8f\xf6\xb5\x28\xcf\xbd\xe2\xdc\x2b\xce\xfb\xad\x38\xef\xcd\x82\xde\x5e\xf2\x5c\x9f\x7e\x56\xba\x05\xdf\x6c\xfa\x99\xab\xb2\xbf\x41\x05\xe1\xe0\x33\x3b\xd0\x73\xd7\x15\x1e\x58\xc9\x88\x59\x8c\xec\x24\x3a\x55\x19\xfe\x62\x1e\x7a\x5d\x55\xc9\xca\xb3\xee\x6b\x0b\x23\x6f\xd7\xfa\xda\xc2\x4f\xb8\x6e\x7b\xce\xd6\xac\xdc\xf2\xa8\xf6\x5e\xbd\xd2\x65\xbf\x38\xcc\xa7\xfe\xa4\xbf\x28\xe8\xa7\xf2\xe6\x28\x65\x22\xe4\x3d\x9a\x9e\xbf\xa4\xf2\x36\x57\xc3\x27\x22\xdf\xca\xbd\xd0\x97\x55\xee\xab\x54\x6e\xdc\x7d\xa9\x93\x84\x7f\x5d\x4b\xec\x2b\x47\xf7\x95\xa3\xfb\xca\xd1\xee\xad\xcf\x51\x39\x7a\x9b\x1b\x59\xbf\xfe\xad\x5c\xca\x7d\xf5\xe8\xfe\x5e\xee\xef\xe5\xca\x25\xee\xa1\xc1\xb5\x17\xb5\xb1\x9d\xc1\xb5\xab\x9c\x6f\x3f\x94\xe5\x84\xf1\x4e\x53\xbf\x2d\x25\xfb\xf4\x6f\xf3\x7f\x7d\xfa\x77\x9b\xc5\xf5\xe9\xdf\x3d\x70\xa9\x4f\xff\xee\xa1\x39\x3d\x34\xe7\x0d\x40\x73\xac\x66\xb1\x8b\x14\xf0\x0a\x2d\x65\x7d\x1a\xf8\x97\xb2\xca\xbc\xb7\x1a\x88\x9d\x6b\x9f\x0e\xde\xa7\x83\x6f\xcb\x3b\x7b\x61\xac\x3c\x49\x5a\x78\x85\x18\xd8\xd6\x42\x79\x1d\xe9\xe1\x76\xb6\x7d\x6e\x4b\x0f\xd1\xdb\x7f\x88\xde\xde\xe5\xb6\xec\x8d\x3e\xdb\x5b\x89\x3b\xb4\x12\xfb\xf4\x96\x3e\xbd\xa5\xb7\xa1\x5b\x53\xab\xb7\xa1\xfd\xef\x5e\x99\x0d\xfd\xb4\x69\xe2\x4f\xa1\x57\xf7\x6a\xb5\xfe\x5d\xaf\x56\xf7\x6a\xf5\x1b\x55\xab\xf7\x83\xc2\xbd\x4e\xdd\xeb\xd4\xbd\x4e\xdd\xeb\xd4\xbd\x4e\xdd\xeb\xd4\xe6\xa9\x9d\xe9\xd4\xbb\x4d\x1b\xef\x18\xc5\xf2\x52\x11\x5e\x93\x32\xdd\x2b\xd2\xbd\x22\xbd\xdf\x8a\xf4\xde\x2c\xa8\x4f\x21\xef\x53\xc8\x4b\xdf\xec\x6f\x0a\xf9\x37\x86\x11\x0e\x3c\xd9\xef\x2e\x89\x83\x1f\x92\x74\x72\xb3\x5a\x12\xf5\xdf\x13\xba\x20\x4c\x80\xc6\x42\xe5\xca\xbf\x38\x6b\x08\x5c\x26\xed\xc1\xf5\xe9\xf9\xa7\x33\x3f\xb9\xe2\xe0\xf3\xed\xd9\xcd\xe9\xe5\xf0\xea\xc6\xce\xd0\xad\xca\xa7\x85\x79\x2e\xb8\xfb\x8f\xd3\xc5\x12\x73\x2a\x52\x36\xfa\xba\xe4\x44\xa8\xa9\x5d\xc0\x6d\x9b\xf2\xcd\x66\x37\xfa\xab\x3f\xb3\xf3\xf0\x9f\x9f\x6e\xc2\x7f\x05\xab\x38\xbb\x09\xff\x35\x6a\x5c\x8d\x37\x70\xf1\x04\x1d\xa2\x4f\x37\x1f\xd0\x27\x88\xfa\x73\x74\x33\xc7\x0c\x52\x77\xce\x6e\x3e\xa0\x33\x22\x04\x7c\x92\x3f\x2c\xa9\x4c\x60\x6d\x3f\x50\x86\xf9\x0a\xd9\xe5\xeb\x2c\x1d\x0c\xee\x40\x4b\x9a\x22\xf1\xd8\x3f\x33\x06\x0a\x6b\x4e\xbd\xb3\x74\x46\x23\x9c\x6c\x47\xc4\xe1\xb9\x7f\x5e\x0e\x2e\xae\x1a\x49\xe1\xff\xba\x4c\x8b\xe1\xf9\x09\x64\x27\xd9\xa9\x56\xac\xfc\x9c\x08\x49\x62\x75\x01\xc6\x9a\x79\x95\xad\x41\x56\xde\xc5\xf8\xcf\x94\x32\x12\xa3\x4c\x28\x75\x6d\x78\x7e\x82\xde\xa3\x8b\xab\x31\xbb\xe0\xb1\xf6\x17\x10\x75\xa3\x68\x5b\x85\x0a\xc4\x52\x89\xe8\x62\x99\x72\x89\x99\x54\x97\xa9\x12\x64\xa9\xa1\x88\x40\x98\x13\x74\x9c\x2e\x16\x99\xc4\x92\x3e\x90\x12\x51\x99\x36\x02\xae\x89\x3c\x8d\xc1\x03\x59\x41\xc3\x74\x12\x28\x3a\x07\x4b\xae\xc6\x97\xb4\xa0\xfd\x1d\xd0\xb8\xa4\x0e\xda\x21\x30\xe7\x38\x14\x83\x07\x54\x92\x45\xf1\xf7\xcd\xf2\xff\x9b\xe2\x5f\xa1\x6e\xed\x7a\xde\x8e\x38\x4f\x39\xfc\xcf\x4f\x94\xc5\x9b\x71\xc5\xed\xf9\x4f\xe7\x17\x5f\xce\x7d\xce\xb8\xbd\x1e\x5d\xf9\xff\xbe\xfe\xdb\xf5\xcd\xe8\x73\x23\xb7\x14\x47\xc9\xd9\x00\xa6\x07\xf7\xcc\x07\x74\xad\xdb\x98\xa6\x1c\x29\xcd\xe1\xa0\x7a\x51\x9f\x89\xc4\x31\x96\x38\xff\x20\x8d\xc9\x66\x6b\xfb\x3c\x3c\xbf\x1d\x9e\x05\x4b\x39\xfe\x71\x74\x72\x7b\x16\xdc\x1c\x76\x7d\xde\x27\x57\x23\x7d\x2f\xf8\x9f\x1d\xff\x78\x7a\x76\x72\xe7\x6e\x92\x26\x6a\x14\xde\x5b\x3c\x3e\x37\x73\x82\x16\x44\xce\xd3\x18\x4d\x56\x7e\xda\x48\x9e\xbe\xf7\x88\x05\x4a\xc0\xfb\x47\xe2\xa3\xb1\x16\x35\x7a\xd4\x0f\xea\x14\x21\xf3\x32\xef\x89\x45\x1a\x93\x81\xf9\x8d\x3a\x27\x3a\xcb\x51\xdd\xe6\x60\x14\x55\x0d\xac\xde\x8e\x19\xa2\x2c\xa6\x0f\x34\xce\x70\xa2\xb3\x11\x1d\x8d\x3e\xa0\x21\x52\xc6\x49\x9c\x25\x04\x49\x4e\x67\x33\xd0\x63\x0b\x53\xd5\xa3\x99\x47\x81\x92\xf0\x9c\xeb\x58\xab\xec\x1f\x78\xad\x31\x80\xe8\x24\xd1\x5a\xa2\x7e\x10\xb2\x2f\xc3\x11\x39\x96\x73\xc2\xab\xa6\x66\xf7\xe5\x83\x76\x5b\xd4\x2c\x0b\xb2\xe1\x72\x18\x1b\x44\x54\x84\x56\xbf\x97\x9c\x3c\xd0\x34\xf3\x1e\x35\x89\xa2\xc1\xe6\x56\x0e\x9f\x13\x00\xc8\x96\xc2\x1c\xf3\x61\x42\x6e\xbe\xb2\xae\x4e\xfb\xc7\x88\x49\x5e\x79\x35\xb7\x95\x39\x46\xf1\x0b\x84\x4e\xb5\x7d\x58\x7a\xf7\x79\x51\x93\x2f\xdb\xcf\x46\xfb\x53\x2f\x39\x3a\xa8\x34\x1c\x41\xbb\xaf\x93\x7a\x15\x0a\x5c\x2e\x01\x7e\x06\xbb\x60\x91\x09\x09\x65\x27\xb4\x0b\x0a\xdd\xff\x45\xa0\x5f\x32\x0c\x10\xc3\x23\x74\x4d\xc8\x98\xcd\xa5\x5c\x8a\x0f\xef\xdf\xcf\xa8\x9c\x67\x93\xa3\x28\x5d\xbc\xcf\xb3\x71\xdf\xe3\x25\x5d\x60\xc5\x2f\x84\xaf\xde\x4f\x92\x74\xf2\x7e\x81\x85\x24\xfc\xfd\xf2\x7e\x06\xde\x06\xab\xc3\xbe\x77\xc3\xce\xd2\xff\x75\xf6\xa7\xef\x0f\xcf\xfe\xf2\xfd\x41\x59\xa4\xd6\x9d\xce\x11\x8b\xf0\x52\x64\x89\xf1\x4a\x72\x9f\x36\x80\x94\x05\x4a\xac\xdb\xef\xf3\x70\xbb\xb6\x13\xc8\xc7\x97\xb7\x81\x8a\x13\xfe\xf3\xf3\xe8\xf3\xc5\xd5\xdf\x02\x81\x76\x73\x71\x35\xfc\xd4\xac\xea\x94\x24\x76\x81\x0c\x3f\xb1\xf4\x91\x85\xab\x17\xc5\x45\x67\x4c\xd2\x05\xb1\x02\xdb\xfc\xf3\x46\xaf\x74\x83\x95\x5f\xdc\xfc\x18\x5e\x3c\x1f\xcf\xfe\x76\x33\xba\xbb\x3e\xf9\xa9\x71\x25\xfa\xb1\x60\x66\xd7\xe0\x52\x39\x4e\x93\x6c\xc1\xfc\xbf\x37\x9f\xdb\xe9\xf9\xcd\xe8\x53\x71\x76\x17\xc3\x9b\x90\xec\x57\xa1\xa7\xee\xe0\x87\x8b\x8b\xb3\xd1\x30\xd8\xcb\x93\xe1\xcd\xe8\xe6\xf4\x73\xa0\xa4\x9e\xdc\x5e\x0d\x6f\x4e\x2f\xce\x1b\x97\x69\x67\x50\xb1\x50\xb5\x2c\x7f\x99\xbb\x96\x33\xad\x8e\xf9\xd0\x44\xc1\xf4\x41\x39\xf4\x72\x87\xb4\x83\x0b\x74\x80\x43\xe7\x1f\x88\xf4\x4c\x2b\x65\x8d\x0c\xb7\x09\xd5\xcb\xba\xc6\x8d\x6e\x12\x79\x37\x6e\x0a\x30\x2f\xe3\x07\xc7\x49\x92\x3e\xea\x58\xc4\x82\x2a\xed\xd5\x24\x72\xaa\x9f\x08\x14\x65\x9c\x13\x26\x93\xd5\x51\x85\x38\x09\xb7\x25\xe5\xf2\xc4\x79\xab\x37\x62\xb8\x4a\xd7\x6f\xd9\xe9\x5b\xc9\x2a\x45\x47\xaf\x9d\x16\x14\x6c\x4f\x67\x9f\x89\x10\x78\x46\x3e\xda\x60\xd8\x8e\x84\xd4\xf5\xcf\xfe\x3f\xff\xe7\x7a\x0d\x3f\xdb\x21\x82\x19\x82\x6f\x73\x38\x49\xb9\xb4\x52\x65\x1b\x5e\x8e\x70\x26\x3a\x31\x73\x73\x2c\x0f\xa3\x4c\x10\x7e\x68\x9c\x27\x24\x46\x58\x4d\xd4\x04\xf2\xa0\xac\xd2\x12\x0b\xc5\x44\x29\xe8\x34\xc4\xfc\x3c\xd3\x85\x96\x10\xcc\xa6\xe6\x76\x5d\x72\xca\x22\xba\xc4\xc9\x46\x47\xaf\xe0\xdd\x31\xb8\xfd\xef\xe8\x14\x61\xb6\x7a\x57\x52\xbc\x24\xe1\x0b\x08\x6a\x9b\x69\x3a\x25\x66\x1d\x5b\xeb\xdd\x61\x2c\x95\x38\x74\x47\x6c\xb0\x37\x3a\xda\x52\xb7\xdc\xc2\x28\xe6\xed\xda\x90\xc4\xc9\x65\xf5\x98\x55\x04\xf3\xcd\xaa\xa6\xad\xfe\x8c\x97\x6a\x8b\x75\xc9\x05\x84\xf3\x35\x9a\x58\xb5\xa9\x96\xa5\xfe\x15\x90\xcc\xf3\x0b\xb6\x57\x31\x72\x12\x9a\xa0\x53\xf9\x25\x81\xd2\xee\xc1\x08\x0c\x4b\x4e\x33\x99\x71\xa5\x4c\x29\xb5\x1f\x7d\x47\x8e\x66\x47\xe8\xe2\xe7\xd1\xd5\xd5\xe9\xc9\x68\x80\x86\x97\x97\xa3\xf3\x93\x01\x22\x32\x7a\x67\xed\x6d\x90\x9a\x24\x1e\x33\x99\x1a\xf7\xdf\x0a\xcd\xd3\x47\xf5\xae\x05\xe1\x33\x12\xac\xd9\xfc\x18\x41\x72\xc8\x8c\x0a\xa9\x23\x25\xa0\xfe\x78\x35\x46\xe8\xa2\xa8\x07\x69\x0e\xc9\xe4\x7c\x1b\xd6\xc0\x42\x64\x0b\x3c\x49\xc8\x1d\xc5\x8b\x3b\x9e\x26\xeb\xce\x70\xe5\x91\xca\x55\xc7\x3b\xa1\x5d\x6d\x77\x38\x8a\xd2\x8c\xc9\xd6\xa3\xad\xdb\xc7\x13\x20\x93\x40\x4b\x75\xa0\xc0\x51\x53\xae\xca\xe1\xc8\x25\x50\x04\xce\x23\xb0\x1f\x40\x64\x24\x39\xbc\x03\xb6\xa4\x8a\x96\xc7\xba\xdc\x8b\x55\x2b\xbd\x82\x1c\xdb\x10\xb8\x6a\x94\x97\x3d\x7f\xc7\xfa\xe0\x55\xd5\x39\xd1\x06\x72\xa1\x6c\x1d\x60\x68\x0a\xf5\x79\x34\x81\x15\x67\xea\x03\xf1\x4b\x96\x4a\x2c\xde\x1d\x8d\x99\x3a\xdd\xf7\x64\xa5\xbd\x44\xea\xfc\xfc\x4e\xc9\xf4\x43\x41\x98\xa0\x92\x3e\x90\xdf\x69\xfd\x56\x49\x80\x07\xcc\xa9\xe2\x3d\xa1\xde\x60\xca\x02\x85\x25\x58\xa6\x34\x81\x30\xb1\x1a\xd4\x1c\x5f\x13\x3f\x9f\xf8\x75\x5b\xec\x77\x7a\xfa\x33\x22\x21\xf6\x23\xa9\xcc\x14\x0f\xc4\xba\xee\x50\x69\xea\x6b\x55\x0b\xe0\x8a\x13\x1d\xb7\xda\xca\x85\xb5\xc9\x99\xea\xaa\x1c\x16\xcf\x0b\x15\xcb\x04\xaf\x4a\x66\xe6\xba\x73\xa6\x8c\x29\xb1\xc4\x11\xc9\xe3\x66\x36\xc4\x18\xa5\x8b\x45\xca\x92\x95\xc3\xca\xc4\x74\x0a\xd9\x6c\x52\x9d\x41\x34\x21\xf2\x91\x10\x96\x7f\x8a\x8c\x2c\x40\x94\x09\x89\x99\x2e\xea\x04\xdc\x32\x56\xb4\x8a\x33\x50\xd9\xc6\x07\x03\x34\x3e\x88\xc9\x03\x49\xd2\xe5\x82\x30\xa9\x3e\x20\xb2\xf2\x84\x8e\x16\x98\x26\xe7\xa9\xba\x7f\x23\x5c\xa7\xef\xb5\xdd\x16\x4e\x22\xba\xa4\x84\x49\x71\x47\xd4\xb8\x4f\xea\x66\x5c\xa7\x1f\x5b\x40\x0e\xcc\x04\xe1\x38\xe6\x44\x08\xa8\x65\x62\x27\x69\xb4\x79\xed\x9d\x75\x04\x68\xc7\xc3\xce\xbf\xb7\x5b\x36\xae\xb6\x13\xa2\x94\xbb\x0c\x55\xf7\xe2\xbc\xfa\x44\x23\xd7\x9a\x5a\x36\x79\x8d\x04\x1b\x12\x74\x08\x83\xa2\x17\xa8\x78\x6c\x94\x70\x6f\x37\xcf\x90\x32\xd7\xea\xb9\xc6\xa9\x09\x1f\x3b\x66\x0b\x9a\xe5\x77\xb5\x71\x7d\x15\xbd\x6d\x64\xed\x8c\xa3\x24\x15\x19\x6f\x69\x84\x85\x93\x3e\x36\x8f\x36\xcd\x7b\xe4\xab\x36\x59\x22\x45\x27\xed\xa9\x82\xf0\x88\x93\x25\x27\x02\x78\x12\xfc\x86\xea\x70\x4b\x73\x0d\x9b\x5f\x0f\x10\x65\x51\x92\xc5\x8a\x06\x38\xc9\xfd\x82\x2c\x46\xf9\xd5\x36\x66\x0b\x63\x78\x20\x2c\xd0\x23\x49\x12\xf5\xdf\x28\x5d\x2c\x41\x6c\x9b\xe9\x9a\x91\x94\x81\x28\xb1\x24\x03\x94\x66\x52\x0d\x36\xd0\xb5\xdf\xcc\x16\x1c\x4e\x30\x00\xd8\xf2\x8a\xae\x63\x76\x2b\x2c\x12\xc0\xe1\x8e\x34\xaf\x6b\x01\x46\x19\xfa\x44\x24\x8c\x02\x40\x50\x7f\x81\xba\xc6\x5d\xa5\x08\x2a\xd2\x7e\x8b\x13\x65\x56\xd2\x61\xe7\xcf\xa8\x24\x1c\x27\x9f\xf1\xf2\x87\x24\x9d\x34\xee\xfb\x10\x2d\xb4\x9e\x6d\xde\x82\x68\xd1\xc2\xf2\x00\x33\xeb\x78\x94\x70\x1e\x84\xc2\xd6\x1c\xff\x30\x6a\xd2\xcc\x9e\x10\xb3\xa0\x4c\xc3\x45\x21\xfe\x54\x9c\xa7\xc9\xdc\x5e\x37\x47\xb0\x10\xef\x5e\x8f\x1d\xaa\xe7\xbb\x28\xdb\xde\xeb\x98\x20\xb4\xd9\x9f\x7a\x31\x70\x40\xe4\x9c\x50\x8e\x5a\x2d\xcb\x9e\xdf\x3b\x7d\xe6\xdb\x33\x4d\xce\xdb\x75\xa6\xb7\x16\x22\x4e\x40\xa8\x89\x19\xe0\x6a\x50\x90\xf1\x68\xcc\x0a\x93\x40\x31\x59\x12\x16\x0b\x04\xec\x65\x4f\x43\x20\xfb\x07\x68\x4a\xbf\x9a\x41\x6d\xc4\x27\xff\xa9\x67\x3e\xd4\x38\x15\xe6\xb8\xcc\x76\x1d\xee\xc7\x4b\x78\xbe\xd1\x6a\x4e\x85\xb2\x10\x23\xa5\x58\x71\x12\xa5\x5c\x89\x44\x78\xad\xf3\xf3\xad\xbd\x1b\x25\xe6\x8a\x28\x78\x9d\x59\x16\xcc\x23\x07\x72\xc7\x58\x92\x43\x65\x89\xae\x89\x70\x2c\x53\xf5\x1a\x44\x17\xca\xb6\x70\x41\x37\xdf\x92\x9f\x90\x19\x66\x88\x67\x8c\x51\x36\xab\x99\xad\x15\xed\x5b\x1c\x66\xa5\x59\xe1\x85\xb2\x43\x41\x8f\x50\x13\x0a\xe7\x21\x96\x40\xce\xc6\x79\x18\x53\xf2\xb9\xa8\x26\x1b\xc8\xf6\x88\x9d\x65\x5b\x33\xd9\x0c\x0a\x69\xef\xcd\x64\x13\x2c\x24\x32\x73\xaa\x99\xb1\xaf\xcd\xee\x20\xd4\xdf\x54\x0c\xcd\x37\x1c\xba\x28\xe7\xfe\x14\x91\x20\x52\x52\x53\xb4\x2b\x13\x04\xe1\xa9\xb2\x8b\x17\x84\xcf\xac\xc2\xa7\xcb\x55\xb8\xa3\x6d\xea\x56\x58\x39\xea\xcb\x92\x31\xab\x1c\xfa\x08\x0d\x59\x29\xea\x6b\x9d\x1c\x01\xbd\xb4\xd4\xc6\xc9\x23\x5e\x09\xb4\x84\xe2\x22\x3a\x10\x9d\x2f\x1e\xbc\x50\xe1\x43\xd6\xe5\xa4\x14\x2a\x1a\xe1\x24\x59\x21\x30\xf4\xbc\x99\xd5\x6c\x96\x57\xb1\xaf\xbd\xb0\x6b\xa9\xfb\x17\x3c\xab\x55\xf5\xfb\x9c\x09\x54\x29\xe9\x4a\xca\x6c\x0e\x8c\xf0\xe3\x8c\x06\x61\x08\xba\xa5\xb1\x2e\x46\xa1\x57\xb6\x4e\xe1\x03\x17\xc8\x19\x9e\x90\x64\x6b\x6f\xec\x46\xbe\x67\x78\xb5\xc1\x7e\x2a\xf3\x9b\x68\xef\x32\x41\x8f\x73\xc2\x8b\xa2\xcd\x3a\x71\x78\xd6\xce\xd7\x9c\xaf\x33\xa8\xb6\xb2\xc5\x42\x2d\x98\x79\x73\xf9\x5d\x07\x74\xf6\x2f\x92\x1c\xe9\x5c\x7d\x8b\x14\xdd\x37\xdb\xcc\xc1\x83\x24\x57\x4e\x01\xed\x02\x94\xbc\x13\x6f\x90\xe3\x99\x96\x09\x78\xa7\x53\xc4\x52\x46\x10\x15\xf9\x8f\x21\x9e\xa8\xb1\x25\xc0\x4c\x33\xc2\x08\x87\x1a\x56\x36\xfc\xe8\x92\x85\x5c\x1a\xc7\x33\x1b\xe5\x43\x67\x4c\xa2\x29\x25\x49\x2c\x10\x23\xca\xa6\xc1\x7c\xa5\x4e\x88\x11\x68\x6d\x74\xa3\x5d\x69\xab\x15\xd7\x87\x51\x23\x2d\x40\x17\x12\x8a\x94\x26\x56\x98\x17\x1a\x26\x49\xfe\x23\xf3\x90\x81\x72\x8c\x99\xb3\x82\x81\xff\xa8\x50\xd6\xdd\x11\x82\x6d\x93\xf9\x53\xea\x8e\x51\x1f\xd8\x3d\x1c\x58\x5d\x56\xe8\x74\x9c\x2e\xb6\xbf\xbd\xb7\x72\x3a\x86\xe8\x26\x75\x19\xa9\x15\xcc\xe8\x03\x61\x95\xf5\xb0\x2d\x53\x24\x81\x1b\xb2\x59\xea\x98\xfa\x60\x7b\xe0\xa7\x6a\x4f\x29\xb5\xc9\x59\xc9\x73\xa5\xab\x7f\xe5\x46\x76\xb2\x72\x51\x09\xdf\x54\x39\xd5\xa2\x45\x97\x35\xc6\x02\xfd\x8e\xa5\xf2\x77\x28\xb7\xd1\xac\x39\xac\xcb\xc7\x19\xd7\xc4\x20\xc0\x8d\xab\xb7\xc1\x09\x35\x4c\x82\xb0\x3b\xab\xf1\x7a\xca\x6f\x8b\xd0\xcc\xa3\x2e\x4f\xaa\xbd\x8d\xca\x91\xd3\xba\xc4\x1b\x9d\x3b\xba\x33\x1f\xc0\x73\x54\xf4\x44\x9a\x0d\x38\x81\xb0\x09\x4b\xd1\x22\xe5\xa4\x90\xbf\xaa\x85\xb7\xbd\xd7\x4d\xde\x60\x7b\x2e\xad\x70\x87\xe9\x9c\xbc\xfc\x98\x07\x6e\xb0\x66\xf7\xd7\x2e\x30\x03\x8b\x10\x6d\xda\xc0\x01\x6b\x10\xab\xd5\x26\xf9\x26\x71\xfe\x3a\x9d\xd4\x39\xa2\xfd\x42\x7d\x75\x38\xcd\xa3\x31\xfb\x98\x72\x73\x77\x0a\x03\xba\x9e\xe0\xe8\xfe\x90\xb0\x18\xe1\x4c\xce\x35\x5e\xd2\xf8\x8e\x57\x66\x67\x95\x5e\x00\x2c\x60\xb7\x38\xa6\x22\xc2\xdc\x08\xfd\x29\x7e\x48\xed\x2c\xc6\xcc\x1b\x04\x60\xdd\x90\x3a\x02\xe9\xed\x75\x0a\x04\x81\x54\xbd\x3a\x5a\x54\x25\x71\x97\x52\xb8\x9b\xcf\x8c\x9f\x08\x3a\x86\xf7\x91\x98\x11\x21\xc6\x07\x7a\xd6\x05\x0a\x9d\x5a\x7f\x94\xb5\x6f\x84\x5f\x0e\xd3\xfd\x52\x9f\x31\xeb\x91\x31\xab\x50\x6a\xca\xf7\x56\x76\x06\xe8\xd1\x69\xc6\x01\x2c\x5a\x35\xe6\x77\xd1\x9c\x26\xb9\x8f\xfa\xdd\xc0\x9c\x47\x3d\x64\x42\x1e\x48\xa2\x06\xa6\x2c\xe2\x64\x41\x98\x09\x1f\x7f\x8f\xfe\x5b\x27\x37\xa3\x3f\x8c\xd9\x27\x10\xab\x49\xb2\x1a\x20\x3a\xcd\x47\xc6\xb2\x30\xcc\x7d\xe5\x04\xd4\x96\x69\xc9\x12\x4c\x44\xef\xf7\x1c\x3f\x90\x31\xb3\xc3\xfc\x37\xba\x47\xbf\x47\x7f\xa8\x73\xe4\x18\xa4\xf0\x53\xdb\xf9\xc0\xc5\xf6\x5d\x9e\x64\x18\x18\xf5\x11\x24\x87\x75\x03\x84\x4d\x51\x9c\xa9\xe6\x14\x5c\x07\x6f\xa6\xec\x21\x2d\x47\xaf\xfc\x93\x8b\x39\x61\xf2\x8e\xa5\x31\xb9\x23\x15\xa1\xab\x06\x41\xa1\x2e\xf5\xf3\x34\x26\x6b\x03\x4f\x4e\x41\xfe\x02\xae\x0b\x91\x4d\xdc\x76\xa8\xf7\xe6\x46\x77\xc8\x60\xd5\x13\x76\x55\x3d\x37\x99\xee\xa6\xb1\xb2\x0b\xa3\x5d\x0d\x40\xa2\x9b\x09\x54\xc7\x6b\x74\xbb\x1d\xc0\xd3\x14\x4f\x61\xd1\x43\xac\x7e\xac\x56\x6e\xee\x1c\xaf\x5e\x29\xe4\x80\x70\x3a\xa3\x4a\xdb\x6e\x1f\x8f\x03\x21\xb8\x89\x9b\x5b\x67\x30\xb4\xf2\x73\xe7\xa4\x58\x26\x58\x2a\x2e\x3f\x74\x6c\x97\xc7\x98\x26\x69\x56\xd4\xb9\x0d\x01\xa8\xf0\x91\x3e\x46\xbd\x5e\x29\x11\x3c\xd3\x28\x12\x32\xa7\x4a\x72\x33\x34\x3c\x3e\x43\xea\x50\xa4\x0b\xa2\x53\xdb\x15\xd1\x32\x39\x4f\x39\xfd\x57\x6d\x40\xb6\x5e\xc3\xce\x03\x69\x5e\xaf\x19\x98\x67\xa8\x6b\x03\x8f\x6a\xcd\x40\x06\x86\x44\x95\x85\x83\x26\xea\x79\x0e\xca\xc7\x34\x83\xc6\x45\xda\x61\xac\x0b\xad\x88\xb0\xb3\x0d\xb7\x3d\x92\x34\x06\xc9\x0e\x48\x0d\x02\x3b\x06\xe7\x11\x8a\xe6\x98\xcd\x9a\xf5\xc8\xbf\x66\x24\xdb\x11\x68\xc6\x24\xf2\xbd\x50\x38\x1e\xcf\x44\xde\xe6\x49\xd3\x46\x89\xe4\x42\x67\x29\x13\x90\xc7\xe2\x3e\x77\xa8\x39\x20\xae\x36\xa3\x8b\xf6\x7c\x0b\xe7\xcb\x95\x39\x7e\x3b\x70\xbf\x3c\x47\xbc\xbe\xac\x1f\x55\xc8\x1f\xe0\x3f\x93\xba\xf2\xac\xde\x0d\x27\xc3\x0b\x7a\xc7\xae\x3d\x1d\x1d\x2c\x69\x3b\x29\x33\x43\x23\x5c\xcb\xc1\xcd\x6a\xee\xb8\x0e\xfd\x28\x9d\x59\x42\xbf\xfb\x0e\xc2\x58\x5b\xbb\x6f\x3d\xb7\x64\x8e\xad\xd3\xe0\x4a\xbd\x1a\x12\x3f\xad\xab\x25\x0c\x0c\x86\xf0\x4e\x2f\x2e\x58\x07\xbb\xf5\x66\xb4\xc1\xed\x54\x36\x84\xaa\xe7\x66\xbf\x6e\x3b\x95\xc6\x70\x48\xcb\xe0\x06\x58\xf4\x4d\xc7\xf6\xcc\xa0\x8d\xc2\xb0\x80\x86\x50\xa4\x5e\x60\x14\x22\x04\x99\x40\x92\x63\x40\xef\xa5\x4c\x8c\xd9\x17\xad\xc5\x52\xa1\xed\x45\x93\x2e\x0a\xe6\x28\xa2\xf0\x6f\x10\x9e\x26\xb3\x4c\xce\xb1\xb6\x71\xaa\x43\x10\xae\xc0\x83\x3b\x09\x7e\x10\xa2\xea\x65\xf0\x22\xa3\xba\x57\x0e\x69\x09\xed\x43\x3e\x4b\x8d\x78\xab\x7d\xc5\x54\x00\x14\x16\x27\xb5\x36\xe3\x24\x4d\x13\x82\x59\x9d\x5a\x5d\xf9\x75\xc9\x5b\x44\x7d\x14\xa3\xb2\xfa\x94\x66\xc6\x33\xa2\x6c\x0a\x9c\x24\x85\x75\x61\xa8\xc3\x24\x09\xd3\xce\x05\x63\x18\xaa\x89\xc6\x6b\x02\x22\x03\xff\xe4\x4f\x48\xd2\x09\x69\xa2\x1f\x68\xe4\x22\xf8\x49\x5e\xea\xa7\x15\x5e\xdb\x07\x40\x54\xa2\xdb\xd7\x4d\xcc\xc7\xc4\x37\xba\x86\x43\x5c\x79\x87\x29\xae\x13\xe7\xc3\x02\x74\x00\x11\xc0\x1b\x60\x00\xec\xa9\xfd\x83\xf3\x6e\x3d\x3f\x4e\xde\x07\xbb\x04\x99\xa5\xf0\x70\x9c\x12\xe1\xa9\x58\x28\x7d\x20\x86\x7f\xe9\x94\x28\x35\x6c\xcc\x94\x8e\xe9\xab\x83\x58\xa8\x83\xb6\xe4\xe9\xcc\xa0\x04\x71\xc4\x53\x21\x0c\x1a\x40\x8f\x23\x8e\x1a\x6f\x92\x1b\x93\x97\xb0\x8b\x38\xcf\xf3\x01\x03\xcb\x55\xff\xf2\xac\xd5\x1a\xcd\x63\x42\x5c\x0e\x46\xed\xb9\xdf\x16\x33\x64\xcd\x0f\xc4\x09\x16\xc6\xf6\x05\x68\x4d\x01\x54\xd0\x41\x4f\x70\x73\xd6\x10\xbb\x43\xbb\xd9\x3e\x0b\x99\x3c\x2a\x5d\x70\x8b\x0a\x44\x39\x27\x50\x49\x65\x92\x98\x90\x4e\xc0\x35\x34\xef\x2a\x91\x53\xc4\x99\x79\xfa\xcd\x20\x27\x05\x5d\xa8\xb3\x02\x09\xa4\x2c\x3d\x4c\x97\x60\x37\x14\x7f\x35\xc5\x34\x51\x02\x8b\x86\x4d\x2d\x94\x72\x75\x08\x85\xa1\x08\x93\x55\x8e\x6e\x3b\x08\x38\xc6\x49\xac\xb7\x51\x73\xee\xf8\x60\xf8\xc3\xc5\xd5\xcd\xe8\x64\x7c\x90\x87\x2f\x2d\xd4\xc5\x8a\x75\x97\x51\x93\xb2\x31\x73\x41\x08\x57\xf1\x11\xf6\x12\xe1\x38\xce\x13\x48\x34\x00\xee\x4e\x3b\x53\xdb\x9e\x8a\xb5\x71\x88\xf2\x30\x1f\xe9\x57\x12\x5f\x61\xb9\x55\xf4\xa2\x31\x3a\xdc\xca\x4b\x57\xc9\xe2\x19\xa3\x25\x4f\x51\x83\x90\x75\x4b\xb9\x55\xcf\xb5\xe7\x60\x7d\x12\x60\xaf\xac\xbb\x47\x20\x9e\x31\x65\x59\x62\x57\x88\x73\x0a\x3c\xc0\xa2\xd5\x00\x01\x1c\x5c\x71\xed\x0a\xfd\x11\x2d\x28\x03\xe8\x66\x13\x6d\x6f\xc3\x85\x74\xa9\x50\x70\x7a\x7e\x1b\x16\x2c\xf9\xf1\xe2\xf6\x2a\xcc\x17\xfd\x5b\x73\xad\x81\x70\x84\x26\x73\x3e\x5f\xa3\x07\x8f\x49\x35\x29\x1c\x69\xaa\x16\x7a\x56\xbc\xa8\xdf\x56\xb6\x57\xe2\x74\x86\x5d\x27\x7a\x79\xe0\x88\xbd\xc8\xf1\x32\x2b\xdd\x2e\xbd\x4b\x9b\x56\x97\xa1\xbd\xf6\xa4\x17\x74\x65\x00\x74\xf3\x50\x7e\xbe\x00\xb0\x5d\xab\xaf\xdf\xce\x00\xf8\x7c\x54\x8b\xc2\xee\xa0\xbd\xa1\xfc\x69\xeb\x01\x10\xc6\x09\xba\xc4\x13\x9a\x40\x78\x27\xf5\xf2\x91\x2a\x34\x0b\x71\x34\x66\x7e\xc5\x60\x7d\x67\x2a\x1e\xb0\x39\x69\x94\xcd\x50\xca\x08\x4a\xb9\x0e\xe5\x39\x71\x38\xf0\xc1\xf0\x45\x30\x97\x9c\xa3\x55\x9a\x71\xf7\xc6\xd2\x7b\x0c\xf7\x89\x39\xb6\xe1\x7e\xab\x67\x9a\x60\x94\x9f\x04\x07\xe3\x2d\x39\xc9\x8d\x2d\x78\x31\x79\x20\x0c\x3d\x2a\xc3\x2a\x8f\x4d\x8c\x99\x07\xb3\x52\x2a\x29\xfb\x56\x3a\x2c\x05\x4d\x4c\x0f\x2d\xec\x02\x31\xb9\xab\x45\x60\x6a\x46\x6e\x66\xe0\x1d\xe0\xe5\x21\x01\x60\x33\xe6\x83\x27\xeb\xbc\x07\x3a\x72\x05\x3c\xe0\xfb\x32\x34\xa6\xb7\x92\x65\xc9\xd7\x25\x89\x36\x01\x39\x5f\xda\x9a\x90\x4d\xde\x0c\x3f\x92\x66\xb2\xe2\xcd\xd6\xc9\xd4\xfa\x56\x8a\xb3\x5d\x33\xcf\x4e\xa9\x06\x6a\xa2\x3f\x9b\xdc\xbc\x8e\xf3\xb4\xc9\x06\x53\x9e\x2e\xda\x4d\xf1\x79\xe0\xb5\x37\x25\xa0\x6a\xe0\x1e\xd8\x13\x5c\xed\xfa\x59\xd6\x01\x6a\xd7\x49\xbd\x9f\xf5\xbd\xe8\xb0\xf3\x90\x17\x4b\xd0\x34\x59\x49\xe2\x82\x26\x06\xcb\xea\xbf\xd3\xbf\xb3\x5c\xf8\xc0\xc2\x4c\x0a\xa7\x20\x08\x4c\x4c\x08\x32\xda\x90\xc6\x96\x56\x83\x62\xe1\xfa\xac\xf2\x88\x7a\xb1\x55\x93\x1a\xa4\x88\x27\x24\x5e\xb8\x44\xd0\x62\xf6\x6f\x81\x5c\x6b\xa4\xd1\xae\x40\x8e\x4f\x00\x84\xad\xb2\x75\x03\x70\xae\x01\x21\xec\x26\x03\xae\x70\x43\x37\x4e\x2c\x48\x81\xf3\x27\x14\x13\x89\x69\x22\xfc\xb4\xaf\xf2\x56\x06\x37\x9f\xae\xe9\x64\x1d\xaf\x1b\x5a\xc9\x5e\x23\x4d\x7f\xe7\x91\x7f\xc7\x83\x93\x65\x81\x57\x1e\x38\x4a\x9d\x82\x84\x48\xb8\x9c\x29\x73\xff\x0a\x45\xad\x65\x66\x9f\x45\xab\x00\x0a\x47\xe8\x87\x95\xbb\x16\x71\x92\xf8\x33\xd1\xce\xbb\xbc\x7d\xa3\x3a\x0a\x70\x89\xa1\xd3\xf3\xe1\xf1\xcd\xe9\xcf\x23\x00\xfe\xac\xd2\x0c\x3d\x52\xa1\x2c\x84\x31\x03\x7f\xa0\x12\xa8\xf0\x3b\x99\x22\xfd\xc3\x01\xfc\x0a\xe0\x80\x22\x9b\x2c\xa8\xb2\xa7\xf2\x45\xde\x82\x44\xb8\xb2\xe0\x30\x7d\x8e\xd5\x03\x70\x6d\x5b\xd8\x59\x15\xc2\x7b\xcd\xf9\xd8\xc0\x0c\xce\x07\xd9\x16\x59\xe6\x85\x2b\x9e\x16\x5b\xe6\xa9\xd9\xbe\x59\x53\x79\xbc\x7a\x70\x59\xf5\xa1\x0c\x33\x2c\x21\x0d\x96\x0a\x59\xb8\x4c\xea\xf3\x2a\xf3\x2d\xd8\x05\xb2\xcc\x6a\xdb\x5d\xe0\x06\xf6\x91\x6a\x6d\xe7\xda\x15\xe7\xab\x54\xc1\x2e\x6b\xf5\x9b\x7d\xcb\x6f\xc9\xc3\x76\x9b\x07\x81\xba\x98\x5b\x39\x42\xdb\x67\x05\x0f\x81\x10\x22\x9b\x49\x51\x74\xb3\x54\x42\xf4\x35\x92\xc9\xaa\x02\xfa\x30\x66\xd5\x7a\x43\x33\x8f\x6d\x1b\x48\xdd\x69\x1e\x8c\xdb\x91\x2b\xb7\x0a\xe3\x11\xf9\xe2\x90\x63\xda\x18\x75\x35\xa3\x49\xe1\x5c\x59\xff\x6b\x8d\x15\x00\xea\xc2\x26\x18\x9c\x8a\x53\xd9\x32\xcc\xb9\xf6\x5c\x98\x2b\xf3\x69\x2c\xa8\x2d\xe3\xc1\x90\x0a\xba\xfb\x04\x56\x70\x62\x0e\xc0\x43\x9e\x3e\x10\xce\x69\xac\x2c\x2c\xbf\x72\x40\x2b\xca\xb5\xa8\xd2\x53\x23\xc3\x74\x5f\x12\x99\x42\xd8\xc4\xd9\xbc\x6a\x3c\x9b\xcd\x56\x90\x6e\x4e\xdd\xc9\x58\x4c\x38\x23\x58\xce\x9f\x2f\xbe\x78\xbc\xad\xcb\xf0\xd9\x62\x8d\xc7\x3b\x29\x65\xe5\x4f\x37\x2c\xeb\xb4\x76\x9e\x59\xa1\x22\x7e\x33\x3a\x37\xaf\xa1\x54\x32\xa2\x2a\x5c\x5d\x1e\xcc\xd9\xd8\x59\x61\x3d\xa5\x8e\x18\xf4\x5a\x0b\xc2\xb9\x9f\x94\x79\x10\xd6\xd7\x30\xed\x62\x9a\x45\xba\xac\x89\xbc\xb4\x29\x38\xa9\x75\xec\xa0\xfa\x9f\xfe\xc4\x7c\x50\x53\x25\xb2\xf0\x58\x71\xb5\xbe\x61\xc0\x56\x45\xbb\x1a\xf3\x38\x21\x02\x54\x3e\xad\xeb\x17\xb4\xba\x26\x9b\x63\xcc\x7e\x4c\x1f\xc9\x03\xe1\x03\x84\x25\x5a\xa4\xea\x26\x67\xc4\xef\xa3\x80\xc3\x3c\x53\xed\xd2\xc6\xe8\x1c\x2f\x48\x3c\x82\xfb\xc0\xc3\x6e\x19\xcb\xc7\x78\x15\xab\x52\x79\x20\x3d\x45\x6f\x83\x75\x81\x8f\x19\x8e\x24\x7d\x20\x3a\xb6\x03\x80\x41\x6a\x17\x06\xfc\xff\x3b\xe7\xf3\xfc\xdd\x11\xba\x51\x17\x17\x15\xe1\x7c\x3d\x48\x70\xdd\xdc\xc6\x6c\xc6\xd3\x6c\xe9\x34\xd3\x74\x02\x2a\xb1\xf6\x7d\x56\xf8\x3c\x61\x32\xd6\xe1\x19\xe1\x58\x5d\x8b\xcd\x8c\x13\xd8\x4e\x7b\xe6\x0a\x08\xf1\x75\x3e\x03\xa9\xdb\xc2\x85\x95\x0c\x74\x00\xd8\xa8\x3e\xf7\x7f\x77\xbe\xd3\x52\x6d\x36\x01\x4a\x99\x33\x59\x03\xb0\xc5\x86\xa2\xc2\x33\xf3\xad\x49\x5c\x8d\x12\xca\x5f\xab\x6b\x9d\x6a\xc1\x41\xaa\x8b\x07\xd7\xec\x7d\xfb\xac\xb3\xc2\x2c\x2f\x33\xbe\x4c\x01\x66\x9b\xac\x2c\x34\xc9\x40\x87\x97\xe9\x32\xd3\xc0\x6b\xea\x07\x99\x2a\x27\x44\x85\xfc\x8c\x65\x34\x57\xfa\x40\x0e\xa1\xdd\x45\x36\x5c\x20\x48\x9f\xd6\xfe\xa8\x58\xc1\xb1\xff\xf6\x1a\xdb\xba\xb5\x69\xa9\x13\xea\x2c\x7e\x00\xfe\x95\x24\x79\x37\xd7\x8a\x7a\x76\xd5\xb4\x0e\x4a\xe8\xec\x3c\xd0\xba\x85\x7e\x78\xa2\x14\x68\xca\x50\xfe\x43\x64\x3c\xc8\x95\x47\x3a\xe3\x74\x23\x35\xd0\x78\x20\xc8\x03\x61\x32\x37\x28\x16\x78\x89\xa8\x92\xdb\xea\xe6\xe1\x33\x32\x40\x8f\xb6\x6d\x24\xc2\x28\xe3\xd4\x9e\x30\xb0\x02\x1a\xb6\x2f\x54\xc3\xdf\xeb\x88\x80\xc6\x44\x45\xd8\xab\x1e\x65\xaa\xbb\x47\x32\xc3\x2e\x6e\x0b\x3b\x9c\x50\x76\xaf\x5e\xa6\xb3\xda\xad\xb7\x97\x2b\xf9\x96\x72\x0b\x2a\x0d\xf6\x74\x2d\xe7\x6d\xb1\xcb\xf5\x05\x1c\xd7\x1d\x05\xca\x66\x1e\x1c\xbe\xda\x08\x6a\x93\x9d\x5e\xf9\x64\xbb\xe4\xfa\xca\x47\xad\x3e\xb1\xc9\xb3\x0d\x08\xe2\x8d\x4b\x7b\x06\xb8\x09\x83\x13\x30\x1a\x89\x9f\xa8\x60\x54\x69\x48\x33\xa2\xba\x6b\x81\xd1\x50\xfe\xcb\xfd\xa5\x6b\x02\x69\xd2\xfc\x17\x4a\xf9\x98\xe9\xcf\x07\xae\x7c\x80\xfa\x41\x9e\xe9\x53\x93\x1b\xeb\xf8\xc9\xd6\x02\xdd\x4c\xaf\xbc\x19\x5e\xff\x74\x77\x35\xba\xbe\xb8\xbd\x3a\x0e\x94\xcb\xe3\xb3\xdb\xeb\x9b\xd1\x55\xe5\x77\xa3\xff\x3b\x3a\xbe\xbd\x39\xbd\x38\xbf\xfb\xeb\xed\xe8\xb6\xe6\x2b\x3b\xc0\xd9\xf0\x87\xd1\x59\xa3\x92\x5a\x3d\x87\xba\xea\xaa\xb8\xd0\x9d\x2a\x2f\x62\x60\x2f\xd5\xc9\xca\x6c\x11\xfd\x17\x18\xaf\x97\x9a\xae\x87\x03\xfb\x97\xae\x97\x79\xa8\x8e\xb2\x75\x5f\xe4\xa7\x60\xcc\x9c\x7f\xc9\xc9\x6d\x89\x67\xc2\xf6\xdd\x08\x66\xfb\x01\x0d\x97\xa6\xb7\x46\x1a\xbe\x54\x62\x71\x9f\xcf\xd4\xba\x15\x61\x6f\xa1\x9a\xb8\x30\x9d\x26\x0a\x64\x0e\x07\x34\x6b\x82\x29\x18\xf7\x4a\x8c\xf2\x4a\xb6\xa5\x92\xa7\x66\xd0\xc2\xfe\x40\x6b\x1e\x4d\x1c\xa1\xe7\x05\x59\x33\x2b\x86\x17\x34\xd2\x1f\x14\x12\x47\x4c\x4a\xc9\x82\x30\x59\x1c\x31\xd8\xd6\x70\xe4\x39\x41\x3f\xfd\x25\x9f\x14\x18\xc5\xc6\xc8\xcc\x4a\x15\xb0\x6c\xd3\xdf\xac\xaa\xa0\x49\x85\x6c\xda\x2a\x55\x47\xdc\xdf\xb9\xf6\x68\x1b\x09\xcb\x1b\x2c\xee\x2b\x8a\xee\x56\xca\x1f\xb3\xfe\x2d\xdf\x58\x5f\xe9\xb7\xda\x7f\x66\xe9\x7a\x07\x1b\xb8\xd9\x3b\x6b\xf3\xa4\xd6\xbc\xd2\xae\x38\x29\xd4\x9d\x69\xfd\xbe\xa0\x6e\x4d\x7b\xa9\x0c\xa9\xae\x34\x82\xb4\x62\x4c\x99\x29\x68\x40\x5c\x25\x1d\x5b\xda\x51\xd7\xeb\x37\xd9\x3f\x78\x92\x3e\x04\xe9\x65\x0b\x5d\xff\xbe\x52\x13\xf3\xec\xbd\x6d\x38\x30\xec\xcd\xd7\x5a\x1b\xb3\x9b\x0f\xed\x0b\x2a\xf7\xa0\xad\x3d\x57\x5c\xcc\x3a\x08\xd5\x06\x7e\x58\x6f\x74\xe7\x88\x6d\xa3\x82\x9d\xc0\x9e\x4e\xc0\xcb\x9e\x57\x58\xd4\x85\x7c\xc1\x50\xf3\x8d\xee\x41\x1e\x70\xd6\xaa\x99\xbb\x34\xdf\xdb\x7b\x14\xbd\xd7\x9e\x80\xf7\xde\x3d\xb1\x5a\x06\xbd\xdb\x9b\x37\xda\xa3\xcd\x5e\x56\x16\xaa\x6c\xa1\xba\xb9\xea\xd6\x76\x0a\xcf\xd0\xeb\xb4\x72\x11\x4f\x5d\x56\x68\xdf\xfa\xfa\xb7\x17\x7f\x79\xc9\x30\x33\x6f\x53\x5f\x08\xd4\xa2\x00\x98\xf1\x11\x30\x34\xde\x34\x87\x5e\xa9\x71\x40\xef\x4b\xc2\x75\x15\x1c\x88\xc6\xbb\x88\xaf\xf1\xd6\xad\x93\x8d\xf9\x91\xd9\xba\x52\x8b\x1a\xaf\x8c\xed\xdd\x71\x14\xb2\x59\x10\xae\x41\x0b\x0f\x5d\x25\xec\xbc\xb6\x8d\xa8\x61\xde\x3e\x12\x5f\xb5\xaa\xc0\x9a\xb2\xc4\xac\xdc\x94\x75\x8c\xf7\xda\xd8\xad\x45\xcc\x7b\x58\x45\x11\x83\x59\xa8\xd1\xc4\x7a\x2e\x7b\x5a\x2e\xdb\x05\xdc\x23\x9c\x5c\xf7\xdb\xec\x58\x2b\x44\xde\x30\x36\xa5\x4e\x69\xb8\x56\x4e\x87\x25\x80\x9a\x53\xc1\x1b\x97\xbc\xb3\x88\xc3\x2e\x54\xdf\x3a\x28\x82\xaf\xde\x99\x85\xbb\x52\x1a\x32\x35\x18\xd4\x27\x53\x9c\x6b\x3c\x97\xa5\x72\x03\x6d\xa7\xb4\x23\x9d\x7b\x0d\xf8\xc1\x80\x9f\x4c\xc8\xc2\xf4\xcd\x65\xe4\x51\x9f\xb6\xfd\x08\x7e\x54\xf0\xe1\x0b\x47\x3f\x82\x7a\x3d\x3b\x2b\xab\x7f\xb7\xde\x3d\x5e\x6d\x79\xef\xae\xd4\x7d\xa1\x31\xaf\x6f\x82\x59\x5d\xf9\xbc\xbe\x7c\x59\xb7\x8a\xe2\x01\x11\xd7\x57\x13\x87\x9e\x23\x58\xd4\x94\x12\x87\x9c\xfe\x78\x5f\x0a\x8a\x97\x51\xf1\xe1\xe4\x5e\xb8\x9a\x78\x61\x32\xfb\x53\x52\x7c\x2d\xdd\xf6\x37\xed\xa1\x62\xa2\x2d\x4a\x89\x3b\x54\x1e\x54\x0e\xeb\x26\xf2\x21\x13\x82\xc6\x09\x48\x24\xeb\xb8\x56\x87\xaa\x8d\xbf\xa5\x08\x07\x0a\x5c\x66\x85\xb5\x18\xa8\x3c\xb8\x89\xc3\x8e\x2c\xf5\x42\x71\xf4\x40\x98\xdc\x89\xbe\x00\x43\x54\xa0\x16\xdb\x19\xfd\xba\x16\xce\xe9\x49\x2e\x26\x5c\xf5\x48\x2f\x5a\x20\x39\x8e\xa0\x68\x96\xee\x07\x65\xba\x40\xd5\x39\x3a\xd5\xd2\xda\x6d\x11\xfc\xb4\x4c\x97\x35\xd0\x04\x43\xed\xbc\xf8\x57\x1e\xf6\x4c\x23\x68\x33\xda\x29\x91\x26\xb8\x99\x59\x0c\x09\xef\x5e\x09\x77\xdd\x05\xbc\xb8\xe7\xfa\x9d\x73\x2c\x8a\xaf\x5c\xbb\xe5\x1b\xe0\xef\x83\x61\x3e\x11\x79\x82\x25\xde\x49\x5d\xdd\x0e\x70\x48\x98\xc8\x2d\x4f\xd6\x76\xa9\xb9\xd6\x85\xc7\x32\x9e\xe4\x86\x0d\x46\xea\x42\x3b\xf2\xa2\xe0\x80\x52\x0e\x28\xaa\x27\x53\x23\x07\xba\xf7\xd5\x79\xca\xa9\x9a\xd9\x6c\x84\xa6\x17\x92\x67\x11\xa4\x26\xab\x13\x57\xbd\xb3\xa6\x26\x03\xc8\x4e\xe3\xac\x17\x41\xa6\x8d\x4d\xc9\x83\xe0\x7a\xe5\xbd\x5e\xcf\x3f\xdb\xfa\x00\xc2\x1a\x8e\x4f\xe6\x0a\x08\xa4\x77\xb0\x80\x3e\xa1\x63\x53\x03\xdf\x94\xe9\x70\x1c\x08\xf9\x56\x92\x53\x02\x89\xc0\x89\xcb\x1e\x08\x25\x9d\xf1\xf9\xac\x65\x2c\x75\xad\x9e\xb4\x34\xfb\x3d\xab\x34\xf7\x3a\xe4\x79\x05\x5e\xb8\xc9\x2b\x75\x89\xe1\xb8\x34\xb6\x76\xd8\x55\x27\x41\x50\x9d\x9f\x8c\xb7\x1b\xfa\x05\xf9\xbc\xdd\xce\xab\xaa\xa7\xaa\xd1\x35\x4a\x60\x64\x82\x70\x9d\x55\xee\x90\xc0\x15\xa5\xb5\x6a\x83\x20\x95\x8d\x13\x9b\x82\x92\xa5\x06\x8e\xd5\x9a\x86\xf6\xac\xa0\xef\x1e\x70\x42\x95\xc6\x77\x64\x13\x3f\xde\xa1\xff\x86\x52\x59\xff\x55\x57\x39\x76\x46\xf8\x5d\x9c\x05\x11\xc5\x75\x93\xba\x54\x0f\x9d\x64\x72\x55\x9d\x40\x13\x18\x3c\x09\x8e\xee\xbb\x24\x15\xa9\xdf\xd7\x0c\xbb\xfe\x04\x7a\x2e\xb6\xf0\x22\xa8\x49\xd9\x21\x85\x94\x1d\x13\x80\xf1\xdf\xaf\x83\x25\x0c\x2a\xa9\x79\xde\x02\x13\x37\x1a\xaa\x39\x1f\xa1\x8f\xba\x1a\x06\x5c\x6a\xfa\x15\x51\x9a\x25\xf1\x98\x91\xaf\xca\xdc\x0f\xa0\x13\x15\x15\x0c\x0c\x84\xc7\xbc\xa9\x5a\x12\x14\x8a\xd5\x6d\x75\xc3\xbc\x78\x7e\x55\x79\x4f\xcb\x4b\xae\x66\xb2\xad\x74\xf9\x3d\x69\x5f\x7a\x6c\x5b\xf5\x0f\x90\x5b\x64\x81\x2d\x12\xf2\x40\x38\x9e\x11\xd3\xde\xd4\xab\x56\x81\x37\xe8\x66\x7a\x59\x8a\xfe\xbe\xee\x96\xbc\xa5\xa0\xf2\xd3\xb2\xb1\x69\x68\xbc\x56\x2f\x6a\xef\x54\x6f\x2f\xd3\x6e\xd2\xe5\xa1\xae\x90\xce\x5c\x9f\x61\xab\xf4\x44\x09\x16\x82\x4e\x57\x5e\x03\x61\xab\x4d\xe8\xb8\xae\x2b\x8a\x12\x16\xcf\xa9\xd4\x35\x02\x30\xda\x6e\x90\x4e\xdb\x83\x0e\x8c\xfd\x6c\x23\xe0\x34\xf6\x51\xfc\x50\x15\xb2\x84\x7a\x6c\x59\xb8\x72\x5b\x2c\x82\x99\x99\x89\xc8\xef\x6e\x62\x16\xe4\xb7\x19\x64\xaa\x11\x45\xbb\x56\x3e\x14\xf7\xfe\x84\x24\x64\x4f\xfa\x5a\x95\x19\xa1\x91\xd6\x79\x7e\xe7\xb3\xed\xff\x76\xf3\xd9\x20\x2e\x55\x83\xbb\xdd\xc1\x7e\xbf\x70\x74\xa3\x66\x76\x9f\x48\x1b\xef\xce\x5a\x5e\xdc\xe8\x5c\xd5\x09\xc7\x2d\x88\xbd\xb3\x90\xe6\x13\x2f\xa8\x6e\xaf\xaf\x89\x14\x56\x71\xf5\x38\x5d\xfb\x4c\xcc\x39\x3d\xb4\x10\xac\x1c\xd0\xd4\x61\xc3\xf7\x24\xd8\x66\x66\x77\x65\x6a\x92\x3c\x9d\x38\x5c\xbf\x5d\x5d\xf8\x2d\x9f\xef\x06\x1e\x51\x33\xc6\x2e\x6e\xff\xa7\x55\xcd\x4a\x84\x69\x69\x5c\x5c\x97\xcb\x5d\x74\x4f\x14\xe3\x29\xbb\x23\x5f\x95\xcd\x29\x36\xc5\x51\xdc\x0a\x22\xd0\xf0\xcb\x35\x12\x2b\x26\xf1\xd7\x0f\x68\x7c\xf0\x59\xd7\xf4\x44\x3f\xa6\x19\x17\xe8\x04\xaf\x0e\xd3\xe9\xe1\x22\x65\x72\x8e\x3e\xc3\xff\x9a\x8f\x1e\x09\xb9\x47\x7f\x23\x98\x8f\x0f\xc6\x0c\x92\x55\x4d\xff\x34\x57\x77\x63\x8e\x21\xac\x26\x4c\xb9\xd0\x3f\xfc\xd9\xd6\x0b\x55\xaf\xf9\xfe\xfd\x1f\xfe\x8c\x7e\x07\xff\xef\xff\x8f\x7e\x37\x3e\xa8\xb9\x97\xba\xe5\x40\xe6\x05\x5d\x2b\x47\xbb\xa7\xd1\x7d\x3a\x9d\xde\x49\xba\x20\xba\x58\xc0\x1d\xe6\xb5\x1d\x96\x3a\x22\x42\xa9\xa9\x61\xa0\xab\xb0\xe5\x69\x5a\xe6\xa5\x3a\xfc\x68\x95\x30\xd7\x98\x5b\x67\x4d\xb1\x30\x77\x9f\x0a\x78\x8a\xc4\x28\x9d\x4e\xbb\xf8\x00\x6d\x56\x48\xb9\x42\x52\x1e\xc8\xf6\x2b\x72\x38\xa3\xce\x77\x45\xa4\xeb\x2a\x9e\x96\x7d\x24\x6f\xcc\x2a\x86\x05\x3e\xa9\x45\x7c\x9d\xf2\xad\x44\xf8\x3d\x29\xf9\xcb\x3a\x39\xc0\x6d\x71\x01\xbf\xb0\x0b\x44\xc8\x52\xee\x60\xd5\x3a\xa0\x61\x32\xf9\xc7\xec\xe6\xe2\xe4\xe2\xbb\x7b\x2c\x79\x3a\xc3\xec\xdd\x07\x34\x8c\x63\xd3\x64\x03\x19\xa7\x9f\x62\x9e\x39\xe1\xe4\x08\xf9\x15\xf3\x99\x22\x5c\xa5\x47\xdb\xd7\x87\x29\x27\x51\x95\xe1\x5a\x7d\xd8\x15\xf9\x4e\xdc\x23\x35\xd0\xa3\xa0\x82\x82\x7b\x41\x9e\xed\x0c\x6b\xbd\x27\x2b\xd3\x54\xaf\xb8\xde\x4d\xfa\x86\x5c\x2f\x49\xa4\xac\x5f\xdd\x68\x88\xc7\x04\xc8\xa3\x5b\x35\x53\x21\x6d\xf0\xb5\xf2\x50\x85\xcd\x93\xb6\x41\x71\x16\x33\x51\xb6\xe0\x14\xdd\x6b\x2b\x97\x0d\x36\x9b\xa9\xd0\xc4\x8d\x63\x25\x36\x36\x84\x23\x9a\x3e\x2e\x7e\xfb\x89\x4c\x10\x7e\x38\xc5\x91\xa2\x5e\xa1\x1d\x94\x2f\xaa\xaa\xe8\x78\x83\xc5\xfd\x6e\x1d\x4d\x5b\xd7\x04\xa0\x71\x9e\x43\xab\xb9\xb1\xdc\x7b\xd4\x5c\x22\x12\x8b\xfb\x3a\x08\x4a\xe7\xa2\xbb\x8a\x14\x16\x9d\xd5\x34\x3f\x33\xb2\x97\x2a\x64\xda\x22\x80\x62\xea\xa1\xe8\x17\x78\xa9\x5b\x33\xc0\x05\x43\x13\x12\xfb\x05\x2c\xaa\xe6\xbf\x8e\x0d\x34\x14\xdf\xf3\x13\x71\x48\x3f\x50\x6a\x73\x0c\xb1\x39\xcc\x56\xfa\x20\xa9\x0b\x0b\x8b\x7b\xe1\x0a\x53\x20\xb1\xc0\x49\x32\x40\x9c\x64\xd0\x5b\x63\x80\x04\x49\xa6\x87\x36\xfb\x29\x46\x49\x3a\xa3\x11\x4e\xd0\x24\x49\xa3\x7b\x31\x66\xea\x06\x61\x33\x7d\xf1\x2d\x79\x1a\x11\x21\xbc\x2b\x37\x0f\xbf\x2e\x79\x1a\x67\x91\xae\x9d\xab\x6b\xd7\x53\x21\x69\x54\x28\x98\xaa\x24\x22\xb4\x92\x8a\x30\x18\x18\x50\x12\x63\xa1\x7b\x43\x72\x4a\xc0\x09\x26\x33\xdb\xde\x04\xb2\x3b\x70\x42\xff\xa5\x7b\x93\xe1\x07\x9a\xf2\x3a\xee\xdd\x01\xa0\xce\x6e\xcf\x9d\x0c\x4f\xc3\x1a\x7e\x3e\x36\x8f\xc1\x19\x6a\xe2\x98\xab\x90\x9d\x1d\x37\x38\x36\x77\x49\x18\x96\x29\xf2\xfa\xb2\x36\xd1\x45\xff\xc4\x86\x55\xf7\x0c\x77\x05\x53\xae\x41\x5b\xad\xe3\xe9\x63\x5d\xb2\xd5\xe4\x96\x7a\x0e\x38\x18\xdd\x16\xb5\x34\x59\xf2\xea\x8a\x78\x50\x4c\x62\xc9\xa3\x68\xaf\xae\x91\x81\xab\xa3\x8a\x05\x5a\x26\xd9\x8c\xb2\xbc\x45\x9e\x92\x87\x63\x06\x05\x55\xd4\x4b\x0a\x45\x39\xcb\x1c\xb5\xc7\xb5\x53\x77\x23\x1c\x3b\x96\x50\xb5\x44\xee\xc2\xe4\x21\xdf\xda\x56\x72\x1b\x43\xf0\x79\x55\xb8\xde\xf4\x8c\x56\xdf\x3e\xd0\xbc\x30\x90\xf7\xa2\xda\xbd\xdd\xd8\x4b\x51\x98\x55\x09\xc7\x42\xa7\x9a\xc9\x60\x6e\x10\xaa\x34\x7d\x40\xea\x66\xf4\x22\xc8\xe0\xa6\x8d\xbc\xc4\x52\xf7\x72\x20\x8b\x54\xea\x72\x18\xba\x32\x85\x29\x58\x61\x0a\x5e\x4c\x92\x74\x02\xf7\x0a\x14\xad\x80\x75\x07\x15\xc0\xcc\xba\x49\x8c\xbe\xf3\xae\x09\x07\xd7\x79\x57\x17\x71\xdf\x1d\x3c\xb9\x98\xf1\x56\x0b\x52\x0e\xb3\xd8\x8f\xd0\x65\xee\x6e\x2a\xae\x6a\x8a\x95\xe4\xae\xeb\xeb\xda\x0d\xd2\x1c\xec\xfe\x0e\x20\xcd\x85\x65\xd4\x14\xb8\x48\x77\xd1\x7a\xb2\x79\x51\x67\x69\x7b\x3b\x52\x03\x18\xb5\xfe\x11\x6c\x8e\x65\xb3\x55\xd5\x16\xed\x17\x5c\xbb\x50\x05\xe1\x65\xe1\xda\x85\xc9\xec\x33\x5c\xbb\x30\xd5\xfd\x85\x6b\x57\x4c\xb4\x05\x5c\x5b\xbb\xdb\xef\x14\x53\xb7\x13\x0a\x4b\x9e\xca\x74\x92\x4d\xaf\xe1\x36\x69\x53\x91\x51\x0b\x67\xab\xe7\x98\x2c\x19\x98\xad\xd6\x81\xba\x29\x62\x3e\xaa\xbb\xb0\xe4\x96\xa8\xee\x40\xa4\xf5\xa8\x6e\x87\xea\x2e\xd3\x65\x1f\x51\xdd\x85\x3d\x6f\x87\xea\xae\xda\xf2\x0d\x62\x18\xc1\x30\x6f\x06\xd5\x5d\xa0\xe8\x3e\xa3\xba\x0b\x53\xdd\x1d\xaa\xbb\x7a\x67\xbb\xa1\xba\x2b\xaf\xff\x7a\xfe\xd9\x16\x73\x07\x45\x7f\x9e\x19\xd5\x1d\x2c\xa0\x47\x75\x6f\x59\xa6\x3f\x64\x41\x33\x03\xa8\x3a\x6b\x80\xc2\x45\x59\xd7\x80\xeb\x06\x95\x76\x07\x1c\xf5\xb4\xb1\x55\xf0\x42\xb5\xd5\xba\x87\x01\x1d\x84\xa9\x83\xa8\xae\x3f\x8b\xb5\xf5\x5a\x59\xf6\xe5\x29\xb6\x2d\x1c\x50\x20\xb2\xf3\x5e\xc1\xc6\xd5\xb1\x5c\x45\xf5\xae\x2d\x18\xd0\x94\xcc\xdb\xb4\x6e\x59\x7d\x77\x3b\x5d\x90\x6e\x37\xc3\x7e\xe3\xff\xb7\x96\x20\xdb\x36\x37\x88\x96\xd9\x26\xe8\xd8\xd9\x66\x8f\x2d\xc8\x22\xe5\xeb\xc2\x8f\x35\xe6\x6c\xca\xf1\x6c\x1d\x22\xb7\x2d\xf5\xb6\xa5\x9a\xad\x21\xd8\xcd\xbf\x71\x63\x9f\x6a\x34\xb8\x6c\xf7\x07\xdf\x03\x0e\x3a\x69\x65\x8c\xc5\x85\xb8\x36\x8c\xa2\xd4\x24\x1e\x94\x5f\x08\xee\x55\x41\xf8\xa1\x97\x49\x10\xfa\x35\xcb\x33\x08\xe8\x6e\x15\xb4\x2d\xc8\x9e\xf1\xda\x18\x7f\x0b\x19\x3b\xd4\xd5\x67\x95\xf6\xe7\x17\x4c\x28\x72\xda\x64\x55\x81\x47\x6b\x67\x52\xeb\x9e\xbc\x5d\x1c\xc3\xf4\x5f\x6e\xa3\xa7\x34\x21\x08\x47\x11\x11\xd0\xd4\x19\x19\x0c\x88\xae\xb2\x97\xf1\x64\x9b\x5d\xa5\x6c\x06\xeb\x56\xca\xa4\xd7\x05\xc0\x31\x8f\xbe\x33\xe6\x3c\xcd\x66\x73\x6b\x65\xd9\x46\x71\x55\x7b\xf9\xa5\x5c\x55\xf6\x95\x05\x04\x0a\xad\x63\x8a\x4c\xd0\x3d\x62\x6a\x49\xf2\xcc\x51\xd3\xaa\x75\x74\xe0\x8e\x00\x3b\x94\x1f\x7f\xeb\xc7\xd6\x5a\x09\x64\x0a\x8d\xd9\x30\x40\x19\xd9\x3e\x63\x93\x55\x8e\x56\xd0\x57\xbb\xcf\x64\xd0\x19\xd5\x58\x2f\xd0\x8a\x44\xfd\x05\x6a\x08\x3c\x64\xe2\xa9\x36\x66\x0a\x40\x0b\x12\x1f\xe2\x68\x15\x25\x34\xf2\x54\xd2\x19\xc7\xcb\x79\x13\x27\xf6\xb0\xff\x97\x82\xfd\xb7\xac\x30\xdd\x08\x15\xf1\x6b\x34\xbf\xea\x74\x84\x32\x3b\xf6\x99\x08\x1d\x58\x72\xbb\xf9\xec\x9c\x13\x5f\x53\x62\x44\x3d\xe7\xbd\x30\x08\xbd\x3c\xb1\x97\x4c\x87\xa8\xb8\x2f\x36\xa3\xee\xcb\x26\x41\xb4\x5a\x46\x2d\xd4\xb0\x45\xfe\x43\xd0\x10\xc8\xdd\xfb\x6b\xb2\x21\xea\xa9\xb4\x27\x3c\xb8\x4b\x7c\x54\x9d\xb4\x59\x8f\x91\xea\xa2\x2a\x76\x83\x4b\xb9\x8d\x7a\x5d\x90\x29\x37\xed\x0d\x61\x53\x43\xaf\x70\xf9\x3c\x4d\xa0\x25\x71\x40\x2d\xf7\x02\x87\xbc\x70\x04\xb2\x9b\x01\xfd\x27\x41\x75\xcd\x8b\x4d\x34\x81\xa3\xdc\x26\xbe\x0d\x80\xd4\x1a\x7b\xa8\x23\x48\xca\x27\xea\x76\x40\xa9\x2d\xed\x9b\x6e\x60\xa9\xa6\x7e\xa2\xc5\xfd\xde\x20\xac\x57\x2a\xec\xd1\x07\x85\x5d\x50\xb8\x9a\x36\xfb\x18\x18\x2e\x77\xe8\x6b\x19\x1c\xae\xdb\xfe\x5d\x70\xd2\x0e\x83\xc4\x2f\x1c\x7a\x6d\x8c\xba\x7a\x0c\xf6\xb2\xb1\xec\xa6\x30\xf6\x7a\x36\xab\x8c\xcb\xd5\xef\x69\xa7\xf0\xf0\x9a\x1c\x07\xfb\x96\x6d\x63\x78\x0e\x77\xff\xa4\x71\x3c\xe7\x67\xf4\x9e\x68\x19\xcb\xcb\x13\x03\xfa\x78\xde\x93\xc6\xf3\x2a\x08\xbd\x3e\xa6\x17\x28\x08\xcf\x1a\x88\xb1\x6f\x7e\x8e\x60\xcc\x3a\xa5\x2a\x9b\xdc\x3d\xf9\x39\xaa\x5c\x73\xdb\xe3\xf4\xc5\xed\xad\xbe\xfc\xb8\x62\x9a\x09\x89\x75\x07\x77\x99\xa2\x14\x12\xaf\x72\x16\x60\x44\x33\x6b\xde\x85\x1b\x43\x63\x13\x1a\x6b\x40\xe6\x12\x43\xad\x17\x77\x87\x6a\x94\xde\x98\xc1\xfe\x26\x09\xe1\x56\x67\xe7\xe8\x3b\x41\xa1\x3b\x7a\xae\xc7\x73\x14\xa7\x44\xb0\x6f\xa5\xee\xad\x81\xd9\x0a\xdd\xb3\xf4\x31\x21\xf1\x0c\x76\xa8\x38\x99\x43\x44\xc9\x00\x51\xe9\x1e\xe3\x04\x47\x73\x25\x2e\xc7\x6a\xee\xe0\xd6\xd6\x97\x3d\x31\xcf\x72\x93\x79\xee\x99\x0c\xe2\xdd\x11\x42\xa7\x0c\x4d\xb1\x32\x8a\x45\x36\xc9\xc7\x8f\x53\x68\x58\xaf\x6e\x7f\x7f\xe1\xf9\x20\x4f\x16\x88\xab\x0c\xbc\xd5\x68\xaf\x8a\x01\x86\x09\xc5\x5b\x39\xc6\x1f\xf0\x36\xa9\x80\x9f\x33\x21\x75\x0f\x38\xe8\x04\x6c\xe6\x6b\x40\xcd\x2e\xed\x19\xaa\x04\xe9\x14\x62\x96\xc6\xb5\xdd\xb2\x0b\x4b\xe9\x3a\x97\x3c\x8a\x61\x8a\x13\x19\x93\x08\xc6\xd5\xe4\x8e\xd3\x47\x26\x24\x27\x78\x01\x13\x11\xa6\x95\xe5\x54\xc7\x2b\xb4\xb3\x81\x72\x7d\x03\x77\xd9\xe2\x33\xca\xee\xd5\xee\xe6\x89\xde\x29\x64\xd1\xaa\x37\x57\x6c\xda\x0f\x94\x61\xbe\x55\xb7\x2c\x5d\x89\x7e\x23\x53\x7e\xb2\xaa\xcb\x84\x97\x78\x5d\xda\x7b\x17\xc3\x5d\xd0\x85\xba\x17\xd5\xeb\x10\x88\x3a\x5d\x56\x0e\x23\x89\xa1\x79\xfd\x9c\x24\x4b\xaf\x48\xd4\x12\x73\xe9\x7a\x33\x98\xec\xcf\x28\x5d\x2c\x32\xa6\x5b\xdc\x6b\x5b\xe0\xd1\xa4\xf9\x19\xbf\x50\x3e\xf8\xd1\x98\x9d\xca\x6f\x85\x3a\x5f\x29\x9b\x25\x2b\x84\xe3\x07\x2a\xf2\xa4\xfb\x28\x65\x22\x5b\x10\x6e\x5e\x41\x85\x6e\x89\xa0\x5b\x4c\x23\x6c\x79\x45\xcd\x4d\x29\x5e\xb6\x62\xa1\xb9\x1b\x66\x68\x42\xa6\xea\xd2\x5d\x62\x2e\xac\x0f\xa2\xc2\x7f\x60\x36\x37\x56\xb4\x7a\xb1\x33\xf9\xb3\x7f\xec\xd0\x22\x3f\xa1\xd8\xe8\xb4\xef\x8b\xe7\xd3\x50\xbd\xe1\x6c\x4e\x4a\x8b\x42\xcd\x17\x93\xa1\xc2\x49\xa9\xdd\x42\xd1\xd4\xb3\x5d\x1f\x04\x1c\x1a\xf5\x1e\xab\xd0\xe8\xc9\x75\xf2\x16\x15\x16\x68\x66\xad\x5d\x00\xfe\xd9\x34\x9d\x47\x85\xc4\x92\x46\x46\x77\xca\xeb\xea\xea\xa7\xeb\xb7\xb6\x6d\xc1\xd3\xba\xed\x15\x11\x4e\xca\x3b\x5c\x4f\xcb\x6b\xfd\xfb\x66\xd9\x67\x8e\x9b\x1e\xbb\x11\x06\x11\xa5\x49\xd2\x25\xaf\xbe\xb0\xf2\xe3\xfc\xf1\xe6\x19\xe5\xef\x51\x1b\x60\xf7\x02\x4e\x8d\xae\x05\x80\x13\xa3\x59\x08\x69\x76\xc9\xff\x91\x96\xa1\x2b\xc4\xb2\xc5\x84\xf0\x31\x4b\xa7\x50\x6e\x21\xa9\x33\x1b\x97\x3c\x5d\xd0\x2e\x89\x49\x17\xb0\xcd\x57\x36\xd8\xb3\xc6\x9b\x65\x43\x42\xea\x14\x19\xf6\x32\x6f\xd4\x5d\xf6\x98\xd6\x33\x1a\xce\xd0\x02\x2f\x37\x22\x78\xa9\xd3\x74\x89\xd2\x0b\x6d\xba\x1a\xea\x41\x36\x34\x81\x22\x06\x40\xe4\x47\xbc\xca\xc1\x22\x5d\x8e\xd3\xb5\xd6\x45\x88\xc8\x3b\xf5\x1a\x2e\xf3\x4e\x8c\x0b\x96\xe9\xfd\xd2\x54\x68\x73\x82\x8e\xab\xd8\xb0\xf3\x59\xb2\x6b\x7e\x4a\x25\xdb\x3f\xf6\xbe\x7e\xdd\xe5\x36\x0c\x0f\x83\x37\x22\x82\xe9\x34\x93\xea\x73\xc0\x39\x3b\xa7\x51\x61\x1c\xa4\x6d\x39\xeb\x2b\xbf\xac\x1e\xf5\x19\x68\x66\xd8\xba\x15\xb1\xb6\xc4\x9f\x75\xeb\x32\x61\xdf\x58\xd1\x54\xc2\x3b\xef\x5d\x3a\xd7\xac\xb7\x21\xa6\x4a\x77\xd1\x6a\x65\x3a\x9d\x26\x29\x56\x96\x9a\x89\x5d\x4f\x69\x42\xc4\x11\x3a\xad\xb0\x27\xfc\xc6\x4f\x3a\xbd\x15\x22\x21\x56\xdf\xc9\x38\x35\xa8\x0c\xc2\x89\xd3\x6a\x10\x35\x45\x87\x73\x97\x03\x27\x6a\xce\xc0\xc0\xa0\xc9\xcf\x95\x89\x37\xd7\x03\x50\x61\x1a\xdc\x4b\x35\x25\xb0\xed\xa8\xd4\xbe\x88\x98\x2c\x09\x8b\xdd\x03\xa9\x6e\xa3\x88\x23\xdd\xe3\x32\x9f\x55\xcd\x96\xee\xa2\xf2\x49\xfb\x18\xbd\x7d\x6b\xa1\x97\xec\x37\xfe\x7f\x8b\x33\xbc\x09\x47\xef\x3c\x3b\xa7\x97\x77\x77\xee\x7f\x84\x47\xad\x33\x09\xa3\x29\x27\xe0\x6f\x5c\x38\x5c\x20\x8b\x09\x17\x32\x4d\xe1\x86\xba\x3e\xf9\xe9\xfd\xed\x29\x22\x32\x82\x3a\xac\x63\x16\x89\x87\x81\x52\x68\x7f\xc9\x88\x54\x1f\xd7\x15\xe1\x59\x10\x26\x40\x12\xd0\xb6\xf5\xb8\x2d\x61\xd4\x7f\x4f\xc2\xe7\x1b\x58\xde\x6b\x77\xab\x0b\x56\x01\xef\xda\xc2\x18\xc0\xa6\x90\x8d\x1d\xf4\xf9\x0b\xf6\x23\x4d\x13\x82\xd9\xa8\xaa\xfa\xd9\x06\xd1\x60\xf6\xcf\x8c\x75\x54\x93\x8e\xf3\x87\xbc\x59\xd4\x68\x61\x8b\x25\xe6\x54\x74\x1b\xde\x3e\x53\x39\xfa\x3a\x21\x92\xb7\x87\x9f\x68\x4a\xa1\xbc\x50\x1c\x92\x9c\x10\x10\x21\x8e\x9f\xcc\x5d\x0f\xb7\xbc\x47\x0d\xef\xa1\xa3\x31\xfb\x6c\xfd\x9f\xf9\xa7\x22\xef\x6e\xbb\x98\x40\xd1\x95\x0c\x6c\xa6\x70\x14\x18\x36\xa6\xc2\x7d\x00\xb9\xf8\x22\x4b\xa4\x2e\x8d\x34\xa5\x0c\x27\x6e\xa2\xfa\x9b\x2a\x29\xc1\x31\x8b\xe6\xd0\x7f\x6b\x9b\x08\xed\xf4\x8e\x24\x5d\x74\xc7\xd3\xe9\x28\x11\x8a\xbf\xa3\xfb\x9a\xd3\xf9\x7b\x5b\x52\xad\xc3\x06\xe5\x8b\x01\xcd\xcd\x16\x88\xd1\x56\x89\xf6\xd3\x25\xba\xd0\x12\x41\xe0\x64\x2b\x82\x03\x34\x98\x52\xed\xa2\xd1\xad\x4d\x3b\x39\xc9\xd3\x04\x59\xb7\xdc\x04\xde\x82\xb0\x1c\x33\x9e\x31\xc8\xa8\x76\xfe\x73\x8c\x04\xe1\x54\x3b\xb2\xa3\x94\x69\x1d\xc0\x38\x4f\x66\x4a\x4c\x28\xcd\x0f\x90\x19\x29\x03\x8b\x2a\xcd\x84\x92\x21\x78\x41\xa4\xba\xa0\xbe\x83\x9a\x7f\x3a\x82\x31\x40\x4b\x4e\x17\x92\x3e\x10\x57\x06\xc1\xdf\xb9\x4a\x66\xde\x26\xba\xb5\x24\x1c\xcb\xb6\x55\x15\xaa\xde\x7e\x61\x47\xa8\x3c\xb0\x09\x99\xca\xbb\x4a\xbf\x4b\x83\x89\xa1\x46\x64\x71\x0d\x8a\x8c\xce\xe6\x3b\x18\xb1\xfd\xa9\xff\xa3\xf1\x8b\xa9\xa3\xee\xdd\xf8\x3c\x4d\xa5\xe6\xb7\x5c\x26\x21\x4b\x4d\x50\x17\xcc\x4b\x75\x25\x26\xb5\xa9\x14\x76\x55\x9d\xe1\x7b\x96\x3e\x32\x67\x5b\x2b\xb5\x61\x84\xa1\x38\x98\x13\x2c\x26\x4e\xa1\x4f\xf5\xda\xf3\x1c\x54\x1b\xda\x93\x3c\x0e\xbf\xc1\x28\x54\x50\x4c\x56\x28\xaf\x28\x15\x3c\xd7\xe6\x7a\xd3\x76\xa7\x3d\xbb\x7a\xc1\xa6\x88\x8a\x24\x4b\x63\x1b\x9b\x1e\x94\x0e\xe4\x01\xee\x55\xf5\xaa\x23\xf4\xc5\x6a\x72\x10\x06\xca\x2b\xa1\x49\xed\x38\x49\xf0\xca\x76\x6a\xae\x22\xec\x2e\x00\xfe\xbb\x8e\xcd\x34\x13\xd8\x21\x37\x2b\xa8\x1c\x5c\xa8\x8c\x69\x0b\xab\x65\xec\xd8\x5c\xd8\xe6\xa1\x6b\xd2\x8c\x49\xf8\x08\x55\x55\x74\x0f\x70\xf0\x56\xa5\x2c\x59\xfd\xff\xf4\x66\x01\xb0\x5f\x1d\xa1\xcc\x78\x03\x3c\x1f\xa6\x3a\x3f\xe0\x83\x63\xa9\x54\x97\xe2\x94\x26\x09\xc4\x58\x8e\xd0\x10\xea\x82\x41\xc5\x27\xdd\xf5\x5d\x07\xef\xe8\x8c\xa5\xeb\x42\x0c\x35\xcc\x14\x79\xcc\x74\x5d\xcf\x4c\x02\xb8\xc9\x45\x15\x76\xc4\x51\x3b\x80\xe0\x29\xd9\x82\xcb\x69\x64\xed\x81\x77\x1d\x2e\xe3\x97\x08\xd7\x95\xa6\xeb\x9b\xc6\xd5\x53\xff\x94\x61\x8e\x99\x84\x20\x94\xa9\x1e\xcb\x4d\xa0\x57\x71\x20\x22\x5f\x21\x5a\xcb\xb4\x61\x07\x1f\xf9\x9b\x6b\x9d\xee\x33\xfa\x40\x18\xa2\xf1\x00\xd1\x23\x72\x34\x30\xd5\x77\x45\x36\xc9\x7f\x39\xc7\x02\xe1\x31\x2b\x01\xc9\x8e\xd0\x30\x11\xa9\x79\x82\xb0\x28\x81\x3a\x7c\x5e\xbc\xcc\x71\xbe\x71\x13\x4d\x56\x80\x36\x85\xad\xcc\x87\x4f\xcd\x17\xde\x83\x63\x86\x85\xf6\x4a\x27\x70\xd2\xf3\xcf\xab\xea\x6c\x06\x91\x8a\x27\xcc\x33\x2e\x5d\x43\x4f\xb6\x49\xba\xa0\x5c\xd3\x06\xc1\x2f\x60\x63\x72\x80\xdf\x98\x39\x76\x46\xdf\x61\x99\x10\x2c\x24\xfa\xc3\xbb\x4e\xc1\x19\xbb\xbe\x5c\xb8\x9a\xd3\x9b\xc3\x50\x6c\xe8\xbb\xae\x4c\x30\x94\x21\x42\x18\x1a\x23\x3b\x60\xca\x40\x6d\xb3\x4c\xd1\x03\x15\x19\x54\x36\xf4\x60\x55\xba\x36\x1d\x95\xc2\x96\x59\xd1\x7e\xca\x1a\x31\x62\x2b\xc5\x1a\xff\xa5\x99\x56\x05\x63\x0d\x34\xc9\xa9\x56\x76\x01\xd9\x9c\x07\xa1\xe7\x4a\xcb\x35\x82\xd5\xc6\x6d\xbc\x12\x58\xc3\x24\x09\x03\xbf\x4a\xc1\x89\x09\x53\x0b\x86\xba\x8c\x47\xc8\x6f\x22\x2a\xf2\x58\x61\x58\x9a\x39\x6f\x93\x8e\xd2\xe9\x98\x39\x74\xaa\x3f\x76\xa5\xb2\x53\x65\x2e\x3e\xa3\x0e\x5c\xf1\xfa\x33\x5d\x20\xb3\x85\x2e\x5c\x5f\x65\xbc\xc1\xbd\x52\x32\xd1\x1b\x54\xe3\x5d\xbf\xa0\xbd\xa6\x5c\x6d\xee\xc2\x2d\xfb\x98\x56\x58\xcf\x35\x9b\xeb\xa9\x16\x5b\x6c\x6a\x1e\xb4\x7e\x2e\x07\x6e\x30\xf5\xd3\x18\x10\x65\xeb\x85\x60\x8e\xd0\xb2\xa2\x03\xec\x56\x1a\x7b\x18\x13\x2f\x00\x0f\x50\x22\x2b\xf7\xcc\x2f\xeb\xea\x61\xbd\xee\xe5\x0f\xf2\xf5\xdb\xa5\xb8\x28\x74\x79\xe1\xf5\xba\xde\x30\xfe\x27\x8e\x08\x8b\x56\xfa\x4d\xb6\xae\x5f\xae\xc7\x81\xb2\xe7\x65\x70\x62\xb0\xcd\x2b\xb5\x43\x53\xeb\xf6\x08\x8d\xe0\x9e\xb1\xa5\x6f\xf1\xd4\xfa\x17\xbc\x1f\x8f\x99\x32\x4c\xd4\x15\x2f\xf4\xa4\xed\xf8\x21\x8b\x57\x9d\x00\x0d\xdd\xdf\xca\x35\xb3\x58\x5f\x1c\xa0\xce\x98\xb0\x99\x03\x30\x06\x64\x5a\xa3\xd1\xec\x03\x8a\xd3\xe8\x9e\xf0\xf7\x9c\xc4\x54\x7c\x00\x57\xb9\xac\xf5\xd1\x2d\x94\xb1\xbd\xb5\xa2\xb1\x69\xf5\x79\xfd\x7e\x83\x3e\xd2\xf7\x16\x51\x1a\xc2\x14\xac\x09\x8b\x2a\xd4\x50\x43\x53\xfa\x02\x11\x26\xf9\x6a\x99\x52\x26\x2d\x4a\x22\x2a\x10\xc2\x1a\x1a\x4a\x67\xab\xc3\xe2\xf0\x5d\x84\xd4\x36\x5c\xf6\xcd\x9c\x08\x62\xe3\x07\x7a\x51\x32\x45\xba\x2a\xb4\x16\x17\x4b\x2c\xe7\x02\x70\x91\x21\x0d\x8c\xcd\x05\x8f\x2a\x0a\xe1\x25\x84\x1f\xb4\x93\x22\x7f\xc8\x01\xfe\x84\xa4\x49\x32\x66\x8c\x90\x58\x20\xa8\x53\xf4\x6d\x25\xfe\x56\x3d\x3a\x40\x38\x8e\xd1\xff\xfe\xee\xe3\xd9\xdf\x6e\x46\x77\xa7\xe7\x97\xb7\x37\x77\x1f\x4f\xcf\x46\xef\x06\xee\xc3\x8b\xdb\x1b\xf7\xa9\x76\xb0\x3c\x10\x8e\x16\xf8\x1e\x2c\x3c\x26\xb4\xfa\x07\xb0\x38\x7f\xa6\x36\xdd\x49\x7d\x23\x88\x85\x9a\x18\x35\xc5\x25\xbc\x98\x3d\x5c\x93\x92\xd8\xc1\xf6\xbd\x72\x8f\x34\xf3\xa0\x65\x1e\xf7\x0a\xab\x06\x2e\x08\x93\x4a\xc6\x18\xcc\x5a\x6e\xfa\xe6\x0c\x47\xd8\x8c\xb2\xba\x80\x38\x61\x0f\x4f\xa9\xc3\xff\x44\x56\x3f\x2b\xeb\xfa\x12\x53\xde\x9a\xf7\x46\xec\x81\xf2\x94\xc1\xd2\x9c\x57\x2b\xef\xd0\x41\x60\xc1\x85\x43\x25\xb4\x2e\x0c\x21\x97\x65\x2d\xe8\x82\x4d\x69\x2d\xbc\xea\xc5\x96\x3b\xd4\x6e\x62\xf2\x55\x72\x6c\x1a\x82\x0a\x23\x6e\xf0\x03\xa6\x09\x00\x66\xec\x45\x93\xf3\xa0\x6e\xfc\xf0\x01\x91\x04\x4f\x52\x0e\x30\x5a\x1d\xe1\xb3\x43\x18\x82\x41\x09\x74\x37\x50\x1d\x70\x23\xe5\x4f\xd7\x90\x27\xb8\x87\x2e\x53\xde\xe6\x26\x57\x3f\x03\x2a\xa4\x4b\x65\x92\x15\x84\xa8\xb9\x66\xa7\x04\xeb\x4a\xc8\x02\x24\x8d\xc8\x96\x6a\x1d\x06\x0c\x92\x24\x41\xd1\x2d\x75\x06\xc4\x91\x71\x8e\xe7\xbf\x4c\x19\xfa\xe9\x2f\x02\x4d\x32\x39\x66\xe1\x18\x29\x83\xfe\x3b\x3f\x60\x19\xcd\xab\x0c\xbb\xfa\xab\xf6\x72\xcb\x1e\x22\x6e\x99\x77\xcb\x70\xa4\x60\x34\xca\x24\x99\x15\x53\xd4\xba\x54\x4b\x39\x07\x50\x0f\xb4\x32\x86\xe6\x22\x29\x32\x4d\x69\x0d\x86\x7f\x99\xc6\xdf\x0a\x74\x7a\xa9\x64\xae\xd2\xb1\x21\x1c\x4d\x85\xf6\xa4\x41\x74\x0a\x10\x7a\xfa\x69\x8d\x10\x1a\xa0\xef\xd1\x38\xfb\xfe\xfb\x3f\x45\xe8\xab\xfd\xe3\x3f\xff\xfc\xe7\x3f\xfd\xe7\x26\xbd\x72\x60\xdc\x9c\x46\x26\x83\xb6\x28\x84\xfd\x1d\x18\x15\x2a\x3a\x77\x8f\x04\x43\x81\xe0\x3b\x68\xb5\xde\x2d\xdd\xab\xa2\x62\xae\x51\x2b\xad\x37\x82\x13\x1d\xad\x87\xb2\xd3\x75\xf0\x24\x22\x44\x47\x55\xab\xb2\xf4\xb4\x19\x07\x8a\xce\x3c\x6e\xda\xfe\x43\x59\x57\x30\x9a\x1e\xc5\x1a\x0b\x1e\xba\x2a\xa0\x7d\x58\x1e\x7b\x2b\xf6\x8f\x37\x53\x36\xf5\xda\x23\x20\x7b\xde\x48\x07\xcd\x78\x9a\x2d\x1d\x04\xd1\x82\x31\xf4\x36\x8c\xd9\x67\x75\xcf\x9f\xb2\x69\xfa\xc1\x30\xec\x19\x65\xf7\xf0\x57\x8d\x8f\x7b\xfb\x3d\x72\x85\xa8\xbd\xcf\xad\x7d\xa0\x29\x7e\x68\xba\x11\xa8\x59\x0b\x89\xa3\x7b\x9d\x1e\xd8\x54\xc8\xbc\x6b\x29\xf6\x1c\xc2\x90\x29\x49\x69\x48\x07\x7d\xa6\x85\x5f\x28\xe9\x81\x62\x84\xd1\xed\xd5\x69\xf5\xbb\xef\x69\x59\x37\xaf\xbe\x05\x42\x06\x81\xff\xf9\x89\x76\x8a\xa2\x15\xd2\x59\x49\xc0\xea\x2e\x2b\xa6\x2e\x41\xab\x90\xd9\xbb\x55\x42\x68\xe7\xd2\x13\xbe\xae\x07\x70\x95\x26\xfe\x70\xb3\x0c\xd3\x11\x1c\xeb\xda\xf7\x5b\xc9\xa2\x0c\x4e\xfd\x08\x64\x78\x70\xdd\x2b\x20\x6e\x68\x36\xbf\x7d\xb5\x13\xbf\xc1\x9a\x2d\x79\x62\xda\x53\xe9\xb9\x4d\x08\xa4\xa6\xd4\xcf\x61\xeb\xfa\x26\xfe\x14\x4c\x39\x85\xba\x19\x8c\xd9\xd0\xfe\xc4\xe1\x22\x98\xa0\xba\x7b\x0d\x78\x76\x45\x36\xd1\xf1\x1f\xe8\xde\xee\x55\xba\x36\x8b\xab\x59\xc4\x96\x7d\xac\x6f\x05\xe1\xce\x7c\x32\x88\x4e\xab\xe9\xd9\x75\xd4\xbc\xd9\x54\xaa\xda\xe2\xe5\xd7\x76\x89\x85\xa2\x57\x55\x2f\x5e\x77\x34\x47\x0e\xf3\x66\x06\xf2\xeb\x6c\x69\xaf\x79\xb2\xca\x7d\xb4\x8a\xe2\xda\x96\x2c\xbc\x2c\x38\xac\x53\x8d\xed\xd8\x4e\x93\xd2\x2e\xa8\x9d\x7b\x47\xe5\x9c\x30\xd0\x13\xda\x8f\x0c\x00\x99\xee\x6a\x10\xce\x41\x20\xd6\x74\xf5\x14\xdb\x8c\x51\x93\x93\x6d\x7c\xf5\x9e\x93\xc2\xf6\x94\xc8\x9f\x57\x66\x12\x96\x54\x4c\x69\x29\x89\xba\x88\xa8\xd9\x86\xea\x9d\x7a\x53\xd8\x6d\x6e\x62\x55\x17\x6c\x39\x42\x1f\x29\x17\xd2\x5b\x92\x52\x5b\x0d\x20\xa6\xae\xda\xb5\x9c\xd7\xb7\x5a\xdb\x85\x6d\x63\x57\xd0\xd6\xe0\x73\x81\xb5\x23\x34\xcc\xcb\x61\x68\x48\x10\x11\x2d\x56\x44\x12\x41\x36\x61\xbe\x56\x1a\x2b\xd8\x01\xc0\x40\x08\xc4\xa5\x50\x9f\xe7\x79\x65\x6e\x9a\x8f\x80\x5d\xc1\xf7\xa4\xae\x47\x46\xd7\xfe\x2a\x6b\xdb\xaa\x0c\x9d\x42\x9a\x6a\x9d\x74\x93\x09\xb6\x3f\x76\x39\x0a\x8b\x4e\xdf\x2b\x92\x9b\x86\x65\x3a\x64\x36\x05\x3e\x34\x38\xae\xc7\xb9\xb2\x9b\x72\xa6\xb4\xfb\x27\x74\x3b\xca\x8c\xd8\xd0\x18\x44\x1c\x1d\x81\x8f\xc6\xec\x74\x8a\x58\xea\xc3\xbc\x60\xd6\xee\x90\x6a\x97\x9a\xdb\x6f\x64\xee\x06\x4d\x06\x30\xf0\xed\x50\xe5\xd3\x1c\x38\x23\xb6\x38\xce\xdb\xb5\xb4\x74\x27\xb7\xe6\x1a\xeb\x9a\x44\x57\x7b\x96\x3a\xc5\x5e\x67\x84\x11\x4e\x23\x48\xd0\xd0\xd7\xee\x12\xd3\x2a\x93\xd2\x14\x26\xd8\xd7\x54\xa3\x5d\xe7\x18\x99\xe5\x6e\x98\x5f\x94\xe8\xa7\x35\x46\x3e\x81\x42\x6f\x3a\xaf\x68\x17\xd9\x38\x79\x89\x88\x76\x99\x38\x9a\x79\x84\xae\xc4\xae\xe7\xd5\x8d\x47\x02\x12\x9b\xce\xa9\xda\x3b\x24\x20\x29\x4a\x03\xf9\xd2\xa9\x4b\x9e\xd2\xbe\x25\x9d\x67\xa9\x6c\xcd\xd2\x1f\x3f\x24\xe9\x44\xbc\xf3\xfb\xc7\x99\x77\xe4\x78\xbe\x7a\x16\xdc\x4d\xae\x8e\x25\xc5\x53\xde\x87\xf6\xcc\xf8\xf7\x61\x17\xc2\x57\x33\x55\x1e\x5a\xd3\x70\x06\xcc\xd3\x8c\xd9\x5c\x87\x94\x91\x74\x0a\xf8\x46\xe8\x6c\x63\xad\x42\x80\x41\xb3\x54\x7a\xd0\x05\x4e\x96\x3a\x70\x06\x1a\x6a\x3d\xb9\xb7\xcc\xf7\x59\x47\xe7\xa7\xc8\xf7\xd9\x96\xee\xe6\xe0\xbc\x10\xc1\xb7\xcd\xe2\xd0\x47\xa9\x83\x98\x85\xdf\xaf\x35\xc6\x9d\x1c\x00\xeb\xdb\xaf\xd8\xa4\x91\xba\xe0\x29\x26\x87\x32\x3d\x04\xc8\x17\x00\x89\x74\x06\x5e\x5d\x5d\x8a\x68\x4e\x16\x1d\x92\x9c\xae\xe1\xf7\x2d\xe6\xa9\x7b\x8b\x7f\xf5\x26\x6a\xee\x5e\x81\x6c\xb5\x56\xdd\x72\x1c\x1a\x2f\x81\x7d\xb6\xf6\xe6\xe8\xe8\xe2\xf0\xb7\xb2\xd9\x03\x66\xb2\x4b\x0a\xd9\x51\x26\xa7\x71\x0a\x46\x8f\x9d\xc3\x11\xba\x60\xc9\x0a\xcd\xd3\x45\xaa\xae\xed\x34\x13\xde\x97\x1a\x2e\x04\x97\x4d\x43\xad\xda\xa5\x86\x78\xbf\xdc\x6a\xd4\xd1\x52\x5f\x69\xdd\xd1\xff\xd1\xfa\x14\x51\x6f\x25\x93\x30\xc5\x6e\xcd\xfc\x5d\x6e\x54\x33\xdf\x40\x42\xcf\x82\xce\xe6\xa6\xf2\x87\xdf\x12\x17\x58\x7f\xe1\x0a\x21\xda\xde\x5c\x3a\xa5\x0c\x18\x8a\x55\x95\x3c\xaf\x75\x6f\x77\xc9\xf0\xeb\xd0\xa3\xcc\x43\x00\x3b\xec\x1c\x10\xd9\xe1\x68\x2d\x3e\xcd\x3d\xf8\x90\x97\x9d\x59\x2d\xc9\x00\x4d\x32\xf8\xfe\xfc\xe2\xc6\xf7\x0d\x51\x06\x5f\x1f\x46\x73\x12\xdd\xab\x7d\x41\x5a\x28\x6a\x72\xd9\xfa\x41\x93\xd5\x98\xe5\xc5\x0d\x64\x6a\x1d\x1d\x2b\x97\x3d\xe2\x32\xa8\x52\x8e\x62\x2a\x96\x09\x5e\x21\xf2\x55\x12\xa6\x6b\xbd\x54\x34\x8a\x54\xcc\xb2\x99\xd9\x02\xd5\x17\x8c\x14\xb0\x7a\x18\xfc\xcb\x2e\xc2\x15\x99\x03\x2c\xf5\x14\x47\x95\x6a\xc7\xd6\xf9\x3c\xdb\xc4\x4f\xea\xea\x88\x78\xa5\x15\xf5\x8e\xfa\xae\x52\x07\xe5\x61\x05\x4c\xce\xd8\xd4\x33\x1b\x1f\x80\x07\x65\x6c\xab\xb0\xa9\x7f\xeb\x2a\x4e\x84\x3f\x90\x78\xcc\x42\xb0\x94\xb9\xca\xf2\x5d\x46\x79\x7e\x79\x9d\xe8\xec\x9e\xc4\xaa\xe8\xec\x72\x2c\x1b\x43\x3b\x10\x20\x2e\x74\x5d\x5f\x53\x33\xa2\xba\x8e\xdb\x13\x24\x66\xb7\x76\x7e\xe4\x09\xed\x26\x1b\xd5\x94\x9b\x20\x3a\x55\x32\x59\xe9\xc6\xfc\x86\x31\x1d\x14\x44\xe3\x44\x1d\xf6\xd5\xe0\x43\x72\xd4\x83\xd9\xf3\xaa\x31\xc6\xcc\x46\x2c\xa7\x59\x92\x68\xec\x7f\x6d\xd7\x47\x0d\x0d\xb3\x11\xc0\x97\xc3\xdf\x38\xbb\x16\x79\x15\x00\xbc\x1e\x89\xcb\x58\xc9\x0e\x16\xad\xf2\xaa\x92\xc0\xbc\x84\x89\x0c\x12\x4f\x6d\xf6\x2f\x00\x9d\x67\x44\x22\xa5\x77\xc4\x59\xa2\x81\xc3\x3c\x63\x06\x67\x86\x93\x04\x51\x29\xc6\xcc\xc1\xe2\x74\x55\x1e\xb8\x0a\x22\x93\x0b\x12\x1b\x5d\x10\x5e\x01\xc3\x9a\x1a\x51\x70\x41\xd0\x88\xca\x60\x4a\xe0\xa9\x5c\xf9\x29\x73\xcb\x25\xc1\x1c\xd4\x45\xdb\xa4\xc0\xd7\x06\x8b\xdb\x60\x9a\x0b\x43\xe9\x9e\xfa\x6e\x21\xbb\xe0\x5e\x5d\xba\xa9\xf3\xa6\x1c\xa1\xa1\x5e\x9d\x52\x05\x6d\xfd\x1a\x3d\x5b\x13\xa6\x36\xf1\x04\xa5\x6f\x49\xe1\x8a\x2d\x3a\x8d\x7a\x89\xb9\xa4\x51\x96\x60\x9e\xac\x94\x74\x99\x66\x09\xa2\x53\xaf\x14\x0f\x6c\x82\x46\x45\x41\x49\xd5\x14\xee\x08\x8b\x7a\x16\x18\xda\xda\x1b\x06\xb7\x86\x67\xe2\x39\x11\x75\xa6\x97\xf6\x4e\xa9\xb1\xde\x1d\xa1\x93\x62\xe1\x25\x38\x16\x1e\x9a\x9a\x0a\x2d\x01\xdd\x7c\x4d\xd2\x28\xd4\x9a\x83\x02\x4e\x74\xaa\x94\xdd\x6f\xbd\x83\x57\x57\xe1\x0f\x8b\xfb\x8e\x1e\xca\x1b\x2c\xee\xd7\x7a\x29\x4f\xbd\xab\x32\x17\x80\x37\x50\x38\x2e\xf0\x5b\xba\x13\xb1\xa6\x9a\x7d\xc7\x49\xfa\x48\xf4\x0d\x26\xfa\xc5\xab\xcc\x56\x9c\xec\xa2\xa1\xf2\x0f\xec\x63\xc7\xa9\x7a\x59\xb9\xdd\x27\xea\x71\x8e\xef\x8f\xae\xa5\xec\x7a\xe3\xf2\x4b\x90\x1f\x8b\xd4\xbc\x94\x62\x4f\x74\x04\xa3\x50\xf4\x13\xe6\x60\x12\x69\x21\x97\xd1\x1d\xb6\x09\x41\x09\x65\xf7\xfa\x54\x60\xd8\xf9\x01\xc2\xf9\xe8\x70\xf8\xf4\xec\x35\x33\xd7\x68\x36\x2e\x1a\xbd\x9b\x90\x70\x3b\xc4\x48\xe5\xe6\xba\x75\x57\x3c\xbf\x9e\x11\xab\xd6\xd1\x7e\x5b\x1a\xc3\x76\x4e\x89\xb5\xb1\x3a\x7d\xc1\x84\x8d\x0c\x57\xeb\xe8\x7b\x59\xe8\x54\x5e\xa7\x05\x1e\x10\x96\x2d\x0e\x3e\xa0\xff\x97\x53\xe6\xf6\xfc\x64\xf4\xf1\xf4\x7c\x74\xe2\x31\xf0\xc1\x5f\x6f\x47\xb7\xe1\x27\x57\xb7\xe7\xe7\xa7\xe7\x9f\xfc\x8f\xae\x6f\x8f\x8f\x47\xa3\x93\xf0\x77\x1f\x87\xa7\x67\x85\xdf\xa9\x8f\xc2\x1f\x0d\x7f\xb8\xb8\xba\x09\x3f\xba\xfe\xe9\xf4\xf2\x32\xfc\xe8\xe6\xf4\xf3\xe8\xe4\xee\xe2\xf6\xc6\xd2\xfa\xef\x1e\x85\x01\x2d\x0b\xd1\x5d\x37\xff\x4a\x12\xed\xa2\xb0\x46\xd7\xf8\xb3\x87\x94\x9f\x72\x4a\x58\x9c\xac\xf2\xb6\x30\xea\xd0\x15\x82\x94\xbe\x48\xa7\x0b\x92\x66\xdb\x60\x06\x94\xe9\x9b\x3e\x28\x93\x3a\x41\x66\x34\x83\xc9\x29\xb4\x55\xf3\xde\xca\x89\xe4\x65\x37\x58\x23\xca\x42\xf2\xd5\xb5\xe4\x58\x92\xd9\xaa\x25\xfe\xcd\xbc\x04\x2d\x09\x6f\x9a\x0b\x5c\xb8\x3c\x5b\x4a\x3a\x29\x3b\x9a\x2c\x1d\x4c\x62\x4a\x6d\xe5\x3f\xf3\x75\x77\xcb\x4e\xe3\x43\x69\xa5\xb8\x3e\xaf\x16\x74\x36\x51\x7d\xcb\x6c\x50\xf0\x4c\xb7\xdf\x81\x4b\xf7\x48\x35\xeb\x1d\xdb\xe2\x16\xca\x64\x96\x98\xd5\x00\xff\x3b\x16\xe0\xcb\xb3\x71\x79\x5e\x06\xd3\xdc\x54\xd6\x8a\xc8\xd1\xc4\x9b\x58\xd6\x26\x21\x9f\xc5\x79\xcf\x30\x93\xa8\xef\x55\xe3\xa8\xd8\x84\x42\x89\xb3\x27\xbf\x65\x1a\x79\xde\x60\x12\x41\xf5\xd3\x19\x91\xa6\x13\x9e\xbe\x96\x21\xcd\xb8\x36\x54\xb7\xe3\x8a\x88\x4e\xf5\xcc\xcb\xb9\xb9\x02\x81\x56\x1e\x75\x57\x34\x0a\xc5\xd0\xbc\x42\x71\xba\x37\x05\x24\xc0\xc2\xb0\xb9\x2f\xce\x68\x16\x5a\x0e\x3c\x90\x18\x1d\xfa\x05\x28\xe3\x43\x40\x97\x8d\x59\x9d\x85\x59\x51\xbc\xd1\xe7\x80\x4b\x5b\x9b\x63\x9b\xbd\xaf\xa0\x7e\xfd\x11\xb4\xc4\x6e\x07\xaa\x40\xf6\xe7\x47\xa8\xde\x95\x69\xf6\x65\x82\xb5\x0b\x09\xce\x96\x2b\x3a\x52\x07\xf1\x72\x77\x61\x37\x8f\x6b\x2b\x6f\x2b\x76\x89\x29\xda\xcf\x0a\x3a\xcb\x1c\x83\xff\x4d\xd7\xda\x0c\x26\xee\x95\x1a\xad\x33\x5a\x5c\x82\xfa\x76\xa2\xbd\x95\x05\x39\xd0\x88\x00\x57\x35\xdc\xcf\xea\x75\x15\x0a\xba\x31\xbe\xdb\x0d\x97\x0b\x8e\xad\xdc\x03\x81\x95\xe0\x4c\xe9\xf4\xcb\x04\x6b\x20\xd1\x1c\x0b\xcd\xd2\xd6\x49\x89\x27\x34\xa1\x12\x7a\x57\x6b\xf3\xbe\x40\xe1\x94\xa3\x05\xe6\xf7\xca\xa2\x25\xc9\x54\x8d\x5e\x08\xee\x57\x32\xfd\x96\x81\xb4\xbc\xb0\xcd\x73\x86\xd2\xf2\x23\xdb\xd6\x37\x90\xb3\xa5\x09\xa3\xe5\xdb\xa1\x4b\x2f\xcb\xd4\x2b\xd2\xd3\x6d\x67\xcd\x88\x97\xc5\xc7\x03\x7a\x57\x5c\xd4\xdd\x7d\xb6\x26\xa7\xa0\x83\x98\x2f\x66\x1c\x54\x9e\xac\x69\x92\xe2\x9a\x32\x3b\x76\x6c\x9d\x40\x50\x37\x76\x9c\x66\x4a\x9c\x55\x0e\xae\x67\xd5\x3c\x7a\x93\x01\x66\xcf\xed\xae\x14\x3a\x5f\x00\x62\x49\xa0\x63\xd3\x46\x04\xcd\x1b\x3e\x55\x0f\x9e\x71\x5c\x85\xee\x68\x5f\xe0\x30\xcf\xb6\xb1\xcc\x83\x6e\x56\x4b\x52\x51\xd6\x2d\xc0\x2e\x6f\x68\xcc\x5d\x5f\x8e\x8e\x4f\x3f\x9e\x16\x2c\xa9\xe1\xf5\x4f\xfe\xbf\xbf\x5c\x5c\xfd\xf4\xf1\xec\xe2\x8b\xff\xd9\xd9\xf0\xf6\xfc\xf8\xc7\xbb\xcb\xb3\xe1\xf9\x1a\x7b\xab\xfc\x8a\xb2\xbb\x23\x4f\x0c\xc8\x71\xd4\xea\x6e\x30\xd0\x5f\x30\x75\x2b\xce\xd7\x55\x45\x72\xdf\xa6\xad\x84\x9e\xcc\xa5\xe9\x26\x69\xff\x18\x31\xc9\x57\x5d\x92\x3e\x51\x4c\x04\xdc\x43\xc6\x7b\x19\x26\x1c\x12\x01\xbe\x60\x3b\xfa\x39\x08\x36\xeb\x5d\x37\x21\x1a\x43\x47\x75\xb1\x24\xb4\xb6\x05\x48\x75\x2f\xf7\x3d\xa1\x83\x8f\x01\x04\x2a\x4c\xd2\x8c\xc5\xb6\xb2\xda\x82\xb2\xf7\x0b\xfc\xf5\x9d\x5d\x69\xde\x69\x0d\xf2\x59\x75\x39\xfb\x44\x69\x1d\x2b\xc4\x33\xd6\x4c\xae\x31\x6b\xa0\xd7\xfa\x9b\x41\xf7\x19\xa4\xff\x02\x15\x27\xd7\x47\xb5\xc7\xf8\x81\xac\xaa\xf6\xaf\x94\x48\xa5\xbd\xd2\x46\x07\x86\x41\x96\x9c\x40\x21\x51\xe7\x8f\x4e\x74\x9c\xc1\xfd\x1b\xe2\x9d\x41\x7e\x69\xd5\x9d\x14\xda\xe2\x5b\x9d\x9b\x4a\x2f\xc0\x13\xa4\xc2\x99\x37\xa9\x4d\xd3\x3e\x01\x9b\x76\x6a\xe2\xbb\x31\x7a\x9c\x13\xbd\x5b\xff\x4c\x27\x68\x0a\xe1\x70\x53\x3e\x86\x93\x08\xdc\x1b\x6a\x2f\x6c\x7a\x11\xc0\x6a\x4b\x8e\x06\xcb\x03\x09\x11\xe0\x6c\x83\x52\x8c\xe4\x97\xcc\x60\xe7\xfe\xf0\x7d\xb7\x94\x2d\xc9\x57\x48\x18\x32\xfb\xe1\x78\x83\x46\x31\x3e\x3b\x98\x57\xc6\x68\x55\xc9\xb7\x2b\x5d\x84\xf0\x79\x6b\xbd\x16\x5e\x6a\xfe\xb9\x16\xb1\x70\x63\xd3\x60\xf4\xef\x9f\x2c\x3f\xe2\xe7\x42\x5a\x84\x79\x1d\x04\x22\xcd\xe8\xc2\x43\xdd\x2b\xcb\xe8\x11\xf3\x58\x3b\x06\xc0\x47\x74\x84\x7e\x4c\x1f\xc9\x03\xe1\x03\x14\x11\x2e\xb1\x81\x2b\xab\xb3\x96\x24\x70\xa0\xcc\x38\x63\x06\xb1\x79\x8d\xfd\x66\x50\x7a\x47\xd2\xd9\x5c\x29\x8f\xc6\x08\x35\xe5\x3a\x05\x91\x00\x35\x24\x5f\x97\x24\xd2\xa0\x8c\xba\x48\xf4\x34\xc1\x0f\x65\xfc\xf5\x26\xd0\x5a\xaf\x22\xa9\x6d\x97\x64\x72\x56\x1a\x9d\x52\xb6\xb0\xa5\x96\x9a\xcb\x95\x9c\xa7\x6c\x80\x66\x69\x82\xd9\xec\xe8\xe8\x08\x11\x19\x1d\xbd\xeb\xc4\xe8\x66\x40\xef\x75\x79\x44\x2d\x49\x05\x49\x56\xd6\xc2\xcb\x91\x0f\x8a\xca\x80\xb4\x10\x54\x9b\x37\x15\xdc\x7f\x5d\x44\xe8\x3e\xaf\x9b\xac\x5a\x2b\xed\x0c\xf5\xa9\x19\xa7\xd8\xe7\x64\xdd\x48\xfa\xf7\xd5\x9a\x76\x07\xe8\x1a\x54\x72\xa0\x71\x92\x43\xd8\x6a\x32\xa8\x52\xd6\x15\x97\xf5\x73\x5a\x57\xa5\x66\xa3\x94\x83\xca\x91\x0c\x40\x7c\x23\xa4\x52\x99\xa3\x2b\x38\xce\x81\xfa\xb6\x4a\x6f\x4a\xb2\x45\xb9\xd4\xe2\xae\xb4\xa8\x7c\x92\xfa\xaf\x63\x78\x5d\xfb\xba\x06\xae\x18\x4f\xca\x35\x9a\xca\xcc\xd7\xf4\xfc\x86\x31\x41\x5a\x72\x2a\x20\xd1\x62\x13\xc0\x93\x1b\x46\x0f\x0d\xee\x59\x65\xc3\xe8\xf2\x68\xa6\x11\x0d\x60\xb8\x5c\x3f\x19\xfd\x88\xd0\xaa\x0e\xf8\x74\xeb\x25\x43\x0e\x12\xdd\xc8\xea\x39\xbf\x38\x1f\xf9\xa6\xcc\xe9\xf9\xcd\xe8\xd3\xe8\x2a\x88\x41\x9d\x5d\x0c\x6f\x82\x78\xd3\xcd\x55\x21\x4c\xf5\xc3\xc5\xc5\xd9\x68\x78\xee\x7f\x74\x32\xbc\x19\xdd\x9c\x7e\x0e\x06\x3f\xb9\xbd\x1a\xde\x9c\x5e\x04\xbf\xfb\xe1\xf4\x7c\x78\xf5\x37\xff\x93\xd1\xd5\xd5\xc5\x55\xe1\x7d\xb7\xc7\xcd\x91\xac\x60\x19\xd5\x3b\x91\x2b\xcb\x1e\x5e\xb6\x4a\x29\xbc\xc1\xe2\x7e\xc7\xd1\x57\x40\x1b\x6c\xd8\xe1\xb7\x46\x28\xc5\xe4\x6e\xb3\xc0\x6c\x5d\x70\xb9\xf2\x3d\x4a\x1f\x5c\xdd\x61\x29\xc9\x62\xb9\x5d\xa1\x87\xf6\x07\xa7\x5b\xcc\x17\x4c\x9a\x16\x31\xdf\x60\x57\xf7\x27\xe6\x5b\x11\xce\x35\x31\xdf\x26\x76\x6f\x08\xdc\xaa\x75\x9e\xa5\x5b\x75\x96\xea\xd2\x93\xc2\xe7\xc9\xf5\xa1\xde\xca\xe7\x0c\x32\xff\xae\xba\xcb\x41\x35\x23\x9b\x55\x7e\xd6\x8f\xea\x26\x07\x35\x51\x61\x99\xec\xc0\xff\x74\x96\xce\xaa\x51\xb0\xae\x23\x24\x15\x5e\x1e\x3c\x78\xb3\xd3\x19\x12\x94\xdd\x8f\xd9\x17\x65\x90\xa5\x19\xd7\x1f\xc9\x94\x03\xa0\x7a\x9a\x64\x62\x4e\xa0\x7c\xd4\x00\x3d\x12\x68\x6b\x0f\x5e\xed\xb0\xbe\x2e\x14\x09\x4d\xe8\x3d\x81\xa7\x13\xca\x14\xb7\x2f\xa9\xd5\x80\x8a\x5b\xbf\x0b\x03\x29\xa6\xc2\xd9\x89\x4f\x18\x6a\xc8\x3d\x5d\x8f\x73\x02\xb8\x55\xaf\x3a\x97\x2d\xec\xa9\x25\x0f\xe4\x48\xa5\xe9\x7d\xb6\x34\x6d\xd9\xb0\xb8\xff\xd6\xa2\xc0\x80\xdc\x0f\x29\x8d\x51\x9c\x2d\x13\xaf\x2b\xe2\x63\xca\x6b\xa3\xf6\x5a\x53\xef\x10\xb5\x2f\xd8\x9f\x4d\x0b\xab\x30\x03\x3c\xab\xa3\x21\x7e\xff\xc4\x08\x06\xaf\x66\x47\x26\x08\x3f\x94\x9c\xce\x66\xa0\xf7\x58\xa7\xc2\xfe\x43\x1c\x2c\x6f\xae\xee\xb6\xb7\x9f\x7d\x57\x6b\xa2\x2b\x9a\xba\x52\x03\x8a\xa7\x96\xcb\x64\x65\x81\x87\x9a\x80\xf6\xd8\x2f\x33\xae\x0b\x11\x4d\x91\x9b\x50\x6d\x88\x71\xc9\x89\x7a\x4b\x7c\xa7\xcb\xa0\x6c\x5f\x9e\xe5\x74\xaa\x34\x19\xd3\xd3\x37\x2f\x24\x93\x17\xdb\xd0\x9b\x0d\x59\x10\xe6\xdd\x36\x2d\x40\x67\xe4\x32\xdd\xd0\xef\x91\xd9\x56\x87\x58\x68\xd3\x1e\x1a\x9e\xaf\xf2\x3e\x88\xd0\x50\x0d\xf2\x79\x5d\x8f\x3c\x93\x61\x68\x7c\x74\xba\xd2\xde\xcb\x43\x52\x9c\xa0\x06\xa4\x65\xd8\x72\xa9\x28\x22\xb7\xcd\x1b\x70\xf1\xfb\x4d\x35\xba\x66\x9b\x64\x96\xa4\x13\x9c\x24\xab\x8a\x8c\x02\xff\xd6\xe9\xe6\x80\xb3\x8d\xa1\xc2\x3b\xcb\x22\x73\x20\xd4\x9b\x36\x64\x6a\x07\xed\x0b\x76\x9a\x72\xb1\x3d\xc1\x32\x99\xea\x6c\x69\xf0\x28\xaa\xc5\x9d\x16\xca\xeb\x1f\x69\xfc\xed\x69\x5c\x59\xe8\x23\x3f\x31\x96\xf2\x75\xd2\xb9\xc2\x07\xd0\x29\x63\x64\xc9\x89\xf5\xfe\xac\x88\x74\x4e\x9f\xc4\xe2\x83\x57\xcb\xb0\xa2\xba\xef\xf5\xb6\x7e\x2d\xeb\x4f\xd7\xfd\x8f\xbd\x9a\xad\x29\x23\x4c\xea\xca\x95\x2c\x1d\x33\x33\xb8\xcd\x3f\x73\x25\x5c\x8c\x23\x5f\x13\x66\x60\x74\x68\x90\x0a\x9c\x88\x34\x79\x30\xcd\x4c\x1d\x4d\x64\x0a\xf8\x70\x35\xc1\x63\x25\xce\x95\xf2\xa2\x4c\x58\x57\x73\x73\x4e\xc6\xac\x90\x84\xe5\xb5\x51\xb6\x1c\xeb\x3f\xbf\xb3\xc4\x94\x40\xdf\x69\x22\x7d\x6d\x62\xca\x3a\xc1\x35\xc5\x51\x17\x80\xf8\x6a\x49\xe2\x53\xf7\x5c\x33\x33\x04\xa6\x7f\xec\x85\x46\x82\x43\xae\x79\x40\x0b\x6c\xa1\xb3\x7b\x84\xeb\x84\xea\x36\xc9\x15\x05\x72\xc5\xc6\xd5\x16\xcd\xb0\x2d\x38\x2f\x5c\xb5\x71\x88\xd6\x06\x2e\xdb\x42\x73\x20\xa7\x4b\x45\xa9\x90\x3a\x3e\x04\x8f\x4c\x31\x4d\x32\x5e\xab\x22\x68\xb6\xdc\x79\xda\xdc\x31\x0c\x8b\xaa\x76\xcd\xf9\x55\xbd\x63\xe4\x7c\xaa\xae\xe9\x50\x92\xcd\x28\x13\x21\xd7\xd7\x17\xdf\x2c\x15\x22\x5e\xb3\xe1\x79\xed\xe2\xf6\xb2\x78\xa8\x0f\x7b\xa1\xc5\x77\x75\x05\x22\xa3\xb4\x79\x73\x1f\xb3\x1b\xb8\xab\x75\x56\x98\x3b\x66\x50\x21\x4a\x17\xfc\x80\x2a\xcc\x55\xeb\x0d\xe4\x79\xc8\xa9\x5b\x01\x32\xaa\xf2\xb7\xd6\x03\xbf\x3e\xe3\x65\x53\x6a\xcd\xd6\x23\xae\xdb\x06\xe7\x9d\x2b\x1e\xc3\x62\x59\xdf\x0a\xea\x39\xf0\xda\xb3\x04\xa1\xba\x24\xfa\x3a\x0c\xa3\x49\x91\x2f\x65\x69\x06\x8a\xa9\xff\x68\x77\x18\x6b\x1e\x7d\x31\x9d\x04\xf5\x80\x13\x0d\x3c\xf4\xb1\x92\x5b\x64\x89\xba\x8d\x29\x74\x7a\xae\xda\x8e\x2d\x71\x5c\x39\xf4\xf6\x19\x61\x5c\x3f\x97\x48\xd4\x15\xc5\x55\xe8\x9f\x2f\x53\xaf\xcf\x56\x2b\x8d\xd9\xa1\xb7\x7e\x0e\xb1\xc7\x01\x89\x53\xda\x0a\xa4\x5d\xae\x1e\x07\x4a\x4b\x4c\x58\x2a\x09\xc2\x88\xd1\xe4\x3d\xcb\x92\xe4\xfd\x39\xb4\x39\x11\x82\xce\x74\x15\x65\xf0\x98\x04\x6d\xa9\x01\xfb\xea\x61\x59\xbd\x23\x00\x57\xa4\x9a\x92\x6e\xf2\x2e\x95\xc4\x54\x5b\x90\xac\xc6\x4c\x3d\xa1\x55\x2c\xd7\x63\xd4\xf6\x2a\x84\xb7\xd9\xbc\x1c\xf3\x2e\x65\x1b\xb3\x95\x3f\x78\x05\x83\x35\xa5\xb2\x6c\x15\x92\xeb\x6b\x1c\xee\x4d\x8d\xc3\x94\x5b\xcf\x53\x87\x6a\x87\xf5\x87\x6a\xe3\x72\x83\x4e\x11\x73\x2e\xed\x16\xfc\xf8\x92\xee\xec\xa7\x4c\x6c\xda\x3a\x8b\xc9\x52\x6a\x17\x5e\xd1\x5f\x32\x92\x51\x36\xbb\x9b\x64\xf1\x8c\x6c\xe5\xa3\x4b\x25\x4e\xd0\x23\xa6\x12\x5c\x74\xbe\xda\x6e\xce\x45\x4c\x12\xbc\xd2\x99\x00\xea\xad\xa4\x63\x4b\x76\xbb\x5a\xc7\xbb\x8a\xcb\xb8\x57\x6f\x60\xcc\x6e\x52\x67\x54\x9a\x13\x3b\xcd\x94\x36\xda\x20\xfd\xec\xa8\x27\x9a\xf2\x5b\xc1\x0c\x77\xe9\x15\x6a\xf4\x94\xd9\x68\x91\xf5\x30\xfb\xdd\xc8\x82\x49\x18\x24\x94\x3e\xf3\x50\xc1\x5f\x86\x86\x91\xae\xf2\x60\xc1\x56\xa6\x97\x46\x86\x1d\xf6\x1c\x68\xa9\x08\x6e\x12\xa3\x33\x06\xd8\x29\xf2\x55\xa7\x9f\x27\x2b\x7f\x54\x48\x54\x84\x11\x3b\x46\x94\xc1\xe6\x76\xb9\xa4\x6b\x37\xba\x7e\x37\xb7\x75\x82\x69\xac\xfe\x32\xc1\xec\x4e\x2b\x37\x2f\xe0\x06\xf3\xf2\x05\xea\x4a\x19\x79\x3d\xfb\x76\x33\x4f\x27\xe1\xaf\x82\x2c\x1e\xbf\x89\xd7\xa0\x58\xee\xd4\x6a\x24\xae\x9b\xb9\x31\xc6\x4d\x3d\xeb\xaf\x55\x80\x8c\xf5\xae\x3c\x5c\x30\xdc\x5d\x41\xf7\x35\xbe\xbc\x52\x97\xcd\x3d\xf3\xe7\xb5\xd9\xf9\x02\x83\x17\xb7\xbd\xbb\x2b\xa9\x74\x51\x6c\xe4\x4e\x5a\x33\xad\xa7\x75\x29\xd5\x9a\x4e\x65\xd7\xd2\x97\xb0\x19\x54\x04\xdd\x15\xa3\x24\x8b\x09\x12\xa9\xd2\xe7\xac\x65\x57\x9d\x0f\x52\xc0\x21\x3c\x69\xfd\x8b\x30\xdd\xb7\x35\xa0\x47\x57\xc0\x41\xa7\x0c\x59\x0b\x6d\x80\xc6\x07\x9a\xb3\xc4\xf8\x20\xec\x9c\x6d\xcb\xeb\x84\x0d\x11\x8a\x8e\x57\x1d\x13\xf1\x6e\x10\xe6\xb9\x07\x8a\x74\xa9\xf1\x62\xbc\x64\x5d\x1b\x0f\xed\xa4\xc3\xa6\x13\x3d\x80\x51\x4a\xb5\xae\xbd\xb2\x45\x6f\x20\xf5\x95\x67\x91\xf4\x7a\x73\xda\x1a\x21\x3f\xd8\x07\x15\x89\x96\x59\x62\x7a\x8f\xdb\x9a\x1c\x29\x1f\x33\x3b\x5a\x5e\xaa\x6f\x98\x24\xa5\xa1\xca\xe5\x71\x3c\x5e\x85\x62\x59\x16\x87\x0c\xf8\x76\xf5\x23\x40\x6a\x95\xe4\xc0\x98\xe9\xac\x34\x97\x10\x79\x84\x86\x85\x9e\xa5\x61\x25\x18\xbf\x10\x4c\x92\xd8\x2a\x28\xba\xb6\x88\x57\xfa\x42\x64\xd0\x67\x60\x9a\x29\x71\xe4\xde\x2e\xd3\x31\x83\xa2\x40\xba\xfd\xbc\xa5\xcb\x98\x7d\x4e\x85\xed\xa3\x26\x72\x7a\x58\x9d\xc1\x90\xed\x5b\x07\xc7\x36\x1f\x9c\x28\x21\xa2\x9e\x52\xa6\x6d\x21\x19\x17\xe2\x76\x80\x2e\x18\xa0\x55\x9a\xf1\x40\x55\x1c\xb3\x7f\x2a\xf2\xd8\x4a\x37\xa9\xeb\xf2\x0b\x87\xd8\x26\x2f\xa3\xef\xfe\xa1\x07\xfd\xee\xcf\xef\xfe\xf1\x4e\xd7\x11\xcb\x44\xa6\x24\xec\x20\xbc\x42\xec\x44\xd5\x96\x52\x36\x1b\x33\xbb\x02\xd7\xba\x20\x7f\x45\x63\x4e\xbc\x71\x16\xef\xba\x02\x74\xee\x71\x1a\xa2\x08\xcb\x68\x7e\x88\x0d\xef\xf9\xd5\x7f\xa8\xc8\xeb\x8b\x3f\xce\x09\x83\xf6\x5a\x61\x4d\x72\x9d\x10\x80\x62\x25\xd9\x16\x2e\x9d\x34\xe0\x17\xdd\x68\xc5\x68\x85\x85\x3c\x5a\xfb\x26\x60\xce\x3c\x93\xf3\x4b\x2e\x19\xec\xcf\x2d\xbe\x3d\x77\x13\x19\xd7\x98\x32\x59\x63\x34\xd6\x78\xd0\xf1\x81\xdd\xfe\x31\x5b\x4e\x8e\x92\xd5\x54\x1e\x01\x3a\xf5\x48\x91\xe5\x68\xd4\xd8\x8f\x45\x5f\x42\x77\x71\x59\x2b\x5f\x43\xee\x5a\xbd\xbe\x5a\xdf\x71\xd4\x71\x6f\x6a\xaf\xb4\x68\xd3\xd6\xd1\xe7\x3a\xf4\x7d\x13\x67\x2b\x13\x1d\xcf\x18\xd8\xea\x2e\x98\x85\x2d\x84\xdd\xf9\x84\x52\x43\xea\xa2\xc3\x92\x46\xa0\x2b\x60\x86\x93\x15\x64\x99\x0c\xc6\x2c\xa6\x9c\x44\xd0\xdb\x30\x5a\x45\x09\x8d\x4c\xa5\x96\x50\x17\x22\x0f\x84\xc9\x00\x0c\x37\x52\x9f\x3c\x97\x3a\x54\x07\xc3\xab\xa6\xfe\x6d\x8d\x2a\xe4\xaa\x6a\x85\xde\x82\x22\x9b\x98\xdc\x72\xde\x31\x37\xdf\xbd\x1e\x44\x73\x6c\xfd\x3c\x29\xa7\x33\xca\xa0\xf1\xff\x77\xe0\xf6\x4c\x12\xc2\xdf\xb9\x06\x31\x40\xc5\xea\x69\xcc\x3b\x15\xde\xaf\x28\xd3\x52\x7d\xd9\x46\x51\xc6\x39\x89\xef\xca\xe8\xb1\xae\x79\x8c\xcd\xd8\x1a\xa5\x5a\xd3\x05\x11\x12\x2f\x96\x7e\xa3\x74\x97\x71\x63\x28\x93\x68\x22\x20\x3b\xb1\x01\xa2\x00\x10\x73\x61\xea\x31\x33\x01\x6a\xbd\x6f\x29\xaf\x48\xd0\x2f\xae\x12\x04\x47\x8b\x26\x3a\x0d\xfa\x48\xd7\x16\x3c\x45\x47\xd9\xd5\x99\xc5\x10\xa4\x41\x47\x79\xaf\xb3\x33\x85\xf3\x0c\xe7\xb4\xa2\x37\xf4\x98\xe5\x10\xa4\xe3\x24\xcd\x62\x64\xdc\x84\xc6\xe9\xc6\x8f\x10\x25\x47\x03\x24\xfe\xf4\xe1\xfd\xfb\xa3\xa3\x1d\xd5\xed\x0f\x1b\x3f\x55\x73\xb8\x6e\xcd\x54\x05\xf1\x5b\x73\xb4\x82\x3a\x5d\x77\xdd\x2c\x0f\x9b\x82\x00\xdc\xe2\x5b\xe6\x21\x80\xa5\xf8\xca\x25\xe6\x84\xc9\x3b\x00\x15\x77\x7b\x21\xbc\xe8\x12\x1e\x0f\xf0\xb0\xad\xcc\x9e\xbc\xce\x9f\x49\x28\xc4\xe2\x1e\x7d\x47\xc1\x83\xfe\xce\x18\xe3\xd0\xdb\xbc\xa1\xfc\x56\x59\x02\x37\xcd\xe6\x99\x44\x71\x1d\xe0\xbb\xcd\xf4\x83\x67\xb7\xbe\x40\xb6\xc1\x89\x37\xfa\xc1\x4e\x5c\x2d\x59\x88\x9d\x9f\x32\x14\xa5\x8b\x89\x12\xe2\x8a\xd5\x9d\x63\x02\xe0\xde\x43\x8b\xb9\x74\x80\x31\x8b\x31\xd3\xd5\x18\x0a\x88\x6b\xe7\xcd\xf6\x11\x61\x9a\x45\x0b\x77\x53\x5d\xaf\x27\xcd\xce\x4f\x00\x69\xaf\x3e\xea\xc3\xe2\x0a\xf2\xea\xc6\xf7\x34\xba\x27\xea\x9e\x9b\xe6\x55\x58\x7c\xe9\xe6\xee\x37\x07\x91\x33\x8d\xe3\x35\x1e\x83\x98\x75\xdf\x51\x5d\xc3\x92\xd8\x86\xad\x1e\x96\xe6\x5b\x51\x4d\x9c\xa7\xc6\xdf\x57\xd3\x02\xc6\x77\x28\x5b\x93\x07\xea\x54\x0b\xad\x8c\x81\x44\xfe\xa3\x93\x87\x82\x44\x29\x73\xc8\xdc\x9d\x5c\xf4\x15\xd8\xfc\xea\xe9\xc2\x77\xa5\x04\xd2\x75\x5a\xc7\x96\xca\x4f\xae\xf8\xd8\x06\xd8\xda\x60\x86\xb8\x25\xc0\x73\xd4\xbb\x07\x68\x81\x29\x33\xc7\x00\x9a\xe1\xa1\x98\x4c\xb2\xd9\xac\xf6\x4e\x4e\xd2\x5d\xb4\x4f\x6e\xa6\xea\x59\xda\xe0\x20\x70\x2b\x4c\x9a\xd0\xed\x6b\x38\xf4\x0d\x29\x5f\x8d\x68\xb0\x5d\xa8\x4f\xa7\xf6\x4d\xda\x08\x9c\xd2\x84\x3c\x8f\xc6\xb4\x23\xf5\xef\xb4\x8d\xfa\x67\xbd\x08\x10\xc1\xd5\xeb\x70\x76\xde\x6f\x48\x2f\xd4\x88\xb8\x3b\xf5\xe4\x93\xc2\xe2\x1c\x90\x17\x0e\xab\x06\xbc\x29\xd9\x14\x0b\x48\xf8\xde\x3d\x4e\x0e\x64\xfb\x3a\xf4\xfd\xd6\x05\x0f\xae\xd3\x05\x41\xf0\x2a\x31\xd0\xe9\x2f\x26\x04\x3d\x00\xaf\xa3\x5a\x20\x5a\x64\x89\xa4\xcb\xc4\x08\x7f\xe3\x56\x8b\xe6\x98\xcd\xbc\x4a\xff\xe8\x3b\x46\x1e\x91\x92\xb5\x03\xdf\x0d\xe3\x6d\xcf\x00\x11\x19\xbd\x53\xba\x4d\x10\xb5\xe1\x24\x4a\x79\x0c\xc9\x11\x33\xcc\x63\x88\xe6\x19\x86\x4f\x70\x74\x0f\x15\x94\xe0\x3a\xd2\x6f\xb4\x01\x44\x93\x3f\xa0\xdd\x97\xf9\x68\x94\x45\xba\x17\xba\x2d\xd0\xe0\xe6\xa7\x1f\x17\x08\x47\x3c\x15\xda\x13\x65\x0b\xe7\x68\x78\x0a\xa8\x5f\x0f\x34\xce\x70\xa2\xdf\xd8\x25\x66\x78\x69\x18\xc2\x22\x29\x3c\x27\x18\x48\xc9\x20\x55\xfd\x63\xca\x4d\x2e\x00\x50\xfc\xd2\x64\xc4\xff\x48\x1f\xc8\x00\x5d\x2f\x31\xbf\x1f\xa0\x93\x15\xc3\x0b\x1a\xfd\x4f\x3a\xa9\xf2\xa7\x94\xa0\x09\x5b\xab\xc4\xbb\xaf\x3e\x5b\x7d\xd0\xbf\x94\x80\x17\xa8\x2e\x89\xfb\x75\x7a\x53\x6a\x50\x23\x6f\xfd\x52\x5f\x13\x93\xeb\x1d\x23\x3b\xbd\x00\x2b\x0d\x65\xeb\xe6\xc0\xf1\x82\xb2\xc0\x56\xdb\x2b\x67\x6b\x71\x53\xab\x50\x5a\x81\x30\x6e\x65\xdd\xee\x42\x73\xbc\xc4\xca\xca\x51\x06\xe5\x22\x95\x44\xdf\xfb\x42\xa6\x9c\xa8\x73\xc2\xad\x3a\x09\x6d\x72\xa8\xd0\xdf\xd4\x95\x90\x8c\x92\x54\x64\xbc\xa5\xd8\x28\x6f\xd8\xb1\x79\xbc\x51\x3b\x49\x17\x4b\x88\xbe\x70\x22\xb2\x44\x8a\x0a\x7b\xad\xe4\xb6\xde\x49\x20\xbf\x3c\xdd\xcf\x44\xe2\x93\x92\x5f\xcb\xf1\x76\x80\x9f\x81\x44\xa8\x51\x03\x4f\xd7\x5d\xb1\x23\x3f\x7e\xa1\xce\xb6\x6d\x42\x64\x1a\x2d\x50\x36\x4b\xea\x6a\x93\x8f\x99\xe9\xd3\xe0\xc9\x3e\x9c\xe7\xf3\x58\x85\xcc\xa6\x74\x3e\x06\x35\xea\x5d\x93\x07\x03\x84\xc1\xc6\x60\x77\x7a\x11\xdc\xe5\x03\x28\xb0\xa4\x81\x41\x0c\xea\x6b\x8d\x99\xc8\x26\x87\x39\x5c\x25\xe5\x20\x5d\xa1\x40\xc2\x12\x2b\x71\x8a\xa2\x39\x4d\xe2\xc3\x32\x18\xd1\x68\x39\xd0\xde\xc1\x15\x13\x9b\x10\xa8\x17\x04\x3b\xae\x5b\xa9\xe9\x68\xa9\x5b\xbb\x1b\x67\x92\x49\x44\x5c\xb9\x7c\x2a\x8c\xf3\xa8\xa0\x49\x04\xf2\x22\xf0\x0d\xbc\xb4\x47\x70\xbd\xbc\xa8\x4b\xd7\x7b\xfb\x72\x22\xa0\x59\x1b\x39\x71\x13\x7a\xe1\xec\xa9\xc1\xcc\x49\x8e\x3a\x52\x89\x3b\xed\x42\x7b\x42\xe4\xe0\x17\x97\x92\x6e\x93\xac\xc4\x12\x3f\x32\x03\x12\xe9\x54\x1e\xb5\x9d\x7c\xa8\xae\x63\xa1\xe4\x43\xe1\x1b\x5f\x52\xa8\xeb\x08\x82\xfc\xd4\x25\x3f\x0e\xbc\x2c\x6f\x68\x9d\x93\x67\xb4\xe4\xe6\xcf\x98\xe5\xe8\xa5\xbc\xd7\x67\x54\x14\xdc\x06\x14\x14\x43\xa0\x95\x0c\x2c\xa2\x61\xa0\x33\x00\x8d\x91\x72\x38\xc1\x50\xca\x57\x4a\x4e\x27\x99\x2c\x95\x54\x09\x4e\x73\x65\x90\x63\x17\xd6\xc1\xe9\xd3\xb7\xa6\xa8\xbe\x36\xf2\xd6\x1e\x39\x54\xa9\xb8\x74\xaf\xc4\xd4\xf3\x97\xe5\xe8\x96\x69\xe4\xd5\x7d\x6a\xcf\xe1\xa5\x6c\x46\x53\xf3\x08\x2c\xea\xd8\xab\xd8\x1d\x00\x29\x80\x84\x79\x45\x73\x07\x32\xf1\x92\x3e\x94\x88\xc2\x33\x82\x16\x24\xa6\x59\x31\x91\x6d\x7d\xf4\x6c\xaf\xcc\xce\x36\x9c\xa5\x0c\x70\x67\x88\x9e\x83\xb1\xf0\xa8\x6e\x6d\x0d\x41\x03\xa7\x47\x75\x51\x09\x0f\x06\x8a\xe5\xb7\xc2\x45\xe3\x42\x8a\x59\x17\xd3\x19\x15\xf2\xe7\x42\x35\xe2\x0d\xf2\xa5\x92\xec\xe9\xb0\x7f\x76\xaa\x7a\x9a\xde\x13\x8d\x18\xb7\xab\xa0\x95\x2b\x30\x99\x76\x57\x00\x46\xc4\x66\x92\xa9\x79\x77\x11\xe0\xff\x70\xf4\xfa\x87\x69\x36\xcb\xf1\x72\x49\x38\x32\x0d\x67\x8b\x2d\x64\x75\x5a\x16\xbc\x65\xcc\xb4\xc2\xf4\x3f\xd7\x17\xe7\xb9\xe4\xce\xed\xa8\xc2\xd0\xf0\x33\x20\xdd\x51\xf5\xce\x9d\x67\x49\x52\xbb\x73\x2d\xaa\x7d\xdd\x9e\x9d\xdd\xfd\x3c\x3c\xbb\x1d\x35\x57\xd3\xca\x7f\x56\x4b\x13\x37\x13\x43\x13\x7d\x8d\x49\xb8\xba\xb2\x05\x31\x0e\x2c\x50\x46\xcc\xaa\x35\xc0\x21\x4b\x92\x30\xb3\x66\xcc\xfe\x61\xc6\x01\x00\x5c\xc6\xb4\x9a\x39\x66\xa8\x91\x70\xe1\xfb\xe1\x67\xff\x50\x83\xff\x43\x3f\x7b\x88\xf2\x45\x7c\x40\xe7\xee\xad\x35\x74\x35\x4e\xd7\x2d\x8e\x83\x4e\xf0\x79\xae\xdc\xc1\xcd\x8e\xc7\x2d\xb3\x85\xee\x4c\xca\xdf\x4e\x4e\x87\xa6\xdd\x3f\x42\x13\xc6\xe5\x37\xc7\x5a\xce\xc3\xb8\x03\x9d\xf1\xa5\x9b\x91\xbb\xa4\xa8\x31\xd3\x78\x02\x68\x41\x9b\xd6\xcf\x09\x9d\x32\x8d\x6c\x4c\x30\x9b\x65\x78\x46\xc4\x00\xd9\x97\x8f\x99\x6b\x78\x6a\x0a\x94\xb8\x46\x1a\x18\xca\x86\x87\x2c\xa4\x5d\x9d\xe4\x2b\x5e\x2c\x21\x04\xc3\xc6\xcc\xac\x89\xcd\xf2\xe1\xb5\x17\xf4\x7f\xae\xdd\x72\x14\xa7\xb9\x81\x4c\xd2\x1a\x1b\x33\xbd\xb9\x3a\x63\xd1\xea\x76\xe0\x00\x82\x0e\xc7\x01\xeb\x62\x4e\x6c\x9e\x2c\xc8\xf4\x19\x68\x99\xba\xc6\xb2\x0d\x31\x2a\x49\xef\x15\x59\xd1\x0e\x67\x3d\xa5\xf5\xf2\xc4\x6e\x86\x3d\x13\x66\x6e\xd5\x5c\xbf\xf5\x1d\xa0\x0e\x5c\x75\x5d\xfb\x66\xb6\xcd\xc5\xd8\x1a\x69\x9e\x33\x14\x2b\x1e\x61\x54\x84\xa2\x43\xf0\x7a\x07\x35\xfc\x5b\x4f\x49\xff\xbe\x71\x52\x1d\x4a\xff\xb7\x7e\xad\x49\xb7\x6e\x7a\xad\xb2\x70\x9a\x5f\xba\x03\x13\x29\x98\x94\x79\x60\x1d\x31\xb2\xa8\xa6\xcb\xc2\xd6\x31\xb1\x22\x89\xac\xf4\x69\x9a\x50\x42\xc5\x46\xd3\xc9\xf5\xa7\xd6\x33\x72\x1a\x82\xb9\xec\x3a\x49\x58\x73\xcf\x05\x02\xb6\x46\x4c\x1a\x6c\x96\x71\xcb\x10\xaa\xc5\x8b\x3a\x3c\x03\x38\x44\x8a\xff\x07\x8e\x89\x06\xf9\xce\x0d\x74\x7d\xf0\x8c\x0b\x25\x2e\x8d\xbc\x33\x52\x5b\x99\x39\x63\x66\xd3\x07\xac\x38\x1e\xda\x96\x45\xdc\x7d\xaa\xe3\x8c\x4b\x0d\xbe\x05\x8d\x55\xe6\xbd\xae\xb0\x1c\x33\xc8\x4d\x67\x60\x42\x4e\x04\x64\x4f\x99\x0c\x6c\xf3\x85\x57\xce\x0a\x33\x57\xa3\x7c\x8d\xcc\x2b\xa8\x01\xc1\x3d\xff\x8d\xfa\xff\xbf\x7e\xf3\xff\x05\x00\x00\xff\xff\xfa\x94\x4c\xf7\x3c\xec\x02\x00") +var _adminSwaggerJson = []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xec\xbd\x7b\x73\x23\xb9\x95\x27\xfa\x7f\x7f\x0a\x5c\xed\x46\x54\x97\x4d\xa9\xda\x9e\xf1\x84\xb7\x26\x26\x6e\xb0\x25\x56\xb5\xa6\x55\x92\xac\x47\xd7\x3a\x2e\x27\x64\x30\x13\x24\x61\x25\x91\x34\x80\x94\x8a\x76\xf4\x77\xbf\x81\x83\x47\x02\xf9\x62\x26\x49\x49\x94\x3a\x67\x63\xdd\x2a\x92\x89\xc4\xf3\xe0\x3c\x7e\xe7\x77\xfe\xf5\x1d\x42\x07\xe2\x11\xcf\x66\x84\x1f\x7c\x44\x07\x7f\x3c\xfa\xe1\x60\xa0\x3e\xa3\x6c\x9a\x1e\x7c\x44\xea\x7b\x84\x0e\x24\x95\x09\x51\xdf\x4f\x93\x95\x24\x34\x4e\x3e\x08\xc2\x1f\x68\x44\x3e\xe0\x78\x41\xd9\xd1\x92\xa7\x32\x85\x07\x11\x3a\x78\x20\x5c\xd0\x94\xa9\x9f\x9b\x3f\x11\x4b\x25\x12\x44\x1e\x7c\x87\xd0\xaf\xd0\xbc\x88\xe6\x64\x41\xc4\xc1\x47\xf4\xff\xe9\x87\xe6\x52\x2e\x6d\x03\xea\x6f\xa1\x7e\xfb\x3f\xf0\xdb\x28\x65\x22\x0b\x7e\x8c\x97\xcb\x84\x46\x58\xd2\x94\x7d\xf8\xbb\x48\x59\xfe\xdb\x25\x4f\xe3\x2c\x6a\xf9\x5b\x2c\xe7\x22\x1f\xe3\x07\xbc\xa4\x1f\x1e\xfe\xf0\x01\x47\x92\x3e\x90\xbb\x04\x67\x2c\x9a\xdf\x2d\x13\xcc\xc4\x87\x7f\xd1\x58\x8d\xf1\xef\x24\x92\xbf\xc2\x3f\xe2\x74\x81\x29\xd3\x7f\x33\xbc\x20\xbf\xba\x76\x10\x3a\x98\x11\xe9\xfd\x13\xa1\x83\x98\x88\x88\xd3\xa5\x34\xb3\x72\x45\x24\xa7\xe4\x81\x20\x39\x27\x48\xbf\x0e\xe9\xd7\x21\xf5\x3a\x64\x67\x4d\x2c\x49\x44\xa7\x94\xc4\x68\xb2\x42\x94\x2d\x33\x89\x38\xf9\x47\x46\x84\x44\x53\x9a\x48\xc2\xc5\x91\x99\x32\x78\x4b\xba\x24\x1c\xc6\x79\x1a\xab\xb7\x7c\x26\x72\x08\x6d\x9f\x41\xd3\x97\x09\x66\xfe\xaf\x39\x11\xcb\x94\x09\x22\x82\xae\x22\x74\xf0\xc7\x1f\x7e\x28\x7c\x54\x1e\xc1\x10\x89\x2c\x8a\x88\x10\xd3\x2c\x41\xb6\x25\xbf\x33\xf0\x10\x2c\x32\x2e\x35\x86\xd0\xc1\xff\xe6\x64\xaa\xda\xf9\x5f\x1f\x62\x32\xa5\x8c\xaa\x76\x85\xde\x4b\x5e\x6f\x83\xa7\x7e\xfd\xae\xea\xef\x5f\xbd\x11\x2d\x31\xc7\x0b\xa2\xa6\xc5\xad\xbe\xfe\xbf\xc2\x58\xd4\x7a\xa9\x97\xe7\x6b\x5a\xec\x78\x61\xb4\xe7\x78\x41\x50\x3a\x85\xe5\x32\x4f\xc0\xdf\x9c\x88\x34\xe3\x11\x41\x13\x92\xa4\x6c\x26\x90\x4c\x4b\x73\x40\xa1\x05\xb5\xd5\x8a\xdf\xa8\xa5\xa4\x9c\xa8\xb5\x92\x3c\x23\x85\x6f\xe5\x6a\x09\x9d\x14\x92\x53\x36\xf3\xa7\xe2\xd7\x41\xab\xa1\xe9\x1d\xda\x61\x64\xfa\x81\xda\x81\x8d\xd9\xd0\xfe\x24\xc2\x0c\x4d\x08\x52\xe7\x92\xc6\x84\x93\x18\x61\x81\x30\x12\xd9\x44\x10\x89\x1e\xa9\x9c\x53\xa6\xfe\xad\xb7\x6f\x64\xe7\x6c\x7f\xe6\x06\xfe\x6c\x9e\x99\x5b\x41\xb8\xea\xf8\x03\x8d\x49\x8c\x1e\x70\x92\x11\x34\x4d\x79\x30\x3d\x47\x63\x76\x33\x57\xf3\xb0\x98\x50\x06\x27\x4f\xcd\xa5\xdd\x21\xbf\xb7\xd3\xf5\x7b\xa4\xde\x87\x32\x46\xff\x91\x91\x64\x85\x68\x4c\x98\x54\xe7\x5a\x14\x5b\xfb\x7d\x0a\xef\xc7\x09\x3a\x44\x6a\x9e\x09\x97\x30\xdf\x29\x93\xe4\x9b\x14\xe8\x10\x25\xf4\x9e\xa0\x77\x67\x54\x48\x34\xbc\x3c\x7d\x37\x40\xef\xce\x72\xc1\x21\xde\x3d\xc3\x0c\xbb\xbf\xff\xc7\x3b\x7a\x12\xcf\x8a\x87\xee\x60\xa8\x4e\xf3\xb5\xbe\x26\xf2\x16\xfe\xe7\x3b\xbf\x1d\xb3\x5e\xcd\xb2\x37\x17\xbc\x46\xea\x76\x91\xb5\x9f\x88\x8c\xe6\x6b\x04\xad\xd8\x52\xd2\xaa\xe5\x28\x8a\x5a\xf1\xba\x64\xad\x1a\xc2\x53\xcb\xdb\x6d\x84\x2d\x96\x70\x0a\x30\x65\xfa\xd0\xb8\x33\x14\xae\x0c\x7a\x39\xb1\xb2\x8d\xbc\xf5\x46\xe3\x89\x5c\x2b\x49\xbd\x99\xd8\x93\xb1\x26\x74\x41\xd7\xad\xe3\x29\x8b\x95\xda\x65\x84\x1c\xcb\x16\x13\xc2\xd5\xd0\xad\xb8\x83\x11\x4e\x94\xf8\x93\x19\x67\x24\xae\x19\xda\x3f\x32\xc2\x57\x0d\x63\x9b\xe2\x44\xd4\x0d\x8e\x32\x49\x94\x5e\x5b\xf8\x7a\x9a\xf2\x05\x96\xe6\x07\xff\xf1\xef\x5d\x07\x2f\xd3\x7b\xb2\x6e\x9d\x4f\xf5\xaa\x45\x58\xc0\x72\x2f\xb2\x44\xd2\x65\x42\xd0\x12\xcf\x88\x30\xb3\x90\x25\x52\x0c\xe0\x67\x4a\x97\x26\xfc\xd0\xdd\x36\xf0\x06\x7b\xcb\x66\x02\x3e\x41\x53\x27\xc8\x18\xf9\x26\xa1\xa5\x31\x83\x7b\x16\xa6\xc8\xbf\x3d\x9e\x60\x2a\x37\xdb\x27\x22\xe5\xf2\x6e\xb2\x3a\xba\x27\xa5\xf7\xd6\xee\x16\xcc\x10\x96\x92\xd3\x49\x26\x89\x1a\xb7\x6a\xc3\xde\x93\x20\xfa\xf4\x65\x2c\xd4\xe5\x7b\x71\x72\xf1\xfd\x3d\x96\x3c\x9d\x61\xf6\xfe\x23\x1a\xc6\x31\xd2\x1d\x55\xbf\xa1\xb1\xbe\x92\xe7\x84\x93\x23\x74\x33\xa7\x02\x89\x79\x9a\x25\x31\x62\xe4\x81\x70\x35\xb7\x64\xb1\x94\xab\xbd\x9b\xad\x98\x72\x12\xc1\xc4\x74\x39\x61\xee\x29\x35\x69\xca\xe8\x59\xe9\xa9\xbb\x27\x2b\x50\x5c\xca\xd3\xf7\x0c\xfb\xa5\xf0\x2d\x61\xd9\xa2\x70\x57\xc0\xe7\x27\xa3\xeb\xe3\xd1\xf9\xc9\xe9\xf9\xe7\xc2\x13\x4a\x8d\x70\x5f\x05\xdf\xfc\x4f\x69\x6e\xa6\x38\x4b\xe0\x54\x7b\xad\x3d\x9b\xe2\x12\xcd\x69\x12\x73\xc2\x3e\x48\x2c\xee\xef\xc8\x37\x12\x65\xfa\x9e\xfd\x57\xf8\xc1\x9d\xd2\x3e\xd3\x98\x84\x9f\x04\xff\xc8\xd5\x9d\xce\x8f\x3a\xab\xb4\xf3\x93\x60\xc3\xb6\x7b\x0e\x3e\xa1\x71\xe5\xaf\xe1\x93\x35\x63\xb0\xbf\x69\xe8\xac\xfd\x49\x6d\xaf\xec\x0f\x8c\x02\x57\xf9\x1b\x4e\x24\x5f\xdd\x61\x29\xd5\x29\xdf\x40\x67\x84\x25\x45\x6a\xb4\x28\x5f\x4f\xa3\x3e\x6a\x45\x11\x64\xb7\xd3\x1c\x55\x0f\xf2\x5f\xae\xd3\x17\xcf\xd3\x98\x8c\x5c\xb3\x9f\x52\x7e\x83\xc5\xfd\x6b\xd0\x19\x83\x8e\x3f\x87\xda\xb8\xe9\x01\x7a\x73\x46\xfd\x86\xe2\xa0\x77\x01\x6c\x3f\x93\x6d\x1d\x06\x29\x47\x62\x25\x24\x59\xac\x75\x1d\xbc\x9e\x89\x30\xf2\x7e\x5f\x3b\x5c\xb8\x72\x7e\x03\xa7\x3e\xbc\x40\xfb\xe3\xdd\x61\xca\x76\xe5\xf8\xdb\xf7\x71\xda\x10\x4c\xf3\x50\xaf\xed\xf2\xd9\x80\x83\xd9\x27\x7b\x3f\xcc\x40\xb5\xdb\x75\x27\x9f\xc8\x6b\x50\xbb\x56\x76\xb6\xef\xa0\x03\x6b\x4c\xbe\xd0\x75\xec\xce\x9f\x7a\xd4\x77\xae\x68\x8f\x99\x54\x36\xaf\xf1\x2d\x11\x8e\xa2\x94\x6b\x55\x30\x6e\x10\x6f\xcf\x67\xf4\xdd\x9e\x5f\x5f\x8e\x8e\x4f\x3f\x9d\x8e\x4e\xca\x56\xdf\xcd\xf0\xfa\xe7\xf2\xa7\x5f\x2f\xae\x7e\xfe\x74\x76\xf1\xb5\xfc\xcd\xd9\xf0\xf6\xfc\xf8\xa7\xbb\xcb\xb3\xe1\x79\x6b\x3b\xd1\xef\x40\xc7\xd5\xec\x1d\x60\xbb\x74\x80\x0d\xde\xae\x07\xcc\x44\x0f\xda\x7b\xbf\x50\x42\x85\x54\x13\x64\x9e\x44\x4b\x2c\x84\xbe\x7f\x75\x0f\x8e\xc6\xec\x4b\xca\x09\xa2\x6c\x9a\xa2\x14\x82\x43\x42\xf2\x2c\x92\x94\xcd\xdc\x43\x1f\xd1\x38\xfb\xe1\x87\x7f\x8b\xce\x28\xbb\x87\xbf\xc8\x3e\x4e\x4e\xef\x1e\xdc\x64\xb6\x7a\xf7\xa0\xff\xdd\xeb\x70\x0f\xc6\x58\xe2\x0f\xbe\x57\xf0\x69\xf0\x24\x3a\x72\x89\x59\x8c\xd2\x4c\xaa\x3f\xd5\x7b\xd1\x94\xa7\x0b\x75\x6e\xc8\x37\x2a\x40\x4a\x3c\xa6\xfc\x7e\x9a\xa4\x8f\xed\xbc\x55\x9f\x89\x74\xfe\x9e\x13\x2c\xf1\x6b\x70\x52\x7d\x35\x23\x74\x1d\xff\x4c\xa4\xea\xfb\x95\x79\x4b\x0f\x2d\xe9\xa1\x25\x2f\x0b\x2d\xd9\x2b\x4f\xd1\xd3\xcb\xbe\xd0\xad\xa4\x05\x60\x4d\xd4\xa3\x36\xa8\x51\x13\xb3\xf0\x42\x12\x4f\x29\x34\xc3\x40\xc0\x1a\x81\x19\x38\xc9\x5f\x8b\xd0\x0c\x3a\xfd\xfc\x02\xf3\x37\xe1\xc3\xef\x5d\xf4\x1b\x4e\xd4\xab\x94\xab\x2d\xaf\x8c\x67\x73\xb0\x3f\xbd\x9c\x2f\x85\xbf\xbb\xc4\xbb\x3b\x04\xb8\x5b\x47\xb4\xd7\x84\xb0\x2b\x63\xd6\x55\x41\xea\x72\x54\xba\x32\x0c\xbd\x55\xdc\xb9\xeb\x95\xd4\x3e\xe2\xfc\x99\xc8\x1b\x2c\xee\x5f\xdd\x95\x14\x74\xfa\xf9\xaf\xa4\xdf\x68\xa0\xb9\x8f\x2c\x3f\xe1\xd4\xbd\xf5\x8b\x6c\x7f\x63\xc7\xbf\x81\x60\x71\x1f\x1d\xee\x34\x47\x6f\x2b\x1c\xfc\x56\xe3\xbf\xaf\x33\xe0\xdb\x47\x78\xf7\x37\xc2\xfb\xa4\x76\x10\x79\x20\x4c\x0a\xf0\x78\xf9\xea\xf4\xc1\x32\x15\xcd\xea\xff\x31\x27\x58\x12\x84\x0b\xae\x26\x04\x0d\x22\x4e\xa2\x94\xc7\x4a\xed\xc7\x68\x39\xc7\x82\x20\xc9\x31\x13\x74\x9d\xea\xaf\x5b\x05\xdf\x8e\x6a\xe7\x35\x68\xfd\x81\x23\x0a\x7a\xfd\x5c\x3a\xff\x24\x8d\x4b\x47\x43\x9f\x9a\xaa\x6f\x9a\xc5\xcb\xce\x86\x0e\x79\x68\x6d\x46\xfe\x84\xbb\x59\x89\xb2\x0d\x77\x73\x68\xa5\xee\x64\x37\x83\x59\xf8\x5a\x76\x73\x60\xc3\xfe\xb6\x76\x73\xd5\xd0\xf7\x61\x37\xdb\x00\xe8\x86\x3b\xba\x1c\x3f\xdd\xc9\xae\x76\x41\xcb\xd7\xb2\xb3\x4b\x51\xd6\xdf\xd6\xee\xae\x1b\xfe\xcb\xee\x70\xe7\x7b\xdd\xd5\xde\x5e\xbf\x71\xdd\x04\xbc\x86\x4d\xeb\x3a\xab\xfb\xfe\x9b\xd9\xad\xa5\x71\xef\xc9\x36\xfd\xc0\x89\xce\xa9\xea\xb4\x5f\xaf\xcc\x43\x9d\x77\xac\x7d\xb0\xdf\xb3\xaf\x69\xcf\xda\x55\xdb\x9f\x5d\x5b\x87\xe0\xea\x9e\x67\xd8\x00\xcb\x12\x68\x81\x65\x34\x57\x5f\xea\x90\x50\x4b\x32\x8a\x3c\xb1\xf0\x55\xed\xee\xe7\xc8\x26\x7c\xdb\xce\xdf\xde\xe9\xfb\x1b\x24\xfd\xd9\x1b\x84\x72\x9f\x15\xb1\xc3\xac\x08\x2a\xfa\xac\x88\x3e\x2b\xa2\xed\x04\xf5\x59\x11\x7d\x56\x84\xf7\xdd\xeb\xc8\x8a\x78\xfa\x84\x88\xdd\x64\x3d\xbc\x2a\x25\xba\x57\xa0\x7b\x05\xba\x4f\x6d\x70\x43\xdb\x95\x00\xb3\x4f\x1f\xc4\x24\x21\x92\x34\x8a\x9f\x1b\xc2\x17\xca\x36\x08\x08\x7e\x2b\x82\x06\x39\x77\x90\xdb\x41\xe0\xde\x68\x92\x4b\xae\xed\xd7\x29\x9d\x5c\xf7\xfb\x4c\xac\x5e\x5c\xf5\xe2\x6a\x93\xa1\xed\x8f\x57\xd6\x3b\xcc\x2f\xea\x96\xf5\xe8\x82\xef\x68\xbc\x1b\xc6\x60\xa7\x36\xfa\x7c\xc1\xf9\x54\x04\x94\xad\x9b\x39\x69\x73\xf2\xdd\xd3\xf8\x55\xf8\x69\x95\x1c\x89\x47\x4c\x52\xb9\x72\x28\x35\xde\x13\x07\xf7\xc4\xc1\xed\xc7\xda\x7b\x08\x77\xe8\x21\xec\x89\x83\x7b\x1f\x58\xef\x03\x7b\xe5\x3e\x30\xbf\xd4\xc1\x46\x88\x1d\x16\x23\x4e\x66\x54\x48\xc2\x11\xae\xd1\x56\xd6\x43\x78\x5e\x6b\x8d\x98\xd6\x80\x08\xff\xb5\x07\xff\xde\xa2\xfb\x57\xe6\x7a\x81\x33\x30\xc1\xb1\x2b\x08\x01\x3a\xc5\x02\xaf\xd0\x1c\x3f\x10\x34\xc5\x34\xd1\x16\x83\x11\x1b\x0d\x23\x6c\xea\xd0\xff\xe9\xd6\x21\x1c\x76\x87\x93\x29\xe1\x84\x45\x5a\x0c\x6a\xad\x20\xc2\x09\x22\xa0\xad\xe9\xdf\xcc\x95\xfd\x96\x70\x82\xe3\x15\x9a\x10\xc2\xdc\xb6\xa9\xb8\x42\x6b\xfa\xbc\x13\x6d\xee\xc5\xed\x97\xf2\xee\xd9\x17\xeb\xe5\x49\x60\x25\xd5\x22\x61\x7b\xab\x45\xfc\xf1\x75\x89\x8a\x1e\x5d\xd2\x7b\x9b\x5e\xde\xdb\xd4\xa3\x4b\x7a\xdb\x71\x0f\x6c\xc7\x1e\x5d\xd2\xa3\x4b\x7a\xcb\xba\xf5\x6c\xf5\x96\xb5\xff\xdd\xeb\xb3\xac\x77\x8c\x2f\x79\x2e\x0d\xbb\x57\xb0\xed\xef\x7a\x05\xbb\x57\xb0\xdf\xa8\x82\xbd\x1f\x33\xdc\x6b\xd7\xbd\x76\xdd\x6b\xd7\xbd\x76\xdd\x6b\xd7\xbd\x76\x6d\x9e\xda\xa5\x76\x0d\x7f\x59\x9a\xcc\xad\xa1\xdc\xdd\xa3\x5c\x9f\x89\x7c\xad\x21\xae\x5e\xa5\xee\x55\xea\xfd\x56\xa9\xf7\x66\x40\x6f\x8f\xf6\xae\x27\x8e\x2b\xdd\x8f\x6f\x81\x38\xce\x3e\x7d\xb0\xcc\x9a\xaf\xbf\xdb\x65\x6c\xf3\x08\x84\xc4\x32\x03\x4b\xa3\xc5\x55\x88\x86\x12\x2d\x52\xa5\x77\x33\x12\xfc\xc6\xee\x79\x0d\x22\x98\xd1\x07\xc2\x90\xc5\xcb\x0e\x8c\x64\x1b\x80\xf1\xfb\xab\x15\x70\x26\x81\x01\x4b\x84\x91\xa4\x0b\x72\x84\x4e\xa7\x7a\x03\x45\x38\x49\x90\x20\x52\x14\x90\x27\x4a\x21\x33\x0f\xb1\x38\xef\xab\x7d\x37\xcd\x81\x08\xfa\x67\x03\x7b\xfe\xb2\x44\xea\xd3\x68\x1b\x7f\xa4\x49\xa2\xfa\x60\x36\x2d\x08\x9f\x05\xe1\x89\x7d\x32\x78\xad\xfd\xf1\x02\xc7\xca\x9a\xf0\xba\x90\x67\x5a\xf8\xbf\x07\x31\x4f\x85\x83\x52\x04\xcf\xeb\xa7\x8f\x90\xb1\xfb\x34\xc1\x53\xab\x6e\xcc\x71\xac\xc4\x7e\x34\x27\x71\x96\x10\x84\x85\x48\x23\x8a\x25\x89\x11\xd5\xd7\x02\xa2\xd2\x5a\x89\xf6\x47\xf6\xd5\x31\x15\x78\x92\x90\xd8\xcc\x31\xc9\x91\x1d\x8d\x3d\xa7\x02\x4d\x88\x9a\x62\x75\xf3\x84\xb3\x3f\xd7\x97\x52\x45\x6f\xbc\xae\x90\x72\x4f\x08\xd3\x1d\x69\x50\xaa\xf4\xe6\x7c\xad\x7a\x95\xee\x7d\x9f\x87\xd2\x6b\x59\xbd\x96\xd5\x69\x40\x6f\x4a\xcb\xda\x23\x34\x9a\x15\x48\x2f\x8a\x46\x83\x98\x95\x92\xfc\x77\xce\x29\x25\x36\xb3\xd7\x9d\xdf\xef\x8b\x6d\x72\xe8\x5a\x3c\x4e\xd9\x94\xce\x32\x6e\x1c\xf0\x13\x75\x62\xd7\x06\xc6\x2a\xda\x79\x15\x37\x4e\x75\xd7\x9f\xeb\xe2\xe9\x62\x43\xa0\x43\xa4\xb4\xeb\xbb\xab\xd1\xf5\xc5\xed\xd5\xf1\xe8\x23\x1a\x2e\x97\x09\xd5\x8e\xfd\x28\x13\x32\x5d\xd0\x7f\xaa\x61\x68\x52\x57\x27\xb9\x8d\x1a\x22\x40\xe1\x80\x48\x82\x38\x1a\x33\x74\x88\x8e\xcf\x6e\xaf\x6f\x46\x57\x35\x0d\x9a\x4d\x00\xa5\x4c\xc8\x62\x99\x80\x56\x72\x9f\x4d\x08\x67\x44\x12\x81\xa2\x24\x03\x58\xb3\x8b\x2f\xe8\x46\x47\xff\x77\x74\x7c\x7b\x73\x7a\x71\x7e\xf7\x97\xdb\xd1\xed\xe8\x23\xb2\xbb\x49\x35\xab\xfa\xa5\x7a\x11\xaf\x18\x5e\x28\xf3\x27\x64\x9f\xfd\x47\x46\x32\x50\x82\xe8\x8c\x2d\x08\x93\xc5\x16\x6d\x87\xcf\x86\x3f\x8e\xce\xc2\x96\xe7\x04\xfd\xfc\xe7\xbc\x53\x09\x9e\x90\xc4\x04\x3c\xc0\x9f\xaf\x04\x76\xfe\x22\x13\x09\xc9\x4a\x62\xf2\xb9\x6d\xa9\x60\x41\xcb\xd6\x51\x71\x85\xca\xbf\x28\x4c\x77\xd3\x0f\x82\xd9\x6b\x6d\x6c\x85\x3d\x7c\x36\x49\xa7\x0e\x48\x7c\x07\x08\x69\x4a\xc4\x87\x7f\x05\x07\xe5\xd7\x27\x63\xa4\x40\x5e\x1a\x9d\x91\x7c\xeb\x8a\xc9\xe5\x0f\xbc\x06\x79\xe7\x77\xf7\x25\x65\xdb\x8e\xf4\x89\xfd\x72\x59\x74\xd7\xd6\x7a\xab\xa3\xb7\x3a\xaa\x67\xa6\x87\x4b\xd4\xcc\xf0\xae\xae\x9d\x4d\xbc\x7c\x53\x4a\x92\x58\x94\xdc\x34\xc1\xb5\xb1\xd6\x25\xf3\x7a\x6f\x8c\xe7\x75\xca\x74\xd1\x8d\xaf\x9c\xff\xdc\x38\xd4\xd5\x6a\x2d\x88\xc4\x50\x9b\x4f\xa6\x28\x83\xae\xf7\xb7\x50\x79\x9a\xfb\x5b\xa8\xbf\x85\x6a\x67\xa6\xbf\x85\x5e\xb1\xf3\xaa\x42\x72\xbf\xa8\xf7\x6a\x9d\x4d\xb7\x15\x31\x4c\x85\x6b\xab\x6c\xcb\x09\x24\xe6\x98\xeb\x12\x20\x51\xba\x58\xa4\xcc\x8b\xbc\xae\x96\x64\x80\x5c\xb0\x0d\xdc\x14\xd0\x8d\x75\x9e\xaf\xfc\x35\xf4\x75\xf8\xbc\xbc\x79\x79\x0e\x54\x78\x6f\x07\xae\x99\xa0\x9e\x41\xa7\x67\xd0\xe9\x71\xda\x3d\x83\x4e\xf3\x6e\xe9\x91\xc8\x3d\x12\xd9\xff\xee\x75\x20\x91\xc3\xaa\xd3\x1a\x8c\x5c\x55\xa6\xfd\xd7\xf2\x37\xbe\x4b\xbf\x54\xa4\xdb\x78\xfa\x75\x05\xeb\xed\x31\xcb\x61\x51\xcf\x75\x2e\x7f\xbf\x0c\xe4\x9e\x2b\x7c\xd3\x64\x25\x09\x8d\x93\x72\xfd\xca\x67\xc0\xd4\xfc\x56\xea\xf1\xf7\xd5\xf7\x37\x99\xa8\xb7\x4a\x01\xfb\xac\x95\xf5\x9f\x57\x78\x5b\x9a\xec\xbb\x1a\x11\x5e\xfd\xbd\x13\xe4\xd5\x5f\x6f\x9b\xe0\x1d\xca\xee\x4d\x13\xbb\x03\xd9\xf8\x3a\xcc\x78\xbf\xc7\xcf\x61\xc8\x37\xae\xfe\x9b\x93\xeb\x4d\x7b\xb9\x97\xee\x2d\xa7\xeb\xad\xca\xf8\xde\xd0\xdf\xa5\xa1\x3f\x78\xbb\x96\x7e\x9f\x90\xdd\x30\x39\xbd\x1b\x64\x93\xd9\xea\xdd\x20\xfe\x77\xaf\xc3\x0d\x62\xee\xea\x3b\x7d\xd5\x7b\xe8\xed\x0f\xff\xca\xff\xf6\x14\x69\xef\xc3\x8a\x58\x58\x07\xc4\x8a\xc5\x05\x93\x38\x57\x3f\xf2\xc6\x2b\x90\x2c\xa6\x0f\x87\x56\x29\xc9\xa3\xba\x6b\x81\x2d\x97\xfa\xd1\x13\x78\xf2\x75\xc1\xc0\x6b\xba\xfe\xbc\x80\x97\xf2\x4e\x58\xa7\x3a\x41\x2c\xdd\xe9\xd3\x54\xc3\x9c\x1f\xe7\x14\xae\x49\xe0\x39\x81\xab\xc4\x5b\x70\x9b\x40\x86\x01\xe9\x5d\xa7\x73\x3c\xb7\x3a\x55\xda\xee\xed\x06\x6e\xf6\xe8\xeb\x1d\xf7\x8b\x43\x04\xd6\xec\xfb\x17\x85\x0b\x34\xc8\xcc\xdd\x20\x05\x9e\x4f\x3e\x7e\x26\xf2\xed\x09\xc7\xcf\x44\x3e\x97\x64\xdc\x54\x1c\x36\x8a\x84\x9c\x96\x7d\x4f\xa4\xc1\x66\xa2\xef\x75\x8d\xb1\x4f\x78\xea\x13\x9e\x7e\xeb\x09\x4f\xf6\xe9\x36\xd5\x2a\x4f\xe0\x27\xcf\x78\x55\xe9\x17\xbe\xbd\xdb\x4a\x8f\xab\xbf\xb0\xfa\x0b\xab\xdb\x18\xf7\x55\x45\xb7\xfb\x79\x1f\x54\xf4\x4e\x39\xe8\x3a\x7a\x97\x97\xb7\xb1\xdb\x7f\x6d\x84\xee\xd2\xbe\xec\xf5\x08\x21\xd1\x55\xce\x6c\x95\xc7\xb4\xae\x28\xd5\x55\x5e\x89\xaa\x22\x76\x54\x9c\x72\xfb\xeb\xcb\x92\x28\xdb\xf7\x59\xb7\x3d\x7f\x2e\x61\xbf\x2f\x22\x22\x1f\xf7\x8b\x0a\x05\xa5\xe3\x16\x21\x5f\x21\x92\xe0\xae\x11\x04\xb6\xe6\xb7\x41\xa6\x77\xf3\x4f\x0b\x40\xb1\xf0\x3b\x03\x1d\x83\xaf\xa1\xcb\xc5\x7e\xd8\x0f\xfd\x17\xda\xcf\xf2\x96\xed\x27\x96\x3e\x13\x3e\xe4\x44\xf2\xd5\x1d\x96\xca\x8e\x90\xdb\xa3\xd3\x42\xab\x61\x0d\x3a\xed\x06\x8b\xfb\x57\x89\x4e\x0b\x3b\xfe\xc4\x67\xb6\xf5\x9e\x7c\x73\xb8\x86\xb6\x27\xac\xc7\x38\x6c\x30\x75\x6f\x15\xef\xd0\x24\x42\xf7\xa6\x87\x05\x29\xfe\x16\x4f\x6e\x78\x27\xf5\x47\xb4\x69\x8e\xde\x1c\xb5\x5b\x41\xd5\x58\x33\xb6\x57\x42\xf1\x56\xd4\x96\x76\xdd\xab\xa7\x81\x40\x79\xab\xd1\xd3\x00\xbf\x51\x1a\xe0\x76\xc6\x4d\x6b\xcb\xa6\xad\x59\xd3\xce\xa6\xa9\x37\x68\xb6\x40\x52\x87\x76\xc6\xa6\x48\xea\x40\x8f\x7f\x15\xde\x9a\xa0\xc7\xcf\x81\xa4\xfe\x8d\x9a\x1e\xbd\xdd\xf1\x24\xf3\xf6\x56\x8d\x8e\x3d\xb7\x38\x7a\x0c\xf8\x2e\x31\xe0\x3d\x04\xbc\x87\x80\xb7\x9d\xa0\x1e\x02\xde\x43\xc0\xbd\xef\x5e\x07\x04\xdc\xd8\x8b\xdb\xa2\x17\xab\x54\xf6\x5c\xa1\x0d\x18\x53\x36\x57\xdf\x4f\xe3\x57\xa1\xb7\x7b\x44\x46\xce\xb2\xe6\xcf\xa1\xbf\xf7\x8c\x3d\x3d\x63\x4f\xaf\xc4\xfd\x96\x94\xb8\x5e\x4f\xd9\x64\xb6\x7a\x3d\xc5\xff\xee\xf5\xe8\x29\x01\xa0\x6b\x2d\xae\xe8\x98\x13\x2c\x75\x3d\x2b\x9e\x43\x8c\x0a\x9a\x49\x93\xda\xa1\x1b\x50\x8a\xc7\x6b\xd0\x3a\x54\x3f\x75\x8f\x5b\x00\x8c\xfc\x17\x1e\xfc\x7b\x8b\x8e\x5f\x99\x4b\x04\x76\xfa\x04\xc7\xae\x8a\x18\x68\x0e\x0b\xbc\x42\x73\xfc\x40\xd0\x14\xd3\x44\xfb\x6f\x8c\x70\x68\x18\x5b\x53\x87\xfe\x4f\xb7\x0e\xe1\xb0\x3b\x39\x5a\x53\x09\x3b\x7d\xf7\x47\x38\x41\x44\x93\x6e\xc2\x6f\xa0\xc4\x99\x29\x28\x37\x21\x84\x79\xd0\xbf\xb6\x7d\xde\x89\xce\xf6\xe2\x28\x2d\x7f\xdf\xbc\x38\x40\xab\xbe\x2c\xf0\xee\x8c\x91\x6d\x2c\x10\xf1\xc7\xd7\x22\x0a\x9e\xc3\xde\x78\xc3\x31\x81\xde\xef\xff\xdb\xe4\xe8\xde\x1b\x5d\xb5\xb7\x00\x77\x68\x01\x42\x4e\xc7\x1b\x35\x01\x7b\x3f\x7e\xc3\xe4\xf4\xf6\xf1\x26\xb3\xd5\xdb\xc7\xfe\x77\xaf\xc8\x3e\xde\x71\x01\xba\x27\xd4\xa3\x7b\x35\xba\x57\xa3\x7b\x35\xfa\xcd\xaa\xd1\xfb\x31\xc3\xbd\x0e\xdd\xeb\xd0\xbd\x0e\xdd\xeb\xd0\xbd\x0e\xdd\xeb\xd0\xe6\xa9\x9d\xe8\xd0\xf0\x97\xcd\xac\xdd\x4d\x1a\x6d\xbb\x88\x94\xc9\xa3\x7d\x2d\xca\x73\xaf\x38\xf7\x8a\xf3\x7e\x2b\xce\x7b\x33\xa0\xb7\x97\x3c\xd7\xa7\x9f\x95\x6e\xc1\x37\x9b\x7e\xe6\x58\xf6\x37\x60\x10\x0e\x3e\xb3\x0d\x3d\x37\xaf\xf0\xc0\x4a\x46\xcc\x62\x64\x3b\xd1\x89\x65\xf8\xab\x79\xe8\x75\xb1\x92\x95\x7b\xdd\x73\x0b\x23\x6f\xd5\x7a\x6e\xe1\x27\x1c\xb7\x3d\x67\x6b\x46\x6e\xf7\xa8\xf6\x5e\xbd\xd2\x61\xbf\x38\xcc\xa7\xfe\xa4\xbf\x28\xe8\xa7\xf2\xe6\x28\x65\x22\xe4\x35\x9a\x9e\x9f\x52\x79\x9b\xab\xe1\x33\x91\x6f\xe5\x5e\xe8\x69\x95\x7b\x96\xca\x8d\xab\x2f\x75\x92\xf0\xaf\x6b\x88\x3d\x73\x74\xcf\x1c\xdd\x33\x47\xbb\xb7\x3e\x07\x73\xf4\x36\x37\xb2\x7e\xfd\x5b\xb9\x94\x7b\xf6\xe8\xfe\x5e\xee\xef\xe5\xca\x21\xee\xa1\xc1\xb5\x17\xdc\xd8\xce\xe0\xda\x55\xce\xb7\x1f\xca\x72\xc2\x78\xa7\xa9\xdf\x76\x26\xfb\xf4\x6f\xf3\x7f\x7d\xfa\x77\x9b\xc1\xf5\xe9\xdf\x3d\x70\xa9\x4f\xff\xee\xa1\x39\x3d\x34\xe7\x0d\x40\x73\xac\x66\xb1\x8b\x14\xf0\x0a\x2d\x65\x7d\x1a\xf8\xd7\xb2\xca\xbc\xb7\x1a\x88\xed\x6b\x9f\x0e\xde\xa7\x83\x6f\xbb\x77\xf6\xc2\x58\x79\x92\xb4\xf0\x0a\x31\xb0\xad\x85\xf2\x3a\xd2\xc3\x6d\x6f\xfb\xdc\x96\x1e\xa2\xb7\xff\x10\xbd\xbd\xcb\x6d\xd9\x1b\x7d\xb6\xb7\x12\x77\x68\x25\xf6\xe9\x2d\x7d\x7a\x4b\x6f\x43\xb7\x9e\xad\xde\x86\xf6\xbf\x7b\x65\x36\xf4\xd3\xa6\x89\x3f\x85\x5e\xdd\xab\xd5\xfa\x77\xbd\x5a\xdd\xab\xd5\x6f\x54\xad\xde\x8f\x19\xee\x75\xea\x5e\xa7\xee\x75\xea\x5e\xa7\xee\x75\xea\x5e\xa7\x36\x4f\xed\x4c\xa7\xde\x6d\xda\x78\xc7\x28\x96\x97\x8a\xf0\x9a\x94\xe9\x5e\x91\xee\x15\xe9\xfd\x56\xa4\xf7\x66\x40\x7d\x0a\x79\x9f\x42\x5e\xfa\x66\x1f\x53\xc8\xed\xd3\x5d\x12\xbb\x85\x54\x7f\xa5\xd3\x6d\xae\xc0\x30\x51\xfb\x35\xdd\x82\xcf\x9b\x94\xdd\xdf\x89\xfd\x9d\x58\x3b\x33\xfd\x9d\xd8\xa7\x34\xbc\x4c\xe6\xf8\x77\x66\x96\x0e\xbc\x7e\xb9\x01\x1c\xfc\x98\xa4\x93\x9b\xd5\x92\xa8\xff\x9e\xd0\x05\x61\x02\x4c\x5c\x2a\x57\xbe\xa5\x55\x73\x23\x97\xef\xe2\x83\xeb\xd3\xf3\xcf\x67\x7e\x36\xde\xc1\x97\xdb\xb3\x9b\xd3\xcb\xe1\xd5\x8d\xed\xa1\x1b\x95\x7f\x79\x9a\xe7\x02\x63\xf1\x38\x5d\x2c\x31\xa7\x22\x65\xa3\x6f\x4b\x4e\x84\xea\xda\x05\xdc\x4d\x29\xdf\xac\x77\xa3\xbf\xf8\x3d\x3b\x0f\xff\xf9\xf9\x26\xfc\x57\x30\x8a\xb3\x9b\xf0\x5f\xa3\xc6\xd1\x78\x0d\x17\x0f\xcd\x21\xfa\x7c\xf3\x11\x7d\x06\x98\x18\x47\x37\x73\xcc\x20\xd7\xf3\xec\xe6\x23\x3a\x23\x42\xc0\x27\xf9\xc3\x92\xca\x04\xc6\xf6\x23\x65\x98\xaf\x90\x1d\xbe\x4e\xeb\xc4\x10\x3f\xb2\x53\x53\x9c\x3c\xf6\xf7\x8c\x81\x87\x23\x9f\xbd\xb3\x74\x46\x23\x9c\x6c\x37\x89\xc3\x73\x5f\xc1\x3a\xb8\xb8\x6a\x9c\x0a\xff\xd7\xe5\xb9\x18\x9e\x9f\x40\x3a\xab\xed\x6a\xc5\xc8\xcf\x89\x90\x24\x56\xb7\x43\xac\x37\xef\x11\xba\x99\x93\x95\x77\x6b\xfc\x3d\xa5\x8c\xc4\x28\x13\x4a\xb9\x19\x9e\x9f\xa0\x0f\xe8\xe2\x6a\xcc\x2e\x78\xac\x1d\xcc\x44\x89\x5b\xed\xdc\xa2\x02\xb1\x54\x22\xba\x58\xa6\x5c\x62\x26\xd5\x4d\xa3\x44\x56\x6a\x66\x44\x20\xcc\x09\x3a\x4e\x17\x8b\x4c\x62\x49\x1f\x48\x69\x52\x99\xf6\x1a\x5d\x13\x79\x1a\x43\xc8\xaa\x62\x0e\xd3\x49\xa0\x05\x1c\x2c\xb9\x6a\x5f\xd2\x82\xa2\x74\x40\xe3\x92\xe6\x64\x9b\xc0\x9c\xe3\x50\x36\x1d\x50\x49\x16\xc5\xdf\x37\x0b\xc7\xef\x8a\x7f\x85\xce\x18\x57\x24\x7d\xc4\x79\xca\xe1\x7f\x7e\xa6\x2c\xde\x6c\x57\xdc\x9e\xff\x7c\x7e\xf1\xf5\xdc\xdf\x19\xb7\xd7\xa3\x2b\xff\xdf\xd7\x7f\xbd\xbe\x19\x7d\x69\xdc\x2d\xc5\x56\xf2\x6d\x00\xdd\x03\xc3\xe4\x23\xba\xd6\x75\xaf\x53\x8e\xd4\xb5\x7a\x50\x3d\xa8\x2f\x44\xe2\x18\x4b\x9c\x7f\x90\xc6\x64\xb3\xb1\x7d\x19\x9e\xdf\x0e\xcf\x82\xa1\x1c\xff\x34\x3a\xb9\x3d\x0b\x4c\x0d\x3b\x3e\xef\x93\xab\x91\x36\x24\xfc\xcf\x8e\x7f\x3a\x3d\x3b\xb9\x73\xa6\x47\xd3\x6c\x14\xde\x5b\x3c\x3e\x37\x73\x82\x16\x44\xce\xd3\x18\x4d\x56\x7e\x9e\x61\x9e\xef\xfd\x88\x05\x4a\x20\x5c\x44\xe2\xa3\xb1\x16\x35\xba\xd5\x8f\xea\x14\x21\xf3\x32\xef\x89\x45\x1a\x93\x81\xf9\x8d\x3a\x27\x3a\x2d\x5e\x99\x7f\x60\x42\x54\x35\xac\xde\x8e\x19\xa2\x2c\xa6\x0f\x34\xce\x70\xa2\xd3\xd7\xdd\x1c\x7d\x44\x43\xa4\x2e\xce\x38\x4b\x08\x92\x9c\xce\x66\xa0\xe4\x15\xba\xaa\x5b\x33\x8f\xc2\x4c\xc2\x73\xae\xc4\xb9\x32\x15\xe0\xb5\xc6\x56\xa0\x93\x44\xab\x50\xfa\x41\x48\xd7\x0f\x5b\xe4\x58\xce\x09\xaf\xea\x9a\x5d\x97\x8f\xda\xcf\x5d\x33\x2c\x48\x9f\xce\x71\xcf\x10\x82\x17\x5a\x37\x5d\x72\xf2\x40\xd3\xcc\x7b\xd4\x30\x0b\x04\x8b\x5b\xd9\x7c\x3e\x01\x30\x6d\x29\xf4\x31\x6f\x26\xdc\xcd\x57\x36\x36\x66\xff\x18\x31\xc9\x2b\xaf\xe6\xb6\x32\xc7\x68\x45\x81\xd0\xa9\xd6\x5d\x4a\xef\x3e\x2f\xaa\xb9\x65\x87\xab\xd1\xf3\xd5\x4b\x8e\x0e\x2a\xad\x2a\x50\x7d\xeb\xa4\x5e\x85\xc5\x9f\x4b\x80\x5f\x40\x69\x5e\x64\x42\x02\x4f\x91\x8e\x59\xa0\xfb\x3f\x0b\xf4\x8f\x0c\x03\x26\xfd\x08\x5d\x13\x32\x66\x73\x29\x97\xe2\xe3\x87\x0f\x33\x2a\xe7\xd9\xe4\x28\x4a\x17\x1f\x72\xfa\x86\x0f\x78\x49\x17\x58\xed\x17\xc2\x57\x1f\x26\x49\x3a\xf9\xb0\xc0\x42\x12\xfe\x61\x79\x3f\x03\xf7\xb4\x55\x5f\x3f\xb8\x66\x67\xe9\xff\x3a\xfb\xb7\x1f\x0e\xcf\xfe\xfc\xc3\x41\x59\xa4\xd6\x9d\xce\x11\x8b\xf0\x52\x64\x89\x09\x63\x71\x7f\x6e\x20\xb5\x02\x66\x62\xdd\x7a\x9f\x87\xcb\xb5\x9d\x40\x3e\xbe\xbc\x0d\x54\x9c\xf0\x9f\x5f\x46\x5f\x2e\xae\xfe\x1a\x08\xb4\x9b\x8b\xab\xe1\xe7\x66\x55\xa7\x24\xb1\x0b\xd3\xf0\x33\x4b\x1f\x59\x38\x7a\x51\x1c\x74\xc6\x24\x5d\x10\x2b\xb0\xcd\x3f\x6f\xf4\x48\x37\x18\xf9\xc5\xcd\x4f\xe1\xc5\xf3\xe9\xec\xaf\x37\xa3\xbb\xeb\x93\x9f\x1b\x47\xa2\x1f\x0b\x7a\x76\x0d\xea\xfe\x71\x9a\x64\x0b\xe6\xff\xbd\x79\xdf\x4e\xcf\x6f\x46\x9f\x8b\xbd\xbb\x18\xde\x84\xd3\x7e\x15\x86\x76\x0e\x7e\xbc\xb8\x38\x1b\x0d\x83\xb5\x3c\x19\xde\x8c\x6e\x4e\xbf\x04\x4a\xea\xc9\xed\xd5\xf0\xe6\xf4\xe2\xbc\x71\x98\xb6\x07\x15\x03\x55\xc3\xf2\x87\xb9\x6b\x39\xd3\xea\x98\x0f\x0d\x6c\x42\x1f\x94\x43\x2f\xd9\x54\x1b\x5f\xa0\x03\x1c\x3a\xe3\x39\xd2\x3d\xad\x94\x35\x32\x5c\x26\x54\x2f\xeb\x1a\x17\xba\x49\xe4\xdd\xb8\x2e\x40\xbf\x4c\xe0\x14\x27\x49\xfa\xa8\x83\xd7\x0b\xaa\xb4\x57\x93\xf9\xaf\x7e\x22\x50\x94\x71\x4e\x98\x4c\x56\x47\x15\xe2\x24\x5c\x96\x94\xcb\x13\x17\xde\xdc\x68\xc3\x55\xc6\x0a\xcb\x51\xc2\xca\xad\x52\x8c\x0c\xda\x6e\x41\x85\x8f\x74\xf6\x85\x08\x81\x67\xe4\x93\x45\x4f\xec\x48\x48\x5d\xff\xe2\xff\xf3\xbf\xaf\xd7\xec\x67\xdb\x44\xd0\x43\xb0\xbb\x87\x93\x94\x4b\x2b\x55\xb6\xd9\xcb\x11\xce\x44\xa7\xcd\xdc\x0c\xfe\xc0\x28\x13\x84\x1f\x1a\x7f\x16\x89\x11\x56\x1d\x35\xc8\x0f\xe0\xe1\x5b\x62\xa1\x36\x51\x0a\x3a\x0d\x31\x3f\xcf\x34\x33\x1f\x82\xde\xd4\xdc\xae\x4b\x4e\x59\x44\x97\x38\xd9\xe8\xe8\x15\xc2\x01\x26\xd1\xeb\x7b\x3a\x45\x98\xad\xde\x97\x14\x2f\x49\xf8\x02\x50\x50\xa6\x9b\x4e\x89\x59\xb7\xad\xf5\xea\x30\x96\x4a\x1c\xba\x23\x36\x58\x1b\x1d\x9e\xaf\x1b\x6e\xa1\x15\xf3\x76\x6d\x48\xe2\xe4\xb2\xba\xcd\xaa\x09\xf3\xcd\xaa\xa6\xa5\xfe\x82\x97\x6a\x89\x35\x47\x0f\xc2\xf9\x18\x0d\xb8\xc9\xd0\x2b\xaa\x7f\x05\x53\xe6\x39\xcd\xda\xab\x18\xf9\x14\x1a\x94\x42\xf9\x25\x81\xd2\xee\xe1\xce\xcc\x96\x9c\x66\x32\xe3\x4a\x99\x52\x6a\x3f\xfa\x9e\x1c\xcd\x8e\xd0\xc5\x2f\xa3\xab\xab\xd3\x93\xd1\x00\x0d\x2f\x2f\x47\xe7\x27\x03\x44\x64\xf4\xde\xda\xdb\x20\x35\x49\x3c\x66\x32\x35\x1e\xd9\x15\x9a\xa7\x8f\xea\x5d\x0b\xc2\x67\x24\x18\xb3\xf9\x31\x82\x6c\xc2\x19\x15\x52\xc7\x15\x40\xfd\xf1\x48\xa9\xe8\xa2\xa8\x07\xe9\x1d\x92\xc9\xf9\x36\x5b\x03\x0b\x91\x2d\xf0\x24\x21\x77\x14\x2f\xee\x78\x9a\xac\x3b\xc3\x95\x47\x2a\x57\x1d\xef\x84\x76\xb5\xdd\xe1\x28\x4a\x33\x26\x5b\xb7\xb6\x6e\x1d\x4f\x60\x9a\x04\x5a\xaa\x03\x05\x8e\x9a\x32\x8d\x93\x9b\x2e\x81\x22\x70\x1e\x81\xfd\x00\x22\x23\xc9\xf1\x80\xb0\x24\x55\x73\x79\xac\xf9\xc1\xac\x5a\xe9\x31\x38\x6d\x33\xc1\x55\xad\xbc\xec\xf9\x3b\xd6\x07\xaf\x8a\x18\x4b\x1b\xc8\x05\x9e\x53\x00\x5d\x16\x08\xdd\xf4\x04\xab\x9d\xa9\x0f\xc4\x3f\xb2\x54\x62\xf1\xfe\x68\xcc\xd4\xe9\xbe\x27\x2b\xed\x25\x52\xe7\xe7\x77\x4a\xa6\x1f\x0a\xc2\x04\x95\xf4\x81\xfc\x4e\xeb\xb7\x4a\x02\x3c\x60\x4e\xd5\xde\x13\xea\x0d\x86\x47\x2e\xe4\xec\x9a\xd2\x04\x70\x45\xaa\x51\x73\x7c\x0d\xe0\x6a\xe2\x13\x7d\xd9\xef\x74\xf7\x67\x44\x42\x60\x44\x52\x99\xa9\x3d\x10\x6b\xa2\xba\x52\xd7\xd7\xaa\x16\xb0\x2b\x4e\x74\x50\x67\x2b\x17\xd6\x26\x67\xaa\xab\x72\x58\x3c\x2f\x54\x2c\x13\xbc\x2a\x99\x99\xeb\xce\x99\x32\xa6\xc4\x12\x47\x24\x0f\x2a\xd9\xf8\x5b\x94\x2e\x16\x29\x4b\x56\x0e\x5c\x19\xd3\x29\xa4\x3f\x4b\x75\x06\xd1\x84\xc8\x47\x42\x58\xfe\x29\x32\xb2\x00\x51\x26\x24\x66\x9a\x05\x10\x76\xcb\x58\xcd\x55\x9c\x81\xca\x36\x3e\x18\xa0\xf1\x41\x4c\x1e\x48\x92\x2e\x17\x84\x49\xf5\x01\x91\x95\x27\x74\xb4\xc0\x34\x39\x4f\xd5\xfd\x1b\xe1\x3a\x7d\xaf\xed\xb2\x70\x12\xd1\x25\x25\x4c\x8a\x3b\xa2\xda\x7d\x52\x37\xe3\x3a\xfd\xd8\x22\x38\xa1\x27\x08\xc7\x31\x27\x42\x00\xf9\x95\xed\xa4\xd1\xe6\xb5\x77\xd6\x4d\x40\xbb\x3d\xec\xfc\x7b\xbb\xdd\xc6\xd5\x76\x42\x94\x72\x17\x09\x77\x2f\xce\xe9\x8a\x1a\x77\xad\x21\x3f\xcb\x49\x75\x6c\xbc\xcc\xc5\xe3\x8b\x5e\xa0\xe2\xb1\x51\xc2\xbd\x5d\x3f\xc3\x99\xb9\x56\xcf\x35\x76\x4d\xf8\x60\x63\xcb\x80\x99\xdf\xd5\xc6\xf5\x55\xf4\xb6\x91\xb5\x3d\x8e\x92\x54\x64\xbc\xa5\x11\x16\x76\xfa\xd8\x3c\xda\xd4\xef\x91\xaf\xda\x64\x89\x14\x9d\xb4\xa7\x8a\x89\x47\x9c\x2c\x39\x11\xb0\x27\xc1\x6f\xa8\x0e\xb7\x34\xd7\xb0\xf9\xf5\x00\x51\x16\x25\x59\xac\xe6\x00\x27\xb9\x5f\x90\xc5\x28\xbf\xda\xc6\x6c\x61\x0c\x0f\x84\x05\x7a\x24\x49\xa2\xfe\x1b\xa5\x8b\x25\x88\x6d\xd3\x5d\xd3\x92\x32\x10\x25\x96\x64\x80\xd2\x4c\xaa\xc6\x06\x9a\x2c\xd4\x2c\xc1\xe1\x04\x03\xe2\x39\xa7\x00\x1f\xb3\x5b\x61\xc3\xe4\x0e\xa8\xaa\xf7\xba\x16\x60\x94\xa1\xcf\x44\x42\x2b\x90\x39\xe0\x0f\x50\x93\xa2\x56\x8a\xa0\xe2\xdc\x6f\x71\xa2\xcc\x48\x3a\xac\xfc\x19\x95\x84\xe3\xe4\x0b\x5e\xfe\x98\xa4\x93\xc6\x75\x1f\xa2\x85\xd6\xb3\xcd\x5b\x10\x2d\x5a\x58\x1e\xb6\x64\xdd\x1e\x25\x9c\x07\xa1\xb0\x35\xc7\x3f\x8c\x9a\x34\x6f\x4f\x88\x59\x50\xa6\xf3\x0b\x20\xfe\x54\xec\xa7\xa1\xfa\x58\xd7\x47\xb0\x10\xef\x5e\x8f\x1d\xaa\xfb\xbb\x28\xdb\xde\xeb\x36\x41\x68\xb3\x3f\xf5\x60\xe0\x80\xc8\x39\xa1\x1c\xb5\x1a\x96\x3d\xbf\x77\xfa\xcc\xb7\xdf\x34\xf9\xde\xae\x33\xbd\xb5\x10\x71\x02\x42\x75\xcc\x64\x3a\x04\x0c\xbe\x47\x63\x56\xe8\x04\x8a\xc9\x92\xb0\x58\x20\xd8\x5e\xf6\x34\x04\xb2\x7f\x80\xa6\xf4\x9b\x69\xd4\x46\x7c\xf2\x9f\x7a\xe6\x43\x8d\x53\x61\x8e\xcb\xdb\xae\xc3\xfd\x78\x09\xcf\x37\x5a\xcd\xa9\x50\x16\x62\xa4\x14\x2b\x4e\xa2\x94\x2b\x91\x08\xaf\x75\x7e\xbe\xb5\x77\xa3\xc4\x5c\x4d\x0a\x5e\x67\x96\x05\xfd\xc8\x33\x7f\x62\x2c\xc9\xa1\xb2\x44\xd7\x44\x38\x96\xa9\x7a\x0d\xa2\x0b\x65\x5b\xb8\xa0\x9b\x6f\xc9\x4f\xc8\x0c\x33\xc4\x33\xc6\x28\x9b\xd5\xf4\xd6\x8a\xf6\x2d\x0e\xb3\xd2\xac\xf0\x42\xd9\xa1\xa0\x47\xa8\x0e\x85\xfd\x10\x4b\x98\xce\xc6\x7e\x18\x53\xf2\xb9\x66\x4d\x36\x4c\xdb\x23\x76\x96\x6d\x4d\x67\x33\xc0\xcf\xec\x4d\x67\x13\x2c\x24\x32\x7d\xaa\xe9\xb1\xaf\xcd\xee\x20\xd4\xdf\xc4\x9e\xe9\x1b\x0e\x5d\x94\x73\xbf\x8b\x48\x10\x29\xa9\x61\x79\xcc\x04\x41\x78\xaa\xec\xe2\x05\xe1\x33\xab\xf0\x69\x7e\x23\x77\xb4\x0d\x98\xc9\xca\x51\x5f\x96\x8c\x59\x65\xd3\x47\x68\xc8\x4a\x51\x5f\xeb\xe4\x08\xe6\x4b\x4b\x6d\x9c\x3c\xe2\x95\x40\x4b\x60\xa3\xd2\x81\xe8\x7c\xf0\xe0\x85\x0a\x1f\xb2\x2e\x27\xa5\x50\xd1\x08\x27\xc9\x0a\x81\xa1\xe7\xf5\xac\x66\xb1\x3c\x8a\xd7\xf6\xc2\xae\xa5\xee\x5f\xf0\xac\x56\x11\xbe\x3a\x13\xa8\x52\xd2\x95\x94\xd9\x1c\x18\xe1\xc7\x19\x0d\xfc\x0e\x74\x4b\x63\x5d\x8c\x42\xaf\x6c\x9d\xc2\x07\x2e\x90\x33\x3c\x21\xc9\xd6\xde\xd8\x8d\x7c\xcf\xf0\x6a\x03\x8c\x54\xe6\x37\xd1\xde\x65\x82\x1e\xe7\x84\x17\x45\x9b\x75\xe2\xf0\xac\x9d\xaf\x39\x1f\x67\x40\xcf\xb5\xc5\x40\x2d\xd2\x77\x73\xf9\x5d\x87\x02\xf6\x2f\x92\x1c\x06\x5c\x7d\x8b\x14\xdd\x37\xdb\xf4\xc1\xc3\xeb\x56\x76\x01\xed\x02\xb1\xbb\x13\x6f\x90\xdb\x33\x2d\x33\xb6\x4f\xa7\x88\xa5\x8c\x20\x2a\xf2\x1f\x43\x3c\x51\x63\x4b\x60\x33\xcd\x08\x23\x1c\x48\x0f\x6d\xf8\xd1\x65\x97\xba\xbc\xbf\x67\x36\xca\x87\xce\x98\x44\x53\x4a\x92\x58\x20\x46\x94\x4d\x83\xf9\x4a\x9d\x10\x23\xd0\xda\xe8\x46\xbb\xd2\x56\x2b\xae\x0f\xa3\x46\x5a\xd4\x2c\x64\xa0\x2a\x4d\xac\xd0\x2f\x34\x4c\x92\xfc\x47\xe6\x21\x03\xe5\x18\x33\x67\x05\xc3\xfe\xa3\x42\x59\x77\x47\x08\x96\x4d\xe6\x4f\xa9\x3b\x46\x7d\x60\xd7\x70\x60\x75\x59\xa1\xf3\x37\xbb\xd8\xfe\xf6\xde\xca\xe7\x31\x44\x37\xa9\xcb\x48\x8d\x60\x46\x1f\x08\xab\x2c\xa0\x60\x37\x45\x12\xb8\x21\x9b\xa5\x8e\xc9\x43\xd8\x03\x3f\x55\xfb\x99\x52\x8b\x9c\x95\x3c\x57\x9a\x2e\x32\x37\xb2\x93\x95\x8b\x4a\xf8\xa6\xca\xa9\x16\x2d\x9a\x07\x1f\x0b\xf4\x3b\x96\xca\xdf\xa1\xdc\x46\xb3\xe6\xb0\xe6\x1b\x35\xae\x89\x41\x90\x68\xa4\xde\x06\x27\xd4\x6c\x12\x84\xdd\x59\x8d\xd7\xcf\xfc\xb6\x08\xcd\x3c\xea\xf2\xa4\xda\xdb\xa8\x1c\x39\xad\xcb\x4a\xd1\x64\x03\x3b\xf3\x01\x3c\x07\x05\x34\xd2\xdb\x80\x13\x08\x9b\xb0\x14\x2d\x52\x4e\x0a\x84\x07\x5a\x78\xdb\x7b\xdd\x24\x9a\xb7\xdf\xa5\x15\xee\x30\x9d\xc4\x9d\x1f\xf3\xc0\x0d\xd6\xec\xfe\xda\x05\x66\x60\x11\xa2\x4d\x1b\x76\xc0\x1a\xc4\x6a\xb5\x49\xbe\x49\x9c\xbf\x4e\x27\x75\x8e\x68\x9f\xd9\xb5\x0e\xa7\x79\x34\x66\x9f\x52\x6e\xee\x4e\x61\x40\xd7\x13\x1c\xdd\x1f\x12\x16\x23\x9c\xc9\xb9\xc6\x4b\x1a\xdf\xf1\xca\xac\xac\xd2\x0b\x60\x0b\xd8\x25\x8e\xa9\x88\x30\x37\x42\x7f\x8a\x1f\x52\xdb\x8b\x31\xf3\x1a\x01\x58\x37\xe4\x1a\x02\x1f\x4a\x9d\x02\x41\x20\xb1\xad\x6e\x2e\xaa\x58\x3f\x4a\x9c\x1f\xcd\x67\xc6\x67\x0e\x18\xc3\xfb\x48\xcc\x88\x10\xe3\x03\xdd\xeb\xc2\x0c\x9d\x5a\x7f\x94\xb5\x6f\x84\xcf\x9f\xec\x7e\xa9\xcf\x98\xf5\xc8\x98\x51\x28\x35\xe5\x07\x2b\x3b\x03\xf4\xe8\x34\xe3\x00\x16\xad\x6a\xf3\xfb\x68\x4e\x93\xdc\x47\xfd\x7e\x60\xce\xa3\x6e\x32\x21\x0f\x24\x51\x0d\x53\x16\x71\xb2\x20\xcc\x84\x8f\x7f\x40\xff\xa5\xd9\x30\xd0\x1f\xc6\xec\x33\x88\xd5\x24\x59\x0d\x10\x9d\xe6\x2d\x63\x59\x68\xe6\xbe\xb2\x03\x6a\xc9\xb4\x64\x09\x3a\xa2\xd7\x7b\x8e\x1f\xc8\x98\xd9\x66\xfe\x0b\xdd\xa3\xdf\xa3\x3f\xd4\x39\x72\x0c\x52\xf8\xa9\xed\x7c\xd8\xc5\xf6\x5d\x9e\x64\x18\x18\xf5\x11\x24\x87\x75\x03\x84\x55\xb4\x9c\xa9\xe6\x14\x5c\x07\x6f\xa6\xec\x21\x2d\x47\xaf\xfc\x93\x8b\x39\x61\xf2\x8e\xa5\x31\xb9\x23\x15\xa1\xab\x06\x41\xa1\x2e\xf5\xf3\x34\x26\x6b\x03\x4f\x4e\x41\xfe\x0a\xae\x0b\x91\x4d\xdc\x72\xa8\xf7\xe6\x46\x77\xb8\xc1\xaa\x3b\xec\x68\xa0\x37\xe9\xee\xa6\xb1\xb2\x0b\xa3\x5d\x0d\x40\xa2\x9b\x0e\x54\xc7\x6b\x74\x7d\x36\xc0\xd3\x14\x4f\x61\xd1\x43\xac\x7e\xac\x46\x6e\xee\x1c\x8f\xe0\x1a\x72\x40\x38\x9d\x51\xa5\x6d\xb7\x8f\xc7\x81\x10\xdc\xc4\xcd\xad\x33\x18\x5a\xf9\xb9\xf3\xa9\x58\x26\x58\xaa\x5d\x7e\xe8\xb6\x5d\x1e\x63\x9a\xa4\x59\x51\xe7\x36\x13\x40\x85\x8f\xf4\x31\xea\xf5\x4a\x89\xe0\x99\x46\x91\x90\x39\x55\x92\x9b\xa1\xe1\xf1\x19\x52\x87\x22\x5d\x10\xcd\x85\xa2\x26\x2d\x93\xf3\x94\xd3\x7f\xd6\x06\x64\xeb\x35\xec\x3c\x90\xe6\x15\x27\x83\x7e\x86\xba\x36\xec\x51\xad\x19\xc8\xc0\x90\xa8\xb2\x70\xd0\x44\x3d\xcf\x41\xf9\x98\x66\x50\xe9\x4e\x3b\x8c\x35\x33\x97\x08\x4b\xa1\x71\x5b\x54\x4f\x63\x90\x6c\x83\xd4\x20\xb0\x63\x70\x1e\xa1\x68\x8e\xd9\xac\x59\x8f\xfc\x4b\x46\xb2\x1d\x81\x66\x4c\x22\xdf\x0b\x85\xe3\xf1\x4c\xe4\x75\x01\xf5\xdc\x28\x91\x5c\x28\x45\x68\x02\xf2\x58\xdc\xe7\x0e\x35\x07\xc4\xd5\x66\x74\xd1\x9e\x6f\xe1\x7c\xb9\x32\xc7\x6f\x07\xee\x97\xe7\x88\xd7\x97\xf5\xa3\x0a\xf9\x03\xfb\xcf\xa4\xae\x3c\xab\x77\xc3\xc9\xf0\x82\xde\xb1\x6b\x4f\x47\x07\x4b\xda\x76\xca\xf4\xd0\x08\xd7\x72\x70\xb3\x7a\x77\x5c\x87\x7e\x94\xce\x5b\x42\xbf\xfb\x0e\xc2\x58\x5b\xbb\x6f\x3d\xb7\x64\x8e\xad\xd3\xe0\x4a\x3d\x1a\x12\x3f\xad\xab\x25\x0c\x0c\x86\xf0\x4e\x2f\x2e\x58\x07\xbb\xf5\x7a\xb4\xc1\xed\x54\x36\x84\xaa\xfb\x66\xbf\x6e\xdb\x95\xc6\x70\x48\xcb\xe0\x06\x58\xf4\x4d\xc7\xf6\xcc\xa0\x8d\xc2\xb0\x80\x86\x50\xa4\x5e\x60\x14\x22\x04\x99\x40\x92\x63\x40\xef\xa5\x4c\x8c\xd9\x57\xad\xc5\x52\xa1\xed\x45\x93\x2e\x0a\xe6\x28\xa2\xf0\x6f\x10\x9e\x26\xb3\x4c\xce\xb1\xb6\x71\xaa\x43\x10\x8e\xfd\xc0\x9d\x04\x3f\x08\x51\xf5\x32\x78\x91\x51\xdd\x2b\x9b\xb4\x13\xed\x43\x3e\x4b\x95\xdb\xab\x7d\xc5\x54\x00\x14\x16\x27\xb5\x36\xe3\x24\x4d\x13\x82\x59\x9d\x5a\x5d\xf9\x75\xc9\x5b\x44\x7d\x14\xa3\xb2\xfa\x94\x66\xc6\x33\xa2\x6c\x0a\x9c\x24\x85\x71\x61\x20\xee\x93\x84\x69\xe7\x82\x31\x0c\x55\x47\xe3\x35\x01\x91\x81\x7f\xf2\x27\x24\xe9\x84\x34\xd1\x0f\x34\xee\x22\xf8\x49\xce\x0d\xd7\x0a\xaf\xed\x03\x20\x2a\xd1\xed\xeb\x3a\xe6\x63\xe2\x1b\x5d\xc3\x21\xae\xbc\x43\x17\xd7\x89\xf3\x61\x01\x3a\x80\x08\xe0\x0d\x30\x00\xf6\xd4\xfa\xc1\x79\xb7\x9e\x1f\x27\xef\x83\x55\x82\xcc\x52\x78\x38\x4e\x89\xf0\x54\x2c\x94\x3e\x10\xb3\x7f\xe9\x94\x28\x35\x6c\xcc\x2c\x37\x8d\xed\x34\x16\xea\xa0\x2d\x79\x3a\x33\x28\x41\x1c\xf1\x54\x08\x83\x06\xd0\xed\x88\xa3\xc6\x9b\xe4\xc6\xe4\x25\xec\x22\xce\xf3\x7c\xc0\xc0\x32\x4d\x6c\x9e\xb5\x5a\xa3\x79\x4c\x88\xcb\xc1\xa8\x3d\xf7\xdb\x62\x86\xac\xf9\x81\x38\xc1\xc2\xd8\xbe\x00\xad\x29\x80\x0a\x3a\xe8\x09\xae\xcf\x1a\x62\x77\x68\x17\xdb\xdf\x42\x26\x8f\x4a\x33\x34\x52\x81\x28\xe7\x04\x68\x46\x26\x89\x09\xe9\x04\xbb\x86\xe6\x65\x88\xf2\x19\x71\x66\x9e\x7e\x33\xc8\x49\x41\x17\xea\xac\x40\x02\x29\x4b\x0f\xd3\x25\xd8\x0d\xc5\x5f\x4d\x31\x4d\x94\xc0\xa2\x61\x15\x24\xa5\x5c\x1d\x02\x8d\x12\x61\xb2\xca\xd1\x6d\x1b\x01\xc7\x38\x89\xf5\x32\xea\x9d\x3b\x3e\x18\xfe\x78\x71\x75\x33\x3a\x19\x1f\xe4\xe1\x4b\x0b\x75\xb1\x62\xdd\x65\xd4\xa4\x6c\xcc\x5c\x10\xc2\x51\x04\xc3\x5a\x22\x1c\xc7\x79\x02\x89\x06\xc0\xdd\x69\x67\x6a\xdb\x53\xb1\x36\x0e\x51\x6e\xe6\x13\xfd\x46\xe2\x2b\x2c\xb7\x8a\x5e\x34\x46\x87\x5b\x79\xe9\x2a\xb7\x78\xc6\x68\xc9\x53\xd4\x20\x64\xdd\x50\x6e\xd5\x73\xed\x77\xb0\x3e\x09\xb0\x56\xd6\xdd\x23\x10\xcf\x98\xb2\x2c\xb1\x63\x6e\x9e\xc2\x1e\x60\xd1\x6a\x80\x00\x0e\xae\x76\xed\x0a\xfd\x11\x2d\x28\x03\xe8\x66\xd3\xdc\xde\x86\x03\xe9\xc2\x50\x70\x7a\x7e\x1b\x12\x96\xfc\x74\x71\x7b\x15\xe6\x8b\xfe\xb5\x99\x6b\x20\x6c\xa1\xc9\x9c\xcf\xc7\xe8\xc1\x63\x52\x3d\x15\x6e\x6a\xaa\x06\x7a\x56\xbc\xa8\xdf\x56\xb6\x57\xe2\x74\x86\x5d\x27\x7a\x79\xe0\x88\xbd\xc8\xf1\x32\x23\xdd\x2e\xbd\x4b\x9b\x56\x97\xa1\xbd\xf6\xa4\x17\x74\x65\x00\x74\xf3\x50\x7e\x3e\x00\xb0\x5d\xab\xaf\xdf\xce\x00\xf8\xbc\x55\x8b\xc2\xee\xa0\xbd\xa1\xfc\x69\xeb\x01\x10\xc6\x09\xba\xc4\x13\x9a\x40\x78\x27\xf5\xf2\x91\x2a\x34\x0b\x71\x34\x66\x3e\xc5\xbc\xbe\x33\xd5\x1e\xb0\x39\x69\x94\xcd\x50\xca\x08\x4a\xb9\x0e\xe5\x39\x71\x38\xf0\xc1\xf0\x45\x30\x97\x9c\xa3\x55\x9a\x71\xf7\xc6\xd2\x7b\xcc\xee\x13\x73\x6c\xc3\xfd\x56\xcf\x34\xc1\x28\x3f\x09\x0e\xda\x5b\x72\x92\x1b\x5b\xf0\x62\xf2\x40\x18\x7a\x54\x86\x55\x1e\x9b\x18\x33\x0f\x66\xa5\x54\x52\xf6\x4e\x3a\x2c\x05\x4d\x4c\xd1\x45\xec\x02\x31\xb9\xab\x45\x60\x6a\x5a\x6e\xde\xc0\x3b\xc0\xcb\x43\x02\xc0\x66\x9b\x0f\x9e\xac\xf3\x1e\xe8\xc8\x15\xec\x01\xdf\x97\xa1\x31\xbd\x95\x5b\x96\x7c\x5b\x92\x68\x13\x90\xf3\xa5\x25\x4c\x6c\xf2\x66\xf8\x91\x34\x93\x15\x6f\x96\x4e\xa6\xd6\xb7\x52\xec\xed\x9a\x7e\x76\x4a\x35\x50\x1d\xfd\xc5\xe4\xe6\x75\xec\xa7\x4d\x36\x98\xf2\x74\xd1\xae\x8b\xcf\x03\xaf\xbd\x29\x01\x55\x03\xf7\xc0\x9e\xe0\x6a\xd7\xf7\xb2\x0e\x50\xbb\x4e\xea\xfd\xa2\xef\x45\x87\x9d\x87\xbc\x58\x82\xa6\xc9\x4a\x12\x17\x34\x31\x58\x56\xff\x9d\xfe\x9d\xe5\xc2\x07\x16\x66\x52\x38\x05\x41\x60\x62\x42\x90\xd1\x86\x34\xb6\xb4\x1a\x14\x0b\xd7\x67\x95\x47\xd4\x8b\xad\x9a\xd4\x20\x35\x79\x42\xe2\x85\x4b\x04\x2d\x66\xff\x16\xa6\x6b\x8d\x34\xda\x15\xc8\xf1\x09\x80\xb0\x55\xb6\x6e\x00\xce\x35\x20\x84\xdd\x64\xc0\x15\x6e\xe8\xc6\x8e\x05\x29\x70\x7e\x87\x62\x22\x31\x4d\x84\x9f\xf6\x55\x5e\xca\xe0\xe6\xd3\x9c\x4e\xd6\xf1\xba\xa1\x95\xec\x55\x5e\xf6\x57\x1e\xf9\x77\x3c\x38\x59\x16\x78\xe5\x81\xa3\xd4\x29\x48\x88\x84\xcb\x99\x32\xf7\xaf\x50\xd4\xda\xcd\xec\x6f\xd1\x2a\x80\xc2\x11\xfa\x71\xe5\xae\x45\x9c\x24\x7e\x4f\xb4\xf3\x2e\xaf\xf7\xab\x8e\x82\xa6\x1b\x3e\x3d\x1f\x1e\xdf\x9c\xfe\x32\x02\xe0\xcf\x2a\xcd\xd0\x23\x15\xca\x42\x18\x33\xf0\x07\x3a\x5a\x62\x99\x22\xfd\xc3\x01\xfc\x0a\xe0\x80\x22\x9b\x2c\xa8\xb2\xa7\xf2\x41\x06\xb4\x99\x03\x73\x8e\xd5\x03\x70\x6d\x5b\xd8\x59\x15\xc2\x7b\xcd\xf9\xd8\xc0\x0c\xce\x1b\xd9\x16\x59\xe6\x85\x2b\x9e\x16\x5b\xe6\xa9\xd9\xbe\x59\x53\x79\xbc\x7a\x70\x59\xf5\xa1\x0c\x33\x2c\x21\x0d\x96\x0a\x59\xb8\x4c\xea\xf3\x2a\xf3\x25\xd8\x05\xb2\xcc\x6a\xdb\x5d\xe0\x06\xf6\x91\x6a\x6d\xe7\xda\x91\xf3\x55\xaa\x60\x97\xb5\xfa\xcd\xbe\xe5\xb7\xe4\x61\xbb\xcd\x83\x40\x5d\xcc\xad\x1c\xa1\xed\x6f\x05\x0f\x81\x10\x22\x9b\x49\x51\x74\xb3\x54\x42\xf4\x35\x92\xc9\xaa\x02\xfa\x30\x66\xd5\x7a\x43\xf3\x1e\xdb\x36\x90\xba\xd3\x3c\x18\xb7\x22\x57\x6e\x14\xc6\x23\xf2\xd5\x21\xc7\xb4\x31\xea\x8a\x0c\x90\xc2\xb9\xb2\xfe\xd7\x1a\x2b\x00\xd4\x85\x4d\x30\x38\x15\xa7\xb2\x65\x98\x73\xed\xb9\x30\x57\xe6\xd3\x58\x50\x5b\xc6\x83\x21\x15\x74\xf7\x09\xac\xe0\xc4\x1c\x80\x87\x3c\x7d\x20\x9c\xd3\x58\x59\x58\x3e\x73\x40\xab\x99\x6b\xc1\xd2\x53\x23\xc3\x74\x21\x2b\x99\x42\xd8\xc4\xd9\xbc\xaa\x3d\x9b\xcd\x56\x90\x6e\x4e\xdd\xc9\x58\x4c\x38\x23\x58\xce\x9f\x2f\xbe\x78\xbc\xad\xcb\xf0\xd9\x62\x8d\xc7\x3b\xa1\xb2\xf2\xbb\x1b\xd2\x3a\xad\xed\x67\x56\xa0\x8b\x6f\x46\xe7\xe6\x1c\x4a\x25\x23\xaa\xc2\xd5\xe5\xc1\x9c\x8d\x9d\x15\xf2\x29\x75\xc4\xa0\xd7\x5a\x10\xce\xfd\xa4\xcc\x83\x90\x5f\xc3\xd4\x17\x6b\x16\xe9\xb2\x26\xf2\xd2\x86\x70\x52\xeb\xd8\x01\xfb\x9f\xfe\xc4\x7c\x50\xc3\x12\x59\x78\xac\x38\x5a\xdf\x30\x60\xab\xa2\x5d\x8d\x79\x9c\x10\x01\x2a\x9f\xd6\xf5\x0b\x5a\x5d\x93\xcd\x31\x66\x3f\xa5\x8f\xe4\x81\xf0\x01\xc2\x12\x2d\x52\x75\x93\x33\xe2\x17\x19\xc0\x61\x9e\xa9\x76\x69\x63\x74\x8e\x17\x24\x1e\xc1\x7d\xe0\x61\xb7\x8c\xe5\x63\xbc\x8a\x55\xa9\x3c\x90\x9e\xa2\x97\xc1\xba\xc0\xc7\x0c\x47\x92\x3e\x10\x1d\xdb\x01\xc0\x20\xb5\x03\x83\xfd\xff\x3b\xe7\xf3\xfc\xdd\x11\xba\x51\x17\x17\x15\x61\x7f\x3d\x48\x70\x5d\xdf\xc6\x6c\xc6\xd3\x6c\xe9\x34\xd3\x74\x02\x2a\xb1\xf6\x7d\x56\xf8\x3c\xa1\x33\xd6\xe1\x19\xe1\x58\x5d\x8b\xcd\x1b\x27\x2c\x39\xb0\x5f\xae\x80\x10\x5f\xe7\x6f\x20\x75\x5b\xb8\xb0\x92\x81\x0e\xc0\x36\xaa\xcf\xfd\xdf\x9d\xef\xb4\xc4\xcd\x26\x40\x29\x73\x26\x6b\x00\xb6\xd8\x50\x54\x78\x66\xbe\x35\x89\xab\x51\x42\xf9\x6b\x35\xd7\xa9\x16\x1c\xa4\x9a\x3c\xb8\x66\xed\xdb\x67\x9d\x15\x7a\x79\x99\xf1\x65\x0a\x30\xdb\x64\x65\xa1\x49\x06\x3a\xbc\x4c\x97\x99\x06\x5e\x53\x3f\xc8\x54\xd9\x21\x2a\xe4\x17\x2c\xa3\xb9\xd2\x07\x72\x08\xed\x2e\xb2\xe1\x02\x41\xfa\xb4\xf6\x47\xc5\x08\x8e\xfd\xb7\xd7\xd8\xd6\xad\x4d\x4b\x9d\x50\x67\xf1\x03\xf0\xaf\x24\xc9\xcb\x7f\x57\xf0\xd9\x55\xcf\x75\x40\xa1\xb3\xf3\x40\xeb\x16\xfa\xe1\x89\x52\xa0\x29\x43\xf9\x0f\x91\xf1\x20\x57\x1e\xe9\x8c\xd3\x8d\xd4\x40\xe3\x81\x20\x0f\x84\xc9\xdc\xa0\x58\xe0\x25\xa2\x4a\x6e\xab\x9b\x87\xcf\xc8\x00\x3d\xda\x3a\xc3\x08\xa3\x8c\x53\x7b\xc2\xc0\x0a\x68\x58\xbe\x50\x0d\xff\xa0\x23\x02\x1a\x13\x15\x61\x8f\x3d\xca\xb0\xbb\x47\x32\xc3\x2e\x6e\x0b\x2b\x9c\x50\x76\xaf\x5e\xa6\xb3\xda\xad\xb7\x97\x2b\xf9\x96\x72\x0b\x2a\x0d\xd6\x74\xed\xce\xdb\x62\x95\xeb\x09\x1c\xd7\x1d\x05\xca\x66\x1e\x1c\xbe\xda\x08\x6a\x93\x9d\x5e\xf9\x64\xbb\xe4\xfa\xca\x47\xad\x3e\xb1\xc9\xb3\x0d\x08\xe2\x8d\xa9\x3d\x03\xdc\x84\xc1\x09\x18\x8d\xc4\x4f\x54\x30\xaa\x34\xa4\x19\x51\x5d\xb5\xc0\x68\x28\xff\xe9\xfe\xd2\x9c\x40\x7a\x6a\xfe\x13\xa5\x7c\xcc\xf4\xe7\x03\x47\x1f\xa0\x7e\x90\x67\xfa\xd4\xe4\xc6\xba\xfd\x64\xb9\x40\x37\xd3\x2b\x6f\x86\xd7\x3f\xdf\x5d\x8d\xae\x2f\x6e\xaf\x8e\x03\xe5\xf2\xf8\xec\xf6\xfa\x66\x74\x55\xf9\xdd\xe8\xff\x8e\x8e\x6f\x6f\x4e\x2f\xce\xef\xfe\x72\x3b\xba\xad\xf9\xca\x36\x70\x36\xfc\x71\x74\xd6\xa8\xa4\x56\xf7\xa1\x8e\x5d\x15\x17\xca\x19\xe6\x24\x06\xf6\x52\x9d\xac\xcc\x12\xd1\x7f\x82\xf1\x7a\xa9\xe7\xf5\x70\x60\xff\xd2\x7c\x99\x87\xea\x28\x5b\xf7\x45\x7e\x0a\xc6\xcc\xf9\x97\x9c\xdc\x96\x78\x26\x6c\xdd\x8d\xa0\xb7\x1f\xd1\x70\x69\x6a\x6b\xa4\xe1\x4b\x25\x16\xf7\x79\x4f\xad\x5b\x11\xd6\x16\xd8\xc4\x85\xa9\x34\x51\x98\xe6\xb0\x41\x33\x26\xe8\x82\x71\xaf\xc4\x28\x67\xb2\x2d\x51\x9e\x9a\x46\x0b\xeb\x03\xa5\x79\xf4\xe4\x08\xdd\x2f\xc8\x9a\x59\x31\xbc\xa0\x91\xfe\xa0\x90\x38\x62\x52\x4a\x16\x84\xc9\x62\x8b\xc1\xb2\x86\x2d\xcf\x09\xfa\xf9\xcf\x79\xa7\xc0\x28\x36\x46\x66\x56\x62\xc0\xb2\x55\xe2\xb3\x2a\x42\x93\x0a\xd9\xb4\x55\xaa\x8e\xb8\xbf\x73\xf5\x34\x37\x12\x96\x37\x58\xdc\x57\x90\xee\x56\xca\x1f\x33\xfe\x2d\xdf\x58\xcf\xf4\x5b\xed\x3f\xb3\xf3\x7a\x07\x0b\xb8\xd9\x3b\x6b\xf3\xa4\xd6\xbc\xd2\x8e\x38\x29\xf0\xce\xb4\x7e\x5f\xc0\x5b\xd3\x5e\x2a\x43\xaa\x2b\x8d\x20\xad\x18\x53\x66\x08\x0d\x88\x63\xd2\xb1\xd4\x8e\x9a\xaf\xdf\x64\xff\xe0\x49\xfa\x10\xa4\x97\x2d\x34\xff\x7d\xa5\x26\xe6\xd9\x7b\xdb\xec\xc0\xb0\x98\x6b\x6b\x6d\xcc\x2e\x3e\x94\x2f\xa8\x5c\x83\xb6\xf6\x5c\x71\x30\xeb\x20\x54\x1b\xf8\x61\xbd\xd6\x9d\x23\xb6\x8d\x0a\x76\x02\x6b\x3a\x01\x2f\x7b\xce\xb0\xa8\x89\x7c\xc1\x50\xf3\x8d\xee\x41\x1e\x70\xd6\xaa\x99\xbb\x34\x3f\xd8\x7b\x14\x7d\xd0\x9e\x80\x0f\xde\x3d\xb1\x5a\xaa\x0b\x62\x31\x31\xa0\xdc\xe6\x85\xf6\xe6\x66\x2f\x99\x85\x2a\xeb\x8b\x6e\xae\xba\xb5\xed\xc2\x33\x14\x02\xad\x1c\xc4\x53\xd3\x0a\xe9\xd2\x1f\x6e\x6f\xa8\xe1\xda\xd9\xfe\xbd\x1d\xd1\xef\xf5\x96\xca\x6a\x10\xfe\x5e\x6b\x2e\xf7\x0e\x1d\x02\x27\xb9\x81\x13\x1b\xe2\x03\x81\x0e\x51\x42\xef\x09\x7a\x07\x91\xad\xe1\xe5\xe9\xbb\x01\x7a\xe7\xa3\xe7\xde\x75\x10\x7f\x39\x65\x98\xe9\xb7\xe1\x17\x02\xb5\x28\x00\x66\x7c\x02\x0c\x8d\xd7\xcd\xa1\x47\x35\x0e\xe8\x7d\x49\xb8\x66\xc1\x81\x68\xbc\x8b\xf8\x1a\x6f\xdd\x3a\xd9\x98\x1f\x99\xad\x99\x5a\x54\x7b\x65\x6c\xef\x8e\xa3\x90\xcd\x82\x70\x0d\x5a\x78\xe8\x98\xb0\x73\x6e\x1b\x51\xb3\x79\xfb\x48\x7c\xd5\xa8\x02\x6b\xca\x4e\x66\xe5\xa2\xac\xdb\x78\xaf\x6d\xbb\xb5\x88\x79\x0f\xab\x66\xc4\x60\x16\x6a\x34\xb1\x7e\x97\x3d\xed\x2e\xdb\x05\xdc\x23\xec\x5c\xf7\xdb\xec\x58\x2b\x44\x5e\x33\x36\xa5\x4e\x69\xb8\x56\x4e\x87\x14\x40\xcd\xa9\xe0\x8d\x43\xde\x59\xc4\x61\x17\xaa\x6f\x1d\x14\xc1\x57\xef\xcc\xc0\x1d\x95\x86\x4c\x0d\x06\xf5\xc9\x14\xe7\x1a\xcf\x65\x89\x6e\xa0\x6d\x97\x76\xa4\x73\xaf\x01\x3f\x18\xf0\x93\x09\x59\x98\xba\xb9\x8c\x3c\xea\xd3\xb6\x1f\xc1\x8f\x8a\x7d\xf8\xc2\xd1\x8f\x80\xaf\x67\x67\xb4\xfa\x77\xeb\xdd\xe3\xd5\x96\xf7\xee\xa8\xee\x0b\x85\x79\x7d\x13\xcc\xea\xca\xe7\xf5\xf4\x65\xdd\x18\xc5\x83\x49\x5c\xcf\x26\x0e\x35\x47\xb0\xa8\xa1\x12\x87\x9c\xfe\x78\x5f\x08\xc5\xcb\xa8\xf8\xb0\x73\x2f\xcc\x26\x5e\xe8\xcc\xfe\x50\x8a\xaf\x9d\xb7\xfd\x4d\x7b\xa8\xe8\x68\x0b\x2a\x71\x87\xca\x03\xe6\xb0\x6e\x22\x1f\x32\x21\x68\x9c\x80\x44\xb2\x8e\x6b\x75\xa8\xda\xf8\x5b\x8a\x70\xa0\xc0\x65\x56\x18\x8b\x81\xca\x83\x9b\x38\xac\xc8\x52\x2f\x14\x47\x0f\x84\xc9\x9d\xe8\x0b\xd0\x44\x05\x6a\xb1\x9d\xd1\xaf\xb9\x70\x4e\x4f\x72\x31\xe1\xd8\x23\xbd\x68\x81\xe4\x38\x02\xd2\x2c\x5d\x0f\xca\x54\x81\xaa\x73\x74\xaa\xa1\xb5\x5b\x22\xf8\x69\x79\x5e\xd6\x40\x13\xcc\x6c\xe7\xe4\x5f\x79\xd8\x33\x8d\xa0\xcc\x68\xa7\x44\x9a\xe0\x66\x66\x31\x24\xbc\x7b\x14\xee\xba\x0a\x78\x71\xcd\xf5\x3b\xe7\x58\x14\x5f\xb9\x76\xc9\x37\xc0\xdf\x07\xcd\x7c\x26\xf2\x04\x4b\xbc\x13\x5e\xdd\x0e\x70\x48\xe8\xc8\x2d\x4f\xd6\x56\xa9\xb9\xd6\xc4\x63\x19\x4f\x72\xc3\x06\x23\x75\xa1\x1d\x79\x51\x70\x40\x29\x07\x33\xaa\x3b\x53\x23\x07\xba\xd7\xd5\x79\xca\xae\x9a\xde\x6c\x84\xa6\x17\x92\x67\x11\xa4\x26\xab\x13\x57\xbd\xb2\x86\x93\x01\x64\xa7\x71\xd6\x8b\x20\xd3\xc6\xa6\xe4\x41\x70\xbd\xf2\x5e\xaf\xdf\x3f\xdb\xfa\x00\x42\x0e\xc7\x27\x73\x05\x04\xd2\x3b\x18\x40\x9f\xd0\xb1\xa9\x81\x6f\x68\x3a\xdc\x0e\x84\x7c\x2b\xc9\x29\x81\x44\xe0\xc4\x65\x0f\x84\x92\xce\xf8\x7c\xd6\x6e\x2c\x75\xad\x9e\xb4\x34\xfb\x3d\xab\x34\xf7\x3a\xe4\x79\x05\x5e\xb8\xc9\xa3\xba\xc4\x70\x5c\x1a\x4b\x3b\xec\xaa\x92\x20\xa8\xce\x4f\xb6\xb7\x1b\xea\x05\xf9\x7b\xbb\x9d\x57\x55\x77\x55\xa3\x6b\x94\xc0\xc8\x04\xe1\x3a\xab\xdc\x21\x81\x2b\xa8\xb5\x6a\x83\x20\x95\x85\x13\x9b\x82\x92\xa5\x02\x8e\xd5\x9a\x86\xf6\xac\xa0\xef\x1f\x70\x42\x95\xc6\x77\x64\x13\x3f\xde\xa3\xff\x02\xaa\xac\xff\xac\x63\x8e\x9d\x11\x7e\x17\x67\x41\x44\x71\x5d\xa7\x2e\xd5\x43\x27\x99\x5c\x55\x27\xd0\x04\x06\x4f\x82\xa3\xfb\x2e\x49\x45\xea\xf7\x35\xcd\xae\x3f\x81\x9e\x8b\x2d\xbc\x08\x6a\x52\x76\x48\x21\x65\xc7\x04\x60\xfc\xf7\xeb\x60\x09\x03\x26\x35\xcf\x5b\x60\xe2\x46\x43\xd5\xe7\x23\xf4\x49\xb3\x61\xc0\xa5\xa6\x5f\x11\xa5\x59\x12\x8f\x19\xf9\xa6\xcc\xfd\x00\x3a\x51\xc1\x60\x60\x20\x3c\xe6\x4d\xd5\x92\xa0\x40\x56\xb7\xd5\x0d\xf3\xe2\xf9\x55\xe5\x35\x2d\x0f\xb9\x7a\x93\x6d\xa5\xcb\xef\x49\xf9\xd2\x63\x5b\xaa\x7f\x80\xdc\x20\x0b\xdb\x22\x21\x0f\x84\xe3\x19\x31\xe5\x4d\x3d\xb6\x0a\xbc\x41\x35\xd3\xcb\x52\xf4\xf7\x75\x97\xe4\x2d\x05\x95\x9f\x76\x1b\x9b\x82\xc6\x6b\xf5\xa2\xf6\x4e\xf5\xf6\x32\xed\x26\x5d\x1e\x6a\x86\x74\xe6\xea\x0c\x5b\xa5\x27\x4a\xb0\x10\x74\xba\xf2\x0a\x08\x5b\x6d\x42\xc7\x75\x1d\x29\x4a\x48\x9e\x53\xa9\x6b\x04\x60\xb4\xdd\x20\x9d\xb6\x07\x1d\x18\xfb\xd9\x46\xc0\x69\xec\xa3\xf8\x81\x15\xb2\x84\x7a\x6c\x49\x5c\xb9\x2d\x16\xc1\xf4\xcc\x44\xe4\x77\xd7\x31\x0b\xf2\xdb\x0c\x32\xd5\x88\xa2\x5d\x2b\x1f\x8a\x6b\x7f\x42\x12\xb2\x27\x75\xad\xca\x1b\xa1\x71\xae\xf3\xfc\xce\x67\x5b\xff\xed\xfa\xb3\x41\x5c\xaa\x06\x77\xbb\x83\xf5\x7e\xe1\xe8\x46\x4d\xef\x3e\x93\x36\xde\x9d\xb5\x7b\x71\xa3\x73\x55\x27\x1c\xb7\x98\xec\x9d\x85\x34\x9f\x78\x40\x75\x6b\x7d\x4d\xa4\xb0\x8a\xab\xb7\xd3\xb5\xcf\xc4\x9c\xd3\x43\x0b\xc1\xca\x01\x4d\x1d\x16\x7c\x4f\x82\x6d\xa6\x77\x57\x86\x93\xe4\xe9\xc4\xe1\xfa\xe5\xea\xb2\xdf\xf2\xfe\x6e\xe0\x11\x35\x6d\xec\xe2\xf6\x7f\x5a\xd5\xac\x34\x31\x2d\x8d\x8b\xeb\x32\xdd\x45\xf7\x44\x31\x9e\xb2\x3b\xf2\x4d\xd9\x9c\x62\x53\x1c\xc5\xad\x20\x02\x0d\xbf\x5e\x23\xb1\x62\x12\x7f\xfb\x88\xc6\x07\x5f\x34\xa7\x27\xfa\x29\xcd\xb8\x40\x27\x78\x75\x98\x4e\x0f\x17\x29\x93\x73\xf4\x05\xfe\xd7\x7c\xf4\x48\xc8\x3d\xfa\x2b\xc1\x7c\x7c\x30\x66\x90\xac\x6a\xea\xa7\x39\xde\x8d\x39\x86\xb0\x9a\x30\x74\xa1\x7f\xf8\x93\xe5\x0b\x55\xaf\xf9\xe1\xc3\x1f\xfe\x84\x7e\x07\xff\xef\xff\x45\xbf\x1b\x1f\xd4\xdc\x4b\xdd\x72\x20\x73\x42\xd7\xca\xd6\xee\x69\x74\x9f\x4e\xa7\x77\x92\x2e\x88\x26\x0b\xb8\xc3\xbc\xb6\xc2\x52\x47\x44\x28\x35\x1c\x06\x9a\x85\x2d\x4f\xd3\x32\x2f\xd5\xe1\x47\xab\x84\xb9\xc2\xdc\x3a\x6b\x8a\x85\xb9\xfb\x54\xc0\x53\x24\x46\xe9\x74\xda\xc5\x07\x68\xb3\x42\xca\x0c\x49\x79\x20\xdb\x67\xe4\x70\x46\x9d\xef\x8a\x48\xd7\x31\x9e\x96\x7d\x24\x6f\xcc\x2a\x86\x01\x3e\xa9\x45\x7c\x9d\xf2\xad\x44\xf8\x3d\x29\xf9\xcb\x3a\x39\xc0\x2d\xb9\x80\x4f\xec\x02\x11\xb2\x94\x3b\x58\xb5\x0e\x68\x98\x4c\xfe\x31\xbb\xb9\x38\xb9\xf8\xfe\x1e\x4b\x9e\xce\x30\x7b\xff\x11\x0d\xe3\xd8\x14\xd9\x40\xc6\xe9\xa7\x36\xcf\x9c\x70\x72\x84\x7c\xc6\x7c\xa6\x26\xae\xd2\xa3\xed\xeb\xc3\x94\x93\xa8\xca\x70\xad\x3e\xec\x6a\xfa\x4e\xdc\x23\x35\xd0\xa3\x80\x41\xc1\xbd\x20\xcf\x76\x86\xb1\xde\x93\x95\x29\xaa\x57\x1c\xef\x26\x75\x43\xae\x97\x24\x52\xd6\xaf\x2e\x34\xc4\x63\x02\xd3\xa3\x4b\x35\x53\x21\x6d\xf0\xb5\xf2\x50\x85\xc5\x93\xb6\x41\x71\x16\x33\x51\xb6\xd8\x29\xba\xd6\x56\x2e\x1b\x6c\x36\x53\xa1\x88\x1b\xc7\x4a\x6c\x6c\x08\x47\x34\x75\x5c\xfc\xf2\x13\x99\x20\xfc\x70\x8a\x23\x35\x7b\x85\x72\x50\xbe\xa8\xaa\x9a\xc7\x1b\x2c\xee\x77\xeb\x68\xda\x9a\x13\x80\xc6\x79\x0e\xad\xde\x8d\xe5\xda\xa3\xe6\x12\x91\x58\xdc\xd7\x41\x50\x3a\x93\xee\xaa\xa9\xb0\xe8\xac\xa6\xfe\x99\x96\xbd\x54\x21\x53\x16\x01\x14\x53\x0f\x45\xbf\xc0\x4b\x5d\x9a\x01\x2e\x18\x9a\x90\xd8\x27\xb0\xa8\xea\xff\xba\x6d\xa0\xa1\xf8\x9e\x9f\x88\x43\xfa\x81\x52\x9b\x63\x88\xcd\x61\xb6\xd2\x07\x49\x5d\x58\x58\xdc\x0b\x47\x4c\x81\xc4\x02\x27\xc9\x00\x71\x92\x41\x6d\x8d\x01\x12\x24\x99\x1e\xda\xec\xa7\x18\x25\xe9\x8c\x46\x38\x41\x93\x24\x8d\xee\xc5\x98\xa9\x1b\x84\xcd\xf4\xc5\xb7\xe4\x69\x44\x84\xf0\xae\xdc\x3c\xfc\xba\xe4\x69\x9c\x45\x9a\x3b\x57\x73\xd7\x53\x21\x69\x54\x20\x4c\x55\x12\x11\x4a\x49\x45\x18\x0c\x0c\xa0\xc4\x58\xe8\xda\x90\x9c\x12\x70\x82\xc9\xcc\x96\x37\x81\xec\x0e\x9c\xd0\x7f\xea\xda\x64\xf8\x81\xa6\xbc\x6e\xf7\xee\x00\x50\x67\x97\xe7\x4e\x86\xa7\x61\xcd\x7e\x3e\x36\x8f\xc1\x19\x6a\xda\x31\x57\xe1\x76\x76\xbb\xc1\x6d\x73\x97\x84\x61\x37\x45\xce\x2f\x6b\x13\x5d\xf4\x4f\x6c\x58\x75\xcf\x70\x57\xd0\xe5\x1a\xb4\xd5\xba\x3d\x7d\xac\x29\x5b\x4d\x6e\xa9\xe7\x80\x83\xd6\x2d\xa9\xa5\xc9\x92\x57\x57\xc4\x83\xda\x24\x76\x7a\xd4\xdc\xab\x6b\x64\xe0\x78\x54\xb1\x40\xcb\x24\x9b\x51\x96\x97\xc8\x53\xf2\x70\xcc\x80\x50\x45\xbd\xa4\x40\xca\x59\xde\x51\x7b\xcc\x9d\xba\x1b\xe1\xd8\x91\x42\xd5\x4e\x72\x97\x4d\x1e\xee\x5b\x5b\x4a\x6e\x63\x08\x3e\xaf\x0a\xd7\x9b\x9a\xd1\xea\xdb\x07\x9a\x13\x03\x79\x2f\xaa\x5d\xdb\x8d\xbd\x14\x85\x5e\x95\x70\x2c\x74\xaa\x37\x19\xf4\x0d\x42\x95\xa6\x0e\x48\x5d\x8f\x5e\x04\x19\xdc\xb4\x90\x97\x58\xea\x5a\x0e\x64\x91\x4a\x4d\x87\xa1\x99\x29\x0c\x61\x85\x21\xbc\x98\x24\xe9\x04\xee\x15\x20\xad\x80\x71\x07\x0c\x60\x66\xdc\x24\x46\xdf\x7b\xd7\x84\x83\xeb\xbc\xaf\x8b\xb8\xef\x0e\x9e\x5c\xcc\x78\xab\x05\x29\x87\x59\xec\x47\xe8\x32\x77\x37\x15\x47\x35\xc5\x4a\x72\xd7\xd5\x75\xed\x06\x69\x0e\x56\x7f\x07\x90\xe6\xc2\x30\x6a\x08\x2e\xd2\x5d\x94\x9e\x6c\x1e\xd4\x59\xda\xde\x8e\xd4\x00\x46\xad\x7f\x04\x8b\x63\xb7\xd9\xaa\x6a\x89\xf6\x0b\xae\x5d\x60\x41\x78\x59\xb8\x76\xa1\x33\xfb\x0c\xd7\x2e\x74\x75\x7f\xe1\xda\x15\x1d\x6d\x01\xd7\xd6\xee\xf6\x3b\xb5\xa9\xdb\x09\x85\x25\x4f\x65\x3a\xc9\xa6\xd7\x70\x9b\xb4\x61\x64\xd4\xc2\xd9\xea\x39\x26\x4b\x06\x7a\xab\x75\xa0\x6e\x8a\x98\x8f\xea\x2e\x0c\xb9\x25\xaa\x3b\x10\x69\x3d\xaa\xdb\xa1\xba\xcb\xf3\xb2\x8f\xa8\xee\xc2\x9a\xb7\x43\x75\x57\x2d\xf9\x06\x31\x8c\xa0\x99\x37\x83\xea\x2e\xcc\xe8\x3e\xa3\xba\x0b\x5d\xdd\x1d\xaa\xbb\x7a\x65\xbb\xa1\xba\x2b\xaf\xff\xfa\xfd\xb3\x2d\xe6\x0e\x48\x7f\x9e\x19\xd5\x1d\x0c\xa0\x47\x75\x6f\x49\xd3\x1f\x6e\x41\xd3\x03\x60\x9d\x35\x40\xe1\xa2\xac\x6b\xc0\x75\x83\x4a\xbb\x83\x1d\xf5\xb4\xb1\x55\xf0\x42\xb5\xd5\xba\x87\xc1\x3c\x08\xc3\x83\xa8\xae\x3f\x8b\xb5\xf5\x4a\x59\xf6\xf4\x14\xdb\x12\x07\x14\x26\xd9\x79\xaf\x60\xe1\xea\xb6\x5c\x05\x7b\xd7\x16\x1b\xd0\x50\xe6\x6d\xca\x5b\x56\x5f\xdd\x4e\x13\xd2\xed\xa6\xd9\xef\xfc\xff\xd6\x4e\xc8\xb6\xc5\x0d\xa2\x65\xb6\x09\x3a\x76\xb6\xd9\x63\x0b\xb2\x48\xf9\xba\xf0\x63\x8d\x39\x9b\x72\x3c\x5b\x87\xc8\x6d\x3b\x7b\xdb\xce\x9a\xe5\x10\xec\xe6\xdf\xb8\xb1\x4f\x35\x1a\x5c\xb6\xfa\x83\xef\x01\x07\x9d\xb4\x32\xc6\xe2\x42\x5c\x1b\x46\x51\x6a\x12\x0f\xca\x2f\x04\xf7\xaa\x20\xfc\xd0\xcb\x24\x08\xfd\x9a\xe5\x1e\x04\xf3\x6e\x15\xb4\x2d\xa6\x3d\xe3\xb5\x31\xfe\x16\x32\x76\xa8\xd9\x67\x95\xf6\xe7\x13\x26\x14\x77\xda\x64\x55\x81\x47\x6b\x67\x52\xeb\x9a\xbc\x5d\x1c\xc3\xf4\x9f\x6e\xa1\xa7\x34\x21\x08\x47\x11\x11\x50\xd4\x19\x19\x0c\x88\x66\xd9\xcb\x78\xb2\xcd\xaa\x52\x36\x83\x71\x2b\x65\xd2\xab\x02\xe0\x36\x8f\xbe\x33\xe6\x3c\xcd\x66\x73\x6b\x65\xd9\x42\x71\x55\x6b\xf9\xb5\xcc\x2a\xfb\xca\x02\x02\x85\xd2\x31\xc5\x4d\xd0\x3d\x62\x6a\xa7\xe4\x99\xa3\xa6\x55\xe3\xe8\xb0\x3b\x02\xec\x50\x7e\xfc\xad\x1f\x5b\x6b\x25\x90\x29\x34\x66\xc3\x00\x65\x64\xeb\x8c\x4d\x56\x39\x5a\x41\x5f\xed\xfe\x26\x83\xca\xa8\xc6\x7a\x81\x52\x24\xea\x2f\x50\x43\xe0\x21\x13\x4f\xb5\x31\x53\x00\x5a\x90\xf8\x10\x47\xab\x28\xa1\x91\xa7\x92\xce\x38\x5e\xce\x9b\x76\x62\x0f\xfb\x7f\x29\xd8\x7f\x4b\x86\xe9\x46\xa8\x88\xcf\xd1\xfc\xaa\xd3\x11\xca\xdb\xb1\xcf\x44\xe8\xb0\x25\xb7\xeb\xcf\xce\x77\xe2\x6b\x4a\x8c\xa8\xdf\x79\x2f\x0c\x42\x2f\x77\xec\x25\xd3\x21\x2a\xee\x8b\xcd\x66\xf7\x65\x93\x20\x5a\x0d\xa3\x16\x6a\xd8\x22\xff\x21\x28\x08\xe4\xee\xfd\x35\xd9\x10\xf5\xb3\xb4\x27\x7b\x70\x97\xf8\xa8\x3a\x69\xb3\x1e\x23\xd5\x45\x55\xec\x06\x97\x72\x0b\xf5\xba\x20\x53\xae\xdb\x1b\xc2\xa6\x86\x1e\x71\xf9\x3c\x4d\xa0\x24\x71\x30\x5b\xee\x05\x0e\x79\xe1\x26\xc8\x2e\x06\xd4\x9f\x04\xd5\x35\x27\x9b\x68\x02\x47\xb9\x45\x7c\x1b\x00\xa9\x35\xf6\x50\x47\x90\x94\x3f\xa9\xdb\x01\xa5\xb6\xb4\x6f\xba\x81\xa5\x9a\xea\x89\x16\xd7\x7b\x83\xb0\x5e\x89\xd8\xa3\x0f\x0a\xbb\xa0\x70\xf5\xdc\xec\x63\x60\xb8\x5c\xa1\xaf\x65\x70\xb8\x6e\xf9\x77\xb1\x93\x76\x18\x24\x7e\xe1\xd0\x6b\x63\xd4\xd5\xdb\x60\x2f\x1b\xcb\x6e\x0a\x63\xaf\xdf\x66\x95\x71\xb9\xfa\x35\xed\x14\x1e\x5e\x93\xe3\x60\xdf\xb2\x6d\x0c\xcf\xe1\xee\x9f\x34\x8e\xe7\xfc\x8c\xde\x13\x2d\x63\x79\x79\x62\x40\x1f\xcf\x7b\xd2\x78\x5e\xc5\x44\xaf\x8f\xe9\x05\x0a\xc2\xb3\x06\x62\xec\x9b\x9f\x23\x18\xb3\x4e\xa9\xca\x26\x77\x4f\x7e\x8e\x2a\xc7\xdc\xf6\x38\x7d\x75\x6b\xab\x2f\x3f\xae\x36\xcd\x84\xc4\xba\x82\xbb\x4c\x51\x0a\x89\x57\xf9\x16\x60\x44\x6f\xd6\xbc\x0a\x37\x86\xc2\x26\x34\xd6\x80\xcc\x25\x06\xae\x17\x77\x87\x6a\x94\xde\x98\xc1\xfa\x26\x09\xe1\x56\x67\xe7\xe8\x7b\x41\xa1\x3a\x7a\xae\xc7\x73\x14\xa7\x44\xb0\x77\x52\xd7\xd6\xc0\x6c\x85\xee\x59\xfa\x98\x90\x78\x06\x2b\x54\xec\xcc\x21\xa2\x64\x80\xa8\x74\x8f\x71\x82\xa3\xb9\x12\x97\x63\xd5\x77\x70\x6b\xeb\xcb\x9e\x98\x67\xb9\xc9\x3c\xf7\x4c\x06\xf1\xfe\x08\xa1\x53\x86\xa6\x58\x19\xc5\x22\x9b\xe4\xed\xc7\x29\x14\xac\x57\xb7\xbf\x3f\xf0\xbc\x91\x27\x0b\xc4\x55\x06\xde\xda\x68\xaf\x5b\x14\x4e\xfe\x7a\x71\xf5\xf3\xa7\xb3\x8b\xaf\x77\xe5\xfa\xc9\xf9\x57\x57\xc7\x3f\x9d\xfe\x32\x3a\xb1\xe3\xae\xac\x52\x57\xd7\x50\x15\xa6\x57\x73\x9b\x95\xcc\x5b\x2a\x72\x26\xa1\x94\x49\x9e\x26\x88\x4a\x81\x94\x2e\x3f\xa1\x09\x95\x2b\xeb\x12\xb8\x3d\xb5\xd5\xe6\x0a\x6f\xfd\x88\xf2\x82\xcd\x03\x38\xc0\xc5\x4c\xb2\xbc\xe6\x8e\xa9\x7c\xcc\x62\x5d\x19\x1d\xc5\xe4\x81\x24\xe9\x32\x2f\xea\x56\x1a\xff\x47\x34\xe4\xd1\x1c\xb2\x73\xc2\x66\x59\x8a\xd4\x79\x20\x5c\xf7\x55\x57\x43\x36\x1d\x6d\x58\xb6\xd7\x53\xb6\x38\xf7\x40\x3c\x71\xcd\xe2\x70\x47\x37\xdb\x09\x4d\x15\x8b\x37\x33\x30\x9b\x18\xfb\xbd\x78\x5a\x47\xba\xfe\xe2\x72\xbf\x9c\xd7\x4c\xad\xff\x30\xa1\x78\xab\x68\xda\x03\xde\x26\x7f\xf8\x4b\x26\xa4\x2e\x1c\x09\xe5\xc3\x8d\x08\x30\x99\x10\x8e\x2b\x01\xa8\xc5\x34\xef\x00\x4b\xe3\xda\x12\xfb\x85\xa1\x74\xed\x4b\x1e\xfa\x34\x8c\x66\xc6\x8f\x02\xed\x6a\x19\x1d\xa7\x8f\x4c\x48\x4e\xf0\x02\x3a\x22\x4c\xfd\xdb\xa9\x0e\x72\xea\xb9\xa6\x5c\xab\xed\x5d\xf6\xda\x19\x65\xf7\xea\x4a\xc8\xd9\x21\x52\x48\xbd\x57\x6f\xae\x58\xb4\x1f\x29\xc3\x7c\xab\x12\x7b\xba\x7c\xc5\x46\xfe\xbf\xc9\xaa\x8e\x3e\x43\xe2\x75\x5c\x19\xed\x67\x64\x88\x04\x5d\x28\x65\x5a\xbd\x0e\x81\x7e\xa4\xb9\x28\x31\x92\x78\xa6\xe6\x67\x4e\x92\xa5\xc7\x2c\xb7\xc4\x5c\xba\x3b\xc4\xa4\x8c\x47\xe9\x62\x91\x31\xc8\xf2\x37\x0e\x84\x47\x93\x1b\x6c\x8e\x45\xde\xf8\xd1\x98\x9d\xca\x77\x42\x5d\xca\x29\x9b\x25\x2b\x84\xe3\x07\x2a\x72\xa6\x0e\x75\x55\x64\x0b\xc2\xcd\x2b\xa8\xd0\x75\x54\x74\x5d\x7a\x84\xed\x5e\x51\x7d\x53\x77\x88\xa5\x39\x35\x0a\xe5\x0c\x4d\xc8\x54\x69\xea\x4b\xcc\x85\x75\x5c\x56\x38\x1d\xcd\xe2\xc6\x6a\xae\x5e\xec\x4c\xfe\xe2\x1f\x3b\xb4\xc8\x4f\x28\x36\x86\xf0\x87\xe2\xf9\x34\xb3\xde\x70\x36\x27\xa5\x41\xa1\xe6\x7b\xc9\xcc\xc2\x49\xa9\x46\x4b\x51\xee\xdb\x52\x31\x02\x0e\x8d\x7a\x8f\xb5\x82\x74\xe7\x3a\xb9\x98\x0b\x03\x34\xbd\xd6\x7e\x43\xff\x6c\x9a\x72\xc5\x4a\xf6\xd3\xc8\x18\x5c\x39\x19\xb7\x7e\xba\x7e\x69\xdb\xb2\x24\xd7\x2d\xaf\x88\x70\x52\x5e\xe1\xfa\xb9\xbc\xd6\xbf\x6f\x96\x7d\xe6\xb8\xe9\xb6\x1b\xb1\x53\x51\x9a\x24\x5d\xc8\x38\x0a\x23\x3f\xce\x1f\x6f\xee\x51\xfe\x1e\xb5\x00\x76\x2d\xe0\xd4\x68\x02\x11\x9c\x18\x73\x44\x48\xb3\x4a\xfe\x8f\xb4\x0c\x5d\x21\x96\x2d\x26\x84\x8f\x59\x3a\x05\x8e\x96\xa4\xce\xd7\xb4\xe4\xe9\x82\x76\xc9\x66\xbc\x80\x65\xbe\xb2\x3a\xc1\x1a\x17\xb8\x8d\x23\xab\x53\x64\xb6\x97\x79\xa3\x2e\xcd\xc9\xb4\x71\xd2\x70\x86\x16\x78\xb9\xd1\x84\x97\xca\xd3\x97\x66\x7a\xa1\xfd\x5d\x66\xf6\x80\x42\x81\x00\xf3\x09\x4c\xf2\x23\x5e\xe5\x08\xb3\x2e\xc7\xe9\x5a\x1b\x30\x44\xe4\xe5\xbd\xcd\x2e\xf3\x4e\x8c\xd3\xa9\xf4\x7a\xe9\x59\x68\x73\x82\x8e\xab\xb6\x61\xe7\xb3\x64\xc7\xfc\x94\x96\xb9\x7f\xec\x7d\xa3\xbc\xcb\x6d\x18\x1e\x06\xaf\x45\x04\xdd\x69\x9e\xaa\x2f\xc1\xce\xd9\xf9\x1c\x15\xda\x41\x5a\xd5\xb5\x01\xb6\xcb\xea\x56\x9f\x61\xce\xcc\xb6\x6e\x35\x59\x5b\x82\x56\xbb\x95\xa6\xb1\x6f\xac\xa8\x44\xe3\x9d\xf7\x2e\xe5\xae\xd6\x1b\x33\x53\xa5\xbb\x68\xb5\x32\x9d\x4e\x93\x14\xc7\xca\x5a\xd2\x80\x97\x29\x4d\x88\x38\x42\xa7\x15\x4e\x08\xe9\x55\x8b\xd3\x39\xf1\x10\x3e\xb5\xfa\x4e\xc6\xa9\x31\x02\x09\x27\x4e\xab\x41\xd4\x30\x95\xe7\x7e\x4a\x4e\x54\x9f\x61\x03\x83\x26\x3f\x4f\x1f\x75\xac\x92\x53\x25\x65\xb4\x7a\xa9\x0c\x16\xed\x10\xa2\x52\x3b\x30\x63\xb2\x24\x2c\x76\x0f\xa4\xba\xf6\x2a\x8e\x74\x61\xdc\xbc\x57\x35\x4b\xba\x0b\xba\xa4\xf6\xc0\x1e\xfb\xd6\x42\x01\xea\xef\xfc\xff\x16\x7b\x78\x13\xb6\xde\xb9\x77\x4e\x2f\xef\x1e\x11\xfc\x04\x8f\x5a\x0f\x34\x46\x53\x4e\x20\x48\xb1\x70\x60\x62\x16\x13\x2e\x64\x9a\xc2\x0d\x75\x7d\xf2\xf3\x87\xdb\x53\x44\x64\x04\xe4\xcd\x63\x16\x89\x87\x81\x52\x68\xff\x91\x11\xa9\x3e\xae\x63\xee\x5a\x10\x26\x40\x12\xd0\xb6\x24\xfe\x76\x62\xd4\x7f\x4f\xc2\xe7\x1b\xb6\xbc\x57\x23\x5b\xb3\xdc\xc1\xde\xb5\x6c\x3a\xb0\x4d\x81\xc2\x21\x28\x0e\x1a\xac\x47\x9a\x26\x04\xb3\x51\x15\x65\xe2\x06\x10\x12\xf6\xf7\x8c\x75\x54\x93\x8e\xf3\x87\xbc\x5e\xd4\x68\x61\x8b\x25\xe6\x54\x74\x6b\xde\x3e\x53\xd9\xfa\x3a\x21\x62\xe7\x15\xa3\x89\x9e\x29\x94\xb3\x4b\x22\xc9\x09\x01\x11\xe2\xf6\x93\xb9\xeb\xe1\x96\xf7\x66\xc3\x7b\xe8\x68\xcc\xbe\xd8\xa0\x49\xfe\xa9\xc8\x4b\x62\x2f\x26\xc0\xd4\x94\x81\xcd\x14\xb6\x02\xcd\xc6\x54\xb8\x0f\x80\xc0\x43\x64\x89\xd4\x7c\x6a\x53\xca\x70\xe2\x3a\xaa\xbf\xa9\x92\x12\x1c\xb3\x68\x0e\x45\xfb\xb6\xf1\xb8\x4d\xef\x48\xd2\x45\x77\x3c\x9d\x8e\x12\xa1\xf6\x77\x74\x5f\x73\x3a\x7f\x6f\x79\x18\x3b\x2c\x50\x3e\x18\xd0\xdc\x2c\xab\x94\xb6\x4a\xb4\x73\x3f\xd1\xec\x6c\x04\x81\xf3\xaa\xe8\x72\xd5\x08\x6c\xb5\x8a\x46\xb7\x36\x4e\x2d\x70\xbe\x5a\x5f\xfe\x04\xde\x82\xb0\x1c\x33\x9e\x31\xa0\x61\x70\x41\x37\x8c\x04\xe1\x54\x47\xbf\xa2\x94\x69\x1d\xc0\x38\x4f\x66\x4a\x4c\x28\xcd\x0f\x1c\x53\x29\x03\x8b\x2a\xcd\x84\x92\x21\x78\x41\xa4\xba\xa0\xbe\x07\xa2\x50\x1d\xf6\x1c\xa0\x25\xa7\x0b\x49\x1f\x88\xe3\x4e\xf1\x57\xae\x72\x33\x6f\x13\x12\x5f\x12\x8e\x65\x5b\x2a\x96\xaa\xb7\x5f\xd8\x16\x2a\x0f\x6c\x42\xa6\xf2\xae\xd2\xef\xd2\x60\x62\xa8\x16\x59\x5c\x03\x3d\xa5\xb3\xf9\x0e\x5a\x6c\x7f\xea\xff\x68\xfc\x62\xea\xa8\x7b\x37\x3e\x4f\x53\xa9\xf7\x5b\x2e\x93\x90\x9d\x4d\x50\x17\xcc\x4b\xb5\x77\x5c\x2d\x2a\x85\x55\x55\x67\xf8\x9e\xa5\x8f\xcc\xd9\xd6\x4a\x6d\x18\x61\x60\x14\x74\x82\xc5\x04\x37\xf5\xa9\x5e\x7b\x9e\x03\x8a\xb2\x3d\x49\xfe\xf2\xab\x12\x03\xed\x6a\xb2\x42\x39\x0d\x5d\xf0\x5c\x9b\xeb\x4d\xdb\x9d\xf6\xec\xea\x01\x1b\xe6\x25\x49\x96\xc6\x36\x36\x85\x6b\x1d\x32\x0c\xdc\xab\xea\x55\x47\xe8\xab\xd5\xe4\x20\x76\x9c\xd3\x27\x4a\xed\x38\x49\xf0\xca\x96\x77\xaf\x9a\xd8\x5d\x64\x05\xed\x3a\xa0\xdb\x3c\xc1\x0e\xee\x5d\x31\xcb\xc1\x85\xca\x98\xb6\xb0\x5a\x02\x4e\xcc\x85\x6d\x1e\xba\x26\xcd\x40\xa6\x4f\x40\xc5\x24\x09\x57\xd7\x52\x26\x08\x4a\x59\xb2\xfa\x7f\xf4\x62\x41\x36\x90\x8b\x77\x19\x02\x20\xe3\xc3\x54\xe7\x07\x7c\x70\x2c\x95\xea\x52\x9c\xd2\x24\x01\xbf\xfe\x11\x1a\x02\x99\x20\xd0\xc4\x29\x45\xde\x46\xfc\xe9\x8c\xa5\xeb\xe2\x92\x35\x9b\x29\xf2\x36\xd3\x75\xfd\x66\x12\xb0\x9b\x5c\x50\x65\x47\x3b\x6a\x07\xb8\x5d\x25\x5b\x70\x39\xf7\xb4\x3d\x5a\xb7\xc3\x65\xfc\x12\x31\xfe\x52\x77\x7d\xd3\xb8\xba\xeb\x9f\x33\xcc\x31\x93\x10\xb9\x36\x94\xd3\xdc\xa0\x43\xd4\x0e\x44\xe4\x1b\x40\x3c\x98\x36\xec\xe0\x23\x7f\x71\xad\xd3\x7d\x46\x1f\x08\x43\x34\x1e\x20\x7a\x44\x8e\x06\x86\xb2\x5b\x64\x93\xfc\x97\x73\x2c\x10\x1e\xb3\x12\xfa\xf4\x08\x0d\x13\x91\x9a\x27\x08\x8b\x12\x20\xef\xf4\x82\xec\x6e\xe7\x1b\x37\xd1\x64\x05\x10\x75\x58\xca\xbc\xf9\xd4\x7c\xe1\x3d\x38\x66\x58\x68\xaf\x74\x02\x27\x3d\xff\xbc\x8a\x9c\x37\x88\x54\x3c\x21\x39\x41\xe9\x1a\x7a\xb2\x45\xd2\x2c\x94\x4d\x0b\x04\xbf\x80\x85\xc9\x51\xc1\x63\xe6\xb6\x33\xfa\x1e\xcb\x84\x60\x21\xd1\x1f\xde\x77\x0a\xce\xd8\xf1\xe5\xc2\xd5\x9c\xde\x1c\xbb\x66\xf1\x32\x75\xdc\xe2\xc0\x5d\x86\x30\x54\x53\x77\x68\xb6\x81\x5a\x66\x99\xa2\x07\x2a\x32\xa0\x43\xf5\xb0\x98\x9a\xd0\x92\x4a\x61\xb9\x99\xb4\x9f\xb2\x46\x8c\x58\x7a\x69\xe3\xbf\x34\xdd\xaa\xd8\x58\x03\x3d\xe5\x54\x2b\xbb\x90\x0e\x91\x23\x57\xe6\x4a\xcb\x35\x82\xd5\xc6\x6d\x3c\xde\xbc\x61\x92\x84\x68\x11\xa5\xe0\xc4\x84\xa9\x01\x03\x99\xeb\x11\xf2\x2b\x0f\x8b\x3c\x56\x18\x22\x1d\xdc\x59\x51\x8a\xf3\x98\x39\x48\xbb\xdf\x76\xa5\xb2\x53\x65\x2e\x3e\xa3\x0e\x5c\xf1\xfa\x33\xcd\xaa\xdb\x42\x17\xae\x2f\x4d\xd0\xe0\x5e\x29\x99\xe8\x0d\xaa\xf1\xae\x5f\xd0\x5e\x53\xae\x36\x77\xe1\x96\x7d\x4c\x2b\xac\xe7\x9a\xc5\xf5\x54\x8b\x2d\x16\x35\x0f\x5a\x3f\x97\x03\x37\xe8\xfa\x69\x0c\x30\xd4\xf5\x42\x30\x87\x75\x5a\xd1\x01\x76\x2b\x8d\x3d\x60\x9a\x17\x80\x07\xfc\xa1\x95\x7b\xe6\x97\x75\x24\x7a\xaf\x7b\xf8\x83\x7c\xfc\x76\x28\x2e\x0a\x5d\x1e\x78\xbd\xae\x37\x8c\xff\x8e\x23\xc2\xa2\x95\x7e\x93\x25\x03\xcd\xf5\x38\x50\xf6\xbc\xb4\x6f\x0c\xb6\x79\xa5\x76\x68\x08\xb2\x8f\xd0\x08\xee\x19\xcb\x97\x8d\xa7\xd6\xbf\xe0\xfd\x78\xcc\x94\x61\xa2\xae\x78\xa1\x3b\x6d\xdb\x0f\xb7\x78\xd5\x09\xd0\xf9\x3e\x5b\xb9\x66\x16\xeb\x19\x45\xea\x8c\x09\x9b\x6e\x04\x6d\x00\x3d\x03\x1a\xcd\x3e\xa2\x38\x8d\xee\x09\xff\xc0\x49\x4c\xc5\x47\x70\x95\xcb\x5a\x1f\xdd\x42\x19\xdb\x5b\x2b\x1a\x9b\x96\xac\xd0\xef\x37\x90\x45\x7d\x6f\x11\xa5\x21\x4c\xc1\x9a\xb0\x50\x64\x8d\x4f\x36\x38\x39\x44\x98\xe4\xab\x65\x4a\x99\xb4\x28\x89\xa8\x30\x11\xd6\xd0\x50\x3a\x5b\x1d\x16\x87\xef\x22\xa4\xb6\xe1\xb0\x6f\xe6\x44\x10\x1b\x3f\xd0\x83\x92\x29\xd2\x54\xf2\x5a\x5c\x2c\xb1\x9c\x0b\x00\x53\x87\x73\x60\x6c\x2e\x78\x54\xcd\x10\x5e\x42\xf8\x41\x3b\x29\xf2\x87\x1c\x4a\x58\x48\x9a\x24\x63\xc6\x08\x89\x05\x02\x72\xb3\x77\x95\xa0\x7d\xf5\xe8\x00\xe1\x38\x46\xff\xfb\xfb\x4f\x67\x7f\xbd\x19\xdd\x9d\x9e\x5f\xde\xde\xdc\x7d\x3a\x3d\x1b\xbd\x1f\xb8\x0f\x2f\x6e\x6f\xdc\xa7\xda\xc1\xf2\x40\x38\x5a\xe0\x7b\xb0\xf0\x98\xd0\xea\x1f\x60\x69\xfd\x9e\x5a\xb4\x97\xfa\x46\x10\x0b\x35\x31\x6a\x8a\xcb\x92\x33\x6b\xb8\x26\x8f\xb9\x83\xed\x7b\xe5\x1e\x69\xde\x83\x76\xf3\xb8\x57\x58\x35\x70\x41\x98\x54\x32\xc6\x00\x5d\x73\xd3\x37\xdf\x70\x84\xcd\x28\xab\x0b\x88\x13\xf6\xf0\x94\x3a\xfc\xcf\x64\xf5\x8b\xb2\xae\x2f\x31\xe5\xad\xf7\xde\x88\x3d\x50\x9e\x32\x18\x9a\xf3\x6a\xe5\x65\x7d\x08\x0c\xb8\x70\xa8\x84\xd6\x85\x21\xe4\xb2\xac\x05\x5d\xb0\x29\xad\x85\x57\xbd\xd8\x70\x87\xda\x4d\x4c\xbe\x49\x8e\x0d\xfa\x51\x18\x71\x83\x1f\x30\x4d\x00\x30\x63\x2f\x9a\x7c\x0f\xea\x6a\x31\x1f\x11\x49\xf0\x24\xe5\x80\xbd\xd7\x11\x3e\xdb\x84\x99\x30\xa8\x9b\xe0\x1a\xaa\x03\x6e\xa4\xfc\xe9\xaa\x78\x05\xf7\xd0\x65\xca\xdb\xdc\xe4\xea\x67\x30\x0b\xe9\x52\x99\x64\x05\x21\x6a\xae\xd9\x29\xc1\x9a\x3e\x5d\x80\xa4\x11\xd9\x52\x8d\xc3\x80\x41\x92\x24\x60\xea\x53\x67\x40\x1c\x19\xe7\x78\xfe\xcb\x94\xa1\x9f\xff\x2c\xd0\x24\x93\x63\x16\xb6\x91\x32\x28\xda\xf5\x23\x96\xd1\xbc\xca\xb0\xab\xbf\x6a\x2f\xb7\x2c\x3c\xe4\x86\x79\xb7\x0c\x5b\x0a\x5a\xa3\x4c\x92\x59\x11\x72\xdc\x85\x62\xe9\x1c\x40\x3d\x50\xff\x1c\x2a\x12\xa5\xc8\x54\xb2\x36\x89\x3f\xcb\x34\x7e\x27\xd0\xe9\xa5\x92\xb9\x4a\xc7\x86\x70\x34\x15\xda\x93\x06\xd1\x29\x40\xe8\xe9\xa7\x35\x42\x68\x80\x7e\x40\xe3\xec\x87\x1f\xfe\x2d\x42\xdf\xec\x1f\xff\xf1\xa7\x3f\xfd\xdb\x7f\x6c\x52\x60\x0b\xda\xcd\xe7\xc8\xa4\xdd\x17\x85\xb0\xbf\x02\xa3\x02\x0d\x7c\xf7\x48\x30\xb0\x8a\xdf\x29\x85\xb0\x63\x8e\x68\x05\x24\xdf\xa8\x95\xd6\x1b\xc1\x89\x8e\xd6\x03\x57\x7d\x1d\x3c\x89\x08\xd1\x51\xd5\xaa\xe4\xab\x37\xed\x00\x53\xd5\xe3\xa6\x35\x83\x94\x75\x05\xad\xe9\x56\xac\xb1\xe0\xa1\xab\x82\xb9\x0f\x39\xf5\xb7\xda\xfe\xf1\x66\xca\xa6\x1e\x7b\x04\xd3\x9e\x57\xdf\x42\x33\x9e\x66\x4b\x07\x41\xb4\x60\x0c\xbd\x0c\x63\xf6\x45\xdd\xf3\xa7\x6c\x9a\x7e\x34\x1b\xf6\x8c\xb2\x7b\xf8\xab\xc6\xc7\xbd\xfd\x1a\x39\xf6\x7a\xef\x73\x6b\x1f\xe8\x19\x3f\x34\x25\x4c\x54\xaf\x85\xc4\xd1\xbd\xce\x29\x6e\xaa\x7e\xd0\xb5\x7e\x43\x0e\x61\xc8\x94\xa4\x34\x53\x07\xc5\xe9\x85\xcf\xae\xf6\x40\x31\xc2\xe8\xf6\xea\xb4\xfa\xdd\xf7\xb4\xac\x9b\x57\xdf\x02\xe1\x06\x81\xff\xf9\x99\x76\x8a\xa2\x15\x72\xe0\x49\xb0\xd5\x5d\x2a\x5d\x5d\x56\x67\x21\x53\x63\xab\x2c\xf2\xce\x7c\x35\xbe\xae\x07\x70\x95\xa6\xfd\xe1\x7a\x19\xe6\x30\xb9\xad\x6b\xdf\x6f\x25\x8b\x32\x38\xf5\x23\x90\x16\xc6\x75\x81\x11\x65\xf2\xa7\xf5\x38\xcd\x2d\x29\x92\xfc\xaa\x8c\x96\x27\xc9\xd4\xb4\xd3\x7d\x9b\x10\xc8\x67\xab\xef\xc3\xd6\xa4\x48\x7e\x17\x0c\x07\x4b\x5d\x0f\xc6\x6c\x68\x7f\xe2\x70\x11\x79\xda\x92\xd0\x1e\x71\x1d\xff\x91\x73\xf0\x70\xba\x49\x37\x83\xab\x19\xc4\x96\xc5\xef\x6f\x05\xe1\xce\x7c\x32\x88\x4e\xab\xe9\xd9\x71\xd4\xbc\xd9\xd0\xdb\x6d\xf1\xf2\x6b\x3b\xc4\x02\x53\x5e\xd5\x8b\xd7\x1d\xcd\x91\xc3\xbc\x99\x86\x7c\x72\x3e\xed\x35\x4f\x56\xb9\x8f\x56\xcd\xb8\xb6\x25\x0b\x2f\x0b\x0e\xeb\x54\x63\x3b\xb6\xd3\xa4\xb4\x0b\x6a\xe7\xde\x51\x39\x27\x0c\xf4\x84\xf6\x2d\x03\x40\xa6\xbb\x1a\x84\x73\x10\x88\x35\x5d\x3d\xc5\x36\x63\xd4\x10\x39\x18\x5f\xbd\xe7\xa4\xb0\x85\x68\xf2\xe7\x95\x99\x84\x25\x15\x53\x5a\x62\x5e\x28\x22\x6a\xb6\x99\xf5\x4e\x05\x6d\xec\x32\x37\x6d\x55\x17\x6c\x39\x42\x9f\x28\x17\xd2\x1b\x92\x52\x5b\x0d\x20\xa6\x8e\x22\x5f\xce\xeb\xeb\x33\xee\xc2\xb6\xb1\x23\x68\x6b\xf0\xb9\xc0\xda\x11\x1a\xe6\x1c\x3a\x1a\x12\x44\x44\x8b\x11\x91\x44\x90\x4d\x36\x5f\x2b\x8d\x15\xec\x00\xd8\x40\x08\xc4\xa5\x50\x9f\xe7\x79\x65\xae\x9b\x8f\x80\x5d\xc1\xf7\xa4\xae\xb0\x4e\xd7\xa2\x4c\x6b\x6b\x31\x0d\x9d\x42\x9a\x6a\x9d\x74\x93\x0e\xb6\x3f\x76\x39\x0a\x8b\x4e\x3f\xa8\x29\x37\x55\x0e\x75\xc8\x6c\x0a\xfb\xd0\xe0\xb8\x1e\xe7\xca\x6e\xca\x37\xa5\x5d\x3f\xa1\x6b\xd8\x66\xc4\x86\xc6\x20\xe2\xe8\x26\xf8\x68\xcc\x4e\xa7\x88\xa5\x3e\xcc\x0b\x7a\xed\x0e\xa9\x76\xa9\xb9\xf5\x46\xe6\x6e\xd0\xd3\x00\x06\xbe\x6d\xaa\x7c\x9a\x03\x67\xc4\x16\xc7\x79\xbb\x3a\xb8\xee\xe4\xd6\x5c\x63\x5d\x93\xe8\x6a\xcf\x52\xa7\xd8\xeb\x8c\x30\xc2\x69\x04\x09\x1a\xfa\xda\x5d\x62\x5a\x65\x52\x1a\x36\x93\x7d\x4d\x35\xda\x75\x8e\x91\x19\xee\x86\xf9\x45\x89\x7e\x5a\x63\xe4\x13\x60\x87\xd4\x79\x45\xbb\xc8\xc6\xc9\x79\x65\xda\x65\xe2\xe8\xcd\x23\x74\xf9\x06\xdd\xaf\x6e\x7b\x24\x98\x62\x53\x6e\x59\x7b\x87\x04\x24\x45\x69\x20\x5f\x3a\x75\xc9\x53\xda\xb7\xa4\xf3\x2c\x95\xad\x59\xfa\xe3\xc7\x24\x9d\x88\xf7\x7e\xd1\x49\xf3\x8e\x1c\xcf\x57\xbf\x05\x77\x93\xab\x63\xa7\xe2\x29\xef\x43\x7b\x66\xfc\xfb\xb0\xcb\xc4\x57\x6f\xaa\x3c\xb4\xa6\xe1\x0c\x98\xa7\x19\xb3\xb9\x0e\x29\x23\xe9\x14\xf0\x8d\x50\x0e\xcb\x5a\x85\x00\x83\x66\xa9\xf4\xa0\x0b\x9c\x2c\x75\xe0\x0c\x34\xd4\xfa\xe9\xde\x32\xdf\x67\xdd\x3c\x3f\x45\xbe\xcf\xb6\xf3\x6e\x0e\xce\x0b\x4d\xf8\xb6\x59\x1c\xfa\x28\x75\x10\xb3\xf0\xfb\xb5\xc6\xb8\x93\x03\x60\x7d\xfb\x34\x6f\x1a\xa9\x0b\x9e\x62\x72\x28\xd3\x43\x80\x7c\x01\x90\x48\x67\xe0\xd5\xf1\x37\x44\x73\xb2\xe8\x90\xe4\x74\x0d\xbf\x6f\xd1\xcf\x08\x80\x9b\xdf\xbc\x8e\x9a\xbb\x57\x20\x4b\xf1\x0c\xca\x0c\x83\x6a\x6d\x60\x9f\xad\xbd\x39\x3a\xba\x38\xfc\xa5\x6c\xf6\x80\x99\xec\x92\x42\x76\x94\xc9\x69\x9c\x82\xd1\x63\xfb\x70\x84\x2e\x58\xb2\x42\xf3\x74\x91\xaa\x6b\x3b\xcd\x84\xf7\xa5\x86\x0b\xc1\x65\xd3\x40\x70\xbd\xd4\x10\xef\x97\x1b\x8d\x3a\x5a\xea\x2b\xad\x3b\xfa\x3f\x5a\x9f\x22\xea\x8d\x64\x12\xa6\xd8\xad\xe9\xbf\xcb\x8d\x6a\xde\x37\x90\xd0\xb3\xa0\xb3\xb9\xa1\x0b\xf2\xeb\x68\xc3\xd6\x5f\x38\xf6\x54\x5b\xd0\x4f\xa7\x94\xc1\x86\x62\x55\x75\x12\x6a\xdd\xdb\x5d\x32\xfc\x3a\x14\x36\xf4\x10\xc0\x0e\x3b\x07\x93\xec\x70\xb4\x16\x9f\xe6\x1e\x7c\xc8\xb9\xaa\x56\x4b\x32\x40\x93\x0c\xbe\x3f\xbf\xb8\xf1\x7d\x43\x94\xc1\xd7\x87\xd1\x9c\x44\xf7\x6a\x5d\x90\x16\x8a\x7a\xba\x2c\xe9\xd8\x64\x35\x66\x39\xb9\x81\x4c\xad\xa3\x63\xe5\xb2\x47\x5c\x06\x55\xca\x51\x4c\xc5\x32\xc1\x2b\x44\xbe\x49\xc2\x34\x41\x54\x45\x75\x59\xb5\x59\x36\x33\x5b\x80\x7d\xc1\x48\x01\xab\x87\xc1\xbf\xec\x20\x1c\x33\x25\x60\xa9\xa7\x38\xaa\x54\x3b\xb6\xce\xe7\xd9\x26\x7e\x52\xc7\x23\xe2\xf1\xb1\xea\x15\xf5\x5d\xa5\x0e\xca\xc3\x0a\x98\x9c\xb1\x21\x41\x1c\x1f\x80\x07\x65\x6c\xa9\x1b\xd5\xbf\x35\xf5\x1b\xe1\x0f\x24\x1e\xb3\x10\x2c\x65\xae\xb2\x7c\x95\x51\x9e\x5f\x5e\x27\x3a\xbb\x27\xb1\xaa\x79\x76\x39\x96\x8d\xa1\x1d\x08\x10\xe7\xc8\x70\xc7\xe6\xd9\x90\xef\x5e\x4d\xfe\xf8\x04\x89\xd9\xad\x9d\x1f\x79\x42\xbb\xc9\x46\x35\x74\x13\x44\xa7\x4a\x26\x2b\xb5\x41\xdd\xc6\x74\x50\x10\x8d\x13\x75\xd8\x57\x83\x0f\xc9\x51\x0f\x66\xcd\xab\xda\x18\x33\x1b\xb1\x9c\x66\x49\xa2\xb1\xff\xb5\xa5\x62\x35\x34\xcc\x46\x00\x5f\x0e\x7f\xe3\xec\x5a\xe4\x31\x00\x78\x85\x55\x97\xb1\x92\x1d\x2c\x5a\xe5\x54\xb4\xb0\x79\x09\x13\x19\x24\x9e\xda\xec\x5f\x00\x3a\xcf\x88\x44\x4a\xef\x88\xb3\x44\x03\x87\x79\xc6\x0c\xce\x0c\x27\x40\x09\x36\x66\x0e\x16\xa7\x59\x79\xe0\x2a\x88\x4c\x2e\x48\x6c\x74\x41\x78\x05\x34\x6b\x88\xe5\xe0\x82\xa0\x11\x95\x41\x97\xc0\x53\xb9\xf2\x53\xe6\x96\x4b\x82\x39\xa8\x8b\xb6\xb2\x89\xaf\x0d\x16\x97\xc1\x54\x24\x07\xea\x9e\xfa\x12\x43\xbb\xd8\xbd\x9a\xba\xa9\xf3\xa2\x1c\xa1\xa1\x1e\x9d\x52\x05\x2d\x7f\x8d\xee\xad\x09\x53\x9b\x78\x82\xd2\xb7\xa4\x70\x0c\xad\x4e\xa3\x5e\x62\x2e\x69\x94\x25\x98\x27\x2b\x25\x5d\xa6\x59\x82\xe8\xd4\xa3\xe2\x81\x45\xd0\xa8\x28\x43\xde\x06\x59\xc5\x06\xf5\x2c\xf0\x82\xe4\x1b\xdc\x1a\x9e\x89\xe7\x44\xd4\x99\x5e\xda\x3b\xa5\xda\x7a\x7f\x84\x4e\x8a\xc4\x4b\x70\x2c\x3c\x34\x35\x15\x5a\x02\xba\xfe\x9a\xa4\x51\x20\xa8\x04\x02\x27\x3a\x55\xca\xee\x3b\xef\xe0\xd5\xd1\x82\x62\x71\xdf\xd1\x43\x79\x83\xc5\xfd\x5a\x2f\xe5\xa9\x77\x55\xe6\x02\xf0\x06\xd8\x26\x03\xbf\xa5\x3b\x11\x6b\x4a\x60\x74\xec\xa4\x8f\x44\xdf\xa0\xa3\x5f\x3d\x3a\xc7\x62\x67\x17\x0d\xcc\x3f\xb0\x8e\x1d\xbb\xea\x65\xe5\x76\xef\xa8\xb7\x73\x7c\x7f\x74\xed\xcc\xae\x37\x2e\xbf\x06\xf9\xb1\x48\xf5\x4b\x29\xf6\x44\x47\x30\x0a\x4c\xc1\xd0\x07\x93\x48\x0b\xb9\x8c\xee\xb0\x4d\x08\x4a\x28\xbb\xd7\xa7\x02\xc3\xca\x0f\x10\xce\x5b\x87\xc3\xa7\x7b\xaf\x37\x73\x8d\x66\xe3\xa2\xd1\xbb\x09\x09\xb7\x43\x8c\x54\x2e\xae\x1b\x77\xc5\xf3\xeb\x37\x62\xd5\x38\xda\x2f\x4b\x63\xd8\xce\x29\xb1\x36\x56\xa7\x2f\x98\xb0\xfa\xe9\x6a\xdd\xfc\x5e\xce\x71\x35\x33\xdf\x7a\x22\xcd\xdb\xf3\x93\xd1\xa7\xd3\xf3\xd1\x89\x4f\xa1\xf9\x97\xdb\xd1\x6d\xf8\xc9\xd5\xed\xf9\xf9\xe9\xf9\x67\xff\xa3\xeb\xdb\xe3\xe3\xd1\xe8\x24\xfc\xdd\xa7\xe1\xe9\x59\xe1\x77\xea\xa3\xf0\x47\xc3\x1f\x2f\xae\x6e\xc2\x8f\xae\x7f\x3e\xbd\xbc\x0c\x3f\xba\x39\xfd\x32\x3a\xb9\xbb\xb8\xbd\xb1\x73\x5d\xc9\xdf\x99\xf7\xbf\x72\x8a\x76\x41\xac\xd1\x35\xfe\xec\x21\xe5\xa7\x9c\x12\x16\x27\xab\xbc\x96\x94\x3a\x74\x85\x20\xa5\x2f\xd2\xe9\x82\xa4\xd9\x36\x98\x01\x65\xfa\xa6\x0f\xca\xa4\x4e\x90\x69\xcd\x60\x72\x0a\xb5\x18\xbd\xb7\x72\x22\x79\xd9\x0d\xd6\x88\xb2\x90\x7c\x75\x2d\x39\x96\x64\xb6\x6a\x89\x7f\x33\x2f\x41\x4b\xc2\x9b\xfa\x02\x17\x2e\xcf\x96\x92\x4e\xca\x8e\x26\x3b\x0f\x26\x31\xa5\x96\xf9\xcf\x7c\xdd\xdd\xb2\xd3\xf8\x50\x5a\x29\xae\xcf\xab\x05\x9d\x4d\x54\xdf\x32\x1b\x14\x3c\xd3\xed\x57\xe0\xd2\x3d\x52\xbd\xf5\x8e\x2d\xb9\x85\x32\x99\x25\x66\x35\xc0\xff\x8e\x04\x7c\x79\x36\x2e\xcf\x69\x30\xcd\x4d\x65\xad\x88\x1c\x4d\xbc\x89\x65\x6d\x12\xf2\x59\x9c\x17\x1a\x34\x89\xfa\x1e\x1b\x47\xc5\x22\x14\x28\xce\x9e\xfc\x96\x69\xdc\xf3\x06\x93\x08\xaa\x9f\xce\x88\x34\xe5\x33\xf5\xb5\x0c\x69\xc6\xb5\xa1\xba\x1d\x33\x22\x3a\xd5\x33\xa7\x73\x73\x04\x81\x56\x1e\x75\x57\x34\x0a\x64\x68\x1e\x51\x9c\x2e\x68\x03\x09\xb0\xd0\x6c\xee\x8b\x33\x9a\x85\x96\x03\x0f\x24\x46\x87\x3e\x01\x65\x7c\x08\xe8\xb2\x31\xab\xb3\x30\x2b\xc8\x1b\xfd\x1d\x70\x69\xb9\x39\xb6\x59\xfb\x8a\xd9\xaf\x3f\x82\x76\xb2\xdb\x81\x2a\x90\xfd\xf9\x11\xaa\x77\x65\x9a\x75\x99\x60\xed\x42\x82\xb3\xe5\x48\x47\xea\x20\x5e\xee\x2e\xec\xe6\x71\x6d\xe5\x6d\xc5\x2e\x31\x45\xfb\x59\x41\x67\x99\x63\xf0\xbf\x69\xae\xcd\xa0\xe3\x1e\xd5\x68\x9d\xd1\xe2\x12\xd4\xb7\x13\xed\xad\x2c\xc8\x81\x46\x04\xb8\x52\x03\x7e\x56\xaf\x63\x28\xe8\xb6\xf1\xdd\x6a\xb8\x5c\x70\x6c\xe5\x1e\x08\xac\x04\x67\x4a\xa7\x5f\x26\x58\x03\x89\xe6\x58\xe8\x2d\x6d\x9d\x94\xd8\x50\x82\xcb\xd4\x98\xf7\x85\x19\x4e\x39\x5a\x60\x7e\xaf\x2c\x5a\x92\x4c\x55\xeb\x85\xe0\x7e\xe5\xa6\xdf\x32\x90\x96\x13\xdb\x3c\x67\x28\x2d\x3f\xb2\x6d\x7d\x03\xf9\xb6\x34\x61\xb4\x7c\x39\x34\xf5\xb2\x4c\x3d\x92\x9e\x6e\x2b\x6b\x5a\xbc\x2c\x3e\x1e\xcc\x77\xc5\x45\xdd\xdd\x67\x6b\x72\x0a\x3a\x88\xf9\x62\xc6\x41\xe5\xc9\x9a\x26\x29\xae\xa1\xd9\xb1\x6d\xeb\x04\x82\xba\xb6\xe3\x34\x53\xe2\xac\xb2\x71\xdd\xab\xe6\xd6\x9b\x0c\x30\x7b\x6e\x77\xa5\xd0\xf9\x02\x10\x4b\x02\x65\xde\x36\x9a\xd0\xbc\x4a\x5c\x75\xe3\x19\xc7\x55\xe8\x8e\xf6\x04\x87\x79\xb6\x8d\xdd\x3c\xe8\x66\xb5\x24\x15\xb4\x6e\x01\x76\x79\x43\x63\xee\xfa\x72\x74\x7c\xfa\xe9\xb4\x60\x49\x0d\xaf\x7f\xf6\xff\x6d\x2b\x04\xf8\x9f\x9d\x0d\x6f\xcf\x8f\x7f\xba\xbb\x3c\x1b\x9e\xaf\xb1\xb7\xca\xaf\x28\xbb\x3b\xf2\xc4\x80\x1c\x47\xad\xee\x06\x03\xfd\x05\x53\xb7\xe2\x7c\x5d\x55\x24\xf7\x6d\x5a\x7f\xec\xc9\x5c\x9a\xae\x93\xf6\x8f\x11\x93\x7c\xd5\x25\xe9\x13\xc5\xb6\x08\x80\xf6\x5e\x86\x09\x87\x44\x80\x2f\xd8\xb6\x7e\x0e\x82\xcd\x7a\xd7\x4d\x88\xc6\xcc\xa3\xba\x58\x12\x5a\x5b\x37\x28\x51\x1b\x6e\x5f\xe7\xc1\xc7\x00\xc2\x2c\x4c\xd2\x8c\xc5\x96\x59\x6d\x41\xd9\x87\x05\xfe\xf6\xde\x8e\x34\x2f\xcf\x08\xf9\xac\x9a\xce\x3e\x51\x5a\xc7\x0a\xf1\x8c\x35\x4f\xd7\x98\x35\xcc\xd7\xfa\x9b\x41\x17\x27\xa5\xff\xc4\xba\x42\x86\xd5\x47\xb5\xc7\xf8\x81\xac\xaa\xd6\xaf\x94\x48\xa5\xbd\xd2\x46\x07\x86\x46\x96\x9c\x00\x91\xa8\xf3\x47\x27\x3a\xce\xe0\xfe\x0d\xf1\xce\x20\xbf\xb4\xea\x4e\x0a\x6d\xf1\xad\xce\x4d\xa5\x17\xe0\x09\x52\xe1\xcc\x9b\xd4\xa2\x69\x9f\x80\x4d\x3b\x35\xf1\xdd\x18\x3d\xce\x89\x5e\xad\xbf\xa7\x13\x34\x85\x70\xb8\xa1\x8f\xe1\x24\x02\xf7\x86\x5a\x0b\x9b\x5e\x04\xb0\xda\x92\xa3\xc1\xee\x81\x84\x08\x70\xb6\x01\x15\x23\xf9\x47\x66\xb0\x73\x7f\xf8\xa1\x5b\xca\x96\xe4\x2b\x24\xcc\x34\xfb\xe1\x78\x83\x46\x31\x3e\x3b\xe8\x57\xc6\x68\x15\xe5\xdb\x95\x26\x21\x7c\x5e\xae\xd7\xc2\x4b\xcd\x3f\xd7\x22\x16\x6e\x6c\x1a\x8c\xfe\xfd\x93\xe5\x47\xfc\x52\x48\x8b\x30\xaf\x83\x40\xa4\x69\x5d\x78\xa8\x7b\x65\x19\x3d\x62\x1e\x6b\xc7\x00\xf8\x88\x8e\xd0\x4f\xe9\x23\x79\x20\x7c\x80\x22\xc2\x25\x36\x70\x65\x75\xd6\x92\x04\x0e\x94\x69\x67\xcc\x20\x36\xaf\xb1\xdf\x0c\xa8\x77\x24\x9d\xcd\x95\xf2\x68\x8c\x50\x43\xd7\x29\x88\x04\xa8\x21\xf9\xb6\x24\x91\x06\x65\xd4\x45\xa2\xa7\x09\x7e\x28\xe3\xaf\x37\x81\xd6\x7a\x8c\xa4\xb6\x98\x90\xc9\x59\x69\x74\x4a\x59\x62\x4b\x2d\x35\x97\x2b\x39\x4f\xd9\x00\xcd\xd2\x04\xb3\xd9\xd1\xd1\x11\x22\x32\x3a\x7a\xdf\x69\xa3\x9b\x06\xbd\xd7\xe5\x11\xb5\x24\x15\x24\x59\x59\x0b\x2f\x47\x3e\xa8\x59\x06\xa4\x85\xad\x78\x54\xb1\xfb\xaf\x8b\x08\xdd\xe7\x75\x93\x55\x6b\xa5\x9d\xa1\x3e\x35\xed\x14\xeb\x9c\xac\x6b\x49\xff\xbe\x5a\xd3\xee\x00\x5d\x03\x26\x07\x1a\x27\x39\x84\xad\x26\x83\x2a\x65\x5d\x71\x59\xbf\xa4\x75\x2c\x35\x1b\xa5\x1c\x54\xb6\x64\x00\xe2\x1b\x21\x95\xca\x3b\xba\x62\xc7\x39\x50\xdf\x56\xe9\x4d\x49\xb6\x28\x53\x2d\xee\x4a\x8b\xca\x3b\xa9\xff\x3a\x86\xd7\xb5\xe7\x35\x70\x64\x3c\x29\xd7\x68\x2a\xd3\x5f\xed\xf7\xd0\x9b\x09\xa4\x25\xa7\x02\x12\x2d\x36\x01\x3c\xb9\x66\x74\xd3\xe0\x9e\x55\x36\x8c\xa6\x47\x33\x85\x68\x00\xc3\xe5\xea\xc9\xe8\x47\x84\x56\x75\xc0\xa7\x5b\x2f\x19\x72\x90\xe8\x46\x56\xcf\xf9\xc5\x79\x50\x00\xee\xf4\xfc\x66\xf4\x79\x74\x15\xc4\xa0\xce\x2e\x86\x37\x41\xbc\xe9\xe6\xaa\x10\xa6\xfa\xf1\xe2\xe2\x6c\x34\x3c\xf7\x3f\x3a\x19\xde\x8c\x6e\x4e\xbf\x04\x8d\x9f\xdc\x5e\x0d\x6f\x4e\x2f\x82\xdf\xfd\x78\x7a\x3e\xbc\xfa\xab\xff\xc9\xe8\xea\xea\xe2\xaa\xf0\xbe\xdb\xe3\xe6\x48\x56\x30\x8c\xea\x95\xc8\x95\x65\x0f\x2f\x5b\xa5\x14\xde\x60\x71\xbf\xe3\xe8\x2b\xa0\x0d\x36\xac\xd8\x56\x23\x94\x62\x72\xb7\x59\x60\xb6\x2e\xb8\x5c\xf9\x1e\xa5\x0f\xae\xee\xb0\x94\x64\xb1\xdc\x8e\xe8\xa1\xfd\xc1\xe9\x16\xf3\x05\x93\xa6\x45\xcc\x37\x58\xd5\xfd\x89\xf9\x56\x84\x73\x4d\xcc\xb7\x69\xbb\x37\x04\x6e\xd5\x38\xcf\xd2\xad\x2a\x4b\x75\xa9\x49\xe1\xef\xc9\xf5\xa1\xde\xca\xe7\x0c\x32\xff\xae\xba\xca\x41\xf5\x46\x36\xa3\xfc\xa2\x1f\xd5\x45\x0e\x6a\xa2\xc2\x32\xd9\x81\xff\xe9\x2c\x9d\x55\xa3\x60\x5d\x19\x59\x2a\xbc\x3c\x78\xf0\x66\xa7\x33\x24\x28\xbb\x1f\xb3\xaf\xca\x20\x4b\x33\xae\x3f\x92\x29\x07\x40\xf5\x34\xc9\xc4\x9c\x00\x7d\xd4\x00\x3d\x12\xa8\xea\x07\x5e\xed\x90\x5f\x17\x48\x42\x13\x7a\x4f\xe0\xe9\x84\x32\xb5\xdb\x97\xd4\x6a\x40\xc5\xa5\xdf\x85\x81\x14\x53\xe1\xec\xc4\x27\x0c\x35\xe4\x9e\xae\xc7\x39\x01\xdc\xaa\xc7\xce\x65\x89\x3d\xb5\xe4\x81\x1c\xa9\x34\xbd\xcf\x96\xa6\x2c\x1b\x16\xf7\xef\x2c\x0a\x0c\xa6\xfb\x21\xa5\x31\x8a\xb3\x65\xe2\x95\x52\x7d\x4c\x79\x6d\xd4\x5e\x6b\xea\x1d\xa2\xf6\x05\xfb\xb3\x69\x60\x15\x66\x80\x67\x75\x34\xc4\xef\x9f\x18\xc1\xe0\x71\x76\x64\x82\xf0\x43\xc9\xe9\x6c\x06\x7a\x8f\x75\x2a\xec\x3f\xc4\xc1\xee\xcd\xd5\xdd\xf6\xf6\xb3\xef\x6a\x4d\x34\xa3\xa9\xa3\x1a\x08\x8b\x8b\x9a\x2d\xe7\x8e\xfd\x52\x57\xe5\x54\xfd\x76\x1d\xaa\x0d\x31\x2e\x39\x51\x6f\x89\xef\x34\x0d\xca\xf6\xf4\x2c\xa7\x53\xa5\xc9\x98\x42\xe0\x39\x91\x4c\x4e\xb6\xa1\x17\x1b\xb2\x20\xcc\xbb\x6d\x5a\x80\xce\xc8\x65\xba\xa0\xdf\x23\xb3\xa5\x0e\xb1\xd0\xa6\x3d\x4b\xe1\x6e\x75\xa9\x02\x50\x50\x0d\xf2\x79\x5d\x8d\x3c\x93\x61\x68\x7c\x74\x9a\x69\xef\xe5\x21\x29\x4e\x50\x03\xd2\x32\x2c\xb9\x54\x14\x91\xdb\xe6\x0d\xb8\xf8\xfd\xa6\x1a\x5d\xb3\x4d\x32\x4b\xd2\x09\x4e\x92\x55\x45\x46\x81\x7f\xeb\x74\x73\xc0\xd9\xc2\x50\xe1\x9d\x65\x91\x39\x10\xea\x4d\x1b\x32\xb5\x83\xf2\x05\x3b\x4d\xb9\xd8\x7e\xc2\x32\x99\xea\x6c\x69\xf0\x28\xaa\xc1\x9d\x16\xe8\xf5\x8f\x34\xfe\xf6\x34\xae\x24\xfa\xc8\x4f\x8c\x9d\xf9\x3a\xe9\x5c\xe1\x03\xe8\x94\x31\xb2\xe4\xc4\x7a\x7f\x56\x44\x3a\xa7\x4f\x62\xf1\xc1\xab\x65\xc8\xa8\xee\x7b\xbd\x5d\x91\x6c\xe3\x4f\xd7\x45\xd3\x3d\xce\xd6\x94\x11\x26\x35\x73\x25\x4b\xc7\xcc\x34\x6e\xf3\xcf\x1c\x85\x8b\x71\xe4\xeb\x89\x19\x18\x1d\x1a\xa4\x02\x27\x22\x4d\x1e\x4c\x31\x53\x37\x27\x32\x05\x7c\xb8\xea\xe0\xb1\x12\xe7\x4a\x79\x51\x26\xac\xe3\xdc\x9c\x93\x31\x2b\x24\x61\x79\xb5\xd7\xed\x8e\xf5\x9f\xdf\x59\x62\x4a\xa0\xef\x34\x4d\x7d\x6d\x62\xca\x3a\xc1\x35\xc5\x51\x17\x80\xf8\x6a\x49\xe2\x53\xf7\x5c\xf3\x66\x08\x4c\xff\xd8\x0b\x8d\x04\x87\x5c\xef\x01\x2d\xb0\x85\xce\xee\x11\xae\x12\xaa\x5b\x24\x47\x0a\xe4\xc8\xc6\xd5\x12\xcd\xb0\x25\x9c\x17\x8e\x6d\x1c\xa2\xb5\x81\xcb\xb6\x50\x1c\xc8\xe9\x52\x51\x2a\xa4\x8e\x0f\xc1\x23\x53\x4c\x93\x8c\xd7\xaa\x08\x7a\x5b\xee\x3c\x6d\xee\x18\x9a\x45\x55\xab\xe6\xfc\xaa\xde\x31\x72\x3e\x55\x57\x74\x28\xc9\x66\x94\x89\x70\xd7\xd7\x93\x6f\x96\x88\x88\xd7\x2c\x78\xce\x5d\xdc\x5e\x16\x0f\xf5\x61\x17\x30\x78\xf0\xa3\xd7\x33\x10\x19\xa5\xcd\xeb\xfb\x98\xdd\xc0\x5d\xad\xb3\xc2\xdc\x31\x03\x86\x28\x4d\xf8\x01\x2c\xcc\x55\xe3\x0d\xe4\x79\xb8\x53\xb7\x02\x64\x54\xe5\x6f\xad\x07\x7e\x7d\xc1\xcb\xa6\xd4\x9a\xad\x5b\x5c\xb7\x0c\xce\x3b\x57\x3c\x86\x45\x5a\xdf\x8a\xd9\x73\xe0\xb5\x67\x09\x42\x75\x49\xf4\x75\x18\x46\x93\x22\x5f\xca\xd2\x0c\x14\x53\xff\xd1\xee\x30\xd6\x3c\xfa\x62\x2a\x09\xea\x06\x27\x1a\x78\xe8\x63\x25\xb7\xc8\x12\x75\x0b\x53\xa8\xf4\x5c\xb5\x1c\x5b\xe2\xb8\x72\xe8\xed\x33\xc2\xb8\x7e\x29\x4d\x51\x57\x14\x57\xa1\x7e\xbe\x4c\xbd\x3a\x5b\xad\x34\x66\x87\xde\xfa\x25\xc4\x1e\x07\x53\x9c\xd2\x56\x20\xed\x32\x7b\x1c\x28\x2d\x31\x61\xa9\x24\x08\x23\x46\x93\x0f\x2c\x4b\x92\x0f\xe7\x50\xe6\x44\x08\x3a\xd3\x2c\xca\xe0\x31\x09\xca\x52\x03\xf6\xd5\xc3\xb2\x7a\x47\x00\xae\x48\xd5\x25\x5d\xe4\x5d\x2a\x89\xa9\x96\x20\x59\x8d\x99\x7a\x42\xab\x58\xae\xc6\xa8\xad\x55\x08\x6f\xb3\x79\x39\xe6\x5d\xca\x36\x66\x2b\xbf\xf1\x8a\x0d\xd6\x94\xca\xb2\x55\x48\xae\xe7\x38\xdc\x1b\x8e\xc3\x94\x5b\xcf\x53\x07\xb6\xc3\xfa\x43\xb5\x31\xdd\xa0\x53\xc4\x9c\x4b\xbb\xc5\x7e\x7c\x49\x77\xf6\x53\x26\x36\x6d\x9d\xc5\x64\x67\x6a\x17\x5e\xd1\x7f\x64\x24\xa3\x6c\x76\x37\xc9\xe2\x19\xd9\xca\x47\x97\x4a\x9c\xa0\x47\x4c\x25\xb8\xe8\x7c\xb5\xdd\x9c\x8b\x98\x24\x78\xa5\x33\x01\xd4\x5b\x49\xc7\x92\xec\x76\xb4\x6e\xef\xaa\x5d\xc6\x3d\xbe\x81\x31\xbb\x49\x9d\x51\x69\x4e\xec\x34\x53\xda\x68\x83\xf4\xb3\xad\x9e\xe8\x99\xdf\x0a\x66\xb8\x4b\xaf\x50\xa3\xa7\xcc\x46\x8b\xac\x87\xd9\xaf\x46\x16\x74\xc2\x20\xa1\xf4\x99\x07\x06\x7f\x19\x1a\x46\x9a\xe5\xc1\x82\xad\x4c\x2d\x8d\x0c\x3b\xec\x39\xcc\xa5\x9a\x70\x93\x18\x9d\x31\xc0\x4e\x91\x6f\x3a\xfd\x3c\x59\xf9\xad\x42\xa2\x22\xb4\xd8\x31\xa2\x0c\x36\xb7\xcb\x25\x5d\xbb\xd0\xf5\xab\xb9\xad\x13\x4c\x63\xf5\x97\x09\x66\x77\x5a\xb9\x79\x01\x37\x98\x97\x2f\x50\x47\x65\xe4\xd5\xec\xdb\x4d\x3f\x9d\x84\xbf\x0a\xb2\x78\xfc\x22\x5e\x83\x22\xdd\xa9\xd5\x48\x5c\x35\x73\x63\x8c\x1b\x3e\xeb\x6f\x55\x80\x8c\xf5\xae\x3c\x5c\x30\xdc\x1d\xa1\xfb\x1a\x5f\x5e\xa9\xca\xe6\x9e\xf9\xf3\xda\xac\x7c\x61\x83\x17\x97\xbd\xbb\x2b\xa9\x74\x51\x6c\xe4\x4e\x5a\xd3\xad\xa7\x75\x29\xd5\x9a\x4e\x65\xd7\xd2\xd7\xb0\x18\x54\x04\xd5\x15\xa3\x24\x8b\x09\x12\xa9\xd2\xe7\xac\x65\x57\x9d\x0f\x52\xc0\x21\x3c\x29\xff\x45\x98\xee\xdb\x1a\xd0\xa3\x19\x70\xd0\x29\x43\xd6\x42\x1b\xa0\xf1\x81\xde\x59\x62\x7c\x10\x56\xce\xb6\xf4\x3a\x61\x41\x84\xa2\xe3\x55\xc7\x44\xbc\x1b\x84\x79\xee\x81\xe2\xbc\xd4\x78\x31\x5e\x92\xd7\xc6\x43\x3b\xe9\xb0\xe9\x44\x37\x60\x94\x52\xad\x6b\xaf\x2c\xe9\x0d\xa4\xbe\xf2\x2c\x92\x5e\x6d\x4e\xcb\x11\xf2\xa3\x7d\x50\x4d\xd1\x32\x4b\x4c\xed\x71\xcb\xc9\x91\xf2\x31\xb3\xad\xe5\x54\x7d\xc3\x24\x29\x35\x55\xa6\xc7\xf1\xf6\x2a\x90\x65\x59\x1c\x32\xe0\xdb\xd5\x8f\x00\xa9\x55\x92\x03\x63\xa6\xb3\xd2\x5c\x42\xe4\x11\x1a\x16\x6a\x96\x86\x4c\x30\x3e\x11\x4c\x92\x58\x16\x14\xcd\x2d\xe2\x51\x5f\x88\x0c\xea\x0c\x4c\x33\x25\x8e\xdc\xdb\x65\x3a\x66\x40\x0a\xa4\xcb\xcf\xdb\x79\x19\xb3\x2f\xa9\xb0\x75\xd4\x44\x3e\x1f\x56\x67\x30\xd3\xf6\xce\xc1\xb1\xcd\x07\x27\x4a\x88\xa8\xa7\x94\x69\x5b\x48\xc6\x85\xb8\x1d\xa0\x0b\x06\x68\x95\x66\x3c\x50\x15\xc7\xec\xef\x6a\x7a\x2c\xd3\x4d\xea\xaa\xfc\xc2\x21\xb6\xc9\xcb\xe8\xfb\xbf\xe9\x46\xbf\xff\xd3\xfb\xbf\xbd\xd7\x3c\x62\x99\xc8\x94\x84\x1d\x84\x57\x88\xed\xa8\x5a\x52\xca\x66\x63\x66\x47\xe0\x4a\x17\xe4\xaf\x68\xcc\x89\x37\xce\xe2\x5d\x33\x40\xe7\x1e\xa7\x21\x8a\xb0\x8c\xe6\x87\xd8\xec\x3d\x9f\xfd\x87\x8a\x9c\x5f\xfc\x71\x4e\x18\x94\xd7\x0a\x39\xc9\x75\x42\x00\x8a\x95\x64\x5b\xb8\x74\xd2\x60\xbf\xe8\x42\x2b\x46\x2b\x2c\xe4\xd1\xda\x37\xc1\xe6\xcc\x33\x39\xbf\xe6\x92\xc1\xfe\xdc\xe2\xdb\x73\x37\x91\x71\x8d\x29\x93\x35\x46\x63\x8d\x07\x1d\x1f\xd8\xe5\x1f\xb3\xe5\xe4\x28\x59\x4d\xe5\x11\xa0\x53\x8f\xd4\xb4\x1c\x8d\x1a\xeb\xb1\xe8\x4b\xe8\x2e\x2e\x6b\xe5\x6b\xa6\xbb\x56\xaf\xaf\xd6\x77\xdc\xec\xb8\x37\xb5\x57\x5a\xb4\x69\xeb\xe6\xe7\x3a\xf4\x7d\x13\x67\x2b\x13\x1d\xcf\x18\x58\x76\x17\xcc\xc2\x12\xc2\xee\x7c\x02\xd5\x90\xba\xe8\xb0\xa4\x11\xe8\x0a\x98\xe1\x64\x05\x59\x26\x83\x31\x8b\x29\x27\x11\xd4\x36\x8c\x56\x51\x42\x23\xc3\xd4\x12\xea\x42\xe4\x81\x30\x19\x80\xe1\x46\xea\x93\xe7\x52\x87\xea\x60\x78\xd5\xb3\x7f\x5b\xa3\x0a\x39\x56\xad\xd0\x5b\x50\xdc\x26\x26\xb7\x9c\x77\xcc\xcd\x77\xaf\x07\xd1\x1c\x5b\x3f\x4f\xca\xe9\x8c\x32\x28\xfc\xff\x3d\xb8\x3d\x93\x84\xf0\xf7\xae\x40\x0c\xcc\x62\x75\x37\xe6\x9d\x88\xf7\x2b\x68\x5a\xaa\x2f\xdb\x28\xca\x38\x27\xf1\x5d\x19\x3d\xd6\x35\x8f\xb1\x19\x5b\xa3\x54\x6b\xba\x20\x42\xe2\xc5\xd2\x2f\x94\xee\x32\x6e\xcc\xcc\x24\x7a\x12\x90\xed\xd8\x00\x51\x00\x88\xb9\x30\xf5\x98\x99\x00\xb5\x5e\xb7\x94\x57\x24\xe8\x17\x47\x09\x82\xa3\x45\x11\x9d\x06\x7d\xa4\x6b\x09\x9e\xa2\xa3\xec\xea\xcc\x62\x08\xd2\xa0\xa2\xbc\x57\xd9\x99\xc2\x79\x86\x73\x5a\x51\x1b\x7a\xcc\x72\x08\xd2\x71\x92\x66\x31\x32\x6e\x42\xe3\x74\xe3\x47\x88\x92\xa3\x01\x12\xff\xf6\xf1\xc3\x87\xa3\xa3\x1d\xf1\xf6\x87\x85\x9f\xaa\x77\xb8\x2e\xcd\x54\x05\xf1\x5b\x73\xb4\x02\x9e\xae\xbb\x6e\x96\x87\x4d\x41\x80\xdd\xe2\x5b\xe6\x21\x80\xa5\xf8\xca\x25\xe6\x84\xc9\x3b\x00\x15\x77\x7b\x21\xbc\xe8\x12\x1e\x0f\xf0\xb0\xad\xcc\x9e\x9c\xe7\xcf\x24\x14\x62\x71\x8f\xbe\xa7\xe0\x41\x7f\x6f\x8c\x71\xa8\x6d\xde\x40\xbf\x55\x96\xc0\x4d\xbd\x79\x26\x51\x5c\x07\xf8\x6e\xd3\xfd\xe0\xd9\xad\x2f\x90\x6d\x70\xe2\x8d\x7e\xb0\x13\xc7\x25\x0b\xb1\xf3\x53\x86\xa2\x74\x31\x51\x42\x5c\x6d\x75\xe7\x98\x00\xb8\xf7\xd0\x62\x2e\x1d\x60\xcc\x62\xcc\x34\x1b\x43\x01\x71\xed\xbc\xd9\x3e\x22\x4c\x6f\xd1\xc2\xdd\x54\x57\xeb\x49\x6f\xe7\x27\x80\xb4\x57\x1f\xf5\x61\x71\x04\x39\xbb\xf1\x3d\x8d\xee\x89\xba\xe7\xa6\x39\x0b\x8b\x2f\xdd\xdc\xfd\xe6\x20\x72\xa6\x70\xbc\xc6\x63\x10\x33\xee\x3b\xaa\x39\x2c\x89\x2d\xd8\xea\x61\x69\xde\x89\xea\xc9\x79\x6a\xfc\x7d\xf5\x5c\x40\xfb\x0e\x65\x6b\xf2\x40\x9d\x6a\xa1\x95\x31\x90\xc8\x7f\x74\xf2\x50\x90\x28\x65\x0e\x99\xbb\x93\x8b\xbe\x02\x9b\x5f\xdd\x5d\xf8\xae\x94\x40\xba\x4e\xeb\xd8\x52\xf9\xc9\x15\x1f\x5b\x00\x5b\x1b\xcc\x10\xb7\x04\x78\x8e\x7a\xf7\x00\x2d\x30\x65\xe6\x18\x40\x31\x3c\x14\x93\x49\x36\x9b\xd5\xde\xc9\x49\xba\x8b\xf2\xc9\xcd\xb3\x7a\x96\x36\x38\x08\xdc\x08\x93\x26\x74\xfb\x9a\x1d\xfa\x86\x94\xaf\x46\x34\xd8\x2e\xd4\xa7\x53\xfb\x26\x6d\x04\x4e\x69\x42\x9e\x47\x63\xda\x91\xfa\x77\xda\x46\xfd\xb3\x5e\x04\x88\xe0\xea\x71\x38\x3b\xef\x37\xa4\x17\x6a\x44\xdc\x9d\x7a\xf2\x49\x61\x71\x0e\xc8\x0b\x87\x55\x03\xde\x94\x6c\x8a\x05\x24\x7c\xef\x1e\x27\x07\xb2\x7d\x1d\xfa\x7e\x6b\xc2\x83\xeb\x74\x41\x10\xbc\x4a\x0c\x74\xfa\x8b\x09\x41\x0f\xc0\xeb\xa8\x06\x88\x16\x59\x22\xe9\x32\x31\xc2\xdf\xb8\xd5\xa2\x39\x66\x33\x8f\xe9\x1f\x7d\xcf\xc8\x23\x52\xb2\x76\xe0\xbb\x61\xbc\xe5\x19\x20\x22\xa3\xf7\x4a\xb7\x09\xa2\x36\x9c\x44\x29\x8f\x21\x39\x62\x86\x79\x0c\xd1\x3c\xb3\xe1\x13\x1c\xdd\x03\x83\x12\x5c\x47\xfa\x8d\x36\x80\x68\xf2\x07\xb4\xfb\x32\x6f\x8d\xb2\x48\xd7\x42\xb7\x04\x0d\xae\x7f\xfa\x71\x81\x70\xc4\x53\xa1\x3d\x51\x96\x38\x47\xc3\x53\x40\xfd\x7a\xa0\x71\x86\x13\xfd\xc6\x2e\x31\xc3\x4b\xb3\x21\x2c\x92\xc2\x73\x82\x81\x94\x0c\x52\xd5\x3f\xa5\xdc\xe4\x02\xc0\x8c\x5f\x9a\x8c\xf8\x9f\xe8\x03\x19\xa0\xeb\x25\xe6\xf7\x03\x74\xb2\x62\x78\x41\xa3\xff\x4e\x27\x55\xfe\x94\x12\x34\x61\x6b\x95\x78\xf7\xec\xb3\xd5\x07\xfd\x6b\x09\x78\x81\xea\x92\xb8\x5f\xa7\x37\xa5\x06\x35\xf2\xd6\x2f\xf5\x35\x31\xb9\xde\x31\xb2\xd3\x0b\xb0\xd2\x50\xb6\x6e\x0e\x1c\x2f\x28\x0b\x6c\xb5\xbd\x72\xb6\x16\x17\xb5\x0a\xa5\x15\x08\xe3\x56\xd6\xed\x2e\x34\xc7\x4b\xac\xac\x1c\x65\x50\x2e\x52\x49\xf4\xbd\x2f\x64\xca\x89\x3a\x27\xdc\xaa\x93\x50\x26\x87\x0a\xfd\x4d\x1d\x85\x64\x94\xa4\x22\xe3\x2d\xc5\x46\x79\xc1\x8e\xcd\xe3\x8d\xda\x49\xba\x58\x42\xf4\x85\x13\x91\x25\x52\x54\xd8\x6b\x25\xb7\xf5\x4e\x02\xf9\xe5\xee\x7e\x21\x12\x9f\x94\xfc\x5a\x6e\x6f\x07\xf8\x19\x48\x84\x1a\x35\xec\xe9\xba\x2b\x76\xe4\xc7\x2f\xd4\xd9\xb6\x45\x88\x4c\xa1\x05\xca\x66\x49\x1d\x37\xf9\x98\x99\x3a\x0d\x9e\xec\xc3\x79\x3e\x8f\x55\xc8\x6c\x4a\xe7\x63\xc0\x51\xef\x8a\x3c\x18\x20\x0c\x36\x06\xbb\xd3\x8b\xe0\x2e\x1f\x00\xc1\x92\x06\x06\x31\xe0\xd7\x1a\x33\x91\x4d\x0e\x73\xb8\x4a\xca\x41\xba\x02\x41\xc2\x12\x2b\x71\x8a\xa2\x39\x4d\xe2\xc3\x32\x18\xd1\x68\x39\x50\xde\xc1\x91\x89\x4d\x08\xf0\x05\xc1\x8a\xeb\x52\x6a\x3a\x5a\xea\xc6\xee\xda\x99\x64\x12\x11\x47\x97\x4f\x85\x71\x1e\x15\x34\x89\x40\x5e\x04\xbe\x81\x97\xf6\x08\xae\x97\x17\x75\xe9\x7a\x6f\x5f\x4e\x04\x73\xd6\x46\x4e\xdc\x84\x5e\x38\x7b\x6a\x30\x73\x92\xa3\x6e\xaa\xc4\x9d\x76\xa1\x3d\x21\x72\xf0\xab\x4b\x49\xb7\x49\x56\x62\x89\x1f\x99\x01\x89\x74\xa2\x47\x6d\x27\x1f\xaa\x79\x2c\x94\x7c\x28\x7c\xe3\x4b\x0a\x75\x1d\x41\x90\x9f\xba\xe4\xc7\x81\x97\xe5\x0d\xa5\x73\xf2\x8c\x96\xdc\xfc\x19\xb3\x1c\xbd\x94\xd7\xfa\x8c\x8a\x82\xdb\x80\x82\x62\x08\xb4\x92\x81\x45\x34\x0c\x74\x06\xa0\x31\x52\x0e\x27\x18\xa8\x7c\xa5\xe4\x74\x92\xc9\x12\xa5\x4a\x70\x9a\x2b\x83\x1c\xbb\xb0\x0e\x4e\x9f\xbe\x34\x45\xf5\xb5\x91\x97\xf6\xc8\xa1\x4a\xc5\xa1\x7b\x14\x53\xcf\x4f\xcb\xd1\x2d\xd3\xc8\xe3\x7d\x6a\xbf\xc3\x4b\xd9\x8c\x86\xf3\x08\x2c\xea\xd8\x63\xec\x0e\x80\x14\x30\x85\x39\xa3\xb9\x03\x99\x78\x49\x1f\x4a\x44\xe1\x19\x41\x0b\x12\xd3\xac\x98\xc8\xb6\x3e\x7a\xb6\x57\x66\x67\x9b\x9d\xa5\x0c\x70\x67\x88\x9e\x83\xb1\xf0\xa8\x6e\x6d\x0d\x41\x03\xa7\x47\x35\xa9\x84\x07\x03\xc5\xf2\x9d\x70\xd1\xb8\x70\xc6\xac\x8b\xe9\x8c\x0a\xf9\x4b\x81\x8d\x78\x83\x7c\xa9\x24\x7b\x3a\xec\x9f\xed\xaa\xee\xa6\xf7\x44\x23\xc6\xed\x2a\x28\xe5\x0a\x9b\x4c\xbb\x2b\x00\x23\x62\x33\xc9\x54\xbf\xbb\x08\xf0\xbf\xb9\xf9\xfa\x9b\x29\x36\xcb\xf1\x72\x49\x38\x32\x05\x67\x8b\x25\x64\x75\x5a\x16\xbc\x65\xcc\xb4\xc2\xf4\xdf\xd7\x17\xe7\xb9\xe4\xce\xed\xa8\x42\xd3\xf0\x33\x98\xba\xa3\xea\x95\x3b\xcf\x92\xa4\x76\xe5\x5a\xb0\x7d\xdd\x9e\x9d\xdd\xfd\x32\x3c\xbb\x1d\x35\xb3\x69\xe5\x3f\xab\x9d\x13\xd7\x13\x33\x27\xfa\x1a\x93\x70\x75\x65\x0b\x62\x1c\x58\xa0\x8c\x98\x51\x6b\x80\x43\x96\x24\x61\x66\xcd\x98\xfd\xcd\xb4\x03\x00\xb8\x8c\x69\x35\x73\xcc\x50\xe3\xc4\x85\xef\x87\x9f\xfd\x4d\x35\xfe\x37\xfd\xec\x21\xca\x07\xf1\x11\x9d\xbb\xb7\xd6\xcc\xab\x71\xba\x6e\x71\x1c\x74\x82\xcf\x73\xe5\x0e\x6e\x76\x3c\x6e\x99\x25\xba\x33\x29\x7f\x3b\x39\x1d\x7a\xee\xfe\x16\x9a\x30\x2e\xbf\x39\xd6\x72\x1e\xda\x1d\xe8\x8c\x2f\x5d\x8c\xdc\x25\x45\x8d\x99\xc6\x13\x40\x09\xda\xb4\xbe\x4f\xe8\x94\x69\x64\x63\x82\xd9\x2c\xc3\x33\x22\x06\xc8\xbe\x7c\xcc\x5c\xc1\x53\x43\x50\xe2\x0a\x69\x60\xa0\x0d\x0f\xb7\x90\x76\x75\x92\x6f\x78\xb1\x84\x10\x0c\x1b\x33\x33\x26\x36\xcb\x9b\xd7\x5e\xd0\xff\xbe\x76\xc3\x51\x3b\xcd\x35\x64\x92\xd6\xd8\x98\xe9\xc5\xd5\x19\x8b\x56\xb7\x03\x07\x10\x54\x38\x0e\xb6\x2e\xe6\xc4\xe6\xc9\x82\x4c\x9f\x81\x96\xa9\x39\x96\x6d\x88\x51\x49\x7a\x8f\x64\x45\x3b\x9c\x75\x97\xd6\xcb\x13\xbb\x18\xf6\x4c\x98\xbe\x55\xef\xfa\xad\xef\x00\x75\xe0\xaa\x79\xed\x9b\xb7\x6d\x2e\xc6\xd6\x48\xf3\x7c\x43\xb1\xe2\x11\x46\x45\x28\x3a\x04\xaf\x77\xc0\xe1\xdf\xba\x4b\xfa\xf7\x8d\x9d\xea\x40\xfd\xdf\xfa\xb5\x26\xdd\xba\xe9\xb5\xca\xc2\x69\x7e\xe9\x0e\x4c\xa4\xa0\x53\xe6\x81\x75\x93\x91\x45\x35\x55\x16\xb6\x8e\x89\x15\xa7\xc8\x4a\x9f\xa6\x0e\x25\x54\x6c\xd4\x9d\x5c\x7f\x6a\xdd\x23\xa7\x21\x98\xcb\xae\x93\x84\x35\xf7\x5c\x20\x60\x6b\xc4\xa4\xc1\x66\x19\xb7\x0c\xa1\x5a\xbc\xa8\xc3\x33\x80\x43\xa4\xf6\xff\xc0\x6d\xa2\x41\xbe\x72\x03\xcd\x0f\x9e\x71\xa1\xc4\xa5\x91\x77\x46\x6a\x2b\x33\x67\xcc\x6c\xfa\x80\x15\xc7\x43\x5b\xb2\x88\xbb\x4f\x75\x9c\x71\xa9\xc1\xb7\xa0\xb1\xca\xbc\xd6\x15\x96\x63\x06\xb9\xe9\x0c\x4c\xc8\x89\x80\xec\x29\x93\x81\x6d\xbe\xf0\xe8\xac\x30\x73\x1c\xe5\x6b\x64\x5e\x41\x0d\x08\xee\xf9\xef\xd4\xff\xff\xf5\xbb\xff\x3f\x00\x00\xff\xff\x98\xa6\x5e\x4c\xa2\xf6\x02\x00") func adminSwaggerJsonBytes() ([]byte, error) { return bindataRead( @@ -92,7 +92,7 @@ func adminSwaggerJson() (*asset, error) { return nil, err } - info := bindataFileInfo{name: "admin.swagger.json", size: 191548, mode: os.FileMode(420), modTime: time.Unix(1562572800, 0)} + info := bindataFileInfo{name: "admin.swagger.json", size: 194210, mode: os.FileMode(420), modTime: time.Unix(1562572800, 0)} a := &asset{bytes: bytes, info: info} return a, nil } diff --git a/flyteidl/gen/pb-java/flyteidl/admin/WorkflowOuterClass.java b/flyteidl/gen/pb-java/flyteidl/admin/WorkflowOuterClass.java index d52dfb94477..9491f44fdd6 100644 --- a/flyteidl/gen/pb-java/flyteidl/admin/WorkflowOuterClass.java +++ b/flyteidl/gen/pb-java/flyteidl/admin/WorkflowOuterClass.java @@ -14,6 +14,124 @@ public static void registerAllExtensions( registerAllExtensions( (com.google.protobuf.ExtensionRegistryLite) registry); } + /** + *
+   * The status of the workflow is used to control its visibility in the UI.
+   * 
+ * + * Protobuf enum {@code flyteidl.admin.WorkflowState} + */ + public enum WorkflowState + implements com.google.protobuf.ProtocolMessageEnum { + /** + *
+     * By default, all workflows are considered active and under development.
+     * 
+ * + * WORKFLOW_ACTIVE = 0; + */ + WORKFLOW_ACTIVE(0), + /** + *
+     * Archived workflows are no longer visible in the UI.
+     * 
+ * + * WORKFLOW_ARCHIVED = 1; + */ + WORKFLOW_ARCHIVED(1), + UNRECOGNIZED(-1), + ; + + /** + *
+     * By default, all workflows are considered active and under development.
+     * 
+ * + * WORKFLOW_ACTIVE = 0; + */ + public static final int WORKFLOW_ACTIVE_VALUE = 0; + /** + *
+     * Archived workflows are no longer visible in the UI.
+     * 
+ * + * WORKFLOW_ARCHIVED = 1; + */ + public static final int WORKFLOW_ARCHIVED_VALUE = 1; + + + public final int getNumber() { + if (this == UNRECOGNIZED) { + throw new java.lang.IllegalArgumentException( + "Can't get the number of an unknown enum value."); + } + return value; + } + + /** + * @deprecated Use {@link #forNumber(int)} instead. + */ + @java.lang.Deprecated + public static WorkflowState valueOf(int value) { + return forNumber(value); + } + + public static WorkflowState forNumber(int value) { + switch (value) { + case 0: return WORKFLOW_ACTIVE; + case 1: return WORKFLOW_ARCHIVED; + default: return null; + } + } + + public static com.google.protobuf.Internal.EnumLiteMap + internalGetValueMap() { + return internalValueMap; + } + private static final com.google.protobuf.Internal.EnumLiteMap< + WorkflowState> internalValueMap = + new com.google.protobuf.Internal.EnumLiteMap() { + public WorkflowState findValueByNumber(int number) { + return WorkflowState.forNumber(number); + } + }; + + public final com.google.protobuf.Descriptors.EnumValueDescriptor + getValueDescriptor() { + return getDescriptor().getValues().get(ordinal()); + } + public final com.google.protobuf.Descriptors.EnumDescriptor + getDescriptorForType() { + return getDescriptor(); + } + public static final com.google.protobuf.Descriptors.EnumDescriptor + getDescriptor() { + return flyteidl.admin.WorkflowOuterClass.getDescriptor().getEnumTypes().get(0); + } + + private static final WorkflowState[] VALUES = values(); + + public static WorkflowState valueOf( + com.google.protobuf.Descriptors.EnumValueDescriptor desc) { + if (desc.getType() != getDescriptor()) { + throw new java.lang.IllegalArgumentException( + "EnumValueDescriptor is not for this type."); + } + if (desc.getIndex() == -1) { + return UNRECOGNIZED; + } + return VALUES[desc.getIndex()]; + } + + private final int value; + + private WorkflowState(int value) { + this.value = value; + } + + // @@protoc_insertion_point(enum_scope:flyteidl.admin.WorkflowState) + } + public interface WorkflowCreateRequestOrBuilder extends // @@protoc_insertion_point(interface_extends:flyteidl.admin.WorkflowCreateRequest) com.google.protobuf.MessageOrBuilder { @@ -5521,120 +5639,1370 @@ public flyteidl.admin.WorkflowOuterClass.WorkflowClosure getDefaultInstanceForTy } - private static final com.google.protobuf.Descriptors.Descriptor - internal_static_flyteidl_admin_WorkflowCreateRequest_descriptor; - private static final - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable - internal_static_flyteidl_admin_WorkflowCreateRequest_fieldAccessorTable; - private static final com.google.protobuf.Descriptors.Descriptor - internal_static_flyteidl_admin_WorkflowCreateResponse_descriptor; - private static final - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable - internal_static_flyteidl_admin_WorkflowCreateResponse_fieldAccessorTable; - private static final com.google.protobuf.Descriptors.Descriptor - internal_static_flyteidl_admin_Workflow_descriptor; - private static final - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable - internal_static_flyteidl_admin_Workflow_fieldAccessorTable; - private static final com.google.protobuf.Descriptors.Descriptor - internal_static_flyteidl_admin_WorkflowList_descriptor; - private static final - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable - internal_static_flyteidl_admin_WorkflowList_fieldAccessorTable; - private static final com.google.protobuf.Descriptors.Descriptor - internal_static_flyteidl_admin_WorkflowSpec_descriptor; - private static final - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable - internal_static_flyteidl_admin_WorkflowSpec_fieldAccessorTable; - private static final com.google.protobuf.Descriptors.Descriptor - internal_static_flyteidl_admin_WorkflowClosure_descriptor; - private static final - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable - internal_static_flyteidl_admin_WorkflowClosure_fieldAccessorTable; + public interface WorkflowUpdateRequestOrBuilder extends + // @@protoc_insertion_point(interface_extends:flyteidl.admin.WorkflowUpdateRequest) + com.google.protobuf.MessageOrBuilder { - public static com.google.protobuf.Descriptors.FileDescriptor - getDescriptor() { - return descriptor; + /** + *
+     * Identifier of workflow for which to change state.
+     * 
+ * + * .flyteidl.core.Identifier id = 1; + */ + boolean hasId(); + /** + *
+     * Identifier of workflow for which to change state.
+     * 
+ * + * .flyteidl.core.Identifier id = 1; + */ + flyteidl.core.IdentifierOuterClass.Identifier getId(); + /** + *
+     * Identifier of workflow for which to change state.
+     * 
+ * + * .flyteidl.core.Identifier id = 1; + */ + flyteidl.core.IdentifierOuterClass.IdentifierOrBuilder getIdOrBuilder(); + + /** + *
+     * Desired state to apply to the workflow.
+     * 
+ * + * .flyteidl.admin.WorkflowState state = 2; + */ + int getStateValue(); + /** + *
+     * Desired state to apply to the workflow.
+     * 
+ * + * .flyteidl.admin.WorkflowState state = 2; + */ + flyteidl.admin.WorkflowOuterClass.WorkflowState getState(); } - private static com.google.protobuf.Descriptors.FileDescriptor - descriptor; - static { - java.lang.String[] descriptorData = { - "\n\035flyteidl/admin/workflow.proto\022\016flyteid" + - "l.admin\032\034flyteidl/core/compiler.proto\032\036f" + - "lyteidl/core/identifier.proto\032\034flyteidl/" + - "core/workflow.proto\032\033flyteidl/admin/comm" + - "on.proto\032\037google/protobuf/timestamp.prot" + - "o\"j\n\025WorkflowCreateRequest\022%\n\002id\030\001 \001(\0132\031" + - ".flyteidl.core.Identifier\022*\n\004spec\030\002 \001(\0132" + - "\034.flyteidl.admin.WorkflowSpec\"\030\n\026Workflo" + - "wCreateResponse\"c\n\010Workflow\022%\n\002id\030\001 \001(\0132" + - "\031.flyteidl.core.Identifier\0220\n\007closure\030\002 " + - "\001(\0132\037.flyteidl.admin.WorkflowClosure\"J\n\014" + - "WorkflowList\022+\n\tworkflows\030\001 \003(\0132\030.flytei" + - "dl.admin.Workflow\022\r\n\005token\030\002 \001(\t\"y\n\014Work" + - "flowSpec\0221\n\010template\030\001 \001(\0132\037.flyteidl.co" + - "re.WorkflowTemplate\0226\n\rsub_workflows\030\002 \003" + - "(\0132\037.flyteidl.core.WorkflowTemplate\"\204\001\n\017" + - "WorkflowClosure\022A\n\021compiled_workflow\030\001 \001" + - "(\0132&.flyteidl.core.CompiledWorkflowClosu" + - "re\022.\n\ncreated_at\030\002 \001(\0132\032.google.protobuf" + - ".TimestampB3Z1github.com/lyft/flyteidl/g" + - "en/pb-go/flyteidl/adminb\006proto3" - }; - com.google.protobuf.Descriptors.FileDescriptor.InternalDescriptorAssigner assigner = - new com.google.protobuf.Descriptors.FileDescriptor. InternalDescriptorAssigner() { - public com.google.protobuf.ExtensionRegistry assignDescriptors( - com.google.protobuf.Descriptors.FileDescriptor root) { - descriptor = root; - return null; + /** + *
+   * Request to set the referenced workflow state to the configured value.
+   * 
+ * + * Protobuf type {@code flyteidl.admin.WorkflowUpdateRequest} + */ + public static final class WorkflowUpdateRequest extends + com.google.protobuf.GeneratedMessageV3 implements + // @@protoc_insertion_point(message_implements:flyteidl.admin.WorkflowUpdateRequest) + WorkflowUpdateRequestOrBuilder { + private static final long serialVersionUID = 0L; + // Use WorkflowUpdateRequest.newBuilder() to construct. + private WorkflowUpdateRequest(com.google.protobuf.GeneratedMessageV3.Builder builder) { + super(builder); + } + private WorkflowUpdateRequest() { + state_ = 0; + } + + @java.lang.Override + public final com.google.protobuf.UnknownFieldSet + getUnknownFields() { + return this.unknownFields; + } + private WorkflowUpdateRequest( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + this(); + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + int mutable_bitField0_ = 0; + com.google.protobuf.UnknownFieldSet.Builder unknownFields = + com.google.protobuf.UnknownFieldSet.newBuilder(); + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 10: { + flyteidl.core.IdentifierOuterClass.Identifier.Builder subBuilder = null; + if (id_ != null) { + subBuilder = id_.toBuilder(); + } + id_ = input.readMessage(flyteidl.core.IdentifierOuterClass.Identifier.parser(), extensionRegistry); + if (subBuilder != null) { + subBuilder.mergeFrom(id_); + id_ = subBuilder.buildPartial(); + } + + break; + } + case 16: { + int rawValue = input.readEnum(); + + state_ = rawValue; + break; + } + default: { + if (!parseUnknownField( + input, unknownFields, extensionRegistry, tag)) { + done = true; + } + break; + } } - }; - com.google.protobuf.Descriptors.FileDescriptor - .internalBuildGeneratedFileFrom(descriptorData, - new com.google.protobuf.Descriptors.FileDescriptor[] { - flyteidl.core.Compiler.getDescriptor(), - flyteidl.core.IdentifierOuterClass.getDescriptor(), - flyteidl.core.Workflow.getDescriptor(), - flyteidl.admin.Common.getDescriptor(), - com.google.protobuf.TimestampProto.getDescriptor(), - }, assigner); - internal_static_flyteidl_admin_WorkflowCreateRequest_descriptor = - getDescriptor().getMessageTypes().get(0); - internal_static_flyteidl_admin_WorkflowCreateRequest_fieldAccessorTable = new - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( - internal_static_flyteidl_admin_WorkflowCreateRequest_descriptor, - new java.lang.String[] { "Id", "Spec", }); - internal_static_flyteidl_admin_WorkflowCreateResponse_descriptor = - getDescriptor().getMessageTypes().get(1); - internal_static_flyteidl_admin_WorkflowCreateResponse_fieldAccessorTable = new - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( - internal_static_flyteidl_admin_WorkflowCreateResponse_descriptor, - new java.lang.String[] { }); - internal_static_flyteidl_admin_Workflow_descriptor = - getDescriptor().getMessageTypes().get(2); - internal_static_flyteidl_admin_Workflow_fieldAccessorTable = new - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( - internal_static_flyteidl_admin_Workflow_descriptor, - new java.lang.String[] { "Id", "Closure", }); - internal_static_flyteidl_admin_WorkflowList_descriptor = - getDescriptor().getMessageTypes().get(3); - internal_static_flyteidl_admin_WorkflowList_fieldAccessorTable = new - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( - internal_static_flyteidl_admin_WorkflowList_descriptor, - new java.lang.String[] { "Workflows", "Token", }); - internal_static_flyteidl_admin_WorkflowSpec_descriptor = - getDescriptor().getMessageTypes().get(4); - internal_static_flyteidl_admin_WorkflowSpec_fieldAccessorTable = new - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( - internal_static_flyteidl_admin_WorkflowSpec_descriptor, - new java.lang.String[] { "Template", "SubWorkflows", }); - internal_static_flyteidl_admin_WorkflowClosure_descriptor = - getDescriptor().getMessageTypes().get(5); - internal_static_flyteidl_admin_WorkflowClosure_fieldAccessorTable = new - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( - internal_static_flyteidl_admin_WorkflowClosure_descriptor, - new java.lang.String[] { "CompiledWorkflow", "CreatedAt", }); + } + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(this); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException( + e).setUnfinishedMessage(this); + } finally { + this.unknownFields = unknownFields.build(); + makeExtensionsImmutable(); + } + } + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return flyteidl.admin.WorkflowOuterClass.internal_static_flyteidl_admin_WorkflowUpdateRequest_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return flyteidl.admin.WorkflowOuterClass.internal_static_flyteidl_admin_WorkflowUpdateRequest_fieldAccessorTable + .ensureFieldAccessorsInitialized( + flyteidl.admin.WorkflowOuterClass.WorkflowUpdateRequest.class, flyteidl.admin.WorkflowOuterClass.WorkflowUpdateRequest.Builder.class); + } + + public static final int ID_FIELD_NUMBER = 1; + private flyteidl.core.IdentifierOuterClass.Identifier id_; + /** + *
+     * Identifier of workflow for which to change state.
+     * 
+ * + * .flyteidl.core.Identifier id = 1; + */ + public boolean hasId() { + return id_ != null; + } + /** + *
+     * Identifier of workflow for which to change state.
+     * 
+ * + * .flyteidl.core.Identifier id = 1; + */ + public flyteidl.core.IdentifierOuterClass.Identifier getId() { + return id_ == null ? flyteidl.core.IdentifierOuterClass.Identifier.getDefaultInstance() : id_; + } + /** + *
+     * Identifier of workflow for which to change state.
+     * 
+ * + * .flyteidl.core.Identifier id = 1; + */ + public flyteidl.core.IdentifierOuterClass.IdentifierOrBuilder getIdOrBuilder() { + return getId(); + } + + public static final int STATE_FIELD_NUMBER = 2; + private int state_; + /** + *
+     * Desired state to apply to the workflow.
+     * 
+ * + * .flyteidl.admin.WorkflowState state = 2; + */ + public int getStateValue() { + return state_; + } + /** + *
+     * Desired state to apply to the workflow.
+     * 
+ * + * .flyteidl.admin.WorkflowState state = 2; + */ + public flyteidl.admin.WorkflowOuterClass.WorkflowState getState() { + @SuppressWarnings("deprecation") + flyteidl.admin.WorkflowOuterClass.WorkflowState result = flyteidl.admin.WorkflowOuterClass.WorkflowState.valueOf(state_); + return result == null ? flyteidl.admin.WorkflowOuterClass.WorkflowState.UNRECOGNIZED : result; + } + + private byte memoizedIsInitialized = -1; + @java.lang.Override + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; + if (isInitialized == 1) return true; + if (isInitialized == 0) return false; + + memoizedIsInitialized = 1; + return true; + } + + @java.lang.Override + public void writeTo(com.google.protobuf.CodedOutputStream output) + throws java.io.IOException { + if (id_ != null) { + output.writeMessage(1, getId()); + } + if (state_ != flyteidl.admin.WorkflowOuterClass.WorkflowState.WORKFLOW_ACTIVE.getNumber()) { + output.writeEnum(2, state_); + } + unknownFields.writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + if (id_ != null) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(1, getId()); + } + if (state_ != flyteidl.admin.WorkflowOuterClass.WorkflowState.WORKFLOW_ACTIVE.getNumber()) { + size += com.google.protobuf.CodedOutputStream + .computeEnumSize(2, state_); + } + size += unknownFields.getSerializedSize(); + memoizedSize = size; + return size; + } + + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj instanceof flyteidl.admin.WorkflowOuterClass.WorkflowUpdateRequest)) { + return super.equals(obj); + } + flyteidl.admin.WorkflowOuterClass.WorkflowUpdateRequest other = (flyteidl.admin.WorkflowOuterClass.WorkflowUpdateRequest) obj; + + if (hasId() != other.hasId()) return false; + if (hasId()) { + if (!getId() + .equals(other.getId())) return false; + } + if (state_ != other.state_) return false; + if (!unknownFields.equals(other.unknownFields)) return false; + return true; + } + + @java.lang.Override + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; + } + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + if (hasId()) { + hash = (37 * hash) + ID_FIELD_NUMBER; + hash = (53 * hash) + getId().hashCode(); + } + hash = (37 * hash) + STATE_FIELD_NUMBER; + hash = (53 * hash) + state_; + hash = (29 * hash) + unknownFields.hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static flyteidl.admin.WorkflowOuterClass.WorkflowUpdateRequest parseFrom( + java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static flyteidl.admin.WorkflowOuterClass.WorkflowUpdateRequest parseFrom( + java.nio.ByteBuffer data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static flyteidl.admin.WorkflowOuterClass.WorkflowUpdateRequest parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static flyteidl.admin.WorkflowOuterClass.WorkflowUpdateRequest parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static flyteidl.admin.WorkflowOuterClass.WorkflowUpdateRequest parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static flyteidl.admin.WorkflowOuterClass.WorkflowUpdateRequest parseFrom( + byte[] data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static flyteidl.admin.WorkflowOuterClass.WorkflowUpdateRequest parseFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static flyteidl.admin.WorkflowOuterClass.WorkflowUpdateRequest parseFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + public static flyteidl.admin.WorkflowOuterClass.WorkflowUpdateRequest parseDelimitedFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input); + } + public static flyteidl.admin.WorkflowOuterClass.WorkflowUpdateRequest parseDelimitedFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input, extensionRegistry); + } + public static flyteidl.admin.WorkflowOuterClass.WorkflowUpdateRequest parseFrom( + com.google.protobuf.CodedInputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static flyteidl.admin.WorkflowOuterClass.WorkflowUpdateRequest parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + + @java.lang.Override + public Builder newBuilderForType() { return newBuilder(); } + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } + public static Builder newBuilder(flyteidl.admin.WorkflowOuterClass.WorkflowUpdateRequest prototype) { + return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); + } + @java.lang.Override + public Builder toBuilder() { + return this == DEFAULT_INSTANCE + ? new Builder() : new Builder().mergeFrom(this); + } + + @java.lang.Override + protected Builder newBuilderForType( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } + /** + *
+     * Request to set the referenced workflow state to the configured value.
+     * 
+ * + * Protobuf type {@code flyteidl.admin.WorkflowUpdateRequest} + */ + public static final class Builder extends + com.google.protobuf.GeneratedMessageV3.Builder implements + // @@protoc_insertion_point(builder_implements:flyteidl.admin.WorkflowUpdateRequest) + flyteidl.admin.WorkflowOuterClass.WorkflowUpdateRequestOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return flyteidl.admin.WorkflowOuterClass.internal_static_flyteidl_admin_WorkflowUpdateRequest_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return flyteidl.admin.WorkflowOuterClass.internal_static_flyteidl_admin_WorkflowUpdateRequest_fieldAccessorTable + .ensureFieldAccessorsInitialized( + flyteidl.admin.WorkflowOuterClass.WorkflowUpdateRequest.class, flyteidl.admin.WorkflowOuterClass.WorkflowUpdateRequest.Builder.class); + } + + // Construct using flyteidl.admin.WorkflowOuterClass.WorkflowUpdateRequest.newBuilder() + private Builder() { + maybeForceBuilderInitialization(); + } + + private Builder( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + super(parent); + maybeForceBuilderInitialization(); + } + private void maybeForceBuilderInitialization() { + if (com.google.protobuf.GeneratedMessageV3 + .alwaysUseFieldBuilders) { + } + } + @java.lang.Override + public Builder clear() { + super.clear(); + if (idBuilder_ == null) { + id_ = null; + } else { + id_ = null; + idBuilder_ = null; + } + state_ = 0; + + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor + getDescriptorForType() { + return flyteidl.admin.WorkflowOuterClass.internal_static_flyteidl_admin_WorkflowUpdateRequest_descriptor; + } + + @java.lang.Override + public flyteidl.admin.WorkflowOuterClass.WorkflowUpdateRequest getDefaultInstanceForType() { + return flyteidl.admin.WorkflowOuterClass.WorkflowUpdateRequest.getDefaultInstance(); + } + + @java.lang.Override + public flyteidl.admin.WorkflowOuterClass.WorkflowUpdateRequest build() { + flyteidl.admin.WorkflowOuterClass.WorkflowUpdateRequest result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public flyteidl.admin.WorkflowOuterClass.WorkflowUpdateRequest buildPartial() { + flyteidl.admin.WorkflowOuterClass.WorkflowUpdateRequest result = new flyteidl.admin.WorkflowOuterClass.WorkflowUpdateRequest(this); + if (idBuilder_ == null) { + result.id_ = id_; + } else { + result.id_ = idBuilder_.build(); + } + result.state_ = state_; + onBuilt(); + return result; + } + + @java.lang.Override + public Builder clone() { + return super.clone(); + } + @java.lang.Override + public Builder setField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.setField(field, value); + } + @java.lang.Override + public Builder clearField( + com.google.protobuf.Descriptors.FieldDescriptor field) { + return super.clearField(field); + } + @java.lang.Override + public Builder clearOneof( + com.google.protobuf.Descriptors.OneofDescriptor oneof) { + return super.clearOneof(oneof); + } + @java.lang.Override + public Builder setRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + int index, java.lang.Object value) { + return super.setRepeatedField(field, index, value); + } + @java.lang.Override + public Builder addRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.addRepeatedField(field, value); + } + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof flyteidl.admin.WorkflowOuterClass.WorkflowUpdateRequest) { + return mergeFrom((flyteidl.admin.WorkflowOuterClass.WorkflowUpdateRequest)other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(flyteidl.admin.WorkflowOuterClass.WorkflowUpdateRequest other) { + if (other == flyteidl.admin.WorkflowOuterClass.WorkflowUpdateRequest.getDefaultInstance()) return this; + if (other.hasId()) { + mergeId(other.getId()); + } + if (other.state_ != 0) { + setStateValue(other.getStateValue()); + } + this.mergeUnknownFields(other.unknownFields); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + flyteidl.admin.WorkflowOuterClass.WorkflowUpdateRequest parsedMessage = null; + try { + parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + parsedMessage = (flyteidl.admin.WorkflowOuterClass.WorkflowUpdateRequest) e.getUnfinishedMessage(); + throw e.unwrapIOException(); + } finally { + if (parsedMessage != null) { + mergeFrom(parsedMessage); + } + } + return this; + } + + private flyteidl.core.IdentifierOuterClass.Identifier id_; + private com.google.protobuf.SingleFieldBuilderV3< + flyteidl.core.IdentifierOuterClass.Identifier, flyteidl.core.IdentifierOuterClass.Identifier.Builder, flyteidl.core.IdentifierOuterClass.IdentifierOrBuilder> idBuilder_; + /** + *
+       * Identifier of workflow for which to change state.
+       * 
+ * + * .flyteidl.core.Identifier id = 1; + */ + public boolean hasId() { + return idBuilder_ != null || id_ != null; + } + /** + *
+       * Identifier of workflow for which to change state.
+       * 
+ * + * .flyteidl.core.Identifier id = 1; + */ + public flyteidl.core.IdentifierOuterClass.Identifier getId() { + if (idBuilder_ == null) { + return id_ == null ? flyteidl.core.IdentifierOuterClass.Identifier.getDefaultInstance() : id_; + } else { + return idBuilder_.getMessage(); + } + } + /** + *
+       * Identifier of workflow for which to change state.
+       * 
+ * + * .flyteidl.core.Identifier id = 1; + */ + public Builder setId(flyteidl.core.IdentifierOuterClass.Identifier value) { + if (idBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + id_ = value; + onChanged(); + } else { + idBuilder_.setMessage(value); + } + + return this; + } + /** + *
+       * Identifier of workflow for which to change state.
+       * 
+ * + * .flyteidl.core.Identifier id = 1; + */ + public Builder setId( + flyteidl.core.IdentifierOuterClass.Identifier.Builder builderForValue) { + if (idBuilder_ == null) { + id_ = builderForValue.build(); + onChanged(); + } else { + idBuilder_.setMessage(builderForValue.build()); + } + + return this; + } + /** + *
+       * Identifier of workflow for which to change state.
+       * 
+ * + * .flyteidl.core.Identifier id = 1; + */ + public Builder mergeId(flyteidl.core.IdentifierOuterClass.Identifier value) { + if (idBuilder_ == null) { + if (id_ != null) { + id_ = + flyteidl.core.IdentifierOuterClass.Identifier.newBuilder(id_).mergeFrom(value).buildPartial(); + } else { + id_ = value; + } + onChanged(); + } else { + idBuilder_.mergeFrom(value); + } + + return this; + } + /** + *
+       * Identifier of workflow for which to change state.
+       * 
+ * + * .flyteidl.core.Identifier id = 1; + */ + public Builder clearId() { + if (idBuilder_ == null) { + id_ = null; + onChanged(); + } else { + id_ = null; + idBuilder_ = null; + } + + return this; + } + /** + *
+       * Identifier of workflow for which to change state.
+       * 
+ * + * .flyteidl.core.Identifier id = 1; + */ + public flyteidl.core.IdentifierOuterClass.Identifier.Builder getIdBuilder() { + + onChanged(); + return getIdFieldBuilder().getBuilder(); + } + /** + *
+       * Identifier of workflow for which to change state.
+       * 
+ * + * .flyteidl.core.Identifier id = 1; + */ + public flyteidl.core.IdentifierOuterClass.IdentifierOrBuilder getIdOrBuilder() { + if (idBuilder_ != null) { + return idBuilder_.getMessageOrBuilder(); + } else { + return id_ == null ? + flyteidl.core.IdentifierOuterClass.Identifier.getDefaultInstance() : id_; + } + } + /** + *
+       * Identifier of workflow for which to change state.
+       * 
+ * + * .flyteidl.core.Identifier id = 1; + */ + private com.google.protobuf.SingleFieldBuilderV3< + flyteidl.core.IdentifierOuterClass.Identifier, flyteidl.core.IdentifierOuterClass.Identifier.Builder, flyteidl.core.IdentifierOuterClass.IdentifierOrBuilder> + getIdFieldBuilder() { + if (idBuilder_ == null) { + idBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + flyteidl.core.IdentifierOuterClass.Identifier, flyteidl.core.IdentifierOuterClass.Identifier.Builder, flyteidl.core.IdentifierOuterClass.IdentifierOrBuilder>( + getId(), + getParentForChildren(), + isClean()); + id_ = null; + } + return idBuilder_; + } + + private int state_ = 0; + /** + *
+       * Desired state to apply to the workflow.
+       * 
+ * + * .flyteidl.admin.WorkflowState state = 2; + */ + public int getStateValue() { + return state_; + } + /** + *
+       * Desired state to apply to the workflow.
+       * 
+ * + * .flyteidl.admin.WorkflowState state = 2; + */ + public Builder setStateValue(int value) { + state_ = value; + onChanged(); + return this; + } + /** + *
+       * Desired state to apply to the workflow.
+       * 
+ * + * .flyteidl.admin.WorkflowState state = 2; + */ + public flyteidl.admin.WorkflowOuterClass.WorkflowState getState() { + @SuppressWarnings("deprecation") + flyteidl.admin.WorkflowOuterClass.WorkflowState result = flyteidl.admin.WorkflowOuterClass.WorkflowState.valueOf(state_); + return result == null ? flyteidl.admin.WorkflowOuterClass.WorkflowState.UNRECOGNIZED : result; + } + /** + *
+       * Desired state to apply to the workflow.
+       * 
+ * + * .flyteidl.admin.WorkflowState state = 2; + */ + public Builder setState(flyteidl.admin.WorkflowOuterClass.WorkflowState value) { + if (value == null) { + throw new NullPointerException(); + } + + state_ = value.getNumber(); + onChanged(); + return this; + } + /** + *
+       * Desired state to apply to the workflow.
+       * 
+ * + * .flyteidl.admin.WorkflowState state = 2; + */ + public Builder clearState() { + + state_ = 0; + onChanged(); + return this; + } + @java.lang.Override + public final Builder setUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.setUnknownFields(unknownFields); + } + + @java.lang.Override + public final Builder mergeUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.mergeUnknownFields(unknownFields); + } + + + // @@protoc_insertion_point(builder_scope:flyteidl.admin.WorkflowUpdateRequest) + } + + // @@protoc_insertion_point(class_scope:flyteidl.admin.WorkflowUpdateRequest) + private static final flyteidl.admin.WorkflowOuterClass.WorkflowUpdateRequest DEFAULT_INSTANCE; + static { + DEFAULT_INSTANCE = new flyteidl.admin.WorkflowOuterClass.WorkflowUpdateRequest(); + } + + public static flyteidl.admin.WorkflowOuterClass.WorkflowUpdateRequest getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser + PARSER = new com.google.protobuf.AbstractParser() { + @java.lang.Override + public WorkflowUpdateRequest parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return new WorkflowUpdateRequest(input, extensionRegistry); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } + + @java.lang.Override + public flyteidl.admin.WorkflowOuterClass.WorkflowUpdateRequest getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + + } + + public interface WorkflowUpdateResponseOrBuilder extends + // @@protoc_insertion_point(interface_extends:flyteidl.admin.WorkflowUpdateResponse) + com.google.protobuf.MessageOrBuilder { + } + /** + *
+   * Purposefully empty, may be populated in the future.
+   * 
+ * + * Protobuf type {@code flyteidl.admin.WorkflowUpdateResponse} + */ + public static final class WorkflowUpdateResponse extends + com.google.protobuf.GeneratedMessageV3 implements + // @@protoc_insertion_point(message_implements:flyteidl.admin.WorkflowUpdateResponse) + WorkflowUpdateResponseOrBuilder { + private static final long serialVersionUID = 0L; + // Use WorkflowUpdateResponse.newBuilder() to construct. + private WorkflowUpdateResponse(com.google.protobuf.GeneratedMessageV3.Builder builder) { + super(builder); + } + private WorkflowUpdateResponse() { + } + + @java.lang.Override + public final com.google.protobuf.UnknownFieldSet + getUnknownFields() { + return this.unknownFields; + } + private WorkflowUpdateResponse( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + this(); + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + com.google.protobuf.UnknownFieldSet.Builder unknownFields = + com.google.protobuf.UnknownFieldSet.newBuilder(); + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + default: { + if (!parseUnknownField( + input, unknownFields, extensionRegistry, tag)) { + done = true; + } + break; + } + } + } + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(this); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException( + e).setUnfinishedMessage(this); + } finally { + this.unknownFields = unknownFields.build(); + makeExtensionsImmutable(); + } + } + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return flyteidl.admin.WorkflowOuterClass.internal_static_flyteidl_admin_WorkflowUpdateResponse_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return flyteidl.admin.WorkflowOuterClass.internal_static_flyteidl_admin_WorkflowUpdateResponse_fieldAccessorTable + .ensureFieldAccessorsInitialized( + flyteidl.admin.WorkflowOuterClass.WorkflowUpdateResponse.class, flyteidl.admin.WorkflowOuterClass.WorkflowUpdateResponse.Builder.class); + } + + private byte memoizedIsInitialized = -1; + @java.lang.Override + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; + if (isInitialized == 1) return true; + if (isInitialized == 0) return false; + + memoizedIsInitialized = 1; + return true; + } + + @java.lang.Override + public void writeTo(com.google.protobuf.CodedOutputStream output) + throws java.io.IOException { + unknownFields.writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + size += unknownFields.getSerializedSize(); + memoizedSize = size; + return size; + } + + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj instanceof flyteidl.admin.WorkflowOuterClass.WorkflowUpdateResponse)) { + return super.equals(obj); + } + flyteidl.admin.WorkflowOuterClass.WorkflowUpdateResponse other = (flyteidl.admin.WorkflowOuterClass.WorkflowUpdateResponse) obj; + + if (!unknownFields.equals(other.unknownFields)) return false; + return true; + } + + @java.lang.Override + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; + } + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + hash = (29 * hash) + unknownFields.hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static flyteidl.admin.WorkflowOuterClass.WorkflowUpdateResponse parseFrom( + java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static flyteidl.admin.WorkflowOuterClass.WorkflowUpdateResponse parseFrom( + java.nio.ByteBuffer data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static flyteidl.admin.WorkflowOuterClass.WorkflowUpdateResponse parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static flyteidl.admin.WorkflowOuterClass.WorkflowUpdateResponse parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static flyteidl.admin.WorkflowOuterClass.WorkflowUpdateResponse parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static flyteidl.admin.WorkflowOuterClass.WorkflowUpdateResponse parseFrom( + byte[] data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static flyteidl.admin.WorkflowOuterClass.WorkflowUpdateResponse parseFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static flyteidl.admin.WorkflowOuterClass.WorkflowUpdateResponse parseFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + public static flyteidl.admin.WorkflowOuterClass.WorkflowUpdateResponse parseDelimitedFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input); + } + public static flyteidl.admin.WorkflowOuterClass.WorkflowUpdateResponse parseDelimitedFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input, extensionRegistry); + } + public static flyteidl.admin.WorkflowOuterClass.WorkflowUpdateResponse parseFrom( + com.google.protobuf.CodedInputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static flyteidl.admin.WorkflowOuterClass.WorkflowUpdateResponse parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + + @java.lang.Override + public Builder newBuilderForType() { return newBuilder(); } + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } + public static Builder newBuilder(flyteidl.admin.WorkflowOuterClass.WorkflowUpdateResponse prototype) { + return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); + } + @java.lang.Override + public Builder toBuilder() { + return this == DEFAULT_INSTANCE + ? new Builder() : new Builder().mergeFrom(this); + } + + @java.lang.Override + protected Builder newBuilderForType( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } + /** + *
+     * Purposefully empty, may be populated in the future.
+     * 
+ * + * Protobuf type {@code flyteidl.admin.WorkflowUpdateResponse} + */ + public static final class Builder extends + com.google.protobuf.GeneratedMessageV3.Builder implements + // @@protoc_insertion_point(builder_implements:flyteidl.admin.WorkflowUpdateResponse) + flyteidl.admin.WorkflowOuterClass.WorkflowUpdateResponseOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return flyteidl.admin.WorkflowOuterClass.internal_static_flyteidl_admin_WorkflowUpdateResponse_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return flyteidl.admin.WorkflowOuterClass.internal_static_flyteidl_admin_WorkflowUpdateResponse_fieldAccessorTable + .ensureFieldAccessorsInitialized( + flyteidl.admin.WorkflowOuterClass.WorkflowUpdateResponse.class, flyteidl.admin.WorkflowOuterClass.WorkflowUpdateResponse.Builder.class); + } + + // Construct using flyteidl.admin.WorkflowOuterClass.WorkflowUpdateResponse.newBuilder() + private Builder() { + maybeForceBuilderInitialization(); + } + + private Builder( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + super(parent); + maybeForceBuilderInitialization(); + } + private void maybeForceBuilderInitialization() { + if (com.google.protobuf.GeneratedMessageV3 + .alwaysUseFieldBuilders) { + } + } + @java.lang.Override + public Builder clear() { + super.clear(); + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor + getDescriptorForType() { + return flyteidl.admin.WorkflowOuterClass.internal_static_flyteidl_admin_WorkflowUpdateResponse_descriptor; + } + + @java.lang.Override + public flyteidl.admin.WorkflowOuterClass.WorkflowUpdateResponse getDefaultInstanceForType() { + return flyteidl.admin.WorkflowOuterClass.WorkflowUpdateResponse.getDefaultInstance(); + } + + @java.lang.Override + public flyteidl.admin.WorkflowOuterClass.WorkflowUpdateResponse build() { + flyteidl.admin.WorkflowOuterClass.WorkflowUpdateResponse result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public flyteidl.admin.WorkflowOuterClass.WorkflowUpdateResponse buildPartial() { + flyteidl.admin.WorkflowOuterClass.WorkflowUpdateResponse result = new flyteidl.admin.WorkflowOuterClass.WorkflowUpdateResponse(this); + onBuilt(); + return result; + } + + @java.lang.Override + public Builder clone() { + return super.clone(); + } + @java.lang.Override + public Builder setField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.setField(field, value); + } + @java.lang.Override + public Builder clearField( + com.google.protobuf.Descriptors.FieldDescriptor field) { + return super.clearField(field); + } + @java.lang.Override + public Builder clearOneof( + com.google.protobuf.Descriptors.OneofDescriptor oneof) { + return super.clearOneof(oneof); + } + @java.lang.Override + public Builder setRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + int index, java.lang.Object value) { + return super.setRepeatedField(field, index, value); + } + @java.lang.Override + public Builder addRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.addRepeatedField(field, value); + } + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof flyteidl.admin.WorkflowOuterClass.WorkflowUpdateResponse) { + return mergeFrom((flyteidl.admin.WorkflowOuterClass.WorkflowUpdateResponse)other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(flyteidl.admin.WorkflowOuterClass.WorkflowUpdateResponse other) { + if (other == flyteidl.admin.WorkflowOuterClass.WorkflowUpdateResponse.getDefaultInstance()) return this; + this.mergeUnknownFields(other.unknownFields); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + flyteidl.admin.WorkflowOuterClass.WorkflowUpdateResponse parsedMessage = null; + try { + parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + parsedMessage = (flyteidl.admin.WorkflowOuterClass.WorkflowUpdateResponse) e.getUnfinishedMessage(); + throw e.unwrapIOException(); + } finally { + if (parsedMessage != null) { + mergeFrom(parsedMessage); + } + } + return this; + } + @java.lang.Override + public final Builder setUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.setUnknownFields(unknownFields); + } + + @java.lang.Override + public final Builder mergeUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.mergeUnknownFields(unknownFields); + } + + + // @@protoc_insertion_point(builder_scope:flyteidl.admin.WorkflowUpdateResponse) + } + + // @@protoc_insertion_point(class_scope:flyteidl.admin.WorkflowUpdateResponse) + private static final flyteidl.admin.WorkflowOuterClass.WorkflowUpdateResponse DEFAULT_INSTANCE; + static { + DEFAULT_INSTANCE = new flyteidl.admin.WorkflowOuterClass.WorkflowUpdateResponse(); + } + + public static flyteidl.admin.WorkflowOuterClass.WorkflowUpdateResponse getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser + PARSER = new com.google.protobuf.AbstractParser() { + @java.lang.Override + public WorkflowUpdateResponse parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return new WorkflowUpdateResponse(input, extensionRegistry); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } + + @java.lang.Override + public flyteidl.admin.WorkflowOuterClass.WorkflowUpdateResponse getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + + } + + private static final com.google.protobuf.Descriptors.Descriptor + internal_static_flyteidl_admin_WorkflowCreateRequest_descriptor; + private static final + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internal_static_flyteidl_admin_WorkflowCreateRequest_fieldAccessorTable; + private static final com.google.protobuf.Descriptors.Descriptor + internal_static_flyteidl_admin_WorkflowCreateResponse_descriptor; + private static final + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internal_static_flyteidl_admin_WorkflowCreateResponse_fieldAccessorTable; + private static final com.google.protobuf.Descriptors.Descriptor + internal_static_flyteidl_admin_Workflow_descriptor; + private static final + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internal_static_flyteidl_admin_Workflow_fieldAccessorTable; + private static final com.google.protobuf.Descriptors.Descriptor + internal_static_flyteidl_admin_WorkflowList_descriptor; + private static final + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internal_static_flyteidl_admin_WorkflowList_fieldAccessorTable; + private static final com.google.protobuf.Descriptors.Descriptor + internal_static_flyteidl_admin_WorkflowSpec_descriptor; + private static final + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internal_static_flyteidl_admin_WorkflowSpec_fieldAccessorTable; + private static final com.google.protobuf.Descriptors.Descriptor + internal_static_flyteidl_admin_WorkflowClosure_descriptor; + private static final + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internal_static_flyteidl_admin_WorkflowClosure_fieldAccessorTable; + private static final com.google.protobuf.Descriptors.Descriptor + internal_static_flyteidl_admin_WorkflowUpdateRequest_descriptor; + private static final + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internal_static_flyteidl_admin_WorkflowUpdateRequest_fieldAccessorTable; + private static final com.google.protobuf.Descriptors.Descriptor + internal_static_flyteidl_admin_WorkflowUpdateResponse_descriptor; + private static final + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internal_static_flyteidl_admin_WorkflowUpdateResponse_fieldAccessorTable; + + public static com.google.protobuf.Descriptors.FileDescriptor + getDescriptor() { + return descriptor; + } + private static com.google.protobuf.Descriptors.FileDescriptor + descriptor; + static { + java.lang.String[] descriptorData = { + "\n\035flyteidl/admin/workflow.proto\022\016flyteid" + + "l.admin\032\034flyteidl/core/compiler.proto\032\036f" + + "lyteidl/core/identifier.proto\032\034flyteidl/" + + "core/workflow.proto\032\033flyteidl/admin/comm" + + "on.proto\032\037google/protobuf/timestamp.prot" + + "o\"j\n\025WorkflowCreateRequest\022%\n\002id\030\001 \001(\0132\031" + + ".flyteidl.core.Identifier\022*\n\004spec\030\002 \001(\0132" + + "\034.flyteidl.admin.WorkflowSpec\"\030\n\026Workflo" + + "wCreateResponse\"c\n\010Workflow\022%\n\002id\030\001 \001(\0132" + + "\031.flyteidl.core.Identifier\0220\n\007closure\030\002 " + + "\001(\0132\037.flyteidl.admin.WorkflowClosure\"J\n\014" + + "WorkflowList\022+\n\tworkflows\030\001 \003(\0132\030.flytei" + + "dl.admin.Workflow\022\r\n\005token\030\002 \001(\t\"y\n\014Work" + + "flowSpec\0221\n\010template\030\001 \001(\0132\037.flyteidl.co" + + "re.WorkflowTemplate\0226\n\rsub_workflows\030\002 \003" + + "(\0132\037.flyteidl.core.WorkflowTemplate\"\204\001\n\017" + + "WorkflowClosure\022A\n\021compiled_workflow\030\001 \001" + + "(\0132&.flyteidl.core.CompiledWorkflowClosu" + + "re\022.\n\ncreated_at\030\002 \001(\0132\032.google.protobuf" + + ".Timestamp\"l\n\025WorkflowUpdateRequest\022%\n\002i" + + "d\030\001 \001(\0132\031.flyteidl.core.Identifier\022,\n\005st" + + "ate\030\002 \001(\0162\035.flyteidl.admin.WorkflowState" + + "\"\030\n\026WorkflowUpdateResponse*;\n\rWorkflowSt" + + "ate\022\023\n\017WORKFLOW_ACTIVE\020\000\022\025\n\021WORKFLOW_ARC" + + "HIVED\020\001B3Z1github.com/lyft/flyteidl/gen/" + + "pb-go/flyteidl/adminb\006proto3" + }; + com.google.protobuf.Descriptors.FileDescriptor.InternalDescriptorAssigner assigner = + new com.google.protobuf.Descriptors.FileDescriptor. InternalDescriptorAssigner() { + public com.google.protobuf.ExtensionRegistry assignDescriptors( + com.google.protobuf.Descriptors.FileDescriptor root) { + descriptor = root; + return null; + } + }; + com.google.protobuf.Descriptors.FileDescriptor + .internalBuildGeneratedFileFrom(descriptorData, + new com.google.protobuf.Descriptors.FileDescriptor[] { + flyteidl.core.Compiler.getDescriptor(), + flyteidl.core.IdentifierOuterClass.getDescriptor(), + flyteidl.core.Workflow.getDescriptor(), + flyteidl.admin.Common.getDescriptor(), + com.google.protobuf.TimestampProto.getDescriptor(), + }, assigner); + internal_static_flyteidl_admin_WorkflowCreateRequest_descriptor = + getDescriptor().getMessageTypes().get(0); + internal_static_flyteidl_admin_WorkflowCreateRequest_fieldAccessorTable = new + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + internal_static_flyteidl_admin_WorkflowCreateRequest_descriptor, + new java.lang.String[] { "Id", "Spec", }); + internal_static_flyteidl_admin_WorkflowCreateResponse_descriptor = + getDescriptor().getMessageTypes().get(1); + internal_static_flyteidl_admin_WorkflowCreateResponse_fieldAccessorTable = new + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + internal_static_flyteidl_admin_WorkflowCreateResponse_descriptor, + new java.lang.String[] { }); + internal_static_flyteidl_admin_Workflow_descriptor = + getDescriptor().getMessageTypes().get(2); + internal_static_flyteidl_admin_Workflow_fieldAccessorTable = new + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + internal_static_flyteidl_admin_Workflow_descriptor, + new java.lang.String[] { "Id", "Closure", }); + internal_static_flyteidl_admin_WorkflowList_descriptor = + getDescriptor().getMessageTypes().get(3); + internal_static_flyteidl_admin_WorkflowList_fieldAccessorTable = new + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + internal_static_flyteidl_admin_WorkflowList_descriptor, + new java.lang.String[] { "Workflows", "Token", }); + internal_static_flyteidl_admin_WorkflowSpec_descriptor = + getDescriptor().getMessageTypes().get(4); + internal_static_flyteidl_admin_WorkflowSpec_fieldAccessorTable = new + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + internal_static_flyteidl_admin_WorkflowSpec_descriptor, + new java.lang.String[] { "Template", "SubWorkflows", }); + internal_static_flyteidl_admin_WorkflowClosure_descriptor = + getDescriptor().getMessageTypes().get(5); + internal_static_flyteidl_admin_WorkflowClosure_fieldAccessorTable = new + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + internal_static_flyteidl_admin_WorkflowClosure_descriptor, + new java.lang.String[] { "CompiledWorkflow", "CreatedAt", }); + internal_static_flyteidl_admin_WorkflowUpdateRequest_descriptor = + getDescriptor().getMessageTypes().get(6); + internal_static_flyteidl_admin_WorkflowUpdateRequest_fieldAccessorTable = new + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + internal_static_flyteidl_admin_WorkflowUpdateRequest_descriptor, + new java.lang.String[] { "Id", "State", }); + internal_static_flyteidl_admin_WorkflowUpdateResponse_descriptor = + getDescriptor().getMessageTypes().get(7); + internal_static_flyteidl_admin_WorkflowUpdateResponse_fieldAccessorTable = new + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + internal_static_flyteidl_admin_WorkflowUpdateResponse_descriptor, + new java.lang.String[] { }); flyteidl.core.Compiler.getDescriptor(); flyteidl.core.IdentifierOuterClass.getDescriptor(); flyteidl.core.Workflow.getDescriptor(); diff --git a/flyteidl/gen/pb-java/flyteidl/service/Admin.java b/flyteidl/gen/pb-java/flyteidl/service/Admin.java index bb5982e2500..6d14e252e04 100644 --- a/flyteidl/gen/pb-java/flyteidl/service/Admin.java +++ b/flyteidl/gen/pb-java/flyteidl/service/Admin.java @@ -36,7 +36,7 @@ public static void registerAllExtensions( "l/admin/node_execution.proto\032#flyteidl/a" + "dmin/task_execution.proto\032\033flyteidl/admi" + "n/common.proto\032,protoc-gen-swagger/optio" + - "ns/annotations.proto2\331^\n\014AdminService\022\305\002" + + "ns/annotations.proto2\303`\n\014AdminService\022\305\002" + "\n\nCreateTask\022!.flyteidl.admin.TaskCreate" + "Request\032\".flyteidl.admin.TaskCreateRespo" + "nse\"\357\001\202\323\344\223\002\022\"\r/api/v1/tasks:\001*\222A\323\001\032&Crea" + @@ -87,261 +87,267 @@ public static void registerAllExtensions( "/{id.domain}/{id.name}Z,\022*/api/v1/workfl" + "ows/{id.project}/{id.domain}\222A=\032;Fetch e" + "xisting workflow definitions matching in" + - "put filters.\022\345\002\n\020CreateLaunchPlan\022\'.flyt" + - "eidl.admin.LaunchPlanCreateRequest\032(.fly" + - "teidl.admin.LaunchPlanCreateResponse\"\375\001\202" + - "\323\344\223\002\031\"\024/api/v1/launch_plans:\001*\222A\332\001\032-Crea" + - "te and register a launch plan definition" + - ".JB\n\003400\022;\n9Returned for bad request tha" + - "t may have failed validation.Je\n\003409\022^\n\\" + - "Returned for a request that references a" + - "n identical entity that has already been" + - " registered.\022\314\001\n\rGetLaunchPlan\022 .flyteid" + - "l.admin.ObjectGetRequest\032\032.flyteidl.admi" + - "n.LaunchPlan\"}\202\323\344\223\002F\022D/api/v1/launch_pla" + - "ns/{id.project}/{id.domain}/{id.name}/{i" + - "d.version}\222A.\032,Retrieve an existing laun" + - "ch plan definition.\022\363\001\n\023GetActiveLaunchP" + - "lan\022\'.flyteidl.admin.ActiveLaunchPlanReq" + - "uest\032\032.flyteidl.admin.LaunchPlan\"\226\001\202\323\344\223\002" + - "@\022>/api/v1/active_launch_plans/{id.proje" + - "ct}/{id.domain}/{id.name}\222AM\032KRetrieve t" + - "he active launch plan version specified " + - "by input request filters.\022\353\001\n\025ListActive" + - "LaunchPlans\022+.flyteidl.admin.ActiveLaunc" + - "hPlanListRequest\032\036.flyteidl.admin.Launch" + - "PlanList\"\204\001\202\323\344\223\0020\022./api/v1/active_launch" + - "_plans/{project}/{domain}\222AK\032IFetch the " + - "active launch plan versions specified by" + - " input request filters.\022\363\001\n\021ListLaunchPl" + - "anIds\0220.flyteidl.admin.NamedEntityIdenti" + - "fierListRequest\032).flyteidl.admin.NamedEn" + - "tityIdentifierList\"\200\001\202\323\344\223\002,\022*/api/v1/lau" + - "nch_plan_ids/{project}/{domain}\222AK\032IFetc" + - "h existing launch plan definition identi" + - "fiers matching input filters.\022\214\002\n\017ListLa" + - "unchPlans\022#.flyteidl.admin.ResourceListR" + - "equest\032\036.flyteidl.admin.LaunchPlanList\"\263" + - "\001\202\323\344\223\002j\0227/api/v1/launch_plans/{id.projec" + - "t}/{id.domain}/{id.name}Z/\022-/api/v1/laun" + - "ch_plans/{id.project}/{id.domain}\222A@\032>Fe" + - "tch existing launch plan definitions mat" + - "ching input filters.\022\300\006\n\020UpdateLaunchPla" + - "n\022\'.flyteidl.admin.LaunchPlanUpdateReque" + - "st\032(.flyteidl.admin.LaunchPlanUpdateResp" + - "onse\"\330\005\202\323\344\223\002I\032D/api/v1/launch_plans/{id." + - "project}/{id.domain}/{id.name}/{id.versi" + - "on}:\001*\222A\205\005\032\202\005Update the status of an exi" + - "sting launch plan definition. At most on" + - "e launch plan version for a given {proje" + - "ct, domain, name} can be active at a tim" + - "e. If this call sets a launch plan to ac" + - "tive and existing version is already act" + - "ive, the result of this call will be tha" + - "t the formerly active launch plan will b" + - "e made inactive and specified launch pla" + - "n in this request will be made active. I" + - "n the event that the formerly active lau" + - "nch plan had a schedule associated it wi" + - "th it, this schedule will be disabled. I" + - "f the reference launch plan in this requ" + - "est is being set to active and has a sch" + - "edule associated with it, the schedule w" + - "ill be enabled.\022\242\001\n\017CreateExecution\022&.fl" + - "yteidl.admin.ExecutionCreateRequest\032\'.fl" + - "yteidl.admin.ExecutionCreateResponse\">\202\323" + - "\344\223\002\027\"\022/api/v1/executions:\001*\222A\036\032\034Create a" + - " workflow execution.\022\261\001\n\021RelaunchExecuti" + - "on\022(.flyteidl.admin.ExecutionRelaunchReq" + - "uest\032\'.flyteidl.admin.ExecutionCreateRes" + - "ponse\"I\202\323\344\223\002 \"\033/api/v1/executions/relaun" + - "ch:\001*\222A \032\036Relaunch a workflow execution." + - "\022\302\001\n\014GetExecution\022+.flyteidl.admin.Workf" + - "lowExecutionGetRequest\032\031.flyteidl.admin." + - "Execution\"j\202\323\344\223\0027\0225/api/v1/executions/{i" + - "d.project}/{id.domain}/{id.name}\222A*\032(Ret" + - "rieve an existing workflow execution.\022\202\002" + - "\n\020GetExecutionData\022/.flyteidl.admin.Work" + - "flowExecutionGetDataRequest\0320.flyteidl.a" + - "dmin.WorkflowExecutionGetDataResponse\"\212\001" + - "\202\323\344\223\002<\022:/api/v1/data/executions/{id.proj" + - "ect}/{id.domain}/{id.name}\222AE\032CRetrieve " + - "input and output data from an existing w" + - "orkflow execution.\022\310\001\n\016ListExecutions\022#." + - "flyteidl.admin.ResourceListRequest\032\035.fly" + - "teidl.admin.ExecutionList\"r\202\323\344\223\002-\022+/api/" + - "v1/executions/{id.project}/{id.domain}\222A" + - "<\032:Fetch existing workflow executions ma" + - "tching input filters.\022\364\001\n\022TerminateExecu" + - "tion\022).flyteidl.admin.ExecutionTerminate" + - "Request\032*.flyteidl.admin.ExecutionTermin" + - "ateResponse\"\206\001\202\323\344\223\002:*5/api/v1/executions" + - "/{id.project}/{id.domain}/{id.name}:\001*\222A" + - "C\032ATerminate the active workflow executi" + - "on specified in the request.\022\374\001\n\020GetNode" + - "Execution\022\'.flyteidl.admin.NodeExecution" + - "GetRequest\032\035.flyteidl.admin.NodeExecutio" + - "n\"\237\001\202\323\344\223\002p\022n/api/v1/node_executions/{id." + - "execution_id.project}/{id.execution_id.d" + - "omain}/{id.execution_id.name}/{id.node_i" + - "d}\222A&\032$Retrieve an existing node executi" + - "on.\022\232\002\n\022ListNodeExecutions\022(.flyteidl.ad" + - "min.NodeExecutionListRequest\032!.flyteidl." + - "admin.NodeExecutionList\"\266\001\202\323\344\223\002u\022s/api/v" + - "1/node_executions/{workflow_execution_id" + - ".project}/{workflow_execution_id.domain}" + - "/{workflow_execution_id.name}\222A8\0326Fetch " + - "existing node executions matching input " + - "filters.\022\357\004\n\031ListNodeExecutionsForTask\022/" + - ".flyteidl.admin.NodeExecutionForTaskList" + - "Request\032!.flyteidl.admin.NodeExecutionLi" + - "st\"\375\003\202\323\344\223\002\254\003\022\251\003/api/v1/children/task_exe" + - "cutions/{task_execution_id.node_executio" + - "n_id.execution_id.project}/{task_executi" + - "on_id.node_execution_id.execution_id.dom" + - "ain}/{task_execution_id.node_execution_i" + - "d.execution_id.name}/{task_execution_id." + - "node_execution_id.node_id}/{task_executi" + - "on_id.task_id.project}/{task_execution_i" + - "d.task_id.domain}/{task_execution_id.tas" + - "k_id.name}/{task_execution_id.task_id.ve" + - "rsion}/{task_execution_id.retry_attempt}" + - "\222AG\032EFetch child node executions launche" + - "d by the specified task execution.\022\263\002\n\024G" + - "etNodeExecutionData\022+.flyteidl.admin.Nod" + - "eExecutionGetDataRequest\032,.flyteidl.admi" + - "n.NodeExecutionGetDataResponse\"\277\001\202\323\344\223\002u\022" + - "s/api/v1/data/node_executions/{id.execut" + + "put filters.\022\347\001\n\016UpdateWorkflow\022%.flytei" + + "dl.admin.WorkflowUpdateRequest\032&.flyteid" + + "l.admin.WorkflowUpdateResponse\"\205\001\202\323\344\223\002F\032" + + "A/api/v1/workflows/{id.project}/{id.doma" + + "in}/{id.name}/{id.version}:\001*\222A6\0324Update" + + " the state of an existing workflow defin" + + "ition.\022\345\002\n\020CreateLaunchPlan\022\'.flyteidl.a" + + "dmin.LaunchPlanCreateRequest\032(.flyteidl." + + "admin.LaunchPlanCreateResponse\"\375\001\202\323\344\223\002\031\"" + + "\024/api/v1/launch_plans:\001*\222A\332\001\032-Create and" + + " register a launch plan definition.JB\n\0034" + + "00\022;\n9Returned for bad request that may " + + "have failed validation.Je\n\003409\022^\n\\Return" + + "ed for a request that references an iden" + + "tical entity that has already been regis" + + "tered.\022\314\001\n\rGetLaunchPlan\022 .flyteidl.admi" + + "n.ObjectGetRequest\032\032.flyteidl.admin.Laun" + + "chPlan\"}\202\323\344\223\002F\022D/api/v1/launch_plans/{id" + + ".project}/{id.domain}/{id.name}/{id.vers" + + "ion}\222A.\032,Retrieve an existing launch pla" + + "n definition.\022\363\001\n\023GetActiveLaunchPlan\022\'." + + "flyteidl.admin.ActiveLaunchPlanRequest\032\032" + + ".flyteidl.admin.LaunchPlan\"\226\001\202\323\344\223\002@\022>/ap" + + "i/v1/active_launch_plans/{id.project}/{i" + + "d.domain}/{id.name}\222AM\032KRetrieve the act" + + "ive launch plan version specified by inp" + + "ut request filters.\022\353\001\n\025ListActiveLaunch" + + "Plans\022+.flyteidl.admin.ActiveLaunchPlanL" + + "istRequest\032\036.flyteidl.admin.LaunchPlanLi" + + "st\"\204\001\202\323\344\223\0020\022./api/v1/active_launch_plans" + + "/{project}/{domain}\222AK\032IFetch the active" + + " launch plan versions specified by input" + + " request filters.\022\363\001\n\021ListLaunchPlanIds\022" + + "0.flyteidl.admin.NamedEntityIdentifierLi" + + "stRequest\032).flyteidl.admin.NamedEntityId" + + "entifierList\"\200\001\202\323\344\223\002,\022*/api/v1/launch_pl" + + "an_ids/{project}/{domain}\222AK\032IFetch exis" + + "ting launch plan definition identifiers " + + "matching input filters.\022\214\002\n\017ListLaunchPl" + + "ans\022#.flyteidl.admin.ResourceListRequest" + + "\032\036.flyteidl.admin.LaunchPlanList\"\263\001\202\323\344\223\002" + + "j\0227/api/v1/launch_plans/{id.project}/{id" + + ".domain}/{id.name}Z/\022-/api/v1/launch_pla" + + "ns/{id.project}/{id.domain}\222A@\032>Fetch ex" + + "isting launch plan definitions matching " + + "input filters.\022\300\006\n\020UpdateLaunchPlan\022\'.fl" + + "yteidl.admin.LaunchPlanUpdateRequest\032(.f" + + "lyteidl.admin.LaunchPlanUpdateResponse\"\330" + + "\005\202\323\344\223\002I\032D/api/v1/launch_plans/{id.projec" + + "t}/{id.domain}/{id.name}/{id.version}:\001*" + + "\222A\205\005\032\202\005Update the status of an existing " + + "launch plan definition. At most one laun" + + "ch plan version for a given {project, do" + + "main, name} can be active at a time. If " + + "this call sets a launch plan to active a" + + "nd existing version is already active, t" + + "he result of this call will be that the " + + "formerly active launch plan will be made" + + " inactive and specified launch plan in t" + + "his request will be made active. In the " + + "event that the formerly active launch pl" + + "an had a schedule associated it with it," + + " this schedule will be disabled. If the " + + "reference launch plan in this request is" + + " being set to active and has a schedule " + + "associated with it, the schedule will be" + + " enabled.\022\242\001\n\017CreateExecution\022&.flyteidl" + + ".admin.ExecutionCreateRequest\032\'.flyteidl" + + ".admin.ExecutionCreateResponse\">\202\323\344\223\002\027\"\022" + + "/api/v1/executions:\001*\222A\036\032\034Create a workf" + + "low execution.\022\261\001\n\021RelaunchExecution\022(.f" + + "lyteidl.admin.ExecutionRelaunchRequest\032\'" + + ".flyteidl.admin.ExecutionCreateResponse\"" + + "I\202\323\344\223\002 \"\033/api/v1/executions/relaunch:\001*\222" + + "A \032\036Relaunch a workflow execution.\022\302\001\n\014G" + + "etExecution\022+.flyteidl.admin.WorkflowExe" + + "cutionGetRequest\032\031.flyteidl.admin.Execut" + + "ion\"j\202\323\344\223\0027\0225/api/v1/executions/{id.proj" + + "ect}/{id.domain}/{id.name}\222A*\032(Retrieve " + + "an existing workflow execution.\022\202\002\n\020GetE" + + "xecutionData\022/.flyteidl.admin.WorkflowEx" + + "ecutionGetDataRequest\0320.flyteidl.admin.W" + + "orkflowExecutionGetDataResponse\"\212\001\202\323\344\223\002<" + + "\022:/api/v1/data/executions/{id.project}/{" + + "id.domain}/{id.name}\222AE\032CRetrieve input " + + "and output data from an existing workflo" + + "w execution.\022\310\001\n\016ListExecutions\022#.flytei" + + "dl.admin.ResourceListRequest\032\035.flyteidl." + + "admin.ExecutionList\"r\202\323\344\223\002-\022+/api/v1/exe" + + "cutions/{id.project}/{id.domain}\222A<\032:Fet" + + "ch existing workflow executions matching" + + " input filters.\022\364\001\n\022TerminateExecution\022)" + + ".flyteidl.admin.ExecutionTerminateReques" + + "t\032*.flyteidl.admin.ExecutionTerminateRes" + + "ponse\"\206\001\202\323\344\223\002:*5/api/v1/executions/{id.p" + + "roject}/{id.domain}/{id.name}:\001*\222AC\032ATer" + + "minate the active workflow execution spe" + + "cified in the request.\022\374\001\n\020GetNodeExecut" + + "ion\022\'.flyteidl.admin.NodeExecutionGetReq" + + "uest\032\035.flyteidl.admin.NodeExecution\"\237\001\202\323" + + "\344\223\002p\022n/api/v1/node_executions/{id.execut" + "ion_id.project}/{id.execution_id.domain}" + - "/{id.execution_id.name}/{id.node_id}\222AA\032" + - "?Retrieve input and output data from an " + - "existing node execution.\022\227\001\n\017RegisterPro" + - "ject\022&.flyteidl.admin.ProjectRegisterReq" + - "uest\032\'.flyteidl.admin.ProjectRegisterRes" + - "ponse\"3\202\323\344\223\002\025\"\020/api/v1/projects:\001*\222A\025\032\023R" + - "egister a project.\022\205\001\n\014ListProjects\022\".fl" + - "yteidl.admin.ProjectListRequest\032\030.flytei" + - "dl.admin.Projects\"7\202\323\344\223\002\022\022\020/api/v1/proje" + - "cts\222A\034\032\032Fetch registered projects.\022\335\001\n\023C" + - "reateWorkflowEvent\022-.flyteidl.admin.Work" + - "flowExecutionEventRequest\032..flyteidl.adm" + - "in.WorkflowExecutionEventResponse\"g\202\323\344\223\002" + - "\035\"\030/api/v1/events/workflows:\001*\222AA\032?Creat" + - "e a workflow execution event recording a" + - " phase transition.\022\311\001\n\017CreateNodeEvent\022)" + - ".flyteidl.admin.NodeExecutionEventReques" + - "t\032*.flyteidl.admin.NodeExecutionEventRes" + - "ponse\"_\202\323\344\223\002\031\"\024/api/v1/events/nodes:\001*\222A" + - "=\032;Create a node execution event recordi" + - "ng a phase transition.\022\311\001\n\017CreateTaskEve" + - "nt\022).flyteidl.admin.TaskExecutionEventRe" + - "quest\032*.flyteidl.admin.TaskExecutionEven" + - "tResponse\"_\202\323\344\223\002\031\"\024/api/v1/events/tasks:" + - "\001*\222A=\032;Create a task execution event rec" + - "ording a phase transition.\022\251\003\n\020GetTaskEx" + - "ecution\022\'.flyteidl.admin.TaskExecutionGe" + - "tRequest\032\035.flyteidl.admin.TaskExecution\"" + - "\314\002\202\323\344\223\002\234\002\022\231\002/api/v1/task_executions/{id." + - "node_execution_id.execution_id.project}/" + - "{id.node_execution_id.execution_id.domai" + - "n}/{id.node_execution_id.execution_id.na" + - "me}/{id.node_execution_id.node_id}/{id.t" + - "ask_id.project}/{id.task_id.domain}/{id." + - "task_id.name}/{id.task_id.version}/{id.r" + - "etry_attempt}\222A&\032$Retrieve an existing t" + - "ask execution.\022\323\002\n\022ListTaskExecutions\022(." + - "flyteidl.admin.TaskExecutionListRequest\032" + - "!.flyteidl.admin.TaskExecutionList\"\357\001\202\323\344" + - "\223\002\255\001\022\252\001/api/v1/task_executions/{node_exe" + - "cution_id.execution_id.project}/{node_ex" + - "ecution_id.execution_id.domain}/{node_ex" + - "ecution_id.execution_id.name}/{node_exec" + - "ution_id.node_id}\222A8\0326Fetch existing tas" + - "k executions matching input filters.\022\340\003\n" + - "\024GetTaskExecutionData\022+.flyteidl.admin.T" + - "askExecutionGetDataRequest\032,.flyteidl.ad" + - "min.TaskExecutionGetDataResponse\"\354\002\202\323\344\223\002" + - "\241\002\022\236\002/api/v1/data/task_executions/{id.no" + - "de_execution_id.execution_id.project}/{i" + - "d.node_execution_id.execution_id.domain}" + - "/{id.node_execution_id.execution_id.name" + - "}/{id.node_execution_id.node_id}/{id.tas" + - "k_id.project}/{id.task_id.domain}/{id.ta" + - "sk_id.name}/{id.task_id.version}/{id.ret" + - "ry_attempt}\222AA\032?Retrieve input and outpu" + - "t data from an existing task execution.\022" + - "\277\002\n\035UpdateProjectDomainAttributes\0224.flyt" + - "eidl.admin.ProjectDomainAttributesUpdate" + - "Request\0325.flyteidl.admin.ProjectDomainAt" + - "tributesUpdateResponse\"\260\001\202\323\344\223\002O\032J/api/v1" + - "/project_domain_attributes/{attributes.p" + - "roject}/{attributes.domain}:\001*\222AX\032VUpdat" + - "e the customized resource attributes ass" + - "ociated with a project-domain combinatio" + - "n\022\237\002\n\032GetProjectDomainAttributes\0221.flyte" + - "idl.admin.ProjectDomainAttributesGetRequ" + - "est\0322.flyteidl.admin.ProjectDomainAttrib" + - "utesGetResponse\"\231\001\202\323\344\223\0026\0224/api/v1/projec" + - "t_domain_attributes/{project}/{domain}\222A" + - "Z\032XRetrieve the customized resource attr" + - "ibutes associated with a project-domain " + - "combination\022\251\002\n\035DeleteProjectDomainAttri" + - "butes\0224.flyteidl.admin.ProjectDomainAttr" + - "ibutesDeleteRequest\0325.flyteidl.admin.Pro" + - "jectDomainAttributesDeleteResponse\"\232\001\202\323\344" + - "\223\0029*4/api/v1/project_domain_attributes/{" + - "project}/{domain}:\001*\222AX\032VDelete the cust" + - "omized resource attributes associated wi" + - "th a project-domain combination\022\316\002\n\030Upda" + - "teWorkflowAttributes\022/.flyteidl.admin.Wo" + - "rkflowAttributesUpdateRequest\0320.flyteidl" + - ".admin.WorkflowAttributesUpdateResponse\"" + - "\316\001\202\323\344\223\002_\032Z/api/v1/workflow_attributes/{a" + - "ttributes.project}/{attributes.domain}/{" + - "attributes.workflow}:\001*\222Af\032dUpdate the c" + - "ustomized resource attributes associated" + - " with a project, domain and workflow com" + - "bination\022\243\002\n\025GetWorkflowAttributes\022,.fly" + - "teidl.admin.WorkflowAttributesGetRequest" + - "\032-.flyteidl.admin.WorkflowAttributesGetR" + - "esponse\"\254\001\202\323\344\223\002;\0229/api/v1/workflow_attri" + - "butes/{project}/{domain}/{workflow}\222Ah\032f" + - "Retrieve the customized resource attribu" + - "tes associated with a project, domain an" + - "d workflow combination\022\255\002\n\030DeleteWorkflo" + - "wAttributes\022/.flyteidl.admin.WorkflowAtt" + - "ributesDeleteRequest\0320.flyteidl.admin.Wo" + - "rkflowAttributesDeleteResponse\"\255\001\202\323\344\223\002>*" + - "9/api/v1/workflow_attributes/{project}/{" + - "domain}/{workflow}:\001*\222Af\032dDelete the cus" + - "tomized resource attributes associated w" + - "ith a project, domain and workflow combi" + - "nation\022\341\001\n\027ListMatchableAttributes\022..fly" + - "teidl.admin.ListMatchableAttributesReque" + - "st\032/.flyteidl.admin.ListMatchableAttribu" + - "tesResponse\"e\202\323\344\223\002\036\022\034/api/v1/matchable_a" + - "ttributes\222A>\032*9/api/" + + "v1/workflow_attributes/{project}/{domain" + + "}/{workflow}:\001*\222Af\032dDelete the customize" + + "d resource attributes associated with a " + + "project, domain and workflow combination" + + "\022\341\001\n\027ListMatchableAttributes\022..flyteidl." + + "admin.ListMatchableAttributesRequest\032/.f" + + "lyteidl.admin.ListMatchableAttributesRes" + + "ponse\"e\202\323\344\223\002\036\022\034/api/v1/matchable_attribu" + + "tes\222A>\032; + /** + * Calls UpdateWorkflow. + * @param request WorkflowUpdateRequest message or plain object + * @param callback Node-style callback called with the error, if any, and WorkflowUpdateResponse + */ + public updateWorkflow(request: flyteidl.admin.IWorkflowUpdateRequest, callback: flyteidl.service.AdminService.UpdateWorkflowCallback): void; + + /** + * Calls UpdateWorkflow. + * @param request WorkflowUpdateRequest message or plain object + * @returns Promise + */ + public updateWorkflow(request: flyteidl.admin.IWorkflowUpdateRequest): Promise; + /** * Calls CreateLaunchPlan. * @param request LaunchPlanCreateRequest message or plain object @@ -12569,6 +12693,13 @@ export namespace flyteidl { */ type ListWorkflowsCallback = (error: (Error|null), response?: flyteidl.admin.WorkflowList) => void; + /** + * Callback as used by {@link flyteidl.service.AdminService#updateWorkflow}. + * @param error Error, if any + * @param [response] WorkflowUpdateResponse + */ + type UpdateWorkflowCallback = (error: (Error|null), response?: flyteidl.admin.WorkflowUpdateResponse) => void; + /** * Callback as used by {@link flyteidl.service.AdminService#createLaunchPlan}. * @param error Error, if any diff --git a/flyteidl/gen/pb-js/flyteidl.js b/flyteidl/gen/pb-js/flyteidl.js index 19f835c6a54..fdbe85b4542 100644 --- a/flyteidl/gen/pb-js/flyteidl.js +++ b/flyteidl/gen/pb-js/flyteidl.js @@ -27208,6 +27208,247 @@ export const flyteidl = $root.flyteidl = (() => { return WorkflowClosure; })(); + /** + * WorkflowState enum. + * @name flyteidl.admin.WorkflowState + * @enum {string} + * @property {number} WORKFLOW_ACTIVE=0 WORKFLOW_ACTIVE value + * @property {number} WORKFLOW_ARCHIVED=1 WORKFLOW_ARCHIVED value + */ + admin.WorkflowState = (function() { + const valuesById = {}, values = Object.create(valuesById); + values[valuesById[0] = "WORKFLOW_ACTIVE"] = 0; + values[valuesById[1] = "WORKFLOW_ARCHIVED"] = 1; + return values; + })(); + + admin.WorkflowUpdateRequest = (function() { + + /** + * Properties of a WorkflowUpdateRequest. + * @memberof flyteidl.admin + * @interface IWorkflowUpdateRequest + * @property {flyteidl.core.IIdentifier|null} [id] WorkflowUpdateRequest id + * @property {flyteidl.admin.WorkflowState|null} [state] WorkflowUpdateRequest state + */ + + /** + * Constructs a new WorkflowUpdateRequest. + * @memberof flyteidl.admin + * @classdesc Represents a WorkflowUpdateRequest. + * @implements IWorkflowUpdateRequest + * @constructor + * @param {flyteidl.admin.IWorkflowUpdateRequest=} [properties] Properties to set + */ + function WorkflowUpdateRequest(properties) { + if (properties) + for (let keys = Object.keys(properties), i = 0; i < keys.length; ++i) + if (properties[keys[i]] != null) + this[keys[i]] = properties[keys[i]]; + } + + /** + * WorkflowUpdateRequest id. + * @member {flyteidl.core.IIdentifier|null|undefined} id + * @memberof flyteidl.admin.WorkflowUpdateRequest + * @instance + */ + WorkflowUpdateRequest.prototype.id = null; + + /** + * WorkflowUpdateRequest state. + * @member {flyteidl.admin.WorkflowState} state + * @memberof flyteidl.admin.WorkflowUpdateRequest + * @instance + */ + WorkflowUpdateRequest.prototype.state = 0; + + /** + * Creates a new WorkflowUpdateRequest instance using the specified properties. + * @function create + * @memberof flyteidl.admin.WorkflowUpdateRequest + * @static + * @param {flyteidl.admin.IWorkflowUpdateRequest=} [properties] Properties to set + * @returns {flyteidl.admin.WorkflowUpdateRequest} WorkflowUpdateRequest instance + */ + WorkflowUpdateRequest.create = function create(properties) { + return new WorkflowUpdateRequest(properties); + }; + + /** + * Encodes the specified WorkflowUpdateRequest message. Does not implicitly {@link flyteidl.admin.WorkflowUpdateRequest.verify|verify} messages. + * @function encode + * @memberof flyteidl.admin.WorkflowUpdateRequest + * @static + * @param {flyteidl.admin.IWorkflowUpdateRequest} message WorkflowUpdateRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + WorkflowUpdateRequest.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.id != null && message.hasOwnProperty("id")) + $root.flyteidl.core.Identifier.encode(message.id, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); + if (message.state != null && message.hasOwnProperty("state")) + writer.uint32(/* id 2, wireType 0 =*/16).int32(message.state); + return writer; + }; + + /** + * Decodes a WorkflowUpdateRequest message from the specified reader or buffer. + * @function decode + * @memberof flyteidl.admin.WorkflowUpdateRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {flyteidl.admin.WorkflowUpdateRequest} WorkflowUpdateRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + WorkflowUpdateRequest.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + let end = length === undefined ? reader.len : reader.pos + length, message = new $root.flyteidl.admin.WorkflowUpdateRequest(); + while (reader.pos < end) { + let tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.id = $root.flyteidl.core.Identifier.decode(reader, reader.uint32()); + break; + case 2: + message.state = reader.int32(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Verifies a WorkflowUpdateRequest message. + * @function verify + * @memberof flyteidl.admin.WorkflowUpdateRequest + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + WorkflowUpdateRequest.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.id != null && message.hasOwnProperty("id")) { + let error = $root.flyteidl.core.Identifier.verify(message.id); + if (error) + return "id." + error; + } + if (message.state != null && message.hasOwnProperty("state")) + switch (message.state) { + default: + return "state: enum value expected"; + case 0: + case 1: + break; + } + return null; + }; + + return WorkflowUpdateRequest; + })(); + + admin.WorkflowUpdateResponse = (function() { + + /** + * Properties of a WorkflowUpdateResponse. + * @memberof flyteidl.admin + * @interface IWorkflowUpdateResponse + */ + + /** + * Constructs a new WorkflowUpdateResponse. + * @memberof flyteidl.admin + * @classdesc Represents a WorkflowUpdateResponse. + * @implements IWorkflowUpdateResponse + * @constructor + * @param {flyteidl.admin.IWorkflowUpdateResponse=} [properties] Properties to set + */ + function WorkflowUpdateResponse(properties) { + if (properties) + for (let keys = Object.keys(properties), i = 0; i < keys.length; ++i) + if (properties[keys[i]] != null) + this[keys[i]] = properties[keys[i]]; + } + + /** + * Creates a new WorkflowUpdateResponse instance using the specified properties. + * @function create + * @memberof flyteidl.admin.WorkflowUpdateResponse + * @static + * @param {flyteidl.admin.IWorkflowUpdateResponse=} [properties] Properties to set + * @returns {flyteidl.admin.WorkflowUpdateResponse} WorkflowUpdateResponse instance + */ + WorkflowUpdateResponse.create = function create(properties) { + return new WorkflowUpdateResponse(properties); + }; + + /** + * Encodes the specified WorkflowUpdateResponse message. Does not implicitly {@link flyteidl.admin.WorkflowUpdateResponse.verify|verify} messages. + * @function encode + * @memberof flyteidl.admin.WorkflowUpdateResponse + * @static + * @param {flyteidl.admin.IWorkflowUpdateResponse} message WorkflowUpdateResponse message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + WorkflowUpdateResponse.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + return writer; + }; + + /** + * Decodes a WorkflowUpdateResponse message from the specified reader or buffer. + * @function decode + * @memberof flyteidl.admin.WorkflowUpdateResponse + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {flyteidl.admin.WorkflowUpdateResponse} WorkflowUpdateResponse + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + WorkflowUpdateResponse.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + let end = length === undefined ? reader.len : reader.pos + length, message = new $root.flyteidl.admin.WorkflowUpdateResponse(); + while (reader.pos < end) { + let tag = reader.uint32(); + switch (tag >>> 3) { + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Verifies a WorkflowUpdateResponse message. + * @function verify + * @memberof flyteidl.admin.WorkflowUpdateResponse + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + WorkflowUpdateResponse.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + return null; + }; + + return WorkflowUpdateResponse; + })(); + admin.WorkflowAttributes = (function() { /** @@ -28425,6 +28666,39 @@ export const flyteidl = $root.flyteidl = (() => { * @variation 2 */ + /** + * Callback as used by {@link flyteidl.service.AdminService#updateWorkflow}. + * @memberof flyteidl.service.AdminService + * @typedef UpdateWorkflowCallback + * @type {function} + * @param {Error|null} error Error, if any + * @param {flyteidl.admin.WorkflowUpdateResponse} [response] WorkflowUpdateResponse + */ + + /** + * Calls UpdateWorkflow. + * @function updateWorkflow + * @memberof flyteidl.service.AdminService + * @instance + * @param {flyteidl.admin.IWorkflowUpdateRequest} request WorkflowUpdateRequest message or plain object + * @param {flyteidl.service.AdminService.UpdateWorkflowCallback} callback Node-style callback called with the error, if any, and WorkflowUpdateResponse + * @returns {undefined} + * @variation 1 + */ + Object.defineProperty(AdminService.prototype.updateWorkflow = function updateWorkflow(request, callback) { + return this.rpcCall(updateWorkflow, $root.flyteidl.admin.WorkflowUpdateRequest, $root.flyteidl.admin.WorkflowUpdateResponse, request, callback); + }, "name", { value: "UpdateWorkflow" }); + + /** + * Calls UpdateWorkflow. + * @function updateWorkflow + * @memberof flyteidl.service.AdminService + * @instance + * @param {flyteidl.admin.IWorkflowUpdateRequest} request WorkflowUpdateRequest message or plain object + * @returns {Promise} Promise + * @variation 2 + */ + /** * Callback as used by {@link flyteidl.service.AdminService#createLaunchPlan}. * @memberof flyteidl.service.AdminService diff --git a/flyteidl/gen/pb-protodoc/flyteidl/admin/workflow.proto.rst b/flyteidl/gen/pb-protodoc/flyteidl/admin/workflow.proto.rst index 789bad838c6..b187cef8f4a 100644 --- a/flyteidl/gen/pb-protodoc/flyteidl/admin/workflow.proto.rst +++ b/flyteidl/gen/pb-protodoc/flyteidl/admin/workflow.proto.rst @@ -172,3 +172,70 @@ created_at + +.. _api_msg_flyteidl.admin.WorkflowUpdateRequest: + +flyteidl.admin.WorkflowUpdateRequest +------------------------------------ + +`[flyteidl.admin.WorkflowUpdateRequest proto] `_ + +Request to set the referenced workflow state to the configured value. + +.. code-block:: json + + { + "id": "{...}", + "state": "..." + } + +.. _api_field_flyteidl.admin.WorkflowUpdateRequest.id: + +id + (:ref:`flyteidl.core.Identifier `) Identifier of workflow for which to change state. + + +.. _api_field_flyteidl.admin.WorkflowUpdateRequest.state: + +state + (:ref:`flyteidl.admin.WorkflowState `) Desired state to apply to the workflow. + + + + +.. _api_msg_flyteidl.admin.WorkflowUpdateResponse: + +flyteidl.admin.WorkflowUpdateResponse +------------------------------------- + +`[flyteidl.admin.WorkflowUpdateResponse proto] `_ + +Purposefully empty, may be populated in the future. + +.. code-block:: json + + {} + + + +.. _api_enum_flyteidl.admin.WorkflowState: + +Enum flyteidl.admin.WorkflowState +--------------------------------- + +`[flyteidl.admin.WorkflowState proto] `_ + +The status of the workflow is used to control its visibility in the UI. + +.. _api_enum_value_flyteidl.admin.WorkflowState.WORKFLOW_ACTIVE: + +WORKFLOW_ACTIVE + *(DEFAULT)* ⁣By default, all workflows are considered active and under development. + + +.. _api_enum_value_flyteidl.admin.WorkflowState.WORKFLOW_ARCHIVED: + +WORKFLOW_ARCHIVED + ⁣Archived workflows are no longer visible in the UI. + + diff --git a/flyteidl/gen/pb_python/flyteidl/admin/workflow_pb2.py b/flyteidl/gen/pb_python/flyteidl/admin/workflow_pb2.py index 074f83d09ec..a70acad6414 100644 --- a/flyteidl/gen/pb_python/flyteidl/admin/workflow_pb2.py +++ b/flyteidl/gen/pb_python/flyteidl/admin/workflow_pb2.py @@ -4,6 +4,7 @@ import sys _b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1')) +from google.protobuf.internal import enum_type_wrapper from google.protobuf import descriptor as _descriptor from google.protobuf import message as _message from google.protobuf import reflection as _reflection @@ -25,10 +26,35 @@ package='flyteidl.admin', syntax='proto3', serialized_options=_b('Z1github.com/lyft/flyteidl/gen/pb-go/flyteidl/admin'), - serialized_pb=_b('\n\x1d\x66lyteidl/admin/workflow.proto\x12\x0e\x66lyteidl.admin\x1a\x1c\x66lyteidl/core/compiler.proto\x1a\x1e\x66lyteidl/core/identifier.proto\x1a\x1c\x66lyteidl/core/workflow.proto\x1a\x1b\x66lyteidl/admin/common.proto\x1a\x1fgoogle/protobuf/timestamp.proto\"j\n\x15WorkflowCreateRequest\x12%\n\x02id\x18\x01 \x01(\x0b\x32\x19.flyteidl.core.Identifier\x12*\n\x04spec\x18\x02 \x01(\x0b\x32\x1c.flyteidl.admin.WorkflowSpec\"\x18\n\x16WorkflowCreateResponse\"c\n\x08Workflow\x12%\n\x02id\x18\x01 \x01(\x0b\x32\x19.flyteidl.core.Identifier\x12\x30\n\x07\x63losure\x18\x02 \x01(\x0b\x32\x1f.flyteidl.admin.WorkflowClosure\"J\n\x0cWorkflowList\x12+\n\tworkflows\x18\x01 \x03(\x0b\x32\x18.flyteidl.admin.Workflow\x12\r\n\x05token\x18\x02 \x01(\t\"y\n\x0cWorkflowSpec\x12\x31\n\x08template\x18\x01 \x01(\x0b\x32\x1f.flyteidl.core.WorkflowTemplate\x12\x36\n\rsub_workflows\x18\x02 \x03(\x0b\x32\x1f.flyteidl.core.WorkflowTemplate\"\x84\x01\n\x0fWorkflowClosure\x12\x41\n\x11\x63ompiled_workflow\x18\x01 \x01(\x0b\x32&.flyteidl.core.CompiledWorkflowClosure\x12.\n\ncreated_at\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.TimestampB3Z1github.com/lyft/flyteidl/gen/pb-go/flyteidl/adminb\x06proto3') + serialized_pb=_b('\n\x1d\x66lyteidl/admin/workflow.proto\x12\x0e\x66lyteidl.admin\x1a\x1c\x66lyteidl/core/compiler.proto\x1a\x1e\x66lyteidl/core/identifier.proto\x1a\x1c\x66lyteidl/core/workflow.proto\x1a\x1b\x66lyteidl/admin/common.proto\x1a\x1fgoogle/protobuf/timestamp.proto\"j\n\x15WorkflowCreateRequest\x12%\n\x02id\x18\x01 \x01(\x0b\x32\x19.flyteidl.core.Identifier\x12*\n\x04spec\x18\x02 \x01(\x0b\x32\x1c.flyteidl.admin.WorkflowSpec\"\x18\n\x16WorkflowCreateResponse\"c\n\x08Workflow\x12%\n\x02id\x18\x01 \x01(\x0b\x32\x19.flyteidl.core.Identifier\x12\x30\n\x07\x63losure\x18\x02 \x01(\x0b\x32\x1f.flyteidl.admin.WorkflowClosure\"J\n\x0cWorkflowList\x12+\n\tworkflows\x18\x01 \x03(\x0b\x32\x18.flyteidl.admin.Workflow\x12\r\n\x05token\x18\x02 \x01(\t\"y\n\x0cWorkflowSpec\x12\x31\n\x08template\x18\x01 \x01(\x0b\x32\x1f.flyteidl.core.WorkflowTemplate\x12\x36\n\rsub_workflows\x18\x02 \x03(\x0b\x32\x1f.flyteidl.core.WorkflowTemplate\"\x84\x01\n\x0fWorkflowClosure\x12\x41\n\x11\x63ompiled_workflow\x18\x01 \x01(\x0b\x32&.flyteidl.core.CompiledWorkflowClosure\x12.\n\ncreated_at\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\"l\n\x15WorkflowUpdateRequest\x12%\n\x02id\x18\x01 \x01(\x0b\x32\x19.flyteidl.core.Identifier\x12,\n\x05state\x18\x02 \x01(\x0e\x32\x1d.flyteidl.admin.WorkflowState\"\x18\n\x16WorkflowUpdateResponse*;\n\rWorkflowState\x12\x13\n\x0fWORKFLOW_ACTIVE\x10\x00\x12\x15\n\x11WORKFLOW_ARCHIVED\x10\x01\x42\x33Z1github.com/lyft/flyteidl/gen/pb-go/flyteidl/adminb\x06proto3') , dependencies=[flyteidl_dot_core_dot_compiler__pb2.DESCRIPTOR,flyteidl_dot_core_dot_identifier__pb2.DESCRIPTOR,flyteidl_dot_core_dot_workflow__pb2.DESCRIPTOR,flyteidl_dot_admin_dot_common__pb2.DESCRIPTOR,google_dot_protobuf_dot_timestamp__pb2.DESCRIPTOR,]) +_WORKFLOWSTATE = _descriptor.EnumDescriptor( + name='WorkflowState', + full_name='flyteidl.admin.WorkflowState', + filename=None, + file=DESCRIPTOR, + values=[ + _descriptor.EnumValueDescriptor( + name='WORKFLOW_ACTIVE', index=0, number=0, + serialized_options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='WORKFLOW_ARCHIVED', index=1, number=1, + serialized_options=None, + type=None), + ], + containing_type=None, + serialized_options=None, + serialized_start=908, + serialized_end=967, +) +_sym_db.RegisterEnumDescriptor(_WORKFLOWSTATE) + +WorkflowState = enum_type_wrapper.EnumTypeWrapper(_WORKFLOWSTATE) +WORKFLOW_ACTIVE = 0 +WORKFLOW_ARCHIVED = 1 @@ -245,6 +271,68 @@ serialized_end=770, ) + +_WORKFLOWUPDATEREQUEST = _descriptor.Descriptor( + name='WorkflowUpdateRequest', + full_name='flyteidl.admin.WorkflowUpdateRequest', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='id', full_name='flyteidl.admin.WorkflowUpdateRequest.id', index=0, + number=1, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='state', full_name='flyteidl.admin.WorkflowUpdateRequest.state', index=1, + number=2, type=14, cpp_type=8, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=772, + serialized_end=880, +) + + +_WORKFLOWUPDATERESPONSE = _descriptor.Descriptor( + name='WorkflowUpdateResponse', + full_name='flyteidl.admin.WorkflowUpdateResponse', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=882, + serialized_end=906, +) + _WORKFLOWCREATEREQUEST.fields_by_name['id'].message_type = flyteidl_dot_core_dot_identifier__pb2._IDENTIFIER _WORKFLOWCREATEREQUEST.fields_by_name['spec'].message_type = _WORKFLOWSPEC _WORKFLOW.fields_by_name['id'].message_type = flyteidl_dot_core_dot_identifier__pb2._IDENTIFIER @@ -254,12 +342,17 @@ _WORKFLOWSPEC.fields_by_name['sub_workflows'].message_type = flyteidl_dot_core_dot_workflow__pb2._WORKFLOWTEMPLATE _WORKFLOWCLOSURE.fields_by_name['compiled_workflow'].message_type = flyteidl_dot_core_dot_compiler__pb2._COMPILEDWORKFLOWCLOSURE _WORKFLOWCLOSURE.fields_by_name['created_at'].message_type = google_dot_protobuf_dot_timestamp__pb2._TIMESTAMP +_WORKFLOWUPDATEREQUEST.fields_by_name['id'].message_type = flyteidl_dot_core_dot_identifier__pb2._IDENTIFIER +_WORKFLOWUPDATEREQUEST.fields_by_name['state'].enum_type = _WORKFLOWSTATE DESCRIPTOR.message_types_by_name['WorkflowCreateRequest'] = _WORKFLOWCREATEREQUEST DESCRIPTOR.message_types_by_name['WorkflowCreateResponse'] = _WORKFLOWCREATERESPONSE DESCRIPTOR.message_types_by_name['Workflow'] = _WORKFLOW DESCRIPTOR.message_types_by_name['WorkflowList'] = _WORKFLOWLIST DESCRIPTOR.message_types_by_name['WorkflowSpec'] = _WORKFLOWSPEC DESCRIPTOR.message_types_by_name['WorkflowClosure'] = _WORKFLOWCLOSURE +DESCRIPTOR.message_types_by_name['WorkflowUpdateRequest'] = _WORKFLOWUPDATEREQUEST +DESCRIPTOR.message_types_by_name['WorkflowUpdateResponse'] = _WORKFLOWUPDATERESPONSE +DESCRIPTOR.enum_types_by_name['WorkflowState'] = _WORKFLOWSTATE _sym_db.RegisterFileDescriptor(DESCRIPTOR) WorkflowCreateRequest = _reflection.GeneratedProtocolMessageType('WorkflowCreateRequest', (_message.Message,), dict( @@ -304,6 +397,20 @@ )) _sym_db.RegisterMessage(WorkflowClosure) +WorkflowUpdateRequest = _reflection.GeneratedProtocolMessageType('WorkflowUpdateRequest', (_message.Message,), dict( + DESCRIPTOR = _WORKFLOWUPDATEREQUEST, + __module__ = 'flyteidl.admin.workflow_pb2' + # @@protoc_insertion_point(class_scope:flyteidl.admin.WorkflowUpdateRequest) + )) +_sym_db.RegisterMessage(WorkflowUpdateRequest) + +WorkflowUpdateResponse = _reflection.GeneratedProtocolMessageType('WorkflowUpdateResponse', (_message.Message,), dict( + DESCRIPTOR = _WORKFLOWUPDATERESPONSE, + __module__ = 'flyteidl.admin.workflow_pb2' + # @@protoc_insertion_point(class_scope:flyteidl.admin.WorkflowUpdateResponse) + )) +_sym_db.RegisterMessage(WorkflowUpdateResponse) + DESCRIPTOR._options = None # @@protoc_insertion_point(module_scope) diff --git a/flyteidl/gen/pb_python/flyteidl/service/admin_pb2.py b/flyteidl/gen/pb_python/flyteidl/service/admin_pb2.py index fe083a2f96a..0614058a696 100644 --- a/flyteidl/gen/pb_python/flyteidl/service/admin_pb2.py +++ b/flyteidl/gen/pb_python/flyteidl/service/admin_pb2.py @@ -34,7 +34,7 @@ package='flyteidl.service', syntax='proto3', serialized_options=_b('Z3github.com/lyft/flyteidl/gen/pb-go/flyteidl/service'), - serialized_pb=_b('\n\x1c\x66lyteidl/service/admin.proto\x12\x10\x66lyteidl.service\x1a\x1cgoogle/api/annotations.proto\x1a\x1c\x66lyteidl/admin/project.proto\x1a.flyteidl/admin/project_domain_attributes.proto\x1a\x19\x66lyteidl/admin/task.proto\x1a\x1d\x66lyteidl/admin/workflow.proto\x1a(flyteidl/admin/workflow_attributes.proto\x1a flyteidl/admin/launch_plan.proto\x1a\x1a\x66lyteidl/admin/event.proto\x1a\x1e\x66lyteidl/admin/execution.proto\x1a\'flyteidl/admin/matchable_resource.proto\x1a#flyteidl/admin/node_execution.proto\x1a#flyteidl/admin/task_execution.proto\x1a\x1b\x66lyteidl/admin/common.proto\x1a,protoc-gen-swagger/options/annotations.proto2\xd9^\n\x0c\x41\x64minService\x12\xc5\x02\n\nCreateTask\x12!.flyteidl.admin.TaskCreateRequest\x1a\".flyteidl.admin.TaskCreateResponse\"\xef\x01\x82\xd3\xe4\x93\x02\x12\"\r/api/v1/tasks:\x01*\x92\x41\xd3\x01\x1a&Create and register a task definition.JB\n\x03\x34\x30\x30\x12;\n9Returned for bad request that may have failed validation.Je\n\x03\x34\x30\x39\x12^\n\\Returned for a request that references an identical entity that has already been registered.\x12\xb2\x01\n\x07GetTask\x12 .flyteidl.admin.ObjectGetRequest\x1a\x14.flyteidl.admin.Task\"o\x82\xd3\xe4\x93\x02?\x12=/api/v1/tasks/{id.project}/{id.domain}/{id.name}/{id.version}\x92\x41\'\x1a%Retrieve an existing task definition.\x12\xde\x01\n\x0bListTaskIds\x12\x30.flyteidl.admin.NamedEntityIdentifierListRequest\x1a).flyteidl.admin.NamedEntityIdentifierList\"r\x82\xd3\xe4\x93\x02%\x12#/api/v1/task_ids/{project}/{domain}\x92\x41\x44\x1a\x42\x46\x65tch existing task definition identifiers matching input filters.\x12\xeb\x01\n\tListTasks\x12#.flyteidl.admin.ResourceListRequest\x1a\x18.flyteidl.admin.TaskList\"\x9e\x01\x82\xd3\xe4\x93\x02\\\x12\x30/api/v1/tasks/{id.project}/{id.domain}/{id.name}Z(\x12&/api/v1/tasks/{id.project}/{id.domain}\x92\x41\x39\x1a\x37\x46\x65tch existing task definitions matching input filters.\x12\xd9\x02\n\x0e\x43reateWorkflow\x12%.flyteidl.admin.WorkflowCreateRequest\x1a&.flyteidl.admin.WorkflowCreateResponse\"\xf7\x01\x82\xd3\xe4\x93\x02\x16\"\x11/api/v1/workflows:\x01*\x92\x41\xd7\x01\x1a*Create and register a workflow definition.JB\n\x03\x34\x30\x30\x12;\n9Returned for bad request that may have failed validation.Je\n\x03\x34\x30\x39\x12^\n\\Returned for a request that references an identical entity that has already been registered.\x12\xc2\x01\n\x0bGetWorkflow\x12 .flyteidl.admin.ObjectGetRequest\x1a\x18.flyteidl.admin.Workflow\"w\x82\xd3\xe4\x93\x02\x43\x12\x41/api/v1/workflows/{id.project}/{id.domain}/{id.name}/{id.version}\x92\x41+\x1a)Retrieve an existing workflow definition.\x12\xed\x01\n\x0fListWorkflowIds\x12\x30.flyteidl.admin.NamedEntityIdentifierListRequest\x1a).flyteidl.admin.NamedEntityIdentifierList\"}\x82\xd3\xe4\x93\x02)\x12\'/api/v1/workflow_ids/{project}/{domain}\x92\x41K\x1aIFetch an existing workflow definition identifiers matching input filters.\x12\xff\x01\n\rListWorkflows\x12#.flyteidl.admin.ResourceListRequest\x1a\x1c.flyteidl.admin.WorkflowList\"\xaa\x01\x82\xd3\xe4\x93\x02\x64\x12\x34/api/v1/workflows/{id.project}/{id.domain}/{id.name}Z,\x12*/api/v1/workflows/{id.project}/{id.domain}\x92\x41=\x1a;Fetch existing workflow definitions matching input filters.\x12\xe5\x02\n\x10\x43reateLaunchPlan\x12\'.flyteidl.admin.LaunchPlanCreateRequest\x1a(.flyteidl.admin.LaunchPlanCreateResponse\"\xfd\x01\x82\xd3\xe4\x93\x02\x19\"\x14/api/v1/launch_plans:\x01*\x92\x41\xda\x01\x1a-Create and register a launch plan definition.JB\n\x03\x34\x30\x30\x12;\n9Returned for bad request that may have failed validation.Je\n\x03\x34\x30\x39\x12^\n\\Returned for a request that references an identical entity that has already been registered.\x12\xcc\x01\n\rGetLaunchPlan\x12 .flyteidl.admin.ObjectGetRequest\x1a\x1a.flyteidl.admin.LaunchPlan\"}\x82\xd3\xe4\x93\x02\x46\x12\x44/api/v1/launch_plans/{id.project}/{id.domain}/{id.name}/{id.version}\x92\x41.\x1a,Retrieve an existing launch plan definition.\x12\xf3\x01\n\x13GetActiveLaunchPlan\x12\'.flyteidl.admin.ActiveLaunchPlanRequest\x1a\x1a.flyteidl.admin.LaunchPlan\"\x96\x01\x82\xd3\xe4\x93\x02@\x12>/api/v1/active_launch_plans/{id.project}/{id.domain}/{id.name}\x92\x41M\x1aKRetrieve the active launch plan version specified by input request filters.\x12\xeb\x01\n\x15ListActiveLaunchPlans\x12+.flyteidl.admin.ActiveLaunchPlanListRequest\x1a\x1e.flyteidl.admin.LaunchPlanList\"\x84\x01\x82\xd3\xe4\x93\x02\x30\x12./api/v1/active_launch_plans/{project}/{domain}\x92\x41K\x1aIFetch the active launch plan versions specified by input request filters.\x12\xf3\x01\n\x11ListLaunchPlanIds\x12\x30.flyteidl.admin.NamedEntityIdentifierListRequest\x1a).flyteidl.admin.NamedEntityIdentifierList\"\x80\x01\x82\xd3\xe4\x93\x02,\x12*/api/v1/launch_plan_ids/{project}/{domain}\x92\x41K\x1aIFetch existing launch plan definition identifiers matching input filters.\x12\x8c\x02\n\x0fListLaunchPlans\x12#.flyteidl.admin.ResourceListRequest\x1a\x1e.flyteidl.admin.LaunchPlanList\"\xb3\x01\x82\xd3\xe4\x93\x02j\x12\x37/api/v1/launch_plans/{id.project}/{id.domain}/{id.name}Z/\x12-/api/v1/launch_plans/{id.project}/{id.domain}\x92\x41@\x1a>Fetch existing launch plan definitions matching input filters.\x12\xc0\x06\n\x10UpdateLaunchPlan\x12\'.flyteidl.admin.LaunchPlanUpdateRequest\x1a(.flyteidl.admin.LaunchPlanUpdateResponse\"\xd8\x05\x82\xd3\xe4\x93\x02I\x1a\x44/api/v1/launch_plans/{id.project}/{id.domain}/{id.name}/{id.version}:\x01*\x92\x41\x85\x05\x1a\x82\x05Update the status of an existing launch plan definition. At most one launch plan version for a given {project, domain, name} can be active at a time. If this call sets a launch plan to active and existing version is already active, the result of this call will be that the formerly active launch plan will be made inactive and specified launch plan in this request will be made active. In the event that the formerly active launch plan had a schedule associated it with it, this schedule will be disabled. If the reference launch plan in this request is being set to active and has a schedule associated with it, the schedule will be enabled.\x12\xa2\x01\n\x0f\x43reateExecution\x12&.flyteidl.admin.ExecutionCreateRequest\x1a\'.flyteidl.admin.ExecutionCreateResponse\">\x82\xd3\xe4\x93\x02\x17\"\x12/api/v1/executions:\x01*\x92\x41\x1e\x1a\x1c\x43reate a workflow execution.\x12\xb1\x01\n\x11RelaunchExecution\x12(.flyteidl.admin.ExecutionRelaunchRequest\x1a\'.flyteidl.admin.ExecutionCreateResponse\"I\x82\xd3\xe4\x93\x02 \"\x1b/api/v1/executions/relaunch:\x01*\x92\x41 \x1a\x1eRelaunch a workflow execution.\x12\xc2\x01\n\x0cGetExecution\x12+.flyteidl.admin.WorkflowExecutionGetRequest\x1a\x19.flyteidl.admin.Execution\"j\x82\xd3\xe4\x93\x02\x37\x12\x35/api/v1/executions/{id.project}/{id.domain}/{id.name}\x92\x41*\x1a(Retrieve an existing workflow execution.\x12\x82\x02\n\x10GetExecutionData\x12/.flyteidl.admin.WorkflowExecutionGetDataRequest\x1a\x30.flyteidl.admin.WorkflowExecutionGetDataResponse\"\x8a\x01\x82\xd3\xe4\x93\x02<\x12:/api/v1/data/executions/{id.project}/{id.domain}/{id.name}\x92\x41\x45\x1a\x43Retrieve input and output data from an existing workflow execution.\x12\xc8\x01\n\x0eListExecutions\x12#.flyteidl.admin.ResourceListRequest\x1a\x1d.flyteidl.admin.ExecutionList\"r\x82\xd3\xe4\x93\x02-\x12+/api/v1/executions/{id.project}/{id.domain}\x92\x41<\x1a:Fetch existing workflow executions matching input filters.\x12\xf4\x01\n\x12TerminateExecution\x12).flyteidl.admin.ExecutionTerminateRequest\x1a*.flyteidl.admin.ExecutionTerminateResponse\"\x86\x01\x82\xd3\xe4\x93\x02:*5/api/v1/executions/{id.project}/{id.domain}/{id.name}:\x01*\x92\x41\x43\x1a\x41Terminate the active workflow execution specified in the request.\x12\xfc\x01\n\x10GetNodeExecution\x12\'.flyteidl.admin.NodeExecutionGetRequest\x1a\x1d.flyteidl.admin.NodeExecution\"\x9f\x01\x82\xd3\xe4\x93\x02p\x12n/api/v1/node_executions/{id.execution_id.project}/{id.execution_id.domain}/{id.execution_id.name}/{id.node_id}\x92\x41&\x1a$Retrieve an existing node execution.\x12\x9a\x02\n\x12ListNodeExecutions\x12(.flyteidl.admin.NodeExecutionListRequest\x1a!.flyteidl.admin.NodeExecutionList\"\xb6\x01\x82\xd3\xe4\x93\x02u\x12s/api/v1/node_executions/{workflow_execution_id.project}/{workflow_execution_id.domain}/{workflow_execution_id.name}\x92\x41\x38\x1a\x36\x46\x65tch existing node executions matching input filters.\x12\xef\x04\n\x19ListNodeExecutionsForTask\x12/.flyteidl.admin.NodeExecutionForTaskListRequest\x1a!.flyteidl.admin.NodeExecutionList\"\xfd\x03\x82\xd3\xe4\x93\x02\xac\x03\x12\xa9\x03/api/v1/children/task_executions/{task_execution_id.node_execution_id.execution_id.project}/{task_execution_id.node_execution_id.execution_id.domain}/{task_execution_id.node_execution_id.execution_id.name}/{task_execution_id.node_execution_id.node_id}/{task_execution_id.task_id.project}/{task_execution_id.task_id.domain}/{task_execution_id.task_id.name}/{task_execution_id.task_id.version}/{task_execution_id.retry_attempt}\x92\x41G\x1a\x45\x46\x65tch child node executions launched by the specified task execution.\x12\xb3\x02\n\x14GetNodeExecutionData\x12+.flyteidl.admin.NodeExecutionGetDataRequest\x1a,.flyteidl.admin.NodeExecutionGetDataResponse\"\xbf\x01\x82\xd3\xe4\x93\x02u\x12s/api/v1/data/node_executions/{id.execution_id.project}/{id.execution_id.domain}/{id.execution_id.name}/{id.node_id}\x92\x41\x41\x1a?Retrieve input and output data from an existing node execution.\x12\x97\x01\n\x0fRegisterProject\x12&.flyteidl.admin.ProjectRegisterRequest\x1a\'.flyteidl.admin.ProjectRegisterResponse\"3\x82\xd3\xe4\x93\x02\x15\"\x10/api/v1/projects:\x01*\x92\x41\x15\x1a\x13Register a project.\x12\x85\x01\n\x0cListProjects\x12\".flyteidl.admin.ProjectListRequest\x1a\x18.flyteidl.admin.Projects\"7\x82\xd3\xe4\x93\x02\x12\x12\x10/api/v1/projects\x92\x41\x1c\x1a\x1a\x46\x65tch registered projects.\x12\xdd\x01\n\x13\x43reateWorkflowEvent\x12-.flyteidl.admin.WorkflowExecutionEventRequest\x1a..flyteidl.admin.WorkflowExecutionEventResponse\"g\x82\xd3\xe4\x93\x02\x1d\"\x18/api/v1/events/workflows:\x01*\x92\x41\x41\x1a?Create a workflow execution event recording a phase transition.\x12\xc9\x01\n\x0f\x43reateNodeEvent\x12).flyteidl.admin.NodeExecutionEventRequest\x1a*.flyteidl.admin.NodeExecutionEventResponse\"_\x82\xd3\xe4\x93\x02\x19\"\x14/api/v1/events/nodes:\x01*\x92\x41=\x1a;Create a node execution event recording a phase transition.\x12\xc9\x01\n\x0f\x43reateTaskEvent\x12).flyteidl.admin.TaskExecutionEventRequest\x1a*.flyteidl.admin.TaskExecutionEventResponse\"_\x82\xd3\xe4\x93\x02\x19\"\x14/api/v1/events/tasks:\x01*\x92\x41=\x1a;Create a task execution event recording a phase transition.\x12\xa9\x03\n\x10GetTaskExecution\x12\'.flyteidl.admin.TaskExecutionGetRequest\x1a\x1d.flyteidl.admin.TaskExecution\"\xcc\x02\x82\xd3\xe4\x93\x02\x9c\x02\x12\x99\x02/api/v1/task_executions/{id.node_execution_id.execution_id.project}/{id.node_execution_id.execution_id.domain}/{id.node_execution_id.execution_id.name}/{id.node_execution_id.node_id}/{id.task_id.project}/{id.task_id.domain}/{id.task_id.name}/{id.task_id.version}/{id.retry_attempt}\x92\x41&\x1a$Retrieve an existing task execution.\x12\xd3\x02\n\x12ListTaskExecutions\x12(.flyteidl.admin.TaskExecutionListRequest\x1a!.flyteidl.admin.TaskExecutionList\"\xef\x01\x82\xd3\xe4\x93\x02\xad\x01\x12\xaa\x01/api/v1/task_executions/{node_execution_id.execution_id.project}/{node_execution_id.execution_id.domain}/{node_execution_id.execution_id.name}/{node_execution_id.node_id}\x92\x41\x38\x1a\x36\x46\x65tch existing task executions matching input filters.\x12\xe0\x03\n\x14GetTaskExecutionData\x12+.flyteidl.admin.TaskExecutionGetDataRequest\x1a,.flyteidl.admin.TaskExecutionGetDataResponse\"\xec\x02\x82\xd3\xe4\x93\x02\xa1\x02\x12\x9e\x02/api/v1/data/task_executions/{id.node_execution_id.execution_id.project}/{id.node_execution_id.execution_id.domain}/{id.node_execution_id.execution_id.name}/{id.node_execution_id.node_id}/{id.task_id.project}/{id.task_id.domain}/{id.task_id.name}/{id.task_id.version}/{id.retry_attempt}\x92\x41\x41\x1a?Retrieve input and output data from an existing task execution.\x12\xbf\x02\n\x1dUpdateProjectDomainAttributes\x12\x34.flyteidl.admin.ProjectDomainAttributesUpdateRequest\x1a\x35.flyteidl.admin.ProjectDomainAttributesUpdateResponse\"\xb0\x01\x82\xd3\xe4\x93\x02O\x1aJ/api/v1/project_domain_attributes/{attributes.project}/{attributes.domain}:\x01*\x92\x41X\x1aVUpdate the customized resource attributes associated with a project-domain combination\x12\x9f\x02\n\x1aGetProjectDomainAttributes\x12\x31.flyteidl.admin.ProjectDomainAttributesGetRequest\x1a\x32.flyteidl.admin.ProjectDomainAttributesGetResponse\"\x99\x01\x82\xd3\xe4\x93\x02\x36\x12\x34/api/v1/project_domain_attributes/{project}/{domain}\x92\x41Z\x1aXRetrieve the customized resource attributes associated with a project-domain combination\x12\xa9\x02\n\x1d\x44\x65leteProjectDomainAttributes\x12\x34.flyteidl.admin.ProjectDomainAttributesDeleteRequest\x1a\x35.flyteidl.admin.ProjectDomainAttributesDeleteResponse\"\x9a\x01\x82\xd3\xe4\x93\x02\x39*4/api/v1/project_domain_attributes/{project}/{domain}:\x01*\x92\x41X\x1aVDelete the customized resource attributes associated with a project-domain combination\x12\xce\x02\n\x18UpdateWorkflowAttributes\x12/.flyteidl.admin.WorkflowAttributesUpdateRequest\x1a\x30.flyteidl.admin.WorkflowAttributesUpdateResponse\"\xce\x01\x82\xd3\xe4\x93\x02_\x1aZ/api/v1/workflow_attributes/{attributes.project}/{attributes.domain}/{attributes.workflow}:\x01*\x92\x41\x66\x1a\x64Update the customized resource attributes associated with a project, domain and workflow combination\x12\xa3\x02\n\x15GetWorkflowAttributes\x12,.flyteidl.admin.WorkflowAttributesGetRequest\x1a-.flyteidl.admin.WorkflowAttributesGetResponse\"\xac\x01\x82\xd3\xe4\x93\x02;\x12\x39/api/v1/workflow_attributes/{project}/{domain}/{workflow}\x92\x41h\x1a\x66Retrieve the customized resource attributes associated with a project, domain and workflow combination\x12\xad\x02\n\x18\x44\x65leteWorkflowAttributes\x12/.flyteidl.admin.WorkflowAttributesDeleteRequest\x1a\x30.flyteidl.admin.WorkflowAttributesDeleteResponse\"\xad\x01\x82\xd3\xe4\x93\x02>*9/api/v1/workflow_attributes/{project}/{domain}/{workflow}:\x01*\x92\x41\x66\x1a\x64\x44\x65lete the customized resource attributes associated with a project, domain and workflow combination\x12\xe1\x01\n\x17ListMatchableAttributes\x12..flyteidl.admin.ListMatchableAttributesRequest\x1a/.flyteidl.admin.ListMatchableAttributesResponse\"e\x82\xd3\xe4\x93\x02\x1e\x12\x1c/api/v1/matchable_attributes\x92\x41>\x1a/api/v1/active_launch_plans/{id.project}/{id.domain}/{id.name}\x92\x41M\x1aKRetrieve the active launch plan version specified by input request filters.\x12\xeb\x01\n\x15ListActiveLaunchPlans\x12+.flyteidl.admin.ActiveLaunchPlanListRequest\x1a\x1e.flyteidl.admin.LaunchPlanList\"\x84\x01\x82\xd3\xe4\x93\x02\x30\x12./api/v1/active_launch_plans/{project}/{domain}\x92\x41K\x1aIFetch the active launch plan versions specified by input request filters.\x12\xf3\x01\n\x11ListLaunchPlanIds\x12\x30.flyteidl.admin.NamedEntityIdentifierListRequest\x1a).flyteidl.admin.NamedEntityIdentifierList\"\x80\x01\x82\xd3\xe4\x93\x02,\x12*/api/v1/launch_plan_ids/{project}/{domain}\x92\x41K\x1aIFetch existing launch plan definition identifiers matching input filters.\x12\x8c\x02\n\x0fListLaunchPlans\x12#.flyteidl.admin.ResourceListRequest\x1a\x1e.flyteidl.admin.LaunchPlanList\"\xb3\x01\x82\xd3\xe4\x93\x02j\x12\x37/api/v1/launch_plans/{id.project}/{id.domain}/{id.name}Z/\x12-/api/v1/launch_plans/{id.project}/{id.domain}\x92\x41@\x1a>Fetch existing launch plan definitions matching input filters.\x12\xc0\x06\n\x10UpdateLaunchPlan\x12\'.flyteidl.admin.LaunchPlanUpdateRequest\x1a(.flyteidl.admin.LaunchPlanUpdateResponse\"\xd8\x05\x82\xd3\xe4\x93\x02I\x1a\x44/api/v1/launch_plans/{id.project}/{id.domain}/{id.name}/{id.version}:\x01*\x92\x41\x85\x05\x1a\x82\x05Update the status of an existing launch plan definition. At most one launch plan version for a given {project, domain, name} can be active at a time. If this call sets a launch plan to active and existing version is already active, the result of this call will be that the formerly active launch plan will be made inactive and specified launch plan in this request will be made active. In the event that the formerly active launch plan had a schedule associated it with it, this schedule will be disabled. If the reference launch plan in this request is being set to active and has a schedule associated with it, the schedule will be enabled.\x12\xa2\x01\n\x0f\x43reateExecution\x12&.flyteidl.admin.ExecutionCreateRequest\x1a\'.flyteidl.admin.ExecutionCreateResponse\">\x82\xd3\xe4\x93\x02\x17\"\x12/api/v1/executions:\x01*\x92\x41\x1e\x1a\x1c\x43reate a workflow execution.\x12\xb1\x01\n\x11RelaunchExecution\x12(.flyteidl.admin.ExecutionRelaunchRequest\x1a\'.flyteidl.admin.ExecutionCreateResponse\"I\x82\xd3\xe4\x93\x02 \"\x1b/api/v1/executions/relaunch:\x01*\x92\x41 \x1a\x1eRelaunch a workflow execution.\x12\xc2\x01\n\x0cGetExecution\x12+.flyteidl.admin.WorkflowExecutionGetRequest\x1a\x19.flyteidl.admin.Execution\"j\x82\xd3\xe4\x93\x02\x37\x12\x35/api/v1/executions/{id.project}/{id.domain}/{id.name}\x92\x41*\x1a(Retrieve an existing workflow execution.\x12\x82\x02\n\x10GetExecutionData\x12/.flyteidl.admin.WorkflowExecutionGetDataRequest\x1a\x30.flyteidl.admin.WorkflowExecutionGetDataResponse\"\x8a\x01\x82\xd3\xe4\x93\x02<\x12:/api/v1/data/executions/{id.project}/{id.domain}/{id.name}\x92\x41\x45\x1a\x43Retrieve input and output data from an existing workflow execution.\x12\xc8\x01\n\x0eListExecutions\x12#.flyteidl.admin.ResourceListRequest\x1a\x1d.flyteidl.admin.ExecutionList\"r\x82\xd3\xe4\x93\x02-\x12+/api/v1/executions/{id.project}/{id.domain}\x92\x41<\x1a:Fetch existing workflow executions matching input filters.\x12\xf4\x01\n\x12TerminateExecution\x12).flyteidl.admin.ExecutionTerminateRequest\x1a*.flyteidl.admin.ExecutionTerminateResponse\"\x86\x01\x82\xd3\xe4\x93\x02:*5/api/v1/executions/{id.project}/{id.domain}/{id.name}:\x01*\x92\x41\x43\x1a\x41Terminate the active workflow execution specified in the request.\x12\xfc\x01\n\x10GetNodeExecution\x12\'.flyteidl.admin.NodeExecutionGetRequest\x1a\x1d.flyteidl.admin.NodeExecution\"\x9f\x01\x82\xd3\xe4\x93\x02p\x12n/api/v1/node_executions/{id.execution_id.project}/{id.execution_id.domain}/{id.execution_id.name}/{id.node_id}\x92\x41&\x1a$Retrieve an existing node execution.\x12\x9a\x02\n\x12ListNodeExecutions\x12(.flyteidl.admin.NodeExecutionListRequest\x1a!.flyteidl.admin.NodeExecutionList\"\xb6\x01\x82\xd3\xe4\x93\x02u\x12s/api/v1/node_executions/{workflow_execution_id.project}/{workflow_execution_id.domain}/{workflow_execution_id.name}\x92\x41\x38\x1a\x36\x46\x65tch existing node executions matching input filters.\x12\xef\x04\n\x19ListNodeExecutionsForTask\x12/.flyteidl.admin.NodeExecutionForTaskListRequest\x1a!.flyteidl.admin.NodeExecutionList\"\xfd\x03\x82\xd3\xe4\x93\x02\xac\x03\x12\xa9\x03/api/v1/children/task_executions/{task_execution_id.node_execution_id.execution_id.project}/{task_execution_id.node_execution_id.execution_id.domain}/{task_execution_id.node_execution_id.execution_id.name}/{task_execution_id.node_execution_id.node_id}/{task_execution_id.task_id.project}/{task_execution_id.task_id.domain}/{task_execution_id.task_id.name}/{task_execution_id.task_id.version}/{task_execution_id.retry_attempt}\x92\x41G\x1a\x45\x46\x65tch child node executions launched by the specified task execution.\x12\xb3\x02\n\x14GetNodeExecutionData\x12+.flyteidl.admin.NodeExecutionGetDataRequest\x1a,.flyteidl.admin.NodeExecutionGetDataResponse\"\xbf\x01\x82\xd3\xe4\x93\x02u\x12s/api/v1/data/node_executions/{id.execution_id.project}/{id.execution_id.domain}/{id.execution_id.name}/{id.node_id}\x92\x41\x41\x1a?Retrieve input and output data from an existing node execution.\x12\x97\x01\n\x0fRegisterProject\x12&.flyteidl.admin.ProjectRegisterRequest\x1a\'.flyteidl.admin.ProjectRegisterResponse\"3\x82\xd3\xe4\x93\x02\x15\"\x10/api/v1/projects:\x01*\x92\x41\x15\x1a\x13Register a project.\x12\x85\x01\n\x0cListProjects\x12\".flyteidl.admin.ProjectListRequest\x1a\x18.flyteidl.admin.Projects\"7\x82\xd3\xe4\x93\x02\x12\x12\x10/api/v1/projects\x92\x41\x1c\x1a\x1a\x46\x65tch registered projects.\x12\xdd\x01\n\x13\x43reateWorkflowEvent\x12-.flyteidl.admin.WorkflowExecutionEventRequest\x1a..flyteidl.admin.WorkflowExecutionEventResponse\"g\x82\xd3\xe4\x93\x02\x1d\"\x18/api/v1/events/workflows:\x01*\x92\x41\x41\x1a?Create a workflow execution event recording a phase transition.\x12\xc9\x01\n\x0f\x43reateNodeEvent\x12).flyteidl.admin.NodeExecutionEventRequest\x1a*.flyteidl.admin.NodeExecutionEventResponse\"_\x82\xd3\xe4\x93\x02\x19\"\x14/api/v1/events/nodes:\x01*\x92\x41=\x1a;Create a node execution event recording a phase transition.\x12\xc9\x01\n\x0f\x43reateTaskEvent\x12).flyteidl.admin.TaskExecutionEventRequest\x1a*.flyteidl.admin.TaskExecutionEventResponse\"_\x82\xd3\xe4\x93\x02\x19\"\x14/api/v1/events/tasks:\x01*\x92\x41=\x1a;Create a task execution event recording a phase transition.\x12\xa9\x03\n\x10GetTaskExecution\x12\'.flyteidl.admin.TaskExecutionGetRequest\x1a\x1d.flyteidl.admin.TaskExecution\"\xcc\x02\x82\xd3\xe4\x93\x02\x9c\x02\x12\x99\x02/api/v1/task_executions/{id.node_execution_id.execution_id.project}/{id.node_execution_id.execution_id.domain}/{id.node_execution_id.execution_id.name}/{id.node_execution_id.node_id}/{id.task_id.project}/{id.task_id.domain}/{id.task_id.name}/{id.task_id.version}/{id.retry_attempt}\x92\x41&\x1a$Retrieve an existing task execution.\x12\xd3\x02\n\x12ListTaskExecutions\x12(.flyteidl.admin.TaskExecutionListRequest\x1a!.flyteidl.admin.TaskExecutionList\"\xef\x01\x82\xd3\xe4\x93\x02\xad\x01\x12\xaa\x01/api/v1/task_executions/{node_execution_id.execution_id.project}/{node_execution_id.execution_id.domain}/{node_execution_id.execution_id.name}/{node_execution_id.node_id}\x92\x41\x38\x1a\x36\x46\x65tch existing task executions matching input filters.\x12\xe0\x03\n\x14GetTaskExecutionData\x12+.flyteidl.admin.TaskExecutionGetDataRequest\x1a,.flyteidl.admin.TaskExecutionGetDataResponse\"\xec\x02\x82\xd3\xe4\x93\x02\xa1\x02\x12\x9e\x02/api/v1/data/task_executions/{id.node_execution_id.execution_id.project}/{id.node_execution_id.execution_id.domain}/{id.node_execution_id.execution_id.name}/{id.node_execution_id.node_id}/{id.task_id.project}/{id.task_id.domain}/{id.task_id.name}/{id.task_id.version}/{id.retry_attempt}\x92\x41\x41\x1a?Retrieve input and output data from an existing task execution.\x12\xbf\x02\n\x1dUpdateProjectDomainAttributes\x12\x34.flyteidl.admin.ProjectDomainAttributesUpdateRequest\x1a\x35.flyteidl.admin.ProjectDomainAttributesUpdateResponse\"\xb0\x01\x82\xd3\xe4\x93\x02O\x1aJ/api/v1/project_domain_attributes/{attributes.project}/{attributes.domain}:\x01*\x92\x41X\x1aVUpdate the customized resource attributes associated with a project-domain combination\x12\x9f\x02\n\x1aGetProjectDomainAttributes\x12\x31.flyteidl.admin.ProjectDomainAttributesGetRequest\x1a\x32.flyteidl.admin.ProjectDomainAttributesGetResponse\"\x99\x01\x82\xd3\xe4\x93\x02\x36\x12\x34/api/v1/project_domain_attributes/{project}/{domain}\x92\x41Z\x1aXRetrieve the customized resource attributes associated with a project-domain combination\x12\xa9\x02\n\x1d\x44\x65leteProjectDomainAttributes\x12\x34.flyteidl.admin.ProjectDomainAttributesDeleteRequest\x1a\x35.flyteidl.admin.ProjectDomainAttributesDeleteResponse\"\x9a\x01\x82\xd3\xe4\x93\x02\x39*4/api/v1/project_domain_attributes/{project}/{domain}:\x01*\x92\x41X\x1aVDelete the customized resource attributes associated with a project-domain combination\x12\xce\x02\n\x18UpdateWorkflowAttributes\x12/.flyteidl.admin.WorkflowAttributesUpdateRequest\x1a\x30.flyteidl.admin.WorkflowAttributesUpdateResponse\"\xce\x01\x82\xd3\xe4\x93\x02_\x1aZ/api/v1/workflow_attributes/{attributes.project}/{attributes.domain}/{attributes.workflow}:\x01*\x92\x41\x66\x1a\x64Update the customized resource attributes associated with a project, domain and workflow combination\x12\xa3\x02\n\x15GetWorkflowAttributes\x12,.flyteidl.admin.WorkflowAttributesGetRequest\x1a-.flyteidl.admin.WorkflowAttributesGetResponse\"\xac\x01\x82\xd3\xe4\x93\x02;\x12\x39/api/v1/workflow_attributes/{project}/{domain}/{workflow}\x92\x41h\x1a\x66Retrieve the customized resource attributes associated with a project, domain and workflow combination\x12\xad\x02\n\x18\x44\x65leteWorkflowAttributes\x12/.flyteidl.admin.WorkflowAttributesDeleteRequest\x1a\x30.flyteidl.admin.WorkflowAttributesDeleteResponse\"\xad\x01\x82\xd3\xe4\x93\x02>*9/api/v1/workflow_attributes/{project}/{domain}/{workflow}:\x01*\x92\x41\x66\x1a\x64\x44\x65lete the customized resource attributes associated with a project, domain and workflow combination\x12\xe1\x01\n\x17ListMatchableAttributes\x12..flyteidl.admin.ListMatchableAttributesRequest\x1a/.flyteidl.admin.ListMatchableAttributesResponse\"e\x82\xd3\xe4\x93\x02\x1e\x12\x1c/api/v1/matchable_attributes\x92\x41>\x1a>> thread = api.update_workflow(id_project, id_domain, id_name, id_version, body, async_req=True) + >>> result = thread.get() + + :param async_req bool + :param str id_project: Name of the project the resource belongs to. (required) + :param str id_domain: Name of the domain the resource belongs to. A domain can be considered as a subset within a specific project. (required) + :param str id_name: User provided value for the resource. (required) + :param str id_version: Specific version of the resource. (required) + :param AdminWorkflowUpdateRequest body: (required) + :return: AdminWorkflowUpdateResponse + If the method is called asynchronously, + returns the request thread. + """ + kwargs['_return_http_data_only'] = True + if kwargs.get('async_req'): + return self.update_workflow_with_http_info(id_project, id_domain, id_name, id_version, body, **kwargs) # noqa: E501 + else: + (data) = self.update_workflow_with_http_info(id_project, id_domain, id_name, id_version, body, **kwargs) # noqa: E501 + return data + + def update_workflow_with_http_info(self, id_project, id_domain, id_name, id_version, body, **kwargs): # noqa: E501 + """update_workflow # noqa: E501 + + Update the state of an existing workflow definition. # noqa: E501 + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + >>> thread = api.update_workflow_with_http_info(id_project, id_domain, id_name, id_version, body, async_req=True) + >>> result = thread.get() + + :param async_req bool + :param str id_project: Name of the project the resource belongs to. (required) + :param str id_domain: Name of the domain the resource belongs to. A domain can be considered as a subset within a specific project. (required) + :param str id_name: User provided value for the resource. (required) + :param str id_version: Specific version of the resource. (required) + :param AdminWorkflowUpdateRequest body: (required) + :return: AdminWorkflowUpdateResponse + If the method is called asynchronously, + returns the request thread. + """ + + all_params = ['id_project', 'id_domain', 'id_name', 'id_version', 'body'] # noqa: E501 + all_params.append('async_req') + all_params.append('_return_http_data_only') + all_params.append('_preload_content') + all_params.append('_request_timeout') + + params = locals() + for key, val in six.iteritems(params['kwargs']): + if key not in all_params: + raise TypeError( + "Got an unexpected keyword argument '%s'" + " to method update_workflow" % key + ) + params[key] = val + del params['kwargs'] + # verify the required parameter 'id_project' is set + if ('id_project' not in params or + params['id_project'] is None): + raise ValueError("Missing the required parameter `id_project` when calling `update_workflow`") # noqa: E501 + # verify the required parameter 'id_domain' is set + if ('id_domain' not in params or + params['id_domain'] is None): + raise ValueError("Missing the required parameter `id_domain` when calling `update_workflow`") # noqa: E501 + # verify the required parameter 'id_name' is set + if ('id_name' not in params or + params['id_name'] is None): + raise ValueError("Missing the required parameter `id_name` when calling `update_workflow`") # noqa: E501 + # verify the required parameter 'id_version' is set + if ('id_version' not in params or + params['id_version'] is None): + raise ValueError("Missing the required parameter `id_version` when calling `update_workflow`") # noqa: E501 + # verify the required parameter 'body' is set + if ('body' not in params or + params['body'] is None): + raise ValueError("Missing the required parameter `body` when calling `update_workflow`") # noqa: E501 + + collection_formats = {} + + path_params = {} + if 'id_project' in params: + path_params['id.project'] = params['id_project'] # noqa: E501 + if 'id_domain' in params: + path_params['id.domain'] = params['id_domain'] # noqa: E501 + if 'id_name' in params: + path_params['id.name'] = params['id_name'] # noqa: E501 + if 'id_version' in params: + path_params['id.version'] = params['id_version'] # noqa: E501 + + query_params = [] + + header_params = {} + + form_params = [] + local_var_files = {} + + body_params = None + if 'body' in params: + body_params = params['body'] + # HTTP header `Accept` + header_params['Accept'] = self.api_client.select_header_accept( + ['application/json']) # noqa: E501 + + # HTTP header `Content-Type` + header_params['Content-Type'] = self.api_client.select_header_content_type( # noqa: E501 + ['application/json']) # noqa: E501 + + # Authentication setting + auth_settings = [] # noqa: E501 + + return self.api_client.call_api( + '/api/v1/workflows/{id.project}/{id.domain}/{id.name}/{id.version}', 'PUT', + path_params, + query_params, + header_params, + body=body_params, + post_params=form_params, + files=local_var_files, + response_type='AdminWorkflowUpdateResponse', # noqa: E501 + auth_settings=auth_settings, + async_req=params.get('async_req'), + _return_http_data_only=params.get('_return_http_data_only'), + _preload_content=params.get('_preload_content', True), + _request_timeout=params.get('_request_timeout'), + collection_formats=collection_formats) + def update_workflow_attributes(self, attributes_project, attributes_domain, attributes_workflow, body, **kwargs): # noqa: E501 """update_workflow_attributes # noqa: E501 diff --git a/flyteidl/gen/pb_python/flyteidl/service/flyteadmin/flyteadmin/models/__init__.py b/flyteidl/gen/pb_python/flyteidl/service/flyteadmin/flyteadmin/models/__init__.py index f82df60327d..470c4714484 100644 --- a/flyteidl/gen/pb_python/flyteidl/service/flyteadmin/flyteadmin/models/__init__.py +++ b/flyteidl/gen/pb_python/flyteidl/service/flyteadmin/flyteadmin/models/__init__.py @@ -110,6 +110,9 @@ from flyteadmin.models.admin_workflow_execution_get_data_response import AdminWorkflowExecutionGetDataResponse from flyteadmin.models.admin_workflow_list import AdminWorkflowList from flyteadmin.models.admin_workflow_spec import AdminWorkflowSpec +from flyteadmin.models.admin_workflow_state import AdminWorkflowState +from flyteadmin.models.admin_workflow_update_request import AdminWorkflowUpdateRequest +from flyteadmin.models.admin_workflow_update_response import AdminWorkflowUpdateResponse from flyteadmin.models.blob_type_blob_dimensionality import BlobTypeBlobDimensionality from flyteadmin.models.comparison_expression_operator import ComparisonExpressionOperator from flyteadmin.models.conjunction_expression_logical_operator import ConjunctionExpressionLogicalOperator diff --git a/flyteidl/gen/pb_python/flyteidl/service/flyteadmin/flyteadmin/models/admin_workflow_state.py b/flyteidl/gen/pb_python/flyteidl/service/flyteadmin/flyteadmin/models/admin_workflow_state.py new file mode 100644 index 00000000000..dbdba848039 --- /dev/null +++ b/flyteidl/gen/pb_python/flyteidl/service/flyteadmin/flyteadmin/models/admin_workflow_state.py @@ -0,0 +1,93 @@ +# coding: utf-8 + +""" + flyteidl/service/admin.proto + + No description provided (generated by Swagger Codegen https://github.com/swagger-api/swagger-codegen) # noqa: E501 + + OpenAPI spec version: version not set + + Generated by: https://github.com/swagger-api/swagger-codegen.git +""" + + +import pprint +import re # noqa: F401 + +import six + + +class AdminWorkflowState(object): + """NOTE: This class is auto generated by the swagger code generator program. + + Do not edit the class manually. + """ + + """ + allowed enum values + """ + ACTIVE = "WORKFLOW_ACTIVE" + ARCHIVED = "WORKFLOW_ARCHIVED" + + """ + Attributes: + swagger_types (dict): The key is attribute name + and the value is attribute type. + attribute_map (dict): The key is attribute name + and the value is json key in definition. + """ + swagger_types = { + } + + attribute_map = { + } + + def __init__(self): # noqa: E501 + """AdminWorkflowState - a model defined in Swagger""" # noqa: E501 + self.discriminator = None + + def to_dict(self): + """Returns the model properties as a dict""" + result = {} + + for attr, _ in six.iteritems(self.swagger_types): + value = getattr(self, attr) + if isinstance(value, list): + result[attr] = list(map( + lambda x: x.to_dict() if hasattr(x, "to_dict") else x, + value + )) + elif hasattr(value, "to_dict"): + result[attr] = value.to_dict() + elif isinstance(value, dict): + result[attr] = dict(map( + lambda item: (item[0], item[1].to_dict()) + if hasattr(item[1], "to_dict") else item, + value.items() + )) + else: + result[attr] = value + if issubclass(AdminWorkflowState, dict): + for key, value in self.items(): + result[key] = value + + return result + + def to_str(self): + """Returns the string representation of the model""" + return pprint.pformat(self.to_dict()) + + def __repr__(self): + """For `print` and `pprint`""" + return self.to_str() + + def __eq__(self, other): + """Returns true if both objects are equal""" + if not isinstance(other, AdminWorkflowState): + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + """Returns true if both objects are not equal""" + return not self == other diff --git a/flyteidl/gen/pb_python/flyteidl/service/flyteadmin/flyteadmin/models/admin_workflow_update_request.py b/flyteidl/gen/pb_python/flyteidl/service/flyteadmin/flyteadmin/models/admin_workflow_update_request.py new file mode 100644 index 00000000000..a97084477af --- /dev/null +++ b/flyteidl/gen/pb_python/flyteidl/service/flyteadmin/flyteadmin/models/admin_workflow_update_request.py @@ -0,0 +1,148 @@ +# coding: utf-8 + +""" + flyteidl/service/admin.proto + + No description provided (generated by Swagger Codegen https://github.com/swagger-api/swagger-codegen) # noqa: E501 + + OpenAPI spec version: version not set + + Generated by: https://github.com/swagger-api/swagger-codegen.git +""" + + +import pprint +import re # noqa: F401 + +import six + +from flyteadmin.models.admin_workflow_state import AdminWorkflowState # noqa: F401,E501 +from flyteadmin.models.core_identifier import CoreIdentifier # noqa: F401,E501 + + +class AdminWorkflowUpdateRequest(object): + """NOTE: This class is auto generated by the swagger code generator program. + + Do not edit the class manually. + """ + + """ + Attributes: + swagger_types (dict): The key is attribute name + and the value is attribute type. + attribute_map (dict): The key is attribute name + and the value is json key in definition. + """ + swagger_types = { + 'id': 'CoreIdentifier', + 'state': 'AdminWorkflowState' + } + + attribute_map = { + 'id': 'id', + 'state': 'state' + } + + def __init__(self, id=None, state=None): # noqa: E501 + """AdminWorkflowUpdateRequest - a model defined in Swagger""" # noqa: E501 + + self._id = None + self._state = None + self.discriminator = None + + if id is not None: + self.id = id + if state is not None: + self.state = state + + @property + def id(self): + """Gets the id of this AdminWorkflowUpdateRequest. # noqa: E501 + + Identifier of workflow for which to change state. # noqa: E501 + + :return: The id of this AdminWorkflowUpdateRequest. # noqa: E501 + :rtype: CoreIdentifier + """ + return self._id + + @id.setter + def id(self, id): + """Sets the id of this AdminWorkflowUpdateRequest. + + Identifier of workflow for which to change state. # noqa: E501 + + :param id: The id of this AdminWorkflowUpdateRequest. # noqa: E501 + :type: CoreIdentifier + """ + + self._id = id + + @property + def state(self): + """Gets the state of this AdminWorkflowUpdateRequest. # noqa: E501 + + Desired state to apply to the workflow. # noqa: E501 + + :return: The state of this AdminWorkflowUpdateRequest. # noqa: E501 + :rtype: AdminWorkflowState + """ + return self._state + + @state.setter + def state(self, state): + """Sets the state of this AdminWorkflowUpdateRequest. + + Desired state to apply to the workflow. # noqa: E501 + + :param state: The state of this AdminWorkflowUpdateRequest. # noqa: E501 + :type: AdminWorkflowState + """ + + self._state = state + + def to_dict(self): + """Returns the model properties as a dict""" + result = {} + + for attr, _ in six.iteritems(self.swagger_types): + value = getattr(self, attr) + if isinstance(value, list): + result[attr] = list(map( + lambda x: x.to_dict() if hasattr(x, "to_dict") else x, + value + )) + elif hasattr(value, "to_dict"): + result[attr] = value.to_dict() + elif isinstance(value, dict): + result[attr] = dict(map( + lambda item: (item[0], item[1].to_dict()) + if hasattr(item[1], "to_dict") else item, + value.items() + )) + else: + result[attr] = value + if issubclass(AdminWorkflowUpdateRequest, dict): + for key, value in self.items(): + result[key] = value + + return result + + def to_str(self): + """Returns the string representation of the model""" + return pprint.pformat(self.to_dict()) + + def __repr__(self): + """For `print` and `pprint`""" + return self.to_str() + + def __eq__(self, other): + """Returns true if both objects are equal""" + if not isinstance(other, AdminWorkflowUpdateRequest): + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + """Returns true if both objects are not equal""" + return not self == other diff --git a/flyteidl/gen/pb_python/flyteidl/service/flyteadmin/flyteadmin/models/admin_workflow_update_response.py b/flyteidl/gen/pb_python/flyteidl/service/flyteadmin/flyteadmin/models/admin_workflow_update_response.py new file mode 100644 index 00000000000..782589af688 --- /dev/null +++ b/flyteidl/gen/pb_python/flyteidl/service/flyteadmin/flyteadmin/models/admin_workflow_update_response.py @@ -0,0 +1,87 @@ +# coding: utf-8 + +""" + flyteidl/service/admin.proto + + No description provided (generated by Swagger Codegen https://github.com/swagger-api/swagger-codegen) # noqa: E501 + + OpenAPI spec version: version not set + + Generated by: https://github.com/swagger-api/swagger-codegen.git +""" + + +import pprint +import re # noqa: F401 + +import six + + +class AdminWorkflowUpdateResponse(object): + """NOTE: This class is auto generated by the swagger code generator program. + + Do not edit the class manually. + """ + + """ + Attributes: + swagger_types (dict): The key is attribute name + and the value is attribute type. + attribute_map (dict): The key is attribute name + and the value is json key in definition. + """ + swagger_types = { + } + + attribute_map = { + } + + def __init__(self): # noqa: E501 + """AdminWorkflowUpdateResponse - a model defined in Swagger""" # noqa: E501 + self.discriminator = None + + def to_dict(self): + """Returns the model properties as a dict""" + result = {} + + for attr, _ in six.iteritems(self.swagger_types): + value = getattr(self, attr) + if isinstance(value, list): + result[attr] = list(map( + lambda x: x.to_dict() if hasattr(x, "to_dict") else x, + value + )) + elif hasattr(value, "to_dict"): + result[attr] = value.to_dict() + elif isinstance(value, dict): + result[attr] = dict(map( + lambda item: (item[0], item[1].to_dict()) + if hasattr(item[1], "to_dict") else item, + value.items() + )) + else: + result[attr] = value + if issubclass(AdminWorkflowUpdateResponse, dict): + for key, value in self.items(): + result[key] = value + + return result + + def to_str(self): + """Returns the string representation of the model""" + return pprint.pformat(self.to_dict()) + + def __repr__(self): + """For `print` and `pprint`""" + return self.to_str() + + def __eq__(self, other): + """Returns true if both objects are equal""" + if not isinstance(other, AdminWorkflowUpdateResponse): + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + """Returns true if both objects are not equal""" + return not self == other diff --git a/flyteidl/gen/pb_python/flyteidl/service/flyteadmin/test/test_admin_service_api.py b/flyteidl/gen/pb_python/flyteidl/service/flyteadmin/test/test_admin_service_api.py index 01c0ee063f8..e1318574ce1 100644 --- a/flyteidl/gen/pb_python/flyteidl/service/flyteadmin/test/test_admin_service_api.py +++ b/flyteidl/gen/pb_python/flyteidl/service/flyteadmin/test/test_admin_service_api.py @@ -299,6 +299,12 @@ def test_update_project_domain_attributes(self): """ pass + def test_update_workflow(self): + """Test case for update_workflow + + """ + pass + def test_update_workflow_attributes(self): """Test case for update_workflow_attributes diff --git a/flyteidl/gen/pb_python/flyteidl/service/flyteadmin/test/test_admin_workflow_state.py b/flyteidl/gen/pb_python/flyteidl/service/flyteadmin/test/test_admin_workflow_state.py new file mode 100644 index 00000000000..17c345abf1c --- /dev/null +++ b/flyteidl/gen/pb_python/flyteidl/service/flyteadmin/test/test_admin_workflow_state.py @@ -0,0 +1,40 @@ +# coding: utf-8 + +""" + flyteidl/service/admin.proto + + No description provided (generated by Swagger Codegen https://github.com/swagger-api/swagger-codegen) # noqa: E501 + + OpenAPI spec version: version not set + + Generated by: https://github.com/swagger-api/swagger-codegen.git +""" + + +from __future__ import absolute_import + +import unittest + +import flyteadmin +from flyteadmin.models.admin_workflow_state import AdminWorkflowState # noqa: E501 +from flyteadmin.rest import ApiException + + +class TestAdminWorkflowState(unittest.TestCase): + """AdminWorkflowState unit test stubs""" + + def setUp(self): + pass + + def tearDown(self): + pass + + def testAdminWorkflowState(self): + """Test AdminWorkflowState""" + # FIXME: construct object with mandatory attributes with example values + # model = flyteadmin.models.admin_workflow_state.AdminWorkflowState() # noqa: E501 + pass + + +if __name__ == '__main__': + unittest.main() diff --git a/flyteidl/gen/pb_python/flyteidl/service/flyteadmin/test/test_admin_workflow_update_request.py b/flyteidl/gen/pb_python/flyteidl/service/flyteadmin/test/test_admin_workflow_update_request.py new file mode 100644 index 00000000000..d4833c15f1b --- /dev/null +++ b/flyteidl/gen/pb_python/flyteidl/service/flyteadmin/test/test_admin_workflow_update_request.py @@ -0,0 +1,40 @@ +# coding: utf-8 + +""" + flyteidl/service/admin.proto + + No description provided (generated by Swagger Codegen https://github.com/swagger-api/swagger-codegen) # noqa: E501 + + OpenAPI spec version: version not set + + Generated by: https://github.com/swagger-api/swagger-codegen.git +""" + + +from __future__ import absolute_import + +import unittest + +import flyteadmin +from flyteadmin.models.admin_workflow_update_request import AdminWorkflowUpdateRequest # noqa: E501 +from flyteadmin.rest import ApiException + + +class TestAdminWorkflowUpdateRequest(unittest.TestCase): + """AdminWorkflowUpdateRequest unit test stubs""" + + def setUp(self): + pass + + def tearDown(self): + pass + + def testAdminWorkflowUpdateRequest(self): + """Test AdminWorkflowUpdateRequest""" + # FIXME: construct object with mandatory attributes with example values + # model = flyteadmin.models.admin_workflow_update_request.AdminWorkflowUpdateRequest() # noqa: E501 + pass + + +if __name__ == '__main__': + unittest.main() diff --git a/flyteidl/gen/pb_python/flyteidl/service/flyteadmin/test/test_admin_workflow_update_response.py b/flyteidl/gen/pb_python/flyteidl/service/flyteadmin/test/test_admin_workflow_update_response.py new file mode 100644 index 00000000000..c0ba1db673b --- /dev/null +++ b/flyteidl/gen/pb_python/flyteidl/service/flyteadmin/test/test_admin_workflow_update_response.py @@ -0,0 +1,40 @@ +# coding: utf-8 + +""" + flyteidl/service/admin.proto + + No description provided (generated by Swagger Codegen https://github.com/swagger-api/swagger-codegen) # noqa: E501 + + OpenAPI spec version: version not set + + Generated by: https://github.com/swagger-api/swagger-codegen.git +""" + + +from __future__ import absolute_import + +import unittest + +import flyteadmin +from flyteadmin.models.admin_workflow_update_response import AdminWorkflowUpdateResponse # noqa: E501 +from flyteadmin.rest import ApiException + + +class TestAdminWorkflowUpdateResponse(unittest.TestCase): + """AdminWorkflowUpdateResponse unit test stubs""" + + def setUp(self): + pass + + def tearDown(self): + pass + + def testAdminWorkflowUpdateResponse(self): + """Test AdminWorkflowUpdateResponse""" + # FIXME: construct object with mandatory attributes with example values + # model = flyteadmin.models.admin_workflow_update_response.AdminWorkflowUpdateResponse() # noqa: E501 + pass + + +if __name__ == '__main__': + unittest.main() diff --git a/flyteidl/protos/flyteidl/admin/workflow.proto b/flyteidl/protos/flyteidl/admin/workflow.proto index 9de621fa1bc..67fbfc4ed02 100644 --- a/flyteidl/protos/flyteidl/admin/workflow.proto +++ b/flyteidl/protos/flyteidl/admin/workflow.proto @@ -62,3 +62,25 @@ message WorkflowClosure { // Time at which the workflow was created. google.protobuf.Timestamp created_at = 2; } + +// The status of the workflow is used to control its visibility in the UI. +enum WorkflowState { + // By default, all workflows are considered active and under development. + WORKFLOW_ACTIVE = 0; + + // Archived workflows are no longer visible in the UI. + WORKFLOW_ARCHIVED = 1; +} + +// Request to set the referenced workflow state to the configured value. +message WorkflowUpdateRequest { + // Identifier of workflow for which to change state. + core.Identifier id = 1; + + // Desired state to apply to the workflow. + WorkflowState state = 2; +} + +// Purposefully empty, may be populated in the future. +message WorkflowUpdateResponse { +} diff --git a/flyteidl/protos/flyteidl/service/admin.proto b/flyteidl/protos/flyteidl/service/admin.proto index 9c08f98d6ab..c0f8621f833 100644 --- a/flyteidl/protos/flyteidl/service/admin.proto +++ b/flyteidl/protos/flyteidl/service/admin.proto @@ -125,6 +125,16 @@ service AdminService { }; } + rpc UpdateWorkflow (flyteidl.admin.WorkflowUpdateRequest) returns (flyteidl.admin.WorkflowUpdateResponse) { + option (google.api.http) = { + put: "/api/v1/workflows/{id.project}/{id.domain}/{id.name}/{id.version}" + body: "*" + }; + option (grpc.gateway.protoc_gen_swagger.options.openapiv2_operation) = { + description: "Update the state of an existing workflow definition." + }; + } + rpc CreateLaunchPlan (flyteidl.admin.LaunchPlanCreateRequest) returns (flyteidl.admin.LaunchPlanCreateResponse) { option (google.api.http) = { post: "/api/v1/launch_plans"