mirror of
https://gitee.com/milvus-io/milvus.git
synced 2024-12-03 04:19:18 +08:00
e13fc08d09
Signed-off-by: xige-16 <xi.ge@zilliz.com>
2377 lines
82 KiB
Go
2377 lines
82 KiB
Go
// Code generated by protoc-gen-go. DO NOT EDIT.
|
|
// source: suvlim.proto
|
|
|
|
/*
|
|
Package pb is a generated protocol buffer package.
|
|
|
|
It is generated from these files:
|
|
suvlim.proto
|
|
|
|
It has these top-level messages:
|
|
Status
|
|
KeyValuePair
|
|
CollectionName
|
|
CollectionNameList
|
|
FieldName
|
|
Mapping
|
|
MappingList
|
|
PartitionParam
|
|
PartitionList
|
|
VectorRowRecord
|
|
EntityIds
|
|
VectorRecord
|
|
VectorParam
|
|
FieldMeta
|
|
Schema
|
|
RowData
|
|
InsertParam
|
|
SearchParam
|
|
SearchInSegmentParam
|
|
Entities
|
|
QueryResult
|
|
StringReply
|
|
BoolReply
|
|
CollectionRowCount
|
|
Command
|
|
IndexParam
|
|
FlushParam
|
|
CompactParam
|
|
DeleteByIDParam
|
|
CollectionInfo
|
|
GetEntityIDsParam
|
|
EntityIdentity
|
|
VectorFieldParam
|
|
FieldType
|
|
FieldParam
|
|
VectorFieldRecord
|
|
TermQuery
|
|
CompareExpr
|
|
RangeQuery
|
|
VectorQuery
|
|
BooleanQuery
|
|
GeneralQuery
|
|
SearchParamPB
|
|
InsertOrDeleteMsg
|
|
SearchMsg
|
|
TimeSyncMsg
|
|
SegmentRecord
|
|
Key2SegMsg
|
|
*/
|
|
package pb
|
|
|
|
import proto "github.com/golang/protobuf/proto"
|
|
import fmt "fmt"
|
|
import math "math"
|
|
|
|
// Reference imports to suppress errors if they are not otherwise used.
|
|
var _ = proto.Marshal
|
|
var _ = fmt.Errorf
|
|
var _ = math.Inf
|
|
|
|
// This is a compile-time assertion to ensure that this generated file
|
|
// is compatible with the proto package it is being compiled against.
|
|
// A compilation error at this line likely means your copy of the
|
|
// proto package needs to be updated.
|
|
const _ = proto.ProtoPackageIsVersion2 // please upgrade the proto package
|
|
|
|
type ErrorCode int32
|
|
|
|
const (
|
|
ErrorCode_SUCCESS ErrorCode = 0
|
|
ErrorCode_UNEXPECTED_ERROR ErrorCode = 1
|
|
ErrorCode_CONNECT_FAILED ErrorCode = 2
|
|
ErrorCode_PERMISSION_DENIED ErrorCode = 3
|
|
ErrorCode_COLLECTION_NOT_EXISTS ErrorCode = 4
|
|
ErrorCode_ILLEGAL_ARGUMENT ErrorCode = 5
|
|
ErrorCode_ILLEGAL_DIMENSION ErrorCode = 7
|
|
ErrorCode_ILLEGAL_INDEX_TYPE ErrorCode = 8
|
|
ErrorCode_ILLEGAL_COLLECTION_NAME ErrorCode = 9
|
|
ErrorCode_ILLEGAL_TOPK ErrorCode = 10
|
|
ErrorCode_ILLEGAL_ROWRECORD ErrorCode = 11
|
|
ErrorCode_ILLEGAL_VECTOR_ID ErrorCode = 12
|
|
ErrorCode_ILLEGAL_SEARCH_RESULT ErrorCode = 13
|
|
ErrorCode_FILE_NOT_FOUND ErrorCode = 14
|
|
ErrorCode_META_FAILED ErrorCode = 15
|
|
ErrorCode_CACHE_FAILED ErrorCode = 16
|
|
ErrorCode_CANNOT_CREATE_FOLDER ErrorCode = 17
|
|
ErrorCode_CANNOT_CREATE_FILE ErrorCode = 18
|
|
ErrorCode_CANNOT_DELETE_FOLDER ErrorCode = 19
|
|
ErrorCode_CANNOT_DELETE_FILE ErrorCode = 20
|
|
ErrorCode_BUILD_INDEX_ERROR ErrorCode = 21
|
|
ErrorCode_ILLEGAL_NLIST ErrorCode = 22
|
|
ErrorCode_ILLEGAL_METRIC_TYPE ErrorCode = 23
|
|
ErrorCode_OUT_OF_MEMORY ErrorCode = 24
|
|
)
|
|
|
|
var ErrorCode_name = map[int32]string{
|
|
0: "SUCCESS",
|
|
1: "UNEXPECTED_ERROR",
|
|
2: "CONNECT_FAILED",
|
|
3: "PERMISSION_DENIED",
|
|
4: "COLLECTION_NOT_EXISTS",
|
|
5: "ILLEGAL_ARGUMENT",
|
|
7: "ILLEGAL_DIMENSION",
|
|
8: "ILLEGAL_INDEX_TYPE",
|
|
9: "ILLEGAL_COLLECTION_NAME",
|
|
10: "ILLEGAL_TOPK",
|
|
11: "ILLEGAL_ROWRECORD",
|
|
12: "ILLEGAL_VECTOR_ID",
|
|
13: "ILLEGAL_SEARCH_RESULT",
|
|
14: "FILE_NOT_FOUND",
|
|
15: "META_FAILED",
|
|
16: "CACHE_FAILED",
|
|
17: "CANNOT_CREATE_FOLDER",
|
|
18: "CANNOT_CREATE_FILE",
|
|
19: "CANNOT_DELETE_FOLDER",
|
|
20: "CANNOT_DELETE_FILE",
|
|
21: "BUILD_INDEX_ERROR",
|
|
22: "ILLEGAL_NLIST",
|
|
23: "ILLEGAL_METRIC_TYPE",
|
|
24: "OUT_OF_MEMORY",
|
|
}
|
|
var ErrorCode_value = map[string]int32{
|
|
"SUCCESS": 0,
|
|
"UNEXPECTED_ERROR": 1,
|
|
"CONNECT_FAILED": 2,
|
|
"PERMISSION_DENIED": 3,
|
|
"COLLECTION_NOT_EXISTS": 4,
|
|
"ILLEGAL_ARGUMENT": 5,
|
|
"ILLEGAL_DIMENSION": 7,
|
|
"ILLEGAL_INDEX_TYPE": 8,
|
|
"ILLEGAL_COLLECTION_NAME": 9,
|
|
"ILLEGAL_TOPK": 10,
|
|
"ILLEGAL_ROWRECORD": 11,
|
|
"ILLEGAL_VECTOR_ID": 12,
|
|
"ILLEGAL_SEARCH_RESULT": 13,
|
|
"FILE_NOT_FOUND": 14,
|
|
"META_FAILED": 15,
|
|
"CACHE_FAILED": 16,
|
|
"CANNOT_CREATE_FOLDER": 17,
|
|
"CANNOT_CREATE_FILE": 18,
|
|
"CANNOT_DELETE_FOLDER": 19,
|
|
"CANNOT_DELETE_FILE": 20,
|
|
"BUILD_INDEX_ERROR": 21,
|
|
"ILLEGAL_NLIST": 22,
|
|
"ILLEGAL_METRIC_TYPE": 23,
|
|
"OUT_OF_MEMORY": 24,
|
|
}
|
|
|
|
func (x ErrorCode) String() string {
|
|
return proto.EnumName(ErrorCode_name, int32(x))
|
|
}
|
|
func (ErrorCode) EnumDescriptor() ([]byte, []int) { return fileDescriptor0, []int{0} }
|
|
|
|
// *
|
|
// @brief Field data type
|
|
type DataType int32
|
|
|
|
const (
|
|
DataType_NONE DataType = 0
|
|
DataType_BOOL DataType = 1
|
|
DataType_INT8 DataType = 2
|
|
DataType_INT16 DataType = 3
|
|
DataType_INT32 DataType = 4
|
|
DataType_INT64 DataType = 5
|
|
DataType_FLOAT DataType = 10
|
|
DataType_DOUBLE DataType = 11
|
|
DataType_STRING DataType = 20
|
|
DataType_VECTOR_BINARY DataType = 100
|
|
DataType_VECTOR_FLOAT DataType = 101
|
|
)
|
|
|
|
var DataType_name = map[int32]string{
|
|
0: "NONE",
|
|
1: "BOOL",
|
|
2: "INT8",
|
|
3: "INT16",
|
|
4: "INT32",
|
|
5: "INT64",
|
|
10: "FLOAT",
|
|
11: "DOUBLE",
|
|
20: "STRING",
|
|
100: "VECTOR_BINARY",
|
|
101: "VECTOR_FLOAT",
|
|
}
|
|
var DataType_value = map[string]int32{
|
|
"NONE": 0,
|
|
"BOOL": 1,
|
|
"INT8": 2,
|
|
"INT16": 3,
|
|
"INT32": 4,
|
|
"INT64": 5,
|
|
"FLOAT": 10,
|
|
"DOUBLE": 11,
|
|
"STRING": 20,
|
|
"VECTOR_BINARY": 100,
|
|
"VECTOR_FLOAT": 101,
|
|
}
|
|
|
|
func (x DataType) String() string {
|
|
return proto.EnumName(DataType_name, int32(x))
|
|
}
|
|
func (DataType) EnumDescriptor() ([]byte, []int) { return fileDescriptor0, []int{1} }
|
|
|
|
type CompareOperator int32
|
|
|
|
const (
|
|
CompareOperator_LT CompareOperator = 0
|
|
CompareOperator_LTE CompareOperator = 1
|
|
CompareOperator_EQ CompareOperator = 2
|
|
CompareOperator_GT CompareOperator = 3
|
|
CompareOperator_GTE CompareOperator = 4
|
|
CompareOperator_NE CompareOperator = 5
|
|
)
|
|
|
|
var CompareOperator_name = map[int32]string{
|
|
0: "LT",
|
|
1: "LTE",
|
|
2: "EQ",
|
|
3: "GT",
|
|
4: "GTE",
|
|
5: "NE",
|
|
}
|
|
var CompareOperator_value = map[string]int32{
|
|
"LT": 0,
|
|
"LTE": 1,
|
|
"EQ": 2,
|
|
"GT": 3,
|
|
"GTE": 4,
|
|
"NE": 5,
|
|
}
|
|
|
|
func (x CompareOperator) String() string {
|
|
return proto.EnumName(CompareOperator_name, int32(x))
|
|
}
|
|
func (CompareOperator) EnumDescriptor() ([]byte, []int) { return fileDescriptor0, []int{2} }
|
|
|
|
type Occur int32
|
|
|
|
const (
|
|
Occur_INVALID Occur = 0
|
|
Occur_MUST Occur = 1
|
|
Occur_SHOULD Occur = 2
|
|
Occur_MUST_NOT Occur = 3
|
|
)
|
|
|
|
var Occur_name = map[int32]string{
|
|
0: "INVALID",
|
|
1: "MUST",
|
|
2: "SHOULD",
|
|
3: "MUST_NOT",
|
|
}
|
|
var Occur_value = map[string]int32{
|
|
"INVALID": 0,
|
|
"MUST": 1,
|
|
"SHOULD": 2,
|
|
"MUST_NOT": 3,
|
|
}
|
|
|
|
func (x Occur) String() string {
|
|
return proto.EnumName(Occur_name, int32(x))
|
|
}
|
|
func (Occur) EnumDescriptor() ([]byte, []int) { return fileDescriptor0, []int{3} }
|
|
|
|
// //////////////////pulsar//////////////////////////////////////
|
|
type OpType int32
|
|
|
|
const (
|
|
OpType_INSERT OpType = 0
|
|
OpType_DELETE OpType = 1
|
|
OpType_SEARCH OpType = 2
|
|
OpType_SEARCH_RESULT OpType = 3
|
|
OpType_KEY2SEG OpType = 4
|
|
OpType_TIMESYNC OpType = 5
|
|
)
|
|
|
|
var OpType_name = map[int32]string{
|
|
0: "INSERT",
|
|
1: "DELETE",
|
|
2: "SEARCH",
|
|
3: "SEARCH_RESULT",
|
|
4: "KEY2SEG",
|
|
5: "TIMESYNC",
|
|
}
|
|
var OpType_value = map[string]int32{
|
|
"INSERT": 0,
|
|
"DELETE": 1,
|
|
"SEARCH": 2,
|
|
"SEARCH_RESULT": 3,
|
|
"KEY2SEG": 4,
|
|
"TIMESYNC": 5,
|
|
}
|
|
|
|
func (x OpType) String() string {
|
|
return proto.EnumName(OpType_name, int32(x))
|
|
}
|
|
func (OpType) EnumDescriptor() ([]byte, []int) { return fileDescriptor0, []int{4} }
|
|
|
|
type Status struct {
|
|
ErrorCode ErrorCode `protobuf:"varint,1,opt,name=error_code,json=errorCode,enum=suvlim.grpc.ErrorCode" json:"error_code,omitempty"`
|
|
Reason string `protobuf:"bytes,2,opt,name=reason" json:"reason,omitempty"`
|
|
}
|
|
|
|
func (m *Status) Reset() { *m = Status{} }
|
|
func (m *Status) String() string { return proto.CompactTextString(m) }
|
|
func (*Status) ProtoMessage() {}
|
|
func (*Status) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{0} }
|
|
|
|
func (m *Status) GetErrorCode() ErrorCode {
|
|
if m != nil {
|
|
return m.ErrorCode
|
|
}
|
|
return ErrorCode_SUCCESS
|
|
}
|
|
|
|
func (m *Status) GetReason() string {
|
|
if m != nil {
|
|
return m.Reason
|
|
}
|
|
return ""
|
|
}
|
|
|
|
// *
|
|
// @brief General usage
|
|
type KeyValuePair struct {
|
|
Key string `protobuf:"bytes,1,opt,name=key" json:"key,omitempty"`
|
|
Value string `protobuf:"bytes,2,opt,name=value" json:"value,omitempty"`
|
|
}
|
|
|
|
func (m *KeyValuePair) Reset() { *m = KeyValuePair{} }
|
|
func (m *KeyValuePair) String() string { return proto.CompactTextString(m) }
|
|
func (*KeyValuePair) ProtoMessage() {}
|
|
func (*KeyValuePair) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{1} }
|
|
|
|
func (m *KeyValuePair) GetKey() string {
|
|
if m != nil {
|
|
return m.Key
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (m *KeyValuePair) GetValue() string {
|
|
if m != nil {
|
|
return m.Value
|
|
}
|
|
return ""
|
|
}
|
|
|
|
// *
|
|
// @brief Collection name
|
|
type CollectionName struct {
|
|
CollectionName string `protobuf:"bytes,1,opt,name=collection_name,json=collectionName" json:"collection_name,omitempty"`
|
|
}
|
|
|
|
func (m *CollectionName) Reset() { *m = CollectionName{} }
|
|
func (m *CollectionName) String() string { return proto.CompactTextString(m) }
|
|
func (*CollectionName) ProtoMessage() {}
|
|
func (*CollectionName) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{2} }
|
|
|
|
func (m *CollectionName) GetCollectionName() string {
|
|
if m != nil {
|
|
return m.CollectionName
|
|
}
|
|
return ""
|
|
}
|
|
|
|
// *
|
|
// @brief Collection name list
|
|
type CollectionNameList struct {
|
|
Status *Status `protobuf:"bytes,1,opt,name=status" json:"status,omitempty"`
|
|
CollectionNames []string `protobuf:"bytes,2,rep,name=collection_names,json=collectionNames" json:"collection_names,omitempty"`
|
|
}
|
|
|
|
func (m *CollectionNameList) Reset() { *m = CollectionNameList{} }
|
|
func (m *CollectionNameList) String() string { return proto.CompactTextString(m) }
|
|
func (*CollectionNameList) ProtoMessage() {}
|
|
func (*CollectionNameList) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{3} }
|
|
|
|
func (m *CollectionNameList) GetStatus() *Status {
|
|
if m != nil {
|
|
return m.Status
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (m *CollectionNameList) GetCollectionNames() []string {
|
|
if m != nil {
|
|
return m.CollectionNames
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// *
|
|
// @brief Field name
|
|
type FieldName struct {
|
|
CollectionName string `protobuf:"bytes,1,opt,name=collection_name,json=collectionName" json:"collection_name,omitempty"`
|
|
FieldName string `protobuf:"bytes,2,opt,name=field_name,json=fieldName" json:"field_name,omitempty"`
|
|
}
|
|
|
|
func (m *FieldName) Reset() { *m = FieldName{} }
|
|
func (m *FieldName) String() string { return proto.CompactTextString(m) }
|
|
func (*FieldName) ProtoMessage() {}
|
|
func (*FieldName) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{4} }
|
|
|
|
func (m *FieldName) GetCollectionName() string {
|
|
if m != nil {
|
|
return m.CollectionName
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (m *FieldName) GetFieldName() string {
|
|
if m != nil {
|
|
return m.FieldName
|
|
}
|
|
return ""
|
|
}
|
|
|
|
// *
|
|
// @brief Collection mapping
|
|
// @extra_params: key-value pair for extra parameters of the collection
|
|
// typically usage:
|
|
// extra_params["params"] = {segment_row_count: 1000000, auto_id: true}
|
|
// Note:
|
|
// the segment_row_count specify segment row count limit for merging
|
|
// the auto_id = true means entity id is auto-generated by milvus
|
|
type Mapping struct {
|
|
Status *Status `protobuf:"bytes,1,opt,name=status" json:"status,omitempty"`
|
|
CollectionName string `protobuf:"bytes,2,opt,name=collection_name,json=collectionName" json:"collection_name,omitempty"`
|
|
Fields []*FieldParam `protobuf:"bytes,3,rep,name=fields" json:"fields,omitempty"`
|
|
ExtraParams []*KeyValuePair `protobuf:"bytes,4,rep,name=extra_params,json=extraParams" json:"extra_params,omitempty"`
|
|
}
|
|
|
|
func (m *Mapping) Reset() { *m = Mapping{} }
|
|
func (m *Mapping) String() string { return proto.CompactTextString(m) }
|
|
func (*Mapping) ProtoMessage() {}
|
|
func (*Mapping) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{5} }
|
|
|
|
func (m *Mapping) GetStatus() *Status {
|
|
if m != nil {
|
|
return m.Status
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (m *Mapping) GetCollectionName() string {
|
|
if m != nil {
|
|
return m.CollectionName
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (m *Mapping) GetFields() []*FieldParam {
|
|
if m != nil {
|
|
return m.Fields
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (m *Mapping) GetExtraParams() []*KeyValuePair {
|
|
if m != nil {
|
|
return m.ExtraParams
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// *
|
|
// @brief Collection mapping list
|
|
type MappingList struct {
|
|
Status *Status `protobuf:"bytes,1,opt,name=status" json:"status,omitempty"`
|
|
MappingList []*Mapping `protobuf:"bytes,2,rep,name=mapping_list,json=mappingList" json:"mapping_list,omitempty"`
|
|
}
|
|
|
|
func (m *MappingList) Reset() { *m = MappingList{} }
|
|
func (m *MappingList) String() string { return proto.CompactTextString(m) }
|
|
func (*MappingList) ProtoMessage() {}
|
|
func (*MappingList) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{6} }
|
|
|
|
func (m *MappingList) GetStatus() *Status {
|
|
if m != nil {
|
|
return m.Status
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (m *MappingList) GetMappingList() []*Mapping {
|
|
if m != nil {
|
|
return m.MappingList
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// *
|
|
// @brief Parameters of partition
|
|
type PartitionParam struct {
|
|
CollectionName string `protobuf:"bytes,1,opt,name=collection_name,json=collectionName" json:"collection_name,omitempty"`
|
|
Tag string `protobuf:"bytes,2,opt,name=tag" json:"tag,omitempty"`
|
|
}
|
|
|
|
func (m *PartitionParam) Reset() { *m = PartitionParam{} }
|
|
func (m *PartitionParam) String() string { return proto.CompactTextString(m) }
|
|
func (*PartitionParam) ProtoMessage() {}
|
|
func (*PartitionParam) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{7} }
|
|
|
|
func (m *PartitionParam) GetCollectionName() string {
|
|
if m != nil {
|
|
return m.CollectionName
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (m *PartitionParam) GetTag() string {
|
|
if m != nil {
|
|
return m.Tag
|
|
}
|
|
return ""
|
|
}
|
|
|
|
// *
|
|
// @brief Partition list
|
|
type PartitionList struct {
|
|
Status *Status `protobuf:"bytes,1,opt,name=status" json:"status,omitempty"`
|
|
PartitionTagArray []string `protobuf:"bytes,2,rep,name=partition_tag_array,json=partitionTagArray" json:"partition_tag_array,omitempty"`
|
|
}
|
|
|
|
func (m *PartitionList) Reset() { *m = PartitionList{} }
|
|
func (m *PartitionList) String() string { return proto.CompactTextString(m) }
|
|
func (*PartitionList) ProtoMessage() {}
|
|
func (*PartitionList) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{8} }
|
|
|
|
func (m *PartitionList) GetStatus() *Status {
|
|
if m != nil {
|
|
return m.Status
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (m *PartitionList) GetPartitionTagArray() []string {
|
|
if m != nil {
|
|
return m.PartitionTagArray
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// *
|
|
// @brief Vector row record
|
|
type VectorRowRecord struct {
|
|
FloatData []float32 `protobuf:"fixed32,1,rep,packed,name=float_data,json=floatData" json:"float_data,omitempty"`
|
|
BinaryData []byte `protobuf:"bytes,2,opt,name=binary_data,json=binaryData,proto3" json:"binary_data,omitempty"`
|
|
}
|
|
|
|
func (m *VectorRowRecord) Reset() { *m = VectorRowRecord{} }
|
|
func (m *VectorRowRecord) String() string { return proto.CompactTextString(m) }
|
|
func (*VectorRowRecord) ProtoMessage() {}
|
|
func (*VectorRowRecord) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{9} }
|
|
|
|
func (m *VectorRowRecord) GetFloatData() []float32 {
|
|
if m != nil {
|
|
return m.FloatData
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (m *VectorRowRecord) GetBinaryData() []byte {
|
|
if m != nil {
|
|
return m.BinaryData
|
|
}
|
|
return nil
|
|
}
|
|
|
|
type EntityIds struct {
|
|
Status *Status `protobuf:"bytes,1,opt,name=status" json:"status,omitempty"`
|
|
EntityIdArray []int64 `protobuf:"varint,2,rep,packed,name=entity_id_array,json=entityIdArray" json:"entity_id_array,omitempty"`
|
|
}
|
|
|
|
func (m *EntityIds) Reset() { *m = EntityIds{} }
|
|
func (m *EntityIds) String() string { return proto.CompactTextString(m) }
|
|
func (*EntityIds) ProtoMessage() {}
|
|
func (*EntityIds) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{10} }
|
|
|
|
func (m *EntityIds) GetStatus() *Status {
|
|
if m != nil {
|
|
return m.Status
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (m *EntityIds) GetEntityIdArray() []int64 {
|
|
if m != nil {
|
|
return m.EntityIdArray
|
|
}
|
|
return nil
|
|
}
|
|
|
|
type VectorRecord struct {
|
|
Records []*VectorRowRecord `protobuf:"bytes,1,rep,name=records" json:"records,omitempty"`
|
|
}
|
|
|
|
func (m *VectorRecord) Reset() { *m = VectorRecord{} }
|
|
func (m *VectorRecord) String() string { return proto.CompactTextString(m) }
|
|
func (*VectorRecord) ProtoMessage() {}
|
|
func (*VectorRecord) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{11} }
|
|
|
|
func (m *VectorRecord) GetRecords() []*VectorRowRecord {
|
|
if m != nil {
|
|
return m.Records
|
|
}
|
|
return nil
|
|
}
|
|
|
|
type VectorParam struct {
|
|
Json string `protobuf:"bytes,1,opt,name=json" json:"json,omitempty"`
|
|
RowRecord *VectorRecord `protobuf:"bytes,2,opt,name=row_record,json=rowRecord" json:"row_record,omitempty"`
|
|
}
|
|
|
|
func (m *VectorParam) Reset() { *m = VectorParam{} }
|
|
func (m *VectorParam) String() string { return proto.CompactTextString(m) }
|
|
func (*VectorParam) ProtoMessage() {}
|
|
func (*VectorParam) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{12} }
|
|
|
|
func (m *VectorParam) GetJson() string {
|
|
if m != nil {
|
|
return m.Json
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (m *VectorParam) GetRowRecord() *VectorRecord {
|
|
if m != nil {
|
|
return m.RowRecord
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// *
|
|
// @brief schema
|
|
type FieldMeta struct {
|
|
FieldName string `protobuf:"bytes,1,opt,name=field_name,json=fieldName" json:"field_name,omitempty"`
|
|
Type DataType `protobuf:"varint,2,opt,name=type,enum=suvlim.grpc.DataType" json:"type,omitempty"`
|
|
Dim int64 `protobuf:"varint,3,opt,name=dim" json:"dim,omitempty"`
|
|
}
|
|
|
|
func (m *FieldMeta) Reset() { *m = FieldMeta{} }
|
|
func (m *FieldMeta) String() string { return proto.CompactTextString(m) }
|
|
func (*FieldMeta) ProtoMessage() {}
|
|
func (*FieldMeta) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{13} }
|
|
|
|
func (m *FieldMeta) GetFieldName() string {
|
|
if m != nil {
|
|
return m.FieldName
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (m *FieldMeta) GetType() DataType {
|
|
if m != nil {
|
|
return m.Type
|
|
}
|
|
return DataType_NONE
|
|
}
|
|
|
|
func (m *FieldMeta) GetDim() int64 {
|
|
if m != nil {
|
|
return m.Dim
|
|
}
|
|
return 0
|
|
}
|
|
|
|
type Schema struct {
|
|
FieldMetas []*FieldMeta `protobuf:"bytes,1,rep,name=field_metas,json=fieldMetas" json:"field_metas,omitempty"`
|
|
}
|
|
|
|
func (m *Schema) Reset() { *m = Schema{} }
|
|
func (m *Schema) String() string { return proto.CompactTextString(m) }
|
|
func (*Schema) ProtoMessage() {}
|
|
func (*Schema) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{14} }
|
|
|
|
func (m *Schema) GetFieldMetas() []*FieldMeta {
|
|
if m != nil {
|
|
return m.FieldMetas
|
|
}
|
|
return nil
|
|
}
|
|
|
|
type RowData struct {
|
|
Blob []byte `protobuf:"bytes,1,opt,name=blob,proto3" json:"blob,omitempty"`
|
|
}
|
|
|
|
func (m *RowData) Reset() { *m = RowData{} }
|
|
func (m *RowData) String() string { return proto.CompactTextString(m) }
|
|
func (*RowData) ProtoMessage() {}
|
|
func (*RowData) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{15} }
|
|
|
|
func (m *RowData) GetBlob() []byte {
|
|
if m != nil {
|
|
return m.Blob
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// ////////////////////suvlim-proxy///////////////////////////////////
|
|
type InsertParam struct {
|
|
CollectionName string `protobuf:"bytes,1,opt,name=collection_name,json=collectionName" json:"collection_name,omitempty"`
|
|
Schema *Schema `protobuf:"bytes,2,opt,name=schema" json:"schema,omitempty"`
|
|
RowsData []*RowData `protobuf:"bytes,3,rep,name=rows_data,json=rowsData" json:"rows_data,omitempty"`
|
|
EntityIdArray []int64 `protobuf:"varint,4,rep,packed,name=entity_id_array,json=entityIdArray" json:"entity_id_array,omitempty"`
|
|
PartitionTag string `protobuf:"bytes,5,opt,name=partition_tag,json=partitionTag" json:"partition_tag,omitempty"`
|
|
ExtraParams []*KeyValuePair `protobuf:"bytes,6,rep,name=extra_params,json=extraParams" json:"extra_params,omitempty"`
|
|
}
|
|
|
|
func (m *InsertParam) Reset() { *m = InsertParam{} }
|
|
func (m *InsertParam) String() string { return proto.CompactTextString(m) }
|
|
func (*InsertParam) ProtoMessage() {}
|
|
func (*InsertParam) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{16} }
|
|
|
|
func (m *InsertParam) GetCollectionName() string {
|
|
if m != nil {
|
|
return m.CollectionName
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (m *InsertParam) GetSchema() *Schema {
|
|
if m != nil {
|
|
return m.Schema
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (m *InsertParam) GetRowsData() []*RowData {
|
|
if m != nil {
|
|
return m.RowsData
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (m *InsertParam) GetEntityIdArray() []int64 {
|
|
if m != nil {
|
|
return m.EntityIdArray
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (m *InsertParam) GetPartitionTag() string {
|
|
if m != nil {
|
|
return m.PartitionTag
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (m *InsertParam) GetExtraParams() []*KeyValuePair {
|
|
if m != nil {
|
|
return m.ExtraParams
|
|
}
|
|
return nil
|
|
}
|
|
|
|
type SearchParam struct {
|
|
CollectionName string `protobuf:"bytes,1,opt,name=collection_name,json=collectionName" json:"collection_name,omitempty"`
|
|
VectorParam []*VectorParam `protobuf:"bytes,2,rep,name=vector_param,json=vectorParam" json:"vector_param,omitempty"`
|
|
Dsl string `protobuf:"bytes,3,opt,name=dsl" json:"dsl,omitempty"`
|
|
PartitionTag []string `protobuf:"bytes,4,rep,name=partition_tag,json=partitionTag" json:"partition_tag,omitempty"`
|
|
ExtraParams []*KeyValuePair `protobuf:"bytes,5,rep,name=extra_params,json=extraParams" json:"extra_params,omitempty"`
|
|
}
|
|
|
|
func (m *SearchParam) Reset() { *m = SearchParam{} }
|
|
func (m *SearchParam) String() string { return proto.CompactTextString(m) }
|
|
func (*SearchParam) ProtoMessage() {}
|
|
func (*SearchParam) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{17} }
|
|
|
|
func (m *SearchParam) GetCollectionName() string {
|
|
if m != nil {
|
|
return m.CollectionName
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (m *SearchParam) GetVectorParam() []*VectorParam {
|
|
if m != nil {
|
|
return m.VectorParam
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (m *SearchParam) GetDsl() string {
|
|
if m != nil {
|
|
return m.Dsl
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (m *SearchParam) GetPartitionTag() []string {
|
|
if m != nil {
|
|
return m.PartitionTag
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (m *SearchParam) GetExtraParams() []*KeyValuePair {
|
|
if m != nil {
|
|
return m.ExtraParams
|
|
}
|
|
return nil
|
|
}
|
|
|
|
type SearchInSegmentParam struct {
|
|
FileIdArray []string `protobuf:"bytes,1,rep,name=file_id_array,json=fileIdArray" json:"file_id_array,omitempty"`
|
|
SearchParam *SearchParam `protobuf:"bytes,2,opt,name=search_param,json=searchParam" json:"search_param,omitempty"`
|
|
}
|
|
|
|
func (m *SearchInSegmentParam) Reset() { *m = SearchInSegmentParam{} }
|
|
func (m *SearchInSegmentParam) String() string { return proto.CompactTextString(m) }
|
|
func (*SearchInSegmentParam) ProtoMessage() {}
|
|
func (*SearchInSegmentParam) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{18} }
|
|
|
|
func (m *SearchInSegmentParam) GetFileIdArray() []string {
|
|
if m != nil {
|
|
return m.FileIdArray
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (m *SearchInSegmentParam) GetSearchParam() *SearchParam {
|
|
if m != nil {
|
|
return m.SearchParam
|
|
}
|
|
return nil
|
|
}
|
|
|
|
type Entities struct {
|
|
Status *Status `protobuf:"bytes,1,opt,name=status" json:"status,omitempty"`
|
|
Ids []int64 `protobuf:"varint,2,rep,packed,name=ids" json:"ids,omitempty"`
|
|
ValidRow []bool `protobuf:"varint,3,rep,packed,name=valid_row,json=validRow" json:"valid_row,omitempty"`
|
|
RowsData []*RowData `protobuf:"bytes,4,rep,name=rows_data,json=rowsData" json:"rows_data,omitempty"`
|
|
}
|
|
|
|
func (m *Entities) Reset() { *m = Entities{} }
|
|
func (m *Entities) String() string { return proto.CompactTextString(m) }
|
|
func (*Entities) ProtoMessage() {}
|
|
func (*Entities) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{19} }
|
|
|
|
func (m *Entities) GetStatus() *Status {
|
|
if m != nil {
|
|
return m.Status
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (m *Entities) GetIds() []int64 {
|
|
if m != nil {
|
|
return m.Ids
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (m *Entities) GetValidRow() []bool {
|
|
if m != nil {
|
|
return m.ValidRow
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (m *Entities) GetRowsData() []*RowData {
|
|
if m != nil {
|
|
return m.RowsData
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// *
|
|
// @brief Query result
|
|
type QueryResult struct {
|
|
Status *Status `protobuf:"bytes,1,opt,name=status" json:"status,omitempty"`
|
|
Entities *Entities `protobuf:"bytes,2,opt,name=entities" json:"entities,omitempty"`
|
|
RowNum int64 `protobuf:"varint,3,opt,name=row_num,json=rowNum" json:"row_num,omitempty"`
|
|
Scores []float32 `protobuf:"fixed32,4,rep,packed,name=scores" json:"scores,omitempty"`
|
|
Distances []float32 `protobuf:"fixed32,5,rep,packed,name=distances" json:"distances,omitempty"`
|
|
ExtraParams []*KeyValuePair `protobuf:"bytes,6,rep,name=extra_params,json=extraParams" json:"extra_params,omitempty"`
|
|
}
|
|
|
|
func (m *QueryResult) Reset() { *m = QueryResult{} }
|
|
func (m *QueryResult) String() string { return proto.CompactTextString(m) }
|
|
func (*QueryResult) ProtoMessage() {}
|
|
func (*QueryResult) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{20} }
|
|
|
|
func (m *QueryResult) GetStatus() *Status {
|
|
if m != nil {
|
|
return m.Status
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (m *QueryResult) GetEntities() *Entities {
|
|
if m != nil {
|
|
return m.Entities
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (m *QueryResult) GetRowNum() int64 {
|
|
if m != nil {
|
|
return m.RowNum
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (m *QueryResult) GetScores() []float32 {
|
|
if m != nil {
|
|
return m.Scores
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (m *QueryResult) GetDistances() []float32 {
|
|
if m != nil {
|
|
return m.Distances
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (m *QueryResult) GetExtraParams() []*KeyValuePair {
|
|
if m != nil {
|
|
return m.ExtraParams
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// *
|
|
// @brief Server string Reply
|
|
type StringReply struct {
|
|
Status *Status `protobuf:"bytes,1,opt,name=status" json:"status,omitempty"`
|
|
StringReply string `protobuf:"bytes,2,opt,name=string_reply,json=stringReply" json:"string_reply,omitempty"`
|
|
}
|
|
|
|
func (m *StringReply) Reset() { *m = StringReply{} }
|
|
func (m *StringReply) String() string { return proto.CompactTextString(m) }
|
|
func (*StringReply) ProtoMessage() {}
|
|
func (*StringReply) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{21} }
|
|
|
|
func (m *StringReply) GetStatus() *Status {
|
|
if m != nil {
|
|
return m.Status
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (m *StringReply) GetStringReply() string {
|
|
if m != nil {
|
|
return m.StringReply
|
|
}
|
|
return ""
|
|
}
|
|
|
|
// *
|
|
// @brief Server bool Reply
|
|
type BoolReply struct {
|
|
Status *Status `protobuf:"bytes,1,opt,name=status" json:"status,omitempty"`
|
|
BoolReply bool `protobuf:"varint,2,opt,name=bool_reply,json=boolReply" json:"bool_reply,omitempty"`
|
|
}
|
|
|
|
func (m *BoolReply) Reset() { *m = BoolReply{} }
|
|
func (m *BoolReply) String() string { return proto.CompactTextString(m) }
|
|
func (*BoolReply) ProtoMessage() {}
|
|
func (*BoolReply) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{22} }
|
|
|
|
func (m *BoolReply) GetStatus() *Status {
|
|
if m != nil {
|
|
return m.Status
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (m *BoolReply) GetBoolReply() bool {
|
|
if m != nil {
|
|
return m.BoolReply
|
|
}
|
|
return false
|
|
}
|
|
|
|
// *
|
|
// @brief Return collection row count
|
|
type CollectionRowCount struct {
|
|
Status *Status `protobuf:"bytes,1,opt,name=status" json:"status,omitempty"`
|
|
CollectionRowCount int64 `protobuf:"varint,2,opt,name=collection_row_count,json=collectionRowCount" json:"collection_row_count,omitempty"`
|
|
}
|
|
|
|
func (m *CollectionRowCount) Reset() { *m = CollectionRowCount{} }
|
|
func (m *CollectionRowCount) String() string { return proto.CompactTextString(m) }
|
|
func (*CollectionRowCount) ProtoMessage() {}
|
|
func (*CollectionRowCount) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{23} }
|
|
|
|
func (m *CollectionRowCount) GetStatus() *Status {
|
|
if m != nil {
|
|
return m.Status
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (m *CollectionRowCount) GetCollectionRowCount() int64 {
|
|
if m != nil {
|
|
return m.CollectionRowCount
|
|
}
|
|
return 0
|
|
}
|
|
|
|
// *
|
|
// @brief Server command parameters
|
|
type Command struct {
|
|
Cmd string `protobuf:"bytes,1,opt,name=cmd" json:"cmd,omitempty"`
|
|
}
|
|
|
|
func (m *Command) Reset() { *m = Command{} }
|
|
func (m *Command) String() string { return proto.CompactTextString(m) }
|
|
func (*Command) ProtoMessage() {}
|
|
func (*Command) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{24} }
|
|
|
|
func (m *Command) GetCmd() string {
|
|
if m != nil {
|
|
return m.Cmd
|
|
}
|
|
return ""
|
|
}
|
|
|
|
// *
|
|
// @brief Index params
|
|
// @collection_name: target collection
|
|
// @field_name: target field
|
|
// @index_name: a name for index provided by user, unique within this field
|
|
// @extra_params: index parameters in json format
|
|
// for vector field:
|
|
// extra_params["index_type"] = one of the values: FLAT, IVF_LAT, IVF_SQ8, NSGMIX, IVFSQ8H,
|
|
// PQ, HNSW, HNSW_SQ8NM, ANNOY
|
|
// extra_params["metric_type"] = one of the values: L2, IP, HAMMING, JACCARD, TANIMOTO
|
|
// SUBSTRUCTURE, SUPERSTRUCTURE
|
|
// extra_params["params"] = extra parameters for index, for example ivflat: {nlist: 2048}
|
|
// for structured field:
|
|
// extra_params["index_type"] = one of the values: SORTED
|
|
type IndexParam struct {
|
|
Status *Status `protobuf:"bytes,1,opt,name=status" json:"status,omitempty"`
|
|
CollectionName string `protobuf:"bytes,2,opt,name=collection_name,json=collectionName" json:"collection_name,omitempty"`
|
|
FieldName string `protobuf:"bytes,3,opt,name=field_name,json=fieldName" json:"field_name,omitempty"`
|
|
IndexName string `protobuf:"bytes,4,opt,name=index_name,json=indexName" json:"index_name,omitempty"`
|
|
ExtraParams []*KeyValuePair `protobuf:"bytes,5,rep,name=extra_params,json=extraParams" json:"extra_params,omitempty"`
|
|
}
|
|
|
|
func (m *IndexParam) Reset() { *m = IndexParam{} }
|
|
func (m *IndexParam) String() string { return proto.CompactTextString(m) }
|
|
func (*IndexParam) ProtoMessage() {}
|
|
func (*IndexParam) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{25} }
|
|
|
|
func (m *IndexParam) GetStatus() *Status {
|
|
if m != nil {
|
|
return m.Status
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (m *IndexParam) GetCollectionName() string {
|
|
if m != nil {
|
|
return m.CollectionName
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (m *IndexParam) GetFieldName() string {
|
|
if m != nil {
|
|
return m.FieldName
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (m *IndexParam) GetIndexName() string {
|
|
if m != nil {
|
|
return m.IndexName
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (m *IndexParam) GetExtraParams() []*KeyValuePair {
|
|
if m != nil {
|
|
return m.ExtraParams
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// *
|
|
// @brief Parameters for flush action
|
|
type FlushParam struct {
|
|
CollectionNameArray []string `protobuf:"bytes,1,rep,name=collection_name_array,json=collectionNameArray" json:"collection_name_array,omitempty"`
|
|
}
|
|
|
|
func (m *FlushParam) Reset() { *m = FlushParam{} }
|
|
func (m *FlushParam) String() string { return proto.CompactTextString(m) }
|
|
func (*FlushParam) ProtoMessage() {}
|
|
func (*FlushParam) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{26} }
|
|
|
|
func (m *FlushParam) GetCollectionNameArray() []string {
|
|
if m != nil {
|
|
return m.CollectionNameArray
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// *
|
|
// @brief Parameters for flush action
|
|
type CompactParam struct {
|
|
CollectionName string `protobuf:"bytes,1,opt,name=collection_name,json=collectionName" json:"collection_name,omitempty"`
|
|
Threshold float64 `protobuf:"fixed64,2,opt,name=threshold" json:"threshold,omitempty"`
|
|
}
|
|
|
|
func (m *CompactParam) Reset() { *m = CompactParam{} }
|
|
func (m *CompactParam) String() string { return proto.CompactTextString(m) }
|
|
func (*CompactParam) ProtoMessage() {}
|
|
func (*CompactParam) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{27} }
|
|
|
|
func (m *CompactParam) GetCollectionName() string {
|
|
if m != nil {
|
|
return m.CollectionName
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (m *CompactParam) GetThreshold() float64 {
|
|
if m != nil {
|
|
return m.Threshold
|
|
}
|
|
return 0
|
|
}
|
|
|
|
// *
|
|
// @brief Parameters for deleting entities by id
|
|
type DeleteByIDParam struct {
|
|
CollectionName string `protobuf:"bytes,1,opt,name=collection_name,json=collectionName" json:"collection_name,omitempty"`
|
|
IdArray []int64 `protobuf:"varint,2,rep,packed,name=id_array,json=idArray" json:"id_array,omitempty"`
|
|
}
|
|
|
|
func (m *DeleteByIDParam) Reset() { *m = DeleteByIDParam{} }
|
|
func (m *DeleteByIDParam) String() string { return proto.CompactTextString(m) }
|
|
func (*DeleteByIDParam) ProtoMessage() {}
|
|
func (*DeleteByIDParam) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{28} }
|
|
|
|
func (m *DeleteByIDParam) GetCollectionName() string {
|
|
if m != nil {
|
|
return m.CollectionName
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (m *DeleteByIDParam) GetIdArray() []int64 {
|
|
if m != nil {
|
|
return m.IdArray
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// *
|
|
// @brief Return collection stats
|
|
// @json_info: collection stats in json format, typically, the format is like:
|
|
// {
|
|
// row_count: xxx,
|
|
// data_size: xxx,
|
|
// partitions: [
|
|
// {
|
|
// tag: xxx,
|
|
// id: xxx,
|
|
// row_count: xxx,
|
|
// data_size: xxx,
|
|
// segments: [
|
|
// {
|
|
// id: xxx,
|
|
// row_count: xxx,
|
|
// data_size: xxx,
|
|
// files: [
|
|
// {
|
|
// field: xxx,
|
|
// name: xxx,
|
|
// index_type: xxx,
|
|
// path: xxx,
|
|
// data_size: xxx,
|
|
// }
|
|
// ]
|
|
// }
|
|
// ]
|
|
// }
|
|
// ]
|
|
// }
|
|
type CollectionInfo struct {
|
|
Status *Status `protobuf:"bytes,1,opt,name=status" json:"status,omitempty"`
|
|
JsonInfo string `protobuf:"bytes,2,opt,name=json_info,json=jsonInfo" json:"json_info,omitempty"`
|
|
}
|
|
|
|
func (m *CollectionInfo) Reset() { *m = CollectionInfo{} }
|
|
func (m *CollectionInfo) String() string { return proto.CompactTextString(m) }
|
|
func (*CollectionInfo) ProtoMessage() {}
|
|
func (*CollectionInfo) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{29} }
|
|
|
|
func (m *CollectionInfo) GetStatus() *Status {
|
|
if m != nil {
|
|
return m.Status
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (m *CollectionInfo) GetJsonInfo() string {
|
|
if m != nil {
|
|
return m.JsonInfo
|
|
}
|
|
return ""
|
|
}
|
|
|
|
// *
|
|
// @brief Parameters for returning entities id of a segment
|
|
type GetEntityIDsParam struct {
|
|
CollectionName string `protobuf:"bytes,1,opt,name=collection_name,json=collectionName" json:"collection_name,omitempty"`
|
|
SegmentId int64 `protobuf:"varint,2,opt,name=segment_id,json=segmentId" json:"segment_id,omitempty"`
|
|
}
|
|
|
|
func (m *GetEntityIDsParam) Reset() { *m = GetEntityIDsParam{} }
|
|
func (m *GetEntityIDsParam) String() string { return proto.CompactTextString(m) }
|
|
func (*GetEntityIDsParam) ProtoMessage() {}
|
|
func (*GetEntityIDsParam) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{30} }
|
|
|
|
func (m *GetEntityIDsParam) GetCollectionName() string {
|
|
if m != nil {
|
|
return m.CollectionName
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (m *GetEntityIDsParam) GetSegmentId() int64 {
|
|
if m != nil {
|
|
return m.SegmentId
|
|
}
|
|
return 0
|
|
}
|
|
|
|
// *
|
|
// @brief Entities identity
|
|
type EntityIdentity struct {
|
|
CollectionName string `protobuf:"bytes,1,opt,name=collection_name,json=collectionName" json:"collection_name,omitempty"`
|
|
IdArray []int64 `protobuf:"varint,2,rep,packed,name=id_array,json=idArray" json:"id_array,omitempty"`
|
|
FieldNames []string `protobuf:"bytes,3,rep,name=field_names,json=fieldNames" json:"field_names,omitempty"`
|
|
}
|
|
|
|
func (m *EntityIdentity) Reset() { *m = EntityIdentity{} }
|
|
func (m *EntityIdentity) String() string { return proto.CompactTextString(m) }
|
|
func (*EntityIdentity) ProtoMessage() {}
|
|
func (*EntityIdentity) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{31} }
|
|
|
|
func (m *EntityIdentity) GetCollectionName() string {
|
|
if m != nil {
|
|
return m.CollectionName
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (m *EntityIdentity) GetIdArray() []int64 {
|
|
if m != nil {
|
|
return m.IdArray
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (m *EntityIdentity) GetFieldNames() []string {
|
|
if m != nil {
|
|
return m.FieldNames
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// *
|
|
// @brief Vector field parameters
|
|
type VectorFieldParam struct {
|
|
Dimension int64 `protobuf:"varint,1,opt,name=dimension" json:"dimension,omitempty"`
|
|
}
|
|
|
|
func (m *VectorFieldParam) Reset() { *m = VectorFieldParam{} }
|
|
func (m *VectorFieldParam) String() string { return proto.CompactTextString(m) }
|
|
func (*VectorFieldParam) ProtoMessage() {}
|
|
func (*VectorFieldParam) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{32} }
|
|
|
|
func (m *VectorFieldParam) GetDimension() int64 {
|
|
if m != nil {
|
|
return m.Dimension
|
|
}
|
|
return 0
|
|
}
|
|
|
|
// *
|
|
// @brief Field type
|
|
type FieldType struct {
|
|
// Types that are valid to be assigned to Value:
|
|
// *FieldType_DataType
|
|
// *FieldType_VectorParam
|
|
Value isFieldType_Value `protobuf_oneof:"value"`
|
|
}
|
|
|
|
func (m *FieldType) Reset() { *m = FieldType{} }
|
|
func (m *FieldType) String() string { return proto.CompactTextString(m) }
|
|
func (*FieldType) ProtoMessage() {}
|
|
func (*FieldType) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{33} }
|
|
|
|
type isFieldType_Value interface{ isFieldType_Value() }
|
|
|
|
type FieldType_DataType struct {
|
|
DataType DataType `protobuf:"varint,1,opt,name=data_type,json=dataType,enum=suvlim.grpc.DataType,oneof"`
|
|
}
|
|
type FieldType_VectorParam struct {
|
|
VectorParam *VectorFieldParam `protobuf:"bytes,2,opt,name=vector_param,json=vectorParam,oneof"`
|
|
}
|
|
|
|
func (*FieldType_DataType) isFieldType_Value() {}
|
|
func (*FieldType_VectorParam) isFieldType_Value() {}
|
|
|
|
func (m *FieldType) GetValue() isFieldType_Value {
|
|
if m != nil {
|
|
return m.Value
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (m *FieldType) GetDataType() DataType {
|
|
if x, ok := m.GetValue().(*FieldType_DataType); ok {
|
|
return x.DataType
|
|
}
|
|
return DataType_NONE
|
|
}
|
|
|
|
func (m *FieldType) GetVectorParam() *VectorFieldParam {
|
|
if x, ok := m.GetValue().(*FieldType_VectorParam); ok {
|
|
return x.VectorParam
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// XXX_OneofFuncs is for the internal use of the proto package.
|
|
func (*FieldType) XXX_OneofFuncs() (func(msg proto.Message, b *proto.Buffer) error, func(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error), func(msg proto.Message) (n int), []interface{}) {
|
|
return _FieldType_OneofMarshaler, _FieldType_OneofUnmarshaler, _FieldType_OneofSizer, []interface{}{
|
|
(*FieldType_DataType)(nil),
|
|
(*FieldType_VectorParam)(nil),
|
|
}
|
|
}
|
|
|
|
func _FieldType_OneofMarshaler(msg proto.Message, b *proto.Buffer) error {
|
|
m := msg.(*FieldType)
|
|
// value
|
|
switch x := m.Value.(type) {
|
|
case *FieldType_DataType:
|
|
b.EncodeVarint(1<<3 | proto.WireVarint)
|
|
b.EncodeVarint(uint64(x.DataType))
|
|
case *FieldType_VectorParam:
|
|
b.EncodeVarint(2<<3 | proto.WireBytes)
|
|
if err := b.EncodeMessage(x.VectorParam); err != nil {
|
|
return err
|
|
}
|
|
case nil:
|
|
default:
|
|
return fmt.Errorf("FieldType.Value has unexpected type %T", x)
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func _FieldType_OneofUnmarshaler(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error) {
|
|
m := msg.(*FieldType)
|
|
switch tag {
|
|
case 1: // value.data_type
|
|
if wire != proto.WireVarint {
|
|
return true, proto.ErrInternalBadWireType
|
|
}
|
|
x, err := b.DecodeVarint()
|
|
m.Value = &FieldType_DataType{DataType(x)}
|
|
return true, err
|
|
case 2: // value.vector_param
|
|
if wire != proto.WireBytes {
|
|
return true, proto.ErrInternalBadWireType
|
|
}
|
|
msg := new(VectorFieldParam)
|
|
err := b.DecodeMessage(msg)
|
|
m.Value = &FieldType_VectorParam{msg}
|
|
return true, err
|
|
default:
|
|
return false, nil
|
|
}
|
|
}
|
|
|
|
func _FieldType_OneofSizer(msg proto.Message) (n int) {
|
|
m := msg.(*FieldType)
|
|
// value
|
|
switch x := m.Value.(type) {
|
|
case *FieldType_DataType:
|
|
n += proto.SizeVarint(1<<3 | proto.WireVarint)
|
|
n += proto.SizeVarint(uint64(x.DataType))
|
|
case *FieldType_VectorParam:
|
|
s := proto.Size(x.VectorParam)
|
|
n += proto.SizeVarint(2<<3 | proto.WireBytes)
|
|
n += proto.SizeVarint(uint64(s))
|
|
n += s
|
|
case nil:
|
|
default:
|
|
panic(fmt.Sprintf("proto: unexpected type %T in oneof", x))
|
|
}
|
|
return n
|
|
}
|
|
|
|
// *
|
|
// @brief Field parameters
|
|
type FieldParam struct {
|
|
Id uint64 `protobuf:"varint,1,opt,name=id" json:"id,omitempty"`
|
|
Name string `protobuf:"bytes,2,opt,name=name" json:"name,omitempty"`
|
|
Type DataType `protobuf:"varint,3,opt,name=type,enum=suvlim.grpc.DataType" json:"type,omitempty"`
|
|
IndexParams []*KeyValuePair `protobuf:"bytes,4,rep,name=index_params,json=indexParams" json:"index_params,omitempty"`
|
|
ExtraParams []*KeyValuePair `protobuf:"bytes,5,rep,name=extra_params,json=extraParams" json:"extra_params,omitempty"`
|
|
}
|
|
|
|
func (m *FieldParam) Reset() { *m = FieldParam{} }
|
|
func (m *FieldParam) String() string { return proto.CompactTextString(m) }
|
|
func (*FieldParam) ProtoMessage() {}
|
|
func (*FieldParam) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{34} }
|
|
|
|
func (m *FieldParam) GetId() uint64 {
|
|
if m != nil {
|
|
return m.Id
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (m *FieldParam) GetName() string {
|
|
if m != nil {
|
|
return m.Name
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (m *FieldParam) GetType() DataType {
|
|
if m != nil {
|
|
return m.Type
|
|
}
|
|
return DataType_NONE
|
|
}
|
|
|
|
func (m *FieldParam) GetIndexParams() []*KeyValuePair {
|
|
if m != nil {
|
|
return m.IndexParams
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (m *FieldParam) GetExtraParams() []*KeyValuePair {
|
|
if m != nil {
|
|
return m.ExtraParams
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// *
|
|
// @brief Vector field record
|
|
type VectorFieldRecord struct {
|
|
Value []*VectorRowRecord `protobuf:"bytes,1,rep,name=value" json:"value,omitempty"`
|
|
}
|
|
|
|
func (m *VectorFieldRecord) Reset() { *m = VectorFieldRecord{} }
|
|
func (m *VectorFieldRecord) String() string { return proto.CompactTextString(m) }
|
|
func (*VectorFieldRecord) ProtoMessage() {}
|
|
func (*VectorFieldRecord) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{35} }
|
|
|
|
func (m *VectorFieldRecord) GetValue() []*VectorRowRecord {
|
|
if m != nil {
|
|
return m.Value
|
|
}
|
|
return nil
|
|
}
|
|
|
|
type TermQuery struct {
|
|
FieldName string `protobuf:"bytes,1,opt,name=field_name,json=fieldName" json:"field_name,omitempty"`
|
|
IntValue []int64 `protobuf:"varint,2,rep,packed,name=int_value,json=intValue" json:"int_value,omitempty"`
|
|
DoubleValue []float64 `protobuf:"fixed64,3,rep,packed,name=double_value,json=doubleValue" json:"double_value,omitempty"`
|
|
ValueNum int64 `protobuf:"varint,4,opt,name=value_num,json=valueNum" json:"value_num,omitempty"`
|
|
Boost float32 `protobuf:"fixed32,5,opt,name=boost" json:"boost,omitempty"`
|
|
ExtraParams []*KeyValuePair `protobuf:"bytes,6,rep,name=extra_params,json=extraParams" json:"extra_params,omitempty"`
|
|
}
|
|
|
|
func (m *TermQuery) Reset() { *m = TermQuery{} }
|
|
func (m *TermQuery) String() string { return proto.CompactTextString(m) }
|
|
func (*TermQuery) ProtoMessage() {}
|
|
func (*TermQuery) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{36} }
|
|
|
|
func (m *TermQuery) GetFieldName() string {
|
|
if m != nil {
|
|
return m.FieldName
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (m *TermQuery) GetIntValue() []int64 {
|
|
if m != nil {
|
|
return m.IntValue
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (m *TermQuery) GetDoubleValue() []float64 {
|
|
if m != nil {
|
|
return m.DoubleValue
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (m *TermQuery) GetValueNum() int64 {
|
|
if m != nil {
|
|
return m.ValueNum
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (m *TermQuery) GetBoost() float32 {
|
|
if m != nil {
|
|
return m.Boost
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (m *TermQuery) GetExtraParams() []*KeyValuePair {
|
|
if m != nil {
|
|
return m.ExtraParams
|
|
}
|
|
return nil
|
|
}
|
|
|
|
type CompareExpr struct {
|
|
Operator CompareOperator `protobuf:"varint,1,opt,name=operator,enum=suvlim.grpc.CompareOperator" json:"operator,omitempty"`
|
|
Operand string `protobuf:"bytes,2,opt,name=operand" json:"operand,omitempty"`
|
|
}
|
|
|
|
func (m *CompareExpr) Reset() { *m = CompareExpr{} }
|
|
func (m *CompareExpr) String() string { return proto.CompactTextString(m) }
|
|
func (*CompareExpr) ProtoMessage() {}
|
|
func (*CompareExpr) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{37} }
|
|
|
|
func (m *CompareExpr) GetOperator() CompareOperator {
|
|
if m != nil {
|
|
return m.Operator
|
|
}
|
|
return CompareOperator_LT
|
|
}
|
|
|
|
func (m *CompareExpr) GetOperand() string {
|
|
if m != nil {
|
|
return m.Operand
|
|
}
|
|
return ""
|
|
}
|
|
|
|
type RangeQuery struct {
|
|
FieldName string `protobuf:"bytes,1,opt,name=field_name,json=fieldName" json:"field_name,omitempty"`
|
|
Operand []*CompareExpr `protobuf:"bytes,2,rep,name=operand" json:"operand,omitempty"`
|
|
Boost float32 `protobuf:"fixed32,3,opt,name=boost" json:"boost,omitempty"`
|
|
ExtraParams []*KeyValuePair `protobuf:"bytes,4,rep,name=extra_params,json=extraParams" json:"extra_params,omitempty"`
|
|
}
|
|
|
|
func (m *RangeQuery) Reset() { *m = RangeQuery{} }
|
|
func (m *RangeQuery) String() string { return proto.CompactTextString(m) }
|
|
func (*RangeQuery) ProtoMessage() {}
|
|
func (*RangeQuery) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{38} }
|
|
|
|
func (m *RangeQuery) GetFieldName() string {
|
|
if m != nil {
|
|
return m.FieldName
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (m *RangeQuery) GetOperand() []*CompareExpr {
|
|
if m != nil {
|
|
return m.Operand
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (m *RangeQuery) GetBoost() float32 {
|
|
if m != nil {
|
|
return m.Boost
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (m *RangeQuery) GetExtraParams() []*KeyValuePair {
|
|
if m != nil {
|
|
return m.ExtraParams
|
|
}
|
|
return nil
|
|
}
|
|
|
|
type VectorQuery struct {
|
|
FieldName string `protobuf:"bytes,1,opt,name=field_name,json=fieldName" json:"field_name,omitempty"`
|
|
QueryBoost float32 `protobuf:"fixed32,2,opt,name=query_boost,json=queryBoost" json:"query_boost,omitempty"`
|
|
Records []*VectorRowRecord `protobuf:"bytes,3,rep,name=records" json:"records,omitempty"`
|
|
Topk int64 `protobuf:"varint,4,opt,name=topk" json:"topk,omitempty"`
|
|
ExtraParams []*KeyValuePair `protobuf:"bytes,5,rep,name=extra_params,json=extraParams" json:"extra_params,omitempty"`
|
|
}
|
|
|
|
func (m *VectorQuery) Reset() { *m = VectorQuery{} }
|
|
func (m *VectorQuery) String() string { return proto.CompactTextString(m) }
|
|
func (*VectorQuery) ProtoMessage() {}
|
|
func (*VectorQuery) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{39} }
|
|
|
|
func (m *VectorQuery) GetFieldName() string {
|
|
if m != nil {
|
|
return m.FieldName
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (m *VectorQuery) GetQueryBoost() float32 {
|
|
if m != nil {
|
|
return m.QueryBoost
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (m *VectorQuery) GetRecords() []*VectorRowRecord {
|
|
if m != nil {
|
|
return m.Records
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (m *VectorQuery) GetTopk() int64 {
|
|
if m != nil {
|
|
return m.Topk
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (m *VectorQuery) GetExtraParams() []*KeyValuePair {
|
|
if m != nil {
|
|
return m.ExtraParams
|
|
}
|
|
return nil
|
|
}
|
|
|
|
type BooleanQuery struct {
|
|
Occur Occur `protobuf:"varint,1,opt,name=occur,enum=suvlim.grpc.Occur" json:"occur,omitempty"`
|
|
GeneralQuery []*GeneralQuery `protobuf:"bytes,2,rep,name=general_query,json=generalQuery" json:"general_query,omitempty"`
|
|
}
|
|
|
|
func (m *BooleanQuery) Reset() { *m = BooleanQuery{} }
|
|
func (m *BooleanQuery) String() string { return proto.CompactTextString(m) }
|
|
func (*BooleanQuery) ProtoMessage() {}
|
|
func (*BooleanQuery) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{40} }
|
|
|
|
func (m *BooleanQuery) GetOccur() Occur {
|
|
if m != nil {
|
|
return m.Occur
|
|
}
|
|
return Occur_INVALID
|
|
}
|
|
|
|
func (m *BooleanQuery) GetGeneralQuery() []*GeneralQuery {
|
|
if m != nil {
|
|
return m.GeneralQuery
|
|
}
|
|
return nil
|
|
}
|
|
|
|
type GeneralQuery struct {
|
|
// Types that are valid to be assigned to Query:
|
|
// *GeneralQuery_BooleanQuery
|
|
// *GeneralQuery_TermQuery
|
|
// *GeneralQuery_RangeQuery
|
|
// *GeneralQuery_VectorQuery
|
|
Query isGeneralQuery_Query `protobuf_oneof:"query"`
|
|
}
|
|
|
|
func (m *GeneralQuery) Reset() { *m = GeneralQuery{} }
|
|
func (m *GeneralQuery) String() string { return proto.CompactTextString(m) }
|
|
func (*GeneralQuery) ProtoMessage() {}
|
|
func (*GeneralQuery) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{41} }
|
|
|
|
type isGeneralQuery_Query interface{ isGeneralQuery_Query() }
|
|
|
|
type GeneralQuery_BooleanQuery struct {
|
|
BooleanQuery *BooleanQuery `protobuf:"bytes,1,opt,name=boolean_query,json=booleanQuery,oneof"`
|
|
}
|
|
type GeneralQuery_TermQuery struct {
|
|
TermQuery *TermQuery `protobuf:"bytes,2,opt,name=term_query,json=termQuery,oneof"`
|
|
}
|
|
type GeneralQuery_RangeQuery struct {
|
|
RangeQuery *RangeQuery `protobuf:"bytes,3,opt,name=range_query,json=rangeQuery,oneof"`
|
|
}
|
|
type GeneralQuery_VectorQuery struct {
|
|
VectorQuery *VectorQuery `protobuf:"bytes,4,opt,name=vector_query,json=vectorQuery,oneof"`
|
|
}
|
|
|
|
func (*GeneralQuery_BooleanQuery) isGeneralQuery_Query() {}
|
|
func (*GeneralQuery_TermQuery) isGeneralQuery_Query() {}
|
|
func (*GeneralQuery_RangeQuery) isGeneralQuery_Query() {}
|
|
func (*GeneralQuery_VectorQuery) isGeneralQuery_Query() {}
|
|
|
|
func (m *GeneralQuery) GetQuery() isGeneralQuery_Query {
|
|
if m != nil {
|
|
return m.Query
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (m *GeneralQuery) GetBooleanQuery() *BooleanQuery {
|
|
if x, ok := m.GetQuery().(*GeneralQuery_BooleanQuery); ok {
|
|
return x.BooleanQuery
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (m *GeneralQuery) GetTermQuery() *TermQuery {
|
|
if x, ok := m.GetQuery().(*GeneralQuery_TermQuery); ok {
|
|
return x.TermQuery
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (m *GeneralQuery) GetRangeQuery() *RangeQuery {
|
|
if x, ok := m.GetQuery().(*GeneralQuery_RangeQuery); ok {
|
|
return x.RangeQuery
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (m *GeneralQuery) GetVectorQuery() *VectorQuery {
|
|
if x, ok := m.GetQuery().(*GeneralQuery_VectorQuery); ok {
|
|
return x.VectorQuery
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// XXX_OneofFuncs is for the internal use of the proto package.
|
|
func (*GeneralQuery) XXX_OneofFuncs() (func(msg proto.Message, b *proto.Buffer) error, func(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error), func(msg proto.Message) (n int), []interface{}) {
|
|
return _GeneralQuery_OneofMarshaler, _GeneralQuery_OneofUnmarshaler, _GeneralQuery_OneofSizer, []interface{}{
|
|
(*GeneralQuery_BooleanQuery)(nil),
|
|
(*GeneralQuery_TermQuery)(nil),
|
|
(*GeneralQuery_RangeQuery)(nil),
|
|
(*GeneralQuery_VectorQuery)(nil),
|
|
}
|
|
}
|
|
|
|
func _GeneralQuery_OneofMarshaler(msg proto.Message, b *proto.Buffer) error {
|
|
m := msg.(*GeneralQuery)
|
|
// query
|
|
switch x := m.Query.(type) {
|
|
case *GeneralQuery_BooleanQuery:
|
|
b.EncodeVarint(1<<3 | proto.WireBytes)
|
|
if err := b.EncodeMessage(x.BooleanQuery); err != nil {
|
|
return err
|
|
}
|
|
case *GeneralQuery_TermQuery:
|
|
b.EncodeVarint(2<<3 | proto.WireBytes)
|
|
if err := b.EncodeMessage(x.TermQuery); err != nil {
|
|
return err
|
|
}
|
|
case *GeneralQuery_RangeQuery:
|
|
b.EncodeVarint(3<<3 | proto.WireBytes)
|
|
if err := b.EncodeMessage(x.RangeQuery); err != nil {
|
|
return err
|
|
}
|
|
case *GeneralQuery_VectorQuery:
|
|
b.EncodeVarint(4<<3 | proto.WireBytes)
|
|
if err := b.EncodeMessage(x.VectorQuery); err != nil {
|
|
return err
|
|
}
|
|
case nil:
|
|
default:
|
|
return fmt.Errorf("GeneralQuery.Query has unexpected type %T", x)
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func _GeneralQuery_OneofUnmarshaler(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error) {
|
|
m := msg.(*GeneralQuery)
|
|
switch tag {
|
|
case 1: // query.boolean_query
|
|
if wire != proto.WireBytes {
|
|
return true, proto.ErrInternalBadWireType
|
|
}
|
|
msg := new(BooleanQuery)
|
|
err := b.DecodeMessage(msg)
|
|
m.Query = &GeneralQuery_BooleanQuery{msg}
|
|
return true, err
|
|
case 2: // query.term_query
|
|
if wire != proto.WireBytes {
|
|
return true, proto.ErrInternalBadWireType
|
|
}
|
|
msg := new(TermQuery)
|
|
err := b.DecodeMessage(msg)
|
|
m.Query = &GeneralQuery_TermQuery{msg}
|
|
return true, err
|
|
case 3: // query.range_query
|
|
if wire != proto.WireBytes {
|
|
return true, proto.ErrInternalBadWireType
|
|
}
|
|
msg := new(RangeQuery)
|
|
err := b.DecodeMessage(msg)
|
|
m.Query = &GeneralQuery_RangeQuery{msg}
|
|
return true, err
|
|
case 4: // query.vector_query
|
|
if wire != proto.WireBytes {
|
|
return true, proto.ErrInternalBadWireType
|
|
}
|
|
msg := new(VectorQuery)
|
|
err := b.DecodeMessage(msg)
|
|
m.Query = &GeneralQuery_VectorQuery{msg}
|
|
return true, err
|
|
default:
|
|
return false, nil
|
|
}
|
|
}
|
|
|
|
func _GeneralQuery_OneofSizer(msg proto.Message) (n int) {
|
|
m := msg.(*GeneralQuery)
|
|
// query
|
|
switch x := m.Query.(type) {
|
|
case *GeneralQuery_BooleanQuery:
|
|
s := proto.Size(x.BooleanQuery)
|
|
n += proto.SizeVarint(1<<3 | proto.WireBytes)
|
|
n += proto.SizeVarint(uint64(s))
|
|
n += s
|
|
case *GeneralQuery_TermQuery:
|
|
s := proto.Size(x.TermQuery)
|
|
n += proto.SizeVarint(2<<3 | proto.WireBytes)
|
|
n += proto.SizeVarint(uint64(s))
|
|
n += s
|
|
case *GeneralQuery_RangeQuery:
|
|
s := proto.Size(x.RangeQuery)
|
|
n += proto.SizeVarint(3<<3 | proto.WireBytes)
|
|
n += proto.SizeVarint(uint64(s))
|
|
n += s
|
|
case *GeneralQuery_VectorQuery:
|
|
s := proto.Size(x.VectorQuery)
|
|
n += proto.SizeVarint(4<<3 | proto.WireBytes)
|
|
n += proto.SizeVarint(uint64(s))
|
|
n += s
|
|
case nil:
|
|
default:
|
|
panic(fmt.Sprintf("proto: unexpected type %T in oneof", x))
|
|
}
|
|
return n
|
|
}
|
|
|
|
type SearchParamPB struct {
|
|
CollectionName string `protobuf:"bytes,1,opt,name=collection_name,json=collectionName" json:"collection_name,omitempty"`
|
|
PartitionTagArray []string `protobuf:"bytes,2,rep,name=partition_tag_array,json=partitionTagArray" json:"partition_tag_array,omitempty"`
|
|
GeneralQuery *GeneralQuery `protobuf:"bytes,3,opt,name=general_query,json=generalQuery" json:"general_query,omitempty"`
|
|
ExtraParams []*KeyValuePair `protobuf:"bytes,4,rep,name=extra_params,json=extraParams" json:"extra_params,omitempty"`
|
|
}
|
|
|
|
func (m *SearchParamPB) Reset() { *m = SearchParamPB{} }
|
|
func (m *SearchParamPB) String() string { return proto.CompactTextString(m) }
|
|
func (*SearchParamPB) ProtoMessage() {}
|
|
func (*SearchParamPB) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{42} }
|
|
|
|
func (m *SearchParamPB) GetCollectionName() string {
|
|
if m != nil {
|
|
return m.CollectionName
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (m *SearchParamPB) GetPartitionTagArray() []string {
|
|
if m != nil {
|
|
return m.PartitionTagArray
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (m *SearchParamPB) GetGeneralQuery() *GeneralQuery {
|
|
if m != nil {
|
|
return m.GeneralQuery
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (m *SearchParamPB) GetExtraParams() []*KeyValuePair {
|
|
if m != nil {
|
|
return m.ExtraParams
|
|
}
|
|
return nil
|
|
}
|
|
|
|
type InsertOrDeleteMsg struct {
|
|
CollectionName string `protobuf:"bytes,1,opt,name=collection_name,json=collectionName" json:"collection_name,omitempty"`
|
|
RowsData *RowData `protobuf:"bytes,2,opt,name=rows_data,json=rowsData" json:"rows_data,omitempty"`
|
|
Uid int64 `protobuf:"varint,3,opt,name=uid" json:"uid,omitempty"`
|
|
PartitionTag string `protobuf:"bytes,4,opt,name=partition_tag,json=partitionTag" json:"partition_tag,omitempty"`
|
|
Timestamp int64 `protobuf:"varint,5,opt,name=timestamp" json:"timestamp,omitempty"`
|
|
SegmentId int64 `protobuf:"varint,6,opt,name=segment_id,json=segmentId" json:"segment_id,omitempty"`
|
|
ChannelId int64 `protobuf:"varint,7,opt,name=channel_id,json=channelId" json:"channel_id,omitempty"`
|
|
Op OpType `protobuf:"varint,8,opt,name=op,enum=suvlim.grpc.OpType" json:"op,omitempty"`
|
|
ClientId int64 `protobuf:"varint,9,opt,name=client_id,json=clientId" json:"client_id,omitempty"`
|
|
ExtraParams []*KeyValuePair `protobuf:"bytes,10,rep,name=extra_params,json=extraParams" json:"extra_params,omitempty"`
|
|
}
|
|
|
|
func (m *InsertOrDeleteMsg) Reset() { *m = InsertOrDeleteMsg{} }
|
|
func (m *InsertOrDeleteMsg) String() string { return proto.CompactTextString(m) }
|
|
func (*InsertOrDeleteMsg) ProtoMessage() {}
|
|
func (*InsertOrDeleteMsg) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{43} }
|
|
|
|
func (m *InsertOrDeleteMsg) GetCollectionName() string {
|
|
if m != nil {
|
|
return m.CollectionName
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (m *InsertOrDeleteMsg) GetRowsData() *RowData {
|
|
if m != nil {
|
|
return m.RowsData
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (m *InsertOrDeleteMsg) GetUid() int64 {
|
|
if m != nil {
|
|
return m.Uid
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (m *InsertOrDeleteMsg) GetPartitionTag() string {
|
|
if m != nil {
|
|
return m.PartitionTag
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (m *InsertOrDeleteMsg) GetTimestamp() int64 {
|
|
if m != nil {
|
|
return m.Timestamp
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (m *InsertOrDeleteMsg) GetSegmentId() int64 {
|
|
if m != nil {
|
|
return m.SegmentId
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (m *InsertOrDeleteMsg) GetChannelId() int64 {
|
|
if m != nil {
|
|
return m.ChannelId
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (m *InsertOrDeleteMsg) GetOp() OpType {
|
|
if m != nil {
|
|
return m.Op
|
|
}
|
|
return OpType_INSERT
|
|
}
|
|
|
|
func (m *InsertOrDeleteMsg) GetClientId() int64 {
|
|
if m != nil {
|
|
return m.ClientId
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (m *InsertOrDeleteMsg) GetExtraParams() []*KeyValuePair {
|
|
if m != nil {
|
|
return m.ExtraParams
|
|
}
|
|
return nil
|
|
}
|
|
|
|
type SearchMsg struct {
|
|
CollectionName string `protobuf:"bytes,1,opt,name=collection_name,json=collectionName" json:"collection_name,omitempty"`
|
|
Records *VectorRowRecord `protobuf:"bytes,2,opt,name=records" json:"records,omitempty"`
|
|
PartitionTag string `protobuf:"bytes,3,opt,name=partition_tag,json=partitionTag" json:"partition_tag,omitempty"`
|
|
Uid int64 `protobuf:"varint,4,opt,name=uid" json:"uid,omitempty"`
|
|
Timestamp int64 `protobuf:"varint,5,opt,name=timestamp" json:"timestamp,omitempty"`
|
|
ClientId int64 `protobuf:"varint,6,opt,name=client_id,json=clientId" json:"client_id,omitempty"`
|
|
ExtraParams []*KeyValuePair `protobuf:"bytes,7,rep,name=extra_params,json=extraParams" json:"extra_params,omitempty"`
|
|
}
|
|
|
|
func (m *SearchMsg) Reset() { *m = SearchMsg{} }
|
|
func (m *SearchMsg) String() string { return proto.CompactTextString(m) }
|
|
func (*SearchMsg) ProtoMessage() {}
|
|
func (*SearchMsg) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{44} }
|
|
|
|
func (m *SearchMsg) GetCollectionName() string {
|
|
if m != nil {
|
|
return m.CollectionName
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (m *SearchMsg) GetRecords() *VectorRowRecord {
|
|
if m != nil {
|
|
return m.Records
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (m *SearchMsg) GetPartitionTag() string {
|
|
if m != nil {
|
|
return m.PartitionTag
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (m *SearchMsg) GetUid() int64 {
|
|
if m != nil {
|
|
return m.Uid
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (m *SearchMsg) GetTimestamp() int64 {
|
|
if m != nil {
|
|
return m.Timestamp
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (m *SearchMsg) GetClientId() int64 {
|
|
if m != nil {
|
|
return m.ClientId
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (m *SearchMsg) GetExtraParams() []*KeyValuePair {
|
|
if m != nil {
|
|
return m.ExtraParams
|
|
}
|
|
return nil
|
|
}
|
|
|
|
type TimeSyncMsg struct {
|
|
ClientId int64 `protobuf:"varint,1,opt,name=ClientId,json=clientId" json:"ClientId,omitempty"`
|
|
Timestamp int64 `protobuf:"varint,2,opt,name=Timestamp,json=timestamp" json:"Timestamp,omitempty"`
|
|
MsgType OpType `protobuf:"varint,3,opt,name=MsgType,json=msgType,enum=suvlim.grpc.OpType" json:"MsgType,omitempty"`
|
|
}
|
|
|
|
func (m *TimeSyncMsg) Reset() { *m = TimeSyncMsg{} }
|
|
func (m *TimeSyncMsg) String() string { return proto.CompactTextString(m) }
|
|
func (*TimeSyncMsg) ProtoMessage() {}
|
|
func (*TimeSyncMsg) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{45} }
|
|
|
|
func (m *TimeSyncMsg) GetClientId() int64 {
|
|
if m != nil {
|
|
return m.ClientId
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (m *TimeSyncMsg) GetTimestamp() int64 {
|
|
if m != nil {
|
|
return m.Timestamp
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (m *TimeSyncMsg) GetMsgType() OpType {
|
|
if m != nil {
|
|
return m.MsgType
|
|
}
|
|
return OpType_INSERT
|
|
}
|
|
|
|
type SegmentRecord struct {
|
|
Uid int64 `protobuf:"varint,1,opt,name=uid" json:"uid,omitempty"`
|
|
SegmentId []int64 `protobuf:"varint,2,rep,packed,name=segment_id,json=segmentId" json:"segment_id,omitempty"`
|
|
}
|
|
|
|
func (m *SegmentRecord) Reset() { *m = SegmentRecord{} }
|
|
func (m *SegmentRecord) String() string { return proto.CompactTextString(m) }
|
|
func (*SegmentRecord) ProtoMessage() {}
|
|
func (*SegmentRecord) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{46} }
|
|
|
|
func (m *SegmentRecord) GetUid() int64 {
|
|
if m != nil {
|
|
return m.Uid
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (m *SegmentRecord) GetSegmentId() []int64 {
|
|
if m != nil {
|
|
return m.SegmentId
|
|
}
|
|
return nil
|
|
}
|
|
|
|
type Key2SegMsg struct {
|
|
ClientId int64 `protobuf:"varint,1,opt,name=client_id,json=clientId" json:"client_id,omitempty"`
|
|
Records *SegmentRecord `protobuf:"bytes,2,opt,name=records" json:"records,omitempty"`
|
|
MsgType OpType `protobuf:"varint,3,opt,name=msg_type,json=msgType,enum=suvlim.grpc.OpType" json:"msg_type,omitempty"`
|
|
}
|
|
|
|
func (m *Key2SegMsg) Reset() { *m = Key2SegMsg{} }
|
|
func (m *Key2SegMsg) String() string { return proto.CompactTextString(m) }
|
|
func (*Key2SegMsg) ProtoMessage() {}
|
|
func (*Key2SegMsg) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{47} }
|
|
|
|
func (m *Key2SegMsg) GetClientId() int64 {
|
|
if m != nil {
|
|
return m.ClientId
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (m *Key2SegMsg) GetRecords() *SegmentRecord {
|
|
if m != nil {
|
|
return m.Records
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (m *Key2SegMsg) GetMsgType() OpType {
|
|
if m != nil {
|
|
return m.MsgType
|
|
}
|
|
return OpType_INSERT
|
|
}
|
|
|
|
func init() {
|
|
proto.RegisterType((*Status)(nil), "suvlim.grpc.Status")
|
|
proto.RegisterType((*KeyValuePair)(nil), "suvlim.grpc.KeyValuePair")
|
|
proto.RegisterType((*CollectionName)(nil), "suvlim.grpc.CollectionName")
|
|
proto.RegisterType((*CollectionNameList)(nil), "suvlim.grpc.CollectionNameList")
|
|
proto.RegisterType((*FieldName)(nil), "suvlim.grpc.FieldName")
|
|
proto.RegisterType((*Mapping)(nil), "suvlim.grpc.Mapping")
|
|
proto.RegisterType((*MappingList)(nil), "suvlim.grpc.MappingList")
|
|
proto.RegisterType((*PartitionParam)(nil), "suvlim.grpc.PartitionParam")
|
|
proto.RegisterType((*PartitionList)(nil), "suvlim.grpc.PartitionList")
|
|
proto.RegisterType((*VectorRowRecord)(nil), "suvlim.grpc.VectorRowRecord")
|
|
proto.RegisterType((*EntityIds)(nil), "suvlim.grpc.EntityIds")
|
|
proto.RegisterType((*VectorRecord)(nil), "suvlim.grpc.VectorRecord")
|
|
proto.RegisterType((*VectorParam)(nil), "suvlim.grpc.VectorParam")
|
|
proto.RegisterType((*FieldMeta)(nil), "suvlim.grpc.FieldMeta")
|
|
proto.RegisterType((*Schema)(nil), "suvlim.grpc.Schema")
|
|
proto.RegisterType((*RowData)(nil), "suvlim.grpc.RowData")
|
|
proto.RegisterType((*InsertParam)(nil), "suvlim.grpc.InsertParam")
|
|
proto.RegisterType((*SearchParam)(nil), "suvlim.grpc.SearchParam")
|
|
proto.RegisterType((*SearchInSegmentParam)(nil), "suvlim.grpc.SearchInSegmentParam")
|
|
proto.RegisterType((*Entities)(nil), "suvlim.grpc.Entities")
|
|
proto.RegisterType((*QueryResult)(nil), "suvlim.grpc.QueryResult")
|
|
proto.RegisterType((*StringReply)(nil), "suvlim.grpc.StringReply")
|
|
proto.RegisterType((*BoolReply)(nil), "suvlim.grpc.BoolReply")
|
|
proto.RegisterType((*CollectionRowCount)(nil), "suvlim.grpc.CollectionRowCount")
|
|
proto.RegisterType((*Command)(nil), "suvlim.grpc.Command")
|
|
proto.RegisterType((*IndexParam)(nil), "suvlim.grpc.IndexParam")
|
|
proto.RegisterType((*FlushParam)(nil), "suvlim.grpc.FlushParam")
|
|
proto.RegisterType((*CompactParam)(nil), "suvlim.grpc.CompactParam")
|
|
proto.RegisterType((*DeleteByIDParam)(nil), "suvlim.grpc.DeleteByIDParam")
|
|
proto.RegisterType((*CollectionInfo)(nil), "suvlim.grpc.CollectionInfo")
|
|
proto.RegisterType((*GetEntityIDsParam)(nil), "suvlim.grpc.GetEntityIDsParam")
|
|
proto.RegisterType((*EntityIdentity)(nil), "suvlim.grpc.EntityIdentity")
|
|
proto.RegisterType((*VectorFieldParam)(nil), "suvlim.grpc.VectorFieldParam")
|
|
proto.RegisterType((*FieldType)(nil), "suvlim.grpc.FieldType")
|
|
proto.RegisterType((*FieldParam)(nil), "suvlim.grpc.FieldParam")
|
|
proto.RegisterType((*VectorFieldRecord)(nil), "suvlim.grpc.VectorFieldRecord")
|
|
proto.RegisterType((*TermQuery)(nil), "suvlim.grpc.TermQuery")
|
|
proto.RegisterType((*CompareExpr)(nil), "suvlim.grpc.CompareExpr")
|
|
proto.RegisterType((*RangeQuery)(nil), "suvlim.grpc.RangeQuery")
|
|
proto.RegisterType((*VectorQuery)(nil), "suvlim.grpc.VectorQuery")
|
|
proto.RegisterType((*BooleanQuery)(nil), "suvlim.grpc.BooleanQuery")
|
|
proto.RegisterType((*GeneralQuery)(nil), "suvlim.grpc.GeneralQuery")
|
|
proto.RegisterType((*SearchParamPB)(nil), "suvlim.grpc.SearchParamPB")
|
|
proto.RegisterType((*InsertOrDeleteMsg)(nil), "suvlim.grpc.InsertOrDeleteMsg")
|
|
proto.RegisterType((*SearchMsg)(nil), "suvlim.grpc.SearchMsg")
|
|
proto.RegisterType((*TimeSyncMsg)(nil), "suvlim.grpc.TimeSyncMsg")
|
|
proto.RegisterType((*SegmentRecord)(nil), "suvlim.grpc.SegmentRecord")
|
|
proto.RegisterType((*Key2SegMsg)(nil), "suvlim.grpc.Key2SegMsg")
|
|
proto.RegisterEnum("suvlim.grpc.ErrorCode", ErrorCode_name, ErrorCode_value)
|
|
proto.RegisterEnum("suvlim.grpc.DataType", DataType_name, DataType_value)
|
|
proto.RegisterEnum("suvlim.grpc.CompareOperator", CompareOperator_name, CompareOperator_value)
|
|
proto.RegisterEnum("suvlim.grpc.Occur", Occur_name, Occur_value)
|
|
proto.RegisterEnum("suvlim.grpc.OpType", OpType_name, OpType_value)
|
|
}
|
|
|
|
func init() { proto.RegisterFile("suvlim.proto", fileDescriptor0) }
|
|
|
|
var fileDescriptor0 = []byte{
|
|
// 2881 bytes of a gzipped FileDescriptorProto
|
|
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x5a, 0xcd, 0x73, 0xdb, 0xc6,
|
|
0x15, 0x27, 0x08, 0x8a, 0x24, 0x1e, 0x28, 0x09, 0x5a, 0xcb, 0x36, 0x2d, 0xdb, 0x8d, 0x83, 0xce,
|
|
0xb4, 0x8e, 0x3b, 0x75, 0x13, 0x25, 0xb5, 0xdd, 0x3a, 0x49, 0xc3, 0x0f, 0x48, 0x42, 0xcd, 0x0f,
|
|
0x79, 0x09, 0x39, 0x71, 0x32, 0x1d, 0x14, 0x22, 0xd7, 0x34, 0x1a, 0x92, 0x60, 0x01, 0x50, 0xb2,
|
|
0xae, 0xbd, 0xb7, 0x9d, 0x1e, 0x3b, 0xd3, 0x4b, 0xfb, 0x2f, 0xf4, 0xff, 0xe8, 0x35, 0x87, 0xcc,
|
|
0xf4, 0xd8, 0xe9, 0xdf, 0xd0, 0x53, 0x67, 0x3f, 0x40, 0x02, 0x20, 0x29, 0x93, 0x51, 0x7b, 0xd2,
|
|
0xf2, 0xed, 0xbe, 0xb7, 0xbf, 0xf7, 0xb1, 0x6f, 0xdf, 0x5b, 0x08, 0x4a, 0xc1, 0xe4, 0x6c, 0xe0,
|
|
0x0e, 0x1f, 0x8e, 0x7d, 0x2f, 0xf4, 0x90, 0x2a, 0x7e, 0xf5, 0xfd, 0x71, 0x57, 0xff, 0x1c, 0xf2,
|
|
0x9d, 0xd0, 0x09, 0x27, 0x01, 0xfa, 0x29, 0x00, 0xf1, 0x7d, 0xcf, 0xb7, 0xbb, 0x5e, 0x8f, 0x94,
|
|
0xa5, 0x7b, 0xd2, 0xfd, 0xad, 0xfd, 0x1b, 0x0f, 0x63, 0x6b, 0x1f, 0x1a, 0x74, 0xba, 0xe6, 0xf5,
|
|
0x08, 0x56, 0x48, 0x34, 0x44, 0x37, 0x20, 0xef, 0x13, 0x27, 0xf0, 0x46, 0xe5, 0xec, 0x3d, 0xe9,
|
|
0xbe, 0x82, 0xc5, 0x2f, 0xfd, 0x11, 0x94, 0x9e, 0x91, 0x8b, 0x17, 0xce, 0x60, 0x42, 0x8e, 0x1d,
|
|
0xd7, 0x47, 0x1a, 0xc8, 0x5f, 0x93, 0x0b, 0x26, 0x57, 0xc1, 0x74, 0x88, 0x76, 0x61, 0xe3, 0x8c,
|
|
0x4e, 0x0b, 0x46, 0xfe, 0x43, 0xff, 0x19, 0x6c, 0xd5, 0xbc, 0xc1, 0x80, 0x74, 0x43, 0xd7, 0x1b,
|
|
0xb5, 0x9c, 0x21, 0x41, 0x3f, 0x84, 0xed, 0xee, 0x94, 0x62, 0x8f, 0x9c, 0x21, 0x11, 0x52, 0xb6,
|
|
0xba, 0x89, 0x85, 0xfa, 0x00, 0x50, 0x92, 0xb5, 0xe1, 0x06, 0x21, 0xfa, 0x11, 0xe4, 0x03, 0xa6,
|
|
0x21, 0xe3, 0x52, 0xf7, 0xaf, 0x25, 0x74, 0xe2, 0xca, 0x63, 0xb1, 0x04, 0xbd, 0x07, 0x5a, 0x6a,
|
|
0xaf, 0xa0, 0x9c, 0xbd, 0x27, 0xdf, 0x57, 0xf0, 0x76, 0x72, 0xb3, 0x40, 0xef, 0x80, 0x72, 0xe0,
|
|
0x92, 0x41, 0x6f, 0x2d, 0x8c, 0xe8, 0x2e, 0xc0, 0x2b, 0xca, 0xc5, 0xd7, 0x70, 0xcd, 0x95, 0x57,
|
|
0x91, 0x1c, 0xfd, 0x1f, 0x12, 0x14, 0x9a, 0xce, 0x78, 0xec, 0x8e, 0xfa, 0xeb, 0x01, 0x5f, 0x00,
|
|
0x20, 0xbb, 0x10, 0xc0, 0x4f, 0x20, 0xcf, 0xb6, 0x0b, 0xca, 0xf2, 0x3d, 0xf9, 0xbe, 0xba, 0x7f,
|
|
0x33, 0x21, 0x95, 0x69, 0x74, 0xec, 0xf8, 0xce, 0x10, 0x8b, 0x65, 0xe8, 0x63, 0x28, 0x91, 0x37,
|
|
0xa1, 0xef, 0xd8, 0x63, 0x4a, 0x0e, 0xca, 0x39, 0xc6, 0x76, 0x2b, 0xc1, 0x16, 0xf7, 0x34, 0x56,
|
|
0xd9, 0x72, 0x26, 0x24, 0xd0, 0x03, 0x50, 0x85, 0x3e, 0xeb, 0x3b, 0xe3, 0x31, 0x94, 0x86, 0x9c,
|
|
0xd7, 0x1e, 0xb8, 0x41, 0xc8, 0x1c, 0xa1, 0xee, 0xef, 0x26, 0x58, 0x84, 0x70, 0xac, 0x0e, 0x67,
|
|
0xbb, 0xe8, 0xcf, 0x60, 0xeb, 0xd8, 0xf1, 0x43, 0x97, 0x2a, 0xcd, 0x70, 0xac, 0xee, 0x1f, 0x0d,
|
|
0xe4, 0xd0, 0xe9, 0x0b, 0xdb, 0xd1, 0xa1, 0x3e, 0x80, 0xcd, 0xa9, 0xb0, 0xf5, 0x75, 0x78, 0x08,
|
|
0xd7, 0xc6, 0x11, 0xb7, 0x1d, 0x3a, 0x7d, 0xdb, 0xf1, 0x7d, 0xe7, 0x42, 0xc4, 0xd4, 0xce, 0x74,
|
|
0xca, 0x72, 0xfa, 0x15, 0x3a, 0xa1, 0x3f, 0x87, 0xed, 0x17, 0xa4, 0x1b, 0x7a, 0x3e, 0xf6, 0xce,
|
|
0x31, 0xe9, 0x7a, 0x7e, 0x8f, 0x85, 0xcc, 0xc0, 0x73, 0x42, 0xbb, 0xe7, 0x84, 0x4e, 0x59, 0xba,
|
|
0x27, 0xdf, 0xcf, 0x62, 0x85, 0x51, 0xea, 0x4e, 0xe8, 0xa0, 0x77, 0x40, 0x3d, 0x75, 0x47, 0x8e,
|
|
0x7f, 0xc1, 0xe7, 0x29, 0xf2, 0x12, 0x06, 0x4e, 0xa2, 0x0b, 0xf4, 0x5f, 0x83, 0x62, 0x8c, 0x42,
|
|
0x37, 0xbc, 0x30, 0x7b, 0xc1, 0x7a, 0xe0, 0x7f, 0x00, 0xdb, 0x84, 0x71, 0xda, 0x6e, 0x2f, 0x06,
|
|
0x5c, 0xc6, 0x9b, 0x44, 0x08, 0xe4, 0xa0, 0x0f, 0xa0, 0x24, 0x40, 0x73, 0xc4, 0x8f, 0xa0, 0xe0,
|
|
0xb3, 0x51, 0xc0, 0xe0, 0xaa, 0xfb, 0x77, 0x12, 0xbb, 0xa4, 0x14, 0xc4, 0xd1, 0x62, 0xfd, 0x2b,
|
|
0x50, 0xf9, 0x1c, 0x77, 0x1a, 0x82, 0xdc, 0x6f, 0x68, 0x62, 0xe1, 0x9e, 0x62, 0x63, 0xf4, 0x04,
|
|
0xc0, 0xf7, 0xce, 0x6d, 0xce, 0xc1, 0x94, 0x4d, 0xc7, 0x62, 0x1c, 0x09, 0x56, 0xfc, 0x68, 0x17,
|
|
0xbd, 0x2f, 0xce, 0x6b, 0x93, 0x84, 0x4e, 0xea, 0x18, 0x4a, 0xa9, 0x63, 0x88, 0xde, 0x83, 0x5c,
|
|
0x78, 0x31, 0xe6, 0x47, 0x68, 0x6b, 0xff, 0x7a, 0x42, 0x3e, 0xb5, 0xa9, 0x75, 0x31, 0x26, 0x98,
|
|
0x2d, 0xa1, 0x01, 0xd3, 0x73, 0x87, 0x65, 0xf9, 0x9e, 0x74, 0x5f, 0xc6, 0x74, 0xa8, 0x57, 0x20,
|
|
0xdf, 0xe9, 0xbe, 0x26, 0x43, 0x07, 0x3d, 0x06, 0x95, 0xef, 0x32, 0x24, 0xa1, 0x13, 0xd9, 0xe2,
|
|
0xc6, 0xfc, 0x81, 0xa3, 0x90, 0x30, 0x07, 0x44, 0x87, 0x81, 0x7e, 0x17, 0x0a, 0xd8, 0x3b, 0x67,
|
|
0xee, 0x45, 0x90, 0x3b, 0x1d, 0x78, 0xa7, 0x0c, 0x63, 0x09, 0xb3, 0xb1, 0xfe, 0xd7, 0x2c, 0xa8,
|
|
0xe6, 0x28, 0x20, 0x7e, 0xb8, 0x66, 0x74, 0x53, 0xef, 0x33, 0x68, 0xc2, 0x72, 0x29, 0xef, 0xb3,
|
|
0x29, 0x2c, 0x96, 0xa0, 0x0f, 0x80, 0x5a, 0x2f, 0xe0, 0x61, 0x25, 0x2f, 0x38, 0x7b, 0x02, 0x22,
|
|
0x2e, 0xd2, 0x65, 0x0c, 0xec, 0x82, 0x80, 0xc9, 0x2d, 0x08, 0x18, 0xf4, 0x7d, 0xd8, 0x4c, 0x9c,
|
|
0x8a, 0xf2, 0x06, 0x83, 0x5b, 0x8a, 0x9f, 0x87, 0xb9, 0xc4, 0x93, 0x5f, 0x2b, 0xf1, 0xfc, 0x5b,
|
|
0x02, 0xb5, 0x43, 0x1c, 0xbf, 0xfb, 0x7a, 0x4d, 0x1b, 0x3d, 0x85, 0xd2, 0x19, 0x0b, 0x21, 0xbe,
|
|
0xaf, 0xc8, 0x3a, 0xe5, 0x05, 0x31, 0xc6, 0xf3, 0xa4, 0x7a, 0x16, 0x0b, 0x59, 0x1a, 0x0d, 0xc1,
|
|
0x80, 0x45, 0x83, 0x82, 0xe9, 0x70, 0x5e, 0xd5, 0x1c, 0x3b, 0xfa, 0x97, 0xab, 0xba, 0xb1, 0x96,
|
|
0xaa, 0xe7, 0xb0, 0xcb, 0x35, 0x35, 0x47, 0x1d, 0xd2, 0x1f, 0x92, 0x91, 0x08, 0x0b, 0x1d, 0x36,
|
|
0x5f, 0xb9, 0x03, 0x32, 0xf3, 0x85, 0xc4, 0xb6, 0x56, 0x29, 0x31, 0xf2, 0xc4, 0x53, 0x28, 0x05,
|
|
0x8c, 0x77, 0xaa, 0xad, 0x34, 0xa7, 0x6d, 0xcc, 0x8c, 0x58, 0x0d, 0x66, 0x3f, 0xf4, 0x3f, 0x4b,
|
|
0x50, 0x64, 0xa9, 0xc5, 0x25, 0x6b, 0x66, 0x16, 0x0d, 0x64, 0xb7, 0x17, 0x88, 0x6c, 0x42, 0x87,
|
|
0xe8, 0x36, 0x28, 0x67, 0xce, 0xc0, 0xed, 0xd9, 0xbe, 0x77, 0xce, 0xa2, 0xad, 0x88, 0x8b, 0x8c,
|
|
0x80, 0xbd, 0xf3, 0x64, 0x28, 0xe6, 0x56, 0x09, 0x45, 0xfd, 0x3f, 0x12, 0xa8, 0xcf, 0x27, 0xc4,
|
|
0xbf, 0xc0, 0x24, 0x98, 0x0c, 0xd6, 0xcc, 0xda, 0x1f, 0x40, 0x91, 0x08, 0xbd, 0x84, 0x45, 0x92,
|
|
0x39, 0x20, 0x52, 0x1a, 0x4f, 0x97, 0xa1, 0x9b, 0x50, 0xa0, 0x89, 0x69, 0x34, 0x89, 0x72, 0x41,
|
|
0xde, 0xf7, 0xce, 0x5b, 0x93, 0x21, 0x2d, 0x90, 0x82, 0xae, 0xe7, 0x13, 0x7e, 0x73, 0x66, 0xb1,
|
|
0xf8, 0x85, 0xee, 0x80, 0xd2, 0x73, 0x83, 0xd0, 0x19, 0x75, 0x09, 0x77, 0x78, 0x16, 0xcf, 0x08,
|
|
0x57, 0x0c, 0xfe, 0x5f, 0x81, 0xda, 0x09, 0x7d, 0x7a, 0x2f, 0x92, 0xf1, 0xe0, 0x62, 0x3d, 0xdd,
|
|
0xdf, 0x85, 0x52, 0xc0, 0x78, 0x6d, 0x9f, 0x32, 0x8b, 0xab, 0x50, 0x0d, 0x66, 0xf2, 0xf4, 0xcf,
|
|
0x41, 0xa9, 0x7a, 0xde, 0xe0, 0x3b, 0x08, 0xbf, 0x0b, 0x70, 0xea, 0x79, 0x83, 0x98, 0xe8, 0x22,
|
|
0x56, 0x4e, 0x23, 0x59, 0x7a, 0x10, 0xaf, 0xe0, 0xb0, 0x77, 0x5e, 0xf3, 0x26, 0xa3, 0x35, 0x5d,
|
|
0xf7, 0x3e, 0xec, 0xc6, 0xce, 0x39, 0x75, 0x49, 0x97, 0x0a, 0x61, 0x7b, 0xc9, 0x18, 0x75, 0xe7,
|
|
0xc4, 0xeb, 0xb7, 0xa1, 0x50, 0xf3, 0x86, 0x43, 0x67, 0xd4, 0xa3, 0x61, 0xd9, 0x1d, 0xf6, 0xa2,
|
|
0x22, 0xb5, 0x3b, 0xec, 0xe9, 0xff, 0x94, 0x00, 0xcc, 0x51, 0x8f, 0xbc, 0xe1, 0x47, 0xea, 0xff,
|
|
0x53, 0x93, 0x25, 0x6f, 0x23, 0x39, 0x7d, 0x1b, 0xdd, 0x05, 0x70, 0x29, 0x04, 0x3e, 0x9d, 0xe3,
|
|
0xd3, 0x8c, 0xc2, 0xa6, 0xaf, 0x96, 0x3c, 0x3e, 0x03, 0x38, 0x18, 0x4c, 0x02, 0x91, 0x25, 0xf7,
|
|
0xe1, 0x7a, 0x0a, 0x72, 0x22, 0x75, 0x5c, 0x4b, 0x02, 0xe7, 0xb7, 0xff, 0x09, 0x94, 0x6a, 0xde,
|
|
0x70, 0xec, 0x74, 0xd7, 0xbd, 0x8d, 0xee, 0x80, 0x12, 0xbe, 0xf6, 0x49, 0xf0, 0xda, 0x1b, 0xf0,
|
|
0xab, 0x5c, 0xc2, 0x33, 0x82, 0x7e, 0x02, 0xdb, 0x75, 0x32, 0x20, 0x21, 0xa9, 0x5e, 0x98, 0xf5,
|
|
0x35, 0x25, 0xdf, 0x82, 0x62, 0xaa, 0x62, 0x29, 0xb8, 0xa2, 0x56, 0xf9, 0x32, 0xde, 0x5f, 0x98,
|
|
0xa3, 0x57, 0xde, 0x7a, 0x3e, 0xbd, 0x0d, 0x0a, 0xad, 0x43, 0x6c, 0x77, 0xf4, 0xca, 0x13, 0xde,
|
|
0x2c, 0x52, 0x02, 0x95, 0xa4, 0x7f, 0x05, 0x3b, 0x87, 0x24, 0x14, 0xc5, 0x56, 0x3d, 0x58, 0x13,
|
|
0xf4, 0x5d, 0x80, 0x80, 0xa7, 0x6f, 0xdb, 0xed, 0x89, 0x78, 0x55, 0x04, 0xc5, 0xec, 0xe9, 0x13,
|
|
0xd8, 0x8a, 0xca, 0x38, 0x7e, 0x99, 0xfe, 0x2f, 0xcc, 0x41, 0xab, 0xc7, 0x59, 0xe8, 0xf1, 0x9e,
|
|
0x40, 0x11, 0xa5, 0x08, 0x6f, 0x73, 0xde, 0x07, 0x8d, 0xdf, 0x76, 0xb3, 0xd6, 0x80, 0xa7, 0xae,
|
|
0x21, 0x19, 0x05, 0xae, 0xa8, 0xce, 0x64, 0x3c, 0x23, 0xe8, 0x7f, 0x90, 0x44, 0xa5, 0x45, 0xab,
|
|
0x24, 0xf4, 0x11, 0x28, 0x34, 0x6b, 0xdb, 0xac, 0x9e, 0x92, 0x2e, 0xa9, 0xa7, 0x8e, 0x32, 0xb8,
|
|
0xd8, 0x13, 0x63, 0x54, 0x9d, 0xbb, 0x84, 0xa9, 0x67, 0xee, 0x2e, 0xb8, 0x84, 0x67, 0xb0, 0x8e,
|
|
0x32, 0x89, 0xbb, 0xb8, 0x5a, 0x10, 0xfd, 0xa5, 0xfe, 0x8d, 0x04, 0x10, 0x43, 0xbf, 0x05, 0x59,
|
|
0x97, 0x9f, 0xf1, 0x1c, 0xce, 0xba, 0x3d, 0x5a, 0x61, 0xc5, 0xce, 0x26, 0x1b, 0x4f, 0x0b, 0x40,
|
|
0xf9, 0xed, 0x05, 0xe0, 0xc7, 0x50, 0xe2, 0xa7, 0x73, 0xe5, 0xfe, 0xc8, 0x9d, 0xe6, 0x93, 0xe0,
|
|
0x8a, 0x87, 0xf7, 0x10, 0x76, 0x62, 0x56, 0x10, 0xd5, 0xf7, 0x7e, 0xd4, 0x57, 0xaf, 0x52, 0x7b,
|
|
0x0b, 0x13, 0x7d, 0x2b, 0x81, 0x62, 0x11, 0x7f, 0xc8, 0x6e, 0xcc, 0xb7, 0x55, 0xc7, 0xb7, 0x41,
|
|
0x71, 0x47, 0xa1, 0x1d, 0x35, 0xef, 0x34, 0x9e, 0x8a, 0xee, 0x28, 0x64, 0x18, 0xe9, 0xf5, 0xd1,
|
|
0xf3, 0x26, 0xa7, 0x03, 0x22, 0xe6, 0x69, 0x44, 0x49, 0x58, 0xe5, 0x34, 0xbe, 0x84, 0x5f, 0xf5,
|
|
0x13, 0xc2, 0x2e, 0xcb, 0x1c, 0x0b, 0x9f, 0x22, 0x23, 0xd0, 0xeb, 0x72, 0x17, 0x36, 0x4e, 0x3d,
|
|
0x2f, 0x08, 0x59, 0x49, 0x98, 0xc5, 0xfc, 0xc7, 0x15, 0xaf, 0x43, 0x07, 0x54, 0x96, 0xa1, 0x7c,
|
|
0x62, 0xbc, 0x19, 0xfb, 0xe8, 0x09, 0x14, 0xbd, 0x31, 0xf1, 0x9d, 0xd0, 0xf3, 0x45, 0x44, 0x26,
|
|
0x6d, 0x24, 0xd6, 0xb6, 0xc5, 0x1a, 0x3c, 0x5d, 0x8d, 0xca, 0x50, 0x60, 0xe3, 0x51, 0x4f, 0x44,
|
|
0x4b, 0xf4, 0x53, 0xff, 0xbb, 0x04, 0x80, 0x9d, 0x51, 0x9f, 0xac, 0x64, 0xc1, 0xfd, 0xb8, 0x9c,
|
|
0xf9, 0xf2, 0x32, 0x06, 0x76, 0xba, 0xc3, 0xcc, 0x30, 0xf2, 0x65, 0x86, 0x59, 0xaf, 0x3b, 0xff,
|
|
0x46, 0x8a, 0x3a, 0xae, 0x95, 0x60, 0xbf, 0x03, 0xea, 0x6f, 0xe9, 0x3a, 0x9b, 0x03, 0xc9, 0x32,
|
|
0x20, 0xc0, 0x48, 0x55, 0x86, 0x26, 0xd6, 0xf8, 0xc9, 0x6b, 0x34, 0x7e, 0xf4, 0x08, 0x86, 0xde,
|
|
0xf8, 0x6b, 0x11, 0x0c, 0x6c, 0x7c, 0xc5, 0x93, 0xf1, 0x06, 0x4a, 0xb4, 0x44, 0x21, 0xce, 0x88,
|
|
0x6b, 0x76, 0x1f, 0x36, 0xbc, 0x6e, 0x77, 0x12, 0x39, 0x1c, 0x25, 0xc4, 0xb4, 0xe9, 0x0c, 0xe6,
|
|
0x0b, 0xd0, 0xa7, 0xb0, 0xd9, 0x27, 0x23, 0xe2, 0x3b, 0x03, 0x9b, 0x69, 0x26, 0x3c, 0x94, 0xdc,
|
|
0xf8, 0x90, 0xaf, 0xe0, 0x05, 0x66, 0xa9, 0x1f, 0xfb, 0xa5, 0xff, 0x3e, 0x0b, 0xa5, 0xf8, 0x34,
|
|
0xfa, 0x0c, 0x36, 0x4f, 0x39, 0x14, 0x21, 0x50, 0x5a, 0xd0, 0xb5, 0xc6, 0xc1, 0x1e, 0x65, 0x70,
|
|
0xe9, 0x34, 0x0e, 0xfe, 0x31, 0x40, 0x48, 0xfc, 0xe1, 0x14, 0x8f, 0x34, 0xd7, 0x46, 0x4e, 0xcf,
|
|
0xee, 0x51, 0x06, 0x2b, 0xe1, 0xf4, 0x20, 0xff, 0x1c, 0x54, 0x9f, 0x06, 0xa5, 0xe0, 0x94, 0x19,
|
|
0x67, 0xf2, 0xc5, 0x67, 0x16, 0xb4, 0x47, 0x19, 0x0c, 0xfe, 0x2c, 0x84, 0x3f, 0x99, 0xa6, 0x60,
|
|
0xce, 0x9c, 0x5b, 0xd0, 0x19, 0xc4, 0x62, 0x67, 0x96, 0x7d, 0xd9, 0x4f, 0x9a, 0x7d, 0x19, 0x9f,
|
|
0xfe, 0x2f, 0x09, 0x36, 0x63, 0x1d, 0xc4, 0x71, 0x75, 0xf5, 0x7b, 0x6b, 0xcd, 0xc7, 0x93, 0x79,
|
|
0xd7, 0xc9, 0x0b, 0x2c, 0xbd, 0xdc, 0x75, 0x57, 0x3c, 0x4c, 0xbf, 0x93, 0x61, 0x87, 0x77, 0xe5,
|
|
0x6d, 0x9f, 0x57, 0x2e, 0xcd, 0xa0, 0xbf, 0xba, 0xb2, 0x89, 0x1e, 0x87, 0xfb, 0xf8, 0x6d, 0xed,
|
|
0xb6, 0x06, 0xf2, 0xc4, 0xed, 0x45, 0x6f, 0x0f, 0x13, 0xb7, 0xb7, 0xa8, 0xdb, 0x9c, 0x6f, 0xac,
|
|
0x69, 0xdd, 0xe5, 0x0e, 0x49, 0x10, 0x3a, 0xc3, 0x31, 0x4b, 0xb3, 0x32, 0x9e, 0x11, 0x52, 0x65,
|
|
0x48, 0x3e, 0x55, 0x86, 0xd0, 0xe9, 0xee, 0x6b, 0x67, 0x34, 0x22, 0x03, 0x3a, 0x5d, 0xe0, 0xd3,
|
|
0x82, 0x62, 0x52, 0x00, 0x59, 0x6f, 0x5c, 0x2e, 0xb2, 0x43, 0x96, 0x2c, 0xa4, 0xda, 0x63, 0x76,
|
|
0x69, 0x66, 0xbd, 0x31, 0xbd, 0x00, 0xba, 0x03, 0x57, 0xec, 0xa0, 0xf0, 0x0b, 0x80, 0x13, 0xcc,
|
|
0xde, 0x9c, 0x13, 0x60, 0x2d, 0x27, 0xfc, 0x25, 0x0b, 0x0a, 0x8f, 0xb6, 0xb5, 0x8c, 0x1f, 0x4b,
|
|
0x5c, 0xdc, 0xf4, 0x2b, 0x26, 0xae, 0x39, 0x7b, 0xcb, 0x0b, 0xec, 0x2d, 0xdc, 0x94, 0x9b, 0xb9,
|
|
0xe9, 0x72, 0x0f, 0x24, 0xcc, 0x93, 0x7f, 0x8b, 0x79, 0x0a, 0x6b, 0x99, 0xe7, 0x0c, 0x54, 0xcb,
|
|
0x1d, 0x92, 0xce, 0xc5, 0xa8, 0x4b, 0xed, 0xb3, 0x07, 0xc5, 0x9a, 0x10, 0x2c, 0xea, 0xb8, 0xd9,
|
|
0x46, 0x77, 0x40, 0xb1, 0xa6, 0x18, 0xb3, 0x69, 0x8c, 0x3f, 0x86, 0x42, 0x33, 0xe8, 0x5b, 0xb3,
|
|
0x1a, 0x69, 0xa1, 0xb3, 0x0b, 0x43, 0xbe, 0x46, 0xff, 0x8c, 0xe6, 0x00, 0x16, 0x42, 0xa2, 0x48,
|
|
0x11, 0x36, 0x91, 0x66, 0x36, 0x49, 0x97, 0xbf, 0x72, 0xb2, 0xfc, 0xfd, 0xa3, 0x04, 0xf0, 0x8c,
|
|
0x5c, 0xec, 0x77, 0x48, 0x9f, 0x22, 0x4f, 0xd8, 0x28, 0x0d, 0xfd, 0xa3, 0xb4, 0x37, 0xf7, 0x52,
|
|
0xef, 0x19, 0x31, 0x24, 0x33, 0x5f, 0x3e, 0x84, 0xe2, 0x30, 0xe8, 0xdb, 0xe1, 0x8a, 0x3a, 0x3d,
|
|
0xf8, 0x5b, 0x0e, 0x94, 0xe9, 0x27, 0x11, 0xa4, 0x42, 0xa1, 0x73, 0x52, 0xab, 0x19, 0x9d, 0x8e,
|
|
0x96, 0x41, 0xbb, 0xa0, 0x9d, 0xb4, 0x8c, 0x2f, 0x8e, 0x8d, 0x9a, 0x65, 0xd4, 0x6d, 0x03, 0xe3,
|
|
0x36, 0xd6, 0x24, 0x84, 0x60, 0xab, 0xd6, 0x6e, 0xb5, 0x8c, 0x9a, 0x65, 0x1f, 0x54, 0xcc, 0x86,
|
|
0x51, 0xd7, 0xb2, 0xe8, 0x3a, 0xec, 0x1c, 0x1b, 0xb8, 0x69, 0x76, 0x3a, 0x66, 0xbb, 0x65, 0xd7,
|
|
0x8d, 0x96, 0x69, 0xd4, 0x35, 0x19, 0xdd, 0x82, 0xeb, 0xb5, 0x76, 0xa3, 0x61, 0xd4, 0x2c, 0x4a,
|
|
0x6e, 0xb5, 0x2d, 0xdb, 0xf8, 0xc2, 0xec, 0x58, 0x1d, 0x2d, 0x47, 0x65, 0x9b, 0x8d, 0x86, 0x71,
|
|
0x58, 0x69, 0xd8, 0x15, 0x7c, 0x78, 0xd2, 0x34, 0x5a, 0x96, 0xb6, 0x41, 0xe5, 0x44, 0xd4, 0xba,
|
|
0xd9, 0x34, 0x5a, 0x54, 0x9c, 0x56, 0x40, 0x37, 0x00, 0x45, 0x64, 0xb3, 0x55, 0x37, 0xbe, 0xb0,
|
|
0xad, 0x97, 0xc7, 0x86, 0x56, 0x44, 0xb7, 0xe1, 0x66, 0x44, 0x8f, 0xef, 0x53, 0x69, 0x1a, 0x9a,
|
|
0x82, 0x34, 0x28, 0x45, 0x93, 0x56, 0xfb, 0xf8, 0x99, 0x06, 0x71, 0xe9, 0xb8, 0xfd, 0x39, 0x36,
|
|
0x6a, 0x6d, 0x5c, 0xd7, 0xd4, 0x38, 0xf9, 0x85, 0x51, 0xb3, 0xda, 0xd8, 0x36, 0xeb, 0x5a, 0x89,
|
|
0x82, 0x8f, 0xc8, 0x1d, 0xa3, 0x82, 0x6b, 0x47, 0x36, 0x36, 0x3a, 0x27, 0x0d, 0x4b, 0xdb, 0xa4,
|
|
0x26, 0x38, 0x30, 0x1b, 0x06, 0xd3, 0xe8, 0xa0, 0x7d, 0xd2, 0xaa, 0x6b, 0x5b, 0x68, 0x1b, 0xd4,
|
|
0xa6, 0x61, 0x55, 0x22, 0x9b, 0x6c, 0xd3, 0xfd, 0x6b, 0x95, 0xda, 0x91, 0x11, 0x51, 0x34, 0x54,
|
|
0x86, 0xdd, 0x5a, 0xa5, 0x45, 0x99, 0x6a, 0xd8, 0xa8, 0x58, 0x86, 0x7d, 0xd0, 0x6e, 0xd4, 0x0d,
|
|
0xac, 0xed, 0x50, 0x05, 0x53, 0x33, 0x66, 0xc3, 0xd0, 0x50, 0x8c, 0xa3, 0x6e, 0x34, 0x8c, 0x19,
|
|
0xc7, 0xb5, 0x18, 0x47, 0x34, 0x43, 0x39, 0x76, 0xa9, 0x32, 0xd5, 0x13, 0xb3, 0x51, 0x17, 0x86,
|
|
0xe2, 0x4e, 0xbb, 0x8e, 0x76, 0x60, 0x33, 0x52, 0xa6, 0xd5, 0x30, 0x3b, 0x96, 0x76, 0x03, 0xdd,
|
|
0x84, 0x6b, 0x11, 0xa9, 0x69, 0x58, 0xd8, 0xac, 0x71, 0xab, 0xde, 0xa4, 0x6b, 0xdb, 0x27, 0x96,
|
|
0xdd, 0x3e, 0xb0, 0x9b, 0x46, 0xb3, 0x8d, 0x5f, 0x6a, 0xe5, 0x07, 0x7f, 0x92, 0xa0, 0x18, 0x35,
|
|
0x0c, 0xa8, 0x08, 0xb9, 0x56, 0xbb, 0x65, 0x68, 0x19, 0x3a, 0xaa, 0xb6, 0xdb, 0x0d, 0x4d, 0xa2,
|
|
0x23, 0xb3, 0x65, 0x3d, 0xd1, 0xb2, 0x48, 0x81, 0x0d, 0xb3, 0x65, 0x7d, 0xf0, 0x48, 0x93, 0xc5,
|
|
0xf0, 0xc3, 0x7d, 0x2d, 0x27, 0x86, 0x8f, 0x3e, 0xd2, 0x36, 0xe8, 0xf0, 0xa0, 0xd1, 0xae, 0x58,
|
|
0x1a, 0x20, 0x80, 0x7c, 0xbd, 0x7d, 0x52, 0x6d, 0x18, 0x9a, 0x4a, 0xc7, 0x1d, 0x0b, 0x9b, 0xad,
|
|
0x43, 0x6d, 0x97, 0x22, 0x10, 0x9e, 0xa8, 0x9a, 0xad, 0x0a, 0x7e, 0xa9, 0xd1, 0x93, 0x56, 0x12,
|
|
0x24, 0xce, 0x4c, 0x1e, 0xd4, 0x60, 0x3b, 0x55, 0xe2, 0xa2, 0x3c, 0x64, 0x1b, 0x96, 0x96, 0x41,
|
|
0x05, 0x90, 0x1b, 0x96, 0xa1, 0x49, 0x94, 0x60, 0x3c, 0xd7, 0xb2, 0xf4, 0xef, 0xa1, 0xa5, 0xc9,
|
|
0x74, 0xe2, 0xd0, 0x32, 0xb4, 0x1c, 0x25, 0xb4, 0x0c, 0x6d, 0xe3, 0xc1, 0x13, 0xd8, 0x60, 0x65,
|
|
0x13, 0x0d, 0x7c, 0xb3, 0xf5, 0xa2, 0xd2, 0x30, 0xeb, 0x5c, 0xaf, 0xe6, 0x49, 0xc7, 0xd2, 0x24,
|
|
0x86, 0xea, 0xa8, 0x7d, 0xd2, 0xa0, 0x41, 0x5e, 0x82, 0x22, 0xa5, 0x52, 0xaf, 0x6b, 0xf2, 0x83,
|
|
0x2f, 0x21, 0xcf, 0x8f, 0x12, 0x5d, 0x63, 0xb6, 0x3a, 0x06, 0xa6, 0x3b, 0x53, 0x8d, 0x98, 0x3f,
|
|
0x04, 0x2f, 0x0b, 0x1c, 0x2d, 0x4b, 0x35, 0x4a, 0x06, 0x91, 0x4c, 0x77, 0x7c, 0x66, 0xbc, 0xdc,
|
|
0xef, 0x18, 0x87, 0x5a, 0x8e, 0xca, 0xb6, 0xcc, 0xa6, 0xd1, 0x79, 0xd9, 0xaa, 0x69, 0x1b, 0xfb,
|
|
0xdf, 0x6e, 0xc2, 0x66, 0xd3, 0x1d, 0x9c, 0x4d, 0x82, 0x0e, 0xf1, 0xcf, 0xdc, 0x2e, 0x41, 0xbf,
|
|
0x00, 0xad, 0xe6, 0x13, 0x27, 0x24, 0xb3, 0xae, 0x1f, 0x2d, 0xfc, 0x84, 0xb4, 0xb7, 0xa8, 0xef,
|
|
0xd7, 0x33, 0xe8, 0x00, 0x36, 0x8f, 0x9c, 0x20, 0xc6, 0x7d, 0x3b, 0x55, 0xab, 0xc7, 0x2f, 0x92,
|
|
0xbd, 0x1b, 0x73, 0x55, 0x1d, 0x7f, 0xd9, 0xca, 0x20, 0x13, 0x50, 0x9d, 0x04, 0x5d, 0xdf, 0x3d,
|
|
0x25, 0xab, 0x0a, 0x5b, 0x88, 0x53, 0xcf, 0xa0, 0xe7, 0xd4, 0x81, 0x93, 0x51, 0xb8, 0xaa, 0x9c,
|
|
0x77, 0x96, 0x4c, 0x4e, 0x9f, 0xc0, 0x32, 0xe8, 0x97, 0xb0, 0xdd, 0x79, 0x4d, 0x7f, 0x46, 0x73,
|
|
0x41, 0xca, 0x4a, 0xe2, 0x89, 0x6c, 0xa9, 0xac, 0xe8, 0x7b, 0xab, 0x9e, 0x41, 0xc7, 0x80, 0x92,
|
|
0xb2, 0xd8, 0x33, 0xcb, 0xa5, 0x08, 0x97, 0x4d, 0xb2, 0x67, 0x95, 0x0c, 0xaa, 0xc3, 0x56, 0xdd,
|
|
0xf7, 0xc6, 0xab, 0xea, 0xbb, 0xc4, 0x93, 0x9f, 0x80, 0xca, 0x43, 0x81, 0x3d, 0xe8, 0xa1, 0x64,
|
|
0x1d, 0x3c, 0x7b, 0xe4, 0x5b, 0xc6, 0x5e, 0x83, 0xcd, 0xc8, 0x81, 0x6f, 0x11, 0xb0, 0x6c, 0x42,
|
|
0xcf, 0xa0, 0xa7, 0xa0, 0x50, 0x4d, 0xbe, 0x1b, 0x02, 0x03, 0xb6, 0xb9, 0x02, 0xd3, 0x0f, 0x92,
|
|
0x29, 0x3b, 0x24, 0xbf, 0x7a, 0x2e, 0x17, 0x53, 0x3a, 0x72, 0x82, 0x15, 0x65, 0x2c, 0x0f, 0xe8,
|
|
0x67, 0xb0, 0x45, 0xdd, 0x3c, 0x5d, 0x1f, 0x5c, 0xee, 0x94, 0xbd, 0xc5, 0xbb, 0x88, 0x98, 0xa1,
|
|
0xc6, 0xf5, 0xbd, 0xf1, 0xd5, 0x14, 0xfb, 0x18, 0xf2, 0xbc, 0x00, 0x47, 0xe5, 0x94, 0x65, 0xa7,
|
|
0xdf, 0xca, 0x52, 0xfa, 0x4c, 0x3f, 0x8c, 0x32, 0xb3, 0x6c, 0x4e, 0x5f, 0xef, 0xaa, 0x17, 0x66,
|
|
0x3d, 0x05, 0x21, 0xf9, 0xf8, 0xb6, 0xb7, 0xf8, 0x83, 0x80, 0x9e, 0x41, 0x47, 0xb4, 0xfd, 0x9b,
|
|
0x3d, 0x02, 0xa2, 0xef, 0xa5, 0xba, 0x8f, 0xd4, 0xfb, 0xe0, 0x25, 0x80, 0x3e, 0x85, 0x3c, 0x2f,
|
|
0x65, 0xd1, 0xd2, 0xef, 0x31, 0x7b, 0xc9, 0x99, 0xd8, 0x07, 0x0f, 0x76, 0x0e, 0xb7, 0x53, 0xdf,
|
|
0x85, 0xd0, 0xbb, 0x0b, 0x04, 0x25, 0xbf, 0x1a, 0x5d, 0x2a, 0xf1, 0x31, 0xc8, 0xb5, 0x61, 0x6f,
|
|
0x49, 0x66, 0x48, 0x81, 0x8c, 0x7d, 0x2f, 0xc8, 0xa0, 0x0a, 0xc0, 0xec, 0x31, 0x17, 0x25, 0x8b,
|
|
0xeb, 0xd4, 0x2b, 0xef, 0x32, 0xe7, 0x1e, 0xc2, 0xce, 0xb1, 0x4f, 0x06, 0x9e, 0xd3, 0xbb, 0x62,
|
|
0x1a, 0x78, 0x0c, 0x1b, 0xec, 0xc5, 0x3b, 0x75, 0xfc, 0x66, 0xaf, 0xe0, 0xcb, 0x18, 0x9f, 0xb2,
|
|
0x0f, 0x05, 0x63, 0xa7, 0x1b, 0xa2, 0x5b, 0xf3, 0xef, 0x35, 0xe2, 0xf9, 0x7b, 0x19, 0x73, 0x15,
|
|
0x8a, 0xc2, 0x6f, 0x55, 0xb4, 0xb7, 0xcc, 0x9d, 0xc7, 0xd5, 0xcb, 0xcc, 0x7f, 0x9a, 0x67, 0xff,
|
|
0xc0, 0xf3, 0xe1, 0x7f, 0x03, 0x00, 0x00, 0xff, 0xff, 0x32, 0x13, 0xfb, 0xba, 0xd0, 0x23, 0x00,
|
|
0x00,
|
|
}
|