diff --git a/internal/core/src/pb/milvus.pb.cc b/internal/core/src/pb/milvus.pb.cc index e182891bb2..2a97613002 100644 --- a/internal/core/src/pb/milvus.pb.cc +++ b/internal/core/src/pb/milvus.pb.cc @@ -1036,6 +1036,7 @@ const ::PROTOBUF_NAMESPACE_ID::uint32 TableStruct_milvus_2eproto::offsets[] PROT PROTOBUF_FIELD_OFFSET(::milvus::proto::milvus::HasCollectionRequest, base_), PROTOBUF_FIELD_OFFSET(::milvus::proto::milvus::HasCollectionRequest, db_name_), PROTOBUF_FIELD_OFFSET(::milvus::proto::milvus::HasCollectionRequest, collection_name_), + PROTOBUF_FIELD_OFFSET(::milvus::proto::milvus::HasCollectionRequest, time_stamp_), ~0u, // no _has_bits_ PROTOBUF_FIELD_OFFSET(::milvus::proto::milvus::BoolResponse, _internal_metadata_), ~0u, // no _extensions_ @@ -1059,6 +1060,7 @@ const ::PROTOBUF_NAMESPACE_ID::uint32 TableStruct_milvus_2eproto::offsets[] PROT PROTOBUF_FIELD_OFFSET(::milvus::proto::milvus::DescribeCollectionRequest, db_name_), PROTOBUF_FIELD_OFFSET(::milvus::proto::milvus::DescribeCollectionRequest, collection_name_), PROTOBUF_FIELD_OFFSET(::milvus::proto::milvus::DescribeCollectionRequest, collectionid_), + PROTOBUF_FIELD_OFFSET(::milvus::proto::milvus::DescribeCollectionRequest, time_stamp_), ~0u, // no _has_bits_ PROTOBUF_FIELD_OFFSET(::milvus::proto::milvus::DescribeCollectionResponse, _internal_metadata_), ~0u, // no _extensions_ @@ -1107,6 +1109,7 @@ const ::PROTOBUF_NAMESPACE_ID::uint32 TableStruct_milvus_2eproto::offsets[] PROT ~0u, // no _weak_field_map_ PROTOBUF_FIELD_OFFSET(::milvus::proto::milvus::ShowCollectionsRequest, base_), PROTOBUF_FIELD_OFFSET(::milvus::proto::milvus::ShowCollectionsRequest, db_name_), + PROTOBUF_FIELD_OFFSET(::milvus::proto::milvus::ShowCollectionsRequest, time_stamp_), ~0u, // no _has_bits_ PROTOBUF_FIELD_OFFSET(::milvus::proto::milvus::ShowCollectionsResponse, _internal_metadata_), ~0u, // no _extensions_ @@ -1447,54 +1450,54 @@ static const ::PROTOBUF_NAMESPACE_ID::internal::MigrationSchema schemas[] PROTOB { 0, -1, sizeof(::milvus::proto::milvus::CreateCollectionRequest)}, { 10, -1, sizeof(::milvus::proto::milvus::DropCollectionRequest)}, { 18, -1, sizeof(::milvus::proto::milvus::HasCollectionRequest)}, - { 26, -1, sizeof(::milvus::proto::milvus::BoolResponse)}, - { 33, -1, sizeof(::milvus::proto::milvus::StringResponse)}, - { 40, -1, sizeof(::milvus::proto::milvus::DescribeCollectionRequest)}, - { 49, -1, sizeof(::milvus::proto::milvus::DescribeCollectionResponse)}, - { 59, -1, sizeof(::milvus::proto::milvus::LoadCollectionRequest)}, - { 67, -1, sizeof(::milvus::proto::milvus::ReleaseCollectionRequest)}, - { 75, -1, sizeof(::milvus::proto::milvus::GetCollectionStatisticsRequest)}, - { 83, -1, sizeof(::milvus::proto::milvus::GetCollectionStatisticsResponse)}, - { 90, -1, sizeof(::milvus::proto::milvus::ShowCollectionsRequest)}, - { 97, -1, sizeof(::milvus::proto::milvus::ShowCollectionsResponse)}, - { 104, -1, sizeof(::milvus::proto::milvus::CreatePartitionRequest)}, - { 113, -1, sizeof(::milvus::proto::milvus::DropPartitionRequest)}, - { 122, -1, sizeof(::milvus::proto::milvus::HasPartitionRequest)}, - { 131, -1, sizeof(::milvus::proto::milvus::LoadPartitionsRequest)}, - { 140, -1, sizeof(::milvus::proto::milvus::ReleasePartitionsRequest)}, - { 149, -1, sizeof(::milvus::proto::milvus::GetPartitionStatisticsRequest)}, - { 158, -1, sizeof(::milvus::proto::milvus::GetPartitionStatisticsResponse)}, - { 165, -1, sizeof(::milvus::proto::milvus::ShowPartitionsRequest)}, - { 174, -1, sizeof(::milvus::proto::milvus::ShowPartitionsResponse)}, - { 182, -1, sizeof(::milvus::proto::milvus::DescribeSegmentRequest)}, - { 190, -1, sizeof(::milvus::proto::milvus::DescribeSegmentResponse)}, - { 199, -1, sizeof(::milvus::proto::milvus::ShowSegmentsRequest)}, - { 207, -1, sizeof(::milvus::proto::milvus::ShowSegmentsResponse)}, - { 214, -1, sizeof(::milvus::proto::milvus::CreateIndexRequest)}, - { 224, -1, sizeof(::milvus::proto::milvus::DescribeIndexRequest)}, - { 234, -1, sizeof(::milvus::proto::milvus::IndexDescription)}, - { 243, -1, sizeof(::milvus::proto::milvus::DescribeIndexResponse)}, - { 250, -1, sizeof(::milvus::proto::milvus::GetIndexBuildProgressRequest)}, - { 260, -1, sizeof(::milvus::proto::milvus::GetIndexBuildProgressResponse)}, - { 268, -1, sizeof(::milvus::proto::milvus::GetIndexStateRequest)}, - { 278, -1, sizeof(::milvus::proto::milvus::GetIndexStateResponse)}, - { 285, -1, sizeof(::milvus::proto::milvus::DropIndexRequest)}, - { 295, -1, sizeof(::milvus::proto::milvus::InsertRequest)}, - { 306, -1, sizeof(::milvus::proto::milvus::InsertResponse)}, - { 314, -1, sizeof(::milvus::proto::milvus::PlaceholderValue)}, - { 322, -1, sizeof(::milvus::proto::milvus::PlaceholderGroup)}, - { 328, -1, sizeof(::milvus::proto::milvus::SearchRequest)}, - { 341, -1, sizeof(::milvus::proto::milvus::Hits)}, - { 349, -1, sizeof(::milvus::proto::milvus::SearchResults)}, - { 356, -1, sizeof(::milvus::proto::milvus::FlushRequest)}, - { 364, -1, sizeof(::milvus::proto::milvus::PersistentSegmentInfo)}, - { 378, -1, sizeof(::milvus::proto::milvus::GetPersistentSegmentInfoRequest)}, - { 386, -1, sizeof(::milvus::proto::milvus::GetPersistentSegmentInfoResponse)}, - { 393, -1, sizeof(::milvus::proto::milvus::QuerySegmentInfo)}, - { 405, -1, sizeof(::milvus::proto::milvus::GetQuerySegmentInfoRequest)}, - { 413, -1, sizeof(::milvus::proto::milvus::GetQuerySegmentInfoResponse)}, - { 420, -1, sizeof(::milvus::proto::milvus::RegisterLinkRequest)}, - { 425, -1, sizeof(::milvus::proto::milvus::RegisterLinkResponse)}, + { 27, -1, sizeof(::milvus::proto::milvus::BoolResponse)}, + { 34, -1, sizeof(::milvus::proto::milvus::StringResponse)}, + { 41, -1, sizeof(::milvus::proto::milvus::DescribeCollectionRequest)}, + { 51, -1, sizeof(::milvus::proto::milvus::DescribeCollectionResponse)}, + { 61, -1, sizeof(::milvus::proto::milvus::LoadCollectionRequest)}, + { 69, -1, sizeof(::milvus::proto::milvus::ReleaseCollectionRequest)}, + { 77, -1, sizeof(::milvus::proto::milvus::GetCollectionStatisticsRequest)}, + { 85, -1, sizeof(::milvus::proto::milvus::GetCollectionStatisticsResponse)}, + { 92, -1, sizeof(::milvus::proto::milvus::ShowCollectionsRequest)}, + { 100, -1, sizeof(::milvus::proto::milvus::ShowCollectionsResponse)}, + { 107, -1, sizeof(::milvus::proto::milvus::CreatePartitionRequest)}, + { 116, -1, sizeof(::milvus::proto::milvus::DropPartitionRequest)}, + { 125, -1, sizeof(::milvus::proto::milvus::HasPartitionRequest)}, + { 134, -1, sizeof(::milvus::proto::milvus::LoadPartitionsRequest)}, + { 143, -1, sizeof(::milvus::proto::milvus::ReleasePartitionsRequest)}, + { 152, -1, sizeof(::milvus::proto::milvus::GetPartitionStatisticsRequest)}, + { 161, -1, sizeof(::milvus::proto::milvus::GetPartitionStatisticsResponse)}, + { 168, -1, sizeof(::milvus::proto::milvus::ShowPartitionsRequest)}, + { 177, -1, sizeof(::milvus::proto::milvus::ShowPartitionsResponse)}, + { 185, -1, sizeof(::milvus::proto::milvus::DescribeSegmentRequest)}, + { 193, -1, sizeof(::milvus::proto::milvus::DescribeSegmentResponse)}, + { 202, -1, sizeof(::milvus::proto::milvus::ShowSegmentsRequest)}, + { 210, -1, sizeof(::milvus::proto::milvus::ShowSegmentsResponse)}, + { 217, -1, sizeof(::milvus::proto::milvus::CreateIndexRequest)}, + { 227, -1, sizeof(::milvus::proto::milvus::DescribeIndexRequest)}, + { 237, -1, sizeof(::milvus::proto::milvus::IndexDescription)}, + { 246, -1, sizeof(::milvus::proto::milvus::DescribeIndexResponse)}, + { 253, -1, sizeof(::milvus::proto::milvus::GetIndexBuildProgressRequest)}, + { 263, -1, sizeof(::milvus::proto::milvus::GetIndexBuildProgressResponse)}, + { 271, -1, sizeof(::milvus::proto::milvus::GetIndexStateRequest)}, + { 281, -1, sizeof(::milvus::proto::milvus::GetIndexStateResponse)}, + { 288, -1, sizeof(::milvus::proto::milvus::DropIndexRequest)}, + { 298, -1, sizeof(::milvus::proto::milvus::InsertRequest)}, + { 309, -1, sizeof(::milvus::proto::milvus::InsertResponse)}, + { 317, -1, sizeof(::milvus::proto::milvus::PlaceholderValue)}, + { 325, -1, sizeof(::milvus::proto::milvus::PlaceholderGroup)}, + { 331, -1, sizeof(::milvus::proto::milvus::SearchRequest)}, + { 344, -1, sizeof(::milvus::proto::milvus::Hits)}, + { 352, -1, sizeof(::milvus::proto::milvus::SearchResults)}, + { 359, -1, sizeof(::milvus::proto::milvus::FlushRequest)}, + { 367, -1, sizeof(::milvus::proto::milvus::PersistentSegmentInfo)}, + { 381, -1, sizeof(::milvus::proto::milvus::GetPersistentSegmentInfoRequest)}, + { 389, -1, sizeof(::milvus::proto::milvus::GetPersistentSegmentInfoResponse)}, + { 396, -1, sizeof(::milvus::proto::milvus::QuerySegmentInfo)}, + { 408, -1, sizeof(::milvus::proto::milvus::GetQuerySegmentInfoRequest)}, + { 416, -1, sizeof(::milvus::proto::milvus::GetQuerySegmentInfoResponse)}, + { 423, -1, sizeof(::milvus::proto::milvus::RegisterLinkRequest)}, + { 428, -1, sizeof(::milvus::proto::milvus::RegisterLinkResponse)}, }; static ::PROTOBUF_NAMESPACE_ID::Message const * const file_default_instances[] = { @@ -1560,237 +1563,238 @@ const char descriptor_table_protodef_milvus_2eproto[] PROTOBUF_SECTION_VARIABLE( "rds_num\030\005 \001(\005\"m\n\025DropCollectionRequest\022*" "\n\004base\030\001 \001(\0132\034.milvus.proto.common.MsgBa" "se\022\017\n\007db_name\030\002 \001(\t\022\027\n\017collection_name\030\003" - " \001(\t\"l\n\024HasCollectionRequest\022*\n\004base\030\001 \001" - "(\0132\034.milvus.proto.common.MsgBase\022\017\n\007db_n" - "ame\030\002 \001(\t\022\027\n\017collection_name\030\003 \001(\t\"J\n\014Bo" - "olResponse\022+\n\006status\030\001 \001(\0132\033.milvus.prot" - "o.common.Status\022\r\n\005value\030\002 \001(\010\"L\n\016String" - "Response\022+\n\006status\030\001 \001(\0132\033.milvus.proto." - "common.Status\022\r\n\005value\030\002 \001(\t\"\207\001\n\031Describ" - "eCollectionRequest\022*\n\004base\030\001 \001(\0132\034.milvu" - "s.proto.common.MsgBase\022\017\n\007db_name\030\002 \001(\t\022" - "\027\n\017collection_name\030\003 \001(\t\022\024\n\014collectionID" - "\030\004 \001(\003\"\325\001\n\032DescribeCollectionResponse\022+\n" - "\006status\030\001 \001(\0132\033.milvus.proto.common.Stat" - "us\0225\n\006schema\030\002 \001(\0132%.milvus.proto.schema" - ".CollectionSchema\022\024\n\014collectionID\030\003 \001(\003\022" - "\035\n\025virtual_channel_names\030\004 \003(\t\022\036\n\026physic" - "al_channel_names\030\005 \003(\t\"m\n\025LoadCollection" - "Request\022*\n\004base\030\001 \001(\0132\034.milvus.proto.com" - "mon.MsgBase\022\017\n\007db_name\030\002 \001(\t\022\027\n\017collecti" - "on_name\030\003 \001(\t\"p\n\030ReleaseCollectionReques" - "t\022*\n\004base\030\001 \001(\0132\034.milvus.proto.common.Ms" - "gBase\022\017\n\007db_name\030\002 \001(\t\022\027\n\017collection_nam" - "e\030\003 \001(\t\"v\n\036GetCollectionStatisticsReques" - "t\022*\n\004base\030\001 \001(\0132\034.milvus.proto.common.Ms" - "gBase\022\017\n\007db_name\030\002 \001(\t\022\027\n\017collection_nam" - "e\030\003 \001(\t\"\200\001\n\037GetCollectionStatisticsRespo" - "nse\022+\n\006status\030\001 \001(\0132\033.milvus.proto.commo" - "n.Status\0220\n\005stats\030\002 \003(\0132!.milvus.proto.c" - "ommon.KeyValuePair\"U\n\026ShowCollectionsReq" - "uest\022*\n\004base\030\001 \001(\0132\034.milvus.proto.common" - ".MsgBase\022\017\n\007db_name\030\002 \001(\t\"`\n\027ShowCollect" - "ionsResponse\022+\n\006status\030\001 \001(\0132\033.milvus.pr" - "oto.common.Status\022\030\n\020collection_names\030\002 " - "\003(\t\"\206\001\n\026CreatePartitionRequest\022*\n\004base\030\001" - " \001(\0132\034.milvus.proto.common.MsgBase\022\017\n\007db" - "_name\030\002 \001(\t\022\027\n\017collection_name\030\003 \001(\t\022\026\n\016" - "partition_name\030\004 \001(\t\"\204\001\n\024DropPartitionRe" - "quest\022*\n\004base\030\001 \001(\0132\034.milvus.proto.commo" - "n.MsgBase\022\017\n\007db_name\030\002 \001(\t\022\027\n\017collection" - "_name\030\003 \001(\t\022\026\n\016partition_name\030\004 \001(\t\"\203\001\n\023" - "HasPartitionRequest\022*\n\004base\030\001 \001(\0132\034.milv" - "us.proto.common.MsgBase\022\017\n\007db_name\030\002 \001(\t" - "\022\027\n\017collection_name\030\003 \001(\t\022\026\n\016partition_n" - "ame\030\004 \001(\t\"\206\001\n\025LoadPartitionsRequest\022*\n\004b" - "ase\030\001 \001(\0132\034.milvus.proto.common.MsgBase\022" - "\017\n\007db_name\030\002 \001(\t\022\027\n\017collection_name\030\003 \001(" - "\t\022\027\n\017partition_names\030\004 \003(\t\"\211\001\n\030ReleasePa" - "rtitionsRequest\022*\n\004base\030\001 \001(\0132\034.milvus.p" - "roto.common.MsgBase\022\017\n\007db_name\030\002 \001(\t\022\027\n\017" - "collection_name\030\003 \001(\t\022\027\n\017partition_names" - "\030\004 \003(\t\"\215\001\n\035GetPartitionStatisticsRequest" - "\022*\n\004base\030\001 \001(\0132\034.milvus.proto.common.Msg" - "Base\022\017\n\007db_name\030\002 \001(\t\022\027\n\017collection_name" - "\030\003 \001(\t\022\026\n\016partition_name\030\004 \001(\t\"\177\n\036GetPar" - "titionStatisticsResponse\022+\n\006status\030\001 \001(\013" - "2\033.milvus.proto.common.Status\0220\n\005stats\030\002" - " \003(\0132!.milvus.proto.common.KeyValuePair\"" - "\203\001\n\025ShowPartitionsRequest\022*\n\004base\030\001 \001(\0132" - "\034.milvus.proto.common.MsgBase\022\017\n\007db_name" - "\030\002 \001(\t\022\027\n\017collection_name\030\003 \001(\t\022\024\n\014colle" - "ctionID\030\004 \001(\003\"t\n\026ShowPartitionsResponse\022" - "+\n\006status\030\001 \001(\0132\033.milvus.proto.common.St" - "atus\022\027\n\017partition_names\030\002 \003(\t\022\024\n\014partiti" - "onIDs\030\003 \003(\003\"m\n\026DescribeSegmentRequest\022*\n" - "\004base\030\001 \001(\0132\034.milvus.proto.common.MsgBas" - "e\022\024\n\014collectionID\030\002 \001(\003\022\021\n\tsegmentID\030\003 \001" - "(\003\"~\n\027DescribeSegmentResponse\022+\n\006status\030" - "\001 \001(\0132\033.milvus.proto.common.Status\022\017\n\007in" - "dexID\030\002 \001(\003\022\017\n\007buildID\030\003 \001(\003\022\024\n\014enable_i" - "ndex\030\004 \001(\010\"l\n\023ShowSegmentsRequest\022*\n\004bas" - "e\030\001 \001(\0132\034.milvus.proto.common.MsgBase\022\024\n" - "\014collectionID\030\002 \001(\003\022\023\n\013partitionID\030\003 \001(\003" - "\"W\n\024ShowSegmentsResponse\022+\n\006status\030\001 \001(\013" - "2\033.milvus.proto.common.Status\022\022\n\nsegment" - "IDs\030\002 \003(\003\"\267\001\n\022CreateIndexRequest\022*\n\004base" - "\030\001 \001(\0132\034.milvus.proto.common.MsgBase\022\017\n\007" - "db_name\030\002 \001(\t\022\027\n\017collection_name\030\003 \001(\t\022\022" - "\n\nfield_name\030\004 \001(\t\0227\n\014extra_params\030\005 \003(\013" - "2!.milvus.proto.common.KeyValuePair\"\224\001\n\024" - "DescribeIndexRequest\022*\n\004base\030\001 \001(\0132\034.mil" - "vus.proto.common.MsgBase\022\017\n\007db_name\030\002 \001(" - "\t\022\027\n\017collection_name\030\003 \001(\t\022\022\n\nfield_name" - "\030\004 \001(\t\022\022\n\nindex_name\030\005 \001(\t\"~\n\020IndexDescr" - "iption\022\022\n\nindex_name\030\001 \001(\t\022\017\n\007indexID\030\002 " - "\001(\003\0221\n\006params\030\003 \003(\0132!.milvus.proto.commo" - "n.KeyValuePair\022\022\n\nfield_name\030\004 \001(\t\"\207\001\n\025D" - "escribeIndexResponse\022+\n\006status\030\001 \001(\0132\033.m" - "ilvus.proto.common.Status\022A\n\022index_descr" - "iptions\030\002 \003(\0132%.milvus.proto.milvus.Inde" - "xDescription\"\234\001\n\034GetIndexBuildProgressRe" - "quest\022*\n\004base\030\001 \001(\0132\034.milvus.proto.commo" - "n.MsgBase\022\017\n\007db_name\030\002 \001(\t\022\027\n\017collection" - "_name\030\003 \001(\t\022\022\n\nfield_name\030\004 \001(\t\022\022\n\nindex" - "_name\030\005 \001(\t\"v\n\035GetIndexBuildProgressResp" - "onse\022+\n\006status\030\001 \001(\0132\033.milvus.proto.comm" - "on.Status\022\024\n\014indexed_rows\030\002 \001(\003\022\022\n\ntotal" - "_rows\030\003 \001(\003\"\224\001\n\024GetIndexStateRequest\022*\n\004" - "base\030\001 \001(\0132\034.milvus.proto.common.MsgBase" - "\022\017\n\007db_name\030\002 \001(\t\022\027\n\017collection_name\030\003 \001" - "(\t\022\022\n\nfield_name\030\004 \001(\t\022\022\n\nindex_name\030\005 \001" - "(\t\"t\n\025GetIndexStateResponse\022+\n\006status\030\001 " - "\001(\0132\033.milvus.proto.common.Status\022.\n\005stat" - "e\030\002 \001(\0162\037.milvus.proto.common.IndexState" - "\"\220\001\n\020DropIndexRequest\022*\n\004base\030\001 \001(\0132\034.mi" - "lvus.proto.common.MsgBase\022\017\n\007db_name\030\002 \001" - "(\t\022\027\n\017collection_name\030\003 \001(\t\022\022\n\nfield_nam" - "e\030\004 \001(\t\022\022\n\nindex_name\030\005 \001(\t\"\275\001\n\rInsertRe" - "quest\022*\n\004base\030\001 \001(\0132\034.milvus.proto.commo" - "n.MsgBase\022\017\n\007db_name\030\002 \001(\t\022\027\n\017collection" - "_name\030\003 \001(\t\022\026\n\016partition_name\030\004 \001(\t\022+\n\010r" - "ow_data\030\005 \003(\0132\031.milvus.proto.common.Blob" - "\022\021\n\thash_keys\030\006 \003(\r\"e\n\016InsertResponse\022+\n" - "\006status\030\001 \001(\0132\033.milvus.proto.common.Stat" - "us\022\023\n\013rowID_begin\030\002 \001(\003\022\021\n\trowID_end\030\003 \001" - "(\003\"c\n\020PlaceholderValue\022\013\n\003tag\030\001 \001(\t\0222\n\004t" - "ype\030\002 \001(\0162$.milvus.proto.milvus.Placehol" - "derType\022\016\n\006values\030\003 \003(\014\"O\n\020PlaceholderGr" - "oup\022;\n\014placeholders\030\001 \003(\0132%.milvus.proto" - ".milvus.PlaceholderValue\"\220\002\n\rSearchReque" + " \001(\t\"\200\001\n\024HasCollectionRequest\022*\n\004base\030\001 " + "\001(\0132\034.milvus.proto.common.MsgBase\022\017\n\007db_" + "name\030\002 \001(\t\022\027\n\017collection_name\030\003 \001(\t\022\022\n\nt" + "ime_stamp\030\004 \001(\004\"J\n\014BoolResponse\022+\n\006statu" + "s\030\001 \001(\0132\033.milvus.proto.common.Status\022\r\n\005" + "value\030\002 \001(\010\"L\n\016StringResponse\022+\n\006status\030" + "\001 \001(\0132\033.milvus.proto.common.Status\022\r\n\005va" + "lue\030\002 \001(\t\"\233\001\n\031DescribeCollectionRequest\022" + "*\n\004base\030\001 \001(\0132\034.milvus.proto.common.MsgB" + "ase\022\017\n\007db_name\030\002 \001(\t\022\027\n\017collection_name\030" + "\003 \001(\t\022\024\n\014collectionID\030\004 \001(\003\022\022\n\ntime_stam" + "p\030\005 \001(\004\"\325\001\n\032DescribeCollectionResponse\022+" + "\n\006status\030\001 \001(\0132\033.milvus.proto.common.Sta" + "tus\0225\n\006schema\030\002 \001(\0132%.milvus.proto.schem" + "a.CollectionSchema\022\024\n\014collectionID\030\003 \001(\003" + "\022\035\n\025virtual_channel_names\030\004 \003(\t\022\036\n\026physi" + "cal_channel_names\030\005 \003(\t\"m\n\025LoadCollectio" + "nRequest\022*\n\004base\030\001 \001(\0132\034.milvus.proto.co" + "mmon.MsgBase\022\017\n\007db_name\030\002 \001(\t\022\027\n\017collect" + "ion_name\030\003 \001(\t\"p\n\030ReleaseCollectionReque" "st\022*\n\004base\030\001 \001(\0132\034.milvus.proto.common.M" "sgBase\022\017\n\007db_name\030\002 \001(\t\022\027\n\017collection_na" - "me\030\003 \001(\t\022\027\n\017partition_names\030\004 \003(\t\022\013\n\003dsl" - "\030\005 \001(\t\022\031\n\021placeholder_group\030\006 \001(\014\022.\n\010dsl" - "_type\030\007 \001(\0162\034.milvus.proto.common.DslTyp" - "e\0228\n\rsearch_params\030\010 \003(\0132!.milvus.proto." - "common.KeyValuePair\"5\n\004Hits\022\013\n\003IDs\030\001 \003(\003" - "\022\020\n\010row_data\030\002 \003(\014\022\016\n\006scores\030\003 \003(\002\"J\n\rSe" - "archResults\022+\n\006status\030\001 \001(\0132\033.milvus.pro" - "to.common.Status\022\014\n\004hits\030\002 \003(\014\"e\n\014FlushR" - "equest\022*\n\004base\030\001 \001(\0132\034.milvus.proto.comm" - "on.MsgBase\022\017\n\007db_name\030\002 \001(\t\022\030\n\020collectio" - "n_names\030\003 \003(\t\"\351\001\n\025PersistentSegmentInfo\022" - "\021\n\tsegmentID\030\001 \001(\003\022\024\n\014collectionID\030\002 \001(\003" - "\022\023\n\013partitionID\030\003 \001(\003\022\021\n\topen_time\030\004 \001(\004" - "\022\023\n\013sealed_time\030\005 \001(\004\022\024\n\014flushed_time\030\006 " - "\001(\004\022\020\n\010num_rows\030\007 \001(\003\022\020\n\010mem_size\030\010 \001(\003\022" - "0\n\005state\030\t \001(\0162!.milvus.proto.common.Seg" - "mentState\"u\n\037GetPersistentSegmentInfoReq" - "uest\022*\n\004base\030\001 \001(\0132\034.milvus.proto.common" - ".MsgBase\022\016\n\006dbName\030\002 \001(\t\022\026\n\016collectionNa" - "me\030\003 \001(\t\"\212\001\n GetPersistentSegmentInfoRes" + "me\030\003 \001(\t\"v\n\036GetCollectionStatisticsReque" + "st\022*\n\004base\030\001 \001(\0132\034.milvus.proto.common.M" + "sgBase\022\017\n\007db_name\030\002 \001(\t\022\027\n\017collection_na" + "me\030\003 \001(\t\"\200\001\n\037GetCollectionStatisticsResp" + "onse\022+\n\006status\030\001 \001(\0132\033.milvus.proto.comm" + "on.Status\0220\n\005stats\030\002 \003(\0132!.milvus.proto." + "common.KeyValuePair\"i\n\026ShowCollectionsRe" + "quest\022*\n\004base\030\001 \001(\0132\034.milvus.proto.commo" + "n.MsgBase\022\017\n\007db_name\030\002 \001(\t\022\022\n\ntime_stamp" + "\030\003 \001(\004\"`\n\027ShowCollectionsResponse\022+\n\006sta" + "tus\030\001 \001(\0132\033.milvus.proto.common.Status\022\030" + "\n\020collection_names\030\002 \003(\t\"\206\001\n\026CreateParti" + "tionRequest\022*\n\004base\030\001 \001(\0132\034.milvus.proto" + ".common.MsgBase\022\017\n\007db_name\030\002 \001(\t\022\027\n\017coll" + "ection_name\030\003 \001(\t\022\026\n\016partition_name\030\004 \001(" + "\t\"\204\001\n\024DropPartitionRequest\022*\n\004base\030\001 \001(\013" + "2\034.milvus.proto.common.MsgBase\022\017\n\007db_nam" + "e\030\002 \001(\t\022\027\n\017collection_name\030\003 \001(\t\022\026\n\016part" + "ition_name\030\004 \001(\t\"\203\001\n\023HasPartitionRequest" + "\022*\n\004base\030\001 \001(\0132\034.milvus.proto.common.Msg" + "Base\022\017\n\007db_name\030\002 \001(\t\022\027\n\017collection_name" + "\030\003 \001(\t\022\026\n\016partition_name\030\004 \001(\t\"\206\001\n\025LoadP" + "artitionsRequest\022*\n\004base\030\001 \001(\0132\034.milvus." + "proto.common.MsgBase\022\017\n\007db_name\030\002 \001(\t\022\027\n" + "\017collection_name\030\003 \001(\t\022\027\n\017partition_name" + "s\030\004 \003(\t\"\211\001\n\030ReleasePartitionsRequest\022*\n\004" + "base\030\001 \001(\0132\034.milvus.proto.common.MsgBase" + "\022\017\n\007db_name\030\002 \001(\t\022\027\n\017collection_name\030\003 \001" + "(\t\022\027\n\017partition_names\030\004 \003(\t\"\215\001\n\035GetParti" + "tionStatisticsRequest\022*\n\004base\030\001 \001(\0132\034.mi" + "lvus.proto.common.MsgBase\022\017\n\007db_name\030\002 \001" + "(\t\022\027\n\017collection_name\030\003 \001(\t\022\026\n\016partition" + "_name\030\004 \001(\t\"\177\n\036GetPartitionStatisticsRes" "ponse\022+\n\006status\030\001 \001(\0132\033.milvus.proto.com" - "mon.Status\0229\n\005infos\030\002 \003(\0132*.milvus.proto" - ".milvus.PersistentSegmentInfo\"\231\001\n\020QueryS" - "egmentInfo\022\021\n\tsegmentID\030\001 \001(\003\022\024\n\014collect" - "ionID\030\002 \001(\003\022\023\n\013partitionID\030\003 \001(\003\022\020\n\010mem_" - "size\030\004 \001(\003\022\020\n\010num_rows\030\005 \001(\003\022\022\n\nindex_na" - "me\030\006 \001(\t\022\017\n\007indexID\030\007 \001(\003\"p\n\032GetQuerySeg" - "mentInfoRequest\022*\n\004base\030\001 \001(\0132\034.milvus.p" - "roto.common.MsgBase\022\016\n\006dbName\030\002 \001(\t\022\026\n\016c" - "ollectionName\030\003 \001(\t\"\200\001\n\033GetQuerySegmentI" - "nfoResponse\022+\n\006status\030\001 \001(\0132\033.milvus.pro" - "to.common.Status\0224\n\005infos\030\002 \003(\0132%.milvus" - ".proto.milvus.QuerySegmentInfo\"\025\n\023Regist" - "erLinkRequest\"r\n\024RegisterLinkResponse\022-\n" - "\007address\030\001 \001(\0132\034.milvus.proto.common.Add" - "ress\022+\n\006status\030\002 \001(\0132\033.milvus.proto.comm" - "on.Status*>\n\017PlaceholderType\022\010\n\004None\020\000\022\020" - "\n\014BinaryVector\020d\022\017\n\013FloatVector\020e2\220\025\n\rMi" - "lvusService\022_\n\020CreateCollection\022,.milvus" - ".proto.milvus.CreateCollectionRequest\032\033." - "milvus.proto.common.Status\"\000\022[\n\016DropColl" - "ection\022*.milvus.proto.milvus.DropCollect" - "ionRequest\032\033.milvus.proto.common.Status\"" - "\000\022_\n\rHasCollection\022).milvus.proto.milvus" - ".HasCollectionRequest\032!.milvus.proto.mil" - "vus.BoolResponse\"\000\022[\n\016LoadCollection\022*.m" - "ilvus.proto.milvus.LoadCollectionRequest" - "\032\033.milvus.proto.common.Status\"\000\022a\n\021Relea" - "seCollection\022-.milvus.proto.milvus.Relea" - "seCollectionRequest\032\033.milvus.proto.commo" - "n.Status\"\000\022w\n\022DescribeCollection\022..milvu" - "s.proto.milvus.DescribeCollectionRequest" - "\032/.milvus.proto.milvus.DescribeCollectio" - "nResponse\"\000\022\206\001\n\027GetCollectionStatistics\022" - "3.milvus.proto.milvus.GetCollectionStati" - "sticsRequest\0324.milvus.proto.milvus.GetCo" - "llectionStatisticsResponse\"\000\022n\n\017ShowColl" - "ections\022+.milvus.proto.milvus.ShowCollec" - "tionsRequest\032,.milvus.proto.milvus.ShowC" - "ollectionsResponse\"\000\022]\n\017CreatePartition\022" - "+.milvus.proto.milvus.CreatePartitionReq" - "uest\032\033.milvus.proto.common.Status\"\000\022Y\n\rD" - "ropPartition\022).milvus.proto.milvus.DropP" - "artitionRequest\032\033.milvus.proto.common.St" - "atus\"\000\022]\n\014HasPartition\022(.milvus.proto.mi" - "lvus.HasPartitionRequest\032!.milvus.proto." - "milvus.BoolResponse\"\000\022[\n\016LoadPartitions\022" - "*.milvus.proto.milvus.LoadPartitionsRequ" - "est\032\033.milvus.proto.common.Status\"\000\022a\n\021Re" - "leasePartitions\022-.milvus.proto.milvus.Re" - "leasePartitionsRequest\032\033.milvus.proto.co" - "mmon.Status\"\000\022\203\001\n\026GetPartitionStatistics" - "\0222.milvus.proto.milvus.GetPartitionStati" - "sticsRequest\0323.milvus.proto.milvus.GetPa" - "rtitionStatisticsResponse\"\000\022k\n\016ShowParti" - "tions\022*.milvus.proto.milvus.ShowPartitio" - "nsRequest\032+.milvus.proto.milvus.ShowPart" - "itionsResponse\"\000\022U\n\013CreateIndex\022\'.milvus" - ".proto.milvus.CreateIndexRequest\032\033.milvu" - "s.proto.common.Status\"\000\022h\n\rDescribeIndex" - "\022).milvus.proto.milvus.DescribeIndexRequ" - "est\032*.milvus.proto.milvus.DescribeIndexR" - "esponse\"\000\022h\n\rGetIndexState\022).milvus.prot" - "o.milvus.GetIndexStateRequest\032*.milvus.p" - "roto.milvus.GetIndexStateResponse\"\000\022\200\001\n\025" - "GetIndexBuildProgress\0221.milvus.proto.mil" - "vus.GetIndexBuildProgressRequest\0322.milvu" - "s.proto.milvus.GetIndexBuildProgressResp" - "onse\"\000\022Q\n\tDropIndex\022%.milvus.proto.milvu" - "s.DropIndexRequest\032\033.milvus.proto.common" - ".Status\"\000\022S\n\006Insert\022\".milvus.proto.milvu" - "s.InsertRequest\032#.milvus.proto.milvus.In" - "sertResponse\"\000\022R\n\006Search\022\".milvus.proto." - "milvus.SearchRequest\032\".milvus.proto.milv" - "us.SearchResults\"\000\022I\n\005Flush\022!.milvus.pro" - "to.milvus.FlushRequest\032\033.milvus.proto.co" - "mmon.Status\"\000\022\211\001\n\030GetPersistentSegmentIn" - "fo\0224.milvus.proto.milvus.GetPersistentSe" - "gmentInfoRequest\0325.milvus.proto.milvus.G" - "etPersistentSegmentInfoResponse\"\000\022z\n\023Get" - "QuerySegmentInfo\022/.milvus.proto.milvus.G" - "etQuerySegmentInfoRequest\0320.milvus.proto" - ".milvus.GetQuerySegmentInfoResponse\"\000\022e\n" - "\014RegisterLink\022(.milvus.proto.milvus.Regi" - "sterLinkRequest\032).milvus.proto.milvus.Re" - "gisterLinkResponse\"\0002u\n\014ProxyService\022e\n\014" - "RegisterLink\022(.milvus.proto.milvus.Regis" - "terLinkRequest\032).milvus.proto.milvus.Reg" - "isterLinkResponse\"\000B5Z3github.com/milvus" - "-io/milvus/internal/proto/milvuspbb\006prot" - "o3" + "mon.Status\0220\n\005stats\030\002 \003(\0132!.milvus.proto" + ".common.KeyValuePair\"\203\001\n\025ShowPartitionsR" + "equest\022*\n\004base\030\001 \001(\0132\034.milvus.proto.comm" + "on.MsgBase\022\017\n\007db_name\030\002 \001(\t\022\027\n\017collectio" + "n_name\030\003 \001(\t\022\024\n\014collectionID\030\004 \001(\003\"t\n\026Sh" + "owPartitionsResponse\022+\n\006status\030\001 \001(\0132\033.m" + "ilvus.proto.common.Status\022\027\n\017partition_n" + "ames\030\002 \003(\t\022\024\n\014partitionIDs\030\003 \003(\003\"m\n\026Desc" + "ribeSegmentRequest\022*\n\004base\030\001 \001(\0132\034.milvu" + "s.proto.common.MsgBase\022\024\n\014collectionID\030\002" + " \001(\003\022\021\n\tsegmentID\030\003 \001(\003\"~\n\027DescribeSegme" + "ntResponse\022+\n\006status\030\001 \001(\0132\033.milvus.prot" + "o.common.Status\022\017\n\007indexID\030\002 \001(\003\022\017\n\007buil" + "dID\030\003 \001(\003\022\024\n\014enable_index\030\004 \001(\010\"l\n\023ShowS" + "egmentsRequest\022*\n\004base\030\001 \001(\0132\034.milvus.pr" + "oto.common.MsgBase\022\024\n\014collectionID\030\002 \001(\003" + "\022\023\n\013partitionID\030\003 \001(\003\"W\n\024ShowSegmentsRes" + "ponse\022+\n\006status\030\001 \001(\0132\033.milvus.proto.com" + "mon.Status\022\022\n\nsegmentIDs\030\002 \003(\003\"\267\001\n\022Creat" + "eIndexRequest\022*\n\004base\030\001 \001(\0132\034.milvus.pro" + "to.common.MsgBase\022\017\n\007db_name\030\002 \001(\t\022\027\n\017co" + "llection_name\030\003 \001(\t\022\022\n\nfield_name\030\004 \001(\t\022" + "7\n\014extra_params\030\005 \003(\0132!.milvus.proto.com" + "mon.KeyValuePair\"\224\001\n\024DescribeIndexReques" + "t\022*\n\004base\030\001 \001(\0132\034.milvus.proto.common.Ms" + "gBase\022\017\n\007db_name\030\002 \001(\t\022\027\n\017collection_nam" + "e\030\003 \001(\t\022\022\n\nfield_name\030\004 \001(\t\022\022\n\nindex_nam" + "e\030\005 \001(\t\"~\n\020IndexDescription\022\022\n\nindex_nam" + "e\030\001 \001(\t\022\017\n\007indexID\030\002 \001(\003\0221\n\006params\030\003 \003(\013" + "2!.milvus.proto.common.KeyValuePair\022\022\n\nf" + "ield_name\030\004 \001(\t\"\207\001\n\025DescribeIndexRespons" + "e\022+\n\006status\030\001 \001(\0132\033.milvus.proto.common." + "Status\022A\n\022index_descriptions\030\002 \003(\0132%.mil" + "vus.proto.milvus.IndexDescription\"\234\001\n\034Ge" + "tIndexBuildProgressRequest\022*\n\004base\030\001 \001(\013" + "2\034.milvus.proto.common.MsgBase\022\017\n\007db_nam" + "e\030\002 \001(\t\022\027\n\017collection_name\030\003 \001(\t\022\022\n\nfiel" + "d_name\030\004 \001(\t\022\022\n\nindex_name\030\005 \001(\t\"v\n\035GetI" + "ndexBuildProgressResponse\022+\n\006status\030\001 \001(" + "\0132\033.milvus.proto.common.Status\022\024\n\014indexe" + "d_rows\030\002 \001(\003\022\022\n\ntotal_rows\030\003 \001(\003\"\224\001\n\024Get" + "IndexStateRequest\022*\n\004base\030\001 \001(\0132\034.milvus" + ".proto.common.MsgBase\022\017\n\007db_name\030\002 \001(\t\022\027" + "\n\017collection_name\030\003 \001(\t\022\022\n\nfield_name\030\004 " + "\001(\t\022\022\n\nindex_name\030\005 \001(\t\"t\n\025GetIndexState" + "Response\022+\n\006status\030\001 \001(\0132\033.milvus.proto." + "common.Status\022.\n\005state\030\002 \001(\0162\037.milvus.pr" + "oto.common.IndexState\"\220\001\n\020DropIndexReque" + "st\022*\n\004base\030\001 \001(\0132\034.milvus.proto.common.M" + "sgBase\022\017\n\007db_name\030\002 \001(\t\022\027\n\017collection_na" + "me\030\003 \001(\t\022\022\n\nfield_name\030\004 \001(\t\022\022\n\nindex_na" + "me\030\005 \001(\t\"\275\001\n\rInsertRequest\022*\n\004base\030\001 \001(\013" + "2\034.milvus.proto.common.MsgBase\022\017\n\007db_nam" + "e\030\002 \001(\t\022\027\n\017collection_name\030\003 \001(\t\022\026\n\016part" + "ition_name\030\004 \001(\t\022+\n\010row_data\030\005 \003(\0132\031.mil" + "vus.proto.common.Blob\022\021\n\thash_keys\030\006 \003(\r" + "\"e\n\016InsertResponse\022+\n\006status\030\001 \001(\0132\033.mil" + "vus.proto.common.Status\022\023\n\013rowID_begin\030\002" + " \001(\003\022\021\n\trowID_end\030\003 \001(\003\"c\n\020PlaceholderVa" + "lue\022\013\n\003tag\030\001 \001(\t\0222\n\004type\030\002 \001(\0162$.milvus." + "proto.milvus.PlaceholderType\022\016\n\006values\030\003" + " \003(\014\"O\n\020PlaceholderGroup\022;\n\014placeholders" + "\030\001 \003(\0132%.milvus.proto.milvus.Placeholder" + "Value\"\220\002\n\rSearchRequest\022*\n\004base\030\001 \001(\0132\034." + "milvus.proto.common.MsgBase\022\017\n\007db_name\030\002" + " \001(\t\022\027\n\017collection_name\030\003 \001(\t\022\027\n\017partiti" + "on_names\030\004 \003(\t\022\013\n\003dsl\030\005 \001(\t\022\031\n\021placehold" + "er_group\030\006 \001(\014\022.\n\010dsl_type\030\007 \001(\0162\034.milvu" + "s.proto.common.DslType\0228\n\rsearch_params\030" + "\010 \003(\0132!.milvus.proto.common.KeyValuePair" + "\"5\n\004Hits\022\013\n\003IDs\030\001 \003(\003\022\020\n\010row_data\030\002 \003(\014\022" + "\016\n\006scores\030\003 \003(\002\"J\n\rSearchResults\022+\n\006stat" + "us\030\001 \001(\0132\033.milvus.proto.common.Status\022\014\n" + "\004hits\030\002 \003(\014\"e\n\014FlushRequest\022*\n\004base\030\001 \001(" + "\0132\034.milvus.proto.common.MsgBase\022\017\n\007db_na" + "me\030\002 \001(\t\022\030\n\020collection_names\030\003 \003(\t\"\351\001\n\025P" + "ersistentSegmentInfo\022\021\n\tsegmentID\030\001 \001(\003\022" + "\024\n\014collectionID\030\002 \001(\003\022\023\n\013partitionID\030\003 \001" + "(\003\022\021\n\topen_time\030\004 \001(\004\022\023\n\013sealed_time\030\005 \001" + "(\004\022\024\n\014flushed_time\030\006 \001(\004\022\020\n\010num_rows\030\007 \001" + "(\003\022\020\n\010mem_size\030\010 \001(\003\0220\n\005state\030\t \001(\0162!.mi" + "lvus.proto.common.SegmentState\"u\n\037GetPer" + "sistentSegmentInfoRequest\022*\n\004base\030\001 \001(\0132" + "\034.milvus.proto.common.MsgBase\022\016\n\006dbName\030" + "\002 \001(\t\022\026\n\016collectionName\030\003 \001(\t\"\212\001\n GetPer" + "sistentSegmentInfoResponse\022+\n\006status\030\001 \001" + "(\0132\033.milvus.proto.common.Status\0229\n\005infos" + "\030\002 \003(\0132*.milvus.proto.milvus.PersistentS" + "egmentInfo\"\231\001\n\020QuerySegmentInfo\022\021\n\tsegme" + "ntID\030\001 \001(\003\022\024\n\014collectionID\030\002 \001(\003\022\023\n\013part" + "itionID\030\003 \001(\003\022\020\n\010mem_size\030\004 \001(\003\022\020\n\010num_r" + "ows\030\005 \001(\003\022\022\n\nindex_name\030\006 \001(\t\022\017\n\007indexID" + "\030\007 \001(\003\"p\n\032GetQuerySegmentInfoRequest\022*\n\004" + "base\030\001 \001(\0132\034.milvus.proto.common.MsgBase" + "\022\016\n\006dbName\030\002 \001(\t\022\026\n\016collectionName\030\003 \001(\t" + "\"\200\001\n\033GetQuerySegmentInfoResponse\022+\n\006stat" + "us\030\001 \001(\0132\033.milvus.proto.common.Status\0224\n" + "\005infos\030\002 \003(\0132%.milvus.proto.milvus.Query" + "SegmentInfo\"\025\n\023RegisterLinkRequest\"r\n\024Re" + "gisterLinkResponse\022-\n\007address\030\001 \001(\0132\034.mi" + "lvus.proto.common.Address\022+\n\006status\030\002 \001(" + "\0132\033.milvus.proto.common.Status*>\n\017Placeh" + "olderType\022\010\n\004None\020\000\022\020\n\014BinaryVector\020d\022\017\n" + "\013FloatVector\020e2\220\025\n\rMilvusService\022_\n\020Crea" + "teCollection\022,.milvus.proto.milvus.Creat" + "eCollectionRequest\032\033.milvus.proto.common" + ".Status\"\000\022[\n\016DropCollection\022*.milvus.pro" + "to.milvus.DropCollectionRequest\032\033.milvus" + ".proto.common.Status\"\000\022_\n\rHasCollection\022" + ").milvus.proto.milvus.HasCollectionReque" + "st\032!.milvus.proto.milvus.BoolResponse\"\000\022" + "[\n\016LoadCollection\022*.milvus.proto.milvus." + "LoadCollectionRequest\032\033.milvus.proto.com" + "mon.Status\"\000\022a\n\021ReleaseCollection\022-.milv" + "us.proto.milvus.ReleaseCollectionRequest" + "\032\033.milvus.proto.common.Status\"\000\022w\n\022Descr" + "ibeCollection\022..milvus.proto.milvus.Desc" + "ribeCollectionRequest\032/.milvus.proto.mil" + "vus.DescribeCollectionResponse\"\000\022\206\001\n\027Get" + "CollectionStatistics\0223.milvus.proto.milv" + "us.GetCollectionStatisticsRequest\0324.milv" + "us.proto.milvus.GetCollectionStatisticsR" + "esponse\"\000\022n\n\017ShowCollections\022+.milvus.pr" + "oto.milvus.ShowCollectionsRequest\032,.milv" + "us.proto.milvus.ShowCollectionsResponse\"" + "\000\022]\n\017CreatePartition\022+.milvus.proto.milv" + "us.CreatePartitionRequest\032\033.milvus.proto" + ".common.Status\"\000\022Y\n\rDropPartition\022).milv" + "us.proto.milvus.DropPartitionRequest\032\033.m" + "ilvus.proto.common.Status\"\000\022]\n\014HasPartit" + "ion\022(.milvus.proto.milvus.HasPartitionRe" + "quest\032!.milvus.proto.milvus.BoolResponse" + "\"\000\022[\n\016LoadPartitions\022*.milvus.proto.milv" + "us.LoadPartitionsRequest\032\033.milvus.proto." + "common.Status\"\000\022a\n\021ReleasePartitions\022-.m" + "ilvus.proto.milvus.ReleasePartitionsRequ" + "est\032\033.milvus.proto.common.Status\"\000\022\203\001\n\026G" + "etPartitionStatistics\0222.milvus.proto.mil" + "vus.GetPartitionStatisticsRequest\0323.milv" + "us.proto.milvus.GetPartitionStatisticsRe" + "sponse\"\000\022k\n\016ShowPartitions\022*.milvus.prot" + "o.milvus.ShowPartitionsRequest\032+.milvus." + "proto.milvus.ShowPartitionsResponse\"\000\022U\n" + "\013CreateIndex\022\'.milvus.proto.milvus.Creat" + "eIndexRequest\032\033.milvus.proto.common.Stat" + "us\"\000\022h\n\rDescribeIndex\022).milvus.proto.mil" + "vus.DescribeIndexRequest\032*.milvus.proto." + "milvus.DescribeIndexResponse\"\000\022h\n\rGetInd" + "exState\022).milvus.proto.milvus.GetIndexSt" + "ateRequest\032*.milvus.proto.milvus.GetInde" + "xStateResponse\"\000\022\200\001\n\025GetIndexBuildProgre" + "ss\0221.milvus.proto.milvus.GetIndexBuildPr" + "ogressRequest\0322.milvus.proto.milvus.GetI" + "ndexBuildProgressResponse\"\000\022Q\n\tDropIndex" + "\022%.milvus.proto.milvus.DropIndexRequest\032" + "\033.milvus.proto.common.Status\"\000\022S\n\006Insert" + "\022\".milvus.proto.milvus.InsertRequest\032#.m" + "ilvus.proto.milvus.InsertResponse\"\000\022R\n\006S" + "earch\022\".milvus.proto.milvus.SearchReques" + "t\032\".milvus.proto.milvus.SearchResults\"\000\022" + "I\n\005Flush\022!.milvus.proto.milvus.FlushRequ" + "est\032\033.milvus.proto.common.Status\"\000\022\211\001\n\030G" + "etPersistentSegmentInfo\0224.milvus.proto.m" + "ilvus.GetPersistentSegmentInfoRequest\0325." + "milvus.proto.milvus.GetPersistentSegment" + "InfoResponse\"\000\022z\n\023GetQuerySegmentInfo\022/." + "milvus.proto.milvus.GetQuerySegmentInfoR" + "equest\0320.milvus.proto.milvus.GetQuerySeg" + "mentInfoResponse\"\000\022e\n\014RegisterLink\022(.mil" + "vus.proto.milvus.RegisterLinkRequest\032).m" + "ilvus.proto.milvus.RegisterLinkResponse\"" + "\0002u\n\014ProxyService\022e\n\014RegisterLink\022(.milv" + "us.proto.milvus.RegisterLinkRequest\032).mi" + "lvus.proto.milvus.RegisterLinkResponse\"\000" + "B5Z3github.com/milvus-io/milvus/internal" + "/proto/milvuspbb\006proto3" ; static const ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable*const descriptor_table_milvus_2eproto_deps[2] = { &::descriptor_table_common_2eproto, @@ -1852,7 +1856,7 @@ static ::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase*const descriptor_table_mil static ::PROTOBUF_NAMESPACE_ID::internal::once_flag descriptor_table_milvus_2eproto_once; static bool descriptor_table_milvus_2eproto_initialized = false; const ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable descriptor_table_milvus_2eproto = { - &descriptor_table_milvus_2eproto_initialized, descriptor_table_protodef_milvus_2eproto, "milvus.proto", 9522, + &descriptor_table_milvus_2eproto_initialized, descriptor_table_protodef_milvus_2eproto, "milvus.proto", 9583, &descriptor_table_milvus_2eproto_once, descriptor_table_milvus_2eproto_sccs, descriptor_table_milvus_2eproto_deps, 51, 2, schemas, file_default_instances, TableStruct_milvus_2eproto::offsets, file_level_metadata_milvus_2eproto, 51, file_level_enum_descriptors_milvus_2eproto, file_level_service_descriptors_milvus_2eproto, @@ -2814,6 +2818,7 @@ HasCollectionRequest::HasCollectionRequest(const HasCollectionRequest& from) } else { base_ = nullptr; } + time_stamp_ = from.time_stamp_; // @@protoc_insertion_point(copy_constructor:milvus.proto.milvus.HasCollectionRequest) } @@ -2821,7 +2826,9 @@ void HasCollectionRequest::SharedCtor() { ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_HasCollectionRequest_milvus_2eproto.base); db_name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited()); collection_name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited()); - base_ = nullptr; + ::memset(&base_, 0, static_cast( + reinterpret_cast(&time_stamp_) - + reinterpret_cast(&base_)) + sizeof(time_stamp_)); } HasCollectionRequest::~HasCollectionRequest() { @@ -2856,6 +2863,7 @@ void HasCollectionRequest::Clear() { delete base_; } base_ = nullptr; + time_stamp_ = PROTOBUF_ULONGLONG(0); _internal_metadata_.Clear(); } @@ -2888,6 +2896,13 @@ const char* HasCollectionRequest::_InternalParse(const char* ptr, ::PROTOBUF_NAM CHK_(ptr); } else goto handle_unusual; continue; + // uint64 time_stamp = 4; + case 4: + if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 32)) { + time_stamp_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr); + CHK_(ptr); + } else goto handle_unusual; + continue; default: { handle_unusual: if ((tag & 7) == 4 || tag == 0) { @@ -2959,6 +2974,19 @@ bool HasCollectionRequest::MergePartialFromCodedStream( break; } + // uint64 time_stamp = 4; + case 4: { + if (static_cast< ::PROTOBUF_NAMESPACE_ID::uint8>(tag) == (32 & 0xFF)) { + + DO_((::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::ReadPrimitive< + ::PROTOBUF_NAMESPACE_ID::uint64, ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::TYPE_UINT64>( + input, &time_stamp_))); + } else { + goto handle_unusual; + } + break; + } + default: { handle_unusual: if (tag == 0) { @@ -3012,6 +3040,11 @@ void HasCollectionRequest::SerializeWithCachedSizes( 3, this->collection_name(), output); } + // uint64 time_stamp = 4; + if (this->time_stamp() != 0) { + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteUInt64(4, this->time_stamp(), output); + } + if (_internal_metadata_.have_unknown_fields()) { ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::SerializeUnknownFields( _internal_metadata_.unknown_fields(), output); @@ -3054,6 +3087,11 @@ void HasCollectionRequest::SerializeWithCachedSizes( 3, this->collection_name(), target); } + // uint64 time_stamp = 4; + if (this->time_stamp() != 0) { + target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteUInt64ToArray(4, this->time_stamp(), target); + } + if (_internal_metadata_.have_unknown_fields()) { target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::SerializeUnknownFieldsToArray( _internal_metadata_.unknown_fields(), target); @@ -3096,6 +3134,13 @@ size_t HasCollectionRequest::ByteSizeLong() const { *base_); } + // uint64 time_stamp = 4; + if (this->time_stamp() != 0) { + total_size += 1 + + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::UInt64Size( + this->time_stamp()); + } + int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size); SetCachedSize(cached_size); return total_size; @@ -3134,6 +3179,9 @@ void HasCollectionRequest::MergeFrom(const HasCollectionRequest& from) { if (from.has_base()) { mutable_base()->::milvus::proto::common::MsgBase::MergeFrom(from.base()); } + if (from.time_stamp() != 0) { + set_time_stamp(from.time_stamp()); + } } void HasCollectionRequest::CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) { @@ -3162,6 +3210,7 @@ void HasCollectionRequest::InternalSwap(HasCollectionRequest* other) { collection_name_.Swap(&other->collection_name_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), GetArenaNoVirtual()); swap(base_, other->base_); + swap(time_stamp_, other->time_stamp_); } ::PROTOBUF_NAMESPACE_ID::Metadata HasCollectionRequest::GetMetadata() const { @@ -3862,7 +3911,9 @@ DescribeCollectionRequest::DescribeCollectionRequest(const DescribeCollectionReq } else { base_ = nullptr; } - collectionid_ = from.collectionid_; + ::memcpy(&collectionid_, &from.collectionid_, + static_cast(reinterpret_cast(&time_stamp_) - + reinterpret_cast(&collectionid_)) + sizeof(time_stamp_)); // @@protoc_insertion_point(copy_constructor:milvus.proto.milvus.DescribeCollectionRequest) } @@ -3871,8 +3922,8 @@ void DescribeCollectionRequest::SharedCtor() { db_name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited()); collection_name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited()); ::memset(&base_, 0, static_cast( - reinterpret_cast(&collectionid_) - - reinterpret_cast(&base_)) + sizeof(collectionid_)); + reinterpret_cast(&time_stamp_) - + reinterpret_cast(&base_)) + sizeof(time_stamp_)); } DescribeCollectionRequest::~DescribeCollectionRequest() { @@ -3907,7 +3958,9 @@ void DescribeCollectionRequest::Clear() { delete base_; } base_ = nullptr; - collectionid_ = PROTOBUF_LONGLONG(0); + ::memset(&collectionid_, 0, static_cast( + reinterpret_cast(&time_stamp_) - + reinterpret_cast(&collectionid_)) + sizeof(time_stamp_)); _internal_metadata_.Clear(); } @@ -3947,6 +4000,13 @@ const char* DescribeCollectionRequest::_InternalParse(const char* ptr, ::PROTOBU CHK_(ptr); } else goto handle_unusual; continue; + // uint64 time_stamp = 5; + case 5: + if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 40)) { + time_stamp_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr); + CHK_(ptr); + } else goto handle_unusual; + continue; default: { handle_unusual: if ((tag & 7) == 4 || tag == 0) { @@ -4031,6 +4091,19 @@ bool DescribeCollectionRequest::MergePartialFromCodedStream( break; } + // uint64 time_stamp = 5; + case 5: { + if (static_cast< ::PROTOBUF_NAMESPACE_ID::uint8>(tag) == (40 & 0xFF)) { + + DO_((::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::ReadPrimitive< + ::PROTOBUF_NAMESPACE_ID::uint64, ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::TYPE_UINT64>( + input, &time_stamp_))); + } else { + goto handle_unusual; + } + break; + } + default: { handle_unusual: if (tag == 0) { @@ -4089,6 +4162,11 @@ void DescribeCollectionRequest::SerializeWithCachedSizes( ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt64(4, this->collectionid(), output); } + // uint64 time_stamp = 5; + if (this->time_stamp() != 0) { + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteUInt64(5, this->time_stamp(), output); + } + if (_internal_metadata_.have_unknown_fields()) { ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::SerializeUnknownFields( _internal_metadata_.unknown_fields(), output); @@ -4136,6 +4214,11 @@ void DescribeCollectionRequest::SerializeWithCachedSizes( target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt64ToArray(4, this->collectionid(), target); } + // uint64 time_stamp = 5; + if (this->time_stamp() != 0) { + target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteUInt64ToArray(5, this->time_stamp(), target); + } + if (_internal_metadata_.have_unknown_fields()) { target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::SerializeUnknownFieldsToArray( _internal_metadata_.unknown_fields(), target); @@ -4185,6 +4268,13 @@ size_t DescribeCollectionRequest::ByteSizeLong() const { this->collectionid()); } + // uint64 time_stamp = 5; + if (this->time_stamp() != 0) { + total_size += 1 + + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::UInt64Size( + this->time_stamp()); + } + int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size); SetCachedSize(cached_size); return total_size; @@ -4226,6 +4316,9 @@ void DescribeCollectionRequest::MergeFrom(const DescribeCollectionRequest& from) if (from.collectionid() != 0) { set_collectionid(from.collectionid()); } + if (from.time_stamp() != 0) { + set_time_stamp(from.time_stamp()); + } } void DescribeCollectionRequest::CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) { @@ -4255,6 +4348,7 @@ void DescribeCollectionRequest::InternalSwap(DescribeCollectionRequest* other) { GetArenaNoVirtual()); swap(base_, other->base_); swap(collectionid_, other->collectionid_); + swap(time_stamp_, other->time_stamp_); } ::PROTOBUF_NAMESPACE_ID::Metadata DescribeCollectionRequest::GetMetadata() const { @@ -6327,13 +6421,16 @@ ShowCollectionsRequest::ShowCollectionsRequest(const ShowCollectionsRequest& fro } else { base_ = nullptr; } + time_stamp_ = from.time_stamp_; // @@protoc_insertion_point(copy_constructor:milvus.proto.milvus.ShowCollectionsRequest) } void ShowCollectionsRequest::SharedCtor() { ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_ShowCollectionsRequest_milvus_2eproto.base); db_name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited()); - base_ = nullptr; + ::memset(&base_, 0, static_cast( + reinterpret_cast(&time_stamp_) - + reinterpret_cast(&base_)) + sizeof(time_stamp_)); } ShowCollectionsRequest::~ShowCollectionsRequest() { @@ -6366,6 +6463,7 @@ void ShowCollectionsRequest::Clear() { delete base_; } base_ = nullptr; + time_stamp_ = PROTOBUF_ULONGLONG(0); _internal_metadata_.Clear(); } @@ -6391,6 +6489,13 @@ const char* ShowCollectionsRequest::_InternalParse(const char* ptr, ::PROTOBUF_N CHK_(ptr); } else goto handle_unusual; continue; + // uint64 time_stamp = 3; + case 3: + if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 24)) { + time_stamp_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr); + CHK_(ptr); + } else goto handle_unusual; + continue; default: { handle_unusual: if ((tag & 7) == 4 || tag == 0) { @@ -6447,6 +6552,19 @@ bool ShowCollectionsRequest::MergePartialFromCodedStream( break; } + // uint64 time_stamp = 3; + case 3: { + if (static_cast< ::PROTOBUF_NAMESPACE_ID::uint8>(tag) == (24 & 0xFF)) { + + DO_((::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::ReadPrimitive< + ::PROTOBUF_NAMESPACE_ID::uint64, ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::TYPE_UINT64>( + input, &time_stamp_))); + } else { + goto handle_unusual; + } + break; + } + default: { handle_unusual: if (tag == 0) { @@ -6490,6 +6608,11 @@ void ShowCollectionsRequest::SerializeWithCachedSizes( 2, this->db_name(), output); } + // uint64 time_stamp = 3; + if (this->time_stamp() != 0) { + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteUInt64(3, this->time_stamp(), output); + } + if (_internal_metadata_.have_unknown_fields()) { ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::SerializeUnknownFields( _internal_metadata_.unknown_fields(), output); @@ -6521,6 +6644,11 @@ void ShowCollectionsRequest::SerializeWithCachedSizes( 2, this->db_name(), target); } + // uint64 time_stamp = 3; + if (this->time_stamp() != 0) { + target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteUInt64ToArray(3, this->time_stamp(), target); + } + if (_internal_metadata_.have_unknown_fields()) { target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::SerializeUnknownFieldsToArray( _internal_metadata_.unknown_fields(), target); @@ -6556,6 +6684,13 @@ size_t ShowCollectionsRequest::ByteSizeLong() const { *base_); } + // uint64 time_stamp = 3; + if (this->time_stamp() != 0) { + total_size += 1 + + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::UInt64Size( + this->time_stamp()); + } + int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size); SetCachedSize(cached_size); return total_size; @@ -6590,6 +6725,9 @@ void ShowCollectionsRequest::MergeFrom(const ShowCollectionsRequest& from) { if (from.has_base()) { mutable_base()->::milvus::proto::common::MsgBase::MergeFrom(from.base()); } + if (from.time_stamp() != 0) { + set_time_stamp(from.time_stamp()); + } } void ShowCollectionsRequest::CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) { @@ -6616,6 +6754,7 @@ void ShowCollectionsRequest::InternalSwap(ShowCollectionsRequest* other) { db_name_.Swap(&other->db_name_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), GetArenaNoVirtual()); swap(base_, other->base_); + swap(time_stamp_, other->time_stamp_); } ::PROTOBUF_NAMESPACE_ID::Metadata ShowCollectionsRequest::GetMetadata() const { diff --git a/internal/core/src/pb/milvus.pb.h b/internal/core/src/pb/milvus.pb.h index 0259202444..d16253f786 100644 --- a/internal/core/src/pb/milvus.pb.h +++ b/internal/core/src/pb/milvus.pb.h @@ -757,6 +757,7 @@ class HasCollectionRequest : kDbNameFieldNumber = 2, kCollectionNameFieldNumber = 3, kBaseFieldNumber = 1, + kTimeStampFieldNumber = 4, }; // string db_name = 2; void clear_db_name(); @@ -788,6 +789,11 @@ class HasCollectionRequest : ::milvus::proto::common::MsgBase* mutable_base(); void set_allocated_base(::milvus::proto::common::MsgBase* base); + // uint64 time_stamp = 4; + void clear_time_stamp(); + ::PROTOBUF_NAMESPACE_ID::uint64 time_stamp() const; + void set_time_stamp(::PROTOBUF_NAMESPACE_ID::uint64 value); + // @@protoc_insertion_point(class_scope:milvus.proto.milvus.HasCollectionRequest) private: class _Internal; @@ -796,6 +802,7 @@ class HasCollectionRequest : ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr db_name_; ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr collection_name_; ::milvus::proto::common::MsgBase* base_; + ::PROTOBUF_NAMESPACE_ID::uint64 time_stamp_; mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; friend struct ::TableStruct_milvus_2eproto; }; @@ -1206,6 +1213,7 @@ class DescribeCollectionRequest : kCollectionNameFieldNumber = 3, kBaseFieldNumber = 1, kCollectionIDFieldNumber = 4, + kTimeStampFieldNumber = 5, }; // string db_name = 2; void clear_db_name(); @@ -1242,6 +1250,11 @@ class DescribeCollectionRequest : ::PROTOBUF_NAMESPACE_ID::int64 collectionid() const; void set_collectionid(::PROTOBUF_NAMESPACE_ID::int64 value); + // uint64 time_stamp = 5; + void clear_time_stamp(); + ::PROTOBUF_NAMESPACE_ID::uint64 time_stamp() const; + void set_time_stamp(::PROTOBUF_NAMESPACE_ID::uint64 value); + // @@protoc_insertion_point(class_scope:milvus.proto.milvus.DescribeCollectionRequest) private: class _Internal; @@ -1251,6 +1264,7 @@ class DescribeCollectionRequest : ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr collection_name_; ::milvus::proto::common::MsgBase* base_; ::PROTOBUF_NAMESPACE_ID::int64 collectionid_; + ::PROTOBUF_NAMESPACE_ID::uint64 time_stamp_; mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; friend struct ::TableStruct_milvus_2eproto; }; @@ -2187,6 +2201,7 @@ class ShowCollectionsRequest : enum : int { kDbNameFieldNumber = 2, kBaseFieldNumber = 1, + kTimeStampFieldNumber = 3, }; // string db_name = 2; void clear_db_name(); @@ -2207,6 +2222,11 @@ class ShowCollectionsRequest : ::milvus::proto::common::MsgBase* mutable_base(); void set_allocated_base(::milvus::proto::common::MsgBase* base); + // uint64 time_stamp = 3; + void clear_time_stamp(); + ::PROTOBUF_NAMESPACE_ID::uint64 time_stamp() const; + void set_time_stamp(::PROTOBUF_NAMESPACE_ID::uint64 value); + // @@protoc_insertion_point(class_scope:milvus.proto.milvus.ShowCollectionsRequest) private: class _Internal; @@ -2214,6 +2234,7 @@ class ShowCollectionsRequest : ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArena _internal_metadata_; ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr db_name_; ::milvus::proto::common::MsgBase* base_; + ::PROTOBUF_NAMESPACE_ID::uint64 time_stamp_; mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; friend struct ::TableStruct_milvus_2eproto; }; @@ -9170,6 +9191,20 @@ inline void HasCollectionRequest::set_allocated_collection_name(std::string* col // @@protoc_insertion_point(field_set_allocated:milvus.proto.milvus.HasCollectionRequest.collection_name) } +// uint64 time_stamp = 4; +inline void HasCollectionRequest::clear_time_stamp() { + time_stamp_ = PROTOBUF_ULONGLONG(0); +} +inline ::PROTOBUF_NAMESPACE_ID::uint64 HasCollectionRequest::time_stamp() const { + // @@protoc_insertion_point(field_get:milvus.proto.milvus.HasCollectionRequest.time_stamp) + return time_stamp_; +} +inline void HasCollectionRequest::set_time_stamp(::PROTOBUF_NAMESPACE_ID::uint64 value) { + + time_stamp_ = value; + // @@protoc_insertion_point(field_set:milvus.proto.milvus.HasCollectionRequest.time_stamp) +} + // ------------------------------------------------------------------- // BoolResponse @@ -9498,6 +9533,20 @@ inline void DescribeCollectionRequest::set_collectionid(::PROTOBUF_NAMESPACE_ID: // @@protoc_insertion_point(field_set:milvus.proto.milvus.DescribeCollectionRequest.collectionID) } +// uint64 time_stamp = 5; +inline void DescribeCollectionRequest::clear_time_stamp() { + time_stamp_ = PROTOBUF_ULONGLONG(0); +} +inline ::PROTOBUF_NAMESPACE_ID::uint64 DescribeCollectionRequest::time_stamp() const { + // @@protoc_insertion_point(field_get:milvus.proto.milvus.DescribeCollectionRequest.time_stamp) + return time_stamp_; +} +inline void DescribeCollectionRequest::set_time_stamp(::PROTOBUF_NAMESPACE_ID::uint64 value) { + + time_stamp_ = value; + // @@protoc_insertion_point(field_set:milvus.proto.milvus.DescribeCollectionRequest.time_stamp) +} + // ------------------------------------------------------------------- // DescribeCollectionResponse @@ -10365,6 +10414,20 @@ inline void ShowCollectionsRequest::set_allocated_db_name(std::string* db_name) // @@protoc_insertion_point(field_set_allocated:milvus.proto.milvus.ShowCollectionsRequest.db_name) } +// uint64 time_stamp = 3; +inline void ShowCollectionsRequest::clear_time_stamp() { + time_stamp_ = PROTOBUF_ULONGLONG(0); +} +inline ::PROTOBUF_NAMESPACE_ID::uint64 ShowCollectionsRequest::time_stamp() const { + // @@protoc_insertion_point(field_get:milvus.proto.milvus.ShowCollectionsRequest.time_stamp) + return time_stamp_; +} +inline void ShowCollectionsRequest::set_time_stamp(::PROTOBUF_NAMESPACE_ID::uint64 value) { + + time_stamp_ = value; + // @@protoc_insertion_point(field_set:milvus.proto.milvus.ShowCollectionsRequest.time_stamp) +} + // ------------------------------------------------------------------- // ShowCollectionsResponse diff --git a/internal/masterservice/meta_table.go b/internal/masterservice/meta_table.go index 135a6f7895..8da57dcde4 100644 --- a/internal/masterservice/meta_table.go +++ b/internal/masterservice/meta_table.go @@ -254,6 +254,9 @@ func (mt *metaTable) AddCollection(coll *pb.CollectionInfo, part *pb.PartitionIn if len(coll.FieldIndexes) != len(idx) { return 0, fmt.Errorf("incorrect index id when creating collection") } + if _, ok := mt.partitionID2Meta[part.PartitionID]; ok { + return 0, fmt.Errorf("partition id = %d exist", part.PartitionID) + } coll.PartitionIDs = append(coll.PartitionIDs, part.PartitionID) mt.collID2Meta[coll.ID] = *coll @@ -460,7 +463,8 @@ func (mt *metaTable) ListCollections(ts typeutil.Timestamp) ([]string, error) { } _, vals, err := mt.client.LoadWithPrefix(CollectionMetaPrefix, ts) if err != nil { - return nil, err + log.Debug("load with prefix error", zap.Uint64("timestamp", ts), zap.Error(err)) + return []string{}, nil } colls := make([]string, 0, len(vals)) for _, val := range vals { diff --git a/internal/masterservice/meta_table_test.go b/internal/masterservice/meta_table_test.go index d4842e73aa..49111f3d7f 100644 --- a/internal/masterservice/meta_table_test.go +++ b/internal/masterservice/meta_table_test.go @@ -174,6 +174,7 @@ func TestMetaTable(t *testing.T) { etcdCli, err := clientv3.New(clientv3.Config{Endpoints: []string{etcdAddr}}) assert.Nil(t, err) + defer etcdCli.Close() skv, err := newMetaSnapshot(etcdCli, rootPath, TimestampPrefix, 7, ftso) assert.Nil(t, err) assert.NotNil(t, skv) @@ -1073,3 +1074,185 @@ func TestMetaTable(t *testing.T) { assert.EqualError(t, err, "segment id = 222 exist") }) } + +func TestMetaWithTimestamp(t *testing.T) { + rand.Seed(time.Now().UnixNano()) + randVal := rand.Int() + Params.Init() + etcdAddr := Params.EtcdAddress + rootPath := fmt.Sprintf("/test/meta/%d", randVal) + + var tsoStart typeutil.Timestamp = 100 + vtso := tsoStart + ftso := func() typeutil.Timestamp { + vtso++ + return vtso + } + + etcdCli, err := clientv3.New(clientv3.Config{Endpoints: []string{etcdAddr}}) + assert.Nil(t, err) + defer etcdCli.Close() + + skv, err := newMetaSnapshot(etcdCli, rootPath, TimestampPrefix, 7, ftso) + assert.Nil(t, err) + assert.NotNil(t, skv) + mt, err := NewMetaTable(skv) + assert.Nil(t, err) + + collInfo := &pb.CollectionInfo{ + ID: 1, + Schema: &schemapb.CollectionSchema{ + Name: "t1", + }, + } + + partInfo := &pb.PartitionInfo{ + PartitionName: "p1", + PartitionID: 11, + SegmentIDs: nil, + } + t1, err := mt.AddCollection(collInfo, partInfo, nil, "") + assert.Nil(t, err) + + collInfo.ID = 2 + collInfo.PartitionIDs = nil + collInfo.Schema.Name = "t2" + partInfo.PartitionID = 12 + partInfo.PartitionName = "p2" + + t2, err := mt.AddCollection(collInfo, partInfo, nil, "") + assert.Nil(t, err) + + assert.True(t, mt.HasCollection(1, 0)) + assert.True(t, mt.HasCollection(2, 0)) + + assert.True(t, mt.HasCollection(1, t2)) + assert.True(t, mt.HasCollection(2, t2)) + + assert.True(t, mt.HasCollection(1, t1)) + assert.False(t, mt.HasCollection(2, t1)) + + assert.False(t, mt.HasCollection(1, tsoStart)) + assert.False(t, mt.HasCollection(2, tsoStart)) + + c1, err := mt.GetCollectionByID(1, 0) + assert.Nil(t, err) + c2, err := mt.GetCollectionByID(2, 0) + assert.Nil(t, err) + assert.Equal(t, int64(1), c1.ID) + assert.Equal(t, int64(2), c2.ID) + + c1, err = mt.GetCollectionByID(1, t2) + assert.Nil(t, err) + c2, err = mt.GetCollectionByID(2, t2) + assert.Nil(t, err) + assert.Equal(t, int64(1), c1.ID) + assert.Equal(t, int64(2), c2.ID) + + c1, err = mt.GetCollectionByID(1, t1) + assert.Nil(t, err) + c2, err = mt.GetCollectionByID(2, t1) + assert.NotNil(t, err) + assert.Equal(t, int64(1), c1.ID) + + c1, err = mt.GetCollectionByID(1, tsoStart) + assert.NotNil(t, err) + c2, err = mt.GetCollectionByID(2, tsoStart) + assert.NotNil(t, err) + + c1, err = mt.GetCollectionByName("t1", 0) + assert.Nil(t, err) + c2, err = mt.GetCollectionByName("t2", 0) + assert.Nil(t, err) + assert.Equal(t, int64(1), c1.ID) + assert.Equal(t, int64(2), c2.ID) + + c1, err = mt.GetCollectionByName("t1", t2) + assert.Nil(t, err) + c2, err = mt.GetCollectionByName("t2", t2) + assert.Nil(t, err) + assert.Equal(t, int64(1), c1.ID) + assert.Equal(t, int64(2), c2.ID) + + c1, err = mt.GetCollectionByName("t1", t1) + assert.Nil(t, err) + c2, err = mt.GetCollectionByName("t2", t1) + assert.NotNil(t, err) + assert.Equal(t, int64(1), c1.ID) + + c1, err = mt.GetCollectionByName("t1", tsoStart) + assert.NotNil(t, err) + c2, err = mt.GetCollectionByName("t2", tsoStart) + assert.NotNil(t, err) + + s1, err := mt.ListCollections(0) + assert.Nil(t, err) + assert.Equal(t, 2, len(s1)) + assert.ElementsMatch(t, s1, []string{"t1", "t2"}) + + s1, err = mt.ListCollections(t2) + assert.Nil(t, err) + assert.Equal(t, 2, len(s1)) + assert.ElementsMatch(t, s1, []string{"t1", "t2"}) + + s1, err = mt.ListCollections(t1) + assert.Nil(t, err) + assert.Equal(t, 1, len(s1)) + assert.ElementsMatch(t, s1, []string{"t1"}) + + s1, err = mt.ListCollections(tsoStart) + assert.Nil(t, err) + assert.Equal(t, 0, len(s1)) + + p1, err := mt.GetPartitionByName(1, "p1", 0) + assert.Nil(t, err) + p2, err := mt.GetPartitionByName(2, "p2", 0) + assert.Nil(t, err) + assert.Equal(t, int64(11), p1.PartitionID) + assert.Equal(t, int64(12), p2.PartitionID) + assert.Nil(t, err) + + p1, err = mt.GetPartitionByName(1, "p1", t2) + assert.Nil(t, err) + p2, err = mt.GetPartitionByName(2, "p2", t2) + assert.Nil(t, err) + assert.Equal(t, int64(11), p1.PartitionID) + assert.Equal(t, int64(12), p2.PartitionID) + + p1, err = mt.GetPartitionByName(1, "p1", t1) + assert.Nil(t, err) + p2, err = mt.GetPartitionByName(2, "p2", t1) + assert.NotNil(t, err) + assert.Equal(t, int64(11), p1.PartitionID) + + p1, err = mt.GetPartitionByName(1, "p1", tsoStart) + assert.NotNil(t, err) + p2, err = mt.GetPartitionByName(2, "p2", tsoStart) + assert.NotNil(t, err) + + p1, err = mt.GetPartitionByID(1, 11, 0) + assert.Nil(t, err) + p2, err = mt.GetPartitionByID(2, 12, 0) + assert.Nil(t, err) + assert.Equal(t, int64(11), p1.PartitionID) + assert.Equal(t, int64(12), p2.PartitionID) + assert.Nil(t, err) + + p1, err = mt.GetPartitionByID(1, 11, t2) + assert.Nil(t, err) + p2, err = mt.GetPartitionByID(2, 12, t2) + assert.Nil(t, err) + assert.Equal(t, int64(11), p1.PartitionID) + assert.Equal(t, int64(12), p2.PartitionID) + + p1, err = mt.GetPartitionByID(1, 11, t1) + assert.Nil(t, err) + p2, err = mt.GetPartitionByID(2, 12, t1) + assert.NotNil(t, err) + assert.Equal(t, int64(11), p1.PartitionID) + + p1, err = mt.GetPartitionByID(1, 11, tsoStart) + assert.NotNil(t, err) + p2, err = mt.GetPartitionByID(2, 12, tsoStart) + assert.NotNil(t, err) +} diff --git a/internal/masterservice/task.go b/internal/masterservice/task.go index 93cb2a571f..c287527793 100644 --- a/internal/masterservice/task.go +++ b/internal/masterservice/task.go @@ -336,7 +336,7 @@ func (t *HasCollectionReqTask) Execute(ctx context.Context) error { if t.Type() != commonpb.MsgType_HasCollection { return fmt.Errorf("has collection, msg type = %s", commonpb.MsgType_name[int32(t.Type())]) } - _, err := t.core.MetaTable.GetCollectionByName(t.Req.CollectionName, 0) + _, err := t.core.MetaTable.GetCollectionByName(t.Req.CollectionName, t.Req.TimeStamp) if err == nil { t.HasCollection = true } else { @@ -375,12 +375,12 @@ func (t *DescribeCollectionReqTask) Execute(ctx context.Context) error { var err error if t.Req.CollectionName != "" { - collInfo, err = t.core.MetaTable.GetCollectionByName(t.Req.CollectionName, 0) + collInfo, err = t.core.MetaTable.GetCollectionByName(t.Req.CollectionName, t.Req.TimeStamp) if err != nil { return err } } else { - collInfo, err = t.core.MetaTable.GetCollectionByID(t.Req.CollectionID, 0) + collInfo, err = t.core.MetaTable.GetCollectionByID(t.Req.CollectionID, t.Req.TimeStamp) if err != nil { return err } @@ -427,7 +427,7 @@ func (t *ShowCollectionReqTask) Execute(ctx context.Context) error { if t.Type() != commonpb.MsgType_ShowCollections { return fmt.Errorf("show collection, msg type = %s", commonpb.MsgType_name[int32(t.Type())]) } - coll, err := t.core.MetaTable.ListCollections(0) + coll, err := t.core.MetaTable.ListCollections(t.Req.TimeStamp) if err != nil { return err } diff --git a/internal/proto/milvus.proto b/internal/proto/milvus.proto index e62e709b25..cfb9bc3687 100644 --- a/internal/proto/milvus.proto +++ b/internal/proto/milvus.proto @@ -60,6 +60,7 @@ message HasCollectionRequest { common.MsgBase base = 1; string db_name = 2; string collection_name = 3; + uint64 time_stamp = 4; } message BoolResponse { @@ -77,6 +78,7 @@ message DescribeCollectionRequest { string db_name = 2; string collection_name = 3; int64 collectionID = 4; + uint64 time_stamp = 5; } message DescribeCollectionResponse { @@ -113,6 +115,7 @@ message GetCollectionStatisticsResponse { message ShowCollectionsRequest { common.MsgBase base = 1; string db_name = 2; + uint64 time_stamp = 3; } message ShowCollectionsResponse { diff --git a/internal/proto/milvuspb/milvus.pb.go b/internal/proto/milvuspb/milvus.pb.go index e8f369ca4d..9d37001d28 100644 --- a/internal/proto/milvuspb/milvus.pb.go +++ b/internal/proto/milvuspb/milvus.pb.go @@ -185,6 +185,7 @@ type HasCollectionRequest struct { Base *commonpb.MsgBase `protobuf:"bytes,1,opt,name=base,proto3" json:"base,omitempty"` DbName string `protobuf:"bytes,2,opt,name=db_name,json=dbName,proto3" json:"db_name,omitempty"` CollectionName string `protobuf:"bytes,3,opt,name=collection_name,json=collectionName,proto3" json:"collection_name,omitempty"` + TimeStamp uint64 `protobuf:"varint,4,opt,name=time_stamp,json=timeStamp,proto3" json:"time_stamp,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` @@ -236,6 +237,13 @@ func (m *HasCollectionRequest) GetCollectionName() string { return "" } +func (m *HasCollectionRequest) GetTimeStamp() uint64 { + if m != nil { + return m.TimeStamp + } + return 0 +} + type BoolResponse struct { Status *commonpb.Status `protobuf:"bytes,1,opt,name=status,proto3" json:"status,omitempty"` Value bool `protobuf:"varint,2,opt,name=value,proto3" json:"value,omitempty"` @@ -335,6 +343,7 @@ type DescribeCollectionRequest struct { DbName string `protobuf:"bytes,2,opt,name=db_name,json=dbName,proto3" json:"db_name,omitempty"` CollectionName string `protobuf:"bytes,3,opt,name=collection_name,json=collectionName,proto3" json:"collection_name,omitempty"` CollectionID int64 `protobuf:"varint,4,opt,name=collectionID,proto3" json:"collectionID,omitempty"` + TimeStamp uint64 `protobuf:"varint,5,opt,name=time_stamp,json=timeStamp,proto3" json:"time_stamp,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` @@ -393,6 +402,13 @@ func (m *DescribeCollectionRequest) GetCollectionID() int64 { return 0 } +func (m *DescribeCollectionRequest) GetTimeStamp() uint64 { + if m != nil { + return m.TimeStamp + } + return 0 +} + type DescribeCollectionResponse struct { Status *commonpb.Status `protobuf:"bytes,1,opt,name=status,proto3" json:"status,omitempty"` Schema *schemapb.CollectionSchema `protobuf:"bytes,2,opt,name=schema,proto3" json:"schema,omitempty"` @@ -679,6 +695,7 @@ func (m *GetCollectionStatisticsResponse) GetStats() []*commonpb.KeyValuePair { type ShowCollectionsRequest struct { Base *commonpb.MsgBase `protobuf:"bytes,1,opt,name=base,proto3" json:"base,omitempty"` DbName string `protobuf:"bytes,2,opt,name=db_name,json=dbName,proto3" json:"db_name,omitempty"` + TimeStamp uint64 `protobuf:"varint,3,opt,name=time_stamp,json=timeStamp,proto3" json:"time_stamp,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` @@ -723,6 +740,13 @@ func (m *ShowCollectionsRequest) GetDbName() string { return "" } +func (m *ShowCollectionsRequest) GetTimeStamp() uint64 { + if m != nil { + return m.TimeStamp + } + return 0 +} + type ShowCollectionsResponse struct { Status *commonpb.Status `protobuf:"bytes,1,opt,name=status,proto3" json:"status,omitempty"` CollectionNames []string `protobuf:"bytes,2,rep,name=collection_names,json=collectionNames,proto3" json:"collection_names,omitempty"` @@ -3112,142 +3136,144 @@ func init() { func init() { proto.RegisterFile("milvus.proto", fileDescriptor_02345ba45cc0e303) } var fileDescriptor_02345ba45cc0e303 = []byte{ - // 2157 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xd4, 0x5a, 0xdd, 0x6f, 0x1c, 0x49, - 0x11, 0x4f, 0xef, 0x97, 0x77, 0x6b, 0x67, 0xed, 0x4d, 0xfb, 0x23, 0x9b, 0x4d, 0x72, 0x59, 0x0f, - 0x84, 0x73, 0x92, 0xbb, 0xf8, 0xb0, 0x13, 0x0e, 0x84, 0x40, 0xe0, 0x98, 0x38, 0x56, 0xee, 0x22, - 0xdf, 0x38, 0x9c, 0x38, 0x4e, 0xd1, 0x6a, 0x76, 0xa7, 0xe3, 0x1d, 0x65, 0x76, 0x66, 0x99, 0x9e, - 0xb5, 0xb3, 0x79, 0x42, 0x3a, 0x84, 0xc4, 0x57, 0x0e, 0x09, 0x84, 0x04, 0x0f, 0x3c, 0x20, 0xdd, - 0x33, 0x20, 0x90, 0x90, 0x78, 0xbe, 0x07, 0x24, 0x5e, 0xf8, 0x27, 0x78, 0x83, 0x3f, 0x01, 0x09, - 0xf5, 0xc7, 0xce, 0xce, 0x8c, 0x7b, 0xd6, 0xeb, 0xec, 0xe5, 0x6c, 0xbf, 0x4d, 0x57, 0x57, 0x77, - 0xff, 0xba, 0xba, 0xaa, 0xba, 0xba, 0x6a, 0x40, 0xeb, 0xda, 0xce, 0x7e, 0x9f, 0xde, 0xea, 0xf9, - 0x5e, 0xe0, 0xe1, 0xf9, 0x68, 0xeb, 0x96, 0x68, 0xd4, 0xb5, 0xb6, 0xd7, 0xed, 0x7a, 0xae, 0x20, - 0xd6, 0x35, 0xda, 0xee, 0x90, 0xae, 0x29, 0x5a, 0xfa, 0xa7, 0x08, 0x2e, 0xdc, 0xf5, 0x89, 0x19, - 0x90, 0xbb, 0x9e, 0xe3, 0x90, 0x76, 0x60, 0x7b, 0xae, 0x41, 0x7e, 0xd0, 0x27, 0x34, 0xc0, 0x6f, - 0x41, 0xae, 0x65, 0x52, 0x52, 0x43, 0x0d, 0xb4, 0x52, 0x5e, 0xbb, 0x7c, 0x2b, 0x36, 0xb7, 0x9c, - 0xf3, 0x5d, 0xba, 0xb7, 0x61, 0x52, 0x62, 0x70, 0x4e, 0x7c, 0x01, 0x66, 0xac, 0x56, 0xd3, 0x35, - 0xbb, 0xa4, 0x96, 0x69, 0xa0, 0x95, 0x92, 0x51, 0xb0, 0x5a, 0x0f, 0xcd, 0x2e, 0xc1, 0xaf, 0xc3, - 0x5c, 0x3b, 0x9c, 0x5f, 0x30, 0x64, 0x39, 0xc3, 0xec, 0x88, 0xcc, 0x19, 0x97, 0xa0, 0x20, 0xf0, - 0xd5, 0x72, 0x0d, 0xb4, 0xa2, 0x19, 0xb2, 0x85, 0xaf, 0x00, 0xd0, 0x8e, 0xe9, 0x5b, 0xb4, 0xe9, - 0xf6, 0xbb, 0xb5, 0x7c, 0x03, 0xad, 0xe4, 0x8d, 0x92, 0xa0, 0x3c, 0xec, 0x77, 0xf5, 0x9f, 0x21, - 0x58, 0xdc, 0xf4, 0xbd, 0xde, 0xa9, 0xd8, 0x84, 0xfe, 0x53, 0x04, 0x0b, 0xf7, 0x4d, 0x7a, 0x3a, - 0xc0, 0x7c, 0x00, 0xda, 0x86, 0xe7, 0x39, 0x06, 0xa1, 0x3d, 0xcf, 0xa5, 0x04, 0xaf, 0x43, 0x81, - 0x06, 0x66, 0xd0, 0xa7, 0x12, 0xc5, 0x25, 0x25, 0x8a, 0x5d, 0xce, 0x62, 0x48, 0x56, 0xbc, 0x00, - 0xf9, 0x7d, 0xd3, 0xe9, 0x0b, 0x10, 0x45, 0x43, 0x34, 0xf4, 0x0f, 0x61, 0x76, 0x37, 0xf0, 0x6d, - 0x77, 0xef, 0x33, 0x9c, 0xbc, 0x34, 0x9c, 0xfc, 0x2f, 0x08, 0x2e, 0x6e, 0x12, 0xda, 0xf6, 0xed, - 0xd6, 0x29, 0xd1, 0x4d, 0x1d, 0xb4, 0x11, 0x65, 0x7b, 0x93, 0x6b, 0x68, 0xd6, 0x88, 0xd1, 0xf4, - 0xdf, 0x67, 0xa0, 0xae, 0x42, 0x3d, 0x8d, 0x7c, 0xbe, 0x11, 0xda, 0x44, 0x86, 0x0f, 0xba, 0x16, - 0x1f, 0x24, 0xed, 0x79, 0xb4, 0xda, 0x2e, 0x27, 0x84, 0xa6, 0x93, 0x84, 0x9d, 0x3d, 0x0c, 0x1b, - 0xaf, 0xc1, 0xe2, 0xbe, 0xed, 0x07, 0x7d, 0xd3, 0x69, 0xb6, 0x3b, 0xa6, 0xeb, 0x12, 0x87, 0x0b, - 0x82, 0xd6, 0x72, 0x8d, 0xec, 0x4a, 0xc9, 0x98, 0x97, 0x9d, 0x77, 0x45, 0x1f, 0x93, 0x06, 0xc5, - 0xb7, 0x61, 0xa9, 0xd7, 0x19, 0x50, 0xbb, 0x7d, 0x68, 0x50, 0x9e, 0x0f, 0x5a, 0x18, 0xf6, 0x46, - 0x47, 0x71, 0x4b, 0x7d, 0xc7, 0x33, 0xad, 0xd3, 0x61, 0x1c, 0x2f, 0x10, 0xd4, 0x0c, 0xe2, 0x10, - 0x93, 0x9e, 0x0e, 0x1d, 0xd3, 0x7f, 0x8d, 0xe0, 0xb5, 0x2d, 0x12, 0x44, 0x0e, 0x33, 0x30, 0x03, - 0x9b, 0x06, 0x76, 0x9b, 0x9e, 0x24, 0xac, 0x8f, 0x11, 0x5c, 0x4d, 0x85, 0x35, 0x8d, 0x6e, 0xbf, - 0x0d, 0x79, 0xf6, 0x45, 0x6b, 0x99, 0x46, 0x76, 0xa5, 0xbc, 0xb6, 0xac, 0x1c, 0xf3, 0x80, 0x0c, - 0xde, 0x67, 0x3e, 0x61, 0xc7, 0xb4, 0x7d, 0x43, 0xf0, 0xeb, 0x6d, 0x58, 0xda, 0xed, 0x78, 0x07, - 0x23, 0x44, 0xaf, 0x40, 0x3e, 0xfa, 0x00, 0x2e, 0x1c, 0x5a, 0x64, 0x9a, 0xdd, 0x5e, 0x87, 0x6a, - 0x42, 0xde, 0x62, 0xe3, 0x25, 0x63, 0x2e, 0x2e, 0x70, 0xca, 0xdc, 0xdf, 0x92, 0xb8, 0x98, 0x77, - 0x4c, 0x3f, 0xb0, 0x4f, 0xda, 0xf7, 0x5d, 0x83, 0xd9, 0xde, 0x10, 0x87, 0xe0, 0xcb, 0x71, 0xbe, - 0x4a, 0x48, 0xe5, 0x02, 0xfb, 0x33, 0x82, 0x05, 0x76, 0x0f, 0x9f, 0x25, 0xcc, 0x7f, 0x42, 0x30, - 0x7f, 0xdf, 0xa4, 0x67, 0x09, 0xf2, 0x5f, 0xa5, 0x13, 0x0d, 0x31, 0x9f, 0xa4, 0x73, 0x60, 0x8c, - 0x71, 0xd0, 0xc3, 0x6b, 0x63, 0x36, 0x86, 0x9a, 0xea, 0x7f, 0x1b, 0x79, 0xdb, 0x33, 0x86, 0xfc, - 0xef, 0x08, 0xae, 0x6c, 0x91, 0x20, 0x44, 0x7d, 0x2a, 0xbc, 0xf2, 0xa4, 0xda, 0xf2, 0x42, 0xdc, - 0x29, 0x4a, 0xf0, 0x27, 0xe2, 0xbb, 0xff, 0x88, 0x60, 0x91, 0xf9, 0xd5, 0xd3, 0xa1, 0x04, 0x93, - 0x84, 0x75, 0xbf, 0x43, 0xe2, 0xba, 0x89, 0x22, 0x9e, 0x46, 0x74, 0x0a, 0xc5, 0xcb, 0xa8, 0x14, - 0x8f, 0x81, 0x0b, 0x29, 0xdb, 0x9b, 0xb4, 0x96, 0x6d, 0x64, 0x19, 0xb8, 0x28, 0x4d, 0xff, 0x39, - 0x82, 0xa5, 0x61, 0xcc, 0xb9, 0x4b, 0xf6, 0xba, 0xc4, 0x0d, 0x5e, 0x5e, 0x9e, 0x49, 0x69, 0x64, - 0x14, 0xd1, 0xe2, 0x65, 0x28, 0x51, 0xb1, 0x4e, 0x18, 0x4e, 0x8e, 0x08, 0xfa, 0x27, 0x08, 0x2e, - 0x1c, 0x82, 0x33, 0x8d, 0xb0, 0x6a, 0x30, 0x63, 0xbb, 0x16, 0x79, 0x16, 0xa2, 0x19, 0x36, 0x59, - 0x4f, 0xab, 0x6f, 0x3b, 0x56, 0x08, 0x63, 0xd8, 0xc4, 0xcb, 0xa0, 0x11, 0xd7, 0x6c, 0x39, 0xa4, - 0xc9, 0x79, 0xf9, 0xa1, 0x16, 0x8d, 0xb2, 0xa0, 0x6d, 0x33, 0x92, 0xfe, 0x0b, 0x04, 0xf3, 0xec, - 0x4c, 0x25, 0x46, 0xfa, 0x6a, 0x65, 0xd6, 0x80, 0x72, 0xe4, 0xd0, 0x24, 0xdc, 0x28, 0x49, 0x7f, - 0x0a, 0x0b, 0x71, 0x38, 0xd3, 0xc8, 0xec, 0x35, 0x80, 0xf0, 0x44, 0x84, 0x6e, 0x65, 0x8d, 0x08, - 0x45, 0xff, 0x2f, 0x02, 0x2c, 0xc2, 0x0b, 0x2e, 0x8c, 0x93, 0xb4, 0xbf, 0x2b, 0x00, 0x4f, 0x6c, - 0xe2, 0x58, 0x51, 0x0f, 0x56, 0xe2, 0x14, 0xde, 0xbd, 0x09, 0x1a, 0x79, 0x16, 0xf8, 0x66, 0xb3, - 0x67, 0xfa, 0x66, 0x57, 0x3c, 0x2e, 0x26, 0x72, 0x36, 0x65, 0x3e, 0x6c, 0x87, 0x8f, 0xd2, 0xff, - 0xc1, 0x02, 0x13, 0xa9, 0x94, 0xa7, 0x7d, 0xc7, 0x57, 0x00, 0xb8, 0xd2, 0x8a, 0xee, 0xbc, 0xe8, - 0xe6, 0x14, 0xee, 0xce, 0x3f, 0x41, 0x50, 0xe5, 0x5b, 0x10, 0xfb, 0xe9, 0xb1, 0x69, 0x13, 0x63, - 0x50, 0x62, 0xcc, 0x18, 0x13, 0xfa, 0x1a, 0x14, 0xa4, 0x60, 0xb3, 0x93, 0x0a, 0x56, 0x0e, 0x38, - 0x62, 0x1b, 0xfa, 0x1f, 0x10, 0x2c, 0x26, 0x44, 0x3e, 0x8d, 0x46, 0x3f, 0x02, 0x2c, 0x76, 0x68, - 0x8d, 0xb6, 0x3d, 0xbc, 0x7a, 0x12, 0x2f, 0x62, 0xd9, 0x48, 0x0a, 0xc9, 0x38, 0x6f, 0x27, 0x28, - 0x54, 0xff, 0x17, 0x82, 0xcb, 0x5b, 0x24, 0xe0, 0xac, 0x1b, 0xcc, 0x77, 0xec, 0xf8, 0xde, 0x9e, - 0x4f, 0x28, 0x3d, 0xbb, 0xfa, 0xf1, 0x1b, 0x11, 0xab, 0xa8, 0xb6, 0x34, 0x8d, 0xfc, 0x97, 0x41, - 0xe3, 0x6b, 0x10, 0xab, 0xe9, 0x7b, 0x07, 0x54, 0xea, 0x51, 0x59, 0xd2, 0x0c, 0xef, 0x80, 0x2b, - 0x44, 0xe0, 0x05, 0xa6, 0x23, 0x18, 0xe4, 0xc5, 0xc0, 0x29, 0xac, 0x9b, 0xdb, 0xe0, 0x10, 0x18, - 0x9b, 0x9c, 0x9c, 0x5d, 0x19, 0x7f, 0x84, 0x60, 0x31, 0xb1, 0x95, 0x69, 0x64, 0x7b, 0x47, 0x44, - 0x52, 0x62, 0x33, 0xb3, 0x6b, 0x57, 0x95, 0x63, 0x22, 0x8b, 0x09, 0x6e, 0xfd, 0x53, 0x04, 0x55, - 0xf6, 0xda, 0x3a, 0xe3, 0x0e, 0xed, 0x7f, 0x08, 0x2a, 0xdb, 0x2e, 0x25, 0x7e, 0x70, 0xfa, 0x83, - 0x69, 0x7c, 0x1b, 0x8a, 0xbe, 0x77, 0xd0, 0xb4, 0xcc, 0xc0, 0x94, 0x57, 0xd1, 0x45, 0x25, 0xbc, - 0x0d, 0xc7, 0x6b, 0x19, 0x33, 0xbe, 0x77, 0xb0, 0x69, 0x06, 0x26, 0xbe, 0x04, 0xa5, 0x8e, 0x49, - 0x3b, 0xcd, 0xa7, 0x64, 0x40, 0x6b, 0x85, 0x46, 0x76, 0xa5, 0x62, 0x14, 0x19, 0xe1, 0x01, 0x19, - 0x50, 0xa6, 0x4c, 0xb3, 0xc3, 0xfd, 0x4f, 0xa3, 0x45, 0x57, 0xa1, 0xec, 0x7b, 0x07, 0xdb, 0x9b, - 0xcd, 0x16, 0xd9, 0xb3, 0x5d, 0x69, 0xa0, 0xc0, 0x49, 0x1b, 0x8c, 0xc2, 0x50, 0x08, 0x06, 0xe2, - 0x5a, 0xd2, 0x3c, 0x8b, 0x9c, 0xf0, 0x1d, 0xd7, 0xd2, 0xf7, 0xa1, 0xba, 0xe3, 0x98, 0x6d, 0xd2, - 0xf1, 0x1c, 0x8b, 0xf8, 0xdc, 0xdb, 0xe3, 0x2a, 0x64, 0x03, 0x73, 0x4f, 0x5e, 0x27, 0xec, 0x13, - 0x7f, 0x15, 0x72, 0xc1, 0xa0, 0x37, 0x54, 0xd4, 0x2f, 0x2a, 0xfd, 0x6e, 0x64, 0x9a, 0x47, 0x83, - 0x1e, 0x31, 0xf8, 0x08, 0xbc, 0x04, 0x05, 0x9e, 0xd8, 0x15, 0x17, 0x8d, 0x66, 0xc8, 0x96, 0xfe, - 0x38, 0xb6, 0xee, 0x96, 0xef, 0xf5, 0x7b, 0x78, 0x1b, 0xb4, 0xde, 0x88, 0xc6, 0x84, 0x90, 0xee, - 0xe5, 0x93, 0xa0, 0x8d, 0xd8, 0x50, 0xfd, 0x3f, 0x19, 0xa8, 0xec, 0x12, 0xd3, 0x6f, 0x77, 0xce, - 0xc2, 0x43, 0x93, 0x49, 0xdc, 0xa2, 0x8e, 0xb4, 0x11, 0xf6, 0x89, 0x6f, 0xc2, 0xf9, 0xc8, 0x86, - 0x9a, 0x7b, 0x4c, 0x40, 0xb5, 0x02, 0x2f, 0x8e, 0x54, 0x7b, 0x49, 0xc1, 0xbd, 0x0d, 0x45, 0x8b, - 0x3a, 0x4d, 0x7e, 0x44, 0x33, 0xfc, 0x88, 0xd4, 0xfb, 0xdb, 0xa4, 0x0e, 0x3f, 0x9a, 0x19, 0x4b, - 0x7c, 0xe0, 0x7b, 0x50, 0xa1, 0x5c, 0x4a, 0xc3, 0x30, 0xab, 0x38, 0x69, 0x34, 0xa0, 0x89, 0x71, - 0x32, 0xce, 0x7a, 0x00, 0xb9, 0xfb, 0x76, 0xc0, 0xf7, 0xc1, 0x02, 0x4f, 0xc4, 0x03, 0x4f, 0xf6, - 0x89, 0x2f, 0x46, 0x0c, 0x27, 0xc3, 0x35, 0x20, 0xb4, 0x0e, 0x5e, 0xf4, 0xf1, 0x7c, 0xa9, 0x1a, - 0x19, 0x43, 0xb6, 0xf4, 0xef, 0x8d, 0x8e, 0x8e, 0xf6, 0x9d, 0x80, 0xbe, 0x9c, 0x59, 0x60, 0xc8, - 0x75, 0x6c, 0xf9, 0x4a, 0xd5, 0x0c, 0xfe, 0xad, 0xff, 0x08, 0x81, 0x76, 0xcf, 0xe9, 0xd3, 0x57, - 0xa1, 0x14, 0xaa, 0x24, 0x5f, 0x56, 0x9d, 0xe4, 0xfb, 0x67, 0x06, 0x16, 0x77, 0x88, 0x4f, 0x6d, - 0x1a, 0x10, 0x37, 0x90, 0x91, 0xff, 0xb6, 0xfb, 0xc4, 0x8b, 0x3f, 0xb1, 0x50, 0xe2, 0x89, 0xf5, - 0xd9, 0x3c, 0x38, 0x98, 0x3b, 0xf0, 0x7a, 0xc4, 0x6d, 0x06, 0xb6, 0x74, 0x76, 0x39, 0xa3, 0xc8, - 0x08, 0x8f, 0xec, 0x2e, 0x61, 0xce, 0x84, 0x12, 0xd3, 0x21, 0x96, 0xe8, 0xce, 0xf3, 0x6e, 0x10, - 0x24, 0xce, 0xb0, 0x0c, 0xda, 0x13, 0x26, 0xc1, 0x21, 0x47, 0x81, 0x73, 0x94, 0x25, 0x8d, 0xb3, - 0x5c, 0x84, 0xa2, 0xdb, 0xef, 0x8a, 0x68, 0x60, 0x46, 0x84, 0x9d, 0x6e, 0xbf, 0xcb, 0x43, 0x85, - 0x8b, 0x50, 0xec, 0x92, 0x6e, 0x93, 0xda, 0xcf, 0x49, 0xad, 0x28, 0xba, 0xba, 0xa4, 0xbb, 0x6b, - 0x3f, 0x27, 0xc3, 0xb4, 0x02, 0xa9, 0x95, 0xb8, 0x02, 0xab, 0x55, 0x50, 0xca, 0x2a, 0x76, 0x1d, - 0xfe, 0x4a, 0x24, 0xa9, 0x95, 0x02, 0x7d, 0xf9, 0x73, 0x5e, 0x02, 0x79, 0xb0, 0x89, 0x63, 0xfe, - 0x12, 0x24, 0x8c, 0x3c, 0x25, 0x75, 0xfe, 0x5b, 0x04, 0x8d, 0x74, 0x54, 0xd3, 0xf8, 0xfb, 0x6f, - 0x41, 0xde, 0x76, 0x9f, 0x78, 0xc3, 0x20, 0xf8, 0x86, 0xda, 0x3d, 0x2a, 0xd7, 0x15, 0x03, 0xf5, - 0x7f, 0x23, 0xa8, 0xbe, 0xd7, 0x27, 0xfe, 0xe0, 0xf3, 0x56, 0xbd, 0xe8, 0xf1, 0xe7, 0xe2, 0xc7, - 0x1f, 0x55, 0x9a, 0x7c, 0x5c, 0x69, 0xe2, 0x71, 0x44, 0x61, 0xcc, 0x23, 0x67, 0x26, 0xf6, 0xc8, - 0xd1, 0x5f, 0x20, 0xa8, 0x6f, 0x91, 0x20, 0xb9, 0xd5, 0x93, 0x53, 0x8a, 0x8f, 0x11, 0x5c, 0x52, - 0x02, 0x9a, 0x46, 0x1f, 0xbe, 0x1e, 0xd7, 0x07, 0xf5, 0x75, 0x79, 0x68, 0x49, 0xa9, 0x0a, 0x8b, - 0x30, 0x6f, 0x90, 0x3d, 0xa6, 0x29, 0xfe, 0x3b, 0xb6, 0xfb, 0x54, 0x8a, 0x86, 0xc5, 0x26, 0x0b, - 0x71, 0xba, 0x44, 0xf8, 0x15, 0x98, 0x31, 0x2d, 0x8b, 0x3d, 0x2b, 0xc6, 0x8a, 0xed, 0xdb, 0x82, - 0xc7, 0x18, 0x32, 0x47, 0x76, 0x96, 0x99, 0x78, 0x67, 0x37, 0xbe, 0x09, 0x73, 0x89, 0xa0, 0x02, - 0x17, 0x21, 0xf7, 0xd0, 0x73, 0x49, 0xf5, 0x1c, 0xae, 0x82, 0xb6, 0x61, 0xbb, 0xa6, 0x3f, 0x78, - 0x9f, 0xb4, 0x03, 0xcf, 0xaf, 0x5a, 0x78, 0x0e, 0xca, 0xf7, 0x1c, 0xcf, 0x0c, 0x24, 0x81, 0xac, - 0xfd, 0x72, 0x11, 0x2a, 0xef, 0xf2, 0x65, 0x76, 0x89, 0xbf, 0x6f, 0xb7, 0x09, 0x6e, 0x42, 0x35, - 0xf9, 0xdb, 0x03, 0x7e, 0x43, 0x29, 0xb0, 0x94, 0xbf, 0x23, 0xea, 0xe3, 0x80, 0xeb, 0xe7, 0xf0, - 0x87, 0x30, 0x1b, 0xff, 0x21, 0x01, 0xab, 0xed, 0x53, 0xf9, 0xd7, 0xc2, 0x51, 0x93, 0x37, 0xa1, - 0x12, 0xfb, 0xbf, 0x00, 0x5f, 0x57, 0xce, 0xad, 0xfa, 0x07, 0xa1, 0xbe, 0xac, 0x64, 0x8d, 0xfe, - 0x22, 0x20, 0xd0, 0xc7, 0x8b, 0xb4, 0x29, 0xe8, 0x95, 0x95, 0xdc, 0xa3, 0xd0, 0x9b, 0x70, 0xfe, - 0x50, 0xcd, 0x15, 0xbf, 0xa9, 0x9c, 0x3f, 0xad, 0x36, 0x7b, 0xd4, 0x12, 0x07, 0x80, 0x0f, 0x57, - 0xe1, 0xf1, 0x2d, 0xf5, 0x09, 0xa4, 0xfd, 0x64, 0x50, 0x5f, 0x9d, 0x98, 0x3f, 0x14, 0xdc, 0x8f, - 0x11, 0x5c, 0x48, 0x29, 0x94, 0xe2, 0x75, 0xe5, 0x74, 0xe3, 0xab, 0xbd, 0xf5, 0xdb, 0xc7, 0x1b, - 0x14, 0x02, 0x71, 0x61, 0x2e, 0x51, 0xba, 0xc4, 0x37, 0x95, 0x53, 0xa9, 0xab, 0xa8, 0xf5, 0x37, - 0x26, 0x63, 0x0e, 0xd7, 0x7b, 0x0c, 0x73, 0x89, 0x72, 0x65, 0xca, 0x7a, 0xea, 0xa2, 0xe6, 0x51, - 0x07, 0xfa, 0x01, 0x54, 0x62, 0x75, 0xc5, 0x14, 0x8d, 0x57, 0xd5, 0x1e, 0x8f, 0x9a, 0xfa, 0x31, - 0x68, 0xd1, 0xf2, 0x1f, 0x5e, 0x49, 0xb3, 0xa5, 0x43, 0x13, 0x1f, 0xc7, 0x94, 0x46, 0x95, 0x83, - 0x31, 0xa6, 0x74, 0xa8, 0x20, 0x32, 0xb9, 0x29, 0x45, 0xe6, 0x1f, 0x6b, 0x4a, 0xc7, 0x5e, 0xe2, - 0x23, 0x04, 0x4b, 0xea, 0xea, 0x11, 0x5e, 0x4b, 0xd3, 0xcd, 0xf4, 0x3a, 0x59, 0x7d, 0xfd, 0x58, - 0x63, 0x42, 0x29, 0x3e, 0x85, 0xd9, 0x78, 0xfd, 0x25, 0x45, 0x8a, 0xca, 0xb2, 0x52, 0xfd, 0xe6, - 0x44, 0xbc, 0xe1, 0x62, 0xdf, 0x85, 0x72, 0x24, 0x37, 0x8e, 0x5f, 0x1f, 0xa3, 0xc7, 0xd1, 0xd4, - 0xcb, 0x51, 0x92, 0xec, 0x40, 0x25, 0x96, 0x0f, 0x4d, 0xd3, 0x61, 0x45, 0x9a, 0xba, 0x7e, 0x63, - 0x12, 0xd6, 0x70, 0x03, 0x1d, 0xa8, 0xc4, 0xb2, 0x53, 0x29, 0x2b, 0xa9, 0x92, 0x71, 0x29, 0x2b, - 0x29, 0x93, 0x5d, 0xfa, 0x39, 0xfc, 0xc3, 0x48, 0x22, 0x2c, 0x96, 0x6c, 0xc4, 0x5f, 0x1e, 0x3b, - 0x8f, 0x2a, 0xd7, 0x5a, 0x5f, 0x3b, 0xce, 0x90, 0x10, 0xc2, 0x7b, 0x50, 0x0a, 0x93, 0x60, 0xf8, - 0x5a, 0xaa, 0x5b, 0x38, 0xce, 0x49, 0xed, 0x42, 0x41, 0x24, 0x64, 0xb0, 0x9e, 0x92, 0x59, 0x8e, - 0x64, 0xab, 0xea, 0x5f, 0x18, 0xcb, 0x13, 0xe2, 0x34, 0xa0, 0x20, 0x5e, 0xb3, 0x29, 0x93, 0xc6, - 0xb2, 0x14, 0xf5, 0xf1, 0x3c, 0xfc, 0x39, 0xac, 0x9f, 0xc3, 0xdb, 0x90, 0xe7, 0xcf, 0x58, 0xac, - 0x76, 0x45, 0xd1, 0x27, 0xee, 0x51, 0x7b, 0xfe, 0x09, 0x82, 0x5a, 0xda, 0x3b, 0x05, 0xa7, 0xde, - 0x42, 0xe3, 0x1e, 0x5b, 0xf5, 0x3b, 0xc7, 0x1c, 0x15, 0x8a, 0xea, 0x39, 0xcc, 0x2b, 0xa2, 0x63, - 0xbc, 0x9a, 0x36, 0x5f, 0x4a, 0x60, 0x5f, 0x7f, 0x6b, 0xf2, 0x01, 0xe1, 0xda, 0x04, 0xb4, 0x68, - 0xc0, 0x9b, 0x72, 0x1d, 0x28, 0x62, 0xe5, 0xfa, 0xf5, 0x09, 0x38, 0x87, 0xcb, 0xac, 0xf5, 0x41, - 0xdb, 0xf1, 0xbd, 0x67, 0x83, 0x61, 0x40, 0xfa, 0xf9, 0x2c, 0xbb, 0x71, 0xe7, 0xfb, 0xeb, 0x7b, - 0x76, 0xd0, 0xe9, 0xb7, 0xd8, 0xf9, 0xaf, 0x0a, 0xde, 0x37, 0x6d, 0x4f, 0x7e, 0xad, 0xda, 0x6e, - 0x40, 0x7c, 0xd7, 0x74, 0x56, 0xf9, 0x5c, 0x92, 0xda, 0x6b, 0xb5, 0x0a, 0xbc, 0xbd, 0xfe, 0xff, - 0x00, 0x00, 0x00, 0xff, 0xff, 0x83, 0x86, 0xb3, 0x8f, 0x6e, 0x2c, 0x00, 0x00, + // 2184 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xd4, 0x1a, 0x5d, 0x6f, 0x1b, 0x59, + 0xb5, 0xd7, 0x5f, 0xb1, 0x8f, 0xed, 0xc4, 0x7b, 0xf3, 0xe5, 0xb8, 0xed, 0xd6, 0x19, 0x28, 0x9b, + 0xb6, 0xbb, 0xcd, 0x92, 0xb4, 0x2c, 0x08, 0x81, 0x20, 0x0d, 0x4d, 0xa3, 0xee, 0x56, 0xd9, 0x71, + 0x59, 0xb1, 0xac, 0x2a, 0x6b, 0xec, 0xb9, 0x8d, 0x47, 0x1d, 0xcf, 0x98, 0xb9, 0xe3, 0xa4, 0xee, + 0x13, 0x62, 0x11, 0x12, 0x02, 0xba, 0x48, 0x20, 0x24, 0x78, 0xe0, 0x01, 0x69, 0x1f, 0x78, 0x02, + 0x04, 0x12, 0x12, 0xcf, 0xfb, 0x80, 0xc4, 0x0b, 0xe2, 0x3f, 0xf0, 0x06, 0x3f, 0x01, 0x09, 0xdd, + 0x0f, 0x8f, 0x67, 0x26, 0x77, 0x1c, 0xa7, 0xde, 0x6e, 0x92, 0xb7, 0x99, 0x33, 0xe7, 0xdc, 0x7b, + 0xbe, 0xef, 0xb9, 0xe7, 0x0c, 0x94, 0xba, 0x96, 0x7d, 0xd0, 0xa7, 0x37, 0x7b, 0x9e, 0xeb, 0xbb, + 0x78, 0x3e, 0xfc, 0x76, 0x53, 0xbc, 0xd4, 0x4a, 0x6d, 0xb7, 0xdb, 0x75, 0x1d, 0x01, 0xac, 0x95, + 0x68, 0xbb, 0x43, 0xba, 0x86, 0x78, 0xd3, 0x3e, 0x41, 0xb0, 0x7c, 0xc7, 0x23, 0x86, 0x4f, 0xee, + 0xb8, 0xb6, 0x4d, 0xda, 0xbe, 0xe5, 0x3a, 0x3a, 0xf9, 0x5e, 0x9f, 0x50, 0x1f, 0xbf, 0x09, 0x99, + 0x96, 0x41, 0x49, 0x15, 0xd5, 0xd1, 0x5a, 0x71, 0xe3, 0xd2, 0xcd, 0xc8, 0xda, 0x72, 0xcd, 0x77, + 0xe8, 0xfe, 0x96, 0x41, 0x89, 0xce, 0x31, 0xf1, 0x32, 0xcc, 0x98, 0xad, 0xa6, 0x63, 0x74, 0x49, + 0x35, 0x55, 0x47, 0x6b, 0x05, 0x3d, 0x67, 0xb6, 0x1e, 0x18, 0x5d, 0x82, 0x5f, 0x83, 0xb9, 0x76, + 0xb0, 0xbe, 0x40, 0x48, 0x73, 0x84, 0xd9, 0x11, 0x98, 0x23, 0x2e, 0x41, 0x4e, 0xf0, 0x57, 0xcd, + 0xd4, 0xd1, 0x5a, 0x49, 0x97, 0x6f, 0xf8, 0x32, 0x00, 0xed, 0x18, 0x9e, 0x49, 0x9b, 0x4e, 0xbf, + 0x5b, 0xcd, 0xd6, 0xd1, 0x5a, 0x56, 0x2f, 0x08, 0xc8, 0x83, 0x7e, 0x57, 0xfb, 0x09, 0x82, 0xc5, + 0x6d, 0xcf, 0xed, 0x9d, 0x09, 0x21, 0xb4, 0xdf, 0x23, 0x58, 0xb8, 0x67, 0xd0, 0xb3, 0xa1, 0xd1, + 0xcb, 0x00, 0xbe, 0xd5, 0x25, 0x4d, 0xea, 0x1b, 0xdd, 0x1e, 0xd7, 0x6a, 0x46, 0x2f, 0x30, 0x48, + 0x83, 0x01, 0xb4, 0xf7, 0xa1, 0xb4, 0xe5, 0xba, 0xb6, 0x4e, 0x68, 0xcf, 0x75, 0x28, 0xc1, 0x9b, + 0x90, 0xa3, 0xbe, 0xe1, 0xf7, 0xa9, 0x64, 0xf2, 0xa2, 0x92, 0xc9, 0x06, 0x47, 0xd1, 0x25, 0x2a, + 0x5e, 0x80, 0xec, 0x81, 0x61, 0xf7, 0x05, 0x8f, 0x79, 0x5d, 0xbc, 0x68, 0x1f, 0xc0, 0x6c, 0xc3, + 0xf7, 0x2c, 0x67, 0xff, 0x53, 0x5c, 0xbc, 0x30, 0x5c, 0xfc, 0x5f, 0x08, 0x56, 0xb6, 0x09, 0x6d, + 0x7b, 0x56, 0xeb, 0x8c, 0xb8, 0xae, 0x06, 0xa5, 0x11, 0x64, 0x77, 0x9b, 0xab, 0x3a, 0xad, 0x47, + 0x60, 0x31, 0x63, 0x64, 0xe3, 0xc6, 0xf8, 0x6d, 0x0a, 0x6a, 0x2a, 0xa1, 0xa6, 0x51, 0xdf, 0xd7, + 0x82, 0x88, 0x4a, 0x71, 0xa2, 0xab, 0x51, 0x22, 0x99, 0x0d, 0x46, 0xbb, 0x35, 0x38, 0x20, 0x08, + 0xbc, 0xb8, 0x54, 0x69, 0x85, 0x54, 0x1b, 0xb0, 0x78, 0x60, 0x79, 0x7e, 0xdf, 0xb0, 0x9b, 0xed, + 0x8e, 0xe1, 0x38, 0xc4, 0xe6, 0x7a, 0xa2, 0xd5, 0x4c, 0x3d, 0xbd, 0x56, 0xd0, 0xe7, 0xe5, 0xc7, + 0x3b, 0xe2, 0x1b, 0x53, 0x16, 0xc5, 0xb7, 0x60, 0xa9, 0xd7, 0x19, 0x50, 0xab, 0x7d, 0x84, 0x28, + 0xcb, 0x89, 0x16, 0x86, 0x5f, 0xc3, 0x54, 0x3c, 0xce, 0xdf, 0x76, 0x0d, 0xf3, 0x6c, 0xc4, 0xf9, + 0x73, 0x04, 0x55, 0x9d, 0xd8, 0xc4, 0xa0, 0x67, 0xc3, 0x05, 0xb5, 0x5f, 0x22, 0x78, 0x75, 0x87, + 0xf8, 0x21, 0x63, 0xfa, 0x86, 0x6f, 0x51, 0xdf, 0x6a, 0xd3, 0xd3, 0x64, 0xeb, 0x23, 0x04, 0x57, + 0x12, 0xd9, 0x9a, 0xc6, 0xb7, 0xdf, 0x82, 0x2c, 0x7b, 0xa2, 0xd5, 0x54, 0x3d, 0xbd, 0x56, 0xdc, + 0x58, 0x55, 0xd2, 0xdc, 0x27, 0x83, 0xf7, 0x58, 0xca, 0xd8, 0x33, 0x2c, 0x4f, 0x17, 0xf8, 0xda, + 0x0f, 0x10, 0x2c, 0x35, 0x3a, 0xee, 0xe1, 0x88, 0xa5, 0x97, 0xa1, 0xa0, 0x68, 0xb4, 0xa7, 0xe3, + 0xd1, 0x3e, 0x80, 0xe5, 0x23, 0x3c, 0x4c, 0xa3, 0x8d, 0x6b, 0x50, 0x89, 0xd9, 0x43, 0x28, 0xa6, + 0xa0, 0xcf, 0x45, 0x0d, 0x42, 0xb5, 0x3f, 0x23, 0x58, 0x12, 0xc7, 0xfe, 0x9e, 0xe1, 0xf9, 0xd6, + 0x69, 0xa7, 0xce, 0xab, 0x30, 0xdb, 0x1b, 0xf2, 0x21, 0xf0, 0x32, 0x1c, 0xaf, 0x1c, 0x40, 0xb9, + 0x1f, 0xfd, 0x09, 0xc1, 0x02, 0x3b, 0xe5, 0xcf, 0x13, 0xcf, 0x7f, 0x44, 0x30, 0x7f, 0xcf, 0xa0, + 0xe7, 0x89, 0xe5, 0xbf, 0xc8, 0x24, 0x1b, 0xf0, 0x7c, 0x9a, 0xc9, 0x83, 0x21, 0x46, 0x99, 0x1e, + 0x1e, 0x2b, 0xb3, 0x11, 0xae, 0xa9, 0xf6, 0xd7, 0x51, 0x36, 0x3e, 0x67, 0x9c, 0xff, 0x0d, 0xc1, + 0xe5, 0x1d, 0xe2, 0x07, 0x5c, 0x9f, 0x89, 0xac, 0x3d, 0xa9, 0xb7, 0x3c, 0x17, 0x67, 0x8e, 0x92, + 0xf9, 0x53, 0xc9, 0xed, 0x7f, 0x40, 0xb0, 0xc8, 0xf2, 0xea, 0xd9, 0x70, 0x82, 0x09, 0xaa, 0x42, + 0xed, 0x37, 0xf2, 0x34, 0x0a, 0x73, 0x3c, 0x8d, 0xea, 0x14, 0x8e, 0x97, 0x52, 0x39, 0x1e, 0x63, + 0x2e, 0x80, 0xec, 0x6e, 0xd3, 0x6a, 0xba, 0x9e, 0x66, 0xcc, 0x85, 0x61, 0xda, 0x4f, 0x11, 0x2c, + 0x0d, 0x6b, 0xd2, 0x06, 0xd9, 0xef, 0x12, 0xc7, 0x7f, 0x71, 0x7d, 0xc6, 0xb5, 0x91, 0x52, 0x54, + 0x93, 0x97, 0xa0, 0x40, 0xc5, 0x3e, 0x41, 0xb9, 0x39, 0x02, 0x68, 0x1f, 0x23, 0x58, 0x3e, 0xc2, + 0xce, 0x34, 0xca, 0xaa, 0xc2, 0x8c, 0xe5, 0x98, 0xe4, 0x69, 0xc0, 0xcd, 0xf0, 0x95, 0x7d, 0x69, + 0xf5, 0x2d, 0xdb, 0x0c, 0xd8, 0x18, 0xbe, 0xe2, 0x55, 0x28, 0x11, 0xc7, 0x68, 0xd9, 0xa4, 0xc9, + 0x71, 0xb9, 0x51, 0xf3, 0x7a, 0x51, 0xc0, 0x76, 0x19, 0x48, 0xfb, 0x19, 0x82, 0x79, 0x66, 0x53, + 0xc9, 0x23, 0x7d, 0xb9, 0x3a, 0xab, 0x43, 0x31, 0x64, 0x34, 0xc9, 0x6e, 0x18, 0xa4, 0x3d, 0x81, + 0x85, 0x28, 0x3b, 0xd3, 0xe8, 0xec, 0x55, 0x80, 0xc0, 0x22, 0xc2, 0xb7, 0xd2, 0x7a, 0x08, 0xa2, + 0xfd, 0x17, 0x01, 0x16, 0xe5, 0x05, 0x57, 0xc6, 0x29, 0x5f, 0x7f, 0x1f, 0x5b, 0xc4, 0x36, 0xc3, + 0x19, 0xac, 0xc0, 0x21, 0xfc, 0xf3, 0x36, 0x94, 0xc8, 0x53, 0xdf, 0x33, 0x9a, 0x3d, 0xc3, 0x33, + 0xba, 0xe2, 0xf2, 0x31, 0x51, 0xb2, 0x29, 0x72, 0xb2, 0x3d, 0x4e, 0xa5, 0xfd, 0x9d, 0x15, 0x26, + 0xd2, 0x29, 0xcf, 0xba, 0xc4, 0x97, 0x01, 0xb8, 0xd3, 0x8a, 0xcf, 0x59, 0xf1, 0x99, 0x43, 0x78, + 0x3a, 0xff, 0x18, 0x41, 0x85, 0x8b, 0x20, 0xe4, 0xe9, 0xb1, 0x65, 0x63, 0x34, 0x28, 0x46, 0x33, + 0x26, 0x84, 0xbe, 0x02, 0x39, 0xa9, 0xd8, 0xf4, 0xa4, 0x8a, 0x95, 0x04, 0xc7, 0x88, 0xa1, 0xfd, + 0x0e, 0xc1, 0x62, 0x4c, 0xe5, 0xd3, 0x78, 0xf4, 0x43, 0xc0, 0x42, 0x42, 0x73, 0x24, 0xf6, 0xf0, + 0xe8, 0x89, 0xdd, 0x98, 0xe5, 0x4b, 0x5c, 0x49, 0xfa, 0x2b, 0x56, 0x0c, 0x42, 0xb5, 0x7f, 0x22, + 0xb8, 0xb4, 0x43, 0x7c, 0x8e, 0xba, 0xc5, 0x72, 0xc7, 0x9e, 0xe7, 0xee, 0x7b, 0x84, 0xd2, 0xf3, + 0xeb, 0x1f, 0xbf, 0x12, 0xb5, 0x8a, 0x4a, 0xa4, 0x69, 0xf4, 0xbf, 0x0a, 0x25, 0xbe, 0x07, 0x31, + 0x9b, 0x9e, 0x7b, 0x48, 0xa5, 0x1f, 0x15, 0x25, 0x4c, 0x77, 0x0f, 0xb9, 0x43, 0xf8, 0xae, 0x6f, + 0xd8, 0x02, 0x41, 0x1e, 0x0c, 0x1c, 0xc2, 0x3e, 0xf3, 0x18, 0x1c, 0x32, 0xc6, 0x16, 0x27, 0xe7, + 0x57, 0xc7, 0x1f, 0x22, 0x58, 0x8c, 0x89, 0x32, 0x8d, 0x6e, 0x6f, 0x8b, 0x4a, 0x4a, 0x08, 0x33, + 0xbb, 0x71, 0x45, 0x49, 0x13, 0xda, 0x4c, 0x60, 0x6b, 0x9f, 0x20, 0xa8, 0xb0, 0xdb, 0xd6, 0x39, + 0x4f, 0x68, 0xff, 0x43, 0x50, 0xde, 0x75, 0x28, 0xf1, 0xfc, 0xb3, 0x5f, 0x4c, 0xe3, 0x5b, 0x90, + 0xf7, 0xdc, 0xc3, 0xa6, 0x69, 0xf8, 0x86, 0x3c, 0x8a, 0x56, 0x94, 0xec, 0x6d, 0xd9, 0x6e, 0x4b, + 0x9f, 0xf1, 0xdc, 0xc3, 0x6d, 0xc3, 0x37, 0xf0, 0x45, 0x28, 0x74, 0x0c, 0xda, 0x69, 0x3e, 0x21, + 0x03, 0x5a, 0xcd, 0xd5, 0xd3, 0x6b, 0x65, 0x3d, 0xcf, 0x00, 0xf7, 0xc9, 0x80, 0x32, 0x67, 0x9a, + 0x1d, 0xca, 0x3f, 0x8d, 0x17, 0x5d, 0x81, 0xa2, 0xe7, 0x1e, 0xee, 0x6e, 0x37, 0x5b, 0x64, 0xdf, + 0x72, 0x64, 0x80, 0x02, 0x07, 0x6d, 0x31, 0x08, 0xe3, 0x42, 0x20, 0x10, 0xc7, 0x94, 0xe1, 0x99, + 0xe7, 0x80, 0x6f, 0x39, 0xa6, 0x76, 0x00, 0x95, 0x3d, 0xdb, 0x68, 0x93, 0x8e, 0x6b, 0x9b, 0xc4, + 0xe3, 0xd9, 0x1e, 0x57, 0x20, 0xed, 0x1b, 0xfb, 0xf2, 0x38, 0x61, 0x8f, 0xf8, 0xcb, 0x90, 0xf1, + 0x07, 0xbd, 0xa1, 0xa3, 0x7e, 0x5e, 0x99, 0x77, 0x43, 0xcb, 0x3c, 0x1c, 0xf4, 0x88, 0xce, 0x29, + 0xf0, 0x12, 0xe4, 0x78, 0x5f, 0x58, 0x1c, 0x34, 0x25, 0x5d, 0xbe, 0x69, 0x8f, 0x22, 0xfb, 0xee, + 0x78, 0x6e, 0xbf, 0x87, 0x77, 0xa1, 0xd4, 0x1b, 0xc1, 0x98, 0x12, 0x92, 0xb3, 0x7c, 0x9c, 0x69, + 0x3d, 0x42, 0xaa, 0xfd, 0x27, 0x05, 0xe5, 0x06, 0x31, 0xbc, 0x76, 0xe7, 0x3c, 0x5c, 0x34, 0x99, + 0xc6, 0x4d, 0x6a, 0xcb, 0x18, 0x61, 0x8f, 0xf8, 0x06, 0xbc, 0x12, 0x12, 0xa8, 0xb9, 0xcf, 0x14, + 0x54, 0xcd, 0xf1, 0xd1, 0x4b, 0xa5, 0x17, 0x57, 0xdc, 0x5b, 0x90, 0x37, 0xa9, 0xdd, 0xe4, 0x26, + 0x9a, 0xe1, 0x26, 0x52, 0xcb, 0xb7, 0x4d, 0x6d, 0x6e, 0x9a, 0x19, 0x53, 0x3c, 0xe0, 0xbb, 0x50, + 0xa6, 0x5c, 0x4b, 0xc3, 0x32, 0x2b, 0x3f, 0x69, 0x35, 0x50, 0x12, 0x74, 0xb2, 0xce, 0xba, 0x0f, + 0x99, 0x7b, 0x96, 0xcf, 0xe5, 0x60, 0x85, 0x27, 0xe2, 0x85, 0x27, 0x7b, 0xc4, 0x2b, 0xa1, 0xc0, + 0x49, 0x71, 0x0f, 0x08, 0xa2, 0x83, 0x8f, 0x94, 0x5c, 0x4f, 0xba, 0x46, 0x4a, 0x97, 0x6f, 0xda, + 0x77, 0x46, 0xa6, 0xa3, 0x7d, 0xdb, 0xa7, 0x2f, 0x16, 0x16, 0x18, 0x32, 0x1d, 0x4b, 0xde, 0x52, + 0x4b, 0x3a, 0x7f, 0xd6, 0x7e, 0x88, 0xa0, 0x74, 0xd7, 0xee, 0xd3, 0x97, 0xe1, 0x14, 0xaa, 0x26, + 0x5f, 0x5a, 0xdd, 0xe4, 0xfb, 0x47, 0x0a, 0x16, 0xf7, 0x88, 0x47, 0x2d, 0xea, 0x13, 0xc7, 0x97, + 0x95, 0xff, 0xae, 0xf3, 0xd8, 0x8d, 0x5e, 0xb1, 0x50, 0xec, 0x8a, 0xf5, 0xe9, 0x5c, 0x38, 0x58, + 0x3a, 0x70, 0x7b, 0xc4, 0x69, 0xfa, 0x96, 0x4c, 0x76, 0x19, 0x3d, 0xcf, 0x00, 0x0f, 0xad, 0x2e, + 0x61, 0xc9, 0x84, 0x12, 0xc3, 0x26, 0xa6, 0xf8, 0x2c, 0x06, 0x21, 0x20, 0x40, 0x1c, 0x61, 0x15, + 0x4a, 0x8f, 0x99, 0x06, 0x87, 0x18, 0x39, 0x8e, 0x51, 0x94, 0x30, 0x8e, 0xb2, 0x02, 0x79, 0xa7, + 0xdf, 0x15, 0xd5, 0xc0, 0x8c, 0x28, 0x3b, 0x9d, 0x7e, 0x97, 0x97, 0x0a, 0x2b, 0x90, 0xef, 0x92, + 0x6e, 0x93, 0x5a, 0xcf, 0x48, 0x35, 0x2f, 0x3e, 0x75, 0x49, 0xb7, 0x61, 0x3d, 0x23, 0xc3, 0xb6, + 0x02, 0xa9, 0x16, 0xb8, 0x03, 0xab, 0x5d, 0x50, 0xea, 0x2a, 0x72, 0x1c, 0xfe, 0x42, 0x34, 0xb1, + 0x95, 0x0a, 0x7d, 0x71, 0x3b, 0x2f, 0x81, 0x34, 0x6c, 0xcc, 0xcc, 0x5f, 0x80, 0x58, 0x90, 0x27, + 0xb4, 0xd6, 0x7f, 0x8d, 0xa0, 0x9e, 0xcc, 0xd5, 0x34, 0xf9, 0xfe, 0x1b, 0x90, 0xb5, 0x9c, 0xc7, + 0xee, 0xb0, 0x08, 0xbe, 0xae, 0x4e, 0x8f, 0xca, 0x7d, 0x05, 0xa1, 0xf6, 0x6f, 0x04, 0x95, 0x77, + 0xfb, 0xc4, 0x1b, 0x7c, 0xd6, 0xae, 0x17, 0x36, 0x7f, 0x26, 0x6a, 0xfe, 0xb0, 0xd3, 0x64, 0xa3, + 0x4e, 0x13, 0xad, 0x23, 0x72, 0x63, 0x2e, 0x39, 0x33, 0x91, 0x4b, 0x8e, 0xf6, 0x1c, 0x41, 0x6d, + 0x87, 0xf8, 0x71, 0x51, 0x4f, 0xcf, 0x29, 0x3e, 0x42, 0x70, 0x51, 0xc9, 0xd0, 0x34, 0xfe, 0xf0, + 0xd5, 0xa8, 0x3f, 0xa8, 0x8f, 0xcb, 0x23, 0x5b, 0x4a, 0x57, 0x58, 0x84, 0x79, 0x9d, 0xec, 0x33, + 0x4f, 0xf1, 0xde, 0xb6, 0x9c, 0x27, 0x52, 0x35, 0xac, 0x36, 0x59, 0x88, 0xc2, 0x25, 0x87, 0x5f, + 0x82, 0x19, 0xc3, 0x34, 0xd9, 0xb5, 0x62, 0xac, 0xda, 0xbe, 0x29, 0x70, 0xf4, 0x21, 0x72, 0x48, + 0xb2, 0xd4, 0xc4, 0x92, 0x5d, 0xff, 0x3a, 0xcc, 0xc5, 0x8a, 0x0a, 0x9c, 0x87, 0xcc, 0x03, 0xd7, + 0x21, 0x95, 0x0b, 0xb8, 0x02, 0xa5, 0x2d, 0xcb, 0x31, 0xbc, 0xc1, 0x7b, 0xa4, 0xed, 0xbb, 0x5e, + 0xc5, 0xc4, 0x73, 0x50, 0xbc, 0x6b, 0xbb, 0x86, 0x2f, 0x01, 0x64, 0xe3, 0xe7, 0x8b, 0x50, 0x7e, + 0x87, 0x6f, 0xd3, 0x20, 0xde, 0x81, 0xd5, 0x26, 0xb8, 0x09, 0x95, 0xf8, 0x4f, 0x15, 0xf8, 0x75, + 0xa5, 0xc2, 0x12, 0xfe, 0xbd, 0xa8, 0x8d, 0x63, 0x5c, 0xbb, 0x80, 0x3f, 0x80, 0xd9, 0xe8, 0xef, + 0x0e, 0x58, 0x1d, 0x9f, 0xca, 0x7f, 0x22, 0x8e, 0x5b, 0xbc, 0x09, 0xe5, 0xc8, 0xdf, 0x0b, 0xf8, + 0x9a, 0x72, 0x6d, 0xd5, 0x1f, 0x0e, 0xb5, 0x55, 0x25, 0x6a, 0xf8, 0x0f, 0x03, 0xc1, 0x7d, 0x74, + 0x88, 0x9b, 0xc0, 0xbd, 0x72, 0xd2, 0x7b, 0x1c, 0xf7, 0x06, 0xbc, 0x72, 0x64, 0x26, 0x8b, 0xdf, + 0x50, 0xae, 0x9f, 0x34, 0xbb, 0x3d, 0x6e, 0x8b, 0x43, 0xc0, 0x47, 0xa7, 0xf4, 0xf8, 0xa6, 0xda, + 0x02, 0x49, 0xff, 0x28, 0xd4, 0xd6, 0x27, 0xc6, 0x0f, 0x14, 0xf7, 0x23, 0x04, 0xcb, 0x09, 0x83, + 0x54, 0xbc, 0xa9, 0x5c, 0x6e, 0xfc, 0x34, 0xb8, 0x76, 0xeb, 0x64, 0x44, 0x01, 0x23, 0x0e, 0xcc, + 0xc5, 0x46, 0x97, 0xf8, 0x86, 0x72, 0x29, 0xf5, 0x90, 0xb5, 0xf6, 0xfa, 0x64, 0xc8, 0xc1, 0x7e, + 0x8f, 0x60, 0x2e, 0x36, 0xae, 0x4c, 0xd8, 0x4f, 0x3d, 0xd4, 0x3c, 0xce, 0xa0, 0xef, 0x43, 0x39, + 0x32, 0x57, 0x4c, 0xf0, 0x78, 0xd5, 0xec, 0xf1, 0xb8, 0xa5, 0x1f, 0x41, 0x29, 0x3c, 0xfe, 0xc3, + 0x6b, 0x49, 0xb1, 0x74, 0x64, 0xe1, 0x93, 0x84, 0xd2, 0x68, 0x72, 0x30, 0x26, 0x94, 0x8e, 0x0c, + 0x44, 0x26, 0x0f, 0xa5, 0xd0, 0xfa, 0x63, 0x43, 0xe9, 0xc4, 0x5b, 0x7c, 0x88, 0x60, 0x49, 0x3d, + 0x3d, 0xc2, 0x1b, 0x49, 0xbe, 0x99, 0x3c, 0x27, 0xab, 0x6d, 0x9e, 0x88, 0x26, 0xd0, 0xe2, 0x13, + 0x98, 0x8d, 0xce, 0x5f, 0x12, 0xb4, 0xa8, 0x1c, 0x2b, 0xd5, 0x6e, 0x4c, 0x84, 0x1b, 0x6c, 0xf6, + 0x6d, 0x28, 0x86, 0x7a, 0xe3, 0xf8, 0xb5, 0x31, 0x7e, 0x1c, 0x6e, 0xbd, 0x1c, 0xa7, 0xc9, 0x0e, + 0x94, 0x23, 0xfd, 0xd0, 0x24, 0x1f, 0x56, 0xb4, 0xa9, 0x6b, 0xd7, 0x27, 0x41, 0x0d, 0x04, 0xe8, + 0x40, 0x39, 0xd2, 0x9d, 0x4a, 0xd8, 0x49, 0xd5, 0x8c, 0x4b, 0xd8, 0x49, 0xd9, 0xec, 0xd2, 0x2e, + 0xe0, 0xef, 0x87, 0x1a, 0x61, 0x91, 0x66, 0x23, 0xfe, 0xe2, 0xd8, 0x75, 0x54, 0xbd, 0xd6, 0xda, + 0xc6, 0x49, 0x48, 0x02, 0x16, 0xde, 0x85, 0x42, 0xd0, 0x04, 0xc3, 0x57, 0x13, 0xd3, 0xc2, 0x49, + 0x2c, 0xd5, 0x80, 0x9c, 0x68, 0xc8, 0x60, 0x2d, 0xa1, 0xb3, 0x1c, 0xea, 0x56, 0xd5, 0x3e, 0x37, + 0x16, 0x27, 0xe0, 0x53, 0x87, 0x9c, 0xb8, 0xcd, 0x26, 0x2c, 0x1a, 0xe9, 0x52, 0xd4, 0xc6, 0xe3, + 0xf0, 0xeb, 0xb0, 0x76, 0x01, 0xef, 0x42, 0x96, 0x5f, 0x63, 0xb1, 0x3a, 0x15, 0x85, 0xaf, 0xb8, + 0xc7, 0xc9, 0xfc, 0x63, 0x04, 0xd5, 0xa4, 0x7b, 0x0a, 0x4e, 0x3c, 0x85, 0xc6, 0x5d, 0xb6, 0x6a, + 0xb7, 0x4f, 0x48, 0x15, 0xa8, 0xea, 0x19, 0xcc, 0x2b, 0xaa, 0x63, 0xbc, 0x9e, 0xb4, 0x5e, 0x42, + 0x61, 0x5f, 0x7b, 0x73, 0x72, 0x82, 0x60, 0x6f, 0x02, 0xa5, 0x70, 0xc1, 0x9b, 0x70, 0x1c, 0x28, + 0x6a, 0xe5, 0xda, 0xb5, 0x09, 0x30, 0x87, 0xdb, 0x6c, 0xf4, 0xa1, 0xb4, 0xe7, 0xb9, 0x4f, 0x07, + 0xc3, 0x82, 0xf4, 0xb3, 0xd9, 0x76, 0xeb, 0xf6, 0x77, 0x37, 0xf7, 0x2d, 0xbf, 0xd3, 0x6f, 0x31, + 0xfb, 0xaf, 0x0b, 0xdc, 0x37, 0x2c, 0x57, 0x3e, 0xad, 0x5b, 0x8e, 0x4f, 0x3c, 0xc7, 0xb0, 0xd7, + 0xf9, 0x5a, 0x12, 0xda, 0x6b, 0xb5, 0x72, 0xfc, 0x7d, 0xf3, 0xff, 0x01, 0x00, 0x00, 0xff, 0xff, + 0x20, 0x11, 0x9c, 0x73, 0xcc, 0x2c, 0x00, 0x00, } // Reference imports to suppress errors if they are not otherwise used.