diff --git a/clients/go/datacatalog/mocks/DataCatalogClient.go b/clients/go/datacatalog/mocks/DataCatalogClient.go index bd2891bb9..c91c49732 100644 --- a/clients/go/datacatalog/mocks/DataCatalogClient.go +++ b/clients/go/datacatalog/mocks/DataCatalogClient.go @@ -160,54 +160,6 @@ func (_m *DataCatalogClient) CreateDataset(ctx context.Context, in *datacatalog. return r0, r1 } -type DataCatalogClient_ExtendReservation struct { - *mock.Call -} - -func (_m DataCatalogClient_ExtendReservation) Return(_a0 *datacatalog.ExtendReservationResponse, _a1 error) *DataCatalogClient_ExtendReservation { - return &DataCatalogClient_ExtendReservation{Call: _m.Call.Return(_a0, _a1)} -} - -func (_m *DataCatalogClient) OnExtendReservation(ctx context.Context, in *datacatalog.ExtendReservationRequest, opts ...grpc.CallOption) *DataCatalogClient_ExtendReservation { - c := _m.On("ExtendReservation", ctx, in, opts) - return &DataCatalogClient_ExtendReservation{Call: c} -} - -func (_m *DataCatalogClient) OnExtendReservationMatch(matchers ...interface{}) *DataCatalogClient_ExtendReservation { - c := _m.On("ExtendReservation", matchers...) - return &DataCatalogClient_ExtendReservation{Call: c} -} - -// ExtendReservation provides a mock function with given fields: ctx, in, opts -func (_m *DataCatalogClient) ExtendReservation(ctx context.Context, in *datacatalog.ExtendReservationRequest, opts ...grpc.CallOption) (*datacatalog.ExtendReservationResponse, 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 *datacatalog.ExtendReservationResponse - if rf, ok := ret.Get(0).(func(context.Context, *datacatalog.ExtendReservationRequest, ...grpc.CallOption) *datacatalog.ExtendReservationResponse); ok { - r0 = rf(ctx, in, opts...) - } else { - if ret.Get(0) != nil { - r0 = ret.Get(0).(*datacatalog.ExtendReservationResponse) - } - } - - var r1 error - if rf, ok := ret.Get(1).(func(context.Context, *datacatalog.ExtendReservationRequest, ...grpc.CallOption) error); ok { - r1 = rf(ctx, in, opts...) - } else { - r1 = ret.Error(1) - } - - return r0, r1 -} - type DataCatalogClient_GetArtifact struct { *mock.Call } @@ -304,26 +256,26 @@ func (_m *DataCatalogClient) GetDataset(ctx context.Context, in *datacatalog.Get return r0, r1 } -type DataCatalogClient_GetOrReserveArtifact struct { +type DataCatalogClient_GetOrExtendReservation struct { *mock.Call } -func (_m DataCatalogClient_GetOrReserveArtifact) Return(_a0 *datacatalog.GetOrReserveArtifactResponse, _a1 error) *DataCatalogClient_GetOrReserveArtifact { - return &DataCatalogClient_GetOrReserveArtifact{Call: _m.Call.Return(_a0, _a1)} +func (_m DataCatalogClient_GetOrExtendReservation) Return(_a0 *datacatalog.GetOrExtendReservationResponse, _a1 error) *DataCatalogClient_GetOrExtendReservation { + return &DataCatalogClient_GetOrExtendReservation{Call: _m.Call.Return(_a0, _a1)} } -func (_m *DataCatalogClient) OnGetOrReserveArtifact(ctx context.Context, in *datacatalog.GetOrReserveArtifactRequest, opts ...grpc.CallOption) *DataCatalogClient_GetOrReserveArtifact { - c := _m.On("GetOrReserveArtifact", ctx, in, opts) - return &DataCatalogClient_GetOrReserveArtifact{Call: c} +func (_m *DataCatalogClient) OnGetOrExtendReservation(ctx context.Context, in *datacatalog.GetOrExtendReservationRequest, opts ...grpc.CallOption) *DataCatalogClient_GetOrExtendReservation { + c := _m.On("GetOrExtendReservation", ctx, in, opts) + return &DataCatalogClient_GetOrExtendReservation{Call: c} } -func (_m *DataCatalogClient) OnGetOrReserveArtifactMatch(matchers ...interface{}) *DataCatalogClient_GetOrReserveArtifact { - c := _m.On("GetOrReserveArtifact", matchers...) - return &DataCatalogClient_GetOrReserveArtifact{Call: c} +func (_m *DataCatalogClient) OnGetOrExtendReservationMatch(matchers ...interface{}) *DataCatalogClient_GetOrExtendReservation { + c := _m.On("GetOrExtendReservation", matchers...) + return &DataCatalogClient_GetOrExtendReservation{Call: c} } -// GetOrReserveArtifact provides a mock function with given fields: ctx, in, opts -func (_m *DataCatalogClient) GetOrReserveArtifact(ctx context.Context, in *datacatalog.GetOrReserveArtifactRequest, opts ...grpc.CallOption) (*datacatalog.GetOrReserveArtifactResponse, error) { +// GetOrExtendReservation provides a mock function with given fields: ctx, in, opts +func (_m *DataCatalogClient) GetOrExtendReservation(ctx context.Context, in *datacatalog.GetOrExtendReservationRequest, opts ...grpc.CallOption) (*datacatalog.GetOrExtendReservationResponse, error) { _va := make([]interface{}, len(opts)) for _i := range opts { _va[_i] = opts[_i] @@ -333,17 +285,17 @@ func (_m *DataCatalogClient) GetOrReserveArtifact(ctx context.Context, in *datac _ca = append(_ca, _va...) ret := _m.Called(_ca...) - var r0 *datacatalog.GetOrReserveArtifactResponse - if rf, ok := ret.Get(0).(func(context.Context, *datacatalog.GetOrReserveArtifactRequest, ...grpc.CallOption) *datacatalog.GetOrReserveArtifactResponse); ok { + var r0 *datacatalog.GetOrExtendReservationResponse + if rf, ok := ret.Get(0).(func(context.Context, *datacatalog.GetOrExtendReservationRequest, ...grpc.CallOption) *datacatalog.GetOrExtendReservationResponse); ok { r0 = rf(ctx, in, opts...) } else { if ret.Get(0) != nil { - r0 = ret.Get(0).(*datacatalog.GetOrReserveArtifactResponse) + r0 = ret.Get(0).(*datacatalog.GetOrExtendReservationResponse) } } var r1 error - if rf, ok := ret.Get(1).(func(context.Context, *datacatalog.GetOrReserveArtifactRequest, ...grpc.CallOption) error); ok { + if rf, ok := ret.Get(1).(func(context.Context, *datacatalog.GetOrExtendReservationRequest, ...grpc.CallOption) error); ok { r1 = rf(ctx, in, opts...) } else { r1 = ret.Error(1) diff --git a/gen/pb-cpp/flyteidl/core/catalog.pb.cc b/gen/pb-cpp/flyteidl/core/catalog.pb.cc index 501138565..9b9d65517 100644 --- a/gen/pb-cpp/flyteidl/core/catalog.pb.cc +++ b/gen/pb-cpp/flyteidl/core/catalog.pb.cc @@ -30,6 +30,10 @@ class CatalogMetadataDefaultTypeInternal { ::google::protobuf::internal::ExplicitlyConstructed _instance; const ::flyteidl::core::TaskExecutionIdentifier* source_task_execution_; } _CatalogMetadata_default_instance_; +class CatalogReservationDefaultTypeInternal { + public: + ::google::protobuf::internal::ExplicitlyConstructed _instance; +} _CatalogReservation_default_instance_; } // namespace core } // namespace flyteidl static void InitDefaultsCatalogArtifactTag_flyteidl_2fcore_2fcatalog_2eproto() { @@ -63,13 +67,28 @@ ::google::protobuf::internal::SCCInfo<3> scc_info_CatalogMetadata_flyteidl_2fcor &scc_info_CatalogArtifactTag_flyteidl_2fcore_2fcatalog_2eproto.base, &scc_info_TaskExecutionIdentifier_flyteidl_2fcore_2fidentifier_2eproto.base,}}; +static void InitDefaultsCatalogReservation_flyteidl_2fcore_2fcatalog_2eproto() { + GOOGLE_PROTOBUF_VERIFY_VERSION; + + { + void* ptr = &::flyteidl::core::_CatalogReservation_default_instance_; + new (ptr) ::flyteidl::core::CatalogReservation(); + ::google::protobuf::internal::OnShutdownDestroyMessage(ptr); + } + ::flyteidl::core::CatalogReservation::InitAsDefaultInstance(); +} + +::google::protobuf::internal::SCCInfo<0> scc_info_CatalogReservation_flyteidl_2fcore_2fcatalog_2eproto = + {{ATOMIC_VAR_INIT(::google::protobuf::internal::SCCInfoBase::kUninitialized), 0, InitDefaultsCatalogReservation_flyteidl_2fcore_2fcatalog_2eproto}, {}}; + void InitDefaults_flyteidl_2fcore_2fcatalog_2eproto() { ::google::protobuf::internal::InitSCC(&scc_info_CatalogArtifactTag_flyteidl_2fcore_2fcatalog_2eproto.base); ::google::protobuf::internal::InitSCC(&scc_info_CatalogMetadata_flyteidl_2fcore_2fcatalog_2eproto.base); + ::google::protobuf::internal::InitSCC(&scc_info_CatalogReservation_flyteidl_2fcore_2fcatalog_2eproto.base); } -::google::protobuf::Metadata file_level_metadata_flyteidl_2fcore_2fcatalog_2eproto[2]; -const ::google::protobuf::EnumDescriptor* file_level_enum_descriptors_flyteidl_2fcore_2fcatalog_2eproto[1]; +::google::protobuf::Metadata file_level_metadata_flyteidl_2fcore_2fcatalog_2eproto[3]; +const ::google::protobuf::EnumDescriptor* file_level_enum_descriptors_flyteidl_2fcore_2fcatalog_2eproto[2]; constexpr ::google::protobuf::ServiceDescriptor const** file_level_service_descriptors_flyteidl_2fcore_2fcatalog_2eproto = nullptr; const ::google::protobuf::uint32 TableStruct_flyteidl_2fcore_2fcatalog_2eproto::offsets[] PROTOBUF_SECTION_VARIABLE(protodesc_cold) = { @@ -89,21 +108,28 @@ const ::google::protobuf::uint32 TableStruct_flyteidl_2fcore_2fcatalog_2eproto:: PROTOBUF_FIELD_OFFSET(::flyteidl::core::CatalogMetadata, artifact_tag_), offsetof(::flyteidl::core::CatalogMetadataDefaultTypeInternal, source_task_execution_), PROTOBUF_FIELD_OFFSET(::flyteidl::core::CatalogMetadata, source_execution_), + ~0u, // no _has_bits_ + PROTOBUF_FIELD_OFFSET(::flyteidl::core::CatalogReservation, _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::core::CatalogArtifactTag)}, { 7, -1, sizeof(::flyteidl::core::CatalogMetadata)}, + { 16, -1, sizeof(::flyteidl::core::CatalogReservation)}, }; static ::google::protobuf::Message const * const file_default_instances[] = { reinterpret_cast(&::flyteidl::core::_CatalogArtifactTag_default_instance_), reinterpret_cast(&::flyteidl::core::_CatalogMetadata_default_instance_), + reinterpret_cast(&::flyteidl::core::_CatalogReservation_default_instance_), }; ::google::protobuf::internal::AssignDescriptorsTable assign_descriptors_table_flyteidl_2fcore_2fcatalog_2eproto = { {}, AddDescriptors_flyteidl_2fcore_2fcatalog_2eproto, "flyteidl/core/catalog.proto", schemas, file_default_instances, TableStruct_flyteidl_2fcore_2fcatalog_2eproto::offsets, - file_level_metadata_flyteidl_2fcore_2fcatalog_2eproto, 2, file_level_enum_descriptors_flyteidl_2fcore_2fcatalog_2eproto, file_level_service_descriptors_flyteidl_2fcore_2fcatalog_2eproto, + file_level_metadata_flyteidl_2fcore_2fcatalog_2eproto, 3, file_level_enum_descriptors_flyteidl_2fcore_2fcatalog_2eproto, file_level_service_descriptors_flyteidl_2fcore_2fcatalog_2eproto, }; const char descriptor_table_protodef_flyteidl_2fcore_2fcatalog_2eproto[] = @@ -115,17 +141,21 @@ const char descriptor_table_protodef_flyteidl_2fcore_2fcatalog_2eproto[] = "\0227\n\014artifact_tag\030\002 \001(\0132!.flyteidl.core.C" "atalogArtifactTag\022G\n\025source_task_executi" "on\030\003 \001(\0132&.flyteidl.core.TaskExecutionId" - "entifierH\000B\022\n\020source_execution*\215\001\n\022Catal" - "ogCacheStatus\022\022\n\016CACHE_DISABLED\020\000\022\016\n\nCAC" - "HE_MISS\020\001\022\r\n\tCACHE_HIT\020\002\022\023\n\017CACHE_POPULA" - "TED\020\003\022\030\n\024CACHE_LOOKUP_FAILURE\020\004\022\025\n\021CACHE" - "_PUT_FAILURE\020\005B6Z4github.com/flyteorg/fl" - "yteidl/gen/pb-go/flyteidl/coreb\006proto3" + "entifierH\000B\022\n\020source_execution\"\236\001\n\022Catal" + "ogReservation\"\207\001\n\006Status\022\030\n\024RESERVATION_" + "DISABLED\020\000\022\030\n\024RESERVATION_ACQUIRED\020\001\022\026\n\022" + "RESERVATION_EXISTS\020\002\022\030\n\024RESERVATION_RELE" + "ASED\020\003\022\027\n\023RESERVATION_FAILURE\020\004*\215\001\n\022Cata" + "logCacheStatus\022\022\n\016CACHE_DISABLED\020\000\022\016\n\nCA" + "CHE_MISS\020\001\022\r\n\tCACHE_HIT\020\002\022\023\n\017CACHE_POPUL" + "ATED\020\003\022\030\n\024CACHE_LOOKUP_FAILURE\020\004\022\025\n\021CACH" + "E_PUT_FAILURE\020\005B6Z4github.com/flyteorg/f" + "lyteidl/gen/pb-go/flyteidl/coreb\006proto3" ; ::google::protobuf::internal::DescriptorTable descriptor_table_flyteidl_2fcore_2fcatalog_2eproto = { false, InitDefaults_flyteidl_2fcore_2fcatalog_2eproto, descriptor_table_protodef_flyteidl_2fcore_2fcatalog_2eproto, - "flyteidl/core/catalog.proto", &assign_descriptors_table_flyteidl_2fcore_2fcatalog_2eproto, 558, + "flyteidl/core/catalog.proto", &assign_descriptors_table_flyteidl_2fcore_2fcatalog_2eproto, 719, }; void AddDescriptors_flyteidl_2fcore_2fcatalog_2eproto() { @@ -140,10 +170,37 @@ void AddDescriptors_flyteidl_2fcore_2fcatalog_2eproto() { static bool dynamic_init_dummy_flyteidl_2fcore_2fcatalog_2eproto = []() { AddDescriptors_flyteidl_2fcore_2fcatalog_2eproto(); return true; }(); namespace flyteidl { namespace core { -const ::google::protobuf::EnumDescriptor* CatalogCacheStatus_descriptor() { +const ::google::protobuf::EnumDescriptor* CatalogReservation_Status_descriptor() { ::google::protobuf::internal::AssignDescriptors(&assign_descriptors_table_flyteidl_2fcore_2fcatalog_2eproto); return file_level_enum_descriptors_flyteidl_2fcore_2fcatalog_2eproto[0]; } +bool CatalogReservation_Status_IsValid(int value) { + switch (value) { + case 0: + case 1: + case 2: + case 3: + case 4: + return true; + default: + return false; + } +} + +#if !defined(_MSC_VER) || _MSC_VER >= 1900 +const CatalogReservation_Status CatalogReservation::RESERVATION_DISABLED; +const CatalogReservation_Status CatalogReservation::RESERVATION_ACQUIRED; +const CatalogReservation_Status CatalogReservation::RESERVATION_EXISTS; +const CatalogReservation_Status CatalogReservation::RESERVATION_RELEASED; +const CatalogReservation_Status CatalogReservation::RESERVATION_FAILURE; +const CatalogReservation_Status CatalogReservation::Status_MIN; +const CatalogReservation_Status CatalogReservation::Status_MAX; +const int CatalogReservation::Status_ARRAYSIZE; +#endif // !defined(_MSC_VER) || _MSC_VER >= 1900 +const ::google::protobuf::EnumDescriptor* CatalogCacheStatus_descriptor() { + ::google::protobuf::internal::AssignDescriptors(&assign_descriptors_table_flyteidl_2fcore_2fcatalog_2eproto); + return file_level_enum_descriptors_flyteidl_2fcore_2fcatalog_2eproto[1]; +} bool CatalogCacheStatus_IsValid(int value) { switch (value) { case 0: @@ -1008,6 +1065,215 @@ ::google::protobuf::Metadata CatalogMetadata::GetMetadata() const { } +// =================================================================== + +void CatalogReservation::InitAsDefaultInstance() { +} +class CatalogReservation::HasBitSetters { + public: +}; + +#if !defined(_MSC_VER) || _MSC_VER >= 1900 +#endif // !defined(_MSC_VER) || _MSC_VER >= 1900 + +CatalogReservation::CatalogReservation() + : ::google::protobuf::Message(), _internal_metadata_(nullptr) { + SharedCtor(); + // @@protoc_insertion_point(constructor:flyteidl.core.CatalogReservation) +} +CatalogReservation::CatalogReservation(const CatalogReservation& from) + : ::google::protobuf::Message(), + _internal_metadata_(nullptr) { + _internal_metadata_.MergeFrom(from._internal_metadata_); + // @@protoc_insertion_point(copy_constructor:flyteidl.core.CatalogReservation) +} + +void CatalogReservation::SharedCtor() { +} + +CatalogReservation::~CatalogReservation() { + // @@protoc_insertion_point(destructor:flyteidl.core.CatalogReservation) + SharedDtor(); +} + +void CatalogReservation::SharedDtor() { +} + +void CatalogReservation::SetCachedSize(int size) const { + _cached_size_.Set(size); +} +const CatalogReservation& CatalogReservation::default_instance() { + ::google::protobuf::internal::InitSCC(&::scc_info_CatalogReservation_flyteidl_2fcore_2fcatalog_2eproto.base); + return *internal_default_instance(); +} + + +void CatalogReservation::Clear() { +// @@protoc_insertion_point(message_clear_start:flyteidl.core.CatalogReservation) + ::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* CatalogReservation::_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 CatalogReservation::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.core.CatalogReservation) + 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.core.CatalogReservation) + return true; +failure: + // @@protoc_insertion_point(parse_failure:flyteidl.core.CatalogReservation) + return false; +#undef DO_ +} +#endif // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER + +void CatalogReservation::SerializeWithCachedSizes( + ::google::protobuf::io::CodedOutputStream* output) const { + // @@protoc_insertion_point(serialize_start:flyteidl.core.CatalogReservation) + ::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.core.CatalogReservation) +} + +::google::protobuf::uint8* CatalogReservation::InternalSerializeWithCachedSizesToArray( + ::google::protobuf::uint8* target) const { + // @@protoc_insertion_point(serialize_to_array_start:flyteidl.core.CatalogReservation) + ::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.core.CatalogReservation) + return target; +} + +size_t CatalogReservation::ByteSizeLong() const { +// @@protoc_insertion_point(message_byte_size_start:flyteidl.core.CatalogReservation) + 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 CatalogReservation::MergeFrom(const ::google::protobuf::Message& from) { +// @@protoc_insertion_point(generalized_merge_from_start:flyteidl.core.CatalogReservation) + GOOGLE_DCHECK_NE(&from, this); + const CatalogReservation* source = + ::google::protobuf::DynamicCastToGenerated( + &from); + if (source == nullptr) { + // @@protoc_insertion_point(generalized_merge_from_cast_fail:flyteidl.core.CatalogReservation) + ::google::protobuf::internal::ReflectionOps::Merge(from, this); + } else { + // @@protoc_insertion_point(generalized_merge_from_cast_success:flyteidl.core.CatalogReservation) + MergeFrom(*source); + } +} + +void CatalogReservation::MergeFrom(const CatalogReservation& from) { +// @@protoc_insertion_point(class_specific_merge_from_start:flyteidl.core.CatalogReservation) + GOOGLE_DCHECK_NE(&from, this); + _internal_metadata_.MergeFrom(from._internal_metadata_); + ::google::protobuf::uint32 cached_has_bits = 0; + (void) cached_has_bits; + +} + +void CatalogReservation::CopyFrom(const ::google::protobuf::Message& from) { +// @@protoc_insertion_point(generalized_copy_from_start:flyteidl.core.CatalogReservation) + if (&from == this) return; + Clear(); + MergeFrom(from); +} + +void CatalogReservation::CopyFrom(const CatalogReservation& from) { +// @@protoc_insertion_point(class_specific_copy_from_start:flyteidl.core.CatalogReservation) + if (&from == this) return; + Clear(); + MergeFrom(from); +} + +bool CatalogReservation::IsInitialized() const { + return true; +} + +void CatalogReservation::Swap(CatalogReservation* other) { + if (other == this) return; + InternalSwap(other); +} +void CatalogReservation::InternalSwap(CatalogReservation* other) { + using std::swap; + _internal_metadata_.Swap(&other->_internal_metadata_); +} + +::google::protobuf::Metadata CatalogReservation::GetMetadata() const { + ::google::protobuf::internal::AssignDescriptors(&::assign_descriptors_table_flyteidl_2fcore_2fcatalog_2eproto); + return ::file_level_metadata_flyteidl_2fcore_2fcatalog_2eproto[kIndexInFileMessages]; +} + + // @@protoc_insertion_point(namespace_scope) } // namespace core } // namespace flyteidl @@ -1019,6 +1285,9 @@ template<> PROTOBUF_NOINLINE ::flyteidl::core::CatalogArtifactTag* Arena::Create template<> PROTOBUF_NOINLINE ::flyteidl::core::CatalogMetadata* Arena::CreateMaybeMessage< ::flyteidl::core::CatalogMetadata >(Arena* arena) { return Arena::CreateInternal< ::flyteidl::core::CatalogMetadata >(arena); } +template<> PROTOBUF_NOINLINE ::flyteidl::core::CatalogReservation* Arena::CreateMaybeMessage< ::flyteidl::core::CatalogReservation >(Arena* arena) { + return Arena::CreateInternal< ::flyteidl::core::CatalogReservation >(arena); +} } // namespace protobuf } // namespace google diff --git a/gen/pb-cpp/flyteidl/core/catalog.pb.h b/gen/pb-cpp/flyteidl/core/catalog.pb.h index 2dd345058..dd3b3a35e 100644 --- a/gen/pb-cpp/flyteidl/core/catalog.pb.h +++ b/gen/pb-cpp/flyteidl/core/catalog.pb.h @@ -43,7 +43,7 @@ struct TableStruct_flyteidl_2fcore_2fcatalog_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[2] + static const ::google::protobuf::internal::ParseTable schema[3] PROTOBUF_SECTION_VARIABLE(protodesc_cold); static const ::google::protobuf::internal::FieldMetadata field_metadata[]; static const ::google::protobuf::internal::SerializationTable serialization_table[]; @@ -58,17 +58,45 @@ extern CatalogArtifactTagDefaultTypeInternal _CatalogArtifactTag_default_instanc class CatalogMetadata; class CatalogMetadataDefaultTypeInternal; extern CatalogMetadataDefaultTypeInternal _CatalogMetadata_default_instance_; +class CatalogReservation; +class CatalogReservationDefaultTypeInternal; +extern CatalogReservationDefaultTypeInternal _CatalogReservation_default_instance_; } // namespace core } // namespace flyteidl namespace google { namespace protobuf { template<> ::flyteidl::core::CatalogArtifactTag* Arena::CreateMaybeMessage<::flyteidl::core::CatalogArtifactTag>(Arena*); template<> ::flyteidl::core::CatalogMetadata* Arena::CreateMaybeMessage<::flyteidl::core::CatalogMetadata>(Arena*); +template<> ::flyteidl::core::CatalogReservation* Arena::CreateMaybeMessage<::flyteidl::core::CatalogReservation>(Arena*); } // namespace protobuf } // namespace google namespace flyteidl { namespace core { +enum CatalogReservation_Status { + CatalogReservation_Status_RESERVATION_DISABLED = 0, + CatalogReservation_Status_RESERVATION_ACQUIRED = 1, + CatalogReservation_Status_RESERVATION_EXISTS = 2, + CatalogReservation_Status_RESERVATION_RELEASED = 3, + CatalogReservation_Status_RESERVATION_FAILURE = 4, + CatalogReservation_Status_CatalogReservation_Status_INT_MIN_SENTINEL_DO_NOT_USE_ = std::numeric_limits<::google::protobuf::int32>::min(), + CatalogReservation_Status_CatalogReservation_Status_INT_MAX_SENTINEL_DO_NOT_USE_ = std::numeric_limits<::google::protobuf::int32>::max() +}; +bool CatalogReservation_Status_IsValid(int value); +const CatalogReservation_Status CatalogReservation_Status_Status_MIN = CatalogReservation_Status_RESERVATION_DISABLED; +const CatalogReservation_Status CatalogReservation_Status_Status_MAX = CatalogReservation_Status_RESERVATION_FAILURE; +const int CatalogReservation_Status_Status_ARRAYSIZE = CatalogReservation_Status_Status_MAX + 1; + +const ::google::protobuf::EnumDescriptor* CatalogReservation_Status_descriptor(); +inline const ::std::string& CatalogReservation_Status_Name(CatalogReservation_Status value) { + return ::google::protobuf::internal::NameOfEnum( + CatalogReservation_Status_descriptor(), value); +} +inline bool CatalogReservation_Status_Parse( + const ::std::string& name, CatalogReservation_Status* value) { + return ::google::protobuf::internal::ParseNamedEnum( + CatalogReservation_Status_descriptor(), name, value); +} enum CatalogCacheStatus { CACHE_DISABLED = 0, CACHE_MISS = 1, @@ -380,6 +408,143 @@ class CatalogMetadata final : friend struct ::TableStruct_flyteidl_2fcore_2fcatalog_2eproto; }; +// ------------------------------------------------------------------- + +class CatalogReservation final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:flyteidl.core.CatalogReservation) */ { + public: + CatalogReservation(); + virtual ~CatalogReservation(); + + CatalogReservation(const CatalogReservation& from); + + inline CatalogReservation& operator=(const CatalogReservation& from) { + CopyFrom(from); + return *this; + } + #if LANG_CXX11 + CatalogReservation(CatalogReservation&& from) noexcept + : CatalogReservation() { + *this = ::std::move(from); + } + + inline CatalogReservation& operator=(CatalogReservation&& 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 CatalogReservation& default_instance(); + + static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY + static inline const CatalogReservation* internal_default_instance() { + return reinterpret_cast( + &_CatalogReservation_default_instance_); + } + static constexpr int kIndexInFileMessages = + 2; + + void Swap(CatalogReservation* other); + friend void swap(CatalogReservation& a, CatalogReservation& b) { + a.Swap(&b); + } + + // implements Message ---------------------------------------------- + + inline CatalogReservation* New() const final { + return CreateMaybeMessage(nullptr); + } + + CatalogReservation* 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 CatalogReservation& from); + void MergeFrom(const CatalogReservation& 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(CatalogReservation* 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 ---------------------------------------------------- + + typedef CatalogReservation_Status Status; + static const Status RESERVATION_DISABLED = + CatalogReservation_Status_RESERVATION_DISABLED; + static const Status RESERVATION_ACQUIRED = + CatalogReservation_Status_RESERVATION_ACQUIRED; + static const Status RESERVATION_EXISTS = + CatalogReservation_Status_RESERVATION_EXISTS; + static const Status RESERVATION_RELEASED = + CatalogReservation_Status_RESERVATION_RELEASED; + static const Status RESERVATION_FAILURE = + CatalogReservation_Status_RESERVATION_FAILURE; + static inline bool Status_IsValid(int value) { + return CatalogReservation_Status_IsValid(value); + } + static const Status Status_MIN = + CatalogReservation_Status_Status_MIN; + static const Status Status_MAX = + CatalogReservation_Status_Status_MAX; + static const int Status_ARRAYSIZE = + CatalogReservation_Status_Status_ARRAYSIZE; + static inline const ::google::protobuf::EnumDescriptor* + Status_descriptor() { + return CatalogReservation_Status_descriptor(); + } + static inline const ::std::string& Status_Name(Status value) { + return CatalogReservation_Status_Name(value); + } + static inline bool Status_Parse(const ::std::string& name, + Status* value) { + return CatalogReservation_Status_Parse(name, value); + } + + // accessors ------------------------------------------------------- + + // @@protoc_insertion_point(class_scope:flyteidl.core.CatalogReservation) + private: + class HasBitSetters; + + ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + friend struct ::TableStruct_flyteidl_2fcore_2fcatalog_2eproto; +}; // =================================================================== @@ -641,11 +806,17 @@ inline void CatalogMetadata::clear_has_source_execution() { inline CatalogMetadata::SourceExecutionCase CatalogMetadata::source_execution_case() const { return CatalogMetadata::SourceExecutionCase(_oneof_case_[0]); } +// ------------------------------------------------------------------- + +// CatalogReservation + #ifdef __GNUC__ #pragma GCC diagnostic pop #endif // __GNUC__ // ------------------------------------------------------------------- +// ------------------------------------------------------------------- + // @@protoc_insertion_point(namespace_scope) @@ -655,6 +826,11 @@ inline CatalogMetadata::SourceExecutionCase CatalogMetadata::source_execution_ca namespace google { namespace protobuf { +template <> struct is_proto_enum< ::flyteidl::core::CatalogReservation_Status> : ::std::true_type {}; +template <> +inline const EnumDescriptor* GetEnumDescriptor< ::flyteidl::core::CatalogReservation_Status>() { + return ::flyteidl::core::CatalogReservation_Status_descriptor(); +} template <> struct is_proto_enum< ::flyteidl::core::CatalogCacheStatus> : ::std::true_type {}; template <> inline const EnumDescriptor* GetEnumDescriptor< ::flyteidl::core::CatalogCacheStatus>() { diff --git a/gen/pb-cpp/flyteidl/core/tasks.pb.cc b/gen/pb-cpp/flyteidl/core/tasks.pb.cc index 9b1af045d..a5e1499f2 100644 --- a/gen/pb-cpp/flyteidl/core/tasks.pb.cc +++ b/gen/pb-cpp/flyteidl/core/tasks.pb.cc @@ -391,6 +391,7 @@ const ::google::protobuf::uint32 TableStruct_flyteidl_2fcore_2ftasks_2eproto::of PROTOBUF_FIELD_OFFSET(::flyteidl::core::TaskMetadata, discovery_version_), PROTOBUF_FIELD_OFFSET(::flyteidl::core::TaskMetadata, deprecated_error_message_), offsetof(::flyteidl::core::TaskMetadataDefaultTypeInternal, interruptible_), + PROTOBUF_FIELD_OFFSET(::flyteidl::core::TaskMetadata, cache_serializable_), PROTOBUF_FIELD_OFFSET(::flyteidl::core::TaskMetadata, interruptible_value_), PROTOBUF_FIELD_OFFSET(::flyteidl::core::TaskTemplate_ConfigEntry_DoNotUse, _has_bits_), PROTOBUF_FIELD_OFFSET(::flyteidl::core::TaskTemplate_ConfigEntry_DoNotUse, _internal_metadata_), @@ -500,17 +501,17 @@ static const ::google::protobuf::internal::MigrationSchema schemas[] PROTOBUF_SE { 7, -1, sizeof(::flyteidl::core::Resources)}, { 14, -1, sizeof(::flyteidl::core::RuntimeMetadata)}, { 22, -1, sizeof(::flyteidl::core::TaskMetadata)}, - { 35, 42, sizeof(::flyteidl::core::TaskTemplate_ConfigEntry_DoNotUse)}, - { 44, -1, sizeof(::flyteidl::core::TaskTemplate)}, - { 61, -1, sizeof(::flyteidl::core::ContainerPort)}, - { 67, -1, sizeof(::flyteidl::core::Container)}, - { 81, -1, sizeof(::flyteidl::core::IOStrategy)}, - { 88, -1, sizeof(::flyteidl::core::DataLoadingConfig)}, - { 98, -1, sizeof(::flyteidl::core::K8sPod)}, - { 105, 112, sizeof(::flyteidl::core::K8sObjectMetadata_LabelsEntry_DoNotUse)}, - { 114, 121, sizeof(::flyteidl::core::K8sObjectMetadata_AnnotationsEntry_DoNotUse)}, - { 123, -1, sizeof(::flyteidl::core::K8sObjectMetadata)}, - { 130, -1, sizeof(::flyteidl::core::Sql)}, + { 36, 43, sizeof(::flyteidl::core::TaskTemplate_ConfigEntry_DoNotUse)}, + { 45, -1, sizeof(::flyteidl::core::TaskTemplate)}, + { 62, -1, sizeof(::flyteidl::core::ContainerPort)}, + { 68, -1, sizeof(::flyteidl::core::Container)}, + { 82, -1, sizeof(::flyteidl::core::IOStrategy)}, + { 89, -1, sizeof(::flyteidl::core::DataLoadingConfig)}, + { 99, -1, sizeof(::flyteidl::core::K8sPod)}, + { 106, 113, sizeof(::flyteidl::core::K8sObjectMetadata_LabelsEntry_DoNotUse)}, + { 115, 122, sizeof(::flyteidl::core::K8sObjectMetadata_AnnotationsEntry_DoNotUse)}, + { 124, -1, sizeof(::flyteidl::core::K8sObjectMetadata)}, + { 131, -1, sizeof(::flyteidl::core::Sql)}, }; static ::google::protobuf::Message const * const file_default_instances[] = { @@ -555,71 +556,72 @@ const char descriptor_table_protodef_flyteidl_2fcore_2ftasks_2eproto[] = "ype\030\001 \001(\0162*.flyteidl.core.RuntimeMetadat" "a.RuntimeType\022\017\n\007version\030\002 \001(\t\022\016\n\006flavor" "\030\003 \001(\t\"\'\n\013RuntimeType\022\t\n\005OTHER\020\000\022\r\n\tFLYT" - "E_SDK\020\001\"\235\002\n\014TaskMetadata\022\024\n\014discoverable" + "E_SDK\020\001\"\271\002\n\014TaskMetadata\022\024\n\014discoverable" "\030\001 \001(\010\022/\n\007runtime\030\002 \001(\0132\036.flyteidl.core." "RuntimeMetadata\022*\n\007timeout\030\004 \001(\0132\031.googl" "e.protobuf.Duration\022-\n\007retries\030\005 \001(\0132\034.f" "lyteidl.core.RetryStrategy\022\031\n\021discovery_" "version\030\006 \001(\t\022 \n\030deprecated_error_messag" - "e\030\007 \001(\t\022\027\n\rinterruptible\030\010 \001(\010H\000B\025\n\023inte" - "rruptible_value\"\220\004\n\014TaskTemplate\022%\n\002id\030\001" - " \001(\0132\031.flyteidl.core.Identifier\022\014\n\004type\030" - "\002 \001(\t\022-\n\010metadata\030\003 \001(\0132\033.flyteidl.core." - "TaskMetadata\0220\n\tinterface\030\004 \001(\0132\035.flytei" - "dl.core.TypedInterface\022\'\n\006custom\030\005 \001(\0132\027" - ".google.protobuf.Struct\022-\n\tcontainer\030\006 \001" - "(\0132\030.flyteidl.core.ContainerH\000\022(\n\007k8s_po" - "d\030\021 \001(\0132\025.flyteidl.core.K8sPodH\000\022!\n\003sql\030" - "\022 \001(\0132\022.flyteidl.core.SqlH\000\022\031\n\021task_type" - "_version\030\007 \001(\005\0228\n\020security_context\030\010 \001(\013" - "2\036.flyteidl.core.SecurityContext\0227\n\006conf" - "ig\030\020 \003(\0132\'.flyteidl.core.TaskTemplate.Co" - "nfigEntry\032-\n\013ConfigEntry\022\013\n\003key\030\001 \001(\t\022\r\n" - "\005value\030\002 \001(\t:\0028\001B\010\n\006target\"\'\n\rContainerP" - "ort\022\026\n\016container_port\030\001 \001(\r\"\255\003\n\tContaine" - "r\022\r\n\005image\030\001 \001(\t\022\017\n\007command\030\002 \003(\t\022\014\n\004arg" - "s\030\003 \003(\t\022+\n\tresources\030\004 \001(\0132\030.flyteidl.co" - "re.Resources\022(\n\003env\030\005 \003(\0132\033.flyteidl.cor" - "e.KeyValuePair\022/\n\006config\030\006 \003(\0132\033.flyteid" - "l.core.KeyValuePairB\002\030\001\022+\n\005ports\030\007 \003(\0132\034" - ".flyteidl.core.ContainerPort\0225\n\013data_con" - "fig\030\t \001(\0132 .flyteidl.core.DataLoadingCon" - "fig\022;\n\014architecture\030\n \001(\0162%.flyteidl.cor" - "e.Container.Architecture\"I\n\014Architecture" - "\022\013\n\007UNKNOWN\020\000\022\t\n\005AMD64\020\001\022\t\n\005ARM64\020\002\022\n\n\006A" - "RM_V6\020\003\022\n\n\006ARM_V7\020\004\"\233\002\n\nIOStrategy\022=\n\rdo" - "wnload_mode\030\001 \001(\0162&.flyteidl.core.IOStra" - "tegy.DownloadMode\0229\n\013upload_mode\030\002 \001(\0162$" - ".flyteidl.core.IOStrategy.UploadMode\"L\n\014" - "DownloadMode\022\022\n\016DOWNLOAD_EAGER\020\000\022\023\n\017DOWN" - "LOAD_STREAM\020\001\022\023\n\017DO_NOT_DOWNLOAD\020\002\"E\n\nUp" - "loadMode\022\022\n\016UPLOAD_ON_EXIT\020\000\022\020\n\014UPLOAD_E" - "AGER\020\001\022\021\n\rDO_NOT_UPLOAD\020\002\"\363\001\n\021DataLoadin" - "gConfig\022\017\n\007enabled\030\001 \001(\010\022\022\n\ninput_path\030\002" - " \001(\t\022\023\n\013output_path\030\003 \001(\t\022A\n\006format\030\004 \001(" - "\01621.flyteidl.core.DataLoadingConfig.Lite" - "ralMapFormat\022.\n\013io_strategy\030\005 \001(\0132\031.flyt" - "eidl.core.IOStrategy\"1\n\020LiteralMapFormat" - "\022\010\n\004JSON\020\000\022\010\n\004YAML\020\001\022\t\n\005PROTO\020\002\"g\n\006K8sPo" - "d\0222\n\010metadata\030\001 \001(\0132 .flyteidl.core.K8sO" - "bjectMetadata\022)\n\010pod_spec\030\002 \001(\0132\027.google" - ".protobuf.Struct\"\374\001\n\021K8sObjectMetadata\022<" - "\n\006labels\030\001 \003(\0132,.flyteidl.core.K8sObject" - "Metadata.LabelsEntry\022F\n\013annotations\030\002 \003(" - "\01321.flyteidl.core.K8sObjectMetadata.Anno" - "tationsEntry\032-\n\013LabelsEntry\022\013\n\003key\030\001 \001(\t" - "\022\r\n\005value\030\002 \001(\t:\0028\001\0322\n\020AnnotationsEntry\022" - "\013\n\003key\030\001 \001(\t\022\r\n\005value\030\002 \001(\t:\0028\001\"~\n\003Sql\022\021" - "\n\tstatement\030\001 \001(\t\022+\n\007dialect\030\002 \001(\0162\032.fly" - "teidl.core.Sql.Dialect\"7\n\007Dialect\022\r\n\tUND" - "EFINED\020\000\022\010\n\004ANSI\020\001\022\010\n\004HIVE\020\002\022\t\n\005OTHER\020\003B" - "6Z4github.com/flyteorg/flyteidl/gen/pb-g" - "o/flyteidl/coreb\006proto3" + "e\030\007 \001(\t\022\027\n\rinterruptible\030\010 \001(\010H\000\022\032\n\022cach" + "e_serializable\030\t \001(\010B\025\n\023interruptible_va" + "lue\"\220\004\n\014TaskTemplate\022%\n\002id\030\001 \001(\0132\031.flyte" + "idl.core.Identifier\022\014\n\004type\030\002 \001(\t\022-\n\010met" + "adata\030\003 \001(\0132\033.flyteidl.core.TaskMetadata" + "\0220\n\tinterface\030\004 \001(\0132\035.flyteidl.core.Type" + "dInterface\022\'\n\006custom\030\005 \001(\0132\027.google.prot" + "obuf.Struct\022-\n\tcontainer\030\006 \001(\0132\030.flyteid" + "l.core.ContainerH\000\022(\n\007k8s_pod\030\021 \001(\0132\025.fl" + "yteidl.core.K8sPodH\000\022!\n\003sql\030\022 \001(\0132\022.flyt" + "eidl.core.SqlH\000\022\031\n\021task_type_version\030\007 \001" + "(\005\0228\n\020security_context\030\010 \001(\0132\036.flyteidl." + "core.SecurityContext\0227\n\006config\030\020 \003(\0132\'.f" + "lyteidl.core.TaskTemplate.ConfigEntry\032-\n" + "\013ConfigEntry\022\013\n\003key\030\001 \001(\t\022\r\n\005value\030\002 \001(\t" + ":\0028\001B\010\n\006target\"\'\n\rContainerPort\022\026\n\016conta" + "iner_port\030\001 \001(\r\"\255\003\n\tContainer\022\r\n\005image\030\001" + " \001(\t\022\017\n\007command\030\002 \003(\t\022\014\n\004args\030\003 \003(\t\022+\n\tr" + "esources\030\004 \001(\0132\030.flyteidl.core.Resources" + "\022(\n\003env\030\005 \003(\0132\033.flyteidl.core.KeyValuePa" + "ir\022/\n\006config\030\006 \003(\0132\033.flyteidl.core.KeyVa" + "luePairB\002\030\001\022+\n\005ports\030\007 \003(\0132\034.flyteidl.co" + "re.ContainerPort\0225\n\013data_config\030\t \001(\0132 ." + "flyteidl.core.DataLoadingConfig\022;\n\014archi" + "tecture\030\n \001(\0162%.flyteidl.core.Container." + "Architecture\"I\n\014Architecture\022\013\n\007UNKNOWN\020" + "\000\022\t\n\005AMD64\020\001\022\t\n\005ARM64\020\002\022\n\n\006ARM_V6\020\003\022\n\n\006A" + "RM_V7\020\004\"\233\002\n\nIOStrategy\022=\n\rdownload_mode\030" + "\001 \001(\0162&.flyteidl.core.IOStrategy.Downloa" + "dMode\0229\n\013upload_mode\030\002 \001(\0162$.flyteidl.co" + "re.IOStrategy.UploadMode\"L\n\014DownloadMode" + "\022\022\n\016DOWNLOAD_EAGER\020\000\022\023\n\017DOWNLOAD_STREAM\020" + "\001\022\023\n\017DO_NOT_DOWNLOAD\020\002\"E\n\nUploadMode\022\022\n\016" + "UPLOAD_ON_EXIT\020\000\022\020\n\014UPLOAD_EAGER\020\001\022\021\n\rDO" + "_NOT_UPLOAD\020\002\"\363\001\n\021DataLoadingConfig\022\017\n\007e" + "nabled\030\001 \001(\010\022\022\n\ninput_path\030\002 \001(\t\022\023\n\013outp" + "ut_path\030\003 \001(\t\022A\n\006format\030\004 \001(\01621.flyteidl" + ".core.DataLoadingConfig.LiteralMapFormat" + "\022.\n\013io_strategy\030\005 \001(\0132\031.flyteidl.core.IO" + "Strategy\"1\n\020LiteralMapFormat\022\010\n\004JSON\020\000\022\010" + "\n\004YAML\020\001\022\t\n\005PROTO\020\002\"g\n\006K8sPod\0222\n\010metadat" + "a\030\001 \001(\0132 .flyteidl.core.K8sObjectMetadat" + "a\022)\n\010pod_spec\030\002 \001(\0132\027.google.protobuf.St" + "ruct\"\374\001\n\021K8sObjectMetadata\022<\n\006labels\030\001 \003" + "(\0132,.flyteidl.core.K8sObjectMetadata.Lab" + "elsEntry\022F\n\013annotations\030\002 \003(\01321.flyteidl" + ".core.K8sObjectMetadata.AnnotationsEntry" + "\032-\n\013LabelsEntry\022\013\n\003key\030\001 \001(\t\022\r\n\005value\030\002 " + "\001(\t:\0028\001\0322\n\020AnnotationsEntry\022\013\n\003key\030\001 \001(\t" + "\022\r\n\005value\030\002 \001(\t:\0028\001\"~\n\003Sql\022\021\n\tstatement\030" + "\001 \001(\t\022+\n\007dialect\030\002 \001(\0162\032.flyteidl.core.S" + "ql.Dialect\"7\n\007Dialect\022\r\n\tUNDEFINED\020\000\022\010\n\004" + "ANSI\020\001\022\010\n\004HIVE\020\002\022\t\n\005OTHER\020\003B6Z4github.co" + "m/flyteorg/flyteidl/gen/pb-go/flyteidl/c" + "oreb\006proto3" ; ::google::protobuf::internal::DescriptorTable descriptor_table_flyteidl_2fcore_2ftasks_2eproto = { false, InitDefaults_flyteidl_2fcore_2ftasks_2eproto, descriptor_table_protodef_flyteidl_2fcore_2ftasks_2eproto, - "flyteidl/core/tasks.proto", &assign_descriptors_table_flyteidl_2fcore_2ftasks_2eproto, 3063, + "flyteidl/core/tasks.proto", &assign_descriptors_table_flyteidl_2fcore_2ftasks_2eproto, 3091, }; void AddDescriptors_flyteidl_2fcore_2ftasks_2eproto() { @@ -1964,6 +1966,7 @@ const int TaskMetadata::kRetriesFieldNumber; const int TaskMetadata::kDiscoveryVersionFieldNumber; const int TaskMetadata::kDeprecatedErrorMessageFieldNumber; const int TaskMetadata::kInterruptibleFieldNumber; +const int TaskMetadata::kCacheSerializableFieldNumber; #endif // !defined(_MSC_VER) || _MSC_VER >= 1900 TaskMetadata::TaskMetadata() @@ -1998,7 +2001,9 @@ TaskMetadata::TaskMetadata(const TaskMetadata& from) } else { retries_ = nullptr; } - discoverable_ = from.discoverable_; + ::memcpy(&discoverable_, &from.discoverable_, + static_cast(reinterpret_cast(&cache_serializable_) - + reinterpret_cast(&discoverable_)) + sizeof(cache_serializable_)); clear_has_interruptible_value(); switch (from.interruptible_value_case()) { case kInterruptible: { @@ -2018,8 +2023,8 @@ void TaskMetadata::SharedCtor() { discovery_version_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited()); deprecated_error_message_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited()); ::memset(&runtime_, 0, static_cast( - reinterpret_cast(&discoverable_) - - reinterpret_cast(&runtime_)) + sizeof(discoverable_)); + reinterpret_cast(&cache_serializable_) - + reinterpret_cast(&runtime_)) + sizeof(cache_serializable_)); clear_has_interruptible_value(); } @@ -2083,7 +2088,9 @@ void TaskMetadata::Clear() { delete retries_; } retries_ = nullptr; - discoverable_ = false; + ::memset(&discoverable_, 0, static_cast( + reinterpret_cast(&cache_serializable_) - + reinterpret_cast(&discoverable_)) + sizeof(cache_serializable_)); clear_interruptible_value(); _internal_metadata_.Clear(); } @@ -2186,6 +2193,13 @@ const char* TaskMetadata::_InternalParse(const char* begin, const char* end, voi GOOGLE_PROTOBUF_PARSER_ASSERT(ptr); break; } + // bool cache_serializable = 9; + case 9: { + if (static_cast<::google::protobuf::uint8>(tag) != 72) goto handle_unusual; + msg->set_cache_serializable(::google::protobuf::internal::ReadVarint(&ptr)); + GOOGLE_PROTOBUF_PARSER_ASSERT(ptr); + break; + } default: { handle_unusual: if ((tag & 7) == 4 || tag == 0) { @@ -2310,6 +2324,19 @@ bool TaskMetadata::MergePartialFromCodedStream( break; } + // bool cache_serializable = 9; + case 9: { + if (static_cast< ::google::protobuf::uint8>(tag) == (72 & 0xFF)) { + + DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive< + bool, ::google::protobuf::internal::WireFormatLite::TYPE_BOOL>( + input, &cache_serializable_))); + } else { + goto handle_unusual; + } + break; + } + default: { handle_unusual: if (tag == 0) { @@ -2385,6 +2412,11 @@ void TaskMetadata::SerializeWithCachedSizes( ::google::protobuf::internal::WireFormatLite::WriteBool(8, this->interruptible(), output); } + // bool cache_serializable = 9; + if (this->cache_serializable() != 0) { + ::google::protobuf::internal::WireFormatLite::WriteBool(9, this->cache_serializable(), output); + } + if (_internal_metadata_.have_unknown_fields()) { ::google::protobuf::internal::WireFormat::SerializeUnknownFields( _internal_metadata_.unknown_fields(), output); @@ -2451,6 +2483,11 @@ ::google::protobuf::uint8* TaskMetadata::InternalSerializeWithCachedSizesToArray target = ::google::protobuf::internal::WireFormatLite::WriteBoolToArray(8, this->interruptible(), target); } + // bool cache_serializable = 9; + if (this->cache_serializable() != 0) { + target = ::google::protobuf::internal::WireFormatLite::WriteBoolToArray(9, this->cache_serializable(), target); + } + if (_internal_metadata_.have_unknown_fields()) { target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray( _internal_metadata_.unknown_fields(), target); @@ -2512,6 +2549,11 @@ size_t TaskMetadata::ByteSizeLong() const { total_size += 1 + 1; } + // bool cache_serializable = 9; + if (this->cache_serializable() != 0) { + total_size += 1 + 1; + } + switch (interruptible_value_case()) { // bool interruptible = 8; case kInterruptible: { @@ -2569,6 +2611,9 @@ void TaskMetadata::MergeFrom(const TaskMetadata& from) { if (from.discoverable() != 0) { set_discoverable(from.discoverable()); } + if (from.cache_serializable() != 0) { + set_cache_serializable(from.cache_serializable()); + } switch (from.interruptible_value_case()) { case kInterruptible: { set_interruptible(from.interruptible()); @@ -2613,6 +2658,7 @@ void TaskMetadata::InternalSwap(TaskMetadata* other) { swap(timeout_, other->timeout_); swap(retries_, other->retries_); swap(discoverable_, other->discoverable_); + swap(cache_serializable_, other->cache_serializable_); swap(interruptible_value_, other->interruptible_value_); swap(_oneof_case_[0], other->_oneof_case_[0]); } diff --git a/gen/pb-cpp/flyteidl/core/tasks.pb.h b/gen/pb-cpp/flyteidl/core/tasks.pb.h index eb24c9f49..ac2189cb5 100644 --- a/gen/pb-cpp/flyteidl/core/tasks.pb.h +++ b/gen/pb-cpp/flyteidl/core/tasks.pb.h @@ -913,6 +913,12 @@ class TaskMetadata final : bool discoverable() const; void set_discoverable(bool value); + // bool cache_serializable = 9; + void clear_cache_serializable(); + static const int kCacheSerializableFieldNumber = 9; + bool cache_serializable() const; + void set_cache_serializable(bool value); + // bool interruptible = 8; private: bool has_interruptible() const; @@ -939,6 +945,7 @@ class TaskMetadata final : ::google::protobuf::Duration* timeout_; ::flyteidl::core::RetryStrategy* retries_; bool discoverable_; + bool cache_serializable_; union InterruptibleValueUnion { InterruptibleValueUnion() {} bool interruptible_; @@ -2980,6 +2987,20 @@ inline void TaskMetadata::set_interruptible(bool value) { // @@protoc_insertion_point(field_set:flyteidl.core.TaskMetadata.interruptible) } +// bool cache_serializable = 9; +inline void TaskMetadata::clear_cache_serializable() { + cache_serializable_ = false; +} +inline bool TaskMetadata::cache_serializable() const { + // @@protoc_insertion_point(field_get:flyteidl.core.TaskMetadata.cache_serializable) + return cache_serializable_; +} +inline void TaskMetadata::set_cache_serializable(bool value) { + + cache_serializable_ = value; + // @@protoc_insertion_point(field_set:flyteidl.core.TaskMetadata.cache_serializable) +} + inline bool TaskMetadata::has_interruptible_value() const { return interruptible_value_case() != INTERRUPTIBLE_VALUE_NOT_SET; } diff --git a/gen/pb-cpp/flyteidl/datacatalog/datacatalog.grpc.pb.cc b/gen/pb-cpp/flyteidl/datacatalog/datacatalog.grpc.pb.cc index 8df98bffb..b1820d0cf 100644 --- a/gen/pb-cpp/flyteidl/datacatalog/datacatalog.grpc.pb.cc +++ b/gen/pb-cpp/flyteidl/datacatalog/datacatalog.grpc.pb.cc @@ -26,8 +26,7 @@ static const char* DataCatalog_method_names[] = { "/datacatalog.DataCatalog/AddTag", "/datacatalog.DataCatalog/ListArtifacts", "/datacatalog.DataCatalog/ListDatasets", - "/datacatalog.DataCatalog/GetOrReserveArtifact", - "/datacatalog.DataCatalog/ExtendReservation", + "/datacatalog.DataCatalog/GetOrExtendReservation", "/datacatalog.DataCatalog/ReleaseReservation", }; @@ -45,9 +44,8 @@ DataCatalog::Stub::Stub(const std::shared_ptr< ::grpc::ChannelInterface>& channe , rpcmethod_AddTag_(DataCatalog_method_names[4], ::grpc::internal::RpcMethod::NORMAL_RPC, channel) , rpcmethod_ListArtifacts_(DataCatalog_method_names[5], ::grpc::internal::RpcMethod::NORMAL_RPC, channel) , rpcmethod_ListDatasets_(DataCatalog_method_names[6], ::grpc::internal::RpcMethod::NORMAL_RPC, channel) - , rpcmethod_GetOrReserveArtifact_(DataCatalog_method_names[7], ::grpc::internal::RpcMethod::NORMAL_RPC, channel) - , rpcmethod_ExtendReservation_(DataCatalog_method_names[8], ::grpc::internal::RpcMethod::NORMAL_RPC, channel) - , rpcmethod_ReleaseReservation_(DataCatalog_method_names[9], ::grpc::internal::RpcMethod::NORMAL_RPC, channel) + , rpcmethod_GetOrExtendReservation_(DataCatalog_method_names[7], ::grpc::internal::RpcMethod::NORMAL_RPC, channel) + , rpcmethod_ReleaseReservation_(DataCatalog_method_names[8], ::grpc::internal::RpcMethod::NORMAL_RPC, channel) {} ::grpc::Status DataCatalog::Stub::CreateDataset(::grpc::ClientContext* context, const ::datacatalog::CreateDatasetRequest& request, ::datacatalog::CreateDatasetResponse* response) { @@ -246,60 +244,32 @@ ::grpc::ClientAsyncResponseReader< ::datacatalog::ListDatasetsResponse>* DataCat return ::grpc::internal::ClientAsyncResponseReaderFactory< ::datacatalog::ListDatasetsResponse>::Create(channel_.get(), cq, rpcmethod_ListDatasets_, context, request, false); } -::grpc::Status DataCatalog::Stub::GetOrReserveArtifact(::grpc::ClientContext* context, const ::datacatalog::GetOrReserveArtifactRequest& request, ::datacatalog::GetOrReserveArtifactResponse* response) { - return ::grpc::internal::BlockingUnaryCall(channel_.get(), rpcmethod_GetOrReserveArtifact_, context, request, response); +::grpc::Status DataCatalog::Stub::GetOrExtendReservation(::grpc::ClientContext* context, const ::datacatalog::GetOrExtendReservationRequest& request, ::datacatalog::GetOrExtendReservationResponse* response) { + return ::grpc::internal::BlockingUnaryCall(channel_.get(), rpcmethod_GetOrExtendReservation_, context, request, response); } -void DataCatalog::Stub::experimental_async::GetOrReserveArtifact(::grpc::ClientContext* context, const ::datacatalog::GetOrReserveArtifactRequest* request, ::datacatalog::GetOrReserveArtifactResponse* response, std::function f) { - ::grpc::internal::CallbackUnaryCall(stub_->channel_.get(), stub_->rpcmethod_GetOrReserveArtifact_, context, request, response, std::move(f)); +void DataCatalog::Stub::experimental_async::GetOrExtendReservation(::grpc::ClientContext* context, const ::datacatalog::GetOrExtendReservationRequest* request, ::datacatalog::GetOrExtendReservationResponse* response, std::function f) { + ::grpc::internal::CallbackUnaryCall(stub_->channel_.get(), stub_->rpcmethod_GetOrExtendReservation_, context, request, response, std::move(f)); } -void DataCatalog::Stub::experimental_async::GetOrReserveArtifact(::grpc::ClientContext* context, const ::grpc::ByteBuffer* request, ::datacatalog::GetOrReserveArtifactResponse* response, std::function f) { - ::grpc::internal::CallbackUnaryCall(stub_->channel_.get(), stub_->rpcmethod_GetOrReserveArtifact_, context, request, response, std::move(f)); +void DataCatalog::Stub::experimental_async::GetOrExtendReservation(::grpc::ClientContext* context, const ::grpc::ByteBuffer* request, ::datacatalog::GetOrExtendReservationResponse* response, std::function f) { + ::grpc::internal::CallbackUnaryCall(stub_->channel_.get(), stub_->rpcmethod_GetOrExtendReservation_, context, request, response, std::move(f)); } -void DataCatalog::Stub::experimental_async::GetOrReserveArtifact(::grpc::ClientContext* context, const ::datacatalog::GetOrReserveArtifactRequest* request, ::datacatalog::GetOrReserveArtifactResponse* response, ::grpc::experimental::ClientUnaryReactor* reactor) { - ::grpc::internal::ClientCallbackUnaryFactory::Create(stub_->channel_.get(), stub_->rpcmethod_GetOrReserveArtifact_, context, request, response, reactor); +void DataCatalog::Stub::experimental_async::GetOrExtendReservation(::grpc::ClientContext* context, const ::datacatalog::GetOrExtendReservationRequest* request, ::datacatalog::GetOrExtendReservationResponse* response, ::grpc::experimental::ClientUnaryReactor* reactor) { + ::grpc::internal::ClientCallbackUnaryFactory::Create(stub_->channel_.get(), stub_->rpcmethod_GetOrExtendReservation_, context, request, response, reactor); } -void DataCatalog::Stub::experimental_async::GetOrReserveArtifact(::grpc::ClientContext* context, const ::grpc::ByteBuffer* request, ::datacatalog::GetOrReserveArtifactResponse* response, ::grpc::experimental::ClientUnaryReactor* reactor) { - ::grpc::internal::ClientCallbackUnaryFactory::Create(stub_->channel_.get(), stub_->rpcmethod_GetOrReserveArtifact_, context, request, response, reactor); +void DataCatalog::Stub::experimental_async::GetOrExtendReservation(::grpc::ClientContext* context, const ::grpc::ByteBuffer* request, ::datacatalog::GetOrExtendReservationResponse* response, ::grpc::experimental::ClientUnaryReactor* reactor) { + ::grpc::internal::ClientCallbackUnaryFactory::Create(stub_->channel_.get(), stub_->rpcmethod_GetOrExtendReservation_, context, request, response, reactor); } -::grpc::ClientAsyncResponseReader< ::datacatalog::GetOrReserveArtifactResponse>* DataCatalog::Stub::AsyncGetOrReserveArtifactRaw(::grpc::ClientContext* context, const ::datacatalog::GetOrReserveArtifactRequest& request, ::grpc::CompletionQueue* cq) { - return ::grpc::internal::ClientAsyncResponseReaderFactory< ::datacatalog::GetOrReserveArtifactResponse>::Create(channel_.get(), cq, rpcmethod_GetOrReserveArtifact_, context, request, true); +::grpc::ClientAsyncResponseReader< ::datacatalog::GetOrExtendReservationResponse>* DataCatalog::Stub::AsyncGetOrExtendReservationRaw(::grpc::ClientContext* context, const ::datacatalog::GetOrExtendReservationRequest& request, ::grpc::CompletionQueue* cq) { + return ::grpc::internal::ClientAsyncResponseReaderFactory< ::datacatalog::GetOrExtendReservationResponse>::Create(channel_.get(), cq, rpcmethod_GetOrExtendReservation_, context, request, true); } -::grpc::ClientAsyncResponseReader< ::datacatalog::GetOrReserveArtifactResponse>* DataCatalog::Stub::PrepareAsyncGetOrReserveArtifactRaw(::grpc::ClientContext* context, const ::datacatalog::GetOrReserveArtifactRequest& request, ::grpc::CompletionQueue* cq) { - return ::grpc::internal::ClientAsyncResponseReaderFactory< ::datacatalog::GetOrReserveArtifactResponse>::Create(channel_.get(), cq, rpcmethod_GetOrReserveArtifact_, context, request, false); -} - -::grpc::Status DataCatalog::Stub::ExtendReservation(::grpc::ClientContext* context, const ::datacatalog::ExtendReservationRequest& request, ::datacatalog::ExtendReservationResponse* response) { - return ::grpc::internal::BlockingUnaryCall(channel_.get(), rpcmethod_ExtendReservation_, context, request, response); -} - -void DataCatalog::Stub::experimental_async::ExtendReservation(::grpc::ClientContext* context, const ::datacatalog::ExtendReservationRequest* request, ::datacatalog::ExtendReservationResponse* response, std::function f) { - ::grpc::internal::CallbackUnaryCall(stub_->channel_.get(), stub_->rpcmethod_ExtendReservation_, context, request, response, std::move(f)); -} - -void DataCatalog::Stub::experimental_async::ExtendReservation(::grpc::ClientContext* context, const ::grpc::ByteBuffer* request, ::datacatalog::ExtendReservationResponse* response, std::function f) { - ::grpc::internal::CallbackUnaryCall(stub_->channel_.get(), stub_->rpcmethod_ExtendReservation_, context, request, response, std::move(f)); -} - -void DataCatalog::Stub::experimental_async::ExtendReservation(::grpc::ClientContext* context, const ::datacatalog::ExtendReservationRequest* request, ::datacatalog::ExtendReservationResponse* response, ::grpc::experimental::ClientUnaryReactor* reactor) { - ::grpc::internal::ClientCallbackUnaryFactory::Create(stub_->channel_.get(), stub_->rpcmethod_ExtendReservation_, context, request, response, reactor); -} - -void DataCatalog::Stub::experimental_async::ExtendReservation(::grpc::ClientContext* context, const ::grpc::ByteBuffer* request, ::datacatalog::ExtendReservationResponse* response, ::grpc::experimental::ClientUnaryReactor* reactor) { - ::grpc::internal::ClientCallbackUnaryFactory::Create(stub_->channel_.get(), stub_->rpcmethod_ExtendReservation_, context, request, response, reactor); -} - -::grpc::ClientAsyncResponseReader< ::datacatalog::ExtendReservationResponse>* DataCatalog::Stub::AsyncExtendReservationRaw(::grpc::ClientContext* context, const ::datacatalog::ExtendReservationRequest& request, ::grpc::CompletionQueue* cq) { - return ::grpc::internal::ClientAsyncResponseReaderFactory< ::datacatalog::ExtendReservationResponse>::Create(channel_.get(), cq, rpcmethod_ExtendReservation_, context, request, true); -} - -::grpc::ClientAsyncResponseReader< ::datacatalog::ExtendReservationResponse>* DataCatalog::Stub::PrepareAsyncExtendReservationRaw(::grpc::ClientContext* context, const ::datacatalog::ExtendReservationRequest& request, ::grpc::CompletionQueue* cq) { - return ::grpc::internal::ClientAsyncResponseReaderFactory< ::datacatalog::ExtendReservationResponse>::Create(channel_.get(), cq, rpcmethod_ExtendReservation_, context, request, false); +::grpc::ClientAsyncResponseReader< ::datacatalog::GetOrExtendReservationResponse>* DataCatalog::Stub::PrepareAsyncGetOrExtendReservationRaw(::grpc::ClientContext* context, const ::datacatalog::GetOrExtendReservationRequest& request, ::grpc::CompletionQueue* cq) { + return ::grpc::internal::ClientAsyncResponseReaderFactory< ::datacatalog::GetOrExtendReservationResponse>::Create(channel_.get(), cq, rpcmethod_GetOrExtendReservation_, context, request, false); } ::grpc::Status DataCatalog::Stub::ReleaseReservation(::grpc::ClientContext* context, const ::datacatalog::ReleaseReservationRequest& request, ::datacatalog::ReleaseReservationResponse* response) { @@ -369,16 +339,11 @@ DataCatalog::Service::Service() { AddMethod(new ::grpc::internal::RpcServiceMethod( DataCatalog_method_names[7], ::grpc::internal::RpcMethod::NORMAL_RPC, - new ::grpc::internal::RpcMethodHandler< DataCatalog::Service, ::datacatalog::GetOrReserveArtifactRequest, ::datacatalog::GetOrReserveArtifactResponse>( - std::mem_fn(&DataCatalog::Service::GetOrReserveArtifact), this))); + new ::grpc::internal::RpcMethodHandler< DataCatalog::Service, ::datacatalog::GetOrExtendReservationRequest, ::datacatalog::GetOrExtendReservationResponse>( + std::mem_fn(&DataCatalog::Service::GetOrExtendReservation), this))); AddMethod(new ::grpc::internal::RpcServiceMethod( DataCatalog_method_names[8], ::grpc::internal::RpcMethod::NORMAL_RPC, - new ::grpc::internal::RpcMethodHandler< DataCatalog::Service, ::datacatalog::ExtendReservationRequest, ::datacatalog::ExtendReservationResponse>( - std::mem_fn(&DataCatalog::Service::ExtendReservation), this))); - AddMethod(new ::grpc::internal::RpcServiceMethod( - DataCatalog_method_names[9], - ::grpc::internal::RpcMethod::NORMAL_RPC, new ::grpc::internal::RpcMethodHandler< DataCatalog::Service, ::datacatalog::ReleaseReservationRequest, ::datacatalog::ReleaseReservationResponse>( std::mem_fn(&DataCatalog::Service::ReleaseReservation), this))); } @@ -435,14 +400,7 @@ ::grpc::Status DataCatalog::Service::ListDatasets(::grpc::ServerContext* context return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); } -::grpc::Status DataCatalog::Service::GetOrReserveArtifact(::grpc::ServerContext* context, const ::datacatalog::GetOrReserveArtifactRequest* request, ::datacatalog::GetOrReserveArtifactResponse* response) { - (void) context; - (void) request; - (void) response; - return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); -} - -::grpc::Status DataCatalog::Service::ExtendReservation(::grpc::ServerContext* context, const ::datacatalog::ExtendReservationRequest* request, ::datacatalog::ExtendReservationResponse* response) { +::grpc::Status DataCatalog::Service::GetOrExtendReservation(::grpc::ServerContext* context, const ::datacatalog::GetOrExtendReservationRequest* request, ::datacatalog::GetOrExtendReservationResponse* response) { (void) context; (void) request; (void) response; diff --git a/gen/pb-cpp/flyteidl/datacatalog/datacatalog.grpc.pb.h b/gen/pb-cpp/flyteidl/datacatalog/datacatalog.grpc.pb.h index 7e6743de9..93952fb80 100644 --- a/gen/pb-cpp/flyteidl/datacatalog/datacatalog.grpc.pb.h +++ b/gen/pb-cpp/flyteidl/datacatalog/datacatalog.grpc.pb.h @@ -109,35 +109,23 @@ class DataCatalog final { std::unique_ptr< ::grpc::ClientAsyncResponseReaderInterface< ::datacatalog::ListDatasetsResponse>> PrepareAsyncListDatasets(::grpc::ClientContext* context, const ::datacatalog::ListDatasetsRequest& request, ::grpc::CompletionQueue* cq) { return std::unique_ptr< ::grpc::ClientAsyncResponseReaderInterface< ::datacatalog::ListDatasetsResponse>>(PrepareAsyncListDatasetsRaw(context, request, cq)); } - // Get an artifact and the corresponding data. If the artifact does not exist, - // try to reserve a spot for populating the artifact. - // Once you preserve a spot, you should call ExtendReservation API periodically - // to extend the reservation. Otherwise, the reservation can expire and other - // tasks may take the spot. - // If the same owner_id calls this API for the same dataset and it has an active reservation and the artifacts have not been written yet by a different owner, the API will respond with an Acquired Reservation Status (providing idempotency). - // Note: We may have multiple concurrent tasks with the same signature - // and the same input that try to populate the same artifact at the same time. - // Thus with reservation, only one task can run at a time, until the reservation - // expires. - // Note: If task A does not extend the reservation in time and the reservation - // expires, another task B may take over the reservation, resulting in two tasks - // A and B running in parallel. So a third task C may get the Artifact from A or B, - // whichever writes last. - virtual ::grpc::Status GetOrReserveArtifact(::grpc::ClientContext* context, const ::datacatalog::GetOrReserveArtifactRequest& request, ::datacatalog::GetOrReserveArtifactResponse* response) = 0; - std::unique_ptr< ::grpc::ClientAsyncResponseReaderInterface< ::datacatalog::GetOrReserveArtifactResponse>> AsyncGetOrReserveArtifact(::grpc::ClientContext* context, const ::datacatalog::GetOrReserveArtifactRequest& request, ::grpc::CompletionQueue* cq) { - return std::unique_ptr< ::grpc::ClientAsyncResponseReaderInterface< ::datacatalog::GetOrReserveArtifactResponse>>(AsyncGetOrReserveArtifactRaw(context, request, cq)); - } - std::unique_ptr< ::grpc::ClientAsyncResponseReaderInterface< ::datacatalog::GetOrReserveArtifactResponse>> PrepareAsyncGetOrReserveArtifact(::grpc::ClientContext* context, const ::datacatalog::GetOrReserveArtifactRequest& request, ::grpc::CompletionQueue* cq) { - return std::unique_ptr< ::grpc::ClientAsyncResponseReaderInterface< ::datacatalog::GetOrReserveArtifactResponse>>(PrepareAsyncGetOrReserveArtifactRaw(context, request, cq)); - } - // Extend the reservation to keep it from expiring. If the reservation expires, - // other tasks can take over the reservation by calling GetOrReserveArtifact. - virtual ::grpc::Status ExtendReservation(::grpc::ClientContext* context, const ::datacatalog::ExtendReservationRequest& request, ::datacatalog::ExtendReservationResponse* response) = 0; - std::unique_ptr< ::grpc::ClientAsyncResponseReaderInterface< ::datacatalog::ExtendReservationResponse>> AsyncExtendReservation(::grpc::ClientContext* context, const ::datacatalog::ExtendReservationRequest& request, ::grpc::CompletionQueue* cq) { - return std::unique_ptr< ::grpc::ClientAsyncResponseReaderInterface< ::datacatalog::ExtendReservationResponse>>(AsyncExtendReservationRaw(context, request, cq)); - } - std::unique_ptr< ::grpc::ClientAsyncResponseReaderInterface< ::datacatalog::ExtendReservationResponse>> PrepareAsyncExtendReservation(::grpc::ClientContext* context, const ::datacatalog::ExtendReservationRequest& request, ::grpc::CompletionQueue* cq) { - return std::unique_ptr< ::grpc::ClientAsyncResponseReaderInterface< ::datacatalog::ExtendReservationResponse>>(PrepareAsyncExtendReservationRaw(context, request, cq)); + // Attempts to get or extend a reservation for the corresponding artifact. If one already exists + // (ie. another entity owns the reservation) then that reservation is retrieved. + // Once you acquire a reservation, you need to periodically extend the reservation with an + // identical call. If the reservation is not extended before the defined expiration, it may be + // acquired by another task. + // Note: We may have multiple concurrent tasks with the same signature and the same input that + // try to populate the same artifact at the same time. Thus with reservation, only one task can + // run at a time, until the reservation expires. + // Note: If task A does not extend the reservation in time and the reservation expires, another + // task B may take over the reservation, resulting in two tasks A and B running in parallel. So + // a third task C may get the Artifact from A or B, whichever writes last. + virtual ::grpc::Status GetOrExtendReservation(::grpc::ClientContext* context, const ::datacatalog::GetOrExtendReservationRequest& request, ::datacatalog::GetOrExtendReservationResponse* response) = 0; + std::unique_ptr< ::grpc::ClientAsyncResponseReaderInterface< ::datacatalog::GetOrExtendReservationResponse>> AsyncGetOrExtendReservation(::grpc::ClientContext* context, const ::datacatalog::GetOrExtendReservationRequest& request, ::grpc::CompletionQueue* cq) { + return std::unique_ptr< ::grpc::ClientAsyncResponseReaderInterface< ::datacatalog::GetOrExtendReservationResponse>>(AsyncGetOrExtendReservationRaw(context, request, cq)); + } + std::unique_ptr< ::grpc::ClientAsyncResponseReaderInterface< ::datacatalog::GetOrExtendReservationResponse>> PrepareAsyncGetOrExtendReservation(::grpc::ClientContext* context, const ::datacatalog::GetOrExtendReservationRequest& request, ::grpc::CompletionQueue* cq) { + return std::unique_ptr< ::grpc::ClientAsyncResponseReaderInterface< ::datacatalog::GetOrExtendReservationResponse>>(PrepareAsyncGetOrExtendReservationRaw(context, request, cq)); } // Release the reservation when the task holding the spot fails so that the other tasks // can grab the spot. @@ -188,30 +176,21 @@ class DataCatalog final { virtual void ListDatasets(::grpc::ClientContext* context, const ::grpc::ByteBuffer* request, ::datacatalog::ListDatasetsResponse* response, std::function) = 0; virtual void ListDatasets(::grpc::ClientContext* context, const ::datacatalog::ListDatasetsRequest* request, ::datacatalog::ListDatasetsResponse* response, ::grpc::experimental::ClientUnaryReactor* reactor) = 0; virtual void ListDatasets(::grpc::ClientContext* context, const ::grpc::ByteBuffer* request, ::datacatalog::ListDatasetsResponse* response, ::grpc::experimental::ClientUnaryReactor* reactor) = 0; - // Get an artifact and the corresponding data. If the artifact does not exist, - // try to reserve a spot for populating the artifact. - // Once you preserve a spot, you should call ExtendReservation API periodically - // to extend the reservation. Otherwise, the reservation can expire and other - // tasks may take the spot. - // If the same owner_id calls this API for the same dataset and it has an active reservation and the artifacts have not been written yet by a different owner, the API will respond with an Acquired Reservation Status (providing idempotency). - // Note: We may have multiple concurrent tasks with the same signature - // and the same input that try to populate the same artifact at the same time. - // Thus with reservation, only one task can run at a time, until the reservation - // expires. - // Note: If task A does not extend the reservation in time and the reservation - // expires, another task B may take over the reservation, resulting in two tasks - // A and B running in parallel. So a third task C may get the Artifact from A or B, - // whichever writes last. - virtual void GetOrReserveArtifact(::grpc::ClientContext* context, const ::datacatalog::GetOrReserveArtifactRequest* request, ::datacatalog::GetOrReserveArtifactResponse* response, std::function) = 0; - virtual void GetOrReserveArtifact(::grpc::ClientContext* context, const ::grpc::ByteBuffer* request, ::datacatalog::GetOrReserveArtifactResponse* response, std::function) = 0; - virtual void GetOrReserveArtifact(::grpc::ClientContext* context, const ::datacatalog::GetOrReserveArtifactRequest* request, ::datacatalog::GetOrReserveArtifactResponse* response, ::grpc::experimental::ClientUnaryReactor* reactor) = 0; - virtual void GetOrReserveArtifact(::grpc::ClientContext* context, const ::grpc::ByteBuffer* request, ::datacatalog::GetOrReserveArtifactResponse* response, ::grpc::experimental::ClientUnaryReactor* reactor) = 0; - // Extend the reservation to keep it from expiring. If the reservation expires, - // other tasks can take over the reservation by calling GetOrReserveArtifact. - virtual void ExtendReservation(::grpc::ClientContext* context, const ::datacatalog::ExtendReservationRequest* request, ::datacatalog::ExtendReservationResponse* response, std::function) = 0; - virtual void ExtendReservation(::grpc::ClientContext* context, const ::grpc::ByteBuffer* request, ::datacatalog::ExtendReservationResponse* response, std::function) = 0; - virtual void ExtendReservation(::grpc::ClientContext* context, const ::datacatalog::ExtendReservationRequest* request, ::datacatalog::ExtendReservationResponse* response, ::grpc::experimental::ClientUnaryReactor* reactor) = 0; - virtual void ExtendReservation(::grpc::ClientContext* context, const ::grpc::ByteBuffer* request, ::datacatalog::ExtendReservationResponse* response, ::grpc::experimental::ClientUnaryReactor* reactor) = 0; + // Attempts to get or extend a reservation for the corresponding artifact. If one already exists + // (ie. another entity owns the reservation) then that reservation is retrieved. + // Once you acquire a reservation, you need to periodically extend the reservation with an + // identical call. If the reservation is not extended before the defined expiration, it may be + // acquired by another task. + // Note: We may have multiple concurrent tasks with the same signature and the same input that + // try to populate the same artifact at the same time. Thus with reservation, only one task can + // run at a time, until the reservation expires. + // Note: If task A does not extend the reservation in time and the reservation expires, another + // task B may take over the reservation, resulting in two tasks A and B running in parallel. So + // a third task C may get the Artifact from A or B, whichever writes last. + virtual void GetOrExtendReservation(::grpc::ClientContext* context, const ::datacatalog::GetOrExtendReservationRequest* request, ::datacatalog::GetOrExtendReservationResponse* response, std::function) = 0; + virtual void GetOrExtendReservation(::grpc::ClientContext* context, const ::grpc::ByteBuffer* request, ::datacatalog::GetOrExtendReservationResponse* response, std::function) = 0; + virtual void GetOrExtendReservation(::grpc::ClientContext* context, const ::datacatalog::GetOrExtendReservationRequest* request, ::datacatalog::GetOrExtendReservationResponse* response, ::grpc::experimental::ClientUnaryReactor* reactor) = 0; + virtual void GetOrExtendReservation(::grpc::ClientContext* context, const ::grpc::ByteBuffer* request, ::datacatalog::GetOrExtendReservationResponse* response, ::grpc::experimental::ClientUnaryReactor* reactor) = 0; // Release the reservation when the task holding the spot fails so that the other tasks // can grab the spot. virtual void ReleaseReservation(::grpc::ClientContext* context, const ::datacatalog::ReleaseReservationRequest* request, ::datacatalog::ReleaseReservationResponse* response, std::function) = 0; @@ -235,10 +214,8 @@ class DataCatalog final { virtual ::grpc::ClientAsyncResponseReaderInterface< ::datacatalog::ListArtifactsResponse>* PrepareAsyncListArtifactsRaw(::grpc::ClientContext* context, const ::datacatalog::ListArtifactsRequest& request, ::grpc::CompletionQueue* cq) = 0; virtual ::grpc::ClientAsyncResponseReaderInterface< ::datacatalog::ListDatasetsResponse>* AsyncListDatasetsRaw(::grpc::ClientContext* context, const ::datacatalog::ListDatasetsRequest& request, ::grpc::CompletionQueue* cq) = 0; virtual ::grpc::ClientAsyncResponseReaderInterface< ::datacatalog::ListDatasetsResponse>* PrepareAsyncListDatasetsRaw(::grpc::ClientContext* context, const ::datacatalog::ListDatasetsRequest& request, ::grpc::CompletionQueue* cq) = 0; - virtual ::grpc::ClientAsyncResponseReaderInterface< ::datacatalog::GetOrReserveArtifactResponse>* AsyncGetOrReserveArtifactRaw(::grpc::ClientContext* context, const ::datacatalog::GetOrReserveArtifactRequest& request, ::grpc::CompletionQueue* cq) = 0; - virtual ::grpc::ClientAsyncResponseReaderInterface< ::datacatalog::GetOrReserveArtifactResponse>* PrepareAsyncGetOrReserveArtifactRaw(::grpc::ClientContext* context, const ::datacatalog::GetOrReserveArtifactRequest& request, ::grpc::CompletionQueue* cq) = 0; - virtual ::grpc::ClientAsyncResponseReaderInterface< ::datacatalog::ExtendReservationResponse>* AsyncExtendReservationRaw(::grpc::ClientContext* context, const ::datacatalog::ExtendReservationRequest& request, ::grpc::CompletionQueue* cq) = 0; - virtual ::grpc::ClientAsyncResponseReaderInterface< ::datacatalog::ExtendReservationResponse>* PrepareAsyncExtendReservationRaw(::grpc::ClientContext* context, const ::datacatalog::ExtendReservationRequest& request, ::grpc::CompletionQueue* cq) = 0; + virtual ::grpc::ClientAsyncResponseReaderInterface< ::datacatalog::GetOrExtendReservationResponse>* AsyncGetOrExtendReservationRaw(::grpc::ClientContext* context, const ::datacatalog::GetOrExtendReservationRequest& request, ::grpc::CompletionQueue* cq) = 0; + virtual ::grpc::ClientAsyncResponseReaderInterface< ::datacatalog::GetOrExtendReservationResponse>* PrepareAsyncGetOrExtendReservationRaw(::grpc::ClientContext* context, const ::datacatalog::GetOrExtendReservationRequest& request, ::grpc::CompletionQueue* cq) = 0; virtual ::grpc::ClientAsyncResponseReaderInterface< ::datacatalog::ReleaseReservationResponse>* AsyncReleaseReservationRaw(::grpc::ClientContext* context, const ::datacatalog::ReleaseReservationRequest& request, ::grpc::CompletionQueue* cq) = 0; virtual ::grpc::ClientAsyncResponseReaderInterface< ::datacatalog::ReleaseReservationResponse>* PrepareAsyncReleaseReservationRaw(::grpc::ClientContext* context, const ::datacatalog::ReleaseReservationRequest& request, ::grpc::CompletionQueue* cq) = 0; }; @@ -294,19 +271,12 @@ class DataCatalog final { std::unique_ptr< ::grpc::ClientAsyncResponseReader< ::datacatalog::ListDatasetsResponse>> PrepareAsyncListDatasets(::grpc::ClientContext* context, const ::datacatalog::ListDatasetsRequest& request, ::grpc::CompletionQueue* cq) { return std::unique_ptr< ::grpc::ClientAsyncResponseReader< ::datacatalog::ListDatasetsResponse>>(PrepareAsyncListDatasetsRaw(context, request, cq)); } - ::grpc::Status GetOrReserveArtifact(::grpc::ClientContext* context, const ::datacatalog::GetOrReserveArtifactRequest& request, ::datacatalog::GetOrReserveArtifactResponse* response) override; - std::unique_ptr< ::grpc::ClientAsyncResponseReader< ::datacatalog::GetOrReserveArtifactResponse>> AsyncGetOrReserveArtifact(::grpc::ClientContext* context, const ::datacatalog::GetOrReserveArtifactRequest& request, ::grpc::CompletionQueue* cq) { - return std::unique_ptr< ::grpc::ClientAsyncResponseReader< ::datacatalog::GetOrReserveArtifactResponse>>(AsyncGetOrReserveArtifactRaw(context, request, cq)); + ::grpc::Status GetOrExtendReservation(::grpc::ClientContext* context, const ::datacatalog::GetOrExtendReservationRequest& request, ::datacatalog::GetOrExtendReservationResponse* response) override; + std::unique_ptr< ::grpc::ClientAsyncResponseReader< ::datacatalog::GetOrExtendReservationResponse>> AsyncGetOrExtendReservation(::grpc::ClientContext* context, const ::datacatalog::GetOrExtendReservationRequest& request, ::grpc::CompletionQueue* cq) { + return std::unique_ptr< ::grpc::ClientAsyncResponseReader< ::datacatalog::GetOrExtendReservationResponse>>(AsyncGetOrExtendReservationRaw(context, request, cq)); } - std::unique_ptr< ::grpc::ClientAsyncResponseReader< ::datacatalog::GetOrReserveArtifactResponse>> PrepareAsyncGetOrReserveArtifact(::grpc::ClientContext* context, const ::datacatalog::GetOrReserveArtifactRequest& request, ::grpc::CompletionQueue* cq) { - return std::unique_ptr< ::grpc::ClientAsyncResponseReader< ::datacatalog::GetOrReserveArtifactResponse>>(PrepareAsyncGetOrReserveArtifactRaw(context, request, cq)); - } - ::grpc::Status ExtendReservation(::grpc::ClientContext* context, const ::datacatalog::ExtendReservationRequest& request, ::datacatalog::ExtendReservationResponse* response) override; - std::unique_ptr< ::grpc::ClientAsyncResponseReader< ::datacatalog::ExtendReservationResponse>> AsyncExtendReservation(::grpc::ClientContext* context, const ::datacatalog::ExtendReservationRequest& request, ::grpc::CompletionQueue* cq) { - return std::unique_ptr< ::grpc::ClientAsyncResponseReader< ::datacatalog::ExtendReservationResponse>>(AsyncExtendReservationRaw(context, request, cq)); - } - std::unique_ptr< ::grpc::ClientAsyncResponseReader< ::datacatalog::ExtendReservationResponse>> PrepareAsyncExtendReservation(::grpc::ClientContext* context, const ::datacatalog::ExtendReservationRequest& request, ::grpc::CompletionQueue* cq) { - return std::unique_ptr< ::grpc::ClientAsyncResponseReader< ::datacatalog::ExtendReservationResponse>>(PrepareAsyncExtendReservationRaw(context, request, cq)); + std::unique_ptr< ::grpc::ClientAsyncResponseReader< ::datacatalog::GetOrExtendReservationResponse>> PrepareAsyncGetOrExtendReservation(::grpc::ClientContext* context, const ::datacatalog::GetOrExtendReservationRequest& request, ::grpc::CompletionQueue* cq) { + return std::unique_ptr< ::grpc::ClientAsyncResponseReader< ::datacatalog::GetOrExtendReservationResponse>>(PrepareAsyncGetOrExtendReservationRaw(context, request, cq)); } ::grpc::Status ReleaseReservation(::grpc::ClientContext* context, const ::datacatalog::ReleaseReservationRequest& request, ::datacatalog::ReleaseReservationResponse* response) override; std::unique_ptr< ::grpc::ClientAsyncResponseReader< ::datacatalog::ReleaseReservationResponse>> AsyncReleaseReservation(::grpc::ClientContext* context, const ::datacatalog::ReleaseReservationRequest& request, ::grpc::CompletionQueue* cq) { @@ -346,14 +316,10 @@ class DataCatalog final { void ListDatasets(::grpc::ClientContext* context, const ::grpc::ByteBuffer* request, ::datacatalog::ListDatasetsResponse* response, std::function) override; void ListDatasets(::grpc::ClientContext* context, const ::datacatalog::ListDatasetsRequest* request, ::datacatalog::ListDatasetsResponse* response, ::grpc::experimental::ClientUnaryReactor* reactor) override; void ListDatasets(::grpc::ClientContext* context, const ::grpc::ByteBuffer* request, ::datacatalog::ListDatasetsResponse* response, ::grpc::experimental::ClientUnaryReactor* reactor) override; - void GetOrReserveArtifact(::grpc::ClientContext* context, const ::datacatalog::GetOrReserveArtifactRequest* request, ::datacatalog::GetOrReserveArtifactResponse* response, std::function) override; - void GetOrReserveArtifact(::grpc::ClientContext* context, const ::grpc::ByteBuffer* request, ::datacatalog::GetOrReserveArtifactResponse* response, std::function) override; - void GetOrReserveArtifact(::grpc::ClientContext* context, const ::datacatalog::GetOrReserveArtifactRequest* request, ::datacatalog::GetOrReserveArtifactResponse* response, ::grpc::experimental::ClientUnaryReactor* reactor) override; - void GetOrReserveArtifact(::grpc::ClientContext* context, const ::grpc::ByteBuffer* request, ::datacatalog::GetOrReserveArtifactResponse* response, ::grpc::experimental::ClientUnaryReactor* reactor) override; - void ExtendReservation(::grpc::ClientContext* context, const ::datacatalog::ExtendReservationRequest* request, ::datacatalog::ExtendReservationResponse* response, std::function) override; - void ExtendReservation(::grpc::ClientContext* context, const ::grpc::ByteBuffer* request, ::datacatalog::ExtendReservationResponse* response, std::function) override; - void ExtendReservation(::grpc::ClientContext* context, const ::datacatalog::ExtendReservationRequest* request, ::datacatalog::ExtendReservationResponse* response, ::grpc::experimental::ClientUnaryReactor* reactor) override; - void ExtendReservation(::grpc::ClientContext* context, const ::grpc::ByteBuffer* request, ::datacatalog::ExtendReservationResponse* response, ::grpc::experimental::ClientUnaryReactor* reactor) override; + void GetOrExtendReservation(::grpc::ClientContext* context, const ::datacatalog::GetOrExtendReservationRequest* request, ::datacatalog::GetOrExtendReservationResponse* response, std::function) override; + void GetOrExtendReservation(::grpc::ClientContext* context, const ::grpc::ByteBuffer* request, ::datacatalog::GetOrExtendReservationResponse* response, std::function) override; + void GetOrExtendReservation(::grpc::ClientContext* context, const ::datacatalog::GetOrExtendReservationRequest* request, ::datacatalog::GetOrExtendReservationResponse* response, ::grpc::experimental::ClientUnaryReactor* reactor) override; + void GetOrExtendReservation(::grpc::ClientContext* context, const ::grpc::ByteBuffer* request, ::datacatalog::GetOrExtendReservationResponse* response, ::grpc::experimental::ClientUnaryReactor* reactor) override; void ReleaseReservation(::grpc::ClientContext* context, const ::datacatalog::ReleaseReservationRequest* request, ::datacatalog::ReleaseReservationResponse* response, std::function) override; void ReleaseReservation(::grpc::ClientContext* context, const ::grpc::ByteBuffer* request, ::datacatalog::ReleaseReservationResponse* response, std::function) override; void ReleaseReservation(::grpc::ClientContext* context, const ::datacatalog::ReleaseReservationRequest* request, ::datacatalog::ReleaseReservationResponse* response, ::grpc::experimental::ClientUnaryReactor* reactor) override; @@ -383,10 +349,8 @@ class DataCatalog final { ::grpc::ClientAsyncResponseReader< ::datacatalog::ListArtifactsResponse>* PrepareAsyncListArtifactsRaw(::grpc::ClientContext* context, const ::datacatalog::ListArtifactsRequest& request, ::grpc::CompletionQueue* cq) override; ::grpc::ClientAsyncResponseReader< ::datacatalog::ListDatasetsResponse>* AsyncListDatasetsRaw(::grpc::ClientContext* context, const ::datacatalog::ListDatasetsRequest& request, ::grpc::CompletionQueue* cq) override; ::grpc::ClientAsyncResponseReader< ::datacatalog::ListDatasetsResponse>* PrepareAsyncListDatasetsRaw(::grpc::ClientContext* context, const ::datacatalog::ListDatasetsRequest& request, ::grpc::CompletionQueue* cq) override; - ::grpc::ClientAsyncResponseReader< ::datacatalog::GetOrReserveArtifactResponse>* AsyncGetOrReserveArtifactRaw(::grpc::ClientContext* context, const ::datacatalog::GetOrReserveArtifactRequest& request, ::grpc::CompletionQueue* cq) override; - ::grpc::ClientAsyncResponseReader< ::datacatalog::GetOrReserveArtifactResponse>* PrepareAsyncGetOrReserveArtifactRaw(::grpc::ClientContext* context, const ::datacatalog::GetOrReserveArtifactRequest& request, ::grpc::CompletionQueue* cq) override; - ::grpc::ClientAsyncResponseReader< ::datacatalog::ExtendReservationResponse>* AsyncExtendReservationRaw(::grpc::ClientContext* context, const ::datacatalog::ExtendReservationRequest& request, ::grpc::CompletionQueue* cq) override; - ::grpc::ClientAsyncResponseReader< ::datacatalog::ExtendReservationResponse>* PrepareAsyncExtendReservationRaw(::grpc::ClientContext* context, const ::datacatalog::ExtendReservationRequest& request, ::grpc::CompletionQueue* cq) override; + ::grpc::ClientAsyncResponseReader< ::datacatalog::GetOrExtendReservationResponse>* AsyncGetOrExtendReservationRaw(::grpc::ClientContext* context, const ::datacatalog::GetOrExtendReservationRequest& request, ::grpc::CompletionQueue* cq) override; + ::grpc::ClientAsyncResponseReader< ::datacatalog::GetOrExtendReservationResponse>* PrepareAsyncGetOrExtendReservationRaw(::grpc::ClientContext* context, const ::datacatalog::GetOrExtendReservationRequest& request, ::grpc::CompletionQueue* cq) override; ::grpc::ClientAsyncResponseReader< ::datacatalog::ReleaseReservationResponse>* AsyncReleaseReservationRaw(::grpc::ClientContext* context, const ::datacatalog::ReleaseReservationRequest& request, ::grpc::CompletionQueue* cq) override; ::grpc::ClientAsyncResponseReader< ::datacatalog::ReleaseReservationResponse>* PrepareAsyncReleaseReservationRaw(::grpc::ClientContext* context, const ::datacatalog::ReleaseReservationRequest& request, ::grpc::CompletionQueue* cq) override; const ::grpc::internal::RpcMethod rpcmethod_CreateDataset_; @@ -396,8 +360,7 @@ class DataCatalog final { const ::grpc::internal::RpcMethod rpcmethod_AddTag_; const ::grpc::internal::RpcMethod rpcmethod_ListArtifacts_; const ::grpc::internal::RpcMethod rpcmethod_ListDatasets_; - const ::grpc::internal::RpcMethod rpcmethod_GetOrReserveArtifact_; - const ::grpc::internal::RpcMethod rpcmethod_ExtendReservation_; + const ::grpc::internal::RpcMethod rpcmethod_GetOrExtendReservation_; const ::grpc::internal::RpcMethod rpcmethod_ReleaseReservation_; }; static std::unique_ptr NewStub(const std::shared_ptr< ::grpc::ChannelInterface>& channel, const ::grpc::StubOptions& options = ::grpc::StubOptions()); @@ -422,24 +385,18 @@ class DataCatalog final { virtual ::grpc::Status ListArtifacts(::grpc::ServerContext* context, const ::datacatalog::ListArtifactsRequest* request, ::datacatalog::ListArtifactsResponse* response); // Return a paginated list of datasets virtual ::grpc::Status ListDatasets(::grpc::ServerContext* context, const ::datacatalog::ListDatasetsRequest* request, ::datacatalog::ListDatasetsResponse* response); - // Get an artifact and the corresponding data. If the artifact does not exist, - // try to reserve a spot for populating the artifact. - // Once you preserve a spot, you should call ExtendReservation API periodically - // to extend the reservation. Otherwise, the reservation can expire and other - // tasks may take the spot. - // If the same owner_id calls this API for the same dataset and it has an active reservation and the artifacts have not been written yet by a different owner, the API will respond with an Acquired Reservation Status (providing idempotency). - // Note: We may have multiple concurrent tasks with the same signature - // and the same input that try to populate the same artifact at the same time. - // Thus with reservation, only one task can run at a time, until the reservation - // expires. - // Note: If task A does not extend the reservation in time and the reservation - // expires, another task B may take over the reservation, resulting in two tasks - // A and B running in parallel. So a third task C may get the Artifact from A or B, - // whichever writes last. - virtual ::grpc::Status GetOrReserveArtifact(::grpc::ServerContext* context, const ::datacatalog::GetOrReserveArtifactRequest* request, ::datacatalog::GetOrReserveArtifactResponse* response); - // Extend the reservation to keep it from expiring. If the reservation expires, - // other tasks can take over the reservation by calling GetOrReserveArtifact. - virtual ::grpc::Status ExtendReservation(::grpc::ServerContext* context, const ::datacatalog::ExtendReservationRequest* request, ::datacatalog::ExtendReservationResponse* response); + // Attempts to get or extend a reservation for the corresponding artifact. If one already exists + // (ie. another entity owns the reservation) then that reservation is retrieved. + // Once you acquire a reservation, you need to periodically extend the reservation with an + // identical call. If the reservation is not extended before the defined expiration, it may be + // acquired by another task. + // Note: We may have multiple concurrent tasks with the same signature and the same input that + // try to populate the same artifact at the same time. Thus with reservation, only one task can + // run at a time, until the reservation expires. + // Note: If task A does not extend the reservation in time and the reservation expires, another + // task B may take over the reservation, resulting in two tasks A and B running in parallel. So + // a third task C may get the Artifact from A or B, whichever writes last. + virtual ::grpc::Status GetOrExtendReservation(::grpc::ServerContext* context, const ::datacatalog::GetOrExtendReservationRequest* request, ::datacatalog::GetOrExtendReservationResponse* response); // Release the reservation when the task holding the spot fails so that the other tasks // can grab the spot. virtual ::grpc::Status ReleaseReservation(::grpc::ServerContext* context, const ::datacatalog::ReleaseReservationRequest* request, ::datacatalog::ReleaseReservationResponse* response); @@ -585,52 +542,32 @@ class DataCatalog final { } }; template - class WithAsyncMethod_GetOrReserveArtifact : public BaseClass { + class WithAsyncMethod_GetOrExtendReservation : public BaseClass { private: void BaseClassMustBeDerivedFromService(const Service *service) {} public: - WithAsyncMethod_GetOrReserveArtifact() { + WithAsyncMethod_GetOrExtendReservation() { ::grpc::Service::MarkMethodAsync(7); } - ~WithAsyncMethod_GetOrReserveArtifact() override { + ~WithAsyncMethod_GetOrExtendReservation() override { BaseClassMustBeDerivedFromService(this); } // disable synchronous version of this method - ::grpc::Status GetOrReserveArtifact(::grpc::ServerContext* context, const ::datacatalog::GetOrReserveArtifactRequest* request, ::datacatalog::GetOrReserveArtifactResponse* response) override { + ::grpc::Status GetOrExtendReservation(::grpc::ServerContext* context, const ::datacatalog::GetOrExtendReservationRequest* request, ::datacatalog::GetOrExtendReservationResponse* response) override { abort(); return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); } - void RequestGetOrReserveArtifact(::grpc::ServerContext* context, ::datacatalog::GetOrReserveArtifactRequest* request, ::grpc::ServerAsyncResponseWriter< ::datacatalog::GetOrReserveArtifactResponse>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) { + void RequestGetOrExtendReservation(::grpc::ServerContext* context, ::datacatalog::GetOrExtendReservationRequest* request, ::grpc::ServerAsyncResponseWriter< ::datacatalog::GetOrExtendReservationResponse>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) { ::grpc::Service::RequestAsyncUnary(7, context, request, response, new_call_cq, notification_cq, tag); } }; template - class WithAsyncMethod_ExtendReservation : public BaseClass { - private: - void BaseClassMustBeDerivedFromService(const Service *service) {} - public: - WithAsyncMethod_ExtendReservation() { - ::grpc::Service::MarkMethodAsync(8); - } - ~WithAsyncMethod_ExtendReservation() override { - BaseClassMustBeDerivedFromService(this); - } - // disable synchronous version of this method - ::grpc::Status ExtendReservation(::grpc::ServerContext* context, const ::datacatalog::ExtendReservationRequest* request, ::datacatalog::ExtendReservationResponse* response) override { - abort(); - return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); - } - void RequestExtendReservation(::grpc::ServerContext* context, ::datacatalog::ExtendReservationRequest* request, ::grpc::ServerAsyncResponseWriter< ::datacatalog::ExtendReservationResponse>* 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_ReleaseReservation : public BaseClass { private: void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithAsyncMethod_ReleaseReservation() { - ::grpc::Service::MarkMethodAsync(9); + ::grpc::Service::MarkMethodAsync(8); } ~WithAsyncMethod_ReleaseReservation() override { BaseClassMustBeDerivedFromService(this); @@ -641,10 +578,10 @@ class DataCatalog final { return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); } void RequestReleaseReservation(::grpc::ServerContext* context, ::datacatalog::ReleaseReservationRequest* request, ::grpc::ServerAsyncResponseWriter< ::datacatalog::ReleaseReservationResponse>* 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(8, context, request, response, new_call_cq, notification_cq, tag); } }; - typedef WithAsyncMethod_CreateDataset > > > > > > > > > AsyncService; + typedef WithAsyncMethod_CreateDataset > > > > > > > > AsyncService; template class ExperimentalWithCallbackMethod_CreateDataset : public BaseClass { private: @@ -863,66 +800,35 @@ class DataCatalog final { virtual void ListDatasets(::grpc::ServerContext* context, const ::datacatalog::ListDatasetsRequest* request, ::datacatalog::ListDatasetsResponse* response, ::grpc::experimental::ServerCallbackRpcController* controller) { controller->Finish(::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, "")); } }; template - class ExperimentalWithCallbackMethod_GetOrReserveArtifact : public BaseClass { + class ExperimentalWithCallbackMethod_GetOrExtendReservation : public BaseClass { private: void BaseClassMustBeDerivedFromService(const Service *service) {} public: - ExperimentalWithCallbackMethod_GetOrReserveArtifact() { + ExperimentalWithCallbackMethod_GetOrExtendReservation() { ::grpc::Service::experimental().MarkMethodCallback(7, - new ::grpc::internal::CallbackUnaryHandler< ::datacatalog::GetOrReserveArtifactRequest, ::datacatalog::GetOrReserveArtifactResponse>( + new ::grpc::internal::CallbackUnaryHandler< ::datacatalog::GetOrExtendReservationRequest, ::datacatalog::GetOrExtendReservationResponse>( [this](::grpc::ServerContext* context, - const ::datacatalog::GetOrReserveArtifactRequest* request, - ::datacatalog::GetOrReserveArtifactResponse* response, + const ::datacatalog::GetOrExtendReservationRequest* request, + ::datacatalog::GetOrExtendReservationResponse* response, ::grpc::experimental::ServerCallbackRpcController* controller) { - return this->GetOrReserveArtifact(context, request, response, controller); + return this->GetOrExtendReservation(context, request, response, controller); })); } - void SetMessageAllocatorFor_GetOrReserveArtifact( - ::grpc::experimental::MessageAllocator< ::datacatalog::GetOrReserveArtifactRequest, ::datacatalog::GetOrReserveArtifactResponse>* allocator) { - static_cast<::grpc::internal::CallbackUnaryHandler< ::datacatalog::GetOrReserveArtifactRequest, ::datacatalog::GetOrReserveArtifactResponse>*>( + void SetMessageAllocatorFor_GetOrExtendReservation( + ::grpc::experimental::MessageAllocator< ::datacatalog::GetOrExtendReservationRequest, ::datacatalog::GetOrExtendReservationResponse>* allocator) { + static_cast<::grpc::internal::CallbackUnaryHandler< ::datacatalog::GetOrExtendReservationRequest, ::datacatalog::GetOrExtendReservationResponse>*>( ::grpc::Service::experimental().GetHandler(7)) ->SetMessageAllocator(allocator); } - ~ExperimentalWithCallbackMethod_GetOrReserveArtifact() override { + ~ExperimentalWithCallbackMethod_GetOrExtendReservation() override { BaseClassMustBeDerivedFromService(this); } // disable synchronous version of this method - ::grpc::Status GetOrReserveArtifact(::grpc::ServerContext* context, const ::datacatalog::GetOrReserveArtifactRequest* request, ::datacatalog::GetOrReserveArtifactResponse* response) override { + ::grpc::Status GetOrExtendReservation(::grpc::ServerContext* context, const ::datacatalog::GetOrExtendReservationRequest* request, ::datacatalog::GetOrExtendReservationResponse* response) override { abort(); return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); } - virtual void GetOrReserveArtifact(::grpc::ServerContext* context, const ::datacatalog::GetOrReserveArtifactRequest* request, ::datacatalog::GetOrReserveArtifactResponse* response, ::grpc::experimental::ServerCallbackRpcController* controller) { controller->Finish(::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, "")); } - }; - template - class ExperimentalWithCallbackMethod_ExtendReservation : public BaseClass { - private: - void BaseClassMustBeDerivedFromService(const Service *service) {} - public: - ExperimentalWithCallbackMethod_ExtendReservation() { - ::grpc::Service::experimental().MarkMethodCallback(8, - new ::grpc::internal::CallbackUnaryHandler< ::datacatalog::ExtendReservationRequest, ::datacatalog::ExtendReservationResponse>( - [this](::grpc::ServerContext* context, - const ::datacatalog::ExtendReservationRequest* request, - ::datacatalog::ExtendReservationResponse* response, - ::grpc::experimental::ServerCallbackRpcController* controller) { - return this->ExtendReservation(context, request, response, controller); - })); - } - void SetMessageAllocatorFor_ExtendReservation( - ::grpc::experimental::MessageAllocator< ::datacatalog::ExtendReservationRequest, ::datacatalog::ExtendReservationResponse>* allocator) { - static_cast<::grpc::internal::CallbackUnaryHandler< ::datacatalog::ExtendReservationRequest, ::datacatalog::ExtendReservationResponse>*>( - ::grpc::Service::experimental().GetHandler(8)) - ->SetMessageAllocator(allocator); - } - ~ExperimentalWithCallbackMethod_ExtendReservation() override { - BaseClassMustBeDerivedFromService(this); - } - // disable synchronous version of this method - ::grpc::Status ExtendReservation(::grpc::ServerContext* context, const ::datacatalog::ExtendReservationRequest* request, ::datacatalog::ExtendReservationResponse* response) override { - abort(); - return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); - } - virtual void ExtendReservation(::grpc::ServerContext* context, const ::datacatalog::ExtendReservationRequest* request, ::datacatalog::ExtendReservationResponse* response, ::grpc::experimental::ServerCallbackRpcController* controller) { controller->Finish(::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, "")); } + virtual void GetOrExtendReservation(::grpc::ServerContext* context, const ::datacatalog::GetOrExtendReservationRequest* request, ::datacatalog::GetOrExtendReservationResponse* response, ::grpc::experimental::ServerCallbackRpcController* controller) { controller->Finish(::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, "")); } }; template class ExperimentalWithCallbackMethod_ReleaseReservation : public BaseClass { @@ -930,7 +836,7 @@ class DataCatalog final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: ExperimentalWithCallbackMethod_ReleaseReservation() { - ::grpc::Service::experimental().MarkMethodCallback(9, + ::grpc::Service::experimental().MarkMethodCallback(8, new ::grpc::internal::CallbackUnaryHandler< ::datacatalog::ReleaseReservationRequest, ::datacatalog::ReleaseReservationResponse>( [this](::grpc::ServerContext* context, const ::datacatalog::ReleaseReservationRequest* request, @@ -942,7 +848,7 @@ class DataCatalog final { void SetMessageAllocatorFor_ReleaseReservation( ::grpc::experimental::MessageAllocator< ::datacatalog::ReleaseReservationRequest, ::datacatalog::ReleaseReservationResponse>* allocator) { static_cast<::grpc::internal::CallbackUnaryHandler< ::datacatalog::ReleaseReservationRequest, ::datacatalog::ReleaseReservationResponse>*>( - ::grpc::Service::experimental().GetHandler(9)) + ::grpc::Service::experimental().GetHandler(8)) ->SetMessageAllocator(allocator); } ~ExperimentalWithCallbackMethod_ReleaseReservation() override { @@ -955,7 +861,7 @@ class DataCatalog final { } virtual void ReleaseReservation(::grpc::ServerContext* context, const ::datacatalog::ReleaseReservationRequest* request, ::datacatalog::ReleaseReservationResponse* response, ::grpc::experimental::ServerCallbackRpcController* controller) { controller->Finish(::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, "")); } }; - typedef ExperimentalWithCallbackMethod_CreateDataset > > > > > > > > > ExperimentalCallbackService; + typedef ExperimentalWithCallbackMethod_CreateDataset > > > > > > > > ExperimentalCallbackService; template class WithGenericMethod_CreateDataset : public BaseClass { private: @@ -1076,35 +982,18 @@ class DataCatalog final { } }; template - class WithGenericMethod_GetOrReserveArtifact : public BaseClass { + class WithGenericMethod_GetOrExtendReservation : public BaseClass { private: void BaseClassMustBeDerivedFromService(const Service *service) {} public: - WithGenericMethod_GetOrReserveArtifact() { + WithGenericMethod_GetOrExtendReservation() { ::grpc::Service::MarkMethodGeneric(7); } - ~WithGenericMethod_GetOrReserveArtifact() override { - BaseClassMustBeDerivedFromService(this); - } - // disable synchronous version of this method - ::grpc::Status GetOrReserveArtifact(::grpc::ServerContext* context, const ::datacatalog::GetOrReserveArtifactRequest* request, ::datacatalog::GetOrReserveArtifactResponse* response) override { - abort(); - return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); - } - }; - template - class WithGenericMethod_ExtendReservation : public BaseClass { - private: - void BaseClassMustBeDerivedFromService(const Service *service) {} - public: - WithGenericMethod_ExtendReservation() { - ::grpc::Service::MarkMethodGeneric(8); - } - ~WithGenericMethod_ExtendReservation() override { + ~WithGenericMethod_GetOrExtendReservation() override { BaseClassMustBeDerivedFromService(this); } // disable synchronous version of this method - ::grpc::Status ExtendReservation(::grpc::ServerContext* context, const ::datacatalog::ExtendReservationRequest* request, ::datacatalog::ExtendReservationResponse* response) override { + ::grpc::Status GetOrExtendReservation(::grpc::ServerContext* context, const ::datacatalog::GetOrExtendReservationRequest* request, ::datacatalog::GetOrExtendReservationResponse* response) override { abort(); return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); } @@ -1115,7 +1004,7 @@ class DataCatalog final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithGenericMethod_ReleaseReservation() { - ::grpc::Service::MarkMethodGeneric(9); + ::grpc::Service::MarkMethodGeneric(8); } ~WithGenericMethod_ReleaseReservation() override { BaseClassMustBeDerivedFromService(this); @@ -1267,52 +1156,32 @@ class DataCatalog final { } }; template - class WithRawMethod_GetOrReserveArtifact : public BaseClass { + class WithRawMethod_GetOrExtendReservation : public BaseClass { private: void BaseClassMustBeDerivedFromService(const Service *service) {} public: - WithRawMethod_GetOrReserveArtifact() { + WithRawMethod_GetOrExtendReservation() { ::grpc::Service::MarkMethodRaw(7); } - ~WithRawMethod_GetOrReserveArtifact() override { + ~WithRawMethod_GetOrExtendReservation() override { BaseClassMustBeDerivedFromService(this); } // disable synchronous version of this method - ::grpc::Status GetOrReserveArtifact(::grpc::ServerContext* context, const ::datacatalog::GetOrReserveArtifactRequest* request, ::datacatalog::GetOrReserveArtifactResponse* response) override { + ::grpc::Status GetOrExtendReservation(::grpc::ServerContext* context, const ::datacatalog::GetOrExtendReservationRequest* request, ::datacatalog::GetOrExtendReservationResponse* response) override { abort(); return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); } - void RequestGetOrReserveArtifact(::grpc::ServerContext* context, ::grpc::ByteBuffer* request, ::grpc::ServerAsyncResponseWriter< ::grpc::ByteBuffer>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) { + void RequestGetOrExtendReservation(::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(7, context, request, response, new_call_cq, notification_cq, tag); } }; template - class WithRawMethod_ExtendReservation : public BaseClass { - private: - void BaseClassMustBeDerivedFromService(const Service *service) {} - public: - WithRawMethod_ExtendReservation() { - ::grpc::Service::MarkMethodRaw(8); - } - ~WithRawMethod_ExtendReservation() override { - BaseClassMustBeDerivedFromService(this); - } - // disable synchronous version of this method - ::grpc::Status ExtendReservation(::grpc::ServerContext* context, const ::datacatalog::ExtendReservationRequest* request, ::datacatalog::ExtendReservationResponse* response) override { - abort(); - return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); - } - void RequestExtendReservation(::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_ReleaseReservation : public BaseClass { private: void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithRawMethod_ReleaseReservation() { - ::grpc::Service::MarkMethodRaw(9); + ::grpc::Service::MarkMethodRaw(8); } ~WithRawMethod_ReleaseReservation() override { BaseClassMustBeDerivedFromService(this); @@ -1323,7 +1192,7 @@ class DataCatalog final { return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); } void RequestReleaseReservation(::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(8, context, request, response, new_call_cq, notification_cq, tag); } }; template @@ -1502,54 +1371,29 @@ class DataCatalog final { virtual void ListDatasets(::grpc::ServerContext* context, const ::grpc::ByteBuffer* request, ::grpc::ByteBuffer* response, ::grpc::experimental::ServerCallbackRpcController* controller) { controller->Finish(::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, "")); } }; template - class ExperimentalWithRawCallbackMethod_GetOrReserveArtifact : public BaseClass { + class ExperimentalWithRawCallbackMethod_GetOrExtendReservation : public BaseClass { private: void BaseClassMustBeDerivedFromService(const Service *service) {} public: - ExperimentalWithRawCallbackMethod_GetOrReserveArtifact() { + ExperimentalWithRawCallbackMethod_GetOrExtendReservation() { ::grpc::Service::experimental().MarkMethodRawCallback(7, new ::grpc::internal::CallbackUnaryHandler< ::grpc::ByteBuffer, ::grpc::ByteBuffer>( [this](::grpc::ServerContext* context, const ::grpc::ByteBuffer* request, ::grpc::ByteBuffer* response, ::grpc::experimental::ServerCallbackRpcController* controller) { - this->GetOrReserveArtifact(context, request, response, controller); + this->GetOrExtendReservation(context, request, response, controller); })); } - ~ExperimentalWithRawCallbackMethod_GetOrReserveArtifact() override { + ~ExperimentalWithRawCallbackMethod_GetOrExtendReservation() override { BaseClassMustBeDerivedFromService(this); } // disable synchronous version of this method - ::grpc::Status GetOrReserveArtifact(::grpc::ServerContext* context, const ::datacatalog::GetOrReserveArtifactRequest* request, ::datacatalog::GetOrReserveArtifactResponse* response) override { + ::grpc::Status GetOrExtendReservation(::grpc::ServerContext* context, const ::datacatalog::GetOrExtendReservationRequest* request, ::datacatalog::GetOrExtendReservationResponse* response) override { abort(); return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); } - virtual void GetOrReserveArtifact(::grpc::ServerContext* context, const ::grpc::ByteBuffer* request, ::grpc::ByteBuffer* response, ::grpc::experimental::ServerCallbackRpcController* controller) { controller->Finish(::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, "")); } - }; - template - class ExperimentalWithRawCallbackMethod_ExtendReservation : public BaseClass { - private: - void BaseClassMustBeDerivedFromService(const Service *service) {} - public: - ExperimentalWithRawCallbackMethod_ExtendReservation() { - ::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->ExtendReservation(context, request, response, controller); - })); - } - ~ExperimentalWithRawCallbackMethod_ExtendReservation() override { - BaseClassMustBeDerivedFromService(this); - } - // disable synchronous version of this method - ::grpc::Status ExtendReservation(::grpc::ServerContext* context, const ::datacatalog::ExtendReservationRequest* request, ::datacatalog::ExtendReservationResponse* response) override { - abort(); - return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); - } - virtual void ExtendReservation(::grpc::ServerContext* context, const ::grpc::ByteBuffer* request, ::grpc::ByteBuffer* response, ::grpc::experimental::ServerCallbackRpcController* controller) { controller->Finish(::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, "")); } + virtual void GetOrExtendReservation(::grpc::ServerContext* context, const ::grpc::ByteBuffer* request, ::grpc::ByteBuffer* response, ::grpc::experimental::ServerCallbackRpcController* controller) { controller->Finish(::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, "")); } }; template class ExperimentalWithRawCallbackMethod_ReleaseReservation : public BaseClass { @@ -1557,7 +1401,7 @@ class DataCatalog final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: ExperimentalWithRawCallbackMethod_ReleaseReservation() { - ::grpc::Service::experimental().MarkMethodRawCallback(9, + ::grpc::Service::experimental().MarkMethodRawCallback(8, new ::grpc::internal::CallbackUnaryHandler< ::grpc::ByteBuffer, ::grpc::ByteBuffer>( [this](::grpc::ServerContext* context, const ::grpc::ByteBuffer* request, @@ -1717,44 +1561,24 @@ class DataCatalog final { virtual ::grpc::Status StreamedListDatasets(::grpc::ServerContext* context, ::grpc::ServerUnaryStreamer< ::datacatalog::ListDatasetsRequest,::datacatalog::ListDatasetsResponse>* server_unary_streamer) = 0; }; template - class WithStreamedUnaryMethod_GetOrReserveArtifact : public BaseClass { + class WithStreamedUnaryMethod_GetOrExtendReservation : public BaseClass { private: void BaseClassMustBeDerivedFromService(const Service *service) {} public: - WithStreamedUnaryMethod_GetOrReserveArtifact() { + WithStreamedUnaryMethod_GetOrExtendReservation() { ::grpc::Service::MarkMethodStreamed(7, - new ::grpc::internal::StreamedUnaryHandler< ::datacatalog::GetOrReserveArtifactRequest, ::datacatalog::GetOrReserveArtifactResponse>(std::bind(&WithStreamedUnaryMethod_GetOrReserveArtifact::StreamedGetOrReserveArtifact, this, std::placeholders::_1, std::placeholders::_2))); - } - ~WithStreamedUnaryMethod_GetOrReserveArtifact() override { - BaseClassMustBeDerivedFromService(this); + new ::grpc::internal::StreamedUnaryHandler< ::datacatalog::GetOrExtendReservationRequest, ::datacatalog::GetOrExtendReservationResponse>(std::bind(&WithStreamedUnaryMethod_GetOrExtendReservation::StreamedGetOrExtendReservation, this, std::placeholders::_1, std::placeholders::_2))); } - // disable regular version of this method - ::grpc::Status GetOrReserveArtifact(::grpc::ServerContext* context, const ::datacatalog::GetOrReserveArtifactRequest* request, ::datacatalog::GetOrReserveArtifactResponse* response) override { - abort(); - return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); - } - // replace default version of method with streamed unary - virtual ::grpc::Status StreamedGetOrReserveArtifact(::grpc::ServerContext* context, ::grpc::ServerUnaryStreamer< ::datacatalog::GetOrReserveArtifactRequest,::datacatalog::GetOrReserveArtifactResponse>* server_unary_streamer) = 0; - }; - template - class WithStreamedUnaryMethod_ExtendReservation : public BaseClass { - private: - void BaseClassMustBeDerivedFromService(const Service *service) {} - public: - WithStreamedUnaryMethod_ExtendReservation() { - ::grpc::Service::MarkMethodStreamed(8, - new ::grpc::internal::StreamedUnaryHandler< ::datacatalog::ExtendReservationRequest, ::datacatalog::ExtendReservationResponse>(std::bind(&WithStreamedUnaryMethod_ExtendReservation::StreamedExtendReservation, this, std::placeholders::_1, std::placeholders::_2))); - } - ~WithStreamedUnaryMethod_ExtendReservation() override { + ~WithStreamedUnaryMethod_GetOrExtendReservation() override { BaseClassMustBeDerivedFromService(this); } // disable regular version of this method - ::grpc::Status ExtendReservation(::grpc::ServerContext* context, const ::datacatalog::ExtendReservationRequest* request, ::datacatalog::ExtendReservationResponse* response) override { + ::grpc::Status GetOrExtendReservation(::grpc::ServerContext* context, const ::datacatalog::GetOrExtendReservationRequest* request, ::datacatalog::GetOrExtendReservationResponse* response) override { abort(); return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); } // replace default version of method with streamed unary - virtual ::grpc::Status StreamedExtendReservation(::grpc::ServerContext* context, ::grpc::ServerUnaryStreamer< ::datacatalog::ExtendReservationRequest,::datacatalog::ExtendReservationResponse>* server_unary_streamer) = 0; + virtual ::grpc::Status StreamedGetOrExtendReservation(::grpc::ServerContext* context, ::grpc::ServerUnaryStreamer< ::datacatalog::GetOrExtendReservationRequest,::datacatalog::GetOrExtendReservationResponse>* server_unary_streamer) = 0; }; template class WithStreamedUnaryMethod_ReleaseReservation : public BaseClass { @@ -1762,7 +1586,7 @@ class DataCatalog final { void BaseClassMustBeDerivedFromService(const Service *service) {} public: WithStreamedUnaryMethod_ReleaseReservation() { - ::grpc::Service::MarkMethodStreamed(9, + ::grpc::Service::MarkMethodStreamed(8, new ::grpc::internal::StreamedUnaryHandler< ::datacatalog::ReleaseReservationRequest, ::datacatalog::ReleaseReservationResponse>(std::bind(&WithStreamedUnaryMethod_ReleaseReservation::StreamedReleaseReservation, this, std::placeholders::_1, std::placeholders::_2))); } ~WithStreamedUnaryMethod_ReleaseReservation() override { @@ -1776,9 +1600,9 @@ class DataCatalog final { // replace default version of method with streamed unary virtual ::grpc::Status StreamedReleaseReservation(::grpc::ServerContext* context, ::grpc::ServerUnaryStreamer< ::datacatalog::ReleaseReservationRequest,::datacatalog::ReleaseReservationResponse>* server_unary_streamer) = 0; }; - typedef WithStreamedUnaryMethod_CreateDataset > > > > > > > > > StreamedUnaryService; + typedef WithStreamedUnaryMethod_CreateDataset > > > > > > > > StreamedUnaryService; typedef Service SplitStreamedService; - typedef WithStreamedUnaryMethod_CreateDataset > > > > > > > > > StreamedService; + typedef WithStreamedUnaryMethod_CreateDataset > > > > > > > > StreamedService; }; } // namespace datacatalog diff --git a/gen/pb-cpp/flyteidl/datacatalog/datacatalog.pb.cc b/gen/pb-cpp/flyteidl/datacatalog/datacatalog.pb.cc index 2471622ef..e64fd202c 100644 --- a/gen/pb-cpp/flyteidl/datacatalog/datacatalog.pb.cc +++ b/gen/pb-cpp/flyteidl/datacatalog/datacatalog.pb.cc @@ -29,11 +29,13 @@ extern PROTOBUF_INTERNAL_EXPORT_flyteidl_2fdatacatalog_2fdatacatalog_2eproto ::g extern PROTOBUF_INTERNAL_EXPORT_flyteidl_2fdatacatalog_2fdatacatalog_2eproto ::google::protobuf::internal::SCCInfo<1> scc_info_FilterExpression_flyteidl_2fdatacatalog_2fdatacatalog_2eproto; extern PROTOBUF_INTERNAL_EXPORT_flyteidl_2fdatacatalog_2fdatacatalog_2eproto ::google::protobuf::internal::SCCInfo<1> scc_info_Metadata_flyteidl_2fdatacatalog_2fdatacatalog_2eproto; extern PROTOBUF_INTERNAL_EXPORT_flyteidl_2fdatacatalog_2fdatacatalog_2eproto ::google::protobuf::internal::SCCInfo<1> scc_info_PartitionPropertyFilter_flyteidl_2fdatacatalog_2fdatacatalog_2eproto; -extern PROTOBUF_INTERNAL_EXPORT_flyteidl_2fdatacatalog_2fdatacatalog_2eproto ::google::protobuf::internal::SCCInfo<1> scc_info_ReservationStatus_flyteidl_2fdatacatalog_2fdatacatalog_2eproto; +extern PROTOBUF_INTERNAL_EXPORT_flyteidl_2fdatacatalog_2fdatacatalog_2eproto ::google::protobuf::internal::SCCInfo<1> scc_info_ReservationID_flyteidl_2fdatacatalog_2fdatacatalog_2eproto; extern PROTOBUF_INTERNAL_EXPORT_flyteidl_2fdatacatalog_2fdatacatalog_2eproto ::google::protobuf::internal::SCCInfo<1> scc_info_Tag_flyteidl_2fdatacatalog_2fdatacatalog_2eproto; extern PROTOBUF_INTERNAL_EXPORT_flyteidl_2fdatacatalog_2fdatacatalog_2eproto ::google::protobuf::internal::SCCInfo<2> scc_info_Dataset_flyteidl_2fdatacatalog_2fdatacatalog_2eproto; +extern PROTOBUF_INTERNAL_EXPORT_flyteidl_2fdatacatalog_2fdatacatalog_2eproto ::google::protobuf::internal::SCCInfo<4> scc_info_Reservation_flyteidl_2fdatacatalog_2fdatacatalog_2eproto; extern PROTOBUF_INTERNAL_EXPORT_flyteidl_2fdatacatalog_2fdatacatalog_2eproto ::google::protobuf::internal::SCCInfo<4> scc_info_SinglePropertyFilter_flyteidl_2fdatacatalog_2fdatacatalog_2eproto; extern PROTOBUF_INTERNAL_EXPORT_flyteidl_2fdatacatalog_2fdatacatalog_2eproto ::google::protobuf::internal::SCCInfo<6> scc_info_Artifact_flyteidl_2fdatacatalog_2fdatacatalog_2eproto; +extern PROTOBUF_INTERNAL_EXPORT_google_2fprotobuf_2fduration_2eproto ::google::protobuf::internal::SCCInfo<0> scc_info_Duration_google_2fprotobuf_2fduration_2eproto; extern PROTOBUF_INTERNAL_EXPORT_google_2fprotobuf_2ftimestamp_2eproto ::google::protobuf::internal::SCCInfo<0> scc_info_Timestamp_google_2fprotobuf_2ftimestamp_2eproto; namespace datacatalog { class CreateDatasetRequestDefaultTypeInternal { @@ -94,28 +96,22 @@ class ListDatasetsResponseDefaultTypeInternal { public: ::google::protobuf::internal::ExplicitlyConstructed _instance; } _ListDatasetsResponse_default_instance_; -class GetOrReserveArtifactRequestDefaultTypeInternal { +class ReservationIDDefaultTypeInternal { public: - ::google::protobuf::internal::ExplicitlyConstructed _instance; -} _GetOrReserveArtifactRequest_default_instance_; -class ReservationStatusDefaultTypeInternal { + ::google::protobuf::internal::ExplicitlyConstructed _instance; +} _ReservationID_default_instance_; +class GetOrExtendReservationRequestDefaultTypeInternal { public: - ::google::protobuf::internal::ExplicitlyConstructed _instance; -} _ReservationStatus_default_instance_; -class GetOrReserveArtifactResponseDefaultTypeInternal { + ::google::protobuf::internal::ExplicitlyConstructed _instance; +} _GetOrExtendReservationRequest_default_instance_; +class ReservationDefaultTypeInternal { public: - ::google::protobuf::internal::ExplicitlyConstructed _instance; - const ::datacatalog::Artifact* artifact_; - const ::datacatalog::ReservationStatus* reservation_status_; -} _GetOrReserveArtifactResponse_default_instance_; -class ExtendReservationRequestDefaultTypeInternal { + ::google::protobuf::internal::ExplicitlyConstructed _instance; +} _Reservation_default_instance_; +class GetOrExtendReservationResponseDefaultTypeInternal { public: - ::google::protobuf::internal::ExplicitlyConstructed _instance; -} _ExtendReservationRequest_default_instance_; -class ExtendReservationResponseDefaultTypeInternal { - public: - ::google::protobuf::internal::ExplicitlyConstructed _instance; -} _ExtendReservationResponse_default_instance_; + ::google::protobuf::internal::ExplicitlyConstructed _instance; +} _GetOrExtendReservationResponse_default_instance_; class ReleaseReservationRequestDefaultTypeInternal { public: ::google::protobuf::internal::ExplicitlyConstructed _instance; @@ -410,80 +406,69 @@ ::google::protobuf::internal::SCCInfo<1> scc_info_ListDatasetsResponse_flyteidl_ {{ATOMIC_VAR_INIT(::google::protobuf::internal::SCCInfoBase::kUninitialized), 1, InitDefaultsListDatasetsResponse_flyteidl_2fdatacatalog_2fdatacatalog_2eproto}, { &scc_info_Dataset_flyteidl_2fdatacatalog_2fdatacatalog_2eproto.base,}}; -static void InitDefaultsGetOrReserveArtifactRequest_flyteidl_2fdatacatalog_2fdatacatalog_2eproto() { +static void InitDefaultsReservationID_flyteidl_2fdatacatalog_2fdatacatalog_2eproto() { GOOGLE_PROTOBUF_VERIFY_VERSION; { - void* ptr = &::datacatalog::_GetOrReserveArtifactRequest_default_instance_; - new (ptr) ::datacatalog::GetOrReserveArtifactRequest(); + void* ptr = &::datacatalog::_ReservationID_default_instance_; + new (ptr) ::datacatalog::ReservationID(); ::google::protobuf::internal::OnShutdownDestroyMessage(ptr); } - ::datacatalog::GetOrReserveArtifactRequest::InitAsDefaultInstance(); + ::datacatalog::ReservationID::InitAsDefaultInstance(); } -::google::protobuf::internal::SCCInfo<1> scc_info_GetOrReserveArtifactRequest_flyteidl_2fdatacatalog_2fdatacatalog_2eproto = - {{ATOMIC_VAR_INIT(::google::protobuf::internal::SCCInfoBase::kUninitialized), 1, InitDefaultsGetOrReserveArtifactRequest_flyteidl_2fdatacatalog_2fdatacatalog_2eproto}, { +::google::protobuf::internal::SCCInfo<1> scc_info_ReservationID_flyteidl_2fdatacatalog_2fdatacatalog_2eproto = + {{ATOMIC_VAR_INIT(::google::protobuf::internal::SCCInfoBase::kUninitialized), 1, InitDefaultsReservationID_flyteidl_2fdatacatalog_2fdatacatalog_2eproto}, { &scc_info_DatasetID_flyteidl_2fdatacatalog_2fdatacatalog_2eproto.base,}}; -static void InitDefaultsReservationStatus_flyteidl_2fdatacatalog_2fdatacatalog_2eproto() { - GOOGLE_PROTOBUF_VERIFY_VERSION; - - { - void* ptr = &::datacatalog::_ReservationStatus_default_instance_; - new (ptr) ::datacatalog::ReservationStatus(); - ::google::protobuf::internal::OnShutdownDestroyMessage(ptr); - } - ::datacatalog::ReservationStatus::InitAsDefaultInstance(); -} - -::google::protobuf::internal::SCCInfo<1> scc_info_ReservationStatus_flyteidl_2fdatacatalog_2fdatacatalog_2eproto = - {{ATOMIC_VAR_INIT(::google::protobuf::internal::SCCInfoBase::kUninitialized), 1, InitDefaultsReservationStatus_flyteidl_2fdatacatalog_2fdatacatalog_2eproto}, { - &scc_info_Metadata_flyteidl_2fdatacatalog_2fdatacatalog_2eproto.base,}}; - -static void InitDefaultsGetOrReserveArtifactResponse_flyteidl_2fdatacatalog_2fdatacatalog_2eproto() { +static void InitDefaultsGetOrExtendReservationRequest_flyteidl_2fdatacatalog_2fdatacatalog_2eproto() { GOOGLE_PROTOBUF_VERIFY_VERSION; { - void* ptr = &::datacatalog::_GetOrReserveArtifactResponse_default_instance_; - new (ptr) ::datacatalog::GetOrReserveArtifactResponse(); + void* ptr = &::datacatalog::_GetOrExtendReservationRequest_default_instance_; + new (ptr) ::datacatalog::GetOrExtendReservationRequest(); ::google::protobuf::internal::OnShutdownDestroyMessage(ptr); } - ::datacatalog::GetOrReserveArtifactResponse::InitAsDefaultInstance(); + ::datacatalog::GetOrExtendReservationRequest::InitAsDefaultInstance(); } -::google::protobuf::internal::SCCInfo<2> scc_info_GetOrReserveArtifactResponse_flyteidl_2fdatacatalog_2fdatacatalog_2eproto = - {{ATOMIC_VAR_INIT(::google::protobuf::internal::SCCInfoBase::kUninitialized), 2, InitDefaultsGetOrReserveArtifactResponse_flyteidl_2fdatacatalog_2fdatacatalog_2eproto}, { - &scc_info_Artifact_flyteidl_2fdatacatalog_2fdatacatalog_2eproto.base, - &scc_info_ReservationStatus_flyteidl_2fdatacatalog_2fdatacatalog_2eproto.base,}}; +::google::protobuf::internal::SCCInfo<2> scc_info_GetOrExtendReservationRequest_flyteidl_2fdatacatalog_2fdatacatalog_2eproto = + {{ATOMIC_VAR_INIT(::google::protobuf::internal::SCCInfoBase::kUninitialized), 2, InitDefaultsGetOrExtendReservationRequest_flyteidl_2fdatacatalog_2fdatacatalog_2eproto}, { + &scc_info_ReservationID_flyteidl_2fdatacatalog_2fdatacatalog_2eproto.base, + &scc_info_Duration_google_2fprotobuf_2fduration_2eproto.base,}}; -static void InitDefaultsExtendReservationRequest_flyteidl_2fdatacatalog_2fdatacatalog_2eproto() { +static void InitDefaultsReservation_flyteidl_2fdatacatalog_2fdatacatalog_2eproto() { GOOGLE_PROTOBUF_VERIFY_VERSION; { - void* ptr = &::datacatalog::_ExtendReservationRequest_default_instance_; - new (ptr) ::datacatalog::ExtendReservationRequest(); + void* ptr = &::datacatalog::_Reservation_default_instance_; + new (ptr) ::datacatalog::Reservation(); ::google::protobuf::internal::OnShutdownDestroyMessage(ptr); } - ::datacatalog::ExtendReservationRequest::InitAsDefaultInstance(); + ::datacatalog::Reservation::InitAsDefaultInstance(); } -::google::protobuf::internal::SCCInfo<1> scc_info_ExtendReservationRequest_flyteidl_2fdatacatalog_2fdatacatalog_2eproto = - {{ATOMIC_VAR_INIT(::google::protobuf::internal::SCCInfoBase::kUninitialized), 1, InitDefaultsExtendReservationRequest_flyteidl_2fdatacatalog_2fdatacatalog_2eproto}, { - &scc_info_DatasetID_flyteidl_2fdatacatalog_2fdatacatalog_2eproto.base,}}; +::google::protobuf::internal::SCCInfo<4> scc_info_Reservation_flyteidl_2fdatacatalog_2fdatacatalog_2eproto = + {{ATOMIC_VAR_INIT(::google::protobuf::internal::SCCInfoBase::kUninitialized), 4, InitDefaultsReservation_flyteidl_2fdatacatalog_2fdatacatalog_2eproto}, { + &scc_info_ReservationID_flyteidl_2fdatacatalog_2fdatacatalog_2eproto.base, + &scc_info_Duration_google_2fprotobuf_2fduration_2eproto.base, + &scc_info_Timestamp_google_2fprotobuf_2ftimestamp_2eproto.base, + &scc_info_Metadata_flyteidl_2fdatacatalog_2fdatacatalog_2eproto.base,}}; -static void InitDefaultsExtendReservationResponse_flyteidl_2fdatacatalog_2fdatacatalog_2eproto() { +static void InitDefaultsGetOrExtendReservationResponse_flyteidl_2fdatacatalog_2fdatacatalog_2eproto() { GOOGLE_PROTOBUF_VERIFY_VERSION; { - void* ptr = &::datacatalog::_ExtendReservationResponse_default_instance_; - new (ptr) ::datacatalog::ExtendReservationResponse(); + void* ptr = &::datacatalog::_GetOrExtendReservationResponse_default_instance_; + new (ptr) ::datacatalog::GetOrExtendReservationResponse(); ::google::protobuf::internal::OnShutdownDestroyMessage(ptr); } - ::datacatalog::ExtendReservationResponse::InitAsDefaultInstance(); + ::datacatalog::GetOrExtendReservationResponse::InitAsDefaultInstance(); } -::google::protobuf::internal::SCCInfo<0> scc_info_ExtendReservationResponse_flyteidl_2fdatacatalog_2fdatacatalog_2eproto = - {{ATOMIC_VAR_INIT(::google::protobuf::internal::SCCInfoBase::kUninitialized), 0, InitDefaultsExtendReservationResponse_flyteidl_2fdatacatalog_2fdatacatalog_2eproto}, {}}; +::google::protobuf::internal::SCCInfo<1> scc_info_GetOrExtendReservationResponse_flyteidl_2fdatacatalog_2fdatacatalog_2eproto = + {{ATOMIC_VAR_INIT(::google::protobuf::internal::SCCInfoBase::kUninitialized), 1, InitDefaultsGetOrExtendReservationResponse_flyteidl_2fdatacatalog_2fdatacatalog_2eproto}, { + &scc_info_Reservation_flyteidl_2fdatacatalog_2fdatacatalog_2eproto.base,}}; static void InitDefaultsReleaseReservationRequest_flyteidl_2fdatacatalog_2fdatacatalog_2eproto() { GOOGLE_PROTOBUF_VERIFY_VERSION; @@ -498,7 +483,7 @@ static void InitDefaultsReleaseReservationRequest_flyteidl_2fdatacatalog_2fdatac ::google::protobuf::internal::SCCInfo<1> scc_info_ReleaseReservationRequest_flyteidl_2fdatacatalog_2fdatacatalog_2eproto = {{ATOMIC_VAR_INIT(::google::protobuf::internal::SCCInfoBase::kUninitialized), 1, InitDefaultsReleaseReservationRequest_flyteidl_2fdatacatalog_2fdatacatalog_2eproto}, { - &scc_info_DatasetID_flyteidl_2fdatacatalog_2fdatacatalog_2eproto.base,}}; + &scc_info_ReservationID_flyteidl_2fdatacatalog_2fdatacatalog_2eproto.base,}}; static void InitDefaultsReleaseReservationResponse_flyteidl_2fdatacatalog_2fdatacatalog_2eproto() { GOOGLE_PROTOBUF_VERIFY_VERSION; @@ -769,11 +754,10 @@ void InitDefaults_flyteidl_2fdatacatalog_2fdatacatalog_2eproto() { ::google::protobuf::internal::InitSCC(&scc_info_ListArtifactsResponse_flyteidl_2fdatacatalog_2fdatacatalog_2eproto.base); ::google::protobuf::internal::InitSCC(&scc_info_ListDatasetsRequest_flyteidl_2fdatacatalog_2fdatacatalog_2eproto.base); ::google::protobuf::internal::InitSCC(&scc_info_ListDatasetsResponse_flyteidl_2fdatacatalog_2fdatacatalog_2eproto.base); - ::google::protobuf::internal::InitSCC(&scc_info_GetOrReserveArtifactRequest_flyteidl_2fdatacatalog_2fdatacatalog_2eproto.base); - ::google::protobuf::internal::InitSCC(&scc_info_ReservationStatus_flyteidl_2fdatacatalog_2fdatacatalog_2eproto.base); - ::google::protobuf::internal::InitSCC(&scc_info_GetOrReserveArtifactResponse_flyteidl_2fdatacatalog_2fdatacatalog_2eproto.base); - ::google::protobuf::internal::InitSCC(&scc_info_ExtendReservationRequest_flyteidl_2fdatacatalog_2fdatacatalog_2eproto.base); - ::google::protobuf::internal::InitSCC(&scc_info_ExtendReservationResponse_flyteidl_2fdatacatalog_2fdatacatalog_2eproto.base); + ::google::protobuf::internal::InitSCC(&scc_info_ReservationID_flyteidl_2fdatacatalog_2fdatacatalog_2eproto.base); + ::google::protobuf::internal::InitSCC(&scc_info_GetOrExtendReservationRequest_flyteidl_2fdatacatalog_2fdatacatalog_2eproto.base); + ::google::protobuf::internal::InitSCC(&scc_info_Reservation_flyteidl_2fdatacatalog_2fdatacatalog_2eproto.base); + ::google::protobuf::internal::InitSCC(&scc_info_GetOrExtendReservationResponse_flyteidl_2fdatacatalog_2fdatacatalog_2eproto.base); ::google::protobuf::internal::InitSCC(&scc_info_ReleaseReservationRequest_flyteidl_2fdatacatalog_2fdatacatalog_2eproto.base); ::google::protobuf::internal::InitSCC(&scc_info_ReleaseReservationResponse_flyteidl_2fdatacatalog_2fdatacatalog_2eproto.base); ::google::protobuf::internal::InitSCC(&scc_info_Dataset_flyteidl_2fdatacatalog_2fdatacatalog_2eproto.base); @@ -794,8 +778,8 @@ void InitDefaults_flyteidl_2fdatacatalog_2fdatacatalog_2eproto() { ::google::protobuf::internal::InitSCC(&scc_info_PaginationOptions_flyteidl_2fdatacatalog_2fdatacatalog_2eproto.base); } -::google::protobuf::Metadata file_level_metadata_flyteidl_2fdatacatalog_2fdatacatalog_2eproto[37]; -const ::google::protobuf::EnumDescriptor* file_level_enum_descriptors_flyteidl_2fdatacatalog_2fdatacatalog_2eproto[4]; +::google::protobuf::Metadata file_level_metadata_flyteidl_2fdatacatalog_2fdatacatalog_2eproto[36]; +const ::google::protobuf::EnumDescriptor* file_level_enum_descriptors_flyteidl_2fdatacatalog_2fdatacatalog_2eproto[3]; constexpr ::google::protobuf::ServiceDescriptor const** file_level_service_descriptors_flyteidl_2fdatacatalog_2fdatacatalog_2eproto = nullptr; const ::google::protobuf::uint32 TableStruct_flyteidl_2fdatacatalog_2fdatacatalog_2eproto::offsets[] PROTOBUF_SECTION_VARIABLE(protodesc_cold) = { @@ -889,49 +873,42 @@ const ::google::protobuf::uint32 TableStruct_flyteidl_2fdatacatalog_2fdatacatalo PROTOBUF_FIELD_OFFSET(::datacatalog::ListDatasetsResponse, datasets_), PROTOBUF_FIELD_OFFSET(::datacatalog::ListDatasetsResponse, next_token_), ~0u, // no _has_bits_ - PROTOBUF_FIELD_OFFSET(::datacatalog::GetOrReserveArtifactRequest, _internal_metadata_), + PROTOBUF_FIELD_OFFSET(::datacatalog::ReservationID, _internal_metadata_), ~0u, // no _extensions_ ~0u, // no _oneof_case_ ~0u, // no _weak_field_map_ - PROTOBUF_FIELD_OFFSET(::datacatalog::GetOrReserveArtifactRequest, dataset_id_), - PROTOBUF_FIELD_OFFSET(::datacatalog::GetOrReserveArtifactRequest, tag_name_), - PROTOBUF_FIELD_OFFSET(::datacatalog::GetOrReserveArtifactRequest, owner_id_), + PROTOBUF_FIELD_OFFSET(::datacatalog::ReservationID, dataset_id_), + PROTOBUF_FIELD_OFFSET(::datacatalog::ReservationID, tag_name_), ~0u, // no _has_bits_ - PROTOBUF_FIELD_OFFSET(::datacatalog::ReservationStatus, _internal_metadata_), + PROTOBUF_FIELD_OFFSET(::datacatalog::GetOrExtendReservationRequest, _internal_metadata_), ~0u, // no _extensions_ ~0u, // no _oneof_case_ ~0u, // no _weak_field_map_ - PROTOBUF_FIELD_OFFSET(::datacatalog::ReservationStatus, state_), - PROTOBUF_FIELD_OFFSET(::datacatalog::ReservationStatus, metadata_), - PROTOBUF_FIELD_OFFSET(::datacatalog::ReservationStatus, owner_id_), - ~0u, // no _has_bits_ - PROTOBUF_FIELD_OFFSET(::datacatalog::GetOrReserveArtifactResponse, _internal_metadata_), - ~0u, // no _extensions_ - PROTOBUF_FIELD_OFFSET(::datacatalog::GetOrReserveArtifactResponse, _oneof_case_[0]), - ~0u, // no _weak_field_map_ - offsetof(::datacatalog::GetOrReserveArtifactResponseDefaultTypeInternal, artifact_), - offsetof(::datacatalog::GetOrReserveArtifactResponseDefaultTypeInternal, reservation_status_), - PROTOBUF_FIELD_OFFSET(::datacatalog::GetOrReserveArtifactResponse, value_), + PROTOBUF_FIELD_OFFSET(::datacatalog::GetOrExtendReservationRequest, reservation_id_), + PROTOBUF_FIELD_OFFSET(::datacatalog::GetOrExtendReservationRequest, owner_id_), + PROTOBUF_FIELD_OFFSET(::datacatalog::GetOrExtendReservationRequest, heartbeat_interval_), ~0u, // no _has_bits_ - PROTOBUF_FIELD_OFFSET(::datacatalog::ExtendReservationRequest, _internal_metadata_), + PROTOBUF_FIELD_OFFSET(::datacatalog::Reservation, _internal_metadata_), ~0u, // no _extensions_ ~0u, // no _oneof_case_ ~0u, // no _weak_field_map_ - PROTOBUF_FIELD_OFFSET(::datacatalog::ExtendReservationRequest, dataset_id_), - PROTOBUF_FIELD_OFFSET(::datacatalog::ExtendReservationRequest, tag_name_), - PROTOBUF_FIELD_OFFSET(::datacatalog::ExtendReservationRequest, owner_id_), + PROTOBUF_FIELD_OFFSET(::datacatalog::Reservation, reservation_id_), + PROTOBUF_FIELD_OFFSET(::datacatalog::Reservation, owner_id_), + PROTOBUF_FIELD_OFFSET(::datacatalog::Reservation, heartbeat_interval_), + PROTOBUF_FIELD_OFFSET(::datacatalog::Reservation, expires_at_), + PROTOBUF_FIELD_OFFSET(::datacatalog::Reservation, metadata_), ~0u, // no _has_bits_ - PROTOBUF_FIELD_OFFSET(::datacatalog::ExtendReservationResponse, _internal_metadata_), + PROTOBUF_FIELD_OFFSET(::datacatalog::GetOrExtendReservationResponse, _internal_metadata_), ~0u, // no _extensions_ ~0u, // no _oneof_case_ ~0u, // no _weak_field_map_ + PROTOBUF_FIELD_OFFSET(::datacatalog::GetOrExtendReservationResponse, reservation_), ~0u, // no _has_bits_ PROTOBUF_FIELD_OFFSET(::datacatalog::ReleaseReservationRequest, _internal_metadata_), ~0u, // no _extensions_ ~0u, // no _oneof_case_ ~0u, // no _weak_field_map_ - PROTOBUF_FIELD_OFFSET(::datacatalog::ReleaseReservationRequest, dataset_id_), - PROTOBUF_FIELD_OFFSET(::datacatalog::ReleaseReservationRequest, tag_name_), + PROTOBUF_FIELD_OFFSET(::datacatalog::ReleaseReservationRequest, reservation_id_), PROTOBUF_FIELD_OFFSET(::datacatalog::ReleaseReservationRequest, owner_id_), ~0u, // no _has_bits_ PROTOBUF_FIELD_OFFSET(::datacatalog::ReleaseReservationResponse, _internal_metadata_), @@ -1085,29 +1062,28 @@ static const ::google::protobuf::internal::MigrationSchema schemas[] PROTOBUF_SE { 68, -1, sizeof(::datacatalog::ListArtifactsResponse)}, { 75, -1, sizeof(::datacatalog::ListDatasetsRequest)}, { 82, -1, sizeof(::datacatalog::ListDatasetsResponse)}, - { 89, -1, sizeof(::datacatalog::GetOrReserveArtifactRequest)}, - { 97, -1, sizeof(::datacatalog::ReservationStatus)}, - { 105, -1, sizeof(::datacatalog::GetOrReserveArtifactResponse)}, - { 113, -1, sizeof(::datacatalog::ExtendReservationRequest)}, - { 121, -1, sizeof(::datacatalog::ExtendReservationResponse)}, - { 126, -1, sizeof(::datacatalog::ReleaseReservationRequest)}, - { 134, -1, sizeof(::datacatalog::ReleaseReservationResponse)}, - { 139, -1, sizeof(::datacatalog::Dataset)}, - { 147, -1, sizeof(::datacatalog::Partition)}, - { 154, -1, sizeof(::datacatalog::DatasetID)}, - { 164, -1, sizeof(::datacatalog::Artifact)}, - { 176, -1, sizeof(::datacatalog::ArtifactData)}, - { 183, -1, sizeof(::datacatalog::Tag)}, - { 191, 198, sizeof(::datacatalog::Metadata_KeyMapEntry_DoNotUse)}, - { 200, -1, sizeof(::datacatalog::Metadata)}, - { 206, -1, sizeof(::datacatalog::FilterExpression)}, - { 212, -1, sizeof(::datacatalog::SinglePropertyFilter)}, - { 223, -1, sizeof(::datacatalog::ArtifactPropertyFilter)}, - { 230, -1, sizeof(::datacatalog::TagPropertyFilter)}, - { 237, -1, sizeof(::datacatalog::PartitionPropertyFilter)}, - { 244, -1, sizeof(::datacatalog::KeyValuePair)}, - { 251, -1, sizeof(::datacatalog::DatasetPropertyFilter)}, - { 261, -1, sizeof(::datacatalog::PaginationOptions)}, + { 89, -1, sizeof(::datacatalog::ReservationID)}, + { 96, -1, sizeof(::datacatalog::GetOrExtendReservationRequest)}, + { 104, -1, sizeof(::datacatalog::Reservation)}, + { 114, -1, sizeof(::datacatalog::GetOrExtendReservationResponse)}, + { 120, -1, sizeof(::datacatalog::ReleaseReservationRequest)}, + { 127, -1, sizeof(::datacatalog::ReleaseReservationResponse)}, + { 132, -1, sizeof(::datacatalog::Dataset)}, + { 140, -1, sizeof(::datacatalog::Partition)}, + { 147, -1, sizeof(::datacatalog::DatasetID)}, + { 157, -1, sizeof(::datacatalog::Artifact)}, + { 169, -1, sizeof(::datacatalog::ArtifactData)}, + { 176, -1, sizeof(::datacatalog::Tag)}, + { 184, 191, sizeof(::datacatalog::Metadata_KeyMapEntry_DoNotUse)}, + { 193, -1, sizeof(::datacatalog::Metadata)}, + { 199, -1, sizeof(::datacatalog::FilterExpression)}, + { 205, -1, sizeof(::datacatalog::SinglePropertyFilter)}, + { 216, -1, sizeof(::datacatalog::ArtifactPropertyFilter)}, + { 223, -1, sizeof(::datacatalog::TagPropertyFilter)}, + { 230, -1, sizeof(::datacatalog::PartitionPropertyFilter)}, + { 237, -1, sizeof(::datacatalog::KeyValuePair)}, + { 244, -1, sizeof(::datacatalog::DatasetPropertyFilter)}, + { 254, -1, sizeof(::datacatalog::PaginationOptions)}, }; static ::google::protobuf::Message const * const file_default_instances[] = { @@ -1125,11 +1101,10 @@ static ::google::protobuf::Message const * const file_default_instances[] = { reinterpret_cast(&::datacatalog::_ListArtifactsResponse_default_instance_), reinterpret_cast(&::datacatalog::_ListDatasetsRequest_default_instance_), reinterpret_cast(&::datacatalog::_ListDatasetsResponse_default_instance_), - reinterpret_cast(&::datacatalog::_GetOrReserveArtifactRequest_default_instance_), - reinterpret_cast(&::datacatalog::_ReservationStatus_default_instance_), - reinterpret_cast(&::datacatalog::_GetOrReserveArtifactResponse_default_instance_), - reinterpret_cast(&::datacatalog::_ExtendReservationRequest_default_instance_), - reinterpret_cast(&::datacatalog::_ExtendReservationResponse_default_instance_), + reinterpret_cast(&::datacatalog::_ReservationID_default_instance_), + reinterpret_cast(&::datacatalog::_GetOrExtendReservationRequest_default_instance_), + reinterpret_cast(&::datacatalog::_Reservation_default_instance_), + reinterpret_cast(&::datacatalog::_GetOrExtendReservationResponse_default_instance_), reinterpret_cast(&::datacatalog::_ReleaseReservationRequest_default_instance_), reinterpret_cast(&::datacatalog::_ReleaseReservationResponse_default_instance_), reinterpret_cast(&::datacatalog::_Dataset_default_instance_), @@ -1153,169 +1128,146 @@ static ::google::protobuf::Message const * const file_default_instances[] = { ::google::protobuf::internal::AssignDescriptorsTable assign_descriptors_table_flyteidl_2fdatacatalog_2fdatacatalog_2eproto = { {}, AddDescriptors_flyteidl_2fdatacatalog_2fdatacatalog_2eproto, "flyteidl/datacatalog/datacatalog.proto", schemas, file_default_instances, TableStruct_flyteidl_2fdatacatalog_2fdatacatalog_2eproto::offsets, - file_level_metadata_flyteidl_2fdatacatalog_2fdatacatalog_2eproto, 37, file_level_enum_descriptors_flyteidl_2fdatacatalog_2fdatacatalog_2eproto, file_level_service_descriptors_flyteidl_2fdatacatalog_2fdatacatalog_2eproto, + file_level_metadata_flyteidl_2fdatacatalog_2fdatacatalog_2eproto, 36, file_level_enum_descriptors_flyteidl_2fdatacatalog_2fdatacatalog_2eproto, file_level_service_descriptors_flyteidl_2fdatacatalog_2fdatacatalog_2eproto, }; const char descriptor_table_protodef_flyteidl_2fdatacatalog_2fdatacatalog_2eproto[] = "\n&flyteidl/datacatalog/datacatalog.proto" "\022\013datacatalog\032\034flyteidl/core/literals.pr" - "oto\032\037google/protobuf/timestamp.proto\"=\n\024" - "CreateDatasetRequest\022%\n\007dataset\030\001 \001(\0132\024." - "datacatalog.Dataset\"\027\n\025CreateDatasetResp" - "onse\"<\n\021GetDatasetRequest\022\'\n\007dataset\030\001 \001" - "(\0132\026.datacatalog.DatasetID\";\n\022GetDataset" - "Response\022%\n\007dataset\030\001 \001(\0132\024.datacatalog." - "Dataset\"x\n\022GetArtifactRequest\022\'\n\007dataset" - "\030\001 \001(\0132\026.datacatalog.DatasetID\022\025\n\013artifa" - "ct_id\030\002 \001(\tH\000\022\022\n\010tag_name\030\003 \001(\tH\000B\016\n\014que" - "ry_handle\">\n\023GetArtifactResponse\022\'\n\010arti" - "fact\030\001 \001(\0132\025.datacatalog.Artifact\"@\n\025Cre" - "ateArtifactRequest\022\'\n\010artifact\030\001 \001(\0132\025.d" - "atacatalog.Artifact\"\030\n\026CreateArtifactRes" - "ponse\".\n\rAddTagRequest\022\035\n\003tag\030\001 \001(\0132\020.da" - "tacatalog.Tag\"\020\n\016AddTagResponse\"\242\001\n\024List" - "ArtifactsRequest\022\'\n\007dataset\030\001 \001(\0132\026.data" - "catalog.DatasetID\022-\n\006filter\030\002 \001(\0132\035.data" - "catalog.FilterExpression\0222\n\npagination\030\003" - " \001(\0132\036.datacatalog.PaginationOptions\"U\n\025" - "ListArtifactsResponse\022(\n\tartifacts\030\001 \003(\013" - "2\025.datacatalog.Artifact\022\022\n\nnext_token\030\002 " - "\001(\t\"x\n\023ListDatasetsRequest\022-\n\006filter\030\001 \001" - "(\0132\035.datacatalog.FilterExpression\0222\n\npag" - "ination\030\002 \001(\0132\036.datacatalog.PaginationOp" - "tions\"R\n\024ListDatasetsResponse\022&\n\010dataset" - "s\030\001 \003(\0132\024.datacatalog.Dataset\022\022\n\nnext_to" - "ken\030\002 \001(\t\"m\n\033GetOrReserveArtifactRequest" - "\022*\n\ndataset_id\030\001 \001(\0132\026.datacatalog.Datas" - "etID\022\020\n\010tag_name\030\002 \001(\t\022\020\n\010owner_id\030\003 \001(\t" - "\"\263\001\n\021ReservationStatus\0223\n\005state\030\001 \001(\0162$." - "datacatalog.ReservationStatus.State\022\'\n\010m" - "etadata\030\002 \001(\0132\025.datacatalog.Metadata\022\020\n\010" - "owner_id\030\003 \001(\t\".\n\005State\022\014\n\010ACQUIRED\020\000\022\027\n" - "\023ALREADY_IN_PROGRESS\020\001\"\220\001\n\034GetOrReserveA" - "rtifactResponse\022)\n\010artifact\030\001 \001(\0132\025.data" - "catalog.ArtifactH\000\022<\n\022reservation_status" - "\030\002 \001(\0132\036.datacatalog.ReservationStatusH\000" - "B\007\n\005value\"j\n\030ExtendReservationRequest\022*\n" - "\ndataset_id\030\001 \001(\0132\026.datacatalog.DatasetI" - "D\022\020\n\010tag_name\030\002 \001(\t\022\020\n\010owner_id\030\003 \001(\t\"\033\n" - "\031ExtendReservationResponse\"k\n\031ReleaseRes" - "ervationRequest\022*\n\ndataset_id\030\001 \001(\0132\026.da" - "tacatalog.DatasetID\022\020\n\010tag_name\030\002 \001(\t\022\020\n" - "\010owner_id\030\003 \001(\t\"\034\n\032ReleaseReservationRes" - "ponse\"m\n\007Dataset\022\"\n\002id\030\001 \001(\0132\026.datacatal" - "og.DatasetID\022\'\n\010metadata\030\002 \001(\0132\025.datacat" - "alog.Metadata\022\025\n\rpartitionKeys\030\003 \003(\t\"\'\n\t" - "Partition\022\013\n\003key\030\001 \001(\t\022\r\n\005value\030\002 \001(\t\"Y\n" - "\tDatasetID\022\017\n\007project\030\001 \001(\t\022\014\n\004name\030\002 \001(" - "\t\022\016\n\006domain\030\003 \001(\t\022\017\n\007version\030\004 \001(\t\022\014\n\004UU" - "ID\030\005 \001(\t\"\215\002\n\010Artifact\022\n\n\002id\030\001 \001(\t\022\'\n\007dat" - "aset\030\002 \001(\0132\026.datacatalog.DatasetID\022\'\n\004da" - "ta\030\003 \003(\0132\031.datacatalog.ArtifactData\022\'\n\010m" - "etadata\030\004 \001(\0132\025.datacatalog.Metadata\022*\n\n" - "partitions\030\005 \003(\0132\026.datacatalog.Partition" - "\022\036\n\004tags\030\006 \003(\0132\020.datacatalog.Tag\022.\n\ncrea" - "ted_at\030\007 \001(\0132\032.google.protobuf.Timestamp" - "\"C\n\014ArtifactData\022\014\n\004name\030\001 \001(\t\022%\n\005value\030" - "\002 \001(\0132\026.flyteidl.core.Literal\"Q\n\003Tag\022\014\n\004" - "name\030\001 \001(\t\022\023\n\013artifact_id\030\002 \001(\t\022\'\n\007datas" - "et\030\003 \001(\0132\026.datacatalog.DatasetID\"m\n\010Meta" - "data\0222\n\007key_map\030\001 \003(\0132!.datacatalog.Meta" - "data.KeyMapEntry\032-\n\013KeyMapEntry\022\013\n\003key\030\001" - " \001(\t\022\r\n\005value\030\002 \001(\t:\0028\001\"F\n\020FilterExpress" - "ion\0222\n\007filters\030\001 \003(\0132!.datacatalog.Singl" - "ePropertyFilter\"\211\003\n\024SinglePropertyFilter" - "\0224\n\ntag_filter\030\001 \001(\0132\036.datacatalog.TagPr" - "opertyFilterH\000\022@\n\020partition_filter\030\002 \001(\013" - "2$.datacatalog.PartitionPropertyFilterH\000" - "\022>\n\017artifact_filter\030\003 \001(\0132#.datacatalog." - "ArtifactPropertyFilterH\000\022<\n\016dataset_filt" - "er\030\004 \001(\0132\".datacatalog.DatasetPropertyFi" - "lterH\000\022F\n\010operator\030\n \001(\01624.datacatalog.S" - "inglePropertyFilter.ComparisonOperator\" " - "\n\022ComparisonOperator\022\n\n\006EQUALS\020\000B\021\n\017prop" - "erty_filter\";\n\026ArtifactPropertyFilter\022\025\n" - "\013artifact_id\030\001 \001(\tH\000B\n\n\010property\"3\n\021TagP" - "ropertyFilter\022\022\n\010tag_name\030\001 \001(\tH\000B\n\n\010pro" - "perty\"S\n\027PartitionPropertyFilter\022,\n\007key_" - "val\030\001 \001(\0132\031.datacatalog.KeyValuePairH\000B\n" - "\n\010property\"*\n\014KeyValuePair\022\013\n\003key\030\001 \001(\t\022" - "\r\n\005value\030\002 \001(\t\"k\n\025DatasetPropertyFilter\022" - "\021\n\007project\030\001 \001(\tH\000\022\016\n\004name\030\002 \001(\tH\000\022\020\n\006do" - "main\030\003 \001(\tH\000\022\021\n\007version\030\004 \001(\tH\000B\n\n\010prope" - "rty\"\361\001\n\021PaginationOptions\022\r\n\005limit\030\001 \001(\r" - "\022\r\n\005token\030\002 \001(\t\0227\n\007sortKey\030\003 \001(\0162&.datac" - "atalog.PaginationOptions.SortKey\022;\n\tsort" - "Order\030\004 \001(\0162(.datacatalog.PaginationOpti" - "ons.SortOrder\"*\n\tSortOrder\022\016\n\nDESCENDING" - "\020\000\022\r\n\tASCENDING\020\001\"\034\n\007SortKey\022\021\n\rCREATION" - "_TIME\020\0002\211\007\n\013DataCatalog\022V\n\rCreateDataset" - "\022!.datacatalog.CreateDatasetRequest\032\".da" - "tacatalog.CreateDatasetResponse\022M\n\nGetDa" - "taset\022\036.datacatalog.GetDatasetRequest\032\037." - "datacatalog.GetDatasetResponse\022Y\n\016Create" - "Artifact\022\".datacatalog.CreateArtifactReq" - "uest\032#.datacatalog.CreateArtifactRespons" - "e\022P\n\013GetArtifact\022\037.datacatalog.GetArtifa" - "ctRequest\032 .datacatalog.GetArtifactRespo" - "nse\022A\n\006AddTag\022\032.datacatalog.AddTagReques" - "t\032\033.datacatalog.AddTagResponse\022V\n\rListAr" - "tifacts\022!.datacatalog.ListArtifactsReque" - "st\032\".datacatalog.ListArtifactsResponse\022S" - "\n\014ListDatasets\022 .datacatalog.ListDataset" - "sRequest\032!.datacatalog.ListDatasetsRespo" - "nse\022k\n\024GetOrReserveArtifact\022(.datacatalo" - "g.GetOrReserveArtifactRequest\032).datacata" - "log.GetOrReserveArtifactResponse\022b\n\021Exte" - "ndReservation\022%.datacatalog.ExtendReserv" - "ationRequest\032&.datacatalog.ExtendReserva" - "tionResponse\022e\n\022ReleaseReservation\022&.dat" - "acatalog.ReleaseReservationRequest\032\'.dat" - "acatalog.ReleaseReservationResponseb\006pro" - "to3" + "oto\032\036google/protobuf/duration.proto\032\037goo" + "gle/protobuf/timestamp.proto\"=\n\024CreateDa" + "tasetRequest\022%\n\007dataset\030\001 \001(\0132\024.datacata" + "log.Dataset\"\027\n\025CreateDatasetResponse\"<\n\021" + "GetDatasetRequest\022\'\n\007dataset\030\001 \001(\0132\026.dat" + "acatalog.DatasetID\";\n\022GetDatasetResponse" + "\022%\n\007dataset\030\001 \001(\0132\024.datacatalog.Dataset\"" + "x\n\022GetArtifactRequest\022\'\n\007dataset\030\001 \001(\0132\026" + ".datacatalog.DatasetID\022\025\n\013artifact_id\030\002 " + "\001(\tH\000\022\022\n\010tag_name\030\003 \001(\tH\000B\016\n\014query_handl" + "e\">\n\023GetArtifactResponse\022\'\n\010artifact\030\001 \001" + "(\0132\025.datacatalog.Artifact\"@\n\025CreateArtif" + "actRequest\022\'\n\010artifact\030\001 \001(\0132\025.datacatal" + "og.Artifact\"\030\n\026CreateArtifactResponse\".\n" + "\rAddTagRequest\022\035\n\003tag\030\001 \001(\0132\020.datacatalo" + "g.Tag\"\020\n\016AddTagResponse\"\242\001\n\024ListArtifact" + "sRequest\022\'\n\007dataset\030\001 \001(\0132\026.datacatalog." + "DatasetID\022-\n\006filter\030\002 \001(\0132\035.datacatalog." + "FilterExpression\0222\n\npagination\030\003 \001(\0132\036.d" + "atacatalog.PaginationOptions\"U\n\025ListArti" + "factsResponse\022(\n\tartifacts\030\001 \003(\0132\025.datac" + "atalog.Artifact\022\022\n\nnext_token\030\002 \001(\t\"x\n\023L" + "istDatasetsRequest\022-\n\006filter\030\001 \001(\0132\035.dat" + "acatalog.FilterExpression\0222\n\npagination\030" + "\002 \001(\0132\036.datacatalog.PaginationOptions\"R\n" + "\024ListDatasetsResponse\022&\n\010datasets\030\001 \003(\0132" + "\024.datacatalog.Dataset\022\022\n\nnext_token\030\002 \001(" + "\t\"M\n\rReservationID\022*\n\ndataset_id\030\001 \001(\0132\026" + ".datacatalog.DatasetID\022\020\n\010tag_name\030\002 \001(\t" + "\"\234\001\n\035GetOrExtendReservationRequest\0222\n\016re" + "servation_id\030\001 \001(\0132\032.datacatalog.Reserva" + "tionID\022\020\n\010owner_id\030\002 \001(\t\0225\n\022heartbeat_in" + "terval\030\003 \001(\0132\031.google.protobuf.Duration\"" + "\343\001\n\013Reservation\0222\n\016reservation_id\030\001 \001(\0132" + "\032.datacatalog.ReservationID\022\020\n\010owner_id\030" + "\002 \001(\t\0225\n\022heartbeat_interval\030\003 \001(\0132\031.goog" + "le.protobuf.Duration\022.\n\nexpires_at\030\004 \001(\013" + "2\032.google.protobuf.Timestamp\022\'\n\010metadata" + "\030\006 \001(\0132\025.datacatalog.Metadata\"O\n\036GetOrEx" + "tendReservationResponse\022-\n\013reservation\030\001" + " \001(\0132\030.datacatalog.Reservation\"a\n\031Releas" + "eReservationRequest\0222\n\016reservation_id\030\001 " + "\001(\0132\032.datacatalog.ReservationID\022\020\n\010owner" + "_id\030\002 \001(\t\"\034\n\032ReleaseReservationResponse\"" + "m\n\007Dataset\022\"\n\002id\030\001 \001(\0132\026.datacatalog.Dat" + "asetID\022\'\n\010metadata\030\002 \001(\0132\025.datacatalog.M" + "etadata\022\025\n\rpartitionKeys\030\003 \003(\t\"\'\n\tPartit" + "ion\022\013\n\003key\030\001 \001(\t\022\r\n\005value\030\002 \001(\t\"Y\n\tDatas" + "etID\022\017\n\007project\030\001 \001(\t\022\014\n\004name\030\002 \001(\t\022\016\n\006d" + "omain\030\003 \001(\t\022\017\n\007version\030\004 \001(\t\022\014\n\004UUID\030\005 \001" + "(\t\"\215\002\n\010Artifact\022\n\n\002id\030\001 \001(\t\022\'\n\007dataset\030\002" + " \001(\0132\026.datacatalog.DatasetID\022\'\n\004data\030\003 \003" + "(\0132\031.datacatalog.ArtifactData\022\'\n\010metadat" + "a\030\004 \001(\0132\025.datacatalog.Metadata\022*\n\npartit" + "ions\030\005 \003(\0132\026.datacatalog.Partition\022\036\n\004ta" + "gs\030\006 \003(\0132\020.datacatalog.Tag\022.\n\ncreated_at" + "\030\007 \001(\0132\032.google.protobuf.Timestamp\"C\n\014Ar" + "tifactData\022\014\n\004name\030\001 \001(\t\022%\n\005value\030\002 \001(\0132" + "\026.flyteidl.core.Literal\"Q\n\003Tag\022\014\n\004name\030\001" + " \001(\t\022\023\n\013artifact_id\030\002 \001(\t\022\'\n\007dataset\030\003 \001" + "(\0132\026.datacatalog.DatasetID\"m\n\010Metadata\0222" + "\n\007key_map\030\001 \003(\0132!.datacatalog.Metadata.K" + "eyMapEntry\032-\n\013KeyMapEntry\022\013\n\003key\030\001 \001(\t\022\r" + "\n\005value\030\002 \001(\t:\0028\001\"F\n\020FilterExpression\0222\n" + "\007filters\030\001 \003(\0132!.datacatalog.SinglePrope" + "rtyFilter\"\211\003\n\024SinglePropertyFilter\0224\n\nta" + "g_filter\030\001 \001(\0132\036.datacatalog.TagProperty" + "FilterH\000\022@\n\020partition_filter\030\002 \001(\0132$.dat" + "acatalog.PartitionPropertyFilterH\000\022>\n\017ar" + "tifact_filter\030\003 \001(\0132#.datacatalog.Artifa" + "ctPropertyFilterH\000\022<\n\016dataset_filter\030\004 \001" + "(\0132\".datacatalog.DatasetPropertyFilterH\000" + "\022F\n\010operator\030\n \001(\01624.datacatalog.SingleP" + "ropertyFilter.ComparisonOperator\" \n\022Comp" + "arisonOperator\022\n\n\006EQUALS\020\000B\021\n\017property_f" + "ilter\";\n\026ArtifactPropertyFilter\022\025\n\013artif" + "act_id\030\001 \001(\tH\000B\n\n\010property\"3\n\021TagPropert" + "yFilter\022\022\n\010tag_name\030\001 \001(\tH\000B\n\n\010property\"" + "S\n\027PartitionPropertyFilter\022,\n\007key_val\030\001 " + "\001(\0132\031.datacatalog.KeyValuePairH\000B\n\n\010prop" + "erty\"*\n\014KeyValuePair\022\013\n\003key\030\001 \001(\t\022\r\n\005val" + "ue\030\002 \001(\t\"k\n\025DatasetPropertyFilter\022\021\n\007pro" + "ject\030\001 \001(\tH\000\022\016\n\004name\030\002 \001(\tH\000\022\020\n\006domain\030\003" + " \001(\tH\000\022\021\n\007version\030\004 \001(\tH\000B\n\n\010property\"\361\001" + "\n\021PaginationOptions\022\r\n\005limit\030\001 \001(\r\022\r\n\005to" + "ken\030\002 \001(\t\0227\n\007sortKey\030\003 \001(\0162&.datacatalog" + ".PaginationOptions.SortKey\022;\n\tsortOrder\030" + "\004 \001(\0162(.datacatalog.PaginationOptions.So" + "rtOrder\"*\n\tSortOrder\022\016\n\nDESCENDING\020\000\022\r\n\t" + "ASCENDING\020\001\"\034\n\007SortKey\022\021\n\rCREATION_TIME\020" + "\0002\253\006\n\013DataCatalog\022V\n\rCreateDataset\022!.dat" + "acatalog.CreateDatasetRequest\032\".datacata" + "log.CreateDatasetResponse\022M\n\nGetDataset\022" + "\036.datacatalog.GetDatasetRequest\032\037.dataca" + "talog.GetDatasetResponse\022Y\n\016CreateArtifa" + "ct\022\".datacatalog.CreateArtifactRequest\032#" + ".datacatalog.CreateArtifactResponse\022P\n\013G" + "etArtifact\022\037.datacatalog.GetArtifactRequ" + "est\032 .datacatalog.GetArtifactResponse\022A\n" + "\006AddTag\022\032.datacatalog.AddTagRequest\032\033.da" + "tacatalog.AddTagResponse\022V\n\rListArtifact" + "s\022!.datacatalog.ListArtifactsRequest\032\".d" + "atacatalog.ListArtifactsResponse\022S\n\014List" + "Datasets\022 .datacatalog.ListDatasetsReque" + "st\032!.datacatalog.ListDatasetsResponse\022q\n" + "\026GetOrExtendReservation\022*.datacatalog.Ge" + "tOrExtendReservationRequest\032+.datacatalo" + "g.GetOrExtendReservationResponse\022e\n\022Rele" + "aseReservation\022&.datacatalog.ReleaseRese" + "rvationRequest\032\'.datacatalog.ReleaseRese" + "rvationResponseb\006proto3" ; ::google::protobuf::internal::DescriptorTable descriptor_table_flyteidl_2fdatacatalog_2fdatacatalog_2eproto = { false, InitDefaults_flyteidl_2fdatacatalog_2fdatacatalog_2eproto, descriptor_table_protodef_flyteidl_2fdatacatalog_2fdatacatalog_2eproto, - "flyteidl/datacatalog/datacatalog.proto", &assign_descriptors_table_flyteidl_2fdatacatalog_2fdatacatalog_2eproto, 4603, + "flyteidl/datacatalog/datacatalog.proto", &assign_descriptors_table_flyteidl_2fdatacatalog_2fdatacatalog_2eproto, 4503, }; void AddDescriptors_flyteidl_2fdatacatalog_2fdatacatalog_2eproto() { - static constexpr ::google::protobuf::internal::InitFunc deps[2] = + static constexpr ::google::protobuf::internal::InitFunc deps[3] = { ::AddDescriptors_flyteidl_2fcore_2fliterals_2eproto, + ::AddDescriptors_google_2fprotobuf_2fduration_2eproto, ::AddDescriptors_google_2fprotobuf_2ftimestamp_2eproto, }; - ::google::protobuf::internal::AddDescriptors(&descriptor_table_flyteidl_2fdatacatalog_2fdatacatalog_2eproto, deps, 2); + ::google::protobuf::internal::AddDescriptors(&descriptor_table_flyteidl_2fdatacatalog_2fdatacatalog_2eproto, deps, 3); } // Force running AddDescriptors() at dynamic initialization time. static bool dynamic_init_dummy_flyteidl_2fdatacatalog_2fdatacatalog_2eproto = []() { AddDescriptors_flyteidl_2fdatacatalog_2fdatacatalog_2eproto(); return true; }(); namespace datacatalog { -const ::google::protobuf::EnumDescriptor* ReservationStatus_State_descriptor() { - ::google::protobuf::internal::AssignDescriptors(&assign_descriptors_table_flyteidl_2fdatacatalog_2fdatacatalog_2eproto); - return file_level_enum_descriptors_flyteidl_2fdatacatalog_2fdatacatalog_2eproto[0]; -} -bool ReservationStatus_State_IsValid(int value) { - switch (value) { - case 0: - case 1: - return true; - default: - return false; - } -} - -#if !defined(_MSC_VER) || _MSC_VER >= 1900 -const ReservationStatus_State ReservationStatus::ACQUIRED; -const ReservationStatus_State ReservationStatus::ALREADY_IN_PROGRESS; -const ReservationStatus_State ReservationStatus::State_MIN; -const ReservationStatus_State ReservationStatus::State_MAX; -const int ReservationStatus::State_ARRAYSIZE; -#endif // !defined(_MSC_VER) || _MSC_VER >= 1900 const ::google::protobuf::EnumDescriptor* SinglePropertyFilter_ComparisonOperator_descriptor() { ::google::protobuf::internal::AssignDescriptors(&assign_descriptors_table_flyteidl_2fdatacatalog_2fdatacatalog_2eproto); - return file_level_enum_descriptors_flyteidl_2fdatacatalog_2fdatacatalog_2eproto[1]; + return file_level_enum_descriptors_flyteidl_2fdatacatalog_2fdatacatalog_2eproto[0]; } bool SinglePropertyFilter_ComparisonOperator_IsValid(int value) { switch (value) { @@ -1334,7 +1286,7 @@ const int SinglePropertyFilter::ComparisonOperator_ARRAYSIZE; #endif // !defined(_MSC_VER) || _MSC_VER >= 1900 const ::google::protobuf::EnumDescriptor* PaginationOptions_SortOrder_descriptor() { ::google::protobuf::internal::AssignDescriptors(&assign_descriptors_table_flyteidl_2fdatacatalog_2fdatacatalog_2eproto); - return file_level_enum_descriptors_flyteidl_2fdatacatalog_2fdatacatalog_2eproto[2]; + return file_level_enum_descriptors_flyteidl_2fdatacatalog_2fdatacatalog_2eproto[1]; } bool PaginationOptions_SortOrder_IsValid(int value) { switch (value) { @@ -1355,7 +1307,7 @@ const int PaginationOptions::SortOrder_ARRAYSIZE; #endif // !defined(_MSC_VER) || _MSC_VER >= 1900 const ::google::protobuf::EnumDescriptor* PaginationOptions_SortKey_descriptor() { ::google::protobuf::internal::AssignDescriptors(&assign_descriptors_table_flyteidl_2fdatacatalog_2fdatacatalog_2eproto); - return file_level_enum_descriptors_flyteidl_2fdatacatalog_2fdatacatalog_2eproto[3]; + return file_level_enum_descriptors_flyteidl_2fdatacatalog_2fdatacatalog_2eproto[2]; } bool PaginationOptions_SortKey_IsValid(int value) { switch (value) { @@ -5687,31 +5639,30 @@ ::google::protobuf::Metadata ListDatasetsResponse::GetMetadata() const { // =================================================================== -void GetOrReserveArtifactRequest::InitAsDefaultInstance() { - ::datacatalog::_GetOrReserveArtifactRequest_default_instance_._instance.get_mutable()->dataset_id_ = const_cast< ::datacatalog::DatasetID*>( +void ReservationID::InitAsDefaultInstance() { + ::datacatalog::_ReservationID_default_instance_._instance.get_mutable()->dataset_id_ = const_cast< ::datacatalog::DatasetID*>( ::datacatalog::DatasetID::internal_default_instance()); } -class GetOrReserveArtifactRequest::HasBitSetters { +class ReservationID::HasBitSetters { public: - static const ::datacatalog::DatasetID& dataset_id(const GetOrReserveArtifactRequest* msg); + static const ::datacatalog::DatasetID& dataset_id(const ReservationID* msg); }; const ::datacatalog::DatasetID& -GetOrReserveArtifactRequest::HasBitSetters::dataset_id(const GetOrReserveArtifactRequest* msg) { +ReservationID::HasBitSetters::dataset_id(const ReservationID* msg) { return *msg->dataset_id_; } #if !defined(_MSC_VER) || _MSC_VER >= 1900 -const int GetOrReserveArtifactRequest::kDatasetIdFieldNumber; -const int GetOrReserveArtifactRequest::kTagNameFieldNumber; -const int GetOrReserveArtifactRequest::kOwnerIdFieldNumber; +const int ReservationID::kDatasetIdFieldNumber; +const int ReservationID::kTagNameFieldNumber; #endif // !defined(_MSC_VER) || _MSC_VER >= 1900 -GetOrReserveArtifactRequest::GetOrReserveArtifactRequest() +ReservationID::ReservationID() : ::google::protobuf::Message(), _internal_metadata_(nullptr) { SharedCtor(); - // @@protoc_insertion_point(constructor:datacatalog.GetOrReserveArtifactRequest) + // @@protoc_insertion_point(constructor:datacatalog.ReservationID) } -GetOrReserveArtifactRequest::GetOrReserveArtifactRequest(const GetOrReserveArtifactRequest& from) +ReservationID::ReservationID(const ReservationID& from) : ::google::protobuf::Message(), _internal_metadata_(nullptr) { _internal_metadata_.MergeFrom(from._internal_metadata_); @@ -5719,54 +5670,47 @@ GetOrReserveArtifactRequest::GetOrReserveArtifactRequest(const GetOrReserveArtif if (from.tag_name().size() > 0) { tag_name_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.tag_name_); } - owner_id_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited()); - if (from.owner_id().size() > 0) { - owner_id_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.owner_id_); - } if (from.has_dataset_id()) { dataset_id_ = new ::datacatalog::DatasetID(*from.dataset_id_); } else { dataset_id_ = nullptr; } - // @@protoc_insertion_point(copy_constructor:datacatalog.GetOrReserveArtifactRequest) + // @@protoc_insertion_point(copy_constructor:datacatalog.ReservationID) } -void GetOrReserveArtifactRequest::SharedCtor() { +void ReservationID::SharedCtor() { ::google::protobuf::internal::InitSCC( - &scc_info_GetOrReserveArtifactRequest_flyteidl_2fdatacatalog_2fdatacatalog_2eproto.base); + &scc_info_ReservationID_flyteidl_2fdatacatalog_2fdatacatalog_2eproto.base); tag_name_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited()); - owner_id_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited()); dataset_id_ = nullptr; } -GetOrReserveArtifactRequest::~GetOrReserveArtifactRequest() { - // @@protoc_insertion_point(destructor:datacatalog.GetOrReserveArtifactRequest) +ReservationID::~ReservationID() { + // @@protoc_insertion_point(destructor:datacatalog.ReservationID) SharedDtor(); } -void GetOrReserveArtifactRequest::SharedDtor() { +void ReservationID::SharedDtor() { tag_name_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited()); - owner_id_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited()); if (this != internal_default_instance()) delete dataset_id_; } -void GetOrReserveArtifactRequest::SetCachedSize(int size) const { +void ReservationID::SetCachedSize(int size) const { _cached_size_.Set(size); } -const GetOrReserveArtifactRequest& GetOrReserveArtifactRequest::default_instance() { - ::google::protobuf::internal::InitSCC(&::scc_info_GetOrReserveArtifactRequest_flyteidl_2fdatacatalog_2fdatacatalog_2eproto.base); +const ReservationID& ReservationID::default_instance() { + ::google::protobuf::internal::InitSCC(&::scc_info_ReservationID_flyteidl_2fdatacatalog_2fdatacatalog_2eproto.base); return *internal_default_instance(); } -void GetOrReserveArtifactRequest::Clear() { -// @@protoc_insertion_point(message_clear_start:datacatalog.GetOrReserveArtifactRequest) +void ReservationID::Clear() { +// @@protoc_insertion_point(message_clear_start:datacatalog.ReservationID) ::google::protobuf::uint32 cached_has_bits = 0; // Prevent compiler warnings about cached_has_bits being unused (void) cached_has_bits; tag_name_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited()); - owner_id_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited()); if (GetArenaNoVirtual() == nullptr && dataset_id_ != nullptr) { delete dataset_id_; } @@ -5775,9 +5719,9 @@ void GetOrReserveArtifactRequest::Clear() { } #if GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER -const char* GetOrReserveArtifactRequest::_InternalParse(const char* begin, const char* end, void* object, +const char* ReservationID::_InternalParse(const char* begin, const char* end, void* object, ::google::protobuf::internal::ParseContext* ctx) { - auto msg = static_cast(object); + auto msg = static_cast(object); ::google::protobuf::int32 size; (void)size; int depth; (void)depth; ::google::protobuf::uint32 tag; @@ -5805,7 +5749,7 @@ const char* GetOrReserveArtifactRequest::_InternalParse(const char* begin, const if (static_cast<::google::protobuf::uint8>(tag) != 18) goto handle_unusual; ptr = ::google::protobuf::io::ReadSize(ptr, &size); GOOGLE_PROTOBUF_PARSER_ASSERT(ptr); - ctx->extra_parse_data().SetFieldName("datacatalog.GetOrReserveArtifactRequest.tag_name"); + ctx->extra_parse_data().SetFieldName("datacatalog.ReservationID.tag_name"); object = msg->mutable_tag_name(); if (size > end - ptr + ::google::protobuf::internal::ParseContext::kSlopBytes) { parser_till_end = ::google::protobuf::internal::GreedyStringParserUTF8; @@ -5816,22 +5760,6 @@ const char* GetOrReserveArtifactRequest::_InternalParse(const char* begin, const ptr += size; break; } - // string owner_id = 3; - case 3: { - if (static_cast<::google::protobuf::uint8>(tag) != 26) goto handle_unusual; - ptr = ::google::protobuf::io::ReadSize(ptr, &size); - GOOGLE_PROTOBUF_PARSER_ASSERT(ptr); - ctx->extra_parse_data().SetFieldName("datacatalog.GetOrReserveArtifactRequest.owner_id"); - object = msg->mutable_owner_id(); - if (size > end - ptr + ::google::protobuf::internal::ParseContext::kSlopBytes) { - parser_till_end = ::google::protobuf::internal::GreedyStringParserUTF8; - goto string_till_end; - } - GOOGLE_PROTOBUF_PARSER_ASSERT(::google::protobuf::internal::StringCheckUTF8(ptr, size, ctx)); - ::google::protobuf::internal::InlineGreedyStringParser(object, ptr, size, ctx); - ptr += size; - break; - } default: { handle_unusual: if ((tag & 7) == 4 || tag == 0) { @@ -5856,11 +5784,11 @@ const char* GetOrReserveArtifactRequest::_InternalParse(const char* begin, const {parser_till_end, object}, size); } #else // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER -bool GetOrReserveArtifactRequest::MergePartialFromCodedStream( +bool ReservationID::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:datacatalog.GetOrReserveArtifactRequest) + // @@protoc_insertion_point(parse_start:datacatalog.ReservationID) for (;;) { ::std::pair<::google::protobuf::uint32, bool> p = input->ReadTagWithCutoffNoLastTag(127u); tag = p.first; @@ -5885,22 +5813,7 @@ bool GetOrReserveArtifactRequest::MergePartialFromCodedStream( DO_(::google::protobuf::internal::WireFormatLite::VerifyUtf8String( this->tag_name().data(), static_cast(this->tag_name().length()), ::google::protobuf::internal::WireFormatLite::PARSE, - "datacatalog.GetOrReserveArtifactRequest.tag_name")); - } else { - goto handle_unusual; - } - break; - } - - // string owner_id = 3; - case 3: { - if (static_cast< ::google::protobuf::uint8>(tag) == (26 & 0xFF)) { - DO_(::google::protobuf::internal::WireFormatLite::ReadString( - input, this->mutable_owner_id())); - DO_(::google::protobuf::internal::WireFormatLite::VerifyUtf8String( - this->owner_id().data(), static_cast(this->owner_id().length()), - ::google::protobuf::internal::WireFormatLite::PARSE, - "datacatalog.GetOrReserveArtifactRequest.owner_id")); + "datacatalog.ReservationID.tag_name")); } else { goto handle_unusual; } @@ -5919,18 +5832,18 @@ bool GetOrReserveArtifactRequest::MergePartialFromCodedStream( } } success: - // @@protoc_insertion_point(parse_success:datacatalog.GetOrReserveArtifactRequest) + // @@protoc_insertion_point(parse_success:datacatalog.ReservationID) return true; failure: - // @@protoc_insertion_point(parse_failure:datacatalog.GetOrReserveArtifactRequest) + // @@protoc_insertion_point(parse_failure:datacatalog.ReservationID) return false; #undef DO_ } #endif // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER -void GetOrReserveArtifactRequest::SerializeWithCachedSizes( +void ReservationID::SerializeWithCachedSizes( ::google::protobuf::io::CodedOutputStream* output) const { - // @@protoc_insertion_point(serialize_start:datacatalog.GetOrReserveArtifactRequest) + // @@protoc_insertion_point(serialize_start:datacatalog.ReservationID) ::google::protobuf::uint32 cached_has_bits = 0; (void) cached_has_bits; @@ -5945,31 +5858,21 @@ void GetOrReserveArtifactRequest::SerializeWithCachedSizes( ::google::protobuf::internal::WireFormatLite::VerifyUtf8String( this->tag_name().data(), static_cast(this->tag_name().length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, - "datacatalog.GetOrReserveArtifactRequest.tag_name"); + "datacatalog.ReservationID.tag_name"); ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased( 2, this->tag_name(), output); } - // string owner_id = 3; - if (this->owner_id().size() > 0) { - ::google::protobuf::internal::WireFormatLite::VerifyUtf8String( - this->owner_id().data(), static_cast(this->owner_id().length()), - ::google::protobuf::internal::WireFormatLite::SERIALIZE, - "datacatalog.GetOrReserveArtifactRequest.owner_id"); - ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased( - 3, this->owner_id(), output); - } - if (_internal_metadata_.have_unknown_fields()) { ::google::protobuf::internal::WireFormat::SerializeUnknownFields( _internal_metadata_.unknown_fields(), output); } - // @@protoc_insertion_point(serialize_end:datacatalog.GetOrReserveArtifactRequest) + // @@protoc_insertion_point(serialize_end:datacatalog.ReservationID) } -::google::protobuf::uint8* GetOrReserveArtifactRequest::InternalSerializeWithCachedSizesToArray( +::google::protobuf::uint8* ReservationID::InternalSerializeWithCachedSizesToArray( ::google::protobuf::uint8* target) const { - // @@protoc_insertion_point(serialize_to_array_start:datacatalog.GetOrReserveArtifactRequest) + // @@protoc_insertion_point(serialize_to_array_start:datacatalog.ReservationID) ::google::protobuf::uint32 cached_has_bits = 0; (void) cached_has_bits; @@ -5985,33 +5888,22 @@ ::google::protobuf::uint8* GetOrReserveArtifactRequest::InternalSerializeWithCac ::google::protobuf::internal::WireFormatLite::VerifyUtf8String( this->tag_name().data(), static_cast(this->tag_name().length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, - "datacatalog.GetOrReserveArtifactRequest.tag_name"); + "datacatalog.ReservationID.tag_name"); target = ::google::protobuf::internal::WireFormatLite::WriteStringToArray( 2, this->tag_name(), target); } - // string owner_id = 3; - if (this->owner_id().size() > 0) { - ::google::protobuf::internal::WireFormatLite::VerifyUtf8String( - this->owner_id().data(), static_cast(this->owner_id().length()), - ::google::protobuf::internal::WireFormatLite::SERIALIZE, - "datacatalog.GetOrReserveArtifactRequest.owner_id"); - target = - ::google::protobuf::internal::WireFormatLite::WriteStringToArray( - 3, this->owner_id(), 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:datacatalog.GetOrReserveArtifactRequest) + // @@protoc_insertion_point(serialize_to_array_end:datacatalog.ReservationID) return target; } -size_t GetOrReserveArtifactRequest::ByteSizeLong() const { -// @@protoc_insertion_point(message_byte_size_start:datacatalog.GetOrReserveArtifactRequest) +size_t ReservationID::ByteSizeLong() const { +// @@protoc_insertion_point(message_byte_size_start:datacatalog.ReservationID) size_t total_size = 0; if (_internal_metadata_.have_unknown_fields()) { @@ -6030,13 +5922,6 @@ size_t GetOrReserveArtifactRequest::ByteSizeLong() const { this->tag_name()); } - // string owner_id = 3; - if (this->owner_id().size() > 0) { - total_size += 1 + - ::google::protobuf::internal::WireFormatLite::StringSize( - this->owner_id()); - } - // .datacatalog.DatasetID dataset_id = 1; if (this->has_dataset_id()) { total_size += 1 + @@ -6049,23 +5934,23 @@ size_t GetOrReserveArtifactRequest::ByteSizeLong() const { return total_size; } -void GetOrReserveArtifactRequest::MergeFrom(const ::google::protobuf::Message& from) { -// @@protoc_insertion_point(generalized_merge_from_start:datacatalog.GetOrReserveArtifactRequest) +void ReservationID::MergeFrom(const ::google::protobuf::Message& from) { +// @@protoc_insertion_point(generalized_merge_from_start:datacatalog.ReservationID) GOOGLE_DCHECK_NE(&from, this); - const GetOrReserveArtifactRequest* source = - ::google::protobuf::DynamicCastToGenerated( + const ReservationID* source = + ::google::protobuf::DynamicCastToGenerated( &from); if (source == nullptr) { - // @@protoc_insertion_point(generalized_merge_from_cast_fail:datacatalog.GetOrReserveArtifactRequest) + // @@protoc_insertion_point(generalized_merge_from_cast_fail:datacatalog.ReservationID) ::google::protobuf::internal::ReflectionOps::Merge(from, this); } else { - // @@protoc_insertion_point(generalized_merge_from_cast_success:datacatalog.GetOrReserveArtifactRequest) + // @@protoc_insertion_point(generalized_merge_from_cast_success:datacatalog.ReservationID) MergeFrom(*source); } } -void GetOrReserveArtifactRequest::MergeFrom(const GetOrReserveArtifactRequest& from) { -// @@protoc_insertion_point(class_specific_merge_from_start:datacatalog.GetOrReserveArtifactRequest) +void ReservationID::MergeFrom(const ReservationID& from) { +// @@protoc_insertion_point(class_specific_merge_from_start:datacatalog.ReservationID) GOOGLE_DCHECK_NE(&from, this); _internal_metadata_.MergeFrom(from._internal_metadata_); ::google::protobuf::uint32 cached_has_bits = 0; @@ -6075,48 +5960,42 @@ void GetOrReserveArtifactRequest::MergeFrom(const GetOrReserveArtifactRequest& f tag_name_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.tag_name_); } - if (from.owner_id().size() > 0) { - - owner_id_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.owner_id_); - } if (from.has_dataset_id()) { mutable_dataset_id()->::datacatalog::DatasetID::MergeFrom(from.dataset_id()); } } -void GetOrReserveArtifactRequest::CopyFrom(const ::google::protobuf::Message& from) { -// @@protoc_insertion_point(generalized_copy_from_start:datacatalog.GetOrReserveArtifactRequest) +void ReservationID::CopyFrom(const ::google::protobuf::Message& from) { +// @@protoc_insertion_point(generalized_copy_from_start:datacatalog.ReservationID) if (&from == this) return; Clear(); MergeFrom(from); } -void GetOrReserveArtifactRequest::CopyFrom(const GetOrReserveArtifactRequest& from) { -// @@protoc_insertion_point(class_specific_copy_from_start:datacatalog.GetOrReserveArtifactRequest) +void ReservationID::CopyFrom(const ReservationID& from) { +// @@protoc_insertion_point(class_specific_copy_from_start:datacatalog.ReservationID) if (&from == this) return; Clear(); MergeFrom(from); } -bool GetOrReserveArtifactRequest::IsInitialized() const { +bool ReservationID::IsInitialized() const { return true; } -void GetOrReserveArtifactRequest::Swap(GetOrReserveArtifactRequest* other) { +void ReservationID::Swap(ReservationID* other) { if (other == this) return; InternalSwap(other); } -void GetOrReserveArtifactRequest::InternalSwap(GetOrReserveArtifactRequest* other) { +void ReservationID::InternalSwap(ReservationID* other) { using std::swap; _internal_metadata_.Swap(&other->_internal_metadata_); tag_name_.Swap(&other->tag_name_, &::google::protobuf::internal::GetEmptyStringAlreadyInited(), GetArenaNoVirtual()); - owner_id_.Swap(&other->owner_id_, &::google::protobuf::internal::GetEmptyStringAlreadyInited(), - GetArenaNoVirtual()); swap(dataset_id_, other->dataset_id_); } -::google::protobuf::Metadata GetOrReserveArtifactRequest::GetMetadata() const { +::google::protobuf::Metadata ReservationID::GetMetadata() const { ::google::protobuf::internal::AssignDescriptors(&::assign_descriptors_table_flyteidl_2fdatacatalog_2fdatacatalog_2eproto); return ::file_level_metadata_flyteidl_2fdatacatalog_2fdatacatalog_2eproto[kIndexInFileMessages]; } @@ -6124,31 +6003,44 @@ ::google::protobuf::Metadata GetOrReserveArtifactRequest::GetMetadata() const { // =================================================================== -void ReservationStatus::InitAsDefaultInstance() { - ::datacatalog::_ReservationStatus_default_instance_._instance.get_mutable()->metadata_ = const_cast< ::datacatalog::Metadata*>( - ::datacatalog::Metadata::internal_default_instance()); +void GetOrExtendReservationRequest::InitAsDefaultInstance() { + ::datacatalog::_GetOrExtendReservationRequest_default_instance_._instance.get_mutable()->reservation_id_ = const_cast< ::datacatalog::ReservationID*>( + ::datacatalog::ReservationID::internal_default_instance()); + ::datacatalog::_GetOrExtendReservationRequest_default_instance_._instance.get_mutable()->heartbeat_interval_ = const_cast< ::google::protobuf::Duration*>( + ::google::protobuf::Duration::internal_default_instance()); } -class ReservationStatus::HasBitSetters { +class GetOrExtendReservationRequest::HasBitSetters { public: - static const ::datacatalog::Metadata& metadata(const ReservationStatus* msg); + static const ::datacatalog::ReservationID& reservation_id(const GetOrExtendReservationRequest* msg); + static const ::google::protobuf::Duration& heartbeat_interval(const GetOrExtendReservationRequest* msg); }; -const ::datacatalog::Metadata& -ReservationStatus::HasBitSetters::metadata(const ReservationStatus* msg) { - return *msg->metadata_; +const ::datacatalog::ReservationID& +GetOrExtendReservationRequest::HasBitSetters::reservation_id(const GetOrExtendReservationRequest* msg) { + return *msg->reservation_id_; +} +const ::google::protobuf::Duration& +GetOrExtendReservationRequest::HasBitSetters::heartbeat_interval(const GetOrExtendReservationRequest* msg) { + return *msg->heartbeat_interval_; +} +void GetOrExtendReservationRequest::clear_heartbeat_interval() { + if (GetArenaNoVirtual() == nullptr && heartbeat_interval_ != nullptr) { + delete heartbeat_interval_; + } + heartbeat_interval_ = nullptr; } #if !defined(_MSC_VER) || _MSC_VER >= 1900 -const int ReservationStatus::kStateFieldNumber; -const int ReservationStatus::kMetadataFieldNumber; -const int ReservationStatus::kOwnerIdFieldNumber; +const int GetOrExtendReservationRequest::kReservationIdFieldNumber; +const int GetOrExtendReservationRequest::kOwnerIdFieldNumber; +const int GetOrExtendReservationRequest::kHeartbeatIntervalFieldNumber; #endif // !defined(_MSC_VER) || _MSC_VER >= 1900 -ReservationStatus::ReservationStatus() +GetOrExtendReservationRequest::GetOrExtendReservationRequest() : ::google::protobuf::Message(), _internal_metadata_(nullptr) { SharedCtor(); - // @@protoc_insertion_point(constructor:datacatalog.ReservationStatus) + // @@protoc_insertion_point(constructor:datacatalog.GetOrExtendReservationRequest) } -ReservationStatus::ReservationStatus(const ReservationStatus& from) +GetOrExtendReservationRequest::GetOrExtendReservationRequest(const GetOrExtendReservationRequest& from) : ::google::protobuf::Message(), _internal_metadata_(nullptr) { _internal_metadata_.MergeFrom(from._internal_metadata_); @@ -6156,62 +6048,70 @@ ReservationStatus::ReservationStatus(const ReservationStatus& from) if (from.owner_id().size() > 0) { owner_id_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.owner_id_); } - if (from.has_metadata()) { - metadata_ = new ::datacatalog::Metadata(*from.metadata_); + if (from.has_reservation_id()) { + reservation_id_ = new ::datacatalog::ReservationID(*from.reservation_id_); } else { - metadata_ = nullptr; + reservation_id_ = nullptr; + } + if (from.has_heartbeat_interval()) { + heartbeat_interval_ = new ::google::protobuf::Duration(*from.heartbeat_interval_); + } else { + heartbeat_interval_ = nullptr; } - state_ = from.state_; - // @@protoc_insertion_point(copy_constructor:datacatalog.ReservationStatus) + // @@protoc_insertion_point(copy_constructor:datacatalog.GetOrExtendReservationRequest) } -void ReservationStatus::SharedCtor() { +void GetOrExtendReservationRequest::SharedCtor() { ::google::protobuf::internal::InitSCC( - &scc_info_ReservationStatus_flyteidl_2fdatacatalog_2fdatacatalog_2eproto.base); + &scc_info_GetOrExtendReservationRequest_flyteidl_2fdatacatalog_2fdatacatalog_2eproto.base); owner_id_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited()); - ::memset(&metadata_, 0, static_cast( - reinterpret_cast(&state_) - - reinterpret_cast(&metadata_)) + sizeof(state_)); + ::memset(&reservation_id_, 0, static_cast( + reinterpret_cast(&heartbeat_interval_) - + reinterpret_cast(&reservation_id_)) + sizeof(heartbeat_interval_)); } -ReservationStatus::~ReservationStatus() { - // @@protoc_insertion_point(destructor:datacatalog.ReservationStatus) +GetOrExtendReservationRequest::~GetOrExtendReservationRequest() { + // @@protoc_insertion_point(destructor:datacatalog.GetOrExtendReservationRequest) SharedDtor(); } -void ReservationStatus::SharedDtor() { +void GetOrExtendReservationRequest::SharedDtor() { owner_id_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited()); - if (this != internal_default_instance()) delete metadata_; + if (this != internal_default_instance()) delete reservation_id_; + if (this != internal_default_instance()) delete heartbeat_interval_; } -void ReservationStatus::SetCachedSize(int size) const { +void GetOrExtendReservationRequest::SetCachedSize(int size) const { _cached_size_.Set(size); } -const ReservationStatus& ReservationStatus::default_instance() { - ::google::protobuf::internal::InitSCC(&::scc_info_ReservationStatus_flyteidl_2fdatacatalog_2fdatacatalog_2eproto.base); +const GetOrExtendReservationRequest& GetOrExtendReservationRequest::default_instance() { + ::google::protobuf::internal::InitSCC(&::scc_info_GetOrExtendReservationRequest_flyteidl_2fdatacatalog_2fdatacatalog_2eproto.base); return *internal_default_instance(); } -void ReservationStatus::Clear() { -// @@protoc_insertion_point(message_clear_start:datacatalog.ReservationStatus) +void GetOrExtendReservationRequest::Clear() { +// @@protoc_insertion_point(message_clear_start:datacatalog.GetOrExtendReservationRequest) ::google::protobuf::uint32 cached_has_bits = 0; // Prevent compiler warnings about cached_has_bits being unused (void) cached_has_bits; owner_id_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited()); - if (GetArenaNoVirtual() == nullptr && metadata_ != nullptr) { - delete metadata_; + if (GetArenaNoVirtual() == nullptr && reservation_id_ != nullptr) { + delete reservation_id_; } - metadata_ = nullptr; - state_ = 0; + reservation_id_ = nullptr; + if (GetArenaNoVirtual() == nullptr && heartbeat_interval_ != nullptr) { + delete heartbeat_interval_; + } + heartbeat_interval_ = nullptr; _internal_metadata_.Clear(); } #if GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER -const char* ReservationStatus::_InternalParse(const char* begin, const char* end, void* object, +const char* GetOrExtendReservationRequest::_InternalParse(const char* begin, const char* end, void* object, ::google::protobuf::internal::ParseContext* ctx) { - auto msg = static_cast(object); + auto msg = static_cast(object); ::google::protobuf::int32 size; (void)size; int depth; (void)depth; ::google::protobuf::uint32 tag; @@ -6221,33 +6121,25 @@ const char* ReservationStatus::_InternalParse(const char* begin, const char* end ptr = ::google::protobuf::io::Parse32(ptr, &tag); GOOGLE_PROTOBUF_PARSER_ASSERT(ptr); switch (tag >> 3) { - // .datacatalog.ReservationStatus.State state = 1; + // .datacatalog.ReservationID reservation_id = 1; case 1: { - if (static_cast<::google::protobuf::uint8>(tag) != 8) goto handle_unusual; - ::google::protobuf::uint64 val = ::google::protobuf::internal::ReadVarint(&ptr); - msg->set_state(static_cast<::datacatalog::ReservationStatus_State>(val)); - GOOGLE_PROTOBUF_PARSER_ASSERT(ptr); - break; - } - // .datacatalog.Metadata metadata = 2; - case 2: { - if (static_cast<::google::protobuf::uint8>(tag) != 18) goto handle_unusual; + 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 = ::datacatalog::Metadata::_InternalParse; - object = msg->mutable_metadata(); + parser_till_end = ::datacatalog::ReservationID::_InternalParse; + object = msg->mutable_reservation_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; } - // string owner_id = 3; - case 3: { - if (static_cast<::google::protobuf::uint8>(tag) != 26) goto handle_unusual; + // string owner_id = 2; + case 2: { + if (static_cast<::google::protobuf::uint8>(tag) != 18) goto handle_unusual; ptr = ::google::protobuf::io::ReadSize(ptr, &size); GOOGLE_PROTOBUF_PARSER_ASSERT(ptr); - ctx->extra_parse_data().SetFieldName("datacatalog.ReservationStatus.owner_id"); + ctx->extra_parse_data().SetFieldName("datacatalog.GetOrExtendReservationRequest.owner_id"); object = msg->mutable_owner_id(); if (size > end - ptr + ::google::protobuf::internal::ParseContext::kSlopBytes) { parser_till_end = ::google::protobuf::internal::GreedyStringParserUTF8; @@ -6258,6 +6150,19 @@ const char* ReservationStatus::_InternalParse(const char* begin, const char* end ptr += size; break; } + // .google.protobuf.Duration heartbeat_interval = 3; + case 3: { + if (static_cast<::google::protobuf::uint8>(tag) != 26) goto handle_unusual; + ptr = ::google::protobuf::io::ReadSize(ptr, &size); + GOOGLE_PROTOBUF_PARSER_ASSERT(ptr); + parser_till_end = ::google::protobuf::Duration::_InternalParse; + object = msg->mutable_heartbeat_interval(); + 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; + } default: { handle_unusual: if ((tag & 7) == 4 || tag == 0) { @@ -6282,50 +6187,47 @@ const char* ReservationStatus::_InternalParse(const char* begin, const char* end {parser_till_end, object}, size); } #else // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER -bool ReservationStatus::MergePartialFromCodedStream( +bool GetOrExtendReservationRequest::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:datacatalog.ReservationStatus) + // @@protoc_insertion_point(parse_start:datacatalog.GetOrExtendReservationRequest) 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)) { - // .datacatalog.ReservationStatus.State state = 1; + // .datacatalog.ReservationID reservation_id = 1; case 1: { - if (static_cast< ::google::protobuf::uint8>(tag) == (8 & 0xFF)) { - int value = 0; - DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive< - int, ::google::protobuf::internal::WireFormatLite::TYPE_ENUM>( - input, &value))); - set_state(static_cast< ::datacatalog::ReservationStatus_State >(value)); + if (static_cast< ::google::protobuf::uint8>(tag) == (10 & 0xFF)) { + DO_(::google::protobuf::internal::WireFormatLite::ReadMessage( + input, mutable_reservation_id())); } else { goto handle_unusual; } break; } - // .datacatalog.Metadata metadata = 2; + // string owner_id = 2; case 2: { if (static_cast< ::google::protobuf::uint8>(tag) == (18 & 0xFF)) { - DO_(::google::protobuf::internal::WireFormatLite::ReadMessage( - input, mutable_metadata())); + DO_(::google::protobuf::internal::WireFormatLite::ReadString( + input, this->mutable_owner_id())); + DO_(::google::protobuf::internal::WireFormatLite::VerifyUtf8String( + this->owner_id().data(), static_cast(this->owner_id().length()), + ::google::protobuf::internal::WireFormatLite::PARSE, + "datacatalog.GetOrExtendReservationRequest.owner_id")); } else { goto handle_unusual; } break; } - // string owner_id = 3; + // .google.protobuf.Duration heartbeat_interval = 3; case 3: { if (static_cast< ::google::protobuf::uint8>(tag) == (26 & 0xFF)) { - DO_(::google::protobuf::internal::WireFormatLite::ReadString( - input, this->mutable_owner_id())); - DO_(::google::protobuf::internal::WireFormatLite::VerifyUtf8String( - this->owner_id().data(), static_cast(this->owner_id().length()), - ::google::protobuf::internal::WireFormatLite::PARSE, - "datacatalog.ReservationStatus.owner_id")); + DO_(::google::protobuf::internal::WireFormatLite::ReadMessage( + input, mutable_heartbeat_interval())); } else { goto handle_unusual; } @@ -6344,90 +6246,91 @@ bool ReservationStatus::MergePartialFromCodedStream( } } success: - // @@protoc_insertion_point(parse_success:datacatalog.ReservationStatus) + // @@protoc_insertion_point(parse_success:datacatalog.GetOrExtendReservationRequest) return true; failure: - // @@protoc_insertion_point(parse_failure:datacatalog.ReservationStatus) + // @@protoc_insertion_point(parse_failure:datacatalog.GetOrExtendReservationRequest) return false; #undef DO_ } #endif // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER -void ReservationStatus::SerializeWithCachedSizes( +void GetOrExtendReservationRequest::SerializeWithCachedSizes( ::google::protobuf::io::CodedOutputStream* output) const { - // @@protoc_insertion_point(serialize_start:datacatalog.ReservationStatus) + // @@protoc_insertion_point(serialize_start:datacatalog.GetOrExtendReservationRequest) ::google::protobuf::uint32 cached_has_bits = 0; (void) cached_has_bits; - // .datacatalog.ReservationStatus.State state = 1; - if (this->state() != 0) { - ::google::protobuf::internal::WireFormatLite::WriteEnum( - 1, this->state(), output); - } - - // .datacatalog.Metadata metadata = 2; - if (this->has_metadata()) { + // .datacatalog.ReservationID reservation_id = 1; + if (this->has_reservation_id()) { ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray( - 2, HasBitSetters::metadata(this), output); + 1, HasBitSetters::reservation_id(this), output); } - // string owner_id = 3; + // string owner_id = 2; if (this->owner_id().size() > 0) { ::google::protobuf::internal::WireFormatLite::VerifyUtf8String( this->owner_id().data(), static_cast(this->owner_id().length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, - "datacatalog.ReservationStatus.owner_id"); + "datacatalog.GetOrExtendReservationRequest.owner_id"); ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased( - 3, this->owner_id(), output); + 2, this->owner_id(), output); + } + + // .google.protobuf.Duration heartbeat_interval = 3; + if (this->has_heartbeat_interval()) { + ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray( + 3, HasBitSetters::heartbeat_interval(this), output); } if (_internal_metadata_.have_unknown_fields()) { ::google::protobuf::internal::WireFormat::SerializeUnknownFields( _internal_metadata_.unknown_fields(), output); } - // @@protoc_insertion_point(serialize_end:datacatalog.ReservationStatus) + // @@protoc_insertion_point(serialize_end:datacatalog.GetOrExtendReservationRequest) } -::google::protobuf::uint8* ReservationStatus::InternalSerializeWithCachedSizesToArray( +::google::protobuf::uint8* GetOrExtendReservationRequest::InternalSerializeWithCachedSizesToArray( ::google::protobuf::uint8* target) const { - // @@protoc_insertion_point(serialize_to_array_start:datacatalog.ReservationStatus) + // @@protoc_insertion_point(serialize_to_array_start:datacatalog.GetOrExtendReservationRequest) ::google::protobuf::uint32 cached_has_bits = 0; (void) cached_has_bits; - // .datacatalog.ReservationStatus.State state = 1; - if (this->state() != 0) { - target = ::google::protobuf::internal::WireFormatLite::WriteEnumToArray( - 1, this->state(), target); - } - - // .datacatalog.Metadata metadata = 2; - if (this->has_metadata()) { + // .datacatalog.ReservationID reservation_id = 1; + if (this->has_reservation_id()) { target = ::google::protobuf::internal::WireFormatLite:: InternalWriteMessageToArray( - 2, HasBitSetters::metadata(this), target); + 1, HasBitSetters::reservation_id(this), target); } - // string owner_id = 3; + // string owner_id = 2; if (this->owner_id().size() > 0) { ::google::protobuf::internal::WireFormatLite::VerifyUtf8String( this->owner_id().data(), static_cast(this->owner_id().length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, - "datacatalog.ReservationStatus.owner_id"); + "datacatalog.GetOrExtendReservationRequest.owner_id"); target = ::google::protobuf::internal::WireFormatLite::WriteStringToArray( - 3, this->owner_id(), target); + 2, this->owner_id(), target); + } + + // .google.protobuf.Duration heartbeat_interval = 3; + if (this->has_heartbeat_interval()) { + target = ::google::protobuf::internal::WireFormatLite:: + InternalWriteMessageToArray( + 3, HasBitSetters::heartbeat_interval(this), 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:datacatalog.ReservationStatus) + // @@protoc_insertion_point(serialize_to_array_end:datacatalog.GetOrExtendReservationRequest) return target; } -size_t ReservationStatus::ByteSizeLong() const { -// @@protoc_insertion_point(message_byte_size_start:datacatalog.ReservationStatus) +size_t GetOrExtendReservationRequest::ByteSizeLong() const { +// @@protoc_insertion_point(message_byte_size_start:datacatalog.GetOrExtendReservationRequest) size_t total_size = 0; if (_internal_metadata_.have_unknown_fields()) { @@ -6439,24 +6342,25 @@ size_t ReservationStatus::ByteSizeLong() const { // Prevent compiler warnings about cached_has_bits being unused (void) cached_has_bits; - // string owner_id = 3; + // string owner_id = 2; if (this->owner_id().size() > 0) { total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize( this->owner_id()); } - // .datacatalog.Metadata metadata = 2; - if (this->has_metadata()) { + // .datacatalog.ReservationID reservation_id = 1; + if (this->has_reservation_id()) { total_size += 1 + ::google::protobuf::internal::WireFormatLite::MessageSize( - *metadata_); + *reservation_id_); } - // .datacatalog.ReservationStatus.State state = 1; - if (this->state() != 0) { + // .google.protobuf.Duration heartbeat_interval = 3; + if (this->has_heartbeat_interval()) { total_size += 1 + - ::google::protobuf::internal::WireFormatLite::EnumSize(this->state()); + ::google::protobuf::internal::WireFormatLite::MessageSize( + *heartbeat_interval_); } int cached_size = ::google::protobuf::internal::ToCachedSize(total_size); @@ -6464,23 +6368,23 @@ size_t ReservationStatus::ByteSizeLong() const { return total_size; } -void ReservationStatus::MergeFrom(const ::google::protobuf::Message& from) { -// @@protoc_insertion_point(generalized_merge_from_start:datacatalog.ReservationStatus) +void GetOrExtendReservationRequest::MergeFrom(const ::google::protobuf::Message& from) { +// @@protoc_insertion_point(generalized_merge_from_start:datacatalog.GetOrExtendReservationRequest) GOOGLE_DCHECK_NE(&from, this); - const ReservationStatus* source = - ::google::protobuf::DynamicCastToGenerated( + const GetOrExtendReservationRequest* source = + ::google::protobuf::DynamicCastToGenerated( &from); if (source == nullptr) { - // @@protoc_insertion_point(generalized_merge_from_cast_fail:datacatalog.ReservationStatus) + // @@protoc_insertion_point(generalized_merge_from_cast_fail:datacatalog.GetOrExtendReservationRequest) ::google::protobuf::internal::ReflectionOps::Merge(from, this); } else { - // @@protoc_insertion_point(generalized_merge_from_cast_success:datacatalog.ReservationStatus) + // @@protoc_insertion_point(generalized_merge_from_cast_success:datacatalog.GetOrExtendReservationRequest) MergeFrom(*source); } } -void ReservationStatus::MergeFrom(const ReservationStatus& from) { -// @@protoc_insertion_point(class_specific_merge_from_start:datacatalog.ReservationStatus) +void GetOrExtendReservationRequest::MergeFrom(const GetOrExtendReservationRequest& from) { +// @@protoc_insertion_point(class_specific_merge_from_start:datacatalog.GetOrExtendReservationRequest) GOOGLE_DCHECK_NE(&from, this); _internal_metadata_.MergeFrom(from._internal_metadata_); ::google::protobuf::uint32 cached_has_bits = 0; @@ -6490,46 +6394,46 @@ void ReservationStatus::MergeFrom(const ReservationStatus& from) { owner_id_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.owner_id_); } - if (from.has_metadata()) { - mutable_metadata()->::datacatalog::Metadata::MergeFrom(from.metadata()); + if (from.has_reservation_id()) { + mutable_reservation_id()->::datacatalog::ReservationID::MergeFrom(from.reservation_id()); } - if (from.state() != 0) { - set_state(from.state()); + if (from.has_heartbeat_interval()) { + mutable_heartbeat_interval()->::google::protobuf::Duration::MergeFrom(from.heartbeat_interval()); } } -void ReservationStatus::CopyFrom(const ::google::protobuf::Message& from) { -// @@protoc_insertion_point(generalized_copy_from_start:datacatalog.ReservationStatus) +void GetOrExtendReservationRequest::CopyFrom(const ::google::protobuf::Message& from) { +// @@protoc_insertion_point(generalized_copy_from_start:datacatalog.GetOrExtendReservationRequest) if (&from == this) return; Clear(); MergeFrom(from); } -void ReservationStatus::CopyFrom(const ReservationStatus& from) { -// @@protoc_insertion_point(class_specific_copy_from_start:datacatalog.ReservationStatus) +void GetOrExtendReservationRequest::CopyFrom(const GetOrExtendReservationRequest& from) { +// @@protoc_insertion_point(class_specific_copy_from_start:datacatalog.GetOrExtendReservationRequest) if (&from == this) return; Clear(); MergeFrom(from); } -bool ReservationStatus::IsInitialized() const { +bool GetOrExtendReservationRequest::IsInitialized() const { return true; } -void ReservationStatus::Swap(ReservationStatus* other) { +void GetOrExtendReservationRequest::Swap(GetOrExtendReservationRequest* other) { if (other == this) return; InternalSwap(other); } -void ReservationStatus::InternalSwap(ReservationStatus* other) { +void GetOrExtendReservationRequest::InternalSwap(GetOrExtendReservationRequest* other) { using std::swap; _internal_metadata_.Swap(&other->_internal_metadata_); owner_id_.Swap(&other->owner_id_, &::google::protobuf::internal::GetEmptyStringAlreadyInited(), GetArenaNoVirtual()); - swap(metadata_, other->metadata_); - swap(state_, other->state_); + swap(reservation_id_, other->reservation_id_); + swap(heartbeat_interval_, other->heartbeat_interval_); } -::google::protobuf::Metadata ReservationStatus::GetMetadata() const { +::google::protobuf::Metadata GetOrExtendReservationRequest::GetMetadata() const { ::google::protobuf::internal::AssignDescriptors(&::assign_descriptors_table_flyteidl_2fdatacatalog_2fdatacatalog_2eproto); return ::file_level_metadata_flyteidl_2fdatacatalog_2fdatacatalog_2eproto[kIndexInFileMessages]; } @@ -6537,144 +6441,157 @@ ::google::protobuf::Metadata ReservationStatus::GetMetadata() const { // =================================================================== -void GetOrReserveArtifactResponse::InitAsDefaultInstance() { - ::datacatalog::_GetOrReserveArtifactResponse_default_instance_.artifact_ = const_cast< ::datacatalog::Artifact*>( - ::datacatalog::Artifact::internal_default_instance()); - ::datacatalog::_GetOrReserveArtifactResponse_default_instance_.reservation_status_ = const_cast< ::datacatalog::ReservationStatus*>( - ::datacatalog::ReservationStatus::internal_default_instance()); +void Reservation::InitAsDefaultInstance() { + ::datacatalog::_Reservation_default_instance_._instance.get_mutable()->reservation_id_ = const_cast< ::datacatalog::ReservationID*>( + ::datacatalog::ReservationID::internal_default_instance()); + ::datacatalog::_Reservation_default_instance_._instance.get_mutable()->heartbeat_interval_ = const_cast< ::google::protobuf::Duration*>( + ::google::protobuf::Duration::internal_default_instance()); + ::datacatalog::_Reservation_default_instance_._instance.get_mutable()->expires_at_ = const_cast< ::google::protobuf::Timestamp*>( + ::google::protobuf::Timestamp::internal_default_instance()); + ::datacatalog::_Reservation_default_instance_._instance.get_mutable()->metadata_ = const_cast< ::datacatalog::Metadata*>( + ::datacatalog::Metadata::internal_default_instance()); } -class GetOrReserveArtifactResponse::HasBitSetters { +class Reservation::HasBitSetters { public: - static const ::datacatalog::Artifact& artifact(const GetOrReserveArtifactResponse* msg); - static const ::datacatalog::ReservationStatus& reservation_status(const GetOrReserveArtifactResponse* msg); + static const ::datacatalog::ReservationID& reservation_id(const Reservation* msg); + static const ::google::protobuf::Duration& heartbeat_interval(const Reservation* msg); + static const ::google::protobuf::Timestamp& expires_at(const Reservation* msg); + static const ::datacatalog::Metadata& metadata(const Reservation* msg); }; -const ::datacatalog::Artifact& -GetOrReserveArtifactResponse::HasBitSetters::artifact(const GetOrReserveArtifactResponse* msg) { - return *msg->value_.artifact_; +const ::datacatalog::ReservationID& +Reservation::HasBitSetters::reservation_id(const Reservation* msg) { + return *msg->reservation_id_; } -const ::datacatalog::ReservationStatus& -GetOrReserveArtifactResponse::HasBitSetters::reservation_status(const GetOrReserveArtifactResponse* msg) { - return *msg->value_.reservation_status_; +const ::google::protobuf::Duration& +Reservation::HasBitSetters::heartbeat_interval(const Reservation* msg) { + return *msg->heartbeat_interval_; } -void GetOrReserveArtifactResponse::set_allocated_artifact(::datacatalog::Artifact* artifact) { - ::google::protobuf::Arena* message_arena = GetArenaNoVirtual(); - clear_value(); - if (artifact) { - ::google::protobuf::Arena* submessage_arena = nullptr; - if (message_arena != submessage_arena) { - artifact = ::google::protobuf::internal::GetOwnedMessage( - message_arena, artifact, submessage_arena); - } - set_has_artifact(); - value_.artifact_ = artifact; +const ::google::protobuf::Timestamp& +Reservation::HasBitSetters::expires_at(const Reservation* msg) { + return *msg->expires_at_; +} +const ::datacatalog::Metadata& +Reservation::HasBitSetters::metadata(const Reservation* msg) { + return *msg->metadata_; +} +void Reservation::clear_heartbeat_interval() { + if (GetArenaNoVirtual() == nullptr && heartbeat_interval_ != nullptr) { + delete heartbeat_interval_; } - // @@protoc_insertion_point(field_set_allocated:datacatalog.GetOrReserveArtifactResponse.artifact) + heartbeat_interval_ = nullptr; } -void GetOrReserveArtifactResponse::set_allocated_reservation_status(::datacatalog::ReservationStatus* reservation_status) { - ::google::protobuf::Arena* message_arena = GetArenaNoVirtual(); - clear_value(); - if (reservation_status) { - ::google::protobuf::Arena* submessage_arena = nullptr; - if (message_arena != submessage_arena) { - reservation_status = ::google::protobuf::internal::GetOwnedMessage( - message_arena, reservation_status, submessage_arena); - } - set_has_reservation_status(); - value_.reservation_status_ = reservation_status; +void Reservation::clear_expires_at() { + if (GetArenaNoVirtual() == nullptr && expires_at_ != nullptr) { + delete expires_at_; } - // @@protoc_insertion_point(field_set_allocated:datacatalog.GetOrReserveArtifactResponse.reservation_status) + expires_at_ = nullptr; } #if !defined(_MSC_VER) || _MSC_VER >= 1900 -const int GetOrReserveArtifactResponse::kArtifactFieldNumber; -const int GetOrReserveArtifactResponse::kReservationStatusFieldNumber; +const int Reservation::kReservationIdFieldNumber; +const int Reservation::kOwnerIdFieldNumber; +const int Reservation::kHeartbeatIntervalFieldNumber; +const int Reservation::kExpiresAtFieldNumber; +const int Reservation::kMetadataFieldNumber; #endif // !defined(_MSC_VER) || _MSC_VER >= 1900 -GetOrReserveArtifactResponse::GetOrReserveArtifactResponse() +Reservation::Reservation() : ::google::protobuf::Message(), _internal_metadata_(nullptr) { SharedCtor(); - // @@protoc_insertion_point(constructor:datacatalog.GetOrReserveArtifactResponse) + // @@protoc_insertion_point(constructor:datacatalog.Reservation) } -GetOrReserveArtifactResponse::GetOrReserveArtifactResponse(const GetOrReserveArtifactResponse& from) +Reservation::Reservation(const Reservation& from) : ::google::protobuf::Message(), _internal_metadata_(nullptr) { _internal_metadata_.MergeFrom(from._internal_metadata_); - clear_has_value(); - switch (from.value_case()) { - case kArtifact: { - mutable_artifact()->::datacatalog::Artifact::MergeFrom(from.artifact()); - break; - } - case kReservationStatus: { - mutable_reservation_status()->::datacatalog::ReservationStatus::MergeFrom(from.reservation_status()); - break; - } - case VALUE_NOT_SET: { - break; - } + owner_id_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited()); + if (from.owner_id().size() > 0) { + owner_id_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.owner_id_); + } + if (from.has_reservation_id()) { + reservation_id_ = new ::datacatalog::ReservationID(*from.reservation_id_); + } else { + reservation_id_ = nullptr; + } + if (from.has_heartbeat_interval()) { + heartbeat_interval_ = new ::google::protobuf::Duration(*from.heartbeat_interval_); + } else { + heartbeat_interval_ = nullptr; + } + if (from.has_expires_at()) { + expires_at_ = new ::google::protobuf::Timestamp(*from.expires_at_); + } else { + expires_at_ = nullptr; } - // @@protoc_insertion_point(copy_constructor:datacatalog.GetOrReserveArtifactResponse) + if (from.has_metadata()) { + metadata_ = new ::datacatalog::Metadata(*from.metadata_); + } else { + metadata_ = nullptr; + } + // @@protoc_insertion_point(copy_constructor:datacatalog.Reservation) } -void GetOrReserveArtifactResponse::SharedCtor() { +void Reservation::SharedCtor() { ::google::protobuf::internal::InitSCC( - &scc_info_GetOrReserveArtifactResponse_flyteidl_2fdatacatalog_2fdatacatalog_2eproto.base); - clear_has_value(); + &scc_info_Reservation_flyteidl_2fdatacatalog_2fdatacatalog_2eproto.base); + owner_id_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited()); + ::memset(&reservation_id_, 0, static_cast( + reinterpret_cast(&metadata_) - + reinterpret_cast(&reservation_id_)) + sizeof(metadata_)); } -GetOrReserveArtifactResponse::~GetOrReserveArtifactResponse() { - // @@protoc_insertion_point(destructor:datacatalog.GetOrReserveArtifactResponse) +Reservation::~Reservation() { + // @@protoc_insertion_point(destructor:datacatalog.Reservation) SharedDtor(); } -void GetOrReserveArtifactResponse::SharedDtor() { - if (has_value()) { - clear_value(); - } +void Reservation::SharedDtor() { + owner_id_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited()); + if (this != internal_default_instance()) delete reservation_id_; + if (this != internal_default_instance()) delete heartbeat_interval_; + if (this != internal_default_instance()) delete expires_at_; + if (this != internal_default_instance()) delete metadata_; } -void GetOrReserveArtifactResponse::SetCachedSize(int size) const { +void Reservation::SetCachedSize(int size) const { _cached_size_.Set(size); } -const GetOrReserveArtifactResponse& GetOrReserveArtifactResponse::default_instance() { - ::google::protobuf::internal::InitSCC(&::scc_info_GetOrReserveArtifactResponse_flyteidl_2fdatacatalog_2fdatacatalog_2eproto.base); +const Reservation& Reservation::default_instance() { + ::google::protobuf::internal::InitSCC(&::scc_info_Reservation_flyteidl_2fdatacatalog_2fdatacatalog_2eproto.base); return *internal_default_instance(); } -void GetOrReserveArtifactResponse::clear_value() { -// @@protoc_insertion_point(one_of_clear_start:datacatalog.GetOrReserveArtifactResponse) - switch (value_case()) { - case kArtifact: { - delete value_.artifact_; - break; - } - case kReservationStatus: { - delete value_.reservation_status_; - break; - } - case VALUE_NOT_SET: { - break; - } - } - _oneof_case_[0] = VALUE_NOT_SET; -} - - -void GetOrReserveArtifactResponse::Clear() { -// @@protoc_insertion_point(message_clear_start:datacatalog.GetOrReserveArtifactResponse) +void Reservation::Clear() { +// @@protoc_insertion_point(message_clear_start:datacatalog.Reservation) ::google::protobuf::uint32 cached_has_bits = 0; // Prevent compiler warnings about cached_has_bits being unused (void) cached_has_bits; - clear_value(); + owner_id_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited()); + if (GetArenaNoVirtual() == nullptr && reservation_id_ != nullptr) { + delete reservation_id_; + } + reservation_id_ = nullptr; + if (GetArenaNoVirtual() == nullptr && heartbeat_interval_ != nullptr) { + delete heartbeat_interval_; + } + heartbeat_interval_ = nullptr; + if (GetArenaNoVirtual() == nullptr && expires_at_ != nullptr) { + delete expires_at_; + } + expires_at_ = nullptr; + if (GetArenaNoVirtual() == nullptr && metadata_ != nullptr) { + delete metadata_; + } + metadata_ = nullptr; _internal_metadata_.Clear(); } #if GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER -const char* GetOrReserveArtifactResponse::_InternalParse(const char* begin, const char* end, void* object, +const char* Reservation::_InternalParse(const char* begin, const char* end, void* object, ::google::protobuf::internal::ParseContext* ctx) { - auto msg = static_cast(object); + auto msg = static_cast(object); ::google::protobuf::int32 size; (void)size; int depth; (void)depth; ::google::protobuf::uint32 tag; @@ -6684,412 +6601,72 @@ const char* GetOrReserveArtifactResponse::_InternalParse(const char* begin, cons ptr = ::google::protobuf::io::Parse32(ptr, &tag); GOOGLE_PROTOBUF_PARSER_ASSERT(ptr); switch (tag >> 3) { - // .datacatalog.Artifact artifact = 1; + // .datacatalog.ReservationID reservation_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 = ::datacatalog::Artifact::_InternalParse; - object = msg->mutable_artifact(); + parser_till_end = ::datacatalog::ReservationID::_InternalParse; + object = msg->mutable_reservation_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; } - // .datacatalog.ReservationStatus reservation_status = 2; + // string owner_id = 2; case 2: { if (static_cast<::google::protobuf::uint8>(tag) != 18) goto handle_unusual; ptr = ::google::protobuf::io::ReadSize(ptr, &size); GOOGLE_PROTOBUF_PARSER_ASSERT(ptr); - parser_till_end = ::datacatalog::ReservationStatus::_InternalParse; - object = msg->mutable_reservation_status(); - if (size > end - ptr) goto len_delim_till_end; + ctx->extra_parse_data().SetFieldName("datacatalog.Reservation.owner_id"); + object = msg->mutable_owner_id(); + if (size > end - ptr + ::google::protobuf::internal::ParseContext::kSlopBytes) { + parser_till_end = ::google::protobuf::internal::GreedyStringParserUTF8; + goto string_till_end; + } + GOOGLE_PROTOBUF_PARSER_ASSERT(::google::protobuf::internal::StringCheckUTF8(ptr, size, ctx)); + ::google::protobuf::internal::InlineGreedyStringParser(object, ptr, size, ctx); ptr += size; - GOOGLE_PROTOBUF_PARSER_ASSERT(ctx->ParseExactRange( - {parser_till_end, object}, ptr - size, 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 GetOrReserveArtifactResponse::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:datacatalog.GetOrReserveArtifactResponse) - 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)) { - // .datacatalog.Artifact artifact = 1; - case 1: { - if (static_cast< ::google::protobuf::uint8>(tag) == (10 & 0xFF)) { - DO_(::google::protobuf::internal::WireFormatLite::ReadMessage( - input, mutable_artifact())); - } else { - goto handle_unusual; - } - break; - } - - // .datacatalog.ReservationStatus reservation_status = 2; - case 2: { - if (static_cast< ::google::protobuf::uint8>(tag) == (18 & 0xFF)) { - DO_(::google::protobuf::internal::WireFormatLite::ReadMessage( - input, mutable_reservation_status())); - } 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:datacatalog.GetOrReserveArtifactResponse) - return true; -failure: - // @@protoc_insertion_point(parse_failure:datacatalog.GetOrReserveArtifactResponse) - return false; -#undef DO_ -} -#endif // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER - -void GetOrReserveArtifactResponse::SerializeWithCachedSizes( - ::google::protobuf::io::CodedOutputStream* output) const { - // @@protoc_insertion_point(serialize_start:datacatalog.GetOrReserveArtifactResponse) - ::google::protobuf::uint32 cached_has_bits = 0; - (void) cached_has_bits; - - // .datacatalog.Artifact artifact = 1; - if (has_artifact()) { - ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray( - 1, HasBitSetters::artifact(this), output); - } - - // .datacatalog.ReservationStatus reservation_status = 2; - if (has_reservation_status()) { - ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray( - 2, HasBitSetters::reservation_status(this), output); - } - - if (_internal_metadata_.have_unknown_fields()) { - ::google::protobuf::internal::WireFormat::SerializeUnknownFields( - _internal_metadata_.unknown_fields(), output); - } - // @@protoc_insertion_point(serialize_end:datacatalog.GetOrReserveArtifactResponse) -} - -::google::protobuf::uint8* GetOrReserveArtifactResponse::InternalSerializeWithCachedSizesToArray( - ::google::protobuf::uint8* target) const { - // @@protoc_insertion_point(serialize_to_array_start:datacatalog.GetOrReserveArtifactResponse) - ::google::protobuf::uint32 cached_has_bits = 0; - (void) cached_has_bits; - - // .datacatalog.Artifact artifact = 1; - if (has_artifact()) { - target = ::google::protobuf::internal::WireFormatLite:: - InternalWriteMessageToArray( - 1, HasBitSetters::artifact(this), target); - } - - // .datacatalog.ReservationStatus reservation_status = 2; - if (has_reservation_status()) { - target = ::google::protobuf::internal::WireFormatLite:: - InternalWriteMessageToArray( - 2, HasBitSetters::reservation_status(this), 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:datacatalog.GetOrReserveArtifactResponse) - return target; -} - -size_t GetOrReserveArtifactResponse::ByteSizeLong() const { -// @@protoc_insertion_point(message_byte_size_start:datacatalog.GetOrReserveArtifactResponse) - 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; - - switch (value_case()) { - // .datacatalog.Artifact artifact = 1; - case kArtifact: { - total_size += 1 + - ::google::protobuf::internal::WireFormatLite::MessageSize( - *value_.artifact_); - break; - } - // .datacatalog.ReservationStatus reservation_status = 2; - case kReservationStatus: { - total_size += 1 + - ::google::protobuf::internal::WireFormatLite::MessageSize( - *value_.reservation_status_); - break; - } - case VALUE_NOT_SET: { - break; - } - } - int cached_size = ::google::protobuf::internal::ToCachedSize(total_size); - SetCachedSize(cached_size); - return total_size; -} - -void GetOrReserveArtifactResponse::MergeFrom(const ::google::protobuf::Message& from) { -// @@protoc_insertion_point(generalized_merge_from_start:datacatalog.GetOrReserveArtifactResponse) - GOOGLE_DCHECK_NE(&from, this); - const GetOrReserveArtifactResponse* source = - ::google::protobuf::DynamicCastToGenerated( - &from); - if (source == nullptr) { - // @@protoc_insertion_point(generalized_merge_from_cast_fail:datacatalog.GetOrReserveArtifactResponse) - ::google::protobuf::internal::ReflectionOps::Merge(from, this); - } else { - // @@protoc_insertion_point(generalized_merge_from_cast_success:datacatalog.GetOrReserveArtifactResponse) - MergeFrom(*source); - } -} - -void GetOrReserveArtifactResponse::MergeFrom(const GetOrReserveArtifactResponse& from) { -// @@protoc_insertion_point(class_specific_merge_from_start:datacatalog.GetOrReserveArtifactResponse) - GOOGLE_DCHECK_NE(&from, this); - _internal_metadata_.MergeFrom(from._internal_metadata_); - ::google::protobuf::uint32 cached_has_bits = 0; - (void) cached_has_bits; - - switch (from.value_case()) { - case kArtifact: { - mutable_artifact()->::datacatalog::Artifact::MergeFrom(from.artifact()); - break; - } - case kReservationStatus: { - mutable_reservation_status()->::datacatalog::ReservationStatus::MergeFrom(from.reservation_status()); - break; - } - case VALUE_NOT_SET: { - break; - } - } -} - -void GetOrReserveArtifactResponse::CopyFrom(const ::google::protobuf::Message& from) { -// @@protoc_insertion_point(generalized_copy_from_start:datacatalog.GetOrReserveArtifactResponse) - if (&from == this) return; - Clear(); - MergeFrom(from); -} - -void GetOrReserveArtifactResponse::CopyFrom(const GetOrReserveArtifactResponse& from) { -// @@protoc_insertion_point(class_specific_copy_from_start:datacatalog.GetOrReserveArtifactResponse) - if (&from == this) return; - Clear(); - MergeFrom(from); -} - -bool GetOrReserveArtifactResponse::IsInitialized() const { - return true; -} - -void GetOrReserveArtifactResponse::Swap(GetOrReserveArtifactResponse* other) { - if (other == this) return; - InternalSwap(other); -} -void GetOrReserveArtifactResponse::InternalSwap(GetOrReserveArtifactResponse* other) { - using std::swap; - _internal_metadata_.Swap(&other->_internal_metadata_); - swap(value_, other->value_); - swap(_oneof_case_[0], other->_oneof_case_[0]); -} - -::google::protobuf::Metadata GetOrReserveArtifactResponse::GetMetadata() const { - ::google::protobuf::internal::AssignDescriptors(&::assign_descriptors_table_flyteidl_2fdatacatalog_2fdatacatalog_2eproto); - return ::file_level_metadata_flyteidl_2fdatacatalog_2fdatacatalog_2eproto[kIndexInFileMessages]; -} - - -// =================================================================== - -void ExtendReservationRequest::InitAsDefaultInstance() { - ::datacatalog::_ExtendReservationRequest_default_instance_._instance.get_mutable()->dataset_id_ = const_cast< ::datacatalog::DatasetID*>( - ::datacatalog::DatasetID::internal_default_instance()); -} -class ExtendReservationRequest::HasBitSetters { - public: - static const ::datacatalog::DatasetID& dataset_id(const ExtendReservationRequest* msg); -}; - -const ::datacatalog::DatasetID& -ExtendReservationRequest::HasBitSetters::dataset_id(const ExtendReservationRequest* msg) { - return *msg->dataset_id_; -} -#if !defined(_MSC_VER) || _MSC_VER >= 1900 -const int ExtendReservationRequest::kDatasetIdFieldNumber; -const int ExtendReservationRequest::kTagNameFieldNumber; -const int ExtendReservationRequest::kOwnerIdFieldNumber; -#endif // !defined(_MSC_VER) || _MSC_VER >= 1900 - -ExtendReservationRequest::ExtendReservationRequest() - : ::google::protobuf::Message(), _internal_metadata_(nullptr) { - SharedCtor(); - // @@protoc_insertion_point(constructor:datacatalog.ExtendReservationRequest) -} -ExtendReservationRequest::ExtendReservationRequest(const ExtendReservationRequest& from) - : ::google::protobuf::Message(), - _internal_metadata_(nullptr) { - _internal_metadata_.MergeFrom(from._internal_metadata_); - tag_name_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited()); - if (from.tag_name().size() > 0) { - tag_name_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.tag_name_); - } - owner_id_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited()); - if (from.owner_id().size() > 0) { - owner_id_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.owner_id_); - } - if (from.has_dataset_id()) { - dataset_id_ = new ::datacatalog::DatasetID(*from.dataset_id_); - } else { - dataset_id_ = nullptr; - } - // @@protoc_insertion_point(copy_constructor:datacatalog.ExtendReservationRequest) -} - -void ExtendReservationRequest::SharedCtor() { - ::google::protobuf::internal::InitSCC( - &scc_info_ExtendReservationRequest_flyteidl_2fdatacatalog_2fdatacatalog_2eproto.base); - tag_name_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited()); - owner_id_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited()); - dataset_id_ = nullptr; -} - -ExtendReservationRequest::~ExtendReservationRequest() { - // @@protoc_insertion_point(destructor:datacatalog.ExtendReservationRequest) - SharedDtor(); -} - -void ExtendReservationRequest::SharedDtor() { - tag_name_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited()); - owner_id_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited()); - if (this != internal_default_instance()) delete dataset_id_; -} - -void ExtendReservationRequest::SetCachedSize(int size) const { - _cached_size_.Set(size); -} -const ExtendReservationRequest& ExtendReservationRequest::default_instance() { - ::google::protobuf::internal::InitSCC(&::scc_info_ExtendReservationRequest_flyteidl_2fdatacatalog_2fdatacatalog_2eproto.base); - return *internal_default_instance(); -} - - -void ExtendReservationRequest::Clear() { -// @@protoc_insertion_point(message_clear_start:datacatalog.ExtendReservationRequest) - ::google::protobuf::uint32 cached_has_bits = 0; - // Prevent compiler warnings about cached_has_bits being unused - (void) cached_has_bits; - - tag_name_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited()); - owner_id_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited()); - if (GetArenaNoVirtual() == nullptr && dataset_id_ != nullptr) { - delete dataset_id_; - } - dataset_id_ = nullptr; - _internal_metadata_.Clear(); -} - -#if GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER -const char* ExtendReservationRequest::_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) { - // .datacatalog.DatasetID dataset_id = 1; - case 1: { - if (static_cast<::google::protobuf::uint8>(tag) != 10) goto handle_unusual; + // .google.protobuf.Duration heartbeat_interval = 3; + case 3: { + if (static_cast<::google::protobuf::uint8>(tag) != 26) goto handle_unusual; ptr = ::google::protobuf::io::ReadSize(ptr, &size); GOOGLE_PROTOBUF_PARSER_ASSERT(ptr); - parser_till_end = ::datacatalog::DatasetID::_InternalParse; - object = msg->mutable_dataset_id(); + parser_till_end = ::google::protobuf::Duration::_InternalParse; + object = msg->mutable_heartbeat_interval(); 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; } - // string tag_name = 2; - case 2: { - if (static_cast<::google::protobuf::uint8>(tag) != 18) goto handle_unusual; + // .google.protobuf.Timestamp expires_at = 4; + case 4: { + if (static_cast<::google::protobuf::uint8>(tag) != 34) goto handle_unusual; ptr = ::google::protobuf::io::ReadSize(ptr, &size); GOOGLE_PROTOBUF_PARSER_ASSERT(ptr); - ctx->extra_parse_data().SetFieldName("datacatalog.ExtendReservationRequest.tag_name"); - object = msg->mutable_tag_name(); - if (size > end - ptr + ::google::protobuf::internal::ParseContext::kSlopBytes) { - parser_till_end = ::google::protobuf::internal::GreedyStringParserUTF8; - goto string_till_end; - } - GOOGLE_PROTOBUF_PARSER_ASSERT(::google::protobuf::internal::StringCheckUTF8(ptr, size, ctx)); - ::google::protobuf::internal::InlineGreedyStringParser(object, ptr, size, ctx); + parser_till_end = ::google::protobuf::Timestamp::_InternalParse; + object = msg->mutable_expires_at(); + 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; } - // string owner_id = 3; - case 3: { - if (static_cast<::google::protobuf::uint8>(tag) != 26) goto handle_unusual; + // .datacatalog.Metadata metadata = 6; + case 6: { + if (static_cast<::google::protobuf::uint8>(tag) != 50) goto handle_unusual; ptr = ::google::protobuf::io::ReadSize(ptr, &size); GOOGLE_PROTOBUF_PARSER_ASSERT(ptr); - ctx->extra_parse_data().SetFieldName("datacatalog.ExtendReservationRequest.owner_id"); - object = msg->mutable_owner_id(); - if (size > end - ptr + ::google::protobuf::internal::ParseContext::kSlopBytes) { - parser_till_end = ::google::protobuf::internal::GreedyStringParserUTF8; - goto string_till_end; - } - GOOGLE_PROTOBUF_PARSER_ASSERT(::google::protobuf::internal::StringCheckUTF8(ptr, size, ctx)); - ::google::protobuf::internal::InlineGreedyStringParser(object, ptr, size, ctx); + parser_till_end = ::datacatalog::Metadata::_InternalParse; + object = msg->mutable_metadata(); + 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; } default: { @@ -7116,51 +6693,69 @@ const char* ExtendReservationRequest::_InternalParse(const char* begin, const ch {parser_till_end, object}, size); } #else // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER -bool ExtendReservationRequest::MergePartialFromCodedStream( +bool Reservation::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:datacatalog.ExtendReservationRequest) + // @@protoc_insertion_point(parse_start:datacatalog.Reservation) 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)) { - // .datacatalog.DatasetID dataset_id = 1; + // .datacatalog.ReservationID reservation_id = 1; case 1: { if (static_cast< ::google::protobuf::uint8>(tag) == (10 & 0xFF)) { DO_(::google::protobuf::internal::WireFormatLite::ReadMessage( - input, mutable_dataset_id())); + input, mutable_reservation_id())); } else { goto handle_unusual; } break; } - // string tag_name = 2; + // string owner_id = 2; case 2: { if (static_cast< ::google::protobuf::uint8>(tag) == (18 & 0xFF)) { DO_(::google::protobuf::internal::WireFormatLite::ReadString( - input, this->mutable_tag_name())); + input, this->mutable_owner_id())); DO_(::google::protobuf::internal::WireFormatLite::VerifyUtf8String( - this->tag_name().data(), static_cast(this->tag_name().length()), + this->owner_id().data(), static_cast(this->owner_id().length()), ::google::protobuf::internal::WireFormatLite::PARSE, - "datacatalog.ExtendReservationRequest.tag_name")); + "datacatalog.Reservation.owner_id")); + } else { + goto handle_unusual; + } + break; + } + + // .google.protobuf.Duration heartbeat_interval = 3; + case 3: { + if (static_cast< ::google::protobuf::uint8>(tag) == (26 & 0xFF)) { + DO_(::google::protobuf::internal::WireFormatLite::ReadMessage( + input, mutable_heartbeat_interval())); + } else { + goto handle_unusual; + } + break; + } + + // .google.protobuf.Timestamp expires_at = 4; + case 4: { + if (static_cast< ::google::protobuf::uint8>(tag) == (34 & 0xFF)) { + DO_(::google::protobuf::internal::WireFormatLite::ReadMessage( + input, mutable_expires_at())); } else { goto handle_unusual; } break; } - // string owner_id = 3; - case 3: { - if (static_cast< ::google::protobuf::uint8>(tag) == (26 & 0xFF)) { - DO_(::google::protobuf::internal::WireFormatLite::ReadString( - input, this->mutable_owner_id())); - DO_(::google::protobuf::internal::WireFormatLite::VerifyUtf8String( - this->owner_id().data(), static_cast(this->owner_id().length()), - ::google::protobuf::internal::WireFormatLite::PARSE, - "datacatalog.ExtendReservationRequest.owner_id")); + // .datacatalog.Metadata metadata = 6; + case 6: { + if (static_cast< ::google::protobuf::uint8>(tag) == (50 & 0xFF)) { + DO_(::google::protobuf::internal::WireFormatLite::ReadMessage( + input, mutable_metadata())); } else { goto handle_unusual; } @@ -7179,99 +6774,117 @@ bool ExtendReservationRequest::MergePartialFromCodedStream( } } success: - // @@protoc_insertion_point(parse_success:datacatalog.ExtendReservationRequest) + // @@protoc_insertion_point(parse_success:datacatalog.Reservation) return true; failure: - // @@protoc_insertion_point(parse_failure:datacatalog.ExtendReservationRequest) + // @@protoc_insertion_point(parse_failure:datacatalog.Reservation) return false; #undef DO_ } #endif // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER -void ExtendReservationRequest::SerializeWithCachedSizes( +void Reservation::SerializeWithCachedSizes( ::google::protobuf::io::CodedOutputStream* output) const { - // @@protoc_insertion_point(serialize_start:datacatalog.ExtendReservationRequest) + // @@protoc_insertion_point(serialize_start:datacatalog.Reservation) ::google::protobuf::uint32 cached_has_bits = 0; (void) cached_has_bits; - // .datacatalog.DatasetID dataset_id = 1; - if (this->has_dataset_id()) { + // .datacatalog.ReservationID reservation_id = 1; + if (this->has_reservation_id()) { ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray( - 1, HasBitSetters::dataset_id(this), output); - } - - // string tag_name = 2; - if (this->tag_name().size() > 0) { - ::google::protobuf::internal::WireFormatLite::VerifyUtf8String( - this->tag_name().data(), static_cast(this->tag_name().length()), - ::google::protobuf::internal::WireFormatLite::SERIALIZE, - "datacatalog.ExtendReservationRequest.tag_name"); - ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased( - 2, this->tag_name(), output); + 1, HasBitSetters::reservation_id(this), output); } - // string owner_id = 3; + // string owner_id = 2; if (this->owner_id().size() > 0) { ::google::protobuf::internal::WireFormatLite::VerifyUtf8String( this->owner_id().data(), static_cast(this->owner_id().length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, - "datacatalog.ExtendReservationRequest.owner_id"); + "datacatalog.Reservation.owner_id"); ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased( - 3, this->owner_id(), output); + 2, this->owner_id(), output); + } + + // .google.protobuf.Duration heartbeat_interval = 3; + if (this->has_heartbeat_interval()) { + ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray( + 3, HasBitSetters::heartbeat_interval(this), output); + } + + // .google.protobuf.Timestamp expires_at = 4; + if (this->has_expires_at()) { + ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray( + 4, HasBitSetters::expires_at(this), output); + } + + // .datacatalog.Metadata metadata = 6; + if (this->has_metadata()) { + ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray( + 6, HasBitSetters::metadata(this), output); } if (_internal_metadata_.have_unknown_fields()) { ::google::protobuf::internal::WireFormat::SerializeUnknownFields( _internal_metadata_.unknown_fields(), output); } - // @@protoc_insertion_point(serialize_end:datacatalog.ExtendReservationRequest) + // @@protoc_insertion_point(serialize_end:datacatalog.Reservation) } -::google::protobuf::uint8* ExtendReservationRequest::InternalSerializeWithCachedSizesToArray( +::google::protobuf::uint8* Reservation::InternalSerializeWithCachedSizesToArray( ::google::protobuf::uint8* target) const { - // @@protoc_insertion_point(serialize_to_array_start:datacatalog.ExtendReservationRequest) + // @@protoc_insertion_point(serialize_to_array_start:datacatalog.Reservation) ::google::protobuf::uint32 cached_has_bits = 0; (void) cached_has_bits; - // .datacatalog.DatasetID dataset_id = 1; - if (this->has_dataset_id()) { + // .datacatalog.ReservationID reservation_id = 1; + if (this->has_reservation_id()) { target = ::google::protobuf::internal::WireFormatLite:: InternalWriteMessageToArray( - 1, HasBitSetters::dataset_id(this), target); - } - - // string tag_name = 2; - if (this->tag_name().size() > 0) { - ::google::protobuf::internal::WireFormatLite::VerifyUtf8String( - this->tag_name().data(), static_cast(this->tag_name().length()), - ::google::protobuf::internal::WireFormatLite::SERIALIZE, - "datacatalog.ExtendReservationRequest.tag_name"); - target = - ::google::protobuf::internal::WireFormatLite::WriteStringToArray( - 2, this->tag_name(), target); + 1, HasBitSetters::reservation_id(this), target); } - // string owner_id = 3; + // string owner_id = 2; if (this->owner_id().size() > 0) { ::google::protobuf::internal::WireFormatLite::VerifyUtf8String( this->owner_id().data(), static_cast(this->owner_id().length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, - "datacatalog.ExtendReservationRequest.owner_id"); + "datacatalog.Reservation.owner_id"); target = ::google::protobuf::internal::WireFormatLite::WriteStringToArray( - 3, this->owner_id(), target); + 2, this->owner_id(), target); + } + + // .google.protobuf.Duration heartbeat_interval = 3; + if (this->has_heartbeat_interval()) { + target = ::google::protobuf::internal::WireFormatLite:: + InternalWriteMessageToArray( + 3, HasBitSetters::heartbeat_interval(this), target); + } + + // .google.protobuf.Timestamp expires_at = 4; + if (this->has_expires_at()) { + target = ::google::protobuf::internal::WireFormatLite:: + InternalWriteMessageToArray( + 4, HasBitSetters::expires_at(this), target); + } + + // .datacatalog.Metadata metadata = 6; + if (this->has_metadata()) { + target = ::google::protobuf::internal::WireFormatLite:: + InternalWriteMessageToArray( + 6, HasBitSetters::metadata(this), 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:datacatalog.ExtendReservationRequest) + // @@protoc_insertion_point(serialize_to_array_end:datacatalog.Reservation) return target; } -size_t ExtendReservationRequest::ByteSizeLong() const { -// @@protoc_insertion_point(message_byte_size_start:datacatalog.ExtendReservationRequest) +size_t Reservation::ByteSizeLong() const { +// @@protoc_insertion_point(message_byte_size_start:datacatalog.Reservation) size_t total_size = 0; if (_internal_metadata_.have_unknown_fields()) { @@ -7283,25 +6896,39 @@ size_t ExtendReservationRequest::ByteSizeLong() const { // Prevent compiler warnings about cached_has_bits being unused (void) cached_has_bits; - // string tag_name = 2; - if (this->tag_name().size() > 0) { + // string owner_id = 2; + if (this->owner_id().size() > 0) { total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize( - this->tag_name()); + this->owner_id()); } - // string owner_id = 3; - if (this->owner_id().size() > 0) { + // .datacatalog.ReservationID reservation_id = 1; + if (this->has_reservation_id()) { total_size += 1 + - ::google::protobuf::internal::WireFormatLite::StringSize( - this->owner_id()); + ::google::protobuf::internal::WireFormatLite::MessageSize( + *reservation_id_); } - // .datacatalog.DatasetID dataset_id = 1; - if (this->has_dataset_id()) { + // .google.protobuf.Duration heartbeat_interval = 3; + if (this->has_heartbeat_interval()) { total_size += 1 + ::google::protobuf::internal::WireFormatLite::MessageSize( - *dataset_id_); + *heartbeat_interval_); + } + + // .google.protobuf.Timestamp expires_at = 4; + if (this->has_expires_at()) { + total_size += 1 + + ::google::protobuf::internal::WireFormatLite::MessageSize( + *expires_at_); + } + + // .datacatalog.Metadata metadata = 6; + if (this->has_metadata()) { + total_size += 1 + + ::google::protobuf::internal::WireFormatLite::MessageSize( + *metadata_); } int cached_size = ::google::protobuf::internal::ToCachedSize(total_size); @@ -7309,74 +6936,80 @@ size_t ExtendReservationRequest::ByteSizeLong() const { return total_size; } -void ExtendReservationRequest::MergeFrom(const ::google::protobuf::Message& from) { -// @@protoc_insertion_point(generalized_merge_from_start:datacatalog.ExtendReservationRequest) +void Reservation::MergeFrom(const ::google::protobuf::Message& from) { +// @@protoc_insertion_point(generalized_merge_from_start:datacatalog.Reservation) GOOGLE_DCHECK_NE(&from, this); - const ExtendReservationRequest* source = - ::google::protobuf::DynamicCastToGenerated( + const Reservation* source = + ::google::protobuf::DynamicCastToGenerated( &from); if (source == nullptr) { - // @@protoc_insertion_point(generalized_merge_from_cast_fail:datacatalog.ExtendReservationRequest) + // @@protoc_insertion_point(generalized_merge_from_cast_fail:datacatalog.Reservation) ::google::protobuf::internal::ReflectionOps::Merge(from, this); } else { - // @@protoc_insertion_point(generalized_merge_from_cast_success:datacatalog.ExtendReservationRequest) + // @@protoc_insertion_point(generalized_merge_from_cast_success:datacatalog.Reservation) MergeFrom(*source); } } -void ExtendReservationRequest::MergeFrom(const ExtendReservationRequest& from) { -// @@protoc_insertion_point(class_specific_merge_from_start:datacatalog.ExtendReservationRequest) +void Reservation::MergeFrom(const Reservation& from) { +// @@protoc_insertion_point(class_specific_merge_from_start:datacatalog.Reservation) GOOGLE_DCHECK_NE(&from, this); _internal_metadata_.MergeFrom(from._internal_metadata_); ::google::protobuf::uint32 cached_has_bits = 0; (void) cached_has_bits; - if (from.tag_name().size() > 0) { - - tag_name_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.tag_name_); - } if (from.owner_id().size() > 0) { owner_id_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.owner_id_); } - if (from.has_dataset_id()) { - mutable_dataset_id()->::datacatalog::DatasetID::MergeFrom(from.dataset_id()); + if (from.has_reservation_id()) { + mutable_reservation_id()->::datacatalog::ReservationID::MergeFrom(from.reservation_id()); + } + if (from.has_heartbeat_interval()) { + mutable_heartbeat_interval()->::google::protobuf::Duration::MergeFrom(from.heartbeat_interval()); + } + if (from.has_expires_at()) { + mutable_expires_at()->::google::protobuf::Timestamp::MergeFrom(from.expires_at()); + } + if (from.has_metadata()) { + mutable_metadata()->::datacatalog::Metadata::MergeFrom(from.metadata()); } } -void ExtendReservationRequest::CopyFrom(const ::google::protobuf::Message& from) { -// @@protoc_insertion_point(generalized_copy_from_start:datacatalog.ExtendReservationRequest) +void Reservation::CopyFrom(const ::google::protobuf::Message& from) { +// @@protoc_insertion_point(generalized_copy_from_start:datacatalog.Reservation) if (&from == this) return; Clear(); MergeFrom(from); } -void ExtendReservationRequest::CopyFrom(const ExtendReservationRequest& from) { -// @@protoc_insertion_point(class_specific_copy_from_start:datacatalog.ExtendReservationRequest) +void Reservation::CopyFrom(const Reservation& from) { +// @@protoc_insertion_point(class_specific_copy_from_start:datacatalog.Reservation) if (&from == this) return; Clear(); MergeFrom(from); } -bool ExtendReservationRequest::IsInitialized() const { +bool Reservation::IsInitialized() const { return true; } -void ExtendReservationRequest::Swap(ExtendReservationRequest* other) { +void Reservation::Swap(Reservation* other) { if (other == this) return; InternalSwap(other); } -void ExtendReservationRequest::InternalSwap(ExtendReservationRequest* other) { +void Reservation::InternalSwap(Reservation* other) { using std::swap; _internal_metadata_.Swap(&other->_internal_metadata_); - tag_name_.Swap(&other->tag_name_, &::google::protobuf::internal::GetEmptyStringAlreadyInited(), - GetArenaNoVirtual()); owner_id_.Swap(&other->owner_id_, &::google::protobuf::internal::GetEmptyStringAlreadyInited(), GetArenaNoVirtual()); - swap(dataset_id_, other->dataset_id_); + swap(reservation_id_, other->reservation_id_); + swap(heartbeat_interval_, other->heartbeat_interval_); + swap(expires_at_, other->expires_at_); + swap(metadata_, other->metadata_); } -::google::protobuf::Metadata ExtendReservationRequest::GetMetadata() const { +::google::protobuf::Metadata Reservation::GetMetadata() const { ::google::protobuf::internal::AssignDescriptors(&::assign_descriptors_table_flyteidl_2fdatacatalog_2fdatacatalog_2eproto); return ::file_level_metadata_flyteidl_2fdatacatalog_2fdatacatalog_2eproto[kIndexInFileMessages]; } @@ -7384,60 +7017,81 @@ ::google::protobuf::Metadata ExtendReservationRequest::GetMetadata() const { // =================================================================== -void ExtendReservationResponse::InitAsDefaultInstance() { +void GetOrExtendReservationResponse::InitAsDefaultInstance() { + ::datacatalog::_GetOrExtendReservationResponse_default_instance_._instance.get_mutable()->reservation_ = const_cast< ::datacatalog::Reservation*>( + ::datacatalog::Reservation::internal_default_instance()); } -class ExtendReservationResponse::HasBitSetters { +class GetOrExtendReservationResponse::HasBitSetters { public: + static const ::datacatalog::Reservation& reservation(const GetOrExtendReservationResponse* msg); }; +const ::datacatalog::Reservation& +GetOrExtendReservationResponse::HasBitSetters::reservation(const GetOrExtendReservationResponse* msg) { + return *msg->reservation_; +} #if !defined(_MSC_VER) || _MSC_VER >= 1900 +const int GetOrExtendReservationResponse::kReservationFieldNumber; #endif // !defined(_MSC_VER) || _MSC_VER >= 1900 -ExtendReservationResponse::ExtendReservationResponse() +GetOrExtendReservationResponse::GetOrExtendReservationResponse() : ::google::protobuf::Message(), _internal_metadata_(nullptr) { SharedCtor(); - // @@protoc_insertion_point(constructor:datacatalog.ExtendReservationResponse) + // @@protoc_insertion_point(constructor:datacatalog.GetOrExtendReservationResponse) } -ExtendReservationResponse::ExtendReservationResponse(const ExtendReservationResponse& from) +GetOrExtendReservationResponse::GetOrExtendReservationResponse(const GetOrExtendReservationResponse& from) : ::google::protobuf::Message(), _internal_metadata_(nullptr) { _internal_metadata_.MergeFrom(from._internal_metadata_); - // @@protoc_insertion_point(copy_constructor:datacatalog.ExtendReservationResponse) + if (from.has_reservation()) { + reservation_ = new ::datacatalog::Reservation(*from.reservation_); + } else { + reservation_ = nullptr; + } + // @@protoc_insertion_point(copy_constructor:datacatalog.GetOrExtendReservationResponse) } -void ExtendReservationResponse::SharedCtor() { +void GetOrExtendReservationResponse::SharedCtor() { + ::google::protobuf::internal::InitSCC( + &scc_info_GetOrExtendReservationResponse_flyteidl_2fdatacatalog_2fdatacatalog_2eproto.base); + reservation_ = nullptr; } -ExtendReservationResponse::~ExtendReservationResponse() { - // @@protoc_insertion_point(destructor:datacatalog.ExtendReservationResponse) +GetOrExtendReservationResponse::~GetOrExtendReservationResponse() { + // @@protoc_insertion_point(destructor:datacatalog.GetOrExtendReservationResponse) SharedDtor(); } -void ExtendReservationResponse::SharedDtor() { +void GetOrExtendReservationResponse::SharedDtor() { + if (this != internal_default_instance()) delete reservation_; } -void ExtendReservationResponse::SetCachedSize(int size) const { +void GetOrExtendReservationResponse::SetCachedSize(int size) const { _cached_size_.Set(size); } -const ExtendReservationResponse& ExtendReservationResponse::default_instance() { - ::google::protobuf::internal::InitSCC(&::scc_info_ExtendReservationResponse_flyteidl_2fdatacatalog_2fdatacatalog_2eproto.base); +const GetOrExtendReservationResponse& GetOrExtendReservationResponse::default_instance() { + ::google::protobuf::internal::InitSCC(&::scc_info_GetOrExtendReservationResponse_flyteidl_2fdatacatalog_2fdatacatalog_2eproto.base); return *internal_default_instance(); } -void ExtendReservationResponse::Clear() { -// @@protoc_insertion_point(message_clear_start:datacatalog.ExtendReservationResponse) +void GetOrExtendReservationResponse::Clear() { +// @@protoc_insertion_point(message_clear_start:datacatalog.GetOrExtendReservationResponse) ::google::protobuf::uint32 cached_has_bits = 0; // Prevent compiler warnings about cached_has_bits being unused (void) cached_has_bits; + if (GetArenaNoVirtual() == nullptr && reservation_ != nullptr) { + delete reservation_; + } + reservation_ = nullptr; _internal_metadata_.Clear(); } #if GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER -const char* ExtendReservationResponse::_InternalParse(const char* begin, const char* end, void* object, +const char* GetOrExtendReservationResponse::_InternalParse(const char* begin, const char* end, void* object, ::google::protobuf::internal::ParseContext* ctx) { - auto msg = static_cast(object); + auto msg = static_cast(object); ::google::protobuf::int32 size; (void)size; int depth; (void)depth; ::google::protobuf::uint32 tag; @@ -7447,7 +7101,21 @@ const char* ExtendReservationResponse::_InternalParse(const char* begin, const c ptr = ::google::protobuf::io::Parse32(ptr, &tag); GOOGLE_PROTOBUF_PARSER_ASSERT(ptr); switch (tag >> 3) { + // .datacatalog.Reservation reservation = 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 = ::datacatalog::Reservation::_InternalParse; + object = msg->mutable_reservation(); + 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; + } default: { + handle_unusual: if ((tag & 7) == 4 || tag == 0) { ctx->EndGroup(tag); return ptr; @@ -7461,63 +7129,95 @@ const char* ExtendReservationResponse::_InternalParse(const char* begin, const c } // 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 ExtendReservationResponse::MergePartialFromCodedStream( +bool GetOrExtendReservationResponse::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:datacatalog.ExtendReservationResponse) + // @@protoc_insertion_point(parse_start:datacatalog.GetOrExtendReservationResponse) 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; + switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) { + // .datacatalog.Reservation reservation = 1; + case 1: { + if (static_cast< ::google::protobuf::uint8>(tag) == (10 & 0xFF)) { + DO_(::google::protobuf::internal::WireFormatLite::ReadMessage( + input, mutable_reservation())); + } 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; + } } - DO_(::google::protobuf::internal::WireFormat::SkipField( - input, tag, _internal_metadata_.mutable_unknown_fields())); } success: - // @@protoc_insertion_point(parse_success:datacatalog.ExtendReservationResponse) + // @@protoc_insertion_point(parse_success:datacatalog.GetOrExtendReservationResponse) return true; failure: - // @@protoc_insertion_point(parse_failure:datacatalog.ExtendReservationResponse) + // @@protoc_insertion_point(parse_failure:datacatalog.GetOrExtendReservationResponse) return false; #undef DO_ } #endif // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER -void ExtendReservationResponse::SerializeWithCachedSizes( +void GetOrExtendReservationResponse::SerializeWithCachedSizes( ::google::protobuf::io::CodedOutputStream* output) const { - // @@protoc_insertion_point(serialize_start:datacatalog.ExtendReservationResponse) + // @@protoc_insertion_point(serialize_start:datacatalog.GetOrExtendReservationResponse) ::google::protobuf::uint32 cached_has_bits = 0; (void) cached_has_bits; + // .datacatalog.Reservation reservation = 1; + if (this->has_reservation()) { + ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray( + 1, HasBitSetters::reservation(this), output); + } + if (_internal_metadata_.have_unknown_fields()) { ::google::protobuf::internal::WireFormat::SerializeUnknownFields( _internal_metadata_.unknown_fields(), output); } - // @@protoc_insertion_point(serialize_end:datacatalog.ExtendReservationResponse) + // @@protoc_insertion_point(serialize_end:datacatalog.GetOrExtendReservationResponse) } -::google::protobuf::uint8* ExtendReservationResponse::InternalSerializeWithCachedSizesToArray( +::google::protobuf::uint8* GetOrExtendReservationResponse::InternalSerializeWithCachedSizesToArray( ::google::protobuf::uint8* target) const { - // @@protoc_insertion_point(serialize_to_array_start:datacatalog.ExtendReservationResponse) + // @@protoc_insertion_point(serialize_to_array_start:datacatalog.GetOrExtendReservationResponse) ::google::protobuf::uint32 cached_has_bits = 0; (void) cached_has_bits; + // .datacatalog.Reservation reservation = 1; + if (this->has_reservation()) { + target = ::google::protobuf::internal::WireFormatLite:: + InternalWriteMessageToArray( + 1, HasBitSetters::reservation(this), 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:datacatalog.ExtendReservationResponse) + // @@protoc_insertion_point(serialize_to_array_end:datacatalog.GetOrExtendReservationResponse) return target; } -size_t ExtendReservationResponse::ByteSizeLong() const { -// @@protoc_insertion_point(message_byte_size_start:datacatalog.ExtendReservationResponse) +size_t GetOrExtendReservationResponse::ByteSizeLong() const { +// @@protoc_insertion_point(message_byte_size_start:datacatalog.GetOrExtendReservationResponse) size_t total_size = 0; if (_internal_metadata_.have_unknown_fields()) { @@ -7529,63 +7229,74 @@ size_t ExtendReservationResponse::ByteSizeLong() const { // Prevent compiler warnings about cached_has_bits being unused (void) cached_has_bits; + // .datacatalog.Reservation reservation = 1; + if (this->has_reservation()) { + total_size += 1 + + ::google::protobuf::internal::WireFormatLite::MessageSize( + *reservation_); + } + int cached_size = ::google::protobuf::internal::ToCachedSize(total_size); SetCachedSize(cached_size); return total_size; } -void ExtendReservationResponse::MergeFrom(const ::google::protobuf::Message& from) { -// @@protoc_insertion_point(generalized_merge_from_start:datacatalog.ExtendReservationResponse) +void GetOrExtendReservationResponse::MergeFrom(const ::google::protobuf::Message& from) { +// @@protoc_insertion_point(generalized_merge_from_start:datacatalog.GetOrExtendReservationResponse) GOOGLE_DCHECK_NE(&from, this); - const ExtendReservationResponse* source = - ::google::protobuf::DynamicCastToGenerated( + const GetOrExtendReservationResponse* source = + ::google::protobuf::DynamicCastToGenerated( &from); if (source == nullptr) { - // @@protoc_insertion_point(generalized_merge_from_cast_fail:datacatalog.ExtendReservationResponse) + // @@protoc_insertion_point(generalized_merge_from_cast_fail:datacatalog.GetOrExtendReservationResponse) ::google::protobuf::internal::ReflectionOps::Merge(from, this); } else { - // @@protoc_insertion_point(generalized_merge_from_cast_success:datacatalog.ExtendReservationResponse) + // @@protoc_insertion_point(generalized_merge_from_cast_success:datacatalog.GetOrExtendReservationResponse) MergeFrom(*source); } } -void ExtendReservationResponse::MergeFrom(const ExtendReservationResponse& from) { -// @@protoc_insertion_point(class_specific_merge_from_start:datacatalog.ExtendReservationResponse) +void GetOrExtendReservationResponse::MergeFrom(const GetOrExtendReservationResponse& from) { +// @@protoc_insertion_point(class_specific_merge_from_start:datacatalog.GetOrExtendReservationResponse) 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_reservation()) { + mutable_reservation()->::datacatalog::Reservation::MergeFrom(from.reservation()); + } } -void ExtendReservationResponse::CopyFrom(const ::google::protobuf::Message& from) { -// @@protoc_insertion_point(generalized_copy_from_start:datacatalog.ExtendReservationResponse) +void GetOrExtendReservationResponse::CopyFrom(const ::google::protobuf::Message& from) { +// @@protoc_insertion_point(generalized_copy_from_start:datacatalog.GetOrExtendReservationResponse) if (&from == this) return; Clear(); MergeFrom(from); } -void ExtendReservationResponse::CopyFrom(const ExtendReservationResponse& from) { -// @@protoc_insertion_point(class_specific_copy_from_start:datacatalog.ExtendReservationResponse) +void GetOrExtendReservationResponse::CopyFrom(const GetOrExtendReservationResponse& from) { +// @@protoc_insertion_point(class_specific_copy_from_start:datacatalog.GetOrExtendReservationResponse) if (&from == this) return; Clear(); MergeFrom(from); } -bool ExtendReservationResponse::IsInitialized() const { +bool GetOrExtendReservationResponse::IsInitialized() const { return true; } -void ExtendReservationResponse::Swap(ExtendReservationResponse* other) { +void GetOrExtendReservationResponse::Swap(GetOrExtendReservationResponse* other) { if (other == this) return; InternalSwap(other); } -void ExtendReservationResponse::InternalSwap(ExtendReservationResponse* other) { +void GetOrExtendReservationResponse::InternalSwap(GetOrExtendReservationResponse* other) { using std::swap; _internal_metadata_.Swap(&other->_internal_metadata_); + swap(reservation_, other->reservation_); } -::google::protobuf::Metadata ExtendReservationResponse::GetMetadata() const { +::google::protobuf::Metadata GetOrExtendReservationResponse::GetMetadata() const { ::google::protobuf::internal::AssignDescriptors(&::assign_descriptors_table_flyteidl_2fdatacatalog_2fdatacatalog_2eproto); return ::file_level_metadata_flyteidl_2fdatacatalog_2fdatacatalog_2eproto[kIndexInFileMessages]; } @@ -7594,21 +7305,20 @@ ::google::protobuf::Metadata ExtendReservationResponse::GetMetadata() const { // =================================================================== void ReleaseReservationRequest::InitAsDefaultInstance() { - ::datacatalog::_ReleaseReservationRequest_default_instance_._instance.get_mutable()->dataset_id_ = const_cast< ::datacatalog::DatasetID*>( - ::datacatalog::DatasetID::internal_default_instance()); + ::datacatalog::_ReleaseReservationRequest_default_instance_._instance.get_mutable()->reservation_id_ = const_cast< ::datacatalog::ReservationID*>( + ::datacatalog::ReservationID::internal_default_instance()); } class ReleaseReservationRequest::HasBitSetters { public: - static const ::datacatalog::DatasetID& dataset_id(const ReleaseReservationRequest* msg); + static const ::datacatalog::ReservationID& reservation_id(const ReleaseReservationRequest* msg); }; -const ::datacatalog::DatasetID& -ReleaseReservationRequest::HasBitSetters::dataset_id(const ReleaseReservationRequest* msg) { - return *msg->dataset_id_; +const ::datacatalog::ReservationID& +ReleaseReservationRequest::HasBitSetters::reservation_id(const ReleaseReservationRequest* msg) { + return *msg->reservation_id_; } #if !defined(_MSC_VER) || _MSC_VER >= 1900 -const int ReleaseReservationRequest::kDatasetIdFieldNumber; -const int ReleaseReservationRequest::kTagNameFieldNumber; +const int ReleaseReservationRequest::kReservationIdFieldNumber; const int ReleaseReservationRequest::kOwnerIdFieldNumber; #endif // !defined(_MSC_VER) || _MSC_VER >= 1900 @@ -7621,18 +7331,14 @@ ReleaseReservationRequest::ReleaseReservationRequest(const ReleaseReservationReq : ::google::protobuf::Message(), _internal_metadata_(nullptr) { _internal_metadata_.MergeFrom(from._internal_metadata_); - tag_name_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited()); - if (from.tag_name().size() > 0) { - tag_name_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.tag_name_); - } owner_id_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited()); if (from.owner_id().size() > 0) { owner_id_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.owner_id_); } - if (from.has_dataset_id()) { - dataset_id_ = new ::datacatalog::DatasetID(*from.dataset_id_); + if (from.has_reservation_id()) { + reservation_id_ = new ::datacatalog::ReservationID(*from.reservation_id_); } else { - dataset_id_ = nullptr; + reservation_id_ = nullptr; } // @@protoc_insertion_point(copy_constructor:datacatalog.ReleaseReservationRequest) } @@ -7640,9 +7346,8 @@ ReleaseReservationRequest::ReleaseReservationRequest(const ReleaseReservationReq void ReleaseReservationRequest::SharedCtor() { ::google::protobuf::internal::InitSCC( &scc_info_ReleaseReservationRequest_flyteidl_2fdatacatalog_2fdatacatalog_2eproto.base); - tag_name_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited()); owner_id_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited()); - dataset_id_ = nullptr; + reservation_id_ = nullptr; } ReleaseReservationRequest::~ReleaseReservationRequest() { @@ -7651,9 +7356,8 @@ ReleaseReservationRequest::~ReleaseReservationRequest() { } void ReleaseReservationRequest::SharedDtor() { - tag_name_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited()); owner_id_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited()); - if (this != internal_default_instance()) delete dataset_id_; + if (this != internal_default_instance()) delete reservation_id_; } void ReleaseReservationRequest::SetCachedSize(int size) const { @@ -7671,12 +7375,11 @@ void ReleaseReservationRequest::Clear() { // Prevent compiler warnings about cached_has_bits being unused (void) cached_has_bits; - tag_name_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited()); owner_id_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited()); - if (GetArenaNoVirtual() == nullptr && dataset_id_ != nullptr) { - delete dataset_id_; + if (GetArenaNoVirtual() == nullptr && reservation_id_ != nullptr) { + delete reservation_id_; } - dataset_id_ = nullptr; + reservation_id_ = nullptr; _internal_metadata_.Clear(); } @@ -7693,40 +7396,24 @@ const char* ReleaseReservationRequest::_InternalParse(const char* begin, const c ptr = ::google::protobuf::io::Parse32(ptr, &tag); GOOGLE_PROTOBUF_PARSER_ASSERT(ptr); switch (tag >> 3) { - // .datacatalog.DatasetID dataset_id = 1; + // .datacatalog.ReservationID reservation_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 = ::datacatalog::DatasetID::_InternalParse; - object = msg->mutable_dataset_id(); + parser_till_end = ::datacatalog::ReservationID::_InternalParse; + object = msg->mutable_reservation_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; } - // string tag_name = 2; + // string owner_id = 2; case 2: { if (static_cast<::google::protobuf::uint8>(tag) != 18) goto handle_unusual; ptr = ::google::protobuf::io::ReadSize(ptr, &size); GOOGLE_PROTOBUF_PARSER_ASSERT(ptr); - ctx->extra_parse_data().SetFieldName("datacatalog.ReleaseReservationRequest.tag_name"); - object = msg->mutable_tag_name(); - if (size > end - ptr + ::google::protobuf::internal::ParseContext::kSlopBytes) { - parser_till_end = ::google::protobuf::internal::GreedyStringParserUTF8; - goto string_till_end; - } - GOOGLE_PROTOBUF_PARSER_ASSERT(::google::protobuf::internal::StringCheckUTF8(ptr, size, ctx)); - ::google::protobuf::internal::InlineGreedyStringParser(object, ptr, size, ctx); - ptr += size; - break; - } - // string owner_id = 3; - case 3: { - if (static_cast<::google::protobuf::uint8>(tag) != 26) goto handle_unusual; - ptr = ::google::protobuf::io::ReadSize(ptr, &size); - GOOGLE_PROTOBUF_PARSER_ASSERT(ptr); ctx->extra_parse_data().SetFieldName("datacatalog.ReleaseReservationRequest.owner_id"); object = msg->mutable_owner_id(); if (size > end - ptr + ::google::protobuf::internal::ParseContext::kSlopBytes) { @@ -7772,35 +7459,20 @@ bool ReleaseReservationRequest::MergePartialFromCodedStream( tag = p.first; if (!p.second) goto handle_unusual; switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) { - // .datacatalog.DatasetID dataset_id = 1; + // .datacatalog.ReservationID reservation_id = 1; case 1: { if (static_cast< ::google::protobuf::uint8>(tag) == (10 & 0xFF)) { DO_(::google::protobuf::internal::WireFormatLite::ReadMessage( - input, mutable_dataset_id())); + input, mutable_reservation_id())); } else { goto handle_unusual; } break; } - // string tag_name = 2; + // string owner_id = 2; case 2: { if (static_cast< ::google::protobuf::uint8>(tag) == (18 & 0xFF)) { - DO_(::google::protobuf::internal::WireFormatLite::ReadString( - input, this->mutable_tag_name())); - DO_(::google::protobuf::internal::WireFormatLite::VerifyUtf8String( - this->tag_name().data(), static_cast(this->tag_name().length()), - ::google::protobuf::internal::WireFormatLite::PARSE, - "datacatalog.ReleaseReservationRequest.tag_name")); - } else { - goto handle_unusual; - } - break; - } - - // string owner_id = 3; - case 3: { - if (static_cast< ::google::protobuf::uint8>(tag) == (26 & 0xFF)) { DO_(::google::protobuf::internal::WireFormatLite::ReadString( input, this->mutable_owner_id())); DO_(::google::protobuf::internal::WireFormatLite::VerifyUtf8String( @@ -7840,30 +7512,20 @@ void ReleaseReservationRequest::SerializeWithCachedSizes( ::google::protobuf::uint32 cached_has_bits = 0; (void) cached_has_bits; - // .datacatalog.DatasetID dataset_id = 1; - if (this->has_dataset_id()) { + // .datacatalog.ReservationID reservation_id = 1; + if (this->has_reservation_id()) { ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray( - 1, HasBitSetters::dataset_id(this), output); - } - - // string tag_name = 2; - if (this->tag_name().size() > 0) { - ::google::protobuf::internal::WireFormatLite::VerifyUtf8String( - this->tag_name().data(), static_cast(this->tag_name().length()), - ::google::protobuf::internal::WireFormatLite::SERIALIZE, - "datacatalog.ReleaseReservationRequest.tag_name"); - ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased( - 2, this->tag_name(), output); + 1, HasBitSetters::reservation_id(this), output); } - // string owner_id = 3; + // string owner_id = 2; if (this->owner_id().size() > 0) { ::google::protobuf::internal::WireFormatLite::VerifyUtf8String( this->owner_id().data(), static_cast(this->owner_id().length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "datacatalog.ReleaseReservationRequest.owner_id"); ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased( - 3, this->owner_id(), output); + 2, this->owner_id(), output); } if (_internal_metadata_.have_unknown_fields()) { @@ -7879,25 +7541,14 @@ ::google::protobuf::uint8* ReleaseReservationRequest::InternalSerializeWithCache ::google::protobuf::uint32 cached_has_bits = 0; (void) cached_has_bits; - // .datacatalog.DatasetID dataset_id = 1; - if (this->has_dataset_id()) { + // .datacatalog.ReservationID reservation_id = 1; + if (this->has_reservation_id()) { target = ::google::protobuf::internal::WireFormatLite:: InternalWriteMessageToArray( - 1, HasBitSetters::dataset_id(this), target); - } - - // string tag_name = 2; - if (this->tag_name().size() > 0) { - ::google::protobuf::internal::WireFormatLite::VerifyUtf8String( - this->tag_name().data(), static_cast(this->tag_name().length()), - ::google::protobuf::internal::WireFormatLite::SERIALIZE, - "datacatalog.ReleaseReservationRequest.tag_name"); - target = - ::google::protobuf::internal::WireFormatLite::WriteStringToArray( - 2, this->tag_name(), target); + 1, HasBitSetters::reservation_id(this), target); } - // string owner_id = 3; + // string owner_id = 2; if (this->owner_id().size() > 0) { ::google::protobuf::internal::WireFormatLite::VerifyUtf8String( this->owner_id().data(), static_cast(this->owner_id().length()), @@ -7905,7 +7556,7 @@ ::google::protobuf::uint8* ReleaseReservationRequest::InternalSerializeWithCache "datacatalog.ReleaseReservationRequest.owner_id"); target = ::google::protobuf::internal::WireFormatLite::WriteStringToArray( - 3, this->owner_id(), target); + 2, this->owner_id(), target); } if (_internal_metadata_.have_unknown_fields()) { @@ -7929,25 +7580,18 @@ size_t ReleaseReservationRequest::ByteSizeLong() const { // Prevent compiler warnings about cached_has_bits being unused (void) cached_has_bits; - // string tag_name = 2; - if (this->tag_name().size() > 0) { - total_size += 1 + - ::google::protobuf::internal::WireFormatLite::StringSize( - this->tag_name()); - } - - // string owner_id = 3; + // string owner_id = 2; if (this->owner_id().size() > 0) { total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize( this->owner_id()); } - // .datacatalog.DatasetID dataset_id = 1; - if (this->has_dataset_id()) { + // .datacatalog.ReservationID reservation_id = 1; + if (this->has_reservation_id()) { total_size += 1 + ::google::protobuf::internal::WireFormatLite::MessageSize( - *dataset_id_); + *reservation_id_); } int cached_size = ::google::protobuf::internal::ToCachedSize(total_size); @@ -7977,16 +7621,12 @@ void ReleaseReservationRequest::MergeFrom(const ReleaseReservationRequest& from) ::google::protobuf::uint32 cached_has_bits = 0; (void) cached_has_bits; - if (from.tag_name().size() > 0) { - - tag_name_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.tag_name_); - } if (from.owner_id().size() > 0) { owner_id_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.owner_id_); } - if (from.has_dataset_id()) { - mutable_dataset_id()->::datacatalog::DatasetID::MergeFrom(from.dataset_id()); + if (from.has_reservation_id()) { + mutable_reservation_id()->::datacatalog::ReservationID::MergeFrom(from.reservation_id()); } } @@ -8015,11 +7655,9 @@ void ReleaseReservationRequest::Swap(ReleaseReservationRequest* other) { void ReleaseReservationRequest::InternalSwap(ReleaseReservationRequest* other) { using std::swap; _internal_metadata_.Swap(&other->_internal_metadata_); - tag_name_.Swap(&other->tag_name_, &::google::protobuf::internal::GetEmptyStringAlreadyInited(), - GetArenaNoVirtual()); owner_id_.Swap(&other->owner_id_, &::google::protobuf::internal::GetEmptyStringAlreadyInited(), GetArenaNoVirtual()); - swap(dataset_id_, other->dataset_id_); + swap(reservation_id_, other->reservation_id_); } ::google::protobuf::Metadata ReleaseReservationRequest::GetMetadata() const { @@ -11124,7 +10762,7 @@ void Metadata_KeyMapEntry_DoNotUse::MergeFrom(const Metadata_KeyMapEntry_DoNotUs } ::google::protobuf::Metadata Metadata_KeyMapEntry_DoNotUse::GetMetadata() const { ::google::protobuf::internal::AssignDescriptors(&::assign_descriptors_table_flyteidl_2fdatacatalog_2fdatacatalog_2eproto); - return ::file_level_metadata_flyteidl_2fdatacatalog_2fdatacatalog_2eproto[27]; + return ::file_level_metadata_flyteidl_2fdatacatalog_2fdatacatalog_2eproto[26]; } void Metadata_KeyMapEntry_DoNotUse::MergeFrom( const ::google::protobuf::Message& other) { @@ -14835,20 +14473,17 @@ template<> PROTOBUF_NOINLINE ::datacatalog::ListDatasetsRequest* Arena::CreateMa template<> PROTOBUF_NOINLINE ::datacatalog::ListDatasetsResponse* Arena::CreateMaybeMessage< ::datacatalog::ListDatasetsResponse >(Arena* arena) { return Arena::CreateInternal< ::datacatalog::ListDatasetsResponse >(arena); } -template<> PROTOBUF_NOINLINE ::datacatalog::GetOrReserveArtifactRequest* Arena::CreateMaybeMessage< ::datacatalog::GetOrReserveArtifactRequest >(Arena* arena) { - return Arena::CreateInternal< ::datacatalog::GetOrReserveArtifactRequest >(arena); -} -template<> PROTOBUF_NOINLINE ::datacatalog::ReservationStatus* Arena::CreateMaybeMessage< ::datacatalog::ReservationStatus >(Arena* arena) { - return Arena::CreateInternal< ::datacatalog::ReservationStatus >(arena); +template<> PROTOBUF_NOINLINE ::datacatalog::ReservationID* Arena::CreateMaybeMessage< ::datacatalog::ReservationID >(Arena* arena) { + return Arena::CreateInternal< ::datacatalog::ReservationID >(arena); } -template<> PROTOBUF_NOINLINE ::datacatalog::GetOrReserveArtifactResponse* Arena::CreateMaybeMessage< ::datacatalog::GetOrReserveArtifactResponse >(Arena* arena) { - return Arena::CreateInternal< ::datacatalog::GetOrReserveArtifactResponse >(arena); +template<> PROTOBUF_NOINLINE ::datacatalog::GetOrExtendReservationRequest* Arena::CreateMaybeMessage< ::datacatalog::GetOrExtendReservationRequest >(Arena* arena) { + return Arena::CreateInternal< ::datacatalog::GetOrExtendReservationRequest >(arena); } -template<> PROTOBUF_NOINLINE ::datacatalog::ExtendReservationRequest* Arena::CreateMaybeMessage< ::datacatalog::ExtendReservationRequest >(Arena* arena) { - return Arena::CreateInternal< ::datacatalog::ExtendReservationRequest >(arena); +template<> PROTOBUF_NOINLINE ::datacatalog::Reservation* Arena::CreateMaybeMessage< ::datacatalog::Reservation >(Arena* arena) { + return Arena::CreateInternal< ::datacatalog::Reservation >(arena); } -template<> PROTOBUF_NOINLINE ::datacatalog::ExtendReservationResponse* Arena::CreateMaybeMessage< ::datacatalog::ExtendReservationResponse >(Arena* arena) { - return Arena::CreateInternal< ::datacatalog::ExtendReservationResponse >(arena); +template<> PROTOBUF_NOINLINE ::datacatalog::GetOrExtendReservationResponse* Arena::CreateMaybeMessage< ::datacatalog::GetOrExtendReservationResponse >(Arena* arena) { + return Arena::CreateInternal< ::datacatalog::GetOrExtendReservationResponse >(arena); } template<> PROTOBUF_NOINLINE ::datacatalog::ReleaseReservationRequest* Arena::CreateMaybeMessage< ::datacatalog::ReleaseReservationRequest >(Arena* arena) { return Arena::CreateInternal< ::datacatalog::ReleaseReservationRequest >(arena); diff --git a/gen/pb-cpp/flyteidl/datacatalog/datacatalog.pb.h b/gen/pb-cpp/flyteidl/datacatalog/datacatalog.pb.h index b76dc224a..0033b0cd3 100644 --- a/gen/pb-cpp/flyteidl/datacatalog/datacatalog.pb.h +++ b/gen/pb-cpp/flyteidl/datacatalog/datacatalog.pb.h @@ -36,6 +36,7 @@ #include #include #include "flyteidl/core/literals.pb.h" +#include #include // @@protoc_insertion_point(includes) #include @@ -47,7 +48,7 @@ struct TableStruct_flyteidl_2fdatacatalog_2fdatacatalog_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[37] + static const ::google::protobuf::internal::ParseTable schema[36] PROTOBUF_SECTION_VARIABLE(protodesc_cold); static const ::google::protobuf::internal::FieldMetadata field_metadata[]; static const ::google::protobuf::internal::SerializationTable serialization_table[]; @@ -91,12 +92,6 @@ extern DatasetIDDefaultTypeInternal _DatasetID_default_instance_; class DatasetPropertyFilter; class DatasetPropertyFilterDefaultTypeInternal; extern DatasetPropertyFilterDefaultTypeInternal _DatasetPropertyFilter_default_instance_; -class ExtendReservationRequest; -class ExtendReservationRequestDefaultTypeInternal; -extern ExtendReservationRequestDefaultTypeInternal _ExtendReservationRequest_default_instance_; -class ExtendReservationResponse; -class ExtendReservationResponseDefaultTypeInternal; -extern ExtendReservationResponseDefaultTypeInternal _ExtendReservationResponse_default_instance_; class FilterExpression; class FilterExpressionDefaultTypeInternal; extern FilterExpressionDefaultTypeInternal _FilterExpression_default_instance_; @@ -112,12 +107,12 @@ extern GetDatasetRequestDefaultTypeInternal _GetDatasetRequest_default_instance_ class GetDatasetResponse; class GetDatasetResponseDefaultTypeInternal; extern GetDatasetResponseDefaultTypeInternal _GetDatasetResponse_default_instance_; -class GetOrReserveArtifactRequest; -class GetOrReserveArtifactRequestDefaultTypeInternal; -extern GetOrReserveArtifactRequestDefaultTypeInternal _GetOrReserveArtifactRequest_default_instance_; -class GetOrReserveArtifactResponse; -class GetOrReserveArtifactResponseDefaultTypeInternal; -extern GetOrReserveArtifactResponseDefaultTypeInternal _GetOrReserveArtifactResponse_default_instance_; +class GetOrExtendReservationRequest; +class GetOrExtendReservationRequestDefaultTypeInternal; +extern GetOrExtendReservationRequestDefaultTypeInternal _GetOrExtendReservationRequest_default_instance_; +class GetOrExtendReservationResponse; +class GetOrExtendReservationResponseDefaultTypeInternal; +extern GetOrExtendReservationResponseDefaultTypeInternal _GetOrExtendReservationResponse_default_instance_; class KeyValuePair; class KeyValuePairDefaultTypeInternal; extern KeyValuePairDefaultTypeInternal _KeyValuePair_default_instance_; @@ -154,9 +149,12 @@ extern ReleaseReservationRequestDefaultTypeInternal _ReleaseReservationRequest_d class ReleaseReservationResponse; class ReleaseReservationResponseDefaultTypeInternal; extern ReleaseReservationResponseDefaultTypeInternal _ReleaseReservationResponse_default_instance_; -class ReservationStatus; -class ReservationStatusDefaultTypeInternal; -extern ReservationStatusDefaultTypeInternal _ReservationStatus_default_instance_; +class Reservation; +class ReservationDefaultTypeInternal; +extern ReservationDefaultTypeInternal _Reservation_default_instance_; +class ReservationID; +class ReservationIDDefaultTypeInternal; +extern ReservationIDDefaultTypeInternal _ReservationID_default_instance_; class SinglePropertyFilter; class SinglePropertyFilterDefaultTypeInternal; extern SinglePropertyFilterDefaultTypeInternal _SinglePropertyFilter_default_instance_; @@ -181,15 +179,13 @@ template<> ::datacatalog::CreateDatasetResponse* Arena::CreateMaybeMessage<::dat template<> ::datacatalog::Dataset* Arena::CreateMaybeMessage<::datacatalog::Dataset>(Arena*); template<> ::datacatalog::DatasetID* Arena::CreateMaybeMessage<::datacatalog::DatasetID>(Arena*); template<> ::datacatalog::DatasetPropertyFilter* Arena::CreateMaybeMessage<::datacatalog::DatasetPropertyFilter>(Arena*); -template<> ::datacatalog::ExtendReservationRequest* Arena::CreateMaybeMessage<::datacatalog::ExtendReservationRequest>(Arena*); -template<> ::datacatalog::ExtendReservationResponse* Arena::CreateMaybeMessage<::datacatalog::ExtendReservationResponse>(Arena*); template<> ::datacatalog::FilterExpression* Arena::CreateMaybeMessage<::datacatalog::FilterExpression>(Arena*); template<> ::datacatalog::GetArtifactRequest* Arena::CreateMaybeMessage<::datacatalog::GetArtifactRequest>(Arena*); template<> ::datacatalog::GetArtifactResponse* Arena::CreateMaybeMessage<::datacatalog::GetArtifactResponse>(Arena*); template<> ::datacatalog::GetDatasetRequest* Arena::CreateMaybeMessage<::datacatalog::GetDatasetRequest>(Arena*); template<> ::datacatalog::GetDatasetResponse* Arena::CreateMaybeMessage<::datacatalog::GetDatasetResponse>(Arena*); -template<> ::datacatalog::GetOrReserveArtifactRequest* Arena::CreateMaybeMessage<::datacatalog::GetOrReserveArtifactRequest>(Arena*); -template<> ::datacatalog::GetOrReserveArtifactResponse* Arena::CreateMaybeMessage<::datacatalog::GetOrReserveArtifactResponse>(Arena*); +template<> ::datacatalog::GetOrExtendReservationRequest* Arena::CreateMaybeMessage<::datacatalog::GetOrExtendReservationRequest>(Arena*); +template<> ::datacatalog::GetOrExtendReservationResponse* Arena::CreateMaybeMessage<::datacatalog::GetOrExtendReservationResponse>(Arena*); template<> ::datacatalog::KeyValuePair* Arena::CreateMaybeMessage<::datacatalog::KeyValuePair>(Arena*); template<> ::datacatalog::ListArtifactsRequest* Arena::CreateMaybeMessage<::datacatalog::ListArtifactsRequest>(Arena*); template<> ::datacatalog::ListArtifactsResponse* Arena::CreateMaybeMessage<::datacatalog::ListArtifactsResponse>(Arena*); @@ -202,7 +198,8 @@ template<> ::datacatalog::Partition* Arena::CreateMaybeMessage<::datacatalog::Pa template<> ::datacatalog::PartitionPropertyFilter* Arena::CreateMaybeMessage<::datacatalog::PartitionPropertyFilter>(Arena*); template<> ::datacatalog::ReleaseReservationRequest* Arena::CreateMaybeMessage<::datacatalog::ReleaseReservationRequest>(Arena*); template<> ::datacatalog::ReleaseReservationResponse* Arena::CreateMaybeMessage<::datacatalog::ReleaseReservationResponse>(Arena*); -template<> ::datacatalog::ReservationStatus* Arena::CreateMaybeMessage<::datacatalog::ReservationStatus>(Arena*); +template<> ::datacatalog::Reservation* Arena::CreateMaybeMessage<::datacatalog::Reservation>(Arena*); +template<> ::datacatalog::ReservationID* Arena::CreateMaybeMessage<::datacatalog::ReservationID>(Arena*); template<> ::datacatalog::SinglePropertyFilter* Arena::CreateMaybeMessage<::datacatalog::SinglePropertyFilter>(Arena*); template<> ::datacatalog::Tag* Arena::CreateMaybeMessage<::datacatalog::Tag>(Arena*); template<> ::datacatalog::TagPropertyFilter* Arena::CreateMaybeMessage<::datacatalog::TagPropertyFilter>(Arena*); @@ -210,27 +207,6 @@ template<> ::datacatalog::TagPropertyFilter* Arena::CreateMaybeMessage<::datacat } // namespace google namespace datacatalog { -enum ReservationStatus_State { - ReservationStatus_State_ACQUIRED = 0, - ReservationStatus_State_ALREADY_IN_PROGRESS = 1, - ReservationStatus_State_ReservationStatus_State_INT_MIN_SENTINEL_DO_NOT_USE_ = std::numeric_limits<::google::protobuf::int32>::min(), - ReservationStatus_State_ReservationStatus_State_INT_MAX_SENTINEL_DO_NOT_USE_ = std::numeric_limits<::google::protobuf::int32>::max() -}; -bool ReservationStatus_State_IsValid(int value); -const ReservationStatus_State ReservationStatus_State_State_MIN = ReservationStatus_State_ACQUIRED; -const ReservationStatus_State ReservationStatus_State_State_MAX = ReservationStatus_State_ALREADY_IN_PROGRESS; -const int ReservationStatus_State_State_ARRAYSIZE = ReservationStatus_State_State_MAX + 1; - -const ::google::protobuf::EnumDescriptor* ReservationStatus_State_descriptor(); -inline const ::std::string& ReservationStatus_State_Name(ReservationStatus_State value) { - return ::google::protobuf::internal::NameOfEnum( - ReservationStatus_State_descriptor(), value); -} -inline bool ReservationStatus_State_Parse( - const ::std::string& name, ReservationStatus_State* value) { - return ::google::protobuf::internal::ParseNamedEnum( - ReservationStatus_State_descriptor(), name, value); -} enum SinglePropertyFilter_ComparisonOperator { SinglePropertyFilter_ComparisonOperator_EQUALS = 0, SinglePropertyFilter_ComparisonOperator_SinglePropertyFilter_ComparisonOperator_INT_MIN_SENTINEL_DO_NOT_USE_ = std::numeric_limits<::google::protobuf::int32>::min(), @@ -1994,25 +1970,25 @@ class ListDatasetsResponse final : }; // ------------------------------------------------------------------- -class GetOrReserveArtifactRequest final : - public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:datacatalog.GetOrReserveArtifactRequest) */ { +class ReservationID final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:datacatalog.ReservationID) */ { public: - GetOrReserveArtifactRequest(); - virtual ~GetOrReserveArtifactRequest(); + ReservationID(); + virtual ~ReservationID(); - GetOrReserveArtifactRequest(const GetOrReserveArtifactRequest& from); + ReservationID(const ReservationID& from); - inline GetOrReserveArtifactRequest& operator=(const GetOrReserveArtifactRequest& from) { + inline ReservationID& operator=(const ReservationID& from) { CopyFrom(from); return *this; } #if LANG_CXX11 - GetOrReserveArtifactRequest(GetOrReserveArtifactRequest&& from) noexcept - : GetOrReserveArtifactRequest() { + ReservationID(ReservationID&& from) noexcept + : ReservationID() { *this = ::std::move(from); } - inline GetOrReserveArtifactRequest& operator=(GetOrReserveArtifactRequest&& from) noexcept { + inline ReservationID& operator=(ReservationID&& from) noexcept { if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) { if (this != &from) InternalSwap(&from); } else { @@ -2024,34 +2000,34 @@ class GetOrReserveArtifactRequest final : static const ::google::protobuf::Descriptor* descriptor() { return default_instance().GetDescriptor(); } - static const GetOrReserveArtifactRequest& default_instance(); + static const ReservationID& default_instance(); static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY - static inline const GetOrReserveArtifactRequest* internal_default_instance() { - return reinterpret_cast( - &_GetOrReserveArtifactRequest_default_instance_); + static inline const ReservationID* internal_default_instance() { + return reinterpret_cast( + &_ReservationID_default_instance_); } static constexpr int kIndexInFileMessages = 14; - void Swap(GetOrReserveArtifactRequest* other); - friend void swap(GetOrReserveArtifactRequest& a, GetOrReserveArtifactRequest& b) { + void Swap(ReservationID* other); + friend void swap(ReservationID& a, ReservationID& b) { a.Swap(&b); } // implements Message ---------------------------------------------- - inline GetOrReserveArtifactRequest* New() const final { - return CreateMaybeMessage(nullptr); + inline ReservationID* New() const final { + return CreateMaybeMessage(nullptr); } - GetOrReserveArtifactRequest* New(::google::protobuf::Arena* arena) const final { - return CreateMaybeMessage(arena); + ReservationID* 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 GetOrReserveArtifactRequest& from); - void MergeFrom(const GetOrReserveArtifactRequest& from); + void CopyFrom(const ReservationID& from); + void MergeFrom(const ReservationID& from); PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; @@ -2073,7 +2049,7 @@ class GetOrReserveArtifactRequest final : void SharedCtor(); void SharedDtor(); void SetCachedSize(int size) const final; - void InternalSwap(GetOrReserveArtifactRequest* other); + void InternalSwap(ReservationID* other); private: inline ::google::protobuf::Arena* GetArenaNoVirtual() const { return nullptr; @@ -2103,20 +2079,6 @@ class GetOrReserveArtifactRequest final : ::std::string* release_tag_name(); void set_allocated_tag_name(::std::string* tag_name); - // string owner_id = 3; - void clear_owner_id(); - static const int kOwnerIdFieldNumber = 3; - const ::std::string& owner_id() const; - void set_owner_id(const ::std::string& value); - #if LANG_CXX11 - void set_owner_id(::std::string&& value); - #endif - void set_owner_id(const char* value); - void set_owner_id(const char* value, size_t size); - ::std::string* mutable_owner_id(); - ::std::string* release_owner_id(); - void set_allocated_owner_id(::std::string* owner_id); - // .datacatalog.DatasetID dataset_id = 1; bool has_dataset_id() const; void clear_dataset_id(); @@ -2126,38 +2088,37 @@ class GetOrReserveArtifactRequest final : ::datacatalog::DatasetID* mutable_dataset_id(); void set_allocated_dataset_id(::datacatalog::DatasetID* dataset_id); - // @@protoc_insertion_point(class_scope:datacatalog.GetOrReserveArtifactRequest) + // @@protoc_insertion_point(class_scope:datacatalog.ReservationID) private: class HasBitSetters; ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_; ::google::protobuf::internal::ArenaStringPtr tag_name_; - ::google::protobuf::internal::ArenaStringPtr owner_id_; ::datacatalog::DatasetID* dataset_id_; mutable ::google::protobuf::internal::CachedSize _cached_size_; friend struct ::TableStruct_flyteidl_2fdatacatalog_2fdatacatalog_2eproto; }; // ------------------------------------------------------------------- -class ReservationStatus final : - public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:datacatalog.ReservationStatus) */ { +class GetOrExtendReservationRequest final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:datacatalog.GetOrExtendReservationRequest) */ { public: - ReservationStatus(); - virtual ~ReservationStatus(); + GetOrExtendReservationRequest(); + virtual ~GetOrExtendReservationRequest(); - ReservationStatus(const ReservationStatus& from); + GetOrExtendReservationRequest(const GetOrExtendReservationRequest& from); - inline ReservationStatus& operator=(const ReservationStatus& from) { + inline GetOrExtendReservationRequest& operator=(const GetOrExtendReservationRequest& from) { CopyFrom(from); return *this; } #if LANG_CXX11 - ReservationStatus(ReservationStatus&& from) noexcept - : ReservationStatus() { + GetOrExtendReservationRequest(GetOrExtendReservationRequest&& from) noexcept + : GetOrExtendReservationRequest() { *this = ::std::move(from); } - inline ReservationStatus& operator=(ReservationStatus&& from) noexcept { + inline GetOrExtendReservationRequest& operator=(GetOrExtendReservationRequest&& from) noexcept { if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) { if (this != &from) InternalSwap(&from); } else { @@ -2169,34 +2130,34 @@ class ReservationStatus final : static const ::google::protobuf::Descriptor* descriptor() { return default_instance().GetDescriptor(); } - static const ReservationStatus& default_instance(); + static const GetOrExtendReservationRequest& default_instance(); static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY - static inline const ReservationStatus* internal_default_instance() { - return reinterpret_cast( - &_ReservationStatus_default_instance_); + static inline const GetOrExtendReservationRequest* internal_default_instance() { + return reinterpret_cast( + &_GetOrExtendReservationRequest_default_instance_); } static constexpr int kIndexInFileMessages = 15; - void Swap(ReservationStatus* other); - friend void swap(ReservationStatus& a, ReservationStatus& b) { + void Swap(GetOrExtendReservationRequest* other); + friend void swap(GetOrExtendReservationRequest& a, GetOrExtendReservationRequest& b) { a.Swap(&b); } // implements Message ---------------------------------------------- - inline ReservationStatus* New() const final { - return CreateMaybeMessage(nullptr); + inline GetOrExtendReservationRequest* New() const final { + return CreateMaybeMessage(nullptr); } - ReservationStatus* New(::google::protobuf::Arena* arena) const final { - return CreateMaybeMessage(arena); + GetOrExtendReservationRequest* 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 ReservationStatus& from); - void MergeFrom(const ReservationStatus& from); + void CopyFrom(const GetOrExtendReservationRequest& from); + void MergeFrom(const GetOrExtendReservationRequest& from); PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; @@ -2218,7 +2179,7 @@ class ReservationStatus final : void SharedCtor(); void SharedDtor(); void SetCachedSize(int size) const final; - void InternalSwap(ReservationStatus* other); + void InternalSwap(GetOrExtendReservationRequest* other); private: inline ::google::protobuf::Arena* GetArenaNoVirtual() const { return nullptr; @@ -2232,37 +2193,11 @@ class ReservationStatus final : // nested types ---------------------------------------------------- - typedef ReservationStatus_State State; - static const State ACQUIRED = - ReservationStatus_State_ACQUIRED; - static const State ALREADY_IN_PROGRESS = - ReservationStatus_State_ALREADY_IN_PROGRESS; - static inline bool State_IsValid(int value) { - return ReservationStatus_State_IsValid(value); - } - static const State State_MIN = - ReservationStatus_State_State_MIN; - static const State State_MAX = - ReservationStatus_State_State_MAX; - static const int State_ARRAYSIZE = - ReservationStatus_State_State_ARRAYSIZE; - static inline const ::google::protobuf::EnumDescriptor* - State_descriptor() { - return ReservationStatus_State_descriptor(); - } - static inline const ::std::string& State_Name(State value) { - return ReservationStatus_State_Name(value); - } - static inline bool State_Parse(const ::std::string& name, - State* value) { - return ReservationStatus_State_Parse(name, value); - } - // accessors ------------------------------------------------------- - // string owner_id = 3; + // string owner_id = 2; void clear_owner_id(); - static const int kOwnerIdFieldNumber = 3; + static const int kOwnerIdFieldNumber = 2; const ::std::string& owner_id() const; void set_owner_id(const ::std::string& value); #if LANG_CXX11 @@ -2274,53 +2209,56 @@ class ReservationStatus final : ::std::string* release_owner_id(); void set_allocated_owner_id(::std::string* owner_id); - // .datacatalog.Metadata metadata = 2; - bool has_metadata() const; - void clear_metadata(); - static const int kMetadataFieldNumber = 2; - const ::datacatalog::Metadata& metadata() const; - ::datacatalog::Metadata* release_metadata(); - ::datacatalog::Metadata* mutable_metadata(); - void set_allocated_metadata(::datacatalog::Metadata* metadata); - - // .datacatalog.ReservationStatus.State state = 1; - void clear_state(); - static const int kStateFieldNumber = 1; - ::datacatalog::ReservationStatus_State state() const; - void set_state(::datacatalog::ReservationStatus_State value); - - // @@protoc_insertion_point(class_scope:datacatalog.ReservationStatus) + // .datacatalog.ReservationID reservation_id = 1; + bool has_reservation_id() const; + void clear_reservation_id(); + static const int kReservationIdFieldNumber = 1; + const ::datacatalog::ReservationID& reservation_id() const; + ::datacatalog::ReservationID* release_reservation_id(); + ::datacatalog::ReservationID* mutable_reservation_id(); + void set_allocated_reservation_id(::datacatalog::ReservationID* reservation_id); + + // .google.protobuf.Duration heartbeat_interval = 3; + bool has_heartbeat_interval() const; + void clear_heartbeat_interval(); + static const int kHeartbeatIntervalFieldNumber = 3; + const ::google::protobuf::Duration& heartbeat_interval() const; + ::google::protobuf::Duration* release_heartbeat_interval(); + ::google::protobuf::Duration* mutable_heartbeat_interval(); + void set_allocated_heartbeat_interval(::google::protobuf::Duration* heartbeat_interval); + + // @@protoc_insertion_point(class_scope:datacatalog.GetOrExtendReservationRequest) private: class HasBitSetters; ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_; ::google::protobuf::internal::ArenaStringPtr owner_id_; - ::datacatalog::Metadata* metadata_; - int state_; + ::datacatalog::ReservationID* reservation_id_; + ::google::protobuf::Duration* heartbeat_interval_; mutable ::google::protobuf::internal::CachedSize _cached_size_; friend struct ::TableStruct_flyteidl_2fdatacatalog_2fdatacatalog_2eproto; }; // ------------------------------------------------------------------- -class GetOrReserveArtifactResponse final : - public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:datacatalog.GetOrReserveArtifactResponse) */ { +class Reservation final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:datacatalog.Reservation) */ { public: - GetOrReserveArtifactResponse(); - virtual ~GetOrReserveArtifactResponse(); + Reservation(); + virtual ~Reservation(); - GetOrReserveArtifactResponse(const GetOrReserveArtifactResponse& from); + Reservation(const Reservation& from); - inline GetOrReserveArtifactResponse& operator=(const GetOrReserveArtifactResponse& from) { + inline Reservation& operator=(const Reservation& from) { CopyFrom(from); return *this; } #if LANG_CXX11 - GetOrReserveArtifactResponse(GetOrReserveArtifactResponse&& from) noexcept - : GetOrReserveArtifactResponse() { + Reservation(Reservation&& from) noexcept + : Reservation() { *this = ::std::move(from); } - inline GetOrReserveArtifactResponse& operator=(GetOrReserveArtifactResponse&& from) noexcept { + inline Reservation& operator=(Reservation&& from) noexcept { if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) { if (this != &from) InternalSwap(&from); } else { @@ -2332,40 +2270,34 @@ class GetOrReserveArtifactResponse final : static const ::google::protobuf::Descriptor* descriptor() { return default_instance().GetDescriptor(); } - static const GetOrReserveArtifactResponse& default_instance(); - - enum ValueCase { - kArtifact = 1, - kReservationStatus = 2, - VALUE_NOT_SET = 0, - }; + static const Reservation& default_instance(); static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY - static inline const GetOrReserveArtifactResponse* internal_default_instance() { - return reinterpret_cast( - &_GetOrReserveArtifactResponse_default_instance_); + static inline const Reservation* internal_default_instance() { + return reinterpret_cast( + &_Reservation_default_instance_); } static constexpr int kIndexInFileMessages = 16; - void Swap(GetOrReserveArtifactResponse* other); - friend void swap(GetOrReserveArtifactResponse& a, GetOrReserveArtifactResponse& b) { + void Swap(Reservation* other); + friend void swap(Reservation& a, Reservation& b) { a.Swap(&b); } // implements Message ---------------------------------------------- - inline GetOrReserveArtifactResponse* New() const final { - return CreateMaybeMessage(nullptr); + inline Reservation* New() const final { + return CreateMaybeMessage(nullptr); } - GetOrReserveArtifactResponse* New(::google::protobuf::Arena* arena) const final { - return CreateMaybeMessage(arena); + Reservation* 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 GetOrReserveArtifactResponse& from); - void MergeFrom(const GetOrReserveArtifactResponse& from); + void CopyFrom(const Reservation& from); + void MergeFrom(const Reservation& from); PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; @@ -2387,7 +2319,7 @@ class GetOrReserveArtifactResponse final : void SharedCtor(); void SharedDtor(); void SetCachedSize(int size) const final; - void InternalSwap(GetOrReserveArtifactResponse* other); + void InternalSwap(Reservation* other); private: inline ::google::protobuf::Arena* GetArenaNoVirtual() const { return nullptr; @@ -2403,160 +2335,9 @@ class GetOrReserveArtifactResponse final : // accessors ------------------------------------------------------- - // .datacatalog.Artifact artifact = 1; - bool has_artifact() const; - void clear_artifact(); - static const int kArtifactFieldNumber = 1; - const ::datacatalog::Artifact& artifact() const; - ::datacatalog::Artifact* release_artifact(); - ::datacatalog::Artifact* mutable_artifact(); - void set_allocated_artifact(::datacatalog::Artifact* artifact); - - // .datacatalog.ReservationStatus reservation_status = 2; - bool has_reservation_status() const; - void clear_reservation_status(); - static const int kReservationStatusFieldNumber = 2; - const ::datacatalog::ReservationStatus& reservation_status() const; - ::datacatalog::ReservationStatus* release_reservation_status(); - ::datacatalog::ReservationStatus* mutable_reservation_status(); - void set_allocated_reservation_status(::datacatalog::ReservationStatus* reservation_status); - - void clear_value(); - ValueCase value_case() const; - // @@protoc_insertion_point(class_scope:datacatalog.GetOrReserveArtifactResponse) - private: - class HasBitSetters; - void set_has_artifact(); - void set_has_reservation_status(); - - inline bool has_value() const; - inline void clear_has_value(); - - ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_; - union ValueUnion { - ValueUnion() {} - ::datacatalog::Artifact* artifact_; - ::datacatalog::ReservationStatus* reservation_status_; - } value_; - mutable ::google::protobuf::internal::CachedSize _cached_size_; - ::google::protobuf::uint32 _oneof_case_[1]; - - friend struct ::TableStruct_flyteidl_2fdatacatalog_2fdatacatalog_2eproto; -}; -// ------------------------------------------------------------------- - -class ExtendReservationRequest final : - public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:datacatalog.ExtendReservationRequest) */ { - public: - ExtendReservationRequest(); - virtual ~ExtendReservationRequest(); - - ExtendReservationRequest(const ExtendReservationRequest& from); - - inline ExtendReservationRequest& operator=(const ExtendReservationRequest& from) { - CopyFrom(from); - return *this; - } - #if LANG_CXX11 - ExtendReservationRequest(ExtendReservationRequest&& from) noexcept - : ExtendReservationRequest() { - *this = ::std::move(from); - } - - inline ExtendReservationRequest& operator=(ExtendReservationRequest&& 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 ExtendReservationRequest& default_instance(); - - static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY - static inline const ExtendReservationRequest* internal_default_instance() { - return reinterpret_cast( - &_ExtendReservationRequest_default_instance_); - } - static constexpr int kIndexInFileMessages = - 17; - - void Swap(ExtendReservationRequest* other); - friend void swap(ExtendReservationRequest& a, ExtendReservationRequest& b) { - a.Swap(&b); - } - - // implements Message ---------------------------------------------- - - inline ExtendReservationRequest* New() const final { - return CreateMaybeMessage(nullptr); - } - - ExtendReservationRequest* 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 ExtendReservationRequest& from); - void MergeFrom(const ExtendReservationRequest& 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(ExtendReservationRequest* 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 ------------------------------------------------------- - - // string tag_name = 2; - void clear_tag_name(); - static const int kTagNameFieldNumber = 2; - const ::std::string& tag_name() const; - void set_tag_name(const ::std::string& value); - #if LANG_CXX11 - void set_tag_name(::std::string&& value); - #endif - void set_tag_name(const char* value); - void set_tag_name(const char* value, size_t size); - ::std::string* mutable_tag_name(); - ::std::string* release_tag_name(); - void set_allocated_tag_name(::std::string* tag_name); - - // string owner_id = 3; + // string owner_id = 2; void clear_owner_id(); - static const int kOwnerIdFieldNumber = 3; + static const int kOwnerIdFieldNumber = 2; const ::std::string& owner_id() const; void set_owner_id(const ::std::string& value); #if LANG_CXX11 @@ -2568,47 +2349,76 @@ class ExtendReservationRequest final : ::std::string* release_owner_id(); void set_allocated_owner_id(::std::string* owner_id); - // .datacatalog.DatasetID dataset_id = 1; - bool has_dataset_id() const; - void clear_dataset_id(); - static const int kDatasetIdFieldNumber = 1; - const ::datacatalog::DatasetID& dataset_id() const; - ::datacatalog::DatasetID* release_dataset_id(); - ::datacatalog::DatasetID* mutable_dataset_id(); - void set_allocated_dataset_id(::datacatalog::DatasetID* dataset_id); + // .datacatalog.ReservationID reservation_id = 1; + bool has_reservation_id() const; + void clear_reservation_id(); + static const int kReservationIdFieldNumber = 1; + const ::datacatalog::ReservationID& reservation_id() const; + ::datacatalog::ReservationID* release_reservation_id(); + ::datacatalog::ReservationID* mutable_reservation_id(); + void set_allocated_reservation_id(::datacatalog::ReservationID* reservation_id); + + // .google.protobuf.Duration heartbeat_interval = 3; + bool has_heartbeat_interval() const; + void clear_heartbeat_interval(); + static const int kHeartbeatIntervalFieldNumber = 3; + const ::google::protobuf::Duration& heartbeat_interval() const; + ::google::protobuf::Duration* release_heartbeat_interval(); + ::google::protobuf::Duration* mutable_heartbeat_interval(); + void set_allocated_heartbeat_interval(::google::protobuf::Duration* heartbeat_interval); + + // .google.protobuf.Timestamp expires_at = 4; + bool has_expires_at() const; + void clear_expires_at(); + static const int kExpiresAtFieldNumber = 4; + const ::google::protobuf::Timestamp& expires_at() const; + ::google::protobuf::Timestamp* release_expires_at(); + ::google::protobuf::Timestamp* mutable_expires_at(); + void set_allocated_expires_at(::google::protobuf::Timestamp* expires_at); + + // .datacatalog.Metadata metadata = 6; + bool has_metadata() const; + void clear_metadata(); + static const int kMetadataFieldNumber = 6; + const ::datacatalog::Metadata& metadata() const; + ::datacatalog::Metadata* release_metadata(); + ::datacatalog::Metadata* mutable_metadata(); + void set_allocated_metadata(::datacatalog::Metadata* metadata); - // @@protoc_insertion_point(class_scope:datacatalog.ExtendReservationRequest) + // @@protoc_insertion_point(class_scope:datacatalog.Reservation) private: class HasBitSetters; ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_; - ::google::protobuf::internal::ArenaStringPtr tag_name_; ::google::protobuf::internal::ArenaStringPtr owner_id_; - ::datacatalog::DatasetID* dataset_id_; + ::datacatalog::ReservationID* reservation_id_; + ::google::protobuf::Duration* heartbeat_interval_; + ::google::protobuf::Timestamp* expires_at_; + ::datacatalog::Metadata* metadata_; mutable ::google::protobuf::internal::CachedSize _cached_size_; friend struct ::TableStruct_flyteidl_2fdatacatalog_2fdatacatalog_2eproto; }; // ------------------------------------------------------------------- -class ExtendReservationResponse final : - public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:datacatalog.ExtendReservationResponse) */ { +class GetOrExtendReservationResponse final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:datacatalog.GetOrExtendReservationResponse) */ { public: - ExtendReservationResponse(); - virtual ~ExtendReservationResponse(); + GetOrExtendReservationResponse(); + virtual ~GetOrExtendReservationResponse(); - ExtendReservationResponse(const ExtendReservationResponse& from); + GetOrExtendReservationResponse(const GetOrExtendReservationResponse& from); - inline ExtendReservationResponse& operator=(const ExtendReservationResponse& from) { + inline GetOrExtendReservationResponse& operator=(const GetOrExtendReservationResponse& from) { CopyFrom(from); return *this; } #if LANG_CXX11 - ExtendReservationResponse(ExtendReservationResponse&& from) noexcept - : ExtendReservationResponse() { + GetOrExtendReservationResponse(GetOrExtendReservationResponse&& from) noexcept + : GetOrExtendReservationResponse() { *this = ::std::move(from); } - inline ExtendReservationResponse& operator=(ExtendReservationResponse&& from) noexcept { + inline GetOrExtendReservationResponse& operator=(GetOrExtendReservationResponse&& from) noexcept { if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) { if (this != &from) InternalSwap(&from); } else { @@ -2620,34 +2430,34 @@ class ExtendReservationResponse final : static const ::google::protobuf::Descriptor* descriptor() { return default_instance().GetDescriptor(); } - static const ExtendReservationResponse& default_instance(); + static const GetOrExtendReservationResponse& default_instance(); static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY - static inline const ExtendReservationResponse* internal_default_instance() { - return reinterpret_cast( - &_ExtendReservationResponse_default_instance_); + static inline const GetOrExtendReservationResponse* internal_default_instance() { + return reinterpret_cast( + &_GetOrExtendReservationResponse_default_instance_); } static constexpr int kIndexInFileMessages = - 18; + 17; - void Swap(ExtendReservationResponse* other); - friend void swap(ExtendReservationResponse& a, ExtendReservationResponse& b) { + void Swap(GetOrExtendReservationResponse* other); + friend void swap(GetOrExtendReservationResponse& a, GetOrExtendReservationResponse& b) { a.Swap(&b); } // implements Message ---------------------------------------------- - inline ExtendReservationResponse* New() const final { - return CreateMaybeMessage(nullptr); + inline GetOrExtendReservationResponse* New() const final { + return CreateMaybeMessage(nullptr); } - ExtendReservationResponse* New(::google::protobuf::Arena* arena) const final { - return CreateMaybeMessage(arena); + GetOrExtendReservationResponse* 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 ExtendReservationResponse& from); - void MergeFrom(const ExtendReservationResponse& from); + void CopyFrom(const GetOrExtendReservationResponse& from); + void MergeFrom(const GetOrExtendReservationResponse& from); PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; @@ -2669,7 +2479,7 @@ class ExtendReservationResponse final : void SharedCtor(); void SharedDtor(); void SetCachedSize(int size) const final; - void InternalSwap(ExtendReservationResponse* other); + void InternalSwap(GetOrExtendReservationResponse* other); private: inline ::google::protobuf::Arena* GetArenaNoVirtual() const { return nullptr; @@ -2685,11 +2495,21 @@ class ExtendReservationResponse final : // accessors ------------------------------------------------------- - // @@protoc_insertion_point(class_scope:datacatalog.ExtendReservationResponse) + // .datacatalog.Reservation reservation = 1; + bool has_reservation() const; + void clear_reservation(); + static const int kReservationFieldNumber = 1; + const ::datacatalog::Reservation& reservation() const; + ::datacatalog::Reservation* release_reservation(); + ::datacatalog::Reservation* mutable_reservation(); + void set_allocated_reservation(::datacatalog::Reservation* reservation); + + // @@protoc_insertion_point(class_scope:datacatalog.GetOrExtendReservationResponse) private: class HasBitSetters; ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_; + ::datacatalog::Reservation* reservation_; mutable ::google::protobuf::internal::CachedSize _cached_size_; friend struct ::TableStruct_flyteidl_2fdatacatalog_2fdatacatalog_2eproto; }; @@ -2733,7 +2553,7 @@ class ReleaseReservationRequest final : &_ReleaseReservationRequest_default_instance_); } static constexpr int kIndexInFileMessages = - 19; + 18; void Swap(ReleaseReservationRequest* other); friend void swap(ReleaseReservationRequest& a, ReleaseReservationRequest& b) { @@ -2790,23 +2610,9 @@ class ReleaseReservationRequest final : // accessors ------------------------------------------------------- - // string tag_name = 2; - void clear_tag_name(); - static const int kTagNameFieldNumber = 2; - const ::std::string& tag_name() const; - void set_tag_name(const ::std::string& value); - #if LANG_CXX11 - void set_tag_name(::std::string&& value); - #endif - void set_tag_name(const char* value); - void set_tag_name(const char* value, size_t size); - ::std::string* mutable_tag_name(); - ::std::string* release_tag_name(); - void set_allocated_tag_name(::std::string* tag_name); - - // string owner_id = 3; + // string owner_id = 2; void clear_owner_id(); - static const int kOwnerIdFieldNumber = 3; + static const int kOwnerIdFieldNumber = 2; const ::std::string& owner_id() const; void set_owner_id(const ::std::string& value); #if LANG_CXX11 @@ -2818,23 +2624,22 @@ class ReleaseReservationRequest final : ::std::string* release_owner_id(); void set_allocated_owner_id(::std::string* owner_id); - // .datacatalog.DatasetID dataset_id = 1; - bool has_dataset_id() const; - void clear_dataset_id(); - static const int kDatasetIdFieldNumber = 1; - const ::datacatalog::DatasetID& dataset_id() const; - ::datacatalog::DatasetID* release_dataset_id(); - ::datacatalog::DatasetID* mutable_dataset_id(); - void set_allocated_dataset_id(::datacatalog::DatasetID* dataset_id); + // .datacatalog.ReservationID reservation_id = 1; + bool has_reservation_id() const; + void clear_reservation_id(); + static const int kReservationIdFieldNumber = 1; + const ::datacatalog::ReservationID& reservation_id() const; + ::datacatalog::ReservationID* release_reservation_id(); + ::datacatalog::ReservationID* mutable_reservation_id(); + void set_allocated_reservation_id(::datacatalog::ReservationID* reservation_id); // @@protoc_insertion_point(class_scope:datacatalog.ReleaseReservationRequest) private: class HasBitSetters; ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_; - ::google::protobuf::internal::ArenaStringPtr tag_name_; ::google::protobuf::internal::ArenaStringPtr owner_id_; - ::datacatalog::DatasetID* dataset_id_; + ::datacatalog::ReservationID* reservation_id_; mutable ::google::protobuf::internal::CachedSize _cached_size_; friend struct ::TableStruct_flyteidl_2fdatacatalog_2fdatacatalog_2eproto; }; @@ -2878,7 +2683,7 @@ class ReleaseReservationResponse final : &_ReleaseReservationResponse_default_instance_); } static constexpr int kIndexInFileMessages = - 20; + 19; void Swap(ReleaseReservationResponse* other); friend void swap(ReleaseReservationResponse& a, ReleaseReservationResponse& b) { @@ -2983,7 +2788,7 @@ class Dataset final : &_Dataset_default_instance_); } static constexpr int kIndexInFileMessages = - 21; + 20; void Swap(Dataset* other); friend void swap(Dataset& a, Dataset& b) { @@ -3131,7 +2936,7 @@ class Partition final : &_Partition_default_instance_); } static constexpr int kIndexInFileMessages = - 22; + 21; void Swap(Partition* other); friend void swap(Partition& a, Partition& b) { @@ -3266,7 +3071,7 @@ class DatasetID final : &_DatasetID_default_instance_); } static constexpr int kIndexInFileMessages = - 23; + 22; void Swap(DatasetID* other); friend void swap(DatasetID& a, DatasetID& b) { @@ -3446,7 +3251,7 @@ class Artifact final : &_Artifact_default_instance_); } static constexpr int kIndexInFileMessages = - 24; + 23; void Swap(Artifact* other); friend void swap(Artifact& a, Artifact& b) { @@ -3635,7 +3440,7 @@ class ArtifactData final : &_ArtifactData_default_instance_); } static constexpr int kIndexInFileMessages = - 25; + 24; void Swap(ArtifactData* other); friend void swap(ArtifactData& a, ArtifactData& b) { @@ -3765,7 +3570,7 @@ class Tag final : &_Tag_default_instance_); } static constexpr int kIndexInFileMessages = - 26; + 25; void Swap(Tag* other); friend void swap(Tag& a, Tag& b) { @@ -3934,7 +3739,7 @@ class Metadata final : &_Metadata_default_instance_); } static constexpr int kIndexInFileMessages = - 28; + 27; void Swap(Metadata* other); friend void swap(Metadata& a, Metadata& b) { @@ -4055,7 +3860,7 @@ class FilterExpression final : &_FilterExpression_default_instance_); } static constexpr int kIndexInFileMessages = - 29; + 28; void Swap(FilterExpression* other); friend void swap(FilterExpression& a, FilterExpression& b) { @@ -4181,7 +3986,7 @@ class SinglePropertyFilter final : &_SinglePropertyFilter_default_instance_); } static constexpr int kIndexInFileMessages = - 30; + 29; void Swap(SinglePropertyFilter* other); friend void swap(SinglePropertyFilter& a, SinglePropertyFilter& b) { @@ -4376,7 +4181,7 @@ class ArtifactPropertyFilter final : &_ArtifactPropertyFilter_default_instance_); } static constexpr int kIndexInFileMessages = - 31; + 30; void Swap(ArtifactPropertyFilter* other); friend void swap(ArtifactPropertyFilter& a, ArtifactPropertyFilter& b) { @@ -4515,7 +4320,7 @@ class TagPropertyFilter final : &_TagPropertyFilter_default_instance_); } static constexpr int kIndexInFileMessages = - 32; + 31; void Swap(TagPropertyFilter* other); friend void swap(TagPropertyFilter& a, TagPropertyFilter& b) { @@ -4654,7 +4459,7 @@ class PartitionPropertyFilter final : &_PartitionPropertyFilter_default_instance_); } static constexpr int kIndexInFileMessages = - 33; + 32; void Swap(PartitionPropertyFilter* other); friend void swap(PartitionPropertyFilter& a, PartitionPropertyFilter& b) { @@ -4780,7 +4585,7 @@ class KeyValuePair final : &_KeyValuePair_default_instance_); } static constexpr int kIndexInFileMessages = - 34; + 33; void Swap(KeyValuePair* other); friend void swap(KeyValuePair& a, KeyValuePair& b) { @@ -4923,7 +4728,7 @@ class DatasetPropertyFilter final : &_DatasetPropertyFilter_default_instance_); } static constexpr int kIndexInFileMessages = - 35; + 34; void Swap(DatasetPropertyFilter* other); friend void swap(DatasetPropertyFilter& a, DatasetPropertyFilter& b) { @@ -5114,7 +4919,7 @@ class PaginationOptions final : &_PaginationOptions_default_instance_); } static constexpr int kIndexInFileMessages = - 36; + 35; void Swap(PaginationOptions* other); friend void swap(PaginationOptions& a, PaginationOptions& b) { @@ -6301,41 +6106,41 @@ inline void ListDatasetsResponse::set_allocated_next_token(::std::string* next_t // ------------------------------------------------------------------- -// GetOrReserveArtifactRequest +// ReservationID // .datacatalog.DatasetID dataset_id = 1; -inline bool GetOrReserveArtifactRequest::has_dataset_id() const { +inline bool ReservationID::has_dataset_id() const { return this != internal_default_instance() && dataset_id_ != nullptr; } -inline void GetOrReserveArtifactRequest::clear_dataset_id() { +inline void ReservationID::clear_dataset_id() { if (GetArenaNoVirtual() == nullptr && dataset_id_ != nullptr) { delete dataset_id_; } dataset_id_ = nullptr; } -inline const ::datacatalog::DatasetID& GetOrReserveArtifactRequest::dataset_id() const { +inline const ::datacatalog::DatasetID& ReservationID::dataset_id() const { const ::datacatalog::DatasetID* p = dataset_id_; - // @@protoc_insertion_point(field_get:datacatalog.GetOrReserveArtifactRequest.dataset_id) + // @@protoc_insertion_point(field_get:datacatalog.ReservationID.dataset_id) return p != nullptr ? *p : *reinterpret_cast( &::datacatalog::_DatasetID_default_instance_); } -inline ::datacatalog::DatasetID* GetOrReserveArtifactRequest::release_dataset_id() { - // @@protoc_insertion_point(field_release:datacatalog.GetOrReserveArtifactRequest.dataset_id) +inline ::datacatalog::DatasetID* ReservationID::release_dataset_id() { + // @@protoc_insertion_point(field_release:datacatalog.ReservationID.dataset_id) ::datacatalog::DatasetID* temp = dataset_id_; dataset_id_ = nullptr; return temp; } -inline ::datacatalog::DatasetID* GetOrReserveArtifactRequest::mutable_dataset_id() { +inline ::datacatalog::DatasetID* ReservationID::mutable_dataset_id() { if (dataset_id_ == nullptr) { auto* p = CreateMaybeMessage<::datacatalog::DatasetID>(GetArenaNoVirtual()); dataset_id_ = p; } - // @@protoc_insertion_point(field_mutable:datacatalog.GetOrReserveArtifactRequest.dataset_id) + // @@protoc_insertion_point(field_mutable:datacatalog.ReservationID.dataset_id) return dataset_id_; } -inline void GetOrReserveArtifactRequest::set_allocated_dataset_id(::datacatalog::DatasetID* dataset_id) { +inline void ReservationID::set_allocated_dataset_id(::datacatalog::DatasetID* dataset_id) { ::google::protobuf::Arena* message_arena = GetArenaNoVirtual(); if (message_arena == nullptr) { delete dataset_id_; @@ -6351,606 +6156,578 @@ inline void GetOrReserveArtifactRequest::set_allocated_dataset_id(::datacatalog: } dataset_id_ = dataset_id; - // @@protoc_insertion_point(field_set_allocated:datacatalog.GetOrReserveArtifactRequest.dataset_id) + // @@protoc_insertion_point(field_set_allocated:datacatalog.ReservationID.dataset_id) } // string tag_name = 2; -inline void GetOrReserveArtifactRequest::clear_tag_name() { +inline void ReservationID::clear_tag_name() { tag_name_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited()); } -inline const ::std::string& GetOrReserveArtifactRequest::tag_name() const { - // @@protoc_insertion_point(field_get:datacatalog.GetOrReserveArtifactRequest.tag_name) +inline const ::std::string& ReservationID::tag_name() const { + // @@protoc_insertion_point(field_get:datacatalog.ReservationID.tag_name) return tag_name_.GetNoArena(); } -inline void GetOrReserveArtifactRequest::set_tag_name(const ::std::string& value) { +inline void ReservationID::set_tag_name(const ::std::string& value) { tag_name_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value); - // @@protoc_insertion_point(field_set:datacatalog.GetOrReserveArtifactRequest.tag_name) + // @@protoc_insertion_point(field_set:datacatalog.ReservationID.tag_name) } #if LANG_CXX11 -inline void GetOrReserveArtifactRequest::set_tag_name(::std::string&& value) { +inline void ReservationID::set_tag_name(::std::string&& value) { tag_name_.SetNoArena( &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value)); - // @@protoc_insertion_point(field_set_rvalue:datacatalog.GetOrReserveArtifactRequest.tag_name) + // @@protoc_insertion_point(field_set_rvalue:datacatalog.ReservationID.tag_name) } #endif -inline void GetOrReserveArtifactRequest::set_tag_name(const char* value) { +inline void ReservationID::set_tag_name(const char* value) { GOOGLE_DCHECK(value != nullptr); tag_name_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value)); - // @@protoc_insertion_point(field_set_char:datacatalog.GetOrReserveArtifactRequest.tag_name) + // @@protoc_insertion_point(field_set_char:datacatalog.ReservationID.tag_name) } -inline void GetOrReserveArtifactRequest::set_tag_name(const char* value, size_t size) { +inline void ReservationID::set_tag_name(const char* value, size_t size) { tag_name_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(reinterpret_cast(value), size)); - // @@protoc_insertion_point(field_set_pointer:datacatalog.GetOrReserveArtifactRequest.tag_name) + // @@protoc_insertion_point(field_set_pointer:datacatalog.ReservationID.tag_name) } -inline ::std::string* GetOrReserveArtifactRequest::mutable_tag_name() { +inline ::std::string* ReservationID::mutable_tag_name() { - // @@protoc_insertion_point(field_mutable:datacatalog.GetOrReserveArtifactRequest.tag_name) + // @@protoc_insertion_point(field_mutable:datacatalog.ReservationID.tag_name) return tag_name_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited()); } -inline ::std::string* GetOrReserveArtifactRequest::release_tag_name() { - // @@protoc_insertion_point(field_release:datacatalog.GetOrReserveArtifactRequest.tag_name) +inline ::std::string* ReservationID::release_tag_name() { + // @@protoc_insertion_point(field_release:datacatalog.ReservationID.tag_name) return tag_name_.ReleaseNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited()); } -inline void GetOrReserveArtifactRequest::set_allocated_tag_name(::std::string* tag_name) { +inline void ReservationID::set_allocated_tag_name(::std::string* tag_name) { if (tag_name != nullptr) { } else { } tag_name_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), tag_name); - // @@protoc_insertion_point(field_set_allocated:datacatalog.GetOrReserveArtifactRequest.tag_name) + // @@protoc_insertion_point(field_set_allocated:datacatalog.ReservationID.tag_name) +} + +// ------------------------------------------------------------------- + +// GetOrExtendReservationRequest + +// .datacatalog.ReservationID reservation_id = 1; +inline bool GetOrExtendReservationRequest::has_reservation_id() const { + return this != internal_default_instance() && reservation_id_ != nullptr; +} +inline void GetOrExtendReservationRequest::clear_reservation_id() { + if (GetArenaNoVirtual() == nullptr && reservation_id_ != nullptr) { + delete reservation_id_; + } + reservation_id_ = nullptr; +} +inline const ::datacatalog::ReservationID& GetOrExtendReservationRequest::reservation_id() const { + const ::datacatalog::ReservationID* p = reservation_id_; + // @@protoc_insertion_point(field_get:datacatalog.GetOrExtendReservationRequest.reservation_id) + return p != nullptr ? *p : *reinterpret_cast( + &::datacatalog::_ReservationID_default_instance_); +} +inline ::datacatalog::ReservationID* GetOrExtendReservationRequest::release_reservation_id() { + // @@protoc_insertion_point(field_release:datacatalog.GetOrExtendReservationRequest.reservation_id) + + ::datacatalog::ReservationID* temp = reservation_id_; + reservation_id_ = nullptr; + return temp; +} +inline ::datacatalog::ReservationID* GetOrExtendReservationRequest::mutable_reservation_id() { + + if (reservation_id_ == nullptr) { + auto* p = CreateMaybeMessage<::datacatalog::ReservationID>(GetArenaNoVirtual()); + reservation_id_ = p; + } + // @@protoc_insertion_point(field_mutable:datacatalog.GetOrExtendReservationRequest.reservation_id) + return reservation_id_; +} +inline void GetOrExtendReservationRequest::set_allocated_reservation_id(::datacatalog::ReservationID* reservation_id) { + ::google::protobuf::Arena* message_arena = GetArenaNoVirtual(); + if (message_arena == nullptr) { + delete reservation_id_; + } + if (reservation_id) { + ::google::protobuf::Arena* submessage_arena = nullptr; + if (message_arena != submessage_arena) { + reservation_id = ::google::protobuf::internal::GetOwnedMessage( + message_arena, reservation_id, submessage_arena); + } + + } else { + + } + reservation_id_ = reservation_id; + // @@protoc_insertion_point(field_set_allocated:datacatalog.GetOrExtendReservationRequest.reservation_id) } -// string owner_id = 3; -inline void GetOrReserveArtifactRequest::clear_owner_id() { +// string owner_id = 2; +inline void GetOrExtendReservationRequest::clear_owner_id() { owner_id_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited()); } -inline const ::std::string& GetOrReserveArtifactRequest::owner_id() const { - // @@protoc_insertion_point(field_get:datacatalog.GetOrReserveArtifactRequest.owner_id) +inline const ::std::string& GetOrExtendReservationRequest::owner_id() const { + // @@protoc_insertion_point(field_get:datacatalog.GetOrExtendReservationRequest.owner_id) return owner_id_.GetNoArena(); } -inline void GetOrReserveArtifactRequest::set_owner_id(const ::std::string& value) { +inline void GetOrExtendReservationRequest::set_owner_id(const ::std::string& value) { owner_id_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value); - // @@protoc_insertion_point(field_set:datacatalog.GetOrReserveArtifactRequest.owner_id) + // @@protoc_insertion_point(field_set:datacatalog.GetOrExtendReservationRequest.owner_id) } #if LANG_CXX11 -inline void GetOrReserveArtifactRequest::set_owner_id(::std::string&& value) { +inline void GetOrExtendReservationRequest::set_owner_id(::std::string&& value) { owner_id_.SetNoArena( &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value)); - // @@protoc_insertion_point(field_set_rvalue:datacatalog.GetOrReserveArtifactRequest.owner_id) + // @@protoc_insertion_point(field_set_rvalue:datacatalog.GetOrExtendReservationRequest.owner_id) } #endif -inline void GetOrReserveArtifactRequest::set_owner_id(const char* value) { +inline void GetOrExtendReservationRequest::set_owner_id(const char* value) { GOOGLE_DCHECK(value != nullptr); owner_id_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value)); - // @@protoc_insertion_point(field_set_char:datacatalog.GetOrReserveArtifactRequest.owner_id) + // @@protoc_insertion_point(field_set_char:datacatalog.GetOrExtendReservationRequest.owner_id) } -inline void GetOrReserveArtifactRequest::set_owner_id(const char* value, size_t size) { +inline void GetOrExtendReservationRequest::set_owner_id(const char* value, size_t size) { owner_id_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(reinterpret_cast(value), size)); - // @@protoc_insertion_point(field_set_pointer:datacatalog.GetOrReserveArtifactRequest.owner_id) + // @@protoc_insertion_point(field_set_pointer:datacatalog.GetOrExtendReservationRequest.owner_id) } -inline ::std::string* GetOrReserveArtifactRequest::mutable_owner_id() { +inline ::std::string* GetOrExtendReservationRequest::mutable_owner_id() { - // @@protoc_insertion_point(field_mutable:datacatalog.GetOrReserveArtifactRequest.owner_id) + // @@protoc_insertion_point(field_mutable:datacatalog.GetOrExtendReservationRequest.owner_id) return owner_id_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited()); } -inline ::std::string* GetOrReserveArtifactRequest::release_owner_id() { - // @@protoc_insertion_point(field_release:datacatalog.GetOrReserveArtifactRequest.owner_id) +inline ::std::string* GetOrExtendReservationRequest::release_owner_id() { + // @@protoc_insertion_point(field_release:datacatalog.GetOrExtendReservationRequest.owner_id) return owner_id_.ReleaseNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited()); } -inline void GetOrReserveArtifactRequest::set_allocated_owner_id(::std::string* owner_id) { +inline void GetOrExtendReservationRequest::set_allocated_owner_id(::std::string* owner_id) { if (owner_id != nullptr) { } else { } owner_id_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), owner_id); - // @@protoc_insertion_point(field_set_allocated:datacatalog.GetOrReserveArtifactRequest.owner_id) + // @@protoc_insertion_point(field_set_allocated:datacatalog.GetOrExtendReservationRequest.owner_id) } -// ------------------------------------------------------------------- - -// ReservationStatus - -// .datacatalog.ReservationStatus.State state = 1; -inline void ReservationStatus::clear_state() { - state_ = 0; +// .google.protobuf.Duration heartbeat_interval = 3; +inline bool GetOrExtendReservationRequest::has_heartbeat_interval() const { + return this != internal_default_instance() && heartbeat_interval_ != nullptr; } -inline ::datacatalog::ReservationStatus_State ReservationStatus::state() const { - // @@protoc_insertion_point(field_get:datacatalog.ReservationStatus.state) - return static_cast< ::datacatalog::ReservationStatus_State >(state_); +inline const ::google::protobuf::Duration& GetOrExtendReservationRequest::heartbeat_interval() const { + const ::google::protobuf::Duration* p = heartbeat_interval_; + // @@protoc_insertion_point(field_get:datacatalog.GetOrExtendReservationRequest.heartbeat_interval) + return p != nullptr ? *p : *reinterpret_cast( + &::google::protobuf::_Duration_default_instance_); +} +inline ::google::protobuf::Duration* GetOrExtendReservationRequest::release_heartbeat_interval() { + // @@protoc_insertion_point(field_release:datacatalog.GetOrExtendReservationRequest.heartbeat_interval) + + ::google::protobuf::Duration* temp = heartbeat_interval_; + heartbeat_interval_ = nullptr; + return temp; } -inline void ReservationStatus::set_state(::datacatalog::ReservationStatus_State value) { +inline ::google::protobuf::Duration* GetOrExtendReservationRequest::mutable_heartbeat_interval() { - state_ = value; - // @@protoc_insertion_point(field_set:datacatalog.ReservationStatus.state) + if (heartbeat_interval_ == nullptr) { + auto* p = CreateMaybeMessage<::google::protobuf::Duration>(GetArenaNoVirtual()); + heartbeat_interval_ = p; + } + // @@protoc_insertion_point(field_mutable:datacatalog.GetOrExtendReservationRequest.heartbeat_interval) + return heartbeat_interval_; +} +inline void GetOrExtendReservationRequest::set_allocated_heartbeat_interval(::google::protobuf::Duration* heartbeat_interval) { + ::google::protobuf::Arena* message_arena = GetArenaNoVirtual(); + if (message_arena == nullptr) { + delete reinterpret_cast< ::google::protobuf::MessageLite*>(heartbeat_interval_); + } + if (heartbeat_interval) { + ::google::protobuf::Arena* submessage_arena = + reinterpret_cast<::google::protobuf::MessageLite*>(heartbeat_interval)->GetArena(); + if (message_arena != submessage_arena) { + heartbeat_interval = ::google::protobuf::internal::GetOwnedMessage( + message_arena, heartbeat_interval, submessage_arena); + } + + } else { + + } + heartbeat_interval_ = heartbeat_interval; + // @@protoc_insertion_point(field_set_allocated:datacatalog.GetOrExtendReservationRequest.heartbeat_interval) } -// .datacatalog.Metadata metadata = 2; -inline bool ReservationStatus::has_metadata() const { - return this != internal_default_instance() && metadata_ != nullptr; +// ------------------------------------------------------------------- + +// Reservation + +// .datacatalog.ReservationID reservation_id = 1; +inline bool Reservation::has_reservation_id() const { + return this != internal_default_instance() && reservation_id_ != nullptr; } -inline void ReservationStatus::clear_metadata() { - if (GetArenaNoVirtual() == nullptr && metadata_ != nullptr) { - delete metadata_; +inline void Reservation::clear_reservation_id() { + if (GetArenaNoVirtual() == nullptr && reservation_id_ != nullptr) { + delete reservation_id_; } - metadata_ = nullptr; + reservation_id_ = nullptr; } -inline const ::datacatalog::Metadata& ReservationStatus::metadata() const { - const ::datacatalog::Metadata* p = metadata_; - // @@protoc_insertion_point(field_get:datacatalog.ReservationStatus.metadata) - return p != nullptr ? *p : *reinterpret_cast( - &::datacatalog::_Metadata_default_instance_); +inline const ::datacatalog::ReservationID& Reservation::reservation_id() const { + const ::datacatalog::ReservationID* p = reservation_id_; + // @@protoc_insertion_point(field_get:datacatalog.Reservation.reservation_id) + return p != nullptr ? *p : *reinterpret_cast( + &::datacatalog::_ReservationID_default_instance_); } -inline ::datacatalog::Metadata* ReservationStatus::release_metadata() { - // @@protoc_insertion_point(field_release:datacatalog.ReservationStatus.metadata) +inline ::datacatalog::ReservationID* Reservation::release_reservation_id() { + // @@protoc_insertion_point(field_release:datacatalog.Reservation.reservation_id) - ::datacatalog::Metadata* temp = metadata_; - metadata_ = nullptr; + ::datacatalog::ReservationID* temp = reservation_id_; + reservation_id_ = nullptr; return temp; } -inline ::datacatalog::Metadata* ReservationStatus::mutable_metadata() { +inline ::datacatalog::ReservationID* Reservation::mutable_reservation_id() { - if (metadata_ == nullptr) { - auto* p = CreateMaybeMessage<::datacatalog::Metadata>(GetArenaNoVirtual()); - metadata_ = p; + if (reservation_id_ == nullptr) { + auto* p = CreateMaybeMessage<::datacatalog::ReservationID>(GetArenaNoVirtual()); + reservation_id_ = p; } - // @@protoc_insertion_point(field_mutable:datacatalog.ReservationStatus.metadata) - return metadata_; + // @@protoc_insertion_point(field_mutable:datacatalog.Reservation.reservation_id) + return reservation_id_; } -inline void ReservationStatus::set_allocated_metadata(::datacatalog::Metadata* metadata) { +inline void Reservation::set_allocated_reservation_id(::datacatalog::ReservationID* reservation_id) { ::google::protobuf::Arena* message_arena = GetArenaNoVirtual(); if (message_arena == nullptr) { - delete metadata_; + delete reservation_id_; } - if (metadata) { + if (reservation_id) { ::google::protobuf::Arena* submessage_arena = nullptr; if (message_arena != submessage_arena) { - metadata = ::google::protobuf::internal::GetOwnedMessage( - message_arena, metadata, submessage_arena); + reservation_id = ::google::protobuf::internal::GetOwnedMessage( + message_arena, reservation_id, submessage_arena); } } else { } - metadata_ = metadata; - // @@protoc_insertion_point(field_set_allocated:datacatalog.ReservationStatus.metadata) + reservation_id_ = reservation_id; + // @@protoc_insertion_point(field_set_allocated:datacatalog.Reservation.reservation_id) } -// string owner_id = 3; -inline void ReservationStatus::clear_owner_id() { +// string owner_id = 2; +inline void Reservation::clear_owner_id() { owner_id_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited()); } -inline const ::std::string& ReservationStatus::owner_id() const { - // @@protoc_insertion_point(field_get:datacatalog.ReservationStatus.owner_id) +inline const ::std::string& Reservation::owner_id() const { + // @@protoc_insertion_point(field_get:datacatalog.Reservation.owner_id) return owner_id_.GetNoArena(); } -inline void ReservationStatus::set_owner_id(const ::std::string& value) { +inline void Reservation::set_owner_id(const ::std::string& value) { owner_id_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value); - // @@protoc_insertion_point(field_set:datacatalog.ReservationStatus.owner_id) + // @@protoc_insertion_point(field_set:datacatalog.Reservation.owner_id) } #if LANG_CXX11 -inline void ReservationStatus::set_owner_id(::std::string&& value) { +inline void Reservation::set_owner_id(::std::string&& value) { owner_id_.SetNoArena( &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value)); - // @@protoc_insertion_point(field_set_rvalue:datacatalog.ReservationStatus.owner_id) + // @@protoc_insertion_point(field_set_rvalue:datacatalog.Reservation.owner_id) } #endif -inline void ReservationStatus::set_owner_id(const char* value) { +inline void Reservation::set_owner_id(const char* value) { GOOGLE_DCHECK(value != nullptr); owner_id_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value)); - // @@protoc_insertion_point(field_set_char:datacatalog.ReservationStatus.owner_id) + // @@protoc_insertion_point(field_set_char:datacatalog.Reservation.owner_id) } -inline void ReservationStatus::set_owner_id(const char* value, size_t size) { +inline void Reservation::set_owner_id(const char* value, size_t size) { owner_id_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(reinterpret_cast(value), size)); - // @@protoc_insertion_point(field_set_pointer:datacatalog.ReservationStatus.owner_id) + // @@protoc_insertion_point(field_set_pointer:datacatalog.Reservation.owner_id) } -inline ::std::string* ReservationStatus::mutable_owner_id() { +inline ::std::string* Reservation::mutable_owner_id() { - // @@protoc_insertion_point(field_mutable:datacatalog.ReservationStatus.owner_id) + // @@protoc_insertion_point(field_mutable:datacatalog.Reservation.owner_id) return owner_id_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited()); } -inline ::std::string* ReservationStatus::release_owner_id() { - // @@protoc_insertion_point(field_release:datacatalog.ReservationStatus.owner_id) +inline ::std::string* Reservation::release_owner_id() { + // @@protoc_insertion_point(field_release:datacatalog.Reservation.owner_id) return owner_id_.ReleaseNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited()); } -inline void ReservationStatus::set_allocated_owner_id(::std::string* owner_id) { +inline void Reservation::set_allocated_owner_id(::std::string* owner_id) { if (owner_id != nullptr) { } else { } owner_id_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), owner_id); - // @@protoc_insertion_point(field_set_allocated:datacatalog.ReservationStatus.owner_id) -} - -// ------------------------------------------------------------------- - -// GetOrReserveArtifactResponse - -// .datacatalog.Artifact artifact = 1; -inline bool GetOrReserveArtifactResponse::has_artifact() const { - return value_case() == kArtifact; -} -inline void GetOrReserveArtifactResponse::set_has_artifact() { - _oneof_case_[0] = kArtifact; -} -inline void GetOrReserveArtifactResponse::clear_artifact() { - if (has_artifact()) { - delete value_.artifact_; - clear_has_value(); - } -} -inline ::datacatalog::Artifact* GetOrReserveArtifactResponse::release_artifact() { - // @@protoc_insertion_point(field_release:datacatalog.GetOrReserveArtifactResponse.artifact) - if (has_artifact()) { - clear_has_value(); - ::datacatalog::Artifact* temp = value_.artifact_; - value_.artifact_ = nullptr; - return temp; - } else { - return nullptr; - } -} -inline const ::datacatalog::Artifact& GetOrReserveArtifactResponse::artifact() const { - // @@protoc_insertion_point(field_get:datacatalog.GetOrReserveArtifactResponse.artifact) - return has_artifact() - ? *value_.artifact_ - : *reinterpret_cast< ::datacatalog::Artifact*>(&::datacatalog::_Artifact_default_instance_); -} -inline ::datacatalog::Artifact* GetOrReserveArtifactResponse::mutable_artifact() { - if (!has_artifact()) { - clear_value(); - set_has_artifact(); - value_.artifact_ = CreateMaybeMessage< ::datacatalog::Artifact >( - GetArenaNoVirtual()); - } - // @@protoc_insertion_point(field_mutable:datacatalog.GetOrReserveArtifactResponse.artifact) - return value_.artifact_; -} - -// .datacatalog.ReservationStatus reservation_status = 2; -inline bool GetOrReserveArtifactResponse::has_reservation_status() const { - return value_case() == kReservationStatus; -} -inline void GetOrReserveArtifactResponse::set_has_reservation_status() { - _oneof_case_[0] = kReservationStatus; -} -inline void GetOrReserveArtifactResponse::clear_reservation_status() { - if (has_reservation_status()) { - delete value_.reservation_status_; - clear_has_value(); - } -} -inline ::datacatalog::ReservationStatus* GetOrReserveArtifactResponse::release_reservation_status() { - // @@protoc_insertion_point(field_release:datacatalog.GetOrReserveArtifactResponse.reservation_status) - if (has_reservation_status()) { - clear_has_value(); - ::datacatalog::ReservationStatus* temp = value_.reservation_status_; - value_.reservation_status_ = nullptr; - return temp; - } else { - return nullptr; - } -} -inline const ::datacatalog::ReservationStatus& GetOrReserveArtifactResponse::reservation_status() const { - // @@protoc_insertion_point(field_get:datacatalog.GetOrReserveArtifactResponse.reservation_status) - return has_reservation_status() - ? *value_.reservation_status_ - : *reinterpret_cast< ::datacatalog::ReservationStatus*>(&::datacatalog::_ReservationStatus_default_instance_); -} -inline ::datacatalog::ReservationStatus* GetOrReserveArtifactResponse::mutable_reservation_status() { - if (!has_reservation_status()) { - clear_value(); - set_has_reservation_status(); - value_.reservation_status_ = CreateMaybeMessage< ::datacatalog::ReservationStatus >( - GetArenaNoVirtual()); - } - // @@protoc_insertion_point(field_mutable:datacatalog.GetOrReserveArtifactResponse.reservation_status) - return value_.reservation_status_; + // @@protoc_insertion_point(field_set_allocated:datacatalog.Reservation.owner_id) } -inline bool GetOrReserveArtifactResponse::has_value() const { - return value_case() != VALUE_NOT_SET; -} -inline void GetOrReserveArtifactResponse::clear_has_value() { - _oneof_case_[0] = VALUE_NOT_SET; +// .google.protobuf.Duration heartbeat_interval = 3; +inline bool Reservation::has_heartbeat_interval() const { + return this != internal_default_instance() && heartbeat_interval_ != nullptr; } -inline GetOrReserveArtifactResponse::ValueCase GetOrReserveArtifactResponse::value_case() const { - return GetOrReserveArtifactResponse::ValueCase(_oneof_case_[0]); -} -// ------------------------------------------------------------------- - -// ExtendReservationRequest - -// .datacatalog.DatasetID dataset_id = 1; -inline bool ExtendReservationRequest::has_dataset_id() const { - return this != internal_default_instance() && dataset_id_ != nullptr; +inline const ::google::protobuf::Duration& Reservation::heartbeat_interval() const { + const ::google::protobuf::Duration* p = heartbeat_interval_; + // @@protoc_insertion_point(field_get:datacatalog.Reservation.heartbeat_interval) + return p != nullptr ? *p : *reinterpret_cast( + &::google::protobuf::_Duration_default_instance_); } -inline void ExtendReservationRequest::clear_dataset_id() { - if (GetArenaNoVirtual() == nullptr && dataset_id_ != nullptr) { - delete dataset_id_; - } - dataset_id_ = nullptr; -} -inline const ::datacatalog::DatasetID& ExtendReservationRequest::dataset_id() const { - const ::datacatalog::DatasetID* p = dataset_id_; - // @@protoc_insertion_point(field_get:datacatalog.ExtendReservationRequest.dataset_id) - return p != nullptr ? *p : *reinterpret_cast( - &::datacatalog::_DatasetID_default_instance_); -} -inline ::datacatalog::DatasetID* ExtendReservationRequest::release_dataset_id() { - // @@protoc_insertion_point(field_release:datacatalog.ExtendReservationRequest.dataset_id) +inline ::google::protobuf::Duration* Reservation::release_heartbeat_interval() { + // @@protoc_insertion_point(field_release:datacatalog.Reservation.heartbeat_interval) - ::datacatalog::DatasetID* temp = dataset_id_; - dataset_id_ = nullptr; + ::google::protobuf::Duration* temp = heartbeat_interval_; + heartbeat_interval_ = nullptr; return temp; } -inline ::datacatalog::DatasetID* ExtendReservationRequest::mutable_dataset_id() { +inline ::google::protobuf::Duration* Reservation::mutable_heartbeat_interval() { - if (dataset_id_ == nullptr) { - auto* p = CreateMaybeMessage<::datacatalog::DatasetID>(GetArenaNoVirtual()); - dataset_id_ = p; + if (heartbeat_interval_ == nullptr) { + auto* p = CreateMaybeMessage<::google::protobuf::Duration>(GetArenaNoVirtual()); + heartbeat_interval_ = p; } - // @@protoc_insertion_point(field_mutable:datacatalog.ExtendReservationRequest.dataset_id) - return dataset_id_; + // @@protoc_insertion_point(field_mutable:datacatalog.Reservation.heartbeat_interval) + return heartbeat_interval_; } -inline void ExtendReservationRequest::set_allocated_dataset_id(::datacatalog::DatasetID* dataset_id) { +inline void Reservation::set_allocated_heartbeat_interval(::google::protobuf::Duration* heartbeat_interval) { ::google::protobuf::Arena* message_arena = GetArenaNoVirtual(); if (message_arena == nullptr) { - delete dataset_id_; + delete reinterpret_cast< ::google::protobuf::MessageLite*>(heartbeat_interval_); } - if (dataset_id) { - ::google::protobuf::Arena* submessage_arena = nullptr; + if (heartbeat_interval) { + ::google::protobuf::Arena* submessage_arena = + reinterpret_cast<::google::protobuf::MessageLite*>(heartbeat_interval)->GetArena(); if (message_arena != submessage_arena) { - dataset_id = ::google::protobuf::internal::GetOwnedMessage( - message_arena, dataset_id, submessage_arena); + heartbeat_interval = ::google::protobuf::internal::GetOwnedMessage( + message_arena, heartbeat_interval, submessage_arena); } } else { } - dataset_id_ = dataset_id; - // @@protoc_insertion_point(field_set_allocated:datacatalog.ExtendReservationRequest.dataset_id) + heartbeat_interval_ = heartbeat_interval; + // @@protoc_insertion_point(field_set_allocated:datacatalog.Reservation.heartbeat_interval) } -// string tag_name = 2; -inline void ExtendReservationRequest::clear_tag_name() { - tag_name_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited()); -} -inline const ::std::string& ExtendReservationRequest::tag_name() const { - // @@protoc_insertion_point(field_get:datacatalog.ExtendReservationRequest.tag_name) - return tag_name_.GetNoArena(); -} -inline void ExtendReservationRequest::set_tag_name(const ::std::string& value) { - - tag_name_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value); - // @@protoc_insertion_point(field_set:datacatalog.ExtendReservationRequest.tag_name) +// .google.protobuf.Timestamp expires_at = 4; +inline bool Reservation::has_expires_at() const { + return this != internal_default_instance() && expires_at_ != nullptr; } -#if LANG_CXX11 -inline void ExtendReservationRequest::set_tag_name(::std::string&& value) { - - tag_name_.SetNoArena( - &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value)); - // @@protoc_insertion_point(field_set_rvalue:datacatalog.ExtendReservationRequest.tag_name) -} -#endif -inline void ExtendReservationRequest::set_tag_name(const char* value) { - GOOGLE_DCHECK(value != nullptr); - - tag_name_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value)); - // @@protoc_insertion_point(field_set_char:datacatalog.ExtendReservationRequest.tag_name) -} -inline void ExtendReservationRequest::set_tag_name(const char* value, size_t size) { - - tag_name_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), - ::std::string(reinterpret_cast(value), size)); - // @@protoc_insertion_point(field_set_pointer:datacatalog.ExtendReservationRequest.tag_name) +inline const ::google::protobuf::Timestamp& Reservation::expires_at() const { + const ::google::protobuf::Timestamp* p = expires_at_; + // @@protoc_insertion_point(field_get:datacatalog.Reservation.expires_at) + return p != nullptr ? *p : *reinterpret_cast( + &::google::protobuf::_Timestamp_default_instance_); } -inline ::std::string* ExtendReservationRequest::mutable_tag_name() { +inline ::google::protobuf::Timestamp* Reservation::release_expires_at() { + // @@protoc_insertion_point(field_release:datacatalog.Reservation.expires_at) - // @@protoc_insertion_point(field_mutable:datacatalog.ExtendReservationRequest.tag_name) - return tag_name_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited()); + ::google::protobuf::Timestamp* temp = expires_at_; + expires_at_ = nullptr; + return temp; } -inline ::std::string* ExtendReservationRequest::release_tag_name() { - // @@protoc_insertion_point(field_release:datacatalog.ExtendReservationRequest.tag_name) +inline ::google::protobuf::Timestamp* Reservation::mutable_expires_at() { - return tag_name_.ReleaseNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited()); + if (expires_at_ == nullptr) { + auto* p = CreateMaybeMessage<::google::protobuf::Timestamp>(GetArenaNoVirtual()); + expires_at_ = p; + } + // @@protoc_insertion_point(field_mutable:datacatalog.Reservation.expires_at) + return expires_at_; } -inline void ExtendReservationRequest::set_allocated_tag_name(::std::string* tag_name) { - if (tag_name != nullptr) { +inline void Reservation::set_allocated_expires_at(::google::protobuf::Timestamp* expires_at) { + ::google::protobuf::Arena* message_arena = GetArenaNoVirtual(); + if (message_arena == nullptr) { + delete reinterpret_cast< ::google::protobuf::MessageLite*>(expires_at_); + } + if (expires_at) { + ::google::protobuf::Arena* submessage_arena = + reinterpret_cast<::google::protobuf::MessageLite*>(expires_at)->GetArena(); + if (message_arena != submessage_arena) { + expires_at = ::google::protobuf::internal::GetOwnedMessage( + message_arena, expires_at, submessage_arena); + } } else { } - tag_name_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), tag_name); - // @@protoc_insertion_point(field_set_allocated:datacatalog.ExtendReservationRequest.tag_name) + expires_at_ = expires_at; + // @@protoc_insertion_point(field_set_allocated:datacatalog.Reservation.expires_at) } -// string owner_id = 3; -inline void ExtendReservationRequest::clear_owner_id() { - owner_id_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited()); -} -inline const ::std::string& ExtendReservationRequest::owner_id() const { - // @@protoc_insertion_point(field_get:datacatalog.ExtendReservationRequest.owner_id) - return owner_id_.GetNoArena(); -} -inline void ExtendReservationRequest::set_owner_id(const ::std::string& value) { - - owner_id_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value); - // @@protoc_insertion_point(field_set:datacatalog.ExtendReservationRequest.owner_id) -} -#if LANG_CXX11 -inline void ExtendReservationRequest::set_owner_id(::std::string&& value) { - - owner_id_.SetNoArena( - &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value)); - // @@protoc_insertion_point(field_set_rvalue:datacatalog.ExtendReservationRequest.owner_id) +// .datacatalog.Metadata metadata = 6; +inline bool Reservation::has_metadata() const { + return this != internal_default_instance() && metadata_ != nullptr; } -#endif -inline void ExtendReservationRequest::set_owner_id(const char* value) { - GOOGLE_DCHECK(value != nullptr); - - owner_id_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value)); - // @@protoc_insertion_point(field_set_char:datacatalog.ExtendReservationRequest.owner_id) +inline void Reservation::clear_metadata() { + if (GetArenaNoVirtual() == nullptr && metadata_ != nullptr) { + delete metadata_; + } + metadata_ = nullptr; } -inline void ExtendReservationRequest::set_owner_id(const char* value, size_t size) { - - owner_id_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), - ::std::string(reinterpret_cast(value), size)); - // @@protoc_insertion_point(field_set_pointer:datacatalog.ExtendReservationRequest.owner_id) +inline const ::datacatalog::Metadata& Reservation::metadata() const { + const ::datacatalog::Metadata* p = metadata_; + // @@protoc_insertion_point(field_get:datacatalog.Reservation.metadata) + return p != nullptr ? *p : *reinterpret_cast( + &::datacatalog::_Metadata_default_instance_); } -inline ::std::string* ExtendReservationRequest::mutable_owner_id() { +inline ::datacatalog::Metadata* Reservation::release_metadata() { + // @@protoc_insertion_point(field_release:datacatalog.Reservation.metadata) - // @@protoc_insertion_point(field_mutable:datacatalog.ExtendReservationRequest.owner_id) - return owner_id_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited()); + ::datacatalog::Metadata* temp = metadata_; + metadata_ = nullptr; + return temp; } -inline ::std::string* ExtendReservationRequest::release_owner_id() { - // @@protoc_insertion_point(field_release:datacatalog.ExtendReservationRequest.owner_id) +inline ::datacatalog::Metadata* Reservation::mutable_metadata() { - return owner_id_.ReleaseNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited()); + if (metadata_ == nullptr) { + auto* p = CreateMaybeMessage<::datacatalog::Metadata>(GetArenaNoVirtual()); + metadata_ = p; + } + // @@protoc_insertion_point(field_mutable:datacatalog.Reservation.metadata) + return metadata_; } -inline void ExtendReservationRequest::set_allocated_owner_id(::std::string* owner_id) { - if (owner_id != nullptr) { +inline void Reservation::set_allocated_metadata(::datacatalog::Metadata* metadata) { + ::google::protobuf::Arena* message_arena = GetArenaNoVirtual(); + if (message_arena == nullptr) { + delete metadata_; + } + if (metadata) { + ::google::protobuf::Arena* submessage_arena = nullptr; + if (message_arena != submessage_arena) { + metadata = ::google::protobuf::internal::GetOwnedMessage( + message_arena, metadata, submessage_arena); + } } else { } - owner_id_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), owner_id); - // @@protoc_insertion_point(field_set_allocated:datacatalog.ExtendReservationRequest.owner_id) + metadata_ = metadata; + // @@protoc_insertion_point(field_set_allocated:datacatalog.Reservation.metadata) } // ------------------------------------------------------------------- -// ExtendReservationResponse - -// ------------------------------------------------------------------- +// GetOrExtendReservationResponse -// ReleaseReservationRequest - -// .datacatalog.DatasetID dataset_id = 1; -inline bool ReleaseReservationRequest::has_dataset_id() const { - return this != internal_default_instance() && dataset_id_ != nullptr; +// .datacatalog.Reservation reservation = 1; +inline bool GetOrExtendReservationResponse::has_reservation() const { + return this != internal_default_instance() && reservation_ != nullptr; } -inline void ReleaseReservationRequest::clear_dataset_id() { - if (GetArenaNoVirtual() == nullptr && dataset_id_ != nullptr) { - delete dataset_id_; +inline void GetOrExtendReservationResponse::clear_reservation() { + if (GetArenaNoVirtual() == nullptr && reservation_ != nullptr) { + delete reservation_; } - dataset_id_ = nullptr; + reservation_ = nullptr; } -inline const ::datacatalog::DatasetID& ReleaseReservationRequest::dataset_id() const { - const ::datacatalog::DatasetID* p = dataset_id_; - // @@protoc_insertion_point(field_get:datacatalog.ReleaseReservationRequest.dataset_id) - return p != nullptr ? *p : *reinterpret_cast( - &::datacatalog::_DatasetID_default_instance_); +inline const ::datacatalog::Reservation& GetOrExtendReservationResponse::reservation() const { + const ::datacatalog::Reservation* p = reservation_; + // @@protoc_insertion_point(field_get:datacatalog.GetOrExtendReservationResponse.reservation) + return p != nullptr ? *p : *reinterpret_cast( + &::datacatalog::_Reservation_default_instance_); } -inline ::datacatalog::DatasetID* ReleaseReservationRequest::release_dataset_id() { - // @@protoc_insertion_point(field_release:datacatalog.ReleaseReservationRequest.dataset_id) +inline ::datacatalog::Reservation* GetOrExtendReservationResponse::release_reservation() { + // @@protoc_insertion_point(field_release:datacatalog.GetOrExtendReservationResponse.reservation) - ::datacatalog::DatasetID* temp = dataset_id_; - dataset_id_ = nullptr; + ::datacatalog::Reservation* temp = reservation_; + reservation_ = nullptr; return temp; } -inline ::datacatalog::DatasetID* ReleaseReservationRequest::mutable_dataset_id() { +inline ::datacatalog::Reservation* GetOrExtendReservationResponse::mutable_reservation() { - if (dataset_id_ == nullptr) { - auto* p = CreateMaybeMessage<::datacatalog::DatasetID>(GetArenaNoVirtual()); - dataset_id_ = p; + if (reservation_ == nullptr) { + auto* p = CreateMaybeMessage<::datacatalog::Reservation>(GetArenaNoVirtual()); + reservation_ = p; } - // @@protoc_insertion_point(field_mutable:datacatalog.ReleaseReservationRequest.dataset_id) - return dataset_id_; + // @@protoc_insertion_point(field_mutable:datacatalog.GetOrExtendReservationResponse.reservation) + return reservation_; } -inline void ReleaseReservationRequest::set_allocated_dataset_id(::datacatalog::DatasetID* dataset_id) { +inline void GetOrExtendReservationResponse::set_allocated_reservation(::datacatalog::Reservation* reservation) { ::google::protobuf::Arena* message_arena = GetArenaNoVirtual(); if (message_arena == nullptr) { - delete dataset_id_; + delete reservation_; } - if (dataset_id) { + if (reservation) { ::google::protobuf::Arena* submessage_arena = nullptr; if (message_arena != submessage_arena) { - dataset_id = ::google::protobuf::internal::GetOwnedMessage( - message_arena, dataset_id, submessage_arena); + reservation = ::google::protobuf::internal::GetOwnedMessage( + message_arena, reservation, submessage_arena); } } else { } - dataset_id_ = dataset_id; - // @@protoc_insertion_point(field_set_allocated:datacatalog.ReleaseReservationRequest.dataset_id) + reservation_ = reservation; + // @@protoc_insertion_point(field_set_allocated:datacatalog.GetOrExtendReservationResponse.reservation) } -// string tag_name = 2; -inline void ReleaseReservationRequest::clear_tag_name() { - tag_name_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited()); -} -inline const ::std::string& ReleaseReservationRequest::tag_name() const { - // @@protoc_insertion_point(field_get:datacatalog.ReleaseReservationRequest.tag_name) - return tag_name_.GetNoArena(); -} -inline void ReleaseReservationRequest::set_tag_name(const ::std::string& value) { - - tag_name_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value); - // @@protoc_insertion_point(field_set:datacatalog.ReleaseReservationRequest.tag_name) -} -#if LANG_CXX11 -inline void ReleaseReservationRequest::set_tag_name(::std::string&& value) { - - tag_name_.SetNoArena( - &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value)); - // @@protoc_insertion_point(field_set_rvalue:datacatalog.ReleaseReservationRequest.tag_name) +// ------------------------------------------------------------------- + +// ReleaseReservationRequest + +// .datacatalog.ReservationID reservation_id = 1; +inline bool ReleaseReservationRequest::has_reservation_id() const { + return this != internal_default_instance() && reservation_id_ != nullptr; } -#endif -inline void ReleaseReservationRequest::set_tag_name(const char* value) { - GOOGLE_DCHECK(value != nullptr); - - tag_name_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value)); - // @@protoc_insertion_point(field_set_char:datacatalog.ReleaseReservationRequest.tag_name) +inline void ReleaseReservationRequest::clear_reservation_id() { + if (GetArenaNoVirtual() == nullptr && reservation_id_ != nullptr) { + delete reservation_id_; + } + reservation_id_ = nullptr; } -inline void ReleaseReservationRequest::set_tag_name(const char* value, size_t size) { - - tag_name_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), - ::std::string(reinterpret_cast(value), size)); - // @@protoc_insertion_point(field_set_pointer:datacatalog.ReleaseReservationRequest.tag_name) +inline const ::datacatalog::ReservationID& ReleaseReservationRequest::reservation_id() const { + const ::datacatalog::ReservationID* p = reservation_id_; + // @@protoc_insertion_point(field_get:datacatalog.ReleaseReservationRequest.reservation_id) + return p != nullptr ? *p : *reinterpret_cast( + &::datacatalog::_ReservationID_default_instance_); } -inline ::std::string* ReleaseReservationRequest::mutable_tag_name() { +inline ::datacatalog::ReservationID* ReleaseReservationRequest::release_reservation_id() { + // @@protoc_insertion_point(field_release:datacatalog.ReleaseReservationRequest.reservation_id) - // @@protoc_insertion_point(field_mutable:datacatalog.ReleaseReservationRequest.tag_name) - return tag_name_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited()); + ::datacatalog::ReservationID* temp = reservation_id_; + reservation_id_ = nullptr; + return temp; } -inline ::std::string* ReleaseReservationRequest::release_tag_name() { - // @@protoc_insertion_point(field_release:datacatalog.ReleaseReservationRequest.tag_name) +inline ::datacatalog::ReservationID* ReleaseReservationRequest::mutable_reservation_id() { - return tag_name_.ReleaseNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited()); + if (reservation_id_ == nullptr) { + auto* p = CreateMaybeMessage<::datacatalog::ReservationID>(GetArenaNoVirtual()); + reservation_id_ = p; + } + // @@protoc_insertion_point(field_mutable:datacatalog.ReleaseReservationRequest.reservation_id) + return reservation_id_; } -inline void ReleaseReservationRequest::set_allocated_tag_name(::std::string* tag_name) { - if (tag_name != nullptr) { +inline void ReleaseReservationRequest::set_allocated_reservation_id(::datacatalog::ReservationID* reservation_id) { + ::google::protobuf::Arena* message_arena = GetArenaNoVirtual(); + if (message_arena == nullptr) { + delete reservation_id_; + } + if (reservation_id) { + ::google::protobuf::Arena* submessage_arena = nullptr; + if (message_arena != submessage_arena) { + reservation_id = ::google::protobuf::internal::GetOwnedMessage( + message_arena, reservation_id, submessage_arena); + } } else { } - tag_name_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), tag_name); - // @@protoc_insertion_point(field_set_allocated:datacatalog.ReleaseReservationRequest.tag_name) + reservation_id_ = reservation_id; + // @@protoc_insertion_point(field_set_allocated:datacatalog.ReleaseReservationRequest.reservation_id) } -// string owner_id = 3; +// string owner_id = 2; inline void ReleaseReservationRequest::clear_owner_id() { owner_id_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited()); } @@ -9295,8 +9072,6 @@ inline void PaginationOptions::set_sortorder(::datacatalog::PaginationOptions_So // ------------------------------------------------------------------- -// ------------------------------------------------------------------- - // @@protoc_insertion_point(namespace_scope) @@ -9305,11 +9080,6 @@ inline void PaginationOptions::set_sortorder(::datacatalog::PaginationOptions_So namespace google { namespace protobuf { -template <> struct is_proto_enum< ::datacatalog::ReservationStatus_State> : ::std::true_type {}; -template <> -inline const EnumDescriptor* GetEnumDescriptor< ::datacatalog::ReservationStatus_State>() { - return ::datacatalog::ReservationStatus_State_descriptor(); -} template <> struct is_proto_enum< ::datacatalog::SinglePropertyFilter_ComparisonOperator> : ::std::true_type {}; template <> inline const EnumDescriptor* GetEnumDescriptor< ::datacatalog::SinglePropertyFilter_ComparisonOperator>() { diff --git a/gen/pb-cpp/flyteidl/event/event.pb.cc b/gen/pb-cpp/flyteidl/event/event.pb.cc index 7fb02cf92..138e0183c 100644 --- a/gen/pb-cpp/flyteidl/event/event.pb.cc +++ b/gen/pb-cpp/flyteidl/event/event.pb.cc @@ -343,6 +343,7 @@ const ::google::protobuf::uint32 TableStruct_flyteidl_2fevent_2fevent_2eproto::o ~0u, // no _weak_field_map_ PROTOBUF_FIELD_OFFSET(::flyteidl::event::TaskNodeMetadata, cache_status_), PROTOBUF_FIELD_OFFSET(::flyteidl::event::TaskNodeMetadata, catalog_key_), + PROTOBUF_FIELD_OFFSET(::flyteidl::event::TaskNodeMetadata, reservation_status_), PROTOBUF_FIELD_OFFSET(::flyteidl::event::TaskNodeMetadata, dynamic_workflow_), ~0u, // no _has_bits_ PROTOBUF_FIELD_OFFSET(::flyteidl::event::DynamicWorkflowNodeMetadata, _internal_metadata_), @@ -414,13 +415,13 @@ static const ::google::protobuf::internal::MigrationSchema schemas[] PROTOBUF_SE { 13, -1, sizeof(::flyteidl::event::NodeExecutionEvent)}, { 35, -1, sizeof(::flyteidl::event::WorkflowNodeMetadata)}, { 41, -1, sizeof(::flyteidl::event::TaskNodeMetadata)}, - { 49, -1, sizeof(::flyteidl::event::DynamicWorkflowNodeMetadata)}, - { 56, -1, sizeof(::flyteidl::event::ParentTaskExecutionMetadata)}, - { 62, -1, sizeof(::flyteidl::event::ParentNodeExecutionMetadata)}, - { 68, -1, sizeof(::flyteidl::event::TaskExecutionEvent)}, - { 90, -1, sizeof(::flyteidl::event::ExternalResourceInfo)}, - { 96, -1, sizeof(::flyteidl::event::ResourcePoolInfo)}, - { 103, -1, sizeof(::flyteidl::event::TaskExecutionMetadata)}, + { 50, -1, sizeof(::flyteidl::event::DynamicWorkflowNodeMetadata)}, + { 57, -1, sizeof(::flyteidl::event::ParentTaskExecutionMetadata)}, + { 63, -1, sizeof(::flyteidl::event::ParentNodeExecutionMetadata)}, + { 69, -1, sizeof(::flyteidl::event::TaskExecutionEvent)}, + { 91, -1, sizeof(::flyteidl::event::ExternalResourceInfo)}, + { 97, -1, sizeof(::flyteidl::event::ResourcePoolInfo)}, + { 104, -1, sizeof(::flyteidl::event::TaskExecutionMetadata)}, }; static ::google::protobuf::Message const * const file_default_instances[] = { @@ -479,52 +480,54 @@ const char descriptor_table_protodef_flyteidl_2fevent_2fevent_2eproto[] = "\n\tnode_name\030\r \001(\tB\017\n\routput_resultB\021\n\017ta" "rget_metadata\"X\n\024WorkflowNodeMetadata\022@\n" "\014execution_id\030\001 \001(\0132*.flyteidl.core.Work" - "flowExecutionIdentifier\"\307\001\n\020TaskNodeMeta" + "flowExecutionIdentifier\"\215\002\n\020TaskNodeMeta" "data\0227\n\014cache_status\030\001 \001(\0162!.flyteidl.co" "re.CatalogCacheStatus\0223\n\013catalog_key\030\002 \001" - "(\0132\036.flyteidl.core.CatalogMetadata\022E\n\020dy" - "namic_workflow\030\020 \001(\0132+.flyteidl.event.Dy" - "namicWorkflowNodeMetadata\"\207\001\n\033DynamicWor" - "kflowNodeMetadata\022%\n\002id\030\001 \001(\0132\031.flyteidl" - ".core.Identifier\022A\n\021compiled_workflow\030\002 " - "\001(\0132&.flyteidl.core.CompiledWorkflowClos" - "ure\"Q\n\033ParentTaskExecutionMetadata\0222\n\002id" - "\030\001 \001(\0132&.flyteidl.core.TaskExecutionIden" - "tifier\".\n\033ParentNodeExecutionMetadata\022\017\n" - "\007node_id\030\001 \001(\t\"\375\004\n\022TaskExecutionEvent\022*\n" - "\007task_id\030\001 \001(\0132\031.flyteidl.core.Identifie" - "r\022H\n\030parent_node_execution_id\030\002 \001(\0132&.fl" - "yteidl.core.NodeExecutionIdentifier\022\025\n\rr" - "etry_attempt\030\003 \001(\r\0221\n\005phase\030\004 \001(\0162\".flyt" - "eidl.core.TaskExecution.Phase\022\023\n\013produce" - "r_id\030\005 \001(\t\022$\n\004logs\030\006 \003(\0132\026.flyteidl.core" - ".TaskLog\022/\n\013occurred_at\030\007 \001(\0132\032.google.p" - "rotobuf.Timestamp\022\021\n\tinput_uri\030\010 \001(\t\022\024\n\n" - "output_uri\030\t \001(\tH\000\022.\n\005error\030\n \001(\0132\035.flyt" - "eidl.core.ExecutionErrorH\000\0220\n\013output_dat" - "a\030\021 \001(\0132\031.flyteidl.core.LiteralMapH\000\022,\n\013" - "custom_info\030\013 \001(\0132\027.google.protobuf.Stru" - "ct\022\025\n\rphase_version\030\014 \001(\r\022\016\n\006reason\030\r \001(" - "\t\022\021\n\ttask_type\030\016 \001(\t\0227\n\010metadata\030\020 \001(\0132%" - ".flyteidl.event.TaskExecutionMetadataB\017\n" - "\routput_result\"+\n\024ExternalResourceInfo\022\023" - "\n\013external_id\030\001 \001(\t\"\?\n\020ResourcePoolInfo\022" - "\030\n\020allocation_token\030\001 \001(\t\022\021\n\tnamespace\030\002" - " \001(\t\"\310\002\n\025TaskExecutionMetadata\022\026\n\016genera" - "ted_name\030\001 \001(\t\022@\n\022external_resources\030\002 \003" - "(\0132$.flyteidl.event.ExternalResourceInfo" - "\022<\n\022resource_pool_info\030\003 \003(\0132 .flyteidl." - "event.ResourcePoolInfo\022\031\n\021plugin_identif" - "ier\030\004 \001(\t\022K\n\016instance_class\030\020 \001(\01623.flyt" - "eidl.event.TaskExecutionMetadata.Instanc" - "eClass\"/\n\rInstanceClass\022\013\n\007DEFAULT\020\000\022\021\n\r" - "INTERRUPTIBLE\020\001B7Z5github.com/flyteorg/f" - "lyteidl/gen/pb-go/flyteidl/eventb\006proto3" + "(\0132\036.flyteidl.core.CatalogMetadata\022D\n\022re" + "servation_status\030\003 \001(\0162(.flyteidl.core.C" + "atalogReservation.Status\022E\n\020dynamic_work" + "flow\030\020 \001(\0132+.flyteidl.event.DynamicWorkf" + "lowNodeMetadata\"\207\001\n\033DynamicWorkflowNodeM" + "etadata\022%\n\002id\030\001 \001(\0132\031.flyteidl.core.Iden" + "tifier\022A\n\021compiled_workflow\030\002 \001(\0132&.flyt" + "eidl.core.CompiledWorkflowClosure\"Q\n\033Par" + "entTaskExecutionMetadata\0222\n\002id\030\001 \001(\0132&.f" + "lyteidl.core.TaskExecutionIdentifier\".\n\033" + "ParentNodeExecutionMetadata\022\017\n\007node_id\030\001" + " \001(\t\"\375\004\n\022TaskExecutionEvent\022*\n\007task_id\030\001" + " \001(\0132\031.flyteidl.core.Identifier\022H\n\030paren" + "t_node_execution_id\030\002 \001(\0132&.flyteidl.cor" + "e.NodeExecutionIdentifier\022\025\n\rretry_attem" + "pt\030\003 \001(\r\0221\n\005phase\030\004 \001(\0162\".flyteidl.core." + "TaskExecution.Phase\022\023\n\013producer_id\030\005 \001(\t" + "\022$\n\004logs\030\006 \003(\0132\026.flyteidl.core.TaskLog\022/" + "\n\013occurred_at\030\007 \001(\0132\032.google.protobuf.Ti" + "mestamp\022\021\n\tinput_uri\030\010 \001(\t\022\024\n\noutput_uri" + "\030\t \001(\tH\000\022.\n\005error\030\n \001(\0132\035.flyteidl.core." + "ExecutionErrorH\000\0220\n\013output_data\030\021 \001(\0132\031." + "flyteidl.core.LiteralMapH\000\022,\n\013custom_inf" + "o\030\013 \001(\0132\027.google.protobuf.Struct\022\025\n\rphas" + "e_version\030\014 \001(\r\022\016\n\006reason\030\r \001(\t\022\021\n\ttask_" + "type\030\016 \001(\t\0227\n\010metadata\030\020 \001(\0132%.flyteidl." + "event.TaskExecutionMetadataB\017\n\routput_re" + "sult\"+\n\024ExternalResourceInfo\022\023\n\013external" + "_id\030\001 \001(\t\"\?\n\020ResourcePoolInfo\022\030\n\020allocat" + "ion_token\030\001 \001(\t\022\021\n\tnamespace\030\002 \001(\t\"\310\002\n\025T" + "askExecutionMetadata\022\026\n\016generated_name\030\001" + " \001(\t\022@\n\022external_resources\030\002 \003(\0132$.flyte" + "idl.event.ExternalResourceInfo\022<\n\022resour" + "ce_pool_info\030\003 \003(\0132 .flyteidl.event.Reso" + "urcePoolInfo\022\031\n\021plugin_identifier\030\004 \001(\t\022" + "K\n\016instance_class\030\020 \001(\01623.flyteidl.event" + ".TaskExecutionMetadata.InstanceClass\"/\n\r" + "InstanceClass\022\013\n\007DEFAULT\020\000\022\021\n\rINTERRUPTI" + "BLE\020\001B7Z5github.com/flyteorg/flyteidl/ge" + "n/pb-go/flyteidl/eventb\006proto3" ; ::google::protobuf::internal::DescriptorTable descriptor_table_flyteidl_2fevent_2fevent_2eproto = { false, InitDefaults_flyteidl_2fevent_2fevent_2eproto, descriptor_table_protodef_flyteidl_2fevent_2fevent_2eproto, - "flyteidl/event/event.proto", &assign_descriptors_table_flyteidl_2fevent_2fevent_2eproto, 3040, + "flyteidl/event/event.proto", &assign_descriptors_table_flyteidl_2fevent_2fevent_2eproto, 3110, }; void AddDescriptors_flyteidl_2fevent_2fevent_2eproto() { @@ -3038,6 +3041,7 @@ void TaskNodeMetadata::clear_catalog_key() { #if !defined(_MSC_VER) || _MSC_VER >= 1900 const int TaskNodeMetadata::kCacheStatusFieldNumber; const int TaskNodeMetadata::kCatalogKeyFieldNumber; +const int TaskNodeMetadata::kReservationStatusFieldNumber; const int TaskNodeMetadata::kDynamicWorkflowFieldNumber; #endif // !defined(_MSC_VER) || _MSC_VER >= 1900 @@ -3060,7 +3064,9 @@ TaskNodeMetadata::TaskNodeMetadata(const TaskNodeMetadata& from) } else { dynamic_workflow_ = nullptr; } - cache_status_ = from.cache_status_; + ::memcpy(&cache_status_, &from.cache_status_, + static_cast(reinterpret_cast(&reservation_status_) - + reinterpret_cast(&cache_status_)) + sizeof(reservation_status_)); // @@protoc_insertion_point(copy_constructor:flyteidl.event.TaskNodeMetadata) } @@ -3068,8 +3074,8 @@ void TaskNodeMetadata::SharedCtor() { ::google::protobuf::internal::InitSCC( &scc_info_TaskNodeMetadata_flyteidl_2fevent_2fevent_2eproto.base); ::memset(&catalog_key_, 0, static_cast( - reinterpret_cast(&cache_status_) - - reinterpret_cast(&catalog_key_)) + sizeof(cache_status_)); + reinterpret_cast(&reservation_status_) - + reinterpret_cast(&catalog_key_)) + sizeof(reservation_status_)); } TaskNodeMetadata::~TaskNodeMetadata() { @@ -3105,7 +3111,9 @@ void TaskNodeMetadata::Clear() { delete dynamic_workflow_; } dynamic_workflow_ = nullptr; - cache_status_ = 0; + ::memset(&cache_status_, 0, static_cast( + reinterpret_cast(&reservation_status_) - + reinterpret_cast(&cache_status_)) + sizeof(reservation_status_)); _internal_metadata_.Clear(); } @@ -3143,6 +3151,14 @@ const char* TaskNodeMetadata::_InternalParse(const char* begin, const char* end, {parser_till_end, object}, ptr - size, ptr)); break; } + // .flyteidl.core.CatalogReservation.Status reservation_status = 3; + case 3: { + if (static_cast<::google::protobuf::uint8>(tag) != 24) goto handle_unusual; + ::google::protobuf::uint64 val = ::google::protobuf::internal::ReadVarint(&ptr); + msg->set_reservation_status(static_cast<::flyteidl::core::CatalogReservation_Status>(val)); + GOOGLE_PROTOBUF_PARSER_ASSERT(ptr); + break; + } // .flyteidl.event.DynamicWorkflowNodeMetadata dynamic_workflow = 16; case 16: { if (static_cast<::google::protobuf::uint8>(tag) != 130) goto handle_unusual; @@ -3211,6 +3227,20 @@ bool TaskNodeMetadata::MergePartialFromCodedStream( break; } + // .flyteidl.core.CatalogReservation.Status reservation_status = 3; + case 3: { + if (static_cast< ::google::protobuf::uint8>(tag) == (24 & 0xFF)) { + int value = 0; + DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive< + int, ::google::protobuf::internal::WireFormatLite::TYPE_ENUM>( + input, &value))); + set_reservation_status(static_cast< ::flyteidl::core::CatalogReservation_Status >(value)); + } else { + goto handle_unusual; + } + break; + } + // .flyteidl.event.DynamicWorkflowNodeMetadata dynamic_workflow = 16; case 16: { if (static_cast< ::google::protobuf::uint8>(tag) == (130 & 0xFF)) { @@ -3261,6 +3291,12 @@ void TaskNodeMetadata::SerializeWithCachedSizes( 2, HasBitSetters::catalog_key(this), output); } + // .flyteidl.core.CatalogReservation.Status reservation_status = 3; + if (this->reservation_status() != 0) { + ::google::protobuf::internal::WireFormatLite::WriteEnum( + 3, this->reservation_status(), output); + } + // .flyteidl.event.DynamicWorkflowNodeMetadata dynamic_workflow = 16; if (this->has_dynamic_workflow()) { ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray( @@ -3293,6 +3329,12 @@ ::google::protobuf::uint8* TaskNodeMetadata::InternalSerializeWithCachedSizesToA 2, HasBitSetters::catalog_key(this), target); } + // .flyteidl.core.CatalogReservation.Status reservation_status = 3; + if (this->reservation_status() != 0) { + target = ::google::protobuf::internal::WireFormatLite::WriteEnumToArray( + 3, this->reservation_status(), target); + } + // .flyteidl.event.DynamicWorkflowNodeMetadata dynamic_workflow = 16; if (this->has_dynamic_workflow()) { target = ::google::protobuf::internal::WireFormatLite:: @@ -3341,6 +3383,12 @@ size_t TaskNodeMetadata::ByteSizeLong() const { ::google::protobuf::internal::WireFormatLite::EnumSize(this->cache_status()); } + // .flyteidl.core.CatalogReservation.Status reservation_status = 3; + if (this->reservation_status() != 0) { + total_size += 1 + + ::google::protobuf::internal::WireFormatLite::EnumSize(this->reservation_status()); + } + int cached_size = ::google::protobuf::internal::ToCachedSize(total_size); SetCachedSize(cached_size); return total_size; @@ -3377,6 +3425,9 @@ void TaskNodeMetadata::MergeFrom(const TaskNodeMetadata& from) { if (from.cache_status() != 0) { set_cache_status(from.cache_status()); } + if (from.reservation_status() != 0) { + set_reservation_status(from.reservation_status()); + } } void TaskNodeMetadata::CopyFrom(const ::google::protobuf::Message& from) { @@ -3407,6 +3458,7 @@ void TaskNodeMetadata::InternalSwap(TaskNodeMetadata* other) { swap(catalog_key_, other->catalog_key_); swap(dynamic_workflow_, other->dynamic_workflow_); swap(cache_status_, other->cache_status_); + swap(reservation_status_, other->reservation_status_); } ::google::protobuf::Metadata TaskNodeMetadata::GetMetadata() const { diff --git a/gen/pb-cpp/flyteidl/event/event.pb.h b/gen/pb-cpp/flyteidl/event/event.pb.h index 4a6f78244..2e20dd863 100644 --- a/gen/pb-cpp/flyteidl/event/event.pb.h +++ b/gen/pb-cpp/flyteidl/event/event.pb.h @@ -894,6 +894,12 @@ class TaskNodeMetadata final : ::flyteidl::core::CatalogCacheStatus cache_status() const; void set_cache_status(::flyteidl::core::CatalogCacheStatus value); + // .flyteidl.core.CatalogReservation.Status reservation_status = 3; + void clear_reservation_status(); + static const int kReservationStatusFieldNumber = 3; + ::flyteidl::core::CatalogReservation_Status reservation_status() const; + void set_reservation_status(::flyteidl::core::CatalogReservation_Status value); + // @@protoc_insertion_point(class_scope:flyteidl.event.TaskNodeMetadata) private: class HasBitSetters; @@ -902,6 +908,7 @@ class TaskNodeMetadata final : ::flyteidl::core::CatalogMetadata* catalog_key_; ::flyteidl::event::DynamicWorkflowNodeMetadata* dynamic_workflow_; int cache_status_; + int reservation_status_; mutable ::google::protobuf::internal::CachedSize _cached_size_; friend struct ::TableStruct_flyteidl_2fevent_2fevent_2eproto; }; @@ -3211,6 +3218,20 @@ inline void TaskNodeMetadata::set_allocated_catalog_key(::flyteidl::core::Catalo // @@protoc_insertion_point(field_set_allocated:flyteidl.event.TaskNodeMetadata.catalog_key) } +// .flyteidl.core.CatalogReservation.Status reservation_status = 3; +inline void TaskNodeMetadata::clear_reservation_status() { + reservation_status_ = 0; +} +inline ::flyteidl::core::CatalogReservation_Status TaskNodeMetadata::reservation_status() const { + // @@protoc_insertion_point(field_get:flyteidl.event.TaskNodeMetadata.reservation_status) + return static_cast< ::flyteidl::core::CatalogReservation_Status >(reservation_status_); +} +inline void TaskNodeMetadata::set_reservation_status(::flyteidl::core::CatalogReservation_Status value) { + + reservation_status_ = value; + // @@protoc_insertion_point(field_set:flyteidl.event.TaskNodeMetadata.reservation_status) +} + // .flyteidl.event.DynamicWorkflowNodeMetadata dynamic_workflow = 16; inline bool TaskNodeMetadata::has_dynamic_workflow() const { return this != internal_default_instance() && dynamic_workflow_ != nullptr; diff --git a/gen/pb-go/flyteidl/core/catalog.pb.go b/gen/pb-go/flyteidl/core/catalog.pb.go index 4eb69280b..b26b3632b 100644 --- a/gen/pb-go/flyteidl/core/catalog.pb.go +++ b/gen/pb-go/flyteidl/core/catalog.pb.go @@ -64,6 +64,46 @@ func (CatalogCacheStatus) EnumDescriptor() ([]byte, []int) { return fileDescriptor_534f5d1443565574, []int{0} } +// Indicates the status of a catalog reservation operation. +type CatalogReservation_Status int32 + +const ( + // Used to indicate that reservations are disabled + CatalogReservation_RESERVATION_DISABLED CatalogReservation_Status = 0 + // Used to indicate that a reservation was successfully acquired or extended + CatalogReservation_RESERVATION_ACQUIRED CatalogReservation_Status = 1 + // Used to indicate that an active reservation currently exists + CatalogReservation_RESERVATION_EXISTS CatalogReservation_Status = 2 + // Used to indicate that the reservation has been successfully released + CatalogReservation_RESERVATION_RELEASED CatalogReservation_Status = 3 + // Used to indicate that a reservation operation resulted in failure + CatalogReservation_RESERVATION_FAILURE CatalogReservation_Status = 4 +) + +var CatalogReservation_Status_name = map[int32]string{ + 0: "RESERVATION_DISABLED", + 1: "RESERVATION_ACQUIRED", + 2: "RESERVATION_EXISTS", + 3: "RESERVATION_RELEASED", + 4: "RESERVATION_FAILURE", +} + +var CatalogReservation_Status_value = map[string]int32{ + "RESERVATION_DISABLED": 0, + "RESERVATION_ACQUIRED": 1, + "RESERVATION_EXISTS": 2, + "RESERVATION_RELEASED": 3, + "RESERVATION_FAILURE": 4, +} + +func (x CatalogReservation_Status) String() string { + return proto.EnumName(CatalogReservation_Status_name, int32(x)) +} + +func (CatalogReservation_Status) EnumDescriptor() ([]byte, []int) { + return fileDescriptor_534f5d1443565574, []int{2, 0} +} + type CatalogArtifactTag struct { // Artifact ID is generated name ArtifactId string `protobuf:"bytes,1,opt,name=artifact_id,json=artifactId,proto3" json:"artifact_id,omitempty"` @@ -199,38 +239,76 @@ func (*CatalogMetadata) XXX_OneofWrappers() []interface{} { } } +type CatalogReservation struct { + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *CatalogReservation) Reset() { *m = CatalogReservation{} } +func (m *CatalogReservation) String() string { return proto.CompactTextString(m) } +func (*CatalogReservation) ProtoMessage() {} +func (*CatalogReservation) Descriptor() ([]byte, []int) { + return fileDescriptor_534f5d1443565574, []int{2} +} + +func (m *CatalogReservation) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_CatalogReservation.Unmarshal(m, b) +} +func (m *CatalogReservation) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_CatalogReservation.Marshal(b, m, deterministic) +} +func (m *CatalogReservation) XXX_Merge(src proto.Message) { + xxx_messageInfo_CatalogReservation.Merge(m, src) +} +func (m *CatalogReservation) XXX_Size() int { + return xxx_messageInfo_CatalogReservation.Size(m) +} +func (m *CatalogReservation) XXX_DiscardUnknown() { + xxx_messageInfo_CatalogReservation.DiscardUnknown(m) +} + +var xxx_messageInfo_CatalogReservation proto.InternalMessageInfo + func init() { proto.RegisterEnum("flyteidl.core.CatalogCacheStatus", CatalogCacheStatus_name, CatalogCacheStatus_value) + proto.RegisterEnum("flyteidl.core.CatalogReservation_Status", CatalogReservation_Status_name, CatalogReservation_Status_value) proto.RegisterType((*CatalogArtifactTag)(nil), "flyteidl.core.CatalogArtifactTag") proto.RegisterType((*CatalogMetadata)(nil), "flyteidl.core.CatalogMetadata") + proto.RegisterType((*CatalogReservation)(nil), "flyteidl.core.CatalogReservation") } func init() { proto.RegisterFile("flyteidl/core/catalog.proto", fileDescriptor_534f5d1443565574) } var fileDescriptor_534f5d1443565574 = []byte{ - // 383 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x64, 0x92, 0xcf, 0xeb, 0xda, 0x40, - 0x10, 0xc5, 0x8d, 0xda, 0x82, 0x63, 0xd5, 0x74, 0xad, 0x90, 0xb6, 0xd0, 0x1f, 0x1e, 0x4a, 0x29, - 0x34, 0x01, 0x5b, 0x4a, 0xaf, 0x31, 0x49, 0x71, 0x69, 0x44, 0xc9, 0x8f, 0x4b, 0x29, 0x84, 0x35, - 0x59, 0xe3, 0xa2, 0x66, 0x25, 0xd9, 0x40, 0x7b, 0xee, 0xb9, 0xff, 0x73, 0x31, 0x89, 0x5b, 0xe2, - 0xf7, 0x94, 0xcc, 0x9b, 0x37, 0x9f, 0xbc, 0x09, 0x03, 0x2f, 0xf7, 0xa7, 0xdf, 0x82, 0xb2, 0xe4, - 0x64, 0xc4, 0x3c, 0xa7, 0x46, 0x4c, 0x04, 0x39, 0xf1, 0x54, 0xbf, 0xe4, 0x5c, 0x70, 0x34, 0xba, - 0x35, 0xf5, 0x6b, 0xf3, 0xc5, 0xab, 0xb6, 0x97, 0x25, 0x34, 0x13, 0x6c, 0xcf, 0x68, 0x5e, 0xdb, - 0xe7, 0x18, 0x90, 0x55, 0xcf, 0x9b, 0xb9, 0x60, 0x7b, 0x12, 0x8b, 0x80, 0xa4, 0xe8, 0x35, 0x0c, - 0x49, 0x53, 0x46, 0x2c, 0xd1, 0x94, 0x37, 0xca, 0xfb, 0x81, 0x07, 0x37, 0x09, 0x27, 0x08, 0x41, - 0x3f, 0x23, 0x67, 0xaa, 0x75, 0xab, 0x4e, 0xf5, 0x3e, 0xff, 0xd3, 0x85, 0x49, 0xc3, 0x5a, 0x53, - 0x41, 0x12, 0x22, 0x08, 0xfa, 0x0a, 0x70, 0x7d, 0x16, 0x54, 0x72, 0x86, 0x8b, 0xe7, 0x7a, 0x2b, - 0xa2, 0x8e, 0x65, 0x26, 0x6f, 0xd0, 0x98, 0x71, 0x82, 0x6c, 0x78, 0x22, 0x23, 0x08, 0x92, 0x56, - 0x5f, 0x1a, 0x2e, 0xde, 0xde, 0xcd, 0x3e, 0xcc, 0xee, 0xc9, 0xe4, 0xd7, 0x45, 0x7e, 0xc2, 0xac, - 0xe0, 0x65, 0x1e, 0xd3, 0x48, 0x90, 0xe2, 0x18, 0xd1, 0x5f, 0x34, 0x2e, 0x05, 0xe3, 0x99, 0xd6, - 0xab, 0x70, 0xef, 0xee, 0x70, 0x01, 0x29, 0x8e, 0xce, 0xcd, 0xf3, 0x3f, 0xd7, 0xaa, 0xe3, 0x4d, - 0x6b, 0x4c, 0xcb, 0xb0, 0x44, 0xa0, 0x36, 0x74, 0x09, 0xfe, 0xf0, 0x57, 0x91, 0x7f, 0xd4, 0x22, - 0xf1, 0x81, 0xfa, 0x82, 0x88, 0xb2, 0x40, 0x08, 0xc6, 0x96, 0x69, 0xad, 0x9c, 0xc8, 0xc6, 0xbe, - 0xb9, 0x74, 0x1d, 0x5b, 0xed, 0xa0, 0x31, 0x40, 0xad, 0xad, 0xb1, 0xef, 0xab, 0x0a, 0x1a, 0xc1, - 0xa0, 0xae, 0x57, 0x38, 0x50, 0xbb, 0x68, 0x0a, 0x93, 0xba, 0xdc, 0x6e, 0xb6, 0xa1, 0x6b, 0x06, - 0x8e, 0xad, 0xf6, 0x90, 0x06, 0xcf, 0x6a, 0xd1, 0xdd, 0x6c, 0xbe, 0x87, 0xdb, 0xe8, 0x9b, 0x89, - 0xdd, 0xd0, 0x73, 0xd4, 0x3e, 0x9a, 0xc1, 0xd3, 0xc6, 0x1e, 0x06, 0x52, 0x7e, 0xb4, 0xfc, 0xf2, - 0xe3, 0x73, 0xca, 0xc4, 0xa1, 0xdc, 0xe9, 0x31, 0x3f, 0x1b, 0xd5, 0xba, 0x3c, 0x4f, 0x0d, 0x79, - 0x16, 0x29, 0xcd, 0x8c, 0xcb, 0xee, 0x63, 0xca, 0x8d, 0xd6, 0xa5, 0xec, 0x1e, 0x57, 0xf7, 0xf1, - 0xe9, 0x5f, 0x00, 0x00, 0x00, 0xff, 0xff, 0x17, 0xfe, 0xcc, 0x9d, 0x6d, 0x02, 0x00, 0x00, + // 453 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x64, 0x52, 0x4d, 0x6f, 0xd3, 0x40, + 0x10, 0xad, 0xd3, 0x52, 0x29, 0x13, 0xda, 0x9a, 0x49, 0x0b, 0x06, 0x24, 0x3e, 0x72, 0x40, 0x08, + 0x09, 0x5b, 0x2a, 0x08, 0x71, 0x75, 0xec, 0x45, 0x59, 0xe1, 0x92, 0xb0, 0xb6, 0x11, 0x42, 0x48, + 0xd1, 0xc6, 0xde, 0xb8, 0x56, 0xd3, 0x6c, 0x65, 0x6f, 0x10, 0x9c, 0x39, 0x70, 0xe2, 0x2f, 0xf0, + 0x5b, 0x51, 0x6c, 0x67, 0xf3, 0xd1, 0x93, 0x3d, 0xef, 0xbd, 0x79, 0xf3, 0x76, 0x77, 0xe0, 0xf1, + 0x74, 0xf6, 0x4b, 0x89, 0x3c, 0x9d, 0x39, 0x89, 0x2c, 0x84, 0x93, 0x70, 0xc5, 0x67, 0x32, 0xb3, + 0x6f, 0x0a, 0xa9, 0x24, 0x1e, 0xad, 0x48, 0x7b, 0x49, 0x3e, 0x7a, 0xb2, 0xad, 0xcd, 0x53, 0x31, + 0x57, 0xf9, 0x34, 0x17, 0x45, 0x2d, 0xef, 0x51, 0x40, 0xaf, 0xee, 0x77, 0x0b, 0x95, 0x4f, 0x79, + 0xa2, 0x22, 0x9e, 0xe1, 0x53, 0xe8, 0xf0, 0xa6, 0x1c, 0xe7, 0xa9, 0x65, 0x3c, 0x33, 0x5e, 0xb6, + 0x19, 0xac, 0x20, 0x9a, 0x22, 0xc2, 0xc1, 0x9c, 0x5f, 0x0b, 0xab, 0x55, 0x31, 0xd5, 0x7f, 0xef, + 0x77, 0x0b, 0x4e, 0x1a, 0xaf, 0x0b, 0xa1, 0x78, 0xca, 0x15, 0xc7, 0xf7, 0x00, 0xcb, 0x6f, 0x29, + 0xb4, 0x4f, 0xe7, 0xfc, 0xa1, 0xbd, 0x15, 0xd1, 0xa6, 0x3a, 0x13, 0x6b, 0x37, 0x62, 0x9a, 0xa2, + 0x0f, 0x77, 0x75, 0x04, 0xc5, 0xb3, 0x6a, 0x52, 0xe7, 0xfc, 0xf9, 0x4e, 0xef, 0xed, 0xec, 0x4c, + 0x27, 0x5f, 0x1e, 0xe4, 0x3b, 0x9c, 0x95, 0x72, 0x51, 0x24, 0x62, 0xac, 0x78, 0x79, 0x35, 0x16, + 0x3f, 0x45, 0xb2, 0x50, 0xb9, 0x9c, 0x5b, 0xfb, 0x95, 0xdd, 0x8b, 0x1d, 0xbb, 0x88, 0x97, 0x57, + 0x64, 0xa5, 0x59, 0xe7, 0x1a, 0xec, 0xb1, 0x6e, 0x6d, 0xb3, 0x25, 0xe8, 0x23, 0x98, 0x8d, 0xbb, + 0x36, 0xee, 0xfd, 0x33, 0xf4, 0x8d, 0x32, 0x51, 0x8a, 0xe2, 0x07, 0xaf, 0xe0, 0x3f, 0x06, 0x1c, + 0x86, 0x8a, 0xab, 0x45, 0x89, 0x16, 0x9c, 0x32, 0x12, 0x12, 0xf6, 0xc5, 0x8d, 0xe8, 0xf0, 0xd3, + 0xd8, 0xa7, 0xa1, 0xdb, 0x0f, 0x88, 0x6f, 0xee, 0xed, 0x32, 0xae, 0xf7, 0x39, 0xa6, 0x8c, 0xf8, + 0xa6, 0x81, 0xf7, 0x01, 0x37, 0x19, 0xf2, 0x95, 0x86, 0x51, 0x68, 0xb6, 0x76, 0x3b, 0x18, 0x09, + 0x88, 0x1b, 0x12, 0xdf, 0xdc, 0xc7, 0x07, 0xd0, 0xdd, 0x64, 0x3e, 0xb8, 0x34, 0x88, 0x19, 0x31, + 0x0f, 0x5e, 0xfd, 0x5d, 0x07, 0xf4, 0x78, 0x72, 0x29, 0x9a, 0x54, 0x08, 0xc7, 0x9e, 0xeb, 0x0d, + 0xc8, 0x66, 0x9e, 0x63, 0x80, 0x1a, 0xbb, 0xa0, 0x61, 0x68, 0x1a, 0x78, 0x04, 0xed, 0xba, 0x1e, + 0xd0, 0xc8, 0x6c, 0x61, 0x17, 0x4e, 0xea, 0x72, 0x34, 0x1c, 0xc5, 0x81, 0x1b, 0x55, 0x73, 0x2d, + 0x38, 0xad, 0xc1, 0x60, 0x38, 0xfc, 0x18, 0x8f, 0xd6, 0x83, 0xf1, 0x0c, 0xee, 0x35, 0xf2, 0x38, + 0xd2, 0xf0, 0x9d, 0xfe, 0xbb, 0x6f, 0x6f, 0xb3, 0x5c, 0x5d, 0x2e, 0x26, 0x76, 0x22, 0xaf, 0x9d, + 0xea, 0x3d, 0x64, 0x91, 0x39, 0x7a, 0x6f, 0x33, 0x31, 0x77, 0x6e, 0x26, 0xaf, 0x33, 0xe9, 0x6c, + 0xad, 0xf2, 0xe4, 0xb0, 0x5a, 0xe0, 0x37, 0xff, 0x03, 0x00, 0x00, 0xff, 0xff, 0x52, 0x1b, 0xbb, + 0x0d, 0x0e, 0x03, 0x00, 0x00, } diff --git a/gen/pb-go/flyteidl/core/catalog.pb.validate.go b/gen/pb-go/flyteidl/core/catalog.pb.validate.go index ee0741247..86a8905f5 100644 --- a/gen/pb-go/flyteidl/core/catalog.pb.validate.go +++ b/gen/pb-go/flyteidl/core/catalog.pb.validate.go @@ -207,3 +207,70 @@ var _ interface { Cause() error ErrorName() string } = CatalogMetadataValidationError{} + +// Validate checks the field values on CatalogReservation with the rules +// defined in the proto definition for this message. If any rules are +// violated, an error is returned. +func (m *CatalogReservation) Validate() error { + if m == nil { + return nil + } + + return nil +} + +// CatalogReservationValidationError is the validation error returned by +// CatalogReservation.Validate if the designated constraints aren't met. +type CatalogReservationValidationError struct { + field string + reason string + cause error + key bool +} + +// Field function returns field value. +func (e CatalogReservationValidationError) Field() string { return e.field } + +// Reason function returns reason value. +func (e CatalogReservationValidationError) Reason() string { return e.reason } + +// Cause function returns cause value. +func (e CatalogReservationValidationError) Cause() error { return e.cause } + +// Key function returns key value. +func (e CatalogReservationValidationError) Key() bool { return e.key } + +// ErrorName returns error name. +func (e CatalogReservationValidationError) ErrorName() string { + return "CatalogReservationValidationError" +} + +// Error satisfies the builtin error interface +func (e CatalogReservationValidationError) Error() string { + cause := "" + if e.cause != nil { + cause = fmt.Sprintf(" | caused by: %v", e.cause) + } + + key := "" + if e.key { + key = "key for " + } + + return fmt.Sprintf( + "invalid %sCatalogReservation.%s: %s%s", + key, + e.field, + e.reason, + cause) +} + +var _ error = CatalogReservationValidationError{} + +var _ interface { + Field() string + Reason() string + Key() bool + Cause() error + ErrorName() string +} = CatalogReservationValidationError{} diff --git a/gen/pb-go/flyteidl/core/tasks.pb.go b/gen/pb-go/flyteidl/core/tasks.pb.go index 9191d05db..da62febb4 100644 --- a/gen/pb-go/flyteidl/core/tasks.pb.go +++ b/gen/pb-go/flyteidl/core/tasks.pb.go @@ -435,10 +435,12 @@ type TaskMetadata struct { // // Types that are valid to be assigned to InterruptibleValue: // *TaskMetadata_Interruptible - InterruptibleValue isTaskMetadata_InterruptibleValue `protobuf_oneof:"interruptible_value"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` + InterruptibleValue isTaskMetadata_InterruptibleValue `protobuf_oneof:"interruptible_value"` + // Indicates whether the system should attempt to execute discoverable instances in serial to avoid duplicate work + CacheSerializable bool `protobuf:"varint,9,opt,name=cache_serializable,json=cacheSerializable,proto3" json:"cache_serializable,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } func (m *TaskMetadata) Reset() { *m = TaskMetadata{} } @@ -532,6 +534,13 @@ func (m *TaskMetadata) GetInterruptible() bool { return false } +func (m *TaskMetadata) GetCacheSerializable() bool { + if m != nil { + return m.CacheSerializable + } + return false +} + // XXX_OneofWrappers is for the internal use of the proto package. func (*TaskMetadata) XXX_OneofWrappers() []interface{} { return []interface{}{ @@ -1206,103 +1215,104 @@ func init() { func init() { proto.RegisterFile("flyteidl/core/tasks.proto", fileDescriptor_bd8423ba58d6ed80) } var fileDescriptor_bd8423ba58d6ed80 = []byte{ - // 1558 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x94, 0x57, 0x6d, 0x73, 0x1b, 0x49, - 0x11, 0xb6, 0x56, 0x96, 0x64, 0xb5, 0xa4, 0x64, 0x3d, 0x47, 0x8e, 0x8d, 0x49, 0x42, 0x6a, 0x8b, - 0xcb, 0x85, 0x83, 0x93, 0x88, 0x2e, 0xe5, 0xf8, 0x0e, 0x2a, 0x94, 0x1c, 0x6d, 0x62, 0x61, 0xbd, - 0xd5, 0x48, 0xce, 0x11, 0xaa, 0xa8, 0x65, 0xbc, 0x3b, 0x52, 0x16, 0xaf, 0x76, 0xd6, 0xb3, 0xb3, - 0x06, 0xf1, 0x9d, 0x3f, 0xc0, 0x9f, 0xa0, 0xa8, 0xe2, 0x2b, 0xff, 0x83, 0x1f, 0x44, 0x15, 0xd4, - 0xcc, 0xbe, 0xe8, 0xc5, 0x36, 0xae, 0x7c, 0x52, 0x4f, 0xf7, 0xf3, 0xf4, 0xec, 0x74, 0xf7, 0x74, - 0x8f, 0xe0, 0xe1, 0xcc, 0x5f, 0x0a, 0xea, 0xb9, 0x7e, 0xcb, 0x61, 0x9c, 0xb6, 0x04, 0x89, 0x2e, - 0xa2, 0x66, 0xc8, 0x99, 0x60, 0xa8, 0x91, 0x99, 0x9a, 0xd2, 0x74, 0xf0, 0x64, 0x13, 0xe9, 0xb9, - 0x34, 0x10, 0xde, 0xcc, 0xa3, 0x3c, 0x81, 0x1f, 0x3c, 0xde, 0xb2, 0x07, 0x82, 0xf2, 0x19, 0x71, - 0x68, 0x6a, 0x7e, 0xb4, 0x69, 0xf6, 0x3d, 0x41, 0x39, 0xf1, 0xa3, 0x9b, 0xad, 0x11, 0x75, 0x62, - 0xee, 0x89, 0x65, 0x6a, 0x7d, 0x32, 0x67, 0x6c, 0xee, 0xd3, 0x96, 0x5a, 0x9d, 0xc7, 0xb3, 0x96, - 0x1b, 0x73, 0x22, 0x3c, 0x16, 0x64, 0xec, 0x6d, 0x7b, 0x24, 0x78, 0xec, 0x88, 0xc4, 0x6a, 0xfe, - 0x5b, 0x83, 0x2a, 0xa6, 0x11, 0x8b, 0xb9, 0x43, 0x23, 0x74, 0x0c, 0x7b, 0x9c, 0x5e, 0xc6, 0x34, - 0x12, 0x91, 0x51, 0x78, 0x5a, 0x7c, 0x5e, 0x6b, 0x3f, 0x6b, 0x6e, 0x1c, 0xb4, 0x99, 0x63, 0x73, - 0xc9, 0x0a, 0x04, 0x5f, 0xe2, 0x9c, 0x87, 0x5e, 0x43, 0xd9, 0xf7, 0x16, 0x9e, 0x88, 0x0c, 0xed, - 0x93, 0x3c, 0xa4, 0xac, 0x83, 0x3f, 0x40, 0x63, 0xc3, 0x80, 0xbe, 0x85, 0xdd, 0x80, 0x2c, 0xa8, - 0x51, 0x78, 0x5a, 0x78, 0x7e, 0xaf, 0xfd, 0xc5, 0x9d, 0xee, 0x86, 0x64, 0x41, 0xb1, 0xa2, 0xa0, - 0x1f, 0x40, 0xe9, 0x8a, 0xf8, 0x31, 0x35, 0xb4, 0xa7, 0x85, 0xe7, 0x55, 0x9c, 0x2c, 0xcc, 0xdf, - 0x43, 0x7d, 0x1d, 0x8b, 0x6a, 0x50, 0x39, 0x1b, 0x9e, 0x0e, 0x47, 0xdf, 0x0f, 0xf5, 0x1d, 0x54, - 0x81, 0xe2, 0x9b, 0xf1, 0x99, 0x5e, 0x90, 0xc2, 0xbb, 0xf1, 0x99, 0xae, 0x21, 0x80, 0xf2, 0xc0, - 0x1a, 0x8c, 0xf0, 0x07, 0xbd, 0x28, 0xa1, 0x93, 0xe9, 0x08, 0x77, 0xde, 0x59, 0xfa, 0x2e, 0x7a, - 0x00, 0xfb, 0xd6, 0xf8, 0xc4, 0x1a, 0x58, 0xb8, 0xd3, 0xb7, 0x33, 0x75, 0xc9, 0xfc, 0x67, 0x01, - 0xee, 0xe3, 0x38, 0x10, 0xde, 0x82, 0x0e, 0xa8, 0x20, 0x2e, 0x11, 0x04, 0xbd, 0x86, 0x5d, 0xb1, - 0x0c, 0xb3, 0x33, 0x7c, 0xb5, 0x7d, 0x86, 0x4d, 0x74, 0xb6, 0x9e, 0x2e, 0x43, 0x8a, 0x15, 0x0f, - 0x19, 0x50, 0xb9, 0xa2, 0x3c, 0xf2, 0x58, 0x90, 0x1e, 0x25, 0x5b, 0xa2, 0xcf, 0xa1, 0x3c, 0xf3, - 0xc9, 0x15, 0xe3, 0x46, 0x51, 0x19, 0xd2, 0x95, 0xf9, 0x25, 0xd4, 0xd6, 0xdc, 0xa0, 0x2a, 0x94, - 0x46, 0xd3, 0x13, 0x0b, 0xeb, 0x3b, 0xa8, 0x01, 0xd5, 0xb7, 0xfd, 0x0f, 0x53, 0xcb, 0x9e, 0x74, - 0x4f, 0xf5, 0x82, 0xf9, 0x5f, 0x0d, 0xea, 0x53, 0x12, 0x5d, 0xe4, 0xdf, 0x6a, 0x42, 0xdd, 0xf5, - 0x22, 0x87, 0x5d, 0x51, 0x4e, 0xce, 0xfd, 0xe4, 0x9b, 0xf7, 0xf0, 0x86, 0x0e, 0x1d, 0x41, 0x85, - 0x27, 0xde, 0xd5, 0xf7, 0xd4, 0xda, 0x4f, 0xfe, 0xff, 0x91, 0x70, 0x06, 0x47, 0xdf, 0x40, 0x45, - 0xfe, 0xb2, 0x58, 0x18, 0xbb, 0x8a, 0xf9, 0xb0, 0x99, 0x14, 0x68, 0x33, 0x2b, 0xd0, 0x66, 0x37, - 0x2d, 0x60, 0x9c, 0x21, 0xd1, 0x21, 0x54, 0x38, 0x15, 0xdc, 0xa3, 0x91, 0x51, 0x52, 0xa4, 0x47, - 0xd7, 0xaa, 0x40, 0xf0, 0xe5, 0x44, 0x70, 0x22, 0xe8, 0x7c, 0x89, 0x33, 0x30, 0xfa, 0x19, 0xec, - 0x67, 0x9f, 0xbd, 0xb4, 0xb3, 0x00, 0x96, 0x55, 0x9c, 0xf4, 0xdc, 0xf0, 0x3e, 0x8d, 0xe4, 0x11, - 0x18, 0x2e, 0x0d, 0x39, 0x75, 0x88, 0xa0, 0xae, 0x4d, 0x39, 0x67, 0xdc, 0x5e, 0xd0, 0x28, 0x22, - 0x73, 0x6a, 0x54, 0x14, 0xe7, 0xf3, 0x95, 0xdd, 0x92, 0xe6, 0x41, 0x62, 0x45, 0xcf, 0xa0, 0xa1, - 0x6e, 0x34, 0x8f, 0x43, 0xe1, 0xc9, 0x90, 0xed, 0xc9, 0x90, 0x9d, 0xec, 0xe0, 0x4d, 0xf5, 0xf1, - 0x03, 0xf8, 0x6c, 0x43, 0x61, 0x27, 0xf5, 0xf8, 0xd7, 0x52, 0x92, 0x81, 0x29, 0x5d, 0x84, 0x3e, - 0x11, 0x14, 0xfd, 0x14, 0x34, 0xcf, 0x55, 0x71, 0x97, 0xe1, 0xd9, 0x3c, 0x69, 0x2f, 0x6f, 0x2d, - 0x58, 0xf3, 0x5c, 0x84, 0xd2, 0xc2, 0x4a, 0xaa, 0x22, 0x29, 0x96, 0x57, 0xb0, 0xb7, 0x48, 0xe3, - 0xae, 0x8a, 0xa2, 0xd6, 0xfe, 0xd1, 0x96, 0x93, 0xf5, 0x7c, 0xe3, 0x1c, 0x8c, 0x7e, 0x09, 0xd5, - 0xbc, 0x33, 0xa5, 0xd9, 0x79, 0xbc, 0xcd, 0x5c, 0x86, 0xd4, 0xed, 0x65, 0x20, 0xbc, 0xc2, 0xa3, - 0x16, 0x94, 0x9d, 0x38, 0x12, 0x6c, 0x91, 0xa6, 0xe8, 0x87, 0xd7, 0xf2, 0x3a, 0x51, 0x8d, 0x07, - 0xa7, 0x30, 0x74, 0x04, 0x55, 0x87, 0x05, 0x82, 0x78, 0x01, 0xe5, 0x2a, 0x29, 0xb5, 0xb6, 0xb1, - 0xb5, 0xdb, 0x9b, 0xcc, 0x7e, 0xb2, 0x83, 0x57, 0x60, 0xf4, 0x0b, 0xa8, 0x5c, 0x1c, 0x45, 0x76, - 0xc8, 0x5c, 0x63, 0x5f, 0xf1, 0x1e, 0x6c, 0xf1, 0x4e, 0x8f, 0xa2, 0x31, 0x73, 0x4f, 0x76, 0x70, - 0xf9, 0x42, 0x49, 0xe8, 0x19, 0x14, 0xa3, 0x4b, 0xdf, 0x40, 0x0a, 0x8d, 0xb6, 0xd0, 0x93, 0x4b, - 0xff, 0x64, 0x07, 0x4b, 0x00, 0xfa, 0x0a, 0xf6, 0x65, 0x97, 0xb7, 0x65, 0x1c, 0xf3, 0x82, 0x91, - 0xc9, 0x2f, 0xe1, 0xfb, 0xd2, 0x20, 0x8f, 0x9f, 0xd5, 0x4b, 0x0f, 0xf4, 0xac, 0x15, 0xdb, 0xf2, - 0xdb, 0xe8, 0x9f, 0x85, 0x4a, 0xfc, 0xf5, 0xcb, 0x30, 0x49, 0x61, 0x6f, 0x12, 0x14, 0xbe, 0x1f, - 0x6d, 0x2a, 0xd0, 0xaf, 0xa1, 0xec, 0xb0, 0x60, 0xe6, 0xcd, 0x0d, 0x5d, 0xf5, 0xcc, 0x2f, 0x6f, - 0xc8, 0x57, 0x56, 0x1d, 0x32, 0x28, 0x33, 0x6f, 0x9e, 0x36, 0xcd, 0x84, 0x76, 0xf0, 0x2d, 0xd4, - 0xd6, 0xd4, 0x48, 0x87, 0xe2, 0x05, 0x5d, 0xaa, 0x0a, 0xaa, 0x62, 0x29, 0xde, 0xdc, 0x09, 0xbf, - 0xd3, 0x8e, 0x0a, 0xc7, 0x7b, 0x50, 0x16, 0x84, 0xcf, 0xa9, 0x30, 0x0f, 0xa1, 0x91, 0x07, 0x7c, - 0xcc, 0xb8, 0x40, 0x5f, 0xc0, 0xbd, 0x3c, 0xe8, 0x76, 0xc8, 0xb8, 0x50, 0x1e, 0x1b, 0xb8, 0xe1, - 0xac, 0xc3, 0xcc, 0xff, 0x14, 0xa1, 0x9a, 0x13, 0xe5, 0x4e, 0xde, 0x42, 0xde, 0x99, 0x64, 0xf7, - 0x64, 0x21, 0x1b, 0x98, 0xc3, 0x16, 0x0b, 0x12, 0xb8, 0x6a, 0x2c, 0x54, 0x71, 0xb6, 0x94, 0x15, - 0x4c, 0xf8, 0x3c, 0x32, 0x8a, 0x4a, 0xad, 0x64, 0x74, 0x08, 0x55, 0x9e, 0xf5, 0xf5, 0xb4, 0x10, - 0x8d, 0xdb, 0xfa, 0x3e, 0x5e, 0x41, 0xd1, 0xd7, 0x50, 0xa4, 0xc1, 0x95, 0x51, 0x52, 0x41, 0xdc, - 0x2e, 0xfa, 0x53, 0xba, 0x7c, 0x2f, 0x4f, 0x3d, 0x26, 0x1e, 0xc7, 0x12, 0x87, 0x5e, 0xe5, 0x61, - 0x2f, 0xdf, 0xc9, 0x38, 0xd6, 0x8c, 0x42, 0x16, 0x6e, 0xd4, 0x86, 0x92, 0x0c, 0x47, 0x64, 0x54, - 0x14, 0xef, 0xd1, 0x6d, 0x65, 0x2b, 0xc3, 0x83, 0x13, 0x28, 0xea, 0x40, 0x4d, 0x5e, 0x32, 0x3b, - 0xdd, 0xb1, 0xaa, 0x4e, 0xf5, 0x74, 0x8b, 0xd9, 0x25, 0x82, 0xf4, 0x19, 0x71, 0xbd, 0x60, 0x9e, - 0xe4, 0x13, 0x83, 0x24, 0x25, 0x32, 0xea, 0x41, 0x9d, 0x70, 0xe7, 0xa3, 0x27, 0xa8, 0x23, 0x62, - 0x4e, 0x0d, 0xb8, 0x71, 0x22, 0xe6, 0xbb, 0x37, 0x3b, 0x6b, 0x60, 0xbc, 0x41, 0x35, 0x7b, 0x50, - 0x5f, 0xb7, 0x6e, 0xce, 0xc0, 0x2a, 0x94, 0x3a, 0x83, 0xee, 0xe1, 0x4b, 0xbd, 0xa0, 0x44, 0x3c, - 0x38, 0x7c, 0x99, 0xcc, 0xc1, 0x0e, 0x1e, 0xd8, 0xef, 0x0f, 0xf5, 0x62, 0x2e, 0xbf, 0xd2, 0x77, - 0xcd, 0x7f, 0x69, 0x00, 0xbd, 0x51, 0xd6, 0x7c, 0xd1, 0x29, 0x34, 0x5c, 0xf6, 0xa7, 0xc0, 0x67, - 0xc4, 0xb5, 0x17, 0xcc, 0xcd, 0x66, 0xde, 0xf6, 0x33, 0x60, 0xc5, 0x68, 0x76, 0x53, 0xf8, 0x80, - 0xb9, 0x14, 0xd7, 0xdd, 0xb5, 0x15, 0xb2, 0xa0, 0x16, 0x87, 0x2b, 0x57, 0x9a, 0x72, 0xf5, 0x93, - 0xdb, 0x5d, 0x9d, 0x85, 0xb9, 0x23, 0x88, 0x73, 0xd9, 0xec, 0x43, 0x7d, 0x7d, 0x13, 0x84, 0xe0, - 0x5e, 0x77, 0xf4, 0xfd, 0xb0, 0x3f, 0xea, 0x74, 0x6d, 0xab, 0xf3, 0x4e, 0x8d, 0xc5, 0xcf, 0xe0, - 0x7e, 0xae, 0x9b, 0x4c, 0xb1, 0xd5, 0x19, 0xe8, 0x85, 0x44, 0x69, 0x0f, 0x47, 0x53, 0x3b, 0xb3, - 0xe9, 0x9a, 0x69, 0x01, 0xac, 0xf6, 0x91, 0xbe, 0xce, 0xc6, 0x8a, 0x35, 0x1a, 0xda, 0xd6, 0x6f, - 0x7b, 0x53, 0x7d, 0x07, 0xe9, 0x50, 0x4f, 0x75, 0x89, 0xf7, 0x02, 0xda, 0x87, 0x46, 0xea, 0x28, - 0x31, 0xe8, 0x9a, 0xf9, 0x77, 0x0d, 0xf6, 0xaf, 0xe5, 0x5b, 0x5e, 0x14, 0x1a, 0xc8, 0x19, 0xeb, - 0xa6, 0x83, 0x37, 0x5b, 0xa2, 0xc7, 0x00, 0x5e, 0x10, 0xc6, 0xc2, 0x0e, 0x89, 0xf8, 0x98, 0xde, - 0xe3, 0xaa, 0xd2, 0x8c, 0x89, 0xf8, 0x88, 0x7e, 0x0c, 0x35, 0x16, 0x8b, 0xdc, 0x9e, 0xbc, 0x06, - 0x20, 0x51, 0x29, 0x40, 0x0f, 0xca, 0x33, 0xc6, 0x17, 0x24, 0x19, 0xbc, 0xf7, 0xda, 0x2f, 0xee, - 0xaa, 0xbd, 0x66, 0x3f, 0x79, 0x87, 0x0e, 0x48, 0xf8, 0x56, 0x11, 0x71, 0xea, 0x00, 0x7d, 0x07, - 0x35, 0x8f, 0xd9, 0x51, 0x1a, 0xf5, 0xb4, 0xe1, 0x3f, 0xbc, 0x35, 0x2d, 0x18, 0x3c, 0x96, 0xc9, - 0xe6, 0x0b, 0xd0, 0xb7, 0xfd, 0xa2, 0x3d, 0xd8, 0xfd, 0xcd, 0x64, 0x24, 0x4b, 0x6f, 0x0f, 0x76, - 0x3f, 0x74, 0x06, 0xfd, 0xa4, 0xf2, 0xc6, 0x78, 0x34, 0x1d, 0xe9, 0x9a, 0xf9, 0x17, 0x28, 0x27, - 0x1d, 0x1d, 0xfd, 0x6a, 0x6d, 0xb4, 0x15, 0x6e, 0xbc, 0x41, 0xa7, 0x47, 0xd1, 0xe8, 0xfc, 0x8f, - 0xd4, 0x11, 0x37, 0xcc, 0xb7, 0x36, 0xec, 0x85, 0xcc, 0xb5, 0xa3, 0x90, 0x3a, 0xe9, 0xb3, 0xe5, - 0xd6, 0x21, 0x55, 0x09, 0x99, 0x3b, 0x09, 0xa9, 0x63, 0xfe, 0x43, 0x83, 0xfd, 0x6b, 0x3e, 0x51, - 0x17, 0xca, 0x3e, 0x39, 0xa7, 0x7e, 0xf6, 0x4c, 0xfe, 0xf9, 0x5d, 0x5f, 0xd1, 0xec, 0x2b, 0x78, - 0xf6, 0xd4, 0x55, 0x0b, 0x34, 0x81, 0x1a, 0x09, 0x02, 0x26, 0xd4, 0x6b, 0x27, 0x7b, 0x2f, 0xbf, - 0xb8, 0xd3, 0x55, 0x67, 0xc5, 0x49, 0xfc, 0xad, 0x7b, 0x91, 0xa3, 0x60, 0x6d, 0xaf, 0x4f, 0x19, - 0x05, 0x07, 0xaf, 0x41, 0xdf, 0xf6, 0xfd, 0x29, 0x7c, 0xf3, 0x6f, 0x05, 0x28, 0x4e, 0x2e, 0x7d, - 0xf4, 0x08, 0xaa, 0x91, 0x20, 0x82, 0x2e, 0x68, 0x20, 0x52, 0xe6, 0x4a, 0x81, 0x5e, 0x42, 0xc5, - 0xf5, 0x88, 0x4f, 0x1d, 0x91, 0xde, 0xe7, 0x83, 0xeb, 0xf3, 0xb8, 0xd9, 0x4d, 0x10, 0x38, 0x83, - 0x9a, 0xaf, 0xa0, 0x92, 0xea, 0xe4, 0x03, 0xf6, 0x6c, 0xd8, 0xb5, 0xde, 0xf6, 0x86, 0x56, 0x37, - 0x29, 0x99, 0xce, 0x70, 0xd2, 0xd3, 0x0b, 0x52, 0x3a, 0xe9, 0xbd, 0xb7, 0x74, 0x6d, 0xf5, 0xdc, - 0x2d, 0x1e, 0x1f, 0xfe, 0xee, 0xe5, 0xdc, 0x13, 0x1f, 0xe3, 0xf3, 0xa6, 0xc3, 0x16, 0x2d, 0xb5, - 0x13, 0xe3, 0xf3, 0x56, 0xfe, 0x9f, 0x6a, 0x4e, 0x83, 0x56, 0x78, 0xfe, 0xf5, 0x9c, 0xb5, 0x36, - 0xfe, 0x66, 0x9d, 0x97, 0x55, 0x49, 0x7c, 0xf3, 0xbf, 0x00, 0x00, 0x00, 0xff, 0xff, 0x5d, 0x0d, - 0x2b, 0xc6, 0x05, 0x0e, 0x00, 0x00, + // 1582 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x94, 0x57, 0xdd, 0x72, 0xdb, 0xb8, + 0x15, 0xb6, 0x28, 0x4b, 0xb2, 0x8e, 0xac, 0x84, 0xc6, 0x36, 0x5b, 0xc6, 0x4d, 0xd2, 0x0c, 0xa7, + 0x9b, 0x4d, 0xb7, 0x8d, 0xd4, 0x68, 0x33, 0x8e, 0x77, 0xdb, 0x49, 0x47, 0x8e, 0x98, 0x58, 0xb5, + 0xfe, 0x06, 0x92, 0xb3, 0x4d, 0x67, 0x3a, 0x2c, 0x4c, 0x42, 0x32, 0x6b, 0x8a, 0xa0, 0x41, 0xd0, + 0xad, 0xf6, 0xbe, 0x2f, 0xd0, 0x97, 0xe8, 0x74, 0xa6, 0xd3, 0xbb, 0xbe, 0x47, 0x1f, 0xa8, 0x17, + 0x1d, 0x80, 0x3f, 0xfa, 0xb1, 0xbd, 0x9e, 0x5c, 0x09, 0x38, 0xe7, 0xfb, 0x0e, 0x88, 0x83, 0x0f, + 0xe7, 0x40, 0xf0, 0x70, 0xea, 0x2f, 0x04, 0xf5, 0x5c, 0xbf, 0xe9, 0x30, 0x4e, 0x9b, 0x82, 0x44, + 0x17, 0x51, 0x23, 0xe4, 0x4c, 0x30, 0x54, 0xcf, 0x5c, 0x0d, 0xe9, 0xda, 0x7f, 0xb2, 0x8e, 0xf4, + 0x5c, 0x1a, 0x08, 0x6f, 0xea, 0x51, 0x9e, 0xc0, 0xf7, 0x1f, 0x6f, 0xf8, 0x03, 0x41, 0xf9, 0x94, + 0x38, 0x34, 0x75, 0x3f, 0x5a, 0x77, 0xfb, 0x9e, 0xa0, 0x9c, 0xf8, 0xd1, 0xcd, 0xde, 0x88, 0x3a, + 0x31, 0xf7, 0xc4, 0x22, 0xf5, 0x3e, 0x99, 0x31, 0x36, 0xf3, 0x69, 0x53, 0xcd, 0xce, 0xe2, 0x69, + 0xd3, 0x8d, 0x39, 0x11, 0x1e, 0x0b, 0x32, 0xf6, 0xa6, 0x3f, 0x12, 0x3c, 0x76, 0x44, 0xe2, 0x35, + 0xff, 0xab, 0x41, 0x15, 0xd3, 0x88, 0xc5, 0xdc, 0xa1, 0x11, 0x3a, 0x82, 0x1d, 0x4e, 0x2f, 0x63, + 0x1a, 0x89, 0xc8, 0x28, 0x3c, 0x2d, 0x3e, 0xaf, 0xb5, 0x9e, 0x35, 0xd6, 0x36, 0xda, 0xc8, 0xb1, + 0xf9, 0xc8, 0x0a, 0x04, 0x5f, 0xe0, 0x9c, 0x87, 0xde, 0x40, 0xd9, 0xf7, 0xe6, 0x9e, 0x88, 0x0c, + 0xed, 0x93, 0x22, 0xa4, 0xac, 0xfd, 0x3f, 0x41, 0x7d, 0xcd, 0x81, 0xbe, 0x81, 0xed, 0x80, 0xcc, + 0xa9, 0x51, 0x78, 0x5a, 0x78, 0x7e, 0xaf, 0xf5, 0xc5, 0x9d, 0xe1, 0x06, 0x64, 0x4e, 0xb1, 0xa2, + 0xa0, 0x1f, 0x41, 0xe9, 0x8a, 0xf8, 0x31, 0x35, 0xb4, 0xa7, 0x85, 0xe7, 0x55, 0x9c, 0x4c, 0xcc, + 0x3f, 0xc2, 0xee, 0x2a, 0x16, 0xd5, 0xa0, 0x72, 0x3a, 0x38, 0x19, 0x0c, 0xbf, 0x1b, 0xe8, 0x5b, + 0xa8, 0x02, 0xc5, 0xb7, 0xa3, 0x53, 0xbd, 0x20, 0x07, 0xef, 0x47, 0xa7, 0xba, 0x86, 0x00, 0xca, + 0x7d, 0xab, 0x3f, 0xc4, 0x1f, 0xf5, 0xa2, 0x84, 0x8e, 0x27, 0x43, 0xdc, 0x7e, 0x6f, 0xe9, 0xdb, + 0xe8, 0x01, 0xec, 0x59, 0xa3, 0x63, 0xab, 0x6f, 0xe1, 0x76, 0xcf, 0xce, 0xcc, 0x25, 0xf3, 0x5f, + 0x05, 0xb8, 0x8f, 0xe3, 0x40, 0x78, 0x73, 0xda, 0xa7, 0x82, 0xb8, 0x44, 0x10, 0xf4, 0x06, 0xb6, + 0xc5, 0x22, 0xcc, 0xf6, 0xf0, 0xd5, 0xe6, 0x1e, 0xd6, 0xd1, 0xd9, 0x7c, 0xb2, 0x08, 0x29, 0x56, + 0x3c, 0x64, 0x40, 0xe5, 0x8a, 0xf2, 0xc8, 0x63, 0x41, 0xba, 0x95, 0x6c, 0x8a, 0x3e, 0x87, 0xf2, + 0xd4, 0x27, 0x57, 0x8c, 0x1b, 0x45, 0xe5, 0x48, 0x67, 0xe6, 0x97, 0x50, 0x5b, 0x09, 0x83, 0xaa, + 0x50, 0x1a, 0x4e, 0x8e, 0x2d, 0xac, 0x6f, 0xa1, 0x3a, 0x54, 0xdf, 0xf5, 0x3e, 0x4e, 0x2c, 0x7b, + 0xdc, 0x39, 0xd1, 0x0b, 0xe6, 0xbf, 0x8b, 0xb0, 0x3b, 0x21, 0xd1, 0x45, 0xfe, 0xad, 0x26, 0xec, + 0xba, 0x5e, 0xe4, 0xb0, 0x2b, 0xca, 0xc9, 0x99, 0x9f, 0x7c, 0xf3, 0x0e, 0x5e, 0xb3, 0xa1, 0x43, + 0xa8, 0xf0, 0x24, 0xba, 0xfa, 0x9e, 0x5a, 0xeb, 0xc9, 0x0f, 0x6f, 0x09, 0x67, 0x70, 0xf4, 0x35, + 0x54, 0xe4, 0x2f, 0x8b, 0x85, 0xb1, 0xad, 0x98, 0x0f, 0x1b, 0x89, 0x40, 0x1b, 0x99, 0x40, 0x1b, + 0x9d, 0x54, 0xc0, 0x38, 0x43, 0xa2, 0x03, 0xa8, 0x70, 0x2a, 0xb8, 0x47, 0x23, 0xa3, 0xa4, 0x48, + 0x8f, 0xae, 0xa9, 0x40, 0xf0, 0xc5, 0x58, 0x70, 0x22, 0xe8, 0x6c, 0x81, 0x33, 0x30, 0xfa, 0x05, + 0xec, 0x65, 0x9f, 0xbd, 0xb0, 0xb3, 0x04, 0x96, 0x55, 0x9e, 0xf4, 0xdc, 0xf1, 0x21, 0xcd, 0xe4, + 0x21, 0x18, 0x2e, 0x0d, 0x39, 0x75, 0x88, 0xa0, 0xae, 0x4d, 0x39, 0x67, 0xdc, 0x9e, 0xd3, 0x28, + 0x22, 0x33, 0x6a, 0x54, 0x14, 0xe7, 0xf3, 0xa5, 0xdf, 0x92, 0xee, 0x7e, 0xe2, 0x45, 0xcf, 0xa0, + 0xae, 0x6e, 0x34, 0x8f, 0x43, 0xe1, 0xc9, 0x94, 0xed, 0xc8, 0x94, 0x1d, 0x6f, 0xe1, 0x75, 0x33, + 0x7a, 0x01, 0xc8, 0x21, 0xce, 0x39, 0xb5, 0x23, 0xca, 0x3d, 0xe2, 0x7b, 0xdf, 0xab, 0xfc, 0x56, + 0x55, 0x7e, 0xf7, 0x94, 0x67, 0xbc, 0xe2, 0x38, 0x7a, 0x00, 0x9f, 0xad, 0xf1, 0xed, 0x44, 0xbe, + 0x7f, 0x2b, 0x25, 0x07, 0x36, 0xa1, 0xf3, 0xd0, 0x27, 0x82, 0xa2, 0x9f, 0x83, 0xe6, 0xb9, 0xea, + 0x98, 0x64, 0x36, 0xd7, 0x13, 0xd3, 0xcd, 0x2b, 0x11, 0xd6, 0x3c, 0x17, 0xa1, 0x54, 0x87, 0x89, + 0x88, 0x12, 0x6d, 0xbd, 0x86, 0x9d, 0x79, 0x7a, 0x4c, 0x4a, 0x43, 0xb5, 0xd6, 0x4f, 0x36, 0x82, + 0xac, 0xca, 0x03, 0xe7, 0x60, 0xf4, 0x6b, 0xa8, 0xe6, 0x85, 0x2c, 0x3d, 0xcc, 0xc7, 0x9b, 0xcc, + 0x45, 0x48, 0xdd, 0x6e, 0x06, 0xc2, 0x4b, 0x3c, 0x6a, 0x42, 0xd9, 0x89, 0x23, 0xc1, 0xe6, 0xe9, + 0x89, 0xfe, 0xf8, 0x9a, 0x0c, 0xc6, 0xaa, 0x4e, 0xe1, 0x14, 0x86, 0x0e, 0xa1, 0xea, 0xb0, 0x40, + 0x10, 0x2f, 0xa0, 0x5c, 0x9d, 0x61, 0xad, 0x65, 0x6c, 0xac, 0xf6, 0x36, 0xf3, 0x1f, 0x6f, 0xe1, + 0x25, 0x18, 0xfd, 0x0a, 0x2a, 0x17, 0x87, 0x91, 0x1d, 0x32, 0xd7, 0xd8, 0x53, 0xbc, 0x07, 0x1b, + 0xbc, 0x93, 0xc3, 0x68, 0xc4, 0xdc, 0xe3, 0x2d, 0x5c, 0xbe, 0x50, 0x23, 0xf4, 0x0c, 0x8a, 0xd1, + 0xa5, 0x6f, 0x20, 0x85, 0x46, 0x1b, 0xe8, 0xf1, 0xa5, 0x7f, 0xbc, 0x85, 0x25, 0x00, 0x7d, 0x05, + 0x7b, 0xb2, 0x29, 0xd8, 0x32, 0x8f, 0xb9, 0xbe, 0xa4, 0x56, 0x4a, 0xf8, 0xbe, 0x74, 0xc8, 0xed, + 0x67, 0xf2, 0xea, 0x82, 0x9e, 0x55, 0x6e, 0x5b, 0x7e, 0x1b, 0xfd, 0xab, 0x50, 0x3a, 0xb9, 0x7e, + 0x77, 0xc6, 0x29, 0xec, 0x6d, 0x82, 0xc2, 0xf7, 0xa3, 0x75, 0x03, 0xfa, 0x2d, 0x94, 0x1d, 0x16, + 0x4c, 0xbd, 0x99, 0xa1, 0xab, 0x12, 0xfb, 0xe5, 0x0d, 0xe7, 0x95, 0xa9, 0x43, 0x26, 0x65, 0xea, + 0xcd, 0xd2, 0x1a, 0x9b, 0xd0, 0xf6, 0xbf, 0x81, 0xda, 0x8a, 0x19, 0xe9, 0x50, 0xbc, 0xa0, 0x0b, + 0xa5, 0xa0, 0x2a, 0x96, 0xc3, 0x9b, 0x0b, 0xe7, 0xb7, 0xda, 0x61, 0xe1, 0x68, 0x07, 0xca, 0x82, + 0xf0, 0x19, 0x15, 0xe6, 0x01, 0xd4, 0xf3, 0x84, 0x8f, 0x18, 0x17, 0xe8, 0x0b, 0xb8, 0x97, 0x27, + 0xdd, 0x0e, 0x19, 0x17, 0x2a, 0x62, 0x1d, 0xd7, 0x9d, 0x55, 0x98, 0xf9, 0xbf, 0x22, 0x54, 0x73, + 0xa2, 0x5c, 0xc9, 0x9b, 0xcb, 0x2b, 0x96, 0xac, 0x9e, 0x4c, 0x64, 0xbd, 0x73, 0xd8, 0x7c, 0x4e, + 0x02, 0x57, 0x75, 0x91, 0x2a, 0xce, 0xa6, 0x52, 0xc1, 0x84, 0xcf, 0x22, 0xa3, 0xa8, 0xcc, 0x6a, + 0x8c, 0x0e, 0xa0, 0xca, 0xb3, 0x36, 0x90, 0x0a, 0xd1, 0xb8, 0xad, 0x4d, 0xe0, 0x25, 0x14, 0xbd, + 0x80, 0x22, 0x0d, 0xae, 0x8c, 0x92, 0x4a, 0xe2, 0xa6, 0xe8, 0x4f, 0xe8, 0xe2, 0x83, 0xdc, 0xf5, + 0x88, 0x78, 0x1c, 0x4b, 0x1c, 0x7a, 0x9d, 0xa7, 0xbd, 0x7c, 0x27, 0xe3, 0x48, 0x33, 0x0a, 0x59, + 0xba, 0x51, 0x0b, 0x4a, 0x32, 0x1d, 0x91, 0x51, 0x51, 0xbc, 0x47, 0xb7, 0xc9, 0x56, 0xa6, 0x07, + 0x27, 0x50, 0xd4, 0x86, 0x9a, 0xbc, 0x64, 0x76, 0xba, 0x62, 0x55, 0xed, 0xea, 0xe9, 0x06, 0xb3, + 0x43, 0x04, 0xe9, 0x31, 0xe2, 0x7a, 0xc1, 0x2c, 0x39, 0x4f, 0x0c, 0x92, 0x94, 0x8c, 0x51, 0x17, + 0x76, 0x09, 0x77, 0xce, 0x3d, 0x41, 0x1d, 0x11, 0x73, 0x6a, 0xc0, 0x8d, 0x0d, 0x34, 0x5f, 0xbd, + 0xd1, 0x5e, 0x01, 0xe3, 0x35, 0xaa, 0xd9, 0x85, 0xdd, 0x55, 0xef, 0x7a, 0xcb, 0xac, 0x42, 0xa9, + 0xdd, 0xef, 0x1c, 0xbc, 0xd2, 0x0b, 0x6a, 0x88, 0xfb, 0x07, 0xaf, 0x92, 0xb6, 0xd9, 0xc6, 0x7d, + 0xfb, 0xc3, 0x81, 0x5e, 0xcc, 0xc7, 0xaf, 0xf5, 0x6d, 0xf3, 0x3f, 0x1a, 0x40, 0x77, 0x98, 0xd5, + 0x6a, 0x74, 0x02, 0x75, 0x97, 0xfd, 0x25, 0xf0, 0x19, 0x71, 0xed, 0x39, 0x73, 0xb3, 0x16, 0xb9, + 0xf9, 0x6a, 0x58, 0x32, 0x1a, 0x9d, 0x14, 0xde, 0x67, 0x2e, 0xc5, 0xbb, 0xee, 0xca, 0x0c, 0x59, + 0x50, 0x8b, 0xc3, 0x65, 0x28, 0x4d, 0x85, 0xfa, 0xd9, 0xed, 0xa1, 0x4e, 0xc3, 0x3c, 0x10, 0xc4, + 0xf9, 0xd8, 0xec, 0xc1, 0xee, 0xea, 0x22, 0x08, 0xc1, 0xbd, 0xce, 0xf0, 0xbb, 0x41, 0x6f, 0xd8, + 0xee, 0xd8, 0x56, 0xfb, 0xbd, 0xea, 0xa2, 0x9f, 0xc1, 0xfd, 0xdc, 0x36, 0x9e, 0x60, 0xab, 0xdd, + 0xd7, 0x0b, 0x89, 0xd1, 0x1e, 0x0c, 0x27, 0x76, 0xe6, 0xd3, 0x35, 0xd3, 0x02, 0x58, 0xae, 0x23, + 0x63, 0x9d, 0x8e, 0x14, 0x6b, 0x38, 0xb0, 0xad, 0xdf, 0x77, 0x27, 0xfa, 0x16, 0xd2, 0x61, 0x37, + 0xb5, 0x25, 0xd1, 0x0b, 0x68, 0x0f, 0xea, 0x69, 0xa0, 0xc4, 0xa1, 0x6b, 0xe6, 0x3f, 0x34, 0xd8, + 0xbb, 0x76, 0xde, 0xf2, 0xa2, 0xd0, 0x40, 0x76, 0x0b, 0x37, 0xed, 0xd3, 0xd9, 0x14, 0x3d, 0x06, + 0xf0, 0x82, 0x30, 0x16, 0x76, 0x48, 0xc4, 0x79, 0x7a, 0x8f, 0xab, 0xca, 0x32, 0x22, 0xe2, 0x1c, + 0xfd, 0x14, 0x6a, 0x2c, 0x16, 0xb9, 0x3f, 0x79, 0x3c, 0x40, 0x62, 0x52, 0x80, 0x2e, 0x94, 0xa7, + 0x8c, 0xcf, 0x49, 0xd2, 0xa7, 0xef, 0xb5, 0x5e, 0xde, 0xa5, 0xbd, 0x46, 0x2f, 0x79, 0xb6, 0xf6, + 0x49, 0xf8, 0x4e, 0x11, 0x71, 0x1a, 0x00, 0x7d, 0x0b, 0x35, 0x8f, 0xd9, 0x51, 0x9a, 0xf5, 0xb4, + 0xe0, 0x3f, 0xbc, 0xf5, 0x58, 0x30, 0x78, 0x2c, 0x1b, 0x9b, 0x2f, 0x41, 0xdf, 0x8c, 0x8b, 0x76, + 0x60, 0xfb, 0x77, 0xe3, 0xa1, 0x94, 0xde, 0x0e, 0x6c, 0x7f, 0x6c, 0xf7, 0x7b, 0x89, 0xf2, 0x46, + 0x78, 0x38, 0x19, 0xea, 0x9a, 0xf9, 0x3d, 0x94, 0x93, 0x8a, 0x8e, 0x7e, 0xb3, 0xd2, 0xda, 0x0a, + 0x37, 0xde, 0xa0, 0x93, 0xc3, 0x68, 0x78, 0xf6, 0x67, 0xea, 0x88, 0x1b, 0xfa, 0x5b, 0x0b, 0x76, + 0x42, 0xe6, 0xda, 0x51, 0x48, 0x9d, 0xf4, 0x95, 0x73, 0x6b, 0x93, 0xaa, 0x84, 0xcc, 0x1d, 0x87, + 0xd4, 0x31, 0xff, 0xa9, 0xc1, 0xde, 0xb5, 0x98, 0xa8, 0x03, 0x65, 0x9f, 0x9c, 0x51, 0x3f, 0x7b, + 0x55, 0xff, 0xf2, 0xae, 0xaf, 0x68, 0xf4, 0x14, 0x3c, 0x7b, 0x19, 0xab, 0x09, 0x1a, 0x43, 0x8d, + 0x04, 0x01, 0x13, 0xea, 0x71, 0x94, 0x3d, 0xaf, 0x5f, 0xde, 0x19, 0xaa, 0xbd, 0xe4, 0x24, 0xf1, + 0x56, 0xa3, 0xc8, 0x56, 0xb0, 0xb2, 0xd6, 0xa7, 0xb4, 0x82, 0xfd, 0x37, 0xa0, 0x6f, 0xc6, 0xfe, + 0x14, 0xbe, 0xf9, 0xf7, 0x02, 0x14, 0xc7, 0x97, 0x3e, 0x7a, 0x04, 0xd5, 0x48, 0x10, 0x41, 0xe7, + 0x34, 0x10, 0x29, 0x73, 0x69, 0x40, 0xaf, 0xa0, 0xe2, 0x7a, 0xc4, 0xa7, 0x8e, 0x48, 0xef, 0xf3, + 0xfe, 0xf5, 0x7e, 0xdc, 0xe8, 0x24, 0x08, 0x9c, 0x41, 0xcd, 0xd7, 0x50, 0x49, 0x6d, 0xf2, 0xbd, + 0x7b, 0x3a, 0xe8, 0x58, 0xef, 0xba, 0x03, 0xab, 0x93, 0x48, 0xa6, 0x3d, 0x18, 0x77, 0xf5, 0x82, + 0x1c, 0x1d, 0x77, 0x3f, 0x58, 0xba, 0xb6, 0x7c, 0x1d, 0x17, 0x8f, 0x0e, 0xfe, 0xf0, 0x6a, 0xe6, + 0x89, 0xf3, 0xf8, 0xac, 0xe1, 0xb0, 0x79, 0x53, 0xad, 0xc4, 0xf8, 0xac, 0x99, 0xff, 0x05, 0x9b, + 0xd1, 0xa0, 0x19, 0x9e, 0xbd, 0x98, 0xb1, 0xe6, 0xda, 0xbf, 0xb2, 0xb3, 0xb2, 0x92, 0xc4, 0xd7, + 0xff, 0x0f, 0x00, 0x00, 0xff, 0xff, 0xaa, 0xf7, 0xfa, 0xf2, 0x34, 0x0e, 0x00, 0x00, } diff --git a/gen/pb-go/flyteidl/core/tasks.pb.validate.go b/gen/pb-go/flyteidl/core/tasks.pb.validate.go index ff745a01c..47340d5ca 100644 --- a/gen/pb-go/flyteidl/core/tasks.pb.validate.go +++ b/gen/pb-go/flyteidl/core/tasks.pb.validate.go @@ -245,6 +245,8 @@ func (m *TaskMetadata) Validate() error { // no validation rules for DeprecatedErrorMessage + // no validation rules for CacheSerializable + switch m.InterruptibleValue.(type) { case *TaskMetadata_Interruptible: diff --git a/gen/pb-go/flyteidl/datacatalog/datacatalog.pb.go b/gen/pb-go/flyteidl/datacatalog/datacatalog.pb.go index 440355ee8..3e51754d1 100644 --- a/gen/pb-go/flyteidl/datacatalog/datacatalog.pb.go +++ b/gen/pb-go/flyteidl/datacatalog/datacatalog.pb.go @@ -8,6 +8,7 @@ import ( fmt "fmt" core "github.com/flyteorg/flyteidl/gen/pb-go/flyteidl/core" proto "github.com/golang/protobuf/proto" + duration "github.com/golang/protobuf/ptypes/duration" timestamp "github.com/golang/protobuf/ptypes/timestamp" grpc "google.golang.org/grpc" codes "google.golang.org/grpc/codes" @@ -26,33 +27,6 @@ var _ = math.Inf // proto package needs to be updated. const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package -type ReservationStatus_State int32 - -const ( - // Acquired the reservation successfully. - ReservationStatus_ACQUIRED ReservationStatus_State = 0 - // Indicates an existing active reservation exist for a different owner_id. - ReservationStatus_ALREADY_IN_PROGRESS ReservationStatus_State = 1 -) - -var ReservationStatus_State_name = map[int32]string{ - 0: "ACQUIRED", - 1: "ALREADY_IN_PROGRESS", -} - -var ReservationStatus_State_value = map[string]int32{ - "ACQUIRED": 0, - "ALREADY_IN_PROGRESS": 1, -} - -func (x ReservationStatus_State) String() string { - return proto.EnumName(ReservationStatus_State_name, int32(x)) -} - -func (ReservationStatus_State) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_275951237ff4368a, []int{15, 0} -} - // as use-cases come up we can add more operators, ex: gte, like, not eq etc. type SinglePropertyFilter_ComparisonOperator int32 @@ -73,7 +47,7 @@ func (x SinglePropertyFilter_ComparisonOperator) String() string { } func (SinglePropertyFilter_ComparisonOperator) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_275951237ff4368a, []int{29, 0} + return fileDescriptor_275951237ff4368a, []int{28, 0} } type PaginationOptions_SortOrder int32 @@ -98,7 +72,7 @@ func (x PaginationOptions_SortOrder) String() string { } func (PaginationOptions_SortOrder) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_275951237ff4368a, []int{35, 0} + return fileDescriptor_275951237ff4368a, []int{34, 0} } type PaginationOptions_SortKey int32 @@ -120,7 +94,7 @@ func (x PaginationOptions_SortKey) String() string { } func (PaginationOptions_SortKey) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_275951237ff4368a, []int{35, 1} + return fileDescriptor_275951237ff4368a, []int{34, 1} } // @@ -772,302 +746,237 @@ func (m *ListDatasetsResponse) GetNextToken() string { return "" } -// Get the Artifact or try to reserve a spot if the Artifact does not exist. -type GetOrReserveArtifactRequest struct { +// +// ReservationID message that is composed of several string fields. +type ReservationID struct { DatasetId *DatasetID `protobuf:"bytes,1,opt,name=dataset_id,json=datasetId,proto3" json:"dataset_id,omitempty"` TagName string `protobuf:"bytes,2,opt,name=tag_name,json=tagName,proto3" json:"tag_name,omitempty"` - OwnerId string `protobuf:"bytes,3,opt,name=owner_id,json=ownerId,proto3" json:"owner_id,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } -func (m *GetOrReserveArtifactRequest) Reset() { *m = GetOrReserveArtifactRequest{} } -func (m *GetOrReserveArtifactRequest) String() string { return proto.CompactTextString(m) } -func (*GetOrReserveArtifactRequest) ProtoMessage() {} -func (*GetOrReserveArtifactRequest) Descriptor() ([]byte, []int) { +func (m *ReservationID) Reset() { *m = ReservationID{} } +func (m *ReservationID) String() string { return proto.CompactTextString(m) } +func (*ReservationID) ProtoMessage() {} +func (*ReservationID) Descriptor() ([]byte, []int) { return fileDescriptor_275951237ff4368a, []int{14} } -func (m *GetOrReserveArtifactRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_GetOrReserveArtifactRequest.Unmarshal(m, b) +func (m *ReservationID) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_ReservationID.Unmarshal(m, b) } -func (m *GetOrReserveArtifactRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_GetOrReserveArtifactRequest.Marshal(b, m, deterministic) +func (m *ReservationID) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_ReservationID.Marshal(b, m, deterministic) } -func (m *GetOrReserveArtifactRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_GetOrReserveArtifactRequest.Merge(m, src) +func (m *ReservationID) XXX_Merge(src proto.Message) { + xxx_messageInfo_ReservationID.Merge(m, src) } -func (m *GetOrReserveArtifactRequest) XXX_Size() int { - return xxx_messageInfo_GetOrReserveArtifactRequest.Size(m) +func (m *ReservationID) XXX_Size() int { + return xxx_messageInfo_ReservationID.Size(m) } -func (m *GetOrReserveArtifactRequest) XXX_DiscardUnknown() { - xxx_messageInfo_GetOrReserveArtifactRequest.DiscardUnknown(m) +func (m *ReservationID) XXX_DiscardUnknown() { + xxx_messageInfo_ReservationID.DiscardUnknown(m) } -var xxx_messageInfo_GetOrReserveArtifactRequest proto.InternalMessageInfo +var xxx_messageInfo_ReservationID proto.InternalMessageInfo -func (m *GetOrReserveArtifactRequest) GetDatasetId() *DatasetID { +func (m *ReservationID) GetDatasetId() *DatasetID { if m != nil { return m.DatasetId } return nil } -func (m *GetOrReserveArtifactRequest) GetTagName() string { +func (m *ReservationID) GetTagName() string { if m != nil { return m.TagName } return "" } -func (m *GetOrReserveArtifactRequest) GetOwnerId() string { - if m != nil { - return m.OwnerId - } - return "" -} - -// Whether we successfully reserve a spot. -type ReservationStatus struct { - State ReservationStatus_State `protobuf:"varint,1,opt,name=state,proto3,enum=datacatalog.ReservationStatus_State" json:"state,omitempty"` - Metadata *Metadata `protobuf:"bytes,2,opt,name=metadata,proto3" json:"metadata,omitempty"` - OwnerId string `protobuf:"bytes,3,opt,name=owner_id,json=ownerId,proto3" json:"owner_id,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +// Try to acquire or extend an artifact reservation. If an active reservation exists, retreive that instance. +type GetOrExtendReservationRequest struct { + ReservationId *ReservationID `protobuf:"bytes,1,opt,name=reservation_id,json=reservationId,proto3" json:"reservation_id,omitempty"` + OwnerId string `protobuf:"bytes,2,opt,name=owner_id,json=ownerId,proto3" json:"owner_id,omitempty"` + HeartbeatInterval *duration.Duration `protobuf:"bytes,3,opt,name=heartbeat_interval,json=heartbeatInterval,proto3" json:"heartbeat_interval,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *ReservationStatus) Reset() { *m = ReservationStatus{} } -func (m *ReservationStatus) String() string { return proto.CompactTextString(m) } -func (*ReservationStatus) ProtoMessage() {} -func (*ReservationStatus) Descriptor() ([]byte, []int) { +func (m *GetOrExtendReservationRequest) Reset() { *m = GetOrExtendReservationRequest{} } +func (m *GetOrExtendReservationRequest) String() string { return proto.CompactTextString(m) } +func (*GetOrExtendReservationRequest) ProtoMessage() {} +func (*GetOrExtendReservationRequest) Descriptor() ([]byte, []int) { return fileDescriptor_275951237ff4368a, []int{15} } -func (m *ReservationStatus) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_ReservationStatus.Unmarshal(m, b) +func (m *GetOrExtendReservationRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_GetOrExtendReservationRequest.Unmarshal(m, b) } -func (m *ReservationStatus) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_ReservationStatus.Marshal(b, m, deterministic) +func (m *GetOrExtendReservationRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_GetOrExtendReservationRequest.Marshal(b, m, deterministic) } -func (m *ReservationStatus) XXX_Merge(src proto.Message) { - xxx_messageInfo_ReservationStatus.Merge(m, src) +func (m *GetOrExtendReservationRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_GetOrExtendReservationRequest.Merge(m, src) } -func (m *ReservationStatus) XXX_Size() int { - return xxx_messageInfo_ReservationStatus.Size(m) +func (m *GetOrExtendReservationRequest) XXX_Size() int { + return xxx_messageInfo_GetOrExtendReservationRequest.Size(m) } -func (m *ReservationStatus) XXX_DiscardUnknown() { - xxx_messageInfo_ReservationStatus.DiscardUnknown(m) +func (m *GetOrExtendReservationRequest) XXX_DiscardUnknown() { + xxx_messageInfo_GetOrExtendReservationRequest.DiscardUnknown(m) } -var xxx_messageInfo_ReservationStatus proto.InternalMessageInfo +var xxx_messageInfo_GetOrExtendReservationRequest proto.InternalMessageInfo -func (m *ReservationStatus) GetState() ReservationStatus_State { +func (m *GetOrExtendReservationRequest) GetReservationId() *ReservationID { if m != nil { - return m.State + return m.ReservationId } - return ReservationStatus_ACQUIRED + return nil } -func (m *ReservationStatus) GetMetadata() *Metadata { +func (m *GetOrExtendReservationRequest) GetOwnerId() string { if m != nil { - return m.Metadata + return m.OwnerId } - return nil + return "" } -func (m *ReservationStatus) GetOwnerId() string { +func (m *GetOrExtendReservationRequest) GetHeartbeatInterval() *duration.Duration { if m != nil { - return m.OwnerId + return m.HeartbeatInterval } - return "" + return nil } -// Response to get artifact or reserve spot. -type GetOrReserveArtifactResponse struct { - // Types that are valid to be assigned to Value: - // *GetOrReserveArtifactResponse_Artifact - // *GetOrReserveArtifactResponse_ReservationStatus - Value isGetOrReserveArtifactResponse_Value `protobuf_oneof:"value"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +// A reservation including owner, heartbeat interval, expiration timestamp, and various metadata. +type Reservation struct { + ReservationId *ReservationID `protobuf:"bytes,1,opt,name=reservation_id,json=reservationId,proto3" json:"reservation_id,omitempty"` + OwnerId string `protobuf:"bytes,2,opt,name=owner_id,json=ownerId,proto3" json:"owner_id,omitempty"` + HeartbeatInterval *duration.Duration `protobuf:"bytes,3,opt,name=heartbeat_interval,json=heartbeatInterval,proto3" json:"heartbeat_interval,omitempty"` + ExpiresAt *timestamp.Timestamp `protobuf:"bytes,4,opt,name=expires_at,json=expiresAt,proto3" json:"expires_at,omitempty"` + Metadata *Metadata `protobuf:"bytes,6,opt,name=metadata,proto3" json:"metadata,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *GetOrReserveArtifactResponse) Reset() { *m = GetOrReserveArtifactResponse{} } -func (m *GetOrReserveArtifactResponse) String() string { return proto.CompactTextString(m) } -func (*GetOrReserveArtifactResponse) ProtoMessage() {} -func (*GetOrReserveArtifactResponse) Descriptor() ([]byte, []int) { +func (m *Reservation) Reset() { *m = Reservation{} } +func (m *Reservation) String() string { return proto.CompactTextString(m) } +func (*Reservation) ProtoMessage() {} +func (*Reservation) Descriptor() ([]byte, []int) { return fileDescriptor_275951237ff4368a, []int{16} } -func (m *GetOrReserveArtifactResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_GetOrReserveArtifactResponse.Unmarshal(m, b) -} -func (m *GetOrReserveArtifactResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_GetOrReserveArtifactResponse.Marshal(b, m, deterministic) +func (m *Reservation) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_Reservation.Unmarshal(m, b) } -func (m *GetOrReserveArtifactResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_GetOrReserveArtifactResponse.Merge(m, src) +func (m *Reservation) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_Reservation.Marshal(b, m, deterministic) } -func (m *GetOrReserveArtifactResponse) XXX_Size() int { - return xxx_messageInfo_GetOrReserveArtifactResponse.Size(m) +func (m *Reservation) XXX_Merge(src proto.Message) { + xxx_messageInfo_Reservation.Merge(m, src) } -func (m *GetOrReserveArtifactResponse) XXX_DiscardUnknown() { - xxx_messageInfo_GetOrReserveArtifactResponse.DiscardUnknown(m) +func (m *Reservation) XXX_Size() int { + return xxx_messageInfo_Reservation.Size(m) } - -var xxx_messageInfo_GetOrReserveArtifactResponse proto.InternalMessageInfo - -type isGetOrReserveArtifactResponse_Value interface { - isGetOrReserveArtifactResponse_Value() +func (m *Reservation) XXX_DiscardUnknown() { + xxx_messageInfo_Reservation.DiscardUnknown(m) } -type GetOrReserveArtifactResponse_Artifact struct { - Artifact *Artifact `protobuf:"bytes,1,opt,name=artifact,proto3,oneof"` -} +var xxx_messageInfo_Reservation proto.InternalMessageInfo -type GetOrReserveArtifactResponse_ReservationStatus struct { - ReservationStatus *ReservationStatus `protobuf:"bytes,2,opt,name=reservation_status,json=reservationStatus,proto3,oneof"` +func (m *Reservation) GetReservationId() *ReservationID { + if m != nil { + return m.ReservationId + } + return nil } -func (*GetOrReserveArtifactResponse_Artifact) isGetOrReserveArtifactResponse_Value() {} - -func (*GetOrReserveArtifactResponse_ReservationStatus) isGetOrReserveArtifactResponse_Value() {} - -func (m *GetOrReserveArtifactResponse) GetValue() isGetOrReserveArtifactResponse_Value { +func (m *Reservation) GetOwnerId() string { if m != nil { - return m.Value + return m.OwnerId } - return nil + return "" } -func (m *GetOrReserveArtifactResponse) GetArtifact() *Artifact { - if x, ok := m.GetValue().(*GetOrReserveArtifactResponse_Artifact); ok { - return x.Artifact +func (m *Reservation) GetHeartbeatInterval() *duration.Duration { + if m != nil { + return m.HeartbeatInterval } return nil } -func (m *GetOrReserveArtifactResponse) GetReservationStatus() *ReservationStatus { - if x, ok := m.GetValue().(*GetOrReserveArtifactResponse_ReservationStatus); ok { - return x.ReservationStatus +func (m *Reservation) GetExpiresAt() *timestamp.Timestamp { + if m != nil { + return m.ExpiresAt } return nil } -// XXX_OneofWrappers is for the internal use of the proto package. -func (*GetOrReserveArtifactResponse) XXX_OneofWrappers() []interface{} { - return []interface{}{ - (*GetOrReserveArtifactResponse_Artifact)(nil), - (*GetOrReserveArtifactResponse_ReservationStatus)(nil), +func (m *Reservation) GetMetadata() *Metadata { + if m != nil { + return m.Metadata } + return nil } -// Request to extend reservation -type ExtendReservationRequest struct { - DatasetId *DatasetID `protobuf:"bytes,1,opt,name=dataset_id,json=datasetId,proto3" json:"dataset_id,omitempty"` - TagName string `protobuf:"bytes,2,opt,name=tag_name,json=tagName,proto3" json:"tag_name,omitempty"` - OwnerId string `protobuf:"bytes,3,opt,name=owner_id,json=ownerId,proto3" json:"owner_id,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +// Response including either a newly minted reservation or the existing reservation +type GetOrExtendReservationResponse struct { + Reservation *Reservation `protobuf:"bytes,1,opt,name=reservation,proto3" json:"reservation,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *ExtendReservationRequest) Reset() { *m = ExtendReservationRequest{} } -func (m *ExtendReservationRequest) String() string { return proto.CompactTextString(m) } -func (*ExtendReservationRequest) ProtoMessage() {} -func (*ExtendReservationRequest) Descriptor() ([]byte, []int) { +func (m *GetOrExtendReservationResponse) Reset() { *m = GetOrExtendReservationResponse{} } +func (m *GetOrExtendReservationResponse) String() string { return proto.CompactTextString(m) } +func (*GetOrExtendReservationResponse) ProtoMessage() {} +func (*GetOrExtendReservationResponse) Descriptor() ([]byte, []int) { return fileDescriptor_275951237ff4368a, []int{17} } -func (m *ExtendReservationRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_ExtendReservationRequest.Unmarshal(m, b) +func (m *GetOrExtendReservationResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_GetOrExtendReservationResponse.Unmarshal(m, b) } -func (m *ExtendReservationRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_ExtendReservationRequest.Marshal(b, m, deterministic) +func (m *GetOrExtendReservationResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_GetOrExtendReservationResponse.Marshal(b, m, deterministic) } -func (m *ExtendReservationRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_ExtendReservationRequest.Merge(m, src) +func (m *GetOrExtendReservationResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_GetOrExtendReservationResponse.Merge(m, src) } -func (m *ExtendReservationRequest) XXX_Size() int { - return xxx_messageInfo_ExtendReservationRequest.Size(m) +func (m *GetOrExtendReservationResponse) XXX_Size() int { + return xxx_messageInfo_GetOrExtendReservationResponse.Size(m) } -func (m *ExtendReservationRequest) XXX_DiscardUnknown() { - xxx_messageInfo_ExtendReservationRequest.DiscardUnknown(m) +func (m *GetOrExtendReservationResponse) XXX_DiscardUnknown() { + xxx_messageInfo_GetOrExtendReservationResponse.DiscardUnknown(m) } -var xxx_messageInfo_ExtendReservationRequest proto.InternalMessageInfo +var xxx_messageInfo_GetOrExtendReservationResponse proto.InternalMessageInfo -func (m *ExtendReservationRequest) GetDatasetId() *DatasetID { +func (m *GetOrExtendReservationResponse) GetReservation() *Reservation { if m != nil { - return m.DatasetId + return m.Reservation } return nil } -func (m *ExtendReservationRequest) GetTagName() string { - if m != nil { - return m.TagName - } - return "" -} - -func (m *ExtendReservationRequest) GetOwnerId() string { - if m != nil { - return m.OwnerId - } - return "" -} - -// Response to extend reservation -type ExtendReservationResponse struct { - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` -} - -func (m *ExtendReservationResponse) Reset() { *m = ExtendReservationResponse{} } -func (m *ExtendReservationResponse) String() string { return proto.CompactTextString(m) } -func (*ExtendReservationResponse) ProtoMessage() {} -func (*ExtendReservationResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_275951237ff4368a, []int{18} -} - -func (m *ExtendReservationResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_ExtendReservationResponse.Unmarshal(m, b) -} -func (m *ExtendReservationResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_ExtendReservationResponse.Marshal(b, m, deterministic) -} -func (m *ExtendReservationResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_ExtendReservationResponse.Merge(m, src) -} -func (m *ExtendReservationResponse) XXX_Size() int { - return xxx_messageInfo_ExtendReservationResponse.Size(m) -} -func (m *ExtendReservationResponse) XXX_DiscardUnknown() { - xxx_messageInfo_ExtendReservationResponse.DiscardUnknown(m) -} - -var xxx_messageInfo_ExtendReservationResponse proto.InternalMessageInfo - // Request to release reservation type ReleaseReservationRequest struct { - DatasetId *DatasetID `protobuf:"bytes,1,opt,name=dataset_id,json=datasetId,proto3" json:"dataset_id,omitempty"` - TagName string `protobuf:"bytes,2,opt,name=tag_name,json=tagName,proto3" json:"tag_name,omitempty"` - OwnerId string `protobuf:"bytes,3,opt,name=owner_id,json=ownerId,proto3" json:"owner_id,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` + ReservationId *ReservationID `protobuf:"bytes,1,opt,name=reservation_id,json=reservationId,proto3" json:"reservation_id,omitempty"` + OwnerId string `protobuf:"bytes,2,opt,name=owner_id,json=ownerId,proto3" json:"owner_id,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } func (m *ReleaseReservationRequest) Reset() { *m = ReleaseReservationRequest{} } func (m *ReleaseReservationRequest) String() string { return proto.CompactTextString(m) } func (*ReleaseReservationRequest) ProtoMessage() {} func (*ReleaseReservationRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_275951237ff4368a, []int{19} + return fileDescriptor_275951237ff4368a, []int{18} } func (m *ReleaseReservationRequest) XXX_Unmarshal(b []byte) error { @@ -1088,20 +997,13 @@ func (m *ReleaseReservationRequest) XXX_DiscardUnknown() { var xxx_messageInfo_ReleaseReservationRequest proto.InternalMessageInfo -func (m *ReleaseReservationRequest) GetDatasetId() *DatasetID { +func (m *ReleaseReservationRequest) GetReservationId() *ReservationID { if m != nil { - return m.DatasetId + return m.ReservationId } return nil } -func (m *ReleaseReservationRequest) GetTagName() string { - if m != nil { - return m.TagName - } - return "" -} - func (m *ReleaseReservationRequest) GetOwnerId() string { if m != nil { return m.OwnerId @@ -1120,7 +1022,7 @@ func (m *ReleaseReservationResponse) Reset() { *m = ReleaseReservationRe func (m *ReleaseReservationResponse) String() string { return proto.CompactTextString(m) } func (*ReleaseReservationResponse) ProtoMessage() {} func (*ReleaseReservationResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_275951237ff4368a, []int{20} + return fileDescriptor_275951237ff4368a, []int{19} } func (m *ReleaseReservationResponse) XXX_Unmarshal(b []byte) error { @@ -1156,7 +1058,7 @@ func (m *Dataset) Reset() { *m = Dataset{} } func (m *Dataset) String() string { return proto.CompactTextString(m) } func (*Dataset) ProtoMessage() {} func (*Dataset) Descriptor() ([]byte, []int) { - return fileDescriptor_275951237ff4368a, []int{21} + return fileDescriptor_275951237ff4368a, []int{20} } func (m *Dataset) XXX_Unmarshal(b []byte) error { @@ -1212,7 +1114,7 @@ func (m *Partition) Reset() { *m = Partition{} } func (m *Partition) String() string { return proto.CompactTextString(m) } func (*Partition) ProtoMessage() {} func (*Partition) Descriptor() ([]byte, []int) { - return fileDescriptor_275951237ff4368a, []int{22} + return fileDescriptor_275951237ff4368a, []int{21} } func (m *Partition) XXX_Unmarshal(b []byte) error { @@ -1264,7 +1166,7 @@ func (m *DatasetID) Reset() { *m = DatasetID{} } func (m *DatasetID) String() string { return proto.CompactTextString(m) } func (*DatasetID) ProtoMessage() {} func (*DatasetID) Descriptor() ([]byte, []int) { - return fileDescriptor_275951237ff4368a, []int{23} + return fileDescriptor_275951237ff4368a, []int{22} } func (m *DatasetID) XXX_Unmarshal(b []byte) error { @@ -1339,7 +1241,7 @@ func (m *Artifact) Reset() { *m = Artifact{} } func (m *Artifact) String() string { return proto.CompactTextString(m) } func (*Artifact) ProtoMessage() {} func (*Artifact) Descriptor() ([]byte, []int) { - return fileDescriptor_275951237ff4368a, []int{24} + return fileDescriptor_275951237ff4368a, []int{23} } func (m *Artifact) XXX_Unmarshal(b []byte) error { @@ -1423,7 +1325,7 @@ func (m *ArtifactData) Reset() { *m = ArtifactData{} } func (m *ArtifactData) String() string { return proto.CompactTextString(m) } func (*ArtifactData) ProtoMessage() {} func (*ArtifactData) Descriptor() ([]byte, []int) { - return fileDescriptor_275951237ff4368a, []int{25} + return fileDescriptor_275951237ff4368a, []int{24} } func (m *ArtifactData) XXX_Unmarshal(b []byte) error { @@ -1474,7 +1376,7 @@ func (m *Tag) Reset() { *m = Tag{} } func (m *Tag) String() string { return proto.CompactTextString(m) } func (*Tag) ProtoMessage() {} func (*Tag) Descriptor() ([]byte, []int) { - return fileDescriptor_275951237ff4368a, []int{26} + return fileDescriptor_275951237ff4368a, []int{25} } func (m *Tag) XXX_Unmarshal(b []byte) error { @@ -1529,7 +1431,7 @@ func (m *Metadata) Reset() { *m = Metadata{} } func (m *Metadata) String() string { return proto.CompactTextString(m) } func (*Metadata) ProtoMessage() {} func (*Metadata) Descriptor() ([]byte, []int) { - return fileDescriptor_275951237ff4368a, []int{27} + return fileDescriptor_275951237ff4368a, []int{26} } func (m *Metadata) XXX_Unmarshal(b []byte) error { @@ -1569,7 +1471,7 @@ func (m *FilterExpression) Reset() { *m = FilterExpression{} } func (m *FilterExpression) String() string { return proto.CompactTextString(m) } func (*FilterExpression) ProtoMessage() {} func (*FilterExpression) Descriptor() ([]byte, []int) { - return fileDescriptor_275951237ff4368a, []int{28} + return fileDescriptor_275951237ff4368a, []int{27} } func (m *FilterExpression) XXX_Unmarshal(b []byte) error { @@ -1615,7 +1517,7 @@ func (m *SinglePropertyFilter) Reset() { *m = SinglePropertyFilter{} } func (m *SinglePropertyFilter) String() string { return proto.CompactTextString(m) } func (*SinglePropertyFilter) ProtoMessage() {} func (*SinglePropertyFilter) Descriptor() ([]byte, []int) { - return fileDescriptor_275951237ff4368a, []int{29} + return fileDescriptor_275951237ff4368a, []int{28} } func (m *SinglePropertyFilter) XXX_Unmarshal(b []byte) error { @@ -1732,7 +1634,7 @@ func (m *ArtifactPropertyFilter) Reset() { *m = ArtifactPropertyFilter{} func (m *ArtifactPropertyFilter) String() string { return proto.CompactTextString(m) } func (*ArtifactPropertyFilter) ProtoMessage() {} func (*ArtifactPropertyFilter) Descriptor() ([]byte, []int) { - return fileDescriptor_275951237ff4368a, []int{30} + return fileDescriptor_275951237ff4368a, []int{29} } func (m *ArtifactPropertyFilter) XXX_Unmarshal(b []byte) error { @@ -1798,7 +1700,7 @@ func (m *TagPropertyFilter) Reset() { *m = TagPropertyFilter{} } func (m *TagPropertyFilter) String() string { return proto.CompactTextString(m) } func (*TagPropertyFilter) ProtoMessage() {} func (*TagPropertyFilter) Descriptor() ([]byte, []int) { - return fileDescriptor_275951237ff4368a, []int{31} + return fileDescriptor_275951237ff4368a, []int{30} } func (m *TagPropertyFilter) XXX_Unmarshal(b []byte) error { @@ -1864,7 +1766,7 @@ func (m *PartitionPropertyFilter) Reset() { *m = PartitionPropertyFilter func (m *PartitionPropertyFilter) String() string { return proto.CompactTextString(m) } func (*PartitionPropertyFilter) ProtoMessage() {} func (*PartitionPropertyFilter) Descriptor() ([]byte, []int) { - return fileDescriptor_275951237ff4368a, []int{32} + return fileDescriptor_275951237ff4368a, []int{31} } func (m *PartitionPropertyFilter) XXX_Unmarshal(b []byte) error { @@ -1928,7 +1830,7 @@ func (m *KeyValuePair) Reset() { *m = KeyValuePair{} } func (m *KeyValuePair) String() string { return proto.CompactTextString(m) } func (*KeyValuePair) ProtoMessage() {} func (*KeyValuePair) Descriptor() ([]byte, []int) { - return fileDescriptor_275951237ff4368a, []int{33} + return fileDescriptor_275951237ff4368a, []int{32} } func (m *KeyValuePair) XXX_Unmarshal(b []byte) error { @@ -1980,7 +1882,7 @@ func (m *DatasetPropertyFilter) Reset() { *m = DatasetPropertyFilter{} } func (m *DatasetPropertyFilter) String() string { return proto.CompactTextString(m) } func (*DatasetPropertyFilter) ProtoMessage() {} func (*DatasetPropertyFilter) Descriptor() ([]byte, []int) { - return fileDescriptor_275951237ff4368a, []int{34} + return fileDescriptor_275951237ff4368a, []int{33} } func (m *DatasetPropertyFilter) XXX_Unmarshal(b []byte) error { @@ -2093,7 +1995,7 @@ func (m *PaginationOptions) Reset() { *m = PaginationOptions{} } func (m *PaginationOptions) String() string { return proto.CompactTextString(m) } func (*PaginationOptions) ProtoMessage() {} func (*PaginationOptions) Descriptor() ([]byte, []int) { - return fileDescriptor_275951237ff4368a, []int{35} + return fileDescriptor_275951237ff4368a, []int{34} } func (m *PaginationOptions) XXX_Unmarshal(b []byte) error { @@ -2143,7 +2045,6 @@ func (m *PaginationOptions) GetSortOrder() PaginationOptions_SortOrder { } func init() { - proto.RegisterEnum("datacatalog.ReservationStatus_State", ReservationStatus_State_name, ReservationStatus_State_value) proto.RegisterEnum("datacatalog.SinglePropertyFilter_ComparisonOperator", SinglePropertyFilter_ComparisonOperator_name, SinglePropertyFilter_ComparisonOperator_value) proto.RegisterEnum("datacatalog.PaginationOptions_SortOrder", PaginationOptions_SortOrder_name, PaginationOptions_SortOrder_value) proto.RegisterEnum("datacatalog.PaginationOptions_SortKey", PaginationOptions_SortKey_name, PaginationOptions_SortKey_value) @@ -2161,11 +2062,10 @@ func init() { proto.RegisterType((*ListArtifactsResponse)(nil), "datacatalog.ListArtifactsResponse") proto.RegisterType((*ListDatasetsRequest)(nil), "datacatalog.ListDatasetsRequest") proto.RegisterType((*ListDatasetsResponse)(nil), "datacatalog.ListDatasetsResponse") - proto.RegisterType((*GetOrReserveArtifactRequest)(nil), "datacatalog.GetOrReserveArtifactRequest") - proto.RegisterType((*ReservationStatus)(nil), "datacatalog.ReservationStatus") - proto.RegisterType((*GetOrReserveArtifactResponse)(nil), "datacatalog.GetOrReserveArtifactResponse") - proto.RegisterType((*ExtendReservationRequest)(nil), "datacatalog.ExtendReservationRequest") - proto.RegisterType((*ExtendReservationResponse)(nil), "datacatalog.ExtendReservationResponse") + proto.RegisterType((*ReservationID)(nil), "datacatalog.ReservationID") + proto.RegisterType((*GetOrExtendReservationRequest)(nil), "datacatalog.GetOrExtendReservationRequest") + proto.RegisterType((*Reservation)(nil), "datacatalog.Reservation") + proto.RegisterType((*GetOrExtendReservationResponse)(nil), "datacatalog.GetOrExtendReservationResponse") proto.RegisterType((*ReleaseReservationRequest)(nil), "datacatalog.ReleaseReservationRequest") proto.RegisterType((*ReleaseReservationResponse)(nil), "datacatalog.ReleaseReservationResponse") proto.RegisterType((*Dataset)(nil), "datacatalog.Dataset") @@ -2191,108 +2091,106 @@ func init() { } var fileDescriptor_275951237ff4368a = []byte{ - // 1614 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xc4, 0x58, 0x5f, 0x53, 0xdb, 0xc6, - 0x16, 0xb7, 0x6c, 0xc0, 0xd6, 0x31, 0x76, 0xec, 0x0d, 0x10, 0x21, 0x48, 0x42, 0x14, 0x2e, 0x97, - 0x7b, 0xe7, 0x5e, 0x93, 0x42, 0x92, 0x69, 0xd2, 0x4e, 0x5b, 0x83, 0x1d, 0x70, 0xf9, 0xe7, 0xc8, - 0xc0, 0x4c, 0xa6, 0x0f, 0x9e, 0x0d, 0x5a, 0x5c, 0x15, 0xd9, 0x72, 0xa4, 0x85, 0xc6, 0x4f, 0x9d, - 0x3e, 0xb5, 0x4d, 0xfb, 0xd6, 0x99, 0x7e, 0x8b, 0x7e, 0x86, 0x3e, 0xf6, 0xa9, 0xfd, 0x4c, 0x9d, - 0x95, 0x56, 0xb2, 0xfe, 0x19, 0x1c, 0x5e, 0xf2, 0x02, 0xde, 0xdd, 0x73, 0x7e, 0xfb, 0x3b, 0x7f, - 0x76, 0xf7, 0x1c, 0xc1, 0xca, 0x99, 0x31, 0xa0, 0x44, 0xd7, 0x8c, 0x35, 0x0d, 0x53, 0x7c, 0x8a, - 0x29, 0x36, 0xcc, 0x4e, 0xf0, 0x77, 0xa5, 0x6f, 0x99, 0xd4, 0x44, 0xf9, 0xc0, 0x94, 0xbc, 0xe8, - 0x2b, 0x9d, 0x9a, 0x16, 0x59, 0x33, 0x74, 0x4a, 0x2c, 0x6c, 0xd8, 0xae, 0xa8, 0x7c, 0xbf, 0x63, - 0x9a, 0x1d, 0x83, 0xac, 0x39, 0xa3, 0xd7, 0x17, 0x67, 0x6b, 0x54, 0xef, 0x12, 0x9b, 0xe2, 0x6e, - 0xdf, 0x15, 0x50, 0x5e, 0xc0, 0xcc, 0x96, 0x45, 0x30, 0x25, 0x35, 0x4c, 0xb1, 0x4d, 0xa8, 0x4a, - 0xde, 0x5c, 0x10, 0x9b, 0xa2, 0x0a, 0x64, 0x35, 0x77, 0x46, 0x12, 0x96, 0x84, 0xd5, 0xfc, 0xfa, - 0x4c, 0x25, 0x48, 0xc4, 0x93, 0xf6, 0x84, 0x94, 0x3b, 0x30, 0x1b, 0xc1, 0xb1, 0xfb, 0x66, 0xcf, - 0x26, 0x4a, 0x1d, 0xca, 0xdb, 0x84, 0x46, 0xd0, 0x1f, 0x45, 0xd1, 0xe7, 0x92, 0xd0, 0x1b, 0xb5, - 0x21, 0x7e, 0x0d, 0x50, 0x10, 0xc6, 0x05, 0x7f, 0x6f, 0x96, 0xbf, 0x09, 0x0e, 0x4c, 0xd5, 0xa2, - 0xfa, 0x19, 0x3e, 0xbd, 0x39, 0x1d, 0xf4, 0x00, 0xf2, 0x98, 0x83, 0xb4, 0x75, 0x4d, 0x4a, 0x2f, - 0x09, 0xab, 0xe2, 0x4e, 0x4a, 0x05, 0x6f, 0xb2, 0xa1, 0xa1, 0x05, 0xc8, 0x51, 0xdc, 0x69, 0xf7, - 0x70, 0x97, 0x48, 0x19, 0xbe, 0x9e, 0xa5, 0xb8, 0x73, 0x80, 0xbb, 0x64, 0xb3, 0x08, 0xd3, 0x6f, - 0x2e, 0x88, 0x35, 0x68, 0x7f, 0x8d, 0x7b, 0x9a, 0x41, 0x94, 0x1d, 0xb8, 0x1d, 0xe2, 0xc5, 0xed, - 0xfb, 0x08, 0x72, 0x1e, 0x22, 0x67, 0x36, 0x1b, 0x62, 0xe6, 0x2b, 0xf8, 0x62, 0xca, 0x97, 0x5e, - 0x20, 0xa2, 0x46, 0xde, 0x00, 0x4b, 0x82, 0xb9, 0x28, 0x16, 0x8f, 0xea, 0x06, 0x14, 0xaa, 0x9a, - 0x76, 0x84, 0x3b, 0x1e, 0xba, 0x02, 0x19, 0x8a, 0x3b, 0x1c, 0xb8, 0x14, 0x02, 0x66, 0x52, 0x6c, - 0x51, 0x29, 0x41, 0xd1, 0x53, 0xe2, 0x30, 0x7f, 0x08, 0x30, 0xb3, 0xa7, 0xdb, 0xbe, 0xe1, 0xf6, - 0xcd, 0x23, 0xf2, 0x04, 0xa6, 0xce, 0x74, 0x83, 0x12, 0xcb, 0x09, 0x46, 0x7e, 0xfd, 0x6e, 0x48, - 0xe1, 0x85, 0xb3, 0x54, 0x7f, 0xdb, 0xb7, 0x88, 0x6d, 0xeb, 0x66, 0x4f, 0xe5, 0xc2, 0xe8, 0x33, - 0x80, 0x3e, 0xee, 0xe8, 0x3d, 0x4c, 0x75, 0xb3, 0xe7, 0xc4, 0x29, 0xbf, 0x7e, 0x2f, 0xa4, 0xda, - 0xf4, 0x97, 0x0f, 0xfb, 0xec, 0xaf, 0xad, 0x06, 0x34, 0x94, 0x73, 0x98, 0x8d, 0x18, 0xc0, 0x43, - 0xb7, 0x01, 0xa2, 0xe7, 0x47, 0x5b, 0x12, 0x96, 0x32, 0xa3, 0xfd, 0x3d, 0x94, 0x43, 0x77, 0x01, - 0x7a, 0xe4, 0x2d, 0x6d, 0x53, 0xf3, 0x9c, 0xf4, 0xdc, 0xac, 0x52, 0x45, 0x36, 0x73, 0xc4, 0x26, - 0x94, 0x5f, 0x04, 0xb8, 0xcd, 0x76, 0xe3, 0xe6, 0xfb, 0xde, 0x1a, 0xda, 0x2e, 0xdc, 0xdc, 0xf6, - 0xf4, 0x7b, 0xdb, 0xde, 0x71, 0x83, 0x37, 0x64, 0xc3, 0x4d, 0x7f, 0x04, 0x39, 0x1e, 0x15, 0xcf, - 0xf2, 0xe4, 0x63, 0xe9, 0x4b, 0x5d, 0x67, 0xf7, 0x3b, 0x01, 0x16, 0xb6, 0x09, 0x3d, 0xb4, 0x54, - 0x62, 0x13, 0xeb, 0x32, 0x96, 0xda, 0x4f, 0x00, 0x38, 0x14, 0x3b, 0x8c, 0x57, 0x27, 0x8c, 0xc8, - 0x25, 0x1b, 0x1a, 0x9a, 0x0f, 0x9c, 0x50, 0x77, 0x4f, 0xef, 0x7c, 0xb2, 0x25, 0xf3, 0xdb, 0x1e, - 0xb1, 0x18, 0x5e, 0xc6, 0x5d, 0x72, 0xc6, 0x0d, 0x4d, 0xf9, 0x4b, 0x80, 0xb2, 0xcb, 0xc3, 0xf1, - 0x42, 0x8b, 0x62, 0x7a, 0x61, 0xa3, 0xe7, 0x30, 0x69, 0x53, 0x4c, 0x89, 0xb3, 0x7b, 0x71, 0x7d, - 0x39, 0xb4, 0x7b, 0x4c, 0xbc, 0xc2, 0xfe, 0x11, 0xd5, 0x55, 0x61, 0x27, 0xb3, 0x4b, 0x28, 0x66, - 0x1a, 0x3c, 0x0a, 0xe1, 0x4c, 0xd9, 0xe7, 0x8b, 0xaa, 0x2f, 0x76, 0x15, 0xbf, 0x0a, 0x4c, 0x3a, - 0xe8, 0x68, 0x1a, 0x72, 0xd5, 0xad, 0x97, 0xc7, 0x0d, 0xb5, 0x5e, 0x2b, 0xa5, 0xd0, 0x1d, 0xb8, - 0x5d, 0xdd, 0x53, 0xeb, 0xd5, 0xda, 0xab, 0x76, 0xe3, 0xa0, 0xdd, 0x54, 0x0f, 0xb7, 0xd5, 0x7a, - 0xab, 0x55, 0x12, 0x94, 0xdf, 0x05, 0x58, 0x4c, 0x76, 0xae, 0x9f, 0xc9, 0xe3, 0x5d, 0x1c, 0x3b, - 0xa9, 0xe1, 0xd5, 0x81, 0x0e, 0x01, 0x59, 0x43, 0xab, 0xdb, 0xb6, 0x63, 0x76, 0x62, 0x8e, 0xc5, - 0x9c, 0xb3, 0x93, 0x52, 0xcb, 0x56, 0x74, 0x72, 0x33, 0x0b, 0x93, 0x97, 0xd8, 0xb8, 0x20, 0xca, - 0x0f, 0x02, 0x48, 0xf5, 0xb7, 0x94, 0xf4, 0xb4, 0x80, 0xe6, 0x07, 0xc9, 0x84, 0x05, 0x98, 0x4f, - 0x20, 0xc2, 0xaf, 0xb6, 0x1f, 0x05, 0x98, 0x57, 0x89, 0x41, 0xb0, 0x4d, 0x3e, 0x34, 0xcf, 0x45, - 0x90, 0x93, 0x98, 0x70, 0xa2, 0xef, 0x04, 0xc8, 0xf2, 0xcd, 0xd0, 0x0a, 0xa4, 0xaf, 0xa5, 0x93, - 0xd6, 0xb5, 0x9b, 0x64, 0xec, 0x32, 0x14, 0xfa, 0x2c, 0x3b, 0xd8, 0xde, 0xbb, 0x64, 0x60, 0x4b, - 0x99, 0xa5, 0xcc, 0xaa, 0xa8, 0x86, 0x27, 0x95, 0x0d, 0x10, 0x9b, 0xde, 0x04, 0x2a, 0x41, 0xe6, - 0x9c, 0x0c, 0x1c, 0x3a, 0xa2, 0xca, 0x7e, 0xa2, 0x19, 0x9e, 0x04, 0xdc, 0x78, 0x9e, 0x11, 0xdf, - 0x81, 0xe8, 0xd3, 0x43, 0x12, 0x64, 0xfb, 0x96, 0xf9, 0x0d, 0xe1, 0xc9, 0x2a, 0xaa, 0xde, 0x10, - 0x21, 0x98, 0x08, 0x38, 0xce, 0xf9, 0x8d, 0xe6, 0x60, 0x4a, 0x33, 0xbb, 0x58, 0xef, 0x71, 0x9f, - 0xf1, 0x11, 0x43, 0xb9, 0x24, 0x16, 0xbb, 0x2d, 0xa5, 0x09, 0x17, 0x85, 0x0f, 0x19, 0xca, 0xf1, - 0x71, 0xa3, 0x26, 0x4d, 0xba, 0x28, 0xec, 0xb7, 0xf2, 0x67, 0x1a, 0x72, 0xde, 0x29, 0x40, 0x45, - 0xdf, 0x87, 0xa2, 0xe3, 0xab, 0xc0, 0x53, 0x96, 0x1e, 0xef, 0x29, 0xfb, 0x3f, 0x4c, 0x38, 0x9e, - 0xcd, 0x38, 0x77, 0xe7, 0x7c, 0xe2, 0x61, 0x63, 0x6a, 0xaa, 0x23, 0x16, 0x0a, 0xc6, 0xc4, 0x78, - 0xc1, 0x78, 0xca, 0x6e, 0x7e, 0xee, 0x66, 0x5b, 0x9a, 0x74, 0xf6, 0x99, 0x8b, 0xdc, 0xfc, 0x7c, - 0x59, 0x0d, 0x48, 0xa2, 0x65, 0x98, 0xa0, 0xb8, 0x63, 0x4b, 0x53, 0x8e, 0x46, 0xfc, 0x99, 0x77, - 0x56, 0xd1, 0x33, 0x80, 0x53, 0xa7, 0x6c, 0xd0, 0xda, 0x98, 0x4a, 0x59, 0x87, 0x92, 0x5c, 0x71, - 0x2b, 0xd1, 0x8a, 0x57, 0x89, 0x56, 0x8e, 0xbc, 0x4a, 0x54, 0x15, 0xb9, 0x74, 0x95, 0x2a, 0x4d, - 0x98, 0x0e, 0x5a, 0xe8, 0xc7, 0x4c, 0x08, 0xc4, 0xec, 0x7f, 0xc1, 0x24, 0x60, 0xbc, 0xbd, 0x0a, - 0xb8, 0xc2, 0x2a, 0xe0, 0xca, 0x9e, 0x5b, 0x01, 0x7b, 0xc9, 0x61, 0x40, 0xe6, 0x08, 0x77, 0x12, - 0x81, 0xee, 0x27, 0x14, 0x71, 0xa1, 0x12, 0x2e, 0x10, 0xba, 0xcc, 0x78, 0x65, 0xea, 0xf7, 0x02, - 0xe4, 0x3c, 0x7f, 0xa3, 0xe7, 0x90, 0x3d, 0x27, 0x83, 0x76, 0x17, 0xf7, 0xf9, 0x33, 0xf8, 0x20, - 0x31, 0x2e, 0x95, 0x5d, 0x32, 0xd8, 0xc7, 0xfd, 0x7a, 0x8f, 0x5a, 0x03, 0x75, 0xea, 0xdc, 0x19, - 0xc8, 0xcf, 0x20, 0x1f, 0x98, 0x1e, 0xf7, 0x28, 0x3c, 0x4f, 0x7f, 0x2c, 0x28, 0x87, 0x50, 0x8a, - 0x3e, 0xf9, 0xe8, 0x13, 0xc8, 0xba, 0x8f, 0xbe, 0x9d, 0x48, 0xa5, 0xa5, 0xf7, 0x3a, 0x06, 0x69, - 0x5a, 0x66, 0x9f, 0x58, 0x74, 0xe0, 0x6a, 0xab, 0x9e, 0x86, 0xf2, 0x77, 0x06, 0x66, 0x92, 0x24, - 0xd0, 0xe7, 0x00, 0xec, 0x3a, 0x0a, 0xd5, 0x1e, 0xf7, 0xa2, 0x49, 0x11, 0xd6, 0xd9, 0x49, 0xa9, - 0x22, 0xc5, 0x1d, 0x0e, 0xf0, 0x12, 0x4a, 0x7e, 0x76, 0xb5, 0x43, 0xe5, 0xdb, 0x72, 0x72, 0x36, - 0xc6, 0xc0, 0x6e, 0xf9, 0xfa, 0x1c, 0xf2, 0x00, 0x6e, 0xf9, 0x41, 0xe5, 0x88, 0x6e, 0xec, 0x1e, - 0x26, 0x9e, 0xa3, 0x18, 0x60, 0xd1, 0xd3, 0xe6, 0x78, 0xbb, 0x50, 0xf4, 0x6e, 0x6a, 0x0e, 0xe7, - 0x9e, 0x31, 0x25, 0x29, 0x15, 0x62, 0x68, 0x05, 0xae, 0xcb, 0xc1, 0x9a, 0x90, 0x63, 0x02, 0x98, - 0x9a, 0x96, 0x04, 0x4e, 0xa1, 0xf0, 0xf8, 0xda, 0x38, 0x54, 0xb6, 0xcc, 0x6e, 0x1f, 0x5b, 0xba, - 0xcd, 0x8a, 0x30, 0x57, 0x57, 0xf5, 0x51, 0x94, 0x25, 0x40, 0xf1, 0x75, 0x04, 0x30, 0x55, 0x7f, - 0x79, 0x5c, 0xdd, 0x6b, 0x95, 0x52, 0x9b, 0x65, 0xb8, 0xd5, 0xe7, 0x80, 0xdc, 0x02, 0x65, 0x1b, - 0xe6, 0x92, 0xed, 0x8f, 0xf6, 0x35, 0x42, 0xbc, 0xaf, 0xd9, 0x04, 0xc8, 0x79, 0x78, 0xca, 0xa7, - 0x50, 0x8e, 0x45, 0x38, 0xd4, 0xf8, 0x08, 0xd1, 0xc6, 0x27, 0xa8, 0xfd, 0x15, 0xdc, 0x19, 0x11, - 0x58, 0xf4, 0xd8, 0x3d, 0x3a, 0x97, 0xd8, 0xe0, 0x69, 0x15, 0xbe, 0x05, 0x77, 0xc9, 0xe0, 0x84, - 0xe5, 0x7b, 0x13, 0xeb, 0xcc, 0xcb, 0xec, 0xd0, 0x9c, 0x60, 0x23, 0x04, 0xfe, 0x14, 0xa6, 0x83, - 0x52, 0x63, 0x3f, 0x26, 0x3f, 0x0b, 0x30, 0x9b, 0x18, 0x4d, 0x24, 0x47, 0x5e, 0x16, 0x66, 0x96, - 0xf7, 0xb6, 0xcc, 0x04, 0xdf, 0x96, 0x9d, 0x14, 0xbf, 0x60, 0xa4, 0xf0, 0xeb, 0xc2, 0x98, 0xf2, - 0xf7, 0x45, 0x8e, 0xbc, 0x2f, 0x0c, 0x8b, 0x4f, 0x84, 0xac, 0xf8, 0x35, 0x0d, 0xe5, 0x58, 0x11, - 0xce, 0x98, 0x1b, 0x7a, 0x57, 0x77, 0x79, 0x14, 0x54, 0x77, 0xc0, 0x66, 0x83, 0xf5, 0xb3, 0x3b, - 0x40, 0x5f, 0x40, 0xd6, 0x36, 0x2d, 0xba, 0x4b, 0x06, 0x0e, 0x89, 0xe2, 0xfa, 0xca, 0xd5, 0x15, - 0x7e, 0xa5, 0xe5, 0x4a, 0xab, 0x9e, 0x1a, 0x7a, 0x01, 0x22, 0xfb, 0x79, 0x68, 0x69, 0x3c, 0xf9, - 0x8b, 0xeb, 0xab, 0x63, 0x60, 0x38, 0xf2, 0xea, 0x50, 0x55, 0xf9, 0x2f, 0x88, 0xfe, 0x3c, 0x2a, - 0x02, 0xd4, 0xea, 0xad, 0xad, 0xfa, 0x41, 0xad, 0x71, 0xb0, 0x5d, 0x4a, 0xa1, 0x02, 0x88, 0x55, - 0x7f, 0x28, 0x28, 0x8b, 0x90, 0xe5, 0x3c, 0x50, 0x19, 0x0a, 0x5b, 0x6a, 0xbd, 0x7a, 0xd4, 0x38, - 0x3c, 0x68, 0x1f, 0x35, 0xf6, 0xeb, 0xa5, 0xd4, 0xfa, 0x4f, 0x59, 0xc8, 0xb3, 0x18, 0x6d, 0xb9, - 0x04, 0xd0, 0x09, 0x14, 0x42, 0x1f, 0x1f, 0x50, 0xf8, 0x76, 0x4b, 0xfa, 0xc0, 0x21, 0x2b, 0x57, - 0x89, 0xf0, 0xca, 0x77, 0x1f, 0x60, 0xf8, 0xd1, 0x01, 0x85, 0x6f, 0xb6, 0xd8, 0x47, 0x0d, 0xf9, - 0xfe, 0xc8, 0x75, 0x0e, 0xf7, 0x0a, 0x8a, 0xe1, 0x76, 0x1a, 0x25, 0x91, 0x88, 0x34, 0x37, 0xf2, - 0xc3, 0x2b, 0x65, 0x38, 0x74, 0x13, 0xf2, 0x81, 0xef, 0x07, 0x28, 0x46, 0x25, 0x0a, 0xba, 0x34, - 0x5a, 0x80, 0x23, 0x56, 0x61, 0xca, 0x6d, 0xd6, 0x91, 0x1c, 0xbe, 0x38, 0x83, 0x6d, 0xbf, 0xbc, - 0x90, 0xb8, 0xc6, 0x21, 0x4e, 0xa0, 0x10, 0xea, 0x8d, 0x23, 0x61, 0x49, 0x6a, 0xfc, 0x23, 0x61, - 0x49, 0x6e, 0xad, 0x5b, 0x30, 0x1d, 0xec, 0x3b, 0xd1, 0x52, 0x4c, 0x27, 0xd2, 0x20, 0xcb, 0x0f, - 0xae, 0x90, 0xe0, 0xa0, 0xe7, 0x30, 0x93, 0xd4, 0x05, 0xa1, 0xd5, 0xa8, 0xa7, 0x46, 0x75, 0xa1, - 0xf2, 0x7f, 0xc6, 0x90, 0xe4, 0x9b, 0xbd, 0x86, 0x72, 0xac, 0x73, 0x40, 0xff, 0x0a, 0xe9, 0x8f, - 0x6a, 0x71, 0xe4, 0x95, 0xeb, 0xc4, 0xf8, 0x1e, 0x04, 0x50, 0xbc, 0xea, 0x47, 0x2b, 0x91, 0xde, - 0x6b, 0x44, 0x83, 0x22, 0xff, 0xfb, 0x5a, 0x39, 0x77, 0x9b, 0xd7, 0x53, 0x4e, 0x41, 0xb7, 0xf1, - 0x4f, 0x00, 0x00, 0x00, 0xff, 0xff, 0x74, 0xc8, 0x02, 0xca, 0xbd, 0x14, 0x00, 0x00, + // 1582 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xd4, 0x58, 0xcf, 0x53, 0xdb, 0xc6, + 0x17, 0x47, 0x36, 0xb1, 0xd1, 0x33, 0x76, 0xcc, 0x06, 0x88, 0x50, 0x12, 0xe2, 0x28, 0x19, 0xbe, + 0x4c, 0xbe, 0xad, 0x49, 0x4d, 0x92, 0x69, 0xd2, 0x4e, 0x5b, 0x07, 0x3b, 0xe0, 0x12, 0xc0, 0x59, + 0x08, 0x33, 0x9d, 0x76, 0xc6, 0xb3, 0x41, 0x8b, 0xa3, 0x22, 0x5b, 0x8a, 0xb4, 0xa4, 0xf8, 0xd4, + 0xe9, 0xb5, 0xed, 0xad, 0x33, 0xfd, 0x07, 0x7a, 0xec, 0x1f, 0xd1, 0x63, 0x6e, 0xfd, 0x9b, 0x3a, + 0x2b, 0xad, 0x64, 0x49, 0x96, 0xc1, 0xe1, 0xd0, 0x99, 0x5e, 0x3c, 0xde, 0xdd, 0xf7, 0x3e, 0xfb, + 0x7e, 0xec, 0xfb, 0x25, 0x58, 0x39, 0x36, 0x07, 0x8c, 0x1a, 0xba, 0xb9, 0xa6, 0x13, 0x46, 0x8e, + 0x08, 0x23, 0xa6, 0xd5, 0x8d, 0xfe, 0xaf, 0xda, 0x8e, 0xc5, 0x2c, 0x54, 0x88, 0x6c, 0xa9, 0x37, + 0x43, 0xa6, 0x23, 0xcb, 0xa1, 0x6b, 0xa6, 0xc1, 0xa8, 0x43, 0x4c, 0xd7, 0x27, 0x55, 0x97, 0xbb, + 0x96, 0xd5, 0x35, 0xe9, 0x9a, 0xb7, 0x7a, 0x7d, 0x7a, 0xbc, 0xa6, 0x9f, 0x3a, 0x84, 0x19, 0x56, + 0x5f, 0x9c, 0xdf, 0x4e, 0x9e, 0x33, 0xa3, 0x47, 0x5d, 0x46, 0x7a, 0xb6, 0x4f, 0xa0, 0x3d, 0x87, + 0xf9, 0x0d, 0x87, 0x12, 0x46, 0x1b, 0x84, 0x11, 0x97, 0x32, 0x4c, 0xdf, 0x9e, 0x52, 0x97, 0xa1, + 0x2a, 0xe4, 0x75, 0x7f, 0x47, 0x91, 0x2a, 0xd2, 0x6a, 0xa1, 0x36, 0x5f, 0x8d, 0x0a, 0x1a, 0x50, + 0x07, 0x44, 0xda, 0x75, 0x58, 0x48, 0xe0, 0xb8, 0xb6, 0xd5, 0x77, 0xa9, 0xd6, 0x84, 0xb9, 0x4d, + 0xca, 0x12, 0xe8, 0x0f, 0x92, 0xe8, 0x8b, 0x69, 0xe8, 0xad, 0xc6, 0x10, 0xbf, 0x01, 0x28, 0x0a, + 0xe3, 0x83, 0x7f, 0xb0, 0x94, 0xbf, 0x4b, 0x1e, 0x4c, 0xdd, 0x61, 0xc6, 0x31, 0x39, 0xba, 0xbc, + 0x38, 0xe8, 0x0e, 0x14, 0x88, 0x00, 0xe9, 0x18, 0xba, 0x92, 0xa9, 0x48, 0xab, 0xf2, 0xd6, 0x14, + 0x86, 0x60, 0xb3, 0xa5, 0xa3, 0x1b, 0x30, 0xc3, 0x48, 0xb7, 0xd3, 0x27, 0x3d, 0xaa, 0x64, 0xc5, + 0x79, 0x9e, 0x91, 0xee, 0x2e, 0xe9, 0xd1, 0x67, 0x25, 0x98, 0x7d, 0x7b, 0x4a, 0x9d, 0x41, 0xe7, + 0x0d, 0xe9, 0xeb, 0x26, 0xd5, 0xb6, 0xe0, 0x5a, 0x4c, 0x2e, 0xa1, 0xdf, 0x27, 0x30, 0x13, 0x20, + 0x0a, 0xc9, 0x16, 0x62, 0x92, 0x85, 0x0c, 0x21, 0x99, 0xf6, 0x75, 0xe0, 0x88, 0xa4, 0x92, 0x97, + 0xc0, 0x52, 0x60, 0x31, 0x89, 0x25, 0xbc, 0xba, 0x0e, 0xc5, 0xba, 0xae, 0x1f, 0x90, 0x6e, 0x80, + 0xae, 0x41, 0x96, 0x91, 0xae, 0x00, 0x2e, 0xc7, 0x80, 0x39, 0x15, 0x3f, 0xd4, 0xca, 0x50, 0x0a, + 0x98, 0x04, 0xcc, 0x5f, 0x12, 0xcc, 0xbf, 0x30, 0xdc, 0x50, 0x71, 0xf7, 0xf2, 0x1e, 0x79, 0x04, + 0xb9, 0x63, 0xc3, 0x64, 0xd4, 0xf1, 0x9c, 0x51, 0xa8, 0xdd, 0x8a, 0x31, 0x3c, 0xf7, 0x8e, 0x9a, + 0x67, 0xb6, 0x43, 0x5d, 0xd7, 0xb0, 0xfa, 0x58, 0x10, 0xa3, 0x2f, 0x00, 0x6c, 0xd2, 0x35, 0xfa, + 0x5e, 0xd0, 0x78, 0x7e, 0x2a, 0xd4, 0x96, 0x63, 0xac, 0xed, 0xf0, 0x78, 0xcf, 0xe6, 0xbf, 0x2e, + 0x8e, 0x70, 0x68, 0x27, 0xb0, 0x90, 0x50, 0x40, 0xb8, 0x6e, 0x1d, 0xe4, 0xc0, 0x8e, 0xae, 0x22, + 0x55, 0xb2, 0xe3, 0xed, 0x3d, 0xa4, 0x43, 0xb7, 0x00, 0xfa, 0xf4, 0x8c, 0x75, 0x98, 0x75, 0x42, + 0xfb, 0xfe, 0xab, 0xc2, 0x32, 0xdf, 0x39, 0xe0, 0x1b, 0xda, 0xaf, 0x12, 0x5c, 0xe3, 0xb7, 0x09, + 0xf5, 0x43, 0x6b, 0x0d, 0x75, 0x97, 0x2e, 0xaf, 0x7b, 0xe6, 0x83, 0x75, 0xef, 0xfa, 0xce, 0x1b, + 0x4a, 0x23, 0x54, 0x7f, 0x00, 0x33, 0xc2, 0x2b, 0x81, 0xe6, 0xe9, 0x61, 0x19, 0x52, 0x5d, 0xa4, + 0x37, 0x81, 0x22, 0xa6, 0x2e, 0x75, 0xde, 0x79, 0xf7, 0xb6, 0x1a, 0xe8, 0x11, 0x80, 0xe0, 0xe5, + 0xd1, 0x77, 0xfe, 0x0b, 0x91, 0x05, 0x65, 0x4b, 0x47, 0x4b, 0x91, 0x90, 0xf4, 0x2f, 0x09, 0x02, + 0x52, 0x7b, 0x2f, 0xc1, 0xad, 0x4d, 0xca, 0xf6, 0x9c, 0xe6, 0x19, 0xa3, 0x7d, 0x3d, 0x72, 0x5d, + 0x60, 0xe4, 0x3a, 0x94, 0x9c, 0xe1, 0xee, 0xf0, 0x5e, 0x35, 0x76, 0x6f, 0x4c, 0x4e, 0x5c, 0x8c, + 0x70, 0xf8, 0xf7, 0x5b, 0x3f, 0xf4, 0xa9, 0x13, 0xa6, 0x0c, 0x9c, 0xf7, 0xd6, 0x2d, 0x1d, 0x6d, + 0x01, 0x7a, 0x43, 0x89, 0xc3, 0x5e, 0x53, 0xc2, 0x3a, 0x46, 0x9f, 0x71, 0x2e, 0x53, 0xbc, 0xc7, + 0xa5, 0xaa, 0x9f, 0xc5, 0xab, 0x41, 0x16, 0xaf, 0x36, 0x44, 0x96, 0xc7, 0x73, 0x21, 0x53, 0x4b, + 0xf0, 0x68, 0x7f, 0x64, 0xa0, 0x10, 0x91, 0xe2, 0xbf, 0x22, 0x37, 0x7a, 0x02, 0x40, 0xcf, 0x6c, + 0xc3, 0xa1, 0x6e, 0x87, 0x30, 0x65, 0x5a, 0xc8, 0x98, 0x44, 0x38, 0x08, 0xea, 0x17, 0x96, 0x05, + 0x75, 0xdd, 0x4b, 0x6d, 0x3d, 0xca, 0x08, 0xd7, 0x47, 0xc9, 0xa5, 0xa4, 0xb6, 0x1d, 0x71, 0x88, + 0x43, 0x32, 0xed, 0x3b, 0x58, 0x1e, 0xe7, 0x6e, 0xf1, 0x8a, 0x9f, 0x42, 0x21, 0x62, 0x05, 0x61, + 0x34, 0x65, 0x9c, 0xd1, 0x70, 0x94, 0x58, 0x1b, 0xc0, 0x12, 0xa6, 0x26, 0x25, 0x2e, 0xfd, 0xb7, + 0x1f, 0x92, 0x76, 0x13, 0xd4, 0xb4, 0xab, 0x45, 0xc2, 0xfd, 0x59, 0x82, 0xbc, 0x08, 0x0d, 0xb4, + 0x02, 0x99, 0x0b, 0x83, 0x27, 0x63, 0xe8, 0x31, 0xeb, 0x66, 0x26, 0xb2, 0x2e, 0xba, 0x07, 0x45, + 0x9b, 0x67, 0x35, 0x7e, 0xf7, 0x36, 0x1d, 0xb8, 0x4a, 0xb6, 0x92, 0x5d, 0x95, 0x71, 0x7c, 0x53, + 0x5b, 0x07, 0xb9, 0x1d, 0x6c, 0xa0, 0x32, 0x64, 0x4f, 0xe8, 0xc0, 0x13, 0x47, 0xc6, 0xfc, 0x2f, + 0x9a, 0x87, 0x2b, 0xef, 0x88, 0x79, 0x1a, 0x84, 0xaa, 0xbf, 0xd0, 0x7e, 0x04, 0x39, 0x14, 0x0f, + 0x29, 0x90, 0xb7, 0x1d, 0xeb, 0x7b, 0x2a, 0x4a, 0x9a, 0x8c, 0x83, 0x25, 0x42, 0x30, 0x1d, 0x09, + 0x73, 0xef, 0x3f, 0x5a, 0x84, 0x9c, 0x6e, 0xf5, 0x88, 0xe1, 0xe7, 0x79, 0x19, 0x8b, 0x15, 0x47, + 0x79, 0x47, 0x1d, 0x9e, 0x1a, 0xbd, 0x67, 0x27, 0xe3, 0x60, 0xc9, 0x51, 0x5e, 0xbd, 0x6a, 0x35, + 0x94, 0x2b, 0x3e, 0x0a, 0xff, 0xaf, 0xbd, 0xcf, 0xc0, 0x4c, 0x90, 0xbb, 0x51, 0x29, 0xb4, 0xa1, + 0xec, 0xd9, 0x2a, 0x52, 0xb7, 0x32, 0x93, 0xd5, 0xad, 0x8f, 0x61, 0xda, 0xb3, 0x6c, 0xd6, 0x4b, + 0x94, 0x4b, 0xa9, 0x25, 0x82, 0xb3, 0x61, 0x8f, 0x2c, 0xe6, 0x8c, 0xe9, 0xc9, 0x9c, 0xf1, 0x98, + 0xa7, 0x79, 0x61, 0x66, 0x57, 0xb9, 0xe2, 0xdd, 0xb3, 0x98, 0x48, 0xf3, 0xe2, 0x18, 0x47, 0x28, + 0xd1, 0x3d, 0x98, 0x66, 0xa4, 0xeb, 0x2a, 0x39, 0x8f, 0x63, 0xb4, 0xa6, 0x7b, 0xa7, 0x3c, 0x6c, + 0x8f, 0xbc, 0x1e, 0x41, 0xe7, 0x61, 0x9b, 0xbf, 0x38, 0x6c, 0x05, 0x75, 0x9d, 0x69, 0x6d, 0x98, + 0x8d, 0x6a, 0x18, 0xfa, 0x4c, 0x8a, 0xf8, 0xec, 0xa3, 0xe8, 0x23, 0xe0, 0x72, 0x07, 0xed, 0x70, + 0x95, 0xb7, 0xc3, 0xd5, 0x17, 0x7e, 0x3b, 0x1c, 0x3c, 0x0e, 0x13, 0xb2, 0x07, 0xa4, 0x9b, 0x0a, + 0x74, 0x3b, 0xa5, 0x63, 0x8b, 0xf5, 0x6b, 0x11, 0xd7, 0x65, 0x27, 0xeb, 0x49, 0x7f, 0x92, 0x60, + 0x26, 0xb0, 0x37, 0x7a, 0x0a, 0xf9, 0x13, 0x3a, 0xe8, 0xf4, 0x88, 0x2d, 0x6a, 0xde, 0x9d, 0x54, + 0xbf, 0x54, 0xb7, 0xe9, 0x60, 0x87, 0xd8, 0xcd, 0x3e, 0x73, 0x06, 0x38, 0x77, 0xe2, 0x2d, 0xd4, + 0x27, 0x50, 0x88, 0x6c, 0x4f, 0x1a, 0x0a, 0x4f, 0x33, 0x9f, 0x4a, 0xda, 0x1e, 0x94, 0x93, 0xf5, + 0x1d, 0x7d, 0x06, 0x79, 0xbf, 0xc2, 0xbb, 0xa9, 0xa2, 0xec, 0x1b, 0xfd, 0xae, 0x49, 0xdb, 0x8e, + 0x65, 0x53, 0x87, 0x0d, 0x7c, 0x6e, 0x1c, 0x70, 0x68, 0x7f, 0x67, 0x61, 0x3e, 0x8d, 0x02, 0x7d, + 0x09, 0xc0, 0x8b, 0x67, 0xac, 0xd1, 0x58, 0x4e, 0x3e, 0x8a, 0x38, 0xcf, 0xd6, 0x14, 0x96, 0x19, + 0xe9, 0x0a, 0x80, 0x97, 0x50, 0x0e, 0x5f, 0x57, 0x27, 0xd6, 0xab, 0xdd, 0x4b, 0x7f, 0x8d, 0x23, + 0x60, 0x57, 0x43, 0x7e, 0x01, 0xb9, 0x0b, 0x57, 0x43, 0xa7, 0x0a, 0x44, 0xdf, 0x77, 0x77, 0x53, + 0xe3, 0x68, 0x04, 0xb0, 0x14, 0x70, 0x0b, 0xbc, 0x6d, 0x28, 0x05, 0x7d, 0x85, 0x80, 0xf3, 0x63, + 0x4c, 0x4b, 0x7b, 0x0a, 0x23, 0x68, 0x45, 0xc1, 0x2b, 0xc0, 0xda, 0x30, 0xc3, 0x09, 0x08, 0xb3, + 0x1c, 0x05, 0x2a, 0xd2, 0x6a, 0xa9, 0xf6, 0xf0, 0x42, 0x3f, 0x54, 0x37, 0xac, 0x9e, 0x4d, 0x1c, + 0xc3, 0xe5, 0x1d, 0x97, 0xcf, 0x8b, 0x43, 0x14, 0xad, 0x02, 0x68, 0xf4, 0x1c, 0x01, 0xe4, 0x9a, + 0x2f, 0x5f, 0xd5, 0x5f, 0xec, 0x97, 0xa7, 0x9e, 0xcd, 0xc1, 0x55, 0x5b, 0x00, 0x0a, 0x0d, 0xb4, + 0x4d, 0x58, 0x4c, 0xd7, 0x3f, 0x39, 0xc4, 0x48, 0xa3, 0x43, 0xcc, 0x33, 0x80, 0x99, 0x00, 0x4f, + 0xfb, 0x1c, 0xe6, 0x46, 0x3c, 0x1c, 0x9b, 0x72, 0xa4, 0xe4, 0x94, 0x13, 0xe5, 0xfe, 0x16, 0xae, + 0x8f, 0x71, 0x2c, 0x7a, 0xe8, 0x87, 0x0e, 0x6f, 0x1c, 0x24, 0xd1, 0x38, 0x44, 0xed, 0xb4, 0x4d, + 0x07, 0x87, 0xfc, 0xbd, 0xb7, 0x89, 0xc1, 0xad, 0xcc, 0x83, 0xe6, 0x90, 0x98, 0x31, 0xf0, 0xc7, + 0x30, 0x1b, 0xa5, 0x9a, 0xb8, 0x98, 0xfc, 0x22, 0xc1, 0x42, 0xaa, 0x37, 0x91, 0x9a, 0xa8, 0x2c, + 0x5c, 0xad, 0xa0, 0xb6, 0xcc, 0x47, 0x6b, 0xcb, 0xd6, 0x94, 0x48, 0x30, 0x4a, 0xbc, 0xba, 0x70, + 0x49, 0x45, 0x7d, 0x51, 0x13, 0xf5, 0x85, 0x63, 0x89, 0x8d, 0x98, 0x16, 0xbf, 0x65, 0x60, 0x6e, + 0xa4, 0xe3, 0xe6, 0x92, 0x9b, 0x46, 0xcf, 0xf0, 0xe5, 0x28, 0x62, 0x7f, 0xc1, 0x77, 0xa3, 0xcd, + 0xb2, 0xbf, 0x40, 0x5f, 0x41, 0xde, 0xb5, 0x1c, 0xb6, 0x4d, 0x07, 0x9e, 0x10, 0xa5, 0xda, 0xca, + 0xf9, 0xed, 0x7c, 0x75, 0xdf, 0xa7, 0xc6, 0x01, 0x1b, 0x7a, 0x0e, 0x32, 0xff, 0xbb, 0xe7, 0xe8, + 0xe2, 0xf1, 0x97, 0x6a, 0xab, 0x13, 0x60, 0x78, 0xf4, 0x78, 0xc8, 0xaa, 0xdd, 0x07, 0x39, 0xdc, + 0x47, 0x25, 0x80, 0x46, 0x73, 0x7f, 0xa3, 0xb9, 0xdb, 0x68, 0xed, 0x6e, 0x96, 0xa7, 0x50, 0x11, + 0xe4, 0x7a, 0xb8, 0x94, 0xb4, 0x9b, 0x90, 0x17, 0x72, 0xa0, 0x39, 0x28, 0x6e, 0xe0, 0x66, 0xfd, + 0xa0, 0xb5, 0xb7, 0xdb, 0x39, 0x68, 0xed, 0x34, 0xcb, 0x53, 0xb5, 0x3f, 0x73, 0x50, 0xe0, 0x3e, + 0xda, 0xf0, 0x05, 0x40, 0x87, 0x50, 0x8c, 0x7d, 0x69, 0x40, 0xf1, 0xec, 0x96, 0xf6, 0x35, 0x43, + 0xd5, 0xce, 0x23, 0x11, 0xfd, 0xde, 0x0e, 0xc0, 0xf0, 0x0b, 0x03, 0x8a, 0x67, 0xb6, 0x91, 0x2f, + 0x18, 0xea, 0xed, 0xb1, 0xe7, 0x02, 0xee, 0x1b, 0x28, 0xc5, 0x67, 0x67, 0x94, 0x26, 0x44, 0x62, + 0x48, 0x57, 0xef, 0x9e, 0x4b, 0x23, 0xa0, 0xdb, 0x50, 0x88, 0x7c, 0x2c, 0x40, 0x23, 0xa2, 0x24, + 0x41, 0x2b, 0xe3, 0x09, 0x04, 0x62, 0x1d, 0x72, 0xfe, 0x64, 0x8e, 0xe2, 0x4d, 0x68, 0x6c, 0xc6, + 0x57, 0x6f, 0xa4, 0x9e, 0x09, 0x88, 0x43, 0x28, 0xc6, 0x06, 0xe1, 0x84, 0x5b, 0xd2, 0xa6, 0xfc, + 0x84, 0x5b, 0xd2, 0xe7, 0xe8, 0x7d, 0x98, 0x8d, 0x0e, 0x99, 0xa8, 0x32, 0xc2, 0x93, 0x98, 0x86, + 0xd5, 0x3b, 0xe7, 0x50, 0x08, 0xd0, 0xb7, 0xb0, 0x98, 0xde, 0xfd, 0xa3, 0xfb, 0x49, 0x5b, 0x8d, + 0x9f, 0x08, 0xd5, 0xff, 0x4f, 0x44, 0x2b, 0xae, 0xa4, 0x80, 0x46, 0xfb, 0x72, 0xb4, 0x92, 0xe8, + 0xf9, 0xc7, 0xcc, 0x0c, 0xea, 0xff, 0x2e, 0xa4, 0xf3, 0xaf, 0x79, 0x9d, 0xf3, 0x5a, 0xae, 0xf5, + 0x7f, 0x02, 0x00, 0x00, 0xff, 0xff, 0x9f, 0x18, 0x09, 0xae, 0x6c, 0x14, 0x00, 0x00, } // Reference imports to suppress errors if they are not otherwise used. @@ -2323,24 +2221,18 @@ type DataCatalogClient interface { ListArtifacts(ctx context.Context, in *ListArtifactsRequest, opts ...grpc.CallOption) (*ListArtifactsResponse, error) // Return a paginated list of datasets ListDatasets(ctx context.Context, in *ListDatasetsRequest, opts ...grpc.CallOption) (*ListDatasetsResponse, error) - // Get an artifact and the corresponding data. If the artifact does not exist, - // try to reserve a spot for populating the artifact. - // Once you preserve a spot, you should call ExtendReservation API periodically - // to extend the reservation. Otherwise, the reservation can expire and other - // tasks may take the spot. - // If the same owner_id calls this API for the same dataset and it has an active reservation and the artifacts have not been written yet by a different owner, the API will respond with an Acquired Reservation Status (providing idempotency). - // Note: We may have multiple concurrent tasks with the same signature - // and the same input that try to populate the same artifact at the same time. - // Thus with reservation, only one task can run at a time, until the reservation - // expires. - // Note: If task A does not extend the reservation in time and the reservation - // expires, another task B may take over the reservation, resulting in two tasks - // A and B running in parallel. So a third task C may get the Artifact from A or B, - // whichever writes last. - GetOrReserveArtifact(ctx context.Context, in *GetOrReserveArtifactRequest, opts ...grpc.CallOption) (*GetOrReserveArtifactResponse, error) - // Extend the reservation to keep it from expiring. If the reservation expires, - // other tasks can take over the reservation by calling GetOrReserveArtifact. - ExtendReservation(ctx context.Context, in *ExtendReservationRequest, opts ...grpc.CallOption) (*ExtendReservationResponse, error) + // Attempts to get or extend a reservation for the corresponding artifact. If one already exists + // (ie. another entity owns the reservation) then that reservation is retrieved. + // Once you acquire a reservation, you need to periodically extend the reservation with an + // identical call. If the reservation is not extended before the defined expiration, it may be + // acquired by another task. + // Note: We may have multiple concurrent tasks with the same signature and the same input that + // try to populate the same artifact at the same time. Thus with reservation, only one task can + // run at a time, until the reservation expires. + // Note: If task A does not extend the reservation in time and the reservation expires, another + // task B may take over the reservation, resulting in two tasks A and B running in parallel. So + // a third task C may get the Artifact from A or B, whichever writes last. + GetOrExtendReservation(ctx context.Context, in *GetOrExtendReservationRequest, opts ...grpc.CallOption) (*GetOrExtendReservationResponse, error) // Release the reservation when the task holding the spot fails so that the other tasks // can grab the spot. ReleaseReservation(ctx context.Context, in *ReleaseReservationRequest, opts ...grpc.CallOption) (*ReleaseReservationResponse, error) @@ -2417,18 +2309,9 @@ func (c *dataCatalogClient) ListDatasets(ctx context.Context, in *ListDatasetsRe return out, nil } -func (c *dataCatalogClient) GetOrReserveArtifact(ctx context.Context, in *GetOrReserveArtifactRequest, opts ...grpc.CallOption) (*GetOrReserveArtifactResponse, error) { - out := new(GetOrReserveArtifactResponse) - err := c.cc.Invoke(ctx, "/datacatalog.DataCatalog/GetOrReserveArtifact", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *dataCatalogClient) ExtendReservation(ctx context.Context, in *ExtendReservationRequest, opts ...grpc.CallOption) (*ExtendReservationResponse, error) { - out := new(ExtendReservationResponse) - err := c.cc.Invoke(ctx, "/datacatalog.DataCatalog/ExtendReservation", in, out, opts...) +func (c *dataCatalogClient) GetOrExtendReservation(ctx context.Context, in *GetOrExtendReservationRequest, opts ...grpc.CallOption) (*GetOrExtendReservationResponse, error) { + out := new(GetOrExtendReservationResponse) + err := c.cc.Invoke(ctx, "/datacatalog.DataCatalog/GetOrExtendReservation", in, out, opts...) if err != nil { return nil, err } @@ -2462,24 +2345,18 @@ type DataCatalogServer interface { ListArtifacts(context.Context, *ListArtifactsRequest) (*ListArtifactsResponse, error) // Return a paginated list of datasets ListDatasets(context.Context, *ListDatasetsRequest) (*ListDatasetsResponse, error) - // Get an artifact and the corresponding data. If the artifact does not exist, - // try to reserve a spot for populating the artifact. - // Once you preserve a spot, you should call ExtendReservation API periodically - // to extend the reservation. Otherwise, the reservation can expire and other - // tasks may take the spot. - // If the same owner_id calls this API for the same dataset and it has an active reservation and the artifacts have not been written yet by a different owner, the API will respond with an Acquired Reservation Status (providing idempotency). - // Note: We may have multiple concurrent tasks with the same signature - // and the same input that try to populate the same artifact at the same time. - // Thus with reservation, only one task can run at a time, until the reservation - // expires. - // Note: If task A does not extend the reservation in time and the reservation - // expires, another task B may take over the reservation, resulting in two tasks - // A and B running in parallel. So a third task C may get the Artifact from A or B, - // whichever writes last. - GetOrReserveArtifact(context.Context, *GetOrReserveArtifactRequest) (*GetOrReserveArtifactResponse, error) - // Extend the reservation to keep it from expiring. If the reservation expires, - // other tasks can take over the reservation by calling GetOrReserveArtifact. - ExtendReservation(context.Context, *ExtendReservationRequest) (*ExtendReservationResponse, error) + // Attempts to get or extend a reservation for the corresponding artifact. If one already exists + // (ie. another entity owns the reservation) then that reservation is retrieved. + // Once you acquire a reservation, you need to periodically extend the reservation with an + // identical call. If the reservation is not extended before the defined expiration, it may be + // acquired by another task. + // Note: We may have multiple concurrent tasks with the same signature and the same input that + // try to populate the same artifact at the same time. Thus with reservation, only one task can + // run at a time, until the reservation expires. + // Note: If task A does not extend the reservation in time and the reservation expires, another + // task B may take over the reservation, resulting in two tasks A and B running in parallel. So + // a third task C may get the Artifact from A or B, whichever writes last. + GetOrExtendReservation(context.Context, *GetOrExtendReservationRequest) (*GetOrExtendReservationResponse, error) // Release the reservation when the task holding the spot fails so that the other tasks // can grab the spot. ReleaseReservation(context.Context, *ReleaseReservationRequest) (*ReleaseReservationResponse, error) @@ -2510,11 +2387,8 @@ func (*UnimplementedDataCatalogServer) ListArtifacts(ctx context.Context, req *L func (*UnimplementedDataCatalogServer) ListDatasets(ctx context.Context, req *ListDatasetsRequest) (*ListDatasetsResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method ListDatasets not implemented") } -func (*UnimplementedDataCatalogServer) GetOrReserveArtifact(ctx context.Context, req *GetOrReserveArtifactRequest) (*GetOrReserveArtifactResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method GetOrReserveArtifact not implemented") -} -func (*UnimplementedDataCatalogServer) ExtendReservation(ctx context.Context, req *ExtendReservationRequest) (*ExtendReservationResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method ExtendReservation not implemented") +func (*UnimplementedDataCatalogServer) GetOrExtendReservation(ctx context.Context, req *GetOrExtendReservationRequest) (*GetOrExtendReservationResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method GetOrExtendReservation not implemented") } func (*UnimplementedDataCatalogServer) ReleaseReservation(ctx context.Context, req *ReleaseReservationRequest) (*ReleaseReservationResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method ReleaseReservation not implemented") @@ -2650,38 +2524,20 @@ func _DataCatalog_ListDatasets_Handler(srv interface{}, ctx context.Context, dec return interceptor(ctx, in, info, handler) } -func _DataCatalog_GetOrReserveArtifact_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(GetOrReserveArtifactRequest) +func _DataCatalog_GetOrExtendReservation_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(GetOrExtendReservationRequest) if err := dec(in); err != nil { return nil, err } if interceptor == nil { - return srv.(DataCatalogServer).GetOrReserveArtifact(ctx, in) + return srv.(DataCatalogServer).GetOrExtendReservation(ctx, in) } info := &grpc.UnaryServerInfo{ Server: srv, - FullMethod: "/datacatalog.DataCatalog/GetOrReserveArtifact", + FullMethod: "/datacatalog.DataCatalog/GetOrExtendReservation", } handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(DataCatalogServer).GetOrReserveArtifact(ctx, req.(*GetOrReserveArtifactRequest)) - } - return interceptor(ctx, in, info, handler) -} - -func _DataCatalog_ExtendReservation_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(ExtendReservationRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(DataCatalogServer).ExtendReservation(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/datacatalog.DataCatalog/ExtendReservation", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(DataCatalogServer).ExtendReservation(ctx, req.(*ExtendReservationRequest)) + return srv.(DataCatalogServer).GetOrExtendReservation(ctx, req.(*GetOrExtendReservationRequest)) } return interceptor(ctx, in, info, handler) } @@ -2737,12 +2593,8 @@ var _DataCatalog_serviceDesc = grpc.ServiceDesc{ Handler: _DataCatalog_ListDatasets_Handler, }, { - MethodName: "GetOrReserveArtifact", - Handler: _DataCatalog_GetOrReserveArtifact_Handler, - }, - { - MethodName: "ExtendReservation", - Handler: _DataCatalog_ExtendReservation_Handler, + MethodName: "GetOrExtendReservation", + Handler: _DataCatalog_GetOrExtendReservation_Handler, }, { MethodName: "ReleaseReservation", diff --git a/gen/pb-go/flyteidl/datacatalog/datacatalog.pb.validate.go b/gen/pb-go/flyteidl/datacatalog/datacatalog.pb.validate.go index 763f2fb0f..906ec758f 100644 --- a/gen/pb-go/flyteidl/datacatalog/datacatalog.pb.validate.go +++ b/gen/pb-go/flyteidl/datacatalog/datacatalog.pb.validate.go @@ -1134,17 +1134,17 @@ var _ interface { ErrorName() string } = ListDatasetsResponseValidationError{} -// Validate checks the field values on GetOrReserveArtifactRequest with the -// rules defined in the proto definition for this message. If any rules are -// violated, an error is returned. -func (m *GetOrReserveArtifactRequest) Validate() error { +// Validate checks the field values on ReservationID with the rules defined in +// the proto definition for this message. If any rules are violated, an error +// is returned. +func (m *ReservationID) Validate() error { if m == nil { return nil } if v, ok := interface{}(m.GetDatasetId()).(interface{ Validate() error }); ok { if err := v.Validate(); err != nil { - return GetOrReserveArtifactRequestValidationError{ + return ReservationIDValidationError{ field: "DatasetId", reason: "embedded message failed validation", cause: err, @@ -1154,15 +1154,12 @@ func (m *GetOrReserveArtifactRequest) Validate() error { // no validation rules for TagName - // no validation rules for OwnerId - return nil } -// GetOrReserveArtifactRequestValidationError is the validation error returned -// by GetOrReserveArtifactRequest.Validate if the designated constraints -// aren't met. -type GetOrReserveArtifactRequestValidationError struct { +// ReservationIDValidationError is the validation error returned by +// ReservationID.Validate if the designated constraints aren't met. +type ReservationIDValidationError struct { field string reason string cause error @@ -1170,24 +1167,22 @@ type GetOrReserveArtifactRequestValidationError struct { } // Field function returns field value. -func (e GetOrReserveArtifactRequestValidationError) Field() string { return e.field } +func (e ReservationIDValidationError) Field() string { return e.field } // Reason function returns reason value. -func (e GetOrReserveArtifactRequestValidationError) Reason() string { return e.reason } +func (e ReservationIDValidationError) Reason() string { return e.reason } // Cause function returns cause value. -func (e GetOrReserveArtifactRequestValidationError) Cause() error { return e.cause } +func (e ReservationIDValidationError) Cause() error { return e.cause } // Key function returns key value. -func (e GetOrReserveArtifactRequestValidationError) Key() bool { return e.key } +func (e ReservationIDValidationError) Key() bool { return e.key } // ErrorName returns error name. -func (e GetOrReserveArtifactRequestValidationError) ErrorName() string { - return "GetOrReserveArtifactRequestValidationError" -} +func (e ReservationIDValidationError) ErrorName() string { return "ReservationIDValidationError" } // Error satisfies the builtin error interface -func (e GetOrReserveArtifactRequestValidationError) Error() string { +func (e ReservationIDValidationError) Error() string { cause := "" if e.cause != nil { cause = fmt.Sprintf(" | caused by: %v", e.cause) @@ -1199,14 +1194,14 @@ func (e GetOrReserveArtifactRequestValidationError) Error() string { } return fmt.Sprintf( - "invalid %sGetOrReserveArtifactRequest.%s: %s%s", + "invalid %sReservationID.%s: %s%s", key, e.field, e.reason, cause) } -var _ error = GetOrReserveArtifactRequestValidationError{} +var _ error = ReservationIDValidationError{} var _ interface { Field() string @@ -1214,22 +1209,20 @@ var _ interface { Key() bool Cause() error ErrorName() string -} = GetOrReserveArtifactRequestValidationError{} +} = ReservationIDValidationError{} -// Validate checks the field values on ReservationStatus with the rules defined -// in the proto definition for this message. If any rules are violated, an -// error is returned. -func (m *ReservationStatus) Validate() error { +// Validate checks the field values on GetOrExtendReservationRequest with the +// rules defined in the proto definition for this message. If any rules are +// violated, an error is returned. +func (m *GetOrExtendReservationRequest) Validate() error { if m == nil { return nil } - // no validation rules for State - - if v, ok := interface{}(m.GetMetadata()).(interface{ Validate() error }); ok { + if v, ok := interface{}(m.GetReservationId()).(interface{ Validate() error }); ok { if err := v.Validate(); err != nil { - return ReservationStatusValidationError{ - field: "Metadata", + return GetOrExtendReservationRequestValidationError{ + field: "ReservationId", reason: "embedded message failed validation", cause: err, } @@ -1238,12 +1231,23 @@ func (m *ReservationStatus) Validate() error { // no validation rules for OwnerId + if v, ok := interface{}(m.GetHeartbeatInterval()).(interface{ Validate() error }); ok { + if err := v.Validate(); err != nil { + return GetOrExtendReservationRequestValidationError{ + field: "HeartbeatInterval", + reason: "embedded message failed validation", + cause: err, + } + } + } + return nil } -// ReservationStatusValidationError is the validation error returned by -// ReservationStatus.Validate if the designated constraints aren't met. -type ReservationStatusValidationError struct { +// GetOrExtendReservationRequestValidationError is the validation error +// returned by GetOrExtendReservationRequest.Validate if the designated +// constraints aren't met. +type GetOrExtendReservationRequestValidationError struct { field string reason string cause error @@ -1251,24 +1255,24 @@ type ReservationStatusValidationError struct { } // Field function returns field value. -func (e ReservationStatusValidationError) Field() string { return e.field } +func (e GetOrExtendReservationRequestValidationError) Field() string { return e.field } // Reason function returns reason value. -func (e ReservationStatusValidationError) Reason() string { return e.reason } +func (e GetOrExtendReservationRequestValidationError) Reason() string { return e.reason } // Cause function returns cause value. -func (e ReservationStatusValidationError) Cause() error { return e.cause } +func (e GetOrExtendReservationRequestValidationError) Cause() error { return e.cause } // Key function returns key value. -func (e ReservationStatusValidationError) Key() bool { return e.key } +func (e GetOrExtendReservationRequestValidationError) Key() bool { return e.key } // ErrorName returns error name. -func (e ReservationStatusValidationError) ErrorName() string { - return "ReservationStatusValidationError" +func (e GetOrExtendReservationRequestValidationError) ErrorName() string { + return "GetOrExtendReservationRequestValidationError" } // Error satisfies the builtin error interface -func (e ReservationStatusValidationError) Error() string { +func (e GetOrExtendReservationRequestValidationError) Error() string { cause := "" if e.cause != nil { cause = fmt.Sprintf(" | caused by: %v", e.cause) @@ -1280,14 +1284,14 @@ func (e ReservationStatusValidationError) Error() string { } return fmt.Sprintf( - "invalid %sReservationStatus.%s: %s%s", + "invalid %sGetOrExtendReservationRequest.%s: %s%s", key, e.field, e.reason, cause) } -var _ error = ReservationStatusValidationError{} +var _ error = GetOrExtendReservationRequestValidationError{} var _ interface { Field() string @@ -1295,132 +1299,64 @@ var _ interface { Key() bool Cause() error ErrorName() string -} = ReservationStatusValidationError{} +} = GetOrExtendReservationRequestValidationError{} -// Validate checks the field values on GetOrReserveArtifactResponse with the -// rules defined in the proto definition for this message. If any rules are -// violated, an error is returned. -func (m *GetOrReserveArtifactResponse) Validate() error { +// Validate checks the field values on Reservation with the rules defined in +// the proto definition for this message. If any rules are violated, an error +// is returned. +func (m *Reservation) Validate() error { if m == nil { return nil } - switch m.Value.(type) { - - case *GetOrReserveArtifactResponse_Artifact: - - if v, ok := interface{}(m.GetArtifact()).(interface{ Validate() error }); ok { - if err := v.Validate(); err != nil { - return GetOrReserveArtifactResponseValidationError{ - field: "Artifact", - reason: "embedded message failed validation", - cause: err, - } + if v, ok := interface{}(m.GetReservationId()).(interface{ Validate() error }); ok { + if err := v.Validate(); err != nil { + return ReservationValidationError{ + field: "ReservationId", + reason: "embedded message failed validation", + cause: err, } } + } - case *GetOrReserveArtifactResponse_ReservationStatus: + // no validation rules for OwnerId - if v, ok := interface{}(m.GetReservationStatus()).(interface{ Validate() error }); ok { - if err := v.Validate(); err != nil { - return GetOrReserveArtifactResponseValidationError{ - field: "ReservationStatus", - reason: "embedded message failed validation", - cause: err, - } + if v, ok := interface{}(m.GetHeartbeatInterval()).(interface{ Validate() error }); ok { + if err := v.Validate(); err != nil { + return ReservationValidationError{ + field: "HeartbeatInterval", + reason: "embedded message failed validation", + cause: err, } } - } - return nil -} - -// GetOrReserveArtifactResponseValidationError is the validation error returned -// by GetOrReserveArtifactResponse.Validate if the designated constraints -// aren't met. -type GetOrReserveArtifactResponseValidationError struct { - field string - reason string - cause error - key bool -} - -// Field function returns field value. -func (e GetOrReserveArtifactResponseValidationError) Field() string { return e.field } - -// Reason function returns reason value. -func (e GetOrReserveArtifactResponseValidationError) Reason() string { return e.reason } - -// Cause function returns cause value. -func (e GetOrReserveArtifactResponseValidationError) Cause() error { return e.cause } - -// Key function returns key value. -func (e GetOrReserveArtifactResponseValidationError) Key() bool { return e.key } - -// ErrorName returns error name. -func (e GetOrReserveArtifactResponseValidationError) ErrorName() string { - return "GetOrReserveArtifactResponseValidationError" -} - -// Error satisfies the builtin error interface -func (e GetOrReserveArtifactResponseValidationError) Error() string { - cause := "" - if e.cause != nil { - cause = fmt.Sprintf(" | caused by: %v", e.cause) - } - - key := "" - if e.key { - key = "key for " - } - - return fmt.Sprintf( - "invalid %sGetOrReserveArtifactResponse.%s: %s%s", - key, - e.field, - e.reason, - cause) -} - -var _ error = GetOrReserveArtifactResponseValidationError{} - -var _ interface { - Field() string - Reason() string - Key() bool - Cause() error - ErrorName() string -} = GetOrReserveArtifactResponseValidationError{} - -// Validate checks the field values on ExtendReservationRequest with the rules -// defined in the proto definition for this message. If any rules are -// violated, an error is returned. -func (m *ExtendReservationRequest) Validate() error { - if m == nil { - return nil + if v, ok := interface{}(m.GetExpiresAt()).(interface{ Validate() error }); ok { + if err := v.Validate(); err != nil { + return ReservationValidationError{ + field: "ExpiresAt", + reason: "embedded message failed validation", + cause: err, + } + } } - if v, ok := interface{}(m.GetDatasetId()).(interface{ Validate() error }); ok { + if v, ok := interface{}(m.GetMetadata()).(interface{ Validate() error }); ok { if err := v.Validate(); err != nil { - return ExtendReservationRequestValidationError{ - field: "DatasetId", + return ReservationValidationError{ + field: "Metadata", reason: "embedded message failed validation", cause: err, } } } - // no validation rules for TagName - - // no validation rules for OwnerId - return nil } -// ExtendReservationRequestValidationError is the validation error returned by -// ExtendReservationRequest.Validate if the designated constraints aren't met. -type ExtendReservationRequestValidationError struct { +// ReservationValidationError is the validation error returned by +// Reservation.Validate if the designated constraints aren't met. +type ReservationValidationError struct { field string reason string cause error @@ -1428,24 +1364,22 @@ type ExtendReservationRequestValidationError struct { } // Field function returns field value. -func (e ExtendReservationRequestValidationError) Field() string { return e.field } +func (e ReservationValidationError) Field() string { return e.field } // Reason function returns reason value. -func (e ExtendReservationRequestValidationError) Reason() string { return e.reason } +func (e ReservationValidationError) Reason() string { return e.reason } // Cause function returns cause value. -func (e ExtendReservationRequestValidationError) Cause() error { return e.cause } +func (e ReservationValidationError) Cause() error { return e.cause } // Key function returns key value. -func (e ExtendReservationRequestValidationError) Key() bool { return e.key } +func (e ReservationValidationError) Key() bool { return e.key } // ErrorName returns error name. -func (e ExtendReservationRequestValidationError) ErrorName() string { - return "ExtendReservationRequestValidationError" -} +func (e ReservationValidationError) ErrorName() string { return "ReservationValidationError" } // Error satisfies the builtin error interface -func (e ExtendReservationRequestValidationError) Error() string { +func (e ReservationValidationError) Error() string { cause := "" if e.cause != nil { cause = fmt.Sprintf(" | caused by: %v", e.cause) @@ -1457,14 +1391,14 @@ func (e ExtendReservationRequestValidationError) Error() string { } return fmt.Sprintf( - "invalid %sExtendReservationRequest.%s: %s%s", + "invalid %sReservation.%s: %s%s", key, e.field, e.reason, cause) } -var _ error = ExtendReservationRequestValidationError{} +var _ error = ReservationValidationError{} var _ interface { Field() string @@ -1472,22 +1406,33 @@ var _ interface { Key() bool Cause() error ErrorName() string -} = ExtendReservationRequestValidationError{} +} = ReservationValidationError{} -// Validate checks the field values on ExtendReservationResponse with the rules -// defined in the proto definition for this message. If any rules are +// Validate checks the field values on GetOrExtendReservationResponse with the +// rules defined in the proto definition for this message. If any rules are // violated, an error is returned. -func (m *ExtendReservationResponse) Validate() error { +func (m *GetOrExtendReservationResponse) Validate() error { if m == nil { return nil } + if v, ok := interface{}(m.GetReservation()).(interface{ Validate() error }); ok { + if err := v.Validate(); err != nil { + return GetOrExtendReservationResponseValidationError{ + field: "Reservation", + reason: "embedded message failed validation", + cause: err, + } + } + } + return nil } -// ExtendReservationResponseValidationError is the validation error returned by -// ExtendReservationResponse.Validate if the designated constraints aren't met. -type ExtendReservationResponseValidationError struct { +// GetOrExtendReservationResponseValidationError is the validation error +// returned by GetOrExtendReservationResponse.Validate if the designated +// constraints aren't met. +type GetOrExtendReservationResponseValidationError struct { field string reason string cause error @@ -1495,24 +1440,24 @@ type ExtendReservationResponseValidationError struct { } // Field function returns field value. -func (e ExtendReservationResponseValidationError) Field() string { return e.field } +func (e GetOrExtendReservationResponseValidationError) Field() string { return e.field } // Reason function returns reason value. -func (e ExtendReservationResponseValidationError) Reason() string { return e.reason } +func (e GetOrExtendReservationResponseValidationError) Reason() string { return e.reason } // Cause function returns cause value. -func (e ExtendReservationResponseValidationError) Cause() error { return e.cause } +func (e GetOrExtendReservationResponseValidationError) Cause() error { return e.cause } // Key function returns key value. -func (e ExtendReservationResponseValidationError) Key() bool { return e.key } +func (e GetOrExtendReservationResponseValidationError) Key() bool { return e.key } // ErrorName returns error name. -func (e ExtendReservationResponseValidationError) ErrorName() string { - return "ExtendReservationResponseValidationError" +func (e GetOrExtendReservationResponseValidationError) ErrorName() string { + return "GetOrExtendReservationResponseValidationError" } // Error satisfies the builtin error interface -func (e ExtendReservationResponseValidationError) Error() string { +func (e GetOrExtendReservationResponseValidationError) Error() string { cause := "" if e.cause != nil { cause = fmt.Sprintf(" | caused by: %v", e.cause) @@ -1524,14 +1469,14 @@ func (e ExtendReservationResponseValidationError) Error() string { } return fmt.Sprintf( - "invalid %sExtendReservationResponse.%s: %s%s", + "invalid %sGetOrExtendReservationResponse.%s: %s%s", key, e.field, e.reason, cause) } -var _ error = ExtendReservationResponseValidationError{} +var _ error = GetOrExtendReservationResponseValidationError{} var _ interface { Field() string @@ -1539,7 +1484,7 @@ var _ interface { Key() bool Cause() error ErrorName() string -} = ExtendReservationResponseValidationError{} +} = GetOrExtendReservationResponseValidationError{} // Validate checks the field values on ReleaseReservationRequest with the rules // defined in the proto definition for this message. If any rules are @@ -1549,18 +1494,16 @@ func (m *ReleaseReservationRequest) Validate() error { return nil } - if v, ok := interface{}(m.GetDatasetId()).(interface{ Validate() error }); ok { + if v, ok := interface{}(m.GetReservationId()).(interface{ Validate() error }); ok { if err := v.Validate(); err != nil { return ReleaseReservationRequestValidationError{ - field: "DatasetId", + field: "ReservationId", reason: "embedded message failed validation", cause: err, } } } - // no validation rules for TagName - // no validation rules for OwnerId return nil diff --git a/gen/pb-go/flyteidl/event/event.pb.go b/gen/pb-go/flyteidl/event/event.pb.go index a76e56d0f..b74ed286a 100644 --- a/gen/pb-go/flyteidl/event/event.pb.go +++ b/gen/pb-go/flyteidl/event/event.pb.go @@ -458,6 +458,8 @@ type TaskNodeMetadata struct { CacheStatus core.CatalogCacheStatus `protobuf:"varint,1,opt,name=cache_status,json=cacheStatus,proto3,enum=flyteidl.core.CatalogCacheStatus" json:"cache_status,omitempty"` // This structure carries the catalog artifact information CatalogKey *core.CatalogMetadata `protobuf:"bytes,2,opt,name=catalog_key,json=catalogKey,proto3" json:"catalog_key,omitempty"` + // Captures the status of cache reservations for this execution. + ReservationStatus core.CatalogReservation_Status `protobuf:"varint,3,opt,name=reservation_status,json=reservationStatus,proto3,enum=flyteidl.core.CatalogReservation_Status" json:"reservation_status,omitempty"` // In the case this task launched a dynamic workflow we capture its structure here. DynamicWorkflow *DynamicWorkflowNodeMetadata `protobuf:"bytes,16,opt,name=dynamic_workflow,json=dynamicWorkflow,proto3" json:"dynamic_workflow,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` @@ -504,6 +506,13 @@ func (m *TaskNodeMetadata) GetCatalogKey() *core.CatalogMetadata { return nil } +func (m *TaskNodeMetadata) GetReservationStatus() core.CatalogReservation_Status { + if m != nil { + return m.ReservationStatus + } + return core.CatalogReservation_RESERVATION_DISABLED +} + func (m *TaskNodeMetadata) GetDynamicWorkflow() *DynamicWorkflowNodeMetadata { if m != nil { return m.DynamicWorkflow @@ -1052,84 +1061,86 @@ func init() { func init() { proto.RegisterFile("flyteidl/event/event.proto", fileDescriptor_4b035d24120b1b12) } var fileDescriptor_4b035d24120b1b12 = []byte{ - // 1256 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x57, 0x6b, 0x6e, 0xdb, 0x46, - 0x10, 0xb6, 0xec, 0x58, 0xb2, 0x86, 0x96, 0x2c, 0x2f, 0x1c, 0x87, 0x8d, 0x93, 0xd8, 0x65, 0x9b, - 0xc2, 0x49, 0x50, 0x09, 0x50, 0x90, 0x07, 0xd0, 0x00, 0x85, 0x5f, 0xad, 0x85, 0x3a, 0x86, 0xb1, - 0x96, 0x53, 0x20, 0x6d, 0x41, 0xac, 0xc9, 0x11, 0x43, 0x98, 0xe2, 0x12, 0xcb, 0x65, 0x12, 0x1d, - 0xa1, 0x87, 0xc8, 0x05, 0x0a, 0xf4, 0x70, 0xbd, 0x41, 0xc1, 0xe5, 0x43, 0x26, 0x45, 0xa8, 0x49, - 0x93, 0x3f, 0x02, 0xf8, 0xcd, 0xcc, 0xc7, 0xd9, 0x99, 0xd9, 0xf9, 0x28, 0xb8, 0x3d, 0xf2, 0x26, - 0x12, 0x5d, 0xdb, 0xeb, 0xe1, 0x5b, 0xf4, 0x65, 0xf2, 0xdb, 0x0d, 0x04, 0x97, 0x9c, 0xb4, 0x33, - 0x5b, 0x57, 0xa1, 0xb7, 0xef, 0xe4, 0xbe, 0x16, 0x17, 0xd8, 0xf3, 0x5c, 0x89, 0x82, 0x79, 0x61, - 0xe2, 0x5d, 0xb6, 0x5a, 0x7c, 0x1c, 0xb8, 0x1e, 0x8a, 0xd4, 0x7a, 0xb7, 0x68, 0xc5, 0xf7, 0x68, - 0x45, 0xd2, 0xe5, 0x7e, 0x6a, 0xbe, 0x57, 0x34, 0xbb, 0x36, 0xfa, 0xd2, 0x1d, 0xb9, 0x79, 0xf8, - 0x56, 0x89, 0x9c, 0x49, 0xe6, 0x71, 0x27, 0x35, 0x6e, 0x3b, 0x9c, 0x3b, 0x1e, 0xf6, 0xd4, 0xd3, - 0x65, 0x34, 0xea, 0x49, 0x77, 0x8c, 0xa1, 0x64, 0xe3, 0x20, 0x4b, 0xad, 0xec, 0x10, 0x4a, 0x11, - 0x59, 0xe9, 0x31, 0x8d, 0xbf, 0x96, 0x60, 0xf3, 0x57, 0x2e, 0xae, 0x46, 0x1e, 0x7f, 0x77, 0x94, - 0xe5, 0x75, 0x14, 0x9f, 0x98, 0xbc, 0x84, 0xd5, 0x3c, 0x53, 0xd3, 0xb5, 0xf5, 0xda, 0x4e, 0x6d, - 0x57, 0xeb, 0x3f, 0xec, 0xe6, 0x85, 0x89, 0xb3, 0xe9, 0xce, 0x04, 0x0f, 0xf2, 0xf4, 0xa9, 0x86, - 0x53, 0x90, 0x6c, 0x83, 0x16, 0x08, 0x6e, 0x47, 0x16, 0x8a, 0x98, 0x6d, 0x71, 0xa7, 0xb6, 0xdb, - 0xa4, 0x90, 0x41, 0x03, 0x9b, 0xbc, 0x80, 0xe5, 0xe0, 0x0d, 0x0b, 0x51, 0x5f, 0xda, 0xa9, 0xed, - 0xb6, 0xfb, 0xdf, 0xfd, 0xd7, 0x8b, 0xba, 0x67, 0xb1, 0x37, 0x4d, 0x82, 0xc8, 0x0f, 0xa0, 0x71, - 0xcb, 0x8a, 0x84, 0x40, 0xdb, 0x64, 0x52, 0xbf, 0xa1, 0x92, 0xbd, 0xdd, 0x4d, 0x0e, 0xdf, 0xcd, - 0x0e, 0xdf, 0x1d, 0x66, 0xd5, 0xa1, 0x90, 0xb9, 0xef, 0x49, 0xb2, 0x0d, 0xc0, 0x23, 0x19, 0x44, - 0xd2, 0x8c, 0x84, 0xab, 0x2f, 0xc7, 0xa9, 0x1d, 0x2f, 0xd0, 0x66, 0x82, 0x5d, 0x08, 0x97, 0x3c, - 0x81, 0x65, 0x14, 0x82, 0x0b, 0xbd, 0xae, 0x78, 0xef, 0x96, 0x72, 0x9b, 0x56, 0x2e, 0x76, 0x3a, - 0x5e, 0xa0, 0x89, 0x37, 0x79, 0x01, 0x5a, 0xca, 0x6b, 0x33, 0xc9, 0xf4, 0x86, 0x0a, 0xfe, 0xaa, - 0x14, 0x7c, 0x92, 0x8c, 0xd2, 0x4b, 0x16, 0x1c, 0x2f, 0xd0, 0x34, 0x8f, 0x43, 0x26, 0xd9, 0xfe, - 0x1a, 0xb4, 0xd2, 0x68, 0x81, 0x61, 0xe4, 0x49, 0xe3, 0xcf, 0x06, 0x90, 0x53, 0x6e, 0x63, 0xa9, - 0x51, 0x4f, 0x61, 0x31, 0x6f, 0x4f, 0xb9, 0x6a, 0x05, 0xf7, 0x6b, 0xad, 0x59, 0x74, 0x3f, 0xa2, - 0x23, 0xcf, 0x8b, 0x1d, 0x31, 0xe6, 0x71, 0x7f, 0xc1, 0x6e, 0x6c, 0x41, 0xd3, 0xf5, 0x0b, 0xcd, - 0xa0, 0x2b, 0x0a, 0x88, 0x3b, 0x51, 0x6c, 0x55, 0x7d, 0x4e, 0xab, 0x1a, 0x9f, 0xd3, 0xaa, 0xb5, - 0x4f, 0x6a, 0x15, 0xf9, 0x1d, 0x36, 0xdf, 0xa5, 0xf3, 0x69, 0xfa, 0xdc, 0x46, 0x73, 0x8c, 0x92, - 0x29, 0xa2, 0x15, 0x45, 0xf4, 0x6d, 0xb7, 0xb8, 0x4e, 0xf2, 0x69, 0x8e, 0x6b, 0xf8, 0x32, 0xf5, - 0x3d, 0xae, 0xd1, 0x8d, 0x77, 0x15, 0x38, 0x39, 0x03, 0x22, 0x59, 0x78, 0x55, 0x62, 0x6e, 0x2b, - 0xe6, 0x9d, 0x32, 0xf3, 0x90, 0x85, 0x57, 0x25, 0xd6, 0x8e, 0x2c, 0x61, 0xe4, 0x0f, 0xd8, 0x08, - 0x98, 0x40, 0x5f, 0x9a, 0x8a, 0x38, 0xe7, 0x6c, 0x2a, 0xce, 0x47, 0x65, 0xce, 0x33, 0xe5, 0x1b, - 0x33, 0xe7, 0xe5, 0xcb, 0xa8, 0x28, 0x09, 0x72, 0x63, 0x05, 0x7d, 0x31, 0x65, 0x98, 0x47, 0x5f, - 0x18, 0xa7, 0x32, 0x7d, 0x21, 0xfb, 0x6d, 0xd0, 0x04, 0x4a, 0x31, 0x31, 0x1d, 0xc1, 0xa3, 0x40, - 0xd7, 0x92, 0xc1, 0x55, 0xd0, 0xcf, 0x31, 0x42, 0x76, 0x60, 0x35, 0x0c, 0xd0, 0x4a, 0xde, 0xee, - 0xda, 0xfa, 0x6a, 0xe2, 0x11, 0x63, 0x31, 0xd1, 0xc0, 0x8e, 0x67, 0x4c, 0x19, 0x7d, 0x36, 0x46, - 0xbd, 0x95, 0xcc, 0x58, 0x0c, 0x9c, 0xb2, 0x31, 0xce, 0x5c, 0xbc, 0xfd, 0x75, 0x58, 0x93, 0x4c, - 0x38, 0x28, 0xf3, 0xa3, 0x18, 0x08, 0x1b, 0x55, 0x3d, 0xfc, 0xc2, 0x5b, 0xd3, 0xf8, 0xa7, 0x06, - 0x9d, 0x72, 0x47, 0xc9, 0x21, 0xac, 0x5a, 0xcc, 0x7a, 0x83, 0x66, 0x28, 0x99, 0x8c, 0x42, 0xf5, - 0x8e, 0x76, 0xff, 0xeb, 0xd2, 0x3b, 0x0e, 0x12, 0x9d, 0x38, 0x88, 0x3d, 0xcf, 0x95, 0x23, 0xd5, - 0xac, 0xe9, 0x03, 0xf9, 0x11, 0xb4, 0x54, 0x4a, 0xcc, 0x2b, 0x9c, 0xa8, 0xeb, 0xaf, 0xf5, 0xef, - 0x55, 0x93, 0xe4, 0xed, 0x80, 0x34, 0xe4, 0x17, 0x9c, 0x90, 0x57, 0xd0, 0xb1, 0x27, 0x3e, 0x1b, - 0xbb, 0x96, 0x99, 0x8d, 0xad, 0xde, 0xa9, 0xee, 0xf0, 0x61, 0xe2, 0x57, 0x55, 0x31, 0xba, 0x66, - 0x17, 0x8d, 0xc6, 0x87, 0x1a, 0x6c, 0xcd, 0x09, 0x20, 0x0f, 0xae, 0xed, 0xbb, 0xf2, 0x0d, 0x2d, - 0xad, 0xb8, 0x73, 0x58, 0x4f, 0xb5, 0xd8, 0x9e, 0xe6, 0xb8, 0x58, 0xb9, 0x29, 0x0f, 0x52, 0xbf, - 0xec, 0x95, 0x07, 0x1e, 0x0f, 0x23, 0x81, 0xb4, 0x63, 0x95, 0x0c, 0xc6, 0x05, 0x6c, 0xcd, 0xb9, - 0x10, 0x73, 0xd7, 0x71, 0x21, 0xa2, 0x98, 0xab, 0xf1, 0x34, 0xa3, 0xad, 0xbc, 0x08, 0xe4, 0x16, - 0x34, 0xb2, 0x71, 0xae, 0xa9, 0x79, 0xad, 0xfb, 0x6a, 0x94, 0x8d, 0xbf, 0xeb, 0x40, 0x0a, 0xbc, - 0x89, 0x2a, 0xf4, 0xa1, 0xa1, 0xee, 0xf6, 0xc7, 0x94, 0xaa, 0x1e, 0x7b, 0x0e, 0x6c, 0x62, 0x82, - 0x7e, 0xfd, 0xde, 0x16, 0x06, 0x79, 0xf1, 0x93, 0xf4, 0xe5, 0x66, 0x30, 0x7b, 0x94, 0x81, 0x4d, - 0xbe, 0x81, 0x56, 0x72, 0x73, 0x99, 0x94, 0x38, 0x0e, 0xa4, 0x52, 0x96, 0x16, 0x5d, 0x55, 0xe0, - 0x5e, 0x82, 0x4d, 0x65, 0xe7, 0x46, 0xa5, 0xec, 0x14, 0xce, 0x5a, 0x94, 0x9d, 0x92, 0xa2, 0x2d, - 0xcf, 0x28, 0xda, 0x43, 0xb8, 0xe1, 0x71, 0x27, 0xd4, 0xeb, 0x3b, 0x4b, 0xbb, 0x5a, 0x7f, 0xb3, - 0x82, 0xf9, 0x84, 0x3b, 0x54, 0xf9, 0x94, 0x35, 0xac, 0xf1, 0xff, 0x35, 0x6c, 0x65, 0xae, 0x86, - 0x35, 0xe7, 0x68, 0x18, 0x7c, 0x8e, 0x86, 0xad, 0x7f, 0x9a, 0x86, 0x3d, 0x07, 0xcd, 0x8a, 0x42, - 0xc9, 0xc7, 0xa6, 0xeb, 0x8f, 0xb8, 0xda, 0xaa, 0x5a, 0xff, 0xd6, 0xcc, 0x79, 0xcf, 0xd5, 0xe7, - 0x23, 0x85, 0xc4, 0x77, 0xe0, 0x8f, 0x78, 0xdc, 0x55, 0x55, 0x7f, 0xf3, 0x2d, 0x8a, 0xd0, 0xe5, - 0xbe, 0xda, 0xb7, 0x2d, 0xba, 0xaa, 0xc0, 0x57, 0x09, 0x46, 0x36, 0xa1, 0x2e, 0x90, 0x85, 0xdc, - 0x4f, 0xd7, 0x6d, 0xfa, 0x14, 0x57, 0x4a, 0xcd, 0xa9, 0x9c, 0x04, 0xa8, 0x34, 0xad, 0x49, 0x57, - 0x62, 0x60, 0x38, 0x09, 0x90, 0xec, 0xc1, 0x4a, 0x2e, 0x1e, 0xc9, 0x6a, 0xb9, 0x5f, 0xa5, 0x77, - 0xb3, 0xb2, 0x91, 0x87, 0xcd, 0x7e, 0x45, 0x3d, 0x83, 0x8d, 0xa3, 0xf7, 0x12, 0x85, 0xcf, 0x3c, - 0x8a, 0x21, 0x8f, 0x84, 0x85, 0xea, 0x14, 0xdb, 0xa0, 0x61, 0x8a, 0x4f, 0x2f, 0x19, 0x64, 0xd0, - 0xc0, 0x36, 0x7e, 0x83, 0x4e, 0x16, 0x70, 0xc6, 0xb9, 0xa7, 0x82, 0x1e, 0x40, 0x87, 0x79, 0x1e, - 0xb7, 0x98, 0xba, 0x26, 0x92, 0x5f, 0xa1, 0x9f, 0x46, 0xae, 0x4d, 0xf1, 0x61, 0x0c, 0x93, 0x3b, - 0xd0, 0x8c, 0xd5, 0x26, 0x0c, 0x98, 0x85, 0xe9, 0xc7, 0xd6, 0x14, 0x30, 0x3e, 0x2c, 0xc1, 0xcd, - 0xea, 0x7d, 0x72, 0x1f, 0xda, 0x0e, 0xfa, 0x28, 0x98, 0x44, 0x3b, 0xd1, 0xab, 0xe4, 0x05, 0xad, - 0x1c, 0x8d, 0x45, 0x8b, 0x9c, 0x03, 0xc9, 0xd3, 0x17, 0x69, 0x9a, 0xa1, 0xbe, 0xa8, 0x06, 0x7d, - 0xe6, 0xf3, 0xa3, 0xaa, 0x00, 0x74, 0x1d, 0x4b, 0x68, 0x48, 0x4e, 0x81, 0x64, 0x5c, 0x66, 0xc0, - 0xb9, 0x97, 0x8c, 0xc6, 0x92, 0x22, 0x9d, 0xf9, 0xf2, 0x28, 0x17, 0x87, 0x76, 0x44, 0xb9, 0x5c, - 0x8f, 0x60, 0x3d, 0xf0, 0x22, 0xc7, 0x8d, 0x37, 0x4a, 0xb6, 0x2b, 0xd4, 0x35, 0x6f, 0xd2, 0x4e, - 0x62, 0x98, 0xee, 0x10, 0xf2, 0x1a, 0xda, 0xae, 0x1f, 0x4a, 0xe6, 0x5b, 0x68, 0x5a, 0x1e, 0x0b, - 0x43, 0x35, 0x02, 0xed, 0xfe, 0xe3, 0x8f, 0x1a, 0x81, 0xee, 0x20, 0x8d, 0x3d, 0x88, 0x43, 0x69, - 0xcb, 0xbd, 0xfe, 0x68, 0xf4, 0xa0, 0x55, 0xb0, 0x13, 0x0d, 0x1a, 0x87, 0x47, 0x3f, 0xed, 0x5d, - 0x9c, 0x0c, 0x3b, 0x0b, 0x64, 0x1d, 0x5a, 0x83, 0xd3, 0xe1, 0x11, 0xa5, 0x17, 0x67, 0xc3, 0xc1, - 0xfe, 0xc9, 0x51, 0xa7, 0xb6, 0xff, 0xec, 0xf5, 0x13, 0xc7, 0x95, 0x6f, 0xa2, 0xcb, 0xae, 0xc5, - 0xc7, 0x3d, 0x95, 0x00, 0x17, 0x4e, 0x2f, 0xff, 0x6b, 0xe6, 0xa0, 0xdf, 0x0b, 0x2e, 0xbf, 0x77, - 0x78, 0xaf, 0xf8, 0xa7, 0xf2, 0xb2, 0xae, 0x6e, 0xce, 0xe3, 0x7f, 0x03, 0x00, 0x00, 0xff, 0xff, - 0xfd, 0xb2, 0x15, 0x4c, 0x6d, 0x0e, 0x00, 0x00, + // 1284 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x57, 0xeb, 0x6e, 0xdb, 0x46, + 0x13, 0xb5, 0xe4, 0x58, 0xb2, 0x86, 0x96, 0x2c, 0x2d, 0x1c, 0x87, 0x5f, 0x9c, 0xc4, 0xfe, 0xd4, + 0xa6, 0x70, 0x12, 0x54, 0x02, 0x14, 0xe4, 0x02, 0x34, 0x40, 0xe1, 0x5b, 0x6b, 0xa1, 0x8e, 0x61, + 0xac, 0xe5, 0x04, 0x48, 0x5b, 0x10, 0x6b, 0x72, 0xc4, 0x10, 0xa6, 0xb8, 0xc4, 0x72, 0x99, 0x44, + 0x8f, 0xd0, 0x87, 0xc8, 0x0b, 0x14, 0xe8, 0x8b, 0xf4, 0xa9, 0x0a, 0x2e, 0x2f, 0x32, 0x29, 0x42, + 0x4d, 0x9a, 0xfc, 0x11, 0xc0, 0x33, 0x33, 0x87, 0xb3, 0x3b, 0x97, 0x43, 0xc1, 0xed, 0xb1, 0x3b, + 0x95, 0xe8, 0x58, 0x6e, 0x1f, 0xdf, 0xa1, 0x27, 0xe3, 0xdf, 0x9e, 0x2f, 0xb8, 0xe4, 0xa4, 0x95, + 0xda, 0x7a, 0x0a, 0xbd, 0x7d, 0x27, 0xf3, 0x35, 0xb9, 0xc0, 0xbe, 0xeb, 0x48, 0x14, 0xcc, 0x0d, + 0x62, 0xef, 0xa2, 0xd5, 0xe4, 0x13, 0xdf, 0x71, 0x51, 0x24, 0xd6, 0xbb, 0x79, 0x2b, 0x7e, 0x40, + 0x33, 0x94, 0x0e, 0xf7, 0x12, 0xf3, 0xbd, 0xbc, 0xd9, 0xb1, 0xd0, 0x93, 0xce, 0xd8, 0xc9, 0xc2, + 0xb7, 0x0a, 0xe4, 0x4c, 0x32, 0x97, 0xdb, 0x89, 0x71, 0xdb, 0xe6, 0xdc, 0x76, 0xb1, 0xaf, 0x9e, + 0x2e, 0xc3, 0x71, 0x5f, 0x3a, 0x13, 0x0c, 0x24, 0x9b, 0xf8, 0x69, 0x6a, 0x45, 0x87, 0x40, 0x8a, + 0xd0, 0x4c, 0x8e, 0xd9, 0xfd, 0x73, 0x19, 0x36, 0x5f, 0x73, 0x71, 0x35, 0x76, 0xf9, 0xfb, 0xa3, + 0x34, 0xaf, 0xa3, 0xe8, 0xc4, 0xe4, 0x25, 0xac, 0x65, 0x99, 0x1a, 0x8e, 0xa5, 0x57, 0x76, 0x2a, + 0xbb, 0xda, 0xe0, 0x61, 0x2f, 0xbb, 0x98, 0x28, 0x9b, 0xde, 0x5c, 0xf0, 0x30, 0x4b, 0x9f, 0x6a, + 0x38, 0x03, 0xc9, 0x36, 0x68, 0xbe, 0xe0, 0x56, 0x68, 0xa2, 0x88, 0xd8, 0xaa, 0x3b, 0x95, 0xdd, + 0x06, 0x85, 0x14, 0x1a, 0x5a, 0xe4, 0x05, 0xac, 0xf8, 0x6f, 0x59, 0x80, 0xfa, 0xf2, 0x4e, 0x65, + 0xb7, 0x35, 0xf8, 0xee, 0xdf, 0x5e, 0xd4, 0x3b, 0x8b, 0xbc, 0x69, 0x1c, 0x44, 0x7e, 0x00, 0x8d, + 0x9b, 0x66, 0x28, 0x04, 0x5a, 0x06, 0x93, 0xfa, 0x0d, 0x95, 0xec, 0xed, 0x5e, 0x7c, 0xf8, 0x5e, + 0x7a, 0xf8, 0xde, 0x28, 0xbd, 0x1d, 0x0a, 0xa9, 0xfb, 0x9e, 0x24, 0xdb, 0x00, 0x3c, 0x94, 0x7e, + 0x28, 0x8d, 0x50, 0x38, 0xfa, 0x4a, 0x94, 0xda, 0xf1, 0x12, 0x6d, 0xc4, 0xd8, 0x85, 0x70, 0xc8, + 0x13, 0x58, 0x41, 0x21, 0xb8, 0xd0, 0x6b, 0x8a, 0xf7, 0x6e, 0x21, 0xb7, 0xd9, 0xcd, 0x45, 0x4e, + 0xc7, 0x4b, 0x34, 0xf6, 0x26, 0x2f, 0x40, 0x4b, 0x78, 0x2d, 0x26, 0x99, 0x5e, 0x57, 0xc1, 0xff, + 0x2b, 0x04, 0x9f, 0xc4, 0xad, 0xf4, 0x92, 0xf9, 0xc7, 0x4b, 0x34, 0xc9, 0xe3, 0x90, 0x49, 0xb6, + 0xbf, 0x0e, 0xcd, 0x24, 0x5a, 0x60, 0x10, 0xba, 0xb2, 0xfb, 0x47, 0x1d, 0xc8, 0x29, 0xb7, 0xb0, + 0x50, 0xa8, 0xa7, 0x50, 0xcd, 0xca, 0x53, 0xbc, 0xb5, 0x9c, 0xfb, 0xb5, 0xd2, 0x54, 0x9d, 0x4f, + 0xa8, 0xc8, 0xf3, 0x7c, 0x45, 0xba, 0x8b, 0xb8, 0xbf, 0x62, 0x35, 0xb6, 0xa0, 0xe1, 0x78, 0xb9, + 0x62, 0xd0, 0x55, 0x05, 0x44, 0x95, 0xc8, 0x97, 0xaa, 0xb6, 0xa0, 0x54, 0xf5, 0x2f, 0x29, 0xd5, + 0xfa, 0x67, 0x95, 0x8a, 0xfc, 0x06, 0x9b, 0xef, 0x93, 0xfe, 0x34, 0x3c, 0x6e, 0xa1, 0x31, 0x41, + 0xc9, 0x14, 0xd1, 0xaa, 0x22, 0xfa, 0xb6, 0x97, 0x5f, 0x27, 0x59, 0x37, 0x47, 0x77, 0xf8, 0x32, + 0xf1, 0x3d, 0xae, 0xd0, 0x8d, 0xf7, 0x25, 0x38, 0x39, 0x03, 0x22, 0x59, 0x70, 0x55, 0x60, 0x6e, + 0x29, 0xe6, 0x9d, 0x22, 0xf3, 0x88, 0x05, 0x57, 0x05, 0xd6, 0xb6, 0x2c, 0x60, 0xe4, 0x77, 0xd8, + 0xf0, 0x99, 0x40, 0x4f, 0x1a, 0x8a, 0x38, 0xe3, 0x6c, 0x28, 0xce, 0x47, 0x45, 0xce, 0x33, 0xe5, + 0x1b, 0x31, 0x67, 0xd7, 0x97, 0x52, 0x51, 0xe2, 0x67, 0xc6, 0x12, 0xfa, 0x7c, 0xca, 0xb0, 0x88, + 0x3e, 0xd7, 0x4e, 0x45, 0xfa, 0x5c, 0xf6, 0xdb, 0xa0, 0x09, 0x94, 0x62, 0x6a, 0xd8, 0x82, 0x87, + 0xbe, 0xae, 0xc5, 0x8d, 0xab, 0xa0, 0x9f, 0x23, 0x84, 0xec, 0xc0, 0x5a, 0xe0, 0xa3, 0x19, 0xbf, + 0xdd, 0xb1, 0xf4, 0xb5, 0xd8, 0x23, 0xc2, 0x22, 0xa2, 0xa1, 0x15, 0xf5, 0x98, 0x32, 0x7a, 0x6c, + 0x82, 0x7a, 0x33, 0xee, 0xb1, 0x08, 0x38, 0x65, 0x13, 0x9c, 0x1b, 0xbc, 0xfd, 0x0e, 0xac, 0x4b, + 0x26, 0x6c, 0x94, 0xd9, 0x51, 0xba, 0x08, 0x1b, 0x65, 0x35, 0xfc, 0xca, 0x5b, 0xb3, 0xfb, 0x77, + 0x15, 0xda, 0xc5, 0x8a, 0x92, 0x43, 0x58, 0x33, 0x99, 0xf9, 0x16, 0x8d, 0x40, 0x32, 0x19, 0x06, + 0xea, 0x1d, 0xad, 0xc1, 0xff, 0x0b, 0xef, 0x38, 0x88, 0x75, 0xe2, 0x20, 0xf2, 0x3c, 0x57, 0x8e, + 0x54, 0x33, 0x67, 0x0f, 0xe4, 0x47, 0xd0, 0x12, 0x29, 0x31, 0xae, 0x70, 0xaa, 0xc6, 0x5f, 0x1b, + 0xdc, 0x2b, 0x27, 0xc9, 0xca, 0x01, 0x49, 0xc8, 0x2f, 0x38, 0x25, 0xaf, 0x81, 0x08, 0x0c, 0x50, + 0xbc, 0x63, 0xea, 0xb0, 0x49, 0x32, 0xf1, 0xae, 0xd8, 0x2d, 0xe7, 0xa1, 0x33, 0xff, 0x5e, 0x92, + 0x53, 0xe7, 0x1a, 0x47, 0x92, 0xd9, 0x2b, 0x68, 0x5b, 0x53, 0x8f, 0x4d, 0x1c, 0xd3, 0x48, 0xe7, + 0x41, 0x6f, 0x97, 0xb7, 0xce, 0x61, 0xec, 0x57, 0x56, 0x0a, 0xba, 0x6e, 0xe5, 0x8d, 0xdd, 0x8f, + 0x15, 0xd8, 0x5a, 0x10, 0x40, 0x1e, 0x5c, 0x5b, 0xa4, 0xc5, 0xd1, 0x2f, 0xec, 0xce, 0x73, 0xe8, + 0x24, 0x22, 0x6f, 0xcd, 0x72, 0xac, 0x96, 0xae, 0xe0, 0x83, 0xc4, 0x2f, 0x7d, 0xe5, 0x81, 0xcb, + 0x83, 0x50, 0x20, 0x6d, 0x9b, 0x05, 0x43, 0xf7, 0x02, 0xb6, 0x16, 0x4c, 0xda, 0xc2, 0x3d, 0x9f, + 0x8b, 0xc8, 0xe7, 0xda, 0x7d, 0x9a, 0xd2, 0x96, 0x4e, 0x18, 0xb9, 0x05, 0xf5, 0x74, 0x4e, 0x2a, + 0x6a, 0x10, 0x6a, 0x9e, 0x9a, 0x91, 0xee, 0x5f, 0x35, 0x20, 0x39, 0xde, 0x58, 0x6e, 0x06, 0x50, + 0x57, 0x4b, 0xe3, 0x53, 0xae, 0xaa, 0x16, 0x79, 0x0e, 0x2d, 0x62, 0x80, 0x7e, 0x7d, 0x21, 0xe4, + 0x26, 0xa4, 0xfa, 0x59, 0xc2, 0x75, 0xd3, 0x9f, 0x3f, 0xca, 0xd0, 0x22, 0xdf, 0x40, 0x33, 0x5e, + 0x09, 0x4c, 0x4a, 0x9c, 0xf8, 0x52, 0xb5, 0x61, 0x93, 0xae, 0x29, 0x70, 0x2f, 0xc6, 0x66, 0x7a, + 0x76, 0xa3, 0x54, 0xcf, 0x72, 0x67, 0xcd, 0xeb, 0x59, 0x41, 0x2a, 0x57, 0xe6, 0xa4, 0xf2, 0x21, + 0xdc, 0x70, 0xb9, 0x1d, 0xe8, 0xb5, 0x9d, 0xe5, 0x5d, 0x6d, 0xb0, 0x59, 0xc2, 0x7c, 0xc2, 0x6d, + 0xaa, 0x7c, 0x8a, 0xe2, 0x58, 0xff, 0xef, 0xe2, 0xb8, 0xba, 0x50, 0x1c, 0x1b, 0x0b, 0xc4, 0x11, + 0xbe, 0x44, 0x1c, 0x3b, 0x9f, 0x27, 0x8e, 0xcf, 0x41, 0x33, 0xc3, 0x40, 0xf2, 0x89, 0xe1, 0x78, + 0x63, 0xae, 0xd6, 0xb5, 0x36, 0xb8, 0x35, 0x77, 0xde, 0x73, 0xf5, 0x5d, 0x4a, 0x21, 0xf6, 0x1d, + 0x7a, 0x63, 0x1e, 0x55, 0x55, 0xdd, 0xbf, 0xf1, 0x0e, 0x45, 0xe0, 0x70, 0x4f, 0x2d, 0xf2, 0x26, + 0x5d, 0x53, 0xe0, 0xab, 0x18, 0x23, 0x9b, 0x50, 0x13, 0xc8, 0x02, 0xee, 0x25, 0x7b, 0x3c, 0x79, + 0x8a, 0x6e, 0x4a, 0xf5, 0xa9, 0x9c, 0xfa, 0xa8, 0xc4, 0xb2, 0x41, 0x57, 0x23, 0x60, 0x34, 0xf5, + 0x91, 0xec, 0xc1, 0x6a, 0xa6, 0x4a, 0xf1, 0x6a, 0xb9, 0x5f, 0x26, 0xa4, 0xf3, 0x7a, 0x94, 0x85, + 0xcd, 0x7f, 0x9e, 0x3d, 0x83, 0x8d, 0xa3, 0x0f, 0x12, 0x85, 0xc7, 0x5c, 0x8a, 0x01, 0x0f, 0x85, + 0x89, 0xea, 0x14, 0xdb, 0xa0, 0x61, 0x82, 0xcf, 0x86, 0x0c, 0x52, 0x68, 0x68, 0x75, 0x7f, 0x85, + 0x76, 0x1a, 0x70, 0xc6, 0xb9, 0xab, 0x82, 0x1e, 0x40, 0x9b, 0xb9, 0x2e, 0x37, 0xe3, 0xdd, 0x2a, + 0xf9, 0x15, 0x7a, 0x49, 0xe4, 0xfa, 0x0c, 0x1f, 0x45, 0x30, 0xb9, 0x03, 0x8d, 0x48, 0xc6, 0x02, + 0x9f, 0x99, 0x98, 0x7c, 0xc5, 0xcd, 0x80, 0xee, 0xc7, 0x65, 0xb8, 0x59, 0xbe, 0x4f, 0xee, 0x43, + 0xcb, 0x46, 0x0f, 0x05, 0x93, 0x68, 0xc5, 0x42, 0x18, 0xbf, 0xa0, 0x99, 0xa1, 0x91, 0x1a, 0x92, + 0x73, 0x20, 0x59, 0xfa, 0x22, 0x49, 0x33, 0xd0, 0xab, 0xaa, 0xd1, 0xe7, 0xbe, 0x6b, 0xca, 0x2e, + 0x80, 0x76, 0xb0, 0x80, 0x06, 0xe4, 0x54, 0x69, 0x87, 0x7a, 0x30, 0x7c, 0xce, 0xdd, 0xb8, 0x35, + 0x96, 0x15, 0xe9, 0xdc, 0x27, 0x4d, 0xf1, 0x72, 0x68, 0x5b, 0x14, 0xaf, 0xeb, 0x11, 0x74, 0x7c, + 0x37, 0xb4, 0x9d, 0x68, 0xa3, 0xa4, 0xbb, 0x42, 0x8d, 0x79, 0x83, 0xb6, 0x63, 0xc3, 0x6c, 0x87, + 0x90, 0x37, 0xd0, 0x72, 0xbc, 0x40, 0x32, 0xcf, 0x44, 0xc3, 0x74, 0x59, 0x10, 0xa8, 0x16, 0x68, + 0x0d, 0x1e, 0x7f, 0x52, 0x0b, 0xf4, 0x86, 0x49, 0xec, 0x41, 0x14, 0x4a, 0x9b, 0xce, 0xf5, 0xc7, + 0x6e, 0x1f, 0x9a, 0x39, 0x3b, 0xd1, 0xa0, 0x7e, 0x78, 0xf4, 0xd3, 0xde, 0xc5, 0xc9, 0xa8, 0xbd, + 0x44, 0x3a, 0xd0, 0x1c, 0x9e, 0x8e, 0x8e, 0x28, 0xbd, 0x38, 0x1b, 0x0d, 0xf7, 0x4f, 0x8e, 0xda, + 0x95, 0xfd, 0x67, 0x6f, 0x9e, 0xd8, 0x8e, 0x7c, 0x1b, 0x5e, 0xf6, 0x4c, 0x3e, 0xe9, 0xab, 0x04, + 0xb8, 0xb0, 0xfb, 0xd9, 0x7f, 0x3e, 0x1b, 0xbd, 0xbe, 0x7f, 0xf9, 0xbd, 0xcd, 0xfb, 0xf9, 0x7f, + 0xab, 0x97, 0x35, 0x35, 0x39, 0x8f, 0xff, 0x09, 0x00, 0x00, 0xff, 0xff, 0xb4, 0xf4, 0x93, 0xff, + 0xc6, 0x0e, 0x00, 0x00, } diff --git a/gen/pb-go/flyteidl/event/event.pb.validate.go b/gen/pb-go/flyteidl/event/event.pb.validate.go index 7f74c80de..d68ad1a4f 100644 --- a/gen/pb-go/flyteidl/event/event.pb.validate.go +++ b/gen/pb-go/flyteidl/event/event.pb.validate.go @@ -40,6 +40,8 @@ var ( _ = core.CatalogCacheStatus(0) + _ = core.CatalogReservation_Status(0) + _ = core.TaskExecution_Phase(0) ) @@ -443,6 +445,8 @@ func (m *TaskNodeMetadata) Validate() error { } } + // no validation rules for ReservationStatus + if v, ok := interface{}(m.GetDynamicWorkflow()).(interface{ Validate() error }); ok { if err := v.Validate(); err != nil { return TaskNodeMetadataValidationError{ diff --git a/gen/pb-go/flyteidl/service/admin.swagger.json b/gen/pb-go/flyteidl/service/admin.swagger.json index 0eab11e34..6185eb1fc 100644 --- a/gen/pb-go/flyteidl/service/admin.swagger.json +++ b/gen/pb-go/flyteidl/service/admin.swagger.json @@ -2851,6 +2851,18 @@ ], "default": "SINGLE" }, + "CatalogReservationStatus": { + "type": "string", + "enum": [ + "RESERVATION_DISABLED", + "RESERVATION_ACQUIRED", + "RESERVATION_EXISTS", + "RESERVATION_RELEASED", + "RESERVATION_FAILURE" + ], + "default": "RESERVATION_DISABLED", + "description": "Indicates the status of a catalog reservation operation.\n\n - RESERVATION_DISABLED: Used to indicate that reservations are disabled\n - RESERVATION_ACQUIRED: Used to indicate that a reservation was successfully acquired or extended\n - RESERVATION_EXISTS: Used to indicate that an active reservation currently exists\n - RESERVATION_RELEASED: Used to indicate that the reservation has been successfully released\n - RESERVATION_FAILURE: Used to indicate that a reservation operation resulted in failure" + }, "ComparisonExpressionOperator": { "type": "string", "enum": [ @@ -5940,6 +5952,11 @@ "interruptible": { "type": "boolean", "format": "boolean" + }, + "cache_serializable": { + "type": "boolean", + "format": "boolean", + "title": "Indicates whether the system should attempt to execute discoverable instances in serial to avoid duplicate work" } }, "title": "Task Metadata" @@ -6537,6 +6554,10 @@ "$ref": "#/definitions/coreCatalogMetadata", "title": "This structure carries the catalog artifact information" }, + "reservation_status": { + "$ref": "#/definitions/CatalogReservationStatus", + "description": "Captures the status of cache reservations for this execution." + }, "dynamic_workflow": { "$ref": "#/definitions/flyteidleventDynamicWorkflowNodeMetadata", "description": "In the case this task launched a dynamic workflow we capture its structure here." diff --git a/gen/pb-go/flyteidl/service/flyteadmin/README.md b/gen/pb-go/flyteidl/service/flyteadmin/README.md index d02e54589..534448a87 100644 --- a/gen/pb-go/flyteidl/service/flyteadmin/README.md +++ b/gen/pb-go/flyteidl/service/flyteadmin/README.md @@ -181,6 +181,7 @@ Class | Method | HTTP request | Description - [AdminWorkflowList](docs/AdminWorkflowList.md) - [AdminWorkflowSpec](docs/AdminWorkflowSpec.md) - [BlobTypeBlobDimensionality](docs/BlobTypeBlobDimensionality.md) + - [CatalogReservationStatus](docs/CatalogReservationStatus.md) - [ComparisonExpressionOperator](docs/ComparisonExpressionOperator.md) - [ConjunctionExpressionLogicalOperator](docs/ConjunctionExpressionLogicalOperator.md) - [ConnectionSetIdList](docs/ConnectionSetIdList.md) diff --git a/gen/pb-go/flyteidl/service/flyteadmin/api/swagger.yaml b/gen/pb-go/flyteidl/service/flyteadmin/api/swagger.yaml index cef5aeaf9..0b22cabcf 100644 --- a/gen/pb-go/flyteidl/service/flyteadmin/api/swagger.yaml +++ b/gen/pb-go/flyteidl/service/flyteadmin/api/swagger.yaml @@ -2547,6 +2547,22 @@ definitions: - "SINGLE" - "MULTIPART" default: "SINGLE" + CatalogReservationStatus: + type: "string" + description: "Indicates the status of a catalog reservation operation.\n\n - RESERVATION_DISABLED:\ + \ Used to indicate that reservations are disabled\n - RESERVATION_ACQUIRED:\ + \ Used to indicate that a reservation was successfully acquired or extended\n\ + \ - RESERVATION_EXISTS: Used to indicate that an active reservation currently\ + \ exists\n - RESERVATION_RELEASED: Used to indicate that the reservation has\ + \ been successfully released\n - RESERVATION_FAILURE: Used to indicate that\ + \ a reservation operation resulted in failure" + enum: + - "RESERVATION_DISABLED" + - "RESERVATION_ACQUIRED" + - "RESERVATION_EXISTS" + - "RESERVATION_RELEASED" + - "RESERVATION_FAILURE" + default: "RESERVATION_DISABLED" ComparisonExpressionOperator: type: "string" title: "Binary Operator for each expression" @@ -7750,6 +7766,7 @@ definitions: flavor: "flavor" type: {} version: "version" + cache_serializable: true discovery_version: "discovery_version" deprecated_error_message: "deprecated_error_message" interruptible: true @@ -7949,6 +7966,7 @@ definitions: flavor: "flavor" type: {} version: "version" + cache_serializable: true discovery_version: "discovery_version" deprecated_error_message: "deprecated_error_message" interruptible: true @@ -9637,6 +9655,7 @@ definitions: flavor: "flavor" type: {} version: "version" + cache_serializable: true discovery_version: "discovery_version" deprecated_error_message: "deprecated_error_message" interruptible: true @@ -9852,6 +9871,7 @@ definitions: flavor: "flavor" type: {} version: "version" + cache_serializable: true discovery_version: "discovery_version" deprecated_error_message: "deprecated_error_message" interruptible: true @@ -10379,6 +10399,7 @@ definitions: flavor: "flavor" type: {} version: "version" + cache_serializable: true discovery_version: "discovery_version" deprecated_error_message: "deprecated_error_message" interruptible: true @@ -10587,6 +10608,7 @@ definitions: flavor: "flavor" type: {} version: "version" + cache_serializable: true discovery_version: "discovery_version" deprecated_error_message: "deprecated_error_message" interruptible: true @@ -12635,6 +12657,7 @@ definitions: flavor: "flavor" type: {} version: "version" + cache_serializable: true discovery_version: "discovery_version" deprecated_error_message: "deprecated_error_message" interruptible: true @@ -12834,6 +12857,7 @@ definitions: flavor: "flavor" type: {} version: "version" + cache_serializable: true discovery_version: "discovery_version" deprecated_error_message: "deprecated_error_message" interruptible: true @@ -15806,6 +15830,7 @@ definitions: flavor: "flavor" type: {} version: "version" + cache_serializable: true discovery_version: "discovery_version" deprecated_error_message: "deprecated_error_message" interruptible: true @@ -16005,6 +16030,7 @@ definitions: flavor: "flavor" type: {} version: "version" + cache_serializable: true discovery_version: "discovery_version" deprecated_error_message: "deprecated_error_message" interruptible: true @@ -18913,6 +18939,7 @@ definitions: flavor: "flavor" type: {} version: "version" + cache_serializable: true discovery_version: "discovery_version" deprecated_error_message: "deprecated_error_message" interruptible: true @@ -19112,6 +19139,7 @@ definitions: flavor: "flavor" type: {} version: "version" + cache_serializable: true discovery_version: "discovery_version" deprecated_error_message: "deprecated_error_message" interruptible: true @@ -21933,6 +21961,7 @@ definitions: flavor: "flavor" type: {} version: "version" + cache_serializable: true discovery_version: "discovery_version" deprecated_error_message: "deprecated_error_message" interruptible: true @@ -22132,6 +22161,7 @@ definitions: flavor: "flavor" type: {} version: "version" + cache_serializable: true discovery_version: "discovery_version" deprecated_error_message: "deprecated_error_message" interruptible: true @@ -23672,6 +23702,7 @@ definitions: flavor: "flavor" type: {} version: "version" + cache_serializable: true discovery_version: "discovery_version" deprecated_error_message: "deprecated_error_message" interruptible: true @@ -26522,6 +26553,7 @@ definitions: flavor: "flavor" type: {} version: "version" + cache_serializable: true discovery_version: "discovery_version" deprecated_error_message: "deprecated_error_message" interruptible: true @@ -26721,6 +26753,7 @@ definitions: flavor: "flavor" type: {} version: "version" + cache_serializable: true discovery_version: "discovery_version" deprecated_error_message: "deprecated_error_message" interruptible: true @@ -29417,6 +29450,11 @@ definitions: interruptible: type: "boolean" format: "boolean" + cache_serializable: + type: "boolean" + format: "boolean" + title: "Indicates whether the system should attempt to execute discoverable\ + \ instances in serial to avoid duplicate work" title: "Task Metadata" example: retries: @@ -29426,6 +29464,7 @@ definitions: flavor: "flavor" type: {} version: "version" + cache_serializable: true discovery_version: "discovery_version" deprecated_error_message: "deprecated_error_message" interruptible: true @@ -29579,6 +29618,7 @@ definitions: flavor: "flavor" type: {} version: "version" + cache_serializable: true discovery_version: "discovery_version" deprecated_error_message: "deprecated_error_message" interruptible: true @@ -32906,6 +32946,7 @@ definitions: flavor: "flavor" type: {} version: "version" + cache_serializable: true discovery_version: "discovery_version" deprecated_error_message: "deprecated_error_message" interruptible: true @@ -33105,6 +33146,7 @@ definitions: flavor: "flavor" type: {} version: "version" + cache_serializable: true discovery_version: "discovery_version" deprecated_error_message: "deprecated_error_message" interruptible: true @@ -34379,6 +34421,9 @@ definitions: catalog_key: title: "This structure carries the catalog artifact information" $ref: "#/definitions/coreCatalogMetadata" + reservation_status: + description: "Captures the status of cache reservations for this execution." + $ref: "#/definitions/CatalogReservationStatus" dynamic_workflow: description: "In the case this task launched a dynamic workflow we capture\ \ its structure here." diff --git a/gen/pb-go/flyteidl/service/flyteadmin/model_catalog_reservation_status.go b/gen/pb-go/flyteidl/service/flyteadmin/model_catalog_reservation_status.go new file mode 100644 index 000000000..42b34515d --- /dev/null +++ b/gen/pb-go/flyteidl/service/flyteadmin/model_catalog_reservation_status.go @@ -0,0 +1,21 @@ +/* + * 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 +// CatalogReservationStatus : Indicates the status of a catalog reservation operation. - RESERVATION_DISABLED: Used to indicate that reservations are disabled - RESERVATION_ACQUIRED: Used to indicate that a reservation was successfully acquired or extended - RESERVATION_EXISTS: Used to indicate that an active reservation currently exists - RESERVATION_RELEASED: Used to indicate that the reservation has been successfully released - RESERVATION_FAILURE: Used to indicate that a reservation operation resulted in failure +type CatalogReservationStatus string + +// List of CatalogReservationStatus +const ( + CatalogReservationStatusDISABLED CatalogReservationStatus = "RESERVATION_DISABLED" + CatalogReservationStatusACQUIRED CatalogReservationStatus = "RESERVATION_ACQUIRED" + CatalogReservationStatusEXISTS CatalogReservationStatus = "RESERVATION_EXISTS" + CatalogReservationStatusRELEASED CatalogReservationStatus = "RESERVATION_RELEASED" + CatalogReservationStatusFAILURE CatalogReservationStatus = "RESERVATION_FAILURE" +) diff --git a/gen/pb-go/flyteidl/service/flyteadmin/model_core_task_metadata.go b/gen/pb-go/flyteidl/service/flyteadmin/model_core_task_metadata.go index bc147f098..7f2412eed 100644 --- a/gen/pb-go/flyteidl/service/flyteadmin/model_core_task_metadata.go +++ b/gen/pb-go/flyteidl/service/flyteadmin/model_core_task_metadata.go @@ -23,4 +23,5 @@ type CoreTaskMetadata struct { // If set, this indicates that this task is deprecated. This will enable owners of tasks to notify consumers of the ending of support for a given task. DeprecatedErrorMessage string `json:"deprecated_error_message,omitempty"` Interruptible bool `json:"interruptible,omitempty"` + CacheSerializable bool `json:"cache_serializable,omitempty"` } diff --git a/gen/pb-go/flyteidl/service/flyteadmin/model_flyteidlevent_task_node_metadata.go b/gen/pb-go/flyteidl/service/flyteadmin/model_flyteidlevent_task_node_metadata.go index 3592f3647..525c7d409 100644 --- a/gen/pb-go/flyteidl/service/flyteadmin/model_flyteidlevent_task_node_metadata.go +++ b/gen/pb-go/flyteidl/service/flyteadmin/model_flyteidlevent_task_node_metadata.go @@ -13,6 +13,8 @@ type FlyteidleventTaskNodeMetadata struct { // Captures the status of caching for this execution. CacheStatus *CoreCatalogCacheStatus `json:"cache_status,omitempty"` CatalogKey *CoreCatalogMetadata `json:"catalog_key,omitempty"` + // Captures the status of cache reservations for this execution. + ReservationStatus *CatalogReservationStatus `json:"reservation_status,omitempty"` // In the case this task launched a dynamic workflow we capture its structure here. DynamicWorkflow *FlyteidleventDynamicWorkflowNodeMetadata `json:"dynamic_workflow,omitempty"` } diff --git a/gen/pb-go/flyteidl/service/openapi.go b/gen/pb-go/flyteidl/service/openapi.go index c2607cdf0..4ced03ba2 100644 --- a/gen/pb-go/flyteidl/service/openapi.go +++ b/gen/pb-go/flyteidl/service/openapi.go @@ -78,7 +78,7 @@ func (fi bindataFileInfo) Sys() interface{} { return nil } -var _adminSwaggerJson = []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xec\xfd\x79\x73\x23\x37\x96\x2f\x0c\xff\x3f\x9f\x02\xb7\xfa\x46\xd8\xee\xd1\x62\xbb\x67\xfa\xed\xd1\xc4\x8d\xf7\xa1\x25\x56\x99\xd7\x2a\x49\xad\xc5\x35\x7e\x86\x13\x34\x98\x09\x92\x68\x65\x02\x34\x80\x94\x8a\xdd\xd1\xdf\xfd\x09\x1c\x2c\x09\xe4\x42\x26\x17\x6d\x65\xce\x44\xb8\x4b\xcc\x4c\xac\x07\x07\x67\xfd\x9d\x7f\xfc\x0b\x42\xef\xe4\x23\x9e\x4e\x89\x78\x77\x82\xde\x7d\x7f\xf4\xed\xbb\x03\xfd\x1b\x65\x13\xfe\xee\x04\xe9\xe7\x08\xbd\x53\x54\x65\x44\x3f\x9f\x64\x0b\x45\x68\x9a\x1d\x4b\x22\x1e\x68\x42\x8e\x71\x9a\x53\x76\x34\x17\x5c\x71\xf8\x10\xa1\x77\x0f\x44\x48\xca\x99\x7e\xdd\xfe\x13\x31\xae\x90\x24\xea\xdd\xbf\x20\xf4\x4f\x68\x5e\x26\x33\x92\x13\xf9\xee\x04\xfd\xb7\xf9\x68\xa6\xd4\xdc\x35\xa0\xff\x2d\xf5\xbb\xff\x03\xef\x26\x9c\xc9\x22\x7a\x19\xcf\xe7\x19\x4d\xb0\xa2\x9c\x1d\xff\x4d\x72\x56\xbe\x3b\x17\x3c\x2d\x92\x8e\xef\x62\x35\x93\xe5\x1c\x8f\xf1\x9c\x1e\x3f\x7c\x77\x8c\x13\x45\x1f\xc8\x28\xc3\x05\x4b\x66\xa3\x79\x86\x99\x3c\xfe\x07\x4d\xf5\x1c\xff\x46\x12\xf5\x4f\xf8\x23\xe5\x39\xa6\xcc\xfc\x9b\xe1\x9c\xfc\xd3\xb7\x83\xd0\xbb\x29\x51\xc1\x9f\x7a\xb6\x45\x9e\x63\xb1\xd0\x2b\xf2\x9e\xa8\x64\x86\xd4\x8c\x20\xd3\x0f\x72\x4b\xc4\x27\x08\xa3\x13\x41\x26\x27\xbf\x0a\x32\x19\xb9\x85\x3e\x32\x0b\x7c\x0e\xa3\xb9\xca\x30\xfb\xf5\xc8\x2e\x13\xb4\x9c\x12\x99\x08\x3a\x57\x76\xbd\xaf\x89\x12\x94\x3c\x90\xb0\x03\x33\x11\xa4\x27\xe2\x3b\x93\x73\x92\xd0\x09\x25\x29\x1a\x2f\x10\x65\xf3\x42\x21\x41\x7e\x2b\x88\x54\x68\x42\x33\x45\x84\x8c\x7a\xe1\x73\x22\x60\x05\x07\xa9\xee\xe5\x03\x51\x3d\x68\xbb\x1c\x55\xf8\xb6\x20\x72\xce\x99\x24\x32\x5a\x04\x84\xde\x7d\xff\xed\xb7\x95\x9f\xea\x33\xe8\x21\x59\x24\x09\x91\x72\x52\x64\xc8\xb5\x14\x0e\xc6\x2c\xa8\x26\x1f\x5c\x6b\x0c\xa1\x77\xff\x5b\x90\x89\x6e\xe7\x0f\xc7\x29\x99\x50\x46\x75\xbb\xd2\x50\x69\x30\xda\xe8\xab\x7f\xfe\x4b\xd3\xbf\xff\x19\xcc\x68\x8e\x05\xce\x89\x5e\x16\x4f\x57\xe6\xff\x2a\x73\xd1\x94\xa0\x3b\x2f\xa9\xa5\x3a\xf0\xca\x6c\x2f\x70\x4e\xf4\xce\xeb\xed\xb2\x5f\xc0\xbf\x05\x91\xbc\x10\x09\x41\x63\x92\x71\x36\x95\x48\xf1\xda\x1a\x50\x68\x41\x13\x71\xf5\x89\xde\x4a\x2a\x88\xde\x2b\x25\x0a\x52\x79\xaa\x16\x73\x18\xa4\x54\x82\xb2\x69\xb8\x14\xff\x3c\xe8\x34\x35\x43\xfb\x6b\xcc\xcc\x7c\xd0\x3a\xb1\x21\xeb\xb9\x57\x12\xcc\xd0\x98\x20\x7d\xe2\x69\x4a\x04\x49\x11\x96\x08\x23\x59\x8c\x25\x51\xe8\x91\xaa\x19\x65\xfa\x6f\x43\xbe\x89\x5b\xb3\xd7\xb3\x36\xf0\xcf\xe5\x2b\x73\x27\x89\xd0\x03\x7f\xa0\x29\x49\xd1\x03\xce\x0a\x82\x26\x5c\x44\xcb\x73\x34\x64\xb7\x33\xbd\x0e\xf9\x98\x32\x38\x79\x7a\x2d\x1d\x85\xfc\xab\x5b\xae\x7f\x45\xba\x3f\x54\x30\xfa\x5b\x41\xb2\x05\xa2\x29\x61\x4a\x9f\x6b\x59\x6d\xed\x5f\x39\xf4\x8f\x33\x74\x88\xf4\x3a\x13\xa1\x60\xbd\x39\x53\xe4\xb3\x92\xe8\x10\x65\xf4\x9e\xa0\xaf\xce\xa9\x54\xa8\x77\x35\xf8\xea\x00\x7d\x75\x5e\x32\x0e\xf9\xd5\x33\xac\xb0\xff\xf7\xff\x04\x47\x4f\xe1\x69\xf5\xd0\xbd\xeb\xe9\xd3\x7c\x63\x2e\xa0\xb2\x85\xff\xf9\x97\xb0\x1d\xbb\x5f\xcb\xb9\x7a\xc9\xd2\x2d\x3f\xef\xca\xc5\x61\x99\x62\x06\x2e\xf5\x0e\x6d\xcb\xbf\x6b\xb7\x43\x03\xf3\x96\x5b\x72\x6f\x3d\xf6\x2a\xfb\x96\x6f\x8b\x7f\xeb\x29\x3c\x35\x0f\xdf\x86\x81\x63\x05\x27\x0b\x53\x66\x0e\xa2\x3f\x97\x42\xea\xb3\xe8\x4e\xc8\x2b\x61\x5b\xdb\xf0\xf3\x60\x66\x01\x4b\x77\x9c\x3a\x58\x95\x57\x38\xef\x8c\xe6\x74\xd5\xfe\x0e\x58\xaa\x85\x47\xcb\x50\x59\x91\x8f\x89\xd0\xcb\xe0\x58\x2b\xcc\x76\xac\x59\xad\x2a\x04\x23\x69\x87\x69\xfe\x56\x10\xb1\x58\x32\xcf\x09\xce\x64\xdb\x44\x29\x53\x44\x4b\xea\x95\xc7\x13\x2e\x72\xac\xec\x0b\x7f\xfe\xb7\x75\x17\x42\xf1\x7b\xb2\x6a\xff\x07\x66\x37\x13\x2c\x81\x0c\xf2\x22\x53\x74\x9e\x11\x34\xc7\x53\x22\xed\x8a\x14\x99\x92\x07\xf0\x9a\xd6\x0e\x88\x38\xf4\xb7\x1c\xf4\xe0\x6e\xf7\x42\xc2\x2f\x68\xe2\x99\x1d\x23\x9f\x15\xb4\x34\x64\x70\xbf\xc3\x12\x85\xb7\xd6\x13\x2c\xe5\x66\x34\x23\xb9\x50\xa3\xf1\xe2\xe8\x9e\xd4\xfa\x6d\xa5\x1c\xcc\x10\x56\x4a\xd0\x71\xa1\x88\x9e\xb7\x6e\xc3\xdd\xcf\xc0\x1e\x8d\x10\xd0\x85\x35\xbc\xdc\x84\x53\x2a\x48\x02\x73\x5b\xe7\xc0\xf8\xaf\xf4\xbc\xb5\x26\xb6\x30\xb3\xbf\x27\x0b\x90\x79\x1a\x56\xc0\x6f\xf9\x90\x0d\x19\x3a\x44\x67\xfd\x9b\xd3\xfe\xc5\xd9\xe0\xe2\xc3\x09\xfa\x61\x81\x52\x32\xc1\x45\xa6\x0e\xd0\x84\x92\x2c\x95\x08\x0b\x02\x4d\x92\x54\xcb\x35\x7a\x30\x84\xa5\x94\x4d\x11\x17\x29\x11\x4f\xb7\x8c\x95\xa7\x84\x15\x79\xe5\x5e\x81\xdf\xcb\xd1\x57\xbe\xd0\x62\x8c\x7f\x14\x3d\xf9\x9f\xda\x02\xc3\x8c\x75\xdf\x41\x6b\xcf\x26\x38\x25\x33\x9a\xa5\x82\xb0\x63\x85\xe5\xfd\x88\x7c\x26\x49\x61\xee\xe4\x7f\xc4\x3f\x8c\xb4\xf4\xcb\x53\x12\xff\x12\xfd\x51\x8a\x5b\x6b\x7f\xea\xf5\xed\xb5\xbf\x04\xed\xbc\xdb\x77\xf0\x0b\x4d\x1b\xdf\x86\x5f\x56\xcc\xc1\xbd\xb3\x64\xb0\xee\x95\xd6\x51\xb9\x17\xac\xb0\xd7\xf8\x8e\x20\x4a\x2c\x46\x58\x29\x92\xcf\xd5\x9a\x96\x07\x8c\x32\x2d\xbb\x2e\x93\x55\x2f\x78\x4a\xfa\xae\xbf\x5f\xad\x08\x6a\x84\x4d\xc3\xb5\x26\x44\x10\x96\x90\xf6\x16\x6e\xb1\xbc\x2f\x5b\x58\x2d\xf0\x02\x8d\x21\xbd\xfc\xa8\x24\xb0\x5a\xc7\xa5\xd8\xab\x97\xa4\x7c\x73\x95\xb0\x1b\xcd\x47\xbe\xe7\x42\x0f\xef\x2d\x08\xbc\xd1\xc0\x9f\x43\xe6\xdd\xf4\x44\x7f\x71\x56\x8e\x0d\xf9\xd3\xde\x26\xb2\xfd\x4a\x76\xb5\xa0\x70\x81\xe4\x42\x2a\x92\xaf\xb4\xa5\xbc\x9d\x85\xb0\x17\xd0\x6b\x1d\x70\xe5\x0e\xfc\x1d\x9c\xfa\xf8\x46\xdf\x1f\xef\x35\x96\x6c\x57\x96\xd0\xd7\x3e\x4f\xe7\xed\x5a\x3e\xd5\x1b\xb7\x7d\x81\xbb\xe7\x4d\x4c\x33\x92\x35\x77\x3d\xc8\x27\x32\x67\xb4\xee\x95\x5b\xed\x11\x0c\x60\x85\x22\x1b\xdb\xd2\xfd\xf9\xd3\x9f\x86\x16\x20\x63\xee\x53\x33\x2a\x03\x63\x18\x4a\xb8\x30\xb2\x60\x6a\xcf\xbb\xd1\x65\x7b\xb7\xbd\x9b\xfe\xed\x09\xea\xa1\x14\x2b\xac\x0f\xb8\x20\x73\x41\x24\x61\x0a\xec\x04\xfa\x7b\xb5\x40\x39\x4f\x49\x66\x34\xda\xf7\x5a\xb2\x46\x67\x58\xe1\x53\xac\x70\xc6\xa7\x47\xa8\x07\x7f\xea\x8f\xa9\x44\x38\x93\x1c\x61\x47\x56\x24\x75\x4d\x60\x96\x3a\xd6\x82\x51\xc2\xf3\x39\xcd\xbc\x1f\xc1\x1b\x6f\x28\x4b\xe9\x03\x4d\x0b\x9c\x21\x3e\xd6\x5c\x45\x6b\xe0\xfd\x07\xc2\x54\x81\xb3\x6c\x81\x70\x96\x21\xdb\xad\x7b\x01\xc9\x19\x2f\xb2\x54\xb7\xeb\x46\x29\x69\x4e\x33\x2c\xb4\x8a\x6f\x46\x7b\x69\xdb\x42\xb7\x33\xe2\xc7\x0a\xe3\xd2\xab\x99\xe3\x7b\x22\x11\x55\x68\xce\xa5\xa4\xe3\xac\x3c\xf3\x77\x03\x04\xe3\x3e\x3d\x1f\x80\xbd\x20\x51\x88\x1b\x1e\xea\x3a\xb7\xf6\x21\xd7\x63\x8e\x19\x23\xd0\x31\x57\x33\x22\x6c\xf7\xf6\xe5\x97\x56\xfd\xef\x2e\x6e\xae\xfa\xa7\x83\xf7\x83\xfe\x59\x5d\xf7\xbf\xed\xdd\xfc\x54\xff\xf5\xd3\xe5\xf5\x4f\xef\xcf\x2f\x3f\xd5\x9f\x9c\xf7\xee\x2e\x4e\x7f\x1c\x5d\x9d\xf7\x2e\xea\x0f\x2d\x59\x75\x36\x23\x84\x23\x5b\xf3\x6c\xed\x6d\xa6\x4f\x65\x33\x3d\xf8\x72\x8d\xa6\xd6\x29\xd5\xdd\x60\xea\x6d\x14\xf6\x4b\x34\xc7\x52\x1a\xc9\xc8\x8c\xe0\x68\xc8\x3e\x72\xa1\x19\xd8\x84\x6b\x1e\xa1\xa5\x27\x25\x8a\x44\x51\x36\xf5\x1f\x9d\xa0\x61\xf1\xed\xb7\x7f\x4a\xce\x29\xbb\x87\x7f\x91\xd7\xb8\x38\x7b\x8b\xf2\xde\xa2\xfc\xfb\xb2\x28\x6b\xd1\xe7\x38\x34\x24\xef\x36\xb8\x4a\x0b\x17\xe0\x13\xd7\xa2\x04\x2f\x94\xfe\xa7\xee\x12\xc8\x63\x49\x88\x55\x37\x83\xa5\x8f\xb0\x6a\xe9\x43\xf0\x1c\x04\xb9\xcf\x54\x02\x33\x7a\xe4\xe2\x7e\x92\xf1\xc7\x6e\xe6\xca\x0f\x44\xf9\x61\x68\xc1\xe9\x2d\x58\x29\x3f\xd9\x19\xfa\x81\x7f\x20\x4a\x8f\xfd\xda\xf6\xb2\x0f\xb6\xda\x07\x5b\xbd\x6c\xb0\xd5\xab\x32\x15\x3e\x3d\x6b\x8d\xed\x8a\x86\xbf\xb6\xf8\xe1\x5a\xdd\x6c\x2d\x5e\xb4\xc0\x49\xf6\x2c\x3c\x39\x76\x45\xed\x92\x2f\xc7\xce\xa6\x15\x3c\x39\x1a\xc6\x5b\xe1\xcb\xd1\xa0\x9f\x9f\x27\xff\x2e\xfc\x44\x7b\x37\xd0\x86\x0b\xf5\x26\x59\x77\xc7\x5b\xe9\xd9\x9c\x38\x4f\x7f\x95\xd4\x62\x3e\xd6\x09\xf2\x58\x23\xaa\xa3\x73\x18\xc7\x8a\xb8\x8d\xc6\x40\x8d\xa6\xc8\x8c\x7a\x28\x46\x63\xec\xc5\x76\xc1\x16\x9b\xde\x7a\xdd\xc3\x27\xd6\xbd\xf5\xba\x07\x4e\x7c\x20\x2a\x1a\xc6\x5b\xb9\xf5\xa2\x41\x3f\xff\xad\xf7\x3b\x8d\x97\xd8\x07\x48\x3c\xe1\xd2\x7d\xe9\x77\xe5\xeb\x0d\x81\xf8\x1d\xc4\x3c\xec\x83\x1c\xd6\x5a\xa3\x2f\x2b\xaa\xe1\x4b\x0d\x63\x78\x9b\x71\x0b\xfb\x40\x85\x7d\xa0\xc2\x4b\x78\x94\xde\x5e\xa0\xc2\x93\x2a\xbe\x44\x93\x95\x04\x2b\x6a\xa8\xdc\xbc\x9b\x73\xd9\xae\xef\x85\xce\xeb\x06\xbd\x0e\xda\x8c\xad\x99\x40\xbd\xbf\xa2\x19\x96\x88\x27\x49\x21\x2a\x2e\xda\xea\x29\x3f\x15\x04\x2b\x7d\x44\x62\xc3\x25\x82\x96\x91\x20\x09\x17\xe0\xa4\xc4\x68\x3e\xc3\x92\x20\x25\x30\x93\x74\x95\x96\x67\x5a\x85\x71\xe9\x76\xde\x82\x82\x57\x5f\xc4\xe7\x52\xef\xc6\x3c\xad\x1d\x48\x73\x56\x9b\x9e\x2c\xbf\x49\x76\x36\x75\x48\xfb\xed\x32\xf3\x27\x3c\x2a\xfa\xd6\xda\xf1\x51\x89\xd4\xf8\x4d\x8f\x4a\x6c\xed\xd8\xc9\x51\x81\x71\xbd\x95\xa3\x52\x5f\xc4\xdf\xcd\x51\x69\x9a\xfa\x6b\x38\x2a\x2e\x1c\x60\xc7\xc7\xa5\xe6\x83\xdf\xf4\xc8\xd4\xc3\x15\x76\x72\x6c\xfc\xf8\xde\xca\xd1\x69\x5e\xd0\xdf\xcd\xf1\x69\x9b\xfe\xcb\x1e\x21\xef\x87\xe8\x7c\x78\x6e\x05\x9d\x4e\x89\x30\x9a\x51\xa2\x49\x71\x35\xd4\x52\x69\x79\xdf\xec\xc0\xac\x3e\x0d\xbe\x87\xb7\x70\x12\xfc\x60\xcd\xd8\x7f\x37\x47\xa0\x36\xef\x57\x42\xfb\xc7\x9a\x13\x3f\x00\x5a\x5b\xb7\x33\x70\x4d\x80\xf0\xe1\x02\x99\x0b\xf2\x40\x79\x21\xb3\xc5\xa1\x28\x58\x13\xb7\x07\x23\xc1\x23\xcd\x32\xc4\x59\xb6\x40\x52\x61\xa1\xdc\x63\x36\x35\x1e\x25\x7d\x98\x32\x2c\x15\xba\x67\xfc\x91\xa1\x09\xa6\x59\x21\x08\x9a\x73\xca\xd4\xd1\x90\x0d\x18\xba\x36\x63\x04\xcd\xfb\x00\x15\x52\x1f\xc1\x04\x33\xc6\x15\x4a\x66\x98\x4d\x09\xc2\xcc\x41\xd7\x94\x94\x81\xb8\x40\xc5\x3c\xd5\x07\x4b\x77\x51\xb1\x31\x95\x07\x6c\xc8\x6e\xc1\x8a\x21\x11\xf9\xac\x04\xc9\x49\xb6\xd0\x7d\x68\xda\x57\x1c\xd9\xf5\x31\x43\xb5\x06\x71\x22\x04\x17\x12\x74\xf6\xf1\xe2\xef\x98\x29\xca\x08\x02\x35\x53\x1a\xe0\xa3\x43\x74\xce\x25\xc4\x64\xff\xf4\x17\x89\x92\xac\x90\x8a\x88\x03\x34\x2e\xa6\x12\x51\x86\xe6\x19\x56\x13\x2e\x72\x3d\x42\xca\xa4\xc2\x63\x9a\x51\xb5\x38\x40\x39\x4e\x66\xa6\x2d\x58\x03\x79\x30\x64\x29\x7f\x64\x52\x09\x82\x7d\xef\xee\x21\xfa\x3a\x7c\x66\x08\x40\x7e\x73\x00\x86\x7b\x9a\xcf\xb3\x45\x38\xfc\x20\x11\x1a\xf6\x44\x37\x42\x52\x34\x26\x09\x2e\xa4\x35\xec\x28\xb1\x40\xe4\xf3\x0c\x17\x12\xf6\x4e\x4f\xcf\x5a\x3d\x12\x9e\xcf\x33\xa2\x08\xa2\x13\xa4\x04\x25\x29\xc2\x53\x4c\xf5\xd2\xdd\x90\x25\x89\xdb\x9e\xe8\xed\x06\x5a\xaa\xff\x15\x2c\x1f\x39\x17\x04\xa5\x44\x61\x9a\xc9\xe5\x4e\xc9\x67\x25\x38\xf4\xe4\xf4\x86\x5e\x2f\xb9\xa1\x57\x4d\x6d\x4b\x6e\x42\xbb\x63\xfb\xab\xf0\x2d\x5d\x85\x31\x57\x78\x15\x77\xa1\x01\x89\xd8\x81\x40\xc8\xac\x55\x3c\xc1\xd9\x96\xb2\xe1\xb5\x1d\xd4\xda\xd2\xa1\xfb\x70\x7f\x28\xde\xd6\xa1\x30\xbb\xf6\x7a\x4e\x45\x5b\x42\xc5\xce\x91\x62\xd6\xc1\x78\x59\x92\x11\x21\x51\x8e\x95\xbe\xd8\xa6\xf6\x8a\xee\x88\x62\x58\x82\xba\xbc\xa9\x83\xf2\x1c\x48\x2e\x5f\x76\xc4\xc2\x3e\x52\xe1\x77\x88\x40\xfb\x6a\x12\x18\xf7\x39\xd0\x4f\x94\x03\x4d\xe5\x3e\x07\x7a\x9f\x03\xdd\x75\x81\xf6\x39\xd0\xfb\x1c\xe8\x37\x9b\x03\xfd\xa4\xe9\xcf\xbb\x4b\x72\xde\x4d\x26\xf3\x9b\x92\xce\xf7\x92\xf9\x5e\x32\xdf\xa7\x2b\xfb\xa9\xed\x8a\x0b\xba\xaf\xdf\xa5\x24\x23\x8a\xb4\x1b\xe8\x88\xc8\xb5\xc2\x61\x6e\x78\xca\xb4\x28\x38\x15\x44\xca\x6d\x79\x9a\x6f\x38\x2c\xaf\xd0\xe0\x8f\x28\x51\x66\x3d\x59\x82\x5d\x67\x19\xb3\xf3\x6d\xbf\x4d\x96\xe7\x87\xbf\x87\x6c\xd8\xf3\xc0\x3d\x0f\xdc\x64\x6a\xaf\xc7\x1c\x1d\x1c\xe6\x17\xb5\x47\x07\x95\x76\x46\x34\xdd\xa6\xd8\x4e\x77\xe0\x72\x9c\x93\xb4\x0f\x69\x05\x3e\x29\x42\xfc\xaa\x3f\x09\xcb\xe8\xb8\x04\x82\xee\x16\xeb\xf0\xeb\x72\xe1\xa3\xda\x27\x9b\x19\xb0\xcb\x8a\x36\x83\xf4\x4d\xd8\xb0\x1b\x57\xf8\x0b\xa9\xc6\xf3\x3a\x18\xc9\xb3\x17\xe3\x79\x1d\xd3\xde\xdb\x54\xf7\xb5\x78\xf6\x56\xc3\x8e\x13\xde\x5b\x0d\x5f\xaf\xd5\xf0\xa5\x5c\x01\xcf\x7c\x3c\x9f\x4b\x74\xec\x1e\xea\xed\x22\xb2\x59\x8a\x8a\x79\xc6\x71\xda\xb1\x9c\x6e\x20\xd1\x75\x88\xf7\x66\x29\x12\x64\x4a\xa5\x22\x42\xef\x4b\xa3\x60\xb8\x3a\x00\xfc\xad\xd6\xcd\xed\x1c\xe2\x13\x76\xfb\xee\xdf\x3a\x0c\xff\xda\xde\xd9\xc0\x89\xc6\x38\xf5\x05\x2d\x41\x7c\xcb\xf1\x02\xcd\xf0\x03\x71\x61\x89\x0f\x38\xa3\x29\xae\xae\x75\x65\x86\xcb\x06\xf4\x1f\xeb\x0d\x08\xc7\xc3\xf1\x15\x90\x64\x1c\x36\x66\x33\x9a\xe1\x9d\x99\x56\xcc\x33\x41\x70\xba\x40\x63\x42\x98\x27\x9b\x86\xfb\xa4\x65\xcc\x3b\x11\x9c\x5f\x5c\x31\xad\x53\xcf\x6b\x51\x4b\x9f\x31\x50\xaa\x99\xdf\x6c\xaf\x83\x6e\xaf\x78\xca\xef\xdf\x16\x0b\xda\x07\x4f\xed\xcd\x93\x2f\x6f\x9e\xdc\x07\x4f\xed\x15\xfd\x57\xa6\xe8\xef\x83\xa7\xf6\xc1\x53\x7b\x33\xc8\xf2\x69\xef\xcd\x20\x5f\x44\xf0\x54\x27\x19\x7e\xc3\xf0\xa9\x37\x2e\xcd\xef\x85\x79\xf7\xde\x5e\x98\xdf\x0b\xf3\x5f\xa8\x30\xff\x3a\x56\x78\x2f\xc9\xef\x25\xf9\xbd\x24\xbf\x97\xe4\xf7\x92\xfc\xce\x97\x71\x2f\xc9\x37\x4b\xf2\xf0\x2f\x57\x9d\x61\x5d\xb1\x7e\x4d\x71\x7e\xed\xfc\x88\xf5\x9d\x81\x1f\x88\x7a\xab\x9e\xc0\xbd\xd4\xbe\x97\xda\x5f\xb7\xd4\xfe\x6a\x26\xf4\xe5\x21\xab\xef\xb1\xc9\xf7\xd8\xe4\x7b\x6c\xf2\x27\xc6\x26\x77\x5f\xbf\x9b\x17\xed\xb2\xcd\x1d\xa0\x97\xd9\xc3\xa5\xb0\x2a\xa4\x01\xb7\x2c\x83\x4d\x3a\x89\x3d\xcb\x64\x9d\xbb\x12\x20\x2d\xe8\x61\xb5\xdc\x83\x7a\x0a\xe5\x5c\xeb\x6e\x8c\x44\xef\x38\x06\x67\x02\x6b\xa6\xf4\x81\x30\xe4\x92\x03\x0e\xec\x35\x76\x00\xc6\x94\x7f\xfa\xc3\x67\xb2\xb5\xb0\x42\x18\x29\x9a\x93\x23\x34\x98\x18\x6e\x91\xe8\xd3\x25\x89\x92\x95\x68\x2c\x43\xf9\xf0\x11\x4b\xcb\xb1\xba\xbe\x69\x19\x9c\x63\x5e\x3b\x70\xcc\xb6\xc8\x94\x61\xbd\xae\x71\x80\xa6\x1b\x7b\x0e\x05\x07\x2d\x27\x22\x73\x5f\x46\xdd\xba\x97\x73\x9c\x6a\xc6\x10\x0c\xa1\x4c\x2b\x0b\xdf\x87\x3b\x9d\x4a\x1f\x5e\x14\x7d\x6f\xbe\x06\x7c\x3b\xc0\xa3\x03\x1c\xde\x4e\xc3\x98\x41\xf4\x9b\x16\xf1\xd2\x22\x23\x08\x4b\xc9\x13\x8a\x41\x8d\x31\x32\x00\xa2\xca\x59\x1a\xdc\x4b\xae\xeb\x94\x4a\x3c\xce\x48\x6a\xd7\x98\x94\xd1\x4e\x4b\x47\x4e\x25\x1a\x13\xbd\xc4\x9a\x4d\xc5\xab\x3f\x33\x12\x48\xc3\x68\x82\xa1\x90\xfa\x48\x08\x33\x03\x59\x22\x41\x1b\xe2\x7c\xab\x42\xb4\x19\xfd\x3e\xe9\x6e\x2f\x52\xef\x45\xea\xb5\x26\xf4\x45\x89\xd4\xaf\x28\x42\xd3\x31\xa4\x17\x8d\xd0\x04\x1f\xa8\xe6\xfc\x23\x6f\xd8\x94\x5d\x6d\x3d\xe7\x54\x2a\x89\x92\x42\x2a\x9e\xb7\x4b\x3e\x1f\x5d\x0f\x3d\xdf\xc1\x29\x67\x13\x3a\x2d\xcc\xdd\xf2\xab\x95\x4d\xfc\x89\x2e\xd5\x94\xc5\x9c\x74\x33\x0c\x79\xbb\xf5\xaa\xce\x1a\xf3\x11\x1b\x9c\xbc\x0d\xed\xbc\x89\xdb\xae\x79\xe8\xcf\x75\xe9\xad\xa3\xac\x96\xf6\x71\xab\x69\x6a\xfd\x62\x74\xdd\xbf\xb9\xbc\xbb\x3e\xed\x9f\xa0\xde\x7c\x9e\x51\xe3\xb2\x32\x14\x46\xff\xae\x27\x65\xca\x8c\x78\x12\xb1\x02\x91\x41\xff\x05\x1f\x99\xd6\x07\xd1\x21\x3a\x3d\xbf\xbb\xb9\xed\x5f\xb7\x34\x68\x49\x02\x8a\xb4\x92\x7c\x9e\x81\x7c\x74\x5f\x8c\x89\x60\x44\x4b\xf8\x16\x23\xb8\xf4\x9c\x99\x46\xfb\xff\xd5\x3f\xbd\xbb\x1d\x5c\x5e\x8c\xfe\x7a\xd7\xbf\xeb\x9f\x20\x47\x5b\xba\x59\x3d\x2e\x3d\x8a\x74\xc1\x70\xae\xb5\xee\xb8\x1e\xca\x6f\x05\x29\x40\x1c\xa3\x53\x96\x13\x80\xee\x8e\x5a\x74\x03\x3e\xef\xfd\xd0\x3f\x8f\x5b\x9e\x91\x10\xb8\x18\x65\x78\x4c\x32\xeb\xca\x03\xef\x94\x3e\x3f\x01\xc4\xb3\xf1\xf1\x15\x66\x55\xff\x7a\xd7\x3b\x1f\xdc\xfe\x32\xba\x7c\x3f\xba\xe9\x5f\xff\x3c\x38\xed\x8f\xac\x26\x75\xda\xd3\xfd\x46\x3d\x59\x85\x0b\xfd\x56\xe0\x4c\x6b\xe4\x7c\xe2\xa0\x8c\xd1\xe3\x8c\x30\x54\x30\xa0\x38\xa3\xe6\x83\x56\x12\xe2\x38\x98\x19\x5d\x9d\xdf\x7d\x18\x5c\x8c\x2e\x7f\xee\x5f\x5f\x0f\xce\xfa\x27\xe8\x86\x64\xa0\x08\xbb\x45\x87\x5d\x9c\x67\xc5\x94\x32\x44\xf3\x79\x46\xf4\x6a\x98\xc3\x39\x26\x33\xfc\x40\xb9\x88\xb4\x15\x58\x47\x60\x05\xd0\xbe\x53\x38\x47\xc1\xd2\x5d\x5e\xbc\x1f\x7c\x38\x41\xbd\x34\xf5\x73\x90\xd0\x46\x44\x39\x0e\x7e\xe2\xb0\x06\x3f\x91\x60\x13\x10\x02\x15\x7d\x1f\x88\x10\x34\x25\xf2\xc5\x1d\x0e\xd1\x81\xa8\xab\xd0\x55\x0a\xaf\xbf\x51\x21\xd7\x65\x2f\x44\xd4\x57\x7f\x71\x15\x15\xd5\xbf\xa8\x90\x41\xbb\xe1\xa0\xb6\x8f\x9d\x6d\x02\xf1\xfa\x3c\xdb\x8d\xa9\x99\x5d\x3a\x72\xb6\xa1\xe3\x7f\x44\x4c\xef\x9f\x3b\x8c\x90\x32\x49\x31\x4b\x01\xa6\x82\x0c\xf1\x5f\xed\xd5\xd6\xf1\xc2\x0c\xbe\x6c\xfa\xb0\xee\x3b\x09\x3e\x78\x0b\x37\x61\x38\xdc\x57\x74\xeb\x5d\x87\xb2\x8d\x13\x91\x73\xa2\x30\x54\x10\x57\x1c\x4d\x89\x3a\x42\x97\x0c\x9e\xdd\x62\x79\x7f\x80\x5c\x75\x18\xc4\x05\x2a\x85\xc7\x67\x48\x2a\x7f\x23\x46\xc3\xf5\x15\x9a\xbd\x62\xbe\x57\xcc\x9b\x57\x66\x1f\xa1\xd6\xb2\xc2\xbb\xba\x51\xd7\xb2\xb3\xef\xee\xe2\x0b\xcc\xea\x2e\xd8\xa4\x62\x17\x8d\x6e\xc4\x95\x36\xd0\xb7\x7b\x19\x3e\xaf\x15\x74\xa7\x57\xa3\x29\x1e\xb3\xbf\xf7\xcc\xff\xed\xef\xbd\xfd\xbd\xb7\xbf\xf7\x5e\xc1\x0a\xbf\xb8\x45\xb9\x81\xbb\xbf\xa8\x49\x79\x95\x82\xbc\x31\x34\x5d\xa9\x10\xaf\x03\x4e\xf7\x6b\x17\x0c\xba\x06\x53\x72\x5d\x43\x96\x48\xce\xb0\x30\x55\x59\x13\x9e\xe7\x9c\xc5\xb6\xea\x03\xe4\x1d\xeb\x60\x08\x84\xd9\xad\xb2\x34\x97\xdd\xd0\xb7\x61\x63\x0e\xd6\xe5\x39\x32\x8a\x76\x2a\x42\x98\x50\xfd\xbd\x7e\xfd\x84\x72\xc6\x1e\x3b\x70\xa7\xd8\x81\xaf\x63\xae\x4f\x92\x7d\xb4\x7b\xfb\xfa\xdb\xc8\x38\xda\x83\x04\xee\x73\x6a\xf6\x39\x35\xf0\xfb\x1e\x24\x70\x77\xd4\xfa\xb4\x32\x3d\x4f\xc9\xa8\x52\x46\xc5\xff\x39\xaa\xba\xbc\xa2\x27\xa1\xff\x2b\x7a\x50\x26\x19\x41\xeb\x34\xdd\x65\xe9\x95\x0b\x9e\x92\x2d\xca\xaf\xe8\x11\x75\x2e\xbd\x12\xf5\xf5\xca\x45\x78\xb7\x4c\x46\x94\x8f\x06\xfe\xc4\x82\x7c\x0b\xc5\x7c\x89\xd6\xa8\x06\xfa\xdf\x9b\xa6\x56\x2e\xd4\x97\x5a\xad\xa0\x64\x70\x6f\xc8\x51\xd3\xed\x16\x70\x21\x35\xa3\x96\xbb\xa0\xf9\xb9\xbf\x11\x9a\x1f\x3f\x0d\x8c\x4c\xf7\x0b\xa1\x82\x1e\x13\x5f\x05\x9b\xa2\xc6\x44\xdd\xbf\x0d\x3b\x4f\x38\xe2\xe7\xb0\xf4\x2c\x25\xa6\x2f\xee\x9a\x58\x76\x34\xf6\x97\x45\xc7\xe5\xfa\x52\xaf\x8c\x3d\xda\xcb\x32\xdb\xcb\x1e\x4e\x65\x6f\xfa\x79\x3d\x13\xde\x9b\x7e\xde\xb4\xe9\xc7\x38\xaa\x47\x73\x2c\x08\x53\x0d\x32\x7a\xf5\x3a\x81\xd7\xc3\xbc\x79\x27\x75\x40\x03\x46\x5a\xb4\x17\xb2\xbf\xaa\xbe\x2c\x5b\x90\x15\x0c\x46\x46\xae\x08\xf2\x86\x8e\xff\x51\xfe\x3b\x50\x02\x82\x1f\x1b\x1c\xbe\xcb\x02\xc1\x0c\x86\xbd\xd4\xd7\x77\x61\x63\xc2\x76\x95\x6d\xe4\x84\xc4\x16\x47\x6d\x7b\xfc\x98\x4b\x29\x20\x69\x29\x70\x95\x33\x6c\x88\x2b\xb3\x3d\x1d\x3a\x31\xac\x8c\x9f\x58\x19\x66\x76\x65\x3e\x3d\x83\x2f\xdf\x56\x26\x52\xcb\xd0\x9f\x37\xfc\xac\x4e\x8e\xdd\x4e\xb7\x23\x0e\x6a\x72\x6b\x1e\x67\x14\x3c\x31\x00\x15\x07\xf7\x79\xb0\xe1\x2e\x7f\x1a\x43\x7a\x51\xdb\xf5\xf4\xdc\x02\x64\xed\xcc\x75\x9b\xb8\xa5\xd1\xb7\x3b\xef\x17\x0f\xc6\x59\x41\xf7\x2f\x1a\x98\xb3\x84\x71\x6f\x57\x2e\xf2\xc5\xf8\xb2\xb7\xdd\x3f\x1f\x67\xfe\x40\xd4\x97\xc7\x96\x3f\x10\xf5\x5c\x3c\x79\x53\x46\xbc\x94\x19\x95\x35\x82\xde\x68\x9c\x48\x8d\xff\xbe\xd9\xe9\xae\x13\xaf\xf5\xc9\x4c\xd2\x06\x6b\xf9\x54\xf4\x70\xaa\x8a\x5b\x03\x46\xa4\x03\xee\x53\x86\xf7\x29\xc3\xfb\x94\xe1\x7d\xca\xf0\xeb\x4b\x19\x76\x5f\xbf\x4b\x49\x46\x14\x69\x95\x9b\xce\xe0\xf1\x4b\xc9\x4d\xa6\xf7\x67\x94\x9a\x4c\x87\x5f\x9e\xe0\x64\xe6\xb5\x97\x9d\xf6\xb2\xd3\x2e\xa6\xfb\x5a\xb5\x57\x47\xe5\xaf\x41\x7b\xed\x8c\x4e\x54\x06\x89\xad\x8c\x0d\xb0\xd3\xfe\x75\x65\x50\x40\x80\xf4\xe8\x86\xb3\xca\xf1\x7f\xe5\x86\xfd\x76\x98\x9c\x7c\x6a\x3e\xb6\x8d\x7b\xd3\xad\xfb\x17\xeb\xdd\xdc\xd7\xb2\x68\x5c\xab\xbd\xf3\x75\xc9\xe2\xec\x9d\xaf\x7b\xe7\xeb\xab\x73\xbe\xee\x5c\xa5\x5a\x5a\x91\xfe\xda\x5e\xcd\x4b\xa3\xc2\xdd\x45\x6f\x74\x19\x4d\x0a\x06\x7f\x3b\x25\xf3\x8c\x2f\xc0\xc6\xb2\xd4\xda\xec\x6b\xd1\x37\x04\x47\x55\x2f\x7f\xf7\xf6\x55\x4d\x68\x7f\xed\xf7\xbf\x1b\xf9\x73\xa9\x35\xaf\x45\xec\x2d\xe7\xfd\x2a\x04\xdd\xe3\x7f\x54\x52\x22\x3a\x61\xa6\x04\x49\x0c\xab\x8f\xc1\x90\x35\x3f\x09\x20\xf3\xed\xad\x39\x2e\x54\x10\x6f\x28\xf5\x01\x98\x13\xa1\x16\xc1\x9b\x24\x9f\xab\xc5\x7f\x0e\x19\x2d\x91\xb5\xe9\x94\x71\x61\x78\xa0\xfe\x78\x86\x59\x9a\xe9\xf3\x23\x7d\x3b\x09\x66\x8c\x2b\x10\x4e\x60\x06\x29\x7a\xa0\xd8\x88\x32\xbd\xab\x41\x07\x9f\x7c\xa7\xb3\x18\xb9\xd3\xdf\xd0\x49\x7c\x6e\xcc\xea\x15\xb7\xe8\x87\x8c\x8f\xa1\xca\x42\x11\x9b\x18\x74\x03\x7b\x07\x70\xb4\x73\x2f\xc5\x3c\x14\x96\xf7\xd5\x44\xad\x38\x6c\x7f\xb4\x34\x75\x6b\xc5\xbb\x11\x98\xe1\xf2\x57\x2b\xe9\x5d\xf1\x33\x9b\xf0\x05\x8f\x61\xc8\xd5\x71\xb8\x1f\xc3\x0e\xdd\x6f\x65\xcb\xee\x17\x57\xa5\x0a\x7e\x14\x44\x89\xc5\x08\x2b\xa5\x19\xd2\x2e\x73\xca\x6e\xb1\xbc\xdf\x22\xa7\x2c\xf6\xee\xac\xc8\x29\x8b\xfa\x7a\xe5\x1c\x2b\xca\x29\x8b\x07\xfe\xe4\x1c\xab\x23\x71\x7f\x71\xe9\x03\x5d\x8f\xea\x3e\x95\x60\x83\xa5\xfb\x52\xd3\x0a\x96\xf1\xe2\x57\x33\xc2\xca\x75\xf0\x25\x9e\xdc\xf8\x72\xdb\x1f\xd1\x65\x6b\xf4\xc5\x95\xd3\xa8\xc8\x2c\x2b\xe6\xf6\x46\xca\x6a\x54\xc5\xae\x5d\x8f\xea\x69\xec\xef\xc1\x6e\xec\xeb\xec\xed\xeb\xec\xed\xeb\xec\x3d\x79\x9d\xbd\x6e\x3a\x6b\x67\x85\xb5\xab\xb6\xda\x4d\x55\x6d\xd7\x53\x9f\xc0\xe7\xdc\x5d\x99\xac\xe4\xa3\xc7\x6a\xe4\xa6\xf9\xe8\x51\xf7\x6f\xc2\x39\x1d\x8d\xf8\x39\xf2\xd1\x7f\xa7\x9a\xe5\x5e\xad\x7c\x92\x75\xfb\x52\x75\xca\x57\xae\x50\xee\x33\xe9\xf7\x28\x86\xfb\x50\x93\x1d\x2e\xce\x3e\xd4\x64\x1f\x6a\xf2\xc5\x86\x9a\xb4\xab\x27\x34\xdd\x3a\x4b\x72\x4d\xdc\x72\x6f\x65\x10\xbf\x82\x28\xa5\xc5\xfe\x0e\x48\xe6\x4d\xda\x42\x29\x4b\x47\xc8\xc3\x9b\x6b\x0e\x83\xf4\x4d\xa8\x0c\x8d\xab\xf9\x1c\xaa\xc3\x1e\x04\x7b\xa7\x20\xd8\xaf\x6e\xda\x7b\xa9\x72\x2f\x55\xee\x05\xa7\x8e\x13\xde\x0b\x4e\xaf\x57\x70\x7a\x29\x6d\xe8\x4b\xc2\x43\xd2\x22\x56\x94\x95\xb4\x34\x4e\xd9\x60\x1a\x81\x33\xa3\x98\x67\x1c\xa7\xab\x22\x8e\x7e\x0d\xc4\xb7\x25\x72\x5f\xd0\xae\x28\xe3\x94\x2b\xe2\xdf\x32\xd9\xce\x34\xa0\x7b\x7c\x0b\xa2\x9d\x1e\xa7\x19\x71\x87\xe8\xc8\xb0\xc3\x77\xff\xd6\x61\xe0\xd7\xf6\x4e\x06\x4e\x33\xc6\xa9\x03\x0d\x30\xe2\x59\x8e\x17\x68\x86\x1f\x08\x9a\x60\x9a\x19\xfb\x1c\x4d\x71\x75\x7d\x2b\x73\x5b\x36\xa0\xff\x58\x6f\x40\x38\x1e\x4e\x99\xd1\xa8\xef\x0b\x23\x55\x25\x38\x73\xee\x3e\x78\x67\x86\x25\xc2\x99\x20\x38\x5d\xa0\x31\x21\x2c\xc8\x64\xeb\x3a\xe6\x9d\x08\xc6\x2f\x1e\x9e\x19\xd2\xcd\x8b\x46\x79\x03\xd7\x68\xad\x16\xbd\x73\xc5\xb2\xca\x49\xb6\xd0\x21\xb7\x51\x1c\xe5\xf7\x6f\x85\xb9\x3c\x87\x9a\xf8\x05\x7b\x91\xf6\x9e\xa2\xdf\x67\x4d\xc6\x57\xa3\x7d\xec\x55\xf4\x7d\x92\xf1\xde\xf3\xb3\x37\x60\xec\x0d\x18\x3b\x5f\xc6\xd7\x64\xc0\x78\x41\x19\xdd\xe4\x36\x3d\x49\xb1\x92\xd7\x22\xad\xef\x85\xf5\xbd\xb0\xbe\x17\xd6\xbf\x58\x61\xfd\x75\xac\xf0\x5e\x52\xdf\x4b\xea\x7b\x49\x7d\x2f\xa9\xef\x25\xf5\x9d\x2f\xe3\x5e\x52\xaf\x48\xea\xf0\x2f\x87\x16\xb0\xae\xd8\xde\x59\x5c\xdf\x0c\x1a\xa0\x9b\x9b\xce\x62\x03\xbc\x15\xc9\x7c\x2f\x95\xef\xa5\xf2\xd7\x2d\x95\xbf\x9a\x09\x7d\x79\x09\xc1\xfb\x94\xda\x7d\x4a\xed\x3e\xa5\xf6\x25\x52\x6a\x1d\x2f\x59\x26\xe1\x2c\xab\xa5\xf3\xb3\x65\x2e\x5f\x53\x96\x64\x05\x88\xaa\xfa\xe7\x1f\x0a\x9a\xa5\x08\x54\x24\xad\xe9\x52\xce\xbe\x01\x7a\x02\x52\x80\x71\xba\xea\x0f\xcb\x25\x98\x9f\x6b\xac\xee\xd5\x0a\x31\xe5\x68\x37\x85\x61\xdb\xd5\x9e\xfa\x12\xb8\x1b\x54\xdc\x8b\x7e\x73\x0d\xbd\xa2\x3a\x7c\x07\x4e\x2c\xd1\x1c\xc9\x8d\xef\x89\x2b\xf2\x35\xf6\xb9\x56\x7d\xbe\x4f\xf6\xa3\xb7\x55\xca\xa0\x3e\xea\x7d\x55\x3e\x14\xec\xda\xbe\x2a\xdf\x13\xce\xdb\x9d\xb3\x15\x33\x77\x34\x6a\x6c\xe1\x6f\x74\xda\x2f\x1e\xec\xd8\x7e\xd2\x5f\x34\xf4\xb1\xf1\x22\xab\xe5\xd6\x1d\xff\xa3\xf1\x9e\x7a\x81\x62\x84\x6b\x5f\x4e\x3b\x29\x4b\xb8\xcd\xf5\xf4\x81\xa8\x2f\xe5\x6e\xda\x97\x26\xdc\x97\xd7\xd9\xd1\x74\x37\xba\x7b\xde\xec\x6c\xf7\x85\x18\xf7\x85\x18\xf7\x85\x18\xa3\x23\xb8\x2f\xc4\xb8\x2f\xc4\x88\xd0\xb3\x14\x62\x5c\x5b\x66\xdc\x41\x49\xc6\x6d\x24\x46\xd3\xfd\x97\x22\x34\xee\xcb\x32\xee\xe5\xc6\xdd\x4d\xf7\xf7\x25\x37\xbe\x42\xab\xc5\xab\xa8\x3f\xe9\xad\x16\x2f\x0e\x05\xe4\x59\x7b\x67\x38\xa0\x30\xd6\xc4\x7f\xbd\x53\x54\x20\xb7\x69\x7b\x64\x20\xfb\x7f\x7b\x64\xa0\x3d\x32\x50\xcb\xac\xf7\xc1\xcc\x7b\x64\x20\xb4\x0f\xd7\xdd\x87\xeb\xbe\xe6\x70\xdd\x0e\xdb\xb8\x47\x06\xea\x28\x32\x3e\x11\x3a\x90\x93\xb9\xb6\x42\x08\x6a\x10\x07\x57\xa3\x04\x7d\xaa\x6b\x44\xaf\x56\xd4\x73\x63\xdd\xa3\x05\xed\xd1\x82\xb6\xa5\x9d\x57\xa1\x80\x3e\x23\x6a\x50\x13\x87\x59\x27\x17\xb9\x81\xb9\x6c\xab\x60\xbe\x0d\x04\x21\x37\xda\x7d\x62\xf2\x3e\x05\xe2\xf5\xa7\x40\xbc\xba\xc4\xe4\x57\xa3\xa9\xec\xd5\xf9\x7d\x6e\xf2\x3e\x37\x79\x6f\xec\xd8\x1b\x3b\x76\xbe\x8c\xaf\xc9\xd8\xf1\xc2\x72\xfb\x13\x22\x09\xbd\x46\x09\x7e\x2f\xc0\x9b\xf7\xf6\x02\xfc\x5e\x80\xff\x42\x05\xf8\xd7\xb1\xc2\x7b\xe9\x7d\x2f\xbd\xef\xa5\xf7\xbd\xf4\xbe\x97\xde\x77\xbe\x8c\x7b\xe9\xfd\xd9\xd0\x85\x9a\x44\xf8\xb5\x11\x86\xd6\x74\xf3\x05\x09\x64\x6f\x49\x5a\xdf\x4b\xea\x7b\x49\xfd\x75\x4b\xea\xaf\x66\x42\x7b\xb4\xa1\x3d\xda\xd0\x1e\x6d\x68\x8f\x36\xb4\x91\x8c\xf4\x2f\xf6\x58\xbe\x0b\x6e\x62\x7f\x65\xbf\xfb\x21\xe3\xe3\xdb\xc5\x9c\xe8\xff\x3d\xa3\x39\x61\x12\x24\x5a\xaa\x16\xa1\x4c\xd4\xb2\xf2\xf5\x35\x7f\x77\x33\xb8\xf8\x70\x1e\xa6\xa1\xbd\xfb\x78\x77\x7e\x3b\xb8\xea\x5d\xfb\x75\xf1\xb3\x0a\xd7\xc2\x7e\x17\x89\x75\xa7\x3c\x9f\x63\x41\x25\x67\xfd\xcf\xfa\x74\xea\xa1\x5d\x82\xec\xc3\xc5\x66\xa3\xeb\xff\x35\x1c\xd9\x45\xfc\xe7\x87\xdb\xf8\xaf\x68\x16\xe7\xb7\xf1\x5f\xfd\xa5\xb3\x09\x1a\xae\xf2\xb3\x43\xf4\xe1\xf6\x04\x7d\x80\x20\x15\x81\x6e\x67\xd8\xb0\xa4\xf3\xdb\x13\x74\x4e\xa4\x84\x5f\xca\x8f\x15\x55\x19\xcc\xed\x07\xca\xb0\x58\x20\x37\x7d\x93\x8b\x8a\xc1\xfa\xeb\x96\xa6\xba\x78\xec\x6f\x05\x03\x85\xa6\x5c\xbd\x73\x3e\xa5\x09\xce\xb6\x5b\xc4\xde\x45\x78\x90\xde\x5d\x5e\x2f\x5d\x8a\xf0\xed\xfa\x5a\xf4\x2e\xce\x20\x33\xd6\x0d\xb5\x61\xe6\x17\x44\x6a\x8d\x29\xe1\x2c\xb5\x16\x71\xcd\xcf\x16\x81\x98\xf2\x37\x0e\xb9\xb2\x85\xd4\xc2\x73\xef\xe2\x0c\x1d\xa3\xcb\xeb\x21\xbb\xd4\x5a\x95\xe6\xb3\x44\xdf\xef\x86\xeb\x52\x89\x18\x57\x88\xe6\x73\x2e\x14\x66\x4a\x8b\x36\xc0\xd8\xec\x8a\x18\x25\xed\x94\xe7\x79\xa1\xb0\xa2\x0f\xa4\xb6\xa8\xcc\x28\x89\x37\x44\x0d\x52\x30\x38\x37\xac\xa1\xe1\x7c\xe5\x5c\xe6\x42\xb7\xaf\xb9\x6e\xac\x59\xd0\xb4\x26\x9c\xbb\x26\xb0\x10\x38\xe6\x8f\xef\xa8\x22\x79\xf5\xfd\x8e\x01\x93\xff\x6c\x54\x9b\x4e\x4d\x82\x02\x11\x3d\x91\xcc\xa8\x22\x89\x2a\x04\xd9\x8c\x26\xee\x2e\x7e\xba\xb8\xfc\x14\xf2\xc4\x77\xbd\x8f\x67\x7f\xfe\xb7\xe8\x87\xeb\x8f\xb5\x1f\x46\x3f\xff\xb9\xf6\xcb\xff\x6f\x29\x3d\x55\x7b\xaa\x69\x2e\xc1\x5c\x0e\x41\x48\x00\x4b\x99\x9b\x2a\xa2\x39\x9e\x12\x24\x8b\xb9\xa6\x00\x79\x14\xef\xaf\xbe\x24\xcf\x39\xd6\x4a\xb9\x49\x18\x3d\xa7\x8a\x08\x9c\x7d\xc4\xf3\xf7\xce\xaa\xb7\xc1\xea\xfc\xdf\x9b\x28\x75\xf7\xdd\x2f\xbd\x8f\x61\xf2\xef\xbb\xab\xeb\xcb\xdb\xcb\xa5\xb3\x8e\x5a\xa8\x1f\x23\xfd\xf8\x04\xfe\x8b\x8e\x91\x6e\xdd\xdf\xe5\x39\x51\x58\xcb\x38\xe8\x6b\x93\xe4\xe6\x93\x52\x28\xcb\xe0\xd4\xcc\x05\xcd\xa9\xa6\x74\x6b\xd7\xf8\xc6\x88\x0b\x5e\x1e\xf2\xe7\xc6\x7c\x60\xd2\x58\x41\x12\x53\x98\xa5\x58\xa4\xe8\x6f\xb2\x9a\xe1\x0d\xe6\x34\xf3\x03\x49\xd1\x21\x9a\x29\x35\x97\x27\xc7\xc7\x8f\x8f\x8f\x47\xfa\xed\x23\x2e\xa6\xc7\xfa\x1f\x87\x84\x1d\xcd\x54\x9e\x99\x8c\x76\xbd\x0a\x27\xe8\x4a\x70\xc5\x41\xa4\x42\x92\x08\x8a\x33\x48\xae\x1d\x1b\xfe\xc7\x27\xe8\xd7\x84\x0b\x72\x54\x6e\x8c\x55\xb5\x8d\x98\xe6\xd4\xf1\x63\xfd\x52\x03\x33\xa9\xee\x27\x4a\x49\x42\x53\x2b\x5b\x12\x96\x70\xb0\xc7\x18\x0b\xae\x6e\xcf\x65\x06\x12\xeb\x3e\xf3\xcb\x19\x88\x5f\x38\x25\x08\x3f\x60\x9a\x19\xdc\x04\x1e\x13\x9c\x16\xe5\x06\x46\x10\x2f\xb4\xd2\x01\xf1\x9a\xa0\x5a\xbb\x57\xe7\x7a\xc2\x09\xcf\xd0\xb8\x98\x4c\x88\x08\xbd\x77\x07\x5a\x3e\xa3\x12\x09\x92\xf0\x3c\x27\xcc\x18\x6f\x75\x43\xf0\x25\xac\x98\x1d\xed\xd1\x90\xc1\xfe\x6b\xc1\x0d\x28\x20\xe5\xc0\xea\x18\xd1\x0a\x1c\x5b\x98\x6e\xc6\xc5\x24\xf2\x0e\x02\x52\x04\x4e\x11\x55\x43\xd6\xcb\xb4\xaa\x9f\x73\x45\xc2\xc0\x53\x70\x25\x44\x0b\x0e\x2c\x52\x90\x79\x86\x13\x97\xd6\x9c\xf1\x04\x67\x68\x42\x33\x22\x17\x52\x91\x3c\x6c\xe0\x6b\xd0\x3e\xf5\x9a\x51\x89\x52\xfe\xc8\x32\x8e\xed\x3c\xaa\x9f\x7d\x13\x9f\xc6\xbe\xc3\x0f\xe8\x0b\xc1\x05\xfc\xe7\x27\xca\xd2\x9d\x71\xa8\xbb\x9b\xfe\x75\xf8\xf7\xcd\x2f\x37\xb7\xfd\x8f\xeb\x71\x1f\x4f\x59\x30\x3c\xd0\x4a\x4e\xd0\x8d\x59\x04\x2e\x90\xd6\x33\x5b\x26\xf5\xd1\x92\x52\xf9\x03\x4f\x37\xe4\xbe\x1f\x7b\x17\x77\xbd\x88\xa3\xdc\x9c\xfe\xd8\x3f\xbb\x3b\x8f\x44\x5e\x37\xbf\xe0\x97\xeb\xbe\x11\x68\xc3\xdf\x4e\x7f\x1c\x9c\x9f\x8d\x1a\x44\xe0\x77\xd7\xfd\xd3\xcb\x9f\xfb\xd7\xa5\xb4\xda\xb8\x44\x95\xc1\x54\x99\xd5\xad\x61\x4a\x33\x9e\xa2\xf1\x22\xcc\xbc\x2d\xd1\x22\x1e\xb1\x44\x19\x78\xa8\x4a\xd4\x12\xd3\xea\x09\xf0\x26\x07\x9f\x51\x7e\xa1\x55\xa0\x03\xfb\x0e\x80\x5d\x18\x75\x11\xab\x18\x3d\x23\x6c\x58\xf7\x8e\x59\xa0\x7a\x19\xd8\x0b\xbf\x70\x5a\x39\x94\xfa\xc5\x42\x1f\x6a\x41\xa7\x53\x30\x85\x54\x86\x6a\x5a\xb3\x9f\xc2\xf2\xc2\x77\x66\xff\xe7\x82\xc3\x39\xd7\xdd\x5a\x1b\x9a\xd7\xb3\xcc\x87\x06\xab\x33\x6a\x51\x60\x50\xa1\x1a\x86\xe6\x36\x4b\x2f\x42\xeb\x7a\x99\xf3\x58\x86\x8a\x03\xdb\x92\xc6\x82\x33\x17\xe4\x81\xf2\x22\xf8\xd4\x62\xb8\x44\x3b\xde\xd8\x7c\xb9\x00\xb0\x6c\x46\xcd\xab\x34\xe3\xc9\xa3\xb1\x05\xcd\xc2\x1e\xa0\x85\x89\xe0\x79\x43\x1b\xf1\x31\x19\x5c\xde\x28\x81\x15\x99\x2e\xce\x2c\xcb\xd8\xfc\x78\x9c\x5d\x7e\xba\x38\xbf\xec\x9d\x8d\xfa\xbd\x0f\xf1\x89\xf7\x4f\x6e\x6e\xaf\xfb\xbd\x8f\xf1\xa3\xd1\xc5\xe5\xed\xc8\xbd\xb1\x94\xe4\x5b\x3a\xa8\xdf\xd3\xf1\x8b\x27\x48\xb3\x5c\x60\x8d\x0e\x14\x2f\xe0\x8f\x63\x32\xe1\xc2\xf0\xf9\xdc\x39\x74\xad\x08\xe3\xd6\x96\xa4\xc6\x9c\x11\xcf\xe2\x04\x74\xfd\xa6\x26\x8d\x1d\x4f\x09\x82\x73\xb8\x27\x30\x43\x7d\x96\x1e\x5e\x4e\x0e\x6f\xcc\x8f\x39\x16\xf7\x44\xf8\x4f\x1f\x05\x55\x8a\x80\x43\x84\x5a\x5f\x09\xd8\x22\x60\xc8\xfa\x22\x83\x84\x83\xb2\x83\x23\x74\xad\xf9\xbe\x7e\xdf\x5f\x6a\x9a\xd8\x53\xa2\x30\xcd\xa4\x1d\x6c\xb4\xae\x27\xe8\x1c\x8b\x69\x69\x59\xf8\x9a\x4f\x26\xa6\xb1\x6f\xcc\x30\xf4\x1d\x16\xcd\xa2\x81\xf7\x6a\xd2\x70\xf7\x22\xf4\x67\x5f\xf6\xf2\x70\x9d\xaa\xee\xe6\xdb\xd1\xd4\xdd\x15\xac\xf8\xe5\xc5\xa8\xff\x5f\x83\x48\x37\xb4\x4f\x1a\x68\x0d\x26\x6e\x1e\x2f\xbf\x64\x9a\xdb\xae\x93\x53\xfc\x62\x03\x39\x99\xbc\x24\xbd\xf3\x13\xad\x6d\x36\xd0\x12\xf9\x4c\x95\xd9\x98\x70\xdc\x15\x12\x2a\x9b\x01\x83\x11\x9e\xcf\x09\x16\xb2\x69\xb7\x63\x31\xb0\x65\xef\x4d\x4f\x61\x1f\x76\x93\x5d\x3f\x07\x88\xb3\x6c\x11\x0a\x11\x15\x8a\xec\x40\x03\xa6\xad\x1a\x05\x5c\x01\x20\xd2\xa5\x05\x1f\xfa\x48\xa5\x56\x1a\xcd\x8f\x3f\x58\x54\xa4\xcd\x08\xe2\x7d\x6f\x70\x5e\x11\x2e\x46\x67\xfd\xf7\xbd\xbb\xf3\xe5\x86\x8f\xe8\xbb\xea\x16\xa3\x43\xa4\x9f\xc7\xde\x44\x3a\x31\x77\x86\xc3\x76\x32\x2a\x2d\x61\x5a\xfc\x74\x69\x44\xc6\x02\x97\x92\x79\xc6\x17\x39\x61\xe0\xd0\x88\x6e\x42\xbd\x9e\x13\x4c\xed\xd5\x12\x0c\xf6\x44\xcb\x2c\xd6\xd6\x0a\xd7\xd8\xa1\x03\x94\x22\xa9\xbf\x79\x63\x3c\xa9\x0a\xeb\xbe\x32\xfe\x00\xfb\x3f\x37\x0a\xab\x0d\xcf\x58\xef\xf4\x76\xf0\x73\x3f\xd6\x0f\x4f\x7f\x1c\xfc\xdc\x24\xd5\x8c\x3e\xf4\x2f\xfa\xd7\xbd\xdb\x15\xc2\x49\xa5\xc9\x26\xe1\x44\xea\x01\x57\xfd\x41\x54\xfa\x38\x09\x7d\x76\x04\xcf\x10\x55\x12\x3d\x50\x49\xc7\x14\x30\xbc\xac\x6f\xe5\x6e\x00\x9c\x15\x12\xc7\xa8\x5a\x38\xf1\xc5\xf4\x1b\xef\xa3\xe6\xa4\xb6\x7d\x63\x76\x08\x3d\x2e\x89\x56\xc9\xcc\xe6\xb8\x49\x9f\x20\xd0\x6d\x1f\x40\x69\x0b\x3e\x63\x5a\x90\x66\x53\x22\xcc\x70\xc0\x9e\x1c\x8e\x25\x78\xae\x47\x15\x0a\x2b\xe5\xaa\x79\xa1\x75\x4a\x18\x11\x00\x58\xe4\x3b\x31\x82\x94\x20\xec\x2b\x2d\x73\xcd\x33\x9a\x50\x95\x2d\x50\x02\x36\xac\x54\x8b\xb9\x39\x66\x78\x6a\x85\x03\x50\x73\x2a\x24\xf1\x57\x03\x74\x76\x39\xb1\xc6\xca\x5b\x4a\x36\x3c\x66\x77\x17\x67\xfd\xf7\x83\x8b\x98\x04\x7e\x1c\x7c\x88\x44\xd8\x8f\xfd\xb3\xc1\x5d\x74\x9b\x6b\x49\x76\xb9\x5c\x5f\x6d\xb6\xe1\x28\xfa\x97\x4e\xd0\x99\xf9\xf4\x44\x2f\x6e\x03\x8a\x9b\x57\x7e\x2b\xeb\x70\xed\x02\x95\xdc\x3f\xfa\x4c\x89\x46\x4b\x6b\x57\x13\x92\xf5\xaa\x44\x36\xa4\x66\xe7\x6b\xad\xef\x8b\xaa\x9b\xac\xee\x9c\xb6\xae\x15\xdd\xc9\x51\x69\x59\x0a\xbd\xb2\x60\x34\x68\x33\x62\x35\x18\xea\x4b\x86\xfd\x33\x38\xdd\xf2\x42\x2a\xe3\x1c\x01\xe2\x44\xf7\x7f\x91\x7a\x41\xc1\x79\x72\x84\x6e\x08\x19\x32\x67\x3d\x98\x52\x35\x2b\xc6\x47\x09\xcf\x8f\x4b\x08\xc1\x63\x3c\xa7\x39\xd6\x92\x34\x11\x8b\xe3\x71\xc6\xc7\xc7\x39\x96\x8a\x88\xe3\xf9\xfd\x14\xe2\x02\x9c\x83\xe8\xd8\x37\x3b\xe5\x7f\x38\xff\xd3\xb7\x87\xe7\x7f\xf9\xf6\x5d\xdd\x42\xd6\xb6\xff\x7d\x96\xe0\xb9\x2c\x32\x1b\x47\x24\xc2\xb5\x71\x47\xbe\x20\xab\xf6\xfb\x22\xde\xae\xed\xf4\xd7\xd3\xab\xbb\xc8\x62\x1d\xff\xf9\xb1\xff\xf1\xf2\xfa\x97\x88\x53\xde\x5e\x5e\xf7\x3e\x44\x0c\xb5\x7f\xf5\x63\xff\x63\xff\xba\x77\x3e\x72\x0f\xb7\xb1\xbd\xfd\xc4\xf8\x23\x8b\x97\x46\x3a\x0e\x58\xeb\xe9\x04\xbd\xe7\x02\xfd\xe4\x77\xf2\x70\x8c\x25\x5c\x31\xee\xce\x92\x07\x68\xce\x53\x60\xbc\x88\xcc\x67\x24\x27\x02\x67\xd6\x66\x20\x15\x17\x78\x6a\x6e\x7a\x99\x08\xac\x92\x19\x92\x73\x9c\x90\x03\x94\x00\x35\x4c\x0f\x60\x53\x40\xd5\xe2\xd3\xaa\x9d\xef\xba\x60\x8a\xe6\xc4\xa9\xe0\xf6\xcf\x5b\xb3\x19\x1b\x6c\xce\xe5\xed\x8f\xb1\xb0\xf7\xfe\xfc\x97\xdb\xfe\xe8\xe6\xec\xa7\xa5\xeb\x69\x3e\x8b\x46\x76\x03\x21\x15\xa7\x3c\x2b\x72\x16\xfe\x7b\xf3\xb1\x0d\x2e\x6e\xfb\x1f\xaa\xa3\xbb\xec\xdd\xc6\x94\x71\x1d\x87\xfd\xbc\xfb\xe1\xf2\xf2\xbc\x1f\x39\xb9\xde\x9d\xf5\x6e\xfb\xb7\x83\x8f\x11\xfd\x9c\xdd\x5d\x1b\x60\xc2\x65\xd3\x74\x23\x68\x98\xa8\x9e\x56\x38\xcd\x5d\xb3\xc2\x4e\x9c\xa8\x67\xc3\x6c\xcd\x59\x3e\x0c\xa0\x6b\x4c\x80\x0b\x58\x75\x0e\xbd\x49\x35\x31\x23\x6d\x64\x87\x2a\xde\x26\xd4\xce\x8e\x97\x6e\xf4\x32\xae\x7c\xeb\x87\x60\xd0\x3a\x8d\xb2\x8d\xb3\x8c\x3f\x9a\x00\xc7\x9c\xea\x5b\xd9\x02\x99\xe9\x57\x24\x4a\x0a\x21\x08\x53\xd9\xe2\xa8\x81\xe3\xc5\xdb\x42\x12\x41\xd4\x47\x5e\x30\xb5\x39\xc9\xf5\x2e\x22\xbe\xd3\xbf\xf8\x79\xf4\x73\x2f\xa6\xc0\xc1\xf9\x72\x56\x13\x36\xd1\x70\x15\xf7\x2e\x7e\xf1\x97\x30\x84\xc1\x1e\x78\x0d\xd5\xc8\xae\x49\x46\xb5\xd8\x9b\x60\xad\xbd\x66\x20\xd1\x20\x42\xc1\xe4\x90\xeb\xc9\x41\xd8\xdd\xdc\xf8\x93\x0c\x7f\x32\x83\x3c\x71\xff\xa8\xb4\x27\x61\x5d\xc0\x9a\xea\xa2\x8c\xa1\x1d\xab\x55\x33\x44\xd8\x03\x15\x1c\x20\x67\xd1\x03\x16\x54\x4b\xe3\xa6\x65\x3d\xd7\x13\xf8\xef\x7a\x6d\x82\x61\xb4\xc2\xb8\x6e\xb8\x50\x67\x3e\xbc\x71\x33\x6b\x48\x53\x98\x5f\x3d\xc0\xaf\xd9\xd0\x51\xff\xb6\x61\x73\xb6\x0c\x83\x8c\x27\xfc\x5b\x76\x46\x71\xa6\x19\xc0\xee\xe4\xc5\xde\xc5\xcd\x20\x96\x1f\x63\x35\x23\xe0\xcb\x1b\xcb\x8b\x60\xa8\x34\x23\x77\xca\xc4\xcd\x5f\xcf\x8d\x76\x01\xb8\xc4\xe6\xdc\x06\x8a\x85\x05\x9b\x30\xd2\xc4\x1c\x0b\x59\xf9\x42\x22\x00\x15\x2b\x43\x48\xf4\x9d\x05\x01\x1a\x0f\x9c\xa6\x43\x46\x3e\xcf\x09\x93\xf4\x01\x40\x89\xe1\x99\x0f\x14\x94\x47\x68\x30\x01\x96\xa0\x5f\x67\xa8\x60\xd6\x01\xa6\x2f\x5c\x33\xc8\x03\x2d\xca\x96\x78\x17\x81\xf9\x88\x11\x17\xfe\x51\x0e\x7e\xc8\x3e\x79\x27\x1a\x3c\x9a\x70\xcd\x80\xf4\x2e\xda\xf6\x4e\x10\x66\x92\x1e\x20\xad\xb0\x54\xf6\xf4\x16\xcb\xfb\x9a\x19\x7c\xc0\xa4\xc2\x2c\x21\xa7\x19\x96\x72\x53\xca\x36\xea\xf6\x41\x7c\xf9\x5d\x5f\xdf\x5d\xdd\x0e\x7e\x58\xc1\x70\xaa\x1f\xd7\x83\x85\x93\xac\x70\x9e\xa2\xb1\xe0\x38\x45\xfa\x24\x4f\xb9\xf1\x4a\x59\x19\xb4\x04\x8a\x36\x81\xf7\x3e\x5a\x29\x02\xa9\x2e\xe3\x85\xad\xca\x1d\x5a\xb5\xa9\x5d\x08\x94\xe8\x95\x40\x81\xf6\xed\x2e\x20\x70\x72\x99\xfa\x19\xd6\xd0\x32\xcf\xb0\x9a\x70\x91\x1b\x86\x13\x4d\xda\x34\xbe\xbc\x51\xca\x14\x11\xa2\x98\x2b\xea\x90\xbf\xab\x02\x13\x14\x6e\xe7\xd3\x8f\x44\x4a\x3c\x25\xdb\xf8\x42\x9b\xe4\xd8\x9b\x9f\xc3\x3f\xc1\xd7\xd9\x45\x0c\x8d\x46\xe8\xc2\x4a\x1d\x3d\x5d\xb2\xf7\x98\x66\x85\x20\x57\x3c\xa3\xc9\x86\xd1\x2c\xef\x7b\x83\xf3\xd1\xe0\xa3\xd6\x27\x7b\xb7\xfd\xf3\xe8\x56\x83\x67\xbd\xf7\xb7\xfd\x6b\x0b\xad\xdc\xfb\xe1\xbc\x3f\xba\xb8\x3c\xeb\xdf\x8c\x4e\x2f\x3f\x5e\x9d\xf7\x57\x04\x89\xb4\x36\x5e\x37\xf4\x55\x5f\x3d\xa9\xfd\x02\x3b\x2c\x0a\xa3\xae\x3b\xd3\x0d\xa4\x75\x60\x9a\x81\x3f\x96\x1b\xbf\x2c\x46\x8c\xa7\x06\xe0\x46\x3a\x43\x81\xc7\x3c\x46\x03\xf5\x55\x96\x21\x5c\x28\x9e\x63\x70\x20\x64\x8b\x21\xc3\x63\x7d\xca\x71\x96\x95\x72\x84\x66\x31\x4c\x9f\x76\xdd\x98\x01\xf4\x4e\x32\xa2\x39\xcb\x3c\xc8\xc6\xb1\x26\xec\x09\x65\x10\xc6\x96\x63\x71\xef\xaa\x93\xf9\x18\x67\x7f\x28\x24\xc2\x72\xc8\x0c\xf0\x8e\xbd\x38\x3b\xac\xf0\x49\xa7\xb7\x5a\x57\x27\xc7\xf7\x44\xaf\x4a\x5e\x24\x33\x34\x17\x7c\x2a\x88\x94\xd6\xcc\x99\x60\x66\x7c\xe1\xf6\x75\xcd\x11\x87\x8c\x71\xbd\x14\xce\x9a\x9a\x92\x39\x61\x29\x61\x09\x35\x79\x37\xe0\x46\xf6\x56\xb6\xa9\xc0\xf3\x19\x92\x1c\xfc\xaf\xb0\xec\x60\x4a\x31\x1f\x39\xa6\x6a\xa1\x86\xe0\x71\x68\x0c\x15\x85\xe6\x13\x97\x20\xb2\x98\x55\x86\x8f\x1d\x5f\x76\x1e\x00\x63\x92\xca\xe7\x19\x51\x06\xda\x1d\x96\x1c\x36\x43\xaf\x75\xb4\x1f\x7a\x9b\x9a\x36\x41\xdf\x1d\x6e\xcc\x58\xda\x11\x1d\x35\x18\x59\xed\x91\x42\x3f\x62\x96\x66\xba\x15\x67\x4e\x8f\xcf\x22\xc4\x79\xf7\x34\xd5\xb8\xd3\xb8\x8d\x5c\x9f\xe0\x42\xae\x25\xd8\x2f\x4f\x96\x32\x06\xaa\xc3\x32\x3e\x01\xc8\xdb\x66\x4a\xc1\xea\xce\x35\x8b\xc4\x19\xb7\xab\x64\x5e\x2f\x4c\xb9\x22\x04\xa3\x69\x31\x86\xcc\x05\x65\x09\x9d\xe3\x6c\x23\x35\xa4\x12\xe9\x6a\x03\x48\xbf\xa6\x13\x4d\x3e\xdf\xd4\x3c\x88\x8a\x88\x1c\x32\x08\xed\x30\xfd\x16\xae\x61\xd4\xb0\x21\xc3\x44\x96\x81\x0d\x58\xf0\xc2\xb8\x86\x60\x5d\x48\xda\x70\x54\x8f\x9a\xb6\x5b\x9f\x0c\x1c\x47\x17\x6e\xb0\xd9\x26\x08\xa5\x6d\xfd\x2a\xad\xd8\xde\x4d\x5c\x18\xce\xae\x9a\xdb\x6c\xda\x81\xe0\xe1\x3f\x97\xd1\xce\x47\x3c\xd7\x34\x63\x01\xe7\x71\x39\x47\x2b\xaf\xdb\x22\x56\x2e\x94\x23\x70\xe3\xfa\xa0\xeb\xee\xbb\x51\x2e\xa1\x8d\xc5\xa9\x77\x12\xb9\xb3\x83\x24\x50\x4b\xe3\x93\x42\xe9\xe3\x89\xc1\x21\x8e\xbe\x26\x47\xd3\x23\xe4\x4a\x03\x1c\xa0\xde\xd5\x55\xff\xe2\xec\x00\x11\x95\x7c\xe3\xc2\xe7\x6c\xec\xcc\x90\x29\x6e\xa5\x95\x05\x9a\xf1\x47\xe0\x8d\x44\x4c\x49\x34\x67\x17\x68\x03\xd0\x64\x53\x2a\x95\xb0\xe1\x3e\x2c\x0d\x0b\x63\xd0\xbc\x2a\xf1\x19\x0a\x29\xd4\x6c\x1b\xd2\xc0\x52\x16\xb9\x56\xab\x46\x14\xe7\x23\xc1\xb3\x6d\x98\xc2\x19\x4c\x05\x34\x37\x9f\x3f\x4b\x71\x8e\x74\xb3\x36\x2a\xc1\x7b\xbf\xbc\x48\xa7\x05\x23\xcd\x97\xf5\xbd\x19\xdc\x5b\xce\x10\x6e\x43\xa3\xa8\xf3\xc6\x43\x7e\x6d\x0b\xab\x28\x2d\x98\x23\x6b\x34\x1e\xe1\x24\xd1\xda\xdf\x8e\x27\x15\x54\x5b\x71\xd6\x69\xdb\xd1\x93\x4d\x73\x15\x9d\xbb\x61\xce\x35\x07\x83\xb8\xd4\x7a\xa1\x84\x86\x7e\xc7\x8b\x5a\xaf\xae\x1e\xca\x9d\xf4\xda\xbd\xb9\x84\x25\x81\x9d\x94\xa6\x9e\x8a\x9a\x11\x8b\xeb\x17\x76\xe9\xa2\xcd\x75\xc3\x0b\x5e\x88\x26\x46\x37\x64\x67\x64\x2e\x88\x96\xf4\xab\xb6\x7c\x4f\xd3\xd7\x31\x25\xee\xe9\x7a\x4f\xd7\x6f\x9e\xae\x4f\x4d\x0d\x24\xe7\xb6\x08\x6a\x8c\x6c\x43\xe8\x4d\xad\x2c\x6b\x09\x3d\xf9\xfd\x7e\x6a\x2e\xf6\xa6\xd2\x2d\x31\x15\xb9\x3b\x98\xb2\x5a\xd1\x2a\xb3\x91\x50\x81\x19\x2e\xdc\xdf\x0a\xae\xb0\xfc\xe6\x68\xc8\xb4\xf4\x70\x4f\x16\xc6\xe4\xa5\xef\xe7\x3f\x6a\x21\xf4\x50\x12\x26\x21\xe4\xf6\x8f\xc6\x45\xa2\xf7\xd6\x99\x0c\x8d\x4e\x66\x6a\x65\xc5\x55\x65\x20\x4c\xd2\x36\x6a\xc5\x83\x32\x08\xb5\x2c\x45\xe3\x9e\x99\xe1\x4f\x89\x82\xc4\x3d\x45\x15\x28\x0b\xa9\x29\xc6\x55\x1b\xfa\x4a\xbb\xb0\xa1\x0a\xc1\xc1\x56\x9d\x16\xdb\x71\x3c\x59\x6f\x63\x25\x4b\xf0\x62\xf2\x8d\x8d\x3b\x3e\x76\x06\x93\x44\xf0\x5a\x85\x2b\x2c\x91\xd9\xe9\xb1\x39\x07\xce\x87\x48\xd8\xd1\x23\xbd\xa7\x73\x92\x52\x0c\x51\xc8\xfa\xaf\x63\x3d\xaf\x3f\x9c\x5e\x5f\x5e\x8c\xca\x6c\x8a\xff\x1c\xb2\x5e\x26\xb9\x8f\x14\x47\x8c\x33\x1f\xf2\x3c\x17\xc4\xc9\x42\x76\x2e\x60\xf9\x2a\xcd\xfb\x43\xd6\x36\x82\x94\x27\xf2\x08\x3f\xca\x23\x9c\xe3\xbf\x73\x06\xee\xcc\x1e\xfc\xf3\x34\xe3\x45\xfa\x09\xab\x64\x76\x0c\x5e\x46\x75\x4c\x1e\x08\x53\xc6\x55\xa0\x97\x2b\x85\x94\x30\x09\x11\xd3\x7f\xd0\x63\x2e\x13\x3b\xa4\x56\xe1\x12\x32\x57\xe8\xff\x11\x64\xcc\xb9\x6a\xe6\xce\x7c\x32\x91\x64\x2d\x4e\x5c\x6a\x27\x37\x97\xe8\x2f\x7f\xfe\xf6\x3b\x4d\x42\x9b\xac\xf1\xe0\xe6\x72\xa4\xbf\xff\xc3\x99\xfd\x5e\xae\xc1\x59\x2f\x8d\xa5\xde\xba\xfb\xcc\x6a\x98\xe0\xe5\x82\x01\xdb\x17\xa6\xec\x39\x47\xd8\x90\x43\xb9\x8f\x4d\xdc\xed\xcc\x24\xcf\x6e\x95\xb9\xb1\xc5\x75\xf6\x21\xe3\x63\x30\x88\x14\x51\xd9\x9d\x25\x5e\xf6\x75\x5d\x5b\xd5\x8b\x89\xca\x79\x86\x17\xb5\x1e\x56\x2d\xfb\x85\xe6\x4e\x73\x9c\x90\x32\xeb\xd7\x05\xc4\x24\x3c\xcf\x21\x48\xcb\x59\xaf\x53\x3a\x81\x68\x2d\xa5\x2f\x3b\x34\x26\xea\x11\x62\x03\xdd\xaf\xfe\x92\x76\x96\x48\xcd\xca\x80\x5d\x0e\xf5\x22\xa7\x05\x78\x34\x86\xef\x0e\xd0\xf0\x5d\x4a\x1e\x48\xc6\xe7\xfa\x34\xeb\x1f\x88\x4a\x9a\x36\xb1\x9f\x63\x9a\x5d\x70\xe5\xc3\xcd\xb6\xd9\x4f\x41\x12\x3a\xa7\xfa\x74\x8d\x88\x6e\xf7\x49\xd3\x72\x9a\x0f\xd8\xed\x8c\x78\x74\x12\x18\x03\xc2\x69\xaa\x89\x18\x6a\x10\xb9\xe1\x95\xb6\x65\x16\x4c\x3d\xaa\xad\xb1\xbe\xc0\xa2\xb5\x4a\xe8\x31\x6c\x33\x8e\xe5\x6b\xdc\x01\x6f\x71\xd8\xe9\x49\x6a\xf6\x97\x26\x5c\x78\x28\x73\xdf\x71\x59\x0f\x66\x29\xfd\xdb\xf2\x56\x41\x5e\xb0\x35\xd5\xb5\x9a\x36\xaa\x07\x50\xaf\x45\xb7\x71\xc6\x2b\x73\xa3\xbf\x5b\x3a\x34\x19\x02\xf3\x24\x61\x95\x3a\x50\xab\x6d\xfc\x76\x35\x64\x9c\xac\x1c\x71\x92\x71\x19\xa7\x73\x75\x1e\xf4\xa9\xfd\x74\xd9\xb8\xfb\xa1\x15\xa2\xc8\x7c\x26\x55\x27\xba\xeb\x35\x2c\x7c\x25\x03\xdb\xb0\x09\x65\x25\x67\xfb\xf6\x01\xa2\xe0\x85\xd1\x6b\x80\xb3\x32\xb8\x9d\xa5\xa8\x94\x12\x87\xac\xb4\x65\x49\xf4\x48\x32\x30\x7f\x27\x3c\x9f\x83\x04\x64\x87\x6b\x5b\xd2\x17\xb8\xc2\x8a\x1c\x20\x5e\x28\xdd\x98\x09\x1b\x71\x77\x9c\x8d\x49\x09\x6a\xa2\x83\x4c\x6e\xfd\xb3\x1e\x11\xc6\xd0\xba\x61\x85\x94\xa1\x0f\x44\x41\x2b\x80\xb8\x15\x4e\xd0\xd4\x50\x5d\x7a\x94\x4e\x6b\xdb\xb6\xf6\x89\xb2\x33\x59\x63\xe7\xcb\xdc\x9e\x1f\x32\x3e\x5e\xba\xef\x97\xd0\x38\xba\xbb\x1e\x38\xe7\x41\x69\x57\x0d\x20\x43\x56\x51\x27\x11\x22\x0a\xb4\x5d\x71\xf0\xe3\x4c\xa0\xe5\x84\x09\x79\x38\x94\x99\xac\x28\xc8\x5d\xab\x8e\xd3\x5a\xdc\x57\x8d\x11\xec\x9f\xa3\xb7\x63\x7d\x36\xe3\xcd\xeb\x16\xf7\x55\xdb\x1f\x5b\xea\x9f\x7a\x32\x70\x34\xd4\x8c\x50\x81\x3a\x4d\xcb\x90\xf3\xa8\xfb\x9c\x34\xc1\x94\x14\xbd\x3c\xc2\x11\x3f\xda\x83\x6f\xe2\xe6\x8d\x24\x12\xe8\xe4\x2b\xb9\xac\x65\x2b\x23\xc3\x8a\xb6\x1f\x60\x29\x6f\x1b\xde\xe6\xf9\x96\x09\x0a\x90\xb5\x3a\xc4\x47\x43\x56\x19\x84\xf5\x2f\x49\x04\xb4\x0f\xbf\x50\x86\xa2\x2b\xe9\x00\x4d\xe8\x67\xdb\x68\xe9\x77\x76\xaf\x06\x86\x88\x16\x3f\xc7\x0c\xd7\xcf\xc4\x1a\xd7\xf6\x15\x7c\xbf\xd4\xee\xce\xa5\xd2\x52\x8f\x96\x1c\x05\xd1\xf2\x3d\x49\x11\x74\xeb\xbd\xe0\x2b\xaf\x6c\x85\x85\x5e\x14\xbc\x96\xbe\x53\x82\xf7\xa5\x58\x91\x43\x45\x57\xc6\xc8\xda\x30\x0a\x08\xb8\xc0\x2a\xc8\x18\x2d\x39\xff\x98\x4c\x31\x73\x2e\xd3\x96\xe1\xba\x2b\x67\x0b\x56\xa3\x25\x48\x0c\x11\x44\x20\xdf\x40\x74\x48\x34\x0e\x39\x87\xf5\x5c\x3a\x0e\x6b\x95\x7a\x0d\xcb\xf6\x88\xbd\x91\xac\x65\xb0\xc5\x3c\x7d\x4d\x83\xcd\xb0\x54\xc8\x8e\xa9\x4d\x93\x0b\x24\xec\x1d\x24\xff\x2f\x2b\x9b\x18\xaa\x46\x5d\xed\x61\x9a\x84\x62\x25\x80\x28\x45\x6d\x4d\xbf\x42\x12\x9b\x48\x94\x13\x31\x75\x82\xa8\xa9\xb7\xe2\xcf\xb6\x2d\xbc\xe2\xb8\x7c\xc8\x4c\xc0\x79\x5e\x6f\xfa\x08\xf5\x58\x2d\xa5\xd2\xd9\x4b\xa3\xf5\x32\x77\x0a\xce\x1e\xf1\x42\xa2\xb9\x30\xd9\x47\xc6\xa3\xee\x26\x0f\x8e\xac\xf8\x23\x6f\xa9\x51\x2e\xa4\x01\xca\xaa\x77\x30\x66\x07\x65\x44\xbb\x73\xbb\x8e\x3a\x49\xc5\xdb\xdb\x54\xe9\xd3\xab\x7a\x8d\xac\xae\x26\x64\x97\xa9\xc8\x61\xa8\xba\x45\x80\x02\x99\xd7\x6a\x3d\xfd\xd8\x53\xdc\x26\x88\x82\x95\xf3\x1c\x8f\x49\xb6\xb5\x43\x77\x23\x8b\x13\x74\x6d\xb1\xb9\x14\x47\x29\x31\x1e\x6f\xa8\x91\x2f\xaa\xac\xcd\xd9\x69\x45\xd1\xe4\xff\x5e\x36\xcf\xa8\x5c\xd0\x16\x13\x75\x60\x73\x9b\x4c\xb5\x0d\x82\x2e\xbc\x42\x02\xa8\xb6\x26\x5d\x3f\xbc\x4a\xaa\xe6\xad\xcd\x06\x12\x20\xc6\xb5\x8c\x63\x6b\xc8\xb8\x95\x53\xd9\x38\xa6\xbb\x23\x14\xf3\x60\x82\x18\x67\x04\x51\x59\xbe\xac\xe2\x90\x1f\x9f\x11\xa5\xc5\x5d\x63\x48\xa8\x17\xc0\x7b\x6a\xab\x41\x19\xab\xee\xf5\x5c\x17\x4e\xcb\x88\x56\xba\xb0\x58\x00\xa2\x82\xe1\x69\xb1\x7c\xb4\x72\x9c\x3b\x17\x5e\x6f\x1d\x60\x46\xe0\x8d\x52\x1c\x81\x48\x56\x19\x1c\x32\xb0\x13\xf6\x25\xfb\x91\xcd\x0a\x1a\x32\xaf\xa5\x03\x21\x52\x89\x72\x3c\x87\x58\x56\xc6\x55\xf9\x95\xc9\x72\x53\x7e\x0b\x0f\x9c\x50\x2b\x0d\x90\x6b\xcb\x0a\xac\x32\x53\xb8\xab\xac\x5c\xd7\x18\x4d\xc0\x21\xa1\x4c\xe9\x03\x61\x8d\x85\xfd\x5d\xa7\xd9\xe2\x10\x4b\x49\xa7\xfa\x1a\x0a\x8c\xb0\xcb\x39\x92\x2d\x7e\xf7\x0a\x6c\x6b\xdd\x97\x4c\x6f\x7c\x51\xb3\xb6\x99\x9c\xd4\xd2\x3c\x10\x24\x0f\x86\x54\x6a\x61\x52\x4c\x49\x76\x2c\xd1\x1f\x19\x57\x7f\x0c\x80\x64\x9c\x22\x6f\x6a\x23\x5a\x73\xca\x41\x0d\xf3\x0f\x0e\xad\x25\x1c\x84\x83\x84\xc6\x95\x2b\xbf\x2d\x9e\x53\xe9\xdc\x7d\x52\xc9\xae\x5f\x8f\xf4\x6a\x03\x4d\x35\x60\xe2\x3b\xb3\x5e\x3c\x47\xd5\x5f\x64\xc8\x40\x10\x97\xdc\x9a\x73\x41\x2a\x80\xe6\x86\x9f\xfb\x50\xc8\x7c\xae\x1a\x33\x5b\xea\xa2\x51\x83\xf1\xce\x60\x3b\x97\x27\x3d\x32\xda\xc9\xa3\x21\xbb\x21\xa4\x1d\xf0\xd7\xef\xc5\xaf\xd0\x10\x8c\xd5\xa6\xbc\x2f\xa3\xb4\x5d\xc4\x45\xe6\x31\x78\xc1\x12\xaa\x59\x81\x39\xd3\xac\xe3\x6f\x12\xcb\xd8\x26\xe3\x7a\x83\x7b\x58\xb9\xb2\x0d\x54\xe5\x68\xc8\xde\x73\x61\xaf\x60\x69\x61\xdd\xc6\x38\xb9\x3f\x24\x2c\x45\xb8\x50\x33\x03\x6e\x62\x6d\xe4\x0b\x4b\x0d\x5a\xd2\x00\xb2\xf1\x99\x0b\x54\x26\x58\xd8\xcb\x63\x82\x1f\xb8\x1b\xc5\x90\x05\x8d\x00\x70\x1c\x20\x85\x42\xbd\x84\x36\xb5\x8d\x00\x34\x73\xdb\x5a\x34\x55\x02\xa8\xd5\x01\x58\x7e\xce\xa2\xca\x06\x00\x79\xc7\x88\xb4\x22\x7b\x65\x75\x06\xce\xf2\xe6\x74\x25\x19\xd6\x86\xf5\x6f\x1e\xd8\x08\x65\x63\xde\xb1\x33\xd0\x92\xce\xb7\x8e\xd7\x46\x20\x2d\x93\x42\x40\xa0\x49\x53\x9b\x5f\x27\x33\x9a\x95\x76\xf8\x6f\x0e\xfc\x30\x75\x93\x19\x79\x20\x99\x81\x08\x4b\x04\x38\xe1\x8d\x05\xed\x5b\xf4\x7f\x0c\x3a\x3e\xfa\x6e\xc8\x3e\x00\x1b\xce\xb2\x05\x00\x18\xf8\x96\xb1\xaa\x34\x73\xdf\x38\x00\x65\xc3\x5d\x50\x3c\x10\xb3\xd7\x33\xfc\x40\x86\xcc\x35\xf3\x7f\xd0\x3d\xfa\x57\xf4\x5d\x9b\x55\xc8\xf9\xd2\x9f\xd8\x66\xf0\x3e\xf0\x54\x07\xb7\x9c\x65\x94\x96\xdf\x38\x93\x42\x64\xd0\x6b\xc8\x1e\xf1\x38\x44\x94\x3d\xf0\xa4\x16\xb0\x11\x9e\x5a\x2c\x08\x53\x23\xc6\x53\x32\x22\x0d\xee\xb9\x25\x4c\x42\x0b\x01\x17\x3c\x25\x2b\x9d\x6b\x9e\x99\x7e\x02\x33\x88\x2c\xc6\x7e\x3b\x20\x88\xdd\x47\x2c\x7b\x4d\x3e\xa6\xb4\xe6\x91\x7b\xb0\x8f\x4d\xc6\xbd\xa9\x63\xf0\xd2\xca\x67\x07\x70\x21\xd8\x01\x34\x3b\xa7\x32\xac\x5c\x9c\x6f\xf5\x38\x56\x8d\xe2\xfa\x65\x3d\x73\x7b\x59\x05\x30\x26\x00\x35\x29\xe8\x94\x6a\xf9\xbd\xbb\xf3\x11\x38\xe1\x26\x96\x7d\x83\xe9\xd0\xc9\xb4\x5f\x2e\x85\x4b\x26\x3a\xf4\xf4\x57\x3a\xd4\xc6\xbc\xa8\x0a\xf0\x76\x01\xa8\x0c\x23\x90\xad\xac\xbe\xd0\x7c\x78\x6a\xa2\xdc\xc8\x8c\x9a\xb8\xf2\xde\xe9\x39\xd2\xa7\x83\xe7\x26\x0f\x10\x16\xad\x50\x33\x2e\xe8\xdf\x5b\x83\x91\xda\x65\xf4\xd2\x6b\x58\xc6\x6e\x99\x71\xc6\xd2\x3a\x10\xab\x11\x29\x54\xa4\x95\x34\xe9\x4c\x68\x5c\x00\xe4\x85\x66\xb3\x93\x22\x33\x38\x79\x09\x17\xa9\x29\xdf\x23\xa3\x48\x31\xfd\x9e\x17\xef\xb1\xf2\x0d\x52\x8b\x0c\x60\x91\xf8\x92\x19\x66\xd3\xe5\x02\xe8\x5f\x0b\x52\xec\x28\xd8\xce\xe2\x05\x3f\x53\x14\x43\x55\x0d\xc0\x53\x59\x06\x5e\x9a\xb5\xd1\xbc\xb9\x5c\xdf\xdf\xf4\x4c\x65\x10\x97\xe9\xac\x74\x3e\xfb\xda\xa8\xe4\x06\x59\x7e\x2d\x8b\xce\xb5\x41\x1a\xdb\x81\x49\xe7\x39\x62\x13\xea\x32\x52\x03\xfb\xb1\xe4\xf7\xe0\xd3\x63\xab\x2c\xe2\x89\xec\x24\x0e\xb2\xad\x22\x7d\x3c\xa1\xc9\x64\x03\x26\x57\x17\xaa\x97\xad\x77\x60\x40\xf1\x6c\xad\x21\x60\x58\x71\xa4\xe7\xfe\x28\x28\x24\xe4\x2e\xca\x97\x7d\x11\x05\x77\x5d\x84\x3c\x46\x4b\x29\x46\xac\x85\x18\x05\xb7\x84\x8b\x8e\x26\xdc\x76\x03\x84\x6d\x28\xee\xba\xee\xc3\x6e\x3b\x11\x86\x25\xbd\xd6\x23\x51\x4f\x81\x5a\x79\x18\x3c\xf0\xe2\xcb\x18\x10\xbd\x68\xf3\xc4\x27\x63\x2d\x0a\x09\x2e\xb2\xb5\x49\xe4\x26\x36\x55\xae\x4d\x17\xa6\xef\x11\xf8\x8c\xb7\x76\x95\x04\x2e\x80\x32\x24\xde\xe4\x42\xb9\xb4\xc7\x67\x32\x64\x82\x17\x3e\xce\xc6\x0a\x9c\xf0\x6d\x69\x77\x4f\xca\xcf\x4a\xc4\x3b\xc7\x91\x3a\x0e\x65\xa9\xeb\xb1\xa3\x23\x11\x2c\x64\xcb\xd8\xeb\xb9\x8d\x60\x8c\x5d\x70\x26\x8c\x8a\x07\x51\x08\xe0\x8d\x2b\x24\x52\x02\x43\x30\x3c\x84\x30\x7f\x32\x5a\x1e\x95\xc6\x0a\xe3\x90\xed\xf2\xb9\x5a\x58\x20\x64\xe0\xcd\x16\x22\x55\xcd\x30\xb3\x99\xb5\x4d\xee\xbe\x2a\x9f\x4e\x23\x87\x5f\x53\x67\xd0\x91\x55\x6d\x1b\x9b\x74\x0b\x1d\x66\x6a\x54\x12\x04\xda\xbc\xfb\x54\x42\x86\x0f\xce\x5a\xed\x29\x63\xce\x33\x82\x59\x9b\xda\xd9\xf8\xb8\x66\x7d\xa5\x61\x52\x80\xc5\x7b\x50\xa2\x20\x5a\xe7\xc6\x59\x56\x99\x17\x86\x42\x77\xca\xe3\x4a\x1b\xa3\x49\x89\x23\xd8\x29\x04\x26\xc3\x63\x92\xad\x15\x6d\x66\x3e\x58\x4a\x45\xf0\x4a\x59\x88\xad\x53\x7a\x65\x18\x0a\xd5\x98\x8c\xba\x6a\x60\x61\x0a\xeb\x52\x11\x22\x4e\x03\xdd\x6c\x88\x92\x24\x85\xa0\x6a\x31\xb2\x86\xa7\xee\x4c\xeb\xc6\x7e\x79\x6a\x3f\xec\xa2\xd5\x9d\x20\xd7\x9f\x33\x74\x81\x78\x23\xa8\x01\xcd\xb4\x53\xe8\xb2\xdd\x5a\x53\x6b\x4c\x52\x5b\xb6\xb0\x2e\x4b\xae\xdb\x50\x75\x17\x9b\x0e\xcf\x82\xf1\x8d\xf8\xc4\xe5\x9f\x75\x5f\xd8\x2a\x4a\xe1\x1a\x16\x3b\x87\xb8\x32\x17\x94\x0b\x0b\x06\xd8\x25\x48\x29\xc7\x9f\x47\x73\x2c\x70\x96\x91\x8c\xca\x7c\x73\xfb\xe2\x9f\xbe\x5f\x3a\xda\x53\x03\x5a\x29\x2d\x04\xec\x67\x9a\x17\x79\x50\x40\x15\xe0\x49\x02\x90\x01\x6b\xb2\xb7\xb9\x72\x6e\x80\xe5\x45\xc3\x14\x15\x01\x6c\x84\xd6\x89\x3d\x96\x8d\x55\x97\x71\x32\x83\xc2\x76\x13\x4c\x05\x23\x52\x1e\xa1\x0b\xae\xc8\x09\xfa\x88\xe7\xb7\xa0\xf0\x19\x14\xf9\xa9\xb1\xd0\x62\x89\xb4\xe4\x54\x30\xaa\x0e\x86\xcc\x02\xe0\xb8\x55\x39\x4e\x38\x33\xc8\x13\x09\x2c\xac\x6f\x02\x4c\x8e\x0e\x82\x41\x19\x60\x69\x4d\x25\xeb\x25\x5d\xc7\xa1\x71\x50\x05\x20\x87\x4b\x5e\x96\x60\xc7\x4e\x27\xf0\x22\x56\x44\x8a\x80\x12\x01\x1f\xa7\x9c\xc8\x40\xd9\x47\x5e\x66\xcf\xe8\x84\x68\x0a\x19\x32\x3e\x89\x0d\x13\x06\x6c\xc2\x61\x4f\xe8\x4e\x13\xc1\xa5\xb4\xd1\x6e\xa6\x9d\xe5\x31\xc3\xb7\x16\x09\x60\x17\x51\x0c\xcf\x17\x8e\x5f\x2f\x6a\x1c\x94\xc1\x6a\x16\xfb\xc7\xc4\xa3\x1e\xb4\xde\xb4\xdb\xc6\xeb\x3a\x36\x84\x04\xc1\xd2\x5a\x63\x21\xac\xb5\x12\x32\xb7\x86\x64\xee\xc7\x6c\x02\xdb\x0f\x3d\xce\x48\x40\x41\x16\xc5\xcd\x14\x20\xd5\x74\x2d\x04\x81\x62\x62\x06\x46\x6c\x50\x21\x1a\x40\x7c\x13\x04\xa7\x8b\x60\x45\xbc\xbd\xd1\xf4\x0c\x92\x89\xa4\xb9\xe6\x9d\x80\xb0\xc9\xf8\x21\x9f\xbb\xc3\x1a\xbd\x05\x20\x31\x74\xa2\x09\x31\xb0\x56\xea\x2f\xd8\x21\x94\xa5\xd4\xc7\xab\xc1\x55\xeb\x1a\x01\xd7\x2e\xa0\x98\xcd\x88\x25\xdc\xe1\xbb\xde\x0f\x97\xd7\xb7\xfd\xb3\xe1\xbb\x32\x38\xc7\x45\x72\x3a\x46\xe2\x31\x2c\x38\x1b\x32\xef\x4f\xf7\x39\xbe\xb0\x97\x08\xa7\x69\x89\xb0\x60\xa3\x81\x8d\x3b\xb0\xeb\xa9\x58\xe9\x49\xaf\x37\xf3\x9e\x7e\x26\xe9\x75\x0b\x74\xf1\x4e\x62\x9f\x3a\xf9\x8c\x1a\x49\x5c\x73\xc9\x35\x6e\x5f\x3f\x95\x3b\xfd\x5d\x77\x0a\x36\x27\xa1\x92\x73\x07\x09\x77\x0a\x61\x5f\x67\x7c\x02\x34\xa0\x39\x33\x64\x73\x11\xb0\x76\x7c\x8f\x72\xca\x20\x5f\x62\xd9\xd2\xde\xc5\xf3\x58\xa7\xe0\xc5\xe0\xe2\x2e\xae\xcf\xf5\xe3\xe5\x5d\x8c\xb6\xde\xfb\x65\x79\x95\x8a\xb8\x85\x65\x66\xe5\x60\x8a\x65\xec\xa7\x4d\x3d\xf4\x2b\xd3\x34\xd1\x0f\x44\xfd\x6c\xea\x01\xee\x22\x98\xc3\xe2\x4e\x83\x8a\x4d\x46\xae\x24\x64\x77\x32\xf8\xb9\xa1\x88\x64\x1c\xb1\xe3\x90\xad\xa1\x07\x5f\x45\x32\x48\xa5\x38\x32\xb8\xe2\x50\x76\x0e\x2c\xdb\xce\x2d\xa2\x6f\x4c\xce\xf4\x72\x0d\xe1\x6d\x5f\x02\xa7\x6c\x8e\x4f\xcc\xc7\x9d\xdc\xf4\xd7\xa1\x73\x5e\xb7\x55\x2e\x25\xea\x5d\x0d\x1a\xd6\xfa\xbc\xaa\x85\x7c\x59\xc8\x33\x99\x57\x88\x76\x0d\x3a\x13\x44\x59\xbe\x0a\xbc\x19\x3b\xd3\xed\xa0\x66\x8c\xdd\xe8\x2a\x36\x46\x3d\xa9\x2c\xb4\x85\xe8\x13\x45\x22\xdb\x08\x89\xdd\xa4\x21\x96\xcb\xb0\x66\x1e\x62\x38\x20\x1b\xcd\x12\xe6\xde\xd5\x5d\xa5\x07\x61\x2e\x9e\xa9\xec\xe2\x2c\x5f\x3b\xcb\x4f\x2c\x67\xd3\x25\x41\xf1\x67\x43\xd1\x3e\x7f\x06\x32\x7a\x1c\x76\xa2\x73\x71\xda\x70\xf6\x70\xba\x21\xb5\xad\x97\xd3\x58\x8e\xcf\x99\x7f\x2d\x14\x2d\x9e\x63\x5b\x24\x00\x84\x41\x87\xed\xd0\x84\x81\x77\x34\x64\x81\xcd\x53\x1a\xf1\x4d\x9f\x11\x87\x23\x02\x38\xa9\x9a\x9d\xda\x58\x23\x7f\x33\x47\x3b\x50\x8d\x9a\x57\xb3\x18\x09\xa4\xd6\x8f\x3d\x9d\x72\x86\x5d\x3c\xa5\xd3\x78\xac\x3b\x23\x04\x2e\x81\xf6\x02\x08\x04\xdb\x31\x79\x20\xd6\x05\x82\x03\x64\xb9\x20\x9e\x5d\x2b\x47\xec\x2b\xe5\x23\x56\x69\x66\xd1\x4b\xb0\x8f\x52\x29\xed\xec\x12\x53\xdb\xf2\xf2\x03\xbe\x83\x84\x49\x59\x29\x51\xb1\xc6\xb1\x82\x2f\xbb\x98\x09\x80\x12\x42\x73\x36\x74\xda\x96\x1d\xf9\x79\x4e\x92\x4d\xb2\xca\xae\x5c\x8d\xf4\x65\x16\xed\x18\x82\x18\xac\xb5\x6e\x07\x6d\xbf\x66\x17\x0d\x36\x08\x9b\xb6\x44\xbd\x9e\xaf\xca\x12\xf3\xb3\x58\x2b\x21\x55\x4f\xe3\x67\x0b\x86\xb2\xe6\x2c\x6c\x3f\xe5\x34\xac\xc1\x3e\x48\xea\xdb\x76\x4e\xcf\x93\x1d\x75\x5b\xcb\x33\x8a\x2c\xce\xaf\x24\x2d\x6a\xf5\x28\xdb\xf2\xa1\x56\xf1\xd2\x9d\xf0\x6e\x17\xa8\xe1\x22\x81\x2b\x87\x2a\x0a\x01\x01\x2a\x01\x79\xdf\xa4\x06\x35\xe7\x34\x81\xd0\xd2\xe4\x64\x0b\xc2\xd9\x6c\xc6\xb9\x5e\x3c\xa9\x70\xee\xa1\x7a\xaa\x38\x50\x95\xe5\x5a\xc1\xe3\x76\x95\xa3\xb2\x97\x68\x76\x2d\xd1\xac\x61\x06\x32\xd4\x49\x44\x25\xf5\xcc\xe2\x33\xdb\x3c\x87\x78\x82\x10\x42\x65\xaf\x48\x0b\xf2\x0a\x57\x3f\x65\xfe\xaf\x98\x83\x3b\xa2\x0e\x49\xb5\x29\x36\xf4\x28\x00\x66\x07\x2b\x67\x16\x4a\x03\xd6\x34\x0b\xa3\x35\x9e\x34\x53\x14\x69\x70\x61\xea\x18\x41\x8c\xf6\x82\x17\xe8\x91\x4a\xad\x0b\x0f\x19\xb8\x9a\x7c\xf1\x24\xc5\x6d\xc1\xa3\x03\x78\x0b\xb2\x39\x64\x31\xce\xa9\x42\x38\x98\xe1\x1d\x70\x86\x6b\x17\xc7\x6f\xce\xb3\xfe\x00\x66\xdc\x98\x2e\xd0\x94\xb5\xb7\xe2\xd0\x6c\x60\xfc\x29\x1b\xd9\x36\x23\x20\x70\x8b\x3f\x6d\x4e\x40\xa0\xf1\x84\x1a\x66\xe3\x99\xdb\x27\x05\xa0\x66\x6b\x83\xc5\xf1\x00\xb0\x15\x2a\x55\xe5\x6e\xb1\xe8\x1d\x2b\x12\x02\xca\x8d\xe8\x94\x11\x50\xbe\xbe\x8b\x94\x80\x36\x60\xb5\x65\x21\xa2\xee\x93\x66\x41\xeb\xc6\x97\x40\xe5\x2e\xf6\x22\x94\x94\xae\x5a\x25\xa5\xd7\x96\xe8\x1c\x94\x80\xde\x38\x42\x61\x1d\x75\xb0\x0c\x33\x0b\xa9\x28\x88\x1a\x8d\x53\xdb\x48\x95\xf3\x33\xae\x20\x34\x28\x01\xb4\xf5\x5a\xb8\xea\x90\x35\x4b\x20\xcb\x79\xe2\xb6\x51\x3e\x3b\x4d\x88\x0e\xce\x9f\x9b\x85\xb5\x68\x7d\xf2\x61\xff\x46\x59\xb6\xb8\xe9\x55\x11\xb3\x74\x55\xb4\x28\x20\x20\x78\x6c\x12\x37\xdd\x70\x2a\x3b\xc6\xe0\xac\x3c\x17\xf6\xd2\xdd\xa1\x6a\x57\xe3\xce\x9d\x43\x96\xbc\x8c\x6c\xb9\xb1\xf3\xb9\x3b\x35\xbe\xe2\x71\xda\x04\x0f\x16\x70\x46\x76\x86\x8e\x52\x4d\xb2\xd0\x8d\x1f\x80\x97\xca\x0e\x1d\x9b\xf2\x87\x1e\x33\xab\xb2\x25\xd1\x84\x2d\xce\xfe\x13\x4c\x7a\x5d\x0c\xdf\x00\xdb\x52\x58\x1c\x43\x1a\xda\x0d\x00\xbc\xd7\xd5\x7d\x8f\xf9\xb0\x17\xed\x0a\x96\x12\xc1\x08\x56\xb3\xe7\x0b\xd3\x39\xdd\xd6\x38\xfd\x6c\x21\x3b\xa7\x3b\x01\x70\xaf\x84\xc1\xac\x19\x01\xb3\x46\x38\x49\x09\xe7\x5b\x53\x1c\x9b\x0a\x67\x94\x99\x74\xeb\x50\xe9\x56\x91\x3c\xcd\xca\xdc\xd3\xc4\x34\x35\x58\x7d\x6a\xd1\x4c\xfa\xb0\x87\x20\xc8\x2b\x96\xe4\x8b\x08\x1e\x12\xf8\x71\x14\xa0\x63\x8d\x0c\x7a\xe0\x1a\xbb\x79\x8d\x1f\x0d\x9e\xdb\x19\x56\xf8\xd4\x7c\xbd\x6c\xd8\x11\xb0\x08\x24\x20\x7a\x78\x98\xb9\x71\x07\x5b\xee\xe5\x8b\x78\x9b\xe8\x99\xaf\xe9\x11\x39\x42\x3f\x64\x7c\x2c\x0f\x90\x29\x76\x77\x60\x04\x7b\x78\x6e\x20\x3e\xbf\x79\xfd\x21\x52\xbf\xcf\x08\xa9\x65\x86\x14\x6f\xdb\x87\x0a\x40\x11\x7a\xa5\x91\x40\x56\xc8\xa3\x9b\x17\x87\x76\xb6\x88\xd0\xe9\x6f\x7f\xb1\x3f\xb4\xd4\xa2\x5c\x51\x02\x3a\xb4\x8b\xb0\x45\xd5\xbc\x88\x45\x9a\xd9\xb4\x5c\x63\xea\xa8\xe8\xb1\xcb\x4c\x2e\x43\xf6\x23\x7f\x24\x0f\x44\x1c\x20\xac\x50\xce\xb5\x1a\x12\xf8\xd9\x21\x75\x30\x42\x4b\x32\xfe\x54\x8c\x2e\x70\x4e\xd2\x3e\x08\xb3\x41\x82\x84\x35\xfc\x58\x97\x4d\x13\xfa\x04\x00\x29\x98\x6d\x70\xfe\xd7\x21\x33\x95\xa5\x4d\x0c\x07\x70\x1d\xea\x26\x06\x57\xe2\x1f\xbd\x43\xe9\x8f\x47\xe8\x56\x53\x3a\x95\xf1\x78\x83\x64\xd4\xb6\xb1\x0d\xd9\x54\xf0\x62\xee\x75\x71\x3e\x06\x23\x80\x71\x2c\x35\x38\x94\x60\x30\xce\x9b\x94\xe0\x54\xcb\xf4\xcb\x09\x27\x32\x1d\xbd\x32\x8b\x68\x9c\xc4\x12\x12\x90\xe6\x0e\x3e\x7e\xc4\x46\x08\x1a\x3f\x50\x90\xc7\xd2\x0e\x67\xf7\x64\x4e\xaa\x33\x22\x41\xbb\xf4\xd6\xbb\x28\xa4\x39\x0e\x9b\x6f\x1c\xe7\x32\xdb\x8a\xb7\x7f\x3a\x1b\x61\x73\x44\x7e\xd9\xb9\x8d\x1d\x71\x05\xea\x4c\x5d\xe5\xa7\xb2\xba\x38\x42\xea\x1e\x9f\x53\x59\xbb\xab\x42\xcc\x39\xf0\xf4\x6c\xe1\x32\x08\x6c\xe2\xeb\x9c\xcf\x0b\x13\x1f\x43\xc3\x70\x89\x46\xca\xa6\x52\x7d\xc4\x2a\x99\x69\x05\xa6\x4c\x00\xdd\x51\xdc\x50\xc9\x95\x9f\xd6\x12\xd3\x30\x83\xd3\xb0\xf7\x16\xd3\x64\x07\xcb\x9c\x41\x90\x71\xe1\x86\xf0\x57\x96\xa1\x5c\xf7\x17\xd5\x33\x08\xec\x2b\xee\x13\xfb\x04\x6a\xe5\xae\xa0\xa2\x55\xe3\xef\x46\x5b\x31\x98\xee\xce\x23\x92\xb6\xc8\x66\x3a\xb3\xf9\x8b\xe5\x8b\xc8\x4a\x48\x8d\x2c\xa7\x10\x74\x23\x2d\xd6\xda\x87\xa1\x7a\x41\x69\xb9\xc9\xf1\x5c\x8b\x23\x8a\xeb\x5b\x52\x4c\xc9\x01\x7a\xd4\xbc\x40\x15\x42\xdf\x23\x85\xa0\xee\xec\x83\xb9\xa5\x0b\x75\x80\xa5\xe3\x38\xc4\x6f\x4d\x70\x80\x23\x6d\x1c\x87\x38\x51\x05\xf6\x01\x4e\x40\x13\x19\x65\xf7\xba\x33\x83\x23\xe7\x1c\x74\x82\x40\x55\x71\x97\x5a\x16\xed\xe9\x4a\xc2\xde\x62\x97\xdb\xab\xa2\xac\x3a\x69\x94\x4d\x83\x5c\xf1\x66\x6b\x53\x17\x28\xb8\xc6\x2f\xbb\xc1\xd9\x35\x7e\xea\x64\x9f\x4d\xbe\x5d\x92\x47\xd8\xfa\xf9\x2a\x01\x36\x0a\xe6\xb4\x01\x75\x56\x7a\x0a\xb3\xf8\xad\x25\x00\xc0\x38\x4c\xcd\x1d\x6c\xa5\xa9\xff\xf4\xff\x32\x30\xbc\x66\x69\xfe\x13\x71\x31\x64\xe6\xf7\x03\x0f\xdb\xa7\x5f\x28\xf1\x30\x70\x4e\x4a\xc4\x00\x11\xe7\x16\x43\x76\x8b\xcd\x0d\x35\xd8\x27\x1e\xb5\x4c\x8f\x21\x28\x70\x54\xab\x38\x93\x63\x86\xa7\x80\xb4\x72\x00\x11\x36\x20\xae\x96\xb6\x0b\x43\xd2\x06\xca\x1c\xb8\x95\x66\x96\x36\xad\xa0\xac\xc8\x00\x7d\x1a\x51\xd6\x02\x3d\x94\x6e\xda\x66\xea\x77\xe5\x80\x36\x93\xd8\x6f\x7b\x37\x3f\x8d\xae\xfb\x37\x97\x77\xd7\xa7\x91\xd8\x7e\x7a\x7e\x77\x73\xdb\xbf\x6e\x7c\x66\x4a\x7a\x0e\x2e\x2f\x46\x7f\xbd\xeb\xdf\xb5\x3c\x72\x0d\x9c\xf7\x7e\xe8\x9f\x87\xaf\xfc\xf5\xae\x77\x3e\xb8\xfd\x65\x74\xf9\x7e\x74\xd3\xbf\xfe\x79\x70\xda\x1f\xdd\x5c\xf5\x4f\x07\xef\x07\xa7\xa6\x6c\x7d\xf0\xee\xd5\xf9\xdd\x87\xc1\xc5\xc8\x85\x2f\x86\x8f\x3e\x5d\x5e\xff\xf4\xfe\xfc\xf2\xd3\x28\xe8\xf2\xf2\xe2\xfd\x60\x79\xb1\xec\xe6\xf9\xb6\xd6\x60\x08\xae\xaa\x40\xc1\x0c\x04\xa1\xf1\xc2\x12\x2f\xfd\x3b\x98\x39\xaf\x0c\xc5\x1d\x1e\xb8\x7f\x99\xb2\x26\x87\x9a\xc9\x39\x0b\x7a\xc9\x1f\x86\xcc\xbb\x38\xfc\xb5\xa9\xf0\x54\xba\x5a\xc4\xd1\x68\x4f\x50\x0f\x4e\x03\xa8\x04\x51\xa7\x90\x29\xe4\x47\xea\x9c\x62\x40\x69\x50\x79\xde\x56\x53\xaf\x6e\x69\xdc\xa0\x9d\x13\x0c\xc1\x5a\xf8\xd3\x65\xf4\xee\x4a\xb4\xc7\xb4\x70\x82\x1c\x0f\xd6\xcd\xea\x71\x01\xd8\xc6\x82\xe1\xbc\x56\x71\xd9\xe0\x4d\x58\x24\x0a\x5b\xc1\x3a\x6a\x31\x22\xa1\xb8\xe5\x19\x41\x3f\xfd\xa5\x1c\x14\x58\x3b\xad\xf5\xb0\xa8\xc1\x71\xdb\x07\xa2\x30\xab\xba\x8a\x00\xa3\x9e\xdc\x41\xb6\x66\x28\x38\x99\xb6\x6a\x0a\x98\xa6\x0b\x16\xe4\xb6\x46\x76\x6a\x5b\x2e\x0c\x1d\xa2\x0a\x15\x9f\xa0\x1b\x92\x91\x44\x95\x25\x9f\x61\x17\xe7\x59\x31\xa5\xb5\xa2\x49\x63\x32\xc3\x0f\x94\x3b\xbc\x3e\x03\x6b\x08\xeb\x68\x85\x27\x74\x88\x5a\x8f\xc2\x09\xea\xa5\xa9\x8c\x59\x58\x44\x39\x8e\x29\x1e\xc6\xc3\x0e\xd3\x51\x59\xea\x19\x63\xa3\xe1\xa0\xe1\xd6\xdb\x0a\x21\x45\xde\x8f\x1c\x89\x8d\x36\xba\x86\x6f\xb1\xbc\x6f\xa8\x91\xd6\x78\xb3\x59\xfa\xd9\xb2\xc7\xf6\xc2\x6c\x8d\x9d\xfa\xb5\x1e\xc1\x01\xd8\xac\xcf\x56\x78\x9a\x15\x5d\xba\x19\x67\x15\x0c\xe1\xce\xfd\x45\x18\xc4\x4f\x6f\xb1\x6d\x96\x83\xe0\xa8\x8c\x3c\x5d\xae\x31\x8f\x2b\xf8\xf4\xd2\x7f\xb9\x54\x58\x1a\x05\xeb\xb6\xae\x1d\xb7\x96\x88\x67\x6d\xb9\xdd\x45\x24\x40\x67\xa3\x09\x98\xd3\x31\x65\x16\xb3\x93\x78\x7b\xaf\xab\xb8\xa2\xcf\x98\xc7\x91\xc6\x63\xfe\x10\xa9\x5c\xb9\x29\x0f\xdf\x78\x76\x03\x43\xd1\x36\x87\xd6\x9f\x1e\xfb\x61\xc7\xbd\x76\xe7\xe5\x56\x7f\xb5\xcc\x14\x72\x1d\xea\x8b\x6e\xa2\x5a\x8c\x4b\x5d\x1c\x1b\xba\x34\xd9\x2c\xfa\xec\x1f\x94\xae\x6a\x2e\x02\x0f\x7e\x8b\x0d\xa7\xab\xb1\xa9\xba\x60\x8d\x50\xac\xa1\x89\x7c\x7d\x0f\x77\xd0\xfa\xc6\xb0\x39\xae\x54\x74\xbc\x3e\x6b\x50\x5d\xe4\x4f\x08\x4b\xb6\x98\xea\x62\xa6\x9e\x5b\x30\xd2\x03\x84\x4d\x12\x51\x29\x81\xc8\x22\x99\x19\x40\x4f\xcd\xce\x0f\x86\xec\x31\xd8\x90\x28\xcc\xae\x17\xb6\x04\x70\x0f\x9f\x35\x83\xa2\x0f\x51\xf0\x22\x88\x59\x14\x22\xe9\x02\x42\x30\x06\xf7\x12\x63\x76\x05\x81\x07\xfb\xb5\x05\xa9\x6f\x00\x28\xde\x50\xbf\xad\x09\x56\xdc\xcf\x2d\x40\xf3\xde\x15\x94\xf8\x92\x21\x04\x80\xe2\x4d\x23\xd8\x01\x9e\xf8\xcb\x80\x88\x9b\xdc\xb9\x7c\x6c\x33\x59\xf5\x74\xdd\x6a\xff\xab\x9b\xd1\xbf\x1a\x6b\x7c\xd1\x92\xfa\x1c\xb4\xe6\x61\x80\xd0\x21\x54\x1b\xb5\x79\x96\xd6\xd1\x29\xd1\x21\xca\xe8\x3d\x41\x5f\x41\x1c\x53\xef\x6a\xf0\xd5\x01\xfa\x2a\xcc\xe5\xf8\x6a\xa3\x03\x68\xc7\x6d\x31\xc5\x41\x03\x89\x02\x7a\xe3\x63\x07\x7b\x55\x39\x89\x76\xcf\xec\x41\x44\x6d\xe7\x50\x7f\x19\x7d\x43\x99\x22\x02\x30\xb2\x4d\xdc\xa7\x0f\x27\xb4\x8e\x11\x23\x17\x52\xd9\xb0\x76\xe9\x90\x8d\x17\x55\xd7\xc7\x81\xf7\x7d\x74\x3e\xa5\x5b\xe3\x3e\xeb\xf6\xea\xc9\x7f\x3b\x0e\x73\x5b\x7e\x1f\xac\x48\x27\xec\xf9\xda\x82\x25\x17\x93\x2d\xe7\x65\x1f\x1f\xda\x34\xab\xc8\x8a\xe4\x16\xb3\x71\x53\x56\xc9\x3f\x6f\x8d\xdc\x3a\x04\x55\xf6\x9a\x56\xc4\xc6\xd3\xb6\x08\xbe\x7b\x2a\x7b\x5a\x2a\xdb\x45\x3c\x71\x3c\xb8\xf5\x2f\xd0\x53\x23\xc7\x05\xcd\x38\x33\xa4\x56\x26\x3c\x83\x8f\xc0\xc1\x57\x57\xd5\x58\xd3\x13\x1a\xac\xc9\x6a\x57\xe8\x8d\x71\xa7\x1b\x67\x64\x7d\xac\xd5\xa1\xf6\x94\x45\x2a\xe5\xd4\xe4\x0e\x29\x9a\x93\x03\x04\x95\x71\xcb\x10\x00\x7b\x5e\x81\xdc\xe0\x8e\xb3\xe5\xef\x4c\x27\x22\x99\xd1\x87\xf5\x12\xa4\xd6\x95\xc6\xdb\x68\x64\x8b\xf8\x8b\x8b\xde\xc7\xfe\xd9\xa8\x7f\x71\x3b\xb8\xfd\x65\x54\x0f\xc5\x88\x1f\x5f\x9f\xfe\x38\xf8\xb9\x7f\x16\xbe\x70\xf3\xcb\xcd\x6d\xff\xe3\xe8\x43\xff\xa2\x7f\xdd\xbb\xed\x9f\x2d\x35\xa5\x2e\xeb\xac\xa9\x04\x85\x0d\xdd\x6e\x50\xdf\x3c\x88\x9c\xb1\x43\x02\x40\x81\x16\xf7\x1f\xa8\xa4\x36\x49\xd7\x8a\xa8\x77\x03\x67\x1a\x6d\xe8\xfd\x24\xc8\x9f\x39\x30\xc8\x6a\x65\x27\xd4\xba\x93\x42\xf1\xd5\x46\x5d\xb0\xd4\x04\x6a\xa2\xa0\xc6\xf1\x51\x43\x27\x76\xc1\x4e\x50\xcf\x52\x47\x53\xfb\x8c\x23\x2d\x3c\x13\x61\x46\x6f\x42\x32\xfc\xd0\xd1\x21\xaa\xae\xf1\x09\x32\x80\xd0\x41\x4d\x0c\xdf\x20\x88\x7c\x58\x10\xf6\x95\x42\xe4\xf3\x3c\xa3\x09\x55\x41\xe2\x0d\x17\xd6\xe9\x60\x9c\x6a\x10\xfd\xb5\x82\xb8\x76\x16\xa3\xb1\x73\x9d\x3f\xf4\x2f\xd7\xb5\x7d\x7f\xa2\x14\xb7\xc9\x8b\x2b\x51\x46\x77\xa0\xd8\xb7\xb8\x52\x6b\x80\xa8\x1b\x8c\xee\x29\xcc\x03\xf5\x08\x78\x9b\x3c\x63\x03\x3d\xb0\xab\x64\xf0\x68\x6e\xc4\xcd\x0a\x54\x2f\x8f\x1e\x89\xce\xf5\xf2\xf0\x91\x6e\x94\xfa\xc2\x41\x20\x11\xfa\xfe\xce\x0a\x01\x8f\xd6\x74\xe3\xd7\x00\x3d\xd9\xbd\x81\x39\x44\x82\xe4\x5c\x69\x05\xcc\xf8\xc9\x0f\xb4\x50\x45\x71\x46\xff\x0e\x08\x30\x82\x1c\x05\x71\x05\x90\x60\x93\x86\x01\xd5\x36\x3b\xfb\xe9\x0b\x02\x97\x75\xf0\x6a\xa5\x80\x9d\xf2\x7e\xd1\x5a\xf6\xe4\x45\xab\xcd\xc6\x2b\xd6\x56\xe2\x61\xbd\xe2\xab\x11\x51\xad\x2e\xbc\x0a\x55\xe8\xb1\x6c\xa9\xba\xda\x75\x8c\xcf\x53\x7b\xb5\x9e\x80\x5e\x21\xb9\x97\xad\xbb\x5a\x19\xcc\xeb\x29\xbe\xba\x72\xdd\x5e\x2f\xc2\x40\xc3\x40\x3b\x14\x5d\xf5\x3e\x16\xa8\x8b\xb2\xde\x75\xe8\x42\xc4\x22\x47\x8b\x3e\x54\xfe\x5e\x6c\xd6\x6e\xb1\xbc\xdf\xba\xbb\x5b\x2c\xef\x5b\xba\x5a\x75\x73\x9e\x46\x8e\x9c\xca\xb2\xd9\xe0\x35\x0b\xe1\x15\x96\xef\x6f\xbf\x8f\xfa\x0f\x84\xa9\x9d\x08\x73\xd0\x44\x43\x06\x61\x37\x93\xac\x01\x4d\x1f\x9c\x95\x1c\xc9\x17\xef\x0a\xc2\x26\x94\xc0\xc0\x58\x89\x7a\x24\x84\x39\x37\x7a\x9b\xc7\x52\x4f\xad\xdb\xf6\xc0\xab\xf5\x75\x59\x11\x5d\x6b\x57\xbb\x2c\x9e\x52\x46\xc6\xf1\x04\xe2\xf6\xd7\xd2\xfe\x22\xa9\xc8\xa8\x7c\x61\x5d\x5d\x23\xc9\x57\xf7\xdc\xf4\x39\xc3\xb2\xda\xe5\xca\x2d\xdf\x20\x81\x3e\x6a\xe6\x03\x81\xfc\x92\x9d\x14\x34\x5c\x23\x8f\x10\x06\x72\x27\x32\x88\xc2\x5c\xaa\xf2\x9b\xc2\x2d\x85\xc8\x4a\x1b\x10\xee\x20\xd0\x98\xc1\x1c\x0d\xd9\x19\x99\x0b\x02\xa5\xc4\x4e\xd0\x55\x46\xf4\x75\x59\xe8\x2b\xb3\xc8\xb2\x91\xaf\xaa\x2e\x15\xc1\x6d\xfc\x69\x2d\x80\x9c\x27\x9f\x97\x13\xd4\x96\x4f\xcc\x81\xed\x2c\x9f\x59\xb0\x06\xbb\xcf\xfe\x0c\xd6\x17\xec\x6d\x60\x75\x89\x45\x6e\xd0\x99\x16\x26\xf4\x0e\xf4\x6e\x1c\xea\x06\x92\xfe\x5d\x5f\xd5\x82\xc8\x19\xcf\x96\x4e\x61\x6d\x08\xa3\x75\xe6\xe0\x96\xf2\x09\x27\x61\xa3\xa2\x46\x6d\xa1\x99\x1d\x2e\xa3\x33\xd3\x44\xe3\x15\xb8\x6c\x8a\x1e\x50\xd7\xbb\xca\x2d\xf4\x9b\x0d\x33\xb2\x43\x03\x07\x50\x69\x97\x08\x61\x58\x4a\x3b\x6f\x29\x81\x2e\x8c\xa3\xca\x7f\x1e\x94\x84\xf3\x51\xc5\x54\x49\x24\x95\x28\x12\x00\x29\x9c\x11\xb1\x16\x30\xa2\x8f\x3d\x2f\x9b\xd0\x03\x6e\x66\x6d\x16\x4b\x17\xe4\x14\x1b\x43\x21\x23\x00\x19\xbb\xc5\x66\xca\x8d\x32\x74\x3b\x03\xdd\xd6\x5f\x10\x57\x83\x7b\x32\xb7\x41\x44\x2d\xd1\x04\xf6\x90\x24\xeb\x43\x92\x58\x60\x65\x4f\x7b\x00\x20\xa4\x04\x64\x0c\x96\x9e\x81\xea\x25\x6f\xad\x79\xab\x12\x1d\xa2\xdd\xe9\x94\xd5\x10\x7d\xa1\xcf\xfd\xd9\x96\xae\x05\x3d\x99\xc5\x08\xf2\xc4\xb6\x09\x2f\x88\xe6\x6f\xcc\xa2\xd0\x26\x49\x91\x49\x7b\x34\x80\x89\x76\xed\xbc\x49\xd8\xd4\x49\x1c\xb2\x6b\x3d\x0a\xf3\x45\xe9\x62\x2e\x6b\x90\x91\xb2\x5a\xc2\x04\x61\xfb\x15\x2c\x7a\x5b\x84\x8f\x1c\x05\x25\x18\xdb\x26\xb6\x83\x52\x1f\x3f\x98\x77\xd0\x24\xc3\x53\x07\x16\x00\xe5\x3d\x27\xa5\x9e\xa4\x85\x3d\x53\x2f\xd3\x24\xae\x9a\xcb\x83\x2a\x9b\x8c\xea\x45\xe5\x82\x38\xd8\x46\xf8\xcc\xf3\xaf\x26\xe6\xea\x34\x31\xe6\xac\x17\x72\xc8\x82\x3e\x96\xa0\x7c\x19\x6d\x68\x43\xb1\x1f\xf6\x99\xa6\xde\xa2\x0f\x7f\xb2\xe6\x7a\x8a\x76\x7a\x39\x9e\x83\xdd\xca\x9c\x41\x3e\xf1\xf7\xcf\xad\x0d\x39\x3e\x82\x11\xff\xf7\x7f\xfd\xcf\x11\x5d\x6a\x93\x0c\x0e\x65\xe9\x9b\x2b\x1d\x30\x41\xfc\x5b\x50\x25\x12\xc3\x45\x81\x2a\x2c\xb0\x72\xa4\x02\xdc\x9a\x6d\xe2\x84\x66\x58\x3e\x9d\x33\xb8\x11\xe8\xdf\xd8\x91\x42\xae\xbe\xca\x2d\x6c\x06\x69\xb2\x6e\x34\x09\x15\x92\x08\x43\x82\x1e\xe0\xa0\xa1\xf0\x0e\x44\x05\xad\xb0\x6e\x93\x1c\xd3\xb5\xa2\x4b\xf5\xfb\xcd\x98\x41\x91\x99\x0d\x4f\x89\x18\xa5\x45\x14\xae\xb8\xaa\xed\x2b\xfd\xd1\x59\xa1\x16\xab\xdb\x97\x19\x4e\xee\xd7\xc1\x69\xd2\xef\xb7\x34\xbb\x5a\x94\x09\x9c\xca\xb1\x38\xd3\x82\x82\x44\x2a\x28\x48\x36\xca\x29\xd2\x33\x81\x35\x32\xa8\x9c\x14\x88\xa3\x96\x77\x1a\xac\x46\x18\x39\xd4\xd2\x74\xcc\xc6\xa3\xdf\xa6\x47\x43\xf6\xde\xc0\x47\x83\xa8\x6c\x06\x90\x40\xed\x22\xf2\x79\xce\x25\x89\xf2\x04\x1a\x10\x6d\x6d\x26\x8f\x1d\x46\xb3\x14\x55\xa9\x5c\xb5\x95\x10\xf5\xe2\x78\x56\xf5\x0d\xaf\x4f\xb9\x99\x02\xb7\xba\xa7\x13\x3a\xa7\x9a\x76\x46\x8d\x27\xed\xe9\x6a\x8a\x96\x51\x04\x80\x6c\xa0\xb2\xc5\x01\xf2\xd3\xab\x10\x44\x46\x1e\x88\xc0\x53\x2d\x63\x61\x9a\x85\xb8\xc5\xb1\x71\xa4\x85\x9d\xac\x3a\x40\x65\x92\x0e\xb0\x05\x94\x56\x47\x10\xa7\x32\x34\xd1\x62\x1c\x0c\xbe\x75\xde\x42\x93\x2b\x74\x0d\xb9\xa9\x17\xe2\x37\x2f\x88\x42\xe4\xb3\x22\xcc\x38\x91\x6f\x5d\xc6\x47\x3d\xe0\x15\x35\x07\xc7\xb7\x5f\xea\x4f\x5e\x69\xb6\xe7\x32\xf9\x5c\x4a\x4b\x2a\xed\x0d\x63\xeb\xa0\xcd\x30\x4b\x6d\xde\x52\x59\x4d\xdd\xcc\xce\x58\x2e\x7c\x74\xaa\xcd\xbe\x09\x80\x2f\x4d\x9b\x06\xa1\x13\x2e\x32\x27\xc9\x6b\x59\x12\x1c\x7a\x5c\x68\x91\xaa\x60\x8a\x66\x9a\x38\xec\x18\xb4\x9e\x57\x30\x0f\x3d\x03\xb1\x94\x6d\xe8\x26\x54\x4a\xca\xa6\x23\xbb\x92\x2e\x05\xa7\xdb\xc5\x10\xd3\xd4\x47\xd3\x94\xf9\xf1\x07\xd7\xd0\x72\xcb\xa4\x21\x6b\x3d\x7d\x9f\xfc\x03\xa2\x20\xe3\x6e\x32\x16\x32\xc4\xe5\x0c\x8d\x68\x1a\x15\xe7\x83\x89\xae\xa3\x56\x83\x6c\x56\xcf\xa7\x2d\xaf\x10\x89\x24\xa4\x2c\x99\x94\x03\x88\x0d\x55\x2d\x19\x4b\xb2\x35\x53\x69\xc0\xbc\x88\x66\xcb\x18\xf8\x8c\xcb\x4a\xd2\x13\x76\xdd\xd9\x00\x58\x9c\x65\x63\x9c\xdc\x7b\xf1\xd8\x2b\x89\x5c\x38\x18\x58\x2d\x36\x42\x9d\x0b\x43\x5c\x7a\xa0\x09\x48\x37\x26\xa1\xd8\x10\x93\x41\x54\xb0\xc3\x2e\x3b\xb7\x25\x0d\x99\x29\xb2\x07\xea\xa4\x19\xbd\x89\xa6\x4d\xc9\x3c\xe3\x8b\xbc\xe5\x3e\xab\x26\x94\x6c\xe3\x1b\x6e\xcb\x67\xd9\xe9\x55\x56\x61\x7a\x6b\x5f\x66\xb5\x08\xf8\x1d\xe0\x7b\xac\xc1\x25\x3f\x64\x7c\x0c\x76\x29\xab\x17\xba\xa8\xee\x20\xb8\xb8\x7a\x9e\xd7\x8d\x35\xaf\x9e\x48\x2a\xe7\x19\x5e\x2c\xeb\xc1\x44\x39\x3f\xed\xbe\x99\x4c\xd2\xd5\x66\x9b\xee\xf1\x81\x8d\x9f\x3f\x49\xe9\x48\x27\x09\xd8\x1a\x92\xc0\xbf\xac\xf9\x83\x38\xfb\x87\xc9\x2f\x39\x9a\x0b\xae\x25\x05\x3e\x64\x0a\x4f\xdd\xee\x5a\xe9\x92\x3f\x32\x22\xe4\x8c\xce\xa3\x02\x38\x5b\x47\x24\x5a\x92\xb6\xff\x63\xe2\xef\xd6\x60\x9e\x7c\x7e\x68\x52\xc5\x35\x81\xc8\x39\x4e\x4a\x7b\x55\x92\x61\x29\xe9\x64\x11\x64\x78\xfb\xe0\x2e\xc8\x18\xf0\xc5\x1f\xe2\x22\x2a\x8d\xae\xbf\x28\xa3\x78\x37\xe9\x96\xdb\xa7\xb3\xdc\xc5\xa7\x90\xa6\x21\xa0\x0e\x94\x3e\xad\x25\xf5\x77\xac\xce\xba\x6d\x96\x8b\x1d\x99\xcd\xf5\xd8\xdd\xc0\x5c\xa6\xf6\x66\x79\x9b\x4b\x41\x22\xda\xcd\x1c\xa5\xb0\x6b\x87\x6d\x15\x2d\x9f\x36\x1e\x4e\x03\xe6\x98\xda\x2f\x7c\x5e\x47\x94\x05\x8c\x23\x6c\x04\xb3\x46\x5a\xf9\x73\x46\x47\x7d\xbe\x7c\x5a\x3a\xa4\x0a\x97\x1d\x1c\x20\xb9\x15\x60\x4b\x77\xd2\x3e\x23\x19\xd9\x49\xb4\xe2\x06\x74\x5e\xf5\x6e\x07\x14\xbe\x94\x88\x4a\x00\xdc\xd5\x66\x92\xf5\x69\xbc\x3a\xaa\x92\xba\x77\x36\xa8\x0d\x22\x3b\x5b\x10\x29\x9a\x47\xfe\xc9\x0c\xd4\x06\x77\x36\x11\x98\xe6\x9c\x29\x6c\x7d\x57\xd5\xb0\x09\xda\xca\xb4\x60\x4f\x4c\xd9\x8d\xdb\x47\x87\x1d\xe2\x85\x5d\x27\x7d\xbd\xde\x63\xf0\xc2\xa1\x90\x2d\xa3\xfb\x40\xba\xc4\x23\xac\x3c\xa2\x1b\x71\xd3\xb6\x2b\xb1\x1b\xa9\x58\x5f\xa2\xe2\x68\x4a\x94\xa9\x03\xea\x8b\x9d\xbe\x41\x32\xd9\x59\x6c\xf7\x4e\xb7\xa2\x99\x09\xac\x77\xaa\x6f\x88\x92\xee\xc6\xab\xa1\x89\xd9\x9d\x3a\x74\x69\xaa\x65\xd2\xe7\xeb\xdd\xa2\xd7\x71\x92\xaf\xad\x55\xe5\xe9\x2e\xd8\xd5\xf4\xb2\x13\xfa\x00\x94\x13\x0c\x81\xed\x85\x05\x46\x85\xc3\x1b\xf8\x0c\x6b\xaa\xfc\x0a\x6f\xac\x1d\x5e\x27\x3f\x6c\x6d\x39\x9f\x62\x7b\x6d\x34\x65\xe7\xcd\x7d\x4a\x52\x5b\x77\x2c\xbb\xd0\x51\x9e\xd8\x28\x62\xa9\x71\xa5\x76\xbd\x0f\x8a\x40\xa8\xcd\xff\x5a\x3a\x16\xed\x96\xed\xf2\x90\x35\xe1\x62\x6f\x9f\x87\x91\x71\xe3\x1d\x18\xcd\x05\x99\xd0\xcf\x1b\x89\xe2\x57\xf0\xa9\x55\x2f\xf5\x32\x57\x90\xb6\xc1\xda\x01\xc8\xdc\xa5\xb6\xef\x56\xfa\x51\x50\xa5\x08\x1b\x32\x80\x15\x96\x7f\x3a\x39\x3e\x1e\x17\xc9\x3d\x51\xc7\xf7\x64\x81\xb8\x88\x7e\xda\x14\xc5\x63\xf7\xa8\xe0\x66\x5f\x67\x4a\xcd\xe5\xc9\xf1\xf1\x94\xaa\x59\x31\x3e\x4a\x78\x6e\xe2\x8d\xb8\x98\x9a\x7f\x1c\x53\x29\x0b\x22\x8f\xbf\xff\xee\xbb\x72\x8b\xc7\x38\xb9\x9f\x9a\xbc\xc8\xba\x15\x27\xda\xf2\x9b\x7a\xe5\x9c\xf5\x91\x56\x05\x67\x23\xf2\x59\x13\x69\x53\x6d\xe6\xae\x90\x13\x12\xf5\x3e\xdd\x20\xb9\x60\x0a\x7f\x3e\x41\x1f\x4d\x21\x6d\xf4\x23\x2f\x84\x44\x67\x78\x71\xc8\x27\x87\x39\x67\x6a\x86\x3e\xc2\x7f\xed\x4f\x8f\x84\xdc\xa3\x5f\x08\x16\x76\x7f\x8d\xc0\xe2\xc1\x9a\xc1\x0b\x21\x0a\x26\x6d\x85\xee\xef\xfe\xdd\x95\xe8\x3e\x41\xdf\x1e\x7f\xf7\xef\xe8\x8f\xf0\xff\xff\x7f\xf4\xc7\x16\x4d\x6d\xbd\x9c\xdb\xb2\x7c\x7a\x63\x6b\xb0\x52\x1b\x14\x2b\x3a\x15\xbc\xdc\xa9\xc6\x96\xef\x69\x72\xcf\x27\x93\x91\xa2\x39\x31\xc1\xa1\x23\x2c\x6a\x58\x4a\x1b\x02\x98\x50\x5b\x5a\xc5\x54\xa7\x2c\xa1\x4d\x6d\xa7\x26\xf5\xc3\x1d\x37\x59\x94\xa5\x25\xc0\xa7\x12\x95\xeb\xa0\x12\xbe\x22\xa9\x3e\x15\xeb\xf8\x4f\x9c\x75\xa6\x5e\x00\xae\x4c\x73\x0a\xcb\x05\x79\x3f\x68\xe8\xd4\xe7\xab\x4a\x97\xd7\xa3\x0d\xbe\x18\x17\x32\x4c\xed\xa5\xdc\xc7\xb2\xd6\xf9\x6a\xcf\xf1\x0d\x17\x5b\xc9\xcb\xf7\xa4\x16\xc2\xd2\x11\xc6\xd7\x15\xa9\x08\x0b\x57\x41\xd6\x01\x17\x1e\x48\xc8\xe8\xb5\x16\xec\x7f\xb5\x15\x8a\x0a\xe3\x6b\xeb\x76\xe8\xf5\xd4\xcf\xfc\x27\xab\x86\x09\x8e\x37\xf7\x76\x09\x63\x0e\xa3\xd5\x57\x9c\x66\x89\x0d\x23\x6e\x40\x1b\x58\xb5\xa1\x37\x66\xcf\x88\x34\x8d\x83\x17\x18\xa2\xef\x98\x93\x4c\x6c\x52\x4a\xe3\x7e\x42\x0e\xf6\x2e\xe0\x19\x6a\x50\x7b\x5b\xf0\x39\x63\x2a\x2b\x59\x84\x83\xbb\x04\x91\x2d\x28\x8b\x83\x35\xf7\xd8\x10\xd1\xc2\x80\xdd\x1e\x20\x81\xc1\x91\xaa\x66\x98\x19\x25\x6a\x82\x13\xca\xa6\x07\x01\x98\x01\xe4\xca\x84\x3c\xab\x69\x25\x6f\xb1\xbc\xdf\xad\x73\x70\x6b\xf0\x7f\x9a\x96\x00\xd4\x86\x22\xad\xef\x90\xd6\x32\xb9\x15\x96\xf7\x3b\x2b\x8e\xae\x97\xa2\x4b\x59\x74\x17\x7b\x4f\x42\xa1\x0d\x90\xfd\xb4\x72\x15\xa0\x3f\xb9\xf0\x49\x53\x78\x94\x66\x24\xad\x62\x60\x54\xc7\xbf\x8a\x10\x8c\x5a\x1c\x78\xa1\x00\x22\x21\xd7\x8a\x5f\x6a\xcc\xb3\x6c\x61\x8e\x92\xbe\xb9\xb0\xbc\x97\xbe\x02\x05\x92\x39\xce\xb2\x03\x24\x48\x21\xf5\xd5\x7b\x80\x24\xc9\x26\x87\x0e\xad\x30\x45\x19\x9f\xd2\x04\x67\x68\x9c\xf1\xe4\x5e\x0e\x99\xbe\x4a\xd8\xd4\xdc\x80\x73\xc1\x13\x22\x65\x70\xf7\x96\x71\xf9\x36\x88\x15\xca\x4f\x28\x22\x72\xca\xa8\x54\x34\xa9\x54\x94\x3e\x1a\x32\x53\x4e\x45\x6b\x43\x09\x37\x45\x33\x60\xb8\x5a\x16\x20\x06\x3f\xa1\x60\x16\x0b\x16\x18\xba\x4d\x8b\x76\x51\x15\x6d\xd4\xbb\x83\x2c\x6f\xb7\x3d\x23\x15\x9f\x86\x15\xf4\x7c\x6a\x3f\x83\x33\xb4\x8c\x62\xae\x63\x72\xf6\xd4\xe0\xc9\xdc\x83\x87\x39\xa2\x28\x63\x46\xa2\xbb\xcd\x87\x52\xbc\xb2\xe4\x57\x18\x72\x4b\xca\xeb\x2a\x9a\x3e\x35\x25\xaa\x2d\xfc\x70\xd5\x2f\xe6\x4a\x4f\x5b\x88\x79\x7d\x49\x3c\x68\x22\x71\xcb\xa3\xd7\x5e\x5f\x25\x07\xbe\x6e\x34\x96\x36\x64\xe4\xd0\x63\xdb\x69\x7e\x68\xf0\x07\xa1\x93\x4a\x11\xe2\x3a\x45\xbd\xa6\x5a\xd1\xfe\x92\x5e\x97\x2d\xae\x14\x24\xd6\xac\x1b\xed\x56\xba\x15\x07\x24\x1a\x5b\x4c\xb6\x90\x68\xda\x3e\xa8\x8e\xf6\x0a\xd1\x94\xd1\x61\x28\x0e\x9e\x3e\xd0\xb2\x0a\x90\xed\x6d\xa9\x3d\x43\xcf\xa8\x93\x31\x23\x24\x8a\x8d\x0d\x74\x95\xa9\xd4\x32\xa3\xa8\x29\x90\x65\xeb\xeb\x6b\xa9\xb6\x48\x12\x42\xd2\xc6\xe0\x02\x3d\xa2\x57\x87\x73\x71\x85\xd5\xcc\x24\xd9\xe4\x5c\x99\x22\x14\x06\xe7\xc2\x19\x5a\x0c\x70\xc3\x38\xe3\x63\xb8\x90\x00\x02\xc3\xa5\x5b\x04\xe1\xd2\x66\xde\x24\x45\x5f\x07\xf7\x8b\x4f\x00\x6b\x2b\x72\xb6\x43\xf8\x8b\xaa\x75\xa6\x15\x04\x23\x46\x48\x3f\x42\x57\x95\x8c\xc3\x60\x56\x13\xac\x59\xfe\xd2\xec\xd5\x17\x82\xcc\xa8\x4c\x62\x27\x90\x19\x11\x7d\xee\x00\x32\xa3\xd3\x18\x33\x3e\x7d\xd2\x1c\x0e\x3d\xa9\x73\xde\x3d\xb0\xd6\x64\xad\x1b\xd1\x2a\x22\x1f\x77\x10\x16\x4d\x44\xf4\xba\xe0\x40\x2a\x35\x00\x5e\x16\x0e\xa4\x32\x98\xd7\x0c\x07\x52\x19\xea\xeb\x85\x03\x69\x18\x68\x07\x38\x10\xe3\xdd\x1d\x69\xa2\xee\xc6\x14\x20\x4e\x70\x5c\x4c\x6e\xe0\xbe\x5b\x3a\x46\x5b\x68\xd6\x5c\x1f\x4e\x84\xb3\xa8\x54\x30\x5a\x1b\x53\xde\x16\x0f\x83\xe5\x56\xb4\xe7\xdd\x2f\x54\x1a\xed\x79\x9e\x61\x16\xb3\x7d\x28\xe4\x27\x48\xa2\xc9\xcf\x30\xaa\xb2\xc2\xf9\x81\xb5\xea\xe8\x51\x18\x43\x66\x82\xe7\x36\x47\xa7\x0d\x2c\xf6\xf5\x64\x23\xac\x87\xb4\x02\x80\x18\x11\xab\xef\x94\xce\xfe\xb1\x82\xb7\x38\xe3\x8f\x56\x62\x03\xf2\xb3\xb5\x99\xd7\x54\x22\x42\xac\x96\x0a\x4d\x77\xc4\x6a\x89\x26\xb2\xc7\x6a\x69\xde\xe0\x57\x8b\xd5\x52\xd9\xf3\x6e\x58\x2d\x4d\x5b\xbe\x01\x56\x4b\xd4\xcc\x17\x83\xd5\x52\x59\xd1\x2f\x06\xab\xa5\x32\xaf\x3d\x56\xcb\x17\x82\xd5\xb2\x9a\x8f\x34\xa2\x91\x34\x1f\xde\xf5\xd0\x48\x1a\x45\xf8\x76\x16\xb1\x6d\x22\x2d\x08\x0c\xcf\x8c\x46\x12\x4d\x60\x1f\x78\xb3\x7e\xe0\x4d\x23\xf1\xd9\xbe\xa1\xee\xb5\x8d\xc6\xa9\x5e\x64\x1d\xf1\x48\xa2\xfd\xe9\x6c\xd5\xda\x05\x25\x3e\x6d\xa8\x17\x18\xd7\xbb\x6a\xdc\xbd\x68\x15\xa5\x45\x31\xd2\x92\x91\xcb\xca\x37\xc2\x79\xe8\x58\xdc\x53\xee\x06\x21\x63\x95\xe5\xf5\xe6\x78\x43\x8b\xbb\xb4\xbb\x36\x94\x69\xdb\x82\x5e\x5d\x56\xcd\x9a\x76\x6f\x37\x08\xb0\x7f\x37\xdb\x9e\xa0\x72\xe3\x6e\x9a\x5d\x75\x91\xf9\x9c\xe3\xa8\x90\xa4\x4f\x18\x2a\x0b\x49\x1a\xd9\xb8\x92\x27\xa5\xd5\x7f\xfb\xe5\x94\x4a\x25\x5a\x83\x26\x6a\x23\xdc\xc6\xc3\x36\x2f\x36\xc9\x6e\x9c\x6e\xf6\x59\x4e\x72\x2e\x56\x45\x6c\x34\x7e\x29\x15\x17\x78\xba\x4a\x11\x6f\x56\xab\xe6\x33\x92\x6b\x21\x68\xb4\x6e\x23\x5d\xf7\xdb\x67\x93\xd9\xa4\x86\x86\x6a\xa2\x81\xff\x4c\xbf\x9b\xda\x0a\xa1\x5d\xb7\x7b\xdb\x6d\x76\xa5\x48\xd7\x33\x14\x3b\x34\xa1\xe5\x96\x2b\xfb\x52\xe4\x25\x05\xfa\x6e\xf4\xc3\xfb\x30\x88\x0d\x3d\xed\x2d\x78\x2f\xf5\x0e\xc1\x11\x27\x89\x38\x0c\x65\xd4\xc8\xf9\x55\x1f\x41\xb4\xee\x4e\xb7\xd9\x62\xd9\x0b\xd1\x1a\x10\xd6\xc5\x74\x64\xca\x7b\x6b\xc5\x29\x44\x7a\xaf\xd2\xf7\x78\xd1\x90\x61\xd2\xcd\x36\x49\x99\xfa\xf3\xbf\xad\xe3\x21\x07\x21\xdf\xae\xdb\x84\x66\x04\xe1\x24\x21\xd2\x58\xb3\x6c\xc0\xa0\xa9\x9c\x58\x88\x6c\x9b\x5d\xd5\x87\x43\xcf\x5b\xb3\x4c\x0f\xa2\x94\x96\xc4\x63\x2e\xe0\x99\xe0\xc5\x74\xe6\xac\x19\x9a\x0a\xf5\xd4\x9a\xf6\xf2\x67\x13\xde\xb1\xcd\x5e\xfe\x50\xd0\x6c\x33\x5b\x51\x19\x51\xa5\x87\xf9\x61\x70\x8b\xe4\xcc\xd3\xff\x18\x9a\x6d\xdc\xd8\xfa\xa0\xbb\xf7\x69\xbf\xf5\x96\x51\xe8\xe6\xc0\x01\x87\x4c\x78\x96\x81\x6d\x4f\x92\xfc\xa1\xad\xf2\x22\x4c\xf8\x96\x6e\x58\x5f\x0e\xbe\x06\x0f\x81\x54\x38\x9f\x77\x92\x68\xae\x8c\xb0\x25\x91\x1b\x7d\xd5\xb5\x67\x02\x76\x38\x23\xac\xc9\xda\xf3\xa9\x0e\x00\xfa\xc6\xc2\xa6\x5c\x18\xcf\xce\x42\xa7\xdc\x92\x3c\x73\xf8\x54\xd3\x3c\xd6\x60\x01\x51\x34\x71\xc9\xe3\x9d\x5f\xda\xc8\xf1\x3d\x3d\xbf\x21\xeb\x45\x71\xc7\xae\xa4\xcb\x78\x51\x06\x2e\x1a\x91\x38\xe4\x24\x80\x9b\x68\xed\x04\x8a\x5b\xeb\x01\x08\xee\x06\xf3\xc6\x04\x56\xb9\xe0\x29\x88\xba\x24\xe9\x21\x4e\x16\x49\x46\x93\x40\x05\x9c\x0a\x3c\x9f\x35\xb1\x9b\x7a\x89\xf2\x3d\xba\xc0\xd2\x91\xed\x1c\x5d\xa0\x0d\x0c\x78\x9d\xa8\x51\x47\x57\x50\xdd\x72\x8f\x7a\xd0\x80\x7a\x70\xe0\xf3\x7a\x59\x09\x6b\xfc\x82\xe9\xa2\xf5\x73\xb7\x87\x3e\x78\x01\xe8\x83\x4d\x0e\x5f\x89\x6b\x10\x1d\xbb\x3d\x1c\xc3\xbb\x4e\x70\x0c\xfe\x12\x7c\x55\x19\xf6\xed\xe7\xf1\x85\x33\xb7\xeb\x03\x7b\x49\xf8\x85\x06\x71\x61\x1d\xb9\x69\x19\xfe\xc2\x32\xba\xe8\xb4\x2e\x2f\x8b\x86\xb0\xde\xca\xac\x05\x74\xd0\x78\x77\xbd\x12\xd8\x83\xf6\x6d\x78\x25\xe7\x66\x97\xb1\xfd\xeb\xd5\x6d\x08\xe3\xfb\xd7\xd1\x6e\xd6\x0b\xf5\xf7\xf4\xf0\xb6\xc2\xfd\x4b\x2c\xf3\xcd\x42\xfe\x7b\xce\xa5\x4a\x04\x9a\xf1\x0c\x00\xe6\xa3\xd5\xf2\x1d\xf8\x60\x55\xbf\x40\x6e\x33\x6e\xe6\x24\x31\xda\x56\xbd\x90\xeb\x52\x92\x7a\xeb\xc1\xfd\x81\xfc\xbb\xdb\x00\xff\x70\x65\x37\x0d\xf2\x5f\x31\xb8\x65\xa2\xc7\x86\x81\xfe\x41\x8f\x4b\x9d\x4e\x6e\x76\x9d\x1c\x4f\x55\x62\xd9\x20\x26\xa8\x06\xf8\xbe\x3d\x08\x42\x8e\x3f\x8f\xe6\x58\xe0\x2c\x23\x19\x95\x79\xdb\x99\xa7\x4c\x91\x69\x95\xd2\x22\x63\xec\x9f\xbe\x5f\x1e\x80\x19\x7b\x1f\x5d\x8d\x5f\xf0\x3f\x16\xf9\xd8\x90\xa2\x1b\x88\x2d\x8c\xa0\x38\x12\x05\x0b\x21\x5c\xfc\xc6\x20\xc0\xab\x35\x45\x83\x27\x05\x44\xe7\xe0\x64\x06\x55\x38\x26\x98\x0a\x46\xa4\x5c\xb3\x70\xb3\x8c\xf5\x44\x73\x03\xd3\xbf\x47\x12\xea\x61\x14\x27\x9c\x04\x99\xca\x10\xbe\xe1\xb0\x5b\x97\xb1\x8a\x7d\x30\x60\x3d\x18\xb0\x79\x6d\x5e\x63\x40\x60\x59\x3b\x7c\xcd\xa0\xc0\xb6\xed\xdf\x05\x13\xd8\x61\x70\xe0\x0b\x47\xd1\x3d\x4d\x00\xdd\xcb\x46\x3c\x3e\x45\xb0\xe3\x3e\x24\xf0\xed\x85\x04\xb6\x1f\xdb\xb5\xc2\x02\x57\xa4\xde\xbb\x5e\xb6\x8d\xc1\xf2\xe9\xe0\x4f\x1a\x87\xe5\xbd\x5e\xc1\x17\x1d\x63\xb1\xca\x7c\xf5\x7d\x3c\xd6\x13\xc5\x63\x35\x2c\xf1\x7a\x31\x59\x1b\x89\xc7\xcf\x1f\x2e\x52\x2d\x40\xf5\x94\x21\x23\x2b\xbc\xa4\xb2\x18\x8f\x9e\xfc\xe8\x35\xce\xb9\xeb\x09\xfc\xe4\x89\xc2\x88\x44\x42\xd3\xd9\x98\xa4\x29\x98\x60\x14\xb7\xc5\x18\x4a\xda\x61\xc4\xd0\xb7\x66\xbe\x58\x6a\x62\xc7\x19\x67\x53\x49\x53\x12\x94\x7c\x2b\x25\x2b\x93\x94\x35\x64\xb0\xbf\x59\x46\x84\xd3\xe0\x05\xfa\x5a\x52\x96\x90\x50\xab\x17\x28\xe5\x44\xb2\xaf\xb4\x00\xf6\x40\x10\x66\x0b\x74\xcf\xf8\x63\x46\xd2\x29\xec\x50\x75\x30\x87\x88\x92\x03\x44\x95\xff\x4c\x10\x9c\xcc\x34\x87\x1d\xea\xb1\x83\x5f\xd6\x88\x80\xc4\x7e\x1b\x94\x1d\xf1\xcd\x7c\x73\x84\xd0\x80\xa1\x09\x4e\xd4\x01\x92\xc5\xb8\x6c\x3f\xe5\xa6\x8e\xc4\x03\x61\xe1\xc4\xcb\x46\x9e\x2c\x5c\xa8\x31\x3c\xa8\x42\x6d\xee\xbc\x69\x02\xe8\x65\x14\x6f\xe5\xd9\x7d\xc0\xdb\xc0\xda\x7c\x2c\xa4\x75\x01\x20\xce\xfc\x61\xb2\x39\xac\x1e\xc9\x0b\xd0\xf4\x0d\x2a\xd6\x92\xe2\x7e\xb8\x32\x95\x75\xc7\x52\xba\xe1\x2d\x88\xbf\x35\x93\x40\xbb\x66\xb9\x53\xfe\xc8\xa4\x12\x04\xe7\x56\x35\xd5\xcc\x1b\x5c\x38\xc6\x09\xaf\x47\x4f\x85\xb9\xb4\xd7\xd9\xe2\x73\xca\xee\xf5\xee\x96\xd8\x65\x50\x14\x05\x7a\x6e\xd8\xb4\x1f\x28\xc3\x51\x0c\xe2\x06\xbb\x96\x15\x6b\x05\xc5\x04\xe5\x0f\x17\x6d\xb0\x71\x0a\xaf\x42\x72\x5b\xc7\x8c\x27\xa1\x12\x0c\x1a\x43\xa1\x32\xcd\xea\x4c\xe1\x07\x8c\x14\x06\xb8\xc2\x19\xc9\xe6\x41\x31\x85\x39\x16\xca\xd7\x8f\x34\x48\x46\x9a\x3b\xe4\x05\x03\xf8\x29\xab\x21\x3e\x5a\xc0\x1a\x6b\x47\x28\x1b\x3f\x1a\xb2\x81\xfa\x0a\x0a\xd2\x72\x36\xcd\x16\x08\xa7\x0f\x54\x96\x38\x72\x09\x67\xb2\xc8\x89\xa8\x14\x29\x32\x4e\x66\x84\x1d\xad\xe8\xb1\x69\x59\xed\x01\x67\x34\x75\x45\xf3\xf4\x8f\x63\x32\xd1\xf7\xde\x1c\x0b\xe9\x2c\x92\x0d\xd6\x44\xbb\xb9\xa9\x5e\xab\x17\x3b\x93\x3f\x87\xc7\x0e\xe5\xe5\x09\xc5\x56\x77\x39\xae\x9e\xcf\xa0\xec\x63\x5b\x80\x5f\x6d\x52\x68\xf9\xc5\x64\x57\xe1\x6c\x55\xbe\xa7\x7e\x41\x53\x43\x61\xbc\x47\xba\x1f\x27\x03\x99\xc1\xad\x65\xfe\xa9\x4c\xd0\x8e\xda\x18\x03\xc3\xb3\x49\x28\x5c\x0a\x52\x61\x45\x13\x57\xc2\xd2\x97\x0e\x36\x5f\xb7\x6f\xed\xb6\xb5\x59\x65\x82\xb3\xfa\x0e\xb7\xaf\xe5\x8d\x79\x7f\x39\xef\xb3\xc7\xcd\xb4\xbd\x34\x58\x33\xe1\x59\xb6\x0e\x4a\x5c\x65\xe6\xa7\xe5\xe7\xcb\x47\x54\xf6\xa3\x37\xc0\xed\x05\x9c\x1a\x63\xf6\xc3\x99\x95\x2c\xa4\xb2\xbb\x14\xbe\x64\x78\xe8\xc2\x9a\x15\x87\x8c\x4f\x00\x47\x30\x6b\x2b\x82\x3a\x17\x3c\xa7\xeb\xe0\x50\x18\x0c\xda\x6b\xe7\xc0\x5f\xe1\xba\x71\x6e\x7e\x28\x76\x65\xc8\xcb\xf6\x08\xa1\x5e\x98\x19\x39\x63\xc9\x19\xca\x71\xad\x14\x6f\xa7\x05\x5f\xa5\x25\xf7\x50\x6e\x4c\x14\x76\xf5\xa4\xa9\xa8\x76\x4f\x16\x90\xa6\x9e\x3d\xe2\x45\x19\xd2\xba\xce\x71\x2a\x83\x46\xed\x79\xc1\x8e\xca\x82\x13\xe3\x03\x20\xcc\x7e\x99\x55\xe8\x72\x82\x4e\x9b\xc8\x70\xed\xb3\xe4\xe6\xfc\x94\x42\x76\x78\xec\x43\xf9\x7a\x9d\xdb\x30\x3e\x0c\x41\x8b\x08\x86\xb3\x7c\xa9\x3e\x46\x94\xb3\xf3\x35\xaa\xb4\x83\x8c\x2e\xe7\x3c\x67\x57\xcd\xad\x3e\xc3\x9a\x59\xb2\xee\xb4\x58\x5b\x46\xc9\xaf\x87\x6d\xe0\x7a\xf4\x88\x06\x8d\xe7\x7d\x35\x60\xd2\x3a\x3a\xc4\x44\xcb\x2e\xb6\xd6\x9e\x07\x7a\xb6\xf1\x48\x13\x9a\x11\x79\x84\x06\x0d\xfa\x84\x8b\x06\x02\xa9\x0a\xf0\x96\xc0\x2f\xea\xe4\x9d\x42\xd0\x00\xed\xda\x49\x35\x88\xda\x8a\xb4\xa5\x95\x42\x10\x3d\xe6\xc4\x78\x49\x38\x03\x5c\x06\x70\x45\x0a\x6a\x0a\x32\x6a\xf1\x52\x81\xc1\x4d\xf3\x02\x6a\x53\x8b\x4c\x91\x70\xff\x81\x96\xb1\x15\x11\xd8\x02\xfa\x97\xa3\x6a\xd9\xd2\x5d\xa0\x78\x76\x0f\xb6\x72\xbd\xde\xea\x2f\xea\x7b\xd3\x38\xc2\xdb\xb8\xf5\xb5\x47\xe7\xe5\xf2\xf5\x5d\x3e\xef\xe1\x53\x67\x7f\xc2\x68\x22\x08\x98\x28\x73\x9f\xbd\xc0\x52\x22\xa4\xe2\x1c\x6e\xa8\x9b\xb3\x9f\x8e\xef\x06\x88\xa8\x04\xea\x95\x0d\x59\x22\x1f\x0e\xb4\x40\xfb\x5b\x41\x94\xfe\xb9\x25\xba\x8f\xe6\x84\x49\xe0\x04\xb4\x6b\xb1\x66\xb7\x30\xfa\x7f\xcf\xe2\xef\x97\x90\x7c\x2d\x56\x14\x68\xd7\x17\xce\xd4\x64\x0a\xf0\x60\x66\x69\x65\x03\xc5\x98\xa2\xed\xfd\x26\x88\xf0\x0d\x62\x43\xd8\xdf\x0a\xb6\xa6\x98\x74\x5a\x7e\x14\x8c\xa2\x45\x0a\xcb\xe7\x58\xd0\x06\x3c\x9a\xe5\x41\x27\xe6\x9b\xc6\xd6\x57\x31\x91\x32\x06\xd7\x96\xc0\x47\x25\x9a\x3a\x52\x82\x10\x60\x21\x9e\x9e\xec\x5d\x6f\x73\x1e\xfc\xc4\x82\x8f\x8e\x86\xec\xa3\x33\x99\x96\xbf\xfa\xda\x9e\x26\x90\x89\xa4\xa8\x00\x9d\x29\x6e\x05\x9a\x4d\xa9\xf4\x3f\x00\x38\x9c\x2c\x32\x65\x60\x7e\x27\x50\x74\xde\x0d\xd4\x3c\x69\xe2\x12\x02\xb3\x64\x76\xc1\xb7\xab\xf9\x4b\x27\x23\x92\xad\x23\x3b\x0e\x26\xfd\x4c\x6a\xfa\x4e\xee\x5b\x4e\xe7\x26\x40\xd6\xe5\x64\x40\x72\x73\x50\xa7\x46\x2b\x31\x76\xba\xcc\x80\x06\x13\x04\x46\xb6\x6a\xa8\x90\xc9\x06\xd0\xbb\x68\x65\x6b\x63\x63\x33\x3e\x7a\x67\x96\x1b\x43\x2f\x08\xab\x21\x13\x05\x03\x00\x2d\x6f\x72\xc7\x48\x12\x41\x8d\xed\x3b\xe1\xcc\xc8\x00\xd6\x78\x32\xd5\x6c\x42\x4b\x7e\xe0\x77\xe1\x0c\x34\x2a\x5e\x48\x70\xf7\xe7\x44\xe9\x0b\xea\x6b\x00\xc7\x37\x4e\x8f\x03\x34\x17\x34\xa7\x8a\x3e\x10\x0f\xcc\x17\x6e\xdd\x29\x56\x38\xe3\xd3\x9e\x50\x74\x82\x13\x75\x8b\xb7\xd2\x99\xb1\x6d\x66\x53\x07\xba\x1b\x06\x1a\x9c\xe9\xc5\x9f\x12\x46\x04\x4c\x14\x4a\x8e\x36\x1e\xe1\x75\x8b\x91\x96\x9c\x1b\xa0\x7a\x13\x03\x6e\x2a\xbd\x8d\x01\x17\x8a\xe7\x5a\x23\xc5\x59\xb6\x00\xd0\x52\xfd\x64\x86\xe5\xcc\x6d\xb4\x41\x3a\xed\x72\x37\xd9\xc5\x3d\xc5\xc9\x8c\xdc\x40\x8d\xf9\xa6\xc5\xad\x8c\xf2\x1d\x61\x45\xfe\xee\x04\xfd\x77\x39\xc7\xd3\xde\xe9\x8f\xfd\xd1\xd9\xe0\xa6\xf7\xc3\x79\xff\x2c\x98\x8f\x7d\xf2\x71\x70\x73\x53\xff\xf5\xc7\xc1\x6d\xfd\xc7\xab\xcb\xab\xbb\xf3\xde\x6d\x53\x2b\xe7\x97\x97\x3f\xdd\x5d\x8d\xde\xf7\x06\xe7\x77\xd7\xfd\x86\x4f\xef\x6e\xfd\x43\xfb\xec\x7f\x82\x43\x04\xf1\x1e\x10\x9d\xd2\x3c\xda\xea\x39\x3b\x44\xf1\x8b\x27\xe8\xce\x7a\x6f\xa8\x45\x3b\x77\x41\x13\x26\x37\xe1\x11\x4b\xcd\xaa\xa0\xa8\xf0\x90\x21\xf7\xb9\x9e\x7b\xdb\xa7\xc6\xad\x94\xcc\x08\xca\x38\xbf\x2f\xe6\x96\x83\x99\x00\x47\xc6\x8d\x45\x86\xc8\xa0\xb5\x1f\x07\xb7\x27\xde\x8b\x54\x6f\x2c\x48\x41\x74\xa4\x0e\xe3\xc2\x8e\x6b\x82\x91\x63\x2e\xc8\x03\x9c\x49\xef\x5d\x0c\x7a\xf0\x1b\xb0\xac\x1f\xd3\x1a\x66\xaa\xd2\x4d\x9a\xda\x82\x07\x6e\x62\x41\xc3\xf1\xf6\x2d\x5b\x4d\xbf\x1c\x06\xf2\x12\x8d\x49\x82\x0b\xe3\x7c\xd3\xd7\x91\x10\x5c\x84\x03\x2e\xb7\x7d\xcb\x46\xdf\xd5\xa5\x8c\x18\xd8\x5e\xc2\x19\xd1\x9f\x04\x27\x47\xeb\xcb\xa0\x4b\x3b\xc8\xb6\x99\x85\xc5\x74\x75\xa6\x4b\x8f\x09\x40\xc5\x68\xce\xed\x01\xcc\x28\x78\xf3\xb0\x42\x8f\x04\xa2\x5c\x0b\x8b\x59\x69\x34\x64\x7d\x02\xa1\x3b\x63\x87\x76\x00\xc5\x51\xf4\x6b\x2b\xcb\xdc\x85\x58\xac\xbf\x97\xa4\x89\x5d\x6e\x11\xaa\x78\x66\x1a\x05\x1e\xea\x5c\xab\x30\xe2\x16\x8b\xbf\xe3\xd9\x0d\x96\xe7\x25\x52\x50\xfd\xde\x58\xc1\xd2\x35\x73\xed\x32\x1e\x97\x9e\x11\x41\xe8\xac\x97\xaf\xee\xc3\x02\x56\xae\xd5\x2d\x4f\xf1\x42\x13\x07\xc4\x34\xc8\x62\x3e\xe7\x42\xa1\x96\x36\x10\x9c\x74\x33\x3e\xb8\x19\xec\x3c\x3c\x8b\x82\x46\xb4\x1c\x20\x1b\x50\xee\xba\x45\xac\xdb\x75\x2d\xcf\x7d\x98\xfa\x0a\xea\x9a\x47\x5c\xcc\x23\xc5\x37\xa2\xd0\x26\x11\x75\x9b\x48\xa6\xb9\xbe\x86\xbb\x82\xf7\x36\xf5\x7e\xe9\x5a\x68\xdc\xf2\x8c\x4c\xd4\xa8\xd1\x9b\xb2\xc4\x70\xa8\x5b\x64\x6d\x49\x3e\x74\x3a\xdb\x41\x8b\xdd\x65\xf9\xef\xad\xb7\x4b\x0b\xf0\x81\x1e\x2f\x38\x57\x46\x8a\x2c\x35\x0d\xe4\x56\x13\x8c\x00\xb6\x53\x53\x29\xa0\x14\xd5\xb4\x64\x7e\xcf\xf8\x23\xf3\x16\x73\x79\x34\x64\x7d\x0c\xe5\x2b\xbc\xba\x60\x03\x16\x8c\xac\xbe\x52\x4a\x8f\xd0\xf0\x5f\x09\x86\x44\x49\xf7\xb6\xd4\x4f\xb6\x40\x65\xc5\x83\xe8\xbb\x2e\xa7\xc7\x58\x93\x9d\xa0\x66\x26\x6c\xb1\xba\x15\x99\x5b\x8b\xb7\x99\x67\x19\xce\x0d\x4e\x53\xdd\xd5\x11\xfa\xe4\xec\x33\x10\x5f\x51\x56\xea\x50\xe6\xc6\xc9\xf0\xc2\x25\xc9\x37\x2d\xec\x2e\xf2\xce\x77\x1d\x71\xb1\x7c\x81\x7d\x8e\x5d\xc3\x2a\x47\x6a\x32\x63\xc6\x6e\xba\x46\x78\xd9\xa9\xff\xe8\x86\x2c\x8f\x3f\x7d\x0f\xe0\xdd\x8a\x08\xad\x6c\x82\xcc\xc0\xb2\xc5\xff\x32\x9b\x05\xf9\xe6\x36\x36\x39\x75\x80\xcc\xd6\x33\xa9\xcf\x0f\x78\xd6\xb4\x18\x30\x06\x20\x8a\x0c\xe4\x80\x23\xd4\x83\xba\x15\x50\x91\x40\x5f\x85\x2e\x8a\x87\x4e\x19\x5f\x15\x38\xd0\x42\x4c\x49\x40\x4c\x37\xed\xc4\x24\x81\x9a\xca\xd0\xea\xdd\x50\xd4\x0e\xd2\x6c\x34\x6f\xc1\x75\xcc\x9d\xee\xc9\x35\x6b\xa8\xd8\x2f\x11\x84\x53\x1b\x6e\xf0\xe1\x3f\x9b\x87\xfe\xa1\xc0\x02\x33\x05\xa1\x25\x56\xf2\x16\x24\x08\x71\x24\x9f\x21\x78\x8b\x19\x73\x2d\xfc\x14\x6e\xae\x73\xa5\x4f\xe9\x03\x61\x88\xa6\x07\x88\x1e\x91\xa3\x03\x5b\x7c\x4e\x16\xe3\xf2\xcd\x99\x96\x1c\x86\xac\x96\x32\x72\x84\x7a\x99\xe4\xf6\x0b\xc2\x92\x0c\xea\xc4\x04\x51\x30\x9e\xf2\xad\xf3\x67\xbc\x00\xfd\x02\xb6\xb2\x6c\x9e\xdb\x07\xc1\x87\x43\x86\xa5\xf1\x35\x67\x70\xd2\xcb\xdf\x9b\x6a\x41\x45\xf1\x07\x4f\x08\x18\x57\xbb\x86\x9e\x6c\x93\x0c\x58\xf1\xb2\x0d\x82\x37\x60\x63\xca\x54\x9e\x20\x29\x06\x7d\x8d\x15\xca\x08\x96\x0a\x7d\xf7\xcd\x5a\x31\x17\x6e\x82\x25\x77\xb5\xc7\xb7\x0c\x48\x75\x11\x6d\x6d\x05\xed\x00\x4c\xde\x56\xe0\xf5\x02\xe4\x81\xde\x67\xc5\xd1\x03\x95\x05\x94\xde\x09\x62\xe8\x4d\xf1\x14\xaa\xa4\x0b\x0a\x34\x2a\x53\x0b\x1f\x71\xf0\x2f\xd6\x2d\x69\x87\xd5\x40\x59\x56\x79\xa2\x46\x3d\x83\x2c\xc9\x32\xb6\x6c\x86\xd5\x90\x59\xce\xea\xc2\x31\x82\x52\x0b\xbd\x2c\x8b\xe3\xb9\x30\x84\x2c\x32\x3d\x61\x28\x1c\x74\xe4\x17\xe8\x02\xd4\x2f\x1f\x02\x14\x17\x11\xf4\x87\x45\x6b\x6a\x43\xe6\x53\xd0\xc2\xb6\x1b\xa5\x9d\x26\x2b\xf0\x33\x0a\xc1\x0d\xdd\x9f\x9b\x0a\x4e\x1d\x84\xe1\xf6\x0a\x9b\x4b\xbc\x26\x35\xcb\xfb\x12\xd9\x78\xd7\x1d\x74\x17\x95\x9b\xad\xd8\x70\xcd\x3e\xf2\x06\xa3\x78\xcb\xe6\x06\xb2\xc5\x36\x0a\xb8\x8f\x45\x7b\x2e\xbf\x6c\x34\xf4\x41\x0a\xb1\xe5\xab\xb9\x60\x19\xab\xed\x58\x07\x98\xa3\x69\x1a\x84\x8e\x06\x71\x75\x10\x5a\xec\x18\x9f\x7d\xb3\xc5\x3f\x3a\x7f\xdb\xd3\x3f\x28\xe7\xef\xa6\xe2\x83\xcb\xea\x13\x6f\x17\xf6\x7a\xe9\xdf\x70\x42\x58\xb2\x30\x3d\x39\xb8\xac\x7a\x8e\x9c\x43\x16\xc2\x60\x72\x6f\x14\x0f\x6d\x31\xb6\x23\xd4\x87\x8b\xc6\xd5\x66\xc3\x13\xe7\x36\x08\x5e\x1e\x32\xad\x99\xe8\x3b\x5e\x9a\x41\xbb\xf6\x63\x12\x6f\x3a\x01\x26\x3f\x77\x2b\x8f\x4b\xbe\x1a\x05\xb1\x4d\x9b\x70\xe9\xc1\xd0\x06\xc0\xbc\xa1\xfe\xf4\x04\xa5\x3c\xb9\x27\xe2\x58\x90\x94\xca\x13\xf0\x80\xab\x56\xd7\x5b\xae\xb5\xed\xad\x25\x8d\xae\x75\x52\xeb\x55\xcd\x72\x28\x38\x06\x41\xc5\xae\xa4\xc1\x01\xa2\x13\x50\x27\x5c\x7e\x81\x49\x3a\xb0\xd6\x6d\x44\x98\x12\x8b\x39\xa7\x4c\x79\x53\x56\x65\x21\x9c\xa6\xa1\x85\xb6\xb6\x10\x5b\xb1\x8b\x48\x99\x0d\xa7\x7d\x3b\x23\x92\xb8\xb0\x00\x33\x29\xc5\x6d\x35\x7f\xc3\x2e\xe6\x58\xcd\x24\x64\x48\xc4\x6b\x60\x95\x2e\xf8\x54\xaf\x10\x9e\x43\x54\x81\xb1\x52\x94\x1f\xf9\x38\x7e\xa9\x68\x96\x0d\x19\x23\x24\x95\x08\x92\x19\xbe\x6a\xcc\xc4\xd1\x9f\x1e\x20\x9c\xa6\xe8\x7f\x7f\xfd\xfe\xfc\x97\xdb\xfe\x68\x70\x01\x36\xe7\xc1\x79\xff\x9b\x03\xff\xe3\xe5\xdd\xad\xff\xd5\x58\x58\x1e\x88\x40\x39\xbe\x07\x15\x8f\x49\x23\xff\x41\xb4\x7b\x38\x52\x97\xa3\xa4\x9f\x48\xe2\x22\x48\xad\x98\xe2\xb3\xda\xed\x1e\xb6\x56\x2c\x31\x36\xbf\x35\x94\xdf\x6b\xff\xc9\x72\x1a\x74\xc4\xe3\xbb\x70\x62\x60\x4e\x98\xd2\x3c\xc6\x5a\xfb\x4a\xdd\xb7\x24\x38\xc2\xa6\x94\xb5\xc5\xb9\x11\xf6\xf0\x94\x42\xfc\x4f\x64\xf1\xb3\x56\xaf\xaf\x30\x15\x9d\x69\xaf\xcf\x1e\xa8\xe0\x0c\xa6\xe6\xcd\x5a\x65\x2d\x69\xa2\x9c\xb7\x2d\x38\x54\xd2\xc8\xc2\x10\x49\x31\x6f\x8d\xa5\xac\x24\x6e\xbf\x8e\xe9\xf6\x8c\xf7\x97\x7c\x56\xc2\x65\xc3\x49\xcb\x6e\xf0\x03\xa6\x19\xc4\xc1\xba\x8b\xa6\xa4\xc1\x21\xbb\xbd\x3c\xbb\x3c\x41\x24\xc3\x63\x2e\x20\x3b\xc6\x04\xee\xb8\x26\xec\x82\x41\x8d\x4e\xdf\x50\x94\x09\x79\x80\xe6\x65\x26\x64\x68\x44\x3b\x32\x6d\xac\xc8\x88\x9c\x73\x51\xcf\x23\xdc\xad\x0a\x68\x27\x7b\xc5\x45\x97\xeb\x5f\xbf\x06\x4b\xc7\xe7\x5a\x91\xab\x70\x5e\x7b\x37\x4f\x08\x36\x55\x7c\x8c\x5b\xc8\xda\xf2\x6d\x60\x68\x96\x45\x88\xed\xfa\xe0\xc8\x23\xeb\x28\x2f\xdf\xe4\x0c\xfd\xf4\x17\x89\xc6\x85\x1a\xb2\xb8\x0d\xce\xa0\x60\xfd\x0f\x58\x25\xb3\x6f\x86\xec\x52\xab\x99\x3f\xfd\xa5\x25\x65\x3b\xc5\x0a\x8f\x9a\x89\xb2\x7d\x4d\xce\xb0\xc2\xe7\x1c\xa7\x94\x4d\x2d\x10\x41\xf3\x5a\xfc\xd0\xbf\xed\x9d\xa0\x4b\xab\xc3\xfb\x2c\xcb\x12\xe1\x21\x68\x08\x18\x32\x4c\xc4\x71\x11\x60\xe5\xcc\xb3\x7e\x6b\x22\x03\xe9\x49\x5f\x58\x43\x06\x4b\x69\xb8\x2a\x55\x68\xce\x2d\xa6\xab\xd6\xca\x0c\x80\x00\xf6\x55\xd9\xb3\x05\xd2\xab\x03\x64\xec\x37\xc3\xca\x63\x20\xcf\xd4\x99\xfd\x90\x81\x82\xee\x33\xdf\x32\x9e\xe0\x0c\x22\xe7\x0e\x03\x9b\x9e\x56\xdb\x79\x01\x69\x48\x10\xb2\xc2\x16\x71\x80\xab\xcf\x8c\xf3\x42\x59\xb8\x51\x60\x00\x80\x7d\xb4\xce\xd4\x9c\x6b\x8e\x73\x34\x64\x83\x89\x09\xac\xcb\xcc\xea\xe8\x0f\x09\x03\x7f\xb2\x5b\x16\xfd\xd4\xf1\x23\xa8\x6e\x66\xdc\x8a\x38\x01\xf3\x3d\x5b\x40\x58\x34\xe0\x40\x72\x08\xd0\x28\xb9\xb3\x25\xca\xda\x2e\xfa\x3b\x31\xf8\x6c\xc8\x4c\x3c\x5f\xb4\x2f\x61\x96\x70\xd0\x3b\x67\x10\x6e\x58\x5e\x97\x5e\xc0\x98\xdb\xf0\x43\x2b\xeb\xcf\x05\x39\x74\xf5\x7d\xf5\xaf\xc1\x9a\xea\x1b\xf6\x08\x5d\x87\xea\x75\xca\x93\x22\x77\x60\x37\x90\xae\x65\xe3\xd4\xec\x25\xea\x29\xc4\x5c\xec\xab\x28\x1e\x8b\x64\x46\x15\x81\x9c\xaa\xce\xfa\xb1\x21\x98\x5e\xf8\x69\x5d\x52\x6f\x17\x7c\xaf\xb6\x2c\x19\xef\x49\x76\x34\x8f\x5b\x8a\x5a\x5b\x8d\xd5\xb1\x02\x38\xf9\xa2\x04\xe4\x80\x8a\xf2\x5c\xab\xb6\x1c\x8c\xdc\x26\x65\x8f\xa7\x5f\x49\x34\xb8\xd2\x12\x90\xd6\x78\xfd\x19\x2c\xa4\x32\x21\x60\x90\x06\x63\xbe\x36\x61\xf8\x07\xe8\x5b\x34\x2c\xbe\xfd\xf6\x4f\x09\xfa\xec\xfe\xf1\xe7\x7f\xff\xf7\x3f\xfd\x79\x9d\xb8\x72\xa7\x90\x43\xbb\xe5\x1a\x79\x78\xdd\x58\x24\x0a\x77\xa0\xce\xa9\xb6\xd8\x05\x7b\x00\xdb\x96\xdf\x9a\x03\x5a\xd3\xa8\x9a\x1e\x07\x11\x3e\x78\x6a\x4f\xb8\x0c\x4f\x26\x8a\x8e\x66\x19\x49\x20\x89\x3a\x88\x39\x84\x17\x76\xad\x44\xff\xbf\x96\x80\x22\x8c\xf4\x51\xd9\x2c\x12\x89\x66\x5e\xbc\xd6\x8d\xa0\xaf\xad\xfd\x4f\x81\x03\xf1\x1b\x77\xc1\xf1\x2c\x25\xc2\x96\xac\x73\x26\x3b\x6f\x48\x04\xe6\x40\x3e\xcf\x33\x6e\x63\x44\x30\x92\x64\x8e\x41\x80\xd0\xcc\xe0\x68\xc8\xfa\x9f\xb1\xe6\xdc\x07\xae\xf6\x29\x7c\x64\x3c\x2f\x13\x9c\x10\x64\x44\xf5\xaf\x3f\x9f\xe8\xdf\x0e\xd0\xe2\x04\x42\x3d\x0f\xd0\xdf\x4f\x6c\x52\x36\x16\x6a\xa4\x7f\xfa\xc6\xc9\xda\xb6\x09\x18\x34\x95\x68\xf8\xee\xf8\x01\x0b\x53\x96\xe6\xd8\xa2\xe9\xbe\xb3\xbc\xd5\x23\x85\x87\xd2\x79\xc6\xf9\xbd\x0d\x84\xad\x7d\x79\xec\x20\x1e\x80\xc0\xbd\xe7\xc4\x6c\xbe\x8d\x69\xd6\x92\xe4\x21\xbc\x40\xd0\xd1\x7c\x8c\x8e\xfe\x26\x39\x43\x47\x0b\x9c\x67\xf6\x57\xf7\xd4\xc6\xe9\x62\x89\x5c\x0d\x3e\x17\xa5\x93\x2d\x8c\xad\xf4\x87\x8c\x8f\x61\x5e\x1f\xdd\x5c\x4d\xa4\x2b\x0c\xb4\xbc\x7f\xca\x2b\xcb\x4e\xc4\xca\x52\x26\x51\x1d\xea\xea\xea\x57\x80\xcb\x35\xcd\xea\xb3\x1f\xd2\x7f\x19\xcf\x30\x2c\x8a\x4b\x8f\x33\xe6\x61\x1f\x65\xa6\x1b\xfd\x8c\xbe\xb6\x4c\xe8\x1b\x7d\xcb\xd8\xb0\x62\xb3\x0c\x4d\x1d\x2c\x7c\x07\xbf\x04\x1d\x50\x86\x4c\xc2\xe3\x92\x2f\xff\x7e\x7c\x74\x74\xe4\xbf\xbe\xd0\x53\xf9\x7f\x11\x55\x92\x64\x13\xd3\x92\xbb\xc3\x16\x43\xf6\xd1\xa1\xe1\x39\xf3\x75\x09\x1e\x03\x95\x24\x13\x9e\xa1\xc3\xd2\xa4\x9b\xf2\x44\xa2\x3f\x68\xc1\x36\x58\x4a\xf8\x51\x6b\x72\xcd\xa7\xca\xd6\xdc\x7d\xa6\x63\x65\x4d\xe2\xd5\x83\x15\xe2\x45\x78\xd5\x16\xcb\x10\x5a\x11\x68\x41\x53\xce\xb1\xc5\x94\x80\x6a\xc4\x8a\x7c\x56\xf0\xa8\x05\xb2\xa3\x31\xe4\xbc\xf9\xae\xac\x31\xdc\x12\xb9\xc3\x90\x75\xcb\x02\x58\x60\x05\xcb\x1b\xcc\x3c\x0f\x42\x07\x8a\xbe\x5e\x58\x88\xcf\x26\x8b\x3c\xc7\x62\x71\x5c\x9e\xb6\x3a\x71\x96\x60\xab\xc0\x65\x32\xb7\x00\xe0\xc4\xcd\xec\xd1\xb2\x71\x0c\x56\xc0\x74\x77\x9a\x3f\xbb\x09\xa0\xbb\x43\x44\x9d\xa9\x6d\x40\x58\xc2\x53\x4b\xd7\x65\x5e\x67\x2c\xb3\xf8\x77\xea\xd2\x8a\x8b\x89\x91\xa5\x39\x8e\x29\x93\xec\x6d\xdf\x70\x1f\xb7\x30\x70\x3e\x82\xca\x1b\x64\xba\x86\x83\x74\x70\x79\xe3\xbe\xe9\x7e\xed\xc2\x3a\xc4\x42\x3b\x76\x7a\xa2\xb3\x49\x08\xfc\x58\x5e\xc0\x10\xdd\x61\xec\x33\x85\xcf\x7a\x35\x7f\x9f\xf2\x2b\x9a\xe9\x7b\x0b\x68\xfc\x68\xc8\xa2\x9f\x0f\x10\xc9\x68\x4e\x99\x8f\xae\x33\xec\x9d\x4f\x8c\xfc\x7c\x4f\x95\xde\x32\x99\xde\x6b\x0e\xe6\x00\x04\x02\xa5\xaa\xc7\x16\x8e\x74\xbc\x6b\xca\xda\x20\x0a\xa9\xc7\x55\x6a\xe9\x5a\x9c\xd5\x4d\x1c\x5a\x91\x94\x06\x84\x07\xe7\x77\xc8\x74\x6b\xee\x2c\x95\x61\xbd\x41\x7b\x41\x73\x87\x0e\xa5\x2c\xe0\x00\xd0\x47\x14\x9b\xeb\x25\xe0\x06\x11\xa5\xcf\x8a\x7c\xdb\xa4\x10\x1b\xe6\xfb\x52\x86\xba\xab\xb2\x5a\xac\x4d\x30\x22\xac\xc8\xdd\x81\x5a\x83\xe2\xfa\x56\x00\x4a\x49\x92\x61\xb8\x3b\xa0\x21\x88\x7d\x3c\x30\x2e\xd2\xa0\x32\xad\xbd\x5e\x4c\x37\x06\xf8\x34\x23\xec\x6b\xf3\xf7\x37\xc8\xde\x0d\xdf\x1e\xd8\xfb\x5c\x48\xab\x44\xba\x3d\x07\xe0\x7c\x92\x1a\x2b\x3a\xe0\x9f\x4d\x31\xd4\x0b\xb7\xa6\x9d\x48\xf3\x04\x09\x6c\xc1\x0b\xf4\x48\xe5\x6c\xc8\x6e\xb9\x33\x39\x22\xc6\x3d\x82\xdc\x01\xa8\xa3\xb5\xfe\xb0\x04\x26\x00\xa3\x6e\xa2\x80\x4a\xb1\xf9\xf5\x73\x82\x20\x8c\x75\xc4\x78\x4a\xd6\x8c\x66\x6f\x28\x95\x6d\x3d\x11\xce\x83\x2d\x88\xc9\xdb\x82\x9b\xa2\xb5\xd0\xaf\x94\x6b\x5a\xe7\x1b\xab\xe2\xdb\x76\xa0\x48\xca\x23\xdb\x14\x32\xc3\xdf\x6a\xd0\x8a\xd3\x39\x83\x3c\xdb\x68\xed\xe3\xca\xfd\x5b\xe9\x68\xe9\x66\xfe\x09\x33\xf7\x04\x96\xdd\x87\x18\x63\x34\x15\xbc\x98\xfb\x64\x74\x97\x96\x67\xb6\xc1\xca\x34\x03\x36\xe1\x27\x56\xab\x3a\xa7\xec\xde\x50\xfc\x53\xed\x91\xaf\x40\x1f\xfc\xee\xee\x30\xb3\xe2\x87\x88\xb2\x24\x2b\xe0\xe2\x93\x0a\x27\xf7\x06\x3e\xb0\xcd\xec\xab\xbf\x19\xad\x4e\x7a\x6c\x91\x98\x8a\x2c\xb3\xdd\x96\x17\x68\x59\xd8\xe7\x81\x62\x84\xd1\xdd\xf5\xa0\xb9\xef\x7b\x5a\x77\xe7\x34\xdf\x9e\x31\x81\xc0\x7f\x7e\xa2\x6b\x45\x5e\x56\x70\x4e\x49\x44\xea\xde\xbc\xd4\x86\xee\x55\xb9\xbd\xb7\xf4\x1f\xeb\x5b\x68\x94\x37\x50\x6a\xf3\xe4\xcb\x8e\xcf\xec\xc7\x1f\xf5\xb7\xcd\x3b\xf2\x11\x92\x8e\x3c\x32\x43\x8e\x99\x9e\xa0\xeb\xb5\xc5\x1a\x63\x2e\xc6\x8d\x86\x74\x37\xdf\x68\x40\xa6\xc7\x8e\x98\xdc\xb6\x2b\xd7\xca\xa3\x31\x48\xe2\xcc\x28\xdc\x6a\x06\x9a\xd8\x01\xba\x49\x66\x24\xc7\x10\xf4\x92\xc7\x1a\x19\x48\xa6\x5f\x67\x58\x4c\x8d\x9c\x28\x89\x92\xdf\x34\xec\x70\x19\xfc\xbd\xc5\x0e\x6f\x50\x2f\x20\x74\x00\x81\x14\xb2\x8c\x03\xf8\x51\xc6\xd0\x43\x9e\x39\xf9\xca\x1b\xf6\xee\xa0\x32\x84\x1c\x4e\xb8\x10\x00\x91\x97\x6a\x69\xbc\x1d\x94\x61\xcb\xba\x31\x17\x38\xf7\x09\xcc\xae\x7a\x85\xcd\x53\x31\x83\x1b\x13\xc0\xa1\x6a\x1f\xc3\xd6\x05\x62\xc2\x21\x58\xc0\xf6\xb6\x11\x0c\x59\xcf\xbd\xe2\x93\x20\x41\xc4\x15\x46\x0e\x81\x40\x39\x13\x16\x0a\x62\x26\x2e\x57\xdd\x4e\xae\x65\x12\xeb\xe6\x9a\x55\x6b\xdc\x68\x31\xd7\x03\xd7\x19\x31\xc6\xe9\x3b\x6e\x1e\x2d\x3d\x3f\xac\x5f\x02\xac\x19\x47\x22\xa9\x96\x68\x6a\xea\x78\xb5\x48\xe9\x12\xdc\x6d\x43\x61\x55\x28\x13\x4c\x97\x2d\x4a\x32\xd5\x2b\x6e\x54\x93\x4a\x67\xf5\xd3\xaa\xb6\xe2\xc6\x14\xe7\x23\xc1\xb3\x6d\xf6\xc8\x35\x11\xa9\xb9\x33\x83\x27\xba\x40\xbf\x15\x38\x33\xf6\x7e\x66\xc9\xd1\x0d\x1b\x24\x86\xef\xff\x8c\x7a\x70\x5d\xa2\x8f\xc0\x17\xc1\xd3\x09\xad\x29\x8e\x68\x3e\x27\x42\x72\xad\x8f\xb5\x6c\xf2\xfd\x5f\xe4\xc8\x82\x01\x8f\x70\x92\xf0\xa2\x0e\xfc\xbb\xc6\x4c\x1a\x5a\x0b\x27\x85\xd1\x7d\x31\x26\x82\x11\x53\x8a\x12\xde\x43\xee\xbd\x4e\xc3\xe5\xb8\x50\xb3\xef\x47\x49\x46\x3b\x23\x14\x43\x9a\x45\x4f\x7f\x76\x6a\xbe\x5a\x36\x81\xa8\xfd\x68\xe8\x0c\x99\x67\xc8\x3c\x3b\x42\x3f\xe0\xe4\x9e\xb0\x14\xcd\xb3\x62\x4a\x6d\xee\x33\xdc\x50\xc0\x2e\x03\x2b\x55\x3c\x31\xa3\xf2\x9a\xf6\xf5\x35\x34\x64\x39\xbe\x07\x0d\xe9\xb3\x8d\x46\xd7\x9a\xe6\x5a\xda\x96\xa7\x87\x1a\x08\x84\x4b\xd4\x95\x24\x29\x84\x7e\xc3\x9c\x0f\x65\xce\x07\xd8\x95\x00\x08\xad\x60\x08\x03\x8e\xc4\x57\x12\x15\x73\x67\xfc\x00\x83\x47\x06\x0e\x28\x33\x49\x28\x4e\x46\xb5\x38\x38\x23\x43\x06\x41\x7d\xae\xc5\x85\xe7\x2a\xa1\xcf\xd3\xfb\xde\x9b\x0e\xdf\xc4\x64\x51\x6f\xe7\x4e\x31\x66\xa4\x9d\x07\x2c\xaa\x19\x61\xa0\x87\x75\x6f\x19\x52\xd1\xbb\x6f\x5a\x14\x9c\x68\x66\x51\x1a\x8e\xfc\x12\x16\x8c\x5a\x4c\x6c\x6b\x2b\x0c\xe2\x86\x9c\x49\xbd\xfc\x9e\x4a\x24\xb1\xa2\x72\x42\x1b\xf5\xd3\x30\x77\x7d\x9b\x55\xc7\xeb\x25\xcc\x37\x24\xcb\x57\xd6\xc2\x07\x40\x1f\xa1\xf7\xa0\x6e\x97\x53\x52\xdc\xa7\x9e\xb7\xb1\x04\x35\x23\xad\xa8\x69\xbb\x88\x1c\x70\x33\xe8\x6a\x45\xf1\xc1\xee\x47\xa8\x57\x9a\x39\x4d\xf2\xbd\x31\x60\xae\x98\x11\xc9\x24\xd9\x84\xf8\x3a\x59\x04\xc0\x19\x08\x04\x84\x40\x56\x91\xfa\xf7\x12\xc1\xd1\x0f\xf3\x11\xf2\xc9\xf0\x3d\x61\xcb\xd4\xbe\xee\x23\xec\x47\xd9\xb8\x4d\x43\xec\x79\x85\x9f\x1b\x9d\x7f\x93\x01\x76\x3f\x76\x25\xde\x01\x9d\x1c\xeb\x25\xd7\x82\x7e\x72\x6f\xa3\xd8\x8d\xd9\xc7\x22\x26\x3c\xce\xb8\x0c\xcf\x99\xdb\x3f\xd8\x4c\x25\x0a\xe2\xa2\xd5\x21\x0b\xc0\x2f\xb0\x71\xff\x33\x1e\x02\x2a\xc0\xa8\xfd\x21\x35\x26\x2d\xbf\xdf\xc8\xb1\x50\x58\x06\x30\x97\xbb\xa6\xea\xa7\xf9\xa7\xbf\xc8\x4b\x38\xb1\xbb\x48\x0a\xce\xf0\x98\x64\x4f\x80\x13\xb5\xa1\x21\xd2\x87\x9a\x98\x71\x81\xd1\x3f\xf5\x59\xe8\x73\x9e\xa2\x92\xbc\xda\x22\x1e\x19\xe3\x26\xd4\xe0\x15\x4e\x2b\x18\x5c\xe7\xb9\xad\xa2\xec\x8f\x81\xb7\xd2\x94\xdc\x35\xd8\x2b\x81\xc8\x65\x13\xc7\x40\xfb\xb5\xd7\x3f\x95\xfe\x3e\x69\xa6\xb1\x2b\x9e\x6e\x43\x58\xeb\xe3\x6b\xd5\xe9\xba\x43\x38\xa3\x6c\xaa\xf8\xb3\x64\x25\xe6\xbc\x3d\x10\x2d\x1d\x75\xaf\x91\x03\x7e\xc7\x71\x31\xb9\x01\x74\xdf\xb6\xe4\x78\x07\x6b\x34\x23\x3e\xdb\x45\xef\xb3\xee\xc6\xc7\x5e\xb7\x6d\x8a\x75\x63\x95\xd7\x3f\x46\xff\xf7\xe6\xf2\xe2\x30\xc7\x42\xce\x30\x24\x1f\xba\xb6\x0e\x1c\x06\xbd\x51\x40\x9d\x79\x9d\x32\x34\x64\x87\x68\xca\x0f\x8c\x37\xe7\x04\xcd\x94\x9a\xcb\x93\xe3\xe3\x29\x55\xb3\x62\x7c\x94\xf0\xfc\xb8\x5c\x9b\x63\x3c\xa7\xc7\xe3\x8c\x8f\x8f\x05\x81\x88\xbe\xc3\xef\x8e\xbe\xff\x0e\xb6\xe6\xf8\xe1\xbb\x63\xb0\xe1\x1f\x4d\xf9\x1f\xce\xbf\xff\x8f\x3f\xfd\x59\x37\x3c\x5f\xa8\x19\x67\x27\xd6\x55\xb4\xb4\xed\x43\x23\xf8\x1e\x9b\x4f\x2a\xbd\xfc\xc7\xd1\xb7\xe1\x30\xec\xab\x39\x4f\x49\x26\x8f\x1f\xbe\x1b\xb9\x9d\x39\x9a\xaf\xe3\xfc\x2a\x19\xbe\x5f\xf2\x4a\x81\x28\xfd\xbb\x27\x19\x97\x7b\xb4\x6a\x5b\x1a\xce\x4a\x18\xaf\xb9\xc5\x89\xb9\x27\x35\x7f\xe0\x1a\x1a\x98\x97\xa4\x5a\x74\xfa\x75\xe1\x83\x5b\x65\x9b\xb5\xd2\xd3\xc0\xfb\x46\x13\x80\xa6\x34\x36\x88\x39\xa6\x4d\x71\x3e\xd6\xcb\xbc\xcd\xfa\x3d\x25\xc8\xea\xae\xd1\x55\xed\x74\x37\x44\x56\xcd\xcc\xd7\xce\x27\xce\x1f\x1d\xa2\xea\x2e\x70\x48\x3b\x56\xea\xf0\x60\x8d\x86\x78\x60\x2c\x6e\x5c\xeb\xd1\x48\xb4\xc4\x26\x4c\xc2\x86\x58\x4a\x08\xc7\x34\x60\x07\x7c\xe2\x61\x63\x4d\x24\xad\x41\x98\xe6\x93\x86\x7f\xfc\x90\xf1\xb1\xfc\xc6\x43\xac\x60\xe9\xfa\x28\x31\x0f\xda\x49\x70\x37\x28\xa5\x6e\x29\x9e\x52\x3f\x71\x67\x26\x94\x42\xd6\x59\xf8\x66\xa2\x2a\x03\x5d\x4d\xc6\x27\x16\xbc\x60\x0e\xe5\x91\x33\xc2\x27\x10\x25\x00\x17\xa0\xf3\x82\x80\x11\x84\x71\x15\x64\x77\x0a\x32\x37\x8c\x14\xcc\x75\xed\xcb\xbd\x25\xd2\xe9\xaa\x75\x7e\x0a\xa4\xd3\x6d\xd7\xdd\x1e\x9c\x17\x5a\xf0\x6d\x43\x15\xcc\x51\x5a\x83\xcd\xc2\xfb\x2b\x5d\x13\x9e\x0f\x80\x2f\x22\xac\x60\x66\xd0\x4c\x20\x3c\x99\x1c\x2a\x7e\x08\x69\xf1\x90\x6c\x6d\xb0\x87\xdb\x2a\x72\x80\x4b\x67\x9d\xeb\x40\xbf\xdf\x61\x9c\x26\x24\xfd\x73\x30\x50\x7b\xf7\xca\xb2\xb6\xb9\x56\x2e\x19\x23\xc2\x1a\xab\x57\xde\x1c\x6b\x3a\x7c\xc2\xad\x5c\xee\xf1\x2d\x05\xd0\x10\x17\xd6\xc7\xfb\xe1\x80\x09\x1c\x21\x88\xbb\x9e\xf1\x9c\xeb\x6b\x9b\x17\x32\x78\x68\xe2\xf6\xe1\xb2\x59\x52\x66\x7e\x6e\x60\x70\x5e\x6e\x36\xfa\x68\xe9\x47\x46\x97\x0f\x5f\x5a\x0d\x8e\x1d\xcc\x64\x1c\x83\x0b\xaf\x18\xbf\x47\x85\x5d\x4e\x37\xe0\x4e\xcc\xc1\x76\x0a\x35\x4f\x2c\xd6\x23\xfd\xbb\x16\xd5\x35\x49\xf9\x18\x79\x97\x57\x6f\x03\x4f\x0d\xda\x53\x88\x07\x57\x29\x6d\x5a\x1d\x3e\x61\x45\xbe\xe6\x1e\xf8\x20\xa6\x2e\x1b\x80\x99\x09\xeb\x71\xf1\x3c\x87\x8d\x01\x3d\xad\xb1\x26\xeb\x28\x86\xcb\xf4\xac\xa6\x68\x37\x03\xe1\x52\x06\xb7\x6a\x0a\xa8\xc9\xf8\xfe\xc3\x87\xb2\x1a\xd0\x62\x4e\x0e\xd0\xb8\x80\xe7\x17\x97\xb7\xa1\x17\x8f\x32\x78\x7c\x98\xcc\x48\x72\x0f\x99\x2e\x86\x63\x9b\xbd\x74\x95\xa0\xc6\x8b\x21\x2b\x6b\x4e\x28\xee\x5c\x52\x0b\x0f\xea\xe9\x81\x6d\xb9\x40\x29\x95\xf3\x0c\x2f\xc0\xf8\xcf\x4c\x18\x5b\xe9\x38\xf0\xf1\x9f\x9a\x92\x37\xb3\x71\x41\x51\x0c\xcb\xa2\x9c\x90\x08\x7f\xb9\x49\xf8\x8a\x90\x3e\x24\xbb\x49\x26\xda\x1a\x66\x75\x9b\x60\xa6\xb6\xf2\x2e\x81\x4b\xda\xec\x68\xe8\xd5\xf6\xa9\xd8\xd5\xba\xa3\xc3\x77\x2e\x48\x1c\xf4\xc0\xa1\x2b\x99\xa8\xff\x36\xf5\xb8\x88\x78\x20\xe9\x90\xc5\xc9\xee\xf6\x9e\x2d\x77\x19\x95\xb0\xff\xbb\x21\x71\xb7\xce\x9d\xcc\x1e\x7d\x48\xf0\x2b\xa1\x7d\x7c\x20\xf4\x92\x32\x04\xcd\xf5\x06\x9f\x00\x2f\xbf\xb3\x3d\xac\xac\x33\x60\x41\xc2\x6d\x15\x90\xc8\xf5\xe4\x09\xd3\xa7\xf2\x1a\x9c\x0f\x1f\x20\x6a\x03\x46\x6b\x79\x51\x4d\x6d\x0c\x99\xcb\x71\x99\x14\x99\xc1\x6e\x6a\x59\x2d\x97\xd9\xef\xa2\xf1\x5e\x2e\x2a\xd3\xeb\xdc\x28\xa8\xcb\xe0\x3d\x44\x2e\x29\x21\x59\x94\x05\x60\x81\x74\x09\x93\x05\xb0\x61\x07\xc9\x0e\x69\x6a\x53\xa2\x90\x16\x89\xd2\x22\x33\x29\x1b\xe0\xfb\x03\x94\x00\x9c\x65\x88\x2a\x39\x64\x1e\xd4\xc0\x40\x54\xc2\x2d\xe5\x12\xf0\x52\x2b\xa6\x42\x17\xd0\xac\x2d\xdc\x05\x77\x17\x4d\xa8\x0a\x47\x04\x3e\xad\x45\x08\x63\x3c\x9f\x13\x6c\xe2\x8b\xed\x31\x64\xa1\x9c\x5a\xdd\x04\x1b\x8c\x0b\xe5\x94\x76\x11\x17\xdb\x4e\xba\xa6\x9c\xd6\xda\x5b\x72\x84\x7a\x66\x76\x5a\x48\x75\x35\x85\xcc\x68\x6d\x56\x93\x0d\xfb\xd0\x92\xa0\x92\xbe\x2c\xaa\x97\xf5\xe7\x58\x28\x9a\x14\x19\x16\xd9\xc2\xd5\x42\xa6\x93\xa0\x3c\x12\xec\x81\x49\x69\xb7\x75\x97\x01\xe9\xdd\x9a\x8b\x25\xce\x49\x90\x4d\x63\x55\xe2\x2c\x70\x37\x19\x9c\x3e\xe3\xc7\xd0\x6d\x7d\x73\x84\xce\xaa\xc5\xb0\xe0\x4c\x04\x50\x38\x54\x1a\xf6\xe7\xc7\x1b\x84\x81\x9b\xa2\x5a\x74\xa2\xc5\xf0\xaf\x82\x53\xd7\x56\xa8\x11\xcb\xfb\x35\x7d\x59\x0e\x50\x75\x79\x08\x53\x63\x1a\xc8\x2d\x14\xf3\x8b\x3c\x5c\xfe\x40\xb4\x0c\xd0\xdd\x0c\x6b\x0e\x32\x84\x11\xda\x60\xa0\x9f\x82\x6a\x79\xd5\xc1\xe6\x4b\xaa\x31\xc1\x3e\xae\x39\xd4\x00\x29\x7d\xfd\x81\x06\x94\x13\x7a\x2e\x5b\x57\x76\xb5\xda\xfb\x29\xc2\x2c\x47\x7a\x5c\x5a\xe5\x20\xc6\xd7\x5d\x29\xb8\x0b\x63\xb0\xe0\xe6\x80\x44\xe9\x0f\xdb\x98\xa0\x8c\xb2\x7b\x97\x77\xa6\x77\xfe\x00\xe1\xb2\x75\x38\x7c\x66\xf4\x86\x98\x5b\xc4\x9a\x26\xdc\xd6\x2d\x24\x9d\x6e\xb1\xdb\xcd\xe2\xba\x1b\xc9\x5a\xd0\xbc\xb5\xb2\xb4\xc1\x3c\xba\x6f\xcb\xd2\xe8\x2a\x2f\xc1\xba\x90\x2a\x73\xbf\x04\x71\x1e\x8a\xfa\x42\xa5\xad\xeb\x7b\x35\xc3\xcd\xb5\xad\x57\x63\x91\xdf\x5d\x9c\xf5\xdf\x0f\x2e\x62\x00\xf1\xbf\xde\xf5\xef\xe2\x5f\xae\xef\x2e\x2e\x06\x17\x1f\xc2\x9f\x6e\xee\x4e\x4f\xfb\xfd\xb3\xf8\xbd\xf7\xbd\xc1\x79\xe5\x3d\xfd\x53\xfc\x52\xef\x87\xcb\xeb\x0a\x64\xf9\xcd\x4f\x83\xab\xab\xf8\xa7\xdb\xc1\xc7\xfe\xd9\xe8\xf2\x2e\x42\x3d\x3f\xfb\xe5\xa2\xf7\x71\x70\x3a\x6a\x18\xcf\x75\xff\xf4\xf2\xe7\xfe\x75\xff\x6c\x29\x9a\x79\x39\xdf\xc6\x25\xdd\x85\xc3\x77\x63\x08\xfb\x1e\x9a\x08\x4a\x58\x9a\x2d\x4c\x3c\x9a\x53\x52\x2a\xe1\x2f\xe1\x15\x40\x73\xc2\x8b\x6d\xc2\xca\xb4\x12\xcf\x1f\x88\x80\x04\x39\xd3\x9a\x8d\xa6\xc7\xf2\xbe\x15\x40\x45\x89\xba\x41\x6f\x69\xf4\xac\x12\x0b\x1f\x9f\xbd\x34\x2c\xd4\xa7\x57\xdb\x4e\xd0\x9c\x88\x65\x63\x81\x0b\x5a\x14\x73\x45\xc7\xed\x81\x82\x1d\xd3\x8e\xd7\x57\x03\x0d\x18\x48\x73\xde\xe4\x45\x33\x63\x8c\xe2\xe5\xb6\x09\x15\x82\x16\x36\xad\xcc\xe0\xbf\x76\xe1\x15\xf3\x62\x9c\xd1\x04\xd1\xb4\x84\x30\x31\x81\x74\x26\xac\xdb\x58\x7b\xaa\x98\x41\x73\x22\x40\x62\xd2\x82\xe8\x5c\x90\x43\x5c\xa8\x99\x2b\xf3\x08\x11\x46\x16\xe1\x71\xc8\x24\x49\x04\x51\xae\xf2\x34\x49\x1d\x56\x7f\xd0\x13\x0c\xc6\x26\x77\xa4\x90\x47\x7a\x14\xe0\x37\xb6\x98\xf7\xcc\x97\xa6\xf5\x35\x0c\x91\xe6\xfd\xa5\x4b\x63\x47\x4c\x65\xb5\x1e\x1b\xc8\x86\xe6\xa1\x43\xfc\xd7\xf3\xd6\x9c\x3a\x71\x41\x88\x66\x93\x5d\x3c\x63\xf3\x34\x56\xd1\x58\x48\x28\x71\xf8\xa1\x6d\xdd\x3e\x3a\x15\x04\x2e\x11\xeb\xad\x72\x6a\x34\x78\x57\x6d\xfc\x23\x84\x3d\x6a\x8d\x61\x4c\x66\x38\x9b\x18\x8b\x8c\xde\x9a\xf2\x5c\xd5\x49\xf4\x96\xdf\x13\x66\x2b\xb0\xbf\x08\x3b\x64\x46\x00\x2f\xd3\x7d\xbc\x71\xa2\x34\xdf\x40\xb5\x70\xe1\xca\xc4\x9b\xf8\x6f\x53\x89\xd4\x88\xab\xc1\x63\x13\x84\x59\xc2\x79\xb9\xd0\xf1\xc9\x84\x7e\xd6\x0d\x0e\x19\x69\x04\x34\x02\x97\xb6\x4b\xbc\xf6\x7c\x19\x00\x3d\x4c\xf6\xea\x3d\x61\x50\x6c\xc0\x54\x0c\x5b\x49\xb3\xeb\x59\x0d\xeb\x7b\x51\xb7\x21\xfa\x15\x03\xf3\x13\x8d\x6a\x30\x84\x06\x5a\xb7\x4e\x90\xe8\x71\x4f\x8e\xd0\x99\xcd\xc9\xd3\xbf\x9c\x9e\x0f\xfa\x17\xb7\xa3\xd3\xeb\xfe\x59\xff\xe2\x76\xd0\x3b\xbf\xe9\x7a\xfc\x76\x11\x2b\x5c\x39\x7d\xd5\x70\x6d\xcf\x21\x8e\xed\xc9\x2b\x53\x56\xfc\xa4\xca\x63\x07\x5b\xb2\x7a\xf4\x34\x9d\x8f\x52\x2a\x13\x7d\xfd\x2d\x46\x84\xa5\x80\x04\xb7\x11\xa9\x36\x37\x55\x9d\x85\x7f\x03\xf9\x37\x1c\x07\x31\xb7\xdd\x83\xa3\x68\xff\x1c\xa0\x62\x6c\xb1\x6d\x7d\xf8\xd3\x21\x0b\x6e\x9b\xa3\xd5\xf0\xbf\xba\xb9\xed\xe6\x16\x37\x51\x9d\x93\x19\x2f\x95\xb2\xc0\x9a\x3f\xba\xd7\x20\x15\xb4\x65\x55\x2c\x3c\x47\x08\x47\x47\x83\x82\x47\x48\xab\xc8\x39\x66\x29\x56\x5c\x2c\x5a\xa6\xd8\x8d\x79\x86\xc7\x26\x66\xa1\xe1\x95\xad\xf5\x7f\xb7\x0b\xe6\x55\xcc\xaa\xa4\x64\x40\xeb\x6e\x2f\x7f\xea\x5f\xdc\x8c\xfa\x17\x3f\x8f\xae\xae\xfb\xef\x07\xff\xe5\xf3\xee\x6d\xf9\xf6\xb8\x94\x0a\xd1\x97\xa2\xe6\x2e\x2e\x03\xb0\x91\xbf\x98\x7a\x26\xae\x1d\x8b\x61\x4f\x27\x43\xe6\x38\x8b\x28\x9b\x9f\x09\x5e\x4c\x67\xcd\x0d\x55\x47\x79\xd5\xbb\xfd\x71\xa3\x61\x42\x7e\xb6\x29\x7a\x60\x4e\x5b\x1d\xc6\x88\x4e\x2c\xdf\x33\xd8\x47\x95\xe1\x01\xca\x00\xbc\xda\x64\xf0\x6e\xe1\x68\x1b\x69\x2f\x75\xa6\xb5\x54\xf8\x6f\x78\xbd\x8d\x80\x6e\x03\xbe\x19\x5d\x23\x10\x37\x66\xea\xe9\xd4\x5a\x3b\x69\xf8\x2d\xba\xc1\xbe\x3f\xcc\xc8\x74\x4a\x52\x43\x5e\xd5\x86\xad\x29\xc8\xb2\xc0\xa4\xbc\xd7\x9b\x56\xd1\x56\xb7\xd8\xe2\x62\xf6\xa1\x1a\xdd\x19\xf8\x95\xff\xa4\x99\x57\x9c\xba\x3a\x77\x09\x67\x52\x61\xd6\x02\x16\xba\x66\x2d\xee\x12\xc2\x5f\x94\x15\xf1\xad\x81\xc4\x59\xae\xcb\x73\xb0\x89\x37\xc7\x56\xf1\x60\xd6\xe2\x11\x54\xf7\x08\x0a\xf3\x35\x6c\x42\xa5\xda\xf1\x93\x1b\x37\x96\xaa\x4e\x36\x29\x1d\x2c\x8e\x06\x46\xdd\x22\xa6\x19\x6b\x10\xd4\x26\x68\x8d\x5d\xdb\x71\x71\x74\x6f\xf1\x2c\x2b\x3b\xfb\x5a\xe1\x4e\x78\x5b\xdf\xbe\x55\xa9\x8b\x1c\xd4\x8c\x4e\x8b\xc4\x42\x03\x9a\x66\x4b\xe7\xb4\x35\x68\xb9\x0b\x36\x45\x87\x61\x2d\xfa\xf4\x10\xd2\x8b\x87\xac\xcd\xab\xd1\x50\xc7\x3d\xa4\x80\x2b\x77\x6b\x6d\x07\x4d\xb1\x46\x4c\x9d\x5b\xec\x6e\x59\x1f\xc8\xbd\x0e\xc2\x5e\x8b\x6f\xdf\xee\xcb\x18\x1b\xb7\x65\x7c\x1d\xb7\x25\x80\x7a\xae\xba\x5e\x08\x42\x37\xef\x77\x8c\x2b\x61\xae\xc8\x19\x96\x46\x72\x55\xc9\x2c\x1e\x38\xcc\x26\xc6\x8e\xa8\x0e\xd7\x4b\x82\xdb\x59\x08\x3a\x39\x2e\x0e\x8c\x4e\x0d\xf5\xf6\xf5\xe8\xc3\x4a\x00\xbe\xac\xc9\x7a\x84\x1f\x0a\x47\x5e\x79\x31\x7c\x0f\x18\x56\x86\x0b\x96\xcc\xd0\x3c\xc3\x26\xd3\x69\x86\xa5\x21\x69\xe7\x18\xc7\x63\x9a\x51\x05\x49\xda\xc6\xa9\x54\x59\x61\xad\xd1\x60\x71\xef\xe0\xa1\x70\x09\x12\xb3\x8c\xe8\xb7\x8c\x2c\x2b\x6b\x5c\x3e\x67\x6c\x59\x79\x64\x83\x2f\x96\xba\xa4\x4a\xb2\xb4\x71\x65\xe5\x76\x68\x8e\x07\x64\x59\xce\x65\xbd\x9d\xb5\x2d\x5e\x55\x3f\x8f\xd6\xbb\xe1\xa2\x5e\x3f\x4e\xc0\x22\x1f\xae\xc1\xe6\xab\xb8\x88\x8d\x27\x6b\x92\x71\xdc\x52\x9b\xcb\xb5\x6d\x60\x0e\xdb\xda\x4e\x79\x31\x6e\x83\xd5\x32\xa3\x5a\xde\xfa\x32\xbb\xbf\x3b\xb7\xbb\xb2\x0b\x86\x0c\x10\x2b\xa2\xe8\x7a\xa6\x8d\x60\xd2\x58\x91\x43\xf8\xbc\xb9\x71\x0b\x26\xd5\x79\xce\x35\x42\x2b\xc1\x76\x3d\x78\x97\x16\x69\x1b\x2a\x3c\xff\xb5\x80\x2a\xd2\x97\x93\x1b\x93\x35\xbc\x0d\x91\x29\x5a\xa7\xb0\xe6\x93\x58\xed\xf5\x36\x76\xaa\x84\x34\xd0\x39\x63\xa4\x69\x36\x37\xfa\xeb\xee\x07\x32\x2e\x60\x39\x17\x94\x43\x6e\xaf\xad\x7a\xb9\x04\x7f\xa4\xb1\xdf\x2d\x56\xf2\xb7\x82\x14\x44\xd3\xfe\xb8\x48\xa7\x75\xdb\xe6\x1a\xd2\x59\x39\xa5\x19\x7f\x44\x79\x91\xcc\x90\x6b\x1c\xa5\x24\xc3\x8b\x68\x6a\x20\x2f\x29\x9e\x01\xa2\xd7\x86\xf0\x42\x49\x21\x15\xcf\x21\xea\xae\x6c\x57\x14\x0c\x08\x1e\x61\xa5\x04\x1d\x17\xaa\x31\x1a\x2a\xc2\xd9\xd8\xd0\xa1\x75\x73\xd5\x3f\x1d\xbc\x1f\x54\xbc\x49\xbd\x9b\x9f\xc2\xbf\x3f\x5d\x5e\xff\xf4\xfe\xfc\xf2\x53\xf8\xdb\x79\xef\xee\xe2\xf4\xc7\xd1\xd5\x79\xef\x22\xf2\x39\xf5\x6e\x7b\x37\xfd\xdb\x15\x6e\xa5\x7a\xaf\xed\x1b\x81\x03\x18\x10\x2d\xbb\x58\xc3\x25\x78\x00\x9d\x76\x69\x7b\x3d\x41\x3d\x07\x8a\x12\x56\x25\xc3\xce\x35\x08\x2e\x6d\x53\x26\xcd\x7a\x10\xcf\xb0\xc2\xb6\xec\xe4\x11\xea\x21\x57\x3e\x14\x22\x33\xa5\x16\x16\x2c\x62\x84\xde\x1d\xd3\x84\x96\x18\x92\x52\x73\x2b\x2b\x5f\xf0\x89\xc5\x6a\xc9\x48\x88\x90\x68\x8b\xc5\x1f\x0d\x59\xff\x81\x30\x55\x00\x7c\x1b\xce\x32\x57\xe6\xd5\xbd\x10\x64\x56\xb9\x51\x4a\x9a\xd3\x0c\x8b\xb2\x48\xc1\xa5\x6d\x0b\x04\x76\x37\x56\x9f\x48\x5f\x47\xae\x76\xca\xc3\xdd\x00\xc1\xb8\x4f\xcf\x07\x20\x02\x25\xca\x21\xf0\xba\xce\x87\xcc\x60\x81\xd8\x1e\x73\x0c\xd1\xc2\x8a\x5b\x7b\x9a\xe9\xbe\xb5\xee\xfd\x75\x43\x91\x80\x0d\xc0\x66\x8c\xe5\xf9\xa9\xa2\x6b\xfc\x20\xdd\x3f\xfa\x4c\x89\x45\x67\xb9\xe6\x16\x00\xdc\x24\xc8\xa6\x36\x90\x26\x2e\x5c\x60\xcc\x1d\xc8\xb5\x7e\x01\xc2\x8e\x8b\xf2\xb2\xd6\x78\x6f\x74\x27\x00\x12\xd7\x22\x7f\x67\xfa\x12\x7a\xad\xeb\x10\x26\x2e\xc3\x2a\x8c\x79\xc1\x52\x57\x78\x3d\xa7\xec\x38\xc7\x9f\xbf\x71\x33\x35\x89\x80\x1e\x3c\x14\x40\x1e\x48\xa6\x35\x91\x85\x66\x72\xcb\x97\x6b\xc8\x96\xac\xd7\x6a\x69\xd1\x71\x56\x50\x7b\x4a\x1d\xd5\x04\x2f\x3d\x90\x45\xd3\xfe\xd5\x20\xa0\x4d\x80\x94\x3d\xf0\xd0\xc8\x5c\x10\xfd\xa2\x8f\x8c\xca\x4c\xc0\x9b\xff\x1b\xc2\x6e\xa3\x32\x15\xcd\xbc\x3b\xf4\xf2\x6e\x75\x6c\x1a\xfd\xcb\x4f\x80\xe1\x6d\x7b\xd2\x7b\x66\xbc\xcd\xce\xd0\x69\xc3\x8c\xad\x1b\x4d\x6f\xd6\xdf\xf8\x18\x6a\x61\x4b\x57\x86\x4e\x10\x30\x6c\xc3\x56\x38\xc8\x39\x80\x02\xa8\xb9\xb0\x1d\x09\x64\x44\x82\xb9\x97\x69\x75\x8b\xfc\x56\x58\x8f\xdd\x77\xdf\xae\x77\xcf\x2a\xb1\x40\x0e\xde\x34\x0c\x59\xb7\x19\x1b\xf6\xce\x85\x71\x15\x8c\x36\xe1\x83\x5c\x17\x4c\x5f\xc5\xbb\x08\x76\xe8\xee\xcd\xaa\x74\xfa\xff\xb1\x77\x6d\xcd\x6d\x1c\xd9\xf9\x7d\x7f\xc5\x94\xf3\x20\x29\x05\x82\xe5\xdd\xda\xaa\x94\xab\xf2\x40\x53\x94\x0d\x97\x44\x69\x49\x4a\x4a\xb2\xb3\x05\x35\x66\x1a\xc0\x84\x8d\x6e\x68\x2e\xa4\xe1\x2d\xff\xf7\x54\x9f\x73\xfa\x36\x37\xcc\x00\xa0\xac\x78\xfd\x10\x27\x11\x31\x7d\xef\xd3\xe7\xfa\x7d\xf4\xff\xee\xcd\x88\x37\x8e\xd8\x1c\x7f\xff\x64\x80\x4a\x1f\x6a\x38\x4a\xd4\x1d\xe4\xc3\x52\xeb\xfe\x83\xb6\x60\xc9\xfd\x23\xcb\x53\xf4\x15\x42\xf6\xc1\x34\xfa\x51\x3d\xf2\x07\x9e\x4f\xa2\x84\xe7\x25\x23\x88\x85\x02\xc2\xaf\x70\xa1\xa8\x9d\x58\x42\x8a\x38\xe2\x55\x48\x60\xf0\x2b\xb3\xd5\x5a\xdb\x93\x5e\xf0\x5c\xe5\x5a\x1c\x95\x88\x5f\xb3\xe5\x09\x15\xb5\x77\x2c\xc0\x52\xb0\x87\x26\x66\xc4\x21\xe5\xa7\xd1\xcc\xd6\x05\x99\xe8\x94\x81\xf1\xec\x4b\x77\xa0\x05\x23\xa1\x89\x55\xc8\x93\x68\xa5\x04\x93\xab\xe9\x74\x1a\xf1\x32\x99\xbe\x18\x75\xd0\xa9\x41\x3f\xde\x65\x73\x3b\x85\x52\x05\x17\x3b\x5b\x88\x6d\x33\xf0\xf5\x32\x43\xc6\x7f\x91\xa1\xcb\xa3\xe5\xf8\xdf\xd6\xcb\x58\xbf\xac\xeb\xbc\xdd\x52\x1d\x5d\x0f\xd3\xd1\x0e\xa0\x82\x8f\x68\x09\x7f\xdf\x6e\x79\x8d\xa8\xef\x32\x24\x1e\xae\xce\xab\x03\x73\x4d\xc9\xb1\xc5\x4b\x1f\x54\x17\xdb\xdd\x41\x38\x29\xad\x2d\x51\x15\xf5\x41\x15\x33\xcd\x23\xdd\x72\xe2\x6c\xe5\xdb\x31\x29\x3f\x4a\x54\x9b\x6e\xcc\x8d\x63\xb5\x28\x37\x48\xfc\xbf\x2e\xa1\xbb\xc1\x5a\x94\x23\xf5\x33\xa0\xc1\x34\x5e\xf4\x85\xe2\x61\x02\x71\x99\x67\x05\xa0\xc3\x1c\x52\x78\x63\x9b\xc1\xa6\x21\x64\xb3\xdb\xa2\x0f\x0e\x4b\x72\xc4\x0e\x6b\x89\x8c\x8b\x9f\x3e\x29\x50\xd5\x81\x38\x4f\xb7\x64\xa8\x27\x12\x8d\xde\x23\x80\xa4\x3d\x28\xb8\x05\xba\x83\x87\x8a\x48\x99\x0e\xd0\xa0\xe1\xa0\x57\xd1\xd2\x94\x71\xdc\x73\x8f\x46\x27\x05\xbc\xc4\xc7\x69\xf4\x4a\xe5\xc0\x95\x43\x81\x5b\x8a\xad\xbb\x67\xab\x74\x9d\xa0\x83\xf8\xe1\x5b\x93\x52\x81\x33\xc4\x26\x00\x97\x3e\x65\xb2\x6c\x6d\xc0\x65\x1c\x41\x5b\xf8\xc9\x07\x6d\x0a\xb7\xfe\x9c\xda\x87\x9f\x22\x04\xf5\xc5\xc7\xdb\x08\x97\x9a\x90\xf5\xf2\xbe\x81\x7a\x8d\xec\x4f\xea\x80\xe5\x9a\x1f\xa0\x0e\x04\xfb\x80\x8b\x6e\xa0\x15\xf5\xb2\xf3\x32\x59\xbb\xe7\x27\x64\x93\x22\x7e\x01\x9a\xe7\xc6\x61\x05\x62\xbe\x9c\x9f\x78\x44\x8c\xe5\xd6\x8c\x55\x92\x83\xa7\x9e\x95\x51\xaa\xfc\x66\xa3\xac\xdc\x9f\xdd\x31\x12\xcf\x62\xdf\x51\x2b\x15\x46\xed\x69\x9e\x41\xc0\x05\xf4\xca\x0c\xd1\x01\x4c\x6a\x1c\x2a\xc6\x04\x57\x5f\x47\xb8\x0b\xeb\x2d\x63\x19\x76\xd5\x58\x24\x93\x7e\x91\xe5\x1c\x81\xa9\x0a\xfd\x84\x97\xd9\x83\xbe\xa8\xcd\x63\x6d\x0f\x28\x48\x80\xe6\xd9\x8b\x25\x0e\xdb\x43\xb7\xba\xe7\xbb\xc2\xc7\xc6\xa7\x13\x15\x75\x1d\xc8\x4c\xcf\xc7\x30\xcc\xef\xdd\x0a\x58\xb8\xb9\xc7\xf6\x37\xec\x29\xc1\x4e\xdf\xe8\x8f\x7b\xf2\xba\x1a\x8d\xeb\x33\xe8\xea\x64\x9c\x63\x89\xc4\x84\x5b\x67\xda\x43\x97\xba\xd1\xc2\x04\xe9\x7c\x74\x60\xfd\x68\x23\x27\x96\x04\x80\xe7\x85\x44\xb5\xc0\x69\x6e\x1b\x15\xef\x21\xec\xd6\x2e\x28\xd6\x06\x70\x42\x43\x59\xd6\x4e\xc0\x69\xa8\x55\x88\x78\x1a\xcb\x9b\x8c\x23\xa7\xb5\xc3\x03\xf3\x81\x68\x73\x3b\x73\x80\x9c\x1e\x4b\x0b\x47\xb8\x34\x48\xb2\x80\x2a\x70\xc2\xf5\xf2\x5d\xc8\xd6\xf4\x1b\x93\x7c\x73\x7b\x75\x79\x73\x75\xf7\xc5\x72\x84\x4c\x82\xce\xe8\x24\x21\x33\xce\x97\x57\xaf\x2e\xde\xbf\xbe\x9b\xbf\x9c\xdd\x3c\x45\x96\x10\xfd\xe9\x80\x34\xa1\x5b\xc2\xd5\xbc\x54\xb2\xe4\x3f\x1f\xf5\x26\xe7\x95\x9c\xb3\x11\xe9\xea\x16\xbb\xb6\x4f\xdd\xc1\x46\x9b\xb8\xa0\x16\xb4\x93\x50\x91\xf0\x45\xb3\x30\xa0\x1e\xa3\xea\x32\x13\x02\x8a\xc8\xac\x8f\x95\x2a\x43\xf4\xa2\x82\xfc\x31\xd4\x70\x24\x53\x63\xb9\x08\x80\x51\xc1\xef\xb3\xd6\x96\x10\x96\x8f\x6d\xf5\x02\xe4\x19\xd4\x10\xf5\x41\x87\xae\x32\xc9\xdd\x30\x90\x10\xa9\x92\x51\x27\xde\x1b\x6d\xe2\x53\xd6\x08\x92\xe2\x35\x54\xd7\x34\x27\x2e\x38\x9f\x46\xfd\x34\x7f\xb4\x33\xc4\x4b\x9c\x49\x54\x4c\x83\xdb\x7c\xdb\x7e\x74\xcf\xdd\x15\x80\x75\xd7\x3b\xc9\xc0\x11\x0d\x9c\x43\x6e\x23\x69\x23\x10\xb4\xdb\x79\xa8\xef\x33\x4c\xa5\x50\xcb\xda\x3a\x6b\x51\xa8\xd7\x3a\x03\x77\x35\x43\xee\x96\x28\x11\x55\xa1\xad\x7f\xb4\x9d\x2f\x3e\xde\xc6\x12\xa9\x29\xe9\x15\x22\x60\x67\xec\x02\x03\xf9\x2a\xe8\xdf\x68\x28\xbe\x04\x7b\x8e\x8e\xca\x0d\x67\xb2\x40\x46\x38\x21\x78\xee\x4e\x06\x8e\x87\xf3\x94\x38\x01\x80\x36\xd0\x7d\x4f\xa4\x60\x0a\x6e\xad\x1e\x2f\xfd\x95\x48\xb1\xea\xe7\xa9\xab\x46\x11\xb2\x04\x9f\xf2\xe4\xb4\x24\xab\x0f\x3d\x45\x94\x60\xd9\x7a\x88\xc2\xd4\xf1\x41\x67\xe9\x0e\x9b\xfb\xe3\x28\x9d\xf0\x28\x0d\x78\xd7\xfd\x57\x22\x5a\x2b\x2d\x40\x2d\x26\xb3\x8b\x35\xda\x1a\x69\x01\x49\x30\x7a\x19\x5b\x5f\x1d\x07\xa5\x73\x50\xf4\xf1\xfa\xed\xf5\x95\x1f\x3b\x9c\x5d\xdf\x5d\xfd\x70\x75\x13\xd4\xc3\xbd\x7e\x7b\x11\xd4\xb4\xdd\xde\xdd\xd4\x4a\xd9\xbe\x7f\xfb\xf6\xf5\x55\x23\x08\x79\x75\x37\x7b\x13\x34\xfe\xf2\xfd\xcd\xc5\xdd\xec\x6d\xf0\xbb\xef\x67\xd7\x17\x37\xff\xed\xff\xcb\xd5\xcd\xcd\xdb\x9b\x5a\x7f\xef\x2f\xfb\xc3\x99\xc1\x34\xda\x4d\x71\x17\x2d\xf1\x50\x85\x5a\x97\xf4\xf3\x71\x98\x73\x25\x2b\x5b\x15\xea\xc1\x96\x0e\x71\x92\x7d\xae\x78\xbe\xa3\xb2\x7c\xd4\x42\xf1\x5f\x12\x26\x31\x27\xaa\x24\x56\xe5\xd4\x4f\xe6\x89\xe5\x47\xe4\x5d\x7e\x45\x94\xe7\x3f\x80\x47\xd3\xfc\xd8\x71\xf7\xc1\x65\xfd\x1b\xf6\x61\xff\x36\x8d\x65\xc0\x79\xe6\x7d\x15\x50\xb6\x4e\x63\x69\xc0\x1d\x53\x95\x14\x53\xb8\xcb\x53\x95\xaf\xce\x89\xc1\x40\xcb\x3a\x75\xbf\x50\xea\xfe\x9c\xcb\x73\x24\xe2\x3f\x67\x55\xa9\xce\x21\x1a\x82\xd9\x22\xc5\xb9\x01\x3a\x37\x48\xf1\xc5\xf9\x3a\x7b\xe0\xf0\x9f\xe9\xba\xdc\x88\x7f\x2b\xb6\xeb\x9f\xcf\x56\x22\x3f\xd3\xdf\x9e\xf9\xdf\x9e\x99\x6f\xcf\xcc\xb7\x67\xfa\x33\xfc\xcf\x76\x87\x86\x3b\x27\xca\xc9\x58\x66\xb2\xe0\x79\x09\xa5\x83\x8f\x79\x56\x3a\x42\xdc\x5d\xf4\xec\x9f\xff\x8c\xa6\x39\x7b\xc4\xec\xd8\x97\xac\x64\xef\x50\x73\xfc\xf5\xd7\x67\x51\x51\x2a\xa2\x6d\xd8\xb2\xfc\x73\xc5\x4b\xad\xc3\x0a\x9e\x94\xd1\xbf\xc7\x12\x98\x5e\x36\xbb\x79\x89\x1a\x35\x6a\x97\x69\x11\xfd\x27\xb6\x39\x43\x88\x8a\xb4\xd0\x2d\x75\x24\xce\x64\x4c\xb4\x70\x63\x74\x18\x5f\x9f\xc5\x4b\xfa\xfd\x08\x89\xf3\x59\x04\x81\x78\x0b\xc0\x58\x7c\x16\x80\x85\x22\x14\x33\xb1\x98\xc8\x1e\x5e\x90\x80\x34\xb8\x96\x3b\x72\xc7\x8a\xfb\x13\x57\x4b\x03\x3a\xc0\x98\x6a\xe7\xd6\xe2\xe6\xc0\x73\x9b\xf2\xf9\x61\x85\xd4\x5d\xc5\xe0\xad\xfd\xe4\xbc\xcc\x77\x73\x56\xea\xbb\x72\x1c\x8f\xef\xf0\x4d\x1d\x57\xa3\x0d\x6f\xf0\x80\x1a\xed\x60\x57\xbf\x9e\x1a\xed\x96\xf2\xeb\x66\x8d\xf6\xec\x7a\x76\x37\xbb\x78\x3d\xfb\x9f\x5a\x8b\x1f\x2f\x66\x77\xb3\xeb\x1f\xe6\xaf\xde\xde\xcc\x6f\xae\x6e\xdf\xbe\xbf\xb9\xbc\xea\x2f\xba\x68\x8e\xde\x89\xe7\xb3\xc8\xef\xe7\xbb\xe8\xce\x33\x39\x31\x76\x46\x1e\x0d\xc2\x88\x85\x53\xc5\x44\xf6\x4b\x26\x57\x13\x60\x9a\xfd\x2e\xba\xca\xf3\xd9\x86\xad\xf8\xbb\x4a\x08\x70\x0c\x61\xa0\xfa\x32\xe7\x20\x68\x27\xd1\x3b\x95\xce\xbc\xef\x20\xbb\xa6\x75\x1a\xd0\x3f\xf1\x36\x63\xf7\x13\xea\xdf\x73\x83\xd8\xcc\x1d\x72\x03\x5a\xca\xfe\xef\x80\xb6\x42\x2d\x89\x80\x6c\x62\xf3\x00\xa2\xcf\x95\x2a\x59\xc4\x7f\x4e\xa0\xd0\xa8\xfd\x9c\xbc\x56\x47\xf1\x2e\xef\xa7\x08\x6b\xbf\xd3\xfb\x6b\x33\xdb\xbd\x5d\x88\x91\x38\x1f\x43\x7b\x4a\xb3\x7c\x83\x9f\x12\xd3\x69\xbb\xd1\x50\x8a\x13\x24\x3e\xbe\x56\xab\x76\xc8\x2f\xa8\x0c\x25\x9c\x32\xc7\xcf\x04\x69\xd4\x6a\x15\x15\x99\xbc\x8f\xe5\xc7\x35\x97\x91\xaa\x72\xfc\x27\x78\xd6\xb2\x22\x5a\x8a\xaa\x58\x73\x20\x6f\x9f\x44\x8f\x3c\xda\xb0\x1d\xaa\x0e\x1b\x95\x7b\x20\x68\x70\x64\xf4\xe1\x84\xaf\x45\x26\xb5\xb4\xd8\x66\x26\xcc\x56\xdf\xfa\x53\x84\xe1\x4d\x99\x1d\x3b\xbe\x0a\x7e\x58\x2e\xe1\xe3\x9a\x43\x1a\x95\xf3\x00\x1b\x57\x07\x49\x6e\x40\xab\x55\xea\xbe\xda\xba\x82\xdc\x67\x06\xf5\x06\x96\xfb\x41\x65\x69\x94\x56\x5b\x91\x25\x56\xee\xea\x07\xb4\x2b\x85\x1f\xe3\xc1\x23\x50\x07\x6a\x59\x0e\x7d\x13\x6b\x09\x36\x7b\x3e\xc1\x1e\xfc\x81\x27\x46\x60\xf0\xd8\x02\xab\x82\xe7\x67\x65\x9e\xad\x56\x10\x5c\x33\xa9\x2b\x5f\x3f\x44\x83\x2b\x01\x3d\x3e\x4b\xc3\xcf\xa1\x14\x6a\x95\x25\x4c\xf8\x61\x1a\x67\xdf\xd9\x1a\x70\x73\xed\xb7\x55\x8e\x3c\xfd\x4b\x57\x87\xdb\x59\xdb\xb2\xcd\x39\xc0\x10\xcc\x91\x80\xf1\x78\x62\xc8\xd9\x12\xe9\xe8\x89\xc1\xc8\x25\x19\x1b\x12\x38\xf3\xc2\xb9\xbe\x0d\x06\x22\x72\x55\x00\xeb\x6b\xa4\x1e\x81\x42\x58\x5b\xec\xda\x80\xd5\x33\x95\x0a\x74\x13\x8b\x8b\x68\x23\x2d\x06\xd6\x72\x69\x43\x4a\x98\x08\xb6\xca\x1e\xb8\xfc\x0a\x20\x35\x9c\x8d\xa6\xa7\x6e\x6f\x69\xab\x88\x3c\x16\x24\xd1\x06\x4a\x0f\xd5\x88\xfb\x03\xdf\x2b\xa1\x16\xc8\x61\xdc\x80\x4f\xf4\x5f\x9d\x2e\x24\xb6\x07\x9e\xe7\x59\x3a\xe6\xb6\x9a\x35\x79\x6b\x3f\xed\x1b\xa0\xe5\xc6\xb0\x3d\xc1\x45\xc9\xb4\x1d\x56\xd6\xb5\xd9\x7a\x92\xd5\x3e\xd5\x19\xec\xdb\xc2\x1a\xb8\xf6\x71\x35\x10\x28\x50\x0c\xa5\x7a\xc8\x56\x9a\x73\x39\x6a\xa3\x9b\x69\xbb\x7b\xd6\xd2\x65\xfa\xf6\x6f\xf2\x11\xb9\x97\x98\x28\x6a\x13\x30\xc7\xd4\xb1\x9b\xad\x43\xe7\x23\x10\xd9\xd8\x4d\x0c\xa2\x42\x83\x76\xb4\xbe\xee\x77\xe4\xf2\x38\xaa\xb0\xe8\x09\x6e\x54\x55\x2a\x8f\x56\x5c\xcf\x67\x66\xd9\xc5\x4d\xbc\x19\xc4\xc6\x2c\x6d\x25\x28\x74\x22\xd5\x5c\xcd\xae\xe7\xbb\x25\x13\x69\x14\x7e\xaa\xc7\xb5\xbd\xe3\xa5\x4d\x3d\x13\x06\x30\x0f\x10\x39\xec\xac\xc3\xdc\x5b\x93\x5e\x67\xeb\x25\x00\x48\xc7\x52\xde\x6f\xb6\x4a\x72\x49\x1e\x62\xa9\x62\x49\x8d\x1b\xa8\x68\x4b\x3d\x19\x04\xe2\x27\x64\xa4\x62\x58\x87\x17\x4a\x3c\x50\xb0\xc7\x83\x45\x01\xc0\x44\x3d\xc0\x4b\xfd\xde\x6b\xed\x16\xfc\x13\x14\x95\x05\x3f\x75\x0d\x2f\x39\xe7\xab\xac\x28\xb9\x9f\xbb\xe0\x7f\x7f\x32\x98\xd6\x40\x21\xee\x5b\xfa\x4e\x98\xd6\x7d\x2f\x9b\xbe\xb5\x23\xc6\xb3\xdb\xf2\x74\x66\xbf\xeb\x3f\x0c\x41\x02\x52\xea\x09\x89\xe0\x15\xc0\x33\xc0\x89\xc7\x1d\xaa\x11\x0a\x0b\x68\x62\x37\xc9\x92\x99\x1a\x14\x45\xd8\xa2\x55\xc5\x72\x26\x4b\xce\x8b\x58\x62\xa5\x06\x96\x91\x05\x89\xa3\xcb\x00\x97\xd7\xe9\xda\x89\x2a\x4a\x4c\x52\x87\x4f\x96\x2c\x13\x55\xde\xa9\x42\xe2\xa9\x3c\x28\x23\xae\x6f\x95\x2e\xa1\xd9\xa8\x6d\xd3\x6c\x7a\x8d\x77\x8b\x6c\x62\xa7\xe1\x5b\x34\x9c\x90\x61\xf6\x49\xc7\x14\x8c\xc8\x1d\xbe\xdf\xd6\x7f\xd0\x91\x71\xf3\x1f\xc5\x7c\xab\x46\x48\x3c\xa2\x79\x6a\x6d\xac\xf8\xdc\xb0\x73\x7b\x22\xa4\x9f\xbb\x20\x5e\x58\x71\x0f\x19\x95\xfb\xd4\xeb\xfd\x3e\xb3\xbf\xfc\x79\x8f\xa5\xd2\x27\xbb\xe0\xd4\xae\x99\x4c\x81\xf9\x99\x95\xb5\x17\xc8\xde\x01\xc0\x55\x2d\x8d\x70\xec\x0e\x39\x43\x04\x67\x9e\x34\xc2\xff\xfb\xd6\xa9\x96\x37\xb0\x27\x8c\x1c\xf4\x12\x46\xf3\xdb\xa2\x48\xee\x65\x27\x7c\x5f\x7b\x61\xbb\x8f\xe0\x32\x5b\x9d\xbe\xbe\x79\x28\xe0\xb1\x63\xfa\x6e\x4a\xca\x84\xae\x22\xbd\x5f\x16\xe3\xf8\xc8\xcb\x08\xd1\x3f\x2d\xcc\xfc\x2a\xf2\x58\x12\xfc\x37\xfc\x10\x31\xe4\xb1\x52\xa2\x88\xbe\xb5\x29\x21\xdf\xfe\xd5\xe4\xc9\xef\xa2\x25\xac\x35\x14\xa3\xa8\x24\xa9\x72\x00\x5c\x36\x9c\xf0\x1c\xdf\xa6\x31\x60\x1f\x17\xf8\x22\x17\x20\xa2\x20\xe7\xbe\x9b\xde\x98\x4c\xef\x60\x52\x77\x60\x71\x21\x90\xb9\x7d\x0b\x09\x18\x2c\x2f\xca\xa8\x28\xf9\xb6\x55\x2a\x05\x4a\x57\xf8\x9c\x1c\x55\xcf\xdd\x06\x39\xbe\x1f\x37\xe2\x0d\xdb\x76\x98\x21\x88\x47\x7c\x6c\x8b\xfb\xb6\xc1\x26\xf2\xd6\xdf\x4a\x00\x43\x06\xbc\x2b\x02\x72\x6e\xae\x9e\xc5\xbe\xf8\x22\x05\x2b\x63\x88\x33\x2c\x04\x0a\x51\xce\xf4\xc9\xb6\xf0\xd3\xf1\x31\x4d\x57\xa9\x41\x64\x10\xd8\xe0\x02\x71\x4b\x7c\xa8\x95\x43\xa0\x70\xea\x1b\x63\xda\xea\xd9\x8e\x23\x61\x20\x1c\x72\xcf\x17\x44\x81\xf8\xd0\x58\xa2\xb1\x20\x10\x0f\x3e\xea\x0d\x28\x70\x2e\xcb\x6e\x90\xdf\xc3\x82\x3f\x7c\x08\xa1\x8b\x82\x25\x56\xd9\x20\x8c\xa7\x26\x35\x3d\xbc\x50\x29\x97\xaa\xe4\x11\x8b\x64\x26\xce\x65\x25\xc4\xf9\xb5\x92\x5a\x30\x17\xd9\x0a\x33\x03\xc1\xef\x8d\xbc\x6e\x8e\x1f\x2c\x08\x78\x78\x57\x00\x84\xb3\x1e\x12\xc6\x62\x4a\x2d\x31\xf5\x16\x88\x5d\x2c\xf5\x17\x44\x51\x02\xb4\x4a\x99\xad\x22\xc2\xde\x0c\x9a\x34\xf5\x05\x15\xf5\x3b\xbf\xf1\x96\x03\xd6\x07\xc0\x7c\x54\xf5\x0e\xc4\xd4\x8f\xb0\xfb\xae\xbd\xe4\x69\x6a\xcd\x64\xd6\x60\xc8\x67\xc1\x85\x42\xca\xb6\x2e\x21\xa0\x36\x2c\x3b\xc6\x13\xea\x0f\x01\x1b\xeb\x1c\x41\x2c\x2f\xcc\x4f\x2c\xe1\x93\xa5\x5e\x21\x14\x4c\x40\xd2\xb7\x36\x87\x0d\x8b\xd0\xe4\x3a\x26\x31\x16\xda\xb3\x79\x4a\x81\xa9\x85\xe2\x07\xd6\x9e\x45\x48\x1a\xa3\x2f\x9a\x19\x0d\xbb\x54\xbd\x91\xdc\xf6\xc7\x9e\xec\x65\x63\x2e\x59\xb5\x75\xc0\x79\xfc\x2d\x83\xba\x4f\x09\xc7\xed\xb0\xb7\xe9\xdf\xc6\x62\x69\x9b\x95\x3a\x45\x6c\xeb\x33\x42\x6b\xcc\xd5\xd2\xa4\xb5\x1c\x0e\x07\x32\x30\xb8\xe0\x17\x34\xfa\x20\x20\xcd\x43\xd2\x65\x3d\x2b\x39\x27\xfb\x7a\xd8\x60\xeb\x0b\xf6\x56\xbe\xc2\xcf\xdf\x29\x91\x25\xfd\x11\x19\xf3\x34\x01\xd3\x4b\x23\x1e\x07\x9c\x48\xdc\xb0\xad\xd2\xa0\x30\xd4\x50\xf2\xa4\x74\xfe\xa3\xe6\xe4\xc6\x78\x2a\x8d\xb9\x60\x5b\x01\xbc\x39\xc7\xa3\xa5\x9f\x15\x28\xeb\x80\x92\x56\x54\xa4\x81\x36\x05\x1c\x97\x09\x23\xfb\x22\x18\x08\xc8\xa6\xc7\xb5\x12\x7c\x82\x0e\x2a\x08\x77\xc4\x72\xcb\xf3\x44\x69\x23\x2d\x4a\xd5\x23\xa5\x41\x67\x22\x75\xb8\x11\xcf\x21\xfa\x0a\x31\x92\x17\x04\x8e\xc5\xad\x03\xd1\x12\x16\xed\x3f\xb6\x06\x20\xf7\x58\xe0\xa5\x53\x85\x53\xfa\x4e\xc1\x47\x8a\xc8\xe2\x52\x10\xc7\x48\xcd\x15\xa4\x17\x3d\x18\xcf\xb8\x1d\xe6\x16\x12\x00\x1e\x18\x64\xb7\x2a\x6b\xfb\x4a\xf5\x69\xf5\xa5\x84\x52\x27\x44\x46\xc3\xe8\x80\x36\x10\x21\x6a\xce\x50\x0d\x71\x85\x07\xb4\xa9\xb1\x74\xce\xaf\x67\x85\xaf\x92\xb4\xee\x33\x56\xf2\x64\x80\x3b\x99\xf0\x49\xf4\x2c\x98\xe8\x33\x28\x85\x91\x0a\xfa\x23\x07\x45\xb0\x34\x70\x5c\x27\x51\x56\xc6\x32\x2b\xf0\x64\xe6\x5c\xf0\x07\x3d\x3a\x9f\xa9\x98\x02\x19\x84\x58\x62\xa7\x0d\x31\x7f\x46\xc5\x37\xa9\xc5\x55\x86\xa4\xd3\xdc\x2f\xa9\x60\x90\xba\x0b\xc4\x33\x95\x04\x44\x00\xfe\x33\xb2\xfb\x68\x43\x17\x7d\xfb\xa9\xee\xce\x91\x4e\x11\x74\x23\x50\xde\xef\x54\x85\x3c\x81\x29\x31\x6f\x9b\x1a\x71\x9b\xdf\x9a\xa1\x32\xba\x50\xe5\x3a\xd8\x08\xc2\x76\xc3\x9b\xc4\xb5\x89\x5d\x02\x91\x22\xac\xab\xe4\xac\x5c\x47\x59\x39\x81\xc4\x64\x23\x38\x62\xc9\x52\x82\xc6\xa5\xe6\x32\xcb\x74\xde\xbd\xcf\xf4\xf7\x85\x7a\xe8\xd3\xe9\x8e\x0d\xe9\xe1\xad\xde\x0a\x26\xe7\x28\x50\x7f\x83\xa0\x9e\x07\xbb\xd7\xe5\xc7\xaa\x16\x73\x4b\x83\x73\x92\x71\x5a\x4d\xe7\x26\x00\xc3\xd4\x2a\x9c\xe9\x68\x82\x87\xc1\x15\x53\x1a\xcd\x1c\xb2\x12\x4d\x70\x21\x13\x5a\x58\x90\x97\x6c\xb8\x14\x70\xf1\x3e\x56\x73\x33\x9b\xd3\xba\x2f\xe0\x67\x4e\xc0\xd7\x1a\x7c\x1a\xb2\xf3\xb5\x37\xa4\xbe\xed\xe3\xe3\x1e\x0d\x85\xe9\xa0\xd8\xc7\x9e\x61\x3d\x6d\xfc\xa3\xd3\x85\xd0\x8c\x83\x7c\xb4\x9c\x81\xd6\xa7\x8c\x89\x2e\x3c\x2a\x94\xb6\x6b\x8c\x87\xa3\x1d\x56\xd1\x37\x41\x54\x4b\xe0\xfc\x94\xf5\x25\x21\xf9\xca\xe0\x1a\x78\x24\x2f\x8c\x66\xd2\xd2\xe1\x4f\xa2\xf8\x1b\x3c\x59\x45\xfc\x0d\xf2\x4a\x18\x74\x4e\xc3\x8c\x48\xf7\x27\x0d\xc8\x79\xad\xa7\x1d\x33\x3c\xdc\x85\x23\xc6\xbe\x51\xde\xbc\xdf\x92\x92\xd0\x03\x08\xc0\x24\xb0\x05\x36\x40\xcf\x24\xda\x9c\x3b\xc3\x57\x08\x08\xd2\x79\x95\x94\x6e\xc2\x96\xe1\xed\x7b\xf3\xa1\x5e\xa2\x6d\x45\x2f\xaa\x65\x54\x53\x79\x2c\x4d\x6b\x8e\x02\xfa\x42\x88\x46\x53\x4d\x66\x43\xef\xac\x82\x8f\xda\x60\xf7\x00\x24\x94\xab\xfb\xa9\xcb\x01\xf0\x79\x2f\xb8\xc3\x15\x9e\x46\x8e\x5b\x13\x54\x8f\x1e\x1a\x3f\x21\x0c\x87\x1d\x6a\x6d\x1e\x71\x59\x51\x41\x41\xcd\xb2\xd2\xe2\xc8\xab\x3a\x8a\x25\xf0\x39\x2e\x33\x48\xeb\xa0\x75\x89\xe5\x1b\x45\xd5\x4b\xa0\x5e\x99\x49\x9a\x14\x01\x5a\xb6\x67\x16\xc2\x88\xfe\xe1\x25\x3c\xdb\x4b\x0c\x56\xd7\x30\xad\x21\x0b\x09\x72\x25\x27\x5a\xf7\xc8\xdd\xa4\x12\x26\x63\xf9\xbf\x7a\x79\x0c\x4d\x21\x6d\xab\x5a\xe2\x25\x36\x18\xe0\xd1\xf3\x4f\xd8\xe8\xf3\xbf\xbe\xf8\xf4\x02\x29\x60\xab\x02\x50\xe3\x26\xe1\x13\x62\x0b\x50\x2b\x21\x20\x53\xd7\xcc\x00\x0a\x03\xa0\x5e\xde\x76\xd1\xcb\x50\x44\x56\xce\x48\x36\xb7\xbd\x3c\x6e\xce\xf3\x7a\x11\x25\xac\x4c\xd6\x67\x46\x9b\xf3\xa9\x1b\x33\xc3\x21\x49\xf0\x51\x5a\xd7\x6a\xaf\xc1\xd4\x16\x58\xbe\xb1\xa8\xcc\xc1\x79\xd1\x53\x80\xb8\xc9\x5d\x70\x2a\x7d\xec\x73\x3c\x9c\x0e\x10\xd9\x69\x7a\xf6\xe7\x06\x13\xca\xb9\x4b\xc9\x45\x2c\xd9\x86\xa7\x51\x8c\x10\x2a\xf1\x37\x66\xfb\x63\xb9\x5d\x4c\xc5\x6e\x59\x52\x09\x8a\x5e\x96\x29\xe0\xa6\xec\x79\xe9\xe6\x69\xd3\x54\xda\xb3\xdc\x9d\xc6\x56\xbb\xbe\x63\x57\xc7\xf6\x34\x5c\x69\x41\x17\x8f\x5d\x9f\xdb\x30\x06\x14\xd6\xf0\x02\xdb\x1d\x71\xf3\x69\x25\xd7\x53\xac\xdc\xfd\x44\xda\x23\xa8\xef\xc8\x12\xc4\x3f\x94\x4c\xec\x20\x39\x68\x12\x4b\x2c\x86\x81\x7a\xb8\x5d\x22\xb2\x84\x78\xf6\x42\x5d\x88\x3f\x70\x59\x5e\x51\xd5\x8d\xc9\x42\x9a\xc9\xa5\x3a\x46\x21\xb2\x15\x40\x47\x61\xc9\xcf\x42\x8d\x07\xc0\x1f\xb0\x5d\xe7\x60\x4c\x72\x24\xc3\x07\xab\xda\x64\x2d\xd8\x23\x3e\x21\x24\x26\xa8\x17\x8a\xfe\x56\x2d\x94\x30\x05\x57\xb3\x97\x91\xca\xa1\x8a\xbd\x54\xf4\x4f\x59\x3a\x0a\x36\x19\xb9\xa1\x29\x14\x68\x99\xa8\x6b\xfa\x50\x63\xc4\x85\x03\x8a\x57\xb9\xe5\x1a\xf6\x9c\x9d\xe1\x0c\xda\x76\x2b\x28\x64\x01\xf0\xcb\x2f\xa5\xbc\x76\x95\xd0\xb4\xdf\x95\xf7\x1d\x8a\xab\x25\xb0\x0d\x7d\x9c\xf5\x4b\x4d\xeb\x94\x1f\xca\x2e\x86\x75\xf0\xc6\xfb\xa0\xf2\x6c\x95\x49\x56\xaa\x3c\x7a\xfe\xce\x14\x8f\xbe\xb0\x80\x07\xb0\x8a\xed\xc3\xa8\x79\x57\xc7\x2c\x11\x7a\x66\xdb\x55\x23\x88\x26\xf3\x74\xde\xac\x5c\x18\x0b\xde\xbc\x37\x5b\x42\xff\xaa\x28\xd9\x66\xeb\xd7\x8c\x59\x4c\x41\x5a\x19\x81\x8b\x10\x99\x81\x81\x11\x9e\x15\x2e\x03\x2e\x96\xe4\xba\xc2\x7d\x53\x79\x0b\x2b\x41\x7d\x96\x20\xe6\xe7\x07\xd6\x85\x10\x39\xf0\xfe\xaf\x7b\xdd\xfb\x37\xaf\x8d\x47\xcf\x3d\xdb\xc1\x3b\x08\x13\xe5\x32\x01\xa9\x0a\xf9\xef\xeb\x20\x05\x3f\x96\x2e\xfd\xfd\x52\xa8\x2a\x8d\x48\xf6\x50\xa8\x20\x9f\x46\x19\x9f\x4e\xa2\xe2\x2f\xdf\x9d\x9f\x4f\xa7\x5d\x5c\xfd\x23\x51\xc2\xec\xfd\x86\xef\xda\x4f\x38\xfc\xad\xb5\xbc\x64\xcf\xd5\xa2\x95\x1d\x67\x1c\x52\x94\xec\x0d\xdb\xf6\x17\x31\x30\xa3\xd8\x62\x7a\x95\xcf\x8b\xd1\x72\xf7\x87\xb0\xf6\xce\xc7\x59\xb2\x06\x05\x0e\xce\xb3\xef\xe9\x09\xd3\xbb\xeb\x5d\x5a\x26\xe3\x63\xba\x33\x79\xc4\xfd\x5d\x6d\x59\xce\x65\x39\x87\x1e\xc7\x75\x06\x9d\xbc\x83\xcf\x83\xc2\xbe\x41\x16\xfb\xdf\xef\x14\x3a\x62\x4c\x76\xff\x3f\x3c\xc6\x71\x42\x94\xd5\xaf\xcf\xf3\x0c\xe2\xa2\x9e\xd3\x7a\x1f\xc9\x32\x4d\xe8\x80\xd5\xf3\x26\x14\x88\xce\x41\x13\x72\xa3\x47\x30\x18\x4b\xa8\x6d\xf3\x57\xb5\x28\x33\xff\xe6\xce\x1c\xe6\x84\xbb\xf0\x49\xc4\xca\x48\xef\x9f\x88\x7e\xe1\xb9\x72\xc8\x06\xc4\x52\xe1\x35\xdc\x53\xe9\xb2\x9b\x1f\x0e\xbb\x86\x78\xaa\x08\xf8\xe5\x23\xde\xc0\xbf\x50\x01\x05\xaa\x7d\x8b\x9d\xa9\x78\xe9\xf0\xf5\x6d\x79\x32\x3f\x80\xc7\xc7\x0e\xc5\xd3\xba\x3c\xf9\x6e\x2c\x53\xfb\x58\x98\x0b\x7a\x0e\x4a\xa5\x36\x10\xb4\x36\xc4\xb6\x94\x83\x00\x74\x1e\xcb\xa8\xee\x65\x9b\xc2\x24\xfe\xfe\x5f\xff\x98\x76\xa1\x29\xc2\xd0\x0f\x66\x6b\x7c\x65\xa8\x6b\x73\xce\x52\xc7\x06\xe4\x93\xfd\xec\x43\x4a\xdc\x7b\x20\x8f\xd0\xb5\x8e\xd9\x97\xa6\x36\x65\x31\x90\xdc\x11\xcf\x52\x1f\x0a\xdb\x1e\x70\xda\x1e\x4b\x06\xa3\x96\x11\xd8\x54\x1d\xfa\xdc\x94\xc6\xd9\xd2\xc3\x88\xd5\x6b\x97\x4f\x5f\x48\x53\xed\xaa\x65\x1f\x32\x7c\x63\x05\xbd\x53\x4a\x1c\x6b\x09\x31\x61\xd0\xc5\xe6\x00\xe6\x72\x8c\x26\x83\x07\xc0\x9a\x3e\xb3\x97\xd6\x2b\x67\x8b\xc3\x41\x4e\x7b\x50\x6a\x10\x32\xa2\x21\x40\xa0\x06\xa9\x04\xbb\x13\x29\x8a\x6d\x8b\x63\x76\x64\x42\x08\xb4\x81\x11\x1d\x8b\x53\xde\x30\xcd\xbc\x24\x56\xe6\xc6\x08\x05\x74\xb5\x11\x8e\xb2\xc3\x10\x7a\xa5\xd6\x95\xb5\xc9\xfc\x42\x5b\xbb\x8e\x5e\xdf\x66\x3d\x11\xf0\x4d\x1b\x75\xf4\x80\xc4\xd2\x7b\x2c\xb0\x9c\xc6\x64\xdc\xd8\x55\x6b\x33\xd5\x82\x63\x78\xb4\xa9\x76\x0c\x9a\x42\xaf\xa1\xfd\xd2\x07\xf6\x01\x7f\x71\xa2\x36\x0b\x6d\x2e\x21\x20\x1f\x05\x6c\xe0\x95\xbb\x30\x95\xb5\xb6\x2c\xd0\xbc\x56\x88\xe5\x59\x5b\x7b\x9b\xed\xe2\xd7\xfd\xf9\x22\x6b\x9f\x26\xe8\xab\x16\xa7\x05\x7e\x68\x97\xb3\x17\xf5\x19\x00\x67\xc5\x23\xdb\x15\x80\x82\xa4\xed\xf6\xe5\xd2\x91\xbc\xf9\x76\x84\xb5\x24\x6d\x21\x24\x41\x0a\x56\x04\x8e\x46\x73\xc9\x88\xe7\x53\x18\xbc\x27\x57\x10\xf3\xac\x68\x5f\x9c\xa7\x46\xa9\x68\x5f\x0b\x68\xdf\xd6\x52\x13\xa6\x7c\x90\xa1\x3d\x41\xdb\xe7\xcf\x2e\xb1\x9e\x27\x4a\xda\xfa\xeb\x93\x98\xd4\x2d\x08\x16\xed\xc3\x85\xbf\x35\xc0\xe8\xf7\xd9\xf7\x47\xba\x19\xbc\x67\x32\x57\x09\x81\xeb\x97\x11\x80\x23\xa2\x38\xd6\x7d\x4f\xa2\x0d\xcb\x24\x5d\x83\x32\xd7\x02\x32\xe5\x8b\x6a\xb5\xea\xb4\x7e\x85\x5a\x3d\x69\xe0\xc4\xe0\x3d\x78\xbf\xef\x48\xda\x17\x7d\x18\x06\xfb\x2c\xcd\xdf\x8f\x9b\xa3\xb7\xa4\xeb\x14\x8e\x8a\x99\xe9\x09\x9d\xe3\xcb\x4c\xf0\x2f\xe3\x9b\x38\x91\xa3\x65\x36\xc4\xd1\x62\xa2\x2b\x90\xe1\x49\xa0\x55\xc6\xff\xfd\x87\x07\xe6\xcb\x78\x60\x5a\x5d\xcc\xf5\x11\x62\x5d\xce\x3c\x0b\x15\xe0\x9e\x11\x1e\x58\x7e\x67\xeb\xb4\x61\x54\x84\xff\x57\x70\x99\x16\x40\x6f\x71\xfa\x7a\x3c\x78\x7d\x8e\x2f\x53\xdb\x43\xef\x72\xab\x36\x3c\x82\xae\x0a\xc4\x08\x8a\x28\x89\x76\x02\xf1\x62\x3d\x41\x07\xb9\x0a\x22\x89\x02\xa2\xc9\x9a\xc9\x15\x4f\x9d\xd2\xfa\x5c\xf2\xc7\x48\xbf\x06\x13\x3f\x80\xe6\x6d\xcf\x24\xe2\x65\xf2\x82\x00\xbc\x5d\xbe\x4d\xce\x13\x95\xa7\x00\xd2\xb1\x62\x79\x0a\x59\x5e\x74\x25\x05\x4b\xee\x81\x42\x12\x1e\x4c\xec\x91\x82\x7c\x06\xc7\x02\x03\xcf\xae\xb5\x4c\x26\x08\xa6\x6c\xe8\x68\xec\xf8\xf0\xf3\x22\x62\x49\xae\x0a\xe2\x98\x27\xe6\x40\xa2\xac\xf3\x58\xbb\xa0\xc7\x4e\x27\x0a\x2b\x8e\xc2\xe5\xb8\x90\x2e\x67\x83\xff\xbc\x15\x4c\x86\x77\x12\xa7\x5b\xe6\x0c\x40\xbd\x3b\x4f\xbe\xad\x65\xfc\xa2\x35\xd9\x3e\x28\xaf\xbb\x56\xa8\x7d\xe6\x9c\xa5\x3b\xbf\xe2\x2b\x93\x84\xb4\xc9\xd2\x4d\x26\xf5\xd6\xeb\x6b\x8d\x2c\x6e\x24\x5f\xa1\xe9\x84\x09\x0c\x75\x03\x48\x94\x10\xb5\xab\x5f\x44\x92\x6b\x95\x85\xe5\x99\xd8\x81\x96\xba\xcd\xf9\x99\xd7\x8f\x77\xbf\x29\xd7\x2e\x2b\x62\x89\x63\x07\x0e\xd8\x65\x25\x50\x97\x05\x6b\xcf\x4e\x80\xee\xe1\xfb\xd9\x44\x3f\x63\x25\x41\xb3\x78\x1d\xc3\x99\x3d\x49\xde\x52\xd3\xce\x1a\xe4\x3a\x74\x95\x88\x39\x24\x55\xac\xd5\xa3\x49\xae\x7c\x64\x2e\x76\x3e\xc6\x10\x7d\x47\xb2\xcb\x18\x99\x5e\xa4\x1d\x54\x8e\x80\x43\xe6\x95\xca\x09\x3e\x05\x84\xc3\x3b\xa2\xaa\xf9\x31\x7b\xe0\x93\xe8\x76\xcb\xf2\xfb\x49\xf4\x72\x27\xd9\x26\x4b\x7e\x52\x8b\xbd\xb6\xe5\x29\xfc\x2b\x56\x05\x1a\xed\x7f\x6b\xf5\x54\x4c\x3c\xf0\x04\xcf\x0b\xd7\xf4\x04\x98\x20\xa8\x3e\x31\x84\x2d\xdd\xf5\x84\x9b\xb8\x72\x27\xc2\xc6\xa9\x34\xe4\xee\xb0\x78\xa7\xbe\x5c\x97\x00\x4e\x56\x53\xe6\x71\x5b\x30\x58\xcb\x48\x48\x98\xd6\x13\x3f\x83\x57\x4f\xe5\xd1\x56\xb0\x52\x9f\x15\xc3\xfe\x86\xa7\x02\xe3\xd7\x28\xed\x6b\xf9\xe4\x43\x1f\x75\xd3\xf1\x7c\xab\x94\x68\x7d\xdb\x4f\xba\x80\x0d\x4f\xda\xd0\xc5\x9b\x61\x1e\x5e\xe1\xbf\x78\x66\x15\x9d\x57\xc6\xf9\x70\x3c\x84\x7e\x38\x4d\x69\x95\x23\x65\x95\x59\x8e\xa9\x73\x81\x32\x6d\x1e\x60\xd6\x00\x3e\x72\x0b\x9e\x30\xa8\x14\x36\xda\x07\xb2\xe9\x81\x7b\xca\xbd\xd1\x2d\xfe\xa2\xa2\xd9\x4f\x87\xca\x01\xed\xce\xb3\xb6\xc2\xb1\xb1\x97\xeb\x6e\xdd\xea\x04\xc6\x91\x1b\x07\x96\xc9\xdc\xda\x57\x18\x6e\x12\xd5\xe7\x89\x60\xc5\xc0\xac\x99\x56\xb9\x33\xa3\x86\x2e\xa1\x9d\xe1\x32\xf3\x47\xf0\xd7\x6d\x06\x0a\xe3\x58\x5e\xd8\xc2\x68\xf7\x8c\x5b\xd5\x03\xc5\x2c\x2a\x5d\x8d\xad\xc1\x74\x30\x57\x45\x3f\x89\x8a\x2a\x59\x43\xc2\x5b\x28\xa7\x7c\xb9\xd5\xbc\xb1\x93\x58\xea\x87\x10\xb1\xf6\x18\xc4\x6c\x1e\xf5\x73\x57\x64\xbf\x70\xfb\xd2\xa2\x4a\x14\x3c\xae\x0b\xa6\xb7\x86\x48\x25\xea\x8a\x88\xc9\x3d\x64\xf9\x3d\x4f\x3d\x37\x52\xb5\xd5\xe6\xef\x34\xb6\xcb\x8c\xe7\xd7\xf1\x20\x92\x66\x53\xf8\x13\xf3\x15\xb1\x9a\xa4\x15\xd9\x92\x27\xbb\xa4\x51\x47\x1b\x44\x4a\x4f\xe7\xaf\x3c\xcc\x5d\xd7\x57\x6f\xd9\x6e\x85\x7d\x6c\xd4\x0c\x45\x5d\xe1\xa5\xff\x9f\x49\x25\x1d\x25\x7f\xbf\x77\x8f\xcb\x9e\x44\xf2\x3f\xf2\x43\x7e\x97\xde\x89\x61\x15\x80\x81\xfc\x32\x29\x18\x60\x0d\x91\xd6\xdc\x9a\xf8\xf1\x75\x15\x79\x64\xa9\x7f\x6f\xca\x35\x6f\xa9\xf5\x18\x76\x15\xa8\x94\x26\xb5\x65\x3e\x63\xb0\x86\xf0\x53\xb3\x5e\x97\x42\x15\x55\xde\x7f\xf9\x6f\xc2\x51\x9b\xde\xdd\x6c\x02\x0c\x28\xbe\x59\x70\xa8\xe0\x4a\x71\x67\x5a\x27\xb3\x4f\x51\xd0\xf6\x52\xfd\x7b\x4a\x89\x78\xe4\x51\xc2\xb6\x90\x49\xdb\x8e\x9c\xda\xf8\xce\xb3\xaf\xe1\xe5\x5d\x71\x5f\x0b\xa8\x3d\x8e\xc1\xe1\x0a\x62\x49\x5f\x55\xda\x65\xab\x0d\x56\xab\x32\x0f\x5c\x31\x83\xa2\x6f\xa7\xf0\x6c\xbf\x63\xe5\x1a\x9d\x04\xc0\xb4\x81\x91\xd8\x52\x2b\x50\x88\x6b\x8d\xee\xee\x85\x50\x0b\x00\x43\x06\x6c\xfe\xae\x73\x4e\x87\x73\xd0\xd2\x35\x37\x6c\xc8\xd9\xd6\xf7\x01\xb2\xe6\x73\x5e\x40\xf9\x64\x33\x9e\x34\x34\x89\x6d\x9c\x23\xa3\x39\x5c\x2d\xb6\x5e\x36\x1c\x19\x4d\x30\x25\x2d\xd5\x21\xa3\xe9\xaa\x45\xac\xef\xbb\x58\x57\x7e\xde\x39\x03\xfe\xb3\x12\x18\xa6\x31\x60\x5b\x64\x72\x25\x78\x6d\xbe\x06\x6d\x3e\x96\x17\xf8\x97\x80\x8b\xc0\x82\x06\xda\xa4\x21\x02\x16\xb6\xf7\x0f\x13\xd1\xa3\x0b\x53\x58\x0a\x05\x8c\x8c\x02\x8a\xd6\xe2\x02\xf7\xc8\x04\xf2\xbe\x65\x99\xe5\x5a\x9f\x2e\x40\x5d\x28\xaa\xc5\x99\x2b\x33\x54\x39\x28\x18\x50\x85\xba\x65\x39\xa0\xb6\xaf\x33\x91\x9e\xb5\x3c\x24\xe8\xe3\x74\xe0\x5f\x06\x89\x82\x09\x12\x5f\x60\x17\x62\x95\x8b\x9d\xbb\x6d\x47\xab\xf7\x9c\x25\x6b\x5b\x61\x81\xe2\xba\x4f\x5e\x04\xc6\xd2\x6f\x9d\xfc\x32\x20\xbb\xa4\x03\x34\xf6\xf7\x2f\x27\x82\x35\x1b\x22\x27\xee\x42\xd3\xca\xdc\x1a\x6d\x1c\x92\xe4\xe8\x5a\xaa\x62\x8e\x21\xfe\x2f\x50\x86\xef\x3c\x43\xc5\x96\x3d\x4a\x2a\xee\x1b\x55\xe6\x30\x4c\x3e\xb4\xb3\x51\x68\xf9\xd0\x48\xfb\x71\x92\x42\x52\xa1\x7c\x99\x59\x84\xd5\x89\x87\x35\xce\x84\xf0\x11\xb9\x9c\x2b\x28\x96\xce\x61\xa0\x9f\x7f\x21\xf4\xff\x4e\xea\x82\x9b\x8a\x39\x53\x24\x40\x99\x98\x4a\x34\x42\x71\xa0\x10\xc5\x19\x1a\xe6\xce\x7c\xde\x77\x9b\x4f\xa5\x4f\x26\x2c\x59\xf3\xb9\x1e\x5a\x35\xa2\x5c\xe9\x92\x95\x4c\xa8\xd5\xa5\xfe\xf8\x16\xbf\xed\x7d\xcc\x50\x2f\x42\x35\x0d\xfb\x82\xe4\x3f\x96\xac\x89\x34\xa8\x96\x32\xd6\x75\x9f\xb0\xdb\x79\x0b\xd7\xeb\xde\xb1\xb6\xbb\xe3\x3d\x72\x24\xb8\xcc\xa6\x16\x2a\x61\x79\x6e\x12\x7a\xa9\xd7\x88\xe5\x65\xb6\x64\x49\xe0\x41\x1f\x84\xc3\x13\xbc\x90\xd8\x62\x01\xa1\x67\x93\x96\xe6\x8a\xc5\x59\x64\x21\xbe\xbb\xf7\xff\xd4\x36\x05\x77\x42\xfa\x09\xfc\x23\xfd\x8e\x43\xbc\xbe\xcd\x37\x32\xf0\x2c\xb3\x46\xd2\xf3\xc0\xc5\x66\x51\x00\xb1\xd0\xba\xa4\x1e\x4b\xfb\x11\x6b\x78\x60\x71\xc9\x38\x04\x3e\x8f\x3a\x7d\xb8\xe4\x6c\x40\xf1\x12\x6d\x38\x12\x2d\x53\x9d\x7a\x59\x2f\xac\x84\x25\xc4\x14\xef\x07\x9e\xba\xa2\x53\x0f\x79\x44\x3f\x7d\x6c\xc5\xa3\x0d\x4f\xb3\xaa\x0e\xf0\x18\x94\x23\xfc\x61\x0b\xff\xeb\xd9\xc2\x90\x5a\xf0\x94\x86\x70\x7b\xa1\xcb\x1f\x4f\xe1\x57\xf0\x14\x7a\xe3\xa4\xbd\x1e\x79\x0b\x06\x4b\x8f\xfe\xe8\x9d\x7b\x6c\x9d\x06\x6a\xdf\x15\xd6\x3c\x87\xbe\x0b\xa7\xf4\xd7\x40\x2b\xfe\x83\xdd\x7f\xdd\x05\x5f\x5f\x55\x10\x63\xc8\x63\xaa\xaf\xb8\x0d\x6b\x5c\x9b\xab\x0d\xec\xa6\xa5\xea\xbb\xe2\x1e\x12\x0e\x2b\x9f\x15\x76\xd5\xc3\xab\x6c\x72\xb5\x5e\x67\x45\xf9\x81\x89\xea\x28\xf8\x1b\xa8\x29\x79\xb2\x48\xbc\x19\x2a\x0e\xd3\xfb\xa2\x37\x80\x7c\x13\x86\x78\xf5\xbb\x8a\x67\x0e\xca\xe4\x0d\xa8\xac\x1e\xf7\x18\xc1\xfb\xc9\xae\xd7\x27\xd4\x19\x1f\x73\xb6\xdd\xf2\xdc\xc4\x2d\x1b\xa1\x65\x40\x68\x85\x5e\x62\x89\xbe\x87\x9f\x6e\xdf\x5e\xd7\xdf\x06\x2d\x7b\x6a\x4d\xc3\xcf\x60\xe9\xa6\xed\x3b\x77\x5d\x09\xd1\xb9\x73\x03\x28\x62\xdf\xbf\x7e\x3d\xff\x70\xf1\xfa\xfd\x55\x2f\xb8\xa2\xf7\xb3\xce\x35\xb1\x23\xa1\x35\x41\x8b\xb0\x04\x2b\xb0\xda\xf0\xdc\x94\x75\xb8\x59\xa3\xe2\x5d\x09\x11\x82\x6c\xc6\xf2\x13\xb5\x03\x09\x46\x95\x44\x8f\x4d\x2c\xa3\xde\x85\x0b\xfb\x87\x9f\x7d\xd2\x8d\x7f\xc2\x6f\xcf\x22\x37\x89\xef\xa2\x6b\xdb\x6b\xc7\xba\x52\xf6\xe2\x11\xd7\x01\xb1\x3e\xbb\xae\xc3\xa9\x61\x84\x0f\xbb\x1e\xef\x25\x60\xb8\xf0\xd4\xa0\xff\x9e\xe4\x76\xe0\xda\x7d\x0a\xbd\x81\x56\x96\xa7\xa8\xda\x42\xbb\x13\x04\x7f\x2d\x4a\xaa\x6d\xc4\x35\x8b\x25\x51\x3c\x33\xa8\x82\xec\x1c\x53\x34\xa3\x68\xbe\x60\x72\x55\xb1\x15\x2f\x26\x91\xe9\x3c\x96\x9b\x6c\xb5\x06\xb4\x1c\x62\x9c\xb2\x96\x0c\x2b\xb3\x07\x5e\x3b\x42\x98\x88\x65\x18\x65\xa3\x4c\xc6\x92\xe6\x24\x57\xae\x79\xcc\xd1\xfa\xe9\xd6\x4e\x47\x9f\x34\xdb\x10\xe1\xd7\xca\x58\xe2\xe6\x22\x28\x9f\x71\x93\x80\xe2\xc7\xca\xfa\xd1\x65\x39\x37\x90\xd9\x20\xd3\x57\xe0\xb0\x89\xa5\x2d\x59\x80\x8d\x0d\x58\xb3\x30\x73\x13\x87\xb4\x5f\x9e\x98\xcd\x30\x77\x82\xc6\xd6\x7e\xea\x8f\x7e\x03\xf4\x85\x9b\x3f\xd4\x5a\x19\x70\x6c\x9d\x18\x1b\xa8\x63\x33\x4f\x70\x74\xd5\xb1\x41\x9d\x4a\xfb\x68\xcc\xbc\xf0\x37\x9d\x21\x70\x55\x2d\xc4\x88\x21\xe1\xef\x7b\x07\x85\x22\xb9\x7f\x50\x03\x7c\xa4\x37\xb5\xab\xa5\x8f\x69\x5f\xb7\x0b\xa5\x3a\xf6\xe5\x84\xde\xc6\x60\x50\xf4\xc1\xbe\xc5\xa8\x92\xf2\x90\xf3\x32\x20\xb9\xbc\xbe\x44\x46\xfa\xf4\x0d\x48\x64\xc5\x41\xc3\x71\xfa\xd3\xe0\x11\x59\x0d\x81\x1e\xbb\x51\x12\x96\xde\xb9\x40\xc0\x76\x88\x49\xf2\x71\x51\x84\x83\x67\x28\x5e\x24\xf0\xd3\x32\xaa\xe5\x9a\xd8\x43\x34\x71\x3b\x37\x81\x41\x26\x55\x5e\x68\x71\x49\xf2\x8e\xa4\xb6\xca\x23\x16\x4b\x83\xa0\x66\xc4\xf1\x85\x09\xe2\xe7\xf6\x5f\x31\x61\x7f\x8b\xf8\x43\xa0\xb1\x96\x91\x92\xdc\x48\xc3\x58\x02\x4c\xbd\x04\x6f\xec\xa2\x00\x00\x49\x02\x63\xa7\x3f\x78\xfc\x84\x4c\x22\x99\xed\x7e\x99\x57\x53\x03\x82\x77\xfe\x4f\xfa\x7f\x7e\xfd\xd3\xff\x05\x00\x00\xff\xff\x1e\x34\x19\x6d\x9f\xec\x03\x00") +var _adminSwaggerJson = []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xec\xfd\x79\x93\x23\xb7\x95\x2f\x0c\xff\x3f\x9f\x02\xb7\x7d\x23\x24\xd9\xb5\x48\xf2\x8c\x5f\x4f\x4d\xdc\x78\x1f\x76\x15\xbb\xc5\xab\xea\xaa\x72\x2d\xd2\xe8\x19\x3a\x28\x30\x13\x24\xe1\xca\x04\x68\x00\x59\xd5\xb4\xc3\xdf\xfd\x09\x1c\x2c\x09\xe4\x42\x26\x97\xda\x5a\x9c\x89\x90\xab\x99\x99\x58\x0f\x0e\xce\xfa\x3b\xff\xfc\x37\x84\xde\xc9\x47\x3c\x9d\x12\xf1\xee\x04\xbd\xfb\xfe\xe8\xdb\x77\x07\xfa\x37\xca\x26\xfc\xdd\x09\xd2\xcf\x11\x7a\xa7\xa8\xca\x88\x7e\x3e\xc9\x16\x8a\xd0\x34\x3b\x96\x44\x3c\xd0\x84\x1c\xe3\x34\xa7\xec\x68\x2e\xb8\xe2\xf0\x21\x42\xef\x1e\x88\x90\x94\x33\xfd\xba\xfd\x13\x31\xae\x90\x24\xea\xdd\xbf\x21\xf4\x2f\x68\x5e\x26\x33\x92\x13\xf9\xee\x04\xfd\x8f\xf9\x68\xa6\xd4\xdc\x35\xa0\xff\x96\xfa\xdd\xbf\xc2\xbb\x09\x67\xb2\x88\x5e\xc6\xf3\x79\x46\x13\xac\x28\x67\xc7\x7f\x93\x9c\x95\xef\xce\x05\x4f\x8b\xa4\xe3\xbb\x58\xcd\x64\x39\xc7\x63\x3c\xa7\xc7\x0f\xdf\x1d\xe3\x44\xd1\x07\x32\xca\x70\xc1\x92\xd9\x68\x9e\x61\x26\x8f\xff\x49\x53\x3d\xc7\xbf\x91\x44\xfd\x0b\xfe\x91\xf2\x1c\x53\x66\xfe\x66\x38\x27\xff\xf2\xed\x20\xf4\x6e\x4a\x54\xf0\x4f\x3d\xdb\x22\xcf\xb1\x58\xe8\x15\xf9\x40\x54\x32\x43\x6a\x46\x90\xe9\x07\xb9\x25\xe2\x13\x84\xd1\x89\x20\x93\x93\x5f\x05\x99\x8c\xdc\x42\x1f\x99\x05\x3e\x87\xd1\x5c\x65\x98\xfd\x7a\x64\x97\x09\x5a\x4e\x89\x4c\x04\x9d\x2b\xbb\xde\xd7\x44\x09\x4a\x1e\x48\xd8\x81\x99\x08\xd2\x13\xf1\x9d\xc9\x39\x49\xe8\x84\x92\x14\x8d\x17\x88\xb2\x79\xa1\x90\x20\x7f\x2f\x88\x54\x68\x42\x33\x45\x84\x8c\x7a\xe1\x73\x22\x60\x05\x07\xa9\xee\xe5\x23\x51\x3d\x68\xbb\x1c\x55\xf8\xb6\x20\x72\xce\x99\x24\x32\x5a\x04\x84\xde\x7d\xff\xed\xb7\x95\x9f\xea\x33\xe8\x21\x59\x24\x09\x91\x72\x52\x64\xc8\xb5\x14\x0e\xc6\x2c\xa8\x26\x1f\x5c\x6b\x0c\xa1\x77\xff\x5b\x90\x89\x6e\xe7\x77\xc7\x29\x99\x50\x46\x75\xbb\xd2\x50\x69\x30\xda\xe8\xab\x7f\xfd\x5b\xd3\xdf\xff\x0a\x66\x34\xc7\x02\xe7\x44\x2f\x8b\xa7\x2b\xf3\x7f\x95\xb9\x68\x4a\xd0\x9d\x97\xd4\x52\x1d\x78\x65\xb6\x17\x38\x27\x7a\xe7\xf5\x76\xd9\x2f\xe0\x6f\x41\x24\x2f\x44\x42\xd0\x98\x64\x9c\x4d\x25\x52\xbc\xb6\x06\x14\x5a\xd0\x44\x5c\x7d\xa2\xb7\x92\x0a\xa2\xf7\x4a\x89\x82\x54\x9e\xaa\xc5\x1c\x06\x29\x95\xa0\x6c\x1a\x2e\xc5\xbf\x0e\x3a\x4d\xcd\xd0\xfe\x1a\x33\x33\x1f\xb4\x4e\x6c\xc8\x7a\xee\x95\x04\x33\x34\x26\x48\x9f\x78\x9a\x12\x41\x52\x84\x25\xc2\x48\x16\x63\x49\x14\x7a\xa4\x6a\x46\x99\xfe\xb7\x21\xdf\xc4\xad\xd9\xeb\x59\x1b\xf8\x73\xf9\xca\xdc\x49\x22\xf4\xc0\x1f\x68\x4a\x52\xf4\x80\xb3\x82\xa0\x09\x17\xd1\xf2\x1c\x0d\xd9\xed\x4c\xaf\x43\x3e\xa6\x0c\x4e\x9e\x5e\x4b\x47\x21\x7f\x70\xcb\xf5\x07\xa4\xfb\x43\x05\xa3\x7f\x2f\x48\xb6\x40\x34\x25\x4c\xe9\x73\x2d\xab\xad\xfd\x81\x43\xff\x38\x43\x87\x48\xaf\x33\x11\x0a\xd6\x9b\x33\x45\x3e\x2b\x89\x0e\x51\x46\xef\x09\xfa\xea\x9c\x4a\x85\x7a\x57\x83\xaf\x0e\xd0\x57\xe7\x25\xe3\x90\x5f\x3d\xc3\x0a\xfb\xbf\xff\x1a\x1c\x3d\x85\xa7\xd5\x43\xf7\xae\xa7\x4f\xf3\x8d\xb9\x80\xca\x16\xfe\xfa\x6f\x61\x3b\x76\xbf\x96\x73\xf5\x92\xa5\x5b\x7e\xde\x95\x8b\xc3\x32\xc5\x0c\x5c\xea\x1d\xda\x96\x7f\xd7\x6e\x87\x06\xe6\x2d\xb7\xe4\xde\x7a\xec\x55\xf6\x2d\xdf\x16\xff\xd6\x53\x78\x6a\x1e\xbe\x0d\x03\xc7\x0a\x4e\x16\xa6\xcc\x1c\x44\x7f\x2e\x85\xd4\x67\xd1\x9d\x90\x57\xc2\xb6\xb6\xe1\xe7\xc1\xcc\x02\x96\xee\x38\x75\xb0\x2a\xaf\x70\xde\x19\xcd\xe9\xaa\xfd\x1d\xb0\x54\x0b\x8f\x96\xa1\xb2\x22\x1f\x13\xa1\x97\xc1\xb1\x56\x98\xed\x58\xb3\x5a\x55\x08\x46\xd2\x0e\xd3\xfc\x7b\x41\xc4\x62\xc9\x3c\x27\x38\x93\x6d\x13\xa5\x4c\x11\x2d\xa9\x57\x1e\x4f\xb8\xc8\xb1\xb2\x2f\xfc\xe9\xdf\xd7\x5d\x08\xc5\xef\xc9\xaa\xfd\x1f\x98\xdd\x4c\xb0\x04\x32\xc8\x8b\x4c\xd1\x79\x46\xd0\x1c\x4f\x89\xb4\x2b\x52\x64\x4a\x1e\xc0\x6b\x5a\x3b\x20\xe2\xd0\xdf\x72\xd0\x83\xbb\xdd\x0b\x09\xbf\xa0\x89\x67\x76\x8c\x7c\x56\xd0\xd2\x90\xc1\xfd\x0e\x4b\x14\xde\x5a\x4f\xb0\x94\x9b\xd1\x8c\xe4\x42\x8d\xc6\x8b\xa3\x7b\x52\xeb\xb7\x95\x72\x30\x43\x58\x29\x41\xc7\x85\x22\x7a\xde\xba\x0d\x77\x3f\x03\x7b\x34\x42\x40\x17\xd6\xf0\x72\x13\x4e\xa9\x20\x09\xcc\x6d\x9d\x03\xe3\xbf\xd2\xf3\xd6\x9a\xd8\xc2\xcc\xfe\x9e\x2c\x40\xe6\x69\x58\x01\xbf\xe5\x43\x36\x64\xe8\x10\x9d\xf5\x6f\x4e\xfb\x17\x67\x83\x8b\x8f\x27\xe8\xfd\x02\xa5\x64\x82\x8b\x4c\x1d\xa0\x09\x25\x59\x2a\x11\x16\x04\x9a\x24\xa9\x96\x6b\xf4\x60\x08\x4b\x29\x9b\x22\x2e\x52\x22\x9e\x6e\x19\x2b\x4f\x09\x2b\xf2\xca\xbd\x02\xbf\x97\xa3\xaf\x7c\xa1\xc5\x18\xff\x28\x7a\xf2\xd7\xda\x02\xc3\x8c\x75\xdf\x41\x6b\xcf\x26\x38\x25\x33\x9a\xa5\x82\xb0\x63\x85\xe5\xfd\x88\x7c\x26\x49\x61\xee\xe4\x7f\xc6\x3f\x8c\xb4\xf4\xcb\x53\x12\xff\x12\xfd\xa3\x14\xb7\xd6\xfe\xd4\xeb\xdb\x6b\x7f\x09\xda\x79\xb7\xef\xe0\x17\x9a\x36\xbe\x0d\xbf\xac\x98\x83\x7b\x67\xc9\x60\xdd\x2b\xad\xa3\x72\x2f\x58\x61\xaf\xf1\x1d\x41\x94\x58\x8c\xb0\x52\x24\x9f\xab\x35\x2d\x0f\x18\x65\x5a\x76\x5d\x26\xab\x5e\xf0\x94\xf4\x5d\x7f\xbf\x5a\x11\xd4\x08\x9b\x86\x6b\x4d\x88\x20\x2c\x21\xed\x2d\xdc\x62\x79\x5f\xb6\xb0\x5a\xe0\x05\x1a\x43\x7a\xf9\x51\x49\x60\xb5\x8e\x4b\xb1\x57\x2f\x49\xf9\xe6\x2a\x61\x37\x9a\x8f\xfc\xc0\x85\x1e\xde\x5b\x10\x78\xa3\x81\x3f\x87\xcc\xbb\xe9\x89\xfe\xe2\xac\x1c\x1b\xf2\xa7\xbd\x4d\x64\xfb\x95\xec\x6a\x41\xe1\x02\xc9\x85\x54\x24\x5f\x69\x4b\x79\x3b\x0b\x61\x2f\xa0\xd7\x3a\xe0\xca\x1d\xf8\x1b\x38\xf5\xf1\x8d\xbe\x3f\xde\x6b\x2c\xd9\xae\x2c\xa1\xaf\x7d\x9e\xce\xdb\xb5\x7c\xaa\x37\x6e\xfb\x02\x77\xcf\x9b\x98\x66\x24\x6b\xee\x7a\x90\x4f\x64\xce\x68\xdd\x2b\xb7\xda\x23\x18\xc0\x0a\x45\x36\xb6\xa5\xfb\xf3\xa7\x3f\x0d\x2d\x40\xc6\xdc\xa7\x66\x54\x06\xc6\x30\x94\x70\x61\x64\xc1\xd4\x9e\x77\xa3\xcb\xf6\x6e\x7b\x37\xfd\xdb\x13\xd4\x43\x29\x56\x58\x1f\x70\x41\xe6\x82\x48\xc2\x14\xd8\x09\xf4\xf7\x6a\x81\x72\x9e\x92\xcc\x68\xb4\x1f\xb4\x64\x8d\xce\xb0\xc2\xa7\x58\xe1\x8c\x4f\x8f\x50\x0f\xfe\xa9\x3f\xa6\x12\xe1\x4c\x72\x84\x1d\x59\x91\xd4\x35\x81\x59\xea\x58\x0b\x46\x09\xcf\xe7\x34\xf3\x7e\x04\x6f\xbc\xa1\x2c\xa5\x0f\x34\x2d\x70\x86\xf8\x58\x73\x15\xad\x81\xf7\x1f\x08\x53\x05\xce\xb2\x05\xc2\x59\x86\x6c\xb7\xee\x05\x24\x67\xbc\xc8\x52\xdd\xae\x1b\xa5\xa4\x39\xcd\xb0\xd0\x2a\xbe\x19\xed\xa5\x6d\x0b\xdd\xce\x88\x1f\x2b\x8c\x4b\xaf\x66\x8e\xef\x89\x44\x54\xa1\x39\x97\x92\x8e\xb3\xf2\xcc\xdf\x0d\x10\x8c\xfb\xf4\x7c\x00\xf6\x82\x44\x21\x6e\x78\xa8\xeb\xdc\xda\x87\x5c\x8f\x39\x66\x8c\x40\xc7\x5c\xcd\x88\xb0\xdd\xdb\x97\x5f\x5a\xf5\xbf\xbb\xb8\xb9\xea\x9f\x0e\x3e\x0c\xfa\x67\x75\xdd\xff\xb6\x77\xf3\x63\xfd\xd7\x9f\x2f\xaf\x7f\xfc\x70\x7e\xf9\x73\xfd\xc9\x79\xef\xee\xe2\xf4\x87\xd1\xd5\x79\xef\xa2\xfe\xd0\x92\x55\x67\x33\x42\x38\xb2\x35\xcf\xd6\xde\x66\xfa\x54\x36\xd3\x83\x2f\xd7\x68\x6a\x9d\x52\xdd\x0d\xa6\xde\x46\x61\xbf\x44\x73\x2c\xa5\x91\x8c\xcc\x08\x8e\x86\xec\x13\x17\x9a\x81\x4d\xb8\xe6\x11\x5a\x7a\x52\xa2\x48\x14\x65\x53\xff\xd1\x09\x1a\x16\xdf\x7e\xfb\xc7\xe4\x9c\xb2\x7b\xf8\x8b\xbc\xc6\xc5\xd9\x5b\x94\xf7\x16\xe5\xdf\x96\x45\x59\x8b\x3e\xc7\xa1\x21\x79\xb7\xc1\x55\x5a\xb8\x00\x9f\xb8\x16\x25\x78\xa1\xf4\x9f\xba\x4b\x20\x8f\x25\x21\x56\xdd\x0c\x96\x3e\xc2\xaa\xa5\x0f\xc1\x73\x10\xe4\x3e\x53\x09\xcc\xe8\x91\x8b\xfb\x49\xc6\x1f\xbb\x99\x2b\x3f\x12\xe5\x87\xa1\x05\xa7\xb7\x60\xa5\xfc\xd9\xce\xd0\x0f\xfc\x23\x51\x7a\xec\xd7\xb6\x97\x7d\xb0\xd5\x3e\xd8\xea\x65\x83\xad\x5e\x95\xa9\xf0\xe9\x59\x6b\x6c\x57\x34\xfc\xb5\xc5\x0f\xd7\xea\x66\x6b\xf1\xa2\x05\x4e\xb2\x67\xe1\xc9\xb1\x2b\x6a\x97\x7c\x39\x76\x36\xad\xe0\xc9\xd1\x30\xde\x0a\x5f\x8e\x06\xfd\xfc\x3c\xf9\x37\xe1\x27\xda\xbb\x81\x36\x5c\xa8\x37\xc9\xba\x3b\xde\x4a\xcf\xe6\xc4\x79\xfa\xab\xa4\x16\xf3\xb1\x4e\x90\xc7\x1a\x51\x1d\x9d\xc3\x38\x56\xc4\x6d\x34\x06\x6a\x34\x45\x66\xd4\x43\x31\x1a\x63\x2f\xb6\x0b\xb6\xd8\xf4\xd6\xeb\x1e\x3e\xb1\xee\xad\xd7\x3d\x70\xe2\x23\x51\xd1\x30\xde\xca\xad\x17\x0d\xfa\xf9\x6f\xbd\xdf\x68\xbc\xc4\x3e\x40\xe2\x09\x97\xee\x4b\xbf\x2b\x5f\x6f\x08\xc4\x6f\x20\xe6\x61\x1f\xe4\xb0\xd6\x1a\x7d\x59\x51\x0d\x5f\x6a\x18\xc3\xdb\x8c\x5b\xd8\x07\x2a\xec\x03\x15\x5e\xc2\xa3\xf4\xf6\x02\x15\x9e\x54\xf1\x25\x9a\xac\x24\x58\x51\x43\xe5\xe6\xdd\x9c\xcb\x76\x7d\x2f\x74\x5e\x37\xe8\x75\xd0\x66\x6c\xcd\x04\xea\xfd\x15\xcd\xb0\x44\x3c\x49\x0a\x51\x71\xd1\x56\x4f\xf9\xa9\x20\x58\xe9\x23\x12\x1b\x2e\x11\xb4\x8c\x04\x49\xb8\x00\x27\x25\x46\xf3\x19\x96\x04\x29\x81\x99\xa4\xab\xb4\x3c\xd3\x2a\x8c\x4b\xb7\xf3\x16\x14\xbc\xfa\x22\x3e\x97\x7a\x37\xe6\x69\xed\x40\x9a\xb3\xda\xf4\x64\xf9\x4d\xb2\xb3\xa9\x43\xda\x6f\x97\x99\x3f\xe1\x51\xd1\xb7\xd6\x8e\x8f\x4a\xa4\xc6\x6f\x7a\x54\x62\x6b\xc7\x4e\x8e\x0a\x8c\xeb\xad\x1c\x95\xfa\x22\xfe\x66\x8e\x4a\xd3\xd4\x5f\xc3\x51\x71\xe1\x00\x3b\x3e\x2e\x35\x1f\xfc\xa6\x47\xa6\x1e\xae\xb0\x93\x63\xe3\xc7\xf7\x56\x8e\x4e\xf3\x82\xfe\x66\x8e\x4f\xdb\xf4\x5f\xf6\x08\x79\x3f\x44\xe7\xc3\x73\x2b\xe8\x74\x4a\x84\xd1\x8c\x12\x4d\x8a\xab\xa1\x96\x4a\xcb\xfb\x66\x07\x66\xf5\x69\xf0\x3d\xbc\x85\x93\xe0\x07\x6b\xc6\xfe\x9b\x39\x02\xb5\x79\xbf\x12\xda\x3f\xd6\x9c\xf8\x01\xd0\xda\xba\x9d\x81\x6b\x02\x84\x0f\x17\xc8\x5c\x90\x07\xca\x0b\x99\x2d\x0e\x45\xc1\x9a\xb8\x3d\x18\x09\x1e\x69\x96\x21\xce\xb2\x05\x92\x0a\x0b\xe5\x1e\xb3\xa9\xf1\x28\xe9\xc3\x94\x61\xa9\xd0\x3d\xe3\x8f\x0c\x4d\x30\xcd\x0a\x41\xd0\x9c\x53\xa6\x8e\x86\x6c\xc0\xd0\xb5\x19\x23\x68\xde\x07\xa8\x90\xfa\x08\x26\x98\x31\xae\x50\x32\xc3\x6c\x4a\x10\x66\x0e\xba\xa6\xa4\x0c\xc4\x05\x2a\xe6\xa9\x3e\x58\xba\x8b\x8a\x8d\xa9\x3c\x60\x43\x76\x0b\x56\x0c\x89\xc8\x67\x25\x48\x4e\xb2\x85\xee\x43\xd3\xbe\xe2\xc8\xae\x8f\x19\xaa\x35\x88\x13\x21\xb8\x90\xa0\xb3\x8f\x17\xff\xc0\x4c\x51\x46\x10\xa8\x99\xd2\x00\x1f\x1d\xa2\x73\x2e\x21\x26\xfb\xc7\x3f\x4b\x94\x64\x85\x54\x44\x1c\xa0\x71\x31\x95\x88\x32\x34\xcf\xb0\x9a\x70\x91\xeb\x11\x52\x26\x15\x1e\xd3\x8c\xaa\xc5\x01\xca\x71\x32\x33\x6d\xc1\x1a\xc8\x83\x21\x4b\xf9\x23\x93\x4a\x10\xec\x7b\x77\x0f\xd1\xd7\xe1\x33\x43\x00\xf2\x9b\x03\x30\xdc\xd3\x7c\x9e\x2d\xc2\xe1\x07\x89\xd0\xb0\x27\xba\x11\x92\xa2\x31\x49\x70\x21\xad\x61\x47\x89\x05\x22\x9f\x67\xb8\x90\xb0\x77\x7a\x7a\xd6\xea\x91\xf0\x7c\x9e\x11\x45\x10\x9d\x20\x25\x28\x49\x11\x9e\x62\xaa\x97\xee\x86\x2c\x49\xdc\xf6\x44\x6f\x37\xd0\x52\xfd\xaf\x60\xf9\xc8\xb9\x20\x28\x25\x0a\xd3\x4c\x2e\x77\x4a\x3e\x2b\xc1\xa1\x27\xa7\x37\xf4\x7a\xc9\x0d\xbd\x6a\x6a\x5b\x72\x13\xda\x1d\xdb\x5f\x85\x6f\xe9\x2a\x8c\xb9\xc2\xab\xb8\x0b\x0d\x48\xc4\x0e\x04\x42\x66\xad\xe2\x09\xce\xb6\x94\x0d\xaf\xed\xa0\xd6\x96\x0e\xdd\x87\xfb\x43\xf1\xb6\x0e\x85\xd9\xb5\xd7\x73\x2a\xda\x12\x2a\x76\x8e\x14\xb3\x0e\xc6\xcb\x92\x8c\x08\x89\x72\xac\xf4\xc5\x36\xb5\x57\x74\x47\x14\xc3\x12\xd4\xe5\x4d\x1d\x94\xe7\x40\x72\xf9\xb2\x23\x16\xf6\x91\x0a\xbf\x41\x04\xda\x57\x93\xc0\xb8\xcf\x81\x7e\xa2\x1c\x68\x2a\xf7\x39\xd0\xfb\x1c\xe8\xae\x0b\xb4\xcf\x81\xde\xe7\x40\xbf\xd9\x1c\xe8\x27\x4d\x7f\xde\x5d\x92\xf3\x6e\x32\x99\xdf\x94\x74\xbe\x97\xcc\xf7\x92\xf9\x3e\x5d\xd9\x4f\x6d\x57\x5c\xd0\x7d\xfd\x2e\x25\x19\x51\xa4\xdd\x40\x47\x44\xae\x15\x0e\x73\xc3\x53\xa6\x45\xc1\xa9\x20\x52\x6e\xcb\xd3\x7c\xc3\x61\x79\x85\x06\x7f\x44\x89\x32\xeb\xc9\x12\xec\x3a\xcb\x98\x9d\x6f\xfb\x6d\xb2\x3c\x3f\xfc\x3d\x64\xc3\x9e\x07\xee\x79\xe0\x26\x53\x7b\x3d\xe6\xe8\xe0\x30\xbf\xa8\x3d\x3a\xa8\xb4\x33\xa2\xe9\x36\xc5\x76\xba\x03\x97\xe3\x9c\xa4\x7d\x48\x2b\xf0\x49\x11\xe2\x57\xfd\x49\x58\x46\xc7\x25\x10\x74\xb7\x58\x87\x5f\x97\x0b\x1f\xd5\x3e\xd9\xcc\x80\x5d\x56\xb4\x19\xa4\x6f\xc2\x86\xdd\xb8\xc2\x5f\x48\x35\x9e\xd7\xc1\x48\x9e\xbd\x18\xcf\xeb\x98\xf6\xde\xa6\xba\xaf\xc5\xb3\xb7\x1a\x76\x9c\xf0\xde\x6a\xf8\x7a\xad\x86\x2f\xe5\x0a\x78\xe6\xe3\xf9\x5c\xa2\x63\xf7\x50\x6f\x17\x91\xcd\x52\x54\xcc\x33\x8e\xd3\x8e\xe5\x74\x03\x89\xae\x43\xbc\x37\x4b\x91\x20\x53\x2a\x15\x11\x7a\x5f\x1a\x05\xc3\xd5\x01\xe0\x6f\xb5\x6e\x6e\xe7\x10\x9f\xb0\xdb\x77\xff\xde\x61\xf8\xd7\xf6\xce\x06\x4e\x34\xc6\xa9\x2f\x68\x09\xe2\x5b\x8e\x17\x68\x86\x1f\x88\x0b\x4b\x7c\xc0\x19\x4d\x71\x75\xad\x2b\x33\x5c\x36\xa0\xff\x5c\x6f\x40\x38\x1e\x8e\xaf\x80\x24\xe3\xb0\x31\x9b\xd1\x0c\xef\xcc\xb4\x62\x9e\x09\x82\xd3\x05\x1a\x13\xc2\x3c\xd9\x34\xdc\x27\x2d\x63\xde\x89\xe0\xfc\xe2\x8a\x69\x9d\x7a\x5e\x8b\x5a\xfa\x8c\x81\x52\xcd\xfc\x66\x7b\x1d\x74\x7b\xc5\x53\x7e\xff\xb6\x58\xd0\x3e\x78\x6a\x6f\x9e\x7c\x79\xf3\xe4\x3e\x78\x6a\xaf\xe8\xbf\x32\x45\x7f\x1f\x3c\xb5\x0f\x9e\xda\x9b\x41\x96\x4f\x7b\x6f\x06\xf9\x22\x82\xa7\x3a\xc9\xf0\x1b\x86\x4f\xbd\x71\x69\x7e\x2f\xcc\xbb\xf7\xf6\xc2\xfc\x5e\x98\xff\x42\x85\xf9\xd7\xb1\xc2\x7b\x49\x7e\x2f\xc9\xef\x25\xf9\xbd\x24\xbf\x97\xe4\x77\xbe\x8c\x7b\x49\xbe\x59\x92\x87\xbf\x5c\x75\x86\x75\xc5\xfa\x35\xc5\xf9\xb5\xf3\x23\xd6\x77\x06\x7e\x24\xea\xad\x7a\x02\xf7\x52\xfb\x5e\x6a\x7f\xdd\x52\xfb\xab\x99\xd0\x97\x87\xac\xbe\xc7\x26\xdf\x63\x93\xef\xb1\xc9\x9f\x18\x9b\xdc\x7d\xfd\x6e\x5e\xb4\xcb\x36\x77\x80\x5e\x66\x0f\x97\xc2\xaa\x90\x06\xdc\xb2\x0c\x36\xe9\x24\xf6\x2c\x93\x75\xee\x4a\x80\xb4\xa0\x87\xd5\x72\x0f\xea\x29\x94\x73\xad\xbb\x31\x12\xbd\xe3\x18\x9c\x09\xac\x99\xd2\x07\xc2\x90\x4b\x0e\x38\xb0\xd7\xd8\x01\x18\x53\xfe\xe5\x0f\x9f\xc9\xd6\xc2\x0a\x61\xa4\x68\x4e\x8e\xd0\x60\x62\xb8\x45\xa2\x4f\x97\x24\x4a\x56\xa2\xb1\x0c\xe5\xc3\x47\x2c\x2d\xc7\xea\xfa\xa6\x65\x70\x8e\x79\xed\xc0\x31\xdb\x22\x53\x86\xf5\xba\xc6\x01\x9a\x6e\xec\x39\x14\x1c\xb4\x9c\x88\xcc\x7d\x19\x75\xeb\x5e\xce\x71\xaa\x19\x43\x30\x84\x32\xad\x2c\x7c\x1f\xee\x74\x2a\x7d\x78\x51\xf4\xbd\xf9\x1a\xf0\xed\x00\x8f\x0e\x70\x78\x3b\x0d\x63\x06\xd1\x6f\x5a\xc4\x4b\x8b\x8c\x20\x2c\x25\x4f\x28\x06\x35\xc6\xc8\x00\x88\x2a\x67\x69\x70\x2f\xb9\xae\x53\x2a\xf1\x38\x23\xa9\x5d\x63\x52\x46\x3b\x2d\x1d\x39\x95\x68\x4c\xf4\x12\x6b\x36\x15\xaf\xfe\xcc\x48\x20\x0d\xa3\x09\x86\x42\xea\x23\x21\xcc\x0c\x64\x89\x04\x6d\x88\xf3\xad\x0a\xd1\x66\xf4\xfb\xa4\xbb\xbd\x48\xbd\x17\xa9\xd7\x9a\xd0\x17\x25\x52\xbf\xa2\x08\x4d\xc7\x90\x5e\x34\x42\x13\x7c\xa0\x9a\xf3\x8f\xbc\x61\x53\x76\xb5\xf5\x9c\x53\xa9\x24\x4a\x0a\xa9\x78\xde\x2e\xf9\x7c\x72\x3d\xf4\x7c\x07\xa7\x9c\x4d\xe8\xb4\x30\x77\xcb\xaf\x56\x36\xf1\x27\xba\x54\x53\x16\x73\xd2\xcd\x30\xe4\xed\xd6\xab\x3a\x6b\xcc\x47\x6c\x70\xf2\x36\xb4\xf3\x26\x6e\xbb\xe6\xa1\x3f\xd7\xa5\xb7\x8e\xb2\x5a\xda\xc7\xad\xa6\xa9\xf5\x8b\xd1\x75\xff\xe6\xf2\xee\xfa\xb4\x7f\x82\x7a\xf3\x79\x46\x8d\xcb\xca\x50\x18\xfd\x87\x9e\x94\x29\x33\xe2\x49\xc4\x0a\x44\x06\xfd\x17\x7c\x64\x5a\x1f\x44\x87\xe8\xf4\xfc\xee\xe6\xb6\x7f\xdd\xd2\xa0\x25\x09\x28\xd2\x4a\xf2\x79\x06\xf2\xd1\x7d\x31\x26\x82\x11\x2d\xe1\x5b\x8c\xe0\xd2\x73\x66\x1a\xed\xff\x77\xff\xf4\xee\x76\x70\x79\x31\xfa\xcb\x5d\xff\xae\x7f\x82\x1c\x6d\xe9\x66\xf5\xb8\xf4\x28\xd2\x05\xc3\xb9\xd6\xba\xe3\x7a\x28\x7f\x2f\x48\x01\xe2\x18\x9d\xb2\x9c\x00\x74\x77\xd4\xa2\x1b\xf0\x79\xef\x7d\xff\x3c\x6e\x79\x46\x42\xe0\x62\x94\xe1\x31\xc9\xac\x2b\x0f\xbc\x53\xfa\xfc\x04\x10\xcf\xc6\xc7\x57\x98\x55\xfd\xcb\x5d\xef\x7c\x70\xfb\xcb\xe8\xf2\xc3\xe8\xa6\x7f\xfd\xd3\xe0\xb4\x3f\xb2\x9a\xd4\x69\x4f\xf7\x1b\xf5\x64\x15\x2e\xf4\xf7\x02\x67\x5a\x23\xe7\x13\x07\x65\x8c\x1e\x67\x84\xa1\x82\x01\xc5\x19\x35\x1f\xb4\x92\x10\xc7\xc1\xcc\xe8\xea\xfc\xee\xe3\xe0\x62\x74\xf9\x53\xff\xfa\x7a\x70\xd6\x3f\x41\x37\x24\x03\x45\xd8\x2d\x3a\xec\xe2\x3c\x2b\xa6\x94\x21\x9a\xcf\x33\xa2\x57\xc3\x1c\xce\x31\x99\xe1\x07\xca\x45\xa4\xad\xc0\x3a\x02\x2b\x80\xf6\x9d\xc2\x39\x0a\x96\xee\xf2\xe2\xc3\xe0\xe3\x09\xea\xa5\xa9\x9f\x83\x84\x36\x22\xca\x71\xf0\x13\x87\x35\xf8\x89\x04\x9b\x80\x10\xa8\xe8\xfb\x40\x84\xa0\x29\x91\x2f\xee\x70\x88\x0e\x44\x5d\x85\xae\x52\x78\xfd\x8d\x0a\xb9\x2e\x7b\x21\xa2\xbe\xfa\x8b\xab\xa8\xa8\xfe\x45\x85\x0c\xda\x0d\x07\xb5\x7d\xec\x6c\x13\x88\xd7\xe7\xd9\x6e\x4c\xcd\xec\xd2\x91\xb3\x0d\x1d\xff\x33\x62\x7a\xff\xda\x61\x84\x94\x49\x8a\x59\x0a\x30\x15\x64\x88\xff\x6a\xaf\xb6\x8e\x17\x66\xf0\x65\xd3\x87\x75\xdf\x49\xf0\xc1\x5b\xb8\x09\xc3\xe1\xbe\xa2\x5b\xef\x3a\x94\x6d\x9c\x88\x9c\x13\x85\xa1\x82\xb8\xe2\x68\x4a\xd4\x11\xba\x64\xf0\xec\x16\xcb\xfb\x03\xe4\xaa\xc3\x20\x2e\x50\x29\x3c\x3e\x43\x52\xf9\x1b\x31\x1a\xae\xaf\xd0\xec\x15\xf3\xbd\x62\xde\xbc\x32\xfb\x08\xb5\x96\x15\xde\xd5\x8d\xba\x96\x9d\x7d\x77\x17\x5f\x60\x56\x77\xc1\x26\x15\xbb\x68\x74\x23\xae\xb4\x81\xbe\xdd\xcb\xf0\x79\xad\xa0\x3b\xbd\x1a\x4d\xf1\x98\xfd\xbd\x67\xfe\x6f\x7f\xef\xed\xef\xbd\xfd\xbd\xf7\x0a\x56\xf8\xc5\x2d\xca\x0d\xdc\xfd\x45\x4d\xca\xab\x14\xe4\x8d\xa1\xe9\x4a\x85\x78\x1d\x70\xba\x5f\xbb\x60\xd0\x35\x98\x92\xeb\x1a\xb2\x44\x72\x86\x85\xa9\xca\x9a\xf0\x3c\xe7\x2c\xb6\x55\x1f\x20\xef\x58\x07\x43\x20\xcc\x6e\x95\xa5\xb9\xec\x86\xbe\x0d\x1b\x73\xb0\x2e\xcf\x91\x51\xb4\x53\x11\xc2\x84\xea\xef\xf5\xeb\x27\x94\x33\xf6\xd8\x81\x3b\xc5\x0e\x7c\x1d\x73\x7d\x92\xec\xa3\xdd\xdb\xd7\xdf\x46\xc6\xd1\x1e\x24\x70\x9f\x53\xb3\xcf\xa9\x81\xdf\xf7\x20\x81\xbb\xa3\xd6\xa7\x95\xe9\x79\x4a\x46\x95\x32\x2a\xfe\x9f\xa3\xaa\xcb\x2b\x7a\x12\xfa\xbf\xa2\x07\x65\x92\x11\xb4\x4e\xd3\x5d\x96\x5e\xb9\xe0\x29\xd9\xa2\xfc\x8a\x1e\x51\xe7\xd2\x2b\x51\x5f\xaf\x5c\x84\x77\xcb\x64\x44\xf9\x68\xe0\x4f\x2c\xc8\xb7\x50\xcc\x97\x68\x8d\x6a\xa0\xff\xbd\x69\x6a\xe5\x42\x7d\xa9\xd5\x0a\x4a\x06\xf7\x86\x1c\x35\xdd\x6e\x01\x17\x52\x33\x6a\xb9\x0b\x9a\x9f\xfb\x1b\xa1\xf9\xf1\xd3\xc0\xc8\x74\xbf\x10\x2a\xe8\x31\xf1\x55\xb0\x29\x6a\x4c\xd4\xfd\xdb\xb0\xf3\x84\x23\x7e\x0e\x4b\xcf\x52\x62\xfa\xe2\xae\x89\x65\x47\x63\x7f\x59\x74\x5c\xae\x2f\xf5\xca\xd8\xa3\xbd\x2c\xb3\xbd\xec\xe1\x54\xf6\xa6\x9f\xd7\x33\xe1\xbd\xe9\xe7\x4d\x9b\x7e\x8c\xa3\x7a\x34\xc7\x82\x30\xd5\x20\xa3\x57\xaf\x13\x78\x3d\xcc\x9b\x77\x52\x07\x34\x60\xa4\x45\x7b\x21\xfb\xab\xea\xcb\xb2\x05\x59\xc1\x60\x64\xe4\x8a\x20\x6f\xe8\xf8\x9f\xe5\xdf\x81\x12\x10\xfc\xd8\xe0\xf0\x5d\x16\x08\x66\x30\xec\xa5\xbe\xbe\x0b\x1b\x13\xb6\xab\x6c\x23\x27\x24\xb6\x38\x6a\xdb\xe3\xc7\x5c\x4a\x01\x49\x4b\x81\xab\x9c\x61\x43\x5c\x99\xed\xe9\xd0\x89\x61\x65\xfc\xc4\xca\x30\xb3\x2b\xf3\xe9\x19\x7c\xf9\xb6\x32\x91\x5a\x86\xfe\xbc\xe1\x67\x75\x72\xec\x76\xba\x1d\x71\x50\x93\x5b\xf3\x38\xa3\xe0\x89\x01\xa8\x38\xb8\xcf\x83\x0d\x77\xf9\xd3\x18\xd2\x8b\xda\xae\xa7\xe7\x16\x20\x6b\x67\xae\xdb\xc4\x2d\x8d\xbe\xdd\x79\xbf\x78\x30\xce\x0a\xba\x7f\xd1\xc0\x9c\x25\x8c\x7b\xbb\x72\x91\x2f\xc6\x97\xbd\xed\xfe\xf9\x38\xf3\x47\xa2\xbe\x3c\xb6\xfc\x91\xa8\xe7\xe2\xc9\x9b\x32\xe2\xa5\xcc\xa8\xac\x11\xf4\x46\xe3\x44\x6a\xfc\xf7\xcd\x4e\x77\x9d\x78\xad\x9f\xcd\x24\x6d\xb0\x96\x4f\x45\x0f\xa7\xaa\xb8\x35\x60\x44\x3a\xe0\x3e\x65\x78\x9f\x32\xbc\x4f\x19\xde\xa7\x0c\xbf\xbe\x94\x61\xf7\xf5\xbb\x94\x64\x44\x91\x56\xb9\xe9\x0c\x1e\xbf\x94\xdc\x64\x7a\x7f\x46\xa9\xc9\x74\xf8\xe5\x09\x4e\x66\x5e\x7b\xd9\x69\x2f\x3b\xed\x62\xba\xaf\x55\x7b\x75\x54\xfe\x1a\xb4\xd7\xce\xe8\x44\x65\x90\xd8\xca\xd8\x00\x3b\xed\x5f\x57\x06\x05\x04\x48\x8f\x6e\x38\xab\x1c\xff\x57\x6e\xd8\x6f\x87\xc9\xc9\xa7\xe6\x63\xdb\xb8\x37\xdd\xba\x7f\xb1\xde\xcd\x7d\x2d\x8b\xc6\xb5\xda\x3b\x5f\x97\x2c\xce\xde\xf9\xba\x77\xbe\xbe\x3a\xe7\xeb\xce\x55\xaa\xa5\x15\xe9\xaf\xed\xd5\xbc\x34\x2a\xdc\x5d\xf4\x46\x97\xd1\xa4\x60\xf0\xb7\x53\x32\xcf\xf8\x02\x6c\x2c\x4b\xad\xcd\xbe\x16\x7d\x43\x70\x54\xf5\xf2\x77\x6f\x5f\xd5\x84\xf6\xd7\x7e\xff\xbb\x91\x3f\x97\x5a\xf3\x5a\xc4\xde\x72\xde\xaf\x42\xd0\x3d\xfe\x67\x25\x25\xa2\x13\x66\x4a\x90\xc4\xb0\xfa\x18\x0c\x59\xf3\x93\x00\x32\xdf\xde\x9a\xe3\x42\x05\xf1\x86\x52\x1f\x80\x39\x11\x6a\x11\xbc\x49\xf2\xb9\x5a\xfc\xd7\x90\xd1\x12\x59\x9b\x4e\x19\x17\x86\x07\xea\x8f\x67\x98\xa5\x99\x3e\x3f\xd2\xb7\x93\x60\xc6\xb8\x02\xe1\x04\x66\x90\xa2\x07\x8a\x8d\x28\xd3\xbb\x1a\x74\xf0\xc9\x77\x3a\x8b\x91\x3b\xfd\x0d\x9d\xc4\xe7\xc6\xac\x5e\x71\x8b\x7e\xcc\xf8\x18\xaa\x2c\x14\xb1\x89\x41\x37\xb0\x77\x00\x47\x3b\xf7\x52\xcc\x43\x61\x79\x5f\x4d\xd4\x8a\xc3\xf6\x47\x4b\x53\xb7\x56\xbc\x1b\x81\x19\x2e\x7f\xb5\x92\xde\x15\x3f\xb3\x09\x5f\xf0\x18\x86\x5c\x1d\x87\xfb\x31\xec\xd0\xfd\x56\xb6\xec\x7e\x71\x55\xaa\xe0\x47\x41\x94\x58\x8c\xb0\x52\x9a\x21\xed\x32\xa7\xec\x16\xcb\xfb\x2d\x72\xca\x62\xef\xce\x8a\x9c\xb2\xa8\xaf\x57\xce\xb1\xa2\x9c\xb2\x78\xe0\x4f\xce\xb1\x3a\x12\xf7\x17\x97\x3e\xd0\xf5\xa8\xee\x53\x09\x36\x58\xba\x2f\x35\xad\x60\x19\x2f\x7e\x35\x23\xac\x5c\x07\x5f\xe2\xc9\x8d\x2f\xb7\xfd\x11\x5d\xb6\x46\x5f\x5c\x39\x8d\x8a\xcc\xb2\x62\x6e\x6f\xa4\xac\x46\x55\xec\xda\xf5\xa8\x9e\xc6\xfe\x1e\xec\xc6\xbe\xce\xde\xbe\xce\xde\xbe\xce\xde\x93\xd7\xd9\xeb\xa6\xb3\x76\x56\x58\xbb\x6a\xab\xdd\x54\xd5\x76\x3d\xf5\x09\x7c\xce\xdd\x95\xc9\x4a\x3e\x7a\xac\x46\x6e\x9a\x8f\x1e\x75\xff\x26\x9c\xd3\xd1\x88\x9f\x23\x1f\xfd\x37\xaa\x59\xee\xd5\xca\x27\x59\xb7\x2f\x55\xa7\x7c\xe5\x0a\xe5\x3e\x93\x7e\x8f\x62\xb8\x0f\x35\xd9\xe1\xe2\xec\x43\x4d\xf6\xa1\x26\x5f\x6c\xa8\x49\xbb\x7a\x42\xd3\xad\xb3\x24\xd7\xc4\x2d\xf7\x56\x06\xf1\x2b\x88\x52\x5a\xec\xef\x80\x64\xde\xa4\x2d\x94\xb2\x74\x84\x3c\xbc\xb9\xe6\x30\x48\xdf\x84\xca\xd0\xb8\x9a\xcf\xa1\x3a\xec\x41\xb0\x77\x0a\x82\xfd\xea\xa6\xbd\x97\x2a\xf7\x52\xe5\x5e\x70\xea\x38\xe1\xbd\xe0\xf4\x7a\x05\xa7\x97\xd2\x86\xbe\x24\x3c\x24\x2d\x62\x45\x59\x49\x4b\xe3\x94\x0d\xa6\x11\x38\x33\x8a\x79\xc6\x71\xba\x2a\xe2\xe8\xd7\x40\x7c\x5b\x22\xf7\x05\xed\x8a\x32\x4e\xb9\x22\xfe\x2d\x93\xed\x4c\x03\xba\xc7\xb7\x20\xda\xe9\x71\x9a\x11\x77\x88\x8e\x0c\x3b\x7c\xf7\xef\x1d\x06\x7e\x6d\xef\x64\xe0\x34\x63\x9c\x3a\xd0\x00\x23\x9e\xe5\x78\x81\x66\xf8\x81\xa0\x09\xa6\x99\xb1\xcf\xd1\x14\x57\xd7\xb7\x32\xb7\x65\x03\xfa\xcf\xf5\x06\x84\xe3\xe1\x94\x19\x8d\xfa\xbe\x30\x52\x55\x82\x33\xe7\xee\x83\x77\x66\x58\x22\x9c\x09\x82\xd3\x05\x1a\x13\xc2\x82\x4c\xb6\xae\x63\xde\x89\x60\xfc\xe2\xe1\x99\x21\xdd\xbc\x68\x94\x37\x70\x8d\xd6\x6a\xd1\x3b\x57\x2c\xab\x9c\x64\x0b\x1d\x72\x1b\xc5\x51\x7e\xff\x56\x98\xcb\x73\xa8\x89\x5f\xb0\x17\x69\xef\x29\xfa\x6d\xd6\x64\x7c\x35\xda\xc7\x5e\x45\xdf\x27\x19\xef\x3d\x3f\x7b\x03\xc6\xde\x80\xb1\xf3\x65\x7c\x4d\x06\x8c\x17\x94\xd1\x4d\x6e\xd3\x93\x14\x2b\x79\x2d\xd2\xfa\x5e\x58\xdf\x0b\xeb\x7b\x61\xfd\x8b\x15\xd6\x5f\xc7\x0a\xef\x25\xf5\xbd\xa4\xbe\x97\xd4\xf7\x92\xfa\x5e\x52\xdf\xf9\x32\xee\x25\xf5\x8a\xa4\x0e\x7f\x39\xb4\x80\x75\xc5\xf6\xce\xe2\xfa\x66\xd0\x00\xdd\xdc\x74\x16\x1b\xe0\xad\x48\xe6\x7b\xa9\x7c\x2f\x95\xbf\x6e\xa9\xfc\xd5\x4c\xe8\xcb\x4b\x08\xde\xa7\xd4\xee\x53\x6a\xf7\x29\xb5\x2f\x91\x52\xeb\x78\xc9\x32\x09\x67\x59\x2d\x9d\x9f\x2c\x73\xf9\x9a\xb2\x24\x2b\x40\x54\xd5\x3f\xbf\x2f\x68\x96\x22\x50\x91\xb4\xa6\x4b\x39\xfb\x06\xe8\x09\x48\x01\xc6\xe9\xaa\x3f\x2c\x97\x60\x7e\xaa\xb1\xba\x57\x2b\xc4\x94\xa3\xdd\x14\x86\x6d\x57\x7b\xea\x4b\xe0\x6e\x50\x71\x2f\xfa\xcd\x35\xf4\x8a\xea\xf0\x1d\x38\xb1\x44\x73\x24\x37\xbe\x27\xae\xc8\xd7\xd8\xe7\x5a\xf5\xf9\x7e\xb6\x1f\xbd\xad\x52\x06\xf5\x51\xef\xab\xf2\xa1\x60\xd7\xf6\x55\xf9\x9e\x70\xde\xee\x9c\xad\x98\xb9\xa3\x51\x63\x0b\x7f\xa3\xd3\x7e\xf1\x60\xc7\xf6\x93\xfe\xa2\xa1\x8f\x8d\x17\x59\x2d\xb7\xee\xf8\x9f\x8d\xf7\xd4\x0b\x14\x23\x5c\xfb\x72\xda\x49\x59\xc2\x6d\xae\xa7\x8f\x44\x7d\x29\x77\xd3\xbe\x34\xe1\xbe\xbc\xce\x8e\xa6\xbb\xd1\xdd\xf3\x66\x67\xbb\x2f\xc4\xb8\x2f\xc4\xb8\x2f\xc4\x18\x1d\xc1\x7d\x21\xc6\x7d\x21\x46\x84\x9e\xa5\x10\xe3\xda\x32\xe3\x0e\x4a\x32\x6e\x23\x31\x9a\xee\xbf\x14\xa1\x71\x5f\x96\x71\x2f\x37\xee\x6e\xba\xbf\x2d\xb9\xf1\x15\x5a\x2d\x5e\x45\xfd\x49\x6f\xb5\x78\x71\x28\x20\xcf\xda\x3b\xc3\x01\x85\xb1\x26\xfe\xeb\x9d\xa2\x02\xb9\x4d\xdb\x23\x03\xd9\xff\xdb\x23\x03\xed\x91\x81\x5a\x66\xbd\x0f\x66\xde\x23\x03\xa1\x7d\xb8\xee\x3e\x5c\xf7\x35\x87\xeb\x76\xd8\xc6\x3d\x32\x50\x47\x91\xf1\x89\xd0\x81\x9c\xcc\xb5\x15\x42\x50\x83\x38\xb8\x1a\x25\xe8\xe7\xba\x46\xf4\x6a\x45\x3d\x37\xd6\x3d\x5a\xd0\x1e\x2d\x68\x5b\xda\x79\x15\x0a\xe8\x33\xa2\x06\x35\x71\x98\x75\x72\x91\x1b\x98\xcb\xb6\x0a\xe6\xdb\x40\x10\x72\xa3\xdd\x27\x26\xef\x53\x20\x5e\x7f\x0a\xc4\xab\x4b\x4c\x7e\x35\x9a\xca\x5e\x9d\xdf\xe7\x26\xef\x73\x93\xf7\xc6\x8e\xbd\xb1\x63\xe7\xcb\xf8\x9a\x8c\x1d\x2f\x2c\xb7\x3f\x21\x92\xd0\x6b\x94\xe0\xf7\x02\xbc\x79\x6f\x2f\xc0\xef\x05\xf8\x2f\x54\x80\x7f\x1d\x2b\xbc\x97\xde\xf7\xd2\xfb\x5e\x7a\xdf\x4b\xef\x7b\xe9\x7d\xe7\xcb\xb8\x97\xde\x9f\x0d\x5d\xa8\x49\x84\x5f\x1b\x61\x68\x4d\x37\x5f\x90\x40\xf6\x96\xa4\xf5\xbd\xa4\xbe\x97\xd4\x5f\xb7\xa4\xfe\x6a\x26\xb4\x47\x1b\xda\xa3\x0d\xed\xd1\x86\xf6\x68\x43\x1b\xc9\x48\xff\x66\x8f\xe5\xbb\xe0\x26\xf6\x57\xf6\xbb\xf7\x19\x1f\xdf\x2e\xe6\x44\xff\xef\x19\xcd\x09\x93\x20\xd1\x52\xb5\x08\x65\xa2\x96\x95\xaf\xaf\xf9\xbb\x9b\xc1\xc5\xc7\xf3\x30\x0d\xed\xdd\xa7\xbb\xf3\xdb\xc1\x55\xef\xda\xaf\x8b\x9f\x55\xb8\x16\xf6\xbb\x48\xac\xb3\x24\x7f\x4d\xb4\xfe\x0a\xa7\xe6\x46\x61\x55\xc8\xcd\x46\x76\xdd\xbf\xe9\x5f\xff\x04\x69\x74\xa3\xb3\xc1\x4d\xef\xfd\x79\x44\x10\xd1\xf3\xde\xe9\x5f\xee\x06\xd7\xed\xcf\xfb\xff\x3d\xb8\xb9\xbd\x69\x7b\x7a\xdd\x3f\xef\xf7\x6e\xda\xbf\xfe\xd0\x1b\x9c\xdf\x5d\xf7\x97\xae\xc7\xd2\xd1\x2e\x57\x64\x24\x2c\x12\x64\xb1\xa0\xc4\x72\x0d\x51\xae\x21\xf2\xe2\xa3\x63\x87\x4d\x7d\x9d\xa0\x3b\x6b\x17\xa0\xb6\x71\x17\x92\xe4\x1b\x32\x0a\x4d\x4a\x25\x1e\x67\x24\xad\xb5\xe4\xd6\xb0\xad\x25\x1c\x0d\xea\x51\x6b\xe0\x5e\xe4\xd4\x3c\x2f\x31\xbc\x00\x41\xd2\xad\x22\x2c\x6d\xe8\xc3\xec\x43\x6b\x0f\x4c\xf3\x2e\xfa\x40\xa2\x9e\x92\x42\x08\xc2\x54\xb6\x30\x02\xb7\xac\x35\xea\xb6\xaf\xad\x59\x7b\xa7\xfa\x06\x67\x58\x9a\xc8\xab\x68\xfc\x82\x64\x04\xcb\x86\x31\xdb\xdd\xef\xb6\x2c\x7e\xaf\xac\x45\xc7\x5c\x46\x13\x4c\xb3\x42\x90\xca\x69\xe1\xf9\x1c\x0b\x2a\x39\xeb\x7f\xd6\x77\x99\x3e\xc8\x97\xf0\x39\x17\x9b\x9d\x98\xfe\x5f\x42\x0a\xbe\x88\xff\xf9\xf1\x36\xfe\x57\x74\xe6\xcf\x6f\xe3\x7f\x2d\xa7\xf5\xa0\xe1\x2a\x65\x1f\xa2\x8f\xb7\x27\xe8\x23\x84\x74\x09\x74\x3b\xc3\x86\x62\xcf\x6f\x4f\xd0\x39\x91\x12\x7e\x29\x3f\x56\x54\x65\x30\xb7\xf7\x94\x61\xb1\x40\x6e\xfa\x26\x73\x1b\x83\xaf\xc4\x2d\x4d\x75\xf1\xd8\xdf\x0a\x06\xea\x7f\xb9\x7a\xe7\x7c\x4a\x13\x9c\x6d\xb7\x88\xbd\x8b\x88\x0f\x5c\x5e\x2f\x5d\x8a\xf0\xed\xfa\x5a\xf4\x2e\xce\x20\x8f\xdc\x0d\xb5\x61\xe6\x17\x44\x6a\x22\x49\x38\x4b\xad\xff\x48\xdf\xfe\x8b\x40\xa8\xff\x1b\x87\xcc\xf2\x42\x6a\x55\xb3\x77\x71\x86\x8e\xd1\xe5\xf5\x90\x5d\x8a\xd4\x18\x53\x89\x96\x86\x0d\xcd\x51\x89\x18\x57\x88\xe6\x73\x2e\x14\x66\x4a\x2b\x02\x20\x06\xd8\x15\x31\x1c\xe0\x94\xe7\x79\xa1\xb0\x3e\x68\xb5\x45\x65\xc6\xa4\x72\x43\xd4\x20\x05\xf7\x4c\xc3\x1a\x1a\x39\xa1\x9c\xcb\x5c\xe8\xf6\xb5\x8c\x12\xeb\xe1\x34\xad\xa9\xb2\xae\x09\x2c\x04\x8e\xa5\x89\x77\x54\x91\xbc\xfa\x7e\xc7\xf0\xe2\x7f\x35\x1a\x19\x4e\x4d\x3a\x0f\x11\x3d\x91\xcc\xa8\x22\x89\xd2\x47\x70\x23\x9a\xb8\xbb\xf8\xf1\xe2\xf2\xe7\x50\x82\x78\xd7\xfb\x74\xf6\xa7\x7f\x8f\x7e\xb8\xfe\x54\xfb\x61\xf4\xd3\x9f\x6a\xbf\xfc\xff\x96\xd2\x53\xb5\xa7\x9a\x9e\x1f\xcc\xe5\x10\x44\x6a\xb0\x2b\xbb\xa9\x22\x9a\xe3\x29\x41\xb2\x98\x6b\x0a\x90\x47\xf1\xfe\x6a\x91\xf2\x9c\xe3\x94\xb2\xa9\x49\xaf\x3e\xa7\x8a\x08\x9c\x7d\xc2\xf3\x0f\xce\x06\xbe\xc1\xea\xfc\xdf\x9b\x28\xd1\xfd\xdd\x2f\xbd\x4f\x61\xaa\xfc\xbb\xab\xeb\xcb\xdb\xcb\xa5\xb3\x8e\x5a\xa8\x1f\x23\xfd\xf8\x04\xfe\x8b\x8e\x91\x6e\xdd\x4b\xbe\x39\x51\x58\x6b\x04\xe8\x6b\x93\x12\xea\x53\xb8\x28\xcb\xe0\xd4\xcc\x05\xcd\x29\x5c\x29\xc6\x0a\xf8\x8d\x11\xae\xbd\xf6\xe0\xcf\x8d\xf9\xc0\x24\x7d\xdb\x4b\x99\xa5\x58\xa4\xe8\x6f\xb2\x8a\x87\x00\xc6\x67\xf3\x03\x49\xd1\x21\x9a\x29\x35\x97\x27\xc7\xc7\x8f\x8f\x8f\x47\xfa\xed\x23\x2e\xa6\xc7\xfa\x8f\x43\xc2\x8e\x66\x2a\xcf\x0c\xfe\x83\x5e\x85\x13\x74\x25\xb8\xbe\x42\x40\x41\x27\x82\xe2\x0c\x52\xd1\xc7\x86\xff\xf1\x09\xfa\x35\xe1\x82\x1c\x95\x1b\x63\x0d\x53\xf6\x1e\xb1\xc6\xab\x63\xfd\x52\x03\x33\xa9\xee\x27\x4a\x49\x42\x53\x2b\x66\x10\x96\x70\xb0\x5e\x1a\x7f\x87\x6e\xcf\xe5\xd1\x12\xeb\x6c\xf6\xcb\x19\x28\x2b\x38\x25\x08\x3f\x60\x9a\x19\x94\x11\x1e\x13\x9c\x56\x7c\x06\x46\x6d\x2d\xb4\x8a\x0e\xd1\xcd\x70\xab\xba\x57\xe7\x7a\xc2\x09\xcf\xd0\xb8\x98\x4c\x88\x08\x7d\xdd\x07\x5a\x9b\xa1\x12\x09\x92\xf0\x3c\x07\x89\x41\x7f\x55\x48\x43\xd5\xb0\x62\x76\xb4\x47\x43\x06\xfb\xaf\xd5\x1c\xa0\x80\x94\x03\xab\x63\x84\xa4\x08\xb3\x85\xe9\x66\x5c\x4c\x22\x5f\x3a\xe0\xaa\xe0\x14\x51\x35\x64\xbd\x2c\x43\x82\xe4\x5c\x91\x30\x4c\x1b\x1c\x6f\xd1\x82\x03\x8b\x14\x64\x9e\xe1\xc4\x81\x00\x64\x3c\xc1\x19\x9a\xd0\x8c\xc8\x85\x54\x24\x0f\x1b\xf8\x1a\x6c\x35\x7a\xcd\xa8\x44\x29\x7f\x64\x19\xc7\x76\x1e\xd5\xcf\xbe\x89\x4f\x63\xdf\xa1\x6d\xf4\x85\xe0\x02\xfe\xf3\x23\x65\xe9\xce\x38\xd4\xdd\x4d\xff\x3a\xfc\xf7\xcd\x2f\x37\xb7\xfd\x4f\xeb\x71\x1f\x4f\x59\x30\x3c\xd0\xe1\x4f\xd0\x8d\x59\x04\x2e\xb4\x44\x24\x5a\x26\xf5\xc9\x92\x52\xf9\x03\x4f\x37\xe4\xbe\x9f\x7a\x17\x77\xbd\x88\xa3\xdc\x9c\xfe\xd0\x3f\xbb\xab\xe8\x03\x76\x7e\x91\x0c\x6f\xd4\xbf\xf0\xb7\xd3\x1f\x06\xe7\x67\xa3\x06\x85\xf1\xdd\x75\xff\xf4\xf2\xa7\xfe\x75\xa9\xdb\x35\x2e\x51\x65\x30\x55\x66\x75\x6b\x98\xd2\x8c\xa7\x68\xbc\x08\xf3\xd4\x4b\x6c\x15\x2d\x39\x67\xe0\xcf\x2d\x31\x7e\x4c\xab\x27\xc0\x9b\x1c\xd8\x4c\xf9\x45\xce\x53\x72\x60\xdf\x01\x68\x18\x63\x5c\x31\x12\x73\x73\xc3\xba\x77\xcc\x02\x43\x85\x01\x89\xf1\x0b\x77\x82\x7a\x48\xea\x17\x0b\x7d\xa8\x05\x9d\x4e\xc1\x70\x58\x19\xaa\x69\xcd\x7e\x0a\xcb\x0b\xdf\x99\xfd\x9f\x0b\x0e\xe7\x5c\x77\x6b\x2d\xce\xde\x2a\x61\x3e\x34\xc8\xb6\x51\x8b\x02\x83\xc1\xa1\x61\x68\x6e\xb3\xf4\x22\xb4\xae\x97\x39\x8f\x65\x62\x05\xb0\x2d\x69\xec\x9d\x73\x41\x1e\x28\x2f\x82\x4f\x2d\xe2\x51\xb4\xe3\x8d\xcd\x97\x0b\x00\xcb\x66\x8c\x22\x95\x66\x3c\x79\x34\xb6\xa0\x59\xd8\x03\xb4\x30\x11\x3c\x6f\x68\x23\x3e\x26\x83\xcb\x1b\x25\xb0\x22\xd3\xc5\x99\x65\x19\x9b\x1f\x8f\xb3\xcb\x9f\x2f\xce\x2f\x7b\x67\xa3\x7e\xef\x63\x7c\xe2\xfd\x93\x9b\xdb\xeb\x7e\xef\x53\xfc\x68\x74\x71\x79\x3b\x72\x6f\x2c\x25\xf9\x96\x0e\xea\xf7\x74\xfc\xe2\x09\xd2\x2c\x17\x58\xa3\x83\x90\x0c\xf8\xe3\x98\x4c\xb8\x30\x7c\x3e\x77\xe1\x0f\x56\x84\x71\x6b\x6b\x75\xb1\xca\x2c\x4e\xc0\x32\xd6\xd4\xa4\xb1\x7a\x2b\x41\x70\x0e\xf7\x04\x66\xa8\xcf\xd2\xc3\xcb\xc9\xe1\x8d\xf9\x31\xc7\xe2\x9e\x08\xff\xe9\xa3\xa0\x4a\x11\x16\xa9\x74\xd8\x0d\xd9\x2b\x89\x65\x07\x47\xe8\x5a\xf3\x7d\xfd\xbe\xbf\xd4\x34\xb1\xa7\x44\x61\x9a\x49\x3b\xd8\x68\x5d\x4f\xd0\x39\x16\xd3\xd2\x0e\xf7\x35\x9f\x4c\x4c\x63\xdf\x98\x61\xe8\x3b\x2c\x9a\x45\x03\xef\xd5\xa4\xe1\xee\x45\xe8\xcf\xbe\xec\xe5\xe1\x3a\x55\xdd\xcd\xb7\xa3\xa9\xbb\x2b\x58\x71\xa3\xb1\x47\xba\xa1\x7d\xd2\x40\x6b\x30\x71\xf3\x78\xf9\x25\xd3\xdc\x76\x9d\x9c\xe2\x17\x1b\xc8\xc9\x64\xf1\xe9\x9d\x9f\x68\x6d\xb3\x81\x96\xc8\x67\x6a\x0d\x06\xe1\xb8\x2b\x24\x54\x36\x03\xe6\x55\x3c\x9f\x13\x2c\x64\xd3\x6e\xc7\x62\x60\xcb\xde\x9b\x9e\xc2\x3e\xec\x26\xbb\x7e\x0e\x10\x67\x60\x70\xf0\x42\x44\x85\x22\x3b\xd0\x80\x69\xab\x46\x01\x57\x00\x1f\x76\x69\xa1\xba\x3e\x51\xa9\x95\x46\xf3\xe3\x7b\x8b\x21\xb6\x19\x41\x7c\xe8\x0d\xce\x2b\xc2\xc5\xe8\xac\xff\xa1\x77\x77\xbe\xdc\x4c\x18\x7d\x57\xdd\x62\x74\x88\xf4\xf3\xd8\xf7\x4e\x27\xe6\xce\x70\x48\x68\x46\xa5\x25\x0c\x8c\x56\x36\xe9\xce\xd8\xab\x53\x32\xcf\xf8\x22\x27\x0c\x4c\x3c\xd1\x4d\xa8\xd7\x73\x82\xa9\xbd\x5a\x82\xc1\x82\x15\xc7\x9a\xdd\xe0\x1a\x3b\x74\xf0\x6b\x24\xf5\x37\x6f\x8c\xbe\x56\x61\xdd\x57\xc6\x7b\x66\xff\xe7\x46\x61\xb5\xe1\x19\xeb\x9d\xde\x0e\x7e\xea\xc7\xfa\xe1\xe9\x0f\x83\x9f\x9a\xa4\x9a\xd1\xc7\xfe\x45\xff\xba\x77\xbb\x42\x38\xa9\x34\xd9\x24\x9c\x48\x3d\xe0\xaa\xf7\x94\x4a\x1f\x55\xa4\xcf\x8e\xe0\x19\xa2\x4a\xa2\x07\x2a\xe9\x98\x02\xe2\x9d\xf5\x44\xde\x0d\x80\xb3\x42\x9a\x25\x55\x0b\x27\xbe\x98\x7e\xe3\x7d\xd4\x9c\xd4\xb6\x6f\xcc\x0e\xa1\x7f\x12\xac\x7c\x66\x73\xdc\xa4\x4f\x10\xe8\xb6\x0f\xa0\xb4\x05\x9f\x31\x2d\x48\xb3\x29\x11\x66\x38\xe0\x7d\x09\xc7\x12\x3c\xd7\xa3\x0a\x85\x95\x72\xd5\xbc\xd0\x3a\x25\x8c\x08\x80\xf7\xf2\x9d\x18\x41\x4a\x10\xf6\x95\x96\xb9\xe6\x19\x4d\xa8\xca\x16\x28\x01\x1b\x16\x98\x33\x73\xcc\xf0\xd4\x0a\x07\xa0\xe6\x54\x48\xe2\x2f\x06\x16\xf0\x72\x62\x4d\xfb\xb7\x94\x6c\x78\xcc\xee\x2e\xce\xfa\x1f\x06\x17\x31\x09\xfc\x30\xf8\x18\x89\xb0\x9f\xfa\x67\x83\xbb\xe8\x36\xd7\x92\xec\x72\xb9\xbe\xda\x6c\xc3\x51\xf4\x2f\x9d\xa0\x33\xf3\xe9\x89\x5e\xdc\x06\xcc\x43\xaf\xfc\x56\xd6\xe1\xda\x85\xf5\xb9\x3f\xfa\x4c\x89\x46\xbf\x44\x57\x13\x92\xf5\x41\x46\x36\xa4\xe6\x50\x85\x5a\xdf\x17\x55\xa7\x72\x3d\x94\xc3\x3a\x22\x75\x27\x47\xa5\x65\x29\x8c\x61\x00\xa3\x41\x9b\x11\xab\xc1\xad\x55\x32\xec\x9f\xc0\x45\x9d\x17\x52\x19\x57\x22\x10\x27\xba\xff\xb3\xd4\x0b\x0a\xae\xc6\x23\x74\x43\xc8\x90\x39\xeb\xc1\x94\xaa\x59\x31\x3e\x4a\x78\x7e\x5c\x02\x6e\x1e\xe3\x39\xcd\xb1\x96\xa4\x89\x58\x1c\x8f\x33\x3e\x3e\xce\xb1\x54\x44\x1c\xcf\xef\xa7\x10\x45\xe3\xdc\xa9\xc7\xbe\xd9\x29\xff\xdd\xf9\x1f\xbf\x3d\x3c\xff\xf3\xb7\xef\xea\x16\xb2\xb6\xfd\xef\xb3\x04\xcf\x65\x91\xd9\xa8\x3b\x11\xae\x8d\x3b\xf2\x05\x59\xb5\xdf\x17\xf1\x76\x6d\xa7\xbf\x9e\x5e\xdd\x45\x16\xeb\xf8\x9f\x9f\xfa\x9f\x2e\xaf\x7f\x89\x38\xe5\xed\xe5\x75\xef\x63\xc4\x50\xfb\x57\x3f\xf4\x3f\xf5\xaf\x7b\xe7\x23\xf7\x70\x1b\xdb\xdb\x8f\x8c\x3f\xb2\x78\x69\xa4\xe3\x80\xb5\x9e\x4e\xd0\x07\x2e\xd0\x8f\x7e\x27\x0f\xc7\x58\xc2\x15\xe3\xee\x2c\x79\x80\xe6\x3c\x05\xc6\x8b\xc8\x7c\x46\x72\x22\x70\x66\x6d\x06\x52\x71\x81\xa7\xe6\xa6\x97\x89\xc0\x2a\x99\x21\x39\xc7\x09\x39\x40\x09\x50\xc3\xf4\x00\x36\x05\x54\x2d\x3e\xad\xda\xf9\xae\x0b\xa6\x68\x4e\x9c\x0a\x6e\xff\x79\x6b\x36\x63\x83\xcd\xb9\xbc\xfd\x21\x16\xf6\x3e\x9c\xff\x72\xdb\x1f\xdd\x9c\xfd\xb8\x74\x3d\xcd\x67\xd1\xc8\x6e\x20\x00\xe9\x94\x67\x45\xce\xc2\xbf\x37\x1f\xdb\xe0\xe2\xb6\xff\xb1\x3a\xba\xcb\xde\x6d\x4c\x19\xd7\x71\x90\xdc\xbb\xf7\x97\x97\xe7\xfd\xc8\x25\xfc\xee\xac\x77\xdb\xbf\x1d\x7c\x8a\xe8\xe7\xec\xee\xda\xc0\x78\x2e\x9b\xa6\x1b\x41\xc3\x44\xf5\xb4\xc2\x69\xee\x9a\x15\x76\xe2\x44\x3d\x1b\x94\x6e\xce\xf2\x61\x00\xf4\x64\xc2\xc1\xc0\xaa\x73\xe8\x4d\xaa\x89\x19\x69\x23\x3b\x54\xf1\x36\xa1\x76\x76\xbc\x74\xa3\x97\x71\xe5\x5b\x3f\x04\x83\x6d\x6b\x94\x6d\x9c\x65\xfc\xd1\x84\x03\xe7\x54\xdf\xca\x16\xf6\x4f\xbf\x22\x4b\x0f\xe1\x51\x03\xc7\x8b\xb7\x85\x24\x82\xa8\x4f\xbc\x60\x6a\x73\x92\xeb\x5d\x44\x7c\xa7\x7f\xf1\xd3\xe8\xa7\x5e\x4c\x81\x83\xf3\xe5\xac\x26\x6c\xa2\xe1\x2a\xee\x5d\xfc\xe2\x2f\x61\x08\x1a\x3f\xf0\x1a\xaa\x91\x5d\x93\x8c\x6a\xb1\x37\xc1\x5a\x7b\xcd\x40\xa2\x41\x84\x82\xc9\x21\xd7\x93\x83\x20\xd5\xb9\xf1\x27\x19\xfe\x64\x06\x79\xe2\xfe\xa8\xb4\x27\x61\x5d\xc0\x9a\xea\x62\xf2\xa1\x1d\xab\x55\x33\x44\xd8\x03\x15\x1c\x00\x9a\xd1\x03\x16\x54\x4b\xe3\xa6\x65\x3d\xd7\x13\xf8\xef\x7a\x6d\x82\x61\xb4\xc2\xb8\x6e\xb8\x50\x67\x3e\x18\x78\x33\x6b\x48\x53\x50\x6c\x3d\x1c\xb6\xd9\xd0\x51\xff\xb6\x61\x73\xb6\x0c\x1a\x8e\x27\xfc\xf7\xec\x8c\xe2\x4c\x33\x80\xdd\xc9\x8b\xbd\x8b\x9b\x41\x2c\x3f\xc6\x6a\x46\xc0\x97\x37\x96\x17\xc1\x50\x69\x46\xee\x94\x89\x9b\xbf\x9c\x1b\xed\x02\x50\xbc\xcd\xb9\x0d\x14\x0b\x0b\xcd\x62\xa4\x89\x39\x16\xb2\xf2\x85\x44\x00\xc1\x57\x06\x5c\xe9\x3b\x0b\xc2\x99\x1e\x38\x4d\x87\x8c\x7c\x9e\x13\x26\x21\x38\xc0\xdc\x67\xa5\xaf\x5d\x1e\xa1\xc1\x04\x58\x82\x7e\x9d\xa1\x82\x59\x07\x98\xbe\x70\xcd\x20\x0f\xb4\x28\x5b\xa2\xc3\x04\xe6\x23\x46\x5c\xb0\x54\x39\xf8\x21\xfb\xd9\x3b\xd1\xe0\xd1\x84\x6b\x06\xa4\x77\xd1\xb6\x77\x82\x30\x93\xf4\x00\x69\x85\xa5\xb2\xa7\xb7\x58\xde\xd7\xcc\xe0\x03\x26\x15\x66\x09\x39\xcd\xb0\xdc\x30\x1e\xc6\xa9\xdb\x07\xf1\xe5\x77\x7d\x7d\x77\x75\x3b\x78\xbf\x82\xe1\x54\x3f\xae\x47\xa4\x24\x59\xe1\x3c\x45\x63\xc1\x71\x8a\xf4\x49\x9e\x72\xe3\x95\xb2\x32\x68\x09\xab\x6e\xd2\x54\x7c\x6c\x5f\x04\xe9\x5e\x46\xd7\x5b\x95\x3b\xb4\x6a\x53\xbb\x10\x28\xd1\x2b\x81\x02\xed\xdb\x5d\x40\xe0\xe4\x32\xd5\x66\xac\xa1\x65\x9e\x61\x35\xe1\x22\x37\x0c\x27\x9a\xb4\x69\x7c\x79\xa3\x94\x29\x22\x44\x31\x57\xd4\xe1\xe4\x57\x05\x26\xbd\x65\xe7\x7c\xfa\x89\x48\x89\xa7\x64\x1b\x5f\x68\x93\x1c\x7b\xf3\x53\xf8\x4f\xf0\x75\x76\x11\x43\xa3\x11\xba\x20\x6c\x47\x4f\x97\xec\x83\x89\x29\xb9\xe2\x19\x4d\x36\x8c\xfd\xfa\xd0\x1b\x9c\x8f\x06\x9f\xb4\x3e\xd9\xbb\xed\x9f\x47\xb7\x1a\x3c\xeb\x7d\xb8\xed\x5f\x5b\x20\xf2\xde\xfb\xf3\xfe\xe8\xe2\xf2\xac\x7f\x33\x3a\xbd\xfc\x74\x75\xde\x5f\x11\x24\xd2\xda\x78\xdd\xd0\x57\x7d\xf5\xa4\xf6\x0b\xec\xb0\x28\x8c\xba\xee\x4c\x37\x90\x04\x85\x69\x06\xfe\x58\x6e\xfc\xb2\x18\x31\x9e\x1a\x38\x28\xe9\x0c\x05\x1e\x21\x1c\x0d\xd4\x57\x59\x86\x70\xa1\x78\x8e\xc1\x81\x90\x2d\x86\x0c\x8f\xf5\x29\xc7\x59\x16\x44\x1a\x89\x82\x31\x7d\xda\x75\x63\x06\xfe\x3e\xc9\x88\xe6\x2c\xf3\x20\x77\xcd\x9a\xb0\x27\x94\x41\xd0\x67\x8e\xc5\xbd\xab\xe5\xe7\x33\x02\xfc\xa1\x90\x08\xcb\x21\x33\x30\x55\xf6\xe2\xec\xb0\xc2\x27\x9d\xde\x6a\x5d\x9d\x1c\xdf\x13\xbd\x2a\x79\x91\xcc\xd0\x5c\xf0\xa9\x20\x52\x5a\x33\x67\x82\x99\xf1\x85\xdb\xd7\x35\x47\x1c\x32\xc6\xf5\x52\x38\x6b\x6a\x4a\xe6\x84\xa5\x84\x25\xd4\x64\xa9\x81\x1b\xd9\x5b\xd9\xa6\x02\xcf\x67\x48\x72\xf0\xbf\xc2\xb2\x83\x29\xc5\x7c\xe4\x98\xaa\x05\xe6\x82\xc7\xa1\x31\x54\x14\x9a\x4f\x5c\x82\xc8\x62\x56\x19\x3e\x76\x7c\xd9\x79\x00\x8c\x49\x2a\x9f\x67\x44\x99\x42\x08\xb0\xe4\xb0\x19\x7a\xad\xa3\xfd\xd0\xdb\xd4\xb4\x09\xfa\xee\x70\x63\xc6\xd2\x8e\xe8\xa8\xc1\xc8\x6a\x8f\x14\xfa\x01\xb3\x34\xd3\xad\x38\x73\x7a\x7c\x16\x21\x2b\xa2\xa7\xa9\xc6\x9d\xc6\x6d\xe4\xfa\x04\x17\x72\x2d\xc1\x7e\x79\x6a\xa1\x31\x50\x1d\x96\xf1\x09\x40\xde\x36\xaf\x10\x56\x77\xae\x59\x24\xce\xb8\x5d\x25\xf3\x7a\x61\x8a\x7b\x21\x18\x4d\x8b\x31\x64\x2e\x28\x4b\xe8\x1c\x67\x1b\xa9\x21\x95\xb8\x70\x1b\x6e\xfd\x35\x9d\x68\xf2\xf9\xa6\xe6\x41\x54\x44\xe4\x90\x6f\x6b\x87\xe9\xb7\x70\x0d\xa3\x86\x0d\xb0\x27\xb2\x0c\x6c\xc0\x82\x17\xc6\x35\x04\xeb\x42\xd2\x86\xa3\x7a\xd4\xb4\xdd\xfa\x64\xe0\x38\x16\x77\x83\xcd\x36\x41\x28\x6d\xeb\x57\x69\xc5\xf6\x6e\xe2\xc2\x70\x76\xd5\xdc\x66\xd3\x0e\x04\x0f\xff\xb5\x8c\x76\x3e\xe1\xb9\xa6\x19\x5b\x9e\x01\x97\x73\xb4\xf2\xba\x2d\xf9\xe6\x42\x39\x02\x37\xae\x4f\x51\xe8\xbe\x1b\xe5\x12\xda\x58\x9c\x7a\x27\x91\x3b\x3b\x48\x99\xb6\x34\x3e\x29\x94\x3e\x9e\x18\x1c\xe2\xe8\x6b\x72\x34\x3d\x42\xae\x90\xc6\x01\xea\x5d\x5d\xf5\x2f\xce\x0e\x10\x51\xc9\x37\x2e\x7c\xce\xc6\xce\x0c\x99\xe2\x56\x5a\x59\xa0\x19\x7f\x04\xde\x48\xc4\x94\x44\x73\x76\x81\x36\x10\x35\x3b\xa5\x52\xd9\x48\x4e\xcd\x57\x82\x32\x32\x34\xaf\x4a\x7c\x86\x42\x0a\x35\xdb\x86\x34\xb0\x94\x45\xae\xd5\xaa\x11\xc5\xf9\x48\xf0\x6c\x1b\xa6\x70\x06\x53\x01\xcd\xcd\x67\x9b\x53\x9c\x23\xdd\xac\x8d\x4a\xf0\xde\x2f\x2f\xd2\x69\xc1\x48\xf3\x65\x7d\x6f\x06\xf7\x96\x33\x84\xdb\xd0\x28\xea\xbc\xf1\x90\x8d\xde\xc2\x2a\x4a\x0b\xe6\xc8\x1a\x8d\x47\x38\x49\xb4\xf6\xb7\xe3\x49\x05\xb5\x89\x9c\x75\xda\x76\xf4\x64\xd3\x5c\x45\xe7\x6e\x98\x73\xcd\xc1\x20\x2e\xb5\x5e\x56\xa4\xa1\xdf\xf1\xa2\xd6\xab\xab\x1e\x74\x27\xbd\x76\x6f\x2e\x61\x49\x60\x27\xa5\xa9\x3e\xa4\x66\xc4\xa2\x60\x86\x5d\xba\xdc\x0c\xdd\xf0\x82\x17\xa2\x89\xd1\x0d\xd9\x19\x99\x0b\xa2\x25\xfd\xaa\x2d\xdf\xd3\xf4\x75\x4c\x89\x7b\xba\xde\xd3\xf5\x9b\xa7\xeb\x53\x53\x31\xcc\xb9\x2d\x82\x8a\x3c\xdb\x10\x7a\x53\x2b\xcb\x5a\x42\x4f\x7e\xbf\x9f\x9a\x8b\xbd\xa9\xd0\x51\x4c\x45\xee\x0e\xa6\xac\x56\xe2\xcd\x6c\x24\xd4\x2b\x87\x0b\xf7\xef\x05\x57\x58\x7e\x73\x34\x64\x5a\x7a\xb8\x27\x0b\x63\xf2\xd2\xf7\xf3\xef\xb5\x10\x7a\x28\x09\x93\x10\x72\xfb\x7b\xe3\x22\xd1\x7b\xeb\x4c\x86\x46\x27\x33\x95\xe5\xe2\x1a\x4c\x10\x26\x69\x1b\xb5\xe2\x41\x19\x84\x5a\x16\x6e\x72\xcf\xcc\xf0\xa7\x44\x41\x9a\xab\xa2\x0a\x94\x85\xd4\x94\xae\xab\x0d\x7d\xa5\x5d\xd8\x50\x85\xe0\x60\xab\x4e\x8b\xed\x38\x9e\xac\xb7\xb1\x92\x25\x78\x31\xf9\xc6\xc6\x1d\x1f\x3b\x83\x49\x22\x78\xad\x1e\x1c\x96\xc8\xec\xf4\xd8\x9c\x03\xe7\x43\x24\xec\xe8\x91\xde\xd3\x39\x49\x29\x86\x28\x64\xfd\xaf\x63\x3d\xaf\xdf\x9d\x5e\x5f\x5e\x8c\xca\x6c\x8a\xff\x1a\xb2\x5e\x26\xb9\x8f\x14\x47\x8c\x33\x1f\xf2\x3c\x17\xc4\xc9\x42\x76\x2e\x60\xf9\x2a\xcd\xfb\x43\xd6\x36\x82\x94\x27\xf2\x08\x3f\xca\x23\x9c\xe3\x7f\x70\x06\xee\xcc\x1e\xfc\x79\x9a\xf1\x22\xfd\x19\xab\x64\x76\x0c\x5e\x46\x75\x4c\x1e\x08\x53\xc6\x55\xa0\x97\x2b\x85\x04\x4a\x09\x11\xd3\xbf\xd3\x63\x2e\x13\x3b\xa4\x56\xe1\x12\x32\x57\xe8\xff\x11\x64\xcc\xb9\x6a\xe6\xce\x7c\x32\x91\x64\x2d\x4e\x5c\x6a\x27\x37\x97\xe8\xcf\x7f\xfa\xf6\x3b\x4d\x42\x9b\xac\xf1\xe0\xe6\x72\xa4\xbf\xff\xdd\x99\xfd\x5e\xae\xc1\x59\x2f\x8d\xa5\xde\xba\xfb\xcc\x6a\x98\xe0\xe5\x82\x01\xdb\x17\x60\x40\xd6\x02\xb2\x21\x87\x72\x1f\x9b\xb8\xdb\x99\x49\x35\xdf\x2a\x73\x63\x8b\xeb\xec\x63\xc6\xc7\x60\x10\x29\xa2\x22\x55\x4b\xbc\xec\xeb\xba\xb6\xaa\x17\x13\x95\xf3\x0c\x2f\x6a\x3d\xac\x5a\xf6\x0b\xcd\x9d\xe6\x38\x21\x65\x8e\xbc\x0b\x88\x49\x78\x9e\x43\x90\x96\xb3\x5e\xa7\x74\x02\xd1\x5a\x4a\x5f\x76\x68\x4c\xd4\x23\xc4\x06\xba\x5f\xfd\x25\xed\x2c\x91\x9a\x95\x01\xbb\x1c\xea\x45\x4e\x0b\xf0\x68\x0c\xdf\x1d\xa0\xe1\xbb\x94\x3c\x90\x8c\xcf\xf5\x69\xd6\x3f\x10\x95\x34\x6d\x62\x3f\xc7\x34\xbb\xe0\xca\x87\x9b\x6d\xb3\x9f\x82\x24\x74\x4e\xf5\xe9\x1a\x11\xdd\xee\x93\xa6\xe5\x34\x1f\xb0\xdb\x19\xf1\x58\x3e\x30\x06\x84\xd3\x54\x13\x31\x54\xec\x72\xc3\x2b\x6d\xcb\x2c\x98\x7a\x54\x89\x66\x7d\x81\x45\x6b\x95\xd0\x63\xd8\x66\x1c\xcb\xd7\xb8\x03\xde\xe2\xb0\xd3\x93\xd4\xec\x2f\x4d\xb8\xf0\xc0\xff\xbe\xe3\xb2\x7a\xd2\x52\xfa\xb7\xc5\xe0\x82\x2c\x7a\x6b\xaa\x6b\x35\x6d\x54\x0f\xa0\x5e\x8b\x6e\xe3\x8c\x57\xe6\x46\x7f\xb7\x74\x68\x32\x84\xb1\x4a\xc2\x9a\x8e\xa0\x56\xdb\xf8\xed\x6a\xc8\x38\x59\x39\xe2\x24\xe3\x32\x4e\xe7\xea\x3c\xe8\x53\xfb\xe9\xb2\x71\xf7\x43\x2b\x44\x91\xf9\x4c\xaa\x4e\x74\xd7\x6b\x58\xf8\x0a\x5e\x81\x61\x13\xca\x4a\xce\xf6\xed\x03\x44\xc1\x0b\xa3\xd7\x00\x67\x65\x70\x3b\x4b\x51\x29\x25\x0e\x59\x69\xcb\x92\xe8\x91\x64\x60\xfe\x4e\x78\x3e\x07\x09\xc8\x0e\xd7\xb6\xa4\x2f\x70\x85\x15\x39\x40\xbc\x50\xba\x31\x13\x36\xe2\xee\x38\x1b\x93\x52\x4a\x85\x46\x26\xb7\xfe\x59\x8f\x9f\x64\x68\xdd\xb0\x42\xca\xd0\x47\xa2\xa0\x15\xc0\xa7\x0b\x27\x68\x2a\x0e\x2f\x3d\x4a\xa7\xb5\x6d\x5b\xfb\x44\xd9\x99\xac\xb1\xf3\x65\x6e\xcf\xfb\x8c\x8f\x97\xee\xfb\x25\x34\x8e\xee\xae\x07\xce\x79\x50\xda\x55\x03\x80\x9d\x55\xd4\x49\x84\x88\x02\x6d\x57\x1c\xfc\x38\x13\x68\x39\x61\x42\x1e\x0e\x65\x26\x2b\x0a\x72\xd7\xaa\xe3\xb4\x16\xf7\x55\x63\x04\xfb\xe7\xe8\xed\x58\x9f\xcd\x78\xf3\xba\xc5\x7d\xd5\xf6\xc7\x96\xfa\xa7\x9e\x0c\x1c\x0d\x35\x23\x54\xa0\x4e\xd3\x32\xe4\x3c\xea\x3e\x27\x4d\x30\x25\x45\x2f\x8f\x70\xc4\x8f\xf6\xe0\x9b\xb8\x79\x23\x89\x04\x3a\xf9\x4a\x2e\x6b\xd9\xca\xc8\xb0\xa2\xed\x07\x58\xca\xdb\x86\xb7\x79\xbe\x65\x82\x02\x64\xad\x6a\xf7\xd1\x90\x55\x06\x61\xfd\x4b\x12\x01\xed\xc3\x2f\x94\xa1\xe8\x4a\x3a\x40\x13\xfa\xd9\x36\x5a\xfa\x9d\xdd\xab\x81\x21\xa2\xc5\xcf\x31\xc3\xf5\x33\xb1\xc6\xb5\x7d\x05\xdf\x2f\xb5\xbb\x73\xa9\xb4\xd4\xa3\x25\x47\x41\xb4\x7c\x4f\x52\x04\xdd\x7a\x2f\xf8\xca\x2b\x5b\x61\xa1\x17\x05\xaf\xa5\xef\x94\x50\x97\x29\x56\xe4\x50\xd1\x95\x31\xb2\x36\x8c\x02\x02\x2e\xb0\x0a\x32\x46\x4b\xce\x3f\x26\x53\xcc\x9c\xcb\xb4\x65\xb8\xee\xca\xd9\x82\xd5\x68\x09\x12\x43\x04\x11\xc8\x37\x10\x1d\x12\x8d\x43\xce\x61\x3d\x97\x8e\xc3\x5a\xa5\x5e\xc3\xb2\x3d\x62\x6f\x24\x6b\x19\x6c\x31\x4f\x5f\xd3\x60\x33\x2c\x15\xb2\x63\x6a\xd3\xe4\x02\x09\x7b\x07\xc9\xff\xcb\x8a\x8c\x86\xaa\x51\x57\x7b\x98\x26\xa1\x58\x09\x20\x4a\x51\x5b\x01\xb3\x90\xc4\x26\x12\xe5\x44\x4c\x9d\x20\x6a\xaa\x13\xf9\xb3\x6d\xcb\x14\x39\x2e\x1f\x32\x13\x70\x9e\xd7\x9b\x3e\x42\x3d\x56\x4b\xa9\x74\xf6\xd2\x68\xbd\xcc\x9d\x82\xb3\x47\xbc\x90\x68\x2e\x4c\xf6\x91\xf1\xa8\xbb\xc9\x83\x23\x2b\xfe\xc8\x5b\x6a\x94\x0b\x69\x40\xa0\xca\xae\x36\x66\x07\x45\x77\xbb\x73\xbb\x8e\x3a\x49\xc5\xdb\xdb\x54\x17\xd7\xab\x7a\x8d\xac\xae\x26\x64\x97\xa9\xc8\x61\xa8\xba\xc5\x76\x01\x99\xd7\x6a\x3d\xfd\xd8\x53\xdc\x26\x88\x82\x95\xf3\x1c\x8f\x49\xb6\xb5\x43\x77\x23\x8b\x13\x74\x6d\x91\xec\x14\x47\x29\x31\x1e\x6f\x82\x1e\x67\x44\x54\x59\x9b\xb3\xd3\x8a\xa2\xc9\xff\xbd\x6c\x9e\x51\x71\xad\x2d\x26\xea\xa0\x19\x37\x99\x6a\x1b\x60\x63\x78\x85\x04\xc0\x86\x4d\xba\x7e\x78\x95\x54\xcd\x5b\x9b\x0d\x24\xc0\x57\x6c\x19\xc7\xd6\x00\x8b\x2b\xa7\xb2\x71\x4c\x77\x47\xe0\xf2\xc1\x04\x31\xce\x08\xa2\xb2\x7c\x59\xc5\x21\x3f\x3e\x23\x4a\x8b\xbb\xc6\x90\x50\x2f\x17\xf9\xd4\x56\x83\x32\x56\xdd\xeb\xb9\x2e\x9c\x96\x11\xad\x74\x61\xb1\x00\x44\x05\xc3\xd3\x62\xf9\x68\xe5\x38\x77\x2e\xbc\xde\x3a\xc0\x8c\xc0\x1b\xa5\x38\x02\x91\xac\x32\x38\x64\x60\x27\xec\x4b\xf6\x23\x9b\x15\x34\x64\x5e\x4b\x07\x42\xa4\x12\xe5\x78\x0e\xb1\xac\x8c\xab\xf2\x2b\x93\xe5\xa6\xfc\x16\x1e\x38\xa1\x56\x1a\xd8\xe3\x96\x15\x58\x65\xa6\x70\x57\x59\xb9\xae\x31\x9a\x80\x43\x42\x99\xd2\x07\xc2\x1c\x4d\x1f\xb8\x33\xa1\x07\xe5\x3a\xcd\x16\x87\x58\x4a\x3a\xd5\xd7\x50\x60\x84\x5d\xce\x91\x6c\xa9\xc8\x57\x60\x5b\xeb\xbe\x64\x7a\xe3\x8b\x9a\xb5\xcd\xe4\xa4\x46\x60\x62\xce\xf9\x19\x52\xa9\x85\x49\x81\x2c\x0c\x2d\x4e\xfd\x9e\x71\xf5\xfb\x00\x48\xc6\x29\xf2\xa6\x92\xa8\x35\xa7\x1c\xd4\x10\x32\xe1\xd0\x5a\xc2\x41\x38\x48\x68\x5c\xb9\xf2\xdb\xe2\x39\x95\xce\xdd\x27\x95\xec\xfa\xf5\x48\xaf\x36\x88\x61\x03\xbd\xbf\x33\xeb\xc5\x73\xd4\xc8\x46\x86\x0c\x04\x71\xc9\xad\x39\x17\xa4\x02\xff\x6f\xf8\xb9\x0f\x85\xcc\xe7\xaa\x31\xb3\xa5\x2e\x1a\x35\x18\xef\x0c\x12\x7a\x79\xd2\x23\xa3\x9d\x3c\x1a\xb2\x1b\x42\xda\xe1\xb1\xfd\x5e\xfc\x0a\x0d\xc1\x58\x6d\xca\xfb\x32\x4a\xdb\x45\x5c\x64\x1e\x83\x17\x2c\xa1\x9a\x15\x98\x33\xcd\x3a\xfe\x26\xb1\x8c\x6d\x32\xae\x37\xb8\x87\x75\x5e\xdb\x40\x55\x8e\x86\xec\x03\x17\xf6\x0a\x96\x16\xd6\x6d\x8c\x93\xfb\x43\xc2\x52\x84\x0b\x35\x33\xe0\x26\xd6\x46\xbe\xb0\xd4\xa0\x25\x0d\x20\x1b\x9f\xb9\x40\x65\x82\x45\xea\x00\x06\x1f\xb8\x1b\xc5\x90\x05\x8d\x00\x70\x1c\xe0\xea\x42\x75\x91\x36\xb5\x8d\x00\x90\x79\xdb\x5a\x34\xd5\xcd\xa8\x55\xcd\x58\x7e\xce\xa2\x3a\x20\x00\x79\xc7\x88\xb4\x22\x7b\x65\x75\x06\xce\xf2\xe6\x74\x25\x19\x56\x52\xf6\x6f\x1e\xd8\x08\x65\x63\xde\xb1\x33\xd0\x92\xce\xb7\x8e\xd7\x46\x20\x2d\x93\x42\x40\xa0\x49\x53\x9b\x5f\x27\x33\x9a\x95\x76\xf8\x6f\x0e\xfc\x30\x75\x93\x19\x79\x20\x99\x81\x08\x4b\x04\x38\xe1\x8d\x05\xed\x5b\xf4\x7f\x4c\x2d\x09\xf4\xdd\x90\x7d\x04\x36\x9c\x65\x0b\x00\x30\xf0\x2d\x63\x55\x69\xe6\xbe\x71\x00\xca\x86\xbb\xa0\x78\x20\x66\xaf\x67\xf8\x81\x0c\x99\x6b\xe6\xff\xa0\x7b\xf4\x07\xf4\x5d\x9b\x55\xc8\xf9\xd2\x9f\xd8\x66\xf0\x21\xf0\x54\x07\xb7\x9c\x65\x94\x96\xdf\x38\x93\x42\x64\xd0\x6b\xc8\x1e\xf1\x38\x44\x94\x3d\xf0\xa4\x16\xb0\x11\x9e\x5a\x2c\x08\x53\x23\xc6\x53\x32\x22\x0d\xee\xb9\x25\x4c\x42\x0b\x01\x17\x3c\x25\x2b\x9d\x6b\x9e\x99\xfe\x0c\x66\x10\x59\x8c\xfd\x76\x40\x10\xbb\x8f\x58\xf6\x9a\x7c\x4c\x69\xcd\x23\xf7\x60\x1f\x9b\x8c\x7b\x53\xc7\xe0\xa5\x95\xcf\x0e\xe0\x42\xb0\x03\x68\x76\x4e\x65\x58\xb9\x38\xdf\xea\x71\xac\x1a\xc5\xf5\xcb\x7a\xe6\xf6\xb2\x0a\x60\x4c\x00\x6a\x52\xd0\x29\xd5\xf2\x7b\x77\xe7\x23\x70\xc2\x4d\x2c\xfb\x06\xd3\xa1\x93\x69\xbf\x5c\x0a\x97\x4c\x74\xe8\xe9\xaf\x74\xa8\x8d\x79\x51\x15\xe0\xed\x02\x50\x19\x46\x20\x5b\x59\x7d\xa1\xf9\xf0\xd4\x44\xb9\x91\x19\x35\x71\xe5\xbd\xd3\x73\xa4\x4f\x07\xcf\x4d\x1e\x20\x2c\x5a\xa1\x66\x5c\xd0\x7f\xb4\x06\x23\xb5\xcb\xe8\xa5\xd7\xb0\x8c\xdd\x32\xe3\x8c\xa5\x75\x20\x56\x23\x52\xa8\x48\x2b\x69\xd2\x99\xd0\xb8\x00\xc8\x0b\xcd\x66\x27\x45\x66\x70\xf2\x12\x2e\x52\x53\xec\x4a\x46\x91\x62\xfa\x3d\x2f\xde\x63\xe5\x1b\xa4\x16\x19\xc0\x22\xf1\x25\x33\xcc\xa6\xcb\x05\xd0\xbf\x14\xa4\xd8\x51\xb0\x9d\x45\xd7\x7e\xa6\x28\x86\xaa\x1a\x80\xa7\xb2\x0c\xbc\x34\x6b\xa3\x79\x73\xb9\xbe\x7f\xd7\x33\x95\x41\x5c\xa6\xb3\xd2\xf9\xec\x6b\xa3\x92\x9b\x3a\x0c\x6b\x59\x74\xae\x0d\xd2\xd8\x0e\x4c\x3a\xcf\x11\x9b\x50\x97\x91\x1a\xd8\x8f\x25\xbf\x07\x9f\x1e\x5b\x65\x11\x4f\x64\x27\x71\x90\x6d\x15\xe9\xe3\x09\x4d\x26\x1b\x30\xb9\xba\x50\xbd\x6c\xbd\x03\x03\x8a\x67\x6b\x0d\x01\xc3\x8a\x23\x3d\xf7\x47\x41\x21\x21\x77\x51\xbe\xec\x4b\x8e\xb8\xeb\x22\xe4\x31\x5a\x4a\x31\x62\x2d\xc4\x28\xb8\x25\x5c\x74\x34\xe1\xb6\x1b\x20\x6c\x43\x71\xd7\x75\x1f\x76\xdb\x89\x30\x2c\xe9\xb5\x1e\x89\x7a\x0a\xd4\xca\xc3\xe0\x81\x17\x5f\xc6\x80\xe8\x45\x9b\x27\x3e\x19\x6b\x51\x48\x70\x91\xad\x4d\x22\x37\xb1\xa9\x72\x6d\xba\x30\x7d\x8f\xc0\x67\xbc\xb5\xab\x24\x70\x01\x94\x21\xf1\x26\x17\xca\xa5\x3d\x3e\x93\x21\x13\xbc\xf0\x71\x36\x56\xe0\x84\x6f\x4b\xbb\x7b\x52\x7e\x56\x22\xde\x39\x8e\xd4\x71\x28\x4b\x5d\x8f\x1d\x1d\x89\x60\x21\x5b\xc6\x5e\xcf\x6d\x04\x63\xec\x82\x33\x61\x54\x3c\x88\x42\x70\x35\x1d\x94\xc0\x10\x0c\x0f\x21\xcc\x3f\x1b\x2d\x8f\x4a\x63\x85\x71\xc8\x76\xf9\x5c\x2d\x2c\x10\x32\xf0\x66\x0b\x91\xaa\x66\x98\xd9\xcc\xda\x26\x77\x5f\x95\x4f\xa7\x91\xc3\xaf\xa9\x33\xe8\xc8\xaa\xb6\x8d\x4d\xba\x85\x0e\x33\x35\x2a\x09\x02\x6d\xde\x7d\x53\x53\x62\x84\xb3\x56\x7b\xca\x98\xf3\x8c\x60\xd6\xa6\x76\x36\x3e\xae\x59\x5f\x69\x98\x14\x60\xf1\x1e\x94\x28\x88\xd6\xb9\x71\x96\x55\xe6\x85\xa1\x2c\xa4\xf2\xb8\xd2\xe3\xb2\xf8\xc5\x0a\xe7\xe3\x41\x78\xf2\xc7\x24\x5b\x2b\xda\xcc\x7c\xb0\x94\x8a\xe0\x95\xb2\x6c\x61\xa7\xf4\xca\x30\x14\xaa\x31\x19\x75\xd5\xc0\xc2\x14\xd6\xa5\x22\x44\x9c\x06\xba\xd9\x10\x25\x49\x0a\x41\xd5\x62\x64\x0d\x4f\xdd\x99\xd6\x8d\xfd\xf2\xd4\x7e\xd8\x45\xab\x3b\x41\xae\x3f\x67\xe8\x02\xf1\x46\x50\x03\x9a\x69\xa7\xd0\x65\xbb\xb5\xa6\xd6\x98\xa4\xb6\x6c\x61\x5d\x96\x5c\xb7\xa1\xea\x2e\x36\x1d\x9e\x05\xe3\x1b\xf1\x89\xcb\x3f\xeb\xbe\xb0\x55\x94\xc2\x35\x2c\x76\x0e\x71\x65\x2e\x28\x17\x16\x0c\xb0\x4b\x90\x52\x8e\x3f\x8f\xe6\x58\xe0\x2c\x23\x19\x95\xf9\xe6\xf6\xc5\x3f\x7e\xbf\x74\xb4\xa7\x06\xb4\x52\x5a\x08\xd8\xcf\x34\x2f\xf2\xa0\xdc\x30\xc0\x93\x04\x20\x03\xd6\x64\x6f\x73\xe5\xdc\x00\xcb\x8b\x86\x29\x2a\x02\xd8\x08\xad\x13\x7b\x2c\x1b\xab\x2e\xe3\x64\x06\x65\x20\x27\x98\x0a\x46\xa4\x3c\x42\x17\x5c\x91\x13\xf4\x09\xcf\x6f\x41\xe1\x33\x28\xf2\x53\x63\xa1\xc5\x12\x69\xc9\xa9\x60\x54\x1d\x0c\x99\x05\xc0\x71\xab\x72\x9c\x70\x66\x90\x27\x12\x58\x58\xdf\x04\x98\x1c\x1d\x04\x83\x32\xc0\xd2\x9a\x4a\xd6\x4b\xba\x8e\x43\xe3\xa0\x0a\x40\x0e\x97\xbc\x2c\xc1\x8e\x9d\x4e\xe0\x45\xac\x88\x14\x01\x25\x02\x3e\x4e\x39\x91\x81\xb2\x8f\xbc\xcc\x9e\xd1\x09\xd1\x14\x32\x64\x7c\x12\x1b\x26\x0c\xd8\x84\xc3\x9e\xd0\x9d\x26\x82\x4b\x69\xa3\xdd\x4c\x3b\xcb\x63\x86\x6f\x2d\x12\xc0\x2e\xa2\x18\x9e\x2f\x1c\xbf\x5e\x02\x3c\x28\x1a\xd7\x2c\xf6\x8f\x89\x47\x3d\x68\xbd\x69\xb7\x8d\xd7\x75\x6c\x08\x09\x82\xa5\xb5\xc6\x42\x58\x6b\x25\x64\x6e\x0d\xc9\xdc\x8f\xd9\x04\xb6\x1f\x7a\x9c\x91\x80\x82\x2c\x8a\x9b\x29\xd7\xab\xe9\x5a\x08\x02\xa5\xf7\x0c\x8c\xd8\xa0\x42\x34\x80\xf8\x26\x08\x4e\x17\xc1\x8a\x78\x7b\xa3\xe9\x19\x24\x13\x49\x73\xcd\x3b\x01\x61\x93\xf1\x43\x3e\x77\x87\x35\x7a\x0b\x40\x62\xe8\x44\x13\x62\x60\xad\xd4\x5f\xb0\x43\xa8\x29\xa5\x8f\x57\x83\xab\xd6\x35\x02\xae\x5d\x40\x31\x9b\x11\x4b\xb8\xc3\x77\xbd\xf7\x97\xd7\xb7\xfd\xb3\xe1\xbb\x32\x38\xc7\x45\x72\x3a\x46\xe2\x31\x2c\x38\x1b\x32\xef\x4f\xf7\x39\xbe\xb0\x97\x08\xa7\x69\x89\xb0\x60\xa3\x81\x8d\x3b\xb0\xeb\xa9\x58\xe9\x49\xaf\x37\xf3\x81\x7e\x26\xe9\x75\x0b\x74\xf1\x4e\x62\x9f\x3a\xf9\x8c\x1a\x49\x5c\x73\xc9\x35\x6e\x5f\x3f\x95\x3b\xfd\x5d\x77\x0a\x36\x27\xa1\x92\x73\x07\x09\x77\x0a\x61\x5f\x95\x7f\x02\x34\xa0\x39\x33\x64\x73\x11\xb0\x76\x7c\x8f\x72\xca\x20\x5f\x62\xd9\xd2\xde\xc5\xf3\x58\xa7\xe0\xc5\xe0\xe2\x2e\xae\xcf\xf5\xc3\xe5\x5d\x8c\xb6\xde\xfb\x65\x79\x95\x8a\xb8\x85\x65\x66\xe5\x60\x8a\x65\xec\xa7\x4d\x3d\xf4\x2b\xd3\x34\xd1\x8f\x44\xfd\x64\xaa\x67\xee\x22\x98\xc3\xe2\x4e\x83\x8a\x4d\x46\xae\x80\x6a\x77\x32\xf8\xa9\xa1\xe4\x6a\x1c\xb1\xe3\x90\xad\xa1\x07\x5f\x73\x35\x48\xa5\x38\x32\xb8\xe2\x50\xa4\x11\x2c\xdb\xce\x2d\xa2\x6f\x4c\xce\xf4\x72\x0d\xe1\x6d\x5f\x02\xa7\x6c\x8e\x4f\xcc\xc7\x9d\xdc\xf4\xd7\xa1\x73\x5e\xb7\x55\x2e\x25\xea\x5d\x0d\x1a\xd6\xfa\xbc\xaa\x85\x7c\x59\xc8\x33\x99\x57\x88\x76\x0d\x3a\x13\x44\x59\xbe\x0a\xbc\x19\x3b\xd3\xed\xa0\x66\x8c\xdd\xe8\x2a\x36\x46\x3d\xa9\x2c\xb4\x85\xe8\x13\x45\x22\xdb\x08\x89\xdd\xa4\x21\x96\xcb\xb0\x66\x1e\x62\x38\x20\x1b\xcd\x12\xe6\xde\xd5\x5d\xa5\x07\x61\x2e\x9e\xa9\xec\xe2\x2c\x5f\x3b\xcb\x4f\x2c\x67\xd3\x25\x41\xf1\x27\x43\xd1\x3e\x7f\x06\x32\x7a\x1c\x76\xa2\x73\x71\xda\x70\xf6\x70\xba\x21\xb5\xad\x97\xd3\x58\x8e\xcf\x99\x7f\x2d\x14\x2d\x9e\x63\x5b\x24\x00\x84\x41\x87\xed\xd0\x84\x81\x77\x34\x64\x81\xcd\x53\x1a\xf1\x4d\x9f\x11\x87\x23\x02\x38\xa9\x9a\x9d\xda\x58\x23\x7f\x33\x47\x3b\x50\x8d\x9a\x57\xb3\x18\x09\xa4\xd6\x8f\x3d\x9d\x72\x86\x5d\x3c\xa5\xd3\x78\xac\x3b\x23\x04\x2e\x81\xf6\x02\x08\x04\xdb\x31\x79\x20\xd6\x05\x82\x03\x64\xb9\x20\x9e\x5d\x2b\x47\xec\x2b\xe5\x23\x56\x69\x66\xd1\x4b\xb0\x8f\x52\x29\xed\xec\x12\x53\xdb\xf2\xf2\x03\xbe\x83\x84\x49\x59\x29\x51\xb1\xc6\xb1\x82\x2f\xbb\x98\x09\x80\x12\x42\x73\x36\x74\xda\x96\x1d\xf9\x79\x4e\x92\x4d\xb2\xca\xae\xb0\xc0\x39\x51\x44\x2c\xb3\x68\xc7\x10\xc4\x60\xad\x75\x3b\x68\xfb\x35\xbb\x68\xb0\x41\xd8\xb4\x25\xea\xf5\x7c\x55\x96\x98\x9f\xc5\x5a\x09\xa9\x7a\x1a\x3f\x59\x30\x94\x35\x67\x61\xfb\x29\xa7\x61\x0d\xf6\x41\x52\xdf\xb6\x73\x7a\x9e\xec\xa8\xdb\x5a\x9e\x51\x64\x71\x7e\x25\x69\x51\xab\x47\xd9\x96\x0f\xb5\x8a\x97\xee\x84\x77\xbb\x40\x0d\x17\x09\x5c\x39\x54\x51\x08\x08\x50\x09\xc8\xfb\x26\x35\xa8\x39\xa7\x09\x84\x96\x26\x27\x5b\x10\xce\x66\x33\xce\xf5\xe2\x49\x85\x73\x0f\xd5\x53\xc5\x81\xaa\x2c\xd7\x0a\x1e\xb7\xab\x1c\x95\xbd\x44\xb3\x6b\x89\x66\x0d\x33\x90\xa1\x4e\x22\x2a\xa9\x67\x16\x9f\xd9\xe6\x39\xc4\x13\x84\x10\x2a\x7b\x45\x5a\x90\x57\xb8\xfa\x29\xf3\xff\x8a\x39\xb8\x23\xea\x90\x54\x9b\x62\x43\x8f\x02\x60\x76\xb0\x72\x66\xa1\x34\x60\x4d\xb3\x30\x5a\xe3\x49\x33\x45\x91\x06\x17\xa6\x8e\x11\xc4\x68\x2f\x78\x81\x1e\xa9\xd4\xba\xf0\x90\x81\xab\xc9\x17\x4f\x52\xdc\x16\x3c\x3a\x80\xb7\x20\x9b\x43\x16\xe3\x9c\x2a\x84\x83\x19\xde\x01\x67\xb8\x76\x71\xfc\xe6\x3c\xeb\x0f\x60\xc6\x8d\xe9\x02\x4d\x59\x7b\x2b\x0e\xcd\x06\xc6\x9f\xb2\x91\x6d\x33\x02\x02\xb7\xf8\xd3\xe6\x04\x04\x1a\x4f\xa8\x61\x36\x9e\xb9\x7d\x52\x00\x6a\xb6\x36\x58\x1c\x0f\x00\x5b\xa1\x52\x55\xee\x16\x8b\xde\xb1\x22\x21\xa0\xdc\x88\x4e\x19\x01\xe5\xeb\xbb\x48\x09\x68\x03\x56\x5b\x16\x22\xea\x3e\x69\x16\xb4\x6e\x7c\x09\x54\xee\x62\x2f\x42\x49\xe9\xaa\x55\x52\x7a\x6d\x89\xce\x41\x09\xe8\x8d\x23\x14\xd6\x51\x07\xcb\x30\xb3\x90\x8a\x82\xa8\xd1\x38\xb5\x8d\x54\x39\x3f\xe3\x0a\x42\x83\x12\x40\x5b\xaf\x85\xab\x0e\x59\xb3\x04\xb2\x9c\x27\x6e\x1b\xe5\xb3\xd3\x84\xe8\xe0\xfc\xb9\x59\x58\x8b\xd6\xcf\x3e\xec\xdf\x28\xcb\x16\x37\xbd\x2a\x62\x96\xae\x8a\x16\x05\x04\x04\x8f\x4d\xe2\xa6\x1b\x4e\x65\xc7\x18\x9c\x95\xe7\xc2\x5e\xba\x3b\x54\xed\x6a\xdc\xb9\x73\xc8\x92\x97\x91\x2d\x37\x76\x3e\x77\xa7\xc6\x57\x3c\x4e\x9b\xe0\xc1\x02\xce\xc8\xce\xd0\x51\xaa\x49\x16\xba\xf1\x03\xf0\x52\xd9\xa1\x63\x53\xfe\xd0\x63\x66\x55\xb6\x24\x9a\xb0\xc5\xd9\x7f\x82\x49\xaf\x8b\xe1\x1b\x60\x5b\x0a\x8b\x63\x48\x43\xbb\x01\x80\xf7\xba\xba\xef\x31\x1f\xf6\xa2\x5d\xc1\x52\x22\x18\xc1\x6a\xf6\x7c\x61\x3a\xa7\xdb\x1a\xa7\x9f\x2d\x64\xe7\x74\x27\x00\xee\x95\x30\x98\x35\x23\x60\xd6\x08\x27\x29\xe1\x7c\x6b\x8a\x63\x53\xe1\x8c\x32\x93\x6e\x1d\x2a\xdd\x2a\x92\xa7\x59\x99\x7b\x9a\x98\xa6\x06\xab\x4f\x2d\x9a\x49\x1f\xf6\x10\x04\x79\xc5\x92\x7c\x11\xc1\x43\x02\x3f\x8e\x02\x74\xac\x91\x41\x0f\x5c\x63\x37\xaf\xf1\xa3\xc1\x73\x3b\xc3\x0a\x9f\x9a\xaf\x97\x0d\x3b\x02\x16\x81\x04\x44\x0f\x0f\x33\x37\xee\x60\xcb\xbd\x7c\x11\x6f\x13\x3d\xf3\x35\x3d\x22\x47\xe8\x7d\xc6\xc7\xf2\x00\x99\x62\x77\x07\x46\xb0\x87\xe7\x06\xe2\xf3\x9b\xd7\x1f\x22\xf5\xdb\x8c\x90\x5a\x66\x48\xf1\xb6\x7d\xa8\x00\x14\xa1\x57\x1a\x09\x64\x85\x3c\xba\x79\x71\x68\x67\x8b\x08\x9d\xfe\xf6\x17\xfb\x43\x4b\x2d\xca\x15\x25\xa0\x43\xbb\x08\x5b\x54\xcd\x8b\x58\xa4\x99\x4d\xcb\x35\xa6\x8e\x8a\x1e\xbb\xcc\xe4\x32\x64\x3f\xf0\x47\xf2\x40\xc4\x01\xc2\x0a\xe5\x5c\xab\x21\x81\x9f\x1d\x52\x07\x23\xb4\x24\xe3\x4f\xc5\xe8\x02\xe7\x24\xed\x83\x30\x1b\x24\x48\x58\xc3\x8f\x75\xd9\x34\xa1\x4f\x00\x90\x82\xd9\x06\xe7\x7f\x1d\x32\x53\x59\xda\xc4\x70\x00\xd7\xa1\x6e\x62\x70\x25\xfe\xde\x3b\x94\x7e\x7f\x84\x6e\x35\xa5\x53\x19\x8f\x37\x48\x46\x6d\x1b\xdb\x90\x4d\x05\x2f\xe6\x5e\x17\xe7\x63\x30\x02\x18\xc7\x52\x83\x43\x09\x06\xe3\xbc\x49\x09\x4e\xb5\x4c\xbf\x9c\x70\x22\xd3\xd1\x2b\xb3\x88\xc6\x49\x2c\x21\x01\x69\xee\xe0\xe3\x47\x6c\x84\xa0\xf1\x03\x05\x79\x2c\xed\x70\x76\x4f\xe6\xa4\x3a\x23\x12\xb4\x4b\x6f\xbd\x8b\x42\x9a\xe3\xb0\xf9\xc6\x71\x2e\xb3\xad\x78\xfb\xa7\xb3\x11\x36\x47\xe4\x97\x9d\xdb\xd8\x11\x57\xa0\xce\xd4\x55\x7e\x2a\xab\x8b\x23\xa4\xee\xf1\x39\x95\xb5\xbb\x2a\xc4\x9c\x03\x4f\xcf\x16\x2e\x83\xc0\x26\xbe\xce\xf9\xbc\x30\xf1\x31\x34\x0c\x97\x68\xa4\x6c\x2a\xd5\x27\xac\x92\x99\x56\x60\xca\x04\xd0\x1d\xc5\x0d\x95\x5c\xf9\x69\x2d\x31\x0d\x33\x38\x0d\x7b\x6f\x31\x4d\x76\xb0\xcc\x19\x04\x19\x17\x6e\x08\xff\xca\x32\x94\xeb\xfe\xa2\x7a\x06\x81\x7d\xc5\x7d\x62\x9f\x40\xad\xdc\x15\x54\xb4\x6a\xfc\xdd\x68\x2b\x06\xd3\xdd\x79\x44\xd2\x16\xd9\x4c\x67\x36\x7f\xb1\x7c\x11\x59\x09\xa9\x91\xe5\x14\x82\x6e\xa4\xc5\x5a\xfb\x30\x54\x2f\x28\x2d\x37\x39\x9e\x6b\x71\x44\x71\x7d\x4b\x8a\x29\x39\x40\x8f\x9a\x17\xa8\x42\xe8\x7b\xa4\x10\xd4\x9d\x7d\x30\xb7\x74\xa1\x0e\xb0\x74\x1c\x87\xf8\xad\x09\x0e\x70\xa4\x8d\xe3\x10\x27\xaa\xc0\x3e\xc0\x09\x68\x22\xa3\xec\x5e\x77\x66\x70\xe4\x9c\x83\x4e\x10\xa8\x2a\xee\x52\xcb\xa2\x3d\x5d\x49\xd8\x5b\xec\x72\x7b\x55\x94\x55\x27\x8d\xb2\x69\x90\x2b\xde\x6c\x6d\xea\x02\x05\xd7\xf8\x65\x37\x38\xbb\xc6\x4f\x9d\xec\xb3\xc9\xb7\x4b\xf2\x08\x5b\x3f\x5f\x25\xc0\x46\xc1\x9c\x36\xa0\xce\x4a\x4f\x61\x16\xbf\xb5\x04\x00\x18\x87\xa9\xb9\x83\xad\x34\xf5\x5f\xfe\x2f\x03\xc3\x6b\x96\xe6\xbf\x10\x17\x43\x66\x7e\x3f\xf0\xb0\x7d\xfa\x85\x12\x0f\x03\xe7\xa4\x44\x0c\x10\x71\x6e\x31\x64\xb7\xd8\xdc\x50\x83\x7d\xe2\x51\xcb\xf4\x18\x82\x02\x47\xb5\x8a\x33\x39\x66\x78\x0a\x48\x2b\x07\x10\x61\x03\xe2\x6a\x69\xbb\x30\x24\x6d\xa0\xcc\x81\x5b\x69\x66\x69\xd3\x0a\xca\x8a\x0c\xd0\xa7\x11\x65\x2d\xd0\x43\xe9\xa6\x6d\xa6\x7e\x57\x0e\x68\x33\x89\xfd\xb6\x77\xf3\xe3\xe8\xba\x7f\x73\x79\x77\x7d\x1a\x89\xed\xa7\xe7\x77\x37\xb7\xfd\xeb\xc6\x67\xa6\xa4\xe7\xe0\xf2\x62\xf4\x97\xbb\xfe\x5d\xcb\x23\xd7\xc0\x79\xef\x7d\xff\x3c\x7c\xe5\x2f\x77\xbd\xf3\xc1\xed\x2f\xa3\xcb\x0f\xa3\x9b\xfe\xf5\x4f\x83\xd3\xfe\xe8\xe6\xaa\x7f\x3a\xf8\x30\x38\x35\x65\xeb\x83\x77\xaf\xce\xef\x3e\x0e\x2e\x46\x2e\x7c\x31\x7c\xf4\xf3\xe5\xf5\x8f\x1f\xce\x2f\x7f\x1e\x05\x5d\x5e\x5e\x7c\x18\x2c\x2f\x96\xdd\x3c\xdf\xd6\x1a\x0c\xc1\x55\x15\x28\x98\x81\x20\x34\x5e\x58\xe2\xa5\xff\x00\x33\xe7\x95\xa1\xb8\xc3\x03\xf7\x97\x29\x6b\x72\xa8\x99\x9c\xb3\xa0\x97\xfc\x61\xc8\xbc\x8b\xc3\x5f\x9b\x0a\x4f\xa5\xab\x45\x1c\x8d\xf6\x04\xf5\xe0\x34\x80\x4a\x10\x75\x0a\x99\x42\x7e\xa4\xce\x29\x06\x94\x06\x95\xe7\x6d\x35\xf5\xea\x96\xc6\x0d\xda\x39\xc1\x10\xac\x85\x3f\x5d\x46\xef\xae\x44\x7b\x4c\x0b\x27\xc8\xf1\x60\xdd\xac\x1e\x17\x80\x6d\x2c\x18\xce\x6b\x15\x97\x0d\xde\x84\x45\xa2\xb0\x15\xac\xa3\x16\x23\x12\x8a\x5b\x9e\x11\xf4\xe3\x9f\xcb\x41\x81\xb5\xd3\x5a\x0f\x8b\x1a\x1c\xb7\x7d\x20\x0a\xb3\xaa\xab\x08\x30\xea\xc9\x1d\x64\x6b\x86\x82\x93\x69\xab\xa6\x80\x69\xba\x60\x41\x6e\x6b\x64\xa7\xb6\xe5\xc2\xd0\x21\xaa\x50\xf1\x09\xba\x21\x19\x49\x54\x59\xf2\x19\x76\x71\x9e\x15\x53\x5a\x2b\x9a\x34\x26\x33\xfc\x40\xb9\xc3\xeb\x33\xb0\x86\xb0\x8e\x56\x78\x42\x87\xa8\xf5\x28\x9c\xa0\x5e\x9a\xca\x98\x85\x45\x94\xe3\x98\xe2\x61\x3c\xec\x30\x1d\x95\xa5\x9e\x31\x36\x1a\x0e\x1a\x6e\xbd\xad\x10\x52\xe4\xfd\xc8\x91\xd8\x68\xa3\x6b\xf8\x16\xcb\xfb\x86\x1a\x69\x8d\x37\x9b\xa5\x9f\x2d\x7b\x6c\x2f\xcc\xd6\xd8\xa9\x5f\xeb\x11\x1c\x80\xcd\xfa\x6c\x85\xa7\x59\xd1\xa5\x9b\x71\x56\xc1\x10\xee\xdc\x5f\x84\x41\xfc\xf4\x16\xdb\x66\x39\x08\x8e\xca\xc8\xd3\xe5\x1a\xf3\xb8\x82\x4f\x2f\xfd\x97\x4b\x85\xa5\x51\xb0\x6e\xeb\xda\x71\x6b\x89\x78\xd6\x96\xdb\x5d\x44\x02\x74\x36\x9a\x80\x39\x1d\x53\x66\x31\x3b\x89\xb7\xf7\xba\x8a\x2b\xfa\x8c\x79\x1c\x69\x3c\xe6\x0f\x91\xca\x95\x9b\xf2\xf0\x8d\x67\x37\x30\x14\x6d\x73\x68\xfd\xe9\xb1\x1f\x76\xdc\x6b\x77\x5e\x6e\xf5\x57\xcb\x4c\x21\xd7\xa1\xbe\xe8\x26\xaa\xc5\xb8\xd4\xc5\xb1\xa1\x4b\x93\xcd\xa2\xcf\xfe\x41\xe9\xaa\xe6\x22\xf0\xe0\xb7\xd8\x70\xba\x1a\x9b\xaa\x0b\xd6\x08\xc5\x1a\x9a\xc8\xd7\xf7\x70\x07\xad\x6f\x0c\x9b\xe3\x4a\x45\xc7\xeb\xb3\x06\xd5\x45\xfe\x84\xb0\x64\x8b\xa9\x2e\x66\xea\xb9\x05\x23\x3d\x40\xd8\x24\x11\x95\x12\x88\x2c\x92\x99\x01\xf4\xd4\xec\xfc\x60\xc8\x1e\x83\x0d\x89\xc2\xec\x7a\x61\x4b\x00\xf7\xf0\x59\x33\x28\xfa\x10\x05\x2f\x82\x98\x45\x21\x92\x2e\x20\x04\x63\x70\x2f\x31\x66\x57\x10\x78\xb0\x5f\x5b\x90\xfa\x06\x80\xe2\x0d\xf5\xdb\x9a\x60\xc5\xfd\xdc\x02\x34\xef\x5d\x41\x89\x2f\x19\x42\x00\x28\xde\x34\x82\x1d\xe0\x89\xbf\x0c\x88\xb8\xc9\x9d\xcb\xc7\x36\x93\x55\x4f\xd7\xad\xf6\x1f\xdc\x8c\xfe\x60\xac\xf1\x45\x4b\xea\x73\xd0\x9a\x87\x01\x42\x87\x50\x6d\xd4\xe6\x59\x5a\x47\xa7\x44\x87\x28\xa3\xf7\x04\x7d\x05\x71\x4c\xbd\xab\xc1\x57\x07\xe8\xab\x30\x97\xe3\xab\x8d\x0e\xa0\x1d\xb7\xc5\x14\x07\x0d\x24\x0a\xe8\x8d\x8f\x1d\xec\x55\xe5\x24\xda\x3d\xb3\x07\x11\xb5\x9d\x43\xfd\x65\xf4\x0d\x65\x8a\x08\xc0\xc8\x36\x71\x9f\x3e\x9c\xd0\x3a\x46\x8c\x5c\x48\x65\xc3\xda\xa5\x43\x36\x5e\x54\x5d\x1f\x07\xde\xf7\xd1\xf9\x94\x6e\x8d\xfb\xac\xdb\xab\x27\xff\xed\x38\xcc\x6d\xf9\x7d\xb0\x22\x9d\xb0\xe7\x6b\x0b\x96\x5c\x4c\xb6\x9c\x97\x7d\x7c\x68\xd3\xac\x22\x2b\x92\x5b\xcc\xc6\x4d\x59\x25\xff\xbc\x35\x72\xeb\x10\x54\xd9\x6b\x5a\x11\x1b\x4f\xdb\x22\xf8\xee\xa9\xec\x69\xa9\x6c\x17\xf1\xc4\xf1\xe0\xd6\xbf\x40\x4f\x8d\x1c\x17\x34\xe3\xcc\x90\x5a\x99\xf0\x0c\x3e\x02\x07\x5f\x5d\x55\x63\x4d\x4f\x68\xb0\x26\xab\x5d\xa1\x37\xc6\x9d\x6e\x9c\x91\xf5\xb1\x56\x87\xda\x53\x16\xa9\x94\x53\x93\x3b\xa4\x68\x4e\x0e\x10\x54\xc6\x2d\x43\x00\xec\x79\x05\x72\x83\x3b\xce\x96\xbf\x33\x9d\x88\x64\x46\x1f\xd6\x4b\x90\x5a\x57\x1a\x6f\xa3\x91\x2d\xe2\x2f\x2e\x7a\x9f\xfa\x67\xa3\xfe\xc5\xed\xe0\xf6\x97\x51\x3d\x14\x23\x7e\x7c\x7d\xfa\xc3\xe0\xa7\xfe\x59\xf8\xc2\xcd\x2f\x37\xb7\xfd\x4f\xa3\x8f\xfd\x8b\xfe\x75\xef\xb6\x7f\xb6\xd4\x94\xba\xac\xb3\xa6\x12\x14\x36\x74\xbb\x41\x7d\xf3\x20\x72\xc6\x0e\x09\x00\x05\x5a\xdc\x7f\xa0\x92\xda\x24\x5d\x2b\xa2\xde\x0d\x9c\x69\xb4\xa1\xf7\x93\x20\x7f\xe6\xc0\x20\xab\x95\x9d\x50\xeb\x4e\x0a\xc5\x57\x1b\x75\xc1\x52\x13\xa8\x89\x82\x1a\xc7\x47\x0d\x9d\xd8\x05\x3b\x41\x3d\x4b\x1d\x4d\xed\x33\x8e\xb4\xf0\x4c\x84\x19\xbd\x09\xc9\xf0\x43\x47\x87\xa8\xba\xc6\x27\xc8\x00\x42\x07\x35\x31\x7c\x83\x20\xf2\x61\x41\xd8\x57\x0a\x91\xcf\xf3\x8c\x26\x54\x05\x89\x37\x5c\x58\xa7\x83\x71\xaa\x41\xf4\xd7\x0a\xe2\xda\x59\x8c\xc6\xce\x75\xfe\xd0\xbf\x5c\xd7\xf6\xfd\x89\x52\xdc\x26\x2f\xae\x44\x19\xdd\x81\x62\xdf\xe2\x4a\xad\x01\xa2\x6e\x30\xba\xa7\x30\x0f\xd4\x23\xe0\x6d\xf2\x8c\x0d\xf4\xc0\xae\x92\xc1\xa3\xb9\x11\x37\x2b\x50\xbd\x3c\x7a\x24\x3a\xd7\xcb\xc3\x47\xba\x51\xea\x0b\x07\x81\x44\xe8\xfb\x3b\x2b\x04\x3c\x5a\xd3\x8d\x5f\x03\xf4\x64\xf7\x06\xe6\x10\x09\x92\x73\xa5\x15\x30\xe3\x27\x3f\xd0\x42\x15\xc5\x19\xfd\x07\x20\xc0\x08\x72\x14\xc4\x15\x40\x82\x4d\x1a\x06\x54\xdb\xec\xec\xa7\x2f\x08\x5c\xd6\xc1\xab\x95\x02\x76\xca\xfb\x45\x6b\xd9\x93\x17\xad\x36\x1b\xaf\x58\x5b\x89\x87\xf5\x8a\xaf\x46\x44\xb5\xba\xf0\x2a\x54\xa1\xc7\xb2\xa5\xea\x6a\xd7\x31\x3e\x4f\xed\xd5\x7a\x02\x7a\x85\xe4\x5e\xb6\xee\x6a\x65\x30\xaf\xa7\xf8\xea\xca\x75\x7b\xbd\x08\x03\x0d\x03\xed\x50\x74\xd5\xfb\x58\xa0\x2e\xca\x7a\xd7\xa1\x0b\x11\x8b\x1c\x2d\xfa\x50\xf9\x7b\xb1\x59\xbb\xc5\xf2\x7e\xeb\xee\x6e\xb1\xbc\x6f\xe9\x6a\xd5\xcd\x79\x1a\x39\x72\x2a\xcb\x66\x83\xd7\x2c\x84\x57\x58\xbe\xbf\xfd\x3e\xea\x3f\x10\xa6\x76\x22\xcc\x41\x13\x0d\x19\x84\xdd\x4c\xb2\x06\x34\x7d\x70\x56\x72\x24\x5f\xbc\x2b\x08\x9b\x50\x02\x03\x63\x25\xea\x91\x10\xe6\xdc\xe8\x6d\x1e\x4b\x3d\xb5\x6e\xdb\x03\xaf\xd6\xd7\x65\x45\x74\xad\x5d\xed\xb2\x78\x4a\x19\x19\xc7\x13\x88\xdb\x5f\x4b\xfb\x8b\xa4\x22\xa3\xf2\x85\x75\x75\x8d\x24\x5f\xdd\x73\xd3\xe7\x0c\xcb\x6a\x97\x2b\xb7\x7c\x83\x04\xfa\xa8\x99\x8f\x04\xf2\x4b\x76\x52\xd0\x70\x8d\x3c\x42\x18\xc8\x9d\xc8\x20\x0a\x73\xa9\xca\x6f\x0a\xb7\x14\x22\x2b\x6d\x40\xb8\x83\x40\x63\x06\x73\x34\x64\x67\x64\x2e\x08\x94\x12\x3b\x41\x57\x19\xd1\xd7\x65\xa1\xaf\xcc\x22\xcb\x46\xbe\xaa\xba\x54\x04\xb7\xf1\xa7\xb5\x00\x72\x9e\x7c\x5e\x4e\x50\x5b\x3e\x31\x07\xb6\xb3\x7c\x66\xc1\x1a\xec\x3e\xfb\x33\x58\x5f\xb0\xb7\x81\xd5\x25\x16\xb9\x41\x67\x5a\x98\xd0\x3b\xd0\xbb\x71\xa8\x1b\x48\xfa\x0f\x7d\x55\x0b\x22\x67\x3c\x5b\x3a\x85\xb5\x21\x8c\xd6\x99\x83\x5b\xca\x27\x9c\x84\x8d\x8a\x1a\xb5\x85\x66\x76\xb8\x8c\xce\x4c\x13\x8d\x57\xe0\xb2\x29\x7a\x40\x5d\xef\x2a\xb7\xd0\x6f\x36\xcc\xc8\x0e\x0d\x1c\x40\xa5\x5d\x22\x84\x61\x29\xed\xbc\xa5\x04\xba\x30\x8e\x2a\xff\x79\x50\x12\xce\x47\x15\x53\x25\x91\x54\xa2\x48\x00\xa4\x70\x46\xc4\x5a\xc0\x88\x3e\xf6\xbc\x6c\x42\x0f\xb8\x99\xb5\x59\x2c\x5d\x90\x53\x6c\x0c\x85\x8c\x00\x64\xec\x16\x9b\x29\x37\xca\xd0\xed\x0c\x74\x5b\x7f\x41\x5c\x0d\xee\xc9\xdc\x06\x11\xb5\x44\x13\xd8\x43\x92\xac\x0f\x49\x62\x81\x95\x3d\xed\x01\x80\x90\x12\x90\x31\x58\x7a\x06\xaa\x97\xbc\xb5\xe6\xad\x4a\x74\x88\x76\xa7\x53\x56\x43\xf4\x85\x3e\xf7\x67\x5b\xba\x16\xf4\x64\x16\x23\xc8\x13\xdb\x26\xbc\x20\x9a\xbf\x31\x8b\x42\x9b\x24\x45\x26\xed\xd1\x00\x26\xda\xb5\xf3\x26\x61\x53\x27\x71\xc8\xae\xf5\x28\xcc\x17\xa5\x8b\xb9\xac\x41\x46\xca\x6a\x09\x13\x84\xed\x57\xb0\xe8\x6d\x11\x3e\x72\x14\x94\x60\x6c\x9b\xd8\x0e\x4a\x7d\xbc\x37\xef\xa0\x49\x86\xa7\x0e\x2c\x00\xca\x7b\x4e\x4a\x3d\x49\x0b\x7b\xa6\x5e\xa6\x49\x5c\x35\x97\x07\x55\x36\x19\xd5\x8b\xca\x05\x71\xb0\x8d\xf0\x99\xe7\x5f\x4d\xcc\xd5\x69\x62\xcc\x59\x2f\xe4\x90\x05\x7d\x2c\x41\xf9\x32\xda\xd0\x86\x62\x3f\xec\x33\x4d\xbd\x45\x1f\xfe\xc9\x9a\xeb\x29\xda\xe9\xe5\x78\x0e\x76\x2b\x73\x06\xf9\xc4\xdf\x3f\xb7\x36\xe4\xf8\x08\x46\xfc\x3f\xff\xfd\xd7\x23\xba\xd4\x26\x19\x1c\xca\xd2\x37\x57\x3a\x60\x82\xf8\xb7\xa0\x4a\x24\x86\x8b\x02\x55\x58\x60\xe5\x48\x05\xb8\x35\xdb\xc4\x09\xcd\xb0\x7c\x3a\x67\x70\x23\xd0\xbf\xb1\x23\x85\x5c\x7d\x95\x5b\xd8\x0c\xd2\x64\xdd\x68\x12\x2a\x24\x11\x86\x04\x3d\xc0\x41\x43\xe1\x1d\x88\x0a\x5a\x61\xdd\x26\x39\xa6\x6b\x45\x97\xea\xf7\x9b\x31\x83\x22\x33\x1b\x9e\x12\x31\x4a\x8b\x28\x5c\x71\x55\xdb\x57\xfa\xa3\xb3\x42\x2d\x56\xb7\x2f\x33\x9c\xdc\xaf\x83\xd3\xa4\xdf\x6f\x69\x76\xb5\x28\x13\x38\x95\x63\x71\xa6\x05\x05\x89\x54\x50\x90\x6c\x94\x53\xa4\x67\x02\x6b\x64\x50\x39\x29\x10\x47\x2d\xef\x34\x58\x8d\x30\x72\xa8\xa5\xe9\x98\x8d\x47\xbf\x4d\x8f\x86\xec\x83\x81\x8f\x06\x51\xd9\x0c\x20\x81\xda\x45\xe4\xf3\x9c\x4b\x12\xe5\x09\x34\x20\xda\xda\x4c\x1e\x3b\x8c\x66\x29\xaa\x52\xb9\x6a\x2b\x21\xea\xc5\xf1\xac\xea\x1b\x5e\x9f\x72\x33\x05\x6e\x75\x4f\x27\x74\x4e\x35\xed\x8c\x1a\x4f\xda\xd3\xd5\x14\x2d\xa3\x08\x00\xd9\x40\x65\x8b\x03\xe4\xa7\x57\x21\x88\x8c\x3c\x10\x81\xa7\x5a\xc6\xc2\x34\x0b\x71\x8b\x63\xe3\x48\x0b\x3b\x59\x75\x80\xca\x24\x1d\x60\x0b\x28\xad\x8e\x20\x4e\x65\x68\xa2\xc5\x38\x18\x7c\xeb\xbc\x85\x26\x57\xe8\x1a\x72\x53\x2f\xc4\x6f\x5e\x10\x85\xc8\x67\x45\x98\x71\x22\xdf\xba\x8c\x8f\x7a\xc0\x2b\x6a\x0e\x8e\x6f\xbf\xd4\x9f\xbc\xd2\x6c\xcf\x65\xf2\xb9\x94\x96\x54\xda\x1b\xc6\xd6\x41\x9b\x61\x96\xda\xbc\xa5\xb2\x9a\xba\x99\x9d\xb1\x5c\xf8\xe8\x54\x9b\x7d\x13\x00\x5f\x9a\x36\x0d\x42\x27\x5c\x64\x4e\x92\xd7\xb2\x24\x38\xf4\xb8\xd0\x22\x55\xc1\x14\xcd\x34\x71\xd8\x31\x68\x3d\xaf\x60\x1e\x7a\x06\x62\x29\xdb\xd0\x4d\xa8\x94\x94\x4d\x47\x76\x25\x5d\x0a\x4e\xb7\x8b\x21\xa6\xa9\x4f\xa6\x29\xf3\xe3\x7b\xd7\xd0\x72\xcb\xa4\x21\x6b\x3d\x7d\x9f\xfc\x03\xa2\x20\xe3\x6e\x32\x16\x32\xc4\xe5\x0c\x8d\x68\x1a\x15\xe7\x83\x89\xae\xa3\x56\x83\x6c\x56\xcf\xa7\x2d\xaf\x10\x89\x24\xa4\x2c\x99\x94\x03\x88\x0d\x55\x2d\x19\x4b\xb2\x35\x53\x69\xc0\xbc\x88\x66\xcb\x18\xf8\x8c\xcb\x4a\xd2\x13\x76\xdd\xd9\x00\x58\x9c\x65\x63\x9c\xdc\x7b\xf1\xd8\x2b\x89\x5c\x38\x18\x58\x2d\x36\x42\x9d\x0b\x43\x5c\x7a\xa0\x09\x48\x37\x26\xa1\xd8\x10\x93\x41\x54\xb0\xc3\x2e\x3b\xb7\x25\x0d\x99\x29\xb2\x07\xea\xa4\x19\xbd\x89\xa6\x4d\xc9\x3c\xe3\x8b\xbc\xe5\x3e\xab\x26\x94\x6c\xe3\x1b\x6e\xcb\x67\xd9\xe9\x55\x56\x61\x7a\x6b\x5f\x66\xb5\x08\xf8\x1d\xe0\x7b\xac\xc1\x25\x3f\x66\x7c\x0c\x76\x29\xab\x17\xba\xa8\xee\x20\xb8\xb8\x7a\x9e\xd7\x8d\x35\xaf\x9e\x48\x2a\xe7\x19\x5e\x2c\xeb\xc1\x44\x39\x3f\xed\xbe\x99\x4c\xd2\xd5\x66\x9b\xee\xf1\x81\x8d\x9f\x3f\x49\xe9\x48\x27\x09\xd8\x1a\x92\xc0\xbf\xac\xf9\x83\x38\xfb\x87\xc9\x2f\x39\x9a\x0b\xae\x25\x05\x3e\x64\x0a\x4f\xdd\xee\x5a\xe9\x92\x3f\x32\x22\xe4\x8c\xce\xa3\x02\x38\x5b\x47\x24\x5a\x92\xb6\xff\x63\xe2\xef\xd6\x60\x9e\x7c\x7e\x68\x52\xc5\x35\x81\xc8\x39\x4e\x4a\x7b\x55\x92\x61\x29\xe9\x64\x11\x64\x78\xfb\xe0\x2e\xc8\x18\xf0\xc5\x1f\xe2\x22\x2a\x8d\xae\xbf\x28\xa3\x78\x37\xe9\x96\xdb\xa7\xb3\xdc\xc5\xa7\x90\xa6\x21\xa0\x0e\x94\x3e\xad\x25\xf5\x77\xac\xce\xba\x6d\x96\x8b\x1d\x99\xcd\xf5\xd8\xdd\xc0\x5c\xa6\xf6\x66\x79\x9b\x4b\x41\x22\xda\xcd\x1c\xa5\xb0\x6b\x87\x6d\x15\x2d\x9f\x36\x1e\x4e\x03\xe6\x98\xda\x2f\x7c\x5e\x47\x94\x05\x8c\x23\x6c\x04\xb3\x46\x5a\xf9\x73\x46\x47\x7d\xbe\x7c\x5a\x3a\xa4\x0a\x97\x1d\x1c\x20\xb9\x15\x60\x4b\x77\xd2\x3e\x23\x19\xd9\x49\xb4\xe2\x06\x74\x5e\xf5\x6e\x07\x14\xbe\x94\x88\x4a\x00\xdc\xd5\x66\x92\xf5\x69\xbc\x3a\xaa\x92\xba\x77\x36\xa8\x0d\x22\x3b\x5b\x10\x29\x9a\x47\xfe\xb3\x19\xa8\x0d\xee\x6c\x22\x30\xcd\x39\x53\xd8\xfa\xae\xaa\x61\x13\xb4\x95\x69\xc1\x9e\x98\xb2\x1b\xb7\x8f\x0e\x3b\xc4\x0b\xbb\x4e\xfa\x7a\xbd\xc7\xe0\x85\x43\x21\x5b\x46\xf7\x91\x74\x89\x47\x58\x79\x44\x37\xe2\xa6\x6d\x57\x62\x37\x52\xb1\xbe\x44\xc5\xd1\x94\x28\x53\x07\xd4\x17\x3b\x7d\x83\x64\xb2\xb3\xd8\xee\x9d\x6e\x45\x33\x13\x58\xef\x54\xdf\x10\x25\xdd\x8d\x57\x43\x13\xb3\x3b\x75\xe8\xd2\x54\xcb\xa4\xcf\xd7\xbb\x45\xaf\xe3\x24\x5f\x5b\xab\xca\xd3\x5d\xb0\xab\xe9\x65\x27\xf4\x01\x28\x27\x18\x02\xdb\x0b\x0b\x8c\x0a\x87\x37\xf0\x19\xd6\x54\xf9\x15\xde\x58\x3b\xbc\x4e\x7e\xd8\xda\x72\x3e\xc5\xf6\xda\x68\xca\xce\x9b\xfb\x94\xa4\xb6\xee\x58\x76\xa1\xa3\x3c\xb1\x51\xc4\x52\xe3\x4a\xed\x7a\x1f\x14\x81\x50\x9b\xff\xb5\x74\x2c\xda\x2d\xdb\xe5\x21\x6b\xc2\xc5\xde\x3e\x0f\x23\xe3\xc6\x3b\x30\x9a\x0b\x32\xa1\x9f\x37\x12\xc5\xaf\xe0\x53\xab\x5e\xea\x65\xae\x20\x6d\x83\xb5\x03\x90\xb9\x4b\x6d\xdf\xad\xf4\xa3\xa0\x4a\x11\x36\x64\x00\x2b\x2c\xff\x78\x72\x7c\x3c\x2e\x92\x7b\xa2\x8e\xef\xc9\x02\x71\x11\xfd\xb4\x29\x8a\xc7\xee\x51\xc1\xcd\xbe\xce\x94\x9a\xcb\x93\xe3\xe3\x29\x55\xb3\x62\x7c\x94\xf0\xdc\xc4\x1b\x71\x31\x35\x7f\x1c\x53\x29\x0b\x22\x8f\xbf\xff\xee\xbb\x72\x8b\xc7\x38\xb9\x9f\x9a\xbc\xc8\xba\x15\x27\xda\xf2\x9b\x7a\xe5\x9c\xf5\x91\x56\x05\x67\x23\xf2\x59\x13\x69\x53\x6d\xe6\xae\x90\x13\x12\xf5\x7e\xbe\x41\x72\xc1\x14\xfe\x7c\x82\x3e\x99\x42\xda\xe8\x07\x5e\x08\x89\xce\xf0\xe2\x90\x4f\x0e\x73\xce\xd4\x0c\x7d\x82\xff\xda\x9f\x1e\x09\xb9\x47\xbf\x10\x2c\xec\xfe\x1a\x81\xc5\x83\x35\x83\x17\x42\x14\x4c\xda\x0a\xdd\xdf\xfd\x87\x2b\xd1\x7d\x82\xbe\x3d\xfe\xee\x3f\xd0\xef\xe1\xff\xff\xff\xe8\xf7\x2d\x9a\xda\x7a\x39\xb7\x65\xf9\xf4\xc6\xd6\x60\xa5\x36\x28\x56\x74\x2a\x78\xb9\x53\x8d\x2d\xdf\xd3\xe4\x9e\x4f\x26\x23\x45\x73\x62\x82\x43\x47\x58\xd4\xb0\x94\x36\x04\x30\xa1\xb6\xb4\x8a\xa9\x4e\x59\x42\x9b\xda\x4e\x4d\xea\x87\x3b\x6e\xb2\x28\x4b\x4b\x80\x4f\x25\x2a\xd7\x41\x25\x7c\x45\x52\x7d\x2a\xd6\xf1\x9f\x38\xeb\x4c\xbd\x00\x5c\x99\xe6\x14\x96\x0b\xf2\x7e\xd0\xd0\xa9\xcf\x57\x95\x2e\xaf\x47\x1b\x7c\x31\x2e\x64\x98\xda\x4b\xb9\x8f\x65\xad\xf3\xd5\x9e\xe3\x1b\x2e\xb6\x92\x97\xef\x49\x2d\x84\xa5\x23\x8c\xaf\x2b\x52\x11\x16\xae\x82\xac\x03\x2e\x3c\x90\x90\xd1\x6b\x2d\xd8\xff\x6a\x2b\x14\x15\xc6\xd7\xd6\xed\xd0\xeb\xa9\x9f\xf9\x4f\x56\x0d\x13\x1c\x6f\xee\xed\x12\xc6\x1c\x46\xab\xaf\x38\xcd\x12\x1b\x46\xdc\x80\x36\xb0\x6a\x43\x6f\xcc\x9e\x11\x69\x1a\x07\x2f\x30\x44\xdf\x31\x27\x99\xd8\xa4\x94\xc6\xfd\x84\x1c\xec\x5d\xc0\x33\xd4\xa0\xf6\xb6\xe0\x73\xc6\x54\x56\xb2\x08\x07\x77\x09\x22\x5b\x50\x16\x07\x6b\xee\xb1\x21\xa2\x85\x01\xbb\x3d\x40\x02\x83\x23\x55\xcd\x30\x33\x4a\xd4\x04\x27\x94\x4d\x0f\x02\x30\x03\xc8\x95\x09\x79\x56\xd3\x4a\xde\x62\x79\xbf\x5b\xe7\xe0\xd6\xe0\xff\x34\x2d\x01\xa8\x0d\x45\x5a\xdf\x21\xad\x65\x72\x2b\x2c\xef\x77\x56\x1c\x5d\x2f\x45\x97\xb2\xe8\x2e\xf6\x9e\x84\x42\x1b\x20\xfb\x69\xe5\x2a\x40\x7f\x72\xe1\x93\xa6\xf0\x28\xcd\x48\x5a\xc5\xc0\xa8\x8e\x7f\x15\x21\x18\xb5\x38\xf0\x42\x01\x44\x42\xae\x15\xbf\xd4\x98\x67\xd9\xc2\x1c\x25\x7d\x73\x61\x79\x2f\x7d\x05\x0a\x24\x73\x9c\x65\x07\x48\x90\x42\xea\xab\xf7\x00\x49\x92\x4d\x0e\x1d\x5a\x61\x8a\x32\x3e\xa5\x09\xce\xd0\x38\xe3\xc9\xbd\x1c\x32\x7d\x95\xb0\xa9\xb9\x01\xe7\x82\x27\x44\xca\xe0\xee\x2d\xe3\xf2\x6d\x10\x2b\x94\x9f\x50\x44\xe4\x94\x51\xa9\x68\x52\xa9\x28\x7d\x34\x64\xa6\x9c\x8a\xd6\x86\x12\x6e\x8a\x66\xc0\x70\xb5\x2c\x40\x0c\x7e\x42\xc1\x2c\x16\x2c\x30\x74\x9b\x16\xed\xa2\x2a\xda\xa8\x77\x07\x59\xde\x6e\x7b\x46\x2a\x3e\x0d\x2b\xe8\xf9\xd4\x7e\x06\x67\x68\x19\xc5\x5c\xc7\xe4\xec\xa9\xc1\x93\xb9\x07\x0f\x73\x44\x51\xc6\x8c\x44\x77\x9b\x0f\xa5\x78\x65\xc9\xaf\x30\xe4\x96\x94\xd7\x55\x34\x7d\x6a\x4a\x54\x5b\xf8\xe1\xaa\x5f\xcc\x95\x9e\xb6\x10\xf3\xfa\x92\x78\xd0\x44\xe2\x96\x47\xaf\xbd\xbe\x4a\x0e\x7c\xdd\x68\x2c\x6d\xc8\xc8\xa1\xc7\xb6\xd3\xfc\xd0\xe0\x0f\x42\x27\x95\x22\xc4\x75\x8a\x7a\x4d\xb5\xa2\xfd\x25\xbd\x2e\x5b\x5c\x29\x48\xac\x59\x37\xda\xad\x74\x2b\x0e\x48\x34\xb6\x98\x6c\x21\xd1\xb4\x7d\x50\x1d\xed\x15\xa2\x29\xa3\xc3\x50\x1c\x3c\x7d\xa0\x65\x15\x20\xdb\xdb\x52\x7b\x86\x9e\x51\x27\x63\x46\x48\x14\x1b\x1b\xe8\x2a\x53\xa9\x65\x46\x51\x53\x20\xcb\xd6\xd7\xd7\x52\x6d\x91\x24\x84\xa4\x8d\xc1\x05\x7a\x44\xaf\x0e\xe7\xe2\x0a\xab\x99\x49\xb2\xc9\xb9\x32\x45\x28\x0c\xce\x85\x33\xb4\x18\xe0\x86\x71\xc6\xc7\x70\x21\x01\x04\x86\x4b\xb7\x08\xc2\xa5\xcd\xbc\x49\x8a\xbe\x0e\xee\x17\x9f\x00\xd6\x56\xe4\x6c\x87\xf0\x17\x55\xeb\x4c\x2b\x08\x46\x8c\x90\x7e\x84\xae\x2a\x19\x87\xc1\xac\x26\x58\xb3\xfc\xa5\xd9\xab\x2f\x04\x99\x51\x99\xc4\x4e\x20\x33\x22\xfa\xdc\x01\x64\x46\xa7\x31\x66\x7c\xfa\xa4\x39\x1c\x7a\x52\xe7\xbc\x7b\x60\xad\xc9\x5a\x37\xa2\x55\x44\x3e\xee\x20\x2c\x9a\x88\xe8\x75\xc1\x81\x54\x6a\x00\xbc\x2c\x1c\x48\x65\x30\xaf\x19\x0e\xa4\x32\xd4\xd7\x0b\x07\xd2\x30\xd0\x0e\x70\x20\xc6\xbb\x3b\xd2\x44\xdd\x8d\x29\x40\x9c\xe0\xb8\x98\xdc\xc0\x7d\xb7\x74\x8c\xb6\xd0\xac\xb9\x3e\x9c\x08\x67\x51\xa9\x60\xb4\x36\xa6\xbc\x2d\x1e\x06\xcb\xad\x68\xcf\xbb\x5f\xa8\x34\xda\xf3\x3c\xc3\x2c\x66\xfb\x50\xc8\x4f\x90\x44\x93\x9f\x61\x54\x65\x85\xf3\x03\x6b\xd5\xd1\xa3\x30\x86\xcc\x04\xcf\x6d\x8e\x4e\x1b\x58\xec\xeb\xc9\x46\x58\x0f\x69\x05\x00\x31\x22\x56\xdf\x29\x9d\xfd\x53\x05\x6f\x71\xc6\x1f\xad\xc4\x06\xe4\x67\x6b\x33\xaf\xa9\x44\x84\x58\x2d\x15\x9a\xee\x88\xd5\x12\x4d\x64\x8f\xd5\xd2\xbc\xc1\xaf\x16\xab\xa5\xb2\xe7\xdd\xb0\x5a\x9a\xb6\x7c\x03\xac\x96\xa8\x99\x2f\x06\xab\xa5\xb2\xa2\x5f\x0c\x56\x4b\x65\x5e\x7b\xac\x96\x2f\x04\xab\x65\x35\x1f\x69\x44\x23\x69\x3e\xbc\xeb\xa1\x91\x34\x8a\xf0\xed\x2c\x62\xdb\x44\x5a\x10\x18\x9e\x19\x8d\x24\x9a\xc0\x3e\xf0\x66\xfd\xc0\x9b\x46\xe2\xb3\x7d\x43\xdd\x6b\x1b\x8d\x53\xbd\xc8\x3a\xe2\x91\x44\xfb\xd3\xd9\xaa\xb5\x0b\x4a\x7c\xda\x50\x2f\x30\xae\x77\xd5\xb8\x7b\xd1\x2a\x4a\x8b\x62\xa4\x25\x23\x97\x95\x6f\x84\xf3\xd0\xb1\xb8\xa7\xdc\x0d\x42\xc6\x2a\xcb\xeb\xcd\xf1\x86\x16\x77\x69\x77\x6d\x28\xd3\xb6\x05\xbd\xba\xac\x9a\x35\xed\xde\x6e\x10\x60\xff\x6e\xb6\x3d\x41\xe5\xc6\xdd\x34\xbb\xea\x22\xf3\x39\xc7\x51\x21\x49\x9f\x30\x54\x16\x92\x34\xb2\x71\x25\x4f\x4a\xab\xff\xf6\xcb\x29\x95\x4a\xb4\x06\x4d\xd4\x46\xb8\x8d\x87\x6d\x5e\x6c\x92\xdd\x38\xdd\xec\xb3\x9c\xe4\x5c\xac\x8a\xd8\x68\xfc\x52\x2a\x2e\xf0\x74\x95\x22\xde\xac\x56\xcd\x67\x24\xd7\x42\xd0\x68\xdd\x46\xba\xee\xb7\xcf\x26\xb3\x49\x0d\x0d\xd5\x44\x03\xff\x99\x7e\x37\xb5\x15\x42\xbb\x6e\xf7\xb6\xdb\xec\x4a\x91\xae\x67\x28\x76\x68\x42\xcb\x2d\x57\xf6\xa5\xc8\x4b\x0a\xf4\xdd\xe8\x87\xf7\x61\x10\x1b\x7a\xda\x5b\xf0\x5e\xea\x1d\x82\x23\x4e\x12\x71\x18\xca\xa8\x91\xf3\xab\x3e\x82\x68\xdd\x9d\x6e\xb3\xc5\xb2\x17\xa2\x35\x20\xac\x8b\xe9\xc8\x94\xf7\xd6\x8a\x53\x88\xf4\x5e\xa5\xef\xf1\xa2\x21\xc3\xa4\x9b\x6d\x92\x32\xf5\xa7\x7f\x5f\xc7\x43\x0e\x42\xbe\x5d\xb7\x09\xcd\x08\xc2\x49\x42\xa4\xb1\x66\xd9\x80\x41\x53\x39\xb1\x10\xd9\x36\xbb\xaa\x0f\x87\x9e\xb7\x66\x99\x1e\x44\x29\x2d\x89\xc7\x5c\xc0\x33\xc1\x8b\xe9\xcc\x59\x33\x34\x15\xea\xa9\x35\xed\xe5\x4f\x26\xbc\x63\x9b\xbd\x7c\x5f\xd0\x6c\x33\x5b\x51\x19\x51\xa5\x87\xf9\x71\x70\x8b\xe4\xcc\xd3\xff\x18\x9a\x6d\xdc\xd8\xfa\xa0\xbb\xf7\x69\xbf\xf5\x96\x51\xe8\xe6\xc0\x01\x87\x4c\x78\x96\x81\x6d\x4f\x92\xfc\xa1\xad\xf2\x22\x4c\xf8\x96\x6e\x58\x5f\x0e\xbe\x06\x0f\x81\x54\x38\x9f\x77\x92\x68\xae\x8c\xb0\x25\x91\x1b\x7d\xd5\xb5\x67\x02\x76\x38\x23\xac\xc9\xda\xf3\x73\x1d\x00\xf4\x8d\x85\x4d\xb9\x30\x9e\x9d\x85\x4e\xb9\x25\x79\xe6\xf0\xa9\xa6\x79\xac\xc1\x02\xa2\x68\xe2\x92\xc7\x3b\xbf\xb4\x91\xe3\x7b\x7a\x7e\x43\xd6\x8b\xe2\x8e\x5d\x49\x97\xf1\xa2\x0c\x5c\x34\x22\x71\xc8\x49\x00\x37\xd1\xda\x09\x14\xb7\xd6\x03\x10\xdc\x0d\xe6\x8d\x09\xac\x72\xc1\x53\x10\x75\x49\xd2\x43\x9c\x2c\x92\x8c\x26\x81\x0a\x38\x15\x78\x3e\x6b\x62\x37\xf5\x12\xe5\x7b\x74\x81\xa5\x23\xdb\x39\xba\x40\x1b\x18\xf0\x3a\x51\xa3\x8e\xae\xa0\xba\xe5\x1e\xf5\xa0\x01\xf5\xe0\xc0\xe7\xf5\xb2\x12\xd6\xf8\x05\xd3\x45\xeb\xe7\x6e\x0f\x7d\xf0\x02\xd0\x07\x9b\x1c\xbe\x12\xd7\x20\x3a\x76\x7b\x38\x86\x77\x9d\xe0\x18\xfc\x25\xf8\xaa\x32\xec\xdb\xcf\xe3\x0b\x67\x6e\xd7\x07\xf6\x92\xf0\x0b\x0d\xe2\xc2\x3a\x72\xd3\x32\xfc\x85\x65\x74\xd1\x69\x5d\x5e\x16\x0d\x61\xbd\x95\x59\x0b\xe8\xa0\xf1\xee\x7a\x25\xb0\x07\xed\xdb\xf0\x4a\xce\xcd\x2e\x63\xfb\xd7\xab\xdb\x10\xc6\xf7\xaf\xa3\xdd\xac\x17\xea\xef\xe9\xe1\x6d\x85\xfb\x97\x58\xe6\x9b\x85\xfc\xf7\x9c\x4b\x95\x08\x34\xe3\x19\x00\xcc\x47\xab\xe5\x3b\xf0\xc1\xaa\x7e\x81\xdc\x66\xdc\xcc\x49\x62\xb4\xad\x7a\x21\xd7\xa5\x24\xf5\xd6\x83\xfb\x03\xf9\x77\xb7\x01\xfe\xe1\xca\x6e\x1a\xe4\xbf\x62\x70\xcb\x44\x8f\x0d\x03\xfd\x83\x1e\x97\x3a\x9d\xdc\xec\x3a\x39\x9e\xaa\xc4\xb2\x41\x4c\x50\x0d\xf0\x7d\x7b\x10\x84\x1c\x7f\x1e\xcd\xb1\xc0\x59\x46\x32\x2a\xf3\xb6\x33\x4f\x99\x22\xd3\x2a\xa5\x45\xc6\xd8\x3f\x7e\xbf\x3c\x00\x33\xf6\x3e\xba\x1a\xbf\xe0\x7f\x2c\xf2\xb1\x21\x45\x37\x10\x5b\x18\x41\x71\x24\x0a\x16\x42\xb8\xf8\x8d\x41\x80\x57\x6b\x8a\x06\x4f\x0a\x88\xce\xc1\xc9\x0c\xaa\x70\x4c\x30\x15\x8c\x48\xb9\x66\xe1\x66\x19\xeb\x89\xe6\x06\xa6\xff\x88\x24\xd4\xc3\x28\x4e\x38\x09\x32\x95\x21\x7c\xc3\x61\xb7\x2e\x63\x15\xfb\x60\xc0\x7a\x30\x60\xf3\xda\xbc\xc6\x80\xc0\xb2\x76\xf8\x9a\x41\x81\x6d\xdb\xbf\x0b\x26\xb0\xc3\xe0\xc0\x17\x8e\xa2\x7b\x9a\x00\xba\x97\x8d\x78\x7c\x8a\x60\xc7\x7d\x48\xe0\xdb\x0b\x09\x6c\x3f\xb6\x6b\x85\x05\xae\x48\xbd\x77\xbd\x6c\x1b\x83\xe5\xd3\xc1\x9f\x34\x0e\xcb\x7b\xbd\x82\x2f\x3a\xc6\x62\x95\xf9\xea\xfb\x78\xac\x27\x8a\xc7\x6a\x58\xe2\xf5\x62\xb2\x36\x12\x8f\x9f\x3f\x5c\xa4\x5a\x80\xea\x29\x43\x46\x56\x78\x49\x65\x31\x1e\x3d\xf9\xd1\x6b\x9c\x73\xd7\x13\xf8\xb3\x27\x0a\x23\x12\x09\x4d\x67\x63\x92\xa6\x60\x82\x51\xdc\x16\x63\x28\x69\x87\x11\x43\xdf\x9a\xf9\x62\xa9\x89\x1d\x67\x9c\x4d\x25\x4d\x49\x50\xf2\xad\x94\xac\x4c\x52\xd6\x90\xc1\xfe\x66\x19\x11\x4e\x83\x17\xe8\x6b\x49\x59\x42\x42\xad\x5e\xa0\x94\x13\xc9\xbe\xd2\x02\xd8\x03\x41\x98\x2d\xd0\x3d\xe3\x8f\x19\x49\xa7\xb0\x43\xd5\xc1\x1c\x22\x4a\x0e\x10\x55\xfe\x33\x41\x70\x32\xd3\x1c\x76\xa8\xc7\x0e\x7e\x59\x23\x02\x12\xfb\x6d\x50\x76\xc4\x37\xf3\xcd\x11\x42\x03\x86\x26\x38\x51\x07\x48\x16\xe3\xb2\xfd\x94\x9b\x3a\x12\x0f\x84\x85\x13\x2f\x1b\x79\xb2\x70\xa1\xc6\xf0\xa0\x0a\xb5\xb9\xf3\xa6\x09\xa0\x97\x51\xbc\x95\x67\xf7\x01\x6f\x03\x6b\xf3\xa9\x90\xd6\x05\x80\x38\xf3\x87\xc9\xe6\xb0\x7a\x24\x2f\x40\xd3\x37\xa8\x58\x4b\x8a\xfb\xe1\xca\x54\xd6\x1d\x4b\xe9\x86\xb7\x20\xfe\xd6\x4c\x02\xed\x9a\xe5\x4e\xf9\x23\x93\x4a\x10\x9c\x5b\xd5\x54\x33\x6f\x70\xe1\x18\x27\xbc\x1e\x3d\x15\xe6\xd2\x5e\x67\x8b\xcf\x29\xbb\xd7\xbb\x5b\x62\x97\x41\x51\x14\xe8\xb9\x61\xd3\xde\x53\x86\xa3\x18\xc4\x0d\x76\x2d\x2b\xd6\x0a\x8a\x09\xca\x1f\x2e\xda\x60\xe3\x14\x5e\x85\xe4\xb6\x8e\x19\x4f\x42\x25\x18\x34\x86\x42\x65\x9a\xd5\x99\xc2\x0f\x18\x29\x0c\x70\x85\x33\x92\xcd\x83\x62\x0a\x73\x2c\x94\xaf\x1f\x69\x90\x8c\x34\x77\xc8\x0b\x06\xf0\x53\x56\x43\x7c\xb4\x80\x35\xd6\x8e\x50\x36\x7e\x34\x64\x03\xf5\x15\x14\xa4\xe5\x6c\x9a\x2d\x10\x4e\x1f\xa8\x2c\x71\xe4\x12\xce\x64\x91\x13\x51\x29\x52\x64\x9c\xcc\x08\x3b\x5a\xd1\x63\xd3\xb2\xda\x03\xce\x68\xea\x8a\xe6\xe9\x1f\xc7\x64\xa2\xef\xbd\x39\x16\xd2\x59\x24\x1b\xac\x89\x76\x73\x53\xbd\x56\x2f\x76\x26\x7f\x0a\x8f\x1d\xca\xcb\x13\x8a\xad\xee\x72\x5c\x3d\x9f\x41\xd9\xc7\xb6\x00\xbf\xda\xa4\xd0\xf2\x8b\xc9\xae\xc2\xd9\xaa\x7c\x4f\xfd\x82\xa6\x86\xc2\x78\x8f\x74\x3f\x4e\x06\x32\x83\x5b\xcb\xfc\x53\x99\xa0\x1d\xb5\x31\x06\x86\x67\x93\x50\xb8\x14\xa4\xc2\x8a\x26\xae\x84\xa5\x2f\x1d\x6c\xbe\x6e\xdf\xda\x6d\x6b\xb3\xca\x04\x67\xf5\x1d\x6e\x5f\xcb\x1b\xf3\xfe\x72\xde\x67\x8f\x9b\x69\x7b\x69\xb0\x66\xc2\xb3\x6c\x1d\x94\xb8\xca\xcc\x4f\xcb\xcf\x97\x8f\xa8\xec\x47\x6f\x80\xdb\x0b\x38\x35\xc6\xec\x87\x33\x2b\x59\x48\x65\x77\x29\x7c\xc9\xf0\xd0\x85\x35\x2b\x0e\x19\x9f\x00\x8e\x60\xd6\x56\x04\x75\x2e\x78\x4e\xd7\xc1\xa1\x30\x18\xb4\xd7\xce\x81\xbf\xc2\x75\xe3\xdc\xfc\x50\xec\xca\x90\x97\xed\x11\x42\xbd\x30\x33\x72\xc6\x92\x33\x94\xe3\x5a\x29\xde\x4e\x0b\xbe\x4a\x4b\xee\xa1\xdc\x98\x28\xec\xea\x49\x53\x51\xed\x9e\x2c\x20\x4d\x3d\x7b\xc4\x8b\x32\xa4\x75\x9d\xe3\x54\x06\x8d\xda\xf3\x82\x1d\x95\x05\x27\xc6\x07\x40\x98\xfd\x32\xab\xd0\xe5\x04\x9d\x36\x91\xe1\xda\x67\xc9\xcd\xf9\x29\x85\xec\xf0\xd8\x87\xf2\xf5\x3a\xb7\x61\x7c\x18\x82\x16\x11\x0c\x67\xf9\x52\x7d\x8a\x28\x67\xe7\x6b\x54\x69\x07\x19\x5d\xce\x79\xce\xae\x9a\x5b\x7d\x86\x35\xb3\x64\xdd\x69\xb1\xb6\x8c\x92\x5f\x0f\xdb\xc0\xf5\xe8\x11\x0d\x1a\xcf\xfb\x6a\xc0\xa4\x75\x74\x88\x89\x96\x5d\x6c\xad\x3d\x0f\xf4\x6c\xe3\x91\x26\x34\x23\xf2\x08\x0d\x1a\xf4\x09\x17\x0d\x04\x52\x15\xe0\x2d\x81\x5f\xd4\xc9\x3b\x85\xa0\x01\xda\xb5\x93\x6a\x10\xb5\x15\x69\x4b\x2b\x85\x20\x7a\xcc\x89\xf1\x92\x70\x06\xb8\x0c\xe0\x8a\x14\xd4\x14\x64\xd4\xe2\xa5\x02\x83\x9b\xe6\x05\xd4\xa6\x16\x99\x22\xe1\xfe\x03\x2d\x63\x2b\x22\xb0\x05\xf4\x2f\x47\xd5\xb2\xa5\xbb\x40\xf1\xec\x1e\x6c\xe5\x7a\xbd\xd5\x5f\xd4\xf7\xa6\x71\x84\xb7\x71\xeb\x6b\x8f\xce\xcb\xe5\xeb\xbb\x7c\x3e\xc0\xa7\xce\xfe\x84\xd1\x44\x10\x30\x51\xe6\x3e\x7b\x81\xa5\x44\x48\xc5\x39\xdc\x50\x37\x67\x3f\x1e\xdf\x0d\x10\x51\x09\xd4\x2b\x1b\xb2\x44\x3e\x1c\x68\x81\xf6\xef\x05\x51\xfa\xe7\x96\xe8\x3e\x9a\x13\x26\x81\x13\xd0\xae\xc5\x9a\xdd\xc2\xe8\xff\x3d\x8b\xbf\x5f\x42\xf2\xb5\x58\x51\xa0\x5d\x5f\x38\x53\x93\x29\xc0\x83\x99\xa5\x95\x0d\x14\x63\x8a\xb6\xf7\x9b\x20\xc2\x37\x88\x0d\x61\x7f\x2b\xd8\x9a\x62\xd2\x69\xf9\x51\x30\x8a\x16\x29\x2c\x9f\x63\x41\x1b\xf0\x68\x96\x07\x9d\x98\x6f\x1a\x5b\x5f\xc5\x44\xca\x18\x5c\x5b\x02\x1f\x95\x68\xea\x48\x09\x42\x80\x85\x78\x7a\xb2\x77\xbd\xcd\x79\xf0\x13\x0b\x3e\x3a\x1a\xb2\x4f\xce\x64\x5a\xfe\xea\x6b\x7b\x9a\x40\x26\x92\xa2\x02\x74\xa6\xb8\x15\x68\x36\xa5\xd2\xff\x00\xe0\x70\xb2\xc8\x94\x81\xf9\x9d\x40\xd1\x79\x37\x50\xf3\xa4\x89\x4b\x08\xcc\x92\xd9\x05\xdf\xae\xe6\x2f\x9d\x8c\x48\xb6\x8e\xec\x38\x98\xf4\x33\xa9\xe9\x3b\xb9\x6f\x39\x9d\x9b\x00\x59\x97\x93\x01\xc9\xcd\x41\x9d\x1a\xad\xc4\xd8\xe9\x32\x03\x1a\x4c\x10\x18\xd9\xaa\xa1\x42\x26\x1b\x40\xef\xa2\x95\xad\x8d\x8d\xcd\xf8\xe8\x9d\x59\x6e\x0c\xbd\x20\xac\x86\x4c\x14\x0c\x00\xb4\xbc\xc9\x1d\x23\x49\x04\x35\xb6\xef\x84\x33\x23\x03\x58\xe3\xc9\x54\xb3\x09\x2d\xf9\x81\xdf\x85\x33\xd0\xa8\x78\x21\xc1\xdd\x9f\x13\xa5\x2f\xa8\xaf\x01\x1c\xdf\x38\x3d\x0e\xd0\x5c\xd0\x9c\x2a\xfa\x40\x3c\x30\x5f\xb8\x75\xa7\x58\xe1\x8c\x4f\x7b\x42\xd1\x09\x4e\xd4\x2d\xde\x4a\x67\xc6\xb6\x99\x4d\x1d\xe8\x6e\x18\x68\x70\xa6\x17\x7f\x4a\x18\x11\x30\x51\x28\x39\xda\x78\x84\xd7\x2d\x46\x5a\x72\x6e\x80\xea\x4d\x0c\xb8\xa9\xf4\x36\x06\x5c\x28\x9e\x6b\x8d\x14\x67\xd9\x02\x40\x4b\xf5\x93\x19\x96\x33\xb7\xd1\x06\xe9\xb4\xcb\xdd\x64\x17\xf7\x14\x27\x33\x72\x03\x35\xe6\x9b\x16\xb7\x32\xca\x77\x84\x15\xf9\xbb\x13\xf4\x3f\xe5\x1c\x4f\x7b\xa7\x3f\xf4\x47\x67\x83\x9b\xde\xfb\xf3\xfe\x59\x30\x1f\xfb\xe4\xd3\xe0\xe6\xa6\xfe\xeb\x0f\x83\xdb\xfa\x8f\x57\x97\x57\x77\xe7\xbd\xdb\xa6\x56\xce\x2f\x2f\x7f\xbc\xbb\x1a\x7d\xe8\x0d\xce\xef\xae\xfb\x0d\x9f\xde\xdd\xfa\x87\xf6\xd9\x5f\x83\x43\x04\xf1\x1e\x10\x9d\xd2\x3c\xda\xea\x39\x3b\x44\xf1\x8b\x27\xe8\xce\x7a\x6f\xa8\x45\x3b\x77\x41\x13\x26\x37\xe1\x11\x4b\xcd\xaa\xa0\xa8\xf0\x90\x21\xf7\xb9\x9e\x7b\xdb\xa7\xc6\xad\x94\xcc\x08\xca\x38\xbf\x2f\xe6\x96\x83\x99\x00\x47\xc6\x8d\x45\x86\xc8\xa0\xb5\x1f\x06\xb7\x27\xde\x8b\x54\x6f\x2c\x48\x41\x74\xa4\x0e\xe3\xc2\x8e\x6b\x82\x91\x63\x2e\xc8\x03\x9c\x49\xef\x5d\x0c\x7a\xf0\x1b\xb0\xac\x1f\xd3\x1a\x66\xaa\xd2\x4d\x9a\xda\x82\x07\x6e\x62\x41\xc3\xf1\xf6\x2d\x5b\x4d\xbf\x1c\x06\xf2\x12\x8d\x49\x82\x0b\xe3\x7c\xd3\xd7\x91\x10\x5c\x84\x03\x2e\xb7\x7d\xcb\x46\xdf\xd5\xa5\x8c\x18\xd8\x5e\xc2\x19\xd1\x9f\x04\x27\x47\xeb\xcb\xa0\x4b\x3b\xc8\xb6\x99\x85\xc5\x74\x75\xa6\x4b\x8f\x09\x40\xc5\x68\xce\xed\x01\xcc\x28\x78\xf3\xb0\x42\x8f\x04\xa2\x5c\x0b\x8b\x59\x69\x34\x64\x7d\x02\xa1\x3b\x63\x87\x76\x00\xc5\x51\xf4\x6b\x2b\xcb\xdc\x85\x58\xac\xbf\x97\xa4\x89\x5d\x6e\x11\xaa\x78\x66\x1a\x05\x1e\xea\x5c\xab\x30\xe2\x16\x8b\xbf\xe3\xd9\x0d\x96\xe7\x25\x52\x50\xfd\xde\x58\xc1\xd2\x35\x73\xed\x32\x1e\x97\x9e\x11\x41\xe8\xac\x97\xaf\xee\xc3\x02\x56\xae\xd5\x2d\x4f\xf1\x42\x13\x07\xc4\x34\xc8\x62\x3e\xe7\x42\xa1\x96\x36\x10\x9c\x74\x33\x3e\xb8\x19\xec\x3c\x3c\x8b\x82\x46\xb4\x1c\x20\x1b\x50\xee\xba\x45\xac\xdb\x75\x2d\xcf\x7d\x98\xfa\x0a\xea\x9a\x47\x5c\xcc\x23\xc5\x37\xa2\xd0\x26\x11\x75\x9b\x48\xa6\xb9\xbe\x86\xbb\x82\xf7\x36\xf5\x7e\xe9\x5a\x68\xdc\xf2\x8c\x4c\xd4\xa8\xd1\x9b\xb2\xc4\x70\xa8\x5b\x64\x6d\x49\x3e\x74\x3a\xdb\x41\x8b\xdd\x65\xf9\xef\xad\xb7\x4b\x0b\xf0\x81\x1e\x2f\x38\x57\x46\x8a\x2c\x35\x0d\xe4\x56\x13\x8c\x00\xb6\x53\x53\x29\xa0\x14\xd5\xb4\x64\x7e\xcf\xf8\x23\xf3\x16\x73\x79\x34\x64\x7d\x0c\xe5\x2b\xbc\xba\x60\x03\x16\x8c\xac\xbe\x52\x4a\x8f\xd0\xf0\x5f\x09\x86\x44\x49\xf7\xb6\xd4\x4f\xb6\x40\x65\xc5\x83\xe8\xbb\x2e\xa7\xc7\x58\x93\x9d\xa0\x66\x26\x6c\xb1\xba\x15\x99\x5b\x8b\xb7\x99\x67\x19\xce\x0d\x4e\x53\xdd\xd5\x11\xfa\xd9\xd9\x67\x20\xbe\xa2\xac\xd4\xa1\xcc\x8d\x93\xe1\x85\x4b\x92\x6f\x5a\xd8\x5d\xe4\x9d\xef\x3a\xe2\x62\xf9\x02\xfb\x1c\xbb\x86\x55\x8e\xd4\x64\xc6\x8c\xdd\x74\x8d\xf0\xb2\x53\xff\xd1\x0d\x59\x1e\x7f\xfa\x01\xc0\xbb\x15\x11\x5a\xd9\x04\x99\x81\x65\x8b\xff\x65\x36\x0b\xf2\xcd\x6d\x6c\x72\xea\x00\x99\xad\x67\x52\x9f\x1f\xf0\xac\x69\x31\x60\x0c\x40\x14\x19\xc8\x01\x47\xa8\x07\x75\x2b\xa0\x22\x81\xbe\x0a\x5d\x14\x0f\x9d\x32\xbe\x2a\x70\xa0\x85\x98\x92\x80\x98\x6e\xda\x89\x49\x02\x35\x95\xa1\xd5\xbb\xa1\xa8\x1d\xa4\xd9\x68\xde\x82\xeb\x98\x3b\xdd\x93\x6b\xd6\x50\xb1\x5f\x22\x08\xa7\x36\xdc\xe0\xc3\x7f\x35\x0f\xfd\x63\x81\x05\x66\x0a\x42\x4b\xac\xe4\x2d\x48\x10\xe2\x48\x3e\x43\xf0\x16\x33\xe6\x5a\xf8\x29\xdc\x5c\xe7\x4a\x9f\xd2\x07\xc2\x10\x4d\x0f\x10\x3d\x22\x47\x07\xb6\xf8\x9c\x2c\xc6\xe5\x9b\x33\x2d\x39\x0c\x59\x2d\x65\xe4\x08\xf5\x32\xc9\xed\x17\x84\x25\x19\xd4\x89\x09\xa2\x60\x3c\xe5\x5b\xe7\xcf\x78\x01\xfa\x05\x6c\x65\xd9\x3c\xb7\x0f\x82\x0f\x87\x0c\x4b\xe3\x6b\xce\xe0\xa4\x97\xbf\x37\xd5\x82\x8a\xe2\x0f\x9e\x10\x30\xae\x76\x0d\x3d\xd9\x26\x19\xb0\xe2\x65\x1b\x04\x6f\xc0\xc6\x94\xa9\x3c\x41\x52\x0c\xfa\x1a\x2b\x94\x11\x2c\x15\xfa\xee\x9b\xb5\x62\x2e\xdc\x04\x4b\xee\x6a\x8f\x6f\x19\x90\xea\x22\xda\xda\x0a\xda\x01\x98\xbc\xad\xc0\xeb\x05\xc8\x03\xbd\xcf\x8a\xa3\x07\x2a\x0b\x28\xbd\x13\xc4\xd0\x9b\xe2\x29\x54\x49\x17\x14\x68\x54\xa6\x16\x3e\xe2\xe0\x5f\xac\x5b\xd2\x0e\xab\x81\xb2\xac\xf2\x44\x8d\x7a\x06\x59\x92\x65\x6c\xd9\x0c\xab\x21\xb3\x9c\xd5\x85\x63\x04\xa5\x16\x7a\x59\x16\xc7\x73\x61\x08\x59\x64\x7a\xc2\x50\x38\xe8\xc8\x2f\xd0\x05\xa8\x5f\x3e\x04\x28\x2e\x22\xe8\x0f\x8b\xd6\xd4\x86\xcc\xa7\xa0\x85\x6d\x37\x4a\x3b\x4d\x56\xe0\x67\x14\x82\x1b\xba\x3f\x37\x15\x9c\x3a\x08\xc3\xed\x15\x36\x97\x78\x4d\x6a\x96\xf7\x25\xb2\xf1\xae\x3b\xe8\x2e\x2a\x37\x5b\xb1\xe1\x9a\x7d\xe4\x0d\x46\xf1\x96\xcd\x0d\x64\x8b\x6d\x14\x70\x1f\x8b\xf6\x5c\x7e\xd9\x68\xe8\x83\x14\x62\xcb\x57\x73\xc1\x32\x56\xdb\xb1\x0e\x30\x47\xd3\x34\x08\x1d\x0d\xe2\xea\x20\xb4\xd8\x31\x3e\xfb\x66\x8b\x7f\x74\xfe\xb6\xa7\x7f\x50\xce\xdf\x4d\xc5\x07\x97\xd5\x27\xde\x2e\xec\xf5\xd2\xbf\xe1\x84\xb0\x64\x61\x7a\x72\x70\x59\xf5\x1c\x39\x87\x2c\x84\xc1\xe4\xde\x28\x1e\xda\x62\x6c\x47\xa8\x0f\x17\x8d\xab\xcd\x86\x27\xce\x6d\x10\xbc\x3c\x64\x5a\x33\xd1\x77\xbc\x34\x83\x76\xed\xc7\x24\xde\x74\x02\x4c\x7e\xee\x56\x1e\x97\x7c\x35\x0a\x62\x9b\x36\xe1\xd2\x83\xa1\x0d\x80\x79\x43\xfd\xe9\x09\x4a\x79\x72\x4f\xc4\xb1\x20\x29\x95\x27\xe0\x01\x57\xad\xae\xb7\x5c\x6b\xdb\x5b\x4b\x1a\x5d\xeb\xa4\xd6\xab\x9a\xe5\x50\x70\x0c\x82\x8a\x5d\x49\x83\x03\x44\x27\xa0\x4e\xb8\xfc\x02\x93\x74\x60\xad\xdb\x88\x30\x25\x16\x73\x4e\x99\xf2\xa6\xac\xca\x42\x38\x4d\x43\x0b\x6d\x6d\x21\xb6\x62\x17\x91\x32\x1b\x4e\xfb\x76\x46\x24\x71\x61\x01\x66\x52\x8a\xdb\x6a\xfe\x86\x5d\xcc\xb1\x9a\x49\xc8\x90\x88\xd7\xc0\x2a\x5d\xf0\xa9\x5e\x21\x3c\x87\xa8\x02\x63\xa5\x28\x3f\xf2\x71\xfc\x52\xd1\x2c\x1b\x32\x46\x48\x2a\x11\x24\x33\x7c\xd5\x98\x89\xa3\x3f\x3d\x40\x38\x4d\xd1\xff\xfe\xfa\xc3\xf9\x2f\xb7\xfd\xd1\xe0\x02\x6c\xce\x83\xf3\xfe\x37\x07\xfe\xc7\xcb\xbb\x5b\xff\xab\xb1\xb0\x3c\x10\x81\x72\x7c\x0f\x2a\x1e\x93\x46\xfe\x83\x68\xf7\x70\xa4\x2e\x47\x49\x3f\x91\xc4\x45\x90\x5a\x31\xc5\x67\xb5\xdb\x3d\x6c\xad\x58\x62\x6c\x7e\x6b\x28\xbf\xd7\xfe\x93\xe5\x34\xe8\x88\xc7\x77\xe1\xc4\xc0\x9c\x30\xa5\x79\x8c\xb5\xf6\x95\xba\x6f\x49\x70\x84\x4d\x29\x6b\x8b\x73\x23\xec\xe1\x29\x85\xf8\x1f\xc9\xe2\x27\xad\x5e\x5f\x61\x2a\x3a\xd3\x5e\x9f\x3d\x50\xc1\x19\x4c\xcd\x9b\xb5\xca\x5a\xd2\x44\x39\x6f\x5b\x70\xa8\xa4\x91\x85\x21\x92\x62\xde\x1a\x4b\x59\x49\xdc\x7e\x1d\xd3\xed\x19\xef\x2f\xf9\xac\x84\xcb\x86\x93\x96\xdd\xe0\x07\x4c\x33\x88\x83\x75\x17\x4d\x49\x83\x43\x76\x7b\x79\x76\x79\x82\x48\x86\xc7\x5c\x40\x76\x8c\x09\xdc\x71\x4d\xd8\x05\x83\x1a\x9d\xbe\xa1\x28\x13\xf2\x00\xcd\xcb\x4c\xc8\xd0\x88\x76\x64\xda\x58\x91\x11\x39\xe7\xa2\x9e\x47\xb8\x5b\x15\xd0\x4e\xf6\x8a\x8b\x2e\xd7\xbf\x7e\x0d\x96\x8e\xcf\xb5\x22\x57\xe1\xbc\xf6\x6e\x9e\x10\x6c\xaa\xf8\x18\xb7\x90\xb5\xe5\xdb\xc0\xd0\x2c\x8b\x10\xdb\xf5\xc1\x91\x47\xd6\x51\x5e\xbe\xc9\x19\xfa\xf1\xcf\x12\x8d\x0b\x35\x64\x71\x1b\x9c\x41\xc1\xfa\xf7\x58\x25\xb3\x6f\x86\xec\x52\xab\x99\x3f\xfe\xb9\x25\x65\x3b\xc5\x0a\x8f\x9a\x89\xb2\x7d\x4d\xce\xb0\xc2\xe7\x1c\xa7\x94\x4d\x2d\x10\x41\xf3\x5a\xbc\xef\xdf\xf6\x4e\xd0\xa5\xd5\xe1\x7d\x96\x65\x89\xf0\x10\x34\x04\x0c\x19\x26\xe2\xb8\x08\xb0\x72\xe6\x59\xbf\x35\x91\x81\xf4\xa4\x2f\xac\x21\x83\xa5\x34\x5c\x95\x2a\x34\xe7\x16\xd3\x55\x6b\x65\x06\x40\x00\xfb\xaa\xec\xd9\x02\xe9\xd5\x01\x32\xf6\x9b\x61\xe5\x31\x90\x67\xea\xcc\x7e\xc8\x40\x41\xf7\x99\x6f\x19\x4f\x70\x06\x91\x73\x87\x81\x4d\x4f\xab\xed\xbc\x80\x34\x24\x08\x59\x61\x8b\x38\xc0\xd5\x67\xc6\x79\xa1\x2c\xdc\x28\x30\x00\xc0\x3e\x5a\x67\x6a\xce\x35\xc7\x39\x1a\xb2\xc1\xc4\x04\xd6\x65\x66\x75\xf4\x87\x84\x81\x3f\xd9\x2d\x8b\x7e\xea\xf8\x11\x54\x37\x33\x6e\x45\x9c\x80\xf9\x9e\x2d\x20\x2c\x1a\x70\x20\x39\x04\x68\x94\xdc\xd9\x12\x65\x6d\x17\xfd\x9d\x18\x7c\x36\x64\x26\x9e\x2f\xda\x97\x30\x4b\x38\xe8\x9d\x33\x08\x37\x2c\xaf\x4b\x2f\x60\xcc\x6d\xf8\xa1\x95\xf5\xe7\x82\x1c\xba\xfa\xbe\xfa\xd7\x60\x4d\xf5\x0d\x7b\x84\xae\x43\xf5\x3a\xe5\x49\x91\x3b\xb0\x1b\x48\xd7\xb2\x71\x6a\xf6\x12\xf5\x14\x62\x2e\xf6\x55\x14\x8f\x45\x32\xa3\x8a\x40\x4e\x55\x67\xfd\xd8\x10\x4c\x2f\xfc\xb4\x2e\xa9\xb7\x0b\xbe\x57\x5b\x96\x8c\xf7\x24\x3b\x9a\xc7\x2d\x45\xad\xad\xc6\xea\x58\x01\x9c\x7c\x51\x02\x72\x40\x45\x79\xae\x55\x5b\x0e\x46\x6e\x93\xb2\xc7\xd3\xaf\x24\x1a\x5c\x69\x09\x48\x6b\xbc\xfe\x0c\x16\x52\x99\x10\x30\x48\x83\x31\x5f\x9b\x30\xfc\x03\xf4\x2d\x1a\x16\xdf\x7e\xfb\xc7\x04\x7d\x76\x7f\xfc\xe9\x3f\xfe\xe3\x8f\x7f\x5a\x27\xae\xdc\x29\xe4\xd0\x6e\xb9\x46\x1e\x5e\x37\x16\x89\xc2\x1d\xa8\x73\xaa\x2d\x76\xc1\x1e\xc0\xb6\xe5\xb7\xe6\x80\xd6\x34\xaa\xa6\xc7\x41\x84\x0f\x9e\xda\x13\x2e\xc3\x93\x89\xa2\xa3\x59\x46\x12\x48\xa2\x0e\x62\x0e\xe1\x85\x5d\x2b\xd1\xff\xaf\x25\xa0\x08\x23\x7d\x54\x36\x8b\x44\xa2\x99\x17\xaf\x75\x23\xe8\x6b\x6b\xff\x53\xe0\x40\xfc\xc6\x5d\x70\x3c\x4b\x89\xb0\x25\xeb\x9c\xc9\xce\x1b\x12\x81\x39\x90\xcf\xf3\x8c\xdb\x18\x11\x8c\x24\x99\x63\x10\x20\x34\x33\x38\x1a\xb2\xfe\x67\xac\x39\xf7\x81\xab\x7d\x0a\x1f\x19\xcf\xcb\x04\x27\x04\x19\x51\xfd\xeb\xcf\x27\xfa\xb7\x03\xb4\x38\x81\x50\xcf\x03\xf4\x8f\x13\x9b\x94\x8d\x85\x1a\xe9\x9f\xbe\x71\xb2\xb6\x6d\x02\x06\x4d\x25\x1a\xbe\x3b\x7e\xc0\xc2\x94\xa5\x39\xb6\x68\xba\xef\x2c\x6f\xf5\x48\xe1\xa1\x74\x9e\x71\x7e\x6f\x03\x61\x6b\x5f\x1e\x3b\x88\x07\x20\x70\xef\x39\x31\x9b\x6f\x63\x9a\xb5\x24\x79\x08\x2f\x10\x74\x34\x1f\xa3\xa3\xbf\x49\xce\xd0\xd1\x02\xe7\x99\xfd\xd5\x3d\xb5\x71\xba\x58\x22\x57\x83\xcf\x45\xe9\x64\x0b\x63\x2b\x7d\x9f\xf1\x31\xcc\xeb\x93\x9b\xab\x89\x74\x85\x81\x96\xf7\x4f\x79\x65\xd9\x89\x58\x59\xca\x24\xaa\x43\x5d\x5d\xfd\x0a\x70\xb9\xa6\x59\x7d\xf6\x43\xfa\x6f\xe3\x19\x86\x45\x71\xe9\x71\xc6\x3c\xec\xa3\xcc\x74\xa3\x9f\xd1\xd7\x96\x09\x7d\xa3\x6f\x19\x1b\x56\x6c\x96\xa1\xa9\x83\x85\xef\xe0\x97\xa0\x03\xca\x90\x49\x78\x5c\xf2\xe5\x3f\x8e\x8f\x8e\x8e\xfc\xd7\x17\x7a\x2a\xff\x2f\xa2\x4a\x92\x6c\x62\x5a\x72\x77\xd8\x62\xc8\x3e\x39\x34\x3c\x67\xbe\x2e\xc1\x63\xa0\x92\x64\xc2\x33\x74\x58\x9a\x74\x53\x9e\x48\xf4\x3b\x2d\xd8\x06\x4b\x09\x3f\x6a\x4d\xae\xf9\x54\xd9\x9a\xbb\xcf\x74\xac\xac\x49\xbc\x7a\xb0\x42\xbc\x08\xaf\xda\x62\x19\x42\x2b\x02\x2d\x68\xca\x39\xb6\x98\x12\x50\x8d\x58\x91\xcf\x0a\x1e\xb5\x40\x76\x34\x86\x9c\x37\xdf\x95\x35\x86\x5b\x22\x77\x18\xb2\x6e\x59\x00\x0b\xac\x60\x79\x83\x99\xe7\x41\xe8\x40\xd1\xd7\x0b\x0b\xf1\xd9\x64\x91\xe7\x58\x2c\x8e\xcb\xd3\x56\x27\xce\x12\x6c\x15\xb8\x4c\xe6\x16\x00\x9c\xb8\x99\x3d\x5a\x36\x8e\xc1\x0a\x98\xee\x4e\xf3\x67\x37\x01\x74\x77\x88\xa8\x33\xb5\x0d\x08\x4b\x78\x6a\xe9\xba\xcc\xeb\x8c\x65\x16\xff\x4e\x5d\x5a\x71\x31\x31\xb2\x34\xc7\x31\x65\x92\xbd\xed\x1b\xee\xe3\x16\x06\xce\x47\x50\x79\x83\x4c\xd7\x70\x90\x0e\x2e\x6f\xdc\x37\xdd\xaf\x5d\x58\x87\x58\x68\xc7\x4e\x4f\x74\x36\x09\x81\x1f\xcb\x0b\x18\xa2\x3b\x8c\x7d\xa6\xf0\x59\xaf\xe6\xdf\xa7\xfc\x8a\x66\xfa\xde\x02\x1a\x3f\x1a\xb2\xe8\xe7\x03\x44\x32\x9a\x53\xe6\xa3\xeb\x0c\x7b\xe7\x13\x23\x3f\xdf\x53\xa5\xb7\x4c\xa6\xf7\x9a\x83\x39\x00\x81\x40\xa9\xea\xb1\x85\x23\x1d\xef\x9a\xb2\x36\x88\x42\xea\x71\x95\x5a\xba\x16\x67\x75\x13\x87\x56\x24\xa5\x01\xe1\xc1\xf9\x1d\x32\xdd\x9a\x3b\x4b\x65\x58\x6f\xd0\x5e\xd0\xdc\xa1\x43\x29\x0b\x38\x00\xf4\x11\xc5\xe6\x7a\x09\xb8\x41\x44\xe9\xb3\x22\xdf\x36\x29\xc4\x86\xf9\xbe\x94\xa1\xee\xaa\xac\x16\x6b\x13\x8c\x08\x2b\x72\x77\xa0\xd6\xa0\xb8\xbe\x15\x80\x52\x92\x64\x18\xee\x0e\x68\x08\x62\x1f\x0f\x8c\x8b\x34\xa8\x4c\x6b\xaf\x17\xd3\x8d\x01\x3e\xcd\x08\xfb\xda\xfc\xfb\x1b\x64\xef\x86\x6f\x0f\xec\x7d\x2e\xa4\x55\x22\xdd\x9e\x03\x70\x3e\x49\x8d\x15\x1d\xf0\xcf\xa6\x18\xea\x85\x5b\xd3\x4e\xa4\x79\x82\x04\xb6\xe0\x05\x7a\xa4\x72\x36\x64\xb7\xdc\x99\x1c\x11\xe3\x1e\x41\xee\x00\xd4\xd1\x5a\x7f\x58\x02\x13\x80\x51\x37\x51\x40\xa5\xd8\xfc\xfa\x39\x41\x10\xc6\x3a\x62\x3c\x25\x6b\x46\xb3\x37\x94\xca\xb6\x9e\x08\xe7\xc1\x16\xc4\xe4\x6d\xc1\x4d\xd1\x5a\xe8\x57\xca\x35\xad\xf3\x8d\x55\xf1\x6d\x3b\x50\x24\xe5\x91\x6d\x0a\x99\xe1\x6f\x35\x68\xc5\xe9\x9c\x41\x9e\x6d\xb4\xf6\x71\xe5\xfe\xad\x74\xb4\x74\x33\xff\x84\x99\x7b\x02\xcb\xee\x43\x8c\x31\x9a\x0a\x5e\xcc\x7d\x32\xba\x4b\xcb\x33\xdb\x60\x65\x9a\x01\x9b\xf0\x13\xab\x55\x9d\x53\x76\x6f\x28\xfe\xa9\xf6\xc8\x57\xa0\x0f\x7e\x77\x77\x98\x59\xf1\x43\x44\x59\x92\x15\x70\xf1\x49\x85\x93\x7b\x03\x1f\xd8\x66\xf6\xd5\xdf\x8c\x56\x27\x3d\xb6\x48\x4c\x45\x96\xd9\x6e\xcb\x0b\xb4\x2c\xec\xf3\x40\x31\xc2\xe8\xee\x7a\xd0\xdc\xf7\x3d\xad\xbb\x73\x9a\x6f\xcf\x98\x40\xe0\x3f\x3f\xd2\xb5\x22\x2f\x2b\x38\xa7\x24\x22\x75\x6f\x5e\x6a\x43\xf7\xaa\xdc\xde\x5b\xfa\x8f\xf5\x2d\x34\xca\x1b\x28\xb5\x79\xf2\x65\xc7\x67\xf6\xe3\x4f\xfa\xdb\xe6\x1d\xf9\x04\x49\x47\x1e\x99\x21\xc7\x4c\x4f\xd0\xf5\xda\x62\x8d\x31\x17\xe3\x46\x43\xba\x9b\x6f\x34\x20\xd3\x63\x47\x4c\x6e\xdb\x95\x6b\xe5\xd1\x18\x24\x71\x66\x14\x6e\x35\x03\x4d\xec\x00\xdd\x24\x33\x92\x63\x08\x7a\xc9\x63\x8d\x0c\x24\xd3\xaf\x33\x2c\xa6\x46\x4e\x94\x44\xc9\x6f\x1a\x76\xb8\x0c\xfe\xde\x62\x87\x37\xa8\x17\x10\x3a\x80\x40\x0a\x59\xc6\x01\xfc\x28\x63\xe8\x21\xcf\x9c\x7c\xe5\x0d\x7b\x77\x50\x19\x42\x0e\x27\x5c\x08\x80\xc8\x4b\xb5\x34\xde\x0e\xca\xb0\x65\xdd\x98\x0b\x9c\xfb\x04\x66\x57\xbd\xc2\xe6\xa9\x98\xc1\x8d\x09\xe0\x50\xb5\x8f\x61\xeb\x02\x31\xe1\x10\x2c\x60\x7b\xdb\x08\x86\xac\xe7\x5e\xf1\x49\x90\x20\xe2\x0a\x23\x87\x40\xa0\x9c\x09\x0b\x05\x31\x13\x97\xab\x6e\x27\xd7\x32\x89\x75\x73\xcd\xaa\x35\x6e\xb4\x98\xeb\x81\xeb\x8c\x18\xe3\xf4\x1d\x37\x8f\x96\x9e\x1f\xd6\x2f\x01\xd6\x8c\x23\x91\x54\x4b\x34\x35\x75\xbc\x5a\xa4\x74\x09\xee\xb6\xa1\xb0\x2a\x94\x09\xa6\xcb\x16\x25\x99\xea\x15\x37\xaa\x49\xa5\xb3\xfa\x69\x55\x5b\x71\x63\x8a\xf3\x91\xe0\xd9\x36\x7b\xe4\x9a\x88\xd4\xdc\x99\xc1\x13\x5d\xa0\xbf\x17\x38\x33\xf6\x7e\x66\xc9\xd1\x0d\x1b\x24\x86\xef\xff\x84\x7a\x70\x5d\xa2\x4f\xc0\x17\xc1\xd3\x09\xad\x29\x8e\x68\x3e\x27\x42\x72\xad\x8f\xb5\x6c\xf2\xfd\x9f\xe5\xc8\x82\x01\x8f\x70\x92\xf0\xa2\x0e\xfc\xbb\xc6\x4c\x1a\x5a\x0b\x27\x85\xd1\x7d\x31\x26\x82\x11\x53\x8a\x12\xde\x43\xee\xbd\x4e\xc3\xe5\xb8\x50\xb3\xef\x47\x49\x46\x3b\x23\x14\x43\x9a\x45\x4f\x7f\x76\x6a\xbe\x5a\x36\x81\xa8\xfd\x68\xe8\x0c\x99\x67\xc8\x3c\x3b\x42\xef\x71\x72\x4f\x58\x8a\xe6\x59\x31\xa5\x36\xf7\x19\x6e\x28\x60\x97\x81\x95\x2a\x9e\x98\x51\x79\x4d\xfb\xfa\x1a\x1a\xb2\x1c\xdf\x83\x86\xf4\xd9\x46\xa3\x6b\x4d\x73\x2d\x6d\xcb\xd3\x43\x0d\x04\xc2\x25\xea\x4a\x92\x14\x42\xbf\x61\xce\x87\x32\xe7\x03\xec\x4a\x00\x84\x56\x30\x84\x01\x47\xe2\x2b\x89\x8a\xb9\x33\x7e\x80\xc1\x23\x03\x07\x94\x99\x24\x14\x27\xa3\x5a\x1c\x9c\x91\x21\x83\xa0\x3e\xd7\xe2\xc2\x73\x95\xd0\xe7\xe9\x7d\xef\x4d\x87\x6f\x62\xb2\xa8\xb7\x73\xa7\x18\x33\xd2\xce\x03\x16\xd5\x8c\x30\xd0\xc3\xba\xb7\x0c\xa9\xe8\xdd\x37\x2d\x0a\x4e\x34\xb3\x28\x0d\x47\x7e\x09\x0b\x46\x2d\x26\xb6\xb5\x15\x06\x71\x43\xce\xa4\x5e\x7e\x4f\x25\x92\x58\x51\x39\xa1\x8d\xfa\x69\x98\xbb\xbe\xcd\xaa\xe3\xf5\x12\xe6\x1b\x92\xe5\x2b\x6b\xe1\x03\xa0\x8f\xd0\x07\x50\xb7\xcb\x29\x29\xee\x53\xcf\xdb\x58\x82\x9a\x91\x56\xd4\xb4\x5d\x44\x0e\xb8\x19\x74\xb5\xa2\xf8\x60\xf7\x23\xd4\x2b\xcd\x9c\x26\xf9\xde\x18\x30\x57\xcc\x88\x64\x92\x6c\x42\x7c\x9d\x2c\x02\xe0\x0c\x04\x02\x42\x20\xab\x48\xfd\x7b\x89\xe0\xe8\x87\xf9\x08\xf9\x64\xf8\x9e\xb0\x65\x6a\x5f\xf7\x11\xf6\xa3\x6c\xdc\xa6\x21\xf6\xbc\xc2\xcf\x8d\xce\xbf\xc9\x00\xbb\x1f\xbb\x12\xef\x80\x4e\x8e\xf5\x92\x6b\x41\x3f\xb9\xb7\x51\xec\xc6\xec\x63\x11\x13\x1e\x67\x5c\x86\xe7\xcc\xed\x1f\x6c\xa6\x12\x05\x71\xd1\xea\x90\x05\xe0\x17\xd8\xb8\xff\x19\x0f\x01\x15\x60\xd4\xfe\x90\x1a\x93\x96\xdf\x6f\xe4\x58\x28\x2c\x03\x98\xcb\x5d\x53\xf5\xd3\xfc\xe3\x9f\xe5\x25\x9c\xd8\x5d\x24\x05\x67\x78\x4c\xb2\x27\xc0\x89\xda\xd0\x10\xe9\x43\x4d\xcc\xb8\xc0\xe8\x9f\xfa\x2c\xf4\x39\x4f\x51\x49\x5e\x6d\x11\x8f\x8c\x71\x13\x6a\xf0\x0a\xa7\x15\x0c\xae\xf3\xdc\x56\x51\xf6\xa7\xc0\x5b\x69\x4a\xee\x1a\xec\x95\x40\xe4\xb2\x89\x63\xa0\xfd\xda\xeb\x9f\x4a\x7f\x9f\x34\xd3\xd8\x15\x4f\xb7\x21\xac\xf5\xf1\xb5\xea\x74\xdd\x21\x9c\x51\x36\x55\xfc\x59\xb2\x12\x73\xde\x1e\x88\x96\x8e\xba\xd7\xc8\x01\xbf\xe3\xb8\x98\xdc\x00\xba\x6f\x5b\x72\xbc\x83\x35\x9a\x11\x9f\xed\xa2\xf7\x59\x77\xe3\x63\xaf\xdb\x36\xc5\xba\xb1\xca\xeb\x1f\xa3\xff\x7b\x73\x79\x71\x98\x63\x21\x67\x18\x92\x0f\x5d\x5b\x07\x0e\x83\xde\x28\xa0\xce\xbc\x4e\x19\x1a\xb2\x43\x34\xe5\x07\xc6\x9b\x73\x82\x66\x4a\xcd\xe5\xc9\xf1\xf1\x94\xaa\x59\x31\x3e\x4a\x78\x7e\x5c\xae\xcd\x31\x9e\xd3\xe3\x71\xc6\xc7\xc7\x82\x40\x44\xdf\xe1\x77\x47\xdf\x7f\x07\x5b\x73\xfc\xf0\xdd\x31\xd8\xf0\x8f\xa6\xfc\x77\xe7\xdf\xff\xe7\x1f\xff\xa4\x1b\x9e\x2f\xd4\x8c\xb3\x13\xeb\x2a\x5a\xda\xf6\xa1\x11\x7c\x8f\xcd\x27\x95\x5e\xfe\xf3\xe8\xdb\x70\x18\xf6\xd5\x9c\xa7\x24\x93\xc7\x0f\xdf\x8d\xdc\xce\x1c\xcd\xd7\x71\x7e\x95\x0c\xdf\x2f\x79\xa5\x40\x94\xfe\xdd\x93\x8c\xcb\x3d\x5a\xb5\x2d\x0d\x67\x25\x8c\xd7\xdc\xe2\xc4\xdc\x93\x9a\x3f\x70\x0d\x0d\xcc\x4b\x52\x2d\x3a\xfd\xba\xf0\xc1\xad\xb2\xcd\x5a\xe9\x69\xe0\x7d\xa3\x09\x40\x53\x1a\x1b\xc4\x1c\xd3\xa6\x38\x1f\xeb\x65\xde\x66\xfd\x9e\x12\x64\x75\xd7\xe8\xaa\x76\xba\x1b\x22\xab\x66\xe6\x6b\xe7\x13\xe7\x8f\x0e\x51\x75\x17\x38\xa4\x1d\x2b\x75\x78\xb0\x46\x43\x3c\x30\x16\x37\xae\xf5\x68\x24\x5a\x62\x13\x26\x61\x43\x2c\x25\x84\x63\x1a\xb0\x03\x3e\xf1\xb0\xb1\x26\x92\xd6\x20\x4c\xf3\x49\xc3\x1f\xef\x33\x3e\x96\xdf\x78\x88\x15\x2c\x5d\x1f\x25\xe6\x41\x3b\x09\xee\x06\xa5\xd4\x2d\xc5\x53\xea\x27\xee\xcc\x84\x52\xc8\x3a\x0b\xdf\x4c\x54\x65\xa0\xab\xc9\xf8\xc4\x82\x17\xcc\xa1\x3c\x72\x46\xf8\x04\xa2\x04\xe0\x02\x74\x5e\x10\x30\x82\x30\xae\x82\xec\x4e\x41\xe6\x86\x91\x82\xb9\xae\x7d\xb9\xb7\x44\x3a\x5d\xb5\xce\x4f\x81\x74\xba\xed\xba\xdb\x83\xf3\x42\x0b\xbe\x6d\xa8\x82\x39\x4a\x6b\xb0\x59\x78\x7f\xa5\x6b\xc2\xf3\x01\xf0\x45\x84\x15\xcc\x0c\x9a\x09\x84\x27\x93\x43\xc5\x0f\x21\x2d\x1e\x92\xad\x0d\xf6\x70\x5b\x45\x0e\x70\xe9\xac\x73\x1d\xe8\xf7\x3b\x8c\xd3\x84\xa4\x7f\x0e\x06\x6a\xef\x5e\x59\xd6\x36\xd7\xca\x25\x63\x44\x58\x63\xf5\xca\x9b\x63\x4d\x87\x4f\xb8\x95\xcb\x3d\xbe\xa5\x00\x1a\xe2\xc2\xfa\x78\x3f\x1c\x30\x81\x23\x04\x71\xd7\x33\x9e\x73\x7d\x6d\xf3\x42\x06\x0f\x4d\xdc\x3e\x5c\x36\x4b\xca\xcc\xcf\x0d\x0c\xce\xcb\xcd\x46\x1f\x2d\xfd\xc8\xe8\xf2\xe1\x4b\xab\xc1\xb1\x83\x99\x8c\x63\x70\xe1\x15\xe3\xf7\xa8\xb0\xcb\xe9\x06\xdc\x89\x39\xd8\x4e\xa1\xe6\x89\xc5\x7a\xa4\xff\xd0\xa2\xba\x26\x29\x1f\x23\xef\xf2\xea\x6d\xe0\xa9\x41\x7b\x0a\xf1\xe0\x2a\xa5\x4d\xab\xc3\x27\xac\xc8\xd7\xdc\x03\x1f\xc4\xd4\x65\x03\x30\x33\x61\x3d\x2e\x9e\xe7\xb0\x31\xa0\xa7\x35\xd6\x64\x1d\xc5\x70\x99\x9e\xd5\x14\xed\x66\x20\x5c\xca\xe0\x56\x4d\x01\x35\x19\xdf\x7f\xf8\x50\x56\x03\x5a\xcc\xc9\x01\x1a\x17\xf0\xfc\xe2\xf2\x36\xf4\xe2\x51\x06\x8f\x0f\x93\x19\x49\xee\x21\xd3\xc5\x70\x6c\xb3\x97\xae\x12\xd4\x78\x31\x64\x65\xcd\x09\xc5\x9d\x4b\x6a\xe1\x41\x3d\x3d\xb0\x2d\x17\x28\xa5\x72\x9e\xe1\x05\x18\xff\x99\x09\x63\x2b\x1d\x07\x3e\xfe\x53\x53\xf2\x66\x36\x2e\x28\x8a\x61\x59\x94\x13\x12\xe1\x5f\x6e\x12\xbe\x22\xa4\x0f\xc9\x6e\x92\x89\xb6\x86\x59\xdd\x26\x98\xa9\xad\xbc\x4b\xe0\x92\x36\x3b\x1a\x7a\xb5\x7d\x2a\x76\xb5\xee\xe8\xf0\x9d\x0b\x12\x07\x3d\x70\xe8\x4a\x26\xea\x7f\x9b\x7a\x5c\x44\x3c\x90\x74\xc8\xe2\x64\x77\x7b\xcf\x96\xbb\x8c\x4a\xd8\xff\xdd\x90\xb8\x5b\xe7\x4e\x66\x8f\x3e\x24\xf8\x95\xd0\x3e\x3e\x10\x7a\x49\x19\x82\xe6\x7a\x83\x4f\x80\x97\xdf\xd9\x1e\x56\xd6\x19\xb0\x20\xe1\xb6\x0a\x48\xe4\x7a\xf2\x84\xe9\x53\x79\x0d\xce\x87\x0f\x10\xb5\x01\xa3\xb5\xbc\xa8\xa6\x36\x86\xcc\xe5\xb8\x4c\x8a\xcc\x60\x37\xb5\xac\x96\xcb\xec\x77\xd1\x78\x2f\x17\x95\xe9\x75\x6e\x14\xd4\x65\xf0\x1e\x22\x97\x94\x90\x2c\xca\x02\xb0\x40\xba\x84\xc9\x02\xd8\xb0\x83\x64\x87\x34\xb5\x29\x51\x48\x8b\x44\x69\x91\x99\x94\x0d\xf0\xfd\x01\x4a\x00\xce\x32\x44\x95\x1c\x32\x0f\x6a\x60\x20\x2a\xe1\x96\x72\x09\x78\xa9\x15\x53\xa1\x0b\x68\xd6\x16\xee\x82\xbb\x8b\x26\x54\x85\x23\x02\x9f\xd6\x22\x84\x31\x9e\xcf\x09\x36\xf1\xc5\xf6\x18\xb2\x50\x4e\xad\x6e\x82\x0d\xc6\x85\x72\x4a\xbb\x88\x8b\x6d\x27\x5d\x53\x4e\x6b\xed\x2d\x39\x42\x3d\x33\x3b\x2d\xa4\xba\x9a\x42\x66\xb4\x36\xab\xc9\x86\x7d\x68\x49\x50\x49\x5f\x16\xd5\xcb\xfa\x73\x2c\x14\x4d\x8a\x0c\x8b\x6c\xe1\x6a\x21\xd3\x49\x50\x1e\x09\xf6\xc0\xa4\xb4\xdb\xba\xcb\x80\xf4\x6e\xcd\xc5\x12\xe7\x24\xc8\xa6\xb1\x2a\x71\x16\xb8\x9b\x0c\x4e\x9f\xf1\x63\xe8\xb6\xbe\x39\x42\x67\xd5\x62\x58\x70\x26\x02\x28\x1c\x2a\x0d\xfb\xf3\xe3\x0d\xc2\xc0\x4d\x51\x2d\x3a\xd1\x62\xf8\x57\xc1\xa9\x6b\x2b\xd4\x88\xe5\xfd\x9a\xbe\x2c\x07\xa8\xba\x3c\x84\xa9\x31\x0d\xe4\x16\x8a\xf9\x45\x1e\x2e\x7f\x20\x5a\x06\xe8\x6e\x86\x35\x07\x19\xc2\x08\x6d\x30\xd0\x9f\x83\x6a\x79\xd5\xc1\xe6\x4b\xaa\x31\xc1\x3e\xae\x39\xd4\x00\x29\x7d\xfd\x81\x06\x94\x13\x7a\x2e\x5b\x57\x76\xb5\xda\xfb\x73\x84\x59\x8e\xf4\xb8\xb4\xca\x41\x8c\xaf\xbb\x52\x70\x17\xc6\x60\xc1\xcd\x01\x89\xd2\x1f\xb6\x31\x41\x19\x65\xf7\x2e\xef\x4c\xef\xfc\x01\xc2\x65\xeb\x70\xf8\xcc\xe8\x0d\x31\xb7\x88\x35\x4d\xb8\xad\x5b\x48\x3a\xdd\x62\xb7\x9b\xc5\x75\x37\x92\xb5\xa0\x79\x6b\x65\x69\x83\x79\x74\xdf\x96\xa5\xd1\x55\x5e\x82\x75\x21\x55\xe6\x7e\x09\xe2\x3c\x14\xf5\x85\x4a\x5b\xd7\xf7\x6a\x86\x9b\x6b\x5b\xaf\xc6\x22\xbf\xbb\x38\xeb\x7f\x18\x5c\xc4\x00\xe2\x7f\xb9\xeb\xdf\xc5\xbf\x5c\xdf\x5d\x5c\x0c\x2e\x3e\x86\x3f\xdd\xdc\x9d\x9e\xf6\xfb\x67\xf1\x7b\x1f\x7a\x83\xf3\xca\x7b\xfa\xa7\xf8\xa5\xde\xfb\xcb\xeb\x0a\x64\xf9\xcd\x8f\x83\xab\xab\xf8\xa7\xdb\xc1\xa7\xfe\xd9\xe8\xf2\x2e\x42\x3d\x3f\xfb\xe5\xa2\xf7\x69\x70\x3a\x6a\x18\xcf\x75\xff\xf4\xf2\xa7\xfe\x75\xff\x6c\x29\x9a\x79\x39\xdf\xc6\x25\xdd\x85\xc3\x77\x63\x08\xfb\x1e\x9a\x08\x4a\x58\x9a\x2d\x4c\x3c\x9a\x53\x52\x2a\xe1\x2f\xe1\x15\x40\x73\xc2\x8b\x6d\xc2\xca\xb4\x12\xcf\x1f\x88\x80\x04\x39\xd3\x9a\x8d\xa6\xc7\xf2\xbe\x15\x40\x45\x89\xba\x41\x6f\x69\xf4\xac\x12\x0b\x1f\x9f\xbd\x34\x2c\xd4\xa7\x57\xdb\x4e\xd0\x9c\x88\x65\x63\x81\x0b\x5a\x14\x73\x45\xc7\xed\x81\x82\x1d\xd3\x8e\xd7\x57\x03\x0d\x18\x48\x73\xde\xe4\x45\x33\x63\x8c\xe2\xe5\xb6\x09\x15\x82\x16\x36\xad\xcc\xe0\xbf\x76\xe1\x15\xf3\x62\x9c\xd1\x04\xd1\xb4\x84\x30\x31\x81\x74\x26\xac\xdb\x58\x7b\xaa\x98\x41\x73\x22\x40\x62\xd2\x82\xe8\x5c\x90\x43\x5c\xa8\x99\x2b\xf3\x08\x11\x46\x16\xe1\x71\xc8\x24\x49\x04\x51\xae\xf2\x34\x49\x1d\x56\x7f\xd0\x13\x0c\xc6\x26\x77\xa4\x90\x47\x7a\x14\xe0\x37\xb6\x98\xf7\xcc\x97\xa6\xf5\x35\x0c\x91\xe6\xfd\xa5\x4b\x63\x47\x4c\x65\xb5\x1e\x1b\xc8\x86\xe6\xa1\x43\xfc\xd7\xf3\xd6\x9c\x3a\x71\x41\x88\x66\x93\x5d\x3c\x63\xf3\x34\x56\xd1\x58\x48\x28\x71\xf8\xa1\x6d\xdd\x3e\x3a\x15\x04\x2e\x11\xeb\xad\x72\x6a\x34\x78\x57\x6d\xfc\x23\x84\x3d\x6a\x8d\x61\x4c\x66\x38\x9b\x18\x8b\x8c\xde\x9a\xf2\x5c\xd5\x49\xf4\x96\xdf\x13\x66\x2b\xb0\xbf\x08\x3b\x64\x46\x00\x2f\xd3\x7d\xbc\x71\xa2\x34\xdf\x40\xb5\x70\xe1\xca\xc4\x9b\xf8\x6f\x53\x89\xd4\x88\xab\xc1\x63\x13\x84\x59\xc2\x79\xb9\xd0\xf1\xc9\x84\x7e\xd6\x0d\x0e\x19\x69\x04\x34\x02\x97\xb6\x4b\xbc\xf6\x7c\x19\x00\x3d\x4c\xf6\xea\x3d\x61\x50\x6c\xc0\x54\x0c\x5b\x49\xb3\xeb\x59\x0d\xeb\x7b\x51\xb7\x21\xfa\x15\x03\xf3\x13\x8d\x6a\x30\x84\x06\x5a\xb7\x4e\x90\xe8\x71\x4f\x8e\xd0\x99\xcd\xc9\xd3\xbf\x9c\x9e\x0f\xfa\x17\xb7\xa3\xd3\xeb\xfe\x59\xff\xe2\x76\xd0\x3b\xbf\xe9\x7a\xfc\x76\x11\x2b\x5c\x39\x7d\xd5\x70\x6d\xcf\x21\x8e\xed\xc9\x2b\x53\x56\xfc\xa4\xca\x63\x07\x5b\xb2\x7a\xf4\x34\x9d\x8f\x52\x2a\x13\x7d\xfd\x2d\x46\x84\xa5\x80\x04\xb7\x11\xa9\x36\x37\x55\x9d\x85\x7f\x03\xf9\x37\x1c\x07\x31\xb7\xdd\x83\xa3\x68\xff\x1c\xa0\x62\x6c\xb1\x6d\x7d\xf8\xd3\x21\x0b\x6e\x9b\xa3\xd5\xf0\xbf\xba\xb9\xed\xe6\x16\x37\x51\x9d\x93\x19\x2f\x95\xb2\xc0\x9a\x3f\xba\xd7\x20\x15\xb4\x65\x55\x2c\x3c\x47\x08\x47\x47\x83\x82\x47\x48\xab\xc8\x39\x66\x29\x56\x5c\x2c\x5a\xa6\xd8\x8d\x79\x86\xc7\x26\x66\xa1\xe1\x95\xad\xf5\x7f\xb7\x0b\xe6\x55\xcc\xaa\xa4\x64\x40\xeb\x6e\x2f\x7f\xec\x5f\xdc\x8c\xfa\x17\x3f\x8d\xae\xae\xfb\x1f\x06\xff\xed\xf3\xee\x6d\xf9\xf6\xb8\x94\x0a\xd1\x97\xa2\xe6\x2e\x2e\x03\xb0\x91\xbf\x98\x7a\x26\xae\x1d\x8b\x61\x4f\x27\x43\xe6\x38\x8b\x28\x9b\x9f\x09\x5e\x4c\x67\xcd\x0d\x55\x47\x79\xd5\xbb\xfd\x61\xa3\x61\x42\x7e\xb6\x29\x7a\x60\x4e\x5b\x1d\xc6\x88\x4e\x2c\xdf\x33\xd8\x47\x95\xe1\x01\xca\x00\xbc\xda\x64\xf0\x6e\xe1\x68\x1b\x69\x2f\x75\xa6\xb5\x54\xf8\x6f\x78\xbd\x8d\x80\x6e\x03\xbe\x19\x5d\x23\x10\x37\x66\xea\xe9\xd4\x5a\x3b\x69\xf8\x2d\xba\xc1\xbe\x3f\xcc\xc8\x74\x4a\x52\x43\x5e\xd5\x86\xad\x29\xc8\xb2\xc0\xa4\xbc\xd7\x9b\x56\xd1\x56\xb7\xd8\xe2\x62\xf6\xa1\x1a\xdd\x19\xf8\x95\xff\xa4\x99\x57\x9c\xba\x3a\x77\x09\x67\x52\x61\xd6\x02\x16\xba\x66\x2d\xee\x12\xc2\x5f\x94\x15\xf1\xad\x81\xc4\x59\xae\xcb\x73\xb0\x89\x37\xc7\x56\xf1\x60\xd6\xe2\x11\x54\xf7\x08\x0a\xf3\x35\x6c\x42\xa5\xda\xf1\x93\x1b\x37\x96\xaa\x4e\x36\x29\x1d\x2c\x8e\x06\x46\xdd\x22\xa6\x19\x6b\x10\xd4\x26\x68\x8d\x5d\xdb\x71\x71\x74\x6f\xf1\x2c\x2b\x3b\xfb\x5a\xe1\x4e\x78\x5b\xdf\xbe\x55\xa9\x8b\x1c\xd4\x8c\x4e\x8b\xc4\x42\x03\x9a\x66\x4b\xe7\xb4\x35\x68\xb9\x0b\x36\x45\x87\x61\x2d\xfa\xf4\x10\xd2\x8b\x87\xac\xcd\xab\xd1\x50\xc7\x3d\xa4\x80\x2b\x77\x6b\x6d\x07\x4d\xb1\x46\x4c\x9d\x5b\xec\x6e\x59\x1f\xc8\xbd\x0e\xc2\x5e\x8b\x6f\xdf\xee\xcb\x18\x1b\xb7\x65\x7c\x1d\xb7\x25\x80\x7a\xae\xba\x5e\x08\x42\x37\xef\x77\x8c\x2b\x61\xae\xc8\x19\x96\x46\x72\x55\xc9\x2c\x1e\x38\xcc\x26\xc6\x8e\xa8\x0e\xd7\x4b\x82\xdb\x59\x08\x3a\x39\x2e\x0e\x8c\x4e\x0d\xf5\xf6\xf5\xe8\xc3\x4a\x00\xbe\xac\xc9\x7a\x84\x1f\x0a\x47\x5e\x79\x31\x7c\x0f\x18\x56\x86\x0b\x96\xcc\xd0\x3c\xc3\x26\xd3\x69\x86\xa5\x21\x69\xe7\x18\xc7\x63\x9a\x51\x05\x49\xda\xc6\xa9\x54\x59\x61\xad\xd1\x60\x71\xef\xe0\xa1\x70\x09\x12\xb3\x8c\xe8\xb7\x8c\x2c\x2b\x6b\x5c\x3e\x67\x6c\x59\x79\x64\x83\x2f\x96\xba\xa4\x4a\xb2\xb4\x71\x65\xe5\x76\x68\x8e\x07\x64\x59\xce\x65\xbd\x9d\xb5\x2d\x5e\x55\x3f\x8f\xd6\xbb\xe1\xa2\x5e\x3f\x4e\xc0\x22\x1f\xae\xc1\xe6\xab\xb8\x88\x8d\x27\x6b\x92\x71\xdc\x52\x9b\xcb\xb5\x6d\x60\x0e\xdb\xda\x4e\x79\x31\x6e\x83\xd5\x32\xa3\x5a\xde\xfa\x32\xbb\xbf\x3b\xb7\xbb\xb2\x0b\x86\x0c\x10\x2b\xa2\xe8\x7a\xa6\x8d\x60\xd2\x58\x91\x43\xf8\xbc\xb9\x71\x0b\x26\xd5\x79\xce\x35\x42\x2b\xc1\x76\x3d\x78\x97\x16\x69\x1b\x2a\x3c\xff\xa5\x80\x2a\xd2\x97\x93\x1b\x93\x35\xbc\x0d\x91\x29\x5a\xa7\xb0\xe6\x93\x58\xed\xf5\x36\x76\xaa\x84\x34\xd0\x39\x63\xa4\x69\x36\x37\xfa\xeb\xee\x07\x32\x2e\x60\x39\x17\x94\x43\x6e\xaf\xad\x7a\xb9\x04\x7f\xa4\xb1\xdf\x2d\x56\xf2\xef\x05\x29\x88\xa6\xfd\x71\x91\x4e\xeb\xb6\xcd\x35\xa4\xb3\x72\x4a\x33\xfe\x88\xf2\x22\x99\x21\xd7\x38\x4a\x49\x86\x17\xd1\xd4\x40\x5e\x52\x3c\x03\x44\xaf\x0d\xe1\x85\x92\x42\x2a\x9e\x43\xd4\x5d\xd9\xae\x28\x18\x10\x3c\xc2\x4a\x09\x3a\x2e\x54\x63\x34\x54\x84\xb3\xb1\xa1\x43\xeb\xe6\xaa\x7f\x3a\xf8\x30\xa8\x78\x93\x7a\x37\x3f\x86\xff\xfe\xf9\xf2\xfa\xc7\x0f\xe7\x97\x3f\x87\xbf\x9d\xf7\xee\x2e\x4e\x7f\x18\x5d\x9d\xf7\x2e\x22\x9f\x53\xef\xb6\x77\xd3\xbf\x5d\xe1\x56\xaa\xf7\xda\xbe\x11\x38\x80\x01\xd1\xb2\x8b\x35\x5c\x82\x07\xd0\x69\x97\xb6\xd7\x13\xd4\x73\xa0\x28\x61\x55\x32\xec\x5c\x83\xe0\xd2\x36\x65\xd2\xac\x07\xf1\x0c\x2b\x6c\xcb\x4e\x1e\xa1\x1e\x72\xe5\x43\x21\x32\x53\x6a\x61\xc1\x22\x46\xe8\xdd\x31\x4d\x68\x89\x21\x29\x35\xb7\xb2\xf2\x05\x9f\x58\xac\x96\x8c\x84\x08\x89\xb6\x58\xfc\xd1\x90\xf5\x1f\x08\x53\x05\xc0\xb7\xe1\x2c\x73\x65\x5e\xdd\x0b\x41\x66\x95\x1b\xa5\xa4\x39\xcd\xb0\x28\x8b\x14\x5c\xda\xb6\x40\x60\x77\x63\xf5\x89\xf4\x75\xe4\x6a\xa7\x3c\xdc\x0d\x10\x8c\xfb\xf4\x7c\x00\x22\x50\xa2\x1c\x02\xaf\xeb\x7c\xc8\x0c\x16\x88\xed\x31\xc7\x10\x2d\xac\xb8\xb5\xa7\x99\xee\x5b\xeb\xde\x5f\x37\x14\x09\xd8\x00\x6c\xc6\x58\x9e\x9f\x2a\xba\xc6\x0f\xd2\xfd\xd1\x67\x4a\x2c\x3a\xcb\x35\xb7\x00\xe0\x26\x41\x36\xb5\x81\x34\xff\x1f\x7b\xdf\xd6\xdb\x46\x72\xe5\xff\x9e\x4f\xd1\xc8\xff\xc1\xf6\x1f\x14\xb5\x93\x20\xc0\x62\x80\x7d\x50\x64\x79\x86\x03\x5b\x76\x24\xd9\xde\xdd\x74\x40\x17\xbb\x8b\x64\x47\xc5\x2a\xba\x2f\x92\x39\xc1\x7c\xf7\x45\x9d\x73\xea\xd6\x37\x76\x93\x94\xc7\x3b\x3b\x0f\x9b\x4d\x2c\x76\xdd\xeb\xd4\xb9\xfe\x7e\x21\x71\x01\xba\x3b\x22\xd3\xfa\x35\x28\x3b\x26\xcb\x8b\xbc\xf1\xd6\xe9\xce\x01\x24\xae\x43\xff\x16\xfa\x11\xfa\x56\xd7\xc1\x2f\x5c\x86\x55\x58\xa8\x4a\xa6\x86\x78\x7d\x93\xc9\xf3\x0d\xfb\xf2\xc2\xcc\x14\x0b\x01\x2d\x78\x28\x80\x3c\x70\xa1\x2d\x91\x9d\x16\x72\xfd\xcb\x15\xcb\x9e\xf5\xda\xaf\x2d\x1a\xc9\x0a\x66\x8f\xb3\x51\x31\x79\xe9\x81\xef\xda\xf6\xaf\x01\x01\x8d\x09\x52\x74\xe1\xa1\x91\x6d\xce\xf5\x0f\x6d\x66\x94\xc0\x84\x37\xfb\xbf\x21\xed\x36\xa0\xa9\x68\x97\xdd\x7e\x94\xf7\xa8\x6b\xd3\x1a\x5f\x7e\x02\x0c\x6f\xea\x49\xef\x19\x46\x9b\x8d\xa3\x93\xd2\x8c\x29\x8c\xa6\x37\xeb\x9f\x6a\x01\x5c\xd8\x85\xa1\xa1\xcb\x39\x38\xb6\x61\x2b\x0c\xe4\x1c\x40\x01\x34\x42\xd8\xe6\x08\x08\x5e\x80\xbb\x57\x6a\x73\x8b\x7f\xae\x28\x62\xf7\xdd\xbf\x8d\x7b\x67\xcb\x7c\x17\x19\x78\x53\x3f\x65\x9d\x2a\x36\xe8\xcd\x85\x71\x55\x32\x6b\xc3\x07\xb9\xa9\xa4\x7e\x8a\x4f\x91\xec\x30\x3c\x9a\x55\xeb\x94\xfe\xe7\xde\x8c\x78\xe3\x88\xcd\xf1\xf7\x4f\x06\xa8\xf4\xa1\x86\xa3\x44\xdd\x41\x3e\x2c\xb5\xee\x3f\x68\x0b\x96\xdc\x3f\xb2\x3c\x45\x5f\x21\x64\x1f\x4c\xa3\x1f\xd5\x23\x7f\xe0\xf9\x24\x4a\x78\x5e\x32\x82\x58\x28\x20\xfc\x0a\x17\x8a\xda\x89\x25\xa4\x88\x23\x5e\x85\x04\x06\xbf\x32\x5b\xad\xb5\x3d\xe9\x05\xcf\x55\xae\xc5\x51\x89\xf8\x35\x5b\x9e\x50\x51\x7b\xc7\x02\x2c\x05\x7b\x68\x62\x46\x1c\x52\x7e\x1a\xcd\x6c\x5d\x90\x89\x4e\x19\x18\xcf\xbe\x74\x07\x5a\x30\x12\x9a\x58\x85\x3c\x89\x56\x4a\x30\xb9\x9a\x4e\xa7\x11\x2f\x93\xe9\x8b\x51\x07\x9d\x1a\xf4\xe3\x5d\x36\xb7\x53\x28\x55\x70\xb1\xb3\x85\xd8\x36\x03\x5f\x2f\x33\x64\xfc\x17\x19\xba\x3c\x5a\x8e\xff\x6d\xbd\x8c\xf5\xeb\xba\xce\xdb\x2d\xd5\xd1\xf5\x30\x1d\xed\x00\x2a\xf8\x88\x96\xf0\xf7\xed\x96\xd7\x88\xfa\x2e\x43\xe2\xe1\xea\xbc\x3a\x30\xd7\x94\x1c\x5b\xbc\xf4\x41\x75\xb1\xdd\x1d\x84\x93\xd2\xda\x12\x55\x51\x1f\x54\x31\xd3\x3c\xd2\x2d\x27\xce\x56\xbe\x1d\x93\xf2\xa3\x44\xb5\xe9\xc6\xdc\x38\x56\x8b\x72\x83\xc4\xff\x76\x09\xdd\x0d\xd6\xa2\x1c\xa9\x9f\x01\x0d\xa6\xf1\xa2\x2f\x14\x0f\x13\x88\xcb\x3c\x2b\x00\x1d\xe6\x90\xc2\x1b\xdb\x0c\x36\x0d\x21\x9b\xdd\x16\x7d\x70\x58\x92\x23\x76\x58\x4b\x64\x5c\xfc\xf4\x49\x81\xaa\x0e\xc4\x79\xba\x25\x43\x3d\x91\x68\xf4\x1e\x01\x24\xed\x41\xc1\x2d\xd0\x1d\x3c\x54\x44\xca\x74\x80\x06\x0d\x07\xbd\x8a\x96\xa6\x8c\xe3\x9e\x7b\x34\x3a\x29\xe0\x25\x3e\x4e\xa3\x57\x2a\x07\xae\x1c\x0a\xdc\x52\x6c\xdd\x3d\x5b\xa5\xeb\x04\x1d\xc4\x0f\xdf\x99\x94\x0a\x9c\x21\x36\x01\xb8\xf4\x29\x93\x65\x6b\x03\x2e\xe3\x08\xda\xc2\x4f\x3e\x68\x53\xb8\xf5\xe7\xd4\x3e\xfc\x14\x21\xa8\x2f\x3e\xde\x46\xb8\xd4\x84\xac\x97\xf7\x0d\xd4\x6b\x64\x7f\x52\x07\x2c\xd7\xfc\x00\x75\x20\xd8\x07\x5c\x74\x03\xad\xa8\x97\x9d\x97\xc9\xda\x3d\x3f\x21\x9b\x14\xf1\x0b\xd0\x3c\x37\x0e\x2b\x10\xf3\xe5\xfc\xc4\x23\x62\x2c\xb7\x66\xac\x92\x1c\x3c\xf5\xac\x8c\x52\xe5\x37\x1b\x65\xe5\xfe\xec\x8e\x91\x78\x16\xfb\x8e\x5a\xa9\x30\x6a\x4f\xf3\x0c\x02\x2e\xa0\x57\x66\x88\x0e\x60\x52\xe3\x50\x31\x26\xb8\xfa\x3a\xc2\x5d\x58\x6f\x19\xcb\xb0\xab\xc6\x22\x99\xf4\x8b\x2c\xe7\x08\x4c\x55\xe8\x27\xbc\xcc\x1e\xf4\x45\x6d\x1e\x6b\x7b\x40\x41\x02\x34\xcf\x5e\x2c\x71\xd8\x1e\xba\xd5\x3d\xdf\x15\x3e\x36\x3e\x9d\xa8\xa8\xeb\x40\x66\x7a\x3e\x86\x61\x7e\xef\x56\xc0\xc2\xcd\x3d\xb6\xbf\x61\x4f\x09\x76\xfa\x46\x7f\xdc\x93\xd7\xd5\x68\x5c\x9f\x41\x57\x27\xe3\x1c\x4b\x24\x26\xdc\x3a\xd3\x1e\xba\xd4\x8d\x16\x26\x48\xe7\xa3\x03\xeb\x47\x1b\x39\xb1\x24\x00\x3c\x2f\x24\xaa\x05\x4e\x73\xdb\xa8\x78\x0f\x61\xb7\x76\x41\xb1\x36\x80\x13\x1a\xca\xb2\x76\x02\x4e\x43\xad\x42\xc4\xd3\x58\xde\x64\x1c\x39\xad\x1d\x1e\x98\x0f\x44\x9b\xdb\x99\x03\xe4\xf4\x58\x5a\x38\xc2\xa5\x41\x92\x05\x54\x81\x13\xae\x97\xef\x42\xb6\xa6\xdf\x98\xe4\x9b\xdb\xab\xcb\x9b\xab\xbb\xaf\x96\x23\x64\x12\x74\x46\x27\x09\x99\x71\xbe\xbc\x7a\x75\xf1\xfe\xf5\xdd\xfc\xe5\xec\xe6\x29\xb2\x84\xe8\x4f\x07\xa4\x09\xdd\x12\xae\xe6\xa5\x92\x25\xff\x72\xd4\x9b\x9c\x57\x72\xce\x46\xa4\xab\x5b\xec\xda\x3e\x75\x07\x1b\x6d\xe2\x82\x5a\xd0\x4e\x42\x45\xc2\x17\xcd\xc2\x80\x7a\x8c\xaa\xcb\x4c\x08\x28\x22\xb3\x3e\x56\xaa\x0c\xd1\x8b\x0a\xf2\xc7\x50\xc3\x91\x4c\x8d\xe5\x22\x00\x46\x05\xbf\xcf\x5a\x5b\x42\x58\x3e\xb6\xd5\x0b\x90\x67\x50\x43\xd4\x07\x1d\xba\xca\x24\x77\xc3\x40\x42\xa4\x4a\x46\x9d\x78\x6f\xb4\x89\x4f\x59\x23\x48\x8a\xd7\x50\x5d\xd3\x9c\xb8\xe0\x7c\x1a\xf5\xd3\xfc\xd1\xce\x10\x2f\x71\x26\x51\x31\x0d\x6e\xf3\x6d\xfb\xd1\x3d\x77\x57\x00\xd6\x5d\xef\x24\x03\x47\x34\x70\x0e\xb9\x8d\xa4\x8d\x40\xd0\x6e\xe7\xa1\xbe\xcf\x30\x95\x42\x2d\x6b\xeb\xac\x45\xa1\x5e\xeb\x0c\xdc\xd5\x0c\xb9\x5b\xa2\x44\x54\x85\xb6\xfe\xd1\x76\xbe\xf8\x78\x1b\x4b\xa4\xa6\xa4\x57\x88\x80\x9d\xb1\x0b\x0c\xe4\xab\xa0\x7f\xa3\xa1\xf8\x12\xec\x39\x3a\x2a\x37\x9c\xc9\x02\x19\xe1\x84\xe0\xb9\x3b\x19\x38\x1e\xce\x53\xe2\x04\x00\xda\x40\xf7\x3d\x91\x82\x29\xb8\xb5\x7a\xbc\xf4\x57\x22\xc5\xaa\x9f\xa7\xae\x1a\x45\xc8\x12\x7c\xca\x93\xd3\x92\xac\x3e\xf4\x14\x51\x82\x65\xeb\x21\x0a\x53\xc7\x07\x9d\xa5\x3b\x6c\xee\xf7\xa3\x74\xc2\xa3\x34\xe0\x5d\xf7\x5f\x89\x68\xad\xb4\x00\xb5\x98\xcc\x2e\xd6\x68\x6b\xa4\x05\x24\xc1\xe8\x65\x6c\x7d\x75\x1c\x94\xce\x41\xd1\xc7\xeb\xb7\xd7\x57\x7e\xec\x70\x76\x7d\x77\xf5\xc3\xd5\x4d\x50\x0f\xf7\xfa\xed\x45\x50\xd3\x76\x7b\x77\x53\x2b\x65\xfb\xeb\xdb\xb7\xaf\xaf\x1a\x41\xc8\xab\xbb\xd9\x9b\xa0\xf1\x97\xef\x6f\x2e\xee\x66\x6f\x83\xdf\xfd\x75\x76\x7d\x71\xf3\x5f\xfe\xbf\x5c\xdd\xdc\xbc\xbd\xa9\xf5\xf7\xfe\xb2\x3f\x9c\x19\x4c\xa3\xdd\x14\x77\xd1\x12\x0f\x55\xa8\x75\x49\x3f\x1f\x87\x39\x57\xb2\xb2\x55\xa1\x1e\x6c\xe9\x10\x27\xd9\xe7\x8a\xe7\x3b\x2a\xcb\x47\x2d\x14\xff\x25\x61\x12\x73\xa2\x4a\x62\x55\x4e\xfd\x64\x9e\x58\x7e\x44\xde\xe5\x57\x44\x79\xfe\x03\x78\x34\xcd\x8f\x1d\x77\x1f\x5c\xd6\xbf\x61\x1f\xf6\x6f\xd3\x58\x06\x9c\x67\xde\x57\x01\x65\xeb\x34\x96\x06\xdc\x31\x55\x49\x31\x85\xbb\x3c\x55\xf9\xea\x9c\x18\x0c\xb4\xac\x53\xf7\x0b\xa5\xee\xcf\xb9\x3c\x47\x22\xfe\x73\x56\x95\xea\x1c\xa2\x21\x98\x2d\x52\x9c\x1b\xa0\x73\x83\x14\x5f\x9c\xaf\xb3\x07\x0e\xff\x31\x5d\x97\x1b\xf1\xff\x8a\xed\xfa\xcb\xd9\x4a\xe4\x67\xfa\xdb\x33\xff\xdb\x33\xf3\xed\x99\xf9\xf6\x4c\x7f\x86\xff\xb1\xdd\xa1\xe1\xce\x89\x72\x32\x96\x99\x2c\x78\x5e\x42\xe9\xe0\x63\x9e\x95\x8e\x10\x77\x17\x3d\xfb\xd7\xbf\xa2\x69\xce\x1e\x31\x3b\xf6\x25\x2b\xd9\x3b\xd4\x1c\x7f\xf9\xe5\x59\x54\x94\x8a\x68\x1b\xb6\x2c\xff\x5c\xf1\x52\xeb\xb0\x82\x27\x65\xf4\xff\x63\x09\x4c\x2f\x9b\xdd\xbc\x44\x8d\x1a\xb5\xcb\xb4\x88\xfe\x03\xdb\x9c\x21\x44\x45\x5a\xe8\x96\x3a\x12\x67\x32\x26\x5a\xb8\x31\x3a\x8c\xaf\xcf\xe2\x25\xfd\x7e\x84\xc4\xf9\x2c\x82\x40\xbc\x05\x60\x2c\x3e\x0b\xc0\x42\x11\x8a\x99\x58\x4c\x64\x0f\x2f\x48\x40\x1a\x5c\xcb\x1d\xb9\x63\xc5\xfd\x89\xab\xa5\x01\x1d\x60\x4c\xb5\x73\x6b\x71\x73\xe0\xb9\x4d\xf9\xfc\xb0\x42\xea\xae\x62\xf0\xd6\x7e\x72\x5e\xe6\xbb\x39\x2b\xf5\x5d\x39\x8e\xc7\x77\xf8\xa6\x8e\xab\xd1\x86\x37\x78\x40\x8d\x76\xb0\xab\xdf\x4e\x8d\x76\x4b\xf9\x75\xb3\x46\x7b\x76\x3d\xbb\x9b\x5d\xbc\x9e\xfd\x77\xad\xc5\x8f\x17\xb3\xbb\xd9\xf5\x0f\xf3\x57\x6f\x6f\xe6\x37\x57\xb7\x6f\xdf\xdf\x5c\x5e\xf5\x17\x5d\x34\x47\xef\xc4\xf3\x59\xe4\xf7\xf3\x7d\x74\xe7\x99\x9c\x18\x3b\x23\x8f\x06\x61\xc4\xc2\xa9\x62\x22\xfb\x39\x93\xab\x09\x30\xcd\x7e\x1f\x5d\xe5\xf9\x6c\xc3\x56\xfc\x5d\x25\x04\x38\x86\x30\x50\x7d\x99\x73\x10\xb4\x93\xe8\x9d\x4a\x67\xde\x77\x90\x5d\xd3\x3a\x0d\xe8\x9f\x78\x9b\xb1\xfb\x09\xf5\xef\xb9\x41\x6c\xe6\x0e\xb9\x01\x2d\x65\xff\xf7\x40\x5b\xa1\x96\x44\x40\x36\xb1\x79\x00\xd1\xe7\x4a\x95\x2c\xe2\x5f\x12\x28\x34\x6a\x3f\x27\xaf\xd5\x51\xbc\xcb\xfb\x29\xc2\xda\xef\xf4\xfe\xda\xcc\x76\x6f\x17\x62\x24\xce\xc7\xd0\x9e\xd2\x2c\xdf\xe0\xa7\xc4\x74\xda\x6e\x34\x94\xe2\x04\x89\x8f\xaf\xd5\xaa\x1d\xf2\x0b\x2a\x43\x09\xa7\xcc\xf1\x33\x41\x1a\xb5\x5a\x45\x45\x26\xef\x63\xf9\x71\xcd\x65\xa4\xaa\x1c\xff\x09\x9e\xb5\xac\x88\x96\xa2\x2a\xd6\x1c\xc8\xdb\x27\xd1\x23\x8f\x36\x6c\x87\xaa\xc3\x46\xe5\x1e\x08\x1a\x1c\x19\x7d\x38\xe1\x6b\x91\x49\x2d\x2d\xb6\x99\x09\xb3\xd5\xb7\xfe\x14\x61\x78\x53\x66\xc7\x8e\xaf\x82\x1f\x96\x4b\xf8\xb8\xe6\x90\x46\xe5\x3c\xc0\xc6\xd5\x41\x92\x1b\xd0\x6a\x95\xba\xaf\xb6\xae\x20\xf7\x99\x41\xbd\x81\xe5\x7e\x50\x59\x1a\xa5\xd5\x56\x64\x89\x95\xbb\xfa\x01\xed\x4a\xe1\xc7\x78\xf0\x08\xd4\x81\x5a\x96\x43\xdf\xc4\x5a\x82\xcd\x9e\x4f\xb0\x07\x7f\xe0\x89\x11\x18\x3c\xb6\xc0\xaa\xe0\xf9\x59\x99\x67\xab\x15\x04\xd7\x4c\xea\xca\xb7\x0f\xd1\xe0\x4a\x40\x8f\xcf\xd2\xf0\x73\x28\x85\x5a\x65\x09\x13\x7e\x98\xc6\xd9\x77\xb6\x06\xdc\x5c\xfb\x6d\x95\x23\x4f\xff\xd2\xd5\xe1\x76\xd6\xb6\x6c\x73\x0e\x30\x04\x73\x24\x60\x3c\x9e\x18\x72\xb6\x44\x3a\x7a\x62\x30\x72\x49\xc6\x86\x04\xce\xbc\x70\xae\x6f\x83\x81\x88\x5c\x15\xc0\xfa\x1a\xa9\x47\xa0\x10\xd6\x16\xbb\x36\x60\xf5\x4c\xa5\x02\xdd\xc4\xe2\x22\xda\x48\x8b\x81\xb5\x5c\xda\x90\x12\x26\x82\xad\xb2\x07\x2e\xbf\x3e\xa4\x86\xd7\x41\xc2\x92\x35\xd7\x26\x0a\x3c\xc9\xa7\x16\x59\x1e\x5f\xf6\x28\x61\x65\xb0\xa2\x7c\x51\x0a\x6c\xf0\x0c\x8a\x9d\x33\x19\xe1\x88\x9b\xb2\x0b\x31\x10\x07\x3d\x4a\x80\xa2\x65\x25\x52\xeb\x73\x70\x2c\x20\xa4\x0d\x0a\x1f\xaa\xfd\xf7\x07\xf9\x57\x42\x2d\x90\xaf\xb9\x01\x15\xe9\xbf\xb0\x5d\xa8\x73\x0f\x3c\xcf\xb3\x74\x8c\x64\x32\x6b\xf2\xd6\x7e\xda\x37\x40\xcb\x03\x62\x7b\x02\xa1\x90\x69\x9b\xb3\xac\x6b\xee\xf5\x84\xb2\x7d\x66\x02\xd8\xf2\x85\x35\xe6\xad\x22\x61\xe0\x5e\xa0\xf0\x4b\xf5\x10\xcb\x34\xe7\x72\xd4\x46\x37\x53\x94\xf7\xac\xa5\xcb\x6a\xee\xdf\xe4\x23\xf2\x4c\x31\x29\xd6\x26\x9b\x8e\xa9\xd9\x37\x5b\x87\x8e\x56\x20\xed\xb1\x9b\x18\x44\xc0\x06\xed\x68\x7d\xdd\xef\xc8\xbd\x73\x54\x11\xd5\x13\xdc\xa8\xaa\x54\x1e\x85\xba\x9e\xcf\xcc\x32\xa9\x9b\xd8\x3a\x88\x8d\x59\xda\x4a\xc6\xe8\x9e\x0f\x73\x35\xbb\x54\x95\x96\xac\xab\x51\x58\xb1\x1e\xaf\xf8\x8e\x97\x36\xcd\x4e\x18\x70\x40\x40\x1f\xb1\xb3\x0e\xf3\x8c\x4d\x2a\xa1\xad\x0d\x01\xd0\x20\x4b\xef\xbf\xd9\x2a\xc9\x25\x79\xc3\xa5\x8a\x25\x35\x6e\x60\xb1\x2d\xcd\x66\x90\x74\x30\x21\x83\x1c\x43\x58\xbc\x50\xe2\x81\x02\x5b\x1e\x04\x0c\x80\x43\xea\x01\x5e\x6a\xdd\x46\x6b\xf2\xe0\x8b\xa1\x08\x34\xf8\xe4\x6b\xd8\xd0\x39\x5f\x65\x45\xc9\xfd\x3c\x0d\xff\xfb\x93\x41\xd2\x06\xca\x7f\xdf\xd2\x77\x42\xd2\xee\x7b\xc5\xf5\xad\x1d\x31\x9e\xdd\x96\xa7\x33\xfb\x5d\xff\x61\x08\x92\xad\x52\x4f\x48\x04\xaf\x00\x9e\x01\x4e\x9c\xf5\x50\x79\x51\x58\xf0\x16\xbb\x49\x96\xb8\xd5\x20\x46\xc2\x16\xad\x2a\x96\x33\x59\x72\x5e\xc4\x12\xab\x52\xb0\x64\x2e\x48\x92\x5d\x06\x18\xc4\xee\x6d\x4e\x54\x51\x62\x42\x3e\x7c\xb2\x64\x99\xa8\xf2\x4e\x75\x19\x4f\xe5\x41\xd9\x7f\x7d\xab\x74\x09\xcd\x46\x6d\x9b\x66\x53\x89\xbc\x5b\x64\x93\x58\x0d\xb7\xa4\xe1\xbf\x0c\x33\x6d\x3a\xa6\x60\x44\xee\xf0\xfd\xb6\xbe\x92\x8e\xec\xa2\x7f\x2f\xe6\x5b\x35\x42\xe2\x11\xa5\x55\x6b\x63\xc5\xe7\x86\x4d\xdf\x13\x0d\xfe\xdc\x05\x67\xc3\x8a\x7b\xc8\x1e\xdd\x67\x4a\xec\xf7\x0f\xfe\xf9\x4f\x7b\xac\xb2\x3e\xd9\x05\xa7\x76\xcd\x64\x0a\x2c\xd7\xac\xac\xbd\x40\xf6\x0e\x00\x86\x6c\x69\x84\x63\x77\x78\x1d\xa2\x55\xf3\xa4\x91\xea\xb0\x6f\x9d\x6a\x39\x12\x7b\x42\xe6\x41\x2f\x61\xe6\x42\x5b\xc4\xcc\xbd\xec\x84\x65\x6c\x2f\x6c\xf7\x11\x5c\x66\xab\xd3\xd7\x72\x0f\x05\x77\x76\xac\xe6\x4d\x49\x99\xd0\x55\xa4\xf7\xcb\xe2\x39\x1f\x79\x19\x21\xd2\xa9\x85\x99\x5f\x31\x1f\x4b\x82\x3a\x87\x1f\x22\x5e\x3e\x56\x85\x14\xd1\x77\x36\xfd\xe5\xbb\xbf\x98\x9a\x80\x5d\xb4\x84\xb5\x86\xc2\x1b\x95\x24\x55\x0e\xe0\xd2\x86\xff\x9e\xe3\xdb\x34\x06\xd8\xe4\x02\x5f\xe4\x02\x44\x14\xd4\x17\x74\x53\x39\x93\x9b\x21\x98\xd4\x1d\x58\x97\x08\xda\x6e\xdf\x42\x02\x41\xcb\x8b\x32\x2a\x4a\xbe\x6d\x95\x4a\x81\xd2\x15\x3e\x27\x47\xd5\xae\xb7\xc1\xab\xef\xc7\xc8\x78\xc3\xb6\x1d\x66\x08\x62\x2f\x1f\xdb\xe2\xbe\x6d\xb0\x49\xcb\xf5\xb7\x12\x80\x9f\x01\xdb\x8b\x40\xab\x9b\xab\x67\x71\x3e\xbe\x4a\x71\xce\x18\x92\x10\x0b\xf7\x42\xf4\x3a\x7d\xb2\x2d\xfc\x74\x7c\xfc\xd6\x55\xa5\x10\xf1\x05\x36\xb8\x40\x8c\x16\x1f\x56\xe6\x10\xd8\x9f\xfa\xc6\x98\xb6\x7a\xb6\xe3\x48\xc8\x0b\x87\x52\xf4\x15\x11\x2f\x3e\x34\x96\x68\x2c\xe0\xc5\x83\x8f\xf0\x03\x0a\x9c\xcb\x28\x1c\xe4\xf7\xb0\x40\x17\x1f\x42\x98\xa6\x60\x89\x55\x36\x08\xcf\xaa\x49\xc3\x0f\x2f\x54\xca\xa5\x2a\x79\xc4\x22\x99\x89\x73\x59\x09\x71\x7e\xad\xa4\x16\xcc\x45\xb6\xc2\x2c\x48\xf0\xf1\x23\x87\x9d\xe3\x42\x0b\x82\x3b\xde\x15\x00\xe1\xac\x87\x84\x71\xa7\x52\x4b\x4c\xbd\x05\x62\x17\x4b\xfd\x05\xd1\xb1\x00\x85\x54\x66\x2b\xa6\xb0\x37\x83\x9c\x4d\x7d\x01\x7a\xc0\xce\x6f\xbc\xe5\x80\xf5\x81\x4d\x1f\x55\xa9\x04\xf9\x03\x47\xd8\x7d\xd7\x5e\xa2\x38\xb5\x66\xb2\x88\x30\xbc\xb5\xe0\x42\x21\x3d\x5d\x97\x10\x50\x1b\x96\x1d\xe3\xf5\xf5\x87\x80\x8d\x75\x8e\x20\x96\x17\xe6\x27\x96\xdc\xca\xd2\xcc\x10\xe2\x27\xb0\x06\x58\x9b\xc3\x86\x80\x68\x72\x1d\x93\x18\x0b\x63\xda\x3c\xa5\xc0\x4a\x43\xee\x47\x6b\xcf\x22\xfc\x8e\xd1\x17\xcd\x8c\x86\x5d\xaa\xde\xa8\x75\xfb\x63\x4f\xf6\xb2\x31\x97\xac\xda\x3a\xe0\x3c\xfe\x9a\x01\xec\xa7\x84\x1e\x77\x38\xe3\xf4\x6f\x63\x71\xc3\xcd\x4a\x9d\x22\x8e\xf7\x19\x61\x44\xe6\x6a\x69\x52\x78\x0e\x87\x3e\x19\x18\x48\xf1\x8b\x37\x7d\xc0\x93\xe6\x21\xe9\xb2\x9e\x95\x9c\x93\x7d\x3d\x6c\xb0\xf5\x05\x7b\x2b\x5f\xe1\xe7\xef\x94\xc8\x92\xfe\xe8\x93\x79\x9a\x80\xd5\xa6\xe1\xce\x07\xfe\x27\x6e\x98\x65\x69\x50\x18\x56\x29\x79\x52\x3a\xff\x51\x73\x72\x63\x3c\x95\xc6\x5c\xb0\xad\x00\xb6\x9e\xe3\x0c\xd3\xcf\x0a\x94\xb0\x40\xf9\x2e\x2a\xd2\x40\x11\x03\x8e\xcb\x84\x91\x7d\x11\x0c\x04\x64\xd3\xe3\x5a\x09\x3e\x41\x07\x15\x84\x76\x62\xb9\xe5\x79\xa2\xb4\x91\x16\xa5\xea\x91\x52\xbe\x33\x91\x3a\x8c\x8c\xe7\x10\x69\x86\x78\xd0\x0b\x02\x02\xe3\xd6\x81\x68\xc9\x99\xf6\x1f\x5b\x03\x06\x7c\x2c\xc8\xd4\xa9\x42\x47\x7d\xa7\xe0\x23\x05\x74\x70\x29\x88\x4f\xa5\xe6\x0a\xd2\x8b\x1e\x8c\x67\xdc\x0e\x73\x0b\x7f\x00\x0f\x0c\x32\x79\x95\xb5\x7d\xa5\x5a\xbc\xfa\x52\x42\x59\x17\xa2\xc0\x61\x74\x40\x1b\x88\x90\x21\xc0\x50\x0d\x71\x45\x16\xb4\xa9\xb1\x74\xce\xaf\x67\x85\xaf\x92\xb4\xee\x33\x56\x2d\x99\xe0\xd4\x24\x7a\x16\x4c\xf4\x19\x94\xfd\x48\x05\xfd\x91\x83\x22\x58\x1a\x38\xae\x93\x28\x2b\x63\x99\x15\x78\x32\x73\x2e\xf8\x83\x1e\x9d\xcf\xca\x4c\x81\x0c\x42\x67\xb1\xd3\x86\xfc\x06\x46\x85\x46\xa9\xc5\x90\x86\x04\xdb\xdc\x2f\x1f\x61\x90\xa6\x0c\x24\x3b\x95\x04\xf4\x03\xfe\x05\x99\x8c\xb4\xa1\x8b\xbe\xfd\x54\x77\xe7\x08\xb6\x08\xa6\x12\xe8\xfd\x77\xaa\x42\x4e\xc4\x94\x58\xc6\x4d\x3d\xbc\xcd\xe5\xcd\x50\x19\x5d\xa8\x72\x1d\x6c\x04\xe1\xd8\xe1\x4d\xe2\xda\xc4\x2e\x81\x34\x12\xd6\x55\x72\x56\xae\xa3\xac\x9c\x40\x12\xb6\x11\x1c\xb1\x64\x29\xc1\x00\x53\x73\x99\x65\x75\xef\xde\x67\xfa\xfb\x42\x3d\xf4\xe9\x74\xc7\x86\xf4\xf0\x56\x6f\x05\x93\x73\x14\xa8\xbf\x42\x50\xcf\x83\x18\xec\xf2\x63\x55\x8b\xb9\xa5\xfc\x39\xc9\x38\xad\xa6\x73\x13\x00\x7f\x6a\x15\xce\x74\x34\xc1\xc3\xe0\x0a\x47\x8d\x66\x0e\x19\x98\x26\xb8\x90\x09\x2d\x2c\xc8\x4b\x36\x5c\x0a\xb8\x78\x1f\xab\xb9\x99\xcd\x69\xdd\x17\xf0\x33\x27\xe0\x5b\x0d\x3e\x0d\xd9\xf9\xda\x1b\x52\xdf\xf6\xf1\x71\x8f\x86\xc2\x74\x50\xec\x63\xcf\xb0\x9e\x36\xfe\xd1\xe9\x42\x68\xc6\x41\x3e\x5a\x7e\x44\xeb\x53\xc6\xa4\x1e\x1e\x15\x4a\xdb\x35\xc6\xc3\xd1\x0e\x21\xe9\x9b\x20\xaa\x25\x70\x7e\xca\x5a\x9a\x90\x68\x66\x70\xbd\x3f\x12\x35\x46\x33\x69\xa9\xff\x27\x51\xfc\x47\x3c\x59\x45\xfc\x47\xe4\xd0\x30\x48\xa4\x86\x05\x92\xee\x4f\x1a\x10\x11\x5b\x4f\x3b\x66\xb3\xb8\x0b\x47\xec\x84\xa3\xbc\x79\xbf\x26\xfd\xa2\x07\x86\x80\x09\x6f\x0b\x6c\x80\x9e\x49\xb4\x39\x77\x86\x9b\x11\xd0\xb2\xf3\x2a\x29\xdd\x84\x2d\x9b\xdd\x5f\xcd\x87\x7a\x89\xb6\x15\xbd\xa8\x96\x3d\x4e\xe5\xb1\x34\xad\x39\xba\xeb\x0b\x21\x1a\x4d\x35\x59\x1c\xbd\xb3\x0a\x3e\x6a\x83\x53\x04\xf0\x57\xae\xc6\xa9\x2e\x07\xc0\xe7\xbd\xe0\x0e\x43\x79\x1a\x39\x1e\x51\x50\x3d\x7a\x28\x0b\x85\x30\x7c\x7d\xa8\xb5\x79\x89\x37\x45\x05\xc5\x43\xcb\x4a\x8b\x23\xaf\xc2\x2a\x96\xc0\x5d\xb9\xcc\x20\xad\x83\xd6\x25\x96\x6f\x14\x55\x6a\x81\x7a\x65\x26\x69\x52\x04\x68\xd9\x9e\x59\xb8\x26\xfa\x87\x97\xf0\x6c\x2f\x31\x58\x5d\xc3\xef\x86\x8c\x2b\xc8\x0b\x9d\x68\xdd\x23\x77\x93\x4a\x98\x8c\xe5\x3f\xf5\xf2\x18\x4a\x46\xda\x56\xb5\xc4\x4b\x6c\xf0\xce\xa3\xe7\x9f\xb0\xd1\xe7\x7f\x79\xf1\xe9\x05\xd2\xdd\x56\x05\x20\xe4\x4d\xc2\x27\xc4\x16\xdb\x56\x42\x40\x56\xb2\x99\x01\x14\x41\x00\x36\x80\xed\xa2\x97\x8d\x89\xac\x9c\x91\xcc\x75\x7b\x39\xeb\x9c\xe7\xf5\x22\x4a\x58\x99\xac\xcf\x8c\x36\xe7\xd3\x54\x66\x86\x2f\x93\xa0\xb2\xb4\xae\xd5\x5e\x6f\xaa\x2d\xb0\x7c\x63\x11\xa8\x83\xf3\xa2\xa7\x00\x71\x93\xbb\xe0\x54\xfa\x38\xef\x78\x38\x1d\xf8\xb3\xd3\xf4\xec\xcf\x0d\xfe\x95\x73\x97\x92\x8b\x58\xb2\x0d\x4f\xa3\x18\xe1\x62\xe2\x3f\x9a\xed\x8f\xe5\x76\x31\x15\xbb\x65\x49\xe5\x36\x7a\x59\xa6\x80\x11\xb3\xe7\xa5\x9b\xa7\x4d\x53\x69\xcf\x72\x77\x1a\x5b\xed\xfa\x8e\x5d\x1d\xdb\xd3\x70\xa5\x05\x5d\x3c\x76\x7d\x6e\xc3\x18\x50\x58\xaf\x0c\xcc\x7e\xc4\x43\xa8\x95\x5c\x4f\xb1\x72\xf7\x13\x29\x9e\xa0\x96\x25\x4b\x10\xeb\x51\x32\xb1\x83\xe4\xa0\x49\x2c\xb1\xf0\x07\x6a\xff\x76\x89\xc8\x12\xe2\x14\x0c\x75\x21\xfe\xc0\x65\x79\x45\x15\x46\x26\x0b\x69\x26\x97\xea\x18\x85\xc8\x56\x3b\x1d\x85\x9b\x3f\x0b\x35\x1e\x00\xba\xc0\x76\x9d\x83\x31\xc9\x91\xf8\x1f\xac\x6a\x93\xb5\x60\x8f\xf8\x84\x50\xa7\xa0\x36\x2a\xfa\x5b\xb5\x50\xc2\x14\x97\xcd\x5e\x46\x2a\x87\x8a\xfd\x52\xd1\x3f\x65\xe9\x28\x88\x68\xe4\xc1\xa6\x50\xa0\x65\xdd\xae\xe9\x43\x8d\x11\x17\x0e\x14\x5f\xe5\x96\x57\xd9\x73\x76\x86\x33\x68\xdb\xad\xa0\x68\x07\x80\x3e\xbf\x96\xf2\xda\x55\x2e\xd4\x7e\x57\xde\x77\x28\xae\x96\xac\x37\xf4\x71\xd6\x2f\x35\xad\x53\x7e\x28\x93\x1a\xd6\xfc\x1b\xef\x83\xca\xb3\x55\x26\x59\xa9\xf2\xe8\xf9\x3b\x53\x28\xfb\xc2\x82\x3b\xc0\x2a\xb6\x0f\xa3\xe6\x5d\x1d\xb3\x44\xe8\x99\x6d\x57\x8d\x20\x9a\xcc\xd3\x79\xb3\x4a\x63\x2c\x50\xf5\xde\x6c\x09\xfd\xab\xa2\x64\x9b\xad\x5f\x1f\x67\xf1\x13\x69\x65\x04\x2e\x42\x64\x06\x06\x46\x78\x56\xb8\x0c\xb8\x58\x92\xeb\x0a\xf7\x4d\xe5\x2d\x0c\x0c\xf5\x59\x82\x98\x9f\x1f\x58\x03\x43\x44\xc8\xfb\xbf\xee\x75\xef\xdf\xbc\x36\x1e\x3d\xf7\x6c\x07\xef\x20\x4c\x94\xcb\x04\xa4\x2a\xe4\xfa\xaf\x83\x72\x83\x58\xba\x54\xff\x4b\xa1\xaa\x34\x22\xd9\x43\xa1\x82\x7c\x1a\x65\x7c\x3a\x89\x8a\x3f\x7f\x7f\x7e\x3e\x9d\x76\xac\xc4\x58\x44\x34\x7b\xbf\xe1\xbb\xf6\x13\x0e\x7f\x6b\x2d\xa5\xd9\x73\xb5\x68\x65\xc7\x19\x87\x14\x25\x7b\xc3\xb6\xfd\x05\x1b\xcc\x28\xb6\x98\x5e\xe5\x73\x80\xb4\xdc\xfd\x21\x0c\xc5\xf3\x71\x96\xac\x41\xbc\x83\xf3\xec\x7b\x7a\xc2\xf4\xee\x7a\x97\x96\xb5\xf9\x98\xee\x4c\x1e\x71\x7f\x57\x5b\x96\x73\x59\xce\xa1\xc7\x71\x9d\x41\x27\xef\xe0\xf3\xa0\x88\x71\x90\xc5\xfe\xf7\x3b\x85\x8e\x18\x53\xc9\xf0\x0f\x8f\x5d\x9d\xd0\x73\xf5\xeb\xf3\x3c\x83\xb8\xa8\xe7\xb4\xde\x47\x28\x4d\x13\x3a\x60\xf5\xbc\x09\x05\xa2\x73\xd0\x84\xdc\xe8\x11\xf8\xc6\x92\x87\xdb\xfc\x55\x2d\xca\xcc\xbf\xb9\x33\x87\x39\xe1\x2e\x7c\x12\xb1\x32\xd2\xfb\x27\xa2\x9f\x79\xae\x1c\x8a\x03\x31\x72\x78\x0d\xf7\x54\xf5\xec\xe6\x87\x43\xcc\x21\x76\x2c\x82\x9b\xf9\xe8\x3e\xf0\x2f\x54\x2c\x82\x6a\xdf\x62\x67\xaa\x7b\x3a\x7c\x7d\x5b\x9e\xcc\x0f\xe0\x2c\x72\xc5\x19\xee\xb9\xf6\xe4\xbb\xb1\x4c\xed\x63\x61\x2e\xe8\x39\x28\x95\xda\x40\xd0\xda\x10\xdb\x52\x0e\x02\x50\x97\x2c\xa3\xba\x97\x6d\x0a\x93\xf8\xfb\x7f\xfe\x63\xda\x85\x1c\x09\x43\x3f\x98\x99\xf2\x95\xa1\xe9\xcd\x39\x4b\x1d\xf3\x91\x4f\x6c\xb4\x0f\x15\x72\xef\x81\x3c\x42\xd7\x3a\x66\x5f\x9a\xda\x94\xc5\x7b\x72\x47\x3c\x4b\x7d\xd8\x6f\x7b\xc0\x69\x7b\x2c\xf1\x8d\x5a\x46\x60\x53\x75\xe8\x73\x53\x1a\x67\x4b\x0f\x23\x56\xaf\x5d\x3e\x7d\x25\x4d\xb5\xab\x6e\x7f\xc8\xf0\x8d\x15\xf4\x4e\x29\x71\xac\x25\xc4\x84\x41\x52\x9b\x03\x70\xcd\x31\x9a\x0c\x1e\x00\x6b\xfa\xcc\x5e\x5a\xaf\x9c\x2d\x84\x07\x39\xed\xc1\xc6\x41\xc8\x88\x86\x00\x81\x1a\xa4\x4d\xec\x4e\xa4\x28\xb6\x2d\x8e\xd9\x91\x09\x21\xd0\x06\x46\x74\x2c\x26\x7b\xc3\x34\xf3\x92\x58\x99\x1b\x23\x14\x0b\xd6\x46\x38\xca\x0e\x43\x98\x99\x5a\x57\xd6\x26\xf3\x8b\x8a\xed\x3a\x7a\x7d\x9b\xf5\x44\x70\x3b\x6d\xd4\xd1\x03\x12\x4b\xef\xb1\xc0\x72\x1a\x93\x71\x63\x57\xad\xcd\x54\x0b\x8e\xe1\xd1\xa6\xda\x31\xc8\x11\xbd\x86\xf6\x4b\x1f\xc4\x08\xfc\xc5\x89\xda\x2c\xb4\xb9\x84\xe0\x83\x14\xb0\x81\x57\xee\xc2\x14\xe6\xd9\x12\x48\xf3\x5a\x21\x6e\x69\x6d\xed\x6d\xb6\x8b\x5f\xe3\xe8\x8b\xac\x7d\x9a\xa0\xaf\x5a\x9c\x16\xe4\xa2\x5d\xce\x5e\xd4\x67\x00\xfc\x1c\x8f\x6c\x57\x00\xe2\x93\xb6\xdb\x97\x4b\x47\x68\xe7\xdb\x11\xd6\x92\xb4\x45\x9f\x04\x9f\x58\x11\x10\x1c\xcd\x25\x23\x4e\x53\x61\xb0\xad\x5c\x41\xcc\xb3\xa2\x7d\x71\x9e\x1a\x91\xa3\x7d\x2d\xa0\x7d\x5b\x8a\x49\xf8\xf9\x41\x86\xf6\x04\x6d\x9f\x3f\xb9\xc4\x7a\x9e\x28\x69\xcb\x37\x4f\x62\x52\xb7\xa0\x75\xb4\x0f\x17\xfe\xd6\x00\xde\xdf\x67\xdf\x1f\xe9\x66\xf0\x9e\xc9\x5c\x25\x44\x24\x50\x46\x00\x04\x89\xe2\x58\xf7\x3d\x89\x36\x2c\x93\x74\x0d\xca\x5c\x0b\xc8\x94\x2f\xaa\xd5\xaa\xd3\xfa\x15\x6a\xf5\xa4\x81\x13\x83\x6d\xe1\xfd\xbe\x23\x69\x5f\xf4\xe1\x35\xec\xb3\x34\x7f\x3b\x6e\x8e\xde\x92\xae\x53\x38\x2a\x66\xa6\x27\x74\x8e\x2f\x33\xc1\xbf\x8e\x6f\xe2\x44\x8e\x96\xd9\x10\x47\x8b\x89\xae\x40\x86\x27\x01\x74\x19\xff\xf7\xef\x1e\x98\xaf\xe3\x81\x69\x75\x31\xd7\x47\x88\x75\x39\xf3\x2c\x54\x80\x7b\x46\x78\x60\xf9\x9d\xad\xd3\x86\x51\x11\xd6\x61\xc1\x65\x5a\x00\x95\xc7\xe9\xeb\xf1\xe0\xf5\x39\xbe\x4c\x6d\x0f\x95\xcd\xad\xda\xf0\x08\xba\x2a\x10\x0f\x29\xa2\x24\xda\x09\xc4\x8b\xf5\x04\x1d\xbc\x2c\x88\x24\x0a\x88\x26\x6b\x26\x57\x3c\x75\x4a\xeb\x73\xc9\x1f\x23\xfd\x1a\x4c\xfc\x00\x9a\xb7\x3d\x93\x88\x97\xc9\x0b\x02\x2b\x77\xf9\x36\x39\x4f\x54\x9e\x02\x20\xc9\x8a\xe5\x29\x64\x79\xd1\x95\x14\x2c\xb9\x07\xba\x4c\x78\x30\xb1\x47\x0a\xf2\x19\xcc\x0e\x0c\x3c\xbb\xd6\x32\x99\x20\x70\xb4\xa1\xde\xb1\xe3\xc3\xcf\x8b\x88\x25\xb9\x2a\x88\x4f\x9f\x58\x12\x89\x9e\xcf\x63\x28\x83\x1e\x3b\x9d\x28\xac\x38\x0a\x83\xe4\x42\xba\x9c\x0d\xfe\x65\x2b\x98\x0c\xef\x24\x4e\xb7\xcc\x19\x00\x98\x77\x9e\x7c\x5b\xcb\xf8\x55\x6b\xb2\x7d\x00\x62\x77\xad\x50\xfb\xcc\x39\x4b\x77\x7e\xc5\x57\x26\x09\x55\x94\xa5\x9b\x4c\xea\xad\xd7\xd7\x1a\x19\xeb\x48\xbe\x42\xd3\x09\x13\x18\xea\x06\x40\x2c\x21\x6a\x57\xbf\x88\x24\xd7\x2a\x0b\xcb\x33\xb1\x03\x2d\x75\x9b\xf3\x33\xaf\x1f\xef\x7e\x53\xae\x5d\x56\xc4\x12\xc7\x0e\x7c\xb7\xcb\x4a\xa0\x2e\x0b\xd6\x9e\x9d\x00\xdd\xc3\xf7\xb3\x89\x7e\xc6\x4a\x82\xa1\xf1\x3a\x86\x33\x7b\x92\xbc\xa5\xa6\x9d\x35\xc8\x75\xe8\x2a\x11\x73\x48\xaa\x58\xab\x47\x93\x5c\xf9\xc8\x5c\xec\x7c\x8c\x21\xfa\x8e\x64\x97\x31\x32\xbd\x48\x3b\xa8\x1c\x01\x5f\xce\x2b\x95\x13\x54\x0c\x08\x87\x77\x44\xcb\xf3\x63\xf6\xc0\x27\xd1\xed\x96\xe5\xf7\x93\xe8\xe5\x4e\xb2\x4d\x96\xfc\xa4\x16\x7b\x6d\xcb\x53\xf8\x57\xac\x0a\x34\xda\xff\xd6\xea\xa9\x98\x78\xe0\x09\x9e\x17\xae\xe9\x09\x30\x41\x50\x7d\x62\x08\x47\xbb\xeb\x09\x37\x71\xe5\x4e\x84\x8d\x53\x69\xc8\xdd\x61\xf1\x4e\x7d\xb9\x2e\x01\x9c\xac\xa6\xcc\xe3\xb6\x60\xb0\x96\x91\x90\x30\xad\x27\x7e\x06\xaf\x9e\xca\xa3\xad\x60\xa5\x3e\x2b\x86\xe9\x0e\x4f\x05\xc6\xaf\x51\xda\xd7\xf2\xc9\x87\x3e\xea\xa6\xe3\xf9\x56\x29\xd1\xfa\xb6\x9f\x74\x01\x1b\x9e\xb4\xa1\x8b\x37\xc3\x3c\xbc\xc2\x7f\xf1\xcc\x2a\x3a\xaf\x8c\xf3\xe1\x78\x6c\x04\x70\x9a\xd2\x2a\x47\x7a\x2e\xb3\x1c\x53\xe7\x02\x65\xda\x3c\xc0\xac\x01\x7c\xe4\x16\x3c\x61\x50\x29\x6c\xb4\x0f\x64\x0e\x04\xf7\x94\x7b\xa3\x5b\xfc\x45\x45\xb3\x9f\x0e\x95\x03\xda\x9d\x67\x6d\x85\x63\x63\x2f\xd7\xdd\xba\xd5\x09\x8c\x23\x37\x0e\x2c\x93\xb9\xb5\xaf\x30\xdc\x24\xaa\xcf\x13\xc1\x8a\x81\x59\x33\xad\x72\x67\x46\x0d\x5d\x42\x3b\xc3\x65\xe6\x8f\xe0\xaf\xdb\x0c\x14\xc6\xb1\xbc\xb0\x85\xd1\xee\x19\xb7\xaa\x07\x8a\x59\x54\xba\x1a\x5b\x83\xe9\x60\xae\x8a\x7e\x12\x15\x55\xb2\x86\x84\xb7\x50\x4e\xf9\x72\xab\x79\x63\x27\xb1\xd4\x0f\x21\xe2\x0a\x32\x88\xd9\x3c\x02\x04\x55\xf6\x33\xb7\x2f\x2d\xaa\x44\xc1\xe3\xba\x60\x7a\x6b\x88\x40\xa3\xae\x88\x98\xdc\x43\x96\xdf\xf3\xd4\x73\x23\x55\x5b\x6d\xfe\x4e\x63\xbb\xcc\x78\x7e\x1d\xe7\x23\x69\x36\x85\x3f\x31\x5f\x11\xab\x49\x5a\x91\x2d\x79\xb2\x4b\x1a\x75\xb4\x41\xa4\xf4\x74\xfe\xca\xc3\xdc\x75\x7d\xf5\x96\xed\x56\xd8\xc7\x46\xcd\x50\xd4\x15\x5e\xfa\xdf\x99\x54\xd2\x51\xf2\xf7\x5b\xf7\xb8\xec\x49\x24\xff\x3d\x3f\xe4\x37\xe9\x9d\x18\x56\x01\x18\xc8\x2f\x93\x82\x01\xd6\x10\x69\xcd\xad\x89\x1f\xdf\x56\x91\x47\x96\xfa\xf7\xa6\x5c\xf3\x96\x5a\x8f\x61\x57\x81\x4a\x69\x52\x5b\xe6\x33\x06\x6b\x08\x3f\x35\xeb\x75\x29\x54\x51\xe5\xfd\x97\xff\x26\x1c\xb5\xe9\xdd\xcd\x26\xc0\x80\xe2\x9b\x05\x87\x0a\xae\x14\x77\xa6\x75\x32\xfb\x14\x05\x6d\x2f\xd5\xbf\xa7\x94\x88\x47\x1e\x25\x6c\x0b\x99\xb4\xed\x28\xb1\x8d\xef\x3c\xfb\x1a\x5e\xde\x15\xf7\xb5\x80\xda\xe3\x18\x1c\xae\x20\x96\xf4\x4d\xa5\x5d\xb6\xda\x60\xb5\x2a\xf3\xc0\x15\x33\x28\xfa\x76\x0a\xcf\xf6\x3b\x56\xae\xd1\x49\x00\xac\x22\x18\x89\x2d\xb5\x02\x85\x18\xde\xe8\xee\x5e\x08\xb5\x00\xe0\x67\xe0\x21\xe8\x3a\xe7\x74\x38\x07\x2d\x5d\x73\xc3\x86\x9c\x6d\x7d\x1f\x20\x6b\x3e\xe7\x05\x94\x4f\x36\xe3\x49\x43\x93\xd8\xc6\x39\x32\x9a\xc3\xd5\x62\xeb\x65\xc3\x91\xd1\x04\x53\xd2\x52\x1d\x32\x9a\xae\x5a\xc4\xfa\xbe\x8b\x75\xe5\xe7\x9d\x33\xe0\x7a\x2b\x81\x4d\x1b\x03\xb6\x45\x26\x57\x82\xd7\xe6\x6b\x90\xf5\x63\x79\x81\x7f\x09\x78\x17\x2c\x68\xa0\x4d\x1a\x22\x10\x65\x7b\xff\x30\x11\x3d\xba\x30\x85\xa5\x50\xc0\xc8\x28\xa0\x68\x2d\x2e\x70\x8f\x4c\x20\xef\x5b\x96\x59\xae\xf5\xe9\x02\xd4\x85\xa2\x5a\x9c\xb9\x32\x43\x95\x83\x82\x01\x55\xa8\x5b\x96\x03\x42\xfd\x3a\x13\xe9\x59\xcb\x43\x82\x3e\x4e\x07\xfe\x65\x90\x28\x98\x20\xf1\x05\x76\x21\x56\xb9\xd8\xb9\xdb\x76\xb4\x7a\xcf\x59\xb2\xb6\x15\x16\x28\xae\xfb\xe4\x45\x60\x2c\xfd\xda\xc9\x2f\x03\xb2\x4b\x3a\x40\x63\x7f\xfb\x72\x22\x58\xb3\x21\x72\xe2\x2e\x34\xad\xcc\xad\xd1\xc6\x21\x49\x8e\xae\xa5\x2a\xe6\x18\xe2\xff\x0a\x65\xf8\xce\x33\x54\x6c\xd9\xa3\xa4\xe2\xbe\x51\x65\x0e\xc3\xe4\x43\x3b\xf3\x86\x96\x0f\x8d\xb4\x1f\x27\x29\x24\x15\xca\x97\x99\x45\x58\x9d\x78\xb8\xea\x4c\x08\x1f\x91\xcb\xb9\x82\x62\xe9\x1c\x06\xfa\xf9\x17\x42\xff\xff\xa4\x2e\xb8\xa9\x98\x33\x45\xb2\x97\x89\xa9\x44\x23\x14\x07\x0a\x51\x9c\xa1\x61\xee\xcc\xe7\x7d\xb7\xf9\x54\xfa\x24\x61\x6d\x97\xac\xac\x46\x94\x2b\x5d\xb2\x92\x09\xb5\xba\xd4\x1f\xdf\xe2\xb7\xbd\x8f\x19\xea\x45\xa8\xa6\x61\x5f\x90\xfc\xc7\x92\x35\x11\x24\xd5\x52\xc6\xba\xee\x13\x76\x3b\x6f\xe1\xb5\xdd\x3b\xd6\x76\x77\xbc\x47\x04\x05\x97\xd9\xd4\x42\x25\x2c\xcf\x4d\x42\x2f\xf5\x1a\xb1\xbc\xcc\x96\x2c\x09\x3c\xe8\x83\x70\x78\x82\x17\x12\x5b\x2c\x20\xf4\x6c\xd2\xd2\x5c\xb1\x38\x8b\x2c\xc4\x77\xf7\xfe\x9f\xda\xa6\xe0\x4e\x48\x3f\x81\x7f\xa4\xdf\x71\x88\xd7\xb7\xf9\x46\x06\x9e\x65\xd6\x48\x7a\x1e\xb8\xd8\x2c\x0a\x20\x16\x5a\x97\xd4\x63\xa4\x3f\x62\x0d\x0f\x2c\x2e\x19\x87\xc0\xe7\xd1\xc4\x0f\x97\x9c\x0d\x28\x5e\xa2\x48\x47\x52\x69\xaa\x53\x2f\xeb\x85\x95\xb0\x84\x98\xe2\xfd\xc0\x53\x57\x74\xea\x21\x8f\xe8\xa7\x8f\xad\x78\xb4\xe1\x69\x56\xd5\x01\x1e\x83\x72\x84\xdf\x6d\xe1\xff\x7b\xb6\x30\xa4\x16\x3c\xa5\x21\xdc\x5e\xe8\xf2\xfb\x53\xf8\x0d\x3c\x85\x61\xa8\x8f\xe7\x0f\x98\x7a\x3e\x66\x69\x69\xa8\x37\xee\xf3\xe3\x16\x97\x47\xde\x48\x8a\xe1\xeb\x4c\x67\x75\xe4\x2d\x1e\x2c\xfd\xfa\xa3\x8f\x4e\x59\x70\x1a\xb4\x7d\x17\x59\xf3\x1e\xf9\x2e\xa8\xd2\xdf\x43\x6d\xb8\x0c\x76\x5f\x76\x17\xac\x7d\x53\x41\x98\x21\xca\x80\x16\x51\x36\x2c\x73\x6d\x44\x13\x30\xd1\x96\xaa\x4f\x44\x79\x48\x3e\xac\x7c\x56\xd8\x55\x0f\x45\x91\xc9\x35\x7b\x9d\x15\xe5\x07\x26\xaa\xa3\xe0\x7b\xa0\x26\xe6\xc9\x32\x09\xcc\x50\x71\x98\xde\x17\xbd\x01\xf0\x9b\x30\x44\xad\xf5\x02\x3c\x73\x50\xe6\x6f\x40\x71\xf5\xb8\xc7\x3c\x1c\x9f\xec\x7a\x7d\x42\x9d\xf7\x31\x67\xdb\x2d\xcf\x4d\xdc\xb5\x11\x1a\x07\x84\x59\xe8\x25\x96\xe8\x3b\xf9\xe9\xf6\xed\x75\xfd\x6d\xd3\x77\xba\xd6\x34\xfc\x0c\x96\x6e\xda\xbe\x73\xd7\x95\x10\x9d\x3b\x37\x80\xce\xf7\xfd\xeb\xd7\xf3\x0f\x17\xaf\xdf\x5f\xf5\x82\x43\x7a\x3f\xeb\x5c\x13\x3b\x12\x5a\x13\xb4\x68\x4b\xb0\x62\xab\x0d\xcf\x4d\x59\x8a\x9b\x35\x1a\x0e\x95\x10\x21\x48\x68\x2c\x3f\x51\x3b\x90\x20\x55\x49\xf4\x38\xc5\x32\xea\x5d\xb8\xb0\x7f\xf8\xd9\x27\xdd\xf8\x27\xfc\xf6\x2c\x72\x93\xf8\x3e\xba\xb6\xbd\x76\xac\x2b\x65\x5f\x1e\x71\x1d\x10\xab\xb4\xeb\x3a\x9c\x1a\x06\xf9\xb0\xeb\xf1\x5e\x02\x06\x0d\x4f\x0d\x7a\xf1\x49\x6e\x07\xae\xdd\xa7\xd0\x9b\x69\x65\x79\x8a\xaa\x39\xb4\x3b\x41\xf0\xda\xa2\xa4\xda\x4c\x5c\xb3\x58\x12\x1d\x37\x83\x2a\xce\xce\x31\x45\x33\xca\x46\x10\x4c\xae\x2a\xb6\xe2\xc5\x24\x32\x9d\xc7\x72\x93\xad\xd6\x80\xf6\x43\xec\x60\xd6\x12\x63\x65\xf6\xc0\x6b\x47\x08\x13\xc9\x0c\xfb\x6f\x94\xc9\x58\xd2\x9c\xe4\xca\x35\x8f\x39\x66\x3f\xdd\xda\xe9\xe8\x93\x66\x1b\x22\xfc\x5d\x19\x4b\xdc\x5c\x04\x15\x34\x6e\x1e\x50\x5c\x59\x59\x3f\xba\x2c\xe7\x06\xf2\x1b\x64\xfa\x0a\x1c\x4e\xb1\xb4\x25\x17\xb0\xb1\x01\xc3\x19\x66\x9e\xe2\x90\xf6\xcb\x13\xb3\x19\xe6\x4e\xd0\xd8\xda\x4f\xfd\xd1\x6f\x80\xbe\x70\xf3\x87\x5a\x2b\x03\x8e\xad\x13\x63\x03\x6d\x04\xe6\x09\x8e\xae\x3a\x3c\xa8\xb3\x69\x1f\x8d\x99\x17\xfe\xa6\x33\x84\xaf\xaa\x85\x18\x31\x24\xfc\x7d\xef\xa0\x50\x24\xf7\x0f\x6a\x80\x8f\xf7\xa6\x76\xb5\xf4\x31\xed\xeb\x76\xa1\x54\xc7\xbe\x9c\xd0\x5b\x1a\x0c\x8a\x3e\xd8\xb7\x18\x55\x52\x1e\x72\x5e\x06\x24\xc7\xd7\x97\xc8\x48\x9f\xbe\x01\x89\xac\x38\x68\x38\x4e\x7f\x1a\x3c\x22\xab\x21\xd0\x63\x37\x4a\xc2\xd2\x3b\x17\x08\xd8\x0e\x31\x49\x3e\x3a\x8a\xd0\xf0\x0c\xc5\x8b\x04\x2e\x61\x46\xb5\x68\x13\x7b\x88\x26\x6e\xe7\x26\x30\xc8\xa4\xca\x0b\x2d\x2e\x49\xde\x91\xd4\x56\x79\xc4\x62\x69\x10\xe0\x8c\x38\xbe\x30\x49\x08\xb9\xfd\x57\x2c\x38\xd8\x22\x7e\x12\x68\xac\x65\xa4\x24\x37\xd2\x30\x96\x00\xb3\x2f\xc1\x9b\xbc\x28\x00\x00\x93\xc0\xe4\xe9\x0f\x1e\x97\x24\x93\x48\x3c\xbc\x5f\xe6\xd5\xd4\x80\xe0\x9d\xff\x83\xfe\xbf\x5f\xfe\xf0\x3f\x01\x00\x00\xff\xff\x69\xf2\xfa\x8c\x79\xf1\x03\x00") func adminSwaggerJsonBytes() ([]byte, error) { return bindataRead( @@ -93,7 +93,7 @@ func adminSwaggerJson() (*asset, error) { return nil, err } - info := bindataFileInfo{name: "admin.swagger.json", size: 257183, mode: os.FileMode(420), modTime: time.Unix(1562572800, 0)} + info := bindataFileInfo{name: "admin.swagger.json", size: 258425, mode: os.FileMode(420), modTime: time.Unix(1562572800, 0)} a := &asset{bytes: bytes, info: info} return a, nil } diff --git a/gen/pb-java/datacatalog/Datacatalog.java b/gen/pb-java/datacatalog/Datacatalog.java index f2357a78e..77d7b746e 100644 --- a/gen/pb-java/datacatalog/Datacatalog.java +++ b/gen/pb-java/datacatalog/Datacatalog.java @@ -10239,8 +10239,8 @@ public datacatalog.Datacatalog.ListDatasetsResponse getDefaultInstanceForType() } - public interface GetOrReserveArtifactRequestOrBuilder extends - // @@protoc_insertion_point(interface_extends:datacatalog.GetOrReserveArtifactRequest) + public interface ReservationIDOrBuilder extends + // @@protoc_insertion_point(interface_extends:datacatalog.ReservationID) com.google.protobuf.MessageOrBuilder { /** @@ -10265,36 +10265,25 @@ public interface GetOrReserveArtifactRequestOrBuilder extends */ com.google.protobuf.ByteString getTagNameBytes(); - - /** - * string owner_id = 3; - */ - java.lang.String getOwnerId(); - /** - * string owner_id = 3; - */ - com.google.protobuf.ByteString - getOwnerIdBytes(); } /** *
-   * Get the Artifact or try to reserve a spot if the Artifact does not exist.
+   * ReservationID message that is composed of several string fields.
    * 
* - * Protobuf type {@code datacatalog.GetOrReserveArtifactRequest} + * Protobuf type {@code datacatalog.ReservationID} */ - public static final class GetOrReserveArtifactRequest extends + public static final class ReservationID extends com.google.protobuf.GeneratedMessageV3 implements - // @@protoc_insertion_point(message_implements:datacatalog.GetOrReserveArtifactRequest) - GetOrReserveArtifactRequestOrBuilder { + // @@protoc_insertion_point(message_implements:datacatalog.ReservationID) + ReservationIDOrBuilder { private static final long serialVersionUID = 0L; - // Use GetOrReserveArtifactRequest.newBuilder() to construct. - private GetOrReserveArtifactRequest(com.google.protobuf.GeneratedMessageV3.Builder builder) { + // Use ReservationID.newBuilder() to construct. + private ReservationID(com.google.protobuf.GeneratedMessageV3.Builder builder) { super(builder); } - private GetOrReserveArtifactRequest() { + private ReservationID() { tagName_ = ""; - ownerId_ = ""; } @java.lang.Override @@ -10302,7 +10291,7 @@ private GetOrReserveArtifactRequest() { getUnknownFields() { return this.unknownFields; } - private GetOrReserveArtifactRequest( + private ReservationID( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { @@ -10340,12 +10329,6 @@ private GetOrReserveArtifactRequest( tagName_ = s; break; } - case 26: { - java.lang.String s = input.readStringRequireUtf8(); - - ownerId_ = s; - break; - } default: { if (!parseUnknownField( input, unknownFields, extensionRegistry, tag)) { @@ -10367,15 +10350,15 @@ private GetOrReserveArtifactRequest( } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return datacatalog.Datacatalog.internal_static_datacatalog_GetOrReserveArtifactRequest_descriptor; + return datacatalog.Datacatalog.internal_static_datacatalog_ReservationID_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return datacatalog.Datacatalog.internal_static_datacatalog_GetOrReserveArtifactRequest_fieldAccessorTable + return datacatalog.Datacatalog.internal_static_datacatalog_ReservationID_fieldAccessorTable .ensureFieldAccessorsInitialized( - datacatalog.Datacatalog.GetOrReserveArtifactRequest.class, datacatalog.Datacatalog.GetOrReserveArtifactRequest.Builder.class); + datacatalog.Datacatalog.ReservationID.class, datacatalog.Datacatalog.ReservationID.Builder.class); } public static final int DATASET_ID_FIELD_NUMBER = 1; @@ -10433,40 +10416,6 @@ public java.lang.String getTagName() { } } - public static final int OWNER_ID_FIELD_NUMBER = 3; - private volatile java.lang.Object ownerId_; - /** - * string owner_id = 3; - */ - public java.lang.String getOwnerId() { - java.lang.Object ref = ownerId_; - if (ref instanceof java.lang.String) { - return (java.lang.String) ref; - } else { - com.google.protobuf.ByteString bs = - (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - ownerId_ = s; - return s; - } - } - /** - * string owner_id = 3; - */ - public com.google.protobuf.ByteString - getOwnerIdBytes() { - java.lang.Object ref = ownerId_; - if (ref instanceof java.lang.String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8( - (java.lang.String) ref); - ownerId_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; - } - } - private byte memoizedIsInitialized = -1; @java.lang.Override public final boolean isInitialized() { @@ -10487,9 +10436,6 @@ public void writeTo(com.google.protobuf.CodedOutputStream output) if (!getTagNameBytes().isEmpty()) { com.google.protobuf.GeneratedMessageV3.writeString(output, 2, tagName_); } - if (!getOwnerIdBytes().isEmpty()) { - com.google.protobuf.GeneratedMessageV3.writeString(output, 3, ownerId_); - } unknownFields.writeTo(output); } @@ -10506,9 +10452,6 @@ public int getSerializedSize() { if (!getTagNameBytes().isEmpty()) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, tagName_); } - if (!getOwnerIdBytes().isEmpty()) { - size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, ownerId_); - } size += unknownFields.getSerializedSize(); memoizedSize = size; return size; @@ -10519,10 +10462,10 @@ public boolean equals(final java.lang.Object obj) { if (obj == this) { return true; } - if (!(obj instanceof datacatalog.Datacatalog.GetOrReserveArtifactRequest)) { + if (!(obj instanceof datacatalog.Datacatalog.ReservationID)) { return super.equals(obj); } - datacatalog.Datacatalog.GetOrReserveArtifactRequest other = (datacatalog.Datacatalog.GetOrReserveArtifactRequest) obj; + datacatalog.Datacatalog.ReservationID other = (datacatalog.Datacatalog.ReservationID) obj; if (hasDatasetId() != other.hasDatasetId()) return false; if (hasDatasetId()) { @@ -10531,8 +10474,6 @@ public boolean equals(final java.lang.Object obj) { } if (!getTagName() .equals(other.getTagName())) return false; - if (!getOwnerId() - .equals(other.getOwnerId())) return false; if (!unknownFields.equals(other.unknownFields)) return false; return true; } @@ -10550,76 +10491,74 @@ public int hashCode() { } hash = (37 * hash) + TAG_NAME_FIELD_NUMBER; hash = (53 * hash) + getTagName().hashCode(); - hash = (37 * hash) + OWNER_ID_FIELD_NUMBER; - hash = (53 * hash) + getOwnerId().hashCode(); hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; } - public static datacatalog.Datacatalog.GetOrReserveArtifactRequest parseFrom( + public static datacatalog.Datacatalog.ReservationID parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static datacatalog.Datacatalog.GetOrReserveArtifactRequest parseFrom( + public static datacatalog.Datacatalog.ReservationID parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static datacatalog.Datacatalog.GetOrReserveArtifactRequest parseFrom( + public static datacatalog.Datacatalog.ReservationID parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static datacatalog.Datacatalog.GetOrReserveArtifactRequest parseFrom( + public static datacatalog.Datacatalog.ReservationID parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static datacatalog.Datacatalog.GetOrReserveArtifactRequest parseFrom(byte[] data) + public static datacatalog.Datacatalog.ReservationID parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static datacatalog.Datacatalog.GetOrReserveArtifactRequest parseFrom( + public static datacatalog.Datacatalog.ReservationID parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static datacatalog.Datacatalog.GetOrReserveArtifactRequest parseFrom(java.io.InputStream input) + public static datacatalog.Datacatalog.ReservationID parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static datacatalog.Datacatalog.GetOrReserveArtifactRequest parseFrom( + public static datacatalog.Datacatalog.ReservationID 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 datacatalog.Datacatalog.GetOrReserveArtifactRequest parseDelimitedFrom(java.io.InputStream input) + public static datacatalog.Datacatalog.ReservationID parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input); } - public static datacatalog.Datacatalog.GetOrReserveArtifactRequest parseDelimitedFrom( + public static datacatalog.Datacatalog.ReservationID 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 datacatalog.Datacatalog.GetOrReserveArtifactRequest parseFrom( + public static datacatalog.Datacatalog.ReservationID parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static datacatalog.Datacatalog.GetOrReserveArtifactRequest parseFrom( + public static datacatalog.Datacatalog.ReservationID parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { @@ -10632,7 +10571,7 @@ public static datacatalog.Datacatalog.GetOrReserveArtifactRequest parseFrom( public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } - public static Builder newBuilder(datacatalog.Datacatalog.GetOrReserveArtifactRequest prototype) { + public static Builder newBuilder(datacatalog.Datacatalog.ReservationID prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override @@ -10649,29 +10588,29 @@ protected Builder newBuilderForType( } /** *
-     * Get the Artifact or try to reserve a spot if the Artifact does not exist.
+     * ReservationID message that is composed of several string fields.
      * 
* - * Protobuf type {@code datacatalog.GetOrReserveArtifactRequest} + * Protobuf type {@code datacatalog.ReservationID} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder implements - // @@protoc_insertion_point(builder_implements:datacatalog.GetOrReserveArtifactRequest) - datacatalog.Datacatalog.GetOrReserveArtifactRequestOrBuilder { + // @@protoc_insertion_point(builder_implements:datacatalog.ReservationID) + datacatalog.Datacatalog.ReservationIDOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return datacatalog.Datacatalog.internal_static_datacatalog_GetOrReserveArtifactRequest_descriptor; + return datacatalog.Datacatalog.internal_static_datacatalog_ReservationID_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return datacatalog.Datacatalog.internal_static_datacatalog_GetOrReserveArtifactRequest_fieldAccessorTable + return datacatalog.Datacatalog.internal_static_datacatalog_ReservationID_fieldAccessorTable .ensureFieldAccessorsInitialized( - datacatalog.Datacatalog.GetOrReserveArtifactRequest.class, datacatalog.Datacatalog.GetOrReserveArtifactRequest.Builder.class); + datacatalog.Datacatalog.ReservationID.class, datacatalog.Datacatalog.ReservationID.Builder.class); } - // Construct using datacatalog.Datacatalog.GetOrReserveArtifactRequest.newBuilder() + // Construct using datacatalog.Datacatalog.ReservationID.newBuilder() private Builder() { maybeForceBuilderInitialization(); } @@ -10697,25 +10636,23 @@ public Builder clear() { } tagName_ = ""; - ownerId_ = ""; - return this; } @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { - return datacatalog.Datacatalog.internal_static_datacatalog_GetOrReserveArtifactRequest_descriptor; + return datacatalog.Datacatalog.internal_static_datacatalog_ReservationID_descriptor; } @java.lang.Override - public datacatalog.Datacatalog.GetOrReserveArtifactRequest getDefaultInstanceForType() { - return datacatalog.Datacatalog.GetOrReserveArtifactRequest.getDefaultInstance(); + public datacatalog.Datacatalog.ReservationID getDefaultInstanceForType() { + return datacatalog.Datacatalog.ReservationID.getDefaultInstance(); } @java.lang.Override - public datacatalog.Datacatalog.GetOrReserveArtifactRequest build() { - datacatalog.Datacatalog.GetOrReserveArtifactRequest result = buildPartial(); + public datacatalog.Datacatalog.ReservationID build() { + datacatalog.Datacatalog.ReservationID result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } @@ -10723,15 +10660,14 @@ public datacatalog.Datacatalog.GetOrReserveArtifactRequest build() { } @java.lang.Override - public datacatalog.Datacatalog.GetOrReserveArtifactRequest buildPartial() { - datacatalog.Datacatalog.GetOrReserveArtifactRequest result = new datacatalog.Datacatalog.GetOrReserveArtifactRequest(this); + public datacatalog.Datacatalog.ReservationID buildPartial() { + datacatalog.Datacatalog.ReservationID result = new datacatalog.Datacatalog.ReservationID(this); if (datasetIdBuilder_ == null) { result.datasetId_ = datasetId_; } else { result.datasetId_ = datasetIdBuilder_.build(); } result.tagName_ = tagName_; - result.ownerId_ = ownerId_; onBuilt(); return result; } @@ -10770,16 +10706,16 @@ public Builder addRepeatedField( } @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof datacatalog.Datacatalog.GetOrReserveArtifactRequest) { - return mergeFrom((datacatalog.Datacatalog.GetOrReserveArtifactRequest)other); + if (other instanceof datacatalog.Datacatalog.ReservationID) { + return mergeFrom((datacatalog.Datacatalog.ReservationID)other); } else { super.mergeFrom(other); return this; } } - public Builder mergeFrom(datacatalog.Datacatalog.GetOrReserveArtifactRequest other) { - if (other == datacatalog.Datacatalog.GetOrReserveArtifactRequest.getDefaultInstance()) return this; + public Builder mergeFrom(datacatalog.Datacatalog.ReservationID other) { + if (other == datacatalog.Datacatalog.ReservationID.getDefaultInstance()) return this; if (other.hasDatasetId()) { mergeDatasetId(other.getDatasetId()); } @@ -10787,10 +10723,6 @@ public Builder mergeFrom(datacatalog.Datacatalog.GetOrReserveArtifactRequest oth tagName_ = other.tagName_; onChanged(); } - if (!other.getOwnerId().isEmpty()) { - ownerId_ = other.ownerId_; - onChanged(); - } this.mergeUnknownFields(other.unknownFields); onChanged(); return this; @@ -10806,11 +10738,11 @@ public Builder mergeFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - datacatalog.Datacatalog.GetOrReserveArtifactRequest parsedMessage = null; + datacatalog.Datacatalog.ReservationID parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { - parsedMessage = (datacatalog.Datacatalog.GetOrReserveArtifactRequest) e.getUnfinishedMessage(); + parsedMessage = (datacatalog.Datacatalog.ReservationID) e.getUnfinishedMessage(); throw e.unwrapIOException(); } finally { if (parsedMessage != null) { @@ -11005,75 +10937,6 @@ public Builder setTagNameBytes( onChanged(); return this; } - - private java.lang.Object ownerId_ = ""; - /** - * string owner_id = 3; - */ - public java.lang.String getOwnerId() { - java.lang.Object ref = ownerId_; - if (!(ref instanceof java.lang.String)) { - com.google.protobuf.ByteString bs = - (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - ownerId_ = s; - return s; - } else { - return (java.lang.String) ref; - } - } - /** - * string owner_id = 3; - */ - public com.google.protobuf.ByteString - getOwnerIdBytes() { - java.lang.Object ref = ownerId_; - if (ref instanceof String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8( - (java.lang.String) ref); - ownerId_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; - } - } - /** - * string owner_id = 3; - */ - public Builder setOwnerId( - java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - - ownerId_ = value; - onChanged(); - return this; - } - /** - * string owner_id = 3; - */ - public Builder clearOwnerId() { - - ownerId_ = getDefaultInstance().getOwnerId(); - onChanged(); - return this; - } - /** - * string owner_id = 3; - */ - public Builder setOwnerIdBytes( - com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); - } - checkByteStringIsUtf8(value); - - ownerId_ = value; - onChanged(); - return this; - } @java.lang.Override public final Builder setUnknownFields( final com.google.protobuf.UnknownFieldSet unknownFields) { @@ -11087,100 +10950,115 @@ public final Builder mergeUnknownFields( } - // @@protoc_insertion_point(builder_scope:datacatalog.GetOrReserveArtifactRequest) + // @@protoc_insertion_point(builder_scope:datacatalog.ReservationID) } - // @@protoc_insertion_point(class_scope:datacatalog.GetOrReserveArtifactRequest) - private static final datacatalog.Datacatalog.GetOrReserveArtifactRequest DEFAULT_INSTANCE; + // @@protoc_insertion_point(class_scope:datacatalog.ReservationID) + private static final datacatalog.Datacatalog.ReservationID DEFAULT_INSTANCE; static { - DEFAULT_INSTANCE = new datacatalog.Datacatalog.GetOrReserveArtifactRequest(); + DEFAULT_INSTANCE = new datacatalog.Datacatalog.ReservationID(); } - public static datacatalog.Datacatalog.GetOrReserveArtifactRequest getDefaultInstance() { + public static datacatalog.Datacatalog.ReservationID getDefaultInstance() { return DEFAULT_INSTANCE; } - private static final com.google.protobuf.Parser - PARSER = new com.google.protobuf.AbstractParser() { + private static final com.google.protobuf.Parser + PARSER = new com.google.protobuf.AbstractParser() { @java.lang.Override - public GetOrReserveArtifactRequest parsePartialFrom( + public ReservationID parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { - return new GetOrReserveArtifactRequest(input, extensionRegistry); + return new ReservationID(input, extensionRegistry); } }; - public static com.google.protobuf.Parser parser() { + public static com.google.protobuf.Parser parser() { return PARSER; } @java.lang.Override - public com.google.protobuf.Parser getParserForType() { + public com.google.protobuf.Parser getParserForType() { return PARSER; } @java.lang.Override - public datacatalog.Datacatalog.GetOrReserveArtifactRequest getDefaultInstanceForType() { + public datacatalog.Datacatalog.ReservationID getDefaultInstanceForType() { return DEFAULT_INSTANCE; } } - public interface ReservationStatusOrBuilder extends - // @@protoc_insertion_point(interface_extends:datacatalog.ReservationStatus) + public interface GetOrExtendReservationRequestOrBuilder extends + // @@protoc_insertion_point(interface_extends:datacatalog.GetOrExtendReservationRequest) com.google.protobuf.MessageOrBuilder { /** - * .datacatalog.ReservationStatus.State state = 1; + * .datacatalog.ReservationID reservation_id = 1; */ - int getStateValue(); + boolean hasReservationId(); /** - * .datacatalog.ReservationStatus.State state = 1; + * .datacatalog.ReservationID reservation_id = 1; */ - datacatalog.Datacatalog.ReservationStatus.State getState(); - + datacatalog.Datacatalog.ReservationID getReservationId(); /** - * .datacatalog.Metadata metadata = 2; + * .datacatalog.ReservationID reservation_id = 1; */ - boolean hasMetadata(); + datacatalog.Datacatalog.ReservationIDOrBuilder getReservationIdOrBuilder(); + /** - * .datacatalog.Metadata metadata = 2; + * string owner_id = 2; */ - datacatalog.Datacatalog.Metadata getMetadata(); + java.lang.String getOwnerId(); /** - * .datacatalog.Metadata metadata = 2; + * string owner_id = 2; */ - datacatalog.Datacatalog.MetadataOrBuilder getMetadataOrBuilder(); + com.google.protobuf.ByteString + getOwnerIdBytes(); /** - * string owner_id = 3; + *
+     * Requested reservation extension heartbeat interval
+     * 
+ * + * .google.protobuf.Duration heartbeat_interval = 3; */ - java.lang.String getOwnerId(); + boolean hasHeartbeatInterval(); /** - * string owner_id = 3; + *
+     * Requested reservation extension heartbeat interval
+     * 
+ * + * .google.protobuf.Duration heartbeat_interval = 3; */ - com.google.protobuf.ByteString - getOwnerIdBytes(); + com.google.protobuf.Duration getHeartbeatInterval(); + /** + *
+     * Requested reservation extension heartbeat interval
+     * 
+ * + * .google.protobuf.Duration heartbeat_interval = 3; + */ + com.google.protobuf.DurationOrBuilder getHeartbeatIntervalOrBuilder(); } /** *
-   * Whether we successfully reserve a spot.
+   * Try to acquire or extend an artifact reservation. If an active reservation exists, retreive that instance.
    * 
* - * Protobuf type {@code datacatalog.ReservationStatus} + * Protobuf type {@code datacatalog.GetOrExtendReservationRequest} */ - public static final class ReservationStatus extends + public static final class GetOrExtendReservationRequest extends com.google.protobuf.GeneratedMessageV3 implements - // @@protoc_insertion_point(message_implements:datacatalog.ReservationStatus) - ReservationStatusOrBuilder { + // @@protoc_insertion_point(message_implements:datacatalog.GetOrExtendReservationRequest) + GetOrExtendReservationRequestOrBuilder { private static final long serialVersionUID = 0L; - // Use ReservationStatus.newBuilder() to construct. - private ReservationStatus(com.google.protobuf.GeneratedMessageV3.Builder builder) { + // Use GetOrExtendReservationRequest.newBuilder() to construct. + private GetOrExtendReservationRequest(com.google.protobuf.GeneratedMessageV3.Builder builder) { super(builder); } - private ReservationStatus() { - state_ = 0; + private GetOrExtendReservationRequest() { ownerId_ = ""; } @@ -11189,7 +11067,7 @@ private ReservationStatus() { getUnknownFields() { return this.unknownFields; } - private ReservationStatus( + private GetOrExtendReservationRequest( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { @@ -11208,31 +11086,38 @@ private ReservationStatus( case 0: done = true; break; - case 8: { - int rawValue = input.readEnum(); - - state_ = rawValue; - break; - } - case 18: { - datacatalog.Datacatalog.Metadata.Builder subBuilder = null; - if (metadata_ != null) { - subBuilder = metadata_.toBuilder(); + case 10: { + datacatalog.Datacatalog.ReservationID.Builder subBuilder = null; + if (reservationId_ != null) { + subBuilder = reservationId_.toBuilder(); } - metadata_ = input.readMessage(datacatalog.Datacatalog.Metadata.parser(), extensionRegistry); + reservationId_ = input.readMessage(datacatalog.Datacatalog.ReservationID.parser(), extensionRegistry); if (subBuilder != null) { - subBuilder.mergeFrom(metadata_); - metadata_ = subBuilder.buildPartial(); + subBuilder.mergeFrom(reservationId_); + reservationId_ = subBuilder.buildPartial(); } break; } - case 26: { + case 18: { java.lang.String s = input.readStringRequireUtf8(); ownerId_ = s; break; } + case 26: { + com.google.protobuf.Duration.Builder subBuilder = null; + if (heartbeatInterval_ != null) { + subBuilder = heartbeatInterval_.toBuilder(); + } + heartbeatInterval_ = input.readMessage(com.google.protobuf.Duration.parser(), extensionRegistry); + if (subBuilder != null) { + subBuilder.mergeFrom(heartbeatInterval_); + heartbeatInterval_ = subBuilder.buildPartial(); + } + + break; + } default: { if (!parseUnknownField( input, unknownFields, extensionRegistry, tag)) { @@ -11254,173 +11139,42 @@ private ReservationStatus( } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return datacatalog.Datacatalog.internal_static_datacatalog_ReservationStatus_descriptor; + return datacatalog.Datacatalog.internal_static_datacatalog_GetOrExtendReservationRequest_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return datacatalog.Datacatalog.internal_static_datacatalog_ReservationStatus_fieldAccessorTable + return datacatalog.Datacatalog.internal_static_datacatalog_GetOrExtendReservationRequest_fieldAccessorTable .ensureFieldAccessorsInitialized( - datacatalog.Datacatalog.ReservationStatus.class, datacatalog.Datacatalog.ReservationStatus.Builder.class); + datacatalog.Datacatalog.GetOrExtendReservationRequest.class, datacatalog.Datacatalog.GetOrExtendReservationRequest.Builder.class); } + public static final int RESERVATION_ID_FIELD_NUMBER = 1; + private datacatalog.Datacatalog.ReservationID reservationId_; /** - * Protobuf enum {@code datacatalog.ReservationStatus.State} + * .datacatalog.ReservationID reservation_id = 1; */ - public enum State - implements com.google.protobuf.ProtocolMessageEnum { - /** - *
-       * Acquired the reservation successfully.
-       * 
- * - * ACQUIRED = 0; - */ - ACQUIRED(0), - /** - *
-       * Indicates an existing active reservation exist for a different owner_id.
-       * 
- * - * ALREADY_IN_PROGRESS = 1; - */ - ALREADY_IN_PROGRESS(1), - UNRECOGNIZED(-1), - ; - - /** - *
-       * Acquired the reservation successfully.
-       * 
- * - * ACQUIRED = 0; - */ - public static final int ACQUIRED_VALUE = 0; - /** - *
-       * Indicates an existing active reservation exist for a different owner_id.
-       * 
- * - * ALREADY_IN_PROGRESS = 1; - */ - public static final int ALREADY_IN_PROGRESS_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 State valueOf(int value) { - return forNumber(value); - } - - public static State forNumber(int value) { - switch (value) { - case 0: return ACQUIRED; - case 1: return ALREADY_IN_PROGRESS; - default: return null; - } - } - - public static com.google.protobuf.Internal.EnumLiteMap - internalGetValueMap() { - return internalValueMap; - } - private static final com.google.protobuf.Internal.EnumLiteMap< - State> internalValueMap = - new com.google.protobuf.Internal.EnumLiteMap() { - public State findValueByNumber(int number) { - return State.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 datacatalog.Datacatalog.ReservationStatus.getDescriptor().getEnumTypes().get(0); - } - - private static final State[] VALUES = values(); - - public static State 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 State(int value) { - this.value = value; - } - - // @@protoc_insertion_point(enum_scope:datacatalog.ReservationStatus.State) + public boolean hasReservationId() { + return reservationId_ != null; } - - public static final int STATE_FIELD_NUMBER = 1; - private int state_; /** - * .datacatalog.ReservationStatus.State state = 1; + * .datacatalog.ReservationID reservation_id = 1; */ - public int getStateValue() { - return state_; + public datacatalog.Datacatalog.ReservationID getReservationId() { + return reservationId_ == null ? datacatalog.Datacatalog.ReservationID.getDefaultInstance() : reservationId_; } /** - * .datacatalog.ReservationStatus.State state = 1; + * .datacatalog.ReservationID reservation_id = 1; */ - public datacatalog.Datacatalog.ReservationStatus.State getState() { - @SuppressWarnings("deprecation") - datacatalog.Datacatalog.ReservationStatus.State result = datacatalog.Datacatalog.ReservationStatus.State.valueOf(state_); - return result == null ? datacatalog.Datacatalog.ReservationStatus.State.UNRECOGNIZED : result; + public datacatalog.Datacatalog.ReservationIDOrBuilder getReservationIdOrBuilder() { + return getReservationId(); } - public static final int METADATA_FIELD_NUMBER = 2; - private datacatalog.Datacatalog.Metadata metadata_; - /** - * .datacatalog.Metadata metadata = 2; - */ - public boolean hasMetadata() { - return metadata_ != null; - } - /** - * .datacatalog.Metadata metadata = 2; - */ - public datacatalog.Datacatalog.Metadata getMetadata() { - return metadata_ == null ? datacatalog.Datacatalog.Metadata.getDefaultInstance() : metadata_; - } - /** - * .datacatalog.Metadata metadata = 2; - */ - public datacatalog.Datacatalog.MetadataOrBuilder getMetadataOrBuilder() { - return getMetadata(); - } - - public static final int OWNER_ID_FIELD_NUMBER = 3; + public static final int OWNER_ID_FIELD_NUMBER = 2; private volatile java.lang.Object ownerId_; /** - * string owner_id = 3; + * string owner_id = 2; */ public java.lang.String getOwnerId() { java.lang.Object ref = ownerId_; @@ -11435,7 +11189,7 @@ public java.lang.String getOwnerId() { } } /** - * string owner_id = 3; + * string owner_id = 2; */ public com.google.protobuf.ByteString getOwnerIdBytes() { @@ -11451,6 +11205,39 @@ public java.lang.String getOwnerId() { } } + public static final int HEARTBEAT_INTERVAL_FIELD_NUMBER = 3; + private com.google.protobuf.Duration heartbeatInterval_; + /** + *
+     * Requested reservation extension heartbeat interval
+     * 
+ * + * .google.protobuf.Duration heartbeat_interval = 3; + */ + public boolean hasHeartbeatInterval() { + return heartbeatInterval_ != null; + } + /** + *
+     * Requested reservation extension heartbeat interval
+     * 
+ * + * .google.protobuf.Duration heartbeat_interval = 3; + */ + public com.google.protobuf.Duration getHeartbeatInterval() { + return heartbeatInterval_ == null ? com.google.protobuf.Duration.getDefaultInstance() : heartbeatInterval_; + } + /** + *
+     * Requested reservation extension heartbeat interval
+     * 
+ * + * .google.protobuf.Duration heartbeat_interval = 3; + */ + public com.google.protobuf.DurationOrBuilder getHeartbeatIntervalOrBuilder() { + return getHeartbeatInterval(); + } + private byte memoizedIsInitialized = -1; @java.lang.Override public final boolean isInitialized() { @@ -11465,14 +11252,14 @@ public final boolean isInitialized() { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (state_ != datacatalog.Datacatalog.ReservationStatus.State.ACQUIRED.getNumber()) { - output.writeEnum(1, state_); - } - if (metadata_ != null) { - output.writeMessage(2, getMetadata()); + if (reservationId_ != null) { + output.writeMessage(1, getReservationId()); } if (!getOwnerIdBytes().isEmpty()) { - com.google.protobuf.GeneratedMessageV3.writeString(output, 3, ownerId_); + com.google.protobuf.GeneratedMessageV3.writeString(output, 2, ownerId_); + } + if (heartbeatInterval_ != null) { + output.writeMessage(3, getHeartbeatInterval()); } unknownFields.writeTo(output); } @@ -11483,16 +11270,16 @@ public int getSerializedSize() { if (size != -1) return size; size = 0; - if (state_ != datacatalog.Datacatalog.ReservationStatus.State.ACQUIRED.getNumber()) { + if (reservationId_ != null) { size += com.google.protobuf.CodedOutputStream - .computeEnumSize(1, state_); - } - if (metadata_ != null) { - size += com.google.protobuf.CodedOutputStream - .computeMessageSize(2, getMetadata()); + .computeMessageSize(1, getReservationId()); } if (!getOwnerIdBytes().isEmpty()) { - size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, ownerId_); + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, ownerId_); + } + if (heartbeatInterval_ != null) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(3, getHeartbeatInterval()); } size += unknownFields.getSerializedSize(); memoizedSize = size; @@ -11504,19 +11291,23 @@ public boolean equals(final java.lang.Object obj) { if (obj == this) { return true; } - if (!(obj instanceof datacatalog.Datacatalog.ReservationStatus)) { + if (!(obj instanceof datacatalog.Datacatalog.GetOrExtendReservationRequest)) { return super.equals(obj); } - datacatalog.Datacatalog.ReservationStatus other = (datacatalog.Datacatalog.ReservationStatus) obj; + datacatalog.Datacatalog.GetOrExtendReservationRequest other = (datacatalog.Datacatalog.GetOrExtendReservationRequest) obj; - if (state_ != other.state_) return false; - if (hasMetadata() != other.hasMetadata()) return false; - if (hasMetadata()) { - if (!getMetadata() - .equals(other.getMetadata())) return false; + if (hasReservationId() != other.hasReservationId()) return false; + if (hasReservationId()) { + if (!getReservationId() + .equals(other.getReservationId())) return false; } if (!getOwnerId() .equals(other.getOwnerId())) return false; + if (hasHeartbeatInterval() != other.hasHeartbeatInterval()) return false; + if (hasHeartbeatInterval()) { + if (!getHeartbeatInterval() + .equals(other.getHeartbeatInterval())) return false; + } if (!unknownFields.equals(other.unknownFields)) return false; return true; } @@ -11528,82 +11319,84 @@ public int hashCode() { } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); - hash = (37 * hash) + STATE_FIELD_NUMBER; - hash = (53 * hash) + state_; - if (hasMetadata()) { - hash = (37 * hash) + METADATA_FIELD_NUMBER; - hash = (53 * hash) + getMetadata().hashCode(); + if (hasReservationId()) { + hash = (37 * hash) + RESERVATION_ID_FIELD_NUMBER; + hash = (53 * hash) + getReservationId().hashCode(); } hash = (37 * hash) + OWNER_ID_FIELD_NUMBER; hash = (53 * hash) + getOwnerId().hashCode(); + if (hasHeartbeatInterval()) { + hash = (37 * hash) + HEARTBEAT_INTERVAL_FIELD_NUMBER; + hash = (53 * hash) + getHeartbeatInterval().hashCode(); + } hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; } - public static datacatalog.Datacatalog.ReservationStatus parseFrom( + public static datacatalog.Datacatalog.GetOrExtendReservationRequest parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static datacatalog.Datacatalog.ReservationStatus parseFrom( + public static datacatalog.Datacatalog.GetOrExtendReservationRequest parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static datacatalog.Datacatalog.ReservationStatus parseFrom( + public static datacatalog.Datacatalog.GetOrExtendReservationRequest parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static datacatalog.Datacatalog.ReservationStatus parseFrom( + public static datacatalog.Datacatalog.GetOrExtendReservationRequest parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static datacatalog.Datacatalog.ReservationStatus parseFrom(byte[] data) + public static datacatalog.Datacatalog.GetOrExtendReservationRequest parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static datacatalog.Datacatalog.ReservationStatus parseFrom( + public static datacatalog.Datacatalog.GetOrExtendReservationRequest parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static datacatalog.Datacatalog.ReservationStatus parseFrom(java.io.InputStream input) + public static datacatalog.Datacatalog.GetOrExtendReservationRequest parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static datacatalog.Datacatalog.ReservationStatus parseFrom( + public static datacatalog.Datacatalog.GetOrExtendReservationRequest 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 datacatalog.Datacatalog.ReservationStatus parseDelimitedFrom(java.io.InputStream input) + public static datacatalog.Datacatalog.GetOrExtendReservationRequest parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input); } - public static datacatalog.Datacatalog.ReservationStatus parseDelimitedFrom( + public static datacatalog.Datacatalog.GetOrExtendReservationRequest 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 datacatalog.Datacatalog.ReservationStatus parseFrom( + public static datacatalog.Datacatalog.GetOrExtendReservationRequest parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static datacatalog.Datacatalog.ReservationStatus parseFrom( + public static datacatalog.Datacatalog.GetOrExtendReservationRequest parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { @@ -11616,7 +11409,7 @@ public static datacatalog.Datacatalog.ReservationStatus parseFrom( public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } - public static Builder newBuilder(datacatalog.Datacatalog.ReservationStatus prototype) { + public static Builder newBuilder(datacatalog.Datacatalog.GetOrExtendReservationRequest prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override @@ -11633,29 +11426,29 @@ protected Builder newBuilderForType( } /** *
-     * Whether we successfully reserve a spot.
+     * Try to acquire or extend an artifact reservation. If an active reservation exists, retreive that instance.
      * 
* - * Protobuf type {@code datacatalog.ReservationStatus} + * Protobuf type {@code datacatalog.GetOrExtendReservationRequest} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder implements - // @@protoc_insertion_point(builder_implements:datacatalog.ReservationStatus) - datacatalog.Datacatalog.ReservationStatusOrBuilder { + // @@protoc_insertion_point(builder_implements:datacatalog.GetOrExtendReservationRequest) + datacatalog.Datacatalog.GetOrExtendReservationRequestOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return datacatalog.Datacatalog.internal_static_datacatalog_ReservationStatus_descriptor; + return datacatalog.Datacatalog.internal_static_datacatalog_GetOrExtendReservationRequest_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return datacatalog.Datacatalog.internal_static_datacatalog_ReservationStatus_fieldAccessorTable + return datacatalog.Datacatalog.internal_static_datacatalog_GetOrExtendReservationRequest_fieldAccessorTable .ensureFieldAccessorsInitialized( - datacatalog.Datacatalog.ReservationStatus.class, datacatalog.Datacatalog.ReservationStatus.Builder.class); + datacatalog.Datacatalog.GetOrExtendReservationRequest.class, datacatalog.Datacatalog.GetOrExtendReservationRequest.Builder.class); } - // Construct using datacatalog.Datacatalog.ReservationStatus.newBuilder() + // Construct using datacatalog.Datacatalog.GetOrExtendReservationRequest.newBuilder() private Builder() { maybeForceBuilderInitialization(); } @@ -11673,33 +11466,37 @@ private void maybeForceBuilderInitialization() { @java.lang.Override public Builder clear() { super.clear(); - state_ = 0; - - if (metadataBuilder_ == null) { - metadata_ = null; + if (reservationIdBuilder_ == null) { + reservationId_ = null; } else { - metadata_ = null; - metadataBuilder_ = null; + reservationId_ = null; + reservationIdBuilder_ = null; } ownerId_ = ""; + if (heartbeatIntervalBuilder_ == null) { + heartbeatInterval_ = null; + } else { + heartbeatInterval_ = null; + heartbeatIntervalBuilder_ = null; + } return this; } @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { - return datacatalog.Datacatalog.internal_static_datacatalog_ReservationStatus_descriptor; + return datacatalog.Datacatalog.internal_static_datacatalog_GetOrExtendReservationRequest_descriptor; } @java.lang.Override - public datacatalog.Datacatalog.ReservationStatus getDefaultInstanceForType() { - return datacatalog.Datacatalog.ReservationStatus.getDefaultInstance(); + public datacatalog.Datacatalog.GetOrExtendReservationRequest getDefaultInstanceForType() { + return datacatalog.Datacatalog.GetOrExtendReservationRequest.getDefaultInstance(); } @java.lang.Override - public datacatalog.Datacatalog.ReservationStatus build() { - datacatalog.Datacatalog.ReservationStatus result = buildPartial(); + public datacatalog.Datacatalog.GetOrExtendReservationRequest build() { + datacatalog.Datacatalog.GetOrExtendReservationRequest result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } @@ -11707,15 +11504,19 @@ public datacatalog.Datacatalog.ReservationStatus build() { } @java.lang.Override - public datacatalog.Datacatalog.ReservationStatus buildPartial() { - datacatalog.Datacatalog.ReservationStatus result = new datacatalog.Datacatalog.ReservationStatus(this); - result.state_ = state_; - if (metadataBuilder_ == null) { - result.metadata_ = metadata_; + public datacatalog.Datacatalog.GetOrExtendReservationRequest buildPartial() { + datacatalog.Datacatalog.GetOrExtendReservationRequest result = new datacatalog.Datacatalog.GetOrExtendReservationRequest(this); + if (reservationIdBuilder_ == null) { + result.reservationId_ = reservationId_; } else { - result.metadata_ = metadataBuilder_.build(); + result.reservationId_ = reservationIdBuilder_.build(); } result.ownerId_ = ownerId_; + if (heartbeatIntervalBuilder_ == null) { + result.heartbeatInterval_ = heartbeatInterval_; + } else { + result.heartbeatInterval_ = heartbeatIntervalBuilder_.build(); + } onBuilt(); return result; } @@ -11754,26 +11555,26 @@ public Builder addRepeatedField( } @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof datacatalog.Datacatalog.ReservationStatus) { - return mergeFrom((datacatalog.Datacatalog.ReservationStatus)other); + if (other instanceof datacatalog.Datacatalog.GetOrExtendReservationRequest) { + return mergeFrom((datacatalog.Datacatalog.GetOrExtendReservationRequest)other); } else { super.mergeFrom(other); return this; } } - public Builder mergeFrom(datacatalog.Datacatalog.ReservationStatus other) { - if (other == datacatalog.Datacatalog.ReservationStatus.getDefaultInstance()) return this; - if (other.state_ != 0) { - setStateValue(other.getStateValue()); - } - if (other.hasMetadata()) { - mergeMetadata(other.getMetadata()); + public Builder mergeFrom(datacatalog.Datacatalog.GetOrExtendReservationRequest other) { + if (other == datacatalog.Datacatalog.GetOrExtendReservationRequest.getDefaultInstance()) return this; + if (other.hasReservationId()) { + mergeReservationId(other.getReservationId()); } if (!other.getOwnerId().isEmpty()) { ownerId_ = other.ownerId_; onChanged(); } + if (other.hasHeartbeatInterval()) { + mergeHeartbeatInterval(other.getHeartbeatInterval()); + } this.mergeUnknownFields(other.unknownFields); onChanged(); return this; @@ -11789,11 +11590,11 @@ public Builder mergeFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - datacatalog.Datacatalog.ReservationStatus parsedMessage = null; + datacatalog.Datacatalog.GetOrExtendReservationRequest parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { - parsedMessage = (datacatalog.Datacatalog.ReservationStatus) e.getUnfinishedMessage(); + parsedMessage = (datacatalog.Datacatalog.GetOrExtendReservationRequest) e.getUnfinishedMessage(); throw e.unwrapIOException(); } finally { if (parsedMessage != null) { @@ -11803,171 +11604,126 @@ public Builder mergeFrom( return this; } - private int state_ = 0; - /** - * .datacatalog.ReservationStatus.State state = 1; - */ - public int getStateValue() { - return state_; - } - /** - * .datacatalog.ReservationStatus.State state = 1; - */ - public Builder setStateValue(int value) { - state_ = value; - onChanged(); - return this; - } - /** - * .datacatalog.ReservationStatus.State state = 1; - */ - public datacatalog.Datacatalog.ReservationStatus.State getState() { - @SuppressWarnings("deprecation") - datacatalog.Datacatalog.ReservationStatus.State result = datacatalog.Datacatalog.ReservationStatus.State.valueOf(state_); - return result == null ? datacatalog.Datacatalog.ReservationStatus.State.UNRECOGNIZED : result; - } - /** - * .datacatalog.ReservationStatus.State state = 1; - */ - public Builder setState(datacatalog.Datacatalog.ReservationStatus.State value) { - if (value == null) { - throw new NullPointerException(); - } - - state_ = value.getNumber(); - onChanged(); - return this; - } - /** - * .datacatalog.ReservationStatus.State state = 1; - */ - public Builder clearState() { - - state_ = 0; - onChanged(); - return this; - } - - private datacatalog.Datacatalog.Metadata metadata_; + private datacatalog.Datacatalog.ReservationID reservationId_; private com.google.protobuf.SingleFieldBuilderV3< - datacatalog.Datacatalog.Metadata, datacatalog.Datacatalog.Metadata.Builder, datacatalog.Datacatalog.MetadataOrBuilder> metadataBuilder_; + datacatalog.Datacatalog.ReservationID, datacatalog.Datacatalog.ReservationID.Builder, datacatalog.Datacatalog.ReservationIDOrBuilder> reservationIdBuilder_; /** - * .datacatalog.Metadata metadata = 2; + * .datacatalog.ReservationID reservation_id = 1; */ - public boolean hasMetadata() { - return metadataBuilder_ != null || metadata_ != null; + public boolean hasReservationId() { + return reservationIdBuilder_ != null || reservationId_ != null; } /** - * .datacatalog.Metadata metadata = 2; + * .datacatalog.ReservationID reservation_id = 1; */ - public datacatalog.Datacatalog.Metadata getMetadata() { - if (metadataBuilder_ == null) { - return metadata_ == null ? datacatalog.Datacatalog.Metadata.getDefaultInstance() : metadata_; + public datacatalog.Datacatalog.ReservationID getReservationId() { + if (reservationIdBuilder_ == null) { + return reservationId_ == null ? datacatalog.Datacatalog.ReservationID.getDefaultInstance() : reservationId_; } else { - return metadataBuilder_.getMessage(); + return reservationIdBuilder_.getMessage(); } } /** - * .datacatalog.Metadata metadata = 2; + * .datacatalog.ReservationID reservation_id = 1; */ - public Builder setMetadata(datacatalog.Datacatalog.Metadata value) { - if (metadataBuilder_ == null) { + public Builder setReservationId(datacatalog.Datacatalog.ReservationID value) { + if (reservationIdBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - metadata_ = value; + reservationId_ = value; onChanged(); } else { - metadataBuilder_.setMessage(value); + reservationIdBuilder_.setMessage(value); } return this; } /** - * .datacatalog.Metadata metadata = 2; + * .datacatalog.ReservationID reservation_id = 1; */ - public Builder setMetadata( - datacatalog.Datacatalog.Metadata.Builder builderForValue) { - if (metadataBuilder_ == null) { - metadata_ = builderForValue.build(); + public Builder setReservationId( + datacatalog.Datacatalog.ReservationID.Builder builderForValue) { + if (reservationIdBuilder_ == null) { + reservationId_ = builderForValue.build(); onChanged(); } else { - metadataBuilder_.setMessage(builderForValue.build()); + reservationIdBuilder_.setMessage(builderForValue.build()); } return this; } /** - * .datacatalog.Metadata metadata = 2; + * .datacatalog.ReservationID reservation_id = 1; */ - public Builder mergeMetadata(datacatalog.Datacatalog.Metadata value) { - if (metadataBuilder_ == null) { - if (metadata_ != null) { - metadata_ = - datacatalog.Datacatalog.Metadata.newBuilder(metadata_).mergeFrom(value).buildPartial(); + public Builder mergeReservationId(datacatalog.Datacatalog.ReservationID value) { + if (reservationIdBuilder_ == null) { + if (reservationId_ != null) { + reservationId_ = + datacatalog.Datacatalog.ReservationID.newBuilder(reservationId_).mergeFrom(value).buildPartial(); } else { - metadata_ = value; + reservationId_ = value; } onChanged(); } else { - metadataBuilder_.mergeFrom(value); + reservationIdBuilder_.mergeFrom(value); } return this; } /** - * .datacatalog.Metadata metadata = 2; + * .datacatalog.ReservationID reservation_id = 1; */ - public Builder clearMetadata() { - if (metadataBuilder_ == null) { - metadata_ = null; + public Builder clearReservationId() { + if (reservationIdBuilder_ == null) { + reservationId_ = null; onChanged(); } else { - metadata_ = null; - metadataBuilder_ = null; + reservationId_ = null; + reservationIdBuilder_ = null; } return this; } /** - * .datacatalog.Metadata metadata = 2; + * .datacatalog.ReservationID reservation_id = 1; */ - public datacatalog.Datacatalog.Metadata.Builder getMetadataBuilder() { + public datacatalog.Datacatalog.ReservationID.Builder getReservationIdBuilder() { onChanged(); - return getMetadataFieldBuilder().getBuilder(); + return getReservationIdFieldBuilder().getBuilder(); } /** - * .datacatalog.Metadata metadata = 2; + * .datacatalog.ReservationID reservation_id = 1; */ - public datacatalog.Datacatalog.MetadataOrBuilder getMetadataOrBuilder() { - if (metadataBuilder_ != null) { - return metadataBuilder_.getMessageOrBuilder(); + public datacatalog.Datacatalog.ReservationIDOrBuilder getReservationIdOrBuilder() { + if (reservationIdBuilder_ != null) { + return reservationIdBuilder_.getMessageOrBuilder(); } else { - return metadata_ == null ? - datacatalog.Datacatalog.Metadata.getDefaultInstance() : metadata_; + return reservationId_ == null ? + datacatalog.Datacatalog.ReservationID.getDefaultInstance() : reservationId_; } } /** - * .datacatalog.Metadata metadata = 2; + * .datacatalog.ReservationID reservation_id = 1; */ private com.google.protobuf.SingleFieldBuilderV3< - datacatalog.Datacatalog.Metadata, datacatalog.Datacatalog.Metadata.Builder, datacatalog.Datacatalog.MetadataOrBuilder> - getMetadataFieldBuilder() { - if (metadataBuilder_ == null) { - metadataBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< - datacatalog.Datacatalog.Metadata, datacatalog.Datacatalog.Metadata.Builder, datacatalog.Datacatalog.MetadataOrBuilder>( - getMetadata(), + datacatalog.Datacatalog.ReservationID, datacatalog.Datacatalog.ReservationID.Builder, datacatalog.Datacatalog.ReservationIDOrBuilder> + getReservationIdFieldBuilder() { + if (reservationIdBuilder_ == null) { + reservationIdBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + datacatalog.Datacatalog.ReservationID, datacatalog.Datacatalog.ReservationID.Builder, datacatalog.Datacatalog.ReservationIDOrBuilder>( + getReservationId(), getParentForChildren(), isClean()); - metadata_ = null; + reservationId_ = null; } - return metadataBuilder_; + return reservationIdBuilder_; } private java.lang.Object ownerId_ = ""; /** - * string owner_id = 3; + * string owner_id = 2; */ public java.lang.String getOwnerId() { java.lang.Object ref = ownerId_; @@ -11982,7 +11738,7 @@ public java.lang.String getOwnerId() { } } /** - * string owner_id = 3; + * string owner_id = 2; */ public com.google.protobuf.ByteString getOwnerIdBytes() { @@ -11998,7 +11754,7 @@ public java.lang.String getOwnerId() { } } /** - * string owner_id = 3; + * string owner_id = 2; */ public Builder setOwnerId( java.lang.String value) { @@ -12011,7 +11767,7 @@ public Builder setOwnerId( return this; } /** - * string owner_id = 3; + * string owner_id = 2; */ public Builder clearOwnerId() { @@ -12020,7 +11776,7 @@ public Builder clearOwnerId() { return this; } /** - * string owner_id = 3; + * string owner_id = 2; */ public Builder setOwnerIdBytes( com.google.protobuf.ByteString value) { @@ -12033,6 +11789,159 @@ public Builder setOwnerIdBytes( onChanged(); return this; } + + private com.google.protobuf.Duration heartbeatInterval_; + private com.google.protobuf.SingleFieldBuilderV3< + com.google.protobuf.Duration, com.google.protobuf.Duration.Builder, com.google.protobuf.DurationOrBuilder> heartbeatIntervalBuilder_; + /** + *
+       * Requested reservation extension heartbeat interval
+       * 
+ * + * .google.protobuf.Duration heartbeat_interval = 3; + */ + public boolean hasHeartbeatInterval() { + return heartbeatIntervalBuilder_ != null || heartbeatInterval_ != null; + } + /** + *
+       * Requested reservation extension heartbeat interval
+       * 
+ * + * .google.protobuf.Duration heartbeat_interval = 3; + */ + public com.google.protobuf.Duration getHeartbeatInterval() { + if (heartbeatIntervalBuilder_ == null) { + return heartbeatInterval_ == null ? com.google.protobuf.Duration.getDefaultInstance() : heartbeatInterval_; + } else { + return heartbeatIntervalBuilder_.getMessage(); + } + } + /** + *
+       * Requested reservation extension heartbeat interval
+       * 
+ * + * .google.protobuf.Duration heartbeat_interval = 3; + */ + public Builder setHeartbeatInterval(com.google.protobuf.Duration value) { + if (heartbeatIntervalBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + heartbeatInterval_ = value; + onChanged(); + } else { + heartbeatIntervalBuilder_.setMessage(value); + } + + return this; + } + /** + *
+       * Requested reservation extension heartbeat interval
+       * 
+ * + * .google.protobuf.Duration heartbeat_interval = 3; + */ + public Builder setHeartbeatInterval( + com.google.protobuf.Duration.Builder builderForValue) { + if (heartbeatIntervalBuilder_ == null) { + heartbeatInterval_ = builderForValue.build(); + onChanged(); + } else { + heartbeatIntervalBuilder_.setMessage(builderForValue.build()); + } + + return this; + } + /** + *
+       * Requested reservation extension heartbeat interval
+       * 
+ * + * .google.protobuf.Duration heartbeat_interval = 3; + */ + public Builder mergeHeartbeatInterval(com.google.protobuf.Duration value) { + if (heartbeatIntervalBuilder_ == null) { + if (heartbeatInterval_ != null) { + heartbeatInterval_ = + com.google.protobuf.Duration.newBuilder(heartbeatInterval_).mergeFrom(value).buildPartial(); + } else { + heartbeatInterval_ = value; + } + onChanged(); + } else { + heartbeatIntervalBuilder_.mergeFrom(value); + } + + return this; + } + /** + *
+       * Requested reservation extension heartbeat interval
+       * 
+ * + * .google.protobuf.Duration heartbeat_interval = 3; + */ + public Builder clearHeartbeatInterval() { + if (heartbeatIntervalBuilder_ == null) { + heartbeatInterval_ = null; + onChanged(); + } else { + heartbeatInterval_ = null; + heartbeatIntervalBuilder_ = null; + } + + return this; + } + /** + *
+       * Requested reservation extension heartbeat interval
+       * 
+ * + * .google.protobuf.Duration heartbeat_interval = 3; + */ + public com.google.protobuf.Duration.Builder getHeartbeatIntervalBuilder() { + + onChanged(); + return getHeartbeatIntervalFieldBuilder().getBuilder(); + } + /** + *
+       * Requested reservation extension heartbeat interval
+       * 
+ * + * .google.protobuf.Duration heartbeat_interval = 3; + */ + public com.google.protobuf.DurationOrBuilder getHeartbeatIntervalOrBuilder() { + if (heartbeatIntervalBuilder_ != null) { + return heartbeatIntervalBuilder_.getMessageOrBuilder(); + } else { + return heartbeatInterval_ == null ? + com.google.protobuf.Duration.getDefaultInstance() : heartbeatInterval_; + } + } + /** + *
+       * Requested reservation extension heartbeat interval
+       * 
+ * + * .google.protobuf.Duration heartbeat_interval = 3; + */ + private com.google.protobuf.SingleFieldBuilderV3< + com.google.protobuf.Duration, com.google.protobuf.Duration.Builder, com.google.protobuf.DurationOrBuilder> + getHeartbeatIntervalFieldBuilder() { + if (heartbeatIntervalBuilder_ == null) { + heartbeatIntervalBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + com.google.protobuf.Duration, com.google.protobuf.Duration.Builder, com.google.protobuf.DurationOrBuilder>( + getHeartbeatInterval(), + getParentForChildren(), + isClean()); + heartbeatInterval_ = null; + } + return heartbeatIntervalBuilder_; + } @java.lang.Override public final Builder setUnknownFields( final com.google.protobuf.UnknownFieldSet unknownFields) { @@ -12046,95 +11955,154 @@ public final Builder mergeUnknownFields( } - // @@protoc_insertion_point(builder_scope:datacatalog.ReservationStatus) + // @@protoc_insertion_point(builder_scope:datacatalog.GetOrExtendReservationRequest) } - // @@protoc_insertion_point(class_scope:datacatalog.ReservationStatus) - private static final datacatalog.Datacatalog.ReservationStatus DEFAULT_INSTANCE; + // @@protoc_insertion_point(class_scope:datacatalog.GetOrExtendReservationRequest) + private static final datacatalog.Datacatalog.GetOrExtendReservationRequest DEFAULT_INSTANCE; static { - DEFAULT_INSTANCE = new datacatalog.Datacatalog.ReservationStatus(); + DEFAULT_INSTANCE = new datacatalog.Datacatalog.GetOrExtendReservationRequest(); } - public static datacatalog.Datacatalog.ReservationStatus getDefaultInstance() { + public static datacatalog.Datacatalog.GetOrExtendReservationRequest getDefaultInstance() { return DEFAULT_INSTANCE; } - private static final com.google.protobuf.Parser - PARSER = new com.google.protobuf.AbstractParser() { + private static final com.google.protobuf.Parser + PARSER = new com.google.protobuf.AbstractParser() { @java.lang.Override - public ReservationStatus parsePartialFrom( + public GetOrExtendReservationRequest parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { - return new ReservationStatus(input, extensionRegistry); + return new GetOrExtendReservationRequest(input, extensionRegistry); } }; - public static com.google.protobuf.Parser parser() { + public static com.google.protobuf.Parser parser() { return PARSER; } @java.lang.Override - public com.google.protobuf.Parser getParserForType() { + public com.google.protobuf.Parser getParserForType() { return PARSER; } @java.lang.Override - public datacatalog.Datacatalog.ReservationStatus getDefaultInstanceForType() { + public datacatalog.Datacatalog.GetOrExtendReservationRequest getDefaultInstanceForType() { return DEFAULT_INSTANCE; } } - public interface GetOrReserveArtifactResponseOrBuilder extends - // @@protoc_insertion_point(interface_extends:datacatalog.GetOrReserveArtifactResponse) + public interface ReservationOrBuilder extends + // @@protoc_insertion_point(interface_extends:datacatalog.Reservation) com.google.protobuf.MessageOrBuilder { /** - * .datacatalog.Artifact artifact = 1; + * .datacatalog.ReservationID reservation_id = 1; */ - boolean hasArtifact(); + boolean hasReservationId(); /** - * .datacatalog.Artifact artifact = 1; + * .datacatalog.ReservationID reservation_id = 1; */ - datacatalog.Datacatalog.Artifact getArtifact(); + datacatalog.Datacatalog.ReservationID getReservationId(); /** - * .datacatalog.Artifact artifact = 1; + * .datacatalog.ReservationID reservation_id = 1; */ - datacatalog.Datacatalog.ArtifactOrBuilder getArtifactOrBuilder(); + datacatalog.Datacatalog.ReservationIDOrBuilder getReservationIdOrBuilder(); /** - * .datacatalog.ReservationStatus reservation_status = 2; - */ - boolean hasReservationStatus(); - /** - * .datacatalog.ReservationStatus reservation_status = 2; + * string owner_id = 2; */ - datacatalog.Datacatalog.ReservationStatus getReservationStatus(); + java.lang.String getOwnerId(); /** - * .datacatalog.ReservationStatus reservation_status = 2; + * string owner_id = 2; */ - datacatalog.Datacatalog.ReservationStatusOrBuilder getReservationStatusOrBuilder(); + com.google.protobuf.ByteString + getOwnerIdBytes(); + + /** + *
+     * Recommended heartbeat interval to extend reservation
+     * 
+ * + * .google.protobuf.Duration heartbeat_interval = 3; + */ + boolean hasHeartbeatInterval(); + /** + *
+     * Recommended heartbeat interval to extend reservation
+     * 
+ * + * .google.protobuf.Duration heartbeat_interval = 3; + */ + com.google.protobuf.Duration getHeartbeatInterval(); + /** + *
+     * Recommended heartbeat interval to extend reservation
+     * 
+ * + * .google.protobuf.Duration heartbeat_interval = 3; + */ + com.google.protobuf.DurationOrBuilder getHeartbeatIntervalOrBuilder(); + + /** + *
+     * Expiration timestamp of this reservation
+     * 
+ * + * .google.protobuf.Timestamp expires_at = 4; + */ + boolean hasExpiresAt(); + /** + *
+     * Expiration timestamp of this reservation
+     * 
+ * + * .google.protobuf.Timestamp expires_at = 4; + */ + com.google.protobuf.Timestamp getExpiresAt(); + /** + *
+     * Expiration timestamp of this reservation
+     * 
+ * + * .google.protobuf.Timestamp expires_at = 4; + */ + com.google.protobuf.TimestampOrBuilder getExpiresAtOrBuilder(); - public datacatalog.Datacatalog.GetOrReserveArtifactResponse.ValueCase getValueCase(); + /** + * .datacatalog.Metadata metadata = 6; + */ + boolean hasMetadata(); + /** + * .datacatalog.Metadata metadata = 6; + */ + datacatalog.Datacatalog.Metadata getMetadata(); + /** + * .datacatalog.Metadata metadata = 6; + */ + datacatalog.Datacatalog.MetadataOrBuilder getMetadataOrBuilder(); } /** *
-   * Response to get artifact or reserve spot.
+   * A reservation including owner, heartbeat interval, expiration timestamp, and various metadata.
    * 
* - * Protobuf type {@code datacatalog.GetOrReserveArtifactResponse} + * Protobuf type {@code datacatalog.Reservation} */ - public static final class GetOrReserveArtifactResponse extends + public static final class Reservation extends com.google.protobuf.GeneratedMessageV3 implements - // @@protoc_insertion_point(message_implements:datacatalog.GetOrReserveArtifactResponse) - GetOrReserveArtifactResponseOrBuilder { + // @@protoc_insertion_point(message_implements:datacatalog.Reservation) + ReservationOrBuilder { private static final long serialVersionUID = 0L; - // Use GetOrReserveArtifactResponse.newBuilder() to construct. - private GetOrReserveArtifactResponse(com.google.protobuf.GeneratedMessageV3.Builder builder) { + // Use Reservation.newBuilder() to construct. + private Reservation(com.google.protobuf.GeneratedMessageV3.Builder builder) { super(builder); } - private GetOrReserveArtifactResponse() { + private Reservation() { + ownerId_ = ""; } @java.lang.Override @@ -12142,7 +12110,7 @@ private GetOrReserveArtifactResponse() { getUnknownFields() { return this.unknownFields; } - private GetOrReserveArtifactResponse( + private Reservation( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { @@ -12162,31 +12130,61 @@ private GetOrReserveArtifactResponse( done = true; break; case 10: { - datacatalog.Datacatalog.Artifact.Builder subBuilder = null; - if (valueCase_ == 1) { - subBuilder = ((datacatalog.Datacatalog.Artifact) value_).toBuilder(); + datacatalog.Datacatalog.ReservationID.Builder subBuilder = null; + if (reservationId_ != null) { + subBuilder = reservationId_.toBuilder(); } - value_ = - input.readMessage(datacatalog.Datacatalog.Artifact.parser(), extensionRegistry); + reservationId_ = input.readMessage(datacatalog.Datacatalog.ReservationID.parser(), extensionRegistry); if (subBuilder != null) { - subBuilder.mergeFrom((datacatalog.Datacatalog.Artifact) value_); - value_ = subBuilder.buildPartial(); + subBuilder.mergeFrom(reservationId_); + reservationId_ = subBuilder.buildPartial(); } - valueCase_ = 1; + break; } case 18: { - datacatalog.Datacatalog.ReservationStatus.Builder subBuilder = null; - if (valueCase_ == 2) { - subBuilder = ((datacatalog.Datacatalog.ReservationStatus) value_).toBuilder(); + java.lang.String s = input.readStringRequireUtf8(); + + ownerId_ = s; + break; + } + case 26: { + com.google.protobuf.Duration.Builder subBuilder = null; + if (heartbeatInterval_ != null) { + subBuilder = heartbeatInterval_.toBuilder(); } - value_ = - input.readMessage(datacatalog.Datacatalog.ReservationStatus.parser(), extensionRegistry); + heartbeatInterval_ = input.readMessage(com.google.protobuf.Duration.parser(), extensionRegistry); if (subBuilder != null) { - subBuilder.mergeFrom((datacatalog.Datacatalog.ReservationStatus) value_); - value_ = subBuilder.buildPartial(); + subBuilder.mergeFrom(heartbeatInterval_); + heartbeatInterval_ = subBuilder.buildPartial(); + } + + break; + } + case 34: { + com.google.protobuf.Timestamp.Builder subBuilder = null; + if (expiresAt_ != null) { + subBuilder = expiresAt_.toBuilder(); + } + expiresAt_ = input.readMessage(com.google.protobuf.Timestamp.parser(), extensionRegistry); + if (subBuilder != null) { + subBuilder.mergeFrom(expiresAt_); + expiresAt_ = subBuilder.buildPartial(); + } + + break; + } + case 50: { + datacatalog.Datacatalog.Metadata.Builder subBuilder = null; + if (metadata_ != null) { + subBuilder = metadata_.toBuilder(); + } + metadata_ = input.readMessage(datacatalog.Datacatalog.Metadata.parser(), extensionRegistry); + if (subBuilder != null) { + subBuilder.mergeFrom(metadata_); + metadata_ = subBuilder.buildPartial(); } - valueCase_ = 2; + break; } default: { @@ -12210,105 +12208,157 @@ private GetOrReserveArtifactResponse( } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return datacatalog.Datacatalog.internal_static_datacatalog_GetOrReserveArtifactResponse_descriptor; + return datacatalog.Datacatalog.internal_static_datacatalog_Reservation_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return datacatalog.Datacatalog.internal_static_datacatalog_GetOrReserveArtifactResponse_fieldAccessorTable + return datacatalog.Datacatalog.internal_static_datacatalog_Reservation_fieldAccessorTable .ensureFieldAccessorsInitialized( - datacatalog.Datacatalog.GetOrReserveArtifactResponse.class, datacatalog.Datacatalog.GetOrReserveArtifactResponse.Builder.class); + datacatalog.Datacatalog.Reservation.class, datacatalog.Datacatalog.Reservation.Builder.class); } - private int valueCase_ = 0; - private java.lang.Object value_; - public enum ValueCase - implements com.google.protobuf.Internal.EnumLite { - ARTIFACT(1), - RESERVATION_STATUS(2), - VALUE_NOT_SET(0); - private final int value; - private ValueCase(int value) { - this.value = value; - } - /** - * @deprecated Use {@link #forNumber(int)} instead. - */ - @java.lang.Deprecated - public static ValueCase valueOf(int value) { - return forNumber(value); - } + public static final int RESERVATION_ID_FIELD_NUMBER = 1; + private datacatalog.Datacatalog.ReservationID reservationId_; + /** + * .datacatalog.ReservationID reservation_id = 1; + */ + public boolean hasReservationId() { + return reservationId_ != null; + } + /** + * .datacatalog.ReservationID reservation_id = 1; + */ + public datacatalog.Datacatalog.ReservationID getReservationId() { + return reservationId_ == null ? datacatalog.Datacatalog.ReservationID.getDefaultInstance() : reservationId_; + } + /** + * .datacatalog.ReservationID reservation_id = 1; + */ + public datacatalog.Datacatalog.ReservationIDOrBuilder getReservationIdOrBuilder() { + return getReservationId(); + } - public static ValueCase forNumber(int value) { - switch (value) { - case 1: return ARTIFACT; - case 2: return RESERVATION_STATUS; - case 0: return VALUE_NOT_SET; - default: return null; - } + public static final int OWNER_ID_FIELD_NUMBER = 2; + private volatile java.lang.Object ownerId_; + /** + * string owner_id = 2; + */ + public java.lang.String getOwnerId() { + java.lang.Object ref = ownerId_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + ownerId_ = s; + return s; } - public int getNumber() { - return this.value; + } + /** + * string owner_id = 2; + */ + public com.google.protobuf.ByteString + getOwnerIdBytes() { + java.lang.Object ref = ownerId_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + ownerId_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; } - }; + } - public ValueCase - getValueCase() { - return ValueCase.forNumber( - valueCase_); + public static final int HEARTBEAT_INTERVAL_FIELD_NUMBER = 3; + private com.google.protobuf.Duration heartbeatInterval_; + /** + *
+     * Recommended heartbeat interval to extend reservation
+     * 
+ * + * .google.protobuf.Duration heartbeat_interval = 3; + */ + public boolean hasHeartbeatInterval() { + return heartbeatInterval_ != null; + } + /** + *
+     * Recommended heartbeat interval to extend reservation
+     * 
+ * + * .google.protobuf.Duration heartbeat_interval = 3; + */ + public com.google.protobuf.Duration getHeartbeatInterval() { + return heartbeatInterval_ == null ? com.google.protobuf.Duration.getDefaultInstance() : heartbeatInterval_; + } + /** + *
+     * Recommended heartbeat interval to extend reservation
+     * 
+ * + * .google.protobuf.Duration heartbeat_interval = 3; + */ + public com.google.protobuf.DurationOrBuilder getHeartbeatIntervalOrBuilder() { + return getHeartbeatInterval(); } - public static final int ARTIFACT_FIELD_NUMBER = 1; + public static final int EXPIRES_AT_FIELD_NUMBER = 4; + private com.google.protobuf.Timestamp expiresAt_; /** - * .datacatalog.Artifact artifact = 1; + *
+     * Expiration timestamp of this reservation
+     * 
+ * + * .google.protobuf.Timestamp expires_at = 4; */ - public boolean hasArtifact() { - return valueCase_ == 1; + public boolean hasExpiresAt() { + return expiresAt_ != null; } /** - * .datacatalog.Artifact artifact = 1; + *
+     * Expiration timestamp of this reservation
+     * 
+ * + * .google.protobuf.Timestamp expires_at = 4; */ - public datacatalog.Datacatalog.Artifact getArtifact() { - if (valueCase_ == 1) { - return (datacatalog.Datacatalog.Artifact) value_; - } - return datacatalog.Datacatalog.Artifact.getDefaultInstance(); + public com.google.protobuf.Timestamp getExpiresAt() { + return expiresAt_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : expiresAt_; } /** - * .datacatalog.Artifact artifact = 1; + *
+     * Expiration timestamp of this reservation
+     * 
+ * + * .google.protobuf.Timestamp expires_at = 4; */ - public datacatalog.Datacatalog.ArtifactOrBuilder getArtifactOrBuilder() { - if (valueCase_ == 1) { - return (datacatalog.Datacatalog.Artifact) value_; - } - return datacatalog.Datacatalog.Artifact.getDefaultInstance(); + public com.google.protobuf.TimestampOrBuilder getExpiresAtOrBuilder() { + return getExpiresAt(); } - public static final int RESERVATION_STATUS_FIELD_NUMBER = 2; + public static final int METADATA_FIELD_NUMBER = 6; + private datacatalog.Datacatalog.Metadata metadata_; /** - * .datacatalog.ReservationStatus reservation_status = 2; + * .datacatalog.Metadata metadata = 6; */ - public boolean hasReservationStatus() { - return valueCase_ == 2; + public boolean hasMetadata() { + return metadata_ != null; } /** - * .datacatalog.ReservationStatus reservation_status = 2; + * .datacatalog.Metadata metadata = 6; */ - public datacatalog.Datacatalog.ReservationStatus getReservationStatus() { - if (valueCase_ == 2) { - return (datacatalog.Datacatalog.ReservationStatus) value_; - } - return datacatalog.Datacatalog.ReservationStatus.getDefaultInstance(); + public datacatalog.Datacatalog.Metadata getMetadata() { + return metadata_ == null ? datacatalog.Datacatalog.Metadata.getDefaultInstance() : metadata_; } /** - * .datacatalog.ReservationStatus reservation_status = 2; + * .datacatalog.Metadata metadata = 6; */ - public datacatalog.Datacatalog.ReservationStatusOrBuilder getReservationStatusOrBuilder() { - if (valueCase_ == 2) { - return (datacatalog.Datacatalog.ReservationStatus) value_; - } - return datacatalog.Datacatalog.ReservationStatus.getDefaultInstance(); + public datacatalog.Datacatalog.MetadataOrBuilder getMetadataOrBuilder() { + return getMetadata(); } private byte memoizedIsInitialized = -1; @@ -12325,11 +12375,20 @@ public final boolean isInitialized() { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (valueCase_ == 1) { - output.writeMessage(1, (datacatalog.Datacatalog.Artifact) value_); + if (reservationId_ != null) { + output.writeMessage(1, getReservationId()); + } + if (!getOwnerIdBytes().isEmpty()) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 2, ownerId_); + } + if (heartbeatInterval_ != null) { + output.writeMessage(3, getHeartbeatInterval()); } - if (valueCase_ == 2) { - output.writeMessage(2, (datacatalog.Datacatalog.ReservationStatus) value_); + if (expiresAt_ != null) { + output.writeMessage(4, getExpiresAt()); + } + if (metadata_ != null) { + output.writeMessage(6, getMetadata()); } unknownFields.writeTo(output); } @@ -12340,13 +12399,24 @@ public int getSerializedSize() { if (size != -1) return size; size = 0; - if (valueCase_ == 1) { + if (reservationId_ != null) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(1, getReservationId()); + } + if (!getOwnerIdBytes().isEmpty()) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, ownerId_); + } + if (heartbeatInterval_ != null) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(3, getHeartbeatInterval()); + } + if (expiresAt_ != null) { size += com.google.protobuf.CodedOutputStream - .computeMessageSize(1, (datacatalog.Datacatalog.Artifact) value_); + .computeMessageSize(4, getExpiresAt()); } - if (valueCase_ == 2) { + if (metadata_ != null) { size += com.google.protobuf.CodedOutputStream - .computeMessageSize(2, (datacatalog.Datacatalog.ReservationStatus) value_); + .computeMessageSize(6, getMetadata()); } size += unknownFields.getSerializedSize(); memoizedSize = size; @@ -12358,23 +12428,32 @@ public boolean equals(final java.lang.Object obj) { if (obj == this) { return true; } - if (!(obj instanceof datacatalog.Datacatalog.GetOrReserveArtifactResponse)) { + if (!(obj instanceof datacatalog.Datacatalog.Reservation)) { return super.equals(obj); } - datacatalog.Datacatalog.GetOrReserveArtifactResponse other = (datacatalog.Datacatalog.GetOrReserveArtifactResponse) obj; + datacatalog.Datacatalog.Reservation other = (datacatalog.Datacatalog.Reservation) obj; - if (!getValueCase().equals(other.getValueCase())) return false; - switch (valueCase_) { - case 1: - if (!getArtifact() - .equals(other.getArtifact())) return false; - break; - case 2: - if (!getReservationStatus() - .equals(other.getReservationStatus())) return false; - break; - case 0: - default: + if (hasReservationId() != other.hasReservationId()) return false; + if (hasReservationId()) { + if (!getReservationId() + .equals(other.getReservationId())) return false; + } + if (!getOwnerId() + .equals(other.getOwnerId())) return false; + if (hasHeartbeatInterval() != other.hasHeartbeatInterval()) return false; + if (hasHeartbeatInterval()) { + if (!getHeartbeatInterval() + .equals(other.getHeartbeatInterval())) return false; + } + if (hasExpiresAt() != other.hasExpiresAt()) return false; + if (hasExpiresAt()) { + if (!getExpiresAt() + .equals(other.getExpiresAt())) return false; + } + if (hasMetadata() != other.hasMetadata()) return false; + if (hasMetadata()) { + if (!getMetadata() + .equals(other.getMetadata())) return false; } if (!unknownFields.equals(other.unknownFields)) return false; return true; @@ -12387,86 +12466,92 @@ public int hashCode() { } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); - switch (valueCase_) { - case 1: - hash = (37 * hash) + ARTIFACT_FIELD_NUMBER; - hash = (53 * hash) + getArtifact().hashCode(); - break; - case 2: - hash = (37 * hash) + RESERVATION_STATUS_FIELD_NUMBER; - hash = (53 * hash) + getReservationStatus().hashCode(); - break; - case 0: - default: + if (hasReservationId()) { + hash = (37 * hash) + RESERVATION_ID_FIELD_NUMBER; + hash = (53 * hash) + getReservationId().hashCode(); + } + hash = (37 * hash) + OWNER_ID_FIELD_NUMBER; + hash = (53 * hash) + getOwnerId().hashCode(); + if (hasHeartbeatInterval()) { + hash = (37 * hash) + HEARTBEAT_INTERVAL_FIELD_NUMBER; + hash = (53 * hash) + getHeartbeatInterval().hashCode(); + } + if (hasExpiresAt()) { + hash = (37 * hash) + EXPIRES_AT_FIELD_NUMBER; + hash = (53 * hash) + getExpiresAt().hashCode(); + } + if (hasMetadata()) { + hash = (37 * hash) + METADATA_FIELD_NUMBER; + hash = (53 * hash) + getMetadata().hashCode(); } hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; } - public static datacatalog.Datacatalog.GetOrReserveArtifactResponse parseFrom( + public static datacatalog.Datacatalog.Reservation parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static datacatalog.Datacatalog.GetOrReserveArtifactResponse parseFrom( + public static datacatalog.Datacatalog.Reservation parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static datacatalog.Datacatalog.GetOrReserveArtifactResponse parseFrom( + public static datacatalog.Datacatalog.Reservation parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static datacatalog.Datacatalog.GetOrReserveArtifactResponse parseFrom( + public static datacatalog.Datacatalog.Reservation parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static datacatalog.Datacatalog.GetOrReserveArtifactResponse parseFrom(byte[] data) + public static datacatalog.Datacatalog.Reservation parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static datacatalog.Datacatalog.GetOrReserveArtifactResponse parseFrom( + public static datacatalog.Datacatalog.Reservation parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static datacatalog.Datacatalog.GetOrReserveArtifactResponse parseFrom(java.io.InputStream input) + public static datacatalog.Datacatalog.Reservation parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static datacatalog.Datacatalog.GetOrReserveArtifactResponse parseFrom( + public static datacatalog.Datacatalog.Reservation 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 datacatalog.Datacatalog.GetOrReserveArtifactResponse parseDelimitedFrom(java.io.InputStream input) + public static datacatalog.Datacatalog.Reservation parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input); } - public static datacatalog.Datacatalog.GetOrReserveArtifactResponse parseDelimitedFrom( + public static datacatalog.Datacatalog.Reservation 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 datacatalog.Datacatalog.GetOrReserveArtifactResponse parseFrom( + public static datacatalog.Datacatalog.Reservation parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static datacatalog.Datacatalog.GetOrReserveArtifactResponse parseFrom( + public static datacatalog.Datacatalog.Reservation parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { @@ -12479,7 +12564,7 @@ public static datacatalog.Datacatalog.GetOrReserveArtifactResponse parseFrom( public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } - public static Builder newBuilder(datacatalog.Datacatalog.GetOrReserveArtifactResponse prototype) { + public static Builder newBuilder(datacatalog.Datacatalog.Reservation prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override @@ -12496,29 +12581,29 @@ protected Builder newBuilderForType( } /** *
-     * Response to get artifact or reserve spot.
+     * A reservation including owner, heartbeat interval, expiration timestamp, and various metadata.
      * 
* - * Protobuf type {@code datacatalog.GetOrReserveArtifactResponse} + * Protobuf type {@code datacatalog.Reservation} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder implements - // @@protoc_insertion_point(builder_implements:datacatalog.GetOrReserveArtifactResponse) - datacatalog.Datacatalog.GetOrReserveArtifactResponseOrBuilder { + // @@protoc_insertion_point(builder_implements:datacatalog.Reservation) + datacatalog.Datacatalog.ReservationOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return datacatalog.Datacatalog.internal_static_datacatalog_GetOrReserveArtifactResponse_descriptor; + return datacatalog.Datacatalog.internal_static_datacatalog_Reservation_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return datacatalog.Datacatalog.internal_static_datacatalog_GetOrReserveArtifactResponse_fieldAccessorTable + return datacatalog.Datacatalog.internal_static_datacatalog_Reservation_fieldAccessorTable .ensureFieldAccessorsInitialized( - datacatalog.Datacatalog.GetOrReserveArtifactResponse.class, datacatalog.Datacatalog.GetOrReserveArtifactResponse.Builder.class); + datacatalog.Datacatalog.Reservation.class, datacatalog.Datacatalog.Reservation.Builder.class); } - // Construct using datacatalog.Datacatalog.GetOrReserveArtifactResponse.newBuilder() + // Construct using datacatalog.Datacatalog.Reservation.newBuilder() private Builder() { maybeForceBuilderInitialization(); } @@ -12536,25 +12621,49 @@ private void maybeForceBuilderInitialization() { @java.lang.Override public Builder clear() { super.clear(); - valueCase_ = 0; - value_ = null; + if (reservationIdBuilder_ == null) { + reservationId_ = null; + } else { + reservationId_ = null; + reservationIdBuilder_ = null; + } + ownerId_ = ""; + + if (heartbeatIntervalBuilder_ == null) { + heartbeatInterval_ = null; + } else { + heartbeatInterval_ = null; + heartbeatIntervalBuilder_ = null; + } + if (expiresAtBuilder_ == null) { + expiresAt_ = null; + } else { + expiresAt_ = null; + expiresAtBuilder_ = null; + } + if (metadataBuilder_ == null) { + metadata_ = null; + } else { + metadata_ = null; + metadataBuilder_ = null; + } return this; } @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { - return datacatalog.Datacatalog.internal_static_datacatalog_GetOrReserveArtifactResponse_descriptor; + return datacatalog.Datacatalog.internal_static_datacatalog_Reservation_descriptor; } @java.lang.Override - public datacatalog.Datacatalog.GetOrReserveArtifactResponse getDefaultInstanceForType() { - return datacatalog.Datacatalog.GetOrReserveArtifactResponse.getDefaultInstance(); + public datacatalog.Datacatalog.Reservation getDefaultInstanceForType() { + return datacatalog.Datacatalog.Reservation.getDefaultInstance(); } @java.lang.Override - public datacatalog.Datacatalog.GetOrReserveArtifactResponse build() { - datacatalog.Datacatalog.GetOrReserveArtifactResponse result = buildPartial(); + public datacatalog.Datacatalog.Reservation build() { + datacatalog.Datacatalog.Reservation result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } @@ -12562,23 +12671,29 @@ public datacatalog.Datacatalog.GetOrReserveArtifactResponse build() { } @java.lang.Override - public datacatalog.Datacatalog.GetOrReserveArtifactResponse buildPartial() { - datacatalog.Datacatalog.GetOrReserveArtifactResponse result = new datacatalog.Datacatalog.GetOrReserveArtifactResponse(this); - if (valueCase_ == 1) { - if (artifactBuilder_ == null) { - result.value_ = value_; - } else { - result.value_ = artifactBuilder_.build(); - } + public datacatalog.Datacatalog.Reservation buildPartial() { + datacatalog.Datacatalog.Reservation result = new datacatalog.Datacatalog.Reservation(this); + if (reservationIdBuilder_ == null) { + result.reservationId_ = reservationId_; + } else { + result.reservationId_ = reservationIdBuilder_.build(); } - if (valueCase_ == 2) { - if (reservationStatusBuilder_ == null) { - result.value_ = value_; - } else { - result.value_ = reservationStatusBuilder_.build(); - } + result.ownerId_ = ownerId_; + if (heartbeatIntervalBuilder_ == null) { + result.heartbeatInterval_ = heartbeatInterval_; + } else { + result.heartbeatInterval_ = heartbeatIntervalBuilder_.build(); + } + if (expiresAtBuilder_ == null) { + result.expiresAt_ = expiresAt_; + } else { + result.expiresAt_ = expiresAtBuilder_.build(); + } + if (metadataBuilder_ == null) { + result.metadata_ = metadata_; + } else { + result.metadata_ = metadataBuilder_.build(); } - result.valueCase_ = valueCase_; onBuilt(); return result; } @@ -12617,37 +12732,40 @@ public Builder addRepeatedField( } @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof datacatalog.Datacatalog.GetOrReserveArtifactResponse) { - return mergeFrom((datacatalog.Datacatalog.GetOrReserveArtifactResponse)other); + if (other instanceof datacatalog.Datacatalog.Reservation) { + return mergeFrom((datacatalog.Datacatalog.Reservation)other); } else { super.mergeFrom(other); return this; } } - public Builder mergeFrom(datacatalog.Datacatalog.GetOrReserveArtifactResponse other) { - if (other == datacatalog.Datacatalog.GetOrReserveArtifactResponse.getDefaultInstance()) return this; - switch (other.getValueCase()) { - case ARTIFACT: { - mergeArtifact(other.getArtifact()); - break; - } - case RESERVATION_STATUS: { - mergeReservationStatus(other.getReservationStatus()); - break; - } - case VALUE_NOT_SET: { - break; - } + public Builder mergeFrom(datacatalog.Datacatalog.Reservation other) { + if (other == datacatalog.Datacatalog.Reservation.getDefaultInstance()) return this; + if (other.hasReservationId()) { + mergeReservationId(other.getReservationId()); } - this.mergeUnknownFields(other.unknownFields); - onChanged(); - return this; - } - - @java.lang.Override - public final boolean isInitialized() { - return true; + if (!other.getOwnerId().isEmpty()) { + ownerId_ = other.ownerId_; + onChanged(); + } + if (other.hasHeartbeatInterval()) { + mergeHeartbeatInterval(other.getHeartbeatInterval()); + } + if (other.hasExpiresAt()) { + mergeExpiresAt(other.getExpiresAt()); + } + if (other.hasMetadata()) { + mergeMetadata(other.getMetadata()); + } + this.mergeUnknownFields(other.unknownFields); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; } @java.lang.Override @@ -12655,11 +12773,11 @@ public Builder mergeFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - datacatalog.Datacatalog.GetOrReserveArtifactResponse parsedMessage = null; + datacatalog.Datacatalog.Reservation parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { - parsedMessage = (datacatalog.Datacatalog.GetOrReserveArtifactResponse) e.getUnfinishedMessage(); + parsedMessage = (datacatalog.Datacatalog.Reservation) e.getUnfinishedMessage(); throw e.unwrapIOException(); } finally { if (parsedMessage != null) { @@ -12668,1180 +12786,614 @@ public Builder mergeFrom( } return this; } - private int valueCase_ = 0; - private java.lang.Object value_; - public ValueCase - getValueCase() { - return ValueCase.forNumber( - valueCase_); - } - - public Builder clearValue() { - valueCase_ = 0; - value_ = null; - onChanged(); - return this; - } - + private datacatalog.Datacatalog.ReservationID reservationId_; private com.google.protobuf.SingleFieldBuilderV3< - datacatalog.Datacatalog.Artifact, datacatalog.Datacatalog.Artifact.Builder, datacatalog.Datacatalog.ArtifactOrBuilder> artifactBuilder_; + datacatalog.Datacatalog.ReservationID, datacatalog.Datacatalog.ReservationID.Builder, datacatalog.Datacatalog.ReservationIDOrBuilder> reservationIdBuilder_; /** - * .datacatalog.Artifact artifact = 1; + * .datacatalog.ReservationID reservation_id = 1; */ - public boolean hasArtifact() { - return valueCase_ == 1; + public boolean hasReservationId() { + return reservationIdBuilder_ != null || reservationId_ != null; } /** - * .datacatalog.Artifact artifact = 1; + * .datacatalog.ReservationID reservation_id = 1; */ - public datacatalog.Datacatalog.Artifact getArtifact() { - if (artifactBuilder_ == null) { - if (valueCase_ == 1) { - return (datacatalog.Datacatalog.Artifact) value_; - } - return datacatalog.Datacatalog.Artifact.getDefaultInstance(); + public datacatalog.Datacatalog.ReservationID getReservationId() { + if (reservationIdBuilder_ == null) { + return reservationId_ == null ? datacatalog.Datacatalog.ReservationID.getDefaultInstance() : reservationId_; } else { - if (valueCase_ == 1) { - return artifactBuilder_.getMessage(); - } - return datacatalog.Datacatalog.Artifact.getDefaultInstance(); + return reservationIdBuilder_.getMessage(); } } /** - * .datacatalog.Artifact artifact = 1; + * .datacatalog.ReservationID reservation_id = 1; */ - public Builder setArtifact(datacatalog.Datacatalog.Artifact value) { - if (artifactBuilder_ == null) { + public Builder setReservationId(datacatalog.Datacatalog.ReservationID value) { + if (reservationIdBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - value_ = value; + reservationId_ = value; onChanged(); } else { - artifactBuilder_.setMessage(value); + reservationIdBuilder_.setMessage(value); } - valueCase_ = 1; + return this; } /** - * .datacatalog.Artifact artifact = 1; + * .datacatalog.ReservationID reservation_id = 1; */ - public Builder setArtifact( - datacatalog.Datacatalog.Artifact.Builder builderForValue) { - if (artifactBuilder_ == null) { - value_ = builderForValue.build(); + public Builder setReservationId( + datacatalog.Datacatalog.ReservationID.Builder builderForValue) { + if (reservationIdBuilder_ == null) { + reservationId_ = builderForValue.build(); onChanged(); } else { - artifactBuilder_.setMessage(builderForValue.build()); + reservationIdBuilder_.setMessage(builderForValue.build()); } - valueCase_ = 1; + return this; } /** - * .datacatalog.Artifact artifact = 1; + * .datacatalog.ReservationID reservation_id = 1; */ - public Builder mergeArtifact(datacatalog.Datacatalog.Artifact value) { - if (artifactBuilder_ == null) { - if (valueCase_ == 1 && - value_ != datacatalog.Datacatalog.Artifact.getDefaultInstance()) { - value_ = datacatalog.Datacatalog.Artifact.newBuilder((datacatalog.Datacatalog.Artifact) value_) - .mergeFrom(value).buildPartial(); + public Builder mergeReservationId(datacatalog.Datacatalog.ReservationID value) { + if (reservationIdBuilder_ == null) { + if (reservationId_ != null) { + reservationId_ = + datacatalog.Datacatalog.ReservationID.newBuilder(reservationId_).mergeFrom(value).buildPartial(); } else { - value_ = value; + reservationId_ = value; } onChanged(); } else { - if (valueCase_ == 1) { - artifactBuilder_.mergeFrom(value); - } - artifactBuilder_.setMessage(value); + reservationIdBuilder_.mergeFrom(value); } - valueCase_ = 1; + return this; } /** - * .datacatalog.Artifact artifact = 1; + * .datacatalog.ReservationID reservation_id = 1; */ - public Builder clearArtifact() { - if (artifactBuilder_ == null) { - if (valueCase_ == 1) { - valueCase_ = 0; - value_ = null; - onChanged(); - } + public Builder clearReservationId() { + if (reservationIdBuilder_ == null) { + reservationId_ = null; + onChanged(); } else { - if (valueCase_ == 1) { - valueCase_ = 0; - value_ = null; - } - artifactBuilder_.clear(); + reservationId_ = null; + reservationIdBuilder_ = null; } + return this; } /** - * .datacatalog.Artifact artifact = 1; + * .datacatalog.ReservationID reservation_id = 1; */ - public datacatalog.Datacatalog.Artifact.Builder getArtifactBuilder() { - return getArtifactFieldBuilder().getBuilder(); + public datacatalog.Datacatalog.ReservationID.Builder getReservationIdBuilder() { + + onChanged(); + return getReservationIdFieldBuilder().getBuilder(); } /** - * .datacatalog.Artifact artifact = 1; + * .datacatalog.ReservationID reservation_id = 1; */ - public datacatalog.Datacatalog.ArtifactOrBuilder getArtifactOrBuilder() { - if ((valueCase_ == 1) && (artifactBuilder_ != null)) { - return artifactBuilder_.getMessageOrBuilder(); + public datacatalog.Datacatalog.ReservationIDOrBuilder getReservationIdOrBuilder() { + if (reservationIdBuilder_ != null) { + return reservationIdBuilder_.getMessageOrBuilder(); } else { - if (valueCase_ == 1) { - return (datacatalog.Datacatalog.Artifact) value_; - } - return datacatalog.Datacatalog.Artifact.getDefaultInstance(); + return reservationId_ == null ? + datacatalog.Datacatalog.ReservationID.getDefaultInstance() : reservationId_; } } /** - * .datacatalog.Artifact artifact = 1; + * .datacatalog.ReservationID reservation_id = 1; */ private com.google.protobuf.SingleFieldBuilderV3< - datacatalog.Datacatalog.Artifact, datacatalog.Datacatalog.Artifact.Builder, datacatalog.Datacatalog.ArtifactOrBuilder> - getArtifactFieldBuilder() { - if (artifactBuilder_ == null) { - if (!(valueCase_ == 1)) { - value_ = datacatalog.Datacatalog.Artifact.getDefaultInstance(); - } - artifactBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< - datacatalog.Datacatalog.Artifact, datacatalog.Datacatalog.Artifact.Builder, datacatalog.Datacatalog.ArtifactOrBuilder>( - (datacatalog.Datacatalog.Artifact) value_, + datacatalog.Datacatalog.ReservationID, datacatalog.Datacatalog.ReservationID.Builder, datacatalog.Datacatalog.ReservationIDOrBuilder> + getReservationIdFieldBuilder() { + if (reservationIdBuilder_ == null) { + reservationIdBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + datacatalog.Datacatalog.ReservationID, datacatalog.Datacatalog.ReservationID.Builder, datacatalog.Datacatalog.ReservationIDOrBuilder>( + getReservationId(), getParentForChildren(), isClean()); - value_ = null; + reservationId_ = null; } - valueCase_ = 1; - onChanged();; - return artifactBuilder_; + return reservationIdBuilder_; + } + + private java.lang.Object ownerId_ = ""; + /** + * string owner_id = 2; + */ + public java.lang.String getOwnerId() { + java.lang.Object ref = ownerId_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + ownerId_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * string owner_id = 2; + */ + public com.google.protobuf.ByteString + getOwnerIdBytes() { + java.lang.Object ref = ownerId_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + ownerId_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + * string owner_id = 2; + */ + public Builder setOwnerId( + java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + + ownerId_ = value; + onChanged(); + return this; + } + /** + * string owner_id = 2; + */ + public Builder clearOwnerId() { + + ownerId_ = getDefaultInstance().getOwnerId(); + onChanged(); + return this; + } + /** + * string owner_id = 2; + */ + public Builder setOwnerIdBytes( + com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + + ownerId_ = value; + onChanged(); + return this; } + private com.google.protobuf.Duration heartbeatInterval_; private com.google.protobuf.SingleFieldBuilderV3< - datacatalog.Datacatalog.ReservationStatus, datacatalog.Datacatalog.ReservationStatus.Builder, datacatalog.Datacatalog.ReservationStatusOrBuilder> reservationStatusBuilder_; + com.google.protobuf.Duration, com.google.protobuf.Duration.Builder, com.google.protobuf.DurationOrBuilder> heartbeatIntervalBuilder_; /** - * .datacatalog.ReservationStatus reservation_status = 2; + *
+       * Recommended heartbeat interval to extend reservation
+       * 
+ * + * .google.protobuf.Duration heartbeat_interval = 3; */ - public boolean hasReservationStatus() { - return valueCase_ == 2; + public boolean hasHeartbeatInterval() { + return heartbeatIntervalBuilder_ != null || heartbeatInterval_ != null; } /** - * .datacatalog.ReservationStatus reservation_status = 2; + *
+       * Recommended heartbeat interval to extend reservation
+       * 
+ * + * .google.protobuf.Duration heartbeat_interval = 3; */ - public datacatalog.Datacatalog.ReservationStatus getReservationStatus() { - if (reservationStatusBuilder_ == null) { - if (valueCase_ == 2) { - return (datacatalog.Datacatalog.ReservationStatus) value_; - } - return datacatalog.Datacatalog.ReservationStatus.getDefaultInstance(); + public com.google.protobuf.Duration getHeartbeatInterval() { + if (heartbeatIntervalBuilder_ == null) { + return heartbeatInterval_ == null ? com.google.protobuf.Duration.getDefaultInstance() : heartbeatInterval_; } else { - if (valueCase_ == 2) { - return reservationStatusBuilder_.getMessage(); - } - return datacatalog.Datacatalog.ReservationStatus.getDefaultInstance(); + return heartbeatIntervalBuilder_.getMessage(); } } /** - * .datacatalog.ReservationStatus reservation_status = 2; + *
+       * Recommended heartbeat interval to extend reservation
+       * 
+ * + * .google.protobuf.Duration heartbeat_interval = 3; */ - public Builder setReservationStatus(datacatalog.Datacatalog.ReservationStatus value) { - if (reservationStatusBuilder_ == null) { + public Builder setHeartbeatInterval(com.google.protobuf.Duration value) { + if (heartbeatIntervalBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - value_ = value; + heartbeatInterval_ = value; onChanged(); } else { - reservationStatusBuilder_.setMessage(value); + heartbeatIntervalBuilder_.setMessage(value); } - valueCase_ = 2; + return this; } /** - * .datacatalog.ReservationStatus reservation_status = 2; + *
+       * Recommended heartbeat interval to extend reservation
+       * 
+ * + * .google.protobuf.Duration heartbeat_interval = 3; */ - public Builder setReservationStatus( - datacatalog.Datacatalog.ReservationStatus.Builder builderForValue) { - if (reservationStatusBuilder_ == null) { - value_ = builderForValue.build(); + public Builder setHeartbeatInterval( + com.google.protobuf.Duration.Builder builderForValue) { + if (heartbeatIntervalBuilder_ == null) { + heartbeatInterval_ = builderForValue.build(); onChanged(); } else { - reservationStatusBuilder_.setMessage(builderForValue.build()); + heartbeatIntervalBuilder_.setMessage(builderForValue.build()); } - valueCase_ = 2; + return this; } /** - * .datacatalog.ReservationStatus reservation_status = 2; + *
+       * Recommended heartbeat interval to extend reservation
+       * 
+ * + * .google.protobuf.Duration heartbeat_interval = 3; */ - public Builder mergeReservationStatus(datacatalog.Datacatalog.ReservationStatus value) { - if (reservationStatusBuilder_ == null) { - if (valueCase_ == 2 && - value_ != datacatalog.Datacatalog.ReservationStatus.getDefaultInstance()) { - value_ = datacatalog.Datacatalog.ReservationStatus.newBuilder((datacatalog.Datacatalog.ReservationStatus) value_) - .mergeFrom(value).buildPartial(); + public Builder mergeHeartbeatInterval(com.google.protobuf.Duration value) { + if (heartbeatIntervalBuilder_ == null) { + if (heartbeatInterval_ != null) { + heartbeatInterval_ = + com.google.protobuf.Duration.newBuilder(heartbeatInterval_).mergeFrom(value).buildPartial(); } else { - value_ = value; + heartbeatInterval_ = value; } onChanged(); } else { - if (valueCase_ == 2) { - reservationStatusBuilder_.mergeFrom(value); - } - reservationStatusBuilder_.setMessage(value); + heartbeatIntervalBuilder_.mergeFrom(value); } - valueCase_ = 2; + return this; } /** - * .datacatalog.ReservationStatus reservation_status = 2; + *
+       * Recommended heartbeat interval to extend reservation
+       * 
+ * + * .google.protobuf.Duration heartbeat_interval = 3; */ - public Builder clearReservationStatus() { - if (reservationStatusBuilder_ == null) { - if (valueCase_ == 2) { - valueCase_ = 0; - value_ = null; - onChanged(); - } + public Builder clearHeartbeatInterval() { + if (heartbeatIntervalBuilder_ == null) { + heartbeatInterval_ = null; + onChanged(); } else { - if (valueCase_ == 2) { - valueCase_ = 0; - value_ = null; - } - reservationStatusBuilder_.clear(); + heartbeatInterval_ = null; + heartbeatIntervalBuilder_ = null; } + return this; } /** - * .datacatalog.ReservationStatus reservation_status = 2; + *
+       * Recommended heartbeat interval to extend reservation
+       * 
+ * + * .google.protobuf.Duration heartbeat_interval = 3; */ - public datacatalog.Datacatalog.ReservationStatus.Builder getReservationStatusBuilder() { - return getReservationStatusFieldBuilder().getBuilder(); + public com.google.protobuf.Duration.Builder getHeartbeatIntervalBuilder() { + + onChanged(); + return getHeartbeatIntervalFieldBuilder().getBuilder(); } /** - * .datacatalog.ReservationStatus reservation_status = 2; + *
+       * Recommended heartbeat interval to extend reservation
+       * 
+ * + * .google.protobuf.Duration heartbeat_interval = 3; */ - public datacatalog.Datacatalog.ReservationStatusOrBuilder getReservationStatusOrBuilder() { - if ((valueCase_ == 2) && (reservationStatusBuilder_ != null)) { - return reservationStatusBuilder_.getMessageOrBuilder(); + public com.google.protobuf.DurationOrBuilder getHeartbeatIntervalOrBuilder() { + if (heartbeatIntervalBuilder_ != null) { + return heartbeatIntervalBuilder_.getMessageOrBuilder(); } else { - if (valueCase_ == 2) { - return (datacatalog.Datacatalog.ReservationStatus) value_; - } - return datacatalog.Datacatalog.ReservationStatus.getDefaultInstance(); + return heartbeatInterval_ == null ? + com.google.protobuf.Duration.getDefaultInstance() : heartbeatInterval_; } } /** - * .datacatalog.ReservationStatus reservation_status = 2; + *
+       * Recommended heartbeat interval to extend reservation
+       * 
+ * + * .google.protobuf.Duration heartbeat_interval = 3; */ private com.google.protobuf.SingleFieldBuilderV3< - datacatalog.Datacatalog.ReservationStatus, datacatalog.Datacatalog.ReservationStatus.Builder, datacatalog.Datacatalog.ReservationStatusOrBuilder> - getReservationStatusFieldBuilder() { - if (reservationStatusBuilder_ == null) { - if (!(valueCase_ == 2)) { - value_ = datacatalog.Datacatalog.ReservationStatus.getDefaultInstance(); - } - reservationStatusBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< - datacatalog.Datacatalog.ReservationStatus, datacatalog.Datacatalog.ReservationStatus.Builder, datacatalog.Datacatalog.ReservationStatusOrBuilder>( - (datacatalog.Datacatalog.ReservationStatus) value_, + com.google.protobuf.Duration, com.google.protobuf.Duration.Builder, com.google.protobuf.DurationOrBuilder> + getHeartbeatIntervalFieldBuilder() { + if (heartbeatIntervalBuilder_ == null) { + heartbeatIntervalBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + com.google.protobuf.Duration, com.google.protobuf.Duration.Builder, com.google.protobuf.DurationOrBuilder>( + getHeartbeatInterval(), getParentForChildren(), isClean()); - value_ = null; + heartbeatInterval_ = null; } - valueCase_ = 2; - onChanged();; - return reservationStatusBuilder_; - } - @java.lang.Override - public final Builder setUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.setUnknownFields(unknownFields); + return heartbeatIntervalBuilder_; } - @java.lang.Override - public final Builder mergeUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.mergeUnknownFields(unknownFields); + private com.google.protobuf.Timestamp expiresAt_; + private com.google.protobuf.SingleFieldBuilderV3< + com.google.protobuf.Timestamp, com.google.protobuf.Timestamp.Builder, com.google.protobuf.TimestampOrBuilder> expiresAtBuilder_; + /** + *
+       * Expiration timestamp of this reservation
+       * 
+ * + * .google.protobuf.Timestamp expires_at = 4; + */ + public boolean hasExpiresAt() { + return expiresAtBuilder_ != null || expiresAt_ != null; } - - - // @@protoc_insertion_point(builder_scope:datacatalog.GetOrReserveArtifactResponse) - } - - // @@protoc_insertion_point(class_scope:datacatalog.GetOrReserveArtifactResponse) - private static final datacatalog.Datacatalog.GetOrReserveArtifactResponse DEFAULT_INSTANCE; - static { - DEFAULT_INSTANCE = new datacatalog.Datacatalog.GetOrReserveArtifactResponse(); - } - - public static datacatalog.Datacatalog.GetOrReserveArtifactResponse getDefaultInstance() { - return DEFAULT_INSTANCE; - } - - private static final com.google.protobuf.Parser - PARSER = new com.google.protobuf.AbstractParser() { - @java.lang.Override - public GetOrReserveArtifactResponse parsePartialFrom( - com.google.protobuf.CodedInputStream input, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - return new GetOrReserveArtifactResponse(input, extensionRegistry); + /** + *
+       * Expiration timestamp of this reservation
+       * 
+ * + * .google.protobuf.Timestamp expires_at = 4; + */ + public com.google.protobuf.Timestamp getExpiresAt() { + if (expiresAtBuilder_ == null) { + return expiresAt_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : expiresAt_; + } else { + return expiresAtBuilder_.getMessage(); + } } - }; + /** + *
+       * Expiration timestamp of this reservation
+       * 
+ * + * .google.protobuf.Timestamp expires_at = 4; + */ + public Builder setExpiresAt(com.google.protobuf.Timestamp value) { + if (expiresAtBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + expiresAt_ = value; + onChanged(); + } else { + expiresAtBuilder_.setMessage(value); + } - public static com.google.protobuf.Parser parser() { - return PARSER; - } - - @java.lang.Override - public com.google.protobuf.Parser getParserForType() { - return PARSER; - } - - @java.lang.Override - public datacatalog.Datacatalog.GetOrReserveArtifactResponse getDefaultInstanceForType() { - return DEFAULT_INSTANCE; - } - - } - - public interface ExtendReservationRequestOrBuilder extends - // @@protoc_insertion_point(interface_extends:datacatalog.ExtendReservationRequest) - com.google.protobuf.MessageOrBuilder { - - /** - * .datacatalog.DatasetID dataset_id = 1; - */ - boolean hasDatasetId(); - /** - * .datacatalog.DatasetID dataset_id = 1; - */ - datacatalog.Datacatalog.DatasetID getDatasetId(); - /** - * .datacatalog.DatasetID dataset_id = 1; - */ - datacatalog.Datacatalog.DatasetIDOrBuilder getDatasetIdOrBuilder(); - - /** - * string tag_name = 2; - */ - java.lang.String getTagName(); - /** - * string tag_name = 2; - */ - com.google.protobuf.ByteString - getTagNameBytes(); - - /** - * string owner_id = 3; - */ - java.lang.String getOwnerId(); - /** - * string owner_id = 3; - */ - com.google.protobuf.ByteString - getOwnerIdBytes(); - } - /** - *
-   * Request to extend reservation
-   * 
- * - * Protobuf type {@code datacatalog.ExtendReservationRequest} - */ - public static final class ExtendReservationRequest extends - com.google.protobuf.GeneratedMessageV3 implements - // @@protoc_insertion_point(message_implements:datacatalog.ExtendReservationRequest) - ExtendReservationRequestOrBuilder { - private static final long serialVersionUID = 0L; - // Use ExtendReservationRequest.newBuilder() to construct. - private ExtendReservationRequest(com.google.protobuf.GeneratedMessageV3.Builder builder) { - super(builder); - } - private ExtendReservationRequest() { - tagName_ = ""; - ownerId_ = ""; - } - - @java.lang.Override - public final com.google.protobuf.UnknownFieldSet - getUnknownFields() { - return this.unknownFields; - } - private ExtendReservationRequest( - 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: { - datacatalog.Datacatalog.DatasetID.Builder subBuilder = null; - if (datasetId_ != null) { - subBuilder = datasetId_.toBuilder(); - } - datasetId_ = input.readMessage(datacatalog.Datacatalog.DatasetID.parser(), extensionRegistry); - if (subBuilder != null) { - subBuilder.mergeFrom(datasetId_); - datasetId_ = subBuilder.buildPartial(); - } - - break; - } - case 18: { - java.lang.String s = input.readStringRequireUtf8(); - - tagName_ = s; - break; - } - case 26: { - java.lang.String s = input.readStringRequireUtf8(); - - ownerId_ = s; - 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 datacatalog.Datacatalog.internal_static_datacatalog_ExtendReservationRequest_descriptor; - } - - @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable - internalGetFieldAccessorTable() { - return datacatalog.Datacatalog.internal_static_datacatalog_ExtendReservationRequest_fieldAccessorTable - .ensureFieldAccessorsInitialized( - datacatalog.Datacatalog.ExtendReservationRequest.class, datacatalog.Datacatalog.ExtendReservationRequest.Builder.class); - } - - public static final int DATASET_ID_FIELD_NUMBER = 1; - private datacatalog.Datacatalog.DatasetID datasetId_; - /** - * .datacatalog.DatasetID dataset_id = 1; - */ - public boolean hasDatasetId() { - return datasetId_ != null; - } - /** - * .datacatalog.DatasetID dataset_id = 1; - */ - public datacatalog.Datacatalog.DatasetID getDatasetId() { - return datasetId_ == null ? datacatalog.Datacatalog.DatasetID.getDefaultInstance() : datasetId_; - } - /** - * .datacatalog.DatasetID dataset_id = 1; - */ - public datacatalog.Datacatalog.DatasetIDOrBuilder getDatasetIdOrBuilder() { - return getDatasetId(); - } - - public static final int TAG_NAME_FIELD_NUMBER = 2; - private volatile java.lang.Object tagName_; - /** - * string tag_name = 2; - */ - public java.lang.String getTagName() { - java.lang.Object ref = tagName_; - if (ref instanceof java.lang.String) { - return (java.lang.String) ref; - } else { - com.google.protobuf.ByteString bs = - (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - tagName_ = s; - return s; - } - } - /** - * string tag_name = 2; - */ - public com.google.protobuf.ByteString - getTagNameBytes() { - java.lang.Object ref = tagName_; - if (ref instanceof java.lang.String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8( - (java.lang.String) ref); - tagName_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; - } - } - - public static final int OWNER_ID_FIELD_NUMBER = 3; - private volatile java.lang.Object ownerId_; - /** - * string owner_id = 3; - */ - public java.lang.String getOwnerId() { - java.lang.Object ref = ownerId_; - if (ref instanceof java.lang.String) { - return (java.lang.String) ref; - } else { - com.google.protobuf.ByteString bs = - (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - ownerId_ = s; - return s; - } - } - /** - * string owner_id = 3; - */ - public com.google.protobuf.ByteString - getOwnerIdBytes() { - java.lang.Object ref = ownerId_; - if (ref instanceof java.lang.String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8( - (java.lang.String) ref); - ownerId_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; - } - } - - 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 (datasetId_ != null) { - output.writeMessage(1, getDatasetId()); - } - if (!getTagNameBytes().isEmpty()) { - com.google.protobuf.GeneratedMessageV3.writeString(output, 2, tagName_); - } - if (!getOwnerIdBytes().isEmpty()) { - com.google.protobuf.GeneratedMessageV3.writeString(output, 3, ownerId_); - } - unknownFields.writeTo(output); - } - - @java.lang.Override - public int getSerializedSize() { - int size = memoizedSize; - if (size != -1) return size; - - size = 0; - if (datasetId_ != null) { - size += com.google.protobuf.CodedOutputStream - .computeMessageSize(1, getDatasetId()); - } - if (!getTagNameBytes().isEmpty()) { - size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, tagName_); - } - if (!getOwnerIdBytes().isEmpty()) { - size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, ownerId_); - } - 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 datacatalog.Datacatalog.ExtendReservationRequest)) { - return super.equals(obj); - } - datacatalog.Datacatalog.ExtendReservationRequest other = (datacatalog.Datacatalog.ExtendReservationRequest) obj; - - if (hasDatasetId() != other.hasDatasetId()) return false; - if (hasDatasetId()) { - if (!getDatasetId() - .equals(other.getDatasetId())) return false; - } - if (!getTagName() - .equals(other.getTagName())) return false; - if (!getOwnerId() - .equals(other.getOwnerId())) 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 (hasDatasetId()) { - hash = (37 * hash) + DATASET_ID_FIELD_NUMBER; - hash = (53 * hash) + getDatasetId().hashCode(); - } - hash = (37 * hash) + TAG_NAME_FIELD_NUMBER; - hash = (53 * hash) + getTagName().hashCode(); - hash = (37 * hash) + OWNER_ID_FIELD_NUMBER; - hash = (53 * hash) + getOwnerId().hashCode(); - hash = (29 * hash) + unknownFields.hashCode(); - memoizedHashCode = hash; - return hash; - } - - public static datacatalog.Datacatalog.ExtendReservationRequest parseFrom( - java.nio.ByteBuffer data) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data); - } - public static datacatalog.Datacatalog.ExtendReservationRequest parseFrom( - java.nio.ByteBuffer data, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data, extensionRegistry); - } - public static datacatalog.Datacatalog.ExtendReservationRequest parseFrom( - com.google.protobuf.ByteString data) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data); - } - public static datacatalog.Datacatalog.ExtendReservationRequest parseFrom( - com.google.protobuf.ByteString data, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data, extensionRegistry); - } - public static datacatalog.Datacatalog.ExtendReservationRequest parseFrom(byte[] data) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data); - } - public static datacatalog.Datacatalog.ExtendReservationRequest parseFrom( - byte[] data, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data, extensionRegistry); - } - public static datacatalog.Datacatalog.ExtendReservationRequest parseFrom(java.io.InputStream input) - throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 - .parseWithIOException(PARSER, input); - } - public static datacatalog.Datacatalog.ExtendReservationRequest 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 datacatalog.Datacatalog.ExtendReservationRequest parseDelimitedFrom(java.io.InputStream input) - throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 - .parseDelimitedWithIOException(PARSER, input); - } - public static datacatalog.Datacatalog.ExtendReservationRequest 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 datacatalog.Datacatalog.ExtendReservationRequest parseFrom( - com.google.protobuf.CodedInputStream input) - throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 - .parseWithIOException(PARSER, input); - } - public static datacatalog.Datacatalog.ExtendReservationRequest 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(datacatalog.Datacatalog.ExtendReservationRequest 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 extend reservation
-     * 
- * - * Protobuf type {@code datacatalog.ExtendReservationRequest} - */ - public static final class Builder extends - com.google.protobuf.GeneratedMessageV3.Builder implements - // @@protoc_insertion_point(builder_implements:datacatalog.ExtendReservationRequest) - datacatalog.Datacatalog.ExtendReservationRequestOrBuilder { - public static final com.google.protobuf.Descriptors.Descriptor - getDescriptor() { - return datacatalog.Datacatalog.internal_static_datacatalog_ExtendReservationRequest_descriptor; - } - - @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable - internalGetFieldAccessorTable() { - return datacatalog.Datacatalog.internal_static_datacatalog_ExtendReservationRequest_fieldAccessorTable - .ensureFieldAccessorsInitialized( - datacatalog.Datacatalog.ExtendReservationRequest.class, datacatalog.Datacatalog.ExtendReservationRequest.Builder.class); - } - - // Construct using datacatalog.Datacatalog.ExtendReservationRequest.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 (datasetIdBuilder_ == null) { - datasetId_ = null; - } else { - datasetId_ = null; - datasetIdBuilder_ = null; - } - tagName_ = ""; - - ownerId_ = ""; - - return this; - } - - @java.lang.Override - public com.google.protobuf.Descriptors.Descriptor - getDescriptorForType() { - return datacatalog.Datacatalog.internal_static_datacatalog_ExtendReservationRequest_descriptor; - } - - @java.lang.Override - public datacatalog.Datacatalog.ExtendReservationRequest getDefaultInstanceForType() { - return datacatalog.Datacatalog.ExtendReservationRequest.getDefaultInstance(); - } - - @java.lang.Override - public datacatalog.Datacatalog.ExtendReservationRequest build() { - datacatalog.Datacatalog.ExtendReservationRequest result = buildPartial(); - if (!result.isInitialized()) { - throw newUninitializedMessageException(result); - } - return result; - } - - @java.lang.Override - public datacatalog.Datacatalog.ExtendReservationRequest buildPartial() { - datacatalog.Datacatalog.ExtendReservationRequest result = new datacatalog.Datacatalog.ExtendReservationRequest(this); - if (datasetIdBuilder_ == null) { - result.datasetId_ = datasetId_; - } else { - result.datasetId_ = datasetIdBuilder_.build(); - } - result.tagName_ = tagName_; - result.ownerId_ = ownerId_; - 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 datacatalog.Datacatalog.ExtendReservationRequest) { - return mergeFrom((datacatalog.Datacatalog.ExtendReservationRequest)other); - } else { - super.mergeFrom(other); - return this; - } - } - - public Builder mergeFrom(datacatalog.Datacatalog.ExtendReservationRequest other) { - if (other == datacatalog.Datacatalog.ExtendReservationRequest.getDefaultInstance()) return this; - if (other.hasDatasetId()) { - mergeDatasetId(other.getDatasetId()); - } - if (!other.getTagName().isEmpty()) { - tagName_ = other.tagName_; - onChanged(); - } - if (!other.getOwnerId().isEmpty()) { - ownerId_ = other.ownerId_; - onChanged(); - } - 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 { - datacatalog.Datacatalog.ExtendReservationRequest parsedMessage = null; - try { - parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); - } catch (com.google.protobuf.InvalidProtocolBufferException e) { - parsedMessage = (datacatalog.Datacatalog.ExtendReservationRequest) e.getUnfinishedMessage(); - throw e.unwrapIOException(); - } finally { - if (parsedMessage != null) { - mergeFrom(parsedMessage); - } - } - return this; - } - - private datacatalog.Datacatalog.DatasetID datasetId_; - private com.google.protobuf.SingleFieldBuilderV3< - datacatalog.Datacatalog.DatasetID, datacatalog.Datacatalog.DatasetID.Builder, datacatalog.Datacatalog.DatasetIDOrBuilder> datasetIdBuilder_; - /** - * .datacatalog.DatasetID dataset_id = 1; - */ - public boolean hasDatasetId() { - return datasetIdBuilder_ != null || datasetId_ != null; - } - /** - * .datacatalog.DatasetID dataset_id = 1; - */ - public datacatalog.Datacatalog.DatasetID getDatasetId() { - if (datasetIdBuilder_ == null) { - return datasetId_ == null ? datacatalog.Datacatalog.DatasetID.getDefaultInstance() : datasetId_; - } else { - return datasetIdBuilder_.getMessage(); - } - } - /** - * .datacatalog.DatasetID dataset_id = 1; - */ - public Builder setDatasetId(datacatalog.Datacatalog.DatasetID value) { - if (datasetIdBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - datasetId_ = value; - onChanged(); - } else { - datasetIdBuilder_.setMessage(value); - } - - return this; - } - /** - * .datacatalog.DatasetID dataset_id = 1; - */ - public Builder setDatasetId( - datacatalog.Datacatalog.DatasetID.Builder builderForValue) { - if (datasetIdBuilder_ == null) { - datasetId_ = builderForValue.build(); - onChanged(); - } else { - datasetIdBuilder_.setMessage(builderForValue.build()); - } + return this; + } + /** + *
+       * Expiration timestamp of this reservation
+       * 
+ * + * .google.protobuf.Timestamp expires_at = 4; + */ + public Builder setExpiresAt( + com.google.protobuf.Timestamp.Builder builderForValue) { + if (expiresAtBuilder_ == null) { + expiresAt_ = builderForValue.build(); + onChanged(); + } else { + expiresAtBuilder_.setMessage(builderForValue.build()); + } return this; } /** - * .datacatalog.DatasetID dataset_id = 1; + *
+       * Expiration timestamp of this reservation
+       * 
+ * + * .google.protobuf.Timestamp expires_at = 4; */ - public Builder mergeDatasetId(datacatalog.Datacatalog.DatasetID value) { - if (datasetIdBuilder_ == null) { - if (datasetId_ != null) { - datasetId_ = - datacatalog.Datacatalog.DatasetID.newBuilder(datasetId_).mergeFrom(value).buildPartial(); + public Builder mergeExpiresAt(com.google.protobuf.Timestamp value) { + if (expiresAtBuilder_ == null) { + if (expiresAt_ != null) { + expiresAt_ = + com.google.protobuf.Timestamp.newBuilder(expiresAt_).mergeFrom(value).buildPartial(); } else { - datasetId_ = value; + expiresAt_ = value; } onChanged(); } else { - datasetIdBuilder_.mergeFrom(value); + expiresAtBuilder_.mergeFrom(value); } return this; } /** - * .datacatalog.DatasetID dataset_id = 1; + *
+       * Expiration timestamp of this reservation
+       * 
+ * + * .google.protobuf.Timestamp expires_at = 4; */ - public Builder clearDatasetId() { - if (datasetIdBuilder_ == null) { - datasetId_ = null; + public Builder clearExpiresAt() { + if (expiresAtBuilder_ == null) { + expiresAt_ = null; onChanged(); } else { - datasetId_ = null; - datasetIdBuilder_ = null; + expiresAt_ = null; + expiresAtBuilder_ = null; } return this; } /** - * .datacatalog.DatasetID dataset_id = 1; + *
+       * Expiration timestamp of this reservation
+       * 
+ * + * .google.protobuf.Timestamp expires_at = 4; */ - public datacatalog.Datacatalog.DatasetID.Builder getDatasetIdBuilder() { + public com.google.protobuf.Timestamp.Builder getExpiresAtBuilder() { onChanged(); - return getDatasetIdFieldBuilder().getBuilder(); + return getExpiresAtFieldBuilder().getBuilder(); } /** - * .datacatalog.DatasetID dataset_id = 1; + *
+       * Expiration timestamp of this reservation
+       * 
+ * + * .google.protobuf.Timestamp expires_at = 4; */ - public datacatalog.Datacatalog.DatasetIDOrBuilder getDatasetIdOrBuilder() { - if (datasetIdBuilder_ != null) { - return datasetIdBuilder_.getMessageOrBuilder(); + public com.google.protobuf.TimestampOrBuilder getExpiresAtOrBuilder() { + if (expiresAtBuilder_ != null) { + return expiresAtBuilder_.getMessageOrBuilder(); } else { - return datasetId_ == null ? - datacatalog.Datacatalog.DatasetID.getDefaultInstance() : datasetId_; + return expiresAt_ == null ? + com.google.protobuf.Timestamp.getDefaultInstance() : expiresAt_; } } /** - * .datacatalog.DatasetID dataset_id = 1; + *
+       * Expiration timestamp of this reservation
+       * 
+ * + * .google.protobuf.Timestamp expires_at = 4; */ private com.google.protobuf.SingleFieldBuilderV3< - datacatalog.Datacatalog.DatasetID, datacatalog.Datacatalog.DatasetID.Builder, datacatalog.Datacatalog.DatasetIDOrBuilder> - getDatasetIdFieldBuilder() { - if (datasetIdBuilder_ == null) { - datasetIdBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< - datacatalog.Datacatalog.DatasetID, datacatalog.Datacatalog.DatasetID.Builder, datacatalog.Datacatalog.DatasetIDOrBuilder>( - getDatasetId(), + com.google.protobuf.Timestamp, com.google.protobuf.Timestamp.Builder, com.google.protobuf.TimestampOrBuilder> + getExpiresAtFieldBuilder() { + if (expiresAtBuilder_ == null) { + expiresAtBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + com.google.protobuf.Timestamp, com.google.protobuf.Timestamp.Builder, com.google.protobuf.TimestampOrBuilder>( + getExpiresAt(), getParentForChildren(), isClean()); - datasetId_ = null; + expiresAt_ = null; } - return datasetIdBuilder_; + return expiresAtBuilder_; } - private java.lang.Object tagName_ = ""; - /** - * string tag_name = 2; - */ - public java.lang.String getTagName() { - java.lang.Object ref = tagName_; - if (!(ref instanceof java.lang.String)) { - com.google.protobuf.ByteString bs = - (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - tagName_ = s; - return s; - } else { - return (java.lang.String) ref; - } - } - /** - * string tag_name = 2; - */ - public com.google.protobuf.ByteString - getTagNameBytes() { - java.lang.Object ref = tagName_; - if (ref instanceof String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8( - (java.lang.String) ref); - tagName_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; - } - } + private datacatalog.Datacatalog.Metadata metadata_; + private com.google.protobuf.SingleFieldBuilderV3< + datacatalog.Datacatalog.Metadata, datacatalog.Datacatalog.Metadata.Builder, datacatalog.Datacatalog.MetadataOrBuilder> metadataBuilder_; /** - * string tag_name = 2; + * .datacatalog.Metadata metadata = 6; */ - public Builder setTagName( - java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - - tagName_ = value; - onChanged(); - return this; + public boolean hasMetadata() { + return metadataBuilder_ != null || metadata_ != null; } /** - * string tag_name = 2; + * .datacatalog.Metadata metadata = 6; */ - public Builder clearTagName() { - - tagName_ = getDefaultInstance().getTagName(); - onChanged(); - return this; + public datacatalog.Datacatalog.Metadata getMetadata() { + if (metadataBuilder_ == null) { + return metadata_ == null ? datacatalog.Datacatalog.Metadata.getDefaultInstance() : metadata_; + } else { + return metadataBuilder_.getMessage(); + } } /** - * string tag_name = 2; + * .datacatalog.Metadata metadata = 6; */ - public Builder setTagNameBytes( - com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); - } - checkByteStringIsUtf8(value); - - tagName_ = value; - onChanged(); + public Builder setMetadata(datacatalog.Datacatalog.Metadata value) { + if (metadataBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + metadata_ = value; + onChanged(); + } else { + metadataBuilder_.setMessage(value); + } + return this; } - - private java.lang.Object ownerId_ = ""; /** - * string owner_id = 3; + * .datacatalog.Metadata metadata = 6; */ - public java.lang.String getOwnerId() { - java.lang.Object ref = ownerId_; - if (!(ref instanceof java.lang.String)) { - com.google.protobuf.ByteString bs = - (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - ownerId_ = s; - return s; + public Builder setMetadata( + datacatalog.Datacatalog.Metadata.Builder builderForValue) { + if (metadataBuilder_ == null) { + metadata_ = builderForValue.build(); + onChanged(); } else { - return (java.lang.String) ref; + metadataBuilder_.setMessage(builderForValue.build()); } + + return this; } /** - * string owner_id = 3; + * .datacatalog.Metadata metadata = 6; */ - public com.google.protobuf.ByteString - getOwnerIdBytes() { - java.lang.Object ref = ownerId_; - if (ref instanceof String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8( - (java.lang.String) ref); - ownerId_ = b; - return b; + public Builder mergeMetadata(datacatalog.Datacatalog.Metadata value) { + if (metadataBuilder_ == null) { + if (metadata_ != null) { + metadata_ = + datacatalog.Datacatalog.Metadata.newBuilder(metadata_).mergeFrom(value).buildPartial(); + } else { + metadata_ = value; + } + onChanged(); } else { - return (com.google.protobuf.ByteString) ref; + metadataBuilder_.mergeFrom(value); } + + return this; } /** - * string owner_id = 3; + * .datacatalog.Metadata metadata = 6; */ - public Builder setOwnerId( - java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - - ownerId_ = value; - onChanged(); + public Builder clearMetadata() { + if (metadataBuilder_ == null) { + metadata_ = null; + onChanged(); + } else { + metadata_ = null; + metadataBuilder_ = null; + } + return this; } /** - * string owner_id = 3; + * .datacatalog.Metadata metadata = 6; */ - public Builder clearOwnerId() { + public datacatalog.Datacatalog.Metadata.Builder getMetadataBuilder() { - ownerId_ = getDefaultInstance().getOwnerId(); onChanged(); - return this; + return getMetadataFieldBuilder().getBuilder(); } /** - * string owner_id = 3; + * .datacatalog.Metadata metadata = 6; */ - public Builder setOwnerIdBytes( - com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); - } - checkByteStringIsUtf8(value); - - ownerId_ = value; - onChanged(); - return this; + public datacatalog.Datacatalog.MetadataOrBuilder getMetadataOrBuilder() { + if (metadataBuilder_ != null) { + return metadataBuilder_.getMessageOrBuilder(); + } else { + return metadata_ == null ? + datacatalog.Datacatalog.Metadata.getDefaultInstance() : metadata_; + } + } + /** + * .datacatalog.Metadata metadata = 6; + */ + private com.google.protobuf.SingleFieldBuilderV3< + datacatalog.Datacatalog.Metadata, datacatalog.Datacatalog.Metadata.Builder, datacatalog.Datacatalog.MetadataOrBuilder> + getMetadataFieldBuilder() { + if (metadataBuilder_ == null) { + metadataBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + datacatalog.Datacatalog.Metadata, datacatalog.Datacatalog.Metadata.Builder, datacatalog.Datacatalog.MetadataOrBuilder>( + getMetadata(), + getParentForChildren(), + isClean()); + metadata_ = null; + } + return metadataBuilder_; } @java.lang.Override public final Builder setUnknownFields( @@ -13856,67 +13408,80 @@ public final Builder mergeUnknownFields( } - // @@protoc_insertion_point(builder_scope:datacatalog.ExtendReservationRequest) + // @@protoc_insertion_point(builder_scope:datacatalog.Reservation) } - // @@protoc_insertion_point(class_scope:datacatalog.ExtendReservationRequest) - private static final datacatalog.Datacatalog.ExtendReservationRequest DEFAULT_INSTANCE; + // @@protoc_insertion_point(class_scope:datacatalog.Reservation) + private static final datacatalog.Datacatalog.Reservation DEFAULT_INSTANCE; static { - DEFAULT_INSTANCE = new datacatalog.Datacatalog.ExtendReservationRequest(); + DEFAULT_INSTANCE = new datacatalog.Datacatalog.Reservation(); } - public static datacatalog.Datacatalog.ExtendReservationRequest getDefaultInstance() { + public static datacatalog.Datacatalog.Reservation getDefaultInstance() { return DEFAULT_INSTANCE; } - private static final com.google.protobuf.Parser - PARSER = new com.google.protobuf.AbstractParser() { + private static final com.google.protobuf.Parser + PARSER = new com.google.protobuf.AbstractParser() { @java.lang.Override - public ExtendReservationRequest parsePartialFrom( + public Reservation parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { - return new ExtendReservationRequest(input, extensionRegistry); + return new Reservation(input, extensionRegistry); } }; - public static com.google.protobuf.Parser parser() { + public static com.google.protobuf.Parser parser() { return PARSER; } @java.lang.Override - public com.google.protobuf.Parser getParserForType() { + public com.google.protobuf.Parser getParserForType() { return PARSER; } @java.lang.Override - public datacatalog.Datacatalog.ExtendReservationRequest getDefaultInstanceForType() { + public datacatalog.Datacatalog.Reservation getDefaultInstanceForType() { return DEFAULT_INSTANCE; } } - public interface ExtendReservationResponseOrBuilder extends - // @@protoc_insertion_point(interface_extends:datacatalog.ExtendReservationResponse) + public interface GetOrExtendReservationResponseOrBuilder extends + // @@protoc_insertion_point(interface_extends:datacatalog.GetOrExtendReservationResponse) com.google.protobuf.MessageOrBuilder { + + /** + * .datacatalog.Reservation reservation = 1; + */ + boolean hasReservation(); + /** + * .datacatalog.Reservation reservation = 1; + */ + datacatalog.Datacatalog.Reservation getReservation(); + /** + * .datacatalog.Reservation reservation = 1; + */ + datacatalog.Datacatalog.ReservationOrBuilder getReservationOrBuilder(); } /** *
-   * Response to extend reservation
+   * Response including either a newly minted reservation or the existing reservation
    * 
* - * Protobuf type {@code datacatalog.ExtendReservationResponse} + * Protobuf type {@code datacatalog.GetOrExtendReservationResponse} */ - public static final class ExtendReservationResponse extends + public static final class GetOrExtendReservationResponse extends com.google.protobuf.GeneratedMessageV3 implements - // @@protoc_insertion_point(message_implements:datacatalog.ExtendReservationResponse) - ExtendReservationResponseOrBuilder { + // @@protoc_insertion_point(message_implements:datacatalog.GetOrExtendReservationResponse) + GetOrExtendReservationResponseOrBuilder { private static final long serialVersionUID = 0L; - // Use ExtendReservationResponse.newBuilder() to construct. - private ExtendReservationResponse(com.google.protobuf.GeneratedMessageV3.Builder builder) { + // Use GetOrExtendReservationResponse.newBuilder() to construct. + private GetOrExtendReservationResponse(com.google.protobuf.GeneratedMessageV3.Builder builder) { super(builder); } - private ExtendReservationResponse() { + private GetOrExtendReservationResponse() { } @java.lang.Override @@ -13924,7 +13489,7 @@ private ExtendReservationResponse() { getUnknownFields() { return this.unknownFields; } - private ExtendReservationResponse( + private GetOrExtendReservationResponse( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { @@ -13932,6 +13497,7 @@ private ExtendReservationResponse( if (extensionRegistry == null) { throw new java.lang.NullPointerException(); } + int mutable_bitField0_ = 0; com.google.protobuf.UnknownFieldSet.Builder unknownFields = com.google.protobuf.UnknownFieldSet.newBuilder(); try { @@ -13942,6 +13508,19 @@ private ExtendReservationResponse( case 0: done = true; break; + case 10: { + datacatalog.Datacatalog.Reservation.Builder subBuilder = null; + if (reservation_ != null) { + subBuilder = reservation_.toBuilder(); + } + reservation_ = input.readMessage(datacatalog.Datacatalog.Reservation.parser(), extensionRegistry); + if (subBuilder != null) { + subBuilder.mergeFrom(reservation_); + reservation_ = subBuilder.buildPartial(); + } + + break; + } default: { if (!parseUnknownField( input, unknownFields, extensionRegistry, tag)) { @@ -13963,15 +13542,36 @@ private ExtendReservationResponse( } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return datacatalog.Datacatalog.internal_static_datacatalog_ExtendReservationResponse_descriptor; + return datacatalog.Datacatalog.internal_static_datacatalog_GetOrExtendReservationResponse_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return datacatalog.Datacatalog.internal_static_datacatalog_ExtendReservationResponse_fieldAccessorTable + return datacatalog.Datacatalog.internal_static_datacatalog_GetOrExtendReservationResponse_fieldAccessorTable .ensureFieldAccessorsInitialized( - datacatalog.Datacatalog.ExtendReservationResponse.class, datacatalog.Datacatalog.ExtendReservationResponse.Builder.class); + datacatalog.Datacatalog.GetOrExtendReservationResponse.class, datacatalog.Datacatalog.GetOrExtendReservationResponse.Builder.class); + } + + public static final int RESERVATION_FIELD_NUMBER = 1; + private datacatalog.Datacatalog.Reservation reservation_; + /** + * .datacatalog.Reservation reservation = 1; + */ + public boolean hasReservation() { + return reservation_ != null; + } + /** + * .datacatalog.Reservation reservation = 1; + */ + public datacatalog.Datacatalog.Reservation getReservation() { + return reservation_ == null ? datacatalog.Datacatalog.Reservation.getDefaultInstance() : reservation_; + } + /** + * .datacatalog.Reservation reservation = 1; + */ + public datacatalog.Datacatalog.ReservationOrBuilder getReservationOrBuilder() { + return getReservation(); } private byte memoizedIsInitialized = -1; @@ -13988,6 +13588,9 @@ public final boolean isInitialized() { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { + if (reservation_ != null) { + output.writeMessage(1, getReservation()); + } unknownFields.writeTo(output); } @@ -13997,6 +13600,10 @@ public int getSerializedSize() { if (size != -1) return size; size = 0; + if (reservation_ != null) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(1, getReservation()); + } size += unknownFields.getSerializedSize(); memoizedSize = size; return size; @@ -14007,11 +13614,16 @@ public boolean equals(final java.lang.Object obj) { if (obj == this) { return true; } - if (!(obj instanceof datacatalog.Datacatalog.ExtendReservationResponse)) { + if (!(obj instanceof datacatalog.Datacatalog.GetOrExtendReservationResponse)) { return super.equals(obj); } - datacatalog.Datacatalog.ExtendReservationResponse other = (datacatalog.Datacatalog.ExtendReservationResponse) obj; + datacatalog.Datacatalog.GetOrExtendReservationResponse other = (datacatalog.Datacatalog.GetOrExtendReservationResponse) obj; + if (hasReservation() != other.hasReservation()) return false; + if (hasReservation()) { + if (!getReservation() + .equals(other.getReservation())) return false; + } if (!unknownFields.equals(other.unknownFields)) return false; return true; } @@ -14023,74 +13635,78 @@ public int hashCode() { } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); + if (hasReservation()) { + hash = (37 * hash) + RESERVATION_FIELD_NUMBER; + hash = (53 * hash) + getReservation().hashCode(); + } hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; } - public static datacatalog.Datacatalog.ExtendReservationResponse parseFrom( + public static datacatalog.Datacatalog.GetOrExtendReservationResponse parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static datacatalog.Datacatalog.ExtendReservationResponse parseFrom( + public static datacatalog.Datacatalog.GetOrExtendReservationResponse parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static datacatalog.Datacatalog.ExtendReservationResponse parseFrom( + public static datacatalog.Datacatalog.GetOrExtendReservationResponse parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static datacatalog.Datacatalog.ExtendReservationResponse parseFrom( + public static datacatalog.Datacatalog.GetOrExtendReservationResponse parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static datacatalog.Datacatalog.ExtendReservationResponse parseFrom(byte[] data) + public static datacatalog.Datacatalog.GetOrExtendReservationResponse parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static datacatalog.Datacatalog.ExtendReservationResponse parseFrom( + public static datacatalog.Datacatalog.GetOrExtendReservationResponse parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static datacatalog.Datacatalog.ExtendReservationResponse parseFrom(java.io.InputStream input) + public static datacatalog.Datacatalog.GetOrExtendReservationResponse parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static datacatalog.Datacatalog.ExtendReservationResponse parseFrom( + public static datacatalog.Datacatalog.GetOrExtendReservationResponse 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 datacatalog.Datacatalog.ExtendReservationResponse parseDelimitedFrom(java.io.InputStream input) + public static datacatalog.Datacatalog.GetOrExtendReservationResponse parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input); } - public static datacatalog.Datacatalog.ExtendReservationResponse parseDelimitedFrom( + public static datacatalog.Datacatalog.GetOrExtendReservationResponse 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 datacatalog.Datacatalog.ExtendReservationResponse parseFrom( + public static datacatalog.Datacatalog.GetOrExtendReservationResponse parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } - public static datacatalog.Datacatalog.ExtendReservationResponse parseFrom( + public static datacatalog.Datacatalog.GetOrExtendReservationResponse parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { @@ -14103,7 +13719,7 @@ public static datacatalog.Datacatalog.ExtendReservationResponse parseFrom( public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } - public static Builder newBuilder(datacatalog.Datacatalog.ExtendReservationResponse prototype) { + public static Builder newBuilder(datacatalog.Datacatalog.GetOrExtendReservationResponse prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override @@ -14120,29 +13736,29 @@ protected Builder newBuilderForType( } /** *
-     * Response to extend reservation
+     * Response including either a newly minted reservation or the existing reservation
      * 
* - * Protobuf type {@code datacatalog.ExtendReservationResponse} + * Protobuf type {@code datacatalog.GetOrExtendReservationResponse} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder implements - // @@protoc_insertion_point(builder_implements:datacatalog.ExtendReservationResponse) - datacatalog.Datacatalog.ExtendReservationResponseOrBuilder { + // @@protoc_insertion_point(builder_implements:datacatalog.GetOrExtendReservationResponse) + datacatalog.Datacatalog.GetOrExtendReservationResponseOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return datacatalog.Datacatalog.internal_static_datacatalog_ExtendReservationResponse_descriptor; + return datacatalog.Datacatalog.internal_static_datacatalog_GetOrExtendReservationResponse_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { - return datacatalog.Datacatalog.internal_static_datacatalog_ExtendReservationResponse_fieldAccessorTable + return datacatalog.Datacatalog.internal_static_datacatalog_GetOrExtendReservationResponse_fieldAccessorTable .ensureFieldAccessorsInitialized( - datacatalog.Datacatalog.ExtendReservationResponse.class, datacatalog.Datacatalog.ExtendReservationResponse.Builder.class); + datacatalog.Datacatalog.GetOrExtendReservationResponse.class, datacatalog.Datacatalog.GetOrExtendReservationResponse.Builder.class); } - // Construct using datacatalog.Datacatalog.ExtendReservationResponse.newBuilder() + // Construct using datacatalog.Datacatalog.GetOrExtendReservationResponse.newBuilder() private Builder() { maybeForceBuilderInitialization(); } @@ -14160,23 +13776,29 @@ private void maybeForceBuilderInitialization() { @java.lang.Override public Builder clear() { super.clear(); + if (reservationBuilder_ == null) { + reservation_ = null; + } else { + reservation_ = null; + reservationBuilder_ = null; + } return this; } @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { - return datacatalog.Datacatalog.internal_static_datacatalog_ExtendReservationResponse_descriptor; + return datacatalog.Datacatalog.internal_static_datacatalog_GetOrExtendReservationResponse_descriptor; } @java.lang.Override - public datacatalog.Datacatalog.ExtendReservationResponse getDefaultInstanceForType() { - return datacatalog.Datacatalog.ExtendReservationResponse.getDefaultInstance(); + public datacatalog.Datacatalog.GetOrExtendReservationResponse getDefaultInstanceForType() { + return datacatalog.Datacatalog.GetOrExtendReservationResponse.getDefaultInstance(); } @java.lang.Override - public datacatalog.Datacatalog.ExtendReservationResponse build() { - datacatalog.Datacatalog.ExtendReservationResponse result = buildPartial(); + public datacatalog.Datacatalog.GetOrExtendReservationResponse build() { + datacatalog.Datacatalog.GetOrExtendReservationResponse result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } @@ -14184,8 +13806,13 @@ public datacatalog.Datacatalog.ExtendReservationResponse build() { } @java.lang.Override - public datacatalog.Datacatalog.ExtendReservationResponse buildPartial() { - datacatalog.Datacatalog.ExtendReservationResponse result = new datacatalog.Datacatalog.ExtendReservationResponse(this); + public datacatalog.Datacatalog.GetOrExtendReservationResponse buildPartial() { + datacatalog.Datacatalog.GetOrExtendReservationResponse result = new datacatalog.Datacatalog.GetOrExtendReservationResponse(this); + if (reservationBuilder_ == null) { + result.reservation_ = reservation_; + } else { + result.reservation_ = reservationBuilder_.build(); + } onBuilt(); return result; } @@ -14224,16 +13851,19 @@ public Builder addRepeatedField( } @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof datacatalog.Datacatalog.ExtendReservationResponse) { - return mergeFrom((datacatalog.Datacatalog.ExtendReservationResponse)other); + if (other instanceof datacatalog.Datacatalog.GetOrExtendReservationResponse) { + return mergeFrom((datacatalog.Datacatalog.GetOrExtendReservationResponse)other); } else { super.mergeFrom(other); return this; } } - public Builder mergeFrom(datacatalog.Datacatalog.ExtendReservationResponse other) { - if (other == datacatalog.Datacatalog.ExtendReservationResponse.getDefaultInstance()) return this; + public Builder mergeFrom(datacatalog.Datacatalog.GetOrExtendReservationResponse other) { + if (other == datacatalog.Datacatalog.GetOrExtendReservationResponse.getDefaultInstance()) return this; + if (other.hasReservation()) { + mergeReservation(other.getReservation()); + } this.mergeUnknownFields(other.unknownFields); onChanged(); return this; @@ -14249,11 +13879,11 @@ public Builder mergeFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - datacatalog.Datacatalog.ExtendReservationResponse parsedMessage = null; + datacatalog.Datacatalog.GetOrExtendReservationResponse parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { - parsedMessage = (datacatalog.Datacatalog.ExtendReservationResponse) e.getUnfinishedMessage(); + parsedMessage = (datacatalog.Datacatalog.GetOrExtendReservationResponse) e.getUnfinishedMessage(); throw e.unwrapIOException(); } finally { if (parsedMessage != null) { @@ -14262,6 +13892,123 @@ public Builder mergeFrom( } return this; } + + private datacatalog.Datacatalog.Reservation reservation_; + private com.google.protobuf.SingleFieldBuilderV3< + datacatalog.Datacatalog.Reservation, datacatalog.Datacatalog.Reservation.Builder, datacatalog.Datacatalog.ReservationOrBuilder> reservationBuilder_; + /** + * .datacatalog.Reservation reservation = 1; + */ + public boolean hasReservation() { + return reservationBuilder_ != null || reservation_ != null; + } + /** + * .datacatalog.Reservation reservation = 1; + */ + public datacatalog.Datacatalog.Reservation getReservation() { + if (reservationBuilder_ == null) { + return reservation_ == null ? datacatalog.Datacatalog.Reservation.getDefaultInstance() : reservation_; + } else { + return reservationBuilder_.getMessage(); + } + } + /** + * .datacatalog.Reservation reservation = 1; + */ + public Builder setReservation(datacatalog.Datacatalog.Reservation value) { + if (reservationBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + reservation_ = value; + onChanged(); + } else { + reservationBuilder_.setMessage(value); + } + + return this; + } + /** + * .datacatalog.Reservation reservation = 1; + */ + public Builder setReservation( + datacatalog.Datacatalog.Reservation.Builder builderForValue) { + if (reservationBuilder_ == null) { + reservation_ = builderForValue.build(); + onChanged(); + } else { + reservationBuilder_.setMessage(builderForValue.build()); + } + + return this; + } + /** + * .datacatalog.Reservation reservation = 1; + */ + public Builder mergeReservation(datacatalog.Datacatalog.Reservation value) { + if (reservationBuilder_ == null) { + if (reservation_ != null) { + reservation_ = + datacatalog.Datacatalog.Reservation.newBuilder(reservation_).mergeFrom(value).buildPartial(); + } else { + reservation_ = value; + } + onChanged(); + } else { + reservationBuilder_.mergeFrom(value); + } + + return this; + } + /** + * .datacatalog.Reservation reservation = 1; + */ + public Builder clearReservation() { + if (reservationBuilder_ == null) { + reservation_ = null; + onChanged(); + } else { + reservation_ = null; + reservationBuilder_ = null; + } + + return this; + } + /** + * .datacatalog.Reservation reservation = 1; + */ + public datacatalog.Datacatalog.Reservation.Builder getReservationBuilder() { + + onChanged(); + return getReservationFieldBuilder().getBuilder(); + } + /** + * .datacatalog.Reservation reservation = 1; + */ + public datacatalog.Datacatalog.ReservationOrBuilder getReservationOrBuilder() { + if (reservationBuilder_ != null) { + return reservationBuilder_.getMessageOrBuilder(); + } else { + return reservation_ == null ? + datacatalog.Datacatalog.Reservation.getDefaultInstance() : reservation_; + } + } + /** + * .datacatalog.Reservation reservation = 1; + */ + private com.google.protobuf.SingleFieldBuilderV3< + datacatalog.Datacatalog.Reservation, datacatalog.Datacatalog.Reservation.Builder, datacatalog.Datacatalog.ReservationOrBuilder> + getReservationFieldBuilder() { + if (reservationBuilder_ == null) { + reservationBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + datacatalog.Datacatalog.Reservation, datacatalog.Datacatalog.Reservation.Builder, datacatalog.Datacatalog.ReservationOrBuilder>( + getReservation(), + getParentForChildren(), + isClean()); + reservation_ = null; + } + return reservationBuilder_; + } @java.lang.Override public final Builder setUnknownFields( final com.google.protobuf.UnknownFieldSet unknownFields) { @@ -14275,41 +14022,41 @@ public final Builder mergeUnknownFields( } - // @@protoc_insertion_point(builder_scope:datacatalog.ExtendReservationResponse) + // @@protoc_insertion_point(builder_scope:datacatalog.GetOrExtendReservationResponse) } - // @@protoc_insertion_point(class_scope:datacatalog.ExtendReservationResponse) - private static final datacatalog.Datacatalog.ExtendReservationResponse DEFAULT_INSTANCE; + // @@protoc_insertion_point(class_scope:datacatalog.GetOrExtendReservationResponse) + private static final datacatalog.Datacatalog.GetOrExtendReservationResponse DEFAULT_INSTANCE; static { - DEFAULT_INSTANCE = new datacatalog.Datacatalog.ExtendReservationResponse(); + DEFAULT_INSTANCE = new datacatalog.Datacatalog.GetOrExtendReservationResponse(); } - public static datacatalog.Datacatalog.ExtendReservationResponse getDefaultInstance() { + public static datacatalog.Datacatalog.GetOrExtendReservationResponse getDefaultInstance() { return DEFAULT_INSTANCE; } - private static final com.google.protobuf.Parser - PARSER = new com.google.protobuf.AbstractParser() { + private static final com.google.protobuf.Parser + PARSER = new com.google.protobuf.AbstractParser() { @java.lang.Override - public ExtendReservationResponse parsePartialFrom( + public GetOrExtendReservationResponse parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { - return new ExtendReservationResponse(input, extensionRegistry); + return new GetOrExtendReservationResponse(input, extensionRegistry); } }; - public static com.google.protobuf.Parser parser() { + public static com.google.protobuf.Parser parser() { return PARSER; } @java.lang.Override - public com.google.protobuf.Parser getParserForType() { + public com.google.protobuf.Parser getParserForType() { return PARSER; } @java.lang.Override - public datacatalog.Datacatalog.ExtendReservationResponse getDefaultInstanceForType() { + public datacatalog.Datacatalog.GetOrExtendReservationResponse getDefaultInstanceForType() { return DEFAULT_INSTANCE; } @@ -14320,34 +14067,24 @@ public interface ReleaseReservationRequestOrBuilder extends com.google.protobuf.MessageOrBuilder { /** - * .datacatalog.DatasetID dataset_id = 1; - */ - boolean hasDatasetId(); - /** - * .datacatalog.DatasetID dataset_id = 1; - */ - datacatalog.Datacatalog.DatasetID getDatasetId(); - /** - * .datacatalog.DatasetID dataset_id = 1; + * .datacatalog.ReservationID reservation_id = 1; */ - datacatalog.Datacatalog.DatasetIDOrBuilder getDatasetIdOrBuilder(); - + boolean hasReservationId(); /** - * string tag_name = 2; + * .datacatalog.ReservationID reservation_id = 1; */ - java.lang.String getTagName(); + datacatalog.Datacatalog.ReservationID getReservationId(); /** - * string tag_name = 2; + * .datacatalog.ReservationID reservation_id = 1; */ - com.google.protobuf.ByteString - getTagNameBytes(); + datacatalog.Datacatalog.ReservationIDOrBuilder getReservationIdOrBuilder(); /** - * string owner_id = 3; + * string owner_id = 2; */ java.lang.String getOwnerId(); /** - * string owner_id = 3; + * string owner_id = 2; */ com.google.protobuf.ByteString getOwnerIdBytes(); @@ -14369,7 +14106,6 @@ private ReleaseReservationRequest(com.google.protobuf.GeneratedMessageV3.Builder super(builder); } private ReleaseReservationRequest() { - tagName_ = ""; ownerId_ = ""; } @@ -14398,14 +14134,14 @@ private ReleaseReservationRequest( done = true; break; case 10: { - datacatalog.Datacatalog.DatasetID.Builder subBuilder = null; - if (datasetId_ != null) { - subBuilder = datasetId_.toBuilder(); + datacatalog.Datacatalog.ReservationID.Builder subBuilder = null; + if (reservationId_ != null) { + subBuilder = reservationId_.toBuilder(); } - datasetId_ = input.readMessage(datacatalog.Datacatalog.DatasetID.parser(), extensionRegistry); + reservationId_ = input.readMessage(datacatalog.Datacatalog.ReservationID.parser(), extensionRegistry); if (subBuilder != null) { - subBuilder.mergeFrom(datasetId_); - datasetId_ = subBuilder.buildPartial(); + subBuilder.mergeFrom(reservationId_); + reservationId_ = subBuilder.buildPartial(); } break; @@ -14413,12 +14149,6 @@ private ReleaseReservationRequest( case 18: { java.lang.String s = input.readStringRequireUtf8(); - tagName_ = s; - break; - } - case 26: { - java.lang.String s = input.readStringRequireUtf8(); - ownerId_ = s; break; } @@ -14454,65 +14184,31 @@ private ReleaseReservationRequest( datacatalog.Datacatalog.ReleaseReservationRequest.class, datacatalog.Datacatalog.ReleaseReservationRequest.Builder.class); } - public static final int DATASET_ID_FIELD_NUMBER = 1; - private datacatalog.Datacatalog.DatasetID datasetId_; - /** - * .datacatalog.DatasetID dataset_id = 1; - */ - public boolean hasDatasetId() { - return datasetId_ != null; - } - /** - * .datacatalog.DatasetID dataset_id = 1; - */ - public datacatalog.Datacatalog.DatasetID getDatasetId() { - return datasetId_ == null ? datacatalog.Datacatalog.DatasetID.getDefaultInstance() : datasetId_; - } + public static final int RESERVATION_ID_FIELD_NUMBER = 1; + private datacatalog.Datacatalog.ReservationID reservationId_; /** - * .datacatalog.DatasetID dataset_id = 1; + * .datacatalog.ReservationID reservation_id = 1; */ - public datacatalog.Datacatalog.DatasetIDOrBuilder getDatasetIdOrBuilder() { - return getDatasetId(); + public boolean hasReservationId() { + return reservationId_ != null; } - - public static final int TAG_NAME_FIELD_NUMBER = 2; - private volatile java.lang.Object tagName_; /** - * string tag_name = 2; + * .datacatalog.ReservationID reservation_id = 1; */ - public java.lang.String getTagName() { - java.lang.Object ref = tagName_; - if (ref instanceof java.lang.String) { - return (java.lang.String) ref; - } else { - com.google.protobuf.ByteString bs = - (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - tagName_ = s; - return s; - } + public datacatalog.Datacatalog.ReservationID getReservationId() { + return reservationId_ == null ? datacatalog.Datacatalog.ReservationID.getDefaultInstance() : reservationId_; } /** - * string tag_name = 2; + * .datacatalog.ReservationID reservation_id = 1; */ - public com.google.protobuf.ByteString - getTagNameBytes() { - java.lang.Object ref = tagName_; - if (ref instanceof java.lang.String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8( - (java.lang.String) ref); - tagName_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; - } + public datacatalog.Datacatalog.ReservationIDOrBuilder getReservationIdOrBuilder() { + return getReservationId(); } - public static final int OWNER_ID_FIELD_NUMBER = 3; + public static final int OWNER_ID_FIELD_NUMBER = 2; private volatile java.lang.Object ownerId_; /** - * string owner_id = 3; + * string owner_id = 2; */ public java.lang.String getOwnerId() { java.lang.Object ref = ownerId_; @@ -14527,7 +14223,7 @@ public java.lang.String getOwnerId() { } } /** - * string owner_id = 3; + * string owner_id = 2; */ public com.google.protobuf.ByteString getOwnerIdBytes() { @@ -14557,14 +14253,11 @@ public final boolean isInitialized() { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (datasetId_ != null) { - output.writeMessage(1, getDatasetId()); - } - if (!getTagNameBytes().isEmpty()) { - com.google.protobuf.GeneratedMessageV3.writeString(output, 2, tagName_); + if (reservationId_ != null) { + output.writeMessage(1, getReservationId()); } if (!getOwnerIdBytes().isEmpty()) { - com.google.protobuf.GeneratedMessageV3.writeString(output, 3, ownerId_); + com.google.protobuf.GeneratedMessageV3.writeString(output, 2, ownerId_); } unknownFields.writeTo(output); } @@ -14575,15 +14268,12 @@ public int getSerializedSize() { if (size != -1) return size; size = 0; - if (datasetId_ != null) { + if (reservationId_ != null) { size += com.google.protobuf.CodedOutputStream - .computeMessageSize(1, getDatasetId()); - } - if (!getTagNameBytes().isEmpty()) { - size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, tagName_); + .computeMessageSize(1, getReservationId()); } if (!getOwnerIdBytes().isEmpty()) { - size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, ownerId_); + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, ownerId_); } size += unknownFields.getSerializedSize(); memoizedSize = size; @@ -14600,13 +14290,11 @@ public boolean equals(final java.lang.Object obj) { } datacatalog.Datacatalog.ReleaseReservationRequest other = (datacatalog.Datacatalog.ReleaseReservationRequest) obj; - if (hasDatasetId() != other.hasDatasetId()) return false; - if (hasDatasetId()) { - if (!getDatasetId() - .equals(other.getDatasetId())) return false; + if (hasReservationId() != other.hasReservationId()) return false; + if (hasReservationId()) { + if (!getReservationId() + .equals(other.getReservationId())) return false; } - if (!getTagName() - .equals(other.getTagName())) return false; if (!getOwnerId() .equals(other.getOwnerId())) return false; if (!unknownFields.equals(other.unknownFields)) return false; @@ -14620,12 +14308,10 @@ public int hashCode() { } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); - if (hasDatasetId()) { - hash = (37 * hash) + DATASET_ID_FIELD_NUMBER; - hash = (53 * hash) + getDatasetId().hashCode(); + if (hasReservationId()) { + hash = (37 * hash) + RESERVATION_ID_FIELD_NUMBER; + hash = (53 * hash) + getReservationId().hashCode(); } - hash = (37 * hash) + TAG_NAME_FIELD_NUMBER; - hash = (53 * hash) + getTagName().hashCode(); hash = (37 * hash) + OWNER_ID_FIELD_NUMBER; hash = (53 * hash) + getOwnerId().hashCode(); hash = (29 * hash) + unknownFields.hashCode(); @@ -14765,14 +14451,12 @@ private void maybeForceBuilderInitialization() { @java.lang.Override public Builder clear() { super.clear(); - if (datasetIdBuilder_ == null) { - datasetId_ = null; + if (reservationIdBuilder_ == null) { + reservationId_ = null; } else { - datasetId_ = null; - datasetIdBuilder_ = null; + reservationId_ = null; + reservationIdBuilder_ = null; } - tagName_ = ""; - ownerId_ = ""; return this; @@ -14801,12 +14485,11 @@ public datacatalog.Datacatalog.ReleaseReservationRequest build() { @java.lang.Override public datacatalog.Datacatalog.ReleaseReservationRequest buildPartial() { datacatalog.Datacatalog.ReleaseReservationRequest result = new datacatalog.Datacatalog.ReleaseReservationRequest(this); - if (datasetIdBuilder_ == null) { - result.datasetId_ = datasetId_; + if (reservationIdBuilder_ == null) { + result.reservationId_ = reservationId_; } else { - result.datasetId_ = datasetIdBuilder_.build(); + result.reservationId_ = reservationIdBuilder_.build(); } - result.tagName_ = tagName_; result.ownerId_ = ownerId_; onBuilt(); return result; @@ -14856,12 +14539,8 @@ public Builder mergeFrom(com.google.protobuf.Message other) { public Builder mergeFrom(datacatalog.Datacatalog.ReleaseReservationRequest other) { if (other == datacatalog.Datacatalog.ReleaseReservationRequest.getDefaultInstance()) return this; - if (other.hasDatasetId()) { - mergeDatasetId(other.getDatasetId()); - } - if (!other.getTagName().isEmpty()) { - tagName_ = other.tagName_; - onChanged(); + if (other.hasReservationId()) { + mergeReservationId(other.getReservationId()); } if (!other.getOwnerId().isEmpty()) { ownerId_ = other.ownerId_; @@ -14896,195 +14575,126 @@ public Builder mergeFrom( return this; } - private datacatalog.Datacatalog.DatasetID datasetId_; + private datacatalog.Datacatalog.ReservationID reservationId_; private com.google.protobuf.SingleFieldBuilderV3< - datacatalog.Datacatalog.DatasetID, datacatalog.Datacatalog.DatasetID.Builder, datacatalog.Datacatalog.DatasetIDOrBuilder> datasetIdBuilder_; + datacatalog.Datacatalog.ReservationID, datacatalog.Datacatalog.ReservationID.Builder, datacatalog.Datacatalog.ReservationIDOrBuilder> reservationIdBuilder_; /** - * .datacatalog.DatasetID dataset_id = 1; + * .datacatalog.ReservationID reservation_id = 1; */ - public boolean hasDatasetId() { - return datasetIdBuilder_ != null || datasetId_ != null; + public boolean hasReservationId() { + return reservationIdBuilder_ != null || reservationId_ != null; } /** - * .datacatalog.DatasetID dataset_id = 1; + * .datacatalog.ReservationID reservation_id = 1; */ - public datacatalog.Datacatalog.DatasetID getDatasetId() { - if (datasetIdBuilder_ == null) { - return datasetId_ == null ? datacatalog.Datacatalog.DatasetID.getDefaultInstance() : datasetId_; + public datacatalog.Datacatalog.ReservationID getReservationId() { + if (reservationIdBuilder_ == null) { + return reservationId_ == null ? datacatalog.Datacatalog.ReservationID.getDefaultInstance() : reservationId_; } else { - return datasetIdBuilder_.getMessage(); + return reservationIdBuilder_.getMessage(); } } /** - * .datacatalog.DatasetID dataset_id = 1; + * .datacatalog.ReservationID reservation_id = 1; */ - public Builder setDatasetId(datacatalog.Datacatalog.DatasetID value) { - if (datasetIdBuilder_ == null) { + public Builder setReservationId(datacatalog.Datacatalog.ReservationID value) { + if (reservationIdBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - datasetId_ = value; + reservationId_ = value; onChanged(); } else { - datasetIdBuilder_.setMessage(value); + reservationIdBuilder_.setMessage(value); } return this; } /** - * .datacatalog.DatasetID dataset_id = 1; + * .datacatalog.ReservationID reservation_id = 1; */ - public Builder setDatasetId( - datacatalog.Datacatalog.DatasetID.Builder builderForValue) { - if (datasetIdBuilder_ == null) { - datasetId_ = builderForValue.build(); + public Builder setReservationId( + datacatalog.Datacatalog.ReservationID.Builder builderForValue) { + if (reservationIdBuilder_ == null) { + reservationId_ = builderForValue.build(); onChanged(); } else { - datasetIdBuilder_.setMessage(builderForValue.build()); + reservationIdBuilder_.setMessage(builderForValue.build()); } return this; } /** - * .datacatalog.DatasetID dataset_id = 1; + * .datacatalog.ReservationID reservation_id = 1; */ - public Builder mergeDatasetId(datacatalog.Datacatalog.DatasetID value) { - if (datasetIdBuilder_ == null) { - if (datasetId_ != null) { - datasetId_ = - datacatalog.Datacatalog.DatasetID.newBuilder(datasetId_).mergeFrom(value).buildPartial(); + public Builder mergeReservationId(datacatalog.Datacatalog.ReservationID value) { + if (reservationIdBuilder_ == null) { + if (reservationId_ != null) { + reservationId_ = + datacatalog.Datacatalog.ReservationID.newBuilder(reservationId_).mergeFrom(value).buildPartial(); } else { - datasetId_ = value; + reservationId_ = value; } onChanged(); } else { - datasetIdBuilder_.mergeFrom(value); + reservationIdBuilder_.mergeFrom(value); } return this; } /** - * .datacatalog.DatasetID dataset_id = 1; + * .datacatalog.ReservationID reservation_id = 1; */ - public Builder clearDatasetId() { - if (datasetIdBuilder_ == null) { - datasetId_ = null; + public Builder clearReservationId() { + if (reservationIdBuilder_ == null) { + reservationId_ = null; onChanged(); } else { - datasetId_ = null; - datasetIdBuilder_ = null; + reservationId_ = null; + reservationIdBuilder_ = null; } return this; } /** - * .datacatalog.DatasetID dataset_id = 1; + * .datacatalog.ReservationID reservation_id = 1; */ - public datacatalog.Datacatalog.DatasetID.Builder getDatasetIdBuilder() { + public datacatalog.Datacatalog.ReservationID.Builder getReservationIdBuilder() { onChanged(); - return getDatasetIdFieldBuilder().getBuilder(); + return getReservationIdFieldBuilder().getBuilder(); } /** - * .datacatalog.DatasetID dataset_id = 1; + * .datacatalog.ReservationID reservation_id = 1; */ - public datacatalog.Datacatalog.DatasetIDOrBuilder getDatasetIdOrBuilder() { - if (datasetIdBuilder_ != null) { - return datasetIdBuilder_.getMessageOrBuilder(); + public datacatalog.Datacatalog.ReservationIDOrBuilder getReservationIdOrBuilder() { + if (reservationIdBuilder_ != null) { + return reservationIdBuilder_.getMessageOrBuilder(); } else { - return datasetId_ == null ? - datacatalog.Datacatalog.DatasetID.getDefaultInstance() : datasetId_; + return reservationId_ == null ? + datacatalog.Datacatalog.ReservationID.getDefaultInstance() : reservationId_; } } /** - * .datacatalog.DatasetID dataset_id = 1; + * .datacatalog.ReservationID reservation_id = 1; */ private com.google.protobuf.SingleFieldBuilderV3< - datacatalog.Datacatalog.DatasetID, datacatalog.Datacatalog.DatasetID.Builder, datacatalog.Datacatalog.DatasetIDOrBuilder> - getDatasetIdFieldBuilder() { - if (datasetIdBuilder_ == null) { - datasetIdBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< - datacatalog.Datacatalog.DatasetID, datacatalog.Datacatalog.DatasetID.Builder, datacatalog.Datacatalog.DatasetIDOrBuilder>( - getDatasetId(), + datacatalog.Datacatalog.ReservationID, datacatalog.Datacatalog.ReservationID.Builder, datacatalog.Datacatalog.ReservationIDOrBuilder> + getReservationIdFieldBuilder() { + if (reservationIdBuilder_ == null) { + reservationIdBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + datacatalog.Datacatalog.ReservationID, datacatalog.Datacatalog.ReservationID.Builder, datacatalog.Datacatalog.ReservationIDOrBuilder>( + getReservationId(), getParentForChildren(), isClean()); - datasetId_ = null; - } - return datasetIdBuilder_; - } - - private java.lang.Object tagName_ = ""; - /** - * string tag_name = 2; - */ - public java.lang.String getTagName() { - java.lang.Object ref = tagName_; - if (!(ref instanceof java.lang.String)) { - com.google.protobuf.ByteString bs = - (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - tagName_ = s; - return s; - } else { - return (java.lang.String) ref; - } - } - /** - * string tag_name = 2; - */ - public com.google.protobuf.ByteString - getTagNameBytes() { - java.lang.Object ref = tagName_; - if (ref instanceof String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8( - (java.lang.String) ref); - tagName_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; + reservationId_ = null; } - } - /** - * string tag_name = 2; - */ - public Builder setTagName( - java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - - tagName_ = value; - onChanged(); - return this; - } - /** - * string tag_name = 2; - */ - public Builder clearTagName() { - - tagName_ = getDefaultInstance().getTagName(); - onChanged(); - return this; - } - /** - * string tag_name = 2; - */ - public Builder setTagNameBytes( - com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); - } - checkByteStringIsUtf8(value); - - tagName_ = value; - onChanged(); - return this; + return reservationIdBuilder_; } private java.lang.Object ownerId_ = ""; /** - * string owner_id = 3; + * string owner_id = 2; */ public java.lang.String getOwnerId() { java.lang.Object ref = ownerId_; @@ -15099,7 +14709,7 @@ public java.lang.String getOwnerId() { } } /** - * string owner_id = 3; + * string owner_id = 2; */ public com.google.protobuf.ByteString getOwnerIdBytes() { @@ -15115,7 +14725,7 @@ public java.lang.String getOwnerId() { } } /** - * string owner_id = 3; + * string owner_id = 2; */ public Builder setOwnerId( java.lang.String value) { @@ -15128,7 +14738,7 @@ public Builder setOwnerId( return this; } /** - * string owner_id = 3; + * string owner_id = 2; */ public Builder clearOwnerId() { @@ -15137,7 +14747,7 @@ public Builder clearOwnerId() { return this; } /** - * string owner_id = 3; + * string owner_id = 2; */ public Builder setOwnerIdBytes( com.google.protobuf.ByteString value) { @@ -31142,30 +30752,25 @@ public datacatalog.Datacatalog.PaginationOptions getDefaultInstanceForType() { com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internal_static_datacatalog_ListDatasetsResponse_fieldAccessorTable; private static final com.google.protobuf.Descriptors.Descriptor - internal_static_datacatalog_GetOrReserveArtifactRequest_descriptor; - private static final - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable - internal_static_datacatalog_GetOrReserveArtifactRequest_fieldAccessorTable; - private static final com.google.protobuf.Descriptors.Descriptor - internal_static_datacatalog_ReservationStatus_descriptor; + internal_static_datacatalog_ReservationID_descriptor; private static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable - internal_static_datacatalog_ReservationStatus_fieldAccessorTable; + internal_static_datacatalog_ReservationID_fieldAccessorTable; private static final com.google.protobuf.Descriptors.Descriptor - internal_static_datacatalog_GetOrReserveArtifactResponse_descriptor; + internal_static_datacatalog_GetOrExtendReservationRequest_descriptor; private static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable - internal_static_datacatalog_GetOrReserveArtifactResponse_fieldAccessorTable; + internal_static_datacatalog_GetOrExtendReservationRequest_fieldAccessorTable; private static final com.google.protobuf.Descriptors.Descriptor - internal_static_datacatalog_ExtendReservationRequest_descriptor; + internal_static_datacatalog_Reservation_descriptor; private static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable - internal_static_datacatalog_ExtendReservationRequest_fieldAccessorTable; + internal_static_datacatalog_Reservation_fieldAccessorTable; private static final com.google.protobuf.Descriptors.Descriptor - internal_static_datacatalog_ExtendReservationResponse_descriptor; + internal_static_datacatalog_GetOrExtendReservationResponse_descriptor; private static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable - internal_static_datacatalog_ExtendReservationResponse_fieldAccessorTable; + internal_static_datacatalog_GetOrExtendReservationResponse_fieldAccessorTable; private static final com.google.protobuf.Descriptors.Descriptor internal_static_datacatalog_ReleaseReservationRequest_descriptor; private static final @@ -31267,120 +30872,117 @@ public datacatalog.Datacatalog.PaginationOptions getDefaultInstanceForType() { java.lang.String[] descriptorData = { "\n&flyteidl/datacatalog/datacatalog.proto" + "\022\013datacatalog\032\034flyteidl/core/literals.pr" + - "oto\032\037google/protobuf/timestamp.proto\"=\n\024" + - "CreateDatasetRequest\022%\n\007dataset\030\001 \001(\0132\024." + - "datacatalog.Dataset\"\027\n\025CreateDatasetResp" + - "onse\"<\n\021GetDatasetRequest\022\'\n\007dataset\030\001 \001" + - "(\0132\026.datacatalog.DatasetID\";\n\022GetDataset" + - "Response\022%\n\007dataset\030\001 \001(\0132\024.datacatalog." + - "Dataset\"x\n\022GetArtifactRequest\022\'\n\007dataset" + - "\030\001 \001(\0132\026.datacatalog.DatasetID\022\025\n\013artifa" + - "ct_id\030\002 \001(\tH\000\022\022\n\010tag_name\030\003 \001(\tH\000B\016\n\014que" + - "ry_handle\">\n\023GetArtifactResponse\022\'\n\010arti" + - "fact\030\001 \001(\0132\025.datacatalog.Artifact\"@\n\025Cre" + - "ateArtifactRequest\022\'\n\010artifact\030\001 \001(\0132\025.d" + - "atacatalog.Artifact\"\030\n\026CreateArtifactRes" + - "ponse\".\n\rAddTagRequest\022\035\n\003tag\030\001 \001(\0132\020.da" + - "tacatalog.Tag\"\020\n\016AddTagResponse\"\242\001\n\024List" + - "ArtifactsRequest\022\'\n\007dataset\030\001 \001(\0132\026.data" + - "catalog.DatasetID\022-\n\006filter\030\002 \001(\0132\035.data" + - "catalog.FilterExpression\0222\n\npagination\030\003" + - " \001(\0132\036.datacatalog.PaginationOptions\"U\n\025" + - "ListArtifactsResponse\022(\n\tartifacts\030\001 \003(\013" + - "2\025.datacatalog.Artifact\022\022\n\nnext_token\030\002 " + - "\001(\t\"x\n\023ListDatasetsRequest\022-\n\006filter\030\001 \001" + - "(\0132\035.datacatalog.FilterExpression\0222\n\npag" + - "ination\030\002 \001(\0132\036.datacatalog.PaginationOp" + - "tions\"R\n\024ListDatasetsResponse\022&\n\010dataset" + - "s\030\001 \003(\0132\024.datacatalog.Dataset\022\022\n\nnext_to" + - "ken\030\002 \001(\t\"m\n\033GetOrReserveArtifactRequest" + - "\022*\n\ndataset_id\030\001 \001(\0132\026.datacatalog.Datas" + - "etID\022\020\n\010tag_name\030\002 \001(\t\022\020\n\010owner_id\030\003 \001(\t" + - "\"\263\001\n\021ReservationStatus\0223\n\005state\030\001 \001(\0162$." + - "datacatalog.ReservationStatus.State\022\'\n\010m" + - "etadata\030\002 \001(\0132\025.datacatalog.Metadata\022\020\n\010" + - "owner_id\030\003 \001(\t\".\n\005State\022\014\n\010ACQUIRED\020\000\022\027\n" + - "\023ALREADY_IN_PROGRESS\020\001\"\220\001\n\034GetOrReserveA" + - "rtifactResponse\022)\n\010artifact\030\001 \001(\0132\025.data" + - "catalog.ArtifactH\000\022<\n\022reservation_status" + - "\030\002 \001(\0132\036.datacatalog.ReservationStatusH\000" + - "B\007\n\005value\"j\n\030ExtendReservationRequest\022*\n" + - "\ndataset_id\030\001 \001(\0132\026.datacatalog.DatasetI" + - "D\022\020\n\010tag_name\030\002 \001(\t\022\020\n\010owner_id\030\003 \001(\t\"\033\n" + - "\031ExtendReservationResponse\"k\n\031ReleaseRes" + - "ervationRequest\022*\n\ndataset_id\030\001 \001(\0132\026.da" + - "tacatalog.DatasetID\022\020\n\010tag_name\030\002 \001(\t\022\020\n" + - "\010owner_id\030\003 \001(\t\"\034\n\032ReleaseReservationRes" + - "ponse\"m\n\007Dataset\022\"\n\002id\030\001 \001(\0132\026.datacatal" + - "og.DatasetID\022\'\n\010metadata\030\002 \001(\0132\025.datacat" + - "alog.Metadata\022\025\n\rpartitionKeys\030\003 \003(\t\"\'\n\t" + - "Partition\022\013\n\003key\030\001 \001(\t\022\r\n\005value\030\002 \001(\t\"Y\n" + - "\tDatasetID\022\017\n\007project\030\001 \001(\t\022\014\n\004name\030\002 \001(" + - "\t\022\016\n\006domain\030\003 \001(\t\022\017\n\007version\030\004 \001(\t\022\014\n\004UU" + - "ID\030\005 \001(\t\"\215\002\n\010Artifact\022\n\n\002id\030\001 \001(\t\022\'\n\007dat" + - "aset\030\002 \001(\0132\026.datacatalog.DatasetID\022\'\n\004da" + - "ta\030\003 \003(\0132\031.datacatalog.ArtifactData\022\'\n\010m" + - "etadata\030\004 \001(\0132\025.datacatalog.Metadata\022*\n\n" + - "partitions\030\005 \003(\0132\026.datacatalog.Partition" + - "\022\036\n\004tags\030\006 \003(\0132\020.datacatalog.Tag\022.\n\ncrea" + - "ted_at\030\007 \001(\0132\032.google.protobuf.Timestamp" + - "\"C\n\014ArtifactData\022\014\n\004name\030\001 \001(\t\022%\n\005value\030" + - "\002 \001(\0132\026.flyteidl.core.Literal\"Q\n\003Tag\022\014\n\004" + - "name\030\001 \001(\t\022\023\n\013artifact_id\030\002 \001(\t\022\'\n\007datas" + - "et\030\003 \001(\0132\026.datacatalog.DatasetID\"m\n\010Meta" + - "data\0222\n\007key_map\030\001 \003(\0132!.datacatalog.Meta" + - "data.KeyMapEntry\032-\n\013KeyMapEntry\022\013\n\003key\030\001" + - " \001(\t\022\r\n\005value\030\002 \001(\t:\0028\001\"F\n\020FilterExpress" + - "ion\0222\n\007filters\030\001 \003(\0132!.datacatalog.Singl" + - "ePropertyFilter\"\211\003\n\024SinglePropertyFilter" + - "\0224\n\ntag_filter\030\001 \001(\0132\036.datacatalog.TagPr" + - "opertyFilterH\000\022@\n\020partition_filter\030\002 \001(\013" + - "2$.datacatalog.PartitionPropertyFilterH\000" + - "\022>\n\017artifact_filter\030\003 \001(\0132#.datacatalog." + - "ArtifactPropertyFilterH\000\022<\n\016dataset_filt" + - "er\030\004 \001(\0132\".datacatalog.DatasetPropertyFi" + - "lterH\000\022F\n\010operator\030\n \001(\01624.datacatalog.S" + - "inglePropertyFilter.ComparisonOperator\" " + - "\n\022ComparisonOperator\022\n\n\006EQUALS\020\000B\021\n\017prop" + - "erty_filter\";\n\026ArtifactPropertyFilter\022\025\n" + - "\013artifact_id\030\001 \001(\tH\000B\n\n\010property\"3\n\021TagP" + - "ropertyFilter\022\022\n\010tag_name\030\001 \001(\tH\000B\n\n\010pro" + - "perty\"S\n\027PartitionPropertyFilter\022,\n\007key_" + - "val\030\001 \001(\0132\031.datacatalog.KeyValuePairH\000B\n" + - "\n\010property\"*\n\014KeyValuePair\022\013\n\003key\030\001 \001(\t\022" + - "\r\n\005value\030\002 \001(\t\"k\n\025DatasetPropertyFilter\022" + - "\021\n\007project\030\001 \001(\tH\000\022\016\n\004name\030\002 \001(\tH\000\022\020\n\006do" + - "main\030\003 \001(\tH\000\022\021\n\007version\030\004 \001(\tH\000B\n\n\010prope" + - "rty\"\361\001\n\021PaginationOptions\022\r\n\005limit\030\001 \001(\r" + - "\022\r\n\005token\030\002 \001(\t\0227\n\007sortKey\030\003 \001(\0162&.datac" + - "atalog.PaginationOptions.SortKey\022;\n\tsort" + - "Order\030\004 \001(\0162(.datacatalog.PaginationOpti" + - "ons.SortOrder\"*\n\tSortOrder\022\016\n\nDESCENDING" + - "\020\000\022\r\n\tASCENDING\020\001\"\034\n\007SortKey\022\021\n\rCREATION" + - "_TIME\020\0002\211\007\n\013DataCatalog\022V\n\rCreateDataset" + - "\022!.datacatalog.CreateDatasetRequest\032\".da" + - "tacatalog.CreateDatasetResponse\022M\n\nGetDa" + - "taset\022\036.datacatalog.GetDatasetRequest\032\037." + - "datacatalog.GetDatasetResponse\022Y\n\016Create" + - "Artifact\022\".datacatalog.CreateArtifactReq" + - "uest\032#.datacatalog.CreateArtifactRespons" + - "e\022P\n\013GetArtifact\022\037.datacatalog.GetArtifa" + - "ctRequest\032 .datacatalog.GetArtifactRespo" + - "nse\022A\n\006AddTag\022\032.datacatalog.AddTagReques" + - "t\032\033.datacatalog.AddTagResponse\022V\n\rListAr" + - "tifacts\022!.datacatalog.ListArtifactsReque" + - "st\032\".datacatalog.ListArtifactsResponse\022S" + - "\n\014ListDatasets\022 .datacatalog.ListDataset" + - "sRequest\032!.datacatalog.ListDatasetsRespo" + - "nse\022k\n\024GetOrReserveArtifact\022(.datacatalo" + - "g.GetOrReserveArtifactRequest\032).datacata" + - "log.GetOrReserveArtifactResponse\022b\n\021Exte" + - "ndReservation\022%.datacatalog.ExtendReserv" + - "ationRequest\032&.datacatalog.ExtendReserva" + - "tionResponse\022e\n\022ReleaseReservation\022&.dat" + - "acatalog.ReleaseReservationRequest\032\'.dat" + - "acatalog.ReleaseReservationResponseb\006pro" + - "to3" + "oto\032\036google/protobuf/duration.proto\032\037goo" + + "gle/protobuf/timestamp.proto\"=\n\024CreateDa" + + "tasetRequest\022%\n\007dataset\030\001 \001(\0132\024.datacata" + + "log.Dataset\"\027\n\025CreateDatasetResponse\"<\n\021" + + "GetDatasetRequest\022\'\n\007dataset\030\001 \001(\0132\026.dat" + + "acatalog.DatasetID\";\n\022GetDatasetResponse" + + "\022%\n\007dataset\030\001 \001(\0132\024.datacatalog.Dataset\"" + + "x\n\022GetArtifactRequest\022\'\n\007dataset\030\001 \001(\0132\026" + + ".datacatalog.DatasetID\022\025\n\013artifact_id\030\002 " + + "\001(\tH\000\022\022\n\010tag_name\030\003 \001(\tH\000B\016\n\014query_handl" + + "e\">\n\023GetArtifactResponse\022\'\n\010artifact\030\001 \001" + + "(\0132\025.datacatalog.Artifact\"@\n\025CreateArtif" + + "actRequest\022\'\n\010artifact\030\001 \001(\0132\025.datacatal" + + "og.Artifact\"\030\n\026CreateArtifactResponse\".\n" + + "\rAddTagRequest\022\035\n\003tag\030\001 \001(\0132\020.datacatalo" + + "g.Tag\"\020\n\016AddTagResponse\"\242\001\n\024ListArtifact" + + "sRequest\022\'\n\007dataset\030\001 \001(\0132\026.datacatalog." + + "DatasetID\022-\n\006filter\030\002 \001(\0132\035.datacatalog." + + "FilterExpression\0222\n\npagination\030\003 \001(\0132\036.d" + + "atacatalog.PaginationOptions\"U\n\025ListArti" + + "factsResponse\022(\n\tartifacts\030\001 \003(\0132\025.datac" + + "atalog.Artifact\022\022\n\nnext_token\030\002 \001(\t\"x\n\023L" + + "istDatasetsRequest\022-\n\006filter\030\001 \001(\0132\035.dat" + + "acatalog.FilterExpression\0222\n\npagination\030" + + "\002 \001(\0132\036.datacatalog.PaginationOptions\"R\n" + + "\024ListDatasetsResponse\022&\n\010datasets\030\001 \003(\0132" + + "\024.datacatalog.Dataset\022\022\n\nnext_token\030\002 \001(" + + "\t\"M\n\rReservationID\022*\n\ndataset_id\030\001 \001(\0132\026" + + ".datacatalog.DatasetID\022\020\n\010tag_name\030\002 \001(\t" + + "\"\234\001\n\035GetOrExtendReservationRequest\0222\n\016re" + + "servation_id\030\001 \001(\0132\032.datacatalog.Reserva" + + "tionID\022\020\n\010owner_id\030\002 \001(\t\0225\n\022heartbeat_in" + + "terval\030\003 \001(\0132\031.google.protobuf.Duration\"" + + "\343\001\n\013Reservation\0222\n\016reservation_id\030\001 \001(\0132" + + "\032.datacatalog.ReservationID\022\020\n\010owner_id\030" + + "\002 \001(\t\0225\n\022heartbeat_interval\030\003 \001(\0132\031.goog" + + "le.protobuf.Duration\022.\n\nexpires_at\030\004 \001(\013" + + "2\032.google.protobuf.Timestamp\022\'\n\010metadata" + + "\030\006 \001(\0132\025.datacatalog.Metadata\"O\n\036GetOrEx" + + "tendReservationResponse\022-\n\013reservation\030\001" + + " \001(\0132\030.datacatalog.Reservation\"a\n\031Releas" + + "eReservationRequest\0222\n\016reservation_id\030\001 " + + "\001(\0132\032.datacatalog.ReservationID\022\020\n\010owner" + + "_id\030\002 \001(\t\"\034\n\032ReleaseReservationResponse\"" + + "m\n\007Dataset\022\"\n\002id\030\001 \001(\0132\026.datacatalog.Dat" + + "asetID\022\'\n\010metadata\030\002 \001(\0132\025.datacatalog.M" + + "etadata\022\025\n\rpartitionKeys\030\003 \003(\t\"\'\n\tPartit" + + "ion\022\013\n\003key\030\001 \001(\t\022\r\n\005value\030\002 \001(\t\"Y\n\tDatas" + + "etID\022\017\n\007project\030\001 \001(\t\022\014\n\004name\030\002 \001(\t\022\016\n\006d" + + "omain\030\003 \001(\t\022\017\n\007version\030\004 \001(\t\022\014\n\004UUID\030\005 \001" + + "(\t\"\215\002\n\010Artifact\022\n\n\002id\030\001 \001(\t\022\'\n\007dataset\030\002" + + " \001(\0132\026.datacatalog.DatasetID\022\'\n\004data\030\003 \003" + + "(\0132\031.datacatalog.ArtifactData\022\'\n\010metadat" + + "a\030\004 \001(\0132\025.datacatalog.Metadata\022*\n\npartit" + + "ions\030\005 \003(\0132\026.datacatalog.Partition\022\036\n\004ta" + + "gs\030\006 \003(\0132\020.datacatalog.Tag\022.\n\ncreated_at" + + "\030\007 \001(\0132\032.google.protobuf.Timestamp\"C\n\014Ar" + + "tifactData\022\014\n\004name\030\001 \001(\t\022%\n\005value\030\002 \001(\0132" + + "\026.flyteidl.core.Literal\"Q\n\003Tag\022\014\n\004name\030\001" + + " \001(\t\022\023\n\013artifact_id\030\002 \001(\t\022\'\n\007dataset\030\003 \001" + + "(\0132\026.datacatalog.DatasetID\"m\n\010Metadata\0222" + + "\n\007key_map\030\001 \003(\0132!.datacatalog.Metadata.K" + + "eyMapEntry\032-\n\013KeyMapEntry\022\013\n\003key\030\001 \001(\t\022\r" + + "\n\005value\030\002 \001(\t:\0028\001\"F\n\020FilterExpression\0222\n" + + "\007filters\030\001 \003(\0132!.datacatalog.SinglePrope" + + "rtyFilter\"\211\003\n\024SinglePropertyFilter\0224\n\nta" + + "g_filter\030\001 \001(\0132\036.datacatalog.TagProperty" + + "FilterH\000\022@\n\020partition_filter\030\002 \001(\0132$.dat" + + "acatalog.PartitionPropertyFilterH\000\022>\n\017ar" + + "tifact_filter\030\003 \001(\0132#.datacatalog.Artifa" + + "ctPropertyFilterH\000\022<\n\016dataset_filter\030\004 \001" + + "(\0132\".datacatalog.DatasetPropertyFilterH\000" + + "\022F\n\010operator\030\n \001(\01624.datacatalog.SingleP" + + "ropertyFilter.ComparisonOperator\" \n\022Comp" + + "arisonOperator\022\n\n\006EQUALS\020\000B\021\n\017property_f" + + "ilter\";\n\026ArtifactPropertyFilter\022\025\n\013artif" + + "act_id\030\001 \001(\tH\000B\n\n\010property\"3\n\021TagPropert" + + "yFilter\022\022\n\010tag_name\030\001 \001(\tH\000B\n\n\010property\"" + + "S\n\027PartitionPropertyFilter\022,\n\007key_val\030\001 " + + "\001(\0132\031.datacatalog.KeyValuePairH\000B\n\n\010prop" + + "erty\"*\n\014KeyValuePair\022\013\n\003key\030\001 \001(\t\022\r\n\005val" + + "ue\030\002 \001(\t\"k\n\025DatasetPropertyFilter\022\021\n\007pro" + + "ject\030\001 \001(\tH\000\022\016\n\004name\030\002 \001(\tH\000\022\020\n\006domain\030\003" + + " \001(\tH\000\022\021\n\007version\030\004 \001(\tH\000B\n\n\010property\"\361\001" + + "\n\021PaginationOptions\022\r\n\005limit\030\001 \001(\r\022\r\n\005to" + + "ken\030\002 \001(\t\0227\n\007sortKey\030\003 \001(\0162&.datacatalog" + + ".PaginationOptions.SortKey\022;\n\tsortOrder\030" + + "\004 \001(\0162(.datacatalog.PaginationOptions.So" + + "rtOrder\"*\n\tSortOrder\022\016\n\nDESCENDING\020\000\022\r\n\t" + + "ASCENDING\020\001\"\034\n\007SortKey\022\021\n\rCREATION_TIME\020" + + "\0002\253\006\n\013DataCatalog\022V\n\rCreateDataset\022!.dat" + + "acatalog.CreateDatasetRequest\032\".datacata" + + "log.CreateDatasetResponse\022M\n\nGetDataset\022" + + "\036.datacatalog.GetDatasetRequest\032\037.dataca" + + "talog.GetDatasetResponse\022Y\n\016CreateArtifa" + + "ct\022\".datacatalog.CreateArtifactRequest\032#" + + ".datacatalog.CreateArtifactResponse\022P\n\013G" + + "etArtifact\022\037.datacatalog.GetArtifactRequ" + + "est\032 .datacatalog.GetArtifactResponse\022A\n" + + "\006AddTag\022\032.datacatalog.AddTagRequest\032\033.da" + + "tacatalog.AddTagResponse\022V\n\rListArtifact" + + "s\022!.datacatalog.ListArtifactsRequest\032\".d" + + "atacatalog.ListArtifactsResponse\022S\n\014List" + + "Datasets\022 .datacatalog.ListDatasetsReque" + + "st\032!.datacatalog.ListDatasetsResponse\022q\n" + + "\026GetOrExtendReservation\022*.datacatalog.Ge" + + "tOrExtendReservationRequest\032+.datacatalo" + + "g.GetOrExtendReservationResponse\022e\n\022Rele" + + "aseReservation\022&.datacatalog.ReleaseRese" + + "rvationRequest\032\'.datacatalog.ReleaseRese" + + "rvationResponseb\006proto3" }; com.google.protobuf.Descriptors.FileDescriptor.InternalDescriptorAssigner assigner = new com.google.protobuf.Descriptors.FileDescriptor. InternalDescriptorAssigner() { @@ -31394,6 +30996,7 @@ public com.google.protobuf.ExtensionRegistry assignDescriptors( .internalBuildGeneratedFileFrom(descriptorData, new com.google.protobuf.Descriptors.FileDescriptor[] { flyteidl.core.Literals.getDescriptor(), + com.google.protobuf.DurationProto.getDescriptor(), com.google.protobuf.TimestampProto.getDescriptor(), }, assigner); internal_static_datacatalog_CreateDatasetRequest_descriptor = @@ -31480,86 +31083,80 @@ public com.google.protobuf.ExtensionRegistry assignDescriptors( com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_datacatalog_ListDatasetsResponse_descriptor, new java.lang.String[] { "Datasets", "NextToken", }); - internal_static_datacatalog_GetOrReserveArtifactRequest_descriptor = + internal_static_datacatalog_ReservationID_descriptor = getDescriptor().getMessageTypes().get(14); - internal_static_datacatalog_GetOrReserveArtifactRequest_fieldAccessorTable = new + internal_static_datacatalog_ReservationID_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( - internal_static_datacatalog_GetOrReserveArtifactRequest_descriptor, - new java.lang.String[] { "DatasetId", "TagName", "OwnerId", }); - internal_static_datacatalog_ReservationStatus_descriptor = + internal_static_datacatalog_ReservationID_descriptor, + new java.lang.String[] { "DatasetId", "TagName", }); + internal_static_datacatalog_GetOrExtendReservationRequest_descriptor = getDescriptor().getMessageTypes().get(15); - internal_static_datacatalog_ReservationStatus_fieldAccessorTable = new + internal_static_datacatalog_GetOrExtendReservationRequest_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( - internal_static_datacatalog_ReservationStatus_descriptor, - new java.lang.String[] { "State", "Metadata", "OwnerId", }); - internal_static_datacatalog_GetOrReserveArtifactResponse_descriptor = + internal_static_datacatalog_GetOrExtendReservationRequest_descriptor, + new java.lang.String[] { "ReservationId", "OwnerId", "HeartbeatInterval", }); + internal_static_datacatalog_Reservation_descriptor = getDescriptor().getMessageTypes().get(16); - internal_static_datacatalog_GetOrReserveArtifactResponse_fieldAccessorTable = new + internal_static_datacatalog_Reservation_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( - internal_static_datacatalog_GetOrReserveArtifactResponse_descriptor, - new java.lang.String[] { "Artifact", "ReservationStatus", "Value", }); - internal_static_datacatalog_ExtendReservationRequest_descriptor = + internal_static_datacatalog_Reservation_descriptor, + new java.lang.String[] { "ReservationId", "OwnerId", "HeartbeatInterval", "ExpiresAt", "Metadata", }); + internal_static_datacatalog_GetOrExtendReservationResponse_descriptor = getDescriptor().getMessageTypes().get(17); - internal_static_datacatalog_ExtendReservationRequest_fieldAccessorTable = new + internal_static_datacatalog_GetOrExtendReservationResponse_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( - internal_static_datacatalog_ExtendReservationRequest_descriptor, - new java.lang.String[] { "DatasetId", "TagName", "OwnerId", }); - internal_static_datacatalog_ExtendReservationResponse_descriptor = - getDescriptor().getMessageTypes().get(18); - internal_static_datacatalog_ExtendReservationResponse_fieldAccessorTable = new - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( - internal_static_datacatalog_ExtendReservationResponse_descriptor, - new java.lang.String[] { }); + internal_static_datacatalog_GetOrExtendReservationResponse_descriptor, + new java.lang.String[] { "Reservation", }); internal_static_datacatalog_ReleaseReservationRequest_descriptor = - getDescriptor().getMessageTypes().get(19); + getDescriptor().getMessageTypes().get(18); internal_static_datacatalog_ReleaseReservationRequest_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_datacatalog_ReleaseReservationRequest_descriptor, - new java.lang.String[] { "DatasetId", "TagName", "OwnerId", }); + new java.lang.String[] { "ReservationId", "OwnerId", }); internal_static_datacatalog_ReleaseReservationResponse_descriptor = - getDescriptor().getMessageTypes().get(20); + getDescriptor().getMessageTypes().get(19); internal_static_datacatalog_ReleaseReservationResponse_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_datacatalog_ReleaseReservationResponse_descriptor, new java.lang.String[] { }); internal_static_datacatalog_Dataset_descriptor = - getDescriptor().getMessageTypes().get(21); + getDescriptor().getMessageTypes().get(20); internal_static_datacatalog_Dataset_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_datacatalog_Dataset_descriptor, new java.lang.String[] { "Id", "Metadata", "PartitionKeys", }); internal_static_datacatalog_Partition_descriptor = - getDescriptor().getMessageTypes().get(22); + getDescriptor().getMessageTypes().get(21); internal_static_datacatalog_Partition_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_datacatalog_Partition_descriptor, new java.lang.String[] { "Key", "Value", }); internal_static_datacatalog_DatasetID_descriptor = - getDescriptor().getMessageTypes().get(23); + getDescriptor().getMessageTypes().get(22); internal_static_datacatalog_DatasetID_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_datacatalog_DatasetID_descriptor, new java.lang.String[] { "Project", "Name", "Domain", "Version", "UUID", }); internal_static_datacatalog_Artifact_descriptor = - getDescriptor().getMessageTypes().get(24); + getDescriptor().getMessageTypes().get(23); internal_static_datacatalog_Artifact_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_datacatalog_Artifact_descriptor, new java.lang.String[] { "Id", "Dataset", "Data", "Metadata", "Partitions", "Tags", "CreatedAt", }); internal_static_datacatalog_ArtifactData_descriptor = - getDescriptor().getMessageTypes().get(25); + getDescriptor().getMessageTypes().get(24); internal_static_datacatalog_ArtifactData_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_datacatalog_ArtifactData_descriptor, new java.lang.String[] { "Name", "Value", }); internal_static_datacatalog_Tag_descriptor = - getDescriptor().getMessageTypes().get(26); + getDescriptor().getMessageTypes().get(25); internal_static_datacatalog_Tag_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_datacatalog_Tag_descriptor, new java.lang.String[] { "Name", "ArtifactId", "Dataset", }); internal_static_datacatalog_Metadata_descriptor = - getDescriptor().getMessageTypes().get(27); + getDescriptor().getMessageTypes().get(26); internal_static_datacatalog_Metadata_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_datacatalog_Metadata_descriptor, @@ -31571,54 +31168,55 @@ public com.google.protobuf.ExtensionRegistry assignDescriptors( internal_static_datacatalog_Metadata_KeyMapEntry_descriptor, new java.lang.String[] { "Key", "Value", }); internal_static_datacatalog_FilterExpression_descriptor = - getDescriptor().getMessageTypes().get(28); + getDescriptor().getMessageTypes().get(27); internal_static_datacatalog_FilterExpression_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_datacatalog_FilterExpression_descriptor, new java.lang.String[] { "Filters", }); internal_static_datacatalog_SinglePropertyFilter_descriptor = - getDescriptor().getMessageTypes().get(29); + getDescriptor().getMessageTypes().get(28); internal_static_datacatalog_SinglePropertyFilter_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_datacatalog_SinglePropertyFilter_descriptor, new java.lang.String[] { "TagFilter", "PartitionFilter", "ArtifactFilter", "DatasetFilter", "Operator", "PropertyFilter", }); internal_static_datacatalog_ArtifactPropertyFilter_descriptor = - getDescriptor().getMessageTypes().get(30); + getDescriptor().getMessageTypes().get(29); internal_static_datacatalog_ArtifactPropertyFilter_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_datacatalog_ArtifactPropertyFilter_descriptor, new java.lang.String[] { "ArtifactId", "Property", }); internal_static_datacatalog_TagPropertyFilter_descriptor = - getDescriptor().getMessageTypes().get(31); + getDescriptor().getMessageTypes().get(30); internal_static_datacatalog_TagPropertyFilter_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_datacatalog_TagPropertyFilter_descriptor, new java.lang.String[] { "TagName", "Property", }); internal_static_datacatalog_PartitionPropertyFilter_descriptor = - getDescriptor().getMessageTypes().get(32); + getDescriptor().getMessageTypes().get(31); internal_static_datacatalog_PartitionPropertyFilter_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_datacatalog_PartitionPropertyFilter_descriptor, new java.lang.String[] { "KeyVal", "Property", }); internal_static_datacatalog_KeyValuePair_descriptor = - getDescriptor().getMessageTypes().get(33); + getDescriptor().getMessageTypes().get(32); internal_static_datacatalog_KeyValuePair_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_datacatalog_KeyValuePair_descriptor, new java.lang.String[] { "Key", "Value", }); internal_static_datacatalog_DatasetPropertyFilter_descriptor = - getDescriptor().getMessageTypes().get(34); + getDescriptor().getMessageTypes().get(33); internal_static_datacatalog_DatasetPropertyFilter_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_datacatalog_DatasetPropertyFilter_descriptor, new java.lang.String[] { "Project", "Name", "Domain", "Version", "Property", }); internal_static_datacatalog_PaginationOptions_descriptor = - getDescriptor().getMessageTypes().get(35); + getDescriptor().getMessageTypes().get(34); internal_static_datacatalog_PaginationOptions_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_datacatalog_PaginationOptions_descriptor, new java.lang.String[] { "Limit", "Token", "SortKey", "SortOrder", }); flyteidl.core.Literals.getDescriptor(); + com.google.protobuf.DurationProto.getDescriptor(); com.google.protobuf.TimestampProto.getDescriptor(); } diff --git a/gen/pb-java/flyteidl/core/Catalog.java b/gen/pb-java/flyteidl/core/Catalog.java index 69b2825ae..c38498d9a 100644 --- a/gen/pb-java/flyteidl/core/Catalog.java +++ b/gen/pb-java/flyteidl/core/Catalog.java @@ -2231,6 +2231,586 @@ public flyteidl.core.Catalog.CatalogMetadata getDefaultInstanceForType() { } + public interface CatalogReservationOrBuilder extends + // @@protoc_insertion_point(interface_extends:flyteidl.core.CatalogReservation) + com.google.protobuf.MessageOrBuilder { + } + /** + * Protobuf type {@code flyteidl.core.CatalogReservation} + */ + public static final class CatalogReservation extends + com.google.protobuf.GeneratedMessageV3 implements + // @@protoc_insertion_point(message_implements:flyteidl.core.CatalogReservation) + CatalogReservationOrBuilder { + private static final long serialVersionUID = 0L; + // Use CatalogReservation.newBuilder() to construct. + private CatalogReservation(com.google.protobuf.GeneratedMessageV3.Builder builder) { + super(builder); + } + private CatalogReservation() { + } + + @java.lang.Override + public final com.google.protobuf.UnknownFieldSet + getUnknownFields() { + return this.unknownFields; + } + private CatalogReservation( + 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.core.Catalog.internal_static_flyteidl_core_CatalogReservation_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return flyteidl.core.Catalog.internal_static_flyteidl_core_CatalogReservation_fieldAccessorTable + .ensureFieldAccessorsInitialized( + flyteidl.core.Catalog.CatalogReservation.class, flyteidl.core.Catalog.CatalogReservation.Builder.class); + } + + /** + *
+     * Indicates the status of a catalog reservation operation.
+     * 
+ * + * Protobuf enum {@code flyteidl.core.CatalogReservation.Status} + */ + public enum Status + implements com.google.protobuf.ProtocolMessageEnum { + /** + *
+       * Used to indicate that reservations are disabled
+       * 
+ * + * RESERVATION_DISABLED = 0; + */ + RESERVATION_DISABLED(0), + /** + *
+       * Used to indicate that a reservation was successfully acquired or extended
+       * 
+ * + * RESERVATION_ACQUIRED = 1; + */ + RESERVATION_ACQUIRED(1), + /** + *
+       * Used to indicate that an active reservation currently exists
+       * 
+ * + * RESERVATION_EXISTS = 2; + */ + RESERVATION_EXISTS(2), + /** + *
+       * Used to indicate that the reservation has been successfully released
+       * 
+ * + * RESERVATION_RELEASED = 3; + */ + RESERVATION_RELEASED(3), + /** + *
+       * Used to indicate that a reservation operation resulted in failure
+       * 
+ * + * RESERVATION_FAILURE = 4; + */ + RESERVATION_FAILURE(4), + UNRECOGNIZED(-1), + ; + + /** + *
+       * Used to indicate that reservations are disabled
+       * 
+ * + * RESERVATION_DISABLED = 0; + */ + public static final int RESERVATION_DISABLED_VALUE = 0; + /** + *
+       * Used to indicate that a reservation was successfully acquired or extended
+       * 
+ * + * RESERVATION_ACQUIRED = 1; + */ + public static final int RESERVATION_ACQUIRED_VALUE = 1; + /** + *
+       * Used to indicate that an active reservation currently exists
+       * 
+ * + * RESERVATION_EXISTS = 2; + */ + public static final int RESERVATION_EXISTS_VALUE = 2; + /** + *
+       * Used to indicate that the reservation has been successfully released
+       * 
+ * + * RESERVATION_RELEASED = 3; + */ + public static final int RESERVATION_RELEASED_VALUE = 3; + /** + *
+       * Used to indicate that a reservation operation resulted in failure
+       * 
+ * + * RESERVATION_FAILURE = 4; + */ + public static final int RESERVATION_FAILURE_VALUE = 4; + + + 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 Status valueOf(int value) { + return forNumber(value); + } + + public static Status forNumber(int value) { + switch (value) { + case 0: return RESERVATION_DISABLED; + case 1: return RESERVATION_ACQUIRED; + case 2: return RESERVATION_EXISTS; + case 3: return RESERVATION_RELEASED; + case 4: return RESERVATION_FAILURE; + default: return null; + } + } + + public static com.google.protobuf.Internal.EnumLiteMap + internalGetValueMap() { + return internalValueMap; + } + private static final com.google.protobuf.Internal.EnumLiteMap< + Status> internalValueMap = + new com.google.protobuf.Internal.EnumLiteMap() { + public Status findValueByNumber(int number) { + return Status.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.core.Catalog.CatalogReservation.getDescriptor().getEnumTypes().get(0); + } + + private static final Status[] VALUES = values(); + + public static Status 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 Status(int value) { + this.value = value; + } + + // @@protoc_insertion_point(enum_scope:flyteidl.core.CatalogReservation.Status) + } + + 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.core.Catalog.CatalogReservation)) { + return super.equals(obj); + } + flyteidl.core.Catalog.CatalogReservation other = (flyteidl.core.Catalog.CatalogReservation) 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.core.Catalog.CatalogReservation parseFrom( + java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static flyteidl.core.Catalog.CatalogReservation parseFrom( + java.nio.ByteBuffer data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static flyteidl.core.Catalog.CatalogReservation parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static flyteidl.core.Catalog.CatalogReservation parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static flyteidl.core.Catalog.CatalogReservation parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static flyteidl.core.Catalog.CatalogReservation parseFrom( + byte[] data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static flyteidl.core.Catalog.CatalogReservation parseFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static flyteidl.core.Catalog.CatalogReservation 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.core.Catalog.CatalogReservation parseDelimitedFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input); + } + public static flyteidl.core.Catalog.CatalogReservation 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.core.Catalog.CatalogReservation parseFrom( + com.google.protobuf.CodedInputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static flyteidl.core.Catalog.CatalogReservation 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.core.Catalog.CatalogReservation 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; + } + /** + * Protobuf type {@code flyteidl.core.CatalogReservation} + */ + public static final class Builder extends + com.google.protobuf.GeneratedMessageV3.Builder implements + // @@protoc_insertion_point(builder_implements:flyteidl.core.CatalogReservation) + flyteidl.core.Catalog.CatalogReservationOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return flyteidl.core.Catalog.internal_static_flyteidl_core_CatalogReservation_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return flyteidl.core.Catalog.internal_static_flyteidl_core_CatalogReservation_fieldAccessorTable + .ensureFieldAccessorsInitialized( + flyteidl.core.Catalog.CatalogReservation.class, flyteidl.core.Catalog.CatalogReservation.Builder.class); + } + + // Construct using flyteidl.core.Catalog.CatalogReservation.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.core.Catalog.internal_static_flyteidl_core_CatalogReservation_descriptor; + } + + @java.lang.Override + public flyteidl.core.Catalog.CatalogReservation getDefaultInstanceForType() { + return flyteidl.core.Catalog.CatalogReservation.getDefaultInstance(); + } + + @java.lang.Override + public flyteidl.core.Catalog.CatalogReservation build() { + flyteidl.core.Catalog.CatalogReservation result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public flyteidl.core.Catalog.CatalogReservation buildPartial() { + flyteidl.core.Catalog.CatalogReservation result = new flyteidl.core.Catalog.CatalogReservation(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.core.Catalog.CatalogReservation) { + return mergeFrom((flyteidl.core.Catalog.CatalogReservation)other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(flyteidl.core.Catalog.CatalogReservation other) { + if (other == flyteidl.core.Catalog.CatalogReservation.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.core.Catalog.CatalogReservation parsedMessage = null; + try { + parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + parsedMessage = (flyteidl.core.Catalog.CatalogReservation) 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.core.CatalogReservation) + } + + // @@protoc_insertion_point(class_scope:flyteidl.core.CatalogReservation) + private static final flyteidl.core.Catalog.CatalogReservation DEFAULT_INSTANCE; + static { + DEFAULT_INSTANCE = new flyteidl.core.Catalog.CatalogReservation(); + } + + public static flyteidl.core.Catalog.CatalogReservation getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser + PARSER = new com.google.protobuf.AbstractParser() { + @java.lang.Override + public CatalogReservation parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return new CatalogReservation(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.core.Catalog.CatalogReservation getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + + } + private static final com.google.protobuf.Descriptors.Descriptor internal_static_flyteidl_core_CatalogArtifactTag_descriptor; private static final @@ -2241,6 +2821,11 @@ public flyteidl.core.Catalog.CatalogMetadata getDefaultInstanceForType() { private static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internal_static_flyteidl_core_CatalogMetadata_fieldAccessorTable; + private static final com.google.protobuf.Descriptors.Descriptor + internal_static_flyteidl_core_CatalogReservation_descriptor; + private static final + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internal_static_flyteidl_core_CatalogReservation_fieldAccessorTable; public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { @@ -2258,12 +2843,16 @@ public flyteidl.core.Catalog.CatalogMetadata getDefaultInstanceForType() { "\0227\n\014artifact_tag\030\002 \001(\0132!.flyteidl.core.C" + "atalogArtifactTag\022G\n\025source_task_executi" + "on\030\003 \001(\0132&.flyteidl.core.TaskExecutionId" + - "entifierH\000B\022\n\020source_execution*\215\001\n\022Catal" + - "ogCacheStatus\022\022\n\016CACHE_DISABLED\020\000\022\016\n\nCAC" + - "HE_MISS\020\001\022\r\n\tCACHE_HIT\020\002\022\023\n\017CACHE_POPULA" + - "TED\020\003\022\030\n\024CACHE_LOOKUP_FAILURE\020\004\022\025\n\021CACHE" + - "_PUT_FAILURE\020\005B6Z4github.com/flyteorg/fl" + - "yteidl/gen/pb-go/flyteidl/coreb\006proto3" + "entifierH\000B\022\n\020source_execution\"\236\001\n\022Catal" + + "ogReservation\"\207\001\n\006Status\022\030\n\024RESERVATION_" + + "DISABLED\020\000\022\030\n\024RESERVATION_ACQUIRED\020\001\022\026\n\022" + + "RESERVATION_EXISTS\020\002\022\030\n\024RESERVATION_RELE" + + "ASED\020\003\022\027\n\023RESERVATION_FAILURE\020\004*\215\001\n\022Cata" + + "logCacheStatus\022\022\n\016CACHE_DISABLED\020\000\022\016\n\nCA" + + "CHE_MISS\020\001\022\r\n\tCACHE_HIT\020\002\022\023\n\017CACHE_POPUL" + + "ATED\020\003\022\030\n\024CACHE_LOOKUP_FAILURE\020\004\022\025\n\021CACH" + + "E_PUT_FAILURE\020\005B6Z4github.com/flyteorg/f" + + "lyteidl/gen/pb-go/flyteidl/coreb\006proto3" }; com.google.protobuf.Descriptors.FileDescriptor.InternalDescriptorAssigner assigner = new com.google.protobuf.Descriptors.FileDescriptor. InternalDescriptorAssigner() { @@ -2290,6 +2879,12 @@ public com.google.protobuf.ExtensionRegistry assignDescriptors( com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_flyteidl_core_CatalogMetadata_descriptor, new java.lang.String[] { "DatasetId", "ArtifactTag", "SourceTaskExecution", "SourceExecution", }); + internal_static_flyteidl_core_CatalogReservation_descriptor = + getDescriptor().getMessageTypes().get(2); + internal_static_flyteidl_core_CatalogReservation_fieldAccessorTable = new + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + internal_static_flyteidl_core_CatalogReservation_descriptor, + new java.lang.String[] { }); flyteidl.core.IdentifierOuterClass.getDescriptor(); } diff --git a/gen/pb-java/flyteidl/core/Tasks.java b/gen/pb-java/flyteidl/core/Tasks.java index 2edf576ad..605f76c18 100644 --- a/gen/pb-java/flyteidl/core/Tasks.java +++ b/gen/pb-java/flyteidl/core/Tasks.java @@ -3436,6 +3436,15 @@ public interface TaskMetadataOrBuilder extends */ boolean getInterruptible(); + /** + *
+     * Indicates whether the system should attempt to execute discoverable instances in serial to avoid duplicate work
+     * 
+ * + * bool cache_serializable = 9; + */ + boolean getCacheSerializable(); + public flyteidl.core.Tasks.TaskMetadata.InterruptibleValueCase getInterruptibleValueCase(); } /** @@ -3544,6 +3553,11 @@ private TaskMetadata( interruptibleValue_ = input.readBool(); break; } + case 72: { + + cacheSerializable_ = input.readBool(); + break; + } default: { if (!parseUnknownField( input, unknownFields, extensionRegistry, tag)) { @@ -3821,6 +3835,19 @@ public boolean getInterruptible() { return false; } + public static final int CACHE_SERIALIZABLE_FIELD_NUMBER = 9; + private boolean cacheSerializable_; + /** + *
+     * Indicates whether the system should attempt to execute discoverable instances in serial to avoid duplicate work
+     * 
+ * + * bool cache_serializable = 9; + */ + public boolean getCacheSerializable() { + return cacheSerializable_; + } + private byte memoizedIsInitialized = -1; @java.lang.Override public final boolean isInitialized() { @@ -3857,6 +3884,9 @@ public void writeTo(com.google.protobuf.CodedOutputStream output) output.writeBool( 8, (boolean)((java.lang.Boolean) interruptibleValue_)); } + if (cacheSerializable_ != false) { + output.writeBool(9, cacheSerializable_); + } unknownFields.writeTo(output); } @@ -3893,6 +3923,10 @@ public int getSerializedSize() { .computeBoolSize( 8, (boolean)((java.lang.Boolean) interruptibleValue_)); } + if (cacheSerializable_ != false) { + size += com.google.protobuf.CodedOutputStream + .computeBoolSize(9, cacheSerializable_); + } size += unknownFields.getSerializedSize(); memoizedSize = size; return size; @@ -3929,6 +3963,8 @@ public boolean equals(final java.lang.Object obj) { .equals(other.getDiscoveryVersion())) return false; if (!getDeprecatedErrorMessage() .equals(other.getDeprecatedErrorMessage())) return false; + if (getCacheSerializable() + != other.getCacheSerializable()) return false; if (!getInterruptibleValueCase().equals(other.getInterruptibleValueCase())) return false; switch (interruptibleValueCase_) { case 8: @@ -3968,6 +4004,9 @@ public int hashCode() { hash = (53 * hash) + getDiscoveryVersion().hashCode(); hash = (37 * hash) + DEPRECATED_ERROR_MESSAGE_FIELD_NUMBER; hash = (53 * hash) + getDeprecatedErrorMessage().hashCode(); + hash = (37 * hash) + CACHE_SERIALIZABLE_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean( + getCacheSerializable()); switch (interruptibleValueCase_) { case 8: hash = (37 * hash) + INTERRUPTIBLE_FIELD_NUMBER; @@ -4138,6 +4177,8 @@ public Builder clear() { deprecatedErrorMessage_ = ""; + cacheSerializable_ = false; + interruptibleValueCase_ = 0; interruptibleValue_ = null; return this; @@ -4187,6 +4228,7 @@ public flyteidl.core.Tasks.TaskMetadata buildPartial() { if (interruptibleValueCase_ == 8) { result.interruptibleValue_ = interruptibleValue_; } + result.cacheSerializable_ = cacheSerializable_; result.interruptibleValueCase_ = interruptibleValueCase_; onBuilt(); return result; @@ -4256,6 +4298,9 @@ public Builder mergeFrom(flyteidl.core.Tasks.TaskMetadata other) { deprecatedErrorMessage_ = other.deprecatedErrorMessage_; onChanged(); } + if (other.getCacheSerializable() != false) { + setCacheSerializable(other.getCacheSerializable()); + } switch (other.getInterruptibleValueCase()) { case INTERRUPTIBLE: { setInterruptible(other.getInterruptible()); @@ -5018,6 +5063,44 @@ public Builder clearInterruptible() { } return this; } + + private boolean cacheSerializable_ ; + /** + *
+       * Indicates whether the system should attempt to execute discoverable instances in serial to avoid duplicate work
+       * 
+ * + * bool cache_serializable = 9; + */ + public boolean getCacheSerializable() { + return cacheSerializable_; + } + /** + *
+       * Indicates whether the system should attempt to execute discoverable instances in serial to avoid duplicate work
+       * 
+ * + * bool cache_serializable = 9; + */ + public Builder setCacheSerializable(boolean value) { + + cacheSerializable_ = value; + onChanged(); + return this; + } + /** + *
+       * Indicates whether the system should attempt to execute discoverable instances in serial to avoid duplicate work
+       * 
+ * + * bool cache_serializable = 9; + */ + public Builder clearCacheSerializable() { + + cacheSerializable_ = false; + onChanged(); + return this; + } @java.lang.Override public final Builder setUnknownFields( final com.google.protobuf.UnknownFieldSet unknownFields) { @@ -17604,66 +17687,67 @@ public flyteidl.core.Tasks.Sql getDefaultInstanceForType() { "ype\030\001 \001(\0162*.flyteidl.core.RuntimeMetadat" + "a.RuntimeType\022\017\n\007version\030\002 \001(\t\022\016\n\006flavor" + "\030\003 \001(\t\"\'\n\013RuntimeType\022\t\n\005OTHER\020\000\022\r\n\tFLYT" + - "E_SDK\020\001\"\235\002\n\014TaskMetadata\022\024\n\014discoverable" + + "E_SDK\020\001\"\271\002\n\014TaskMetadata\022\024\n\014discoverable" + "\030\001 \001(\010\022/\n\007runtime\030\002 \001(\0132\036.flyteidl.core." + "RuntimeMetadata\022*\n\007timeout\030\004 \001(\0132\031.googl" + "e.protobuf.Duration\022-\n\007retries\030\005 \001(\0132\034.f" + "lyteidl.core.RetryStrategy\022\031\n\021discovery_" + "version\030\006 \001(\t\022 \n\030deprecated_error_messag" + - "e\030\007 \001(\t\022\027\n\rinterruptible\030\010 \001(\010H\000B\025\n\023inte" + - "rruptible_value\"\220\004\n\014TaskTemplate\022%\n\002id\030\001" + - " \001(\0132\031.flyteidl.core.Identifier\022\014\n\004type\030" + - "\002 \001(\t\022-\n\010metadata\030\003 \001(\0132\033.flyteidl.core." + - "TaskMetadata\0220\n\tinterface\030\004 \001(\0132\035.flytei" + - "dl.core.TypedInterface\022\'\n\006custom\030\005 \001(\0132\027" + - ".google.protobuf.Struct\022-\n\tcontainer\030\006 \001" + - "(\0132\030.flyteidl.core.ContainerH\000\022(\n\007k8s_po" + - "d\030\021 \001(\0132\025.flyteidl.core.K8sPodH\000\022!\n\003sql\030" + - "\022 \001(\0132\022.flyteidl.core.SqlH\000\022\031\n\021task_type" + - "_version\030\007 \001(\005\0228\n\020security_context\030\010 \001(\013" + - "2\036.flyteidl.core.SecurityContext\0227\n\006conf" + - "ig\030\020 \003(\0132\'.flyteidl.core.TaskTemplate.Co" + - "nfigEntry\032-\n\013ConfigEntry\022\013\n\003key\030\001 \001(\t\022\r\n" + - "\005value\030\002 \001(\t:\0028\001B\010\n\006target\"\'\n\rContainerP" + - "ort\022\026\n\016container_port\030\001 \001(\r\"\255\003\n\tContaine" + - "r\022\r\n\005image\030\001 \001(\t\022\017\n\007command\030\002 \003(\t\022\014\n\004arg" + - "s\030\003 \003(\t\022+\n\tresources\030\004 \001(\0132\030.flyteidl.co" + - "re.Resources\022(\n\003env\030\005 \003(\0132\033.flyteidl.cor" + - "e.KeyValuePair\022/\n\006config\030\006 \003(\0132\033.flyteid" + - "l.core.KeyValuePairB\002\030\001\022+\n\005ports\030\007 \003(\0132\034" + - ".flyteidl.core.ContainerPort\0225\n\013data_con" + - "fig\030\t \001(\0132 .flyteidl.core.DataLoadingCon" + - "fig\022;\n\014architecture\030\n \001(\0162%.flyteidl.cor" + - "e.Container.Architecture\"I\n\014Architecture" + - "\022\013\n\007UNKNOWN\020\000\022\t\n\005AMD64\020\001\022\t\n\005ARM64\020\002\022\n\n\006A" + - "RM_V6\020\003\022\n\n\006ARM_V7\020\004\"\233\002\n\nIOStrategy\022=\n\rdo" + - "wnload_mode\030\001 \001(\0162&.flyteidl.core.IOStra" + - "tegy.DownloadMode\0229\n\013upload_mode\030\002 \001(\0162$" + - ".flyteidl.core.IOStrategy.UploadMode\"L\n\014" + - "DownloadMode\022\022\n\016DOWNLOAD_EAGER\020\000\022\023\n\017DOWN" + - "LOAD_STREAM\020\001\022\023\n\017DO_NOT_DOWNLOAD\020\002\"E\n\nUp" + - "loadMode\022\022\n\016UPLOAD_ON_EXIT\020\000\022\020\n\014UPLOAD_E" + - "AGER\020\001\022\021\n\rDO_NOT_UPLOAD\020\002\"\363\001\n\021DataLoadin" + - "gConfig\022\017\n\007enabled\030\001 \001(\010\022\022\n\ninput_path\030\002" + - " \001(\t\022\023\n\013output_path\030\003 \001(\t\022A\n\006format\030\004 \001(" + - "\01621.flyteidl.core.DataLoadingConfig.Lite" + - "ralMapFormat\022.\n\013io_strategy\030\005 \001(\0132\031.flyt" + - "eidl.core.IOStrategy\"1\n\020LiteralMapFormat" + - "\022\010\n\004JSON\020\000\022\010\n\004YAML\020\001\022\t\n\005PROTO\020\002\"g\n\006K8sPo" + - "d\0222\n\010metadata\030\001 \001(\0132 .flyteidl.core.K8sO" + - "bjectMetadata\022)\n\010pod_spec\030\002 \001(\0132\027.google" + - ".protobuf.Struct\"\374\001\n\021K8sObjectMetadata\022<" + - "\n\006labels\030\001 \003(\0132,.flyteidl.core.K8sObject" + - "Metadata.LabelsEntry\022F\n\013annotations\030\002 \003(" + - "\01321.flyteidl.core.K8sObjectMetadata.Anno" + - "tationsEntry\032-\n\013LabelsEntry\022\013\n\003key\030\001 \001(\t" + - "\022\r\n\005value\030\002 \001(\t:\0028\001\0322\n\020AnnotationsEntry\022" + - "\013\n\003key\030\001 \001(\t\022\r\n\005value\030\002 \001(\t:\0028\001\"~\n\003Sql\022\021" + - "\n\tstatement\030\001 \001(\t\022+\n\007dialect\030\002 \001(\0162\032.fly" + - "teidl.core.Sql.Dialect\"7\n\007Dialect\022\r\n\tUND" + - "EFINED\020\000\022\010\n\004ANSI\020\001\022\010\n\004HIVE\020\002\022\t\n\005OTHER\020\003B" + - "6Z4github.com/flyteorg/flyteidl/gen/pb-g" + - "o/flyteidl/coreb\006proto3" + "e\030\007 \001(\t\022\027\n\rinterruptible\030\010 \001(\010H\000\022\032\n\022cach" + + "e_serializable\030\t \001(\010B\025\n\023interruptible_va" + + "lue\"\220\004\n\014TaskTemplate\022%\n\002id\030\001 \001(\0132\031.flyte" + + "idl.core.Identifier\022\014\n\004type\030\002 \001(\t\022-\n\010met" + + "adata\030\003 \001(\0132\033.flyteidl.core.TaskMetadata" + + "\0220\n\tinterface\030\004 \001(\0132\035.flyteidl.core.Type" + + "dInterface\022\'\n\006custom\030\005 \001(\0132\027.google.prot" + + "obuf.Struct\022-\n\tcontainer\030\006 \001(\0132\030.flyteid" + + "l.core.ContainerH\000\022(\n\007k8s_pod\030\021 \001(\0132\025.fl" + + "yteidl.core.K8sPodH\000\022!\n\003sql\030\022 \001(\0132\022.flyt" + + "eidl.core.SqlH\000\022\031\n\021task_type_version\030\007 \001" + + "(\005\0228\n\020security_context\030\010 \001(\0132\036.flyteidl." + + "core.SecurityContext\0227\n\006config\030\020 \003(\0132\'.f" + + "lyteidl.core.TaskTemplate.ConfigEntry\032-\n" + + "\013ConfigEntry\022\013\n\003key\030\001 \001(\t\022\r\n\005value\030\002 \001(\t" + + ":\0028\001B\010\n\006target\"\'\n\rContainerPort\022\026\n\016conta" + + "iner_port\030\001 \001(\r\"\255\003\n\tContainer\022\r\n\005image\030\001" + + " \001(\t\022\017\n\007command\030\002 \003(\t\022\014\n\004args\030\003 \003(\t\022+\n\tr" + + "esources\030\004 \001(\0132\030.flyteidl.core.Resources" + + "\022(\n\003env\030\005 \003(\0132\033.flyteidl.core.KeyValuePa" + + "ir\022/\n\006config\030\006 \003(\0132\033.flyteidl.core.KeyVa" + + "luePairB\002\030\001\022+\n\005ports\030\007 \003(\0132\034.flyteidl.co" + + "re.ContainerPort\0225\n\013data_config\030\t \001(\0132 ." + + "flyteidl.core.DataLoadingConfig\022;\n\014archi" + + "tecture\030\n \001(\0162%.flyteidl.core.Container." + + "Architecture\"I\n\014Architecture\022\013\n\007UNKNOWN\020" + + "\000\022\t\n\005AMD64\020\001\022\t\n\005ARM64\020\002\022\n\n\006ARM_V6\020\003\022\n\n\006A" + + "RM_V7\020\004\"\233\002\n\nIOStrategy\022=\n\rdownload_mode\030" + + "\001 \001(\0162&.flyteidl.core.IOStrategy.Downloa" + + "dMode\0229\n\013upload_mode\030\002 \001(\0162$.flyteidl.co" + + "re.IOStrategy.UploadMode\"L\n\014DownloadMode" + + "\022\022\n\016DOWNLOAD_EAGER\020\000\022\023\n\017DOWNLOAD_STREAM\020" + + "\001\022\023\n\017DO_NOT_DOWNLOAD\020\002\"E\n\nUploadMode\022\022\n\016" + + "UPLOAD_ON_EXIT\020\000\022\020\n\014UPLOAD_EAGER\020\001\022\021\n\rDO" + + "_NOT_UPLOAD\020\002\"\363\001\n\021DataLoadingConfig\022\017\n\007e" + + "nabled\030\001 \001(\010\022\022\n\ninput_path\030\002 \001(\t\022\023\n\013outp" + + "ut_path\030\003 \001(\t\022A\n\006format\030\004 \001(\01621.flyteidl" + + ".core.DataLoadingConfig.LiteralMapFormat" + + "\022.\n\013io_strategy\030\005 \001(\0132\031.flyteidl.core.IO" + + "Strategy\"1\n\020LiteralMapFormat\022\010\n\004JSON\020\000\022\010" + + "\n\004YAML\020\001\022\t\n\005PROTO\020\002\"g\n\006K8sPod\0222\n\010metadat" + + "a\030\001 \001(\0132 .flyteidl.core.K8sObjectMetadat" + + "a\022)\n\010pod_spec\030\002 \001(\0132\027.google.protobuf.St" + + "ruct\"\374\001\n\021K8sObjectMetadata\022<\n\006labels\030\001 \003" + + "(\0132,.flyteidl.core.K8sObjectMetadata.Lab" + + "elsEntry\022F\n\013annotations\030\002 \003(\01321.flyteidl" + + ".core.K8sObjectMetadata.AnnotationsEntry" + + "\032-\n\013LabelsEntry\022\013\n\003key\030\001 \001(\t\022\r\n\005value\030\002 " + + "\001(\t:\0028\001\0322\n\020AnnotationsEntry\022\013\n\003key\030\001 \001(\t" + + "\022\r\n\005value\030\002 \001(\t:\0028\001\"~\n\003Sql\022\021\n\tstatement\030" + + "\001 \001(\t\022+\n\007dialect\030\002 \001(\0162\032.flyteidl.core.S" + + "ql.Dialect\"7\n\007Dialect\022\r\n\tUNDEFINED\020\000\022\010\n\004" + + "ANSI\020\001\022\010\n\004HIVE\020\002\022\t\n\005OTHER\020\003B6Z4github.co" + + "m/flyteorg/flyteidl/gen/pb-go/flyteidl/c" + + "oreb\006proto3" }; com.google.protobuf.Descriptors.FileDescriptor.InternalDescriptorAssigner assigner = new com.google.protobuf.Descriptors.FileDescriptor. InternalDescriptorAssigner() { @@ -17706,7 +17790,7 @@ public com.google.protobuf.ExtensionRegistry assignDescriptors( internal_static_flyteidl_core_TaskMetadata_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_flyteidl_core_TaskMetadata_descriptor, - new java.lang.String[] { "Discoverable", "Runtime", "Timeout", "Retries", "DiscoveryVersion", "DeprecatedErrorMessage", "Interruptible", "InterruptibleValue", }); + new java.lang.String[] { "Discoverable", "Runtime", "Timeout", "Retries", "DiscoveryVersion", "DeprecatedErrorMessage", "Interruptible", "CacheSerializable", "InterruptibleValue", }); internal_static_flyteidl_core_TaskTemplate_descriptor = getDescriptor().getMessageTypes().get(3); internal_static_flyteidl_core_TaskTemplate_fieldAccessorTable = new diff --git a/gen/pb-java/flyteidl/event/Event.java b/gen/pb-java/flyteidl/event/Event.java index 1ff86824d..8273c4216 100644 --- a/gen/pb-java/flyteidl/event/Event.java +++ b/gen/pb-java/flyteidl/event/Event.java @@ -6415,6 +6415,23 @@ public interface TaskNodeMetadataOrBuilder extends */ flyteidl.core.Catalog.CatalogMetadataOrBuilder getCatalogKeyOrBuilder(); + /** + *
+     * Captures the status of cache reservations for this execution.
+     * 
+ * + * .flyteidl.core.CatalogReservation.Status reservation_status = 3; + */ + int getReservationStatusValue(); + /** + *
+     * Captures the status of cache reservations for this execution.
+     * 
+ * + * .flyteidl.core.CatalogReservation.Status reservation_status = 3; + */ + flyteidl.core.Catalog.CatalogReservation.Status getReservationStatus(); + /** *
      * In the case this task launched a dynamic workflow we capture its structure here.
@@ -6454,6 +6471,7 @@ private TaskNodeMetadata(com.google.protobuf.GeneratedMessageV3.Builder build
     }
     private TaskNodeMetadata() {
       cacheStatus_ = 0;
+      reservationStatus_ = 0;
     }
 
     @java.lang.Override
@@ -6499,6 +6517,12 @@ private TaskNodeMetadata(
 
               break;
             }
+            case 24: {
+              int rawValue = input.readEnum();
+
+              reservationStatus_ = rawValue;
+              break;
+            }
             case 130: {
               flyteidl.event.Event.DynamicWorkflowNodeMetadata.Builder subBuilder = null;
               if (dynamicWorkflow_ != null) {
@@ -6602,6 +6626,31 @@ public flyteidl.core.Catalog.CatalogMetadataOrBuilder getCatalogKeyOrBuilder() {
       return getCatalogKey();
     }
 
+    public static final int RESERVATION_STATUS_FIELD_NUMBER = 3;
+    private int reservationStatus_;
+    /**
+     * 
+     * Captures the status of cache reservations for this execution.
+     * 
+ * + * .flyteidl.core.CatalogReservation.Status reservation_status = 3; + */ + public int getReservationStatusValue() { + return reservationStatus_; + } + /** + *
+     * Captures the status of cache reservations for this execution.
+     * 
+ * + * .flyteidl.core.CatalogReservation.Status reservation_status = 3; + */ + public flyteidl.core.Catalog.CatalogReservation.Status getReservationStatus() { + @SuppressWarnings("deprecation") + flyteidl.core.Catalog.CatalogReservation.Status result = flyteidl.core.Catalog.CatalogReservation.Status.valueOf(reservationStatus_); + return result == null ? flyteidl.core.Catalog.CatalogReservation.Status.UNRECOGNIZED : result; + } + public static final int DYNAMIC_WORKFLOW_FIELD_NUMBER = 16; private flyteidl.event.Event.DynamicWorkflowNodeMetadata dynamicWorkflow_; /** @@ -6655,6 +6704,9 @@ public void writeTo(com.google.protobuf.CodedOutputStream output) if (catalogKey_ != null) { output.writeMessage(2, getCatalogKey()); } + if (reservationStatus_ != flyteidl.core.Catalog.CatalogReservation.Status.RESERVATION_DISABLED.getNumber()) { + output.writeEnum(3, reservationStatus_); + } if (dynamicWorkflow_ != null) { output.writeMessage(16, getDynamicWorkflow()); } @@ -6675,6 +6727,10 @@ public int getSerializedSize() { size += com.google.protobuf.CodedOutputStream .computeMessageSize(2, getCatalogKey()); } + if (reservationStatus_ != flyteidl.core.Catalog.CatalogReservation.Status.RESERVATION_DISABLED.getNumber()) { + size += com.google.protobuf.CodedOutputStream + .computeEnumSize(3, reservationStatus_); + } if (dynamicWorkflow_ != null) { size += com.google.protobuf.CodedOutputStream .computeMessageSize(16, getDynamicWorkflow()); @@ -6700,6 +6756,7 @@ public boolean equals(final java.lang.Object obj) { if (!getCatalogKey() .equals(other.getCatalogKey())) return false; } + if (reservationStatus_ != other.reservationStatus_) return false; if (hasDynamicWorkflow() != other.hasDynamicWorkflow()) return false; if (hasDynamicWorkflow()) { if (!getDynamicWorkflow() @@ -6722,6 +6779,8 @@ public int hashCode() { hash = (37 * hash) + CATALOG_KEY_FIELD_NUMBER; hash = (53 * hash) + getCatalogKey().hashCode(); } + hash = (37 * hash) + RESERVATION_STATUS_FIELD_NUMBER; + hash = (53 * hash) + reservationStatus_; if (hasDynamicWorkflow()) { hash = (37 * hash) + DYNAMIC_WORKFLOW_FIELD_NUMBER; hash = (53 * hash) + getDynamicWorkflow().hashCode(); @@ -6867,6 +6926,8 @@ public Builder clear() { catalogKey_ = null; catalogKeyBuilder_ = null; } + reservationStatus_ = 0; + if (dynamicWorkflowBuilder_ == null) { dynamicWorkflow_ = null; } else { @@ -6905,6 +6966,7 @@ public flyteidl.event.Event.TaskNodeMetadata buildPartial() { } else { result.catalogKey_ = catalogKeyBuilder_.build(); } + result.reservationStatus_ = reservationStatus_; if (dynamicWorkflowBuilder_ == null) { result.dynamicWorkflow_ = dynamicWorkflow_; } else { @@ -6964,6 +7026,9 @@ public Builder mergeFrom(flyteidl.event.Event.TaskNodeMetadata other) { if (other.hasCatalogKey()) { mergeCatalogKey(other.getCatalogKey()); } + if (other.reservationStatus_ != 0) { + setReservationStatusValue(other.getReservationStatusValue()); + } if (other.hasDynamicWorkflow()) { mergeDynamicWorkflow(other.getDynamicWorkflow()); } @@ -7214,6 +7279,71 @@ public flyteidl.core.Catalog.CatalogMetadataOrBuilder getCatalogKeyOrBuilder() { return catalogKeyBuilder_; } + private int reservationStatus_ = 0; + /** + *
+       * Captures the status of cache reservations for this execution.
+       * 
+ * + * .flyteidl.core.CatalogReservation.Status reservation_status = 3; + */ + public int getReservationStatusValue() { + return reservationStatus_; + } + /** + *
+       * Captures the status of cache reservations for this execution.
+       * 
+ * + * .flyteidl.core.CatalogReservation.Status reservation_status = 3; + */ + public Builder setReservationStatusValue(int value) { + reservationStatus_ = value; + onChanged(); + return this; + } + /** + *
+       * Captures the status of cache reservations for this execution.
+       * 
+ * + * .flyteidl.core.CatalogReservation.Status reservation_status = 3; + */ + public flyteidl.core.Catalog.CatalogReservation.Status getReservationStatus() { + @SuppressWarnings("deprecation") + flyteidl.core.Catalog.CatalogReservation.Status result = flyteidl.core.Catalog.CatalogReservation.Status.valueOf(reservationStatus_); + return result == null ? flyteidl.core.Catalog.CatalogReservation.Status.UNRECOGNIZED : result; + } + /** + *
+       * Captures the status of cache reservations for this execution.
+       * 
+ * + * .flyteidl.core.CatalogReservation.Status reservation_status = 3; + */ + public Builder setReservationStatus(flyteidl.core.Catalog.CatalogReservation.Status value) { + if (value == null) { + throw new NullPointerException(); + } + + reservationStatus_ = value.getNumber(); + onChanged(); + return this; + } + /** + *
+       * Captures the status of cache reservations for this execution.
+       * 
+ * + * .flyteidl.core.CatalogReservation.Status reservation_status = 3; + */ + public Builder clearReservationStatus() { + + reservationStatus_ = 0; + onChanged(); + return this; + } + private flyteidl.event.Event.DynamicWorkflowNodeMetadata dynamicWorkflow_; private com.google.protobuf.SingleFieldBuilderV3< flyteidl.event.Event.DynamicWorkflowNodeMetadata, flyteidl.event.Event.DynamicWorkflowNodeMetadata.Builder, flyteidl.event.Event.DynamicWorkflowNodeMetadataOrBuilder> dynamicWorkflowBuilder_; @@ -17055,47 +17185,49 @@ public flyteidl.event.Event.TaskExecutionMetadata getDefaultInstanceForType() { "\n\tnode_name\030\r \001(\tB\017\n\routput_resultB\021\n\017ta" + "rget_metadata\"X\n\024WorkflowNodeMetadata\022@\n" + "\014execution_id\030\001 \001(\0132*.flyteidl.core.Work" + - "flowExecutionIdentifier\"\307\001\n\020TaskNodeMeta" + + "flowExecutionIdentifier\"\215\002\n\020TaskNodeMeta" + "data\0227\n\014cache_status\030\001 \001(\0162!.flyteidl.co" + "re.CatalogCacheStatus\0223\n\013catalog_key\030\002 \001" + - "(\0132\036.flyteidl.core.CatalogMetadata\022E\n\020dy" + - "namic_workflow\030\020 \001(\0132+.flyteidl.event.Dy" + - "namicWorkflowNodeMetadata\"\207\001\n\033DynamicWor" + - "kflowNodeMetadata\022%\n\002id\030\001 \001(\0132\031.flyteidl" + - ".core.Identifier\022A\n\021compiled_workflow\030\002 " + - "\001(\0132&.flyteidl.core.CompiledWorkflowClos" + - "ure\"Q\n\033ParentTaskExecutionMetadata\0222\n\002id" + - "\030\001 \001(\0132&.flyteidl.core.TaskExecutionIden" + - "tifier\".\n\033ParentNodeExecutionMetadata\022\017\n" + - "\007node_id\030\001 \001(\t\"\375\004\n\022TaskExecutionEvent\022*\n" + - "\007task_id\030\001 \001(\0132\031.flyteidl.core.Identifie" + - "r\022H\n\030parent_node_execution_id\030\002 \001(\0132&.fl" + - "yteidl.core.NodeExecutionIdentifier\022\025\n\rr" + - "etry_attempt\030\003 \001(\r\0221\n\005phase\030\004 \001(\0162\".flyt" + - "eidl.core.TaskExecution.Phase\022\023\n\013produce" + - "r_id\030\005 \001(\t\022$\n\004logs\030\006 \003(\0132\026.flyteidl.core" + - ".TaskLog\022/\n\013occurred_at\030\007 \001(\0132\032.google.p" + - "rotobuf.Timestamp\022\021\n\tinput_uri\030\010 \001(\t\022\024\n\n" + - "output_uri\030\t \001(\tH\000\022.\n\005error\030\n \001(\0132\035.flyt" + - "eidl.core.ExecutionErrorH\000\0220\n\013output_dat" + - "a\030\021 \001(\0132\031.flyteidl.core.LiteralMapH\000\022,\n\013" + - "custom_info\030\013 \001(\0132\027.google.protobuf.Stru" + - "ct\022\025\n\rphase_version\030\014 \001(\r\022\016\n\006reason\030\r \001(" + - "\t\022\021\n\ttask_type\030\016 \001(\t\0227\n\010metadata\030\020 \001(\0132%" + - ".flyteidl.event.TaskExecutionMetadataB\017\n" + - "\routput_result\"+\n\024ExternalResourceInfo\022\023" + - "\n\013external_id\030\001 \001(\t\"?\n\020ResourcePoolInfo\022" + - "\030\n\020allocation_token\030\001 \001(\t\022\021\n\tnamespace\030\002" + - " \001(\t\"\310\002\n\025TaskExecutionMetadata\022\026\n\016genera" + - "ted_name\030\001 \001(\t\022@\n\022external_resources\030\002 \003" + - "(\0132$.flyteidl.event.ExternalResourceInfo" + - "\022<\n\022resource_pool_info\030\003 \003(\0132 .flyteidl." + - "event.ResourcePoolInfo\022\031\n\021plugin_identif" + - "ier\030\004 \001(\t\022K\n\016instance_class\030\020 \001(\01623.flyt" + - "eidl.event.TaskExecutionMetadata.Instanc" + - "eClass\"/\n\rInstanceClass\022\013\n\007DEFAULT\020\000\022\021\n\r" + - "INTERRUPTIBLE\020\001B7Z5github.com/flyteorg/f" + - "lyteidl/gen/pb-go/flyteidl/eventb\006proto3" + "(\0132\036.flyteidl.core.CatalogMetadata\022D\n\022re" + + "servation_status\030\003 \001(\0162(.flyteidl.core.C" + + "atalogReservation.Status\022E\n\020dynamic_work" + + "flow\030\020 \001(\0132+.flyteidl.event.DynamicWorkf" + + "lowNodeMetadata\"\207\001\n\033DynamicWorkflowNodeM" + + "etadata\022%\n\002id\030\001 \001(\0132\031.flyteidl.core.Iden" + + "tifier\022A\n\021compiled_workflow\030\002 \001(\0132&.flyt" + + "eidl.core.CompiledWorkflowClosure\"Q\n\033Par" + + "entTaskExecutionMetadata\0222\n\002id\030\001 \001(\0132&.f" + + "lyteidl.core.TaskExecutionIdentifier\".\n\033" + + "ParentNodeExecutionMetadata\022\017\n\007node_id\030\001" + + " \001(\t\"\375\004\n\022TaskExecutionEvent\022*\n\007task_id\030\001" + + " \001(\0132\031.flyteidl.core.Identifier\022H\n\030paren" + + "t_node_execution_id\030\002 \001(\0132&.flyteidl.cor" + + "e.NodeExecutionIdentifier\022\025\n\rretry_attem" + + "pt\030\003 \001(\r\0221\n\005phase\030\004 \001(\0162\".flyteidl.core." + + "TaskExecution.Phase\022\023\n\013producer_id\030\005 \001(\t" + + "\022$\n\004logs\030\006 \003(\0132\026.flyteidl.core.TaskLog\022/" + + "\n\013occurred_at\030\007 \001(\0132\032.google.protobuf.Ti" + + "mestamp\022\021\n\tinput_uri\030\010 \001(\t\022\024\n\noutput_uri" + + "\030\t \001(\tH\000\022.\n\005error\030\n \001(\0132\035.flyteidl.core." + + "ExecutionErrorH\000\0220\n\013output_data\030\021 \001(\0132\031." + + "flyteidl.core.LiteralMapH\000\022,\n\013custom_inf" + + "o\030\013 \001(\0132\027.google.protobuf.Struct\022\025\n\rphas" + + "e_version\030\014 \001(\r\022\016\n\006reason\030\r \001(\t\022\021\n\ttask_" + + "type\030\016 \001(\t\0227\n\010metadata\030\020 \001(\0132%.flyteidl." + + "event.TaskExecutionMetadataB\017\n\routput_re" + + "sult\"+\n\024ExternalResourceInfo\022\023\n\013external" + + "_id\030\001 \001(\t\"?\n\020ResourcePoolInfo\022\030\n\020allocat" + + "ion_token\030\001 \001(\t\022\021\n\tnamespace\030\002 \001(\t\"\310\002\n\025T" + + "askExecutionMetadata\022\026\n\016generated_name\030\001" + + " \001(\t\022@\n\022external_resources\030\002 \003(\0132$.flyte" + + "idl.event.ExternalResourceInfo\022<\n\022resour" + + "ce_pool_info\030\003 \003(\0132 .flyteidl.event.Reso" + + "urcePoolInfo\022\031\n\021plugin_identifier\030\004 \001(\t\022" + + "K\n\016instance_class\030\020 \001(\01623.flyteidl.event" + + ".TaskExecutionMetadata.InstanceClass\"/\n\r" + + "InstanceClass\022\013\n\007DEFAULT\020\000\022\021\n\rINTERRUPTI" + + "BLE\020\001B7Z5github.com/flyteorg/flyteidl/ge" + + "n/pb-go/flyteidl/eventb\006proto3" }; com.google.protobuf.Descriptors.FileDescriptor.InternalDescriptorAssigner assigner = new com.google.protobuf.Descriptors.FileDescriptor. InternalDescriptorAssigner() { @@ -17139,7 +17271,7 @@ public com.google.protobuf.ExtensionRegistry assignDescriptors( internal_static_flyteidl_event_TaskNodeMetadata_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_flyteidl_event_TaskNodeMetadata_descriptor, - new java.lang.String[] { "CacheStatus", "CatalogKey", "DynamicWorkflow", }); + new java.lang.String[] { "CacheStatus", "CatalogKey", "ReservationStatus", "DynamicWorkflow", }); internal_static_flyteidl_event_DynamicWorkflowNodeMetadata_descriptor = getDescriptor().getMessageTypes().get(4); internal_static_flyteidl_event_DynamicWorkflowNodeMetadata_fieldAccessorTable = new diff --git a/gen/pb-js/flyteidl.d.ts b/gen/pb-js/flyteidl.d.ts index 8fec3e6d2..8d4bca837 100644 --- a/gen/pb-js/flyteidl.d.ts +++ b/gen/pb-js/flyteidl.d.ts @@ -140,6 +140,64 @@ export namespace flyteidl { public static verify(message: { [k: string]: any }): (string|null); } + /** Properties of a CatalogReservation. */ + interface ICatalogReservation { + } + + /** Represents a CatalogReservation. */ + class CatalogReservation implements ICatalogReservation { + + /** + * Constructs a new CatalogReservation. + * @param [properties] Properties to set + */ + constructor(properties?: flyteidl.core.ICatalogReservation); + + /** + * Creates a new CatalogReservation instance using the specified properties. + * @param [properties] Properties to set + * @returns CatalogReservation instance + */ + public static create(properties?: flyteidl.core.ICatalogReservation): flyteidl.core.CatalogReservation; + + /** + * Encodes the specified CatalogReservation message. Does not implicitly {@link flyteidl.core.CatalogReservation.verify|verify} messages. + * @param message CatalogReservation message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: flyteidl.core.ICatalogReservation, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a CatalogReservation message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns CatalogReservation + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): flyteidl.core.CatalogReservation; + + /** + * Verifies a CatalogReservation message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + } + + namespace CatalogReservation { + + /** Status enum. */ + enum Status { + RESERVATION_DISABLED = 0, + RESERVATION_ACQUIRED = 1, + RESERVATION_EXISTS = 2, + RESERVATION_RELEASED = 3, + RESERVATION_FAILURE = 4 + } + } + /** ResourceType enum. */ enum ResourceType { UNSPECIFIED = 0, @@ -4175,6 +4233,9 @@ export namespace flyteidl { /** TaskMetadata interruptible */ interruptible?: (boolean|null); + + /** TaskMetadata cacheSerializable */ + cacheSerializable?: (boolean|null); } /** Represents a TaskMetadata. */ @@ -4207,6 +4268,9 @@ export namespace flyteidl { /** TaskMetadata interruptible. */ public interruptible: boolean; + /** TaskMetadata cacheSerializable. */ + public cacheSerializable: boolean; + /** TaskMetadata interruptibleValue. */ public interruptibleValue?: "interruptible"; @@ -5781,6 +5845,9 @@ export namespace flyteidl { /** TaskNodeMetadata catalogKey */ catalogKey?: (flyteidl.core.ICatalogMetadata|null); + /** TaskNodeMetadata reservationStatus */ + reservationStatus?: (flyteidl.core.CatalogReservation.Status|null); + /** TaskNodeMetadata dynamicWorkflow */ dynamicWorkflow?: (flyteidl.event.IDynamicWorkflowNodeMetadata|null); } @@ -5800,6 +5867,9 @@ export namespace flyteidl { /** TaskNodeMetadata catalogKey. */ public catalogKey?: (flyteidl.core.ICatalogMetadata|null); + /** TaskNodeMetadata reservationStatus. */ + public reservationStatus: flyteidl.core.CatalogReservation.Status; + /** TaskNodeMetadata dynamicWorkflow. */ public dynamicWorkflow?: (flyteidl.event.IDynamicWorkflowNodeMetadata|null); diff --git a/gen/pb-js/flyteidl.js b/gen/pb-js/flyteidl.js index 84619ea3a..5599517a6 100644 --- a/gen/pb-js/flyteidl.js +++ b/gen/pb-js/flyteidl.js @@ -342,6 +342,119 @@ export const flyteidl = $root.flyteidl = (() => { return CatalogMetadata; })(); + core.CatalogReservation = (function() { + + /** + * Properties of a CatalogReservation. + * @memberof flyteidl.core + * @interface ICatalogReservation + */ + + /** + * Constructs a new CatalogReservation. + * @memberof flyteidl.core + * @classdesc Represents a CatalogReservation. + * @implements ICatalogReservation + * @constructor + * @param {flyteidl.core.ICatalogReservation=} [properties] Properties to set + */ + function CatalogReservation(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 CatalogReservation instance using the specified properties. + * @function create + * @memberof flyteidl.core.CatalogReservation + * @static + * @param {flyteidl.core.ICatalogReservation=} [properties] Properties to set + * @returns {flyteidl.core.CatalogReservation} CatalogReservation instance + */ + CatalogReservation.create = function create(properties) { + return new CatalogReservation(properties); + }; + + /** + * Encodes the specified CatalogReservation message. Does not implicitly {@link flyteidl.core.CatalogReservation.verify|verify} messages. + * @function encode + * @memberof flyteidl.core.CatalogReservation + * @static + * @param {flyteidl.core.ICatalogReservation} message CatalogReservation message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + CatalogReservation.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + return writer; + }; + + /** + * Decodes a CatalogReservation message from the specified reader or buffer. + * @function decode + * @memberof flyteidl.core.CatalogReservation + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {flyteidl.core.CatalogReservation} CatalogReservation + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + CatalogReservation.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.core.CatalogReservation(); + while (reader.pos < end) { + let tag = reader.uint32(); + switch (tag >>> 3) { + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Verifies a CatalogReservation message. + * @function verify + * @memberof flyteidl.core.CatalogReservation + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + CatalogReservation.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + return null; + }; + + /** + * Status enum. + * @name flyteidl.core.CatalogReservation.Status + * @enum {string} + * @property {number} RESERVATION_DISABLED=0 RESERVATION_DISABLED value + * @property {number} RESERVATION_ACQUIRED=1 RESERVATION_ACQUIRED value + * @property {number} RESERVATION_EXISTS=2 RESERVATION_EXISTS value + * @property {number} RESERVATION_RELEASED=3 RESERVATION_RELEASED value + * @property {number} RESERVATION_FAILURE=4 RESERVATION_FAILURE value + */ + CatalogReservation.Status = (function() { + const valuesById = {}, values = Object.create(valuesById); + values[valuesById[0] = "RESERVATION_DISABLED"] = 0; + values[valuesById[1] = "RESERVATION_ACQUIRED"] = 1; + values[valuesById[2] = "RESERVATION_EXISTS"] = 2; + values[valuesById[3] = "RESERVATION_RELEASED"] = 3; + values[valuesById[4] = "RESERVATION_FAILURE"] = 4; + return values; + })(); + + return CatalogReservation; + })(); + /** * ResourceType enum. * @name flyteidl.core.ResourceType @@ -9895,6 +10008,7 @@ export const flyteidl = $root.flyteidl = (() => { * @property {string|null} [discoveryVersion] TaskMetadata discoveryVersion * @property {string|null} [deprecatedErrorMessage] TaskMetadata deprecatedErrorMessage * @property {boolean|null} [interruptible] TaskMetadata interruptible + * @property {boolean|null} [cacheSerializable] TaskMetadata cacheSerializable */ /** @@ -9968,6 +10082,14 @@ export const flyteidl = $root.flyteidl = (() => { */ TaskMetadata.prototype.interruptible = false; + /** + * TaskMetadata cacheSerializable. + * @member {boolean} cacheSerializable + * @memberof flyteidl.core.TaskMetadata + * @instance + */ + TaskMetadata.prototype.cacheSerializable = false; + // OneOf field names bound to virtual getters and setters let $oneOfFields; @@ -10020,6 +10142,8 @@ export const flyteidl = $root.flyteidl = (() => { writer.uint32(/* id 7, wireType 2 =*/58).string(message.deprecatedErrorMessage); if (message.interruptible != null && message.hasOwnProperty("interruptible")) writer.uint32(/* id 8, wireType 0 =*/64).bool(message.interruptible); + if (message.cacheSerializable != null && message.hasOwnProperty("cacheSerializable")) + writer.uint32(/* id 9, wireType 0 =*/72).bool(message.cacheSerializable); return writer; }; @@ -10062,6 +10186,9 @@ export const flyteidl = $root.flyteidl = (() => { case 8: message.interruptible = reader.bool(); break; + case 9: + message.cacheSerializable = reader.bool(); + break; default: reader.skipType(tag & 7); break; @@ -10111,6 +10238,9 @@ export const flyteidl = $root.flyteidl = (() => { if (typeof message.interruptible !== "boolean") return "interruptible: boolean expected"; } + if (message.cacheSerializable != null && message.hasOwnProperty("cacheSerializable")) + if (typeof message.cacheSerializable !== "boolean") + return "cacheSerializable: boolean expected"; return null; }; @@ -13984,6 +14114,7 @@ export const flyteidl = $root.flyteidl = (() => { * @interface ITaskNodeMetadata * @property {flyteidl.core.CatalogCacheStatus|null} [cacheStatus] TaskNodeMetadata cacheStatus * @property {flyteidl.core.ICatalogMetadata|null} [catalogKey] TaskNodeMetadata catalogKey + * @property {flyteidl.core.CatalogReservation.Status|null} [reservationStatus] TaskNodeMetadata reservationStatus * @property {flyteidl.event.IDynamicWorkflowNodeMetadata|null} [dynamicWorkflow] TaskNodeMetadata dynamicWorkflow */ @@ -14018,6 +14149,14 @@ export const flyteidl = $root.flyteidl = (() => { */ TaskNodeMetadata.prototype.catalogKey = null; + /** + * TaskNodeMetadata reservationStatus. + * @member {flyteidl.core.CatalogReservation.Status} reservationStatus + * @memberof flyteidl.event.TaskNodeMetadata + * @instance + */ + TaskNodeMetadata.prototype.reservationStatus = 0; + /** * TaskNodeMetadata dynamicWorkflow. * @member {flyteidl.event.IDynamicWorkflowNodeMetadata|null|undefined} dynamicWorkflow @@ -14054,6 +14193,8 @@ export const flyteidl = $root.flyteidl = (() => { writer.uint32(/* id 1, wireType 0 =*/8).int32(message.cacheStatus); if (message.catalogKey != null && message.hasOwnProperty("catalogKey")) $root.flyteidl.core.CatalogMetadata.encode(message.catalogKey, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); + if (message.reservationStatus != null && message.hasOwnProperty("reservationStatus")) + writer.uint32(/* id 3, wireType 0 =*/24).int32(message.reservationStatus); if (message.dynamicWorkflow != null && message.hasOwnProperty("dynamicWorkflow")) $root.flyteidl.event.DynamicWorkflowNodeMetadata.encode(message.dynamicWorkflow, writer.uint32(/* id 16, wireType 2 =*/130).fork()).ldelim(); return writer; @@ -14083,6 +14224,9 @@ export const flyteidl = $root.flyteidl = (() => { case 2: message.catalogKey = $root.flyteidl.core.CatalogMetadata.decode(reader, reader.uint32()); break; + case 3: + message.reservationStatus = reader.int32(); + break; case 16: message.dynamicWorkflow = $root.flyteidl.event.DynamicWorkflowNodeMetadata.decode(reader, reader.uint32()); break; @@ -14122,6 +14266,17 @@ export const flyteidl = $root.flyteidl = (() => { if (error) return "catalogKey." + error; } + if (message.reservationStatus != null && message.hasOwnProperty("reservationStatus")) + switch (message.reservationStatus) { + default: + return "reservationStatus: enum value expected"; + case 0: + case 1: + case 2: + case 3: + case 4: + break; + } if (message.dynamicWorkflow != null && message.hasOwnProperty("dynamicWorkflow")) { let error = $root.flyteidl.event.DynamicWorkflowNodeMetadata.verify(message.dynamicWorkflow); if (error) diff --git a/gen/pb_python/flyteidl/core/catalog_pb2.py b/gen/pb_python/flyteidl/core/catalog_pb2.py index 59c7921ed..8df9f319a 100644 --- a/gen/pb_python/flyteidl/core/catalog_pb2.py +++ b/gen/pb_python/flyteidl/core/catalog_pb2.py @@ -22,7 +22,7 @@ package='flyteidl.core', syntax='proto3', serialized_options=_b('Z4github.com/flyteorg/flyteidl/gen/pb-go/flyteidl/core'), - serialized_pb=_b('\n\x1b\x66lyteidl/core/catalog.proto\x12\rflyteidl.core\x1a\x1e\x66lyteidl/core/identifier.proto\"7\n\x12\x43\x61talogArtifactTag\x12\x13\n\x0b\x61rtifact_id\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\"\xd6\x01\n\x0f\x43\x61talogMetadata\x12-\n\ndataset_id\x18\x01 \x01(\x0b\x32\x19.flyteidl.core.Identifier\x12\x37\n\x0c\x61rtifact_tag\x18\x02 \x01(\x0b\x32!.flyteidl.core.CatalogArtifactTag\x12G\n\x15source_task_execution\x18\x03 \x01(\x0b\x32&.flyteidl.core.TaskExecutionIdentifierH\x00\x42\x12\n\x10source_execution*\x8d\x01\n\x12\x43\x61talogCacheStatus\x12\x12\n\x0e\x43\x41\x43HE_DISABLED\x10\x00\x12\x0e\n\nCACHE_MISS\x10\x01\x12\r\n\tCACHE_HIT\x10\x02\x12\x13\n\x0f\x43\x41\x43HE_POPULATED\x10\x03\x12\x18\n\x14\x43\x41\x43HE_LOOKUP_FAILURE\x10\x04\x12\x15\n\x11\x43\x41\x43HE_PUT_FAILURE\x10\x05\x42\x36Z4github.com/flyteorg/flyteidl/gen/pb-go/flyteidl/coreb\x06proto3') + serialized_pb=_b('\n\x1b\x66lyteidl/core/catalog.proto\x12\rflyteidl.core\x1a\x1e\x66lyteidl/core/identifier.proto\"7\n\x12\x43\x61talogArtifactTag\x12\x13\n\x0b\x61rtifact_id\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\"\xd6\x01\n\x0f\x43\x61talogMetadata\x12-\n\ndataset_id\x18\x01 \x01(\x0b\x32\x19.flyteidl.core.Identifier\x12\x37\n\x0c\x61rtifact_tag\x18\x02 \x01(\x0b\x32!.flyteidl.core.CatalogArtifactTag\x12G\n\x15source_task_execution\x18\x03 \x01(\x0b\x32&.flyteidl.core.TaskExecutionIdentifierH\x00\x42\x12\n\x10source_execution\"\x9e\x01\n\x12\x43\x61talogReservation\"\x87\x01\n\x06Status\x12\x18\n\x14RESERVATION_DISABLED\x10\x00\x12\x18\n\x14RESERVATION_ACQUIRED\x10\x01\x12\x16\n\x12RESERVATION_EXISTS\x10\x02\x12\x18\n\x14RESERVATION_RELEASED\x10\x03\x12\x17\n\x13RESERVATION_FAILURE\x10\x04*\x8d\x01\n\x12\x43\x61talogCacheStatus\x12\x12\n\x0e\x43\x41\x43HE_DISABLED\x10\x00\x12\x0e\n\nCACHE_MISS\x10\x01\x12\r\n\tCACHE_HIT\x10\x02\x12\x13\n\x0f\x43\x41\x43HE_POPULATED\x10\x03\x12\x18\n\x14\x43\x41\x43HE_LOOKUP_FAILURE\x10\x04\x12\x15\n\x11\x43\x41\x43HE_PUT_FAILURE\x10\x05\x42\x36Z4github.com/flyteorg/flyteidl/gen/pb-go/flyteidl/coreb\x06proto3') , dependencies=[flyteidl_dot_core_dot_identifier__pb2.DESCRIPTOR,]) @@ -59,8 +59,8 @@ ], containing_type=None, serialized_options=None, - serialized_start=353, - serialized_end=494, + serialized_start=514, + serialized_end=655, ) _sym_db.RegisterEnumDescriptor(_CATALOGCACHESTATUS) @@ -73,6 +73,40 @@ CACHE_PUT_FAILURE = 5 +_CATALOGRESERVATION_STATUS = _descriptor.EnumDescriptor( + name='Status', + full_name='flyteidl.core.CatalogReservation.Status', + filename=None, + file=DESCRIPTOR, + values=[ + _descriptor.EnumValueDescriptor( + name='RESERVATION_DISABLED', index=0, number=0, + serialized_options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='RESERVATION_ACQUIRED', index=1, number=1, + serialized_options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='RESERVATION_EXISTS', index=2, number=2, + serialized_options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='RESERVATION_RELEASED', index=3, number=3, + serialized_options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='RESERVATION_FAILURE', index=4, number=4, + serialized_options=None, + type=None), + ], + containing_type=None, + serialized_options=None, + serialized_start=376, + serialized_end=511, +) +_sym_db.RegisterEnumDescriptor(_CATALOGRESERVATION_STATUS) + _CATALOGARTIFACTTAG = _descriptor.Descriptor( name='CatalogArtifactTag', @@ -159,14 +193,41 @@ serialized_end=350, ) + +_CATALOGRESERVATION = _descriptor.Descriptor( + name='CatalogReservation', + full_name='flyteidl.core.CatalogReservation', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + _CATALOGRESERVATION_STATUS, + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=353, + serialized_end=511, +) + _CATALOGMETADATA.fields_by_name['dataset_id'].message_type = flyteidl_dot_core_dot_identifier__pb2._IDENTIFIER _CATALOGMETADATA.fields_by_name['artifact_tag'].message_type = _CATALOGARTIFACTTAG _CATALOGMETADATA.fields_by_name['source_task_execution'].message_type = flyteidl_dot_core_dot_identifier__pb2._TASKEXECUTIONIDENTIFIER _CATALOGMETADATA.oneofs_by_name['source_execution'].fields.append( _CATALOGMETADATA.fields_by_name['source_task_execution']) _CATALOGMETADATA.fields_by_name['source_task_execution'].containing_oneof = _CATALOGMETADATA.oneofs_by_name['source_execution'] +_CATALOGRESERVATION_STATUS.containing_type = _CATALOGRESERVATION DESCRIPTOR.message_types_by_name['CatalogArtifactTag'] = _CATALOGARTIFACTTAG DESCRIPTOR.message_types_by_name['CatalogMetadata'] = _CATALOGMETADATA +DESCRIPTOR.message_types_by_name['CatalogReservation'] = _CATALOGRESERVATION DESCRIPTOR.enum_types_by_name['CatalogCacheStatus'] = _CATALOGCACHESTATUS _sym_db.RegisterFileDescriptor(DESCRIPTOR) @@ -184,6 +245,13 @@ )) _sym_db.RegisterMessage(CatalogMetadata) +CatalogReservation = _reflection.GeneratedProtocolMessageType('CatalogReservation', (_message.Message,), dict( + DESCRIPTOR = _CATALOGRESERVATION, + __module__ = 'flyteidl.core.catalog_pb2' + # @@protoc_insertion_point(class_scope:flyteidl.core.CatalogReservation) + )) +_sym_db.RegisterMessage(CatalogReservation) + DESCRIPTOR._options = None # @@protoc_insertion_point(module_scope) diff --git a/gen/pb_python/flyteidl/core/tasks_pb2.py b/gen/pb_python/flyteidl/core/tasks_pb2.py index 33fb0e5da..237ac9df9 100644 --- a/gen/pb_python/flyteidl/core/tasks_pb2.py +++ b/gen/pb_python/flyteidl/core/tasks_pb2.py @@ -26,7 +26,7 @@ package='flyteidl.core', syntax='proto3', serialized_options=_b('Z4github.com/flyteorg/flyteidl/gen/pb-go/flyteidl/core'), - serialized_pb=_b('\n\x19\x66lyteidl/core/tasks.proto\x12\rflyteidl.core\x1a\x1e\x66lyteidl/core/identifier.proto\x1a\x1d\x66lyteidl/core/interface.proto\x1a\x1c\x66lyteidl/core/literals.proto\x1a\x1c\x66lyteidl/core/security.proto\x1a\x1egoogle/protobuf/duration.proto\x1a\x1cgoogle/protobuf/struct.proto\"\xb1\x02\n\tResources\x12\x38\n\x08requests\x18\x01 \x03(\x0b\x32&.flyteidl.core.Resources.ResourceEntry\x12\x36\n\x06limits\x18\x02 \x03(\x0b\x32&.flyteidl.core.Resources.ResourceEntry\x1aS\n\rResourceEntry\x12\x33\n\x04name\x18\x01 \x01(\x0e\x32%.flyteidl.core.Resources.ResourceName\x12\r\n\x05value\x18\x02 \x01(\t\"]\n\x0cResourceName\x12\x0b\n\x07UNKNOWN\x10\x00\x12\x07\n\x03\x43PU\x10\x01\x12\x07\n\x03GPU\x10\x02\x12\n\n\x06MEMORY\x10\x03\x12\x0b\n\x07STORAGE\x10\x04\x12\x15\n\x11\x45PHEMERAL_STORAGE\x10\x05\"\x95\x01\n\x0fRuntimeMetadata\x12\x38\n\x04type\x18\x01 \x01(\x0e\x32*.flyteidl.core.RuntimeMetadata.RuntimeType\x12\x0f\n\x07version\x18\x02 \x01(\t\x12\x0e\n\x06\x66lavor\x18\x03 \x01(\t\"\'\n\x0bRuntimeType\x12\t\n\x05OTHER\x10\x00\x12\r\n\tFLYTE_SDK\x10\x01\"\x9d\x02\n\x0cTaskMetadata\x12\x14\n\x0c\x64iscoverable\x18\x01 \x01(\x08\x12/\n\x07runtime\x18\x02 \x01(\x0b\x32\x1e.flyteidl.core.RuntimeMetadata\x12*\n\x07timeout\x18\x04 \x01(\x0b\x32\x19.google.protobuf.Duration\x12-\n\x07retries\x18\x05 \x01(\x0b\x32\x1c.flyteidl.core.RetryStrategy\x12\x19\n\x11\x64iscovery_version\x18\x06 \x01(\t\x12 \n\x18\x64\x65precated_error_message\x18\x07 \x01(\t\x12\x17\n\rinterruptible\x18\x08 \x01(\x08H\x00\x42\x15\n\x13interruptible_value\"\x90\x04\n\x0cTaskTemplate\x12%\n\x02id\x18\x01 \x01(\x0b\x32\x19.flyteidl.core.Identifier\x12\x0c\n\x04type\x18\x02 \x01(\t\x12-\n\x08metadata\x18\x03 \x01(\x0b\x32\x1b.flyteidl.core.TaskMetadata\x12\x30\n\tinterface\x18\x04 \x01(\x0b\x32\x1d.flyteidl.core.TypedInterface\x12\'\n\x06\x63ustom\x18\x05 \x01(\x0b\x32\x17.google.protobuf.Struct\x12-\n\tcontainer\x18\x06 \x01(\x0b\x32\x18.flyteidl.core.ContainerH\x00\x12(\n\x07k8s_pod\x18\x11 \x01(\x0b\x32\x15.flyteidl.core.K8sPodH\x00\x12!\n\x03sql\x18\x12 \x01(\x0b\x32\x12.flyteidl.core.SqlH\x00\x12\x19\n\x11task_type_version\x18\x07 \x01(\x05\x12\x38\n\x10security_context\x18\x08 \x01(\x0b\x32\x1e.flyteidl.core.SecurityContext\x12\x37\n\x06\x63onfig\x18\x10 \x03(\x0b\x32\'.flyteidl.core.TaskTemplate.ConfigEntry\x1a-\n\x0b\x43onfigEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x42\x08\n\x06target\"\'\n\rContainerPort\x12\x16\n\x0e\x63ontainer_port\x18\x01 \x01(\r\"\xad\x03\n\tContainer\x12\r\n\x05image\x18\x01 \x01(\t\x12\x0f\n\x07\x63ommand\x18\x02 \x03(\t\x12\x0c\n\x04\x61rgs\x18\x03 \x03(\t\x12+\n\tresources\x18\x04 \x01(\x0b\x32\x18.flyteidl.core.Resources\x12(\n\x03\x65nv\x18\x05 \x03(\x0b\x32\x1b.flyteidl.core.KeyValuePair\x12/\n\x06\x63onfig\x18\x06 \x03(\x0b\x32\x1b.flyteidl.core.KeyValuePairB\x02\x18\x01\x12+\n\x05ports\x18\x07 \x03(\x0b\x32\x1c.flyteidl.core.ContainerPort\x12\x35\n\x0b\x64\x61ta_config\x18\t \x01(\x0b\x32 .flyteidl.core.DataLoadingConfig\x12;\n\x0c\x61rchitecture\x18\n \x01(\x0e\x32%.flyteidl.core.Container.Architecture\"I\n\x0c\x41rchitecture\x12\x0b\n\x07UNKNOWN\x10\x00\x12\t\n\x05\x41MD64\x10\x01\x12\t\n\x05\x41RM64\x10\x02\x12\n\n\x06\x41RM_V6\x10\x03\x12\n\n\x06\x41RM_V7\x10\x04\"\x9b\x02\n\nIOStrategy\x12=\n\rdownload_mode\x18\x01 \x01(\x0e\x32&.flyteidl.core.IOStrategy.DownloadMode\x12\x39\n\x0bupload_mode\x18\x02 \x01(\x0e\x32$.flyteidl.core.IOStrategy.UploadMode\"L\n\x0c\x44ownloadMode\x12\x12\n\x0e\x44OWNLOAD_EAGER\x10\x00\x12\x13\n\x0f\x44OWNLOAD_STREAM\x10\x01\x12\x13\n\x0f\x44O_NOT_DOWNLOAD\x10\x02\"E\n\nUploadMode\x12\x12\n\x0eUPLOAD_ON_EXIT\x10\x00\x12\x10\n\x0cUPLOAD_EAGER\x10\x01\x12\x11\n\rDO_NOT_UPLOAD\x10\x02\"\xf3\x01\n\x11\x44\x61taLoadingConfig\x12\x0f\n\x07\x65nabled\x18\x01 \x01(\x08\x12\x12\n\ninput_path\x18\x02 \x01(\t\x12\x13\n\x0boutput_path\x18\x03 \x01(\t\x12\x41\n\x06\x66ormat\x18\x04 \x01(\x0e\x32\x31.flyteidl.core.DataLoadingConfig.LiteralMapFormat\x12.\n\x0bio_strategy\x18\x05 \x01(\x0b\x32\x19.flyteidl.core.IOStrategy\"1\n\x10LiteralMapFormat\x12\x08\n\x04JSON\x10\x00\x12\x08\n\x04YAML\x10\x01\x12\t\n\x05PROTO\x10\x02\"g\n\x06K8sPod\x12\x32\n\x08metadata\x18\x01 \x01(\x0b\x32 .flyteidl.core.K8sObjectMetadata\x12)\n\x08pod_spec\x18\x02 \x01(\x0b\x32\x17.google.protobuf.Struct\"\xfc\x01\n\x11K8sObjectMetadata\x12<\n\x06labels\x18\x01 \x03(\x0b\x32,.flyteidl.core.K8sObjectMetadata.LabelsEntry\x12\x46\n\x0b\x61nnotations\x18\x02 \x03(\x0b\x32\x31.flyteidl.core.K8sObjectMetadata.AnnotationsEntry\x1a-\n\x0bLabelsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x1a\x32\n\x10\x41nnotationsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"~\n\x03Sql\x12\x11\n\tstatement\x18\x01 \x01(\t\x12+\n\x07\x64ialect\x18\x02 \x01(\x0e\x32\x1a.flyteidl.core.Sql.Dialect\"7\n\x07\x44ialect\x12\r\n\tUNDEFINED\x10\x00\x12\x08\n\x04\x41NSI\x10\x01\x12\x08\n\x04HIVE\x10\x02\x12\t\n\x05OTHER\x10\x03\x42\x36Z4github.com/flyteorg/flyteidl/gen/pb-go/flyteidl/coreb\x06proto3') + serialized_pb=_b('\n\x19\x66lyteidl/core/tasks.proto\x12\rflyteidl.core\x1a\x1e\x66lyteidl/core/identifier.proto\x1a\x1d\x66lyteidl/core/interface.proto\x1a\x1c\x66lyteidl/core/literals.proto\x1a\x1c\x66lyteidl/core/security.proto\x1a\x1egoogle/protobuf/duration.proto\x1a\x1cgoogle/protobuf/struct.proto\"\xb1\x02\n\tResources\x12\x38\n\x08requests\x18\x01 \x03(\x0b\x32&.flyteidl.core.Resources.ResourceEntry\x12\x36\n\x06limits\x18\x02 \x03(\x0b\x32&.flyteidl.core.Resources.ResourceEntry\x1aS\n\rResourceEntry\x12\x33\n\x04name\x18\x01 \x01(\x0e\x32%.flyteidl.core.Resources.ResourceName\x12\r\n\x05value\x18\x02 \x01(\t\"]\n\x0cResourceName\x12\x0b\n\x07UNKNOWN\x10\x00\x12\x07\n\x03\x43PU\x10\x01\x12\x07\n\x03GPU\x10\x02\x12\n\n\x06MEMORY\x10\x03\x12\x0b\n\x07STORAGE\x10\x04\x12\x15\n\x11\x45PHEMERAL_STORAGE\x10\x05\"\x95\x01\n\x0fRuntimeMetadata\x12\x38\n\x04type\x18\x01 \x01(\x0e\x32*.flyteidl.core.RuntimeMetadata.RuntimeType\x12\x0f\n\x07version\x18\x02 \x01(\t\x12\x0e\n\x06\x66lavor\x18\x03 \x01(\t\"\'\n\x0bRuntimeType\x12\t\n\x05OTHER\x10\x00\x12\r\n\tFLYTE_SDK\x10\x01\"\xb9\x02\n\x0cTaskMetadata\x12\x14\n\x0c\x64iscoverable\x18\x01 \x01(\x08\x12/\n\x07runtime\x18\x02 \x01(\x0b\x32\x1e.flyteidl.core.RuntimeMetadata\x12*\n\x07timeout\x18\x04 \x01(\x0b\x32\x19.google.protobuf.Duration\x12-\n\x07retries\x18\x05 \x01(\x0b\x32\x1c.flyteidl.core.RetryStrategy\x12\x19\n\x11\x64iscovery_version\x18\x06 \x01(\t\x12 \n\x18\x64\x65precated_error_message\x18\x07 \x01(\t\x12\x17\n\rinterruptible\x18\x08 \x01(\x08H\x00\x12\x1a\n\x12\x63\x61\x63he_serializable\x18\t \x01(\x08\x42\x15\n\x13interruptible_value\"\x90\x04\n\x0cTaskTemplate\x12%\n\x02id\x18\x01 \x01(\x0b\x32\x19.flyteidl.core.Identifier\x12\x0c\n\x04type\x18\x02 \x01(\t\x12-\n\x08metadata\x18\x03 \x01(\x0b\x32\x1b.flyteidl.core.TaskMetadata\x12\x30\n\tinterface\x18\x04 \x01(\x0b\x32\x1d.flyteidl.core.TypedInterface\x12\'\n\x06\x63ustom\x18\x05 \x01(\x0b\x32\x17.google.protobuf.Struct\x12-\n\tcontainer\x18\x06 \x01(\x0b\x32\x18.flyteidl.core.ContainerH\x00\x12(\n\x07k8s_pod\x18\x11 \x01(\x0b\x32\x15.flyteidl.core.K8sPodH\x00\x12!\n\x03sql\x18\x12 \x01(\x0b\x32\x12.flyteidl.core.SqlH\x00\x12\x19\n\x11task_type_version\x18\x07 \x01(\x05\x12\x38\n\x10security_context\x18\x08 \x01(\x0b\x32\x1e.flyteidl.core.SecurityContext\x12\x37\n\x06\x63onfig\x18\x10 \x03(\x0b\x32\'.flyteidl.core.TaskTemplate.ConfigEntry\x1a-\n\x0b\x43onfigEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x42\x08\n\x06target\"\'\n\rContainerPort\x12\x16\n\x0e\x63ontainer_port\x18\x01 \x01(\r\"\xad\x03\n\tContainer\x12\r\n\x05image\x18\x01 \x01(\t\x12\x0f\n\x07\x63ommand\x18\x02 \x03(\t\x12\x0c\n\x04\x61rgs\x18\x03 \x03(\t\x12+\n\tresources\x18\x04 \x01(\x0b\x32\x18.flyteidl.core.Resources\x12(\n\x03\x65nv\x18\x05 \x03(\x0b\x32\x1b.flyteidl.core.KeyValuePair\x12/\n\x06\x63onfig\x18\x06 \x03(\x0b\x32\x1b.flyteidl.core.KeyValuePairB\x02\x18\x01\x12+\n\x05ports\x18\x07 \x03(\x0b\x32\x1c.flyteidl.core.ContainerPort\x12\x35\n\x0b\x64\x61ta_config\x18\t \x01(\x0b\x32 .flyteidl.core.DataLoadingConfig\x12;\n\x0c\x61rchitecture\x18\n \x01(\x0e\x32%.flyteidl.core.Container.Architecture\"I\n\x0c\x41rchitecture\x12\x0b\n\x07UNKNOWN\x10\x00\x12\t\n\x05\x41MD64\x10\x01\x12\t\n\x05\x41RM64\x10\x02\x12\n\n\x06\x41RM_V6\x10\x03\x12\n\n\x06\x41RM_V7\x10\x04\"\x9b\x02\n\nIOStrategy\x12=\n\rdownload_mode\x18\x01 \x01(\x0e\x32&.flyteidl.core.IOStrategy.DownloadMode\x12\x39\n\x0bupload_mode\x18\x02 \x01(\x0e\x32$.flyteidl.core.IOStrategy.UploadMode\"L\n\x0c\x44ownloadMode\x12\x12\n\x0e\x44OWNLOAD_EAGER\x10\x00\x12\x13\n\x0f\x44OWNLOAD_STREAM\x10\x01\x12\x13\n\x0f\x44O_NOT_DOWNLOAD\x10\x02\"E\n\nUploadMode\x12\x12\n\x0eUPLOAD_ON_EXIT\x10\x00\x12\x10\n\x0cUPLOAD_EAGER\x10\x01\x12\x11\n\rDO_NOT_UPLOAD\x10\x02\"\xf3\x01\n\x11\x44\x61taLoadingConfig\x12\x0f\n\x07\x65nabled\x18\x01 \x01(\x08\x12\x12\n\ninput_path\x18\x02 \x01(\t\x12\x13\n\x0boutput_path\x18\x03 \x01(\t\x12\x41\n\x06\x66ormat\x18\x04 \x01(\x0e\x32\x31.flyteidl.core.DataLoadingConfig.LiteralMapFormat\x12.\n\x0bio_strategy\x18\x05 \x01(\x0b\x32\x19.flyteidl.core.IOStrategy\"1\n\x10LiteralMapFormat\x12\x08\n\x04JSON\x10\x00\x12\x08\n\x04YAML\x10\x01\x12\t\n\x05PROTO\x10\x02\"g\n\x06K8sPod\x12\x32\n\x08metadata\x18\x01 \x01(\x0b\x32 .flyteidl.core.K8sObjectMetadata\x12)\n\x08pod_spec\x18\x02 \x01(\x0b\x32\x17.google.protobuf.Struct\"\xfc\x01\n\x11K8sObjectMetadata\x12<\n\x06labels\x18\x01 \x03(\x0b\x32,.flyteidl.core.K8sObjectMetadata.LabelsEntry\x12\x46\n\x0b\x61nnotations\x18\x02 \x03(\x0b\x32\x31.flyteidl.core.K8sObjectMetadata.AnnotationsEntry\x1a-\n\x0bLabelsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x1a\x32\n\x10\x41nnotationsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"~\n\x03Sql\x12\x11\n\tstatement\x18\x01 \x01(\t\x12+\n\x07\x64ialect\x18\x02 \x01(\x0e\x32\x1a.flyteidl.core.Sql.Dialect\"7\n\x07\x44ialect\x12\r\n\tUNDEFINED\x10\x00\x12\x08\n\x04\x41NSI\x10\x01\x12\x08\n\x04HIVE\x10\x02\x12\t\n\x05OTHER\x10\x03\x42\x36Z4github.com/flyteorg/flyteidl/gen/pb-go/flyteidl/coreb\x06proto3') , dependencies=[flyteidl_dot_core_dot_identifier__pb2.DESCRIPTOR,flyteidl_dot_core_dot_interface__pb2.DESCRIPTOR,flyteidl_dot_core_dot_literals__pb2.DESCRIPTOR,flyteidl_dot_core_dot_security__pb2.DESCRIPTOR,google_dot_protobuf_dot_duration__pb2.DESCRIPTOR,google_dot_protobuf_dot_struct__pb2.DESCRIPTOR,]) @@ -121,8 +121,8 @@ ], containing_type=None, serialized_options=None, - serialized_start=1906, - serialized_end=1979, + serialized_start=1934, + serialized_end=2007, ) _sym_db.RegisterEnumDescriptor(_CONTAINER_ARCHITECTURE) @@ -147,8 +147,8 @@ ], containing_type=None, serialized_options=None, - serialized_start=2118, - serialized_end=2194, + serialized_start=2146, + serialized_end=2222, ) _sym_db.RegisterEnumDescriptor(_IOSTRATEGY_DOWNLOADMODE) @@ -173,8 +173,8 @@ ], containing_type=None, serialized_options=None, - serialized_start=2196, - serialized_end=2265, + serialized_start=2224, + serialized_end=2293, ) _sym_db.RegisterEnumDescriptor(_IOSTRATEGY_UPLOADMODE) @@ -199,8 +199,8 @@ ], containing_type=None, serialized_options=None, - serialized_start=2462, - serialized_end=2511, + serialized_start=2490, + serialized_end=2539, ) _sym_db.RegisterEnumDescriptor(_DATALOADINGCONFIG_LITERALMAPFORMAT) @@ -229,8 +229,8 @@ ], containing_type=None, serialized_options=None, - serialized_start=2944, - serialized_end=2999, + serialized_start=2972, + serialized_end=3027, ) _sym_db.RegisterEnumDescriptor(_SQL_DIALECT) @@ -413,6 +413,13 @@ message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, serialized_options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='cache_serializable', full_name='flyteidl.core.TaskMetadata.cache_serializable', index=7, + number=9, type=8, cpp_type=7, label=1, + has_default_value=False, default_value=False, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR), ], extensions=[ ], @@ -429,7 +436,7 @@ index=0, containing_type=None, fields=[]), ], serialized_start=690, - serialized_end=975, + serialized_end=1003, ) @@ -466,8 +473,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=1451, - serialized_end=1496, + serialized_start=1479, + serialized_end=1524, ) _TASKTEMPLATE = _descriptor.Descriptor( @@ -569,8 +576,8 @@ name='target', full_name='flyteidl.core.TaskTemplate.target', index=0, containing_type=None, fields=[]), ], - serialized_start=978, - serialized_end=1506, + serialized_start=1006, + serialized_end=1534, ) @@ -600,8 +607,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=1508, - serialized_end=1547, + serialized_start=1536, + serialized_end=1575, ) @@ -688,8 +695,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=1550, - serialized_end=1979, + serialized_start=1578, + serialized_end=2007, ) @@ -728,8 +735,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=1982, - serialized_end=2265, + serialized_start=2010, + serialized_end=2293, ) @@ -788,8 +795,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=2268, - serialized_end=2511, + serialized_start=2296, + serialized_end=2539, ) @@ -826,8 +833,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=2513, - serialized_end=2616, + serialized_start=2541, + serialized_end=2644, ) @@ -864,8 +871,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=2774, - serialized_end=2819, + serialized_start=2802, + serialized_end=2847, ) _K8SOBJECTMETADATA_ANNOTATIONSENTRY = _descriptor.Descriptor( @@ -901,8 +908,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=2821, - serialized_end=2871, + serialized_start=2849, + serialized_end=2899, ) _K8SOBJECTMETADATA = _descriptor.Descriptor( @@ -938,8 +945,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=2619, - serialized_end=2871, + serialized_start=2647, + serialized_end=2899, ) @@ -977,8 +984,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=2873, - serialized_end=2999, + serialized_start=2901, + serialized_end=3027, ) _RESOURCES_RESOURCEENTRY.fields_by_name['name'].enum_type = _RESOURCES_RESOURCENAME diff --git a/gen/pb_python/flyteidl/datacatalog/datacatalog_pb2.py b/gen/pb_python/flyteidl/datacatalog/datacatalog_pb2.py index 8d6cd4acb..ed641a891 100644 --- a/gen/pb_python/flyteidl/datacatalog/datacatalog_pb2.py +++ b/gen/pb_python/flyteidl/datacatalog/datacatalog_pb2.py @@ -14,6 +14,7 @@ from flyteidl.core import literals_pb2 as flyteidl_dot_core_dot_literals__pb2 +from google.protobuf import duration_pb2 as google_dot_protobuf_dot_duration__pb2 from google.protobuf import timestamp_pb2 as google_dot_protobuf_dot_timestamp__pb2 @@ -22,34 +23,12 @@ package='datacatalog', syntax='proto3', serialized_options=None, - serialized_pb=_b('\n&flyteidl/datacatalog/datacatalog.proto\x12\x0b\x64\x61tacatalog\x1a\x1c\x66lyteidl/core/literals.proto\x1a\x1fgoogle/protobuf/timestamp.proto\"=\n\x14\x43reateDatasetRequest\x12%\n\x07\x64\x61taset\x18\x01 \x01(\x0b\x32\x14.datacatalog.Dataset\"\x17\n\x15\x43reateDatasetResponse\"<\n\x11GetDatasetRequest\x12\'\n\x07\x64\x61taset\x18\x01 \x01(\x0b\x32\x16.datacatalog.DatasetID\";\n\x12GetDatasetResponse\x12%\n\x07\x64\x61taset\x18\x01 \x01(\x0b\x32\x14.datacatalog.Dataset\"x\n\x12GetArtifactRequest\x12\'\n\x07\x64\x61taset\x18\x01 \x01(\x0b\x32\x16.datacatalog.DatasetID\x12\x15\n\x0b\x61rtifact_id\x18\x02 \x01(\tH\x00\x12\x12\n\x08tag_name\x18\x03 \x01(\tH\x00\x42\x0e\n\x0cquery_handle\">\n\x13GetArtifactResponse\x12\'\n\x08\x61rtifact\x18\x01 \x01(\x0b\x32\x15.datacatalog.Artifact\"@\n\x15\x43reateArtifactRequest\x12\'\n\x08\x61rtifact\x18\x01 \x01(\x0b\x32\x15.datacatalog.Artifact\"\x18\n\x16\x43reateArtifactResponse\".\n\rAddTagRequest\x12\x1d\n\x03tag\x18\x01 \x01(\x0b\x32\x10.datacatalog.Tag\"\x10\n\x0e\x41\x64\x64TagResponse\"\xa2\x01\n\x14ListArtifactsRequest\x12\'\n\x07\x64\x61taset\x18\x01 \x01(\x0b\x32\x16.datacatalog.DatasetID\x12-\n\x06\x66ilter\x18\x02 \x01(\x0b\x32\x1d.datacatalog.FilterExpression\x12\x32\n\npagination\x18\x03 \x01(\x0b\x32\x1e.datacatalog.PaginationOptions\"U\n\x15ListArtifactsResponse\x12(\n\tartifacts\x18\x01 \x03(\x0b\x32\x15.datacatalog.Artifact\x12\x12\n\nnext_token\x18\x02 \x01(\t\"x\n\x13ListDatasetsRequest\x12-\n\x06\x66ilter\x18\x01 \x01(\x0b\x32\x1d.datacatalog.FilterExpression\x12\x32\n\npagination\x18\x02 \x01(\x0b\x32\x1e.datacatalog.PaginationOptions\"R\n\x14ListDatasetsResponse\x12&\n\x08\x64\x61tasets\x18\x01 \x03(\x0b\x32\x14.datacatalog.Dataset\x12\x12\n\nnext_token\x18\x02 \x01(\t\"m\n\x1bGetOrReserveArtifactRequest\x12*\n\ndataset_id\x18\x01 \x01(\x0b\x32\x16.datacatalog.DatasetID\x12\x10\n\x08tag_name\x18\x02 \x01(\t\x12\x10\n\x08owner_id\x18\x03 \x01(\t\"\xb3\x01\n\x11ReservationStatus\x12\x33\n\x05state\x18\x01 \x01(\x0e\x32$.datacatalog.ReservationStatus.State\x12\'\n\x08metadata\x18\x02 \x01(\x0b\x32\x15.datacatalog.Metadata\x12\x10\n\x08owner_id\x18\x03 \x01(\t\".\n\x05State\x12\x0c\n\x08\x41\x43QUIRED\x10\x00\x12\x17\n\x13\x41LREADY_IN_PROGRESS\x10\x01\"\x90\x01\n\x1cGetOrReserveArtifactResponse\x12)\n\x08\x61rtifact\x18\x01 \x01(\x0b\x32\x15.datacatalog.ArtifactH\x00\x12<\n\x12reservation_status\x18\x02 \x01(\x0b\x32\x1e.datacatalog.ReservationStatusH\x00\x42\x07\n\x05value\"j\n\x18\x45xtendReservationRequest\x12*\n\ndataset_id\x18\x01 \x01(\x0b\x32\x16.datacatalog.DatasetID\x12\x10\n\x08tag_name\x18\x02 \x01(\t\x12\x10\n\x08owner_id\x18\x03 \x01(\t\"\x1b\n\x19\x45xtendReservationResponse\"k\n\x19ReleaseReservationRequest\x12*\n\ndataset_id\x18\x01 \x01(\x0b\x32\x16.datacatalog.DatasetID\x12\x10\n\x08tag_name\x18\x02 \x01(\t\x12\x10\n\x08owner_id\x18\x03 \x01(\t\"\x1c\n\x1aReleaseReservationResponse\"m\n\x07\x44\x61taset\x12\"\n\x02id\x18\x01 \x01(\x0b\x32\x16.datacatalog.DatasetID\x12\'\n\x08metadata\x18\x02 \x01(\x0b\x32\x15.datacatalog.Metadata\x12\x15\n\rpartitionKeys\x18\x03 \x03(\t\"\'\n\tPartition\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t\"Y\n\tDatasetID\x12\x0f\n\x07project\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x0e\n\x06\x64omain\x18\x03 \x01(\t\x12\x0f\n\x07version\x18\x04 \x01(\t\x12\x0c\n\x04UUID\x18\x05 \x01(\t\"\x8d\x02\n\x08\x41rtifact\x12\n\n\x02id\x18\x01 \x01(\t\x12\'\n\x07\x64\x61taset\x18\x02 \x01(\x0b\x32\x16.datacatalog.DatasetID\x12\'\n\x04\x64\x61ta\x18\x03 \x03(\x0b\x32\x19.datacatalog.ArtifactData\x12\'\n\x08metadata\x18\x04 \x01(\x0b\x32\x15.datacatalog.Metadata\x12*\n\npartitions\x18\x05 \x03(\x0b\x32\x16.datacatalog.Partition\x12\x1e\n\x04tags\x18\x06 \x03(\x0b\x32\x10.datacatalog.Tag\x12.\n\ncreated_at\x18\x07 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\"C\n\x0c\x41rtifactData\x12\x0c\n\x04name\x18\x01 \x01(\t\x12%\n\x05value\x18\x02 \x01(\x0b\x32\x16.flyteidl.core.Literal\"Q\n\x03Tag\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x13\n\x0b\x61rtifact_id\x18\x02 \x01(\t\x12\'\n\x07\x64\x61taset\x18\x03 \x01(\x0b\x32\x16.datacatalog.DatasetID\"m\n\x08Metadata\x12\x32\n\x07key_map\x18\x01 \x03(\x0b\x32!.datacatalog.Metadata.KeyMapEntry\x1a-\n\x0bKeyMapEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"F\n\x10\x46ilterExpression\x12\x32\n\x07\x66ilters\x18\x01 \x03(\x0b\x32!.datacatalog.SinglePropertyFilter\"\x89\x03\n\x14SinglePropertyFilter\x12\x34\n\ntag_filter\x18\x01 \x01(\x0b\x32\x1e.datacatalog.TagPropertyFilterH\x00\x12@\n\x10partition_filter\x18\x02 \x01(\x0b\x32$.datacatalog.PartitionPropertyFilterH\x00\x12>\n\x0f\x61rtifact_filter\x18\x03 \x01(\x0b\x32#.datacatalog.ArtifactPropertyFilterH\x00\x12<\n\x0e\x64\x61taset_filter\x18\x04 \x01(\x0b\x32\".datacatalog.DatasetPropertyFilterH\x00\x12\x46\n\x08operator\x18\n \x01(\x0e\x32\x34.datacatalog.SinglePropertyFilter.ComparisonOperator\" \n\x12\x43omparisonOperator\x12\n\n\x06\x45QUALS\x10\x00\x42\x11\n\x0fproperty_filter\";\n\x16\x41rtifactPropertyFilter\x12\x15\n\x0b\x61rtifact_id\x18\x01 \x01(\tH\x00\x42\n\n\x08property\"3\n\x11TagPropertyFilter\x12\x12\n\x08tag_name\x18\x01 \x01(\tH\x00\x42\n\n\x08property\"S\n\x17PartitionPropertyFilter\x12,\n\x07key_val\x18\x01 \x01(\x0b\x32\x19.datacatalog.KeyValuePairH\x00\x42\n\n\x08property\"*\n\x0cKeyValuePair\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t\"k\n\x15\x44\x61tasetPropertyFilter\x12\x11\n\x07project\x18\x01 \x01(\tH\x00\x12\x0e\n\x04name\x18\x02 \x01(\tH\x00\x12\x10\n\x06\x64omain\x18\x03 \x01(\tH\x00\x12\x11\n\x07version\x18\x04 \x01(\tH\x00\x42\n\n\x08property\"\xf1\x01\n\x11PaginationOptions\x12\r\n\x05limit\x18\x01 \x01(\r\x12\r\n\x05token\x18\x02 \x01(\t\x12\x37\n\x07sortKey\x18\x03 \x01(\x0e\x32&.datacatalog.PaginationOptions.SortKey\x12;\n\tsortOrder\x18\x04 \x01(\x0e\x32(.datacatalog.PaginationOptions.SortOrder\"*\n\tSortOrder\x12\x0e\n\nDESCENDING\x10\x00\x12\r\n\tASCENDING\x10\x01\"\x1c\n\x07SortKey\x12\x11\n\rCREATION_TIME\x10\x00\x32\x89\x07\n\x0b\x44\x61taCatalog\x12V\n\rCreateDataset\x12!.datacatalog.CreateDatasetRequest\x1a\".datacatalog.CreateDatasetResponse\x12M\n\nGetDataset\x12\x1e.datacatalog.GetDatasetRequest\x1a\x1f.datacatalog.GetDatasetResponse\x12Y\n\x0e\x43reateArtifact\x12\".datacatalog.CreateArtifactRequest\x1a#.datacatalog.CreateArtifactResponse\x12P\n\x0bGetArtifact\x12\x1f.datacatalog.GetArtifactRequest\x1a .datacatalog.GetArtifactResponse\x12\x41\n\x06\x41\x64\x64Tag\x12\x1a.datacatalog.AddTagRequest\x1a\x1b.datacatalog.AddTagResponse\x12V\n\rListArtifacts\x12!.datacatalog.ListArtifactsRequest\x1a\".datacatalog.ListArtifactsResponse\x12S\n\x0cListDatasets\x12 .datacatalog.ListDatasetsRequest\x1a!.datacatalog.ListDatasetsResponse\x12k\n\x14GetOrReserveArtifact\x12(.datacatalog.GetOrReserveArtifactRequest\x1a).datacatalog.GetOrReserveArtifactResponse\x12\x62\n\x11\x45xtendReservation\x12%.datacatalog.ExtendReservationRequest\x1a&.datacatalog.ExtendReservationResponse\x12\x65\n\x12ReleaseReservation\x12&.datacatalog.ReleaseReservationRequest\x1a\'.datacatalog.ReleaseReservationResponseb\x06proto3') + serialized_pb=_b('\n&flyteidl/datacatalog/datacatalog.proto\x12\x0b\x64\x61tacatalog\x1a\x1c\x66lyteidl/core/literals.proto\x1a\x1egoogle/protobuf/duration.proto\x1a\x1fgoogle/protobuf/timestamp.proto\"=\n\x14\x43reateDatasetRequest\x12%\n\x07\x64\x61taset\x18\x01 \x01(\x0b\x32\x14.datacatalog.Dataset\"\x17\n\x15\x43reateDatasetResponse\"<\n\x11GetDatasetRequest\x12\'\n\x07\x64\x61taset\x18\x01 \x01(\x0b\x32\x16.datacatalog.DatasetID\";\n\x12GetDatasetResponse\x12%\n\x07\x64\x61taset\x18\x01 \x01(\x0b\x32\x14.datacatalog.Dataset\"x\n\x12GetArtifactRequest\x12\'\n\x07\x64\x61taset\x18\x01 \x01(\x0b\x32\x16.datacatalog.DatasetID\x12\x15\n\x0b\x61rtifact_id\x18\x02 \x01(\tH\x00\x12\x12\n\x08tag_name\x18\x03 \x01(\tH\x00\x42\x0e\n\x0cquery_handle\">\n\x13GetArtifactResponse\x12\'\n\x08\x61rtifact\x18\x01 \x01(\x0b\x32\x15.datacatalog.Artifact\"@\n\x15\x43reateArtifactRequest\x12\'\n\x08\x61rtifact\x18\x01 \x01(\x0b\x32\x15.datacatalog.Artifact\"\x18\n\x16\x43reateArtifactResponse\".\n\rAddTagRequest\x12\x1d\n\x03tag\x18\x01 \x01(\x0b\x32\x10.datacatalog.Tag\"\x10\n\x0e\x41\x64\x64TagResponse\"\xa2\x01\n\x14ListArtifactsRequest\x12\'\n\x07\x64\x61taset\x18\x01 \x01(\x0b\x32\x16.datacatalog.DatasetID\x12-\n\x06\x66ilter\x18\x02 \x01(\x0b\x32\x1d.datacatalog.FilterExpression\x12\x32\n\npagination\x18\x03 \x01(\x0b\x32\x1e.datacatalog.PaginationOptions\"U\n\x15ListArtifactsResponse\x12(\n\tartifacts\x18\x01 \x03(\x0b\x32\x15.datacatalog.Artifact\x12\x12\n\nnext_token\x18\x02 \x01(\t\"x\n\x13ListDatasetsRequest\x12-\n\x06\x66ilter\x18\x01 \x01(\x0b\x32\x1d.datacatalog.FilterExpression\x12\x32\n\npagination\x18\x02 \x01(\x0b\x32\x1e.datacatalog.PaginationOptions\"R\n\x14ListDatasetsResponse\x12&\n\x08\x64\x61tasets\x18\x01 \x03(\x0b\x32\x14.datacatalog.Dataset\x12\x12\n\nnext_token\x18\x02 \x01(\t\"M\n\rReservationID\x12*\n\ndataset_id\x18\x01 \x01(\x0b\x32\x16.datacatalog.DatasetID\x12\x10\n\x08tag_name\x18\x02 \x01(\t\"\x9c\x01\n\x1dGetOrExtendReservationRequest\x12\x32\n\x0ereservation_id\x18\x01 \x01(\x0b\x32\x1a.datacatalog.ReservationID\x12\x10\n\x08owner_id\x18\x02 \x01(\t\x12\x35\n\x12heartbeat_interval\x18\x03 \x01(\x0b\x32\x19.google.protobuf.Duration\"\xe3\x01\n\x0bReservation\x12\x32\n\x0ereservation_id\x18\x01 \x01(\x0b\x32\x1a.datacatalog.ReservationID\x12\x10\n\x08owner_id\x18\x02 \x01(\t\x12\x35\n\x12heartbeat_interval\x18\x03 \x01(\x0b\x32\x19.google.protobuf.Duration\x12.\n\nexpires_at\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\'\n\x08metadata\x18\x06 \x01(\x0b\x32\x15.datacatalog.Metadata\"O\n\x1eGetOrExtendReservationResponse\x12-\n\x0breservation\x18\x01 \x01(\x0b\x32\x18.datacatalog.Reservation\"a\n\x19ReleaseReservationRequest\x12\x32\n\x0ereservation_id\x18\x01 \x01(\x0b\x32\x1a.datacatalog.ReservationID\x12\x10\n\x08owner_id\x18\x02 \x01(\t\"\x1c\n\x1aReleaseReservationResponse\"m\n\x07\x44\x61taset\x12\"\n\x02id\x18\x01 \x01(\x0b\x32\x16.datacatalog.DatasetID\x12\'\n\x08metadata\x18\x02 \x01(\x0b\x32\x15.datacatalog.Metadata\x12\x15\n\rpartitionKeys\x18\x03 \x03(\t\"\'\n\tPartition\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t\"Y\n\tDatasetID\x12\x0f\n\x07project\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x0e\n\x06\x64omain\x18\x03 \x01(\t\x12\x0f\n\x07version\x18\x04 \x01(\t\x12\x0c\n\x04UUID\x18\x05 \x01(\t\"\x8d\x02\n\x08\x41rtifact\x12\n\n\x02id\x18\x01 \x01(\t\x12\'\n\x07\x64\x61taset\x18\x02 \x01(\x0b\x32\x16.datacatalog.DatasetID\x12\'\n\x04\x64\x61ta\x18\x03 \x03(\x0b\x32\x19.datacatalog.ArtifactData\x12\'\n\x08metadata\x18\x04 \x01(\x0b\x32\x15.datacatalog.Metadata\x12*\n\npartitions\x18\x05 \x03(\x0b\x32\x16.datacatalog.Partition\x12\x1e\n\x04tags\x18\x06 \x03(\x0b\x32\x10.datacatalog.Tag\x12.\n\ncreated_at\x18\x07 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\"C\n\x0c\x41rtifactData\x12\x0c\n\x04name\x18\x01 \x01(\t\x12%\n\x05value\x18\x02 \x01(\x0b\x32\x16.flyteidl.core.Literal\"Q\n\x03Tag\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x13\n\x0b\x61rtifact_id\x18\x02 \x01(\t\x12\'\n\x07\x64\x61taset\x18\x03 \x01(\x0b\x32\x16.datacatalog.DatasetID\"m\n\x08Metadata\x12\x32\n\x07key_map\x18\x01 \x03(\x0b\x32!.datacatalog.Metadata.KeyMapEntry\x1a-\n\x0bKeyMapEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"F\n\x10\x46ilterExpression\x12\x32\n\x07\x66ilters\x18\x01 \x03(\x0b\x32!.datacatalog.SinglePropertyFilter\"\x89\x03\n\x14SinglePropertyFilter\x12\x34\n\ntag_filter\x18\x01 \x01(\x0b\x32\x1e.datacatalog.TagPropertyFilterH\x00\x12@\n\x10partition_filter\x18\x02 \x01(\x0b\x32$.datacatalog.PartitionPropertyFilterH\x00\x12>\n\x0f\x61rtifact_filter\x18\x03 \x01(\x0b\x32#.datacatalog.ArtifactPropertyFilterH\x00\x12<\n\x0e\x64\x61taset_filter\x18\x04 \x01(\x0b\x32\".datacatalog.DatasetPropertyFilterH\x00\x12\x46\n\x08operator\x18\n \x01(\x0e\x32\x34.datacatalog.SinglePropertyFilter.ComparisonOperator\" \n\x12\x43omparisonOperator\x12\n\n\x06\x45QUALS\x10\x00\x42\x11\n\x0fproperty_filter\";\n\x16\x41rtifactPropertyFilter\x12\x15\n\x0b\x61rtifact_id\x18\x01 \x01(\tH\x00\x42\n\n\x08property\"3\n\x11TagPropertyFilter\x12\x12\n\x08tag_name\x18\x01 \x01(\tH\x00\x42\n\n\x08property\"S\n\x17PartitionPropertyFilter\x12,\n\x07key_val\x18\x01 \x01(\x0b\x32\x19.datacatalog.KeyValuePairH\x00\x42\n\n\x08property\"*\n\x0cKeyValuePair\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t\"k\n\x15\x44\x61tasetPropertyFilter\x12\x11\n\x07project\x18\x01 \x01(\tH\x00\x12\x0e\n\x04name\x18\x02 \x01(\tH\x00\x12\x10\n\x06\x64omain\x18\x03 \x01(\tH\x00\x12\x11\n\x07version\x18\x04 \x01(\tH\x00\x42\n\n\x08property\"\xf1\x01\n\x11PaginationOptions\x12\r\n\x05limit\x18\x01 \x01(\r\x12\r\n\x05token\x18\x02 \x01(\t\x12\x37\n\x07sortKey\x18\x03 \x01(\x0e\x32&.datacatalog.PaginationOptions.SortKey\x12;\n\tsortOrder\x18\x04 \x01(\x0e\x32(.datacatalog.PaginationOptions.SortOrder\"*\n\tSortOrder\x12\x0e\n\nDESCENDING\x10\x00\x12\r\n\tASCENDING\x10\x01\"\x1c\n\x07SortKey\x12\x11\n\rCREATION_TIME\x10\x00\x32\xab\x06\n\x0b\x44\x61taCatalog\x12V\n\rCreateDataset\x12!.datacatalog.CreateDatasetRequest\x1a\".datacatalog.CreateDatasetResponse\x12M\n\nGetDataset\x12\x1e.datacatalog.GetDatasetRequest\x1a\x1f.datacatalog.GetDatasetResponse\x12Y\n\x0e\x43reateArtifact\x12\".datacatalog.CreateArtifactRequest\x1a#.datacatalog.CreateArtifactResponse\x12P\n\x0bGetArtifact\x12\x1f.datacatalog.GetArtifactRequest\x1a .datacatalog.GetArtifactResponse\x12\x41\n\x06\x41\x64\x64Tag\x12\x1a.datacatalog.AddTagRequest\x1a\x1b.datacatalog.AddTagResponse\x12V\n\rListArtifacts\x12!.datacatalog.ListArtifactsRequest\x1a\".datacatalog.ListArtifactsResponse\x12S\n\x0cListDatasets\x12 .datacatalog.ListDatasetsRequest\x1a!.datacatalog.ListDatasetsResponse\x12q\n\x16GetOrExtendReservation\x12*.datacatalog.GetOrExtendReservationRequest\x1a+.datacatalog.GetOrExtendReservationResponse\x12\x65\n\x12ReleaseReservation\x12&.datacatalog.ReleaseReservationRequest\x1a\'.datacatalog.ReleaseReservationResponseb\x06proto3') , - dependencies=[flyteidl_dot_core_dot_literals__pb2.DESCRIPTOR,google_dot_protobuf_dot_timestamp__pb2.DESCRIPTOR,]) + dependencies=[flyteidl_dot_core_dot_literals__pb2.DESCRIPTOR,google_dot_protobuf_dot_duration__pb2.DESCRIPTOR,google_dot_protobuf_dot_timestamp__pb2.DESCRIPTOR,]) -_RESERVATIONSTATUS_STATE = _descriptor.EnumDescriptor( - name='State', - full_name='datacatalog.ReservationStatus.State', - filename=None, - file=DESCRIPTOR, - values=[ - _descriptor.EnumValueDescriptor( - name='ACQUIRED', index=0, number=0, - serialized_options=None, - type=None), - _descriptor.EnumValueDescriptor( - name='ALREADY_IN_PROGRESS', index=1, number=1, - serialized_options=None, - type=None), - ], - containing_type=None, - serialized_options=None, - serialized_start=1376, - serialized_end=1422, -) -_sym_db.RegisterEnumDescriptor(_RESERVATIONSTATUS_STATE) - _SINGLEPROPERTYFILTER_COMPARISONOPERATOR = _descriptor.EnumDescriptor( name='ComparisonOperator', full_name='datacatalog.SinglePropertyFilter.ComparisonOperator', @@ -63,8 +42,8 @@ ], containing_type=None, serialized_options=None, - serialized_start=3040, - serialized_end=3072, + serialized_start=3034, + serialized_end=3066, ) _sym_db.RegisterEnumDescriptor(_SINGLEPROPERTYFILTER_COMPARISONOPERATOR) @@ -85,8 +64,8 @@ ], containing_type=None, serialized_options=None, - serialized_start=3615, - serialized_end=3657, + serialized_start=3609, + serialized_end=3651, ) _sym_db.RegisterEnumDescriptor(_PAGINATIONOPTIONS_SORTORDER) @@ -103,8 +82,8 @@ ], containing_type=None, serialized_options=None, - serialized_start=3659, - serialized_end=3687, + serialized_start=3653, + serialized_end=3681, ) _sym_db.RegisterEnumDescriptor(_PAGINATIONOPTIONS_SORTKEY) @@ -135,8 +114,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=118, - serialized_end=179, + serialized_start=150, + serialized_end=211, ) @@ -159,8 +138,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=181, - serialized_end=204, + serialized_start=213, + serialized_end=236, ) @@ -190,8 +169,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=206, - serialized_end=266, + serialized_start=238, + serialized_end=298, ) @@ -221,8 +200,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=268, - serialized_end=327, + serialized_start=300, + serialized_end=359, ) @@ -269,8 +248,8 @@ name='query_handle', full_name='datacatalog.GetArtifactRequest.query_handle', index=0, containing_type=None, fields=[]), ], - serialized_start=329, - serialized_end=449, + serialized_start=361, + serialized_end=481, ) @@ -300,8 +279,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=451, - serialized_end=513, + serialized_start=483, + serialized_end=545, ) @@ -331,8 +310,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=515, - serialized_end=579, + serialized_start=547, + serialized_end=611, ) @@ -355,8 +334,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=581, - serialized_end=605, + serialized_start=613, + serialized_end=637, ) @@ -386,8 +365,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=607, - serialized_end=653, + serialized_start=639, + serialized_end=685, ) @@ -410,8 +389,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=655, - serialized_end=671, + serialized_start=687, + serialized_end=703, ) @@ -455,8 +434,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=674, - serialized_end=836, + serialized_start=706, + serialized_end=868, ) @@ -493,8 +472,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=838, - serialized_end=923, + serialized_start=870, + serialized_end=955, ) @@ -531,8 +510,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=925, - serialized_end=1045, + serialized_start=957, + serialized_end=1077, ) @@ -569,39 +548,32 @@ extension_ranges=[], oneofs=[ ], - serialized_start=1047, - serialized_end=1129, + serialized_start=1079, + serialized_end=1161, ) -_GETORRESERVEARTIFACTREQUEST = _descriptor.Descriptor( - name='GetOrReserveArtifactRequest', - full_name='datacatalog.GetOrReserveArtifactRequest', +_RESERVATIONID = _descriptor.Descriptor( + name='ReservationID', + full_name='datacatalog.ReservationID', filename=None, file=DESCRIPTOR, containing_type=None, fields=[ _descriptor.FieldDescriptor( - name='dataset_id', full_name='datacatalog.GetOrReserveArtifactRequest.dataset_id', index=0, + name='dataset_id', full_name='datacatalog.ReservationID.dataset_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='tag_name', full_name='datacatalog.GetOrReserveArtifactRequest.tag_name', index=1, + name='tag_name', full_name='datacatalog.ReservationID.tag_name', index=1, number=2, type=9, cpp_type=9, label=1, has_default_value=False, default_value=_b("").decode('utf-8'), message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, serialized_options=None, file=DESCRIPTOR), - _descriptor.FieldDescriptor( - name='owner_id', full_name='datacatalog.GetOrReserveArtifactRequest.owner_id', index=2, - number=3, type=9, cpp_type=9, label=1, - has_default_value=False, default_value=_b("").decode('utf-8'), - message_type=None, enum_type=None, containing_type=None, - is_extension=False, extension_scope=None, - serialized_options=None, file=DESCRIPTOR), ], extensions=[ ], @@ -614,36 +586,36 @@ extension_ranges=[], oneofs=[ ], - serialized_start=1131, + serialized_start=1163, serialized_end=1240, ) -_RESERVATIONSTATUS = _descriptor.Descriptor( - name='ReservationStatus', - full_name='datacatalog.ReservationStatus', +_GETOREXTENDRESERVATIONREQUEST = _descriptor.Descriptor( + name='GetOrExtendReservationRequest', + full_name='datacatalog.GetOrExtendReservationRequest', filename=None, file=DESCRIPTOR, containing_type=None, fields=[ _descriptor.FieldDescriptor( - name='state', full_name='datacatalog.ReservationStatus.state', index=0, - number=1, type=14, cpp_type=8, label=1, - has_default_value=False, default_value=0, + name='reservation_id', full_name='datacatalog.GetOrExtendReservationRequest.reservation_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='metadata', full_name='datacatalog.ReservationStatus.metadata', index=1, - number=2, type=11, cpp_type=10, label=1, - has_default_value=False, default_value=None, + name='owner_id', full_name='datacatalog.GetOrExtendReservationRequest.owner_id', index=1, + number=2, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=_b("").decode('utf-8'), message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, serialized_options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='owner_id', full_name='datacatalog.ReservationStatus.owner_id', index=2, - number=3, type=9, cpp_type=9, label=1, - has_default_value=False, default_value=_b("").decode('utf-8'), + name='heartbeat_interval', full_name='datacatalog.GetOrExtendReservationRequest.heartbeat_interval', index=2, + number=3, 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), @@ -652,7 +624,6 @@ ], nested_types=[], enum_types=[ - _RESERVATIONSTATUS_STATE, ], serialized_options=None, is_extendable=False, @@ -661,76 +632,49 @@ oneofs=[ ], serialized_start=1243, - serialized_end=1422, + serialized_end=1399, ) -_GETORRESERVEARTIFACTRESPONSE = _descriptor.Descriptor( - name='GetOrReserveArtifactResponse', - full_name='datacatalog.GetOrReserveArtifactResponse', +_RESERVATION = _descriptor.Descriptor( + name='Reservation', + full_name='datacatalog.Reservation', filename=None, file=DESCRIPTOR, containing_type=None, fields=[ _descriptor.FieldDescriptor( - name='artifact', full_name='datacatalog.GetOrReserveArtifactResponse.artifact', index=0, + name='reservation_id', full_name='datacatalog.Reservation.reservation_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='reservation_status', full_name='datacatalog.GetOrReserveArtifactResponse.reservation_status', index=1, - number=2, type=11, cpp_type=10, label=1, - has_default_value=False, default_value=None, + name='owner_id', full_name='datacatalog.Reservation.owner_id', index=1, + number=2, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=_b("").decode('utf-8'), 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=[ - _descriptor.OneofDescriptor( - name='value', full_name='datacatalog.GetOrReserveArtifactResponse.value', - index=0, containing_type=None, fields=[]), - ], - serialized_start=1425, - serialized_end=1569, -) - - -_EXTENDRESERVATIONREQUEST = _descriptor.Descriptor( - name='ExtendReservationRequest', - full_name='datacatalog.ExtendReservationRequest', - filename=None, - file=DESCRIPTOR, - containing_type=None, - fields=[ _descriptor.FieldDescriptor( - name='dataset_id', full_name='datacatalog.ExtendReservationRequest.dataset_id', index=0, - number=1, type=11, cpp_type=10, label=1, + name='heartbeat_interval', full_name='datacatalog.Reservation.heartbeat_interval', index=2, + number=3, 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='tag_name', full_name='datacatalog.ExtendReservationRequest.tag_name', index=1, - number=2, type=9, cpp_type=9, label=1, - has_default_value=False, default_value=_b("").decode('utf-8'), + name='expires_at', full_name='datacatalog.Reservation.expires_at', index=3, + number=4, 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='owner_id', full_name='datacatalog.ExtendReservationRequest.owner_id', index=2, - number=3, type=9, cpp_type=9, label=1, - has_default_value=False, default_value=_b("").decode('utf-8'), + name='metadata', full_name='datacatalog.Reservation.metadata', index=4, + number=6, 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), @@ -746,18 +690,25 @@ extension_ranges=[], oneofs=[ ], - serialized_start=1571, - serialized_end=1677, + serialized_start=1402, + serialized_end=1629, ) -_EXTENDRESERVATIONRESPONSE = _descriptor.Descriptor( - name='ExtendReservationResponse', - full_name='datacatalog.ExtendReservationResponse', +_GETOREXTENDRESERVATIONRESPONSE = _descriptor.Descriptor( + name='GetOrExtendReservationResponse', + full_name='datacatalog.GetOrExtendReservationResponse', filename=None, file=DESCRIPTOR, containing_type=None, fields=[ + _descriptor.FieldDescriptor( + name='reservation', full_name='datacatalog.GetOrExtendReservationResponse.reservation', 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), ], extensions=[ ], @@ -770,8 +721,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=1679, - serialized_end=1706, + serialized_start=1631, + serialized_end=1710, ) @@ -783,26 +734,19 @@ containing_type=None, fields=[ _descriptor.FieldDescriptor( - name='dataset_id', full_name='datacatalog.ReleaseReservationRequest.dataset_id', index=0, + name='reservation_id', full_name='datacatalog.ReleaseReservationRequest.reservation_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='tag_name', full_name='datacatalog.ReleaseReservationRequest.tag_name', index=1, + name='owner_id', full_name='datacatalog.ReleaseReservationRequest.owner_id', index=1, number=2, type=9, cpp_type=9, label=1, has_default_value=False, default_value=_b("").decode('utf-8'), message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, serialized_options=None, file=DESCRIPTOR), - _descriptor.FieldDescriptor( - name='owner_id', full_name='datacatalog.ReleaseReservationRequest.owner_id', index=2, - number=3, type=9, cpp_type=9, label=1, - has_default_value=False, default_value=_b("").decode('utf-8'), - message_type=None, enum_type=None, containing_type=None, - is_extension=False, extension_scope=None, - serialized_options=None, file=DESCRIPTOR), ], extensions=[ ], @@ -815,8 +759,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=1708, - serialized_end=1815, + serialized_start=1712, + serialized_end=1809, ) @@ -839,8 +783,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=1817, - serialized_end=1845, + serialized_start=1811, + serialized_end=1839, ) @@ -884,8 +828,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=1847, - serialized_end=1956, + serialized_start=1841, + serialized_end=1950, ) @@ -922,8 +866,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=1958, - serialized_end=1997, + serialized_start=1952, + serialized_end=1991, ) @@ -981,8 +925,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=1999, - serialized_end=2088, + serialized_start=1993, + serialized_end=2082, ) @@ -1054,8 +998,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=2091, - serialized_end=2360, + serialized_start=2085, + serialized_end=2354, ) @@ -1092,8 +1036,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=2362, - serialized_end=2429, + serialized_start=2356, + serialized_end=2423, ) @@ -1137,8 +1081,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=2431, - serialized_end=2512, + serialized_start=2425, + serialized_end=2506, ) @@ -1175,8 +1119,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=2578, - serialized_end=2623, + serialized_start=2572, + serialized_end=2617, ) _METADATA = _descriptor.Descriptor( @@ -1205,8 +1149,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=2514, - serialized_end=2623, + serialized_start=2508, + serialized_end=2617, ) @@ -1236,8 +1180,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=2625, - serialized_end=2695, + serialized_start=2619, + serialized_end=2689, ) @@ -1299,8 +1243,8 @@ name='property_filter', full_name='datacatalog.SinglePropertyFilter.property_filter', index=0, containing_type=None, fields=[]), ], - serialized_start=2698, - serialized_end=3091, + serialized_start=2692, + serialized_end=3085, ) @@ -1333,8 +1277,8 @@ name='property', full_name='datacatalog.ArtifactPropertyFilter.property', index=0, containing_type=None, fields=[]), ], - serialized_start=3093, - serialized_end=3152, + serialized_start=3087, + serialized_end=3146, ) @@ -1367,8 +1311,8 @@ name='property', full_name='datacatalog.TagPropertyFilter.property', index=0, containing_type=None, fields=[]), ], - serialized_start=3154, - serialized_end=3205, + serialized_start=3148, + serialized_end=3199, ) @@ -1401,8 +1345,8 @@ name='property', full_name='datacatalog.PartitionPropertyFilter.property', index=0, containing_type=None, fields=[]), ], - serialized_start=3207, - serialized_end=3290, + serialized_start=3201, + serialized_end=3284, ) @@ -1439,8 +1383,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=3292, - serialized_end=3334, + serialized_start=3286, + serialized_end=3328, ) @@ -1494,8 +1438,8 @@ name='property', full_name='datacatalog.DatasetPropertyFilter.property', index=0, containing_type=None, fields=[]), ], - serialized_start=3336, - serialized_end=3443, + serialized_start=3330, + serialized_end=3437, ) @@ -1548,8 +1492,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=3446, - serialized_end=3687, + serialized_start=3440, + serialized_end=3681, ) _CREATEDATASETREQUEST.fields_by_name['dataset'].message_type = _DATASET @@ -1572,20 +1516,15 @@ _LISTDATASETSREQUEST.fields_by_name['filter'].message_type = _FILTEREXPRESSION _LISTDATASETSREQUEST.fields_by_name['pagination'].message_type = _PAGINATIONOPTIONS _LISTDATASETSRESPONSE.fields_by_name['datasets'].message_type = _DATASET -_GETORRESERVEARTIFACTREQUEST.fields_by_name['dataset_id'].message_type = _DATASETID -_RESERVATIONSTATUS.fields_by_name['state'].enum_type = _RESERVATIONSTATUS_STATE -_RESERVATIONSTATUS.fields_by_name['metadata'].message_type = _METADATA -_RESERVATIONSTATUS_STATE.containing_type = _RESERVATIONSTATUS -_GETORRESERVEARTIFACTRESPONSE.fields_by_name['artifact'].message_type = _ARTIFACT -_GETORRESERVEARTIFACTRESPONSE.fields_by_name['reservation_status'].message_type = _RESERVATIONSTATUS -_GETORRESERVEARTIFACTRESPONSE.oneofs_by_name['value'].fields.append( - _GETORRESERVEARTIFACTRESPONSE.fields_by_name['artifact']) -_GETORRESERVEARTIFACTRESPONSE.fields_by_name['artifact'].containing_oneof = _GETORRESERVEARTIFACTRESPONSE.oneofs_by_name['value'] -_GETORRESERVEARTIFACTRESPONSE.oneofs_by_name['value'].fields.append( - _GETORRESERVEARTIFACTRESPONSE.fields_by_name['reservation_status']) -_GETORRESERVEARTIFACTRESPONSE.fields_by_name['reservation_status'].containing_oneof = _GETORRESERVEARTIFACTRESPONSE.oneofs_by_name['value'] -_EXTENDRESERVATIONREQUEST.fields_by_name['dataset_id'].message_type = _DATASETID -_RELEASERESERVATIONREQUEST.fields_by_name['dataset_id'].message_type = _DATASETID +_RESERVATIONID.fields_by_name['dataset_id'].message_type = _DATASETID +_GETOREXTENDRESERVATIONREQUEST.fields_by_name['reservation_id'].message_type = _RESERVATIONID +_GETOREXTENDRESERVATIONREQUEST.fields_by_name['heartbeat_interval'].message_type = google_dot_protobuf_dot_duration__pb2._DURATION +_RESERVATION.fields_by_name['reservation_id'].message_type = _RESERVATIONID +_RESERVATION.fields_by_name['heartbeat_interval'].message_type = google_dot_protobuf_dot_duration__pb2._DURATION +_RESERVATION.fields_by_name['expires_at'].message_type = google_dot_protobuf_dot_timestamp__pb2._TIMESTAMP +_RESERVATION.fields_by_name['metadata'].message_type = _METADATA +_GETOREXTENDRESERVATIONRESPONSE.fields_by_name['reservation'].message_type = _RESERVATION +_RELEASERESERVATIONREQUEST.fields_by_name['reservation_id'].message_type = _RESERVATIONID _DATASET.fields_by_name['id'].message_type = _DATASETID _DATASET.fields_by_name['metadata'].message_type = _METADATA _ARTIFACT.fields_by_name['dataset'].message_type = _DATASETID @@ -1657,11 +1596,10 @@ DESCRIPTOR.message_types_by_name['ListArtifactsResponse'] = _LISTARTIFACTSRESPONSE DESCRIPTOR.message_types_by_name['ListDatasetsRequest'] = _LISTDATASETSREQUEST DESCRIPTOR.message_types_by_name['ListDatasetsResponse'] = _LISTDATASETSRESPONSE -DESCRIPTOR.message_types_by_name['GetOrReserveArtifactRequest'] = _GETORRESERVEARTIFACTREQUEST -DESCRIPTOR.message_types_by_name['ReservationStatus'] = _RESERVATIONSTATUS -DESCRIPTOR.message_types_by_name['GetOrReserveArtifactResponse'] = _GETORRESERVEARTIFACTRESPONSE -DESCRIPTOR.message_types_by_name['ExtendReservationRequest'] = _EXTENDRESERVATIONREQUEST -DESCRIPTOR.message_types_by_name['ExtendReservationResponse'] = _EXTENDRESERVATIONRESPONSE +DESCRIPTOR.message_types_by_name['ReservationID'] = _RESERVATIONID +DESCRIPTOR.message_types_by_name['GetOrExtendReservationRequest'] = _GETOREXTENDRESERVATIONREQUEST +DESCRIPTOR.message_types_by_name['Reservation'] = _RESERVATION +DESCRIPTOR.message_types_by_name['GetOrExtendReservationResponse'] = _GETOREXTENDRESERVATIONRESPONSE DESCRIPTOR.message_types_by_name['ReleaseReservationRequest'] = _RELEASERESERVATIONREQUEST DESCRIPTOR.message_types_by_name['ReleaseReservationResponse'] = _RELEASERESERVATIONRESPONSE DESCRIPTOR.message_types_by_name['Dataset'] = _DATASET @@ -1779,40 +1717,33 @@ )) _sym_db.RegisterMessage(ListDatasetsResponse) -GetOrReserveArtifactRequest = _reflection.GeneratedProtocolMessageType('GetOrReserveArtifactRequest', (_message.Message,), dict( - DESCRIPTOR = _GETORRESERVEARTIFACTREQUEST, +ReservationID = _reflection.GeneratedProtocolMessageType('ReservationID', (_message.Message,), dict( + DESCRIPTOR = _RESERVATIONID, __module__ = 'flyteidl.datacatalog.datacatalog_pb2' - # @@protoc_insertion_point(class_scope:datacatalog.GetOrReserveArtifactRequest) + # @@protoc_insertion_point(class_scope:datacatalog.ReservationID) )) -_sym_db.RegisterMessage(GetOrReserveArtifactRequest) +_sym_db.RegisterMessage(ReservationID) -ReservationStatus = _reflection.GeneratedProtocolMessageType('ReservationStatus', (_message.Message,), dict( - DESCRIPTOR = _RESERVATIONSTATUS, +GetOrExtendReservationRequest = _reflection.GeneratedProtocolMessageType('GetOrExtendReservationRequest', (_message.Message,), dict( + DESCRIPTOR = _GETOREXTENDRESERVATIONREQUEST, __module__ = 'flyteidl.datacatalog.datacatalog_pb2' - # @@protoc_insertion_point(class_scope:datacatalog.ReservationStatus) + # @@protoc_insertion_point(class_scope:datacatalog.GetOrExtendReservationRequest) )) -_sym_db.RegisterMessage(ReservationStatus) +_sym_db.RegisterMessage(GetOrExtendReservationRequest) -GetOrReserveArtifactResponse = _reflection.GeneratedProtocolMessageType('GetOrReserveArtifactResponse', (_message.Message,), dict( - DESCRIPTOR = _GETORRESERVEARTIFACTRESPONSE, +Reservation = _reflection.GeneratedProtocolMessageType('Reservation', (_message.Message,), dict( + DESCRIPTOR = _RESERVATION, __module__ = 'flyteidl.datacatalog.datacatalog_pb2' - # @@protoc_insertion_point(class_scope:datacatalog.GetOrReserveArtifactResponse) + # @@protoc_insertion_point(class_scope:datacatalog.Reservation) )) -_sym_db.RegisterMessage(GetOrReserveArtifactResponse) +_sym_db.RegisterMessage(Reservation) -ExtendReservationRequest = _reflection.GeneratedProtocolMessageType('ExtendReservationRequest', (_message.Message,), dict( - DESCRIPTOR = _EXTENDRESERVATIONREQUEST, +GetOrExtendReservationResponse = _reflection.GeneratedProtocolMessageType('GetOrExtendReservationResponse', (_message.Message,), dict( + DESCRIPTOR = _GETOREXTENDRESERVATIONRESPONSE, __module__ = 'flyteidl.datacatalog.datacatalog_pb2' - # @@protoc_insertion_point(class_scope:datacatalog.ExtendReservationRequest) + # @@protoc_insertion_point(class_scope:datacatalog.GetOrExtendReservationResponse) )) -_sym_db.RegisterMessage(ExtendReservationRequest) - -ExtendReservationResponse = _reflection.GeneratedProtocolMessageType('ExtendReservationResponse', (_message.Message,), dict( - DESCRIPTOR = _EXTENDRESERVATIONRESPONSE, - __module__ = 'flyteidl.datacatalog.datacatalog_pb2' - # @@protoc_insertion_point(class_scope:datacatalog.ExtendReservationResponse) - )) -_sym_db.RegisterMessage(ExtendReservationResponse) +_sym_db.RegisterMessage(GetOrExtendReservationResponse) ReleaseReservationRequest = _reflection.GeneratedProtocolMessageType('ReleaseReservationRequest', (_message.Message,), dict( DESCRIPTOR = _RELEASERESERVATIONREQUEST, @@ -1950,8 +1881,8 @@ file=DESCRIPTOR, index=0, serialized_options=None, - serialized_start=3690, - serialized_end=4595, + serialized_start=3684, + serialized_end=4495, methods=[ _descriptor.MethodDescriptor( name='CreateDataset', @@ -2017,27 +1948,18 @@ serialized_options=None, ), _descriptor.MethodDescriptor( - name='GetOrReserveArtifact', - full_name='datacatalog.DataCatalog.GetOrReserveArtifact', + name='GetOrExtendReservation', + full_name='datacatalog.DataCatalog.GetOrExtendReservation', index=7, containing_service=None, - input_type=_GETORRESERVEARTIFACTREQUEST, - output_type=_GETORRESERVEARTIFACTRESPONSE, - serialized_options=None, - ), - _descriptor.MethodDescriptor( - name='ExtendReservation', - full_name='datacatalog.DataCatalog.ExtendReservation', - index=8, - containing_service=None, - input_type=_EXTENDRESERVATIONREQUEST, - output_type=_EXTENDRESERVATIONRESPONSE, + input_type=_GETOREXTENDRESERVATIONREQUEST, + output_type=_GETOREXTENDRESERVATIONRESPONSE, serialized_options=None, ), _descriptor.MethodDescriptor( name='ReleaseReservation', full_name='datacatalog.DataCatalog.ReleaseReservation', - index=9, + index=8, containing_service=None, input_type=_RELEASERESERVATIONREQUEST, output_type=_RELEASERESERVATIONRESPONSE, diff --git a/gen/pb_python/flyteidl/datacatalog/datacatalog_pb2_grpc.py b/gen/pb_python/flyteidl/datacatalog/datacatalog_pb2_grpc.py index 7d766ccbe..90dd279b6 100644 --- a/gen/pb_python/flyteidl/datacatalog/datacatalog_pb2_grpc.py +++ b/gen/pb_python/flyteidl/datacatalog/datacatalog_pb2_grpc.py @@ -52,15 +52,10 @@ def __init__(self, channel): request_serializer=flyteidl_dot_datacatalog_dot_datacatalog__pb2.ListDatasetsRequest.SerializeToString, response_deserializer=flyteidl_dot_datacatalog_dot_datacatalog__pb2.ListDatasetsResponse.FromString, ) - self.GetOrReserveArtifact = channel.unary_unary( - '/datacatalog.DataCatalog/GetOrReserveArtifact', - request_serializer=flyteidl_dot_datacatalog_dot_datacatalog__pb2.GetOrReserveArtifactRequest.SerializeToString, - response_deserializer=flyteidl_dot_datacatalog_dot_datacatalog__pb2.GetOrReserveArtifactResponse.FromString, - ) - self.ExtendReservation = channel.unary_unary( - '/datacatalog.DataCatalog/ExtendReservation', - request_serializer=flyteidl_dot_datacatalog_dot_datacatalog__pb2.ExtendReservationRequest.SerializeToString, - response_deserializer=flyteidl_dot_datacatalog_dot_datacatalog__pb2.ExtendReservationResponse.FromString, + self.GetOrExtendReservation = channel.unary_unary( + '/datacatalog.DataCatalog/GetOrExtendReservation', + request_serializer=flyteidl_dot_datacatalog_dot_datacatalog__pb2.GetOrExtendReservationRequest.SerializeToString, + response_deserializer=flyteidl_dot_datacatalog_dot_datacatalog__pb2.GetOrExtendReservationResponse.FromString, ) self.ReleaseReservation = channel.unary_unary( '/datacatalog.DataCatalog/ReleaseReservation', @@ -127,29 +122,18 @@ def ListDatasets(self, request, context): context.set_details('Method not implemented!') raise NotImplementedError('Method not implemented!') - def GetOrReserveArtifact(self, request, context): - """Get an artifact and the corresponding data. If the artifact does not exist, - try to reserve a spot for populating the artifact. - Once you preserve a spot, you should call ExtendReservation API periodically - to extend the reservation. Otherwise, the reservation can expire and other - tasks may take the spot. - If the same owner_id calls this API for the same dataset and it has an active reservation and the artifacts have not been written yet by a different owner, the API will respond with an Acquired Reservation Status (providing idempotency). - Note: We may have multiple concurrent tasks with the same signature - and the same input that try to populate the same artifact at the same time. - Thus with reservation, only one task can run at a time, until the reservation - expires. - Note: If task A does not extend the reservation in time and the reservation - expires, another task B may take over the reservation, resulting in two tasks - A and B running in parallel. So a third task C may get the Artifact from A or B, - whichever writes last. - """ - context.set_code(grpc.StatusCode.UNIMPLEMENTED) - context.set_details('Method not implemented!') - raise NotImplementedError('Method not implemented!') - - def ExtendReservation(self, request, context): - """Extend the reservation to keep it from expiring. If the reservation expires, - other tasks can take over the reservation by calling GetOrReserveArtifact. + def GetOrExtendReservation(self, request, context): + """Attempts to get or extend a reservation for the corresponding artifact. If one already exists + (ie. another entity owns the reservation) then that reservation is retrieved. + Once you acquire a reservation, you need to periodically extend the reservation with an + identical call. If the reservation is not extended before the defined expiration, it may be + acquired by another task. + Note: We may have multiple concurrent tasks with the same signature and the same input that + try to populate the same artifact at the same time. Thus with reservation, only one task can + run at a time, until the reservation expires. + Note: If task A does not extend the reservation in time and the reservation expires, another + task B may take over the reservation, resulting in two tasks A and B running in parallel. So + a third task C may get the Artifact from A or B, whichever writes last. """ context.set_code(grpc.StatusCode.UNIMPLEMENTED) context.set_details('Method not implemented!') @@ -201,15 +185,10 @@ def add_DataCatalogServicer_to_server(servicer, server): request_deserializer=flyteidl_dot_datacatalog_dot_datacatalog__pb2.ListDatasetsRequest.FromString, response_serializer=flyteidl_dot_datacatalog_dot_datacatalog__pb2.ListDatasetsResponse.SerializeToString, ), - 'GetOrReserveArtifact': grpc.unary_unary_rpc_method_handler( - servicer.GetOrReserveArtifact, - request_deserializer=flyteidl_dot_datacatalog_dot_datacatalog__pb2.GetOrReserveArtifactRequest.FromString, - response_serializer=flyteidl_dot_datacatalog_dot_datacatalog__pb2.GetOrReserveArtifactResponse.SerializeToString, - ), - 'ExtendReservation': grpc.unary_unary_rpc_method_handler( - servicer.ExtendReservation, - request_deserializer=flyteidl_dot_datacatalog_dot_datacatalog__pb2.ExtendReservationRequest.FromString, - response_serializer=flyteidl_dot_datacatalog_dot_datacatalog__pb2.ExtendReservationResponse.SerializeToString, + 'GetOrExtendReservation': grpc.unary_unary_rpc_method_handler( + servicer.GetOrExtendReservation, + request_deserializer=flyteidl_dot_datacatalog_dot_datacatalog__pb2.GetOrExtendReservationRequest.FromString, + response_serializer=flyteidl_dot_datacatalog_dot_datacatalog__pb2.GetOrExtendReservationResponse.SerializeToString, ), 'ReleaseReservation': grpc.unary_unary_rpc_method_handler( servicer.ReleaseReservation, diff --git a/gen/pb_python/flyteidl/event/event_pb2.py b/gen/pb_python/flyteidl/event/event_pb2.py index f337f74d1..a073ba5a1 100644 --- a/gen/pb_python/flyteidl/event/event_pb2.py +++ b/gen/pb_python/flyteidl/event/event_pb2.py @@ -27,7 +27,7 @@ package='flyteidl.event', syntax='proto3', serialized_options=_b('Z5github.com/flyteorg/flyteidl/gen/pb-go/flyteidl/event'), - serialized_pb=_b('\n\x1a\x66lyteidl/event/event.proto\x12\x0e\x66lyteidl.event\x1a\x1c\x66lyteidl/core/literals.proto\x1a\x1c\x66lyteidl/core/compiler.proto\x1a\x1d\x66lyteidl/core/execution.proto\x1a\x1e\x66lyteidl/core/identifier.proto\x1a\x1b\x66lyteidl/core/catalog.proto\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\x1cgoogle/protobuf/struct.proto\"\xe0\x02\n\x16WorkflowExecutionEvent\x12@\n\x0c\x65xecution_id\x18\x01 \x01(\x0b\x32*.flyteidl.core.WorkflowExecutionIdentifier\x12\x13\n\x0bproducer_id\x18\x02 \x01(\t\x12\x35\n\x05phase\x18\x03 \x01(\x0e\x32&.flyteidl.core.WorkflowExecution.Phase\x12/\n\x0boccurred_at\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x14\n\noutput_uri\x18\x05 \x01(\tH\x00\x12.\n\x05\x65rror\x18\x06 \x01(\x0b\x32\x1d.flyteidl.core.ExecutionErrorH\x00\x12\x30\n\x0boutput_data\x18\x07 \x01(\x0b\x32\x19.flyteidl.core.LiteralMapH\x00\x42\x0f\n\routput_result\"\xcc\x05\n\x12NodeExecutionEvent\x12\x32\n\x02id\x18\x01 \x01(\x0b\x32&.flyteidl.core.NodeExecutionIdentifier\x12\x13\n\x0bproducer_id\x18\x02 \x01(\t\x12\x31\n\x05phase\x18\x03 \x01(\x0e\x32\".flyteidl.core.NodeExecution.Phase\x12/\n\x0boccurred_at\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x11\n\tinput_uri\x18\x05 \x01(\t\x12\x14\n\noutput_uri\x18\x06 \x01(\tH\x00\x12.\n\x05\x65rror\x18\x07 \x01(\x0b\x32\x1d.flyteidl.core.ExecutionErrorH\x00\x12\x30\n\x0boutput_data\x18\x0f \x01(\x0b\x32\x19.flyteidl.core.LiteralMapH\x00\x12\x46\n\x16workflow_node_metadata\x18\x08 \x01(\x0b\x32$.flyteidl.event.WorkflowNodeMetadataH\x01\x12>\n\x12task_node_metadata\x18\x0e \x01(\x0b\x32 .flyteidl.event.TaskNodeMetadataH\x01\x12I\n\x14parent_task_metadata\x18\t \x01(\x0b\x32+.flyteidl.event.ParentTaskExecutionMetadata\x12I\n\x14parent_node_metadata\x18\n \x01(\x0b\x32+.flyteidl.event.ParentNodeExecutionMetadata\x12\x13\n\x0bretry_group\x18\x0b \x01(\t\x12\x14\n\x0cspec_node_id\x18\x0c \x01(\t\x12\x11\n\tnode_name\x18\r \x01(\tB\x0f\n\routput_resultB\x11\n\x0ftarget_metadata\"X\n\x14WorkflowNodeMetadata\x12@\n\x0c\x65xecution_id\x18\x01 \x01(\x0b\x32*.flyteidl.core.WorkflowExecutionIdentifier\"\xc7\x01\n\x10TaskNodeMetadata\x12\x37\n\x0c\x63\x61\x63he_status\x18\x01 \x01(\x0e\x32!.flyteidl.core.CatalogCacheStatus\x12\x33\n\x0b\x63\x61talog_key\x18\x02 \x01(\x0b\x32\x1e.flyteidl.core.CatalogMetadata\x12\x45\n\x10\x64ynamic_workflow\x18\x10 \x01(\x0b\x32+.flyteidl.event.DynamicWorkflowNodeMetadata\"\x87\x01\n\x1b\x44ynamicWorkflowNodeMetadata\x12%\n\x02id\x18\x01 \x01(\x0b\x32\x19.flyteidl.core.Identifier\x12\x41\n\x11\x63ompiled_workflow\x18\x02 \x01(\x0b\x32&.flyteidl.core.CompiledWorkflowClosure\"Q\n\x1bParentTaskExecutionMetadata\x12\x32\n\x02id\x18\x01 \x01(\x0b\x32&.flyteidl.core.TaskExecutionIdentifier\".\n\x1bParentNodeExecutionMetadata\x12\x0f\n\x07node_id\x18\x01 \x01(\t\"\xfd\x04\n\x12TaskExecutionEvent\x12*\n\x07task_id\x18\x01 \x01(\x0b\x32\x19.flyteidl.core.Identifier\x12H\n\x18parent_node_execution_id\x18\x02 \x01(\x0b\x32&.flyteidl.core.NodeExecutionIdentifier\x12\x15\n\rretry_attempt\x18\x03 \x01(\r\x12\x31\n\x05phase\x18\x04 \x01(\x0e\x32\".flyteidl.core.TaskExecution.Phase\x12\x13\n\x0bproducer_id\x18\x05 \x01(\t\x12$\n\x04logs\x18\x06 \x03(\x0b\x32\x16.flyteidl.core.TaskLog\x12/\n\x0boccurred_at\x18\x07 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x11\n\tinput_uri\x18\x08 \x01(\t\x12\x14\n\noutput_uri\x18\t \x01(\tH\x00\x12.\n\x05\x65rror\x18\n \x01(\x0b\x32\x1d.flyteidl.core.ExecutionErrorH\x00\x12\x30\n\x0boutput_data\x18\x11 \x01(\x0b\x32\x19.flyteidl.core.LiteralMapH\x00\x12,\n\x0b\x63ustom_info\x18\x0b \x01(\x0b\x32\x17.google.protobuf.Struct\x12\x15\n\rphase_version\x18\x0c \x01(\r\x12\x0e\n\x06reason\x18\r \x01(\t\x12\x11\n\ttask_type\x18\x0e \x01(\t\x12\x37\n\x08metadata\x18\x10 \x01(\x0b\x32%.flyteidl.event.TaskExecutionMetadataB\x0f\n\routput_result\"+\n\x14\x45xternalResourceInfo\x12\x13\n\x0b\x65xternal_id\x18\x01 \x01(\t\"?\n\x10ResourcePoolInfo\x12\x18\n\x10\x61llocation_token\x18\x01 \x01(\t\x12\x11\n\tnamespace\x18\x02 \x01(\t\"\xc8\x02\n\x15TaskExecutionMetadata\x12\x16\n\x0egenerated_name\x18\x01 \x01(\t\x12@\n\x12\x65xternal_resources\x18\x02 \x03(\x0b\x32$.flyteidl.event.ExternalResourceInfo\x12<\n\x12resource_pool_info\x18\x03 \x03(\x0b\x32 .flyteidl.event.ResourcePoolInfo\x12\x19\n\x11plugin_identifier\x18\x04 \x01(\t\x12K\n\x0einstance_class\x18\x10 \x01(\x0e\x32\x33.flyteidl.event.TaskExecutionMetadata.InstanceClass\"/\n\rInstanceClass\x12\x0b\n\x07\x44\x45\x46\x41ULT\x10\x00\x12\x11\n\rINTERRUPTIBLE\x10\x01\x42\x37Z5github.com/flyteorg/flyteidl/gen/pb-go/flyteidl/eventb\x06proto3') + serialized_pb=_b('\n\x1a\x66lyteidl/event/event.proto\x12\x0e\x66lyteidl.event\x1a\x1c\x66lyteidl/core/literals.proto\x1a\x1c\x66lyteidl/core/compiler.proto\x1a\x1d\x66lyteidl/core/execution.proto\x1a\x1e\x66lyteidl/core/identifier.proto\x1a\x1b\x66lyteidl/core/catalog.proto\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\x1cgoogle/protobuf/struct.proto\"\xe0\x02\n\x16WorkflowExecutionEvent\x12@\n\x0c\x65xecution_id\x18\x01 \x01(\x0b\x32*.flyteidl.core.WorkflowExecutionIdentifier\x12\x13\n\x0bproducer_id\x18\x02 \x01(\t\x12\x35\n\x05phase\x18\x03 \x01(\x0e\x32&.flyteidl.core.WorkflowExecution.Phase\x12/\n\x0boccurred_at\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x14\n\noutput_uri\x18\x05 \x01(\tH\x00\x12.\n\x05\x65rror\x18\x06 \x01(\x0b\x32\x1d.flyteidl.core.ExecutionErrorH\x00\x12\x30\n\x0boutput_data\x18\x07 \x01(\x0b\x32\x19.flyteidl.core.LiteralMapH\x00\x42\x0f\n\routput_result\"\xcc\x05\n\x12NodeExecutionEvent\x12\x32\n\x02id\x18\x01 \x01(\x0b\x32&.flyteidl.core.NodeExecutionIdentifier\x12\x13\n\x0bproducer_id\x18\x02 \x01(\t\x12\x31\n\x05phase\x18\x03 \x01(\x0e\x32\".flyteidl.core.NodeExecution.Phase\x12/\n\x0boccurred_at\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x11\n\tinput_uri\x18\x05 \x01(\t\x12\x14\n\noutput_uri\x18\x06 \x01(\tH\x00\x12.\n\x05\x65rror\x18\x07 \x01(\x0b\x32\x1d.flyteidl.core.ExecutionErrorH\x00\x12\x30\n\x0boutput_data\x18\x0f \x01(\x0b\x32\x19.flyteidl.core.LiteralMapH\x00\x12\x46\n\x16workflow_node_metadata\x18\x08 \x01(\x0b\x32$.flyteidl.event.WorkflowNodeMetadataH\x01\x12>\n\x12task_node_metadata\x18\x0e \x01(\x0b\x32 .flyteidl.event.TaskNodeMetadataH\x01\x12I\n\x14parent_task_metadata\x18\t \x01(\x0b\x32+.flyteidl.event.ParentTaskExecutionMetadata\x12I\n\x14parent_node_metadata\x18\n \x01(\x0b\x32+.flyteidl.event.ParentNodeExecutionMetadata\x12\x13\n\x0bretry_group\x18\x0b \x01(\t\x12\x14\n\x0cspec_node_id\x18\x0c \x01(\t\x12\x11\n\tnode_name\x18\r \x01(\tB\x0f\n\routput_resultB\x11\n\x0ftarget_metadata\"X\n\x14WorkflowNodeMetadata\x12@\n\x0c\x65xecution_id\x18\x01 \x01(\x0b\x32*.flyteidl.core.WorkflowExecutionIdentifier\"\x8d\x02\n\x10TaskNodeMetadata\x12\x37\n\x0c\x63\x61\x63he_status\x18\x01 \x01(\x0e\x32!.flyteidl.core.CatalogCacheStatus\x12\x33\n\x0b\x63\x61talog_key\x18\x02 \x01(\x0b\x32\x1e.flyteidl.core.CatalogMetadata\x12\x44\n\x12reservation_status\x18\x03 \x01(\x0e\x32(.flyteidl.core.CatalogReservation.Status\x12\x45\n\x10\x64ynamic_workflow\x18\x10 \x01(\x0b\x32+.flyteidl.event.DynamicWorkflowNodeMetadata\"\x87\x01\n\x1b\x44ynamicWorkflowNodeMetadata\x12%\n\x02id\x18\x01 \x01(\x0b\x32\x19.flyteidl.core.Identifier\x12\x41\n\x11\x63ompiled_workflow\x18\x02 \x01(\x0b\x32&.flyteidl.core.CompiledWorkflowClosure\"Q\n\x1bParentTaskExecutionMetadata\x12\x32\n\x02id\x18\x01 \x01(\x0b\x32&.flyteidl.core.TaskExecutionIdentifier\".\n\x1bParentNodeExecutionMetadata\x12\x0f\n\x07node_id\x18\x01 \x01(\t\"\xfd\x04\n\x12TaskExecutionEvent\x12*\n\x07task_id\x18\x01 \x01(\x0b\x32\x19.flyteidl.core.Identifier\x12H\n\x18parent_node_execution_id\x18\x02 \x01(\x0b\x32&.flyteidl.core.NodeExecutionIdentifier\x12\x15\n\rretry_attempt\x18\x03 \x01(\r\x12\x31\n\x05phase\x18\x04 \x01(\x0e\x32\".flyteidl.core.TaskExecution.Phase\x12\x13\n\x0bproducer_id\x18\x05 \x01(\t\x12$\n\x04logs\x18\x06 \x03(\x0b\x32\x16.flyteidl.core.TaskLog\x12/\n\x0boccurred_at\x18\x07 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x11\n\tinput_uri\x18\x08 \x01(\t\x12\x14\n\noutput_uri\x18\t \x01(\tH\x00\x12.\n\x05\x65rror\x18\n \x01(\x0b\x32\x1d.flyteidl.core.ExecutionErrorH\x00\x12\x30\n\x0boutput_data\x18\x11 \x01(\x0b\x32\x19.flyteidl.core.LiteralMapH\x00\x12,\n\x0b\x63ustom_info\x18\x0b \x01(\x0b\x32\x17.google.protobuf.Struct\x12\x15\n\rphase_version\x18\x0c \x01(\r\x12\x0e\n\x06reason\x18\r \x01(\t\x12\x11\n\ttask_type\x18\x0e \x01(\t\x12\x37\n\x08metadata\x18\x10 \x01(\x0b\x32%.flyteidl.event.TaskExecutionMetadataB\x0f\n\routput_result\"+\n\x14\x45xternalResourceInfo\x12\x13\n\x0b\x65xternal_id\x18\x01 \x01(\t\"?\n\x10ResourcePoolInfo\x12\x18\n\x10\x61llocation_token\x18\x01 \x01(\t\x12\x11\n\tnamespace\x18\x02 \x01(\t\"\xc8\x02\n\x15TaskExecutionMetadata\x12\x16\n\x0egenerated_name\x18\x01 \x01(\t\x12@\n\x12\x65xternal_resources\x18\x02 \x03(\x0b\x32$.flyteidl.event.ExternalResourceInfo\x12<\n\x12resource_pool_info\x18\x03 \x03(\x0b\x32 .flyteidl.event.ResourcePoolInfo\x12\x19\n\x11plugin_identifier\x18\x04 \x01(\t\x12K\n\x0einstance_class\x18\x10 \x01(\x0e\x32\x33.flyteidl.event.TaskExecutionMetadata.InstanceClass\"/\n\rInstanceClass\x12\x0b\n\x07\x44\x45\x46\x41ULT\x10\x00\x12\x11\n\rINTERRUPTIBLE\x10\x01\x42\x37Z5github.com/flyteorg/flyteidl/gen/pb-go/flyteidl/eventb\x06proto3') , dependencies=[flyteidl_dot_core_dot_literals__pb2.DESCRIPTOR,flyteidl_dot_core_dot_compiler__pb2.DESCRIPTOR,flyteidl_dot_core_dot_execution__pb2.DESCRIPTOR,flyteidl_dot_core_dot_identifier__pb2.DESCRIPTOR,flyteidl_dot_core_dot_catalog__pb2.DESCRIPTOR,google_dot_protobuf_dot_timestamp__pb2.DESCRIPTOR,google_dot_protobuf_dot_struct__pb2.DESCRIPTOR,]) @@ -50,8 +50,8 @@ ], containing_type=None, serialized_options=None, - serialized_start=2928, - serialized_end=2975, + serialized_start=2998, + serialized_end=3045, ) _sym_db.RegisterEnumDescriptor(_TASKEXECUTIONMETADATA_INSTANCECLASS) @@ -320,7 +320,14 @@ is_extension=False, extension_scope=None, serialized_options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='dynamic_workflow', full_name='flyteidl.event.TaskNodeMetadata.dynamic_workflow', index=2, + name='reservation_status', full_name='flyteidl.event.TaskNodeMetadata.reservation_status', index=2, + number=3, 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), + _descriptor.FieldDescriptor( + name='dynamic_workflow', full_name='flyteidl.event.TaskNodeMetadata.dynamic_workflow', index=3, number=16, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, @@ -339,7 +346,7 @@ oneofs=[ ], serialized_start=1426, - serialized_end=1625, + serialized_end=1695, ) @@ -376,8 +383,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=1628, - serialized_end=1763, + serialized_start=1698, + serialized_end=1833, ) @@ -407,8 +414,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=1765, - serialized_end=1846, + serialized_start=1835, + serialized_end=1916, ) @@ -438,8 +445,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=1848, - serialized_end=1894, + serialized_start=1918, + serialized_end=1964, ) @@ -577,8 +584,8 @@ name='output_result', full_name='flyteidl.event.TaskExecutionEvent.output_result', index=0, containing_type=None, fields=[]), ], - serialized_start=1897, - serialized_end=2534, + serialized_start=1967, + serialized_end=2604, ) @@ -608,8 +615,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=2536, - serialized_end=2579, + serialized_start=2606, + serialized_end=2649, ) @@ -646,8 +653,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=2581, - serialized_end=2644, + serialized_start=2651, + serialized_end=2714, ) @@ -706,8 +713,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=2647, - serialized_end=2975, + serialized_start=2717, + serialized_end=3045, ) _WORKFLOWEXECUTIONEVENT.fields_by_name['execution_id'].message_type = flyteidl_dot_core_dot_identifier__pb2._WORKFLOWEXECUTIONIDENTIFIER @@ -751,6 +758,7 @@ _WORKFLOWNODEMETADATA.fields_by_name['execution_id'].message_type = flyteidl_dot_core_dot_identifier__pb2._WORKFLOWEXECUTIONIDENTIFIER _TASKNODEMETADATA.fields_by_name['cache_status'].enum_type = flyteidl_dot_core_dot_catalog__pb2._CATALOGCACHESTATUS _TASKNODEMETADATA.fields_by_name['catalog_key'].message_type = flyteidl_dot_core_dot_catalog__pb2._CATALOGMETADATA +_TASKNODEMETADATA.fields_by_name['reservation_status'].enum_type = flyteidl_dot_core_dot_catalog__pb2._CATALOGRESERVATION_STATUS _TASKNODEMETADATA.fields_by_name['dynamic_workflow'].message_type = _DYNAMICWORKFLOWNODEMETADATA _DYNAMICWORKFLOWNODEMETADATA.fields_by_name['id'].message_type = flyteidl_dot_core_dot_identifier__pb2._IDENTIFIER _DYNAMICWORKFLOWNODEMETADATA.fields_by_name['compiled_workflow'].message_type = flyteidl_dot_core_dot_compiler__pb2._COMPILEDWORKFLOWCLOSURE diff --git a/gen/pb_python/flyteidl/service/flyteadmin/README.md b/gen/pb_python/flyteidl/service/flyteadmin/README.md index 3c8c04b31..ba7852072 100644 --- a/gen/pb_python/flyteidl/service/flyteadmin/README.md +++ b/gen/pb_python/flyteidl/service/flyteadmin/README.md @@ -230,6 +230,7 @@ Class | Method | HTTP request | Description - [AdminWorkflowList](docs/AdminWorkflowList.md) - [AdminWorkflowSpec](docs/AdminWorkflowSpec.md) - [BlobTypeBlobDimensionality](docs/BlobTypeBlobDimensionality.md) + - [CatalogReservationStatus](docs/CatalogReservationStatus.md) - [ComparisonExpressionOperator](docs/ComparisonExpressionOperator.md) - [ConjunctionExpressionLogicalOperator](docs/ConjunctionExpressionLogicalOperator.md) - [ConnectionSetIdList](docs/ConnectionSetIdList.md) diff --git a/gen/pb_python/flyteidl/service/flyteadmin/flyteadmin/__init__.py b/gen/pb_python/flyteidl/service/flyteadmin/flyteadmin/__init__.py index 30bc2cc7e..69242958b 100644 --- a/gen/pb_python/flyteidl/service/flyteadmin/flyteadmin/__init__.py +++ b/gen/pb_python/flyteidl/service/flyteadmin/flyteadmin/__init__.py @@ -129,6 +129,7 @@ from flyteadmin.models.admin_workflow_list import AdminWorkflowList from flyteadmin.models.admin_workflow_spec import AdminWorkflowSpec from flyteadmin.models.blob_type_blob_dimensionality import BlobTypeBlobDimensionality +from flyteadmin.models.catalog_reservation_status import CatalogReservationStatus from flyteadmin.models.comparison_expression_operator import ComparisonExpressionOperator from flyteadmin.models.conjunction_expression_logical_operator import ConjunctionExpressionLogicalOperator from flyteadmin.models.connection_set_id_list import ConnectionSetIdList diff --git a/gen/pb_python/flyteidl/service/flyteadmin/flyteadmin/models/__init__.py b/gen/pb_python/flyteidl/service/flyteadmin/flyteadmin/models/__init__.py index 366e4f09a..fc208a42f 100644 --- a/gen/pb_python/flyteidl/service/flyteadmin/flyteadmin/models/__init__.py +++ b/gen/pb_python/flyteidl/service/flyteadmin/flyteadmin/models/__init__.py @@ -122,6 +122,7 @@ from flyteadmin.models.admin_workflow_list import AdminWorkflowList from flyteadmin.models.admin_workflow_spec import AdminWorkflowSpec from flyteadmin.models.blob_type_blob_dimensionality import BlobTypeBlobDimensionality +from flyteadmin.models.catalog_reservation_status import CatalogReservationStatus from flyteadmin.models.comparison_expression_operator import ComparisonExpressionOperator from flyteadmin.models.conjunction_expression_logical_operator import ConjunctionExpressionLogicalOperator from flyteadmin.models.connection_set_id_list import ConnectionSetIdList diff --git a/gen/pb_python/flyteidl/service/flyteadmin/flyteadmin/models/catalog_reservation_status.py b/gen/pb_python/flyteidl/service/flyteadmin/flyteadmin/models/catalog_reservation_status.py new file mode 100644 index 000000000..f51859542 --- /dev/null +++ b/gen/pb_python/flyteidl/service/flyteadmin/flyteadmin/models/catalog_reservation_status.py @@ -0,0 +1,96 @@ +# 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 CatalogReservationStatus(object): + """NOTE: This class is auto generated by the swagger code generator program. + + Do not edit the class manually. + """ + + """ + allowed enum values + """ + DISABLED = "RESERVATION_DISABLED" + ACQUIRED = "RESERVATION_ACQUIRED" + EXISTS = "RESERVATION_EXISTS" + RELEASED = "RESERVATION_RELEASED" + FAILURE = "RESERVATION_FAILURE" + + """ + 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 + """CatalogReservationStatus - 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(CatalogReservationStatus, 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, CatalogReservationStatus): + 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/gen/pb_python/flyteidl/service/flyteadmin/flyteadmin/models/core_task_metadata.py b/gen/pb_python/flyteidl/service/flyteadmin/flyteadmin/models/core_task_metadata.py index 47b7e5dcd..f270005d6 100644 --- a/gen/pb_python/flyteidl/service/flyteadmin/flyteadmin/models/core_task_metadata.py +++ b/gen/pb_python/flyteidl/service/flyteadmin/flyteadmin/models/core_task_metadata.py @@ -40,7 +40,8 @@ class CoreTaskMetadata(object): 'retries': 'CoreRetryStrategy', 'discovery_version': 'str', 'deprecated_error_message': 'str', - 'interruptible': 'bool' + 'interruptible': 'bool', + 'cache_serializable': 'bool' } attribute_map = { @@ -50,10 +51,11 @@ class CoreTaskMetadata(object): 'retries': 'retries', 'discovery_version': 'discovery_version', 'deprecated_error_message': 'deprecated_error_message', - 'interruptible': 'interruptible' + 'interruptible': 'interruptible', + 'cache_serializable': 'cache_serializable' } - def __init__(self, discoverable=None, runtime=None, timeout=None, retries=None, discovery_version=None, deprecated_error_message=None, interruptible=None): # noqa: E501 + def __init__(self, discoverable=None, runtime=None, timeout=None, retries=None, discovery_version=None, deprecated_error_message=None, interruptible=None, cache_serializable=None): # noqa: E501 """CoreTaskMetadata - a model defined in Swagger""" # noqa: E501 self._discoverable = None @@ -63,6 +65,7 @@ def __init__(self, discoverable=None, runtime=None, timeout=None, retries=None, self._discovery_version = None self._deprecated_error_message = None self._interruptible = None + self._cache_serializable = None self.discriminator = None if discoverable is not None: @@ -79,6 +82,8 @@ def __init__(self, discoverable=None, runtime=None, timeout=None, retries=None, self.deprecated_error_message = deprecated_error_message if interruptible is not None: self.interruptible = interruptible + if cache_serializable is not None: + self.cache_serializable = cache_serializable @property def discoverable(self): @@ -239,6 +244,27 @@ def interruptible(self, interruptible): self._interruptible = interruptible + @property + def cache_serializable(self): + """Gets the cache_serializable of this CoreTaskMetadata. # noqa: E501 + + + :return: The cache_serializable of this CoreTaskMetadata. # noqa: E501 + :rtype: bool + """ + return self._cache_serializable + + @cache_serializable.setter + def cache_serializable(self, cache_serializable): + """Sets the cache_serializable of this CoreTaskMetadata. + + + :param cache_serializable: The cache_serializable of this CoreTaskMetadata. # noqa: E501 + :type: bool + """ + + self._cache_serializable = cache_serializable + def to_dict(self): """Returns the model properties as a dict""" result = {} diff --git a/gen/pb_python/flyteidl/service/flyteadmin/flyteadmin/models/flyteidlevent_task_node_metadata.py b/gen/pb_python/flyteidl/service/flyteadmin/flyteadmin/models/flyteidlevent_task_node_metadata.py index 0ea160303..85bd28156 100644 --- a/gen/pb_python/flyteidl/service/flyteadmin/flyteadmin/models/flyteidlevent_task_node_metadata.py +++ b/gen/pb_python/flyteidl/service/flyteadmin/flyteadmin/models/flyteidlevent_task_node_metadata.py @@ -16,6 +16,7 @@ import six +from flyteadmin.models.catalog_reservation_status import CatalogReservationStatus # noqa: F401,E501 from flyteadmin.models.core_catalog_cache_status import CoreCatalogCacheStatus # noqa: F401,E501 from flyteadmin.models.core_catalog_metadata import CoreCatalogMetadata # noqa: F401,E501 from flyteadmin.models.flyteidlevent_dynamic_workflow_node_metadata import FlyteidleventDynamicWorkflowNodeMetadata # noqa: F401,E501 @@ -37,20 +38,23 @@ class FlyteidleventTaskNodeMetadata(object): swagger_types = { 'cache_status': 'CoreCatalogCacheStatus', 'catalog_key': 'CoreCatalogMetadata', + 'reservation_status': 'CatalogReservationStatus', 'dynamic_workflow': 'FlyteidleventDynamicWorkflowNodeMetadata' } attribute_map = { 'cache_status': 'cache_status', 'catalog_key': 'catalog_key', + 'reservation_status': 'reservation_status', 'dynamic_workflow': 'dynamic_workflow' } - def __init__(self, cache_status=None, catalog_key=None, dynamic_workflow=None): # noqa: E501 + def __init__(self, cache_status=None, catalog_key=None, reservation_status=None, dynamic_workflow=None): # noqa: E501 """FlyteidleventTaskNodeMetadata - a model defined in Swagger""" # noqa: E501 self._cache_status = None self._catalog_key = None + self._reservation_status = None self._dynamic_workflow = None self.discriminator = None @@ -58,6 +62,8 @@ def __init__(self, cache_status=None, catalog_key=None, dynamic_workflow=None): self.cache_status = cache_status if catalog_key is not None: self.catalog_key = catalog_key + if reservation_status is not None: + self.reservation_status = reservation_status if dynamic_workflow is not None: self.dynamic_workflow = dynamic_workflow @@ -105,6 +111,29 @@ def catalog_key(self, catalog_key): self._catalog_key = catalog_key + @property + def reservation_status(self): + """Gets the reservation_status of this FlyteidleventTaskNodeMetadata. # noqa: E501 + + Captures the status of cache reservations for this execution. # noqa: E501 + + :return: The reservation_status of this FlyteidleventTaskNodeMetadata. # noqa: E501 + :rtype: CatalogReservationStatus + """ + return self._reservation_status + + @reservation_status.setter + def reservation_status(self, reservation_status): + """Sets the reservation_status of this FlyteidleventTaskNodeMetadata. + + Captures the status of cache reservations for this execution. # noqa: E501 + + :param reservation_status: The reservation_status of this FlyteidleventTaskNodeMetadata. # noqa: E501 + :type: CatalogReservationStatus + """ + + self._reservation_status = reservation_status + @property def dynamic_workflow(self): """Gets the dynamic_workflow of this FlyteidleventTaskNodeMetadata. # noqa: E501 diff --git a/gen/pb_python/flyteidl/service/flyteadmin/test/test_catalog_reservation_status.py b/gen/pb_python/flyteidl/service/flyteadmin/test/test_catalog_reservation_status.py new file mode 100644 index 000000000..1e797b8aa --- /dev/null +++ b/gen/pb_python/flyteidl/service/flyteadmin/test/test_catalog_reservation_status.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.catalog_reservation_status import CatalogReservationStatus # noqa: E501 +from flyteadmin.rest import ApiException + + +class TestCatalogReservationStatus(unittest.TestCase): + """CatalogReservationStatus unit test stubs""" + + def setUp(self): + pass + + def tearDown(self): + pass + + def testCatalogReservationStatus(self): + """Test CatalogReservationStatus""" + # FIXME: construct object with mandatory attributes with example values + # model = flyteadmin.models.catalog_reservation_status.CatalogReservationStatus() # noqa: E501 + pass + + +if __name__ == '__main__': + unittest.main() diff --git a/protos/docs/admin/admin.rst b/protos/docs/admin/admin.rst index 30fe069bb..87a5cc757 100644 --- a/protos/docs/admin/admin.rst +++ b/protos/docs/admin/admin.rst @@ -2260,31 +2260,32 @@ Note: This is internal to Admin and doesn't need to be exposed to other componen -.. _ref_flyteidl/admin/project.proto: +.. _ref_flyteidl/admin/project_domain_attributes.proto: -flyteidl/admin/project.proto +flyteidl/admin/project_domain_attributes.proto ================================================================== -.. _ref_flyteidl.admin.Domain: +.. _ref_flyteidl.admin.ProjectDomainAttributes: -Domain +ProjectDomainAttributes ------------------------------------------------------------------ -Namespace within a project commonly used to differentiate between different service instances. -e.g. "production", "development", etc. +Defines a set of custom matching attributes which defines resource defaults for a project and domain. +For more info on matchable attributes, see :ref:`ref_flyteidl.admin.MatchableAttributesConfiguration` -.. csv-table:: Domain type fields +.. csv-table:: ProjectDomainAttributes type fields :header: "Field", "Type", "Label", "Description" :widths: auto - "id", ":ref:`ref_string`", "", "Globally unique domain name." - "name", ":ref:`ref_string`", "", "Display name." + "project", ":ref:`ref_string`", "", "Unique project id for which this set of attributes will be applied." + "domain", ":ref:`ref_string`", "", "Unique domain id for which this set of attributes will be applied." + "matching_attributes", ":ref:`ref_flyteidl.admin.MatchingAttributes`", "", "" @@ -2292,25 +2293,23 @@ e.g. "production", "development", etc. -.. _ref_flyteidl.admin.Project: +.. _ref_flyteidl.admin.ProjectDomainAttributesDeleteRequest: -Project +ProjectDomainAttributesDeleteRequest ------------------------------------------------------------------ -Top-level namespace used to classify different entities like workflows and executions. +Request to delete a set matchable project domain attribute override. +For more info on matchable attributes, see :ref:`ref_flyteidl.admin.MatchableAttributesConfiguration` -.. csv-table:: Project type fields +.. csv-table:: ProjectDomainAttributesDeleteRequest type fields :header: "Field", "Type", "Label", "Description" :widths: auto - "id", ":ref:`ref_string`", "", "Globally unique project name." - "name", ":ref:`ref_string`", "", "Display name." - "domains", ":ref:`ref_flyteidl.admin.Domain`", "repeated", "" - "description", ":ref:`ref_string`", "", "" - "labels", ":ref:`ref_flyteidl.admin.Labels`", "", "Leverage Labels from flyteidel.admin.common.proto to tag projects with ownership information." - "state", ":ref:`ref_flyteidl.admin.Project.ProjectState`", "", "" + "project", ":ref:`ref_string`", "", "Unique project id which this set of attributes references. +required" + "domain", ":ref:`ref_string`", "", "Unique domain id which this set of attributes references. +required" + "resource_type", ":ref:`ref_flyteidl.admin.MatchableResource`", "", "Which type of matchable attributes to delete. +required" @@ -2318,24 +2317,13 @@ Top-level namespace used to classify different entities like workflows and execu -.. _ref_flyteidl.admin.ProjectListRequest: +.. _ref_flyteidl.admin.ProjectDomainAttributesDeleteResponse: -ProjectListRequest +ProjectDomainAttributesDeleteResponse ------------------------------------------------------------------ -Request to retrieve a list of projects matching specified filters. -See :ref:`ref_flyteidl.admin.Project` for more details - - - -.. csv-table:: ProjectListRequest type fields - :header: "Field", "Type", "Label", "Description" - :widths: auto +Purposefully empty, may be populated in the future. - "limit", ":ref:`ref_uint32`", "", "Indicates the number of projects to be returned. +required" - "token", ":ref:`ref_string`", "", "In the case of multiple pages of results, this server-provided token can be used to fetch the next page in a query. +optional" - "filters", ":ref:`ref_string`", "", "Indicates a list of filters passed as string. More info on constructing filters : +optional" - "sort_by", ":ref:`ref_flyteidl.admin.Sort`", "", "Sort ordering. +optional" @@ -2343,21 +2331,23 @@ See :ref:`ref_flyteidl.admin.Project` for more details -.. _ref_flyteidl.admin.ProjectRegisterRequest: +.. _ref_flyteidl.admin.ProjectDomainAttributesGetRequest: -ProjectRegisterRequest +ProjectDomainAttributesGetRequest ------------------------------------------------------------------ -Adds a new user-project within the Flyte deployment. -See :ref:`ref_flyteidl.admin.Project` for more details +Request to get an individual project domain attribute override. +For more info on matchable attributes, see :ref:`ref_flyteidl.admin.MatchableAttributesConfiguration` -.. csv-table:: ProjectRegisterRequest type fields +.. csv-table:: ProjectDomainAttributesGetRequest type fields :header: "Field", "Type", "Label", "Description" :widths: auto - "project", ":ref:`ref_flyteidl.admin.Project`", "", "+required" + "project", ":ref:`ref_string`", "", "Unique project id which this set of attributes references. +required" + "domain", ":ref:`ref_string`", "", "Unique domain id which this set of attributes references. +required" + "resource_type", ":ref:`ref_flyteidl.admin.MatchableResource`", "", "Which type of matchable attributes to return. +required" @@ -2365,27 +2355,21 @@ See :ref:`ref_flyteidl.admin.Project` for more details -.. _ref_flyteidl.admin.ProjectRegisterResponse: +.. _ref_flyteidl.admin.ProjectDomainAttributesGetResponse: -ProjectRegisterResponse +ProjectDomainAttributesGetResponse ------------------------------------------------------------------ -Purposefully empty, may be updated in the future. - - - - - - - +Response to get an individual project domain attribute override. +For more info on matchable attributes, see :ref:`ref_flyteidl.admin.MatchableAttributesConfiguration` -.. _ref_flyteidl.admin.ProjectUpdateResponse: -ProjectUpdateResponse ------------------------------------------------------------------- -Purposefully empty, may be updated in the future. +.. csv-table:: ProjectDomainAttributesGetResponse type fields + :header: "Field", "Type", "Label", "Description" + :widths: auto + "attributes", ":ref:`ref_flyteidl.admin.ProjectDomainAttributes`", "", "" @@ -2393,45 +2377,41 @@ Purposefully empty, may be updated in the future. -.. _ref_flyteidl.admin.Projects: +.. _ref_flyteidl.admin.ProjectDomainAttributesUpdateRequest: -Projects +ProjectDomainAttributesUpdateRequest ------------------------------------------------------------------ -Represents a list of projects. -See :ref:`ref_flyteidl.admin.Project` for more details +Sets custom attributes for a project-domain combination. +For more info on matchable attributes, see :ref:`ref_flyteidl.admin.MatchableAttributesConfiguration` -.. csv-table:: Projects type fields +.. csv-table:: ProjectDomainAttributesUpdateRequest type fields :header: "Field", "Type", "Label", "Description" :widths: auto - "projects", ":ref:`ref_flyteidl.admin.Project`", "repeated", "" - "token", ":ref:`ref_string`", "", "In the case of multiple pages of results, the server-provided token can be used to fetch the next page in a query. If there are no more results, this value will be empty." - + "attributes", ":ref:`ref_flyteidl.admin.ProjectDomainAttributes`", "", "+required" - -.. _ref_flyteidl.admin.Project.ProjectState: +.. _ref_flyteidl.admin.ProjectDomainAttributesUpdateResponse: -Project.ProjectState +ProjectDomainAttributesUpdateResponse ------------------------------------------------------------------ -The state of the project is used to control its visibility in the UI and validity. +Purposefully empty, may be populated in the future. + -.. csv-table:: Enum Project.ProjectState values - :header: "Name", "Number", "Description" - :widths: auto - "ACTIVE", "0", "By default, all projects are considered active." - "ARCHIVED", "1", "Archived projects are no longer visible in the UI and no longer valid." - "SYSTEM_GENERATED", "2", "System generated projects that aren't explicitly created or managed by a user." + + + + @@ -2442,32 +2422,31 @@ The state of the project is used to control its visibility in the UI and validit -.. _ref_flyteidl/admin/project_domain_attributes.proto: +.. _ref_flyteidl/admin/project.proto: -flyteidl/admin/project_domain_attributes.proto +flyteidl/admin/project.proto ================================================================== -.. _ref_flyteidl.admin.ProjectDomainAttributes: +.. _ref_flyteidl.admin.Domain: -ProjectDomainAttributes +Domain ------------------------------------------------------------------ -Defines a set of custom matching attributes which defines resource defaults for a project and domain. -For more info on matchable attributes, see :ref:`ref_flyteidl.admin.MatchableAttributesConfiguration` +Namespace within a project commonly used to differentiate between different service instances. +e.g. "production", "development", etc. -.. csv-table:: ProjectDomainAttributes type fields +.. csv-table:: Domain type fields :header: "Field", "Type", "Label", "Description" :widths: auto - "project", ":ref:`ref_string`", "", "Unique project id for which this set of attributes will be applied." - "domain", ":ref:`ref_string`", "", "Unique domain id for which this set of attributes will be applied." - "matching_attributes", ":ref:`ref_flyteidl.admin.MatchingAttributes`", "", "" + "id", ":ref:`ref_string`", "", "Globally unique domain name." + "name", ":ref:`ref_string`", "", "Display name." @@ -2475,23 +2454,25 @@ For more info on matchable attributes, see :ref:`ref_flyteidl.admin.MatchableAtt -.. _ref_flyteidl.admin.ProjectDomainAttributesDeleteRequest: +.. _ref_flyteidl.admin.Project: -ProjectDomainAttributesDeleteRequest +Project ------------------------------------------------------------------ -Request to delete a set matchable project domain attribute override. -For more info on matchable attributes, see :ref:`ref_flyteidl.admin.MatchableAttributesConfiguration` +Top-level namespace used to classify different entities like workflows and executions. -.. csv-table:: ProjectDomainAttributesDeleteRequest type fields +.. csv-table:: Project type fields :header: "Field", "Type", "Label", "Description" :widths: auto - "project", ":ref:`ref_string`", "", "Unique project id which this set of attributes references. +required" - "domain", ":ref:`ref_string`", "", "Unique domain id which this set of attributes references. +required" - "resource_type", ":ref:`ref_flyteidl.admin.MatchableResource`", "", "Which type of matchable attributes to delete. +required" + "id", ":ref:`ref_string`", "", "Globally unique project name." + "name", ":ref:`ref_string`", "", "Display name." + "domains", ":ref:`ref_flyteidl.admin.Domain`", "repeated", "" + "description", ":ref:`ref_string`", "", "" + "labels", ":ref:`ref_flyteidl.admin.Labels`", "", "Leverage Labels from flyteidel.admin.common.proto to tag projects with ownership information." + "state", ":ref:`ref_flyteidl.admin.Project.ProjectState`", "", "" @@ -2499,37 +2480,46 @@ For more info on matchable attributes, see :ref:`ref_flyteidl.admin.MatchableAtt -.. _ref_flyteidl.admin.ProjectDomainAttributesDeleteResponse: +.. _ref_flyteidl.admin.ProjectListRequest: -ProjectDomainAttributesDeleteResponse +ProjectListRequest ------------------------------------------------------------------ -Purposefully empty, may be populated in the future. +Request to retrieve a list of projects matching specified filters. +See :ref:`ref_flyteidl.admin.Project` for more details +.. csv-table:: ProjectListRequest type fields + :header: "Field", "Type", "Label", "Description" + :widths: auto + "limit", ":ref:`ref_uint32`", "", "Indicates the number of projects to be returned. +required" + "token", ":ref:`ref_string`", "", "In the case of multiple pages of results, this server-provided token can be used to fetch the next page in a query. +optional" + "filters", ":ref:`ref_string`", "", "Indicates a list of filters passed as string. More info on constructing filters : +optional" + "sort_by", ":ref:`ref_flyteidl.admin.Sort`", "", "Sort ordering. +optional" -.. _ref_flyteidl.admin.ProjectDomainAttributesGetRequest: -ProjectDomainAttributesGetRequest + + +.. _ref_flyteidl.admin.ProjectRegisterRequest: + +ProjectRegisterRequest ------------------------------------------------------------------ -Request to get an individual project domain attribute override. -For more info on matchable attributes, see :ref:`ref_flyteidl.admin.MatchableAttributesConfiguration` +Adds a new user-project within the Flyte deployment. +See :ref:`ref_flyteidl.admin.Project` for more details -.. csv-table:: ProjectDomainAttributesGetRequest type fields +.. csv-table:: ProjectRegisterRequest type fields :header: "Field", "Type", "Label", "Description" :widths: auto - "project", ":ref:`ref_string`", "", "Unique project id which this set of attributes references. +required" - "domain", ":ref:`ref_string`", "", "Unique domain id which this set of attributes references. +required" - "resource_type", ":ref:`ref_flyteidl.admin.MatchableResource`", "", "Which type of matchable attributes to return. +required" + "project", ":ref:`ref_flyteidl.admin.Project`", "", "+required" @@ -2537,63 +2527,73 @@ For more info on matchable attributes, see :ref:`ref_flyteidl.admin.MatchableAtt -.. _ref_flyteidl.admin.ProjectDomainAttributesGetResponse: +.. _ref_flyteidl.admin.ProjectRegisterResponse: -ProjectDomainAttributesGetResponse +ProjectRegisterResponse ------------------------------------------------------------------ -Response to get an individual project domain attribute override. -For more info on matchable attributes, see :ref:`ref_flyteidl.admin.MatchableAttributesConfiguration` +Purposefully empty, may be updated in the future. -.. csv-table:: ProjectDomainAttributesGetResponse type fields - :header: "Field", "Type", "Label", "Description" - :widths: auto - "attributes", ":ref:`ref_flyteidl.admin.ProjectDomainAttributes`", "", "" +.. _ref_flyteidl.admin.ProjectUpdateResponse: +ProjectUpdateResponse +------------------------------------------------------------------ +Purposefully empty, may be updated in the future. -.. _ref_flyteidl.admin.ProjectDomainAttributesUpdateRequest: -ProjectDomainAttributesUpdateRequest ------------------------------------------------------------------- -Sets custom attributes for a project-domain combination. -For more info on matchable attributes, see :ref:`ref_flyteidl.admin.MatchableAttributesConfiguration` -.. csv-table:: ProjectDomainAttributesUpdateRequest type fields - :header: "Field", "Type", "Label", "Description" - :widths: auto - "attributes", ":ref:`ref_flyteidl.admin.ProjectDomainAttributes`", "", "+required" +.. _ref_flyteidl.admin.Projects: +Projects +------------------------------------------------------------------ +Represents a list of projects. +See :ref:`ref_flyteidl.admin.Project` for more details +.. csv-table:: Projects type fields + :header: "Field", "Type", "Label", "Description" + :widths: auto -.. _ref_flyteidl.admin.ProjectDomainAttributesUpdateResponse: + "projects", ":ref:`ref_flyteidl.admin.Project`", "repeated", "" + "token", ":ref:`ref_string`", "", "In the case of multiple pages of results, the server-provided token can be used to fetch the next page in a query. If there are no more results, this value will be empty." -ProjectDomainAttributesUpdateResponse ------------------------------------------------------------------- -Purposefully empty, may be populated in the future. + - +.. _ref_flyteidl.admin.Project.ProjectState: + +Project.ProjectState +------------------------------------------------------------------ + +The state of the project is used to control its visibility in the UI and validity. + +.. csv-table:: Enum Project.ProjectState values + :header: "Name", "Number", "Description" + :widths: auto + + "ACTIVE", "0", "By default, all projects are considered active." + "ARCHIVED", "1", "Archived projects are no longer visible in the UI and no longer valid." + "SYSTEM_GENERATED", "2", "System generated projects that aren't explicitly created or managed by a user." @@ -2707,32 +2707,34 @@ Represents a frequency at which to run a schedule. -.. _ref_flyteidl/admin/task.proto: +.. _ref_flyteidl/admin/task_execution.proto: -flyteidl/admin/task.proto +flyteidl/admin/task_execution.proto ================================================================== -.. _ref_flyteidl.admin.Task: +.. _ref_flyteidl.admin.TaskExecution: -Task +TaskExecution ------------------------------------------------------------------ -Flyte workflows are composed of many ordered tasks. That is small, reusable, self-contained logical blocks -arranged to process workflow inputs and produce a deterministic set of outputs. -Tasks can come in many varieties tuned for specialized behavior. +Encapsulates all details for a single task execution entity. +A task execution represents an instantiated task, including all inputs and additional +metadata as well as computed results included state, outputs, and duration-based attributes. -.. csv-table:: Task type fields +.. csv-table:: TaskExecution type fields :header: "Field", "Type", "Label", "Description" :widths: auto - "id", ":ref:`ref_flyteidl.core.Identifier`", "", "id represents the unique identifier of the task." - "closure", ":ref:`ref_flyteidl.admin.TaskClosure`", "", "closure encapsulates all the fields that maps to a compiled version of the task." + "id", ":ref:`ref_flyteidl.core.TaskExecutionIdentifier`", "", "Unique identifier for the task execution." + "input_uri", ":ref:`ref_string`", "", "Path to remote data store where input blob is stored." + "closure", ":ref:`ref_flyteidl.admin.TaskExecutionClosure`", "", "Task execution details and results." + "is_parent", ":ref:`ref_bool`", "", "Whether this task spawned nodes." @@ -2740,22 +2742,32 @@ Tasks can come in many varieties tuned for specialized behavior. -.. _ref_flyteidl.admin.TaskClosure: +.. _ref_flyteidl.admin.TaskExecutionClosure: -TaskClosure +TaskExecutionClosure ------------------------------------------------------------------ -Compute task attributes which include values derived from the TaskSpec, as well as plugin-specific data -and task metadata. +Container for task execution details and results. -.. csv-table:: TaskClosure type fields +.. csv-table:: TaskExecutionClosure type fields :header: "Field", "Type", "Label", "Description" :widths: auto - "compiled_task", ":ref:`ref_flyteidl.core.CompiledTask`", "", "Represents the compiled representation of the task from the specification provided." - "created_at", ":ref:`ref_google.protobuf.Timestamp`", "", "Time at which the task was created." + "output_uri", ":ref:`ref_string`", "", "Path to remote data store where output blob is stored if the execution succeeded (and produced outputs)." + "error", ":ref:`ref_flyteidl.core.ExecutionError`", "", "Error information for the task execution. Populated if the execution failed." + "output_data", ":ref:`ref_flyteidl.core.LiteralMap`", "", "Raw output data produced by this task execution." + "phase", ":ref:`ref_flyteidl.core.TaskExecution.Phase`", "", "The last recorded phase for this task execution." + "logs", ":ref:`ref_flyteidl.core.TaskLog`", "repeated", "Detailed log information output by the task execution." + "started_at", ":ref:`ref_google.protobuf.Timestamp`", "", "Time at which the task execution began running." + "duration", ":ref:`ref_google.protobuf.Duration`", "", "The amount of time the task execution spent running." + "created_at", ":ref:`ref_google.protobuf.Timestamp`", "", "Time at which the task execution was created." + "updated_at", ":ref:`ref_google.protobuf.Timestamp`", "", "Time at which the task execution was last updated." + "custom_info", ":ref:`ref_google.protobuf.Struct`", "", "Custom data specific to the task plugin." + "reason", ":ref:`ref_string`", "", "If there is an explanation for the most recent phase transition, the reason will capture it." + "task_type", ":ref:`ref_string`", "", "A predefined yet extensible Task type identifier." + "metadata", ":ref:`ref_flyteidl.event.TaskExecutionMetadata`", "", "Metadata around how a task was executed." @@ -2763,22 +2775,21 @@ and task metadata. -.. _ref_flyteidl.admin.TaskCreateRequest: +.. _ref_flyteidl.admin.TaskExecutionGetDataRequest: -TaskCreateRequest +TaskExecutionGetDataRequest ------------------------------------------------------------------ -Represents a request structure to create a revision of a task. -See :ref:`ref_flyteidl.admin.Task` for more details +Request structure to fetch inputs and output for a task execution. +By default this data is not returned inline in :ref:`ref_flyteidl.admin.TaskExecutionGetRequest` -.. csv-table:: TaskCreateRequest type fields +.. csv-table:: TaskExecutionGetDataRequest type fields :header: "Field", "Type", "Label", "Description" :widths: auto - "id", ":ref:`ref_flyteidl.core.Identifier`", "", "id represents the unique identifier of the task. +required" - "spec", ":ref:`ref_flyteidl.admin.TaskSpec`", "", "Represents the specification for task. +required" + "id", ":ref:`ref_flyteidl.core.TaskExecutionIdentifier`", "", "The identifier of the task execution for which to fetch inputs and outputs. +required" @@ -2786,38 +2797,45 @@ See :ref:`ref_flyteidl.admin.Task` for more details -.. _ref_flyteidl.admin.TaskCreateResponse: +.. _ref_flyteidl.admin.TaskExecutionGetDataResponse: -TaskCreateResponse +TaskExecutionGetDataResponse ------------------------------------------------------------------ -Represents a response structure if task creation succeeds. +Response structure for TaskExecutionGetDataRequest which contains inputs and outputs for a task execution. -Purposefully empty, may be populated in the future. +.. csv-table:: TaskExecutionGetDataResponse type fields + :header: "Field", "Type", "Label", "Description" + :widths: auto + "inputs", ":ref:`ref_flyteidl.admin.UrlBlob`", "", "**Deprecated.** Signed url to fetch a core.LiteralMap of task execution inputs. Deprecated: Please use full_inputs instead." + "outputs", ":ref:`ref_flyteidl.admin.UrlBlob`", "", "**Deprecated.** Signed url to fetch a core.LiteralMap of task execution outputs. Deprecated: Please use full_outputs instead." + "full_inputs", ":ref:`ref_flyteidl.core.LiteralMap`", "", "Full_inputs will only be populated if they are under a configured size threshold." + "full_outputs", ":ref:`ref_flyteidl.core.LiteralMap`", "", "Full_outputs will only be populated if they are under a configured size threshold." -.. _ref_flyteidl.admin.TaskList: -TaskList + +.. _ref_flyteidl.admin.TaskExecutionGetRequest: + +TaskExecutionGetRequest ------------------------------------------------------------------ -Represents a list of tasks returned from the admin. -See :ref:`ref_flyteidl.admin.Task` for more details +A message used to fetch a single task execution entity. +See :ref:`ref_flyteidl.admin.TaskExecution` for more details -.. csv-table:: TaskList type fields +.. csv-table:: TaskExecutionGetRequest type fields :header: "Field", "Type", "Label", "Description" :widths: auto - "tasks", ":ref:`ref_flyteidl.admin.Task`", "repeated", "A list of tasks returned based on the request." - "token", ":ref:`ref_string`", "", "In the case of multiple pages of results, the server-provided token can be used to fetch the next page in a query. If there are no more results, this value will be empty." + "id", ":ref:`ref_flyteidl.core.TaskExecutionIdentifier`", "", "Unique identifier for the task execution. +required" @@ -2825,97 +2843,90 @@ See :ref:`ref_flyteidl.admin.Task` for more details -.. _ref_flyteidl.admin.TaskSpec: +.. _ref_flyteidl.admin.TaskExecutionList: -TaskSpec +TaskExecutionList ------------------------------------------------------------------ -Represents a structure that encapsulates the user-configured specification of the task. +Response structure for a query to list of task execution entities. +See :ref:`ref_flyteidl.admin.TaskExecution` for more details -.. csv-table:: TaskSpec type fields +.. csv-table:: TaskExecutionList type fields :header: "Field", "Type", "Label", "Description" :widths: auto - "template", ":ref:`ref_flyteidl.core.TaskTemplate`", "", "Template of the task that encapsulates all the metadata of the task." + "task_executions", ":ref:`ref_flyteidl.admin.TaskExecution`", "repeated", "" + "token", ":ref:`ref_string`", "", "In the case of multiple pages of results, the server-provided token can be used to fetch the next page in a query. If there are no more results, this value will be empty." - - - +.. _ref_flyteidl.admin.TaskExecutionListRequest: - +TaskExecutionListRequest +------------------------------------------------------------------ +Represents a request structure to retrieve a list of task execution entities yielded by a specific node execution. +See :ref:`ref_flyteidl.admin.TaskExecution` for more details -.. _ref_flyteidl/admin/task_execution.proto: +.. csv-table:: TaskExecutionListRequest type fields + :header: "Field", "Type", "Label", "Description" + :widths: auto -flyteidl/admin/task_execution.proto -================================================================== + "node_execution_id", ":ref:`ref_flyteidl.core.NodeExecutionIdentifier`", "", "Indicates the node execution to filter by. +required" + "limit", ":ref:`ref_uint32`", "", "Indicates the number of resources to be returned. +required" + "token", ":ref:`ref_string`", "", "In the case of multiple pages of results, the server-provided token can be used to fetch the next page in a query. +optional" + "filters", ":ref:`ref_string`", "", "Indicates a list of filters passed as string. More info on constructing filters : +optional" + "sort_by", ":ref:`ref_flyteidl.admin.Sort`", "", "Sort ordering for returned list. +optional" -.. _ref_flyteidl.admin.TaskExecution: + -TaskExecution ------------------------------------------------------------------- + -Encapsulates all details for a single task execution entity. -A task execution represents an instantiated task, including all inputs and additional -metadata as well as computed results included state, outputs, and duration-based attributes. + + -.. csv-table:: TaskExecution type fields - :header: "Field", "Type", "Label", "Description" - :widths: auto - "id", ":ref:`ref_flyteidl.core.TaskExecutionIdentifier`", "", "Unique identifier for the task execution." - "input_uri", ":ref:`ref_string`", "", "Path to remote data store where input blob is stored." - "closure", ":ref:`ref_flyteidl.admin.TaskExecutionClosure`", "", "Task execution details and results." - "is_parent", ":ref:`ref_bool`", "", "Whether this task spawned nodes." +.. _ref_flyteidl/admin/task.proto: +flyteidl/admin/task.proto +================================================================== -.. _ref_flyteidl.admin.TaskExecutionClosure: +.. _ref_flyteidl.admin.Task: -TaskExecutionClosure +Task ------------------------------------------------------------------ -Container for task execution details and results. +Flyte workflows are composed of many ordered tasks. That is small, reusable, self-contained logical blocks +arranged to process workflow inputs and produce a deterministic set of outputs. +Tasks can come in many varieties tuned for specialized behavior. -.. csv-table:: TaskExecutionClosure type fields +.. csv-table:: Task type fields :header: "Field", "Type", "Label", "Description" :widths: auto - "output_uri", ":ref:`ref_string`", "", "Path to remote data store where output blob is stored if the execution succeeded (and produced outputs)." - "error", ":ref:`ref_flyteidl.core.ExecutionError`", "", "Error information for the task execution. Populated if the execution failed." - "output_data", ":ref:`ref_flyteidl.core.LiteralMap`", "", "Raw output data produced by this task execution." - "phase", ":ref:`ref_flyteidl.core.TaskExecution.Phase`", "", "The last recorded phase for this task execution." - "logs", ":ref:`ref_flyteidl.core.TaskLog`", "repeated", "Detailed log information output by the task execution." - "started_at", ":ref:`ref_google.protobuf.Timestamp`", "", "Time at which the task execution began running." - "duration", ":ref:`ref_google.protobuf.Duration`", "", "The amount of time the task execution spent running." - "created_at", ":ref:`ref_google.protobuf.Timestamp`", "", "Time at which the task execution was created." - "updated_at", ":ref:`ref_google.protobuf.Timestamp`", "", "Time at which the task execution was last updated." - "custom_info", ":ref:`ref_google.protobuf.Struct`", "", "Custom data specific to the task plugin." - "reason", ":ref:`ref_string`", "", "If there is an explanation for the most recent phase transition, the reason will capture it." - "task_type", ":ref:`ref_string`", "", "A predefined yet extensible Task type identifier." - "metadata", ":ref:`ref_flyteidl.event.TaskExecutionMetadata`", "", "Metadata around how a task was executed." + "id", ":ref:`ref_flyteidl.core.Identifier`", "", "id represents the unique identifier of the task." + "closure", ":ref:`ref_flyteidl.admin.TaskClosure`", "", "closure encapsulates all the fields that maps to a compiled version of the task." @@ -2923,21 +2934,22 @@ Container for task execution details and results. -.. _ref_flyteidl.admin.TaskExecutionGetDataRequest: +.. _ref_flyteidl.admin.TaskClosure: -TaskExecutionGetDataRequest +TaskClosure ------------------------------------------------------------------ -Request structure to fetch inputs and output for a task execution. -By default this data is not returned inline in :ref:`ref_flyteidl.admin.TaskExecutionGetRequest` +Compute task attributes which include values derived from the TaskSpec, as well as plugin-specific data +and task metadata. -.. csv-table:: TaskExecutionGetDataRequest type fields +.. csv-table:: TaskClosure type fields :header: "Field", "Type", "Label", "Description" :widths: auto - "id", ":ref:`ref_flyteidl.core.TaskExecutionIdentifier`", "", "The identifier of the task execution for which to fetch inputs and outputs. +required" + "compiled_task", ":ref:`ref_flyteidl.core.CompiledTask`", "", "Represents the compiled representation of the task from the specification provided." + "created_at", ":ref:`ref_google.protobuf.Timestamp`", "", "Time at which the task was created." @@ -2945,23 +2957,22 @@ By default this data is not returned inline in :ref:`ref_flyteidl.admin.TaskExec -.. _ref_flyteidl.admin.TaskExecutionGetDataResponse: +.. _ref_flyteidl.admin.TaskCreateRequest: -TaskExecutionGetDataResponse +TaskCreateRequest ------------------------------------------------------------------ -Response structure for TaskExecutionGetDataRequest which contains inputs and outputs for a task execution. +Represents a request structure to create a revision of a task. +See :ref:`ref_flyteidl.admin.Task` for more details -.. csv-table:: TaskExecutionGetDataResponse type fields +.. csv-table:: TaskCreateRequest type fields :header: "Field", "Type", "Label", "Description" :widths: auto - "inputs", ":ref:`ref_flyteidl.admin.UrlBlob`", "", "**Deprecated.** Signed url to fetch a core.LiteralMap of task execution inputs. Deprecated: Please use full_inputs instead." - "outputs", ":ref:`ref_flyteidl.admin.UrlBlob`", "", "**Deprecated.** Signed url to fetch a core.LiteralMap of task execution outputs. Deprecated: Please use full_outputs instead." - "full_inputs", ":ref:`ref_flyteidl.core.LiteralMap`", "", "Full_inputs will only be populated if they are under a configured size threshold." - "full_outputs", ":ref:`ref_flyteidl.core.LiteralMap`", "", "Full_outputs will only be populated if they are under a configured size threshold." + "id", ":ref:`ref_flyteidl.core.Identifier`", "", "id represents the unique identifier of the task. +required" + "spec", ":ref:`ref_flyteidl.admin.TaskSpec`", "", "Represents the specification for task. +required" @@ -2969,21 +2980,15 @@ Response structure for TaskExecutionGetDataRequest which contains inputs and out -.. _ref_flyteidl.admin.TaskExecutionGetRequest: +.. _ref_flyteidl.admin.TaskCreateResponse: -TaskExecutionGetRequest +TaskCreateResponse ------------------------------------------------------------------ -A message used to fetch a single task execution entity. -See :ref:`ref_flyteidl.admin.TaskExecution` for more details - - +Represents a response structure if task creation succeeds. -.. csv-table:: TaskExecutionGetRequest type fields - :header: "Field", "Type", "Label", "Description" - :widths: auto +Purposefully empty, may be populated in the future. - "id", ":ref:`ref_flyteidl.core.TaskExecutionIdentifier`", "", "Unique identifier for the task execution. +required" @@ -2991,21 +2996,21 @@ See :ref:`ref_flyteidl.admin.TaskExecution` for more details -.. _ref_flyteidl.admin.TaskExecutionList: +.. _ref_flyteidl.admin.TaskList: -TaskExecutionList +TaskList ------------------------------------------------------------------ -Response structure for a query to list of task execution entities. -See :ref:`ref_flyteidl.admin.TaskExecution` for more details +Represents a list of tasks returned from the admin. +See :ref:`ref_flyteidl.admin.Task` for more details -.. csv-table:: TaskExecutionList type fields +.. csv-table:: TaskList type fields :header: "Field", "Type", "Label", "Description" :widths: auto - "task_executions", ":ref:`ref_flyteidl.admin.TaskExecution`", "repeated", "" + "tasks", ":ref:`ref_flyteidl.admin.Task`", "repeated", "A list of tasks returned based on the request." "token", ":ref:`ref_string`", "", "In the case of multiple pages of results, the server-provided token can be used to fetch the next page in a query. If there are no more results, this value will be empty." @@ -3014,25 +3019,20 @@ See :ref:`ref_flyteidl.admin.TaskExecution` for more details -.. _ref_flyteidl.admin.TaskExecutionListRequest: +.. _ref_flyteidl.admin.TaskSpec: -TaskExecutionListRequest +TaskSpec ------------------------------------------------------------------ -Represents a request structure to retrieve a list of task execution entities yielded by a specific node execution. -See :ref:`ref_flyteidl.admin.TaskExecution` for more details +Represents a structure that encapsulates the user-configured specification of the task. -.. csv-table:: TaskExecutionListRequest type fields +.. csv-table:: TaskSpec type fields :header: "Field", "Type", "Label", "Description" :widths: auto - "node_execution_id", ":ref:`ref_flyteidl.core.NodeExecutionIdentifier`", "", "Indicates the node execution to filter by. +required" - "limit", ":ref:`ref_uint32`", "", "Indicates the number of resources to be returned. +required" - "token", ":ref:`ref_string`", "", "In the case of multiple pages of results, the server-provided token can be used to fetch the next page in a query. +optional" - "filters", ":ref:`ref_string`", "", "Indicates a list of filters passed as string. More info on constructing filters : +optional" - "sort_by", ":ref:`ref_flyteidl.admin.Sort`", "", "Sort ordering for returned list. +optional" + "template", ":ref:`ref_flyteidl.core.TaskTemplate`", "", "Template of the task that encapsulates all the metadata of the task." @@ -3125,32 +3125,33 @@ Provides Version information for a component -.. _ref_flyteidl/admin/workflow.proto: +.. _ref_flyteidl/admin/workflow_attributes.proto: -flyteidl/admin/workflow.proto +flyteidl/admin/workflow_attributes.proto ================================================================== -.. _ref_flyteidl.admin.Workflow: +.. _ref_flyteidl.admin.WorkflowAttributes: -Workflow +WorkflowAttributes ------------------------------------------------------------------ -Represents the workflow structure stored in the Admin -A workflow is created by ordering tasks and associating outputs to inputs -in order to produce a directed-acyclic execution graph. +Defines a set of custom matching attributes which defines resource defaults for a project, domain and workflow. +For more info on matchable attributes, see :ref:`ref_flyteidl.admin.MatchableAttributesConfiguration` -.. csv-table:: Workflow type fields +.. csv-table:: WorkflowAttributes type fields :header: "Field", "Type", "Label", "Description" :widths: auto - "id", ":ref:`ref_flyteidl.core.Identifier`", "", "id represents the unique identifier of the workflow." - "closure", ":ref:`ref_flyteidl.admin.WorkflowClosure`", "", "closure encapsulates all the fields that maps to a compiled version of the workflow." + "project", ":ref:`ref_string`", "", "Unique project id for which this set of attributes will be applied." + "domain", ":ref:`ref_string`", "", "Unique domain id for which this set of attributes will be applied." + "workflow", ":ref:`ref_string`", "", "Workflow name for which this set of attributes will be applied." + "matching_attributes", ":ref:`ref_flyteidl.admin.MatchingAttributes`", "", "" @@ -3158,21 +3159,24 @@ in order to produce a directed-acyclic execution graph. -.. _ref_flyteidl.admin.WorkflowClosure: +.. _ref_flyteidl.admin.WorkflowAttributesDeleteRequest: -WorkflowClosure +WorkflowAttributesDeleteRequest ------------------------------------------------------------------ -A container holding the compiled workflow produced from the WorkflowSpec and additional metadata. +Request to delete a set matchable workflow attribute override. +For more info on matchable attributes, see :ref:`ref_flyteidl.admin.MatchableAttributesConfiguration` -.. csv-table:: WorkflowClosure type fields +.. csv-table:: WorkflowAttributesDeleteRequest type fields :header: "Field", "Type", "Label", "Description" :widths: auto - "compiled_workflow", ":ref:`ref_flyteidl.core.CompiledWorkflowClosure`", "", "Represents the compiled representation of the workflow from the specification provided." - "created_at", ":ref:`ref_google.protobuf.Timestamp`", "", "Time at which the workflow was created." + "project", ":ref:`ref_string`", "", "Unique project id which this set of attributes references. +required" + "domain", ":ref:`ref_string`", "", "Unique domain id which this set of attributes references. +required" + "workflow", ":ref:`ref_string`", "", "Workflow name which this set of attributes references. +required" + "resource_type", ":ref:`ref_flyteidl.admin.MatchableResource`", "", "Which type of matchable attributes to delete. +required" @@ -3180,36 +3184,38 @@ A container holding the compiled workflow produced from the WorkflowSpec and add -.. _ref_flyteidl.admin.WorkflowCreateRequest: +.. _ref_flyteidl.admin.WorkflowAttributesDeleteResponse: -WorkflowCreateRequest +WorkflowAttributesDeleteResponse ------------------------------------------------------------------ -Represents a request structure to create a revision of a workflow. -See :ref:`ref_flyteidl.admin.Workflow` for more details +Purposefully empty, may be populated in the future. -.. csv-table:: WorkflowCreateRequest type fields - :header: "Field", "Type", "Label", "Description" - :widths: auto - "id", ":ref:`ref_flyteidl.core.Identifier`", "", "id represents the unique identifier of the workflow. +required" - "spec", ":ref:`ref_flyteidl.admin.WorkflowSpec`", "", "Represents the specification for workflow. +required" +.. _ref_flyteidl.admin.WorkflowAttributesGetRequest: +WorkflowAttributesGetRequest +------------------------------------------------------------------ +Request to get an individual workflow attribute override. +For more info on matchable attributes, see :ref:`ref_flyteidl.admin.MatchableAttributesConfiguration` -.. _ref_flyteidl.admin.WorkflowCreateResponse: -WorkflowCreateResponse ------------------------------------------------------------------- -Purposefully empty, may be populated in the future. +.. csv-table:: WorkflowAttributesGetRequest type fields + :header: "Field", "Type", "Label", "Description" + :widths: auto + "project", ":ref:`ref_string`", "", "Unique project id which this set of attributes references. +required" + "domain", ":ref:`ref_string`", "", "Unique domain id which this set of attributes references. +required" + "workflow", ":ref:`ref_string`", "", "Workflow name which this set of attributes references. +required" + "resource_type", ":ref:`ref_flyteidl.admin.MatchableResource`", "", "Which type of matchable attributes to return. +required" @@ -3217,22 +3223,20 @@ Purposefully empty, may be populated in the future. -.. _ref_flyteidl.admin.WorkflowList: +.. _ref_flyteidl.admin.WorkflowAttributesGetResponse: -WorkflowList +WorkflowAttributesGetResponse ------------------------------------------------------------------ -Represents a list of workflows returned from the admin. -See :ref:`ref_flyteidl.admin.Workflow` for more details +Response to get an individual workflow attribute override. -.. csv-table:: WorkflowList type fields +.. csv-table:: WorkflowAttributesGetResponse type fields :header: "Field", "Type", "Label", "Description" :widths: auto - "workflows", ":ref:`ref_flyteidl.admin.Workflow`", "repeated", "A list of workflows returned based on the request." - "token", ":ref:`ref_string`", "", "In the case of multiple pages of results, the server-provided token can be used to fetch the next page in a query. If there are no more results, this value will be empty." + "attributes", ":ref:`ref_flyteidl.admin.WorkflowAttributes`", "", "" @@ -3240,21 +3244,35 @@ See :ref:`ref_flyteidl.admin.Workflow` for more details -.. _ref_flyteidl.admin.WorkflowSpec: +.. _ref_flyteidl.admin.WorkflowAttributesUpdateRequest: -WorkflowSpec +WorkflowAttributesUpdateRequest ------------------------------------------------------------------ -Represents a structure that encapsulates the specification of the workflow. +Sets custom attributes for a project, domain and workflow combination. +For more info on matchable attributes, see :ref:`ref_flyteidl.admin.MatchableAttributesConfiguration` -.. csv-table:: WorkflowSpec type fields +.. csv-table:: WorkflowAttributesUpdateRequest type fields :header: "Field", "Type", "Label", "Description" :widths: auto - "template", ":ref:`ref_flyteidl.core.WorkflowTemplate`", "", "Template of the task that encapsulates all the metadata of the workflow." - "sub_workflows", ":ref:`ref_flyteidl.core.WorkflowTemplate`", "repeated", "Workflows that are embedded into other workflows need to be passed alongside the parent workflow to the propeller compiler (since the compiler doesn't have any knowledge of other workflows - ie, it doesn't reach out to Admin to see other registered workflows). In fact, subworkflows do not even need to be registered." + "attributes", ":ref:`ref_flyteidl.admin.WorkflowAttributes`", "", "" + + + + + + + +.. _ref_flyteidl.admin.WorkflowAttributesUpdateResponse: + +WorkflowAttributesUpdateResponse +------------------------------------------------------------------ + +Purposefully empty, may be populated in the future. + @@ -3271,33 +3289,32 @@ Represents a structure that encapsulates the specification of the workflow. -.. _ref_flyteidl/admin/workflow_attributes.proto: +.. _ref_flyteidl/admin/workflow.proto: -flyteidl/admin/workflow_attributes.proto +flyteidl/admin/workflow.proto ================================================================== -.. _ref_flyteidl.admin.WorkflowAttributes: +.. _ref_flyteidl.admin.Workflow: -WorkflowAttributes +Workflow ------------------------------------------------------------------ -Defines a set of custom matching attributes which defines resource defaults for a project, domain and workflow. -For more info on matchable attributes, see :ref:`ref_flyteidl.admin.MatchableAttributesConfiguration` +Represents the workflow structure stored in the Admin +A workflow is created by ordering tasks and associating outputs to inputs +in order to produce a directed-acyclic execution graph. -.. csv-table:: WorkflowAttributes type fields +.. csv-table:: Workflow type fields :header: "Field", "Type", "Label", "Description" :widths: auto - "project", ":ref:`ref_string`", "", "Unique project id for which this set of attributes will be applied." - "domain", ":ref:`ref_string`", "", "Unique domain id for which this set of attributes will be applied." - "workflow", ":ref:`ref_string`", "", "Workflow name for which this set of attributes will be applied." - "matching_attributes", ":ref:`ref_flyteidl.admin.MatchingAttributes`", "", "" + "id", ":ref:`ref_flyteidl.core.Identifier`", "", "id represents the unique identifier of the workflow." + "closure", ":ref:`ref_flyteidl.admin.WorkflowClosure`", "", "closure encapsulates all the fields that maps to a compiled version of the workflow." @@ -3305,24 +3322,21 @@ For more info on matchable attributes, see :ref:`ref_flyteidl.admin.MatchableAtt -.. _ref_flyteidl.admin.WorkflowAttributesDeleteRequest: +.. _ref_flyteidl.admin.WorkflowClosure: -WorkflowAttributesDeleteRequest +WorkflowClosure ------------------------------------------------------------------ -Request to delete a set matchable workflow attribute override. -For more info on matchable attributes, see :ref:`ref_flyteidl.admin.MatchableAttributesConfiguration` +A container holding the compiled workflow produced from the WorkflowSpec and additional metadata. -.. csv-table:: WorkflowAttributesDeleteRequest type fields +.. csv-table:: WorkflowClosure type fields :header: "Field", "Type", "Label", "Description" :widths: auto - "project", ":ref:`ref_string`", "", "Unique project id which this set of attributes references. +required" - "domain", ":ref:`ref_string`", "", "Unique domain id which this set of attributes references. +required" - "workflow", ":ref:`ref_string`", "", "Workflow name which this set of attributes references. +required" - "resource_type", ":ref:`ref_flyteidl.admin.MatchableResource`", "", "Which type of matchable attributes to delete. +required" + "compiled_workflow", ":ref:`ref_flyteidl.core.CompiledWorkflowClosure`", "", "Represents the compiled representation of the workflow from the specification provided." + "created_at", ":ref:`ref_google.protobuf.Timestamp`", "", "Time at which the workflow was created." @@ -3330,38 +3344,36 @@ For more info on matchable attributes, see :ref:`ref_flyteidl.admin.MatchableAtt -.. _ref_flyteidl.admin.WorkflowAttributesDeleteResponse: +.. _ref_flyteidl.admin.WorkflowCreateRequest: -WorkflowAttributesDeleteResponse +WorkflowCreateRequest ------------------------------------------------------------------ -Purposefully empty, may be populated in the future. +Represents a request structure to create a revision of a workflow. +See :ref:`ref_flyteidl.admin.Workflow` for more details +.. csv-table:: WorkflowCreateRequest type fields + :header: "Field", "Type", "Label", "Description" + :widths: auto + "id", ":ref:`ref_flyteidl.core.Identifier`", "", "id represents the unique identifier of the workflow. +required" + "spec", ":ref:`ref_flyteidl.admin.WorkflowSpec`", "", "Represents the specification for workflow. +required" -.. _ref_flyteidl.admin.WorkflowAttributesGetRequest: -WorkflowAttributesGetRequest ------------------------------------------------------------------- -Request to get an individual workflow attribute override. -For more info on matchable attributes, see :ref:`ref_flyteidl.admin.MatchableAttributesConfiguration` +.. _ref_flyteidl.admin.WorkflowCreateResponse: +WorkflowCreateResponse +------------------------------------------------------------------ -.. csv-table:: WorkflowAttributesGetRequest type fields - :header: "Field", "Type", "Label", "Description" - :widths: auto +Purposefully empty, may be populated in the future. - "project", ":ref:`ref_string`", "", "Unique project id which this set of attributes references. +required" - "domain", ":ref:`ref_string`", "", "Unique domain id which this set of attributes references. +required" - "workflow", ":ref:`ref_string`", "", "Workflow name which this set of attributes references. +required" - "resource_type", ":ref:`ref_flyteidl.admin.MatchableResource`", "", "Which type of matchable attributes to return. +required" @@ -3369,20 +3381,22 @@ For more info on matchable attributes, see :ref:`ref_flyteidl.admin.MatchableAtt -.. _ref_flyteidl.admin.WorkflowAttributesGetResponse: +.. _ref_flyteidl.admin.WorkflowList: -WorkflowAttributesGetResponse +WorkflowList ------------------------------------------------------------------ -Response to get an individual workflow attribute override. +Represents a list of workflows returned from the admin. +See :ref:`ref_flyteidl.admin.Workflow` for more details -.. csv-table:: WorkflowAttributesGetResponse type fields +.. csv-table:: WorkflowList type fields :header: "Field", "Type", "Label", "Description" :widths: auto - "attributes", ":ref:`ref_flyteidl.admin.WorkflowAttributes`", "", "" + "workflows", ":ref:`ref_flyteidl.admin.Workflow`", "repeated", "A list of workflows returned based on the request." + "token", ":ref:`ref_string`", "", "In the case of multiple pages of results, the server-provided token can be used to fetch the next page in a query. If there are no more results, this value will be empty." @@ -3390,35 +3404,21 @@ Response to get an individual workflow attribute override. -.. _ref_flyteidl.admin.WorkflowAttributesUpdateRequest: +.. _ref_flyteidl.admin.WorkflowSpec: -WorkflowAttributesUpdateRequest +WorkflowSpec ------------------------------------------------------------------ -Sets custom attributes for a project, domain and workflow combination. -For more info on matchable attributes, see :ref:`ref_flyteidl.admin.MatchableAttributesConfiguration` +Represents a structure that encapsulates the specification of the workflow. -.. csv-table:: WorkflowAttributesUpdateRequest type fields +.. csv-table:: WorkflowSpec type fields :header: "Field", "Type", "Label", "Description" :widths: auto - "attributes", ":ref:`ref_flyteidl.admin.WorkflowAttributes`", "", "" - - - - - - - -.. _ref_flyteidl.admin.WorkflowAttributesUpdateResponse: - -WorkflowAttributesUpdateResponse ------------------------------------------------------------------- - -Purposefully empty, may be populated in the future. - + "template", ":ref:`ref_flyteidl.core.WorkflowTemplate`", "", "Template of the task that encapsulates all the metadata of the workflow." + "sub_workflows", ":ref:`ref_flyteidl.core.WorkflowTemplate`", "repeated", "Workflows that are embedded into other workflows need to be passed alongside the parent workflow to the propeller compiler (since the compiler doesn't have any knowledge of other workflows - ie, it doesn't reach out to Admin to see other registered workflows). In fact, subworkflows do not even need to be registered." diff --git a/protos/docs/core/core.rst b/protos/docs/core/core.rst index 118b8da13..2b4c7607b 100644 --- a/protos/docs/core/core.rst +++ b/protos/docs/core/core.rst @@ -57,6 +57,20 @@ Catalog artifact information with specific metadata + + +.. _ref_flyteidl.core.CatalogReservation: + +CatalogReservation +------------------------------------------------------------------ + + + + + + + + @@ -79,6 +93,25 @@ Indicates the status of CatalogCaching. The reason why this is not embedded in T "CACHE_LOOKUP_FAILURE", "4", "Used to indicate that cache lookup failed because of an error" "CACHE_PUT_FAILURE", "5", "Used to indicate that cache lookup failed because of an error" + + +.. _ref_flyteidl.core.CatalogReservation.Status: + +CatalogReservation.Status +------------------------------------------------------------------ + +Indicates the status of a catalog reservation operation. + +.. csv-table:: Enum CatalogReservation.Status values + :header: "Name", "Number", "Description" + :widths: auto + + "RESERVATION_DISABLED", "0", "Used to indicate that reservations are disabled" + "RESERVATION_ACQUIRED", "1", "Used to indicate that a reservation was successfully acquired or extended" + "RESERVATION_EXISTS", "2", "Used to indicate that an active reservation currently exists" + "RESERVATION_RELEASED", "3", "Used to indicate that the reservation has been successfully released" + "RESERVATION_FAILURE", "4", "Used to indicate that a reservation operation resulted in failure" + @@ -1732,6 +1765,7 @@ Container "config", ":ref:`ref_flyteidl.core.KeyValuePair`", "repeated", "**Deprecated.** Allows extra configs to be available for the container. TODO: elaborate on how configs will become available. Deprecated, please use TaskTemplate.config instead." "ports", ":ref:`ref_flyteidl.core.ContainerPort`", "repeated", "Ports to open in the container. This feature is not supported by all execution engines. (e.g. supported on K8s but not supported on AWS Batch) Only K8s" "data_config", ":ref:`ref_flyteidl.core.DataLoadingConfig`", "", "BETA: Optional configuration for DataLoading. If not specified, then default values are used. This makes it possible to to run a completely portable container, that uses inputs and outputs only from the local file-system and without having any reference to flyteidl. This is supported only on K8s at the moment. If data loading is enabled, then data will be mounted in accompanying directories specified in the DataLoadingConfig. If the directories are not specified, inputs will be mounted onto and outputs will be uploaded from a pre-determined file-system path. Refer to the documentation to understand the default paths. Only K8s" + "architecture", ":ref:`ref_flyteidl.core.Container.Architecture`", "", "" @@ -2007,6 +2041,7 @@ Task Metadata "discovery_version", ":ref:`ref_string`", "", "Indicates a logical version to apply to this task for the purpose of discovery." "deprecated_error_message", ":ref:`ref_string`", "", "If set, this indicates that this task is deprecated. This will enable owners of tasks to notify consumers of the ending of support for a given task." "interruptible", ":ref:`ref_bool`", "", "" + "cache_serializable", ":ref:`ref_bool`", "", "Indicates whether the system should attempt to execute discoverable instances in serial to avoid duplicate work" @@ -2070,6 +2105,25 @@ TaskTemplate.ConfigEntry +.. _ref_flyteidl.core.Container.Architecture: + +Container.Architecture +------------------------------------------------------------------ + +Architecture-type the container image supports. + +.. csv-table:: Enum Container.Architecture values + :header: "Name", "Number", "Description" + :widths: auto + + "UNKNOWN", "0", "" + "AMD64", "1", "" + "ARM64", "2", "" + "ARM_V6", "3", "" + "ARM_V7", "4", "" + + + .. _ref_flyteidl.core.DataLoadingConfig.LiteralMapFormat: DataLoadingConfig.LiteralMapFormat @@ -2425,6 +2479,46 @@ Define a set of simple types. +.. _ref_flyteidl/core/workflow_closure.proto: + +flyteidl/core/workflow_closure.proto +================================================================== + + + + + +.. _ref_flyteidl.core.WorkflowClosure: + +WorkflowClosure +------------------------------------------------------------------ + +Defines an enclosed package of workflow and tasks it references. + + + +.. csv-table:: WorkflowClosure type fields + :header: "Field", "Type", "Label", "Description" + :widths: auto + + "workflow", ":ref:`ref_flyteidl.core.WorkflowTemplate`", "", "required. Workflow template." + "tasks", ":ref:`ref_flyteidl.core.TaskTemplate`", "repeated", "optional. A collection of tasks referenced by the workflow. Only needed if the workflow references tasks." + + + + + + + + + + + + + + + + .. _ref_flyteidl/core/workflow.proto: flyteidl/core/workflow.proto @@ -2745,46 +2839,6 @@ Failure Handling Strategy -.. _ref_flyteidl/core/workflow_closure.proto: - -flyteidl/core/workflow_closure.proto -================================================================== - - - - - -.. _ref_flyteidl.core.WorkflowClosure: - -WorkflowClosure ------------------------------------------------------------------- - -Defines an enclosed package of workflow and tasks it references. - - - -.. csv-table:: WorkflowClosure type fields - :header: "Field", "Type", "Label", "Description" - :widths: auto - - "workflow", ":ref:`ref_flyteidl.core.WorkflowTemplate`", "", "required. Workflow template." - "tasks", ":ref:`ref_flyteidl.core.TaskTemplate`", "repeated", "optional. A collection of tasks referenced by the workflow. Only needed if the workflow references tasks." - - - - - - - - - - - - - - - - .. _ref_google/protobuf/timestamp.proto: google/protobuf/timestamp.proto @@ -3101,8 +3155,8 @@ Value `Value` represents a dynamically typed value which can be either null, a number, a string, a boolean, a recursive struct value, or a -list of values. A producer of value is expected to set one of that -variants, absence of any variant indicates an error. +list of values. A producer of value is expected to set one of these +variants. Absence of any variant indicates an error. The JSON representation for `Value` is JSON value. diff --git a/protos/docs/datacatalog/datacatalog.rst b/protos/docs/datacatalog/datacatalog.rst index b212cf8c7..5441d08f6 100644 --- a/protos/docs/datacatalog/datacatalog.rst +++ b/protos/docs/datacatalog/datacatalog.rst @@ -261,43 +261,6 @@ Dataset properties we can filter by -.. _ref_datacatalog.ExtendReservationRequest: - -ExtendReservationRequest ------------------------------------------------------------------- - -Request to extend reservation - - - -.. csv-table:: ExtendReservationRequest type fields - :header: "Field", "Type", "Label", "Description" - :widths: auto - - "dataset_id", ":ref:`ref_datacatalog.DatasetID`", "", "" - "tag_name", ":ref:`ref_string`", "", "" - "owner_id", ":ref:`ref_string`", "", "" - - - - - - - -.. _ref_datacatalog.ExtendReservationResponse: - -ExtendReservationResponse ------------------------------------------------------------------- - -Response to extend reservation - - - - - - - - .. _ref_datacatalog.FilterExpression: FilterExpression @@ -410,22 +373,22 @@ Dataset. -.. _ref_datacatalog.GetOrReserveArtifactRequest: +.. _ref_datacatalog.GetOrExtendReservationRequest: -GetOrReserveArtifactRequest +GetOrExtendReservationRequest ------------------------------------------------------------------ -Get the Artifact or try to reserve a spot if the Artifact does not exist. +Try to acquire or extend an artifact reservation. If an active reservation exists, retreive that instance. -.. csv-table:: GetOrReserveArtifactRequest type fields +.. csv-table:: GetOrExtendReservationRequest type fields :header: "Field", "Type", "Label", "Description" :widths: auto - "dataset_id", ":ref:`ref_datacatalog.DatasetID`", "", "" - "tag_name", ":ref:`ref_string`", "", "" + "reservation_id", ":ref:`ref_datacatalog.ReservationID`", "", "" "owner_id", ":ref:`ref_string`", "", "" + "heartbeat_interval", ":ref:`ref_google.protobuf.Duration`", "", "Requested reservation extension heartbeat interval" @@ -433,21 +396,20 @@ Get the Artifact or try to reserve a spot if the Artifact does not exist. -.. _ref_datacatalog.GetOrReserveArtifactResponse: +.. _ref_datacatalog.GetOrExtendReservationResponse: -GetOrReserveArtifactResponse +GetOrExtendReservationResponse ------------------------------------------------------------------ -Response to get artifact or reserve spot. +Response including either a newly minted reservation or the existing reservation -.. csv-table:: GetOrReserveArtifactResponse type fields +.. csv-table:: GetOrExtendReservationResponse type fields :header: "Field", "Type", "Label", "Description" :widths: auto - "artifact", ":ref:`ref_datacatalog.Artifact`", "", "" - "reservation_status", ":ref:`ref_datacatalog.ReservationStatus`", "", "" + "reservation", ":ref:`ref_datacatalog.Reservation`", "", "" @@ -689,8 +651,7 @@ Request to release reservation :header: "Field", "Type", "Label", "Description" :widths: auto - "dataset_id", ":ref:`ref_datacatalog.DatasetID`", "", "" - "tag_name", ":ref:`ref_string`", "", "" + "reservation_id", ":ref:`ref_datacatalog.ReservationID`", "", "" "owner_id", ":ref:`ref_string`", "", "" @@ -713,22 +674,46 @@ Response to release reservation -.. _ref_datacatalog.ReservationStatus: +.. _ref_datacatalog.Reservation: -ReservationStatus +Reservation ------------------------------------------------------------------ -Whether we successfully reserve a spot. +A reservation including owner, heartbeat interval, expiration timestamp, and various metadata. -.. csv-table:: ReservationStatus type fields +.. csv-table:: Reservation type fields :header: "Field", "Type", "Label", "Description" :widths: auto - "state", ":ref:`ref_datacatalog.ReservationStatus.State`", "", "" - "metadata", ":ref:`ref_datacatalog.Metadata`", "", "" + "reservation_id", ":ref:`ref_datacatalog.ReservationID`", "", "" "owner_id", ":ref:`ref_string`", "", "" + "heartbeat_interval", ":ref:`ref_google.protobuf.Duration`", "", "Recommended heartbeat interval to extend reservation" + "expires_at", ":ref:`ref_google.protobuf.Timestamp`", "", "Expiration timestamp of this reservation" + "metadata", ":ref:`ref_datacatalog.Metadata`", "", "" + + + + + + + +.. _ref_datacatalog.ReservationID: + +ReservationID +------------------------------------------------------------------ + +ReservationID message that is composed of several string fields. + + + +.. csv-table:: ReservationID type fields + :header: "Field", "Type", "Label", "Description" + :widths: auto + + "dataset_id", ":ref:`ref_datacatalog.DatasetID`", "", "" + "tag_name", ":ref:`ref_string`", "", "" @@ -839,22 +824,6 @@ PaginationOptions.SortOrder -.. _ref_datacatalog.ReservationStatus.State: - -ReservationStatus.State ------------------------------------------------------------------- - - - -.. csv-table:: Enum ReservationStatus.State values - :header: "Name", "Number", "Description" - :widths: auto - - "ACQUIRED", "0", "Acquired the reservation successfully." - "ALREADY_IN_PROGRESS", "1", "Indicates an existing active reservation exist for a different owner_id." - - - .. _ref_datacatalog.SinglePropertyFilter.ComparisonOperator: SinglePropertyFilter.ComparisonOperator @@ -894,8 +863,7 @@ Artifacts are associated with a Dataset, and can be tagged for retrieval. "AddTag", ":ref:`ref_datacatalog.AddTagRequest`", ":ref:`ref_datacatalog.AddTagResponse`", "Associate a tag with an artifact. Tags are unique within a Dataset." "ListArtifacts", ":ref:`ref_datacatalog.ListArtifactsRequest`", ":ref:`ref_datacatalog.ListArtifactsResponse`", "Return a paginated list of artifacts" "ListDatasets", ":ref:`ref_datacatalog.ListDatasetsRequest`", ":ref:`ref_datacatalog.ListDatasetsResponse`", "Return a paginated list of datasets" - "GetOrReserveArtifact", ":ref:`ref_datacatalog.GetOrReserveArtifactRequest`", ":ref:`ref_datacatalog.GetOrReserveArtifactResponse`", "Get an artifact and the corresponding data. If the artifact does not exist, try to reserve a spot for populating the artifact. Once you preserve a spot, you should call ExtendReservation API periodically to extend the reservation. Otherwise, the reservation can expire and other tasks may take the spot. If the same owner_id calls this API for the same dataset and it has an active reservation and the artifacts have not been written yet by a different owner, the API will respond with an Acquired Reservation Status (providing idempotency). Note: We may have multiple concurrent tasks with the same signature and the same input that try to populate the same artifact at the same time. Thus with reservation, only one task can run at a time, until the reservation expires. Note: If task A does not extend the reservation in time and the reservation expires, another task B may take over the reservation, resulting in two tasks A and B running in parallel. So a third task C may get the Artifact from A or B, whichever writes last." - "ExtendReservation", ":ref:`ref_datacatalog.ExtendReservationRequest`", ":ref:`ref_datacatalog.ExtendReservationResponse`", "Extend the reservation to keep it from expiring. If the reservation expires, other tasks can take over the reservation by calling GetOrReserveArtifact." + "GetOrExtendReservation", ":ref:`ref_datacatalog.GetOrExtendReservationRequest`", ":ref:`ref_datacatalog.GetOrExtendReservationResponse`", "Attempts to get or extend a reservation for the corresponding artifact. If one already exists (ie. another entity owns the reservation) then that reservation is retrieved. Once you acquire a reservation, you need to periodically extend the reservation with an identical call. If the reservation is not extended before the defined expiration, it may be acquired by another task. Note: We may have multiple concurrent tasks with the same signature and the same input that try to populate the same artifact at the same time. Thus with reservation, only one task can run at a time, until the reservation expires. Note: If task A does not extend the reservation in time and the reservation expires, another task B may take over the reservation, resulting in two tasks A and B running in parallel. So a third task C may get the Artifact from A or B, whichever writes last." "ReleaseReservation", ":ref:`ref_datacatalog.ReleaseReservationRequest`", ":ref:`ref_datacatalog.ReleaseReservationResponse`", "Release the reservation when the task holding the spot fails so that the other tasks can grab the spot." diff --git a/protos/docs/event/event.rst b/protos/docs/event/event.rst index 61e9be55e..1b9497e1f 100644 --- a/protos/docs/event/event.rst +++ b/protos/docs/event/event.rst @@ -236,6 +236,7 @@ TaskNodeMetadata "cache_status", ":ref:`ref_flyteidl.core.CatalogCacheStatus`", "", "Captures the status of caching for this execution." "catalog_key", ":ref:`ref_flyteidl.core.CatalogMetadata`", "", "This structure carries the catalog artifact information" + "reservation_status", ":ref:`ref_flyteidl.core.CatalogReservation.Status`", "", "Captures the status of cache reservations for this execution." "dynamic_workflow", ":ref:`ref_flyteidl.event.DynamicWorkflowNodeMetadata`", "", "In the case this task launched a dynamic workflow we capture its structure here." diff --git a/protos/flyteidl/core/catalog.proto b/protos/flyteidl/core/catalog.proto index a5cebabe1..945c3334b 100644 --- a/protos/flyteidl/core/catalog.proto +++ b/protos/flyteidl/core/catalog.proto @@ -41,3 +41,19 @@ message CatalogMetadata { TaskExecutionIdentifier source_task_execution = 3; } }; + +message CatalogReservation { + // Indicates the status of a catalog reservation operation. + enum Status { + // Used to indicate that reservations are disabled + RESERVATION_DISABLED = 0; + // Used to indicate that a reservation was successfully acquired or extended + RESERVATION_ACQUIRED = 1; + // Used to indicate that an active reservation currently exists + RESERVATION_EXISTS = 2; + // Used to indicate that the reservation has been successfully released + RESERVATION_RELEASED = 3; + // Used to indicate that a reservation operation resulted in failure + RESERVATION_FAILURE = 4; + } +} diff --git a/protos/flyteidl/core/tasks.proto b/protos/flyteidl/core/tasks.proto index c462e2395..553b63e6e 100644 --- a/protos/flyteidl/core/tasks.proto +++ b/protos/flyteidl/core/tasks.proto @@ -92,6 +92,9 @@ message TaskMetadata { oneof interruptible_value { bool interruptible = 8; }; + + // Indicates whether the system should attempt to execute discoverable instances in serial to avoid duplicate work + bool cache_serializable = 9; } // A Task structure that uniquely identifies a task in the system diff --git a/protos/flyteidl/datacatalog/datacatalog.proto b/protos/flyteidl/datacatalog/datacatalog.proto index 4ecee232c..c7c3306bc 100644 --- a/protos/flyteidl/datacatalog/datacatalog.proto +++ b/protos/flyteidl/datacatalog/datacatalog.proto @@ -3,6 +3,7 @@ syntax = "proto3"; package datacatalog; import "flyteidl/core/literals.proto"; +import "google/protobuf/duration.proto"; import "google/protobuf/timestamp.proto"; /* @@ -34,25 +35,18 @@ service DataCatalog { // Return a paginated list of datasets rpc ListDatasets (ListDatasetsRequest) returns (ListDatasetsResponse); - // Get an artifact and the corresponding data. If the artifact does not exist, - // try to reserve a spot for populating the artifact. - // Once you preserve a spot, you should call ExtendReservation API periodically - // to extend the reservation. Otherwise, the reservation can expire and other - // tasks may take the spot. - // If the same owner_id calls this API for the same dataset and it has an active reservation and the artifacts have not been written yet by a different owner, the API will respond with an Acquired Reservation Status (providing idempotency). - // Note: We may have multiple concurrent tasks with the same signature - // and the same input that try to populate the same artifact at the same time. - // Thus with reservation, only one task can run at a time, until the reservation - // expires. - // Note: If task A does not extend the reservation in time and the reservation - // expires, another task B may take over the reservation, resulting in two tasks - // A and B running in parallel. So a third task C may get the Artifact from A or B, - // whichever writes last. - rpc GetOrReserveArtifact (GetOrReserveArtifactRequest) returns (GetOrReserveArtifactResponse); - - // Extend the reservation to keep it from expiring. If the reservation expires, - // other tasks can take over the reservation by calling GetOrReserveArtifact. - rpc ExtendReservation (ExtendReservationRequest) returns (ExtendReservationResponse); + // Attempts to get or extend a reservation for the corresponding artifact. If one already exists + // (ie. another entity owns the reservation) then that reservation is retrieved. + // Once you acquire a reservation, you need to periodically extend the reservation with an + // identical call. If the reservation is not extended before the defined expiration, it may be + // acquired by another task. + // Note: We may have multiple concurrent tasks with the same signature and the same input that + // try to populate the same artifact at the same time. Thus with reservation, only one task can + // run at a time, until the reservation expires. + // Note: If task A does not extend the reservation in time and the reservation expires, another + // task B may take over the reservation, resulting in two tasks A and B running in parallel. So + // a third task C may get the Artifact from A or B, whichever writes last. + rpc GetOrExtendReservation (GetOrExtendReservationRequest) returns (GetOrExtendReservationResponse); // Release the reservation when the task holding the spot fails so that the other tasks // can grab the spot. @@ -174,53 +168,39 @@ message ListDatasetsResponse { string next_token = 2; } -// Get the Artifact or try to reserve a spot if the Artifact does not exist. -message GetOrReserveArtifactRequest { +/* + * ReservationID message that is composed of several string fields. + */ +message ReservationID { DatasetID dataset_id = 1; string tag_name = 2; - string owner_id = 3; } -// Whether we successfully reserve a spot. -message ReservationStatus { - enum State { - // Acquired the reservation successfully. - ACQUIRED = 0; - - // Indicates an existing active reservation exist for a different owner_id. - ALREADY_IN_PROGRESS = 1; - }; - - State state = 1; - Metadata metadata = 2; - string owner_id = 3; +// Try to acquire or extend an artifact reservation. If an active reservation exists, retreive that instance. +message GetOrExtendReservationRequest { + ReservationID reservation_id = 1; + string owner_id = 2; + google.protobuf.Duration heartbeat_interval = 3; // Requested reservation extension heartbeat interval } -// Response to get artifact or reserve spot. -message GetOrReserveArtifactResponse { - oneof value { - Artifact artifact = 1; - ReservationStatus reservation_status = 2; - } +// A reservation including owner, heartbeat interval, expiration timestamp, and various metadata. +message Reservation { + ReservationID reservation_id = 1; + string owner_id = 2; + google.protobuf.Duration heartbeat_interval = 3; // Recommended heartbeat interval to extend reservation + google.protobuf.Timestamp expires_at = 4; // Expiration timestamp of this reservation + Metadata metadata = 6; } -// Request to extend reservation -message ExtendReservationRequest { - DatasetID dataset_id = 1; - string tag_name = 2; - string owner_id = 3; -} - -// Response to extend reservation -message ExtendReservationResponse { - +// Response including either a newly minted reservation or the existing reservation +message GetOrExtendReservationResponse { + Reservation reservation = 1; } // Request to release reservation message ReleaseReservationRequest { - DatasetID dataset_id = 1; - string tag_name = 2; - string owner_id = 3; + ReservationID reservation_id = 1; + string owner_id = 2; } // Response to release reservation diff --git a/protos/flyteidl/event/event.proto b/protos/flyteidl/event/event.proto index de908d2ee..1b4f18038 100644 --- a/protos/flyteidl/event/event.proto +++ b/protos/flyteidl/event/event.proto @@ -99,6 +99,8 @@ message TaskNodeMetadata { core.CatalogCacheStatus cache_status = 1; // This structure carries the catalog artifact information core.CatalogMetadata catalog_key = 2; + // Captures the status of cache reservations for this execution. + core.CatalogReservation.Status reservation_status = 3; // In the case this task launched a dynamic workflow we capture its structure here. DynamicWorkflowNodeMetadata dynamic_workflow = 16;